vercel / styled-jsx

Full CSS support for JSX without compromises
http://npmjs.com/styled-jsx
MIT License
7.65k stars 266 forks source link

feat: styled-jsx as client-only for rsc #816

Closed huozhi closed 1 year ago

huozhi commented 1 year ago

Use import "client-only" to mark styled-jsx as client only packages for server components, so that when users try to import it on server layer it will error in next.js

Expected error if you use styled-jsx in server components rather than client components

error - ../../../node_modules/.pnpm/client-only@0.0.1/node_modules/client-only/error.js (1:6) @ eval error - Error: This module cannot be imported from a Server Component module. It should only be used from a Client Component. at eval (webpack-internal:///(sc_server)/../../../../node_modules/.pnpm/client-only@0.0.1/node_modules/client-only/error.js:1:7)

x-ref: https://github.com/vercel/next.js/pull/41414

github-actions[bot] commented 1 year ago

:tada: This PR is included in version 5.1.0 :tada:

The release is available on:

Your semantic-release bot :package::rocket:

vpontis commented 1 year ago

Ooo exciting! Congrats on 5.1.0 👍👍