UnstableContext.js 1.1 KB

12345678910111213141516171819202122232425262728293031
  1. "use client";
  2. import * as React from 'react';
  3. import * as ReactDOM from 'react-dom';
  4. import { render, unmount } from "rc-util/es/React/render";
  5. import warning from '../_util/warning';
  6. const defaultReactRender = (node, container) => {
  7. // TODO: Remove in v6
  8. // Warning for React 19
  9. if (process.env.NODE_ENV !== 'production') {
  10. const majorVersion = parseInt(React.version.split('.')[0], 10);
  11. const fullKeys = Object.keys(ReactDOM);
  12. process.env.NODE_ENV !== "production" ? warning(majorVersion < 19 || fullKeys.includes('createRoot'), 'compatible', 'antd v5 support React is 16 ~ 18. see https://u.ant.design/v5-for-19 for compatible.') : void 0;
  13. }
  14. render(node, container);
  15. return () => {
  16. return unmount(container);
  17. };
  18. };
  19. let unstableRender = defaultReactRender;
  20. /**
  21. * @deprecated Set React render function for compatible usage.
  22. * This is internal usage only compatible with React 19.
  23. * And will be removed in next major version.
  24. */
  25. export function unstableSetRender(render) {
  26. if (render) {
  27. unstableRender = render;
  28. }
  29. return unstableRender;
  30. }