@my-react/react-reconciler-compact 0.0.14 → 0.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var require$$0 = require('@my-react/react');
5
+ var require$$1 = require('@my-react/react');
6
6
 
7
7
  /******************************************************************************
8
8
  Copyright (c) Microsoft Corporation.
@@ -35,17 +35,6 @@ function __extends(d, b) {
35
35
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
36
36
  }
37
37
 
38
- var __assign = function() {
39
- __assign = Object.assign || function __assign(t) {
40
- for (var s, i = 1, n = arguments.length; i < n; i++) {
41
- s = arguments[i];
42
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
43
- }
44
- return t;
45
- };
46
- return __assign.apply(this, arguments);
47
- };
48
-
49
38
  function __awaiter(thisArg, _arguments, P, generator) {
50
39
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
51
40
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -84,21 +73,23 @@ function __generator(thisArg, body) {
84
73
  }
85
74
  }
86
75
 
87
- function __spreadArray(to, from, pack) {
88
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
89
- if (ar || !(i in from)) {
90
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
91
- ar[i] = from[i];
92
- }
93
- }
94
- return to.concat(ar || Array.prototype.slice.call(from));
95
- }
96
-
97
76
  typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
98
77
  var e = new Error(message);
99
78
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
100
79
  };
101
80
 
81
+ var type;
82
+ var hasRequiredType;
83
+
84
+ function requireType () {
85
+ if (hasRequiredType) return type;
86
+ hasRequiredType = 1;
87
+ type = require$$1;
88
+ return type;
89
+ }
90
+
91
+ var typeExports = requireType();
92
+
102
93
  var myreactReconciler = {exports: {}};
103
94
 
104
95
  var index_production = {};
@@ -110,7 +101,19 @@ function requireIndex_production () {
110
101
  hasRequiredIndex_production = 1;
111
102
  (function (exports$1) {
112
103
 
113
- var react = require$$0;
104
+ var require$$0 = require$$1;
105
+
106
+ var type;
107
+ var hasRequiredType;
108
+
109
+ function requireType () {
110
+ if (hasRequiredType) return type;
111
+ hasRequiredType = 1;
112
+ type = require$$0;
113
+ return type;
114
+ }
115
+
116
+ var typeExports = requireType();
114
117
 
115
118
  var merge = function (src, rest) {
116
119
  return src | rest;
@@ -742,15 +745,15 @@ function requireIndex_production () {
742
745
 
743
746
  var MyWeakMap = typeof WeakMap !== "undefined" ? WeakMap : Map;
744
747
 
745
- var currentRefreshHandler = react.createRef(null);
748
+ var currentRefreshHandler = typeExports.createRef(null);
746
749
  // TODO
747
750
  // need improve
748
- var currentTriggerFiber = react.createRef(null);
749
- var fiberToDispatchMap = react.__my_react_internal__.fiberToDispatchMap;
750
- var enableFiberForLog = react.createRef(false);
751
- var enableDebugUpdateQueue = react.createRef(false);
752
- var enableValidMyReactElement = react.createRef(false);
753
- var enableLogForCurrentFlowIsRunning = react.createRef(false);
751
+ var currentTriggerFiber = typeExports.createRef(null);
752
+ var fiberToDispatchMap = typeExports.__my_react_internal__.fiberToDispatchMap;
753
+ var enableFiberForLog = typeExports.createRef(false);
754
+ var enableDebugUpdateQueue = typeExports.createRef(false);
755
+ var enableValidMyReactElement = typeExports.createRef(false);
756
+ var enableLogForCurrentFlowIsRunning = typeExports.createRef(false);
754
757
 
755
758
  exports$1.NODE_TYPE = void 0;
756
759
  (function (NODE_TYPE) {
@@ -781,7 +784,7 @@ function requireIndex_production () {
781
784
  NODE_TYPE[NODE_TYPE["__serverComponent__"] = 8388608] = "__serverComponent__";
782
785
  })(exports$1.NODE_TYPE || (exports$1.NODE_TYPE = {}));
783
786
 
784
- var enableSyncFlush$1 = react.__my_react_shared__.enableSyncFlush;
787
+ var enableSyncFlush$1 = typeExports.__my_react_shared__.enableSyncFlush;
785
788
  /**
786
789
  * @deprecated
787
790
  */
@@ -807,7 +810,7 @@ function requireIndex_production () {
807
810
  enableSyncFlush$1.current = stack.pop();
808
811
  };
809
812
 
810
- var currentRunningFiber$5 = react.__my_react_internal__.currentRunningFiber, currentScheduler$h = react.__my_react_internal__.currentScheduler, currentScopeFiber$1 = react.__my_react_internal__.currentScopeFiber, currentError$1 = react.__my_react_internal__.currentError, currentCallingFiber$1 = react.__my_react_internal__.currentCallingFiber;
813
+ var currentRunningFiber$5 = typeExports.__my_react_internal__.currentRunningFiber, currentScheduler$h = typeExports.__my_react_internal__.currentScheduler, currentScopeFiber$1 = typeExports.__my_react_internal__.currentScopeFiber, currentError$1 = typeExports.__my_react_internal__.currentError, currentCallingFiber$1 = typeExports.__my_react_internal__.currentCallingFiber;
811
814
  var safeCall = function (action) {
812
815
  var args = [];
813
816
  for (var _i = 1; _i < arguments.length; _i++) {
@@ -881,8 +884,8 @@ function requireIndex_production () {
881
884
  }
882
885
  };
883
886
 
884
- var currentScheduler$g = react.__my_react_internal__.currentScheduler, currentRunningFiber$4 = react.__my_react_internal__.currentRunningFiber, currentScopeFiber = react.__my_react_internal__.currentScopeFiber, currentCallingFiber = react.__my_react_internal__.currentCallingFiber;
885
- var enableOptimizeTreeLog = react.__my_react_shared__.enableOptimizeTreeLog;
887
+ var currentScheduler$g = typeExports.__my_react_internal__.currentScheduler, currentRunningFiber$4 = typeExports.__my_react_internal__.currentRunningFiber, currentScopeFiber = typeExports.__my_react_internal__.currentScopeFiber, currentCallingFiber = typeExports.__my_react_internal__.currentCallingFiber;
888
+ var enableOptimizeTreeLog = typeExports.__my_react_shared__.enableOptimizeTreeLog;
886
889
  var typeColor = {
887
890
  normal: "rgba(10, 190, 235, 0.8)",
888
891
  plain: "rgba(100, 230, 40, 0.8)",
@@ -1195,7 +1198,7 @@ function requireIndex_production () {
1195
1198
  errorFiber = null;
1196
1199
  };
1197
1200
 
1198
- react.__my_react_shared__.enableHMRForDev;
1201
+ typeExports.__my_react_shared__.enableHMRForDev;
1199
1202
  var emptyProps$1 = {};
1200
1203
  var getElementTypeFromType = function (type) {
1201
1204
  if (typeof type === "object") {
@@ -1209,7 +1212,7 @@ function requireIndex_production () {
1209
1212
  };
1210
1213
  var getTypeFromElementNode = function (element) {
1211
1214
  var nodeType = exports$1.NODE_TYPE.__initial__;
1212
- if (react.isValidElement(element)) {
1215
+ if (typeExports.isValidElement(element)) {
1213
1216
  return getTypeFromElement(element);
1214
1217
  }
1215
1218
  else {
@@ -1397,17 +1400,17 @@ function requireIndex_production () {
1397
1400
  var typeFromRefresh = getCurrentTypeFromRefreshOnly();
1398
1401
  // have a new version elementType from hmr runtime
1399
1402
  if (typeFromRefresh) {
1400
- return react.createElement(typeFromRefresh, __assign(__assign({}, element.props), { key: (_a = element.key) !== null && _a !== void 0 ? _a : undefined, ref: (_b = element.ref) !== null && _b !== void 0 ? _b : undefined }));
1403
+ return typeExports.createElement(typeFromRefresh, __assign(__assign({}, element.props), { key: (_a = element.key) !== null && _a !== void 0 ? _a : undefined, ref: (_b = element.ref) !== null && _b !== void 0 ? _b : undefined }));
1401
1404
  }
1402
1405
  }
1403
1406
  return element;
1404
1407
  };
1405
1408
 
1406
- react.__my_react_internal__.currentComponentFiber;
1409
+ typeExports.__my_react_internal__.currentComponentFiber;
1407
1410
  var initHMR = function (env) {
1408
1411
  };
1409
1412
 
1410
- var currentRunningFiber$3 = react.__my_react_internal__.currentRunningFiber, currentScheduler$f = react.__my_react_internal__.currentScheduler;
1413
+ var currentRunningFiber$3 = typeExports.__my_react_internal__.currentRunningFiber, currentScheduler$f = typeExports.__my_react_internal__.currentScheduler;
1411
1414
  var dispatchHook = function (params) {
1412
1415
  var fiber = currentRunningFiber$3.current;
1413
1416
  if (!fiber) {
@@ -1519,12 +1522,12 @@ function requireIndex_production () {
1519
1522
  scheduler.dispatchSuspensePromise = dispatchSuspensePromise;
1520
1523
  };
1521
1524
 
1522
- react.__my_react_shared__.enableHMRForDev;
1525
+ typeExports.__my_react_shared__.enableHMRForDev;
1523
1526
  function checkIsSameType(p, element) {
1524
1527
  if (p instanceof MyReactFiberNode) {
1525
1528
  var _a = getTypeFromElementNode(element), nodeType = _a.nodeType, elementType = _a.elementType;
1526
1529
  if (p.type === nodeType) {
1527
- if (react.isValidElement(element)) {
1530
+ if (typeExports.isValidElement(element)) {
1528
1531
  {
1529
1532
  return Object.is(p.elementType, elementType);
1530
1533
  }
@@ -1541,7 +1544,7 @@ function requireIndex_production () {
1541
1544
  var existElementType = getTypeFromElementNode(p);
1542
1545
  var incomingElementType = getTypeFromElementNode(element);
1543
1546
  if (existElementType.nodeType === incomingElementType.nodeType) {
1544
- if (react.isValidElement(element)) {
1547
+ if (typeExports.isValidElement(element)) {
1545
1548
  var typedExistElement = p;
1546
1549
  var typedIncomingElement = element;
1547
1550
  {
@@ -1776,7 +1779,7 @@ function requireIndex_production () {
1776
1779
  }
1777
1780
  };
1778
1781
 
1779
- var currentRunningFiber$2 = react.__my_react_internal__.currentRunningFiber;
1782
+ var currentRunningFiber$2 = typeExports.__my_react_internal__.currentRunningFiber;
1780
1783
  var mountToNextFiberFromRoot = function (renderDispatch, fiber) {
1781
1784
  if (include(fiber.state, STATE_TYPE.__unmount__) || renderDispatch.isAppCrashed)
1782
1785
  return null;
@@ -1863,8 +1866,8 @@ function requireIndex_production () {
1863
1866
  return null;
1864
1867
  };
1865
1868
 
1866
- var enableSuspenseRoot$3 = react.__my_react_shared__.enableSuspenseRoot;
1867
- var currentScheduler$e = react.__my_react_internal__.currentScheduler;
1869
+ var enableSuspenseRoot$3 = typeExports.__my_react_shared__.enableSuspenseRoot;
1870
+ var currentScheduler$e = typeExports.__my_react_internal__.currentScheduler;
1868
1871
  var mountLoopAllFromScheduler = function (renderDispatch) {
1869
1872
  while (renderDispatch.runtimeFiber.nextWorkingFiber) {
1870
1873
  renderDispatch.runtimeFiber.retriggerFiber = null;
@@ -2106,8 +2109,8 @@ function requireIndex_production () {
2106
2109
  }
2107
2110
  };
2108
2111
 
2109
- var enableSuspenseRoot$2 = react.__my_react_shared__.enableSuspenseRoot;
2110
- var currentScheduler$d = react.__my_react_internal__.currentScheduler;
2112
+ var enableSuspenseRoot$2 = typeExports.__my_react_shared__.enableSuspenseRoot;
2113
+ var currentScheduler$d = typeExports.__my_react_internal__.currentScheduler;
2111
2114
  exports$1.updateTypeEnum = void 0;
2112
2115
  (function (updateTypeEnum) {
2113
2116
  updateTypeEnum[updateTypeEnum["syncFromRoot"] = 0] = "syncFromRoot";
@@ -2326,11 +2329,11 @@ function requireIndex_production () {
2326
2329
  return field;
2327
2330
  };
2328
2331
 
2329
- var enableLegacyLifeCycle = react.__my_react_shared__.enableLegacyLifeCycle;
2332
+ var enableLegacyLifeCycle = typeExports.__my_react_shared__.enableLegacyLifeCycle;
2330
2333
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
2331
2334
  // @ts-ignore
2332
- if (!Object.prototype.hasOwnProperty.call(react.Component.prototype, "_reactInternals")) {
2333
- Object.defineProperty(react.Component.prototype, "_reactInternals", {
2335
+ if (!Object.prototype.hasOwnProperty.call(typeExports.Component.prototype, "_reactInternals")) {
2336
+ Object.defineProperty(typeExports.Component.prototype, "_reactInternals", {
2334
2337
  get: function () {
2335
2338
  return getInstanceOwnerFiber(this);
2336
2339
  },
@@ -2673,8 +2676,8 @@ function requireIndex_production () {
2673
2676
  };
2674
2677
 
2675
2678
  /* eslint-disable max-lines */
2676
- react.__my_react_shared__.enableDebugFiled;
2677
- var currentScheduler$c = react.__my_react_internal__.currentScheduler;
2679
+ typeExports.__my_react_shared__.enableDebugFiled;
2680
+ var currentScheduler$c = typeExports.__my_react_internal__.currentScheduler;
2678
2681
  // TODO 整合
2679
2682
  var processClassComponentUpdateQueueLatest = function (renderDispatch, fiber, enableTaskPriority) {
2680
2683
  if (include(fiber.state, STATE_TYPE.__unmount__))
@@ -3220,8 +3223,8 @@ function requireIndex_production () {
3220
3223
  syncComponentStateToFiber(fiber);
3221
3224
  };
3222
3225
 
3223
- react.__my_react_internal__.currentComponentFiber; var currentRunningFiber$1 = react.__my_react_internal__.currentRunningFiber;
3224
- react.__my_react_shared__.enableDebugFiled;
3226
+ typeExports.__my_react_internal__.currentComponentFiber; var currentRunningFiber$1 = typeExports.__my_react_internal__.currentRunningFiber;
3227
+ typeExports.__my_react_shared__.enableDebugFiled;
3225
3228
  var processState = function (renderDispatch, _params) {
3226
3229
  var ownerFiber = getInstanceOwnerFiber(_params.trigger);
3227
3230
  if (!renderDispatch)
@@ -3338,7 +3341,7 @@ function requireIndex_production () {
3338
3341
  renderDispatch.isAppUnmounted = true;
3339
3342
  };
3340
3343
 
3341
- var globalLoop$3 = react.__my_react_internal__.globalLoop, currentScheduler$b = react.__my_react_internal__.currentScheduler, currentError = react.__my_react_internal__.currentError;
3344
+ var globalLoop$3 = typeExports.__my_react_internal__.globalLoop, currentScheduler$b = typeExports.__my_react_internal__.currentScheduler, currentError = typeExports.__my_react_internal__.currentError;
3342
3345
  var applyTriggerFiberCb = function (renderDispatch, fiber) {
3343
3346
  var _a, _b;
3344
3347
  var cbArray = renderDispatch.runtimeMap.triggerCallbackMap.get(fiber);
@@ -3482,7 +3485,7 @@ function requireIndex_production () {
3482
3485
  }
3483
3486
  };
3484
3487
 
3485
- var globalLoop$2 = react.__my_react_internal__.globalLoop, currentScheduler$a = react.__my_react_internal__.currentScheduler;
3488
+ var globalLoop$2 = typeExports.__my_react_internal__.globalLoop, currentScheduler$a = typeExports.__my_react_internal__.currentScheduler;
3486
3489
  var scheduleUpdateFromRoot = function (renderDispatch) {
3487
3490
  flushEffectCallback();
3488
3491
  var allLive = renderDispatch.pendingUpdateFiberArray.getAll().filter(function (f) { return exclude(f.state, STATE_TYPE.__unmount__); });
@@ -3540,7 +3543,7 @@ function requireIndex_production () {
3540
3543
  }
3541
3544
  };
3542
3545
  var scheduleUpdate = function (renderDispatch) {
3543
- react.__my_react_internal__.recentlyCreatedOwnerStacks.current = 0;
3546
+ typeExports.__my_react_internal__.recentlyCreatedOwnerStacks.current = 0;
3544
3547
  if (renderDispatch.isAppUnmounted) {
3545
3548
  scheduleOther(renderDispatch);
3546
3549
  return;
@@ -3548,8 +3551,8 @@ function requireIndex_production () {
3548
3551
  scheduleUpdateFromRoot(renderDispatch);
3549
3552
  };
3550
3553
 
3551
- var globalLoop$1 = react.__my_react_internal__.globalLoop, currentScheduler$9 = react.__my_react_internal__.currentScheduler;
3552
- react.__my_react_shared__.enableScopeTreeLog;
3554
+ var globalLoop$1 = typeExports.__my_react_internal__.globalLoop, currentScheduler$9 = typeExports.__my_react_internal__.currentScheduler;
3555
+ typeExports.__my_react_shared__.enableScopeTreeLog;
3553
3556
  function finishUpdateSyncFromRoot(renderDispatch) {
3554
3557
  var commitList = renderDispatch.pendingCommitFiberList;
3555
3558
  renderDispatch.resetUpdateFlowRuntimeFiber();
@@ -3641,8 +3644,8 @@ function requireIndex_production () {
3641
3644
  }
3642
3645
  };
3643
3646
 
3644
- var MyReactInternalInstance$4 = react.__my_react_internal__.MyReactInternalInstance, currentScheduler$8 = react.__my_react_internal__.currentScheduler;
3645
- var enableSyncFlush = react.__my_react_shared__.enableSyncFlush;
3647
+ var MyReactInternalInstance$4 = typeExports.__my_react_internal__.MyReactInternalInstance, currentScheduler$8 = typeExports.__my_react_internal__.currentScheduler;
3648
+ var enableSyncFlush = typeExports.__my_react_shared__.enableSyncFlush;
3646
3649
  var defaultPayLoad = function (a) { return a; };
3647
3650
  var MyReactHookNode = /** @class */ (function (_super) {
3648
3651
  __extends(MyReactHookNode, _super);
@@ -3680,7 +3683,7 @@ function requireIndex_production () {
3680
3683
  };
3681
3684
  };
3682
3685
 
3683
- var currentComponentFiber$3 = react.__my_react_internal__.currentComponentFiber;
3686
+ var currentComponentFiber$3 = typeExports.__my_react_internal__.currentComponentFiber;
3684
3687
  var MyReactSignal = /** @class */ (function () {
3685
3688
  function MyReactSignal(_rawValue, _renderDispatch) {
3686
3689
  var _this = this;
@@ -3706,8 +3709,8 @@ function requireIndex_production () {
3706
3709
  return MyReactSignal;
3707
3710
  }());
3708
3711
 
3709
- var enableDebugLog$1 = react.__my_react_shared__.enableDebugLog; react.__my_react_shared__.enableDebugFiled;
3710
- var currentHookTreeNode$2 = react.__my_react_internal__.currentHookTreeNode, currentHookNodeIndex$2 = react.__my_react_internal__.currentHookNodeIndex;
3712
+ var enableDebugLog$1 = typeExports.__my_react_shared__.enableDebugLog; typeExports.__my_react_shared__.enableDebugFiled;
3713
+ var currentHookTreeNode$2 = typeExports.__my_react_internal__.currentHookTreeNode, currentHookNodeIndex$2 = typeExports.__my_react_internal__.currentHookNodeIndex;
3711
3714
  var defaultReducer = function (state, action) {
3712
3715
  return typeof action === "function" ? action(state) : action;
3713
3716
  };
@@ -3851,17 +3854,17 @@ function requireIndex_production () {
3851
3854
  value: false,
3852
3855
  start: function startTransitionByHook(cb) {
3853
3856
  var loadingCallback = function (cb) {
3854
- react.startTransition(function () {
3857
+ typeExports.startTransition(function () {
3855
3858
  hookNode._update({ isForce: true, isSync: true, callback: cb, payLoad: function (last) { return ({ value: true, start: last.start }); } });
3856
3859
  });
3857
3860
  };
3858
3861
  var loadedCallback = function () {
3859
- react.startTransition(function () {
3862
+ typeExports.startTransition(function () {
3860
3863
  hookNode._update({ isForce: true, isSync: true, payLoad: function (last) { return ({ value: false, start: last.start }); } });
3861
3864
  });
3862
3865
  };
3863
3866
  var taskCallback = function () {
3864
- react.startTransition(function () {
3867
+ typeExports.startTransition(function () {
3865
3868
  safeCallWithCurrentFiber({ fiber: fiber, action: cb });
3866
3869
  loadedCallback();
3867
3870
  });
@@ -3945,8 +3948,8 @@ function requireIndex_production () {
3945
3948
  }
3946
3949
  };
3947
3950
 
3948
- var enableDebugLog = react.__my_react_shared__.enableDebugLog;
3949
- var currentHookTreeNode$1 = react.__my_react_internal__.currentHookTreeNode, currentScheduler$7 = react.__my_react_internal__.currentScheduler;
3951
+ var enableDebugLog = typeExports.__my_react_shared__.enableDebugLog;
3952
+ var currentHookTreeNode$1 = typeExports.__my_react_internal__.currentHookTreeNode, currentScheduler$7 = typeExports.__my_react_internal__.currentScheduler;
3950
3953
  var updateHookNode = function (renderDispatch, _a, fiber, isHMR) {
3951
3954
  var _b, _c, _d;
3952
3955
  var type = _a.type, value = _a.value, reducer = _a.reducer, deps = _a.deps;
@@ -4163,7 +4166,7 @@ function requireIndex_production () {
4163
4166
  });
4164
4167
  };
4165
4168
 
4166
- react.__my_react_shared__.enableDebugFiled;
4169
+ typeExports.__my_react_shared__.enableDebugFiled;
4167
4170
  var clearFiberNode = function (renderDispatch, fiber) {
4168
4171
  hookListUnmount(renderDispatch, fiber);
4169
4172
  processClassComponentUnmount(renderDispatch, fiber);
@@ -4174,7 +4177,7 @@ function requireIndex_production () {
4174
4177
  renderDispatch.commitUnsetRef(fiber);
4175
4178
  };
4176
4179
 
4177
- var currentScheduler$6 = react.__my_react_internal__.currentScheduler;
4180
+ var currentScheduler$6 = typeExports.__my_react_internal__.currentScheduler;
4178
4181
  var hmr = function (fiber, nextType, forceRefresh) {
4179
4182
  {
4180
4183
  throw new Error("[@my-react/react] can not try to dev refresh this app in prod env!");
@@ -4211,7 +4214,7 @@ function requireIndex_production () {
4211
4214
  fiber.constructor.prototype.isMyReactFiberNode);
4212
4215
  };
4213
4216
 
4214
- var currentScheduler$5 = react.__my_react_internal__.currentScheduler;
4217
+ var currentScheduler$5 = typeExports.__my_react_internal__.currentScheduler;
4215
4218
  var processUpdateOnFiber = function (renderDispatch, fiber, _isImmediate, _isRetrigger) {
4216
4219
  var renderScheduler = currentScheduler$5.current;
4217
4220
  var flag = renderDispatch.enableConcurrentMode;
@@ -4472,7 +4475,7 @@ function requireIndex_production () {
4472
4475
  return fiber;
4473
4476
  };
4474
4477
 
4475
- react.__my_react_shared__.enableDebugFiled;
4478
+ typeExports.__my_react_shared__.enableDebugFiled;
4476
4479
  var unmountFiberNode = function (renderDispatch, fiber) {
4477
4480
  if (include(fiber.state, STATE_TYPE.__unmount__))
4478
4481
  return;
@@ -4524,7 +4527,7 @@ function requireIndex_production () {
4524
4527
  fiber.state = STATE_TYPE.__unmount__;
4525
4528
  };
4526
4529
 
4527
- react.__my_react_shared__.enableDebugFiled;
4530
+ typeExports.__my_react_shared__.enableDebugFiled;
4528
4531
  var getIsSameTypeNode = function (newChild, draftFiber) {
4529
4532
  if (!draftFiber)
4530
4533
  return false;
@@ -4550,12 +4553,12 @@ function requireIndex_production () {
4550
4553
  var dynamicFragmentProps = { wrap: true };
4551
4554
  var createFragmentWithInitial = function (renderDispatch, newChild, parentFiber) {
4552
4555
  // TODO make there are not a element
4553
- var newElement = react.createElement(Fragment, dynamicFragmentProps, newChild);
4556
+ var newElement = typeExports.createElement(Fragment, dynamicFragmentProps, newChild);
4554
4557
  var newFiber = createFiberNode(renderDispatch, { parent: parentFiber }, newElement);
4555
4558
  return newFiber;
4556
4559
  };
4557
4560
  var createFragmentWithUpdate = function (renderDispatch, newChild, parentFiber) {
4558
- var newElement = react.createElement(Fragment, dynamicFragmentProps, newChild);
4561
+ var newElement = typeExports.createElement(Fragment, dynamicFragmentProps, newChild);
4559
4562
  var newFiber = createFiberNode(renderDispatch, { parent: parentFiber, type: "position" }, newElement);
4560
4563
  return newFiber;
4561
4564
  };
@@ -4578,7 +4581,7 @@ function requireIndex_production () {
4578
4581
  }
4579
4582
  // same type
4580
4583
  if (include(draftFiber_1 === null || draftFiber_1 === void 0 ? void 0 : draftFiber_1.type, exports$1.NODE_TYPE.__fragment__)) {
4581
- var newElement = react.createElement(Fragment, dynamicFragmentProps, newChild);
4584
+ var newElement = typeExports.createElement(Fragment, dynamicFragmentProps, newChild);
4582
4585
  return updateFiberNode(renderDispatch, { fiber: draftFiber_1, parent: parentFiber, prevFiber: prevFiberChild }, newElement);
4583
4586
  }
4584
4587
  else {
@@ -4586,7 +4589,7 @@ function requireIndex_production () {
4586
4589
  return createFragmentWithUpdate(renderDispatch, newChild, parentFiber);
4587
4590
  }
4588
4591
  }
4589
- var keyToGet = react.isValidElement(newChild) && typeof newChild.key === "string" ? newChild.key : index;
4592
+ var keyToGet = typeExports.isValidElement(newChild) && typeof newChild.key === "string" ? newChild.key : index;
4590
4593
  var draftList = existingChildren.get(keyToGet);
4591
4594
  var draftFiber = draftList === null || draftList === void 0 ? void 0 : draftList.shift();
4592
4595
  if (draftList && !draftList.length) {
@@ -4669,7 +4672,7 @@ function requireIndex_production () {
4669
4672
  return null;
4670
4673
  };
4671
4674
 
4672
- var currentComponentFiber$2 = react.__my_react_internal__.currentComponentFiber, MyReactInternalInstance$3 = react.__my_react_internal__.MyReactInternalInstance;
4675
+ var currentComponentFiber$2 = typeExports.__my_react_internal__.currentComponentFiber, MyReactInternalInstance$3 = typeExports.__my_react_internal__.MyReactInternalInstance;
4673
4676
  var processProvider = function (renderDispatch, fiber) {
4674
4677
  if (renderDispatch.isAppMounted) {
4675
4678
  var prevProps = fiber.memoizedProps.value;
@@ -4710,7 +4713,7 @@ function requireIndex_production () {
4710
4713
  return children;
4711
4714
  };
4712
4715
 
4713
- var currentHookTreeNode = react.__my_react_internal__.currentHookTreeNode, currentHookNodeIndex$1 = react.__my_react_internal__.currentHookNodeIndex, currentScheduler$4 = react.__my_react_internal__.currentScheduler, cacheLazy = react.__my_react_internal__.cacheLazy;
4716
+ var currentHookTreeNode = typeExports.__my_react_internal__.currentHookTreeNode, currentHookNodeIndex$1 = typeExports.__my_react_internal__.currentHookNodeIndex, currentScheduler$4 = typeExports.__my_react_internal__.currentScheduler, cacheLazy = typeExports.__my_react_internal__.cacheLazy;
4714
4717
  var triggerState = STATE_TYPE.__triggerSync__ |
4715
4718
  STATE_TYPE.__triggerSyncForce__ |
4716
4719
  STATE_TYPE.__triggerConcurrent__ |
@@ -4731,12 +4734,12 @@ function requireIndex_production () {
4731
4734
  var re = undefined;
4732
4735
  try {
4733
4736
  if (typedElementTypeWithRef_1[TYPEKEY] === SERVER_REFERENCE_SYMBOL) {
4734
- var cacheFun = react.cache(typedElementTypeWithRef_1);
4737
+ var cacheFun = typeExports.cache(typedElementTypeWithRef_1);
4735
4738
  re = cacheFun(fiber.pendingProps, fiber.ref);
4736
4739
  // support rsc
4737
4740
  // rsc return promise, so we transform promise to lazy, and try to keep the lazy stable
4738
4741
  if (isPromise(re))
4739
- return react.createElement(cacheLazy(re));
4742
+ return typeExports.createElement(cacheLazy(re));
4740
4743
  }
4741
4744
  else {
4742
4745
  re = typedElementTypeWithRef_1(fiber.pendingProps, fiber.ref);
@@ -4768,11 +4771,11 @@ function requireIndex_production () {
4768
4771
  var re = undefined;
4769
4772
  try {
4770
4773
  if (typedElementType[TYPEKEY] === SERVER_REFERENCE_SYMBOL) {
4771
- var cacheFun = react.cache(typedElementType);
4774
+ var cacheFun = typeExports.cache(typedElementType);
4772
4775
  re = cacheFun(fiber.pendingProps);
4773
4776
  // support rsc
4774
4777
  if (isPromise(re))
4775
- return react.createElement(cacheLazy(re));
4778
+ return typeExports.createElement(cacheLazy(re));
4776
4779
  }
4777
4780
  else {
4778
4781
  re = typedElementType(fiber.pendingProps);
@@ -4801,9 +4804,9 @@ function requireIndex_production () {
4801
4804
  return children;
4802
4805
  };
4803
4806
 
4804
- var WrapperByLazyScope = function (children) { return react.createElement(ScopeLazy, null, children); };
4807
+ var WrapperByLazyScope = function (children) { return typeExports.createElement(ScopeLazy, null, children); };
4805
4808
  var WrapperBySuspenseScope = function (children) {
4806
- return react.createElement(ScopeSuspense, null, react.createElement(Comment, { mode: "s" }), children, react.createElement(Comment, { mode: "e" }));
4809
+ return typeExports.createElement(ScopeSuspense, null, typeExports.createElement(Comment, { mode: "s" }), children, typeExports.createElement(Comment, { mode: "e" }));
4807
4810
  };
4808
4811
  var isCommentElement = function (fiber) { return include(fiber.type, exports$1.NODE_TYPE.__comment__); };
4809
4812
  var isCommentStartElement = function (fiber) {
@@ -4819,8 +4822,8 @@ function requireIndex_production () {
4819
4822
  return false;
4820
4823
  };
4821
4824
 
4822
- var enableSuspenseRoot$1 = react.__my_react_shared__.enableSuspenseRoot; react.__my_react_shared__.enableDebugFiled;
4823
- var currentScheduler$3 = react.__my_react_internal__.currentScheduler;
4825
+ var enableSuspenseRoot$1 = typeExports.__my_react_shared__.enableSuspenseRoot; typeExports.__my_react_shared__.enableDebugFiled;
4826
+ var currentScheduler$3 = typeExports.__my_react_internal__.currentScheduler;
4824
4827
  var loadLazy = function (renderDispatch, typedElementType) { return __awaiter(void 0, void 0, void 0, function () {
4825
4828
  var loadedPromise, loaded, render, e_1;
4826
4829
  return __generator(this, function (_a) {
@@ -4860,11 +4863,11 @@ function requireIndex_production () {
4860
4863
  }
4861
4864
  if (typedElementType._loaded === true) {
4862
4865
  var render = typedElementType.render;
4863
- if (react.isValidElement(render)) {
4864
- return WrapperByLazyScope(react.cloneElement(render));
4866
+ if (typeExports.isValidElement(render)) {
4867
+ return WrapperByLazyScope(typeExports.cloneElement(render));
4865
4868
  }
4866
4869
  else {
4867
- return WrapperByLazyScope(react.createElement(render, fiber.pendingProps));
4870
+ return WrapperByLazyScope(typeExports.createElement(render, fiber.pendingProps));
4868
4871
  }
4869
4872
  }
4870
4873
  typedElementType._list = typedElementType._list || new Set();
@@ -4913,7 +4916,7 @@ function requireIndex_production () {
4913
4916
  typedField.asyncLoadList = new UniqueArray();
4914
4917
  };
4915
4918
 
4916
- var MyReactInternalInstance$2 = react.__my_react_internal__.MyReactInternalInstance;
4919
+ var MyReactInternalInstance$2 = typeExports.__my_react_internal__.MyReactInternalInstance;
4917
4920
  var processSuspense = function (fiber) {
4918
4921
  var isUpdate = !!fiber.instance;
4919
4922
  fiber.instance = fiber.instance || new MyReactInternalInstance$2();
@@ -4926,7 +4929,7 @@ function requireIndex_production () {
4926
4929
  return children;
4927
4930
  };
4928
4931
 
4929
- react.__my_react_internal__.MyReactInternalInstance; var instanceToInitialFieldMap = react.__my_react_internal__.instanceToInitialFieldMap;
4932
+ typeExports.__my_react_internal__.MyReactInternalInstance; var instanceToInitialFieldMap = typeExports.__my_react_internal__.instanceToInitialFieldMap;
4930
4933
  // support private instance field
4931
4934
  var instanceMap = instanceToInitialFieldMap;
4932
4935
  var initInstance = function (instance) {
@@ -5032,8 +5035,8 @@ function requireIndex_production () {
5032
5035
  return field === null || field === void 0 ? void 0 : field.effect;
5033
5036
  };
5034
5037
 
5035
- var currentComponentFiber$1 = react.__my_react_internal__.currentComponentFiber, MyReactInternalInstance$1 = react.__my_react_internal__.MyReactInternalInstance;
5036
- var enablePerformanceLog = react.__my_react_shared__.enablePerformanceLog, enableDebugFiled = react.__my_react_shared__.enableDebugFiled;
5038
+ var currentComponentFiber$1 = typeExports.__my_react_internal__.currentComponentFiber, MyReactInternalInstance$1 = typeExports.__my_react_internal__.MyReactInternalInstance;
5039
+ var enablePerformanceLog = typeExports.__my_react_shared__.enablePerformanceLog, enableDebugFiled = typeExports.__my_react_shared__.enableDebugFiled;
5037
5040
  var nextWorkCommon = function (renderDispatch, fiber, children) {
5038
5041
  if (exclude(fiber.patch, PATCH_TYPE.__update__)) {
5039
5042
  fiber.memoizedProps = fiber.pendingProps;
@@ -5178,8 +5181,8 @@ function requireIndex_production () {
5178
5181
  });
5179
5182
  };
5180
5183
 
5181
- react.__my_react_shared__.enableDebugFiled;
5182
- var currentRunningFiber = react.__my_react_internal__.currentRunningFiber, MyReactInternalInstance = react.__my_react_internal__.MyReactInternalInstance;
5184
+ typeExports.__my_react_shared__.enableDebugFiled;
5185
+ var currentRunningFiber = typeExports.__my_react_internal__.currentRunningFiber, MyReactInternalInstance = typeExports.__my_react_internal__.MyReactInternalInstance;
5183
5186
  var defaultGetContextValue = function (fiber, ContextObject) {
5184
5187
  var _a;
5185
5188
  if (fiber) {
@@ -5266,8 +5269,8 @@ function requireIndex_production () {
5266
5269
  });
5267
5270
  };
5268
5271
 
5269
- var currentScheduler$2 = react.__my_react_internal__.currentScheduler;
5270
- react.__my_react_shared__.enableScopeTreeLog;
5272
+ var currentScheduler$2 = typeExports.__my_react_internal__.currentScheduler;
5273
+ typeExports.__my_react_shared__.enableScopeTreeLog;
5271
5274
  // TODO improve
5272
5275
  var defaultDispatchMountLatest = function (_dispatch, _fiber) {
5273
5276
  beforeSyncUpdate();
@@ -5339,13 +5342,13 @@ function requireIndex_production () {
5339
5342
  return null;
5340
5343
  };
5341
5344
 
5342
- react.__my_react_shared__.enableDebugFiled;
5345
+ typeExports.__my_react_shared__.enableDebugFiled;
5343
5346
  var defaultGenerateStrict = function (fiber) {
5344
5347
  return false;
5345
5348
  };
5346
5349
 
5347
- var currentScheduler$1 = react.__my_react_internal__.currentScheduler;
5348
- react.__my_react_shared__.enableScopeTreeLog;
5350
+ var currentScheduler$1 = typeExports.__my_react_internal__.currentScheduler;
5351
+ typeExports.__my_react_shared__.enableScopeTreeLog;
5349
5352
  var defaultDispatchUpdate = function (_dispatch, _list, sync) {
5350
5353
  // TODO maybe need call `insertionEffect` in another function
5351
5354
  beforeSyncUpdate();
@@ -5429,7 +5432,7 @@ function requireIndex_production () {
5429
5432
  }
5430
5433
  };
5431
5434
 
5432
- var currentComponentFiber = react.__my_react_internal__.currentComponentFiber, currentHookNodeIndex = react.__my_react_internal__.currentHookNodeIndex;
5435
+ var currentComponentFiber = typeExports.__my_react_internal__.currentComponentFiber, currentHookNodeIndex = typeExports.__my_react_internal__.currentHookNodeIndex;
5433
5436
  var resolveHookValue = function (hookNode, field) {
5434
5437
  if (hookNode) {
5435
5438
  switch (hookNode.type) {
@@ -5482,8 +5485,8 @@ function requireIndex_production () {
5482
5485
  return resolveHookValue(currentHook, field);
5483
5486
  };
5484
5487
 
5485
- var enableSuspenseRoot = react.__my_react_shared__.enableSuspenseRoot; react.__my_react_shared__.enableDebugFiled;
5486
- var currentScheduler = react.__my_react_internal__.currentScheduler;
5488
+ var enableSuspenseRoot = typeExports.__my_react_shared__.enableSuspenseRoot; typeExports.__my_react_shared__.enableDebugFiled;
5489
+ var currentScheduler = typeExports.__my_react_internal__.currentScheduler;
5487
5490
  var loadPromise = function (renderDispatch, promise) { return __awaiter(void 0, void 0, void 0, function () {
5488
5491
  var value, reason_1;
5489
5492
  return __generator(this, function (_a) {
@@ -5596,7 +5599,7 @@ function requireIndex_production () {
5596
5599
  return null;
5597
5600
  };
5598
5601
 
5599
- var Dispatcher = react.__my_react_internal__.Dispatcher, MyReactInternalInstanceClass = react.__my_react_internal__.MyReactInternalInstance, dispatchToListenerMap = react.__my_react_internal__.dispatchToListenerMap;
5602
+ var Dispatcher = typeExports.__my_react_internal__.Dispatcher, MyReactInternalInstanceClass = typeExports.__my_react_internal__.MyReactInternalInstance, dispatchToListenerMap = typeExports.__my_react_internal__.dispatchToListenerMap;
5600
5603
  var getInitialListeners = function () {
5601
5604
  return {
5602
5605
  fiberInitial: new Set(),
@@ -6421,7 +6424,7 @@ function requireIndex_production () {
6421
6424
  _this.isAppMounted = false;
6422
6425
  _this.isAppCrashed = false;
6423
6426
  _this.isAppUnmounted = false;
6424
- _this.version = "0.3.23";
6427
+ _this.version = "0.3.24";
6425
6428
  _this.id = Math.random().toString(16).slice(2);
6426
6429
  _this.mode = "production";
6427
6430
  _this.renderMode = "render";
@@ -6624,8 +6627,8 @@ function requireIndex_production () {
6624
6627
  return CustomRenderDispatch;
6625
6628
  }(RenderDispatchEvent));
6626
6629
 
6627
- var globalLoop = react.__my_react_internal__.globalLoop;
6628
- react.__my_react_shared__.enableScopeTreeLog;
6630
+ var globalLoop = typeExports.__my_react_internal__.globalLoop;
6631
+ typeExports.__my_react_shared__.enableScopeTreeLog;
6629
6632
  function finishMountSync(renderDispatch, fiber) {
6630
6633
  renderDispatch.reconcileCommit(fiber);
6631
6634
  renderDispatch.resetUpdateFlowRuntimeFiber();
@@ -6659,7 +6662,7 @@ function requireIndex_production () {
6659
6662
  });
6660
6663
  }); };
6661
6664
 
6662
- var version = "0.3.23";
6665
+ var version = "0.3.24";
6663
6666
 
6664
6667
  exports$1.CustomRenderDispatch = CustomRenderDispatch;
6665
6668
  exports$1.MyReactFiberNode = MyReactFiberNode;
@@ -6957,7 +6960,7 @@ var Effect_TYPE;
6957
6960
  Effect_TYPE[Effect_TYPE["__unmount__"] = 2] = "__unmount__";
6958
6961
  })(Effect_TYPE || (Effect_TYPE = {}));
6959
6962
 
6960
- var enableKnownConfigLog = require$$0.createRef(false);
6963
+ var enableKnownConfigLog = typeExports.createRef(false);
6961
6964
 
6962
6965
  var DISPATCH_FIELD = "__@my-react/dispatch__";
6963
6966
  var DEV_TOOL_FIELD = "__@my-react/react-devtool-inject__";
@@ -7137,7 +7140,7 @@ var create = function (_dispatch, _fiber, _config) {
7137
7140
 
7138
7141
  var initialMap = function (dispatch, fiber, config) {
7139
7142
  var parentFiberWithNode = null;
7140
- var parentFiberHostContext = null;
7143
+ var parentFiberWithNodeHostContext = null;
7141
7144
  var hostContext = null;
7142
7145
  if (fiber.parent) {
7143
7146
  var mayFiberContainer = fiber.parent;
@@ -7150,12 +7153,17 @@ var initialMap = function (dispatch, fiber, config) {
7150
7153
  else {
7151
7154
  parentFiberWithNode = dispatch.runtimeDom.elementMap.get(fiber.parent) || dispatch.rootFiber;
7152
7155
  }
7153
- parentFiberHostContext = dispatch.runtimeDom.hostContextMap.get(parentFiberWithNode);
7156
+ parentFiberWithNodeHostContext = dispatch.runtimeDom.hostContextMap.get(parentFiberWithNode);
7154
7157
  if (checkFiberWithNativeNode(dispatch, fiber)) {
7155
- hostContext = config.getChildHostContext(parentFiberHostContext, fiber.elementType, dispatch.rootNode, fiber);
7158
+ hostContext = config.getChildHostContext(parentFiberWithNodeHostContext, fiber.elementType, dispatch.rootNode, fiber);
7156
7159
  }
7157
7160
  else {
7158
- hostContext = parentFiberHostContext;
7161
+ hostContext = parentFiberWithNodeHostContext;
7162
+ }
7163
+ // help for lynx render to set css entry
7164
+ if (config.pathHostContext && typeof config.pathHostContext === "function") {
7165
+ var parentFiberHostContext = dispatch.runtimeDom.hostContextMap.get(mayFiberContainer);
7166
+ hostContext = config.pathHostContext(hostContext, parentFiberHostContext, parentFiberWithNodeHostContext, fiber.elementType, fiber.pendingProps, dispatch.rootNode, fiber);
7159
7167
  }
7160
7168
  }
7161
7169
  else {
@@ -7436,7 +7444,7 @@ var position = function (_dispatch, _fiber, _config) {
7436
7444
  };
7437
7445
 
7438
7446
  var createPortal = function (_element, _container) {
7439
- var portal = require$$0.createElement(Portal, { container: _container }, _element);
7447
+ var portal = typeExports.createElement(Portal, { container: _container }, _element);
7440
7448
  return portal;
7441
7449
  };
7442
7450
  var nextWorkPortal = function (renderDispatch, fiber) {
@@ -7483,8 +7491,8 @@ var ReconcilerDispatchFiber = function (renderDispatch, fiber) {
7483
7491
  }
7484
7492
  };
7485
7493
 
7486
- var currentScheduler$2 = require$$0.__my_react_internal__.currentScheduler;
7487
- require$$0.__my_react_shared__.enableScopeTreeLog;
7494
+ var currentScheduler$2 = typeExports.__my_react_internal__.currentScheduler;
7495
+ typeExports.__my_react_shared__.enableScopeTreeLog;
7488
7496
  var ReconcilerDispatchMount = function (_dispatch, _fiber, config) {
7489
7497
  var pendingCommitFiberArray = [];
7490
7498
  myreactReconcilerExports.beforeSyncUpdate();
@@ -7556,8 +7564,8 @@ var ReconcilerDispatchMount = function (_dispatch, _fiber, config) {
7556
7564
  });
7557
7565
  };
7558
7566
 
7559
- var currentScheduler$1 = require$$0.__my_react_internal__.currentScheduler;
7560
- require$$0.__my_react_shared__.enableScopeTreeLog;
7567
+ var currentScheduler$1 = typeExports.__my_react_internal__.currentScheduler;
7568
+ typeExports.__my_react_shared__.enableScopeTreeLog;
7561
7569
  var ReconcilerDispatchUpdate = function (_dispatch, _list, config, sync) {
7562
7570
  myreactReconcilerExports.beforeSyncUpdate();
7563
7571
  _list.listToFoot(function invokeUnmountPendingAndInsertionEffectList(_fiber) {
@@ -7670,7 +7678,7 @@ var ReconcilerDispatchUpdate = function (_dispatch, _list, config, sync) {
7670
7678
  }
7671
7679
  };
7672
7680
 
7673
- require$$0.__my_react_internal__.currentComponentFiber;
7681
+ typeExports.__my_react_internal__.currentComponentFiber;
7674
7682
  var initialRef = {
7675
7683
  typeForRef: myreactReconcilerExports.NODE_TYPE.__plain__ | myreactReconcilerExports.NODE_TYPE.__class__,
7676
7684
  typeForCreate: myreactReconcilerExports.NODE_TYPE.__text__ | myreactReconcilerExports.NODE_TYPE.__plain__ | myreactReconcilerExports.NODE_TYPE.__portal__,
@@ -7788,381 +7796,7 @@ var createDispatch = function (rootNode, rootFiber, rootElement, config, flag) {
7788
7796
  return dispatch;
7789
7797
  };
7790
7798
 
7791
- /* eslint-disable @typescript-eslint/no-unused-vars */
7792
- /* eslint-disable @typescript-eslint/ban-ts-comment */
7793
- function loadRemoteScript(url_1) {
7794
- return __awaiter(this, arguments, void 0, function (url, options) {
7795
- var _a, timeout, _b, context, _c, useEval, controller_1, timeoutId, response, code, error_1, errorMsg;
7796
- if (options === void 0) { options = {}; }
7797
- return __generator(this, function (_d) {
7798
- switch (_d.label) {
7799
- case 0:
7800
- _a = options.timeout, timeout = _a === void 0 ? 10000 : _a, _b = options.context, context = _b === void 0 ? {} : _b, _c = options.useEval, useEval = _c === void 0 ? false : _c;
7801
- _d.label = 1;
7802
- case 1:
7803
- _d.trys.push([1, 5, , 6]);
7804
- controller_1 = new AbortController();
7805
- timeoutId = setTimeout(function () { return controller_1.abort(); }, timeout);
7806
- return [4 /*yield*/, fetch(url, {
7807
- signal: controller_1.signal,
7808
- })];
7809
- case 2:
7810
- response = _d.sent();
7811
- if (!response.ok) {
7812
- throw new Error("HTTP ".concat(response.status, ": ").concat(response.statusText));
7813
- }
7814
- return [4 /*yield*/, response.text()];
7815
- case 3:
7816
- code = _d.sent();
7817
- clearTimeout(timeoutId);
7818
- // 根据环境选择执行方式
7819
- return [4 /*yield*/, executeScript(code, url, { context: context, useEval: useEval })];
7820
- case 4:
7821
- // 根据环境选择执行方式
7822
- _d.sent();
7823
- return [3 /*break*/, 6];
7824
- case 5:
7825
- error_1 = _d.sent();
7826
- if ((error_1 === null || error_1 === void 0 ? void 0 : error_1.name) === "AbortError") {
7827
- throw new Error("\u52A0\u8F7D\u8FDC\u7A0B\u811A\u672C\u8D85\u65F6 (".concat(timeout, "ms)"));
7828
- }
7829
- errorMsg = (error_1 === null || error_1 === void 0 ? void 0 : error_1.message) || String(error_1);
7830
- throw new Error("\u52A0\u8F7D\u8FDC\u7A0B\u811A\u672C\u5931\u8D25: ".concat(errorMsg));
7831
- case 6: return [2 /*return*/];
7832
- }
7833
- });
7834
- });
7835
- }
7836
- function executeScript(code, url, options) {
7837
- return __awaiter(this, void 0, void 0, function () {
7838
- var _a, context, _b, useEval, env, _c;
7839
- return __generator(this, function (_d) {
7840
- switch (_d.label) {
7841
- case 0:
7842
- _a = options.context, context = _a === void 0 ? {} : _a, _b = options.useEval, useEval = _b === void 0 ? false : _b;
7843
- env = detectEnvironment();
7844
- _c = env;
7845
- switch (_c) {
7846
- case "bun": return [3 /*break*/, 1];
7847
- case "node": return [3 /*break*/, 3];
7848
- case "browser": return [3 /*break*/, 5];
7849
- }
7850
- return [3 /*break*/, 7];
7851
- case 1: return [4 /*yield*/, executeInBun(code, url, context)];
7852
- case 2:
7853
- _d.sent();
7854
- return [3 /*break*/, 8];
7855
- case 3: return [4 /*yield*/, executeInNode(code, url, context)];
7856
- case 4:
7857
- _d.sent();
7858
- return [3 /*break*/, 8];
7859
- case 5: return [4 /*yield*/, executeInBrowser(code, url, context, useEval)];
7860
- case 6:
7861
- _d.sent();
7862
- return [3 /*break*/, 8];
7863
- case 7: throw new Error("未知的 JavaScript 环境");
7864
- case 8: return [2 /*return*/];
7865
- }
7866
- });
7867
- });
7868
- }
7869
- function detectEnvironment() {
7870
- // 检测 Bun
7871
- // @ts-ignore
7872
- if (typeof Bun !== "undefined" && typeof Bun === "object") {
7873
- return "bun";
7874
- }
7875
- // 检测 Node.js
7876
- if (typeof process !== "undefined" && process.versions && process.versions.node) {
7877
- return "node";
7878
- }
7879
- // 检测浏览器环境
7880
- if (typeof window !== "undefined" && typeof document !== "undefined") {
7881
- return "browser";
7882
- }
7883
- // 默认为浏览器环境(保守策略)
7884
- return "browser";
7885
- }
7886
- // 安全的 Base64 编码函数(跨环境兼容)
7887
- function safeBase64Encode(str) {
7888
- // Node.js 环境
7889
- if (typeof Buffer !== "undefined") {
7890
- return Buffer.from(str, "utf-8").toString("base64");
7891
- }
7892
- // 浏览器环境
7893
- if (typeof btoa !== "undefined") {
7894
- // 处理 Unicode 字符
7895
- var utf8Bytes_1 = new TextEncoder().encode(str);
7896
- var binary = "";
7897
- for (var i = 0; i < utf8Bytes_1.length; i++) {
7898
- binary += String.fromCharCode(utf8Bytes_1[i]);
7899
- }
7900
- return btoa(binary);
7901
- }
7902
- // 回退方案:手动实现 Base64 编码
7903
- var base64Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
7904
- var utf8Bytes = new TextEncoder().encode(str);
7905
- var result = "";
7906
- for (var i = 0; i < utf8Bytes.length; i += 3) {
7907
- var a = utf8Bytes[i];
7908
- var b = i + 1 < utf8Bytes.length ? utf8Bytes[i + 1] : 0;
7909
- var c = i + 2 < utf8Bytes.length ? utf8Bytes[i + 2] : 0;
7910
- var bitmap = (a << 16) | (b << 8) | c;
7911
- result += base64Chars[(bitmap >> 18) & 63];
7912
- result += base64Chars[(bitmap >> 12) & 63];
7913
- result += i + 1 < utf8Bytes.length ? base64Chars[(bitmap >> 6) & 63] : "=";
7914
- result += i + 2 < utf8Bytes.length ? base64Chars[bitmap & 63] : "=";
7915
- }
7916
- return result;
7917
- }
7918
- // Bun 环境执行
7919
- function executeInBun(code, url, context) {
7920
- return __awaiter(this, void 0, void 0, function () {
7921
- var base64Code, dataUrl;
7922
- return __generator(this, function (_a) {
7923
- switch (_a.label) {
7924
- case 0:
7925
- _a.trys.push([0, 2, , 4]);
7926
- base64Code = safeBase64Encode(code);
7927
- dataUrl = "data:application/javascript;base64,".concat(base64Code);
7928
- return [4 /*yield*/, import(/* @vite-ignore */ dataUrl)];
7929
- case 1:
7930
- _a.sent();
7931
- return [2 /*return*/];
7932
- case 2:
7933
- _a.sent();
7934
- // 方法2: 使用 VM 回退
7935
- return [4 /*yield*/, executeWithVM(code, url, context)];
7936
- case 3:
7937
- // 方法2: 使用 VM 回退
7938
- _a.sent();
7939
- return [3 /*break*/, 4];
7940
- case 4: return [2 /*return*/];
7941
- }
7942
- });
7943
- });
7944
- }
7945
- // Node.js 环境执行
7946
- function executeInNode(code, url, context) {
7947
- return __awaiter(this, void 0, void 0, function () {
7948
- var error_3, base64Code, dataUrl, importError_1, errorMsg, importErrorMsg;
7949
- return __generator(this, function (_a) {
7950
- switch (_a.label) {
7951
- case 0:
7952
- _a.trys.push([0, 2, , 7]);
7953
- // 方法1: 使用 VM 模块
7954
- return [4 /*yield*/, executeWithVM(code, url, context)];
7955
- case 1:
7956
- // 方法1: 使用 VM 模块
7957
- _a.sent();
7958
- return [3 /*break*/, 7];
7959
- case 2:
7960
- error_3 = _a.sent();
7961
- _a.label = 3;
7962
- case 3:
7963
- _a.trys.push([3, 5, , 6]);
7964
- base64Code = safeBase64Encode(code);
7965
- dataUrl = "data:application/javascript;base64,".concat(base64Code);
7966
- return [4 /*yield*/, import(/* @vite-ignore */ dataUrl)];
7967
- case 4:
7968
- _a.sent();
7969
- return [3 /*break*/, 6];
7970
- case 5:
7971
- importError_1 = _a.sent();
7972
- errorMsg = (error_3 === null || error_3 === void 0 ? void 0 : error_3.message) || String(error_3);
7973
- importErrorMsg = (importError_1 === null || importError_1 === void 0 ? void 0 : importError_1.message) || String(importError_1);
7974
- throw new Error("Node.js \u6267\u884C\u5931\u8D25: ".concat(errorMsg, ", ").concat(importErrorMsg));
7975
- case 6: return [3 /*break*/, 7];
7976
- case 7: return [2 /*return*/];
7977
- }
7978
- });
7979
- });
7980
- }
7981
- // 浏览器环境执行
7982
- function executeInBrowser(code, url, context, useEval) {
7983
- return __awaiter(this, void 0, void 0, function () {
7984
- return __generator(this, function (_a) {
7985
- switch (_a.label) {
7986
- case 0:
7987
- // 浏览器环境的安全考虑
7988
- if (!useEval && isPotentiallyUnsafe(code)) {
7989
- throw new Error("代码包含潜在不安全内容,如需执行请设置 useEval: true");
7990
- }
7991
- _a.label = 1;
7992
- case 1:
7993
- _a.trys.push([1, 3, , 4]);
7994
- // 方法1: 使用 script 标签插入 (最安全)
7995
- return [4 /*yield*/, executeWithScriptTag(code)];
7996
- case 2:
7997
- // 方法1: 使用 script 标签插入 (最安全)
7998
- _a.sent();
7999
- return [3 /*break*/, 4];
8000
- case 3:
8001
- _a.sent();
8002
- // 方法2: 使用 eval (需要显式启用)
8003
- if (useEval) {
8004
- executeWithEval(code, context);
8005
- }
8006
- else {
8007
- throw new Error("浏览器执行失败,请启用 useEval 选项或检查 CSP 设置");
8008
- }
8009
- return [3 /*break*/, 4];
8010
- case 4: return [2 /*return*/];
8011
- }
8012
- });
8013
- });
8014
- }
8015
- // 通用 VM 执行 (Node.js/Bun)
8016
- function executeWithVM(code, url, context) {
8017
- return __awaiter(this, void 0, void 0, function () {
8018
- var vm, sandbox, vmContext, script, error_5, errorMsg;
8019
- return __generator(this, function (_a) {
8020
- switch (_a.label) {
8021
- case 0:
8022
- _a.trys.push([0, 2, , 3]);
8023
- return [4 /*yield*/, import('vm')];
8024
- case 1:
8025
- vm = _a.sent();
8026
- sandbox = __assign(__assign(__assign({
8027
- // 基础全局变量
8028
- console: console, setTimeout: setTimeout, setInterval: setInterval, clearTimeout: clearTimeout, clearInterval: clearInterval, URL: URL, URLSearchParams: URLSearchParams,
8029
- // 内置对象
8030
- Object: Object, Array: Array, String: String, Number: Number, Boolean: Boolean, Symbol: Symbol, Date: Date, RegExp: RegExp, Error: Error, TypeError: TypeError, RangeError: RangeError, SyntaxError: SyntaxError, Map: Map, Set: Set, WeakMap: WeakMap, WeakSet: WeakSet, Promise: Promise, JSON: JSON, Math: Math }, (typeof global !== "undefined" ? { global: global } : {})), (typeof process !== "undefined" ? { process: process } : {})), context);
8031
- vmContext = vm.createContext(sandbox);
8032
- script = new vm.Script(code, {
8033
- filename: url,
8034
- lineOffset: 0,
8035
- columnOffset: 0,
8036
- });
8037
- script.runInContext(vmContext);
8038
- return [3 /*break*/, 3];
8039
- case 2:
8040
- error_5 = _a.sent();
8041
- errorMsg = (error_5 === null || error_5 === void 0 ? void 0 : error_5.message) || String(error_5);
8042
- throw new Error("VM \u6267\u884C\u5931\u8D25: ".concat(errorMsg));
8043
- case 3: return [2 /*return*/];
8044
- }
8045
- });
8046
- });
8047
- }
8048
- // 浏览器 script 标签执行
8049
- function executeWithScriptTag(code, url) {
8050
- // 检查是否在浏览器环境
8051
- if (typeof document === "undefined") {
8052
- throw new Error("document 未定义,不在浏览器环境中");
8053
- }
8054
- return new Promise(function (resolve, reject) {
8055
- // 创建 script 元素
8056
- var script = document.createElement("script");
8057
- // 使用 Blob URL 避免 CSP 问题
8058
- var blob = new Blob([code], { type: "application/javascript" });
8059
- var blobUrl = URL.createObjectURL(blob);
8060
- script.src = blobUrl;
8061
- // 清理函数
8062
- var cleanup = function () {
8063
- URL.revokeObjectURL(blobUrl);
8064
- // 从 DOM 中移除 script 标签以防止内存泄漏
8065
- if (script.parentNode) {
8066
- script.parentNode.removeChild(script);
8067
- }
8068
- };
8069
- // 设置错误处理
8070
- script.onerror = function () {
8071
- cleanup();
8072
- reject(new Error("Script 标签加载失败"));
8073
- };
8074
- script.onload = function () {
8075
- cleanup();
8076
- resolve();
8077
- };
8078
- // 添加到 DOM
8079
- document.head.appendChild(script);
8080
- });
8081
- }
8082
- // 浏览器 eval 执行
8083
- function executeWithEval(code, context) {
8084
- // 在特定上下文中执行
8085
- var contextKeys = Object.keys(context);
8086
- var contextValues = Object.values(context);
8087
- try {
8088
- // 使用 Function 构造函数比直接 eval 稍安全
8089
- var func = new (Function.bind.apply(Function, __spreadArray(__spreadArray([void 0], contextKeys, false), ["\n \"use strict\";\n ".concat(code, "\n ")], false)))();
8090
- func.apply(void 0, contextValues);
8091
- }
8092
- catch (error) {
8093
- // 回退到间接 eval
8094
- try {
8095
- var indirectEval = eval;
8096
- indirectEval(code);
8097
- }
8098
- catch (evalError) {
8099
- var errorMsg = (evalError === null || evalError === void 0 ? void 0 : evalError.message) || String(evalError);
8100
- throw new Error("Eval \u6267\u884C\u5931\u8D25: ".concat(errorMsg));
8101
- }
8102
- }
8103
- }
8104
- // 增强的安全检查
8105
- function isPotentiallyUnsafe(code) {
8106
- var unsafePatterns = [
8107
- // Cookie 和存储访问
8108
- /document\.cookie/i,
8109
- /localStorage/i,
8110
- /sessionStorage/i,
8111
- /indexedDB/i,
8112
- // 动态代码执行
8113
- /\beval\s*\(/i,
8114
- /Function\s*\(/i,
8115
- /setTimeout\s*\(\s*["'`]/i, // setTimeout with string
8116
- /setInterval\s*\(\s*["'`]/i, // setInterval with string
8117
- // 动态脚本和 DOM 操作
8118
- /script\.src/i,
8119
- /\.innerHTML/i,
8120
- /\.outerHTML/i,
8121
- /document\.write/i,
8122
- /document\.writeln/i,
8123
- // 动态属性访问(可能绕过检查)
8124
- /\[["'`]eval["'`]\]/i,
8125
- /\[["'`]cookie["'`]\]/i,
8126
- /\[["'`]localStorage["'`]\]/i,
8127
- // import() 动态导入
8128
- /import\s*\(/i,
8129
- // 危险的 DOM API
8130
- /\.insertAdjacentHTML/i,
8131
- /createContextualFragment/i,
8132
- ];
8133
- return unsafePatterns.some(function (pattern) { return pattern.test(code); });
8134
- }
8135
- // 安全的 require 函数模拟
8136
- function createSafeRequire() {
8137
- if (typeof require !== "undefined") {
8138
- return require;
8139
- }
8140
- // 在浏览器环境中返回一个安全的模拟 require
8141
- return function (id) {
8142
- throw new Error("require('".concat(id, "') \u5728\u6D4F\u89C8\u5668\u73AF\u5883\u4E2D\u4E0D\u53EF\u7528"));
8143
- };
8144
- }
8145
- // 增强的模块加载版本(支持导出)
8146
- function loadRemoteModule(url_1) {
8147
- return __awaiter(this, arguments, void 0, function (url, options) {
8148
- var _a, context, moduleExports, moduleContext;
8149
- if (options === void 0) { options = {}; }
8150
- return __generator(this, function (_b) {
8151
- switch (_b.label) {
8152
- case 0:
8153
- _a = options.context, context = _a === void 0 ? {} : _a;
8154
- moduleExports = {};
8155
- moduleContext = __assign({ exports: moduleExports, module: { exports: moduleExports }, require: createSafeRequire() }, context);
8156
- return [4 /*yield*/, loadRemoteScript(url, __assign(__assign({}, options), { context: moduleContext }))];
8157
- case 1:
8158
- _b.sent();
8159
- return [2 /*return*/, moduleContext.module.exports];
8160
- }
8161
- });
8162
- });
8163
- }
8164
-
8165
- var enableDebugFiled$1 = require$$0.__my_react_shared__.enableDebugFiled, enableScopeTreeLog$1 = require$$0.__my_react_shared__.enableScopeTreeLog;
7799
+ var enableDebugFiled$1 = typeExports.__my_react_shared__.enableDebugFiled, enableScopeTreeLog$1 = typeExports.__my_react_shared__.enableScopeTreeLog;
8166
7800
  /**
8167
7801
  * @internal
8168
7802
  */
@@ -8174,8 +7808,8 @@ var prepareScheduler = function () {
8174
7808
  myreactReconcilerExports.initScheduler();
8175
7809
  };
8176
7810
 
8177
- var enableDebugFiled = require$$0.__my_react_shared__.enableDebugFiled, enableScopeTreeLog = require$$0.__my_react_shared__.enableScopeTreeLog;
8178
- var currentScheduler = require$$0.__my_react_internal__.currentScheduler;
7811
+ var enableDebugFiled = typeExports.__my_react_shared__.enableDebugFiled, enableScopeTreeLog = typeExports.__my_react_shared__.enableScopeTreeLog;
7812
+ var currentScheduler = typeExports.__my_react_internal__.currentScheduler;
8179
7813
  // react-reconciler compat implementation
8180
7814
  var Reconciler = function (_config) {
8181
7815
  var rendererPackageName = "@my-react";
@@ -8197,6 +7831,7 @@ var Reconciler = function (_config) {
8197
7831
  return _container;
8198
7832
  };
8199
7833
  var updateContainer = function (_element, _container, _ignore, _cb) {
7834
+ var _a;
8200
7835
  var renderDispatch = _container.__container__;
8201
7836
  var renderScheduler = currentScheduler.current;
8202
7837
  if (renderDispatch instanceof myreactReconcilerExports.CustomRenderDispatch) {
@@ -8214,6 +7849,7 @@ var Reconciler = function (_config) {
8214
7849
  return;
8215
7850
  }
8216
7851
  myreactReconcilerExports.unmountContainer(renderDispatch);
7852
+ (_a = _config === null || _config === void 0 ? void 0 : _config.clearContainer) === null || _a === void 0 ? void 0 : _a.call(_config, _container);
8217
7853
  ReconcilerSet.delete(renderDispatch);
8218
7854
  renderScheduler.dispatchSet.uniDelete(renderDispatch);
8219
7855
  delGlobalDispatch(renderDispatch);
@@ -8231,47 +7867,32 @@ var Reconciler = function (_config) {
8231
7867
  myreactReconcilerExports.mountSync(_renderDispatch, _fiber);
8232
7868
  _renderDispatch.isAppMounted = true;
8233
7869
  };
8234
- var injectIntoDevTools = function (_config) { return __awaiter(void 0, void 0, void 0, function () {
8235
- return __generator(this, function (_a) {
8236
- switch (_a.label) {
8237
- case 0:
8238
- rendererPackageName = _config.rendererPackageName || rendererPackageName;
8239
- ReconcilerSet.forEach(function (renderDispatch) { return (renderDispatch.renderPackage = rendererPackageName); });
8240
- if (globalThis["__MY_REACT_DEVTOOL_INTERNAL__"])
8241
- return [2 /*return*/];
8242
- // load core runtime
8243
- // await loadScript("https://mrwangjusttodo.github.io/myreact-devtools/bundle/hook.js");
8244
- return [4 /*yield*/, loadRemoteModule("https://mrwangjusttodo.github.io/myreact-devtools/bundle/hook.js", { context: { globalThis: globalThis } })];
8245
- case 1:
8246
- // load core runtime
8247
- // await loadScript("https://mrwangjusttodo.github.io/myreact-devtools/bundle/hook.js");
8248
- _a.sent();
8249
- return [2 /*return*/];
8250
- }
8251
- });
8252
- }); };
8253
- var injectIntoDevToolsWithSocketIO = function (url, _config) { return __awaiter(void 0, void 0, void 0, function () {
7870
+ var injectIntoDevTools = function (_config) {
7871
+ rendererPackageName = _config.rendererPackageName || rendererPackageName;
7872
+ ReconcilerSet.forEach(function (renderDispatch) { return (renderDispatch.renderPackage = rendererPackageName); });
7873
+ if (globalThis["__MY_REACT_DEVTOOL_INTERNAL__"])
7874
+ return;
7875
+ };
7876
+ var injectIntoDevToolsAuto = function (url, _config) { return __awaiter(void 0, void 0, void 0, function () {
8254
7877
  var init;
8255
7878
  return __generator(this, function (_b) {
8256
7879
  switch (_b.label) {
8257
- case 0:
8258
- // load core runtime
8259
- return [4 /*yield*/, injectIntoDevTools(_config || {})];
7880
+ case 0:
7881
+ // set core runtime
7882
+ // you should load core runtime by your self, see packages/myreact-reconciler-compact/src/preload.ts
7883
+ injectIntoDevTools(_config || {});
7884
+ init = globalThis["__MY_REACT_DEVTOOL_NODE__"] || globalThis["__MY_REACT_DEVTOOL_BUNDLE__"] || globalThis["__MY_REACT_DEVTOOL_BUNDLE_WS__"];
7885
+ _b.label = 1;
8260
7886
  case 1:
8261
- // load core runtime
8262
- _b.sent();
8263
- init = globalThis["__MY_REACT_DEVTOOL_NODE__"];
8264
- _b.label = 2;
8265
- case 2:
8266
- _b.trys.push([2, 4, , 5]);
7887
+ _b.trys.push([1, 3, , 4]);
8267
7888
  return [4 /*yield*/, init(url)];
8268
- case 3:
7889
+ case 2:
8269
7890
  _b.sent();
8270
- return [3 /*break*/, 5];
8271
- case 4:
7891
+ return [3 /*break*/, 4];
7892
+ case 3:
8272
7893
  _b.sent();
8273
- return [3 /*break*/, 5];
8274
- case 5: return [2 /*return*/];
7894
+ return [3 /*break*/, 4];
7895
+ case 4: return [2 /*return*/];
8275
7896
  }
8276
7897
  });
8277
7898
  }); };
@@ -8284,14 +7905,14 @@ var Reconciler = function (_config) {
8284
7905
  updateContainer: updateContainer,
8285
7906
  injectIntoDevTools: injectIntoDevTools,
8286
7907
  getPublicRootInstance: getPublicRootInstance,
8287
- injectIntoDevToolsWithSocketIO: injectIntoDevToolsWithSocketIO,
7908
+ injectIntoDevToolsAuto: injectIntoDevToolsAuto,
8288
7909
  flushSync: myreactReconcilerExports.safeCallWithSync,
8289
7910
  flushSyncWork: myreactReconcilerExports.safeCallWithSync,
8290
7911
  batchedUpdates: myreactReconcilerExports.safeCallWithSync,
8291
7912
  };
8292
7913
  };
8293
7914
 
8294
- var version = "0.0.14";
7915
+ var version = "0.0.15";
8295
7916
  var createReconciler = Reconciler;
8296
7917
 
8297
7918
  exports.createReconciler = createReconciler;