emotion-js/emotion

v11.13.3 type error with Next

Opened this issue ยท 5 comments

Current behavior:

type Error Occurs after v11.13.3

const withAuth = <P extends object>(WrappedComponent: NextPage<P>) => {
  const AuthComponent = (props: P) => {
    ...my logic
    return <WrappedComponent {...props} />;
  }
}

Expected behavior:

Type Error is fixed , if it's not error. is there any method to solve this type error?

Environment information:

  • react version: 18.3.1
  • @emotion/react version: 11.13.3

I can confirm that v11.13.3 breaks this previously working pattern.

function render<P>(Component: React.ComponentType<P>, props: P) {
    return <Component {...props} />
}

It seems that typescript has complicates while comparing generic types fed with type variables. For those who need quick patch, I left a rough solution here. Check this out and use wisely.

/* Patch LibraryManagedAttributes type in jsx-namespace.d.ts (which can be found in node_modules/@ emotion/react/types) */

type LibraryManagedAttributes<C, P> =
  ((P extends unknown ? WithConditionalCSSProp<P> : {}) | {})
  & ReactJSXLibraryManagedAttributes<C, P>

I'll do more research on this and will come back with well organized patch maybe in this weekend. However, If there is someone interested and has some time to work on this, I wouldn't mind someone else do the fix instead of me.

Have come across this bug as well. Would be great to have a fix

Hi, is there any progress regarding this issue?

๐Ÿ‘๐Ÿ‘