1 | "use strict";
|
2 |
|
3 | var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
4 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
5 | Object.defineProperty(exports, "__esModule", {
|
6 | value: true
|
7 | });
|
8 | exports._r = _r;
|
9 | exports._u = _u;
|
10 | exports.render = render;
|
11 | exports.unmount = unmount;
|
12 | var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
|
13 | var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
14 | var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
15 | var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
16 | var ReactDOM = _interopRequireWildcard(require("react-dom"));
|
17 |
|
18 | var fullClone = (0, _objectSpread2.default)({}, ReactDOM);
|
19 | var version = fullClone.version,
|
20 | reactRender = fullClone.render,
|
21 | unmountComponentAtNode = fullClone.unmountComponentAtNode;
|
22 | var createRoot;
|
23 | try {
|
24 | var mainVersion = Number((version || '').split('.')[0]);
|
25 | if (mainVersion >= 18) {
|
26 | createRoot = fullClone.createRoot;
|
27 | }
|
28 | } catch (e) {
|
29 |
|
30 | }
|
31 | function toggleWarning(skip) {
|
32 | var __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = fullClone.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
|
33 | if (__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED && (0, _typeof2.default)(__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED) === 'object') {
|
34 | __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.usingClientEntryPoint = skip;
|
35 | }
|
36 | }
|
37 | var MARK = '__rc_react_root__';
|
38 |
|
39 |
|
40 |
|
41 | function modernRender(node, container) {
|
42 | toggleWarning(true);
|
43 | var root = container[MARK] || createRoot(container);
|
44 | toggleWarning(false);
|
45 | root.render(node);
|
46 | container[MARK] = root;
|
47 | }
|
48 | function legacyRender(node, container) {
|
49 | reactRender(node, container);
|
50 | }
|
51 |
|
52 |
|
53 | function _r(node, container) {
|
54 | if (process.env.NODE_ENV !== 'production') {
|
55 | return legacyRender(node, container);
|
56 | }
|
57 | }
|
58 | function render(node, container) {
|
59 | if (createRoot) {
|
60 | modernRender(node, container);
|
61 | return;
|
62 | }
|
63 | legacyRender(node, container);
|
64 | }
|
65 |
|
66 |
|
67 | function modernUnmount(_x) {
|
68 | return _modernUnmount.apply(this, arguments);
|
69 | }
|
70 | function _modernUnmount() {
|
71 | _modernUnmount = (0, _asyncToGenerator2.default)( (0, _regeneratorRuntime2.default)().mark(function _callee(container) {
|
72 | return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
|
73 | while (1) switch (_context.prev = _context.next) {
|
74 | case 0:
|
75 | return _context.abrupt("return", Promise.resolve().then(function () {
|
76 | var _container$MARK;
|
77 | (_container$MARK = container[MARK]) === null || _container$MARK === void 0 || _container$MARK.unmount();
|
78 | delete container[MARK];
|
79 | }));
|
80 | case 1:
|
81 | case "end":
|
82 | return _context.stop();
|
83 | }
|
84 | }, _callee);
|
85 | }));
|
86 | return _modernUnmount.apply(this, arguments);
|
87 | }
|
88 | function legacyUnmount(container) {
|
89 | unmountComponentAtNode(container);
|
90 | }
|
91 |
|
92 |
|
93 | function _u(container) {
|
94 | if (process.env.NODE_ENV !== 'production') {
|
95 | return legacyUnmount(container);
|
96 | }
|
97 | }
|
98 | function unmount(_x2) {
|
99 | return _unmount.apply(this, arguments);
|
100 | }
|
101 | function _unmount() {
|
102 | _unmount = (0, _asyncToGenerator2.default)( (0, _regeneratorRuntime2.default)().mark(function _callee2(container) {
|
103 | return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
|
104 | while (1) switch (_context2.prev = _context2.next) {
|
105 | case 0:
|
106 | if (!(createRoot !== undefined)) {
|
107 | _context2.next = 2;
|
108 | break;
|
109 | }
|
110 | return _context2.abrupt("return", modernUnmount(container));
|
111 | case 2:
|
112 | legacyUnmount(container);
|
113 | case 3:
|
114 | case "end":
|
115 | return _context2.stop();
|
116 | }
|
117 | }, _callee2);
|
118 | }));
|
119 | return _unmount.apply(this, arguments);
|
120 | } |
\ | No newline at end of file |