Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for JSX automatic runtime #405

Open
2 tasks done
slorber opened this issue Dec 24, 2024 · 0 comments · May be fixed by #406
Open
2 tasks done

Support for JSX automatic runtime #405

slorber opened this issue Dec 24, 2024 · 0 comments · May be fixed by #406

Comments

@slorber
Copy link

slorber commented Dec 24, 2024

Is there an existing issue for this?

  • I have searched the existing issues

Code of Conduct

  • I agree to follow this project's Code of Conduct

Feature Request

When upgrading Docusaurus to React 19, I noticed some warnings in documentation pages containing React-Live playgrounds

It turns out React 19 has a new warning in dev mode:


VM59912:5 Your app (or one of its dependencies) is using an outdated JSX transform. Update to the modern JSX transform for faster performance: https://react.dev/link/new-jsx-transform Error Component Stack
    at Hello (<anonymous>)
    at ErrorBoundary (eval at ../node_modules/react-live/dist/index.mjs (vendors-node_modules_parse-numeric-range_index_js-node_modules_react-live_dist_index_mjs-node-bdedd5.js:338:1), <anonymous>:161:10)
    at div (<anonymous>)
    at LivePreview (eval at ../node_modules/react-live/dist/index.mjs (vendors-node_modules_parse-numeric-range_index_js-node_modules_react-live_dist_index_mjs-node-bdedd5.js:338:1), <anonymous>:331:29)
    at ErrorBoundary (eval at ../packages/docusaurus/lib/client/exports/ErrorBoundary.js (main.js:1021:1), <anonymous>:29:9)
    at BrowserOnly (eval at ../packages/docusaurus/lib/client/exports/BrowserOnly.js (__comp---theme-blog-post-pageccc-cab.js:488:1), <anonymous>:19:24)
    at Preview (<anonymous>)

By default, React-Live is using Sucrase to transform the code, but there's no ability to customize the JSX runtime (classic by default).

An option to turn on the automatic runtime would be welcome to get rid of this warning.


To be honest, I'm not 100% sure why there is a warning, considering React.createElement is considered fine although not optimal according to the linked page.

Note
The functions inside react/jsx-runtime and react/jsx-dev-runtime must only be used by the compiler transform. If you need to manually create elements in your code, you should keep using React.createElement. It will continue to work and is not going away.

In any case, it looks future proof to support the automatic runtime in this lib

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant