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

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_development = {};
@@ -110,7 +101,19 @@ function requireIndex_development () {
110
101
  hasRequiredIndex_development = 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;
@@ -749,15 +752,15 @@ function requireIndex_development () {
749
752
 
750
753
  var MyWeakMap = typeof WeakMap !== "undefined" ? WeakMap : Map;
751
754
 
752
- var currentRefreshHandler = react.createRef(null);
755
+ var currentRefreshHandler = typeExports.createRef(null);
753
756
  // TODO
754
757
  // need improve
755
- var currentTriggerFiber = react.createRef(null);
756
- var fiberToDispatchMap = react.__my_react_internal__.fiberToDispatchMap;
757
- var enableFiberForLog = react.createRef(false);
758
- var enableDebugUpdateQueue = react.createRef(false);
759
- var enableValidMyReactElement = react.createRef(false);
760
- var enableLogForCurrentFlowIsRunning = react.createRef(false);
758
+ var currentTriggerFiber = typeExports.createRef(null);
759
+ var fiberToDispatchMap = typeExports.__my_react_internal__.fiberToDispatchMap;
760
+ var enableFiberForLog = typeExports.createRef(false);
761
+ var enableDebugUpdateQueue = typeExports.createRef(false);
762
+ var enableValidMyReactElement = typeExports.createRef(false);
763
+ var enableLogForCurrentFlowIsRunning = typeExports.createRef(false);
761
764
 
762
765
  exports$1.NODE_TYPE = void 0;
763
766
  (function (NODE_TYPE) {
@@ -788,7 +791,7 @@ function requireIndex_development () {
788
791
  NODE_TYPE[NODE_TYPE["__serverComponent__"] = 8388608] = "__serverComponent__";
789
792
  })(exports$1.NODE_TYPE || (exports$1.NODE_TYPE = {}));
790
793
 
791
- var enableSyncFlush$1 = react.__my_react_shared__.enableSyncFlush;
794
+ var enableSyncFlush$1 = typeExports.__my_react_shared__.enableSyncFlush;
792
795
  /**
793
796
  * @deprecated
794
797
  */
@@ -814,14 +817,15 @@ function requireIndex_development () {
814
817
  enableSyncFlush$1.current = stack.pop();
815
818
  };
816
819
 
817
- 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;
820
+ 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;
818
821
  var safeCall = function (action) {
822
+ var _a;
819
823
  var args = [];
820
824
  for (var _i = 1; _i < arguments.length; _i++) {
821
825
  args[_i - 1] = arguments[_i];
822
826
  }
823
827
  try {
824
- return action.call.apply(action, __spreadArray([null], args, false));
828
+ return (_a = action === null || action === void 0 ? void 0 : action.call) === null || _a === void 0 ? void 0 : _a.call.apply(_a, __spreadArray([action, null], args, false));
825
829
  }
826
830
  catch (e) {
827
831
  var fiber = (currentCallingFiber$1 === null || currentCallingFiber$1 === void 0 ? void 0 : currentCallingFiber$1[(currentCallingFiber$1 === null || currentCallingFiber$1 === void 0 ? void 0 : currentCallingFiber$1.length) - 1]) || currentScopeFiber$1.current || currentRunningFiber$5.current;
@@ -831,6 +835,7 @@ function requireIndex_development () {
831
835
  }
832
836
  };
833
837
  var safeCallWithCurrentFiber = function (_a) {
838
+ var _b;
834
839
  var action = _a.action, fiber = _a.fiber, fallback = _a.fallback;
835
840
  var args = [];
836
841
  for (var _i = 1; _i < arguments.length; _i++) {
@@ -838,7 +843,7 @@ function requireIndex_development () {
838
843
  }
839
844
  currentCallingFiber$1.push(fiber);
840
845
  try {
841
- return action.call.apply(action, __spreadArray([null], args, false));
846
+ return (_b = action === null || action === void 0 ? void 0 : action.call) === null || _b === void 0 ? void 0 : _b.call.apply(_b, __spreadArray([action, null], args, false));
842
847
  }
843
848
  catch (e) {
844
849
  if (fallback) {
@@ -855,6 +860,7 @@ function requireIndex_development () {
855
860
  }
856
861
  };
857
862
  var callWithFiber = function (_a) {
863
+ var _b;
858
864
  var action = _a.action, fiber = _a.fiber;
859
865
  var args = [];
860
866
  for (var _i = 1; _i < arguments.length; _i++) {
@@ -862,20 +868,21 @@ function requireIndex_development () {
862
868
  }
863
869
  currentScopeFiber$1.current = fiber;
864
870
  try {
865
- return action.call.apply(action, __spreadArray([null], args, false));
871
+ return (_b = action === null || action === void 0 ? void 0 : action.call) === null || _b === void 0 ? void 0 : _b.call.apply(_b, __spreadArray([action, null], args, false));
866
872
  }
867
873
  finally {
868
874
  currentScopeFiber$1.current = null;
869
875
  }
870
876
  };
871
877
  var safeCallWithSync = function (action) {
878
+ var _a;
872
879
  var args = [];
873
880
  for (var _i = 1; _i < arguments.length; _i++) {
874
881
  args[_i - 1] = arguments[_i];
875
882
  }
876
883
  try {
877
884
  beforeSyncUpdate();
878
- return action.call.apply(action, __spreadArray([null], args, false));
885
+ return (_a = action === null || action === void 0 ? void 0 : action.call) === null || _a === void 0 ? void 0 : _a.call.apply(_a, __spreadArray([action, null], args, false));
879
886
  }
880
887
  catch (e) {
881
888
  var fiber = (currentCallingFiber$1 === null || currentCallingFiber$1 === void 0 ? void 0 : currentCallingFiber$1[(currentCallingFiber$1 === null || currentCallingFiber$1 === void 0 ? void 0 : currentCallingFiber$1.length) - 1]) || currentScopeFiber$1.current || currentRunningFiber$5.current;
@@ -888,8 +895,8 @@ function requireIndex_development () {
888
895
  }
889
896
  };
890
897
 
891
- 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;
892
- var enableOptimizeTreeLog = react.__my_react_shared__.enableOptimizeTreeLog;
898
+ 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;
899
+ var enableOptimizeTreeLog = typeExports.__my_react_shared__.enableOptimizeTreeLog;
893
900
  var typeColor = {
894
901
  normal: "rgba(10, 190, 235, 0.8)",
895
902
  plain: "rgba(100, 230, 40, 0.8)",
@@ -1242,10 +1249,10 @@ function requireIndex_development () {
1242
1249
  errorFiber = null;
1243
1250
  };
1244
1251
 
1245
- var enableHMRForDev$1 = react.__my_react_shared__.enableHMRForDev;
1252
+ var enableHMRForDev$1 = typeExports.__my_react_shared__.enableHMRForDev;
1246
1253
  var emptyProps$1 = {};
1247
1254
  var checkIsMyReactElement = function (element) {
1248
- if (react.isValidElement(element)) {
1255
+ if (typeExports.isValidElement(element)) {
1249
1256
  var isMyReactElement = element._jsx || element._legacy;
1250
1257
  if (!isMyReactElement) {
1251
1258
  devWarn("[@my-react/react] look like current element is not a valid @my-react element %o", element);
@@ -1267,7 +1274,7 @@ function requireIndex_development () {
1267
1274
  if (enableValidMyReactElement.current) {
1268
1275
  checkIsMyReactElement(element);
1269
1276
  }
1270
- if (react.isValidElement(element)) {
1277
+ if (typeExports.isValidElement(element)) {
1271
1278
  return getTypeFromElement(element);
1272
1279
  }
1273
1280
  else {
@@ -1476,13 +1483,13 @@ function requireIndex_development () {
1476
1483
  var typeFromRefresh = getCurrentTypeFromRefreshOnly(elementType);
1477
1484
  // have a new version elementType from hmr runtime
1478
1485
  if (typeFromRefresh) {
1479
- 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 }));
1486
+ 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 }));
1480
1487
  }
1481
1488
  }
1482
1489
  return element;
1483
1490
  };
1484
1491
 
1485
- var currentComponentFiber$5 = react.__my_react_internal__.currentComponentFiber;
1492
+ var currentComponentFiber$5 = typeExports.__my_react_internal__.currentComponentFiber;
1486
1493
  var initHMR = function (env) {
1487
1494
  {
1488
1495
  if (env["hmr"] || env["setRefreshHandler"] || env["currentComponentFiber"] || env["getCurrentFibersFromType"] || env["getCurrentDispatchFromType"]) {
@@ -1504,7 +1511,7 @@ function requireIndex_development () {
1504
1511
  }
1505
1512
  };
1506
1513
 
1507
- var currentRunningFiber$3 = react.__my_react_internal__.currentRunningFiber, currentScheduler$f = react.__my_react_internal__.currentScheduler;
1514
+ var currentRunningFiber$3 = typeExports.__my_react_internal__.currentRunningFiber, currentScheduler$f = typeExports.__my_react_internal__.currentScheduler;
1508
1515
  var dispatchHook = function (params) {
1509
1516
  var fiber = currentRunningFiber$3.current;
1510
1517
  if (!fiber) {
@@ -1616,12 +1623,12 @@ function requireIndex_development () {
1616
1623
  scheduler.dispatchSuspensePromise = dispatchSuspensePromise;
1617
1624
  };
1618
1625
 
1619
- var enableHMRForDev = react.__my_react_shared__.enableHMRForDev;
1626
+ var enableHMRForDev = typeExports.__my_react_shared__.enableHMRForDev;
1620
1627
  function checkIsSameType(p, element) {
1621
1628
  if (p instanceof MyReactFiberNode) {
1622
1629
  var _a = getTypeFromElementNode(element), nodeType = _a.nodeType, elementType = _a.elementType;
1623
1630
  if (p.type === nodeType) {
1624
- if (react.isValidElement(element)) {
1631
+ if (typeExports.isValidElement(element)) {
1625
1632
  if (enableHMRForDev.current && include(nodeType, exports$1.NODE_TYPE.__class__ | exports$1.NODE_TYPE.__function__)) {
1626
1633
  // type error
1627
1634
  return Object.is(getCurrentTypeFromRefresh(p.elementType), getCurrentTypeFromRefresh(elementType));
@@ -1642,7 +1649,7 @@ function requireIndex_development () {
1642
1649
  var existElementType = getTypeFromElementNode(p);
1643
1650
  var incomingElementType = getTypeFromElementNode(element);
1644
1651
  if (existElementType.nodeType === incomingElementType.nodeType) {
1645
- if (react.isValidElement(element)) {
1652
+ if (typeExports.isValidElement(element)) {
1646
1653
  var typedExistElement = p;
1647
1654
  var typedIncomingElement = element;
1648
1655
  if (enableHMRForDev.current && include(existElementType.nodeType, exports$1.NODE_TYPE.__class__ | exports$1.NODE_TYPE.__function__)) {
@@ -1880,7 +1887,7 @@ function requireIndex_development () {
1880
1887
  }
1881
1888
  };
1882
1889
 
1883
- var currentRunningFiber$2 = react.__my_react_internal__.currentRunningFiber;
1890
+ var currentRunningFiber$2 = typeExports.__my_react_internal__.currentRunningFiber;
1884
1891
  var mountToNextFiberFromRoot = function (renderDispatch, fiber) {
1885
1892
  if (include(fiber.state, STATE_TYPE.__unmount__) || renderDispatch.isAppCrashed)
1886
1893
  return null;
@@ -2006,8 +2013,8 @@ function requireIndex_development () {
2006
2013
  return null;
2007
2014
  };
2008
2015
 
2009
- var enableSuspenseRoot$3 = react.__my_react_shared__.enableSuspenseRoot;
2010
- var currentScheduler$e = react.__my_react_internal__.currentScheduler;
2016
+ var enableSuspenseRoot$3 = typeExports.__my_react_shared__.enableSuspenseRoot;
2017
+ var currentScheduler$e = typeExports.__my_react_internal__.currentScheduler;
2011
2018
  var mountLoopAllFromScheduler = function (renderDispatch) {
2012
2019
  while (renderDispatch.runtimeFiber.nextWorkingFiber) {
2013
2020
  renderDispatch.runtimeFiber.retriggerFiber = null;
@@ -2249,8 +2256,8 @@ function requireIndex_development () {
2249
2256
  }
2250
2257
  };
2251
2258
 
2252
- var enableSuspenseRoot$2 = react.__my_react_shared__.enableSuspenseRoot;
2253
- var currentScheduler$d = react.__my_react_internal__.currentScheduler;
2259
+ var enableSuspenseRoot$2 = typeExports.__my_react_shared__.enableSuspenseRoot;
2260
+ var currentScheduler$d = typeExports.__my_react_internal__.currentScheduler;
2254
2261
  exports$1.updateTypeEnum = void 0;
2255
2262
  (function (updateTypeEnum) {
2256
2263
  updateTypeEnum[updateTypeEnum["syncFromRoot"] = 0] = "syncFromRoot";
@@ -2469,11 +2476,11 @@ function requireIndex_development () {
2469
2476
  return field;
2470
2477
  };
2471
2478
 
2472
- var enableLegacyLifeCycle = react.__my_react_shared__.enableLegacyLifeCycle;
2479
+ var enableLegacyLifeCycle = typeExports.__my_react_shared__.enableLegacyLifeCycle;
2473
2480
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
2474
2481
  // @ts-ignore
2475
- if (!Object.prototype.hasOwnProperty.call(react.Component.prototype, "_reactInternals")) {
2476
- Object.defineProperty(react.Component.prototype, "_reactInternals", {
2482
+ if (!Object.prototype.hasOwnProperty.call(typeExports.Component.prototype, "_reactInternals")) {
2483
+ Object.defineProperty(typeExports.Component.prototype, "_reactInternals", {
2477
2484
  get: function () {
2478
2485
  return getInstanceOwnerFiber(this);
2479
2486
  },
@@ -2836,8 +2843,8 @@ function requireIndex_development () {
2836
2843
  };
2837
2844
 
2838
2845
  /* eslint-disable max-lines */
2839
- var enableDebugFiled$a = react.__my_react_shared__.enableDebugFiled;
2840
- var currentScheduler$c = react.__my_react_internal__.currentScheduler;
2846
+ var enableDebugFiled$a = typeExports.__my_react_shared__.enableDebugFiled;
2847
+ var currentScheduler$c = typeExports.__my_react_internal__.currentScheduler;
2841
2848
  // TODO 整合
2842
2849
  var processClassComponentUpdateQueueLatest = function (renderDispatch, fiber, enableTaskPriority) {
2843
2850
  if (include(fiber.state, STATE_TYPE.__unmount__))
@@ -3589,8 +3596,8 @@ function requireIndex_development () {
3589
3596
  syncComponentStateToFiber(fiber);
3590
3597
  };
3591
3598
 
3592
- var currentComponentFiber$4 = react.__my_react_internal__.currentComponentFiber, currentRunningFiber$1 = react.__my_react_internal__.currentRunningFiber;
3593
- var enableDebugFiled$9 = react.__my_react_shared__.enableDebugFiled;
3599
+ var currentComponentFiber$4 = typeExports.__my_react_internal__.currentComponentFiber, currentRunningFiber$1 = typeExports.__my_react_internal__.currentRunningFiber;
3600
+ var enableDebugFiled$9 = typeExports.__my_react_shared__.enableDebugFiled;
3594
3601
  var MAX_UPDATE_COUNT = 25;
3595
3602
  var lastRenderComponentFiber = null;
3596
3603
  var lastRenderComponentTimeStep = null;
@@ -3771,7 +3778,7 @@ function requireIndex_development () {
3771
3778
  renderDispatch.isAppUnmounted = true;
3772
3779
  };
3773
3780
 
3774
- var globalLoop$3 = react.__my_react_internal__.globalLoop, currentScheduler$b = react.__my_react_internal__.currentScheduler, currentError = react.__my_react_internal__.currentError;
3781
+ var globalLoop$3 = typeExports.__my_react_internal__.globalLoop, currentScheduler$b = typeExports.__my_react_internal__.currentScheduler, currentError = typeExports.__my_react_internal__.currentError;
3775
3782
  var applyTriggerFiberCb = function (renderDispatch, fiber) {
3776
3783
  var _a, _b;
3777
3784
  var cbArray = renderDispatch.runtimeMap.triggerCallbackMap.get(fiber);
@@ -3925,7 +3932,7 @@ function requireIndex_development () {
3925
3932
  }
3926
3933
  };
3927
3934
 
3928
- var globalLoop$2 = react.__my_react_internal__.globalLoop, currentScheduler$a = react.__my_react_internal__.currentScheduler;
3935
+ var globalLoop$2 = typeExports.__my_react_internal__.globalLoop, currentScheduler$a = typeExports.__my_react_internal__.currentScheduler;
3929
3936
  var clearLatestUpdateQueue = function (fiber) {
3930
3937
  var _a;
3931
3938
  var typedFiber = fiber;
@@ -4002,7 +4009,7 @@ function requireIndex_development () {
4002
4009
  }
4003
4010
  };
4004
4011
  var scheduleUpdate = function (renderDispatch) {
4005
- react.__my_react_internal__.recentlyCreatedOwnerStacks.current = 0;
4012
+ typeExports.__my_react_internal__.recentlyCreatedOwnerStacks.current = 0;
4006
4013
  if (renderDispatch.isAppUnmounted) {
4007
4014
  scheduleOther(renderDispatch);
4008
4015
  return;
@@ -4010,8 +4017,8 @@ function requireIndex_development () {
4010
4017
  scheduleUpdateFromRoot(renderDispatch);
4011
4018
  };
4012
4019
 
4013
- var globalLoop$1 = react.__my_react_internal__.globalLoop, currentScheduler$9 = react.__my_react_internal__.currentScheduler;
4014
- var enableScopeTreeLog$3 = react.__my_react_shared__.enableScopeTreeLog;
4020
+ var globalLoop$1 = typeExports.__my_react_internal__.globalLoop, currentScheduler$9 = typeExports.__my_react_internal__.currentScheduler;
4021
+ var enableScopeTreeLog$3 = typeExports.__my_react_shared__.enableScopeTreeLog;
4015
4022
  function finishUpdateSyncFromRoot(renderDispatch) {
4016
4023
  var commitList = renderDispatch.pendingCommitFiberList;
4017
4024
  renderDispatch.resetUpdateFlowRuntimeFiber();
@@ -4152,8 +4159,8 @@ function requireIndex_development () {
4152
4159
  }
4153
4160
  };
4154
4161
 
4155
- var MyReactInternalInstance$4 = react.__my_react_internal__.MyReactInternalInstance, currentScheduler$8 = react.__my_react_internal__.currentScheduler;
4156
- var enableSyncFlush = react.__my_react_shared__.enableSyncFlush;
4162
+ var MyReactInternalInstance$4 = typeExports.__my_react_internal__.MyReactInternalInstance, currentScheduler$8 = typeExports.__my_react_internal__.currentScheduler;
4163
+ var enableSyncFlush = typeExports.__my_react_shared__.enableSyncFlush;
4157
4164
  var defaultPayLoad = function (a) { return a; };
4158
4165
  var MyReactHookNode = /** @class */ (function (_super) {
4159
4166
  __extends(MyReactHookNode, _super);
@@ -4191,7 +4198,7 @@ function requireIndex_development () {
4191
4198
  };
4192
4199
  };
4193
4200
 
4194
- var currentComponentFiber$3 = react.__my_react_internal__.currentComponentFiber;
4201
+ var currentComponentFiber$3 = typeExports.__my_react_internal__.currentComponentFiber;
4195
4202
  var MyReactSignal = /** @class */ (function () {
4196
4203
  function MyReactSignal(_rawValue, _renderDispatch) {
4197
4204
  var _this = this;
@@ -4217,8 +4224,8 @@ function requireIndex_development () {
4217
4224
  return MyReactSignal;
4218
4225
  }());
4219
4226
 
4220
- var enableDebugLog$1 = react.__my_react_shared__.enableDebugLog, enableDebugFiled$8 = react.__my_react_shared__.enableDebugFiled;
4221
- var currentHookTreeNode$2 = react.__my_react_internal__.currentHookTreeNode, currentHookNodeIndex$2 = react.__my_react_internal__.currentHookNodeIndex;
4227
+ var enableDebugLog$1 = typeExports.__my_react_shared__.enableDebugLog, enableDebugFiled$8 = typeExports.__my_react_shared__.enableDebugFiled;
4228
+ var currentHookTreeNode$2 = typeExports.__my_react_internal__.currentHookTreeNode, currentHookNodeIndex$2 = typeExports.__my_react_internal__.currentHookNodeIndex;
4222
4229
  var defaultReducer = function (state, action) {
4223
4230
  return typeof action === "function" ? action(state) : action;
4224
4231
  };
@@ -4363,17 +4370,17 @@ function requireIndex_development () {
4363
4370
  value: false,
4364
4371
  start: function startTransitionByHook(cb) {
4365
4372
  var loadingCallback = function (cb) {
4366
- react.startTransition(function () {
4373
+ typeExports.startTransition(function () {
4367
4374
  hookNode._update({ isForce: true, isSync: true, callback: cb, payLoad: function (last) { return ({ value: true, start: last.start }); } });
4368
4375
  });
4369
4376
  };
4370
4377
  var loadedCallback = function () {
4371
- react.startTransition(function () {
4378
+ typeExports.startTransition(function () {
4372
4379
  hookNode._update({ isForce: true, isSync: true, payLoad: function (last) { return ({ value: false, start: last.start }); } });
4373
4380
  });
4374
4381
  };
4375
4382
  var taskCallback = function () {
4376
- react.startTransition(function () {
4383
+ typeExports.startTransition(function () {
4377
4384
  safeCallWithCurrentFiber({ fiber: fiber, action: cb });
4378
4385
  loadedCallback();
4379
4386
  });
@@ -4465,17 +4472,19 @@ function requireIndex_development () {
4465
4472
  }
4466
4473
  };
4467
4474
 
4468
- var enableDebugLog = react.__my_react_shared__.enableDebugLog;
4469
- var currentHookTreeNode$1 = react.__my_react_internal__.currentHookTreeNode, currentScheduler$7 = react.__my_react_internal__.currentScheduler;
4475
+ var enableDebugLog = typeExports.__my_react_shared__.enableDebugLog;
4476
+ var currentHookTreeNode$1 = typeExports.__my_react_internal__.currentHookTreeNode, currentScheduler$7 = typeExports.__my_react_internal__.currentScheduler;
4470
4477
  var updateHookNode = function (renderDispatch, _a, fiber, isHMR) {
4471
4478
  var _b, _c, _d;
4472
4479
  var type = _a.type, value = _a.value, reducer = _a.reducer, deps = _a.deps;
4473
4480
  var renderScheduler = currentScheduler$7.current;
4474
4481
  var currentHook = (_b = currentHookTreeNode$1.current) === null || _b === void 0 ? void 0 : _b.value;
4475
4482
  if (!currentHook) {
4476
- throw new Error("[@my-react/react] should have a hookList for current node, this is a bug for @my-react");
4483
+ // throw new Error(`[@my-react/react] should have a hookList for current node, this is a bug for @my-react`);
4484
+ return createHookNode(renderDispatch, { type: type, value: value, reducer: reducer, deps: deps }, fiber);
4477
4485
  }
4478
4486
  if (type !== (currentHook === null || currentHook === void 0 ? void 0 : currentHook.type)) {
4487
+ // only throw error when type not match
4479
4488
  throw new Error(getHookTree(currentHookTreeNode$1.current.prev, {
4480
4489
  lastRender: currentHook === null || currentHook === void 0 ? void 0 : currentHook.type,
4481
4490
  nextRender: type,
@@ -4683,7 +4692,7 @@ function requireIndex_development () {
4683
4692
  });
4684
4693
  };
4685
4694
 
4686
- var enableDebugFiled$7 = react.__my_react_shared__.enableDebugFiled;
4695
+ var enableDebugFiled$7 = typeExports.__my_react_shared__.enableDebugFiled;
4687
4696
  var clearFiberNode = function (renderDispatch, fiber) {
4688
4697
  hookListUnmount(renderDispatch, fiber);
4689
4698
  processClassComponentUnmount(renderDispatch, fiber);
@@ -4698,7 +4707,7 @@ function requireIndex_development () {
4698
4707
  }
4699
4708
  };
4700
4709
 
4701
- var currentScheduler$6 = react.__my_react_internal__.currentScheduler;
4710
+ var currentScheduler$6 = typeExports.__my_react_internal__.currentScheduler;
4702
4711
  var hmr = function (fiber, nextType, forceRefresh) {
4703
4712
  {
4704
4713
  if (include(fiber.state, STATE_TYPE.__unmount__))
@@ -4710,7 +4719,7 @@ function requireIndex_development () {
4710
4719
  var _a, _b;
4711
4720
  // keep the type
4712
4721
  var nodeType = fiber.type;
4713
- var element = react.createElement(nextType, __assign(__assign({}, fiber.pendingProps), { key: (_a = fiber.key) !== null && _a !== void 0 ? _a : undefined, ref: (_b = fiber.ref) !== null && _b !== void 0 ? _b : undefined }));
4722
+ var element = typeExports.createElement(nextType, __assign(__assign({}, fiber.pendingProps), { key: (_a = fiber.key) !== null && _a !== void 0 ? _a : undefined, ref: (_b = fiber.ref) !== null && _b !== void 0 ? _b : undefined }));
4714
4723
  fiber._installElement(element);
4715
4724
  fiber.type = nodeType;
4716
4725
  },
@@ -4763,7 +4772,7 @@ function requireIndex_development () {
4763
4772
  fiber.constructor.prototype.isMyReactFiberNode);
4764
4773
  };
4765
4774
 
4766
- var currentScheduler$5 = react.__my_react_internal__.currentScheduler;
4775
+ var currentScheduler$5 = typeExports.__my_react_internal__.currentScheduler;
4767
4776
  var processUpdateOnFiber = function (renderDispatch, fiber, _isImmediate, _isRetrigger) {
4768
4777
  var renderScheduler = currentScheduler$5.current;
4769
4778
  var flag = renderDispatch.enableConcurrentMode;
@@ -5046,7 +5055,7 @@ function requireIndex_development () {
5046
5055
  return fiber;
5047
5056
  };
5048
5057
 
5049
- var enableDebugFiled$6 = react.__my_react_shared__.enableDebugFiled;
5058
+ var enableDebugFiled$6 = typeExports.__my_react_shared__.enableDebugFiled;
5050
5059
  var unmountFiberNode = function (renderDispatch, fiber) {
5051
5060
  if (include(fiber.state, STATE_TYPE.__unmount__))
5052
5061
  return;
@@ -5104,7 +5113,7 @@ function requireIndex_development () {
5104
5113
  }
5105
5114
  };
5106
5115
 
5107
- var enableDebugFiled$5 = react.__my_react_shared__.enableDebugFiled;
5116
+ var enableDebugFiled$5 = typeExports.__my_react_shared__.enableDebugFiled;
5108
5117
  var getIsSameTypeNode = function (newChild, draftFiber) {
5109
5118
  if (!draftFiber)
5110
5119
  return false;
@@ -5130,12 +5139,12 @@ function requireIndex_development () {
5130
5139
  var dynamicFragmentProps = { wrap: true };
5131
5140
  var createFragmentWithInitial = function (renderDispatch, newChild, parentFiber) {
5132
5141
  // TODO make there are not a element
5133
- var newElement = react.createElement(Fragment, dynamicFragmentProps, newChild);
5142
+ var newElement = typeExports.createElement(Fragment, dynamicFragmentProps, newChild);
5134
5143
  var newFiber = createFiberNode(renderDispatch, { parent: parentFiber }, newElement);
5135
5144
  return newFiber;
5136
5145
  };
5137
5146
  var createFragmentWithUpdate = function (renderDispatch, newChild, parentFiber) {
5138
- var newElement = react.createElement(Fragment, dynamicFragmentProps, newChild);
5147
+ var newElement = typeExports.createElement(Fragment, dynamicFragmentProps, newChild);
5139
5148
  var newFiber = createFiberNode(renderDispatch, { parent: parentFiber, type: "position" }, newElement);
5140
5149
  return newFiber;
5141
5150
  };
@@ -5158,7 +5167,7 @@ function requireIndex_development () {
5158
5167
  }
5159
5168
  // same type
5160
5169
  if (include(draftFiber_1 === null || draftFiber_1 === void 0 ? void 0 : draftFiber_1.type, exports$1.NODE_TYPE.__fragment__)) {
5161
- var newElement = react.createElement(Fragment, dynamicFragmentProps, newChild);
5170
+ var newElement = typeExports.createElement(Fragment, dynamicFragmentProps, newChild);
5162
5171
  return updateFiberNode(renderDispatch, { fiber: draftFiber_1, parent: parentFiber, prevFiber: prevFiberChild }, newElement);
5163
5172
  }
5164
5173
  else {
@@ -5166,7 +5175,7 @@ function requireIndex_development () {
5166
5175
  return createFragmentWithUpdate(renderDispatch, newChild, parentFiber);
5167
5176
  }
5168
5177
  }
5169
- var keyToGet = react.isValidElement(newChild) && typeof newChild.key === "string" ? newChild.key : index;
5178
+ var keyToGet = typeExports.isValidElement(newChild) && typeof newChild.key === "string" ? newChild.key : index;
5170
5179
  var draftList = existingChildren.get(keyToGet);
5171
5180
  var draftFiber = draftList === null || draftList === void 0 ? void 0 : draftList.shift();
5172
5181
  if (draftList && !draftList.length) {
@@ -5267,7 +5276,7 @@ function requireIndex_development () {
5267
5276
  return null;
5268
5277
  };
5269
5278
 
5270
- var currentComponentFiber$2 = react.__my_react_internal__.currentComponentFiber, MyReactInternalInstance$3 = react.__my_react_internal__.MyReactInternalInstance;
5279
+ var currentComponentFiber$2 = typeExports.__my_react_internal__.currentComponentFiber, MyReactInternalInstance$3 = typeExports.__my_react_internal__.MyReactInternalInstance;
5271
5280
  var processProvider = function (renderDispatch, fiber) {
5272
5281
  if (renderDispatch.isAppMounted) {
5273
5282
  var prevProps = fiber.memoizedProps.value;
@@ -5308,7 +5317,7 @@ function requireIndex_development () {
5308
5317
  return children;
5309
5318
  };
5310
5319
 
5311
- 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;
5320
+ 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;
5312
5321
  var triggerState = STATE_TYPE.__triggerSync__ |
5313
5322
  STATE_TYPE.__triggerSyncForce__ |
5314
5323
  STATE_TYPE.__triggerConcurrent__ |
@@ -5329,12 +5338,12 @@ function requireIndex_development () {
5329
5338
  var re = undefined;
5330
5339
  try {
5331
5340
  if (typedElementTypeWithRef_1[TYPEKEY] === SERVER_REFERENCE_SYMBOL) {
5332
- var cacheFun = react.cache(typedElementTypeWithRef_1);
5341
+ var cacheFun = typeExports.cache(typedElementTypeWithRef_1);
5333
5342
  re = cacheFun(fiber.pendingProps, fiber.ref);
5334
5343
  // support rsc
5335
5344
  // rsc return promise, so we transform promise to lazy, and try to keep the lazy stable
5336
5345
  if (isPromise(re))
5337
- return react.createElement(cacheLazy(re));
5346
+ return typeExports.createElement(cacheLazy(re));
5338
5347
  }
5339
5348
  else {
5340
5349
  re = typedElementTypeWithRef_1(fiber.pendingProps, fiber.ref);
@@ -5366,11 +5375,11 @@ function requireIndex_development () {
5366
5375
  var re = undefined;
5367
5376
  try {
5368
5377
  if (typedElementType[TYPEKEY] === SERVER_REFERENCE_SYMBOL) {
5369
- var cacheFun = react.cache(typedElementType);
5378
+ var cacheFun = typeExports.cache(typedElementType);
5370
5379
  re = cacheFun(fiber.pendingProps);
5371
5380
  // support rsc
5372
5381
  if (isPromise(re))
5373
- return react.createElement(cacheLazy(re));
5382
+ return typeExports.createElement(cacheLazy(re));
5374
5383
  }
5375
5384
  else {
5376
5385
  re = typedElementType(fiber.pendingProps);
@@ -5399,9 +5408,9 @@ function requireIndex_development () {
5399
5408
  return children;
5400
5409
  };
5401
5410
 
5402
- var WrapperByLazyScope = function (children) { return react.createElement(ScopeLazy, null, children); };
5411
+ var WrapperByLazyScope = function (children) { return typeExports.createElement(ScopeLazy, null, children); };
5403
5412
  var WrapperBySuspenseScope = function (children) {
5404
- return react.createElement(ScopeSuspense, null, react.createElement(Comment, { mode: "s" }), children, react.createElement(Comment, { mode: "e" }));
5413
+ return typeExports.createElement(ScopeSuspense, null, typeExports.createElement(Comment, { mode: "s" }), children, typeExports.createElement(Comment, { mode: "e" }));
5405
5414
  };
5406
5415
  var isCommentElement = function (fiber) { return include(fiber.type, exports$1.NODE_TYPE.__comment__); };
5407
5416
  var isCommentStartElement = function (fiber) {
@@ -5417,8 +5426,8 @@ function requireIndex_development () {
5417
5426
  return false;
5418
5427
  };
5419
5428
 
5420
- var enableSuspenseRoot$1 = react.__my_react_shared__.enableSuspenseRoot, enableDebugFiled$4 = react.__my_react_shared__.enableDebugFiled;
5421
- var currentScheduler$3 = react.__my_react_internal__.currentScheduler;
5429
+ var enableSuspenseRoot$1 = typeExports.__my_react_shared__.enableSuspenseRoot, enableDebugFiled$4 = typeExports.__my_react_shared__.enableDebugFiled;
5430
+ var currentScheduler$3 = typeExports.__my_react_internal__.currentScheduler;
5422
5431
  var loadLazy = function (renderDispatch, typedElementType) { return __awaiter(void 0, void 0, void 0, function () {
5423
5432
  var loadedPromise, loaded, render, e_1;
5424
5433
  return __generator(this, function (_a) {
@@ -5464,11 +5473,11 @@ function requireIndex_development () {
5464
5473
  }
5465
5474
  if (typedElementType._loaded === true) {
5466
5475
  var render = typedElementType.render;
5467
- if (react.isValidElement(render)) {
5468
- return WrapperByLazyScope(react.cloneElement(render));
5476
+ if (typeExports.isValidElement(render)) {
5477
+ return WrapperByLazyScope(typeExports.cloneElement(render));
5469
5478
  }
5470
5479
  else {
5471
- return WrapperByLazyScope(react.createElement(render, fiber.pendingProps));
5480
+ return WrapperByLazyScope(typeExports.createElement(render, fiber.pendingProps));
5472
5481
  }
5473
5482
  }
5474
5483
  if (enableDebugFiled$4.current) {
@@ -5520,7 +5529,7 @@ function requireIndex_development () {
5520
5529
  typedField.asyncLoadList = new UniqueArray();
5521
5530
  };
5522
5531
 
5523
- var MyReactInternalInstance$2 = react.__my_react_internal__.MyReactInternalInstance;
5532
+ var MyReactInternalInstance$2 = typeExports.__my_react_internal__.MyReactInternalInstance;
5524
5533
  var processSuspense = function (fiber) {
5525
5534
  var isUpdate = !!fiber.instance;
5526
5535
  fiber.instance = fiber.instance || new MyReactInternalInstance$2();
@@ -5533,7 +5542,7 @@ function requireIndex_development () {
5533
5542
  return children;
5534
5543
  };
5535
5544
 
5536
- var MyReactInternalInstanceClass$1 = react.__my_react_internal__.MyReactInternalInstance, instanceToInitialFieldMap = react.__my_react_internal__.instanceToInitialFieldMap;
5545
+ var MyReactInternalInstanceClass$1 = typeExports.__my_react_internal__.MyReactInternalInstance, instanceToInitialFieldMap = typeExports.__my_react_internal__.instanceToInitialFieldMap;
5537
5546
  // support private instance field
5538
5547
  var instanceMap = instanceToInitialFieldMap;
5539
5548
  var initInstance = function (instance) {
@@ -5647,8 +5656,8 @@ function requireIndex_development () {
5647
5656
  });
5648
5657
  }
5649
5658
 
5650
- var currentComponentFiber$1 = react.__my_react_internal__.currentComponentFiber, MyReactInternalInstance$1 = react.__my_react_internal__.MyReactInternalInstance;
5651
- var enablePerformanceLog = react.__my_react_shared__.enablePerformanceLog, enableDebugFiled$3 = react.__my_react_shared__.enableDebugFiled;
5659
+ var currentComponentFiber$1 = typeExports.__my_react_internal__.currentComponentFiber, MyReactInternalInstance$1 = typeExports.__my_react_internal__.MyReactInternalInstance;
5660
+ var enablePerformanceLog = typeExports.__my_react_shared__.enablePerformanceLog, enableDebugFiled$3 = typeExports.__my_react_shared__.enableDebugFiled;
5652
5661
  var nextWorkCommon = function (renderDispatch, fiber, children) {
5653
5662
  if (isPromise(children)) {
5654
5663
  console.error("[@my-react/react] render function should not return a promise, please check your code");
@@ -5796,8 +5805,8 @@ function requireIndex_development () {
5796
5805
  });
5797
5806
  };
5798
5807
 
5799
- var enableDebugFiled$2 = react.__my_react_shared__.enableDebugFiled;
5800
- var currentRunningFiber = react.__my_react_internal__.currentRunningFiber, MyReactInternalInstance = react.__my_react_internal__.MyReactInternalInstance;
5808
+ var enableDebugFiled$2 = typeExports.__my_react_shared__.enableDebugFiled;
5809
+ var currentRunningFiber = typeExports.__my_react_internal__.currentRunningFiber, MyReactInternalInstance = typeExports.__my_react_internal__.MyReactInternalInstance;
5801
5810
  var defaultGetContextValue = function (fiber, ContextObject) {
5802
5811
  var _a;
5803
5812
  if (fiber) {
@@ -5899,8 +5908,8 @@ function requireIndex_development () {
5899
5908
  });
5900
5909
  };
5901
5910
 
5902
- var currentScheduler$2 = react.__my_react_internal__.currentScheduler;
5903
- var enableScopeTreeLog$2 = react.__my_react_shared__.enableScopeTreeLog;
5911
+ var currentScheduler$2 = typeExports.__my_react_internal__.currentScheduler;
5912
+ var enableScopeTreeLog$2 = typeExports.__my_react_shared__.enableScopeTreeLog;
5904
5913
  // TODO improve
5905
5914
  var defaultDispatchMountLatest = function (_dispatch, _fiber) {
5906
5915
  beforeSyncUpdate();
@@ -5974,7 +5983,7 @@ function requireIndex_development () {
5974
5983
  return null;
5975
5984
  };
5976
5985
 
5977
- var enableDebugFiled$1 = react.__my_react_shared__.enableDebugFiled;
5986
+ var enableDebugFiled$1 = typeExports.__my_react_shared__.enableDebugFiled;
5978
5987
  var defaultGenerateStrict = function (fiber) {
5979
5988
  {
5980
5989
  var parent_1 = fiber.parent;
@@ -5996,8 +6005,8 @@ function requireIndex_development () {
5996
6005
  }
5997
6006
  };
5998
6007
 
5999
- var currentScheduler$1 = react.__my_react_internal__.currentScheduler;
6000
- var enableScopeTreeLog$1 = react.__my_react_shared__.enableScopeTreeLog;
6008
+ var currentScheduler$1 = typeExports.__my_react_internal__.currentScheduler;
6009
+ var enableScopeTreeLog$1 = typeExports.__my_react_shared__.enableScopeTreeLog;
6001
6010
  var defaultDispatchUpdate = function (_dispatch, _list, sync) {
6002
6011
  // TODO maybe need call `insertionEffect` in another function
6003
6012
  beforeSyncUpdate();
@@ -6083,7 +6092,7 @@ function requireIndex_development () {
6083
6092
  }
6084
6093
  };
6085
6094
 
6086
- var currentComponentFiber = react.__my_react_internal__.currentComponentFiber, currentHookNodeIndex = react.__my_react_internal__.currentHookNodeIndex;
6095
+ var currentComponentFiber = typeExports.__my_react_internal__.currentComponentFiber, currentHookNodeIndex = typeExports.__my_react_internal__.currentHookNodeIndex;
6087
6096
  var resolveHookValue = function (hookNode, field) {
6088
6097
  if (hookNode) {
6089
6098
  switch (hookNode.type) {
@@ -6136,8 +6145,8 @@ function requireIndex_development () {
6136
6145
  return resolveHookValue(currentHook, field);
6137
6146
  };
6138
6147
 
6139
- var enableSuspenseRoot = react.__my_react_shared__.enableSuspenseRoot, enableDebugFiled = react.__my_react_shared__.enableDebugFiled;
6140
- var currentScheduler = react.__my_react_internal__.currentScheduler;
6148
+ var enableSuspenseRoot = typeExports.__my_react_shared__.enableSuspenseRoot, enableDebugFiled = typeExports.__my_react_shared__.enableDebugFiled;
6149
+ var currentScheduler = typeExports.__my_react_internal__.currentScheduler;
6141
6150
  var loadPromise = function (renderDispatch, promise) { return __awaiter(void 0, void 0, void 0, function () {
6142
6151
  var value, reason_1;
6143
6152
  return __generator(this, function (_a) {
@@ -6267,7 +6276,7 @@ function requireIndex_development () {
6267
6276
  return null;
6268
6277
  };
6269
6278
 
6270
- var Dispatcher = react.__my_react_internal__.Dispatcher, MyReactInternalInstanceClass = react.__my_react_internal__.MyReactInternalInstance, dispatchToListenerMap = react.__my_react_internal__.dispatchToListenerMap;
6279
+ var Dispatcher = typeExports.__my_react_internal__.Dispatcher, MyReactInternalInstanceClass = typeExports.__my_react_internal__.MyReactInternalInstance, dispatchToListenerMap = typeExports.__my_react_internal__.dispatchToListenerMap;
6271
6280
  var getInitialListeners = function () {
6272
6281
  return {
6273
6282
  fiberInitial: new Set(),
@@ -7104,7 +7113,7 @@ function requireIndex_development () {
7104
7113
  _this.isAppMounted = false;
7105
7114
  _this.isAppCrashed = false;
7106
7115
  _this.isAppUnmounted = false;
7107
- _this.version = "0.3.23";
7116
+ _this.version = "0.3.25";
7108
7117
  _this.id = Math.random().toString(16).slice(2);
7109
7118
  _this.mode = "development" ;
7110
7119
  _this.renderMode = "render";
@@ -7150,9 +7159,7 @@ function requireIndex_development () {
7150
7159
  if (include(_fiber.type, this.runtimeRef.typeForRef)) {
7151
7160
  _fiber.patch = merge(_fiber.patch, PATCH_TYPE.__ref__);
7152
7161
  }
7153
- else if (exclude(_fiber.type, exports$1.NODE_TYPE.__forwardRef__)) {
7154
- onceWarnWithKeyAndFiber(_fiber, "ref", "[@my-react/react] set ref for current element will be ignored");
7155
- }
7162
+ else if (exclude(_fiber.type, exports$1.NODE_TYPE.__forwardRef__)) ;
7156
7163
  }
7157
7164
  };
7158
7165
  CustomRenderDispatch.prototype.pendingUnmount = function (_fiber, _pendingUnmount) {
@@ -7307,8 +7314,8 @@ function requireIndex_development () {
7307
7314
  return CustomRenderDispatch;
7308
7315
  }(RenderDispatchEvent));
7309
7316
 
7310
- var globalLoop = react.__my_react_internal__.globalLoop;
7311
- var enableScopeTreeLog = react.__my_react_shared__.enableScopeTreeLog;
7317
+ var globalLoop = typeExports.__my_react_internal__.globalLoop;
7318
+ var enableScopeTreeLog = typeExports.__my_react_shared__.enableScopeTreeLog;
7312
7319
  function finishMountSync(renderDispatch, fiber) {
7313
7320
  enableScopeTreeLog.current && setLogScope();
7314
7321
  renderDispatch.reconcileCommit(fiber);
@@ -7362,7 +7369,7 @@ function requireIndex_development () {
7362
7369
  });
7363
7370
  }); };
7364
7371
 
7365
- var version = "0.3.23";
7372
+ var version = "0.3.25";
7366
7373
 
7367
7374
  exports$1.CustomRenderDispatch = CustomRenderDispatch;
7368
7375
  exports$1.MyReactFiberNode = MyReactFiberNode;
@@ -7969,7 +7976,7 @@ var ListTree = /** @class */ (function () {
7969
7976
  });
7970
7977
  }
7971
7978
 
7972
- var enableKnownConfigLog = require$$0.createRef(false);
7979
+ var enableKnownConfigLog = typeExports.createRef(false);
7973
7980
  var knownConfigKeys = [
7974
7981
  "prepareForCommit",
7975
7982
  "resetAfterCommit",
@@ -8180,7 +8187,7 @@ var create = function (_dispatch, _fiber, _config) {
8180
8187
 
8181
8188
  var initialMap = function (dispatch, fiber, config) {
8182
8189
  var parentFiberWithNode = null;
8183
- var parentFiberHostContext = null;
8190
+ var parentFiberWithNodeHostContext = null;
8184
8191
  var hostContext = null;
8185
8192
  if (fiber.parent) {
8186
8193
  var mayFiberContainer = fiber.parent;
@@ -8193,12 +8200,17 @@ var initialMap = function (dispatch, fiber, config) {
8193
8200
  else {
8194
8201
  parentFiberWithNode = dispatch.runtimeDom.elementMap.get(fiber.parent) || dispatch.rootFiber;
8195
8202
  }
8196
- parentFiberHostContext = dispatch.runtimeDom.hostContextMap.get(parentFiberWithNode);
8203
+ parentFiberWithNodeHostContext = dispatch.runtimeDom.hostContextMap.get(parentFiberWithNode);
8197
8204
  if (checkFiberWithNativeNode(dispatch, fiber)) {
8198
- hostContext = config.getChildHostContext(parentFiberHostContext, fiber.elementType, dispatch.rootNode, fiber);
8205
+ hostContext = config.getChildHostContext(parentFiberWithNodeHostContext, fiber.elementType, dispatch.rootNode, fiber);
8199
8206
  }
8200
8207
  else {
8201
- hostContext = parentFiberHostContext;
8208
+ hostContext = parentFiberWithNodeHostContext;
8209
+ }
8210
+ // help for lynx render to set css entry
8211
+ if (config.pathHostContext && typeof config.pathHostContext === "function") {
8212
+ var parentFiberHostContext = dispatch.runtimeDom.hostContextMap.get(mayFiberContainer);
8213
+ hostContext = config.pathHostContext(hostContext, parentFiberHostContext, parentFiberWithNodeHostContext, fiber.elementType, fiber.pendingProps, dispatch.rootNode, fiber);
8202
8214
  }
8203
8215
  }
8204
8216
  else {
@@ -8482,7 +8494,7 @@ var position = function (_dispatch, _fiber, _config) {
8482
8494
  };
8483
8495
 
8484
8496
  var createPortal = function (_element, _container) {
8485
- var portal = require$$0.createElement(Portal, { container: _container }, _element);
8497
+ var portal = typeExports.createElement(Portal, { container: _container }, _element);
8486
8498
  return portal;
8487
8499
  };
8488
8500
  var nextWorkPortal = function (renderDispatch, fiber) {
@@ -8529,8 +8541,8 @@ var ReconcilerDispatchFiber = function (renderDispatch, fiber) {
8529
8541
  }
8530
8542
  };
8531
8543
 
8532
- var currentScheduler$2 = require$$0.__my_react_internal__.currentScheduler;
8533
- var enableScopeTreeLog$3 = require$$0.__my_react_shared__.enableScopeTreeLog;
8544
+ var currentScheduler$2 = typeExports.__my_react_internal__.currentScheduler;
8545
+ var enableScopeTreeLog$3 = typeExports.__my_react_shared__.enableScopeTreeLog;
8534
8546
  var ReconcilerDispatchMount = function (_dispatch, _fiber, config) {
8535
8547
  var pendingCommitFiberArray = [];
8536
8548
  myreactReconcilerExports.beforeSyncUpdate();
@@ -8604,8 +8616,8 @@ var ReconcilerDispatchMount = function (_dispatch, _fiber, config) {
8604
8616
  });
8605
8617
  };
8606
8618
 
8607
- var currentScheduler$1 = require$$0.__my_react_internal__.currentScheduler;
8608
- var enableScopeTreeLog$2 = require$$0.__my_react_shared__.enableScopeTreeLog;
8619
+ var currentScheduler$1 = typeExports.__my_react_internal__.currentScheduler;
8620
+ var enableScopeTreeLog$2 = typeExports.__my_react_shared__.enableScopeTreeLog;
8609
8621
  var ReconcilerDispatchUpdate = function (_dispatch, _list, config, sync) {
8610
8622
  myreactReconcilerExports.beforeSyncUpdate();
8611
8623
  _list.listToFoot(function invokeUnmountPendingAndInsertionEffectList(_fiber) {
@@ -8720,7 +8732,7 @@ var ReconcilerDispatchUpdate = function (_dispatch, _list, config, sync) {
8720
8732
  }
8721
8733
  };
8722
8734
 
8723
- var currentComponentFiber = require$$0.__my_react_internal__.currentComponentFiber;
8735
+ var currentComponentFiber = typeExports.__my_react_internal__.currentComponentFiber;
8724
8736
  var initialRef = {
8725
8737
  typeForRef: myreactReconcilerExports.NODE_TYPE.__plain__ | myreactReconcilerExports.NODE_TYPE.__class__,
8726
8738
  typeForCreate: myreactReconcilerExports.NODE_TYPE.__text__ | myreactReconcilerExports.NODE_TYPE.__plain__ | myreactReconcilerExports.NODE_TYPE.__portal__,
@@ -8874,381 +8886,7 @@ var autoSetDevHMR = function (dispatch) {
8874
8886
  }
8875
8887
  };
8876
8888
 
8877
- /* eslint-disable @typescript-eslint/no-unused-vars */
8878
- /* eslint-disable @typescript-eslint/ban-ts-comment */
8879
- function loadRemoteScript(url_1) {
8880
- return __awaiter(this, arguments, void 0, function (url, options) {
8881
- var _a, timeout, _b, context, _c, useEval, controller_1, timeoutId, response, code, error_1, errorMsg;
8882
- if (options === void 0) { options = {}; }
8883
- return __generator(this, function (_d) {
8884
- switch (_d.label) {
8885
- case 0:
8886
- _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;
8887
- _d.label = 1;
8888
- case 1:
8889
- _d.trys.push([1, 5, , 6]);
8890
- controller_1 = new AbortController();
8891
- timeoutId = setTimeout(function () { return controller_1.abort(); }, timeout);
8892
- return [4 /*yield*/, fetch(url, {
8893
- signal: controller_1.signal,
8894
- })];
8895
- case 2:
8896
- response = _d.sent();
8897
- if (!response.ok) {
8898
- throw new Error("HTTP ".concat(response.status, ": ").concat(response.statusText));
8899
- }
8900
- return [4 /*yield*/, response.text()];
8901
- case 3:
8902
- code = _d.sent();
8903
- clearTimeout(timeoutId);
8904
- // 根据环境选择执行方式
8905
- return [4 /*yield*/, executeScript(code, url, { context: context, useEval: useEval })];
8906
- case 4:
8907
- // 根据环境选择执行方式
8908
- _d.sent();
8909
- return [3 /*break*/, 6];
8910
- case 5:
8911
- error_1 = _d.sent();
8912
- if ((error_1 === null || error_1 === void 0 ? void 0 : error_1.name) === "AbortError") {
8913
- throw new Error("\u52A0\u8F7D\u8FDC\u7A0B\u811A\u672C\u8D85\u65F6 (".concat(timeout, "ms)"));
8914
- }
8915
- errorMsg = (error_1 === null || error_1 === void 0 ? void 0 : error_1.message) || String(error_1);
8916
- throw new Error("\u52A0\u8F7D\u8FDC\u7A0B\u811A\u672C\u5931\u8D25: ".concat(errorMsg));
8917
- case 6: return [2 /*return*/];
8918
- }
8919
- });
8920
- });
8921
- }
8922
- function executeScript(code, url, options) {
8923
- return __awaiter(this, void 0, void 0, function () {
8924
- var _a, context, _b, useEval, env, _c;
8925
- return __generator(this, function (_d) {
8926
- switch (_d.label) {
8927
- case 0:
8928
- _a = options.context, context = _a === void 0 ? {} : _a, _b = options.useEval, useEval = _b === void 0 ? false : _b;
8929
- env = detectEnvironment();
8930
- _c = env;
8931
- switch (_c) {
8932
- case "bun": return [3 /*break*/, 1];
8933
- case "node": return [3 /*break*/, 3];
8934
- case "browser": return [3 /*break*/, 5];
8935
- }
8936
- return [3 /*break*/, 7];
8937
- case 1: return [4 /*yield*/, executeInBun(code, url, context)];
8938
- case 2:
8939
- _d.sent();
8940
- return [3 /*break*/, 8];
8941
- case 3: return [4 /*yield*/, executeInNode(code, url, context)];
8942
- case 4:
8943
- _d.sent();
8944
- return [3 /*break*/, 8];
8945
- case 5: return [4 /*yield*/, executeInBrowser(code, url, context, useEval)];
8946
- case 6:
8947
- _d.sent();
8948
- return [3 /*break*/, 8];
8949
- case 7: throw new Error("未知的 JavaScript 环境");
8950
- case 8: return [2 /*return*/];
8951
- }
8952
- });
8953
- });
8954
- }
8955
- function detectEnvironment() {
8956
- // 检测 Bun
8957
- // @ts-ignore
8958
- if (typeof Bun !== "undefined" && typeof Bun === "object") {
8959
- return "bun";
8960
- }
8961
- // 检测 Node.js
8962
- if (typeof process !== "undefined" && process.versions && process.versions.node) {
8963
- return "node";
8964
- }
8965
- // 检测浏览器环境
8966
- if (typeof window !== "undefined" && typeof document !== "undefined") {
8967
- return "browser";
8968
- }
8969
- // 默认为浏览器环境(保守策略)
8970
- return "browser";
8971
- }
8972
- // 安全的 Base64 编码函数(跨环境兼容)
8973
- function safeBase64Encode(str) {
8974
- // Node.js 环境
8975
- if (typeof Buffer !== "undefined") {
8976
- return Buffer.from(str, "utf-8").toString("base64");
8977
- }
8978
- // 浏览器环境
8979
- if (typeof btoa !== "undefined") {
8980
- // 处理 Unicode 字符
8981
- var utf8Bytes_1 = new TextEncoder().encode(str);
8982
- var binary = "";
8983
- for (var i = 0; i < utf8Bytes_1.length; i++) {
8984
- binary += String.fromCharCode(utf8Bytes_1[i]);
8985
- }
8986
- return btoa(binary);
8987
- }
8988
- // 回退方案:手动实现 Base64 编码
8989
- var base64Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
8990
- var utf8Bytes = new TextEncoder().encode(str);
8991
- var result = "";
8992
- for (var i = 0; i < utf8Bytes.length; i += 3) {
8993
- var a = utf8Bytes[i];
8994
- var b = i + 1 < utf8Bytes.length ? utf8Bytes[i + 1] : 0;
8995
- var c = i + 2 < utf8Bytes.length ? utf8Bytes[i + 2] : 0;
8996
- var bitmap = (a << 16) | (b << 8) | c;
8997
- result += base64Chars[(bitmap >> 18) & 63];
8998
- result += base64Chars[(bitmap >> 12) & 63];
8999
- result += i + 1 < utf8Bytes.length ? base64Chars[(bitmap >> 6) & 63] : "=";
9000
- result += i + 2 < utf8Bytes.length ? base64Chars[bitmap & 63] : "=";
9001
- }
9002
- return result;
9003
- }
9004
- // Bun 环境执行
9005
- function executeInBun(code, url, context) {
9006
- return __awaiter(this, void 0, void 0, function () {
9007
- var base64Code, dataUrl;
9008
- return __generator(this, function (_a) {
9009
- switch (_a.label) {
9010
- case 0:
9011
- _a.trys.push([0, 2, , 4]);
9012
- base64Code = safeBase64Encode(code);
9013
- dataUrl = "data:application/javascript;base64,".concat(base64Code);
9014
- return [4 /*yield*/, import(/* @vite-ignore */ dataUrl)];
9015
- case 1:
9016
- _a.sent();
9017
- return [2 /*return*/];
9018
- case 2:
9019
- _a.sent();
9020
- // 方法2: 使用 VM 回退
9021
- return [4 /*yield*/, executeWithVM(code, url, context)];
9022
- case 3:
9023
- // 方法2: 使用 VM 回退
9024
- _a.sent();
9025
- return [3 /*break*/, 4];
9026
- case 4: return [2 /*return*/];
9027
- }
9028
- });
9029
- });
9030
- }
9031
- // Node.js 环境执行
9032
- function executeInNode(code, url, context) {
9033
- return __awaiter(this, void 0, void 0, function () {
9034
- var error_3, base64Code, dataUrl, importError_1, errorMsg, importErrorMsg;
9035
- return __generator(this, function (_a) {
9036
- switch (_a.label) {
9037
- case 0:
9038
- _a.trys.push([0, 2, , 7]);
9039
- // 方法1: 使用 VM 模块
9040
- return [4 /*yield*/, executeWithVM(code, url, context)];
9041
- case 1:
9042
- // 方法1: 使用 VM 模块
9043
- _a.sent();
9044
- return [3 /*break*/, 7];
9045
- case 2:
9046
- error_3 = _a.sent();
9047
- _a.label = 3;
9048
- case 3:
9049
- _a.trys.push([3, 5, , 6]);
9050
- base64Code = safeBase64Encode(code);
9051
- dataUrl = "data:application/javascript;base64,".concat(base64Code);
9052
- return [4 /*yield*/, import(/* @vite-ignore */ dataUrl)];
9053
- case 4:
9054
- _a.sent();
9055
- return [3 /*break*/, 6];
9056
- case 5:
9057
- importError_1 = _a.sent();
9058
- errorMsg = (error_3 === null || error_3 === void 0 ? void 0 : error_3.message) || String(error_3);
9059
- importErrorMsg = (importError_1 === null || importError_1 === void 0 ? void 0 : importError_1.message) || String(importError_1);
9060
- throw new Error("Node.js \u6267\u884C\u5931\u8D25: ".concat(errorMsg, ", ").concat(importErrorMsg));
9061
- case 6: return [3 /*break*/, 7];
9062
- case 7: return [2 /*return*/];
9063
- }
9064
- });
9065
- });
9066
- }
9067
- // 浏览器环境执行
9068
- function executeInBrowser(code, url, context, useEval) {
9069
- return __awaiter(this, void 0, void 0, function () {
9070
- return __generator(this, function (_a) {
9071
- switch (_a.label) {
9072
- case 0:
9073
- // 浏览器环境的安全考虑
9074
- if (!useEval && isPotentiallyUnsafe(code)) {
9075
- throw new Error("代码包含潜在不安全内容,如需执行请设置 useEval: true");
9076
- }
9077
- _a.label = 1;
9078
- case 1:
9079
- _a.trys.push([1, 3, , 4]);
9080
- // 方法1: 使用 script 标签插入 (最安全)
9081
- return [4 /*yield*/, executeWithScriptTag(code)];
9082
- case 2:
9083
- // 方法1: 使用 script 标签插入 (最安全)
9084
- _a.sent();
9085
- return [3 /*break*/, 4];
9086
- case 3:
9087
- _a.sent();
9088
- // 方法2: 使用 eval (需要显式启用)
9089
- if (useEval) {
9090
- executeWithEval(code, context);
9091
- }
9092
- else {
9093
- throw new Error("浏览器执行失败,请启用 useEval 选项或检查 CSP 设置");
9094
- }
9095
- return [3 /*break*/, 4];
9096
- case 4: return [2 /*return*/];
9097
- }
9098
- });
9099
- });
9100
- }
9101
- // 通用 VM 执行 (Node.js/Bun)
9102
- function executeWithVM(code, url, context) {
9103
- return __awaiter(this, void 0, void 0, function () {
9104
- var vm, sandbox, vmContext, script, error_5, errorMsg;
9105
- return __generator(this, function (_a) {
9106
- switch (_a.label) {
9107
- case 0:
9108
- _a.trys.push([0, 2, , 3]);
9109
- return [4 /*yield*/, import('vm')];
9110
- case 1:
9111
- vm = _a.sent();
9112
- sandbox = __assign(__assign(__assign({
9113
- // 基础全局变量
9114
- console: console, setTimeout: setTimeout, setInterval: setInterval, clearTimeout: clearTimeout, clearInterval: clearInterval, URL: URL, URLSearchParams: URLSearchParams,
9115
- // 内置对象
9116
- 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);
9117
- vmContext = vm.createContext(sandbox);
9118
- script = new vm.Script(code, {
9119
- filename: url,
9120
- lineOffset: 0,
9121
- columnOffset: 0,
9122
- });
9123
- script.runInContext(vmContext);
9124
- return [3 /*break*/, 3];
9125
- case 2:
9126
- error_5 = _a.sent();
9127
- errorMsg = (error_5 === null || error_5 === void 0 ? void 0 : error_5.message) || String(error_5);
9128
- throw new Error("VM \u6267\u884C\u5931\u8D25: ".concat(errorMsg));
9129
- case 3: return [2 /*return*/];
9130
- }
9131
- });
9132
- });
9133
- }
9134
- // 浏览器 script 标签执行
9135
- function executeWithScriptTag(code, url) {
9136
- // 检查是否在浏览器环境
9137
- if (typeof document === "undefined") {
9138
- throw new Error("document 未定义,不在浏览器环境中");
9139
- }
9140
- return new Promise(function (resolve, reject) {
9141
- // 创建 script 元素
9142
- var script = document.createElement("script");
9143
- // 使用 Blob URL 避免 CSP 问题
9144
- var blob = new Blob([code], { type: "application/javascript" });
9145
- var blobUrl = URL.createObjectURL(blob);
9146
- script.src = blobUrl;
9147
- // 清理函数
9148
- var cleanup = function () {
9149
- URL.revokeObjectURL(blobUrl);
9150
- // 从 DOM 中移除 script 标签以防止内存泄漏
9151
- if (script.parentNode) {
9152
- script.parentNode.removeChild(script);
9153
- }
9154
- };
9155
- // 设置错误处理
9156
- script.onerror = function () {
9157
- cleanup();
9158
- reject(new Error("Script 标签加载失败"));
9159
- };
9160
- script.onload = function () {
9161
- cleanup();
9162
- resolve();
9163
- };
9164
- // 添加到 DOM
9165
- document.head.appendChild(script);
9166
- });
9167
- }
9168
- // 浏览器 eval 执行
9169
- function executeWithEval(code, context) {
9170
- // 在特定上下文中执行
9171
- var contextKeys = Object.keys(context);
9172
- var contextValues = Object.values(context);
9173
- try {
9174
- // 使用 Function 构造函数比直接 eval 稍安全
9175
- var func = new (Function.bind.apply(Function, __spreadArray(__spreadArray([void 0], contextKeys, false), ["\n \"use strict\";\n ".concat(code, "\n ")], false)))();
9176
- func.apply(void 0, contextValues);
9177
- }
9178
- catch (error) {
9179
- // 回退到间接 eval
9180
- try {
9181
- var indirectEval = eval;
9182
- indirectEval(code);
9183
- }
9184
- catch (evalError) {
9185
- var errorMsg = (evalError === null || evalError === void 0 ? void 0 : evalError.message) || String(evalError);
9186
- throw new Error("Eval \u6267\u884C\u5931\u8D25: ".concat(errorMsg));
9187
- }
9188
- }
9189
- }
9190
- // 增强的安全检查
9191
- function isPotentiallyUnsafe(code) {
9192
- var unsafePatterns = [
9193
- // Cookie 和存储访问
9194
- /document\.cookie/i,
9195
- /localStorage/i,
9196
- /sessionStorage/i,
9197
- /indexedDB/i,
9198
- // 动态代码执行
9199
- /\beval\s*\(/i,
9200
- /Function\s*\(/i,
9201
- /setTimeout\s*\(\s*["'`]/i, // setTimeout with string
9202
- /setInterval\s*\(\s*["'`]/i, // setInterval with string
9203
- // 动态脚本和 DOM 操作
9204
- /script\.src/i,
9205
- /\.innerHTML/i,
9206
- /\.outerHTML/i,
9207
- /document\.write/i,
9208
- /document\.writeln/i,
9209
- // 动态属性访问(可能绕过检查)
9210
- /\[["'`]eval["'`]\]/i,
9211
- /\[["'`]cookie["'`]\]/i,
9212
- /\[["'`]localStorage["'`]\]/i,
9213
- // import() 动态导入
9214
- /import\s*\(/i,
9215
- // 危险的 DOM API
9216
- /\.insertAdjacentHTML/i,
9217
- /createContextualFragment/i,
9218
- ];
9219
- return unsafePatterns.some(function (pattern) { return pattern.test(code); });
9220
- }
9221
- // 安全的 require 函数模拟
9222
- function createSafeRequire() {
9223
- if (typeof require !== "undefined") {
9224
- return require;
9225
- }
9226
- // 在浏览器环境中返回一个安全的模拟 require
9227
- return function (id) {
9228
- throw new Error("require('".concat(id, "') \u5728\u6D4F\u89C8\u5668\u73AF\u5883\u4E2D\u4E0D\u53EF\u7528"));
9229
- };
9230
- }
9231
- // 增强的模块加载版本(支持导出)
9232
- function loadRemoteModule(url_1) {
9233
- return __awaiter(this, arguments, void 0, function (url, options) {
9234
- var _a, context, moduleExports, moduleContext;
9235
- if (options === void 0) { options = {}; }
9236
- return __generator(this, function (_b) {
9237
- switch (_b.label) {
9238
- case 0:
9239
- _a = options.context, context = _a === void 0 ? {} : _a;
9240
- moduleExports = {};
9241
- moduleContext = __assign({ exports: moduleExports, module: { exports: moduleExports }, require: createSafeRequire() }, context);
9242
- return [4 /*yield*/, loadRemoteScript(url, __assign(__assign({}, options), { context: moduleContext }))];
9243
- case 1:
9244
- _b.sent();
9245
- return [2 /*return*/, moduleContext.module.exports];
9246
- }
9247
- });
9248
- });
9249
- }
9250
-
9251
- var enableDebugFiled$1 = require$$0.__my_react_shared__.enableDebugFiled, enableScopeTreeLog$1 = require$$0.__my_react_shared__.enableScopeTreeLog;
8889
+ var enableDebugFiled$1 = typeExports.__my_react_shared__.enableDebugFiled, enableScopeTreeLog$1 = typeExports.__my_react_shared__.enableScopeTreeLog;
9252
8890
  /**
9253
8891
  * @internal
9254
8892
  */
@@ -9260,11 +8898,12 @@ var prepareScheduler = function () {
9260
8898
  myreactReconcilerExports.initScheduler();
9261
8899
  };
9262
8900
 
9263
- var enableDebugFiled = require$$0.__my_react_shared__.enableDebugFiled, enableScopeTreeLog = require$$0.__my_react_shared__.enableScopeTreeLog;
9264
- var currentScheduler = require$$0.__my_react_internal__.currentScheduler;
8901
+ var enableDebugFiled = typeExports.__my_react_shared__.enableDebugFiled, enableScopeTreeLog = typeExports.__my_react_shared__.enableScopeTreeLog;
8902
+ var currentScheduler = typeExports.__my_react_internal__.currentScheduler;
9265
8903
  // react-reconciler compat implementation
9266
8904
  var Reconciler = function (_config) {
9267
8905
  var rendererPackageName = "@my-react";
8906
+ var isRendering = false;
9268
8907
  var ReconcilerSet = new Set();
9269
8908
  if (enableKnownConfigLog.current) {
9270
8909
  knownConfig(_config);
@@ -9272,11 +8911,9 @@ var Reconciler = function (_config) {
9272
8911
  var createContainer = function (_container, flag) {
9273
8912
  prepareScheduler();
9274
8913
  if (flag === 0) {
9275
- // legacy mode
9276
8914
  _container.__flag__ = 0;
9277
8915
  }
9278
8916
  else {
9279
- // concurrent mode
9280
8917
  _container.__flag__ = 1;
9281
8918
  }
9282
8919
  enableDebugFiled.current = true;
@@ -9285,106 +8922,258 @@ var Reconciler = function (_config) {
9285
8922
  myreactReconcilerExports.enableFiberForLog.current = false;
9286
8923
  return _container;
9287
8924
  };
8925
+ var createHydrationContainer = function (_initialChildren, _callback, _container, flag, _hydrationCallbacks, _isStrictMode, _concurrentUpdatesByDefaultOverride, _identifierPrefix, _onRecoverableError, _transitionCallbacks) {
8926
+ var opaqueRoot = createContainer(_container, flag);
8927
+ updateContainer(_initialChildren, opaqueRoot, null, _callback !== null && _callback !== void 0 ? _callback : (function () { }));
8928
+ return opaqueRoot;
8929
+ };
9288
8930
  var updateContainer = function (_element, _container, _ignore, _cb) {
8931
+ var _a;
9289
8932
  var renderDispatch = _container.__container__;
9290
8933
  var renderScheduler = currentScheduler.current;
9291
- if (renderDispatch instanceof myreactReconcilerExports.CustomRenderDispatch) {
9292
- var _fiber_1 = _container.__fiber__;
9293
- if (renderDispatch.isAppCrashed || include(_fiber_1.state, STATE_TYPE.__unmount__)) {
9294
- // is there are not a valid render tree, try do the pure rerender
9295
- _container.__fiber__ = null;
9296
- _container.__container__ = null;
9297
- updateContainer(_element, _container, _config, _cb);
9298
- return;
9299
- }
9300
- if (myreactReconcilerExports.checkIsSameType(_fiber_1, _element)) {
9301
- _fiber_1._installElement(_element);
9302
- myreactReconcilerExports.triggerUpdateOnFiber(_fiber_1, STATE_TYPE.__triggerSync__, _cb);
9303
- return;
8934
+ isRendering = true;
8935
+ try {
8936
+ if (renderDispatch instanceof myreactReconcilerExports.CustomRenderDispatch) {
8937
+ var _fiber_1 = _container.__fiber__;
8938
+ if (renderDispatch.isAppCrashed || include(_fiber_1.state, STATE_TYPE.__unmount__)) {
8939
+ _container.__fiber__ = null;
8940
+ _container.__container__ = null;
8941
+ updateContainer(_element, _container, _config, _cb);
8942
+ return;
8943
+ }
8944
+ if (myreactReconcilerExports.checkIsSameType(_fiber_1, _element)) {
8945
+ _fiber_1._installElement(_element);
8946
+ myreactReconcilerExports.triggerUpdateOnFiber(_fiber_1, STATE_TYPE.__triggerSync__, _cb);
8947
+ return;
8948
+ }
8949
+ myreactReconcilerExports.unmountContainer(renderDispatch);
8950
+ (_a = _config === null || _config === void 0 ? void 0 : _config.clearContainer) === null || _a === void 0 ? void 0 : _a.call(_config, _container);
8951
+ ReconcilerSet.delete(renderDispatch);
8952
+ renderScheduler.dispatchSet.uniDelete(renderDispatch);
8953
+ delGlobalDispatch(renderDispatch);
9304
8954
  }
9305
- myreactReconcilerExports.unmountContainer(renderDispatch);
9306
- ReconcilerSet.delete(renderDispatch);
9307
- renderScheduler.dispatchSet.uniDelete(renderDispatch);
9308
- delGlobalDispatch(renderDispatch);
8955
+ var _fiber = new myreactReconcilerExports.MyReactFiberNode(_element);
8956
+ var _renderDispatch = createDispatch(_container, _fiber, _element, _config, _container.__flag__);
8957
+ _cb && _renderDispatch.pendingEffect(_fiber, _cb);
8958
+ ReconcilerSet.add(_renderDispatch);
8959
+ renderScheduler.dispatchSet.uniPush(_renderDispatch);
8960
+ _renderDispatch.renderPackage = rendererPackageName;
8961
+ _container.__fiber__ = _fiber;
8962
+ _container.__container__ = _renderDispatch;
8963
+ autoSetDevTools(_renderDispatch);
8964
+ autoSetDevHMR(_renderDispatch);
8965
+ myreactReconcilerExports.initialFiberNode(_renderDispatch, _fiber);
8966
+ myreactReconcilerExports.mountSync(_renderDispatch, _fiber);
8967
+ _renderDispatch.isAppMounted = true;
8968
+ }
8969
+ finally {
8970
+ isRendering = false;
9309
8971
  }
9310
- var _fiber = new myreactReconcilerExports.MyReactFiberNode(_element);
9311
- var _renderDispatch = createDispatch(_container, _fiber, _element, _config, _container.__flag__);
9312
- _cb && _renderDispatch.pendingEffect(_fiber, _cb);
9313
- ReconcilerSet.add(_renderDispatch);
9314
- renderScheduler.dispatchSet.uniPush(_renderDispatch);
9315
- _renderDispatch.renderPackage = rendererPackageName;
9316
- _container.__fiber__ = _fiber;
9317
- _container.__container__ = _renderDispatch;
9318
- autoSetDevTools(_renderDispatch);
9319
- autoSetDevHMR(_renderDispatch);
9320
- myreactReconcilerExports.initialFiberNode(_renderDispatch, _fiber);
9321
- myreactReconcilerExports.mountSync(_renderDispatch, _fiber);
9322
- _renderDispatch.isAppMounted = true;
9323
8972
  };
9324
- var injectIntoDevTools = function (_config) { return __awaiter(void 0, void 0, void 0, function () {
9325
- return __generator(this, function (_a) {
9326
- switch (_a.label) {
9327
- case 0:
9328
- rendererPackageName = _config.rendererPackageName || rendererPackageName;
9329
- ReconcilerSet.forEach(function (renderDispatch) { return (renderDispatch.renderPackage = rendererPackageName); });
9330
- if (globalThis["__MY_REACT_DEVTOOL_INTERNAL__"])
9331
- return [2 /*return*/];
9332
- // load core runtime
9333
- // await loadScript("https://mrwangjusttodo.github.io/myreact-devtools/bundle/hook.js");
9334
- return [4 /*yield*/, loadRemoteModule("https://mrwangjusttodo.github.io/myreact-devtools/bundle/hook.js", { context: { globalThis: globalThis } })];
9335
- case 1:
9336
- // load core runtime
9337
- // await loadScript("https://mrwangjusttodo.github.io/myreact-devtools/bundle/hook.js");
9338
- _a.sent();
9339
- return [2 /*return*/];
9340
- }
9341
- });
9342
- }); };
9343
- var injectIntoDevToolsWithSocketIO = function (url, _config) { return __awaiter(void 0, void 0, void 0, function () {
8973
+ var injectIntoDevTools = function (_config) {
8974
+ rendererPackageName = _config.rendererPackageName || rendererPackageName;
8975
+ ReconcilerSet.forEach(function (renderDispatch) { return (renderDispatch.renderPackage = rendererPackageName); });
8976
+ if (globalThis["__MY_REACT_DEVTOOL_INTERNAL__"])
8977
+ return true;
8978
+ return false;
8979
+ };
8980
+ var injectIntoDevToolsAuto = function (url, _config) { return __awaiter(void 0, void 0, void 0, function () {
9344
8981
  var init;
9345
8982
  return __generator(this, function (_b) {
9346
8983
  switch (_b.label) {
9347
- case 0:
9348
- // load core runtime
9349
- return [4 /*yield*/, injectIntoDevTools(_config || {})];
8984
+ case 0:
8985
+ // set core runtime
8986
+ // you should load core runtime by your self, see packages/myreact-reconciler-compact/src/preload.ts
8987
+ injectIntoDevTools(_config || {});
8988
+ init = globalThis["__MY_REACT_DEVTOOL_NODE__"] || globalThis["__MY_REACT_DEVTOOL_BUNDLE__"] || globalThis["__MY_REACT_DEVTOOL_BUNDLE_WS__"];
8989
+ _b.label = 1;
9350
8990
  case 1:
9351
- // load core runtime
9352
- _b.sent();
9353
- init = globalThis["__MY_REACT_DEVTOOL_NODE__"];
9354
- _b.label = 2;
9355
- case 2:
9356
- _b.trys.push([2, 4, , 5]);
8991
+ _b.trys.push([1, 3, , 4]);
9357
8992
  return [4 /*yield*/, init(url)];
9358
- case 3:
8993
+ case 2:
9359
8994
  _b.sent();
9360
- return [3 /*break*/, 5];
9361
- case 4:
8995
+ return [3 /*break*/, 4];
8996
+ case 3:
9362
8997
  _b.sent();
9363
- return [3 /*break*/, 5];
9364
- case 5: return [2 /*return*/];
8998
+ return [3 /*break*/, 4];
8999
+ case 4: return [2 /*return*/];
9365
9000
  }
9366
9001
  });
9367
9002
  }); };
9368
9003
  var getPublicRootInstance = function (_container) {
9369
- return _container.__container__;
9004
+ var fiber = _container.__fiber__;
9005
+ if (!fiber || !fiber.child) {
9006
+ return null;
9007
+ }
9008
+ return fiber.child.nativeNode;
9009
+ };
9010
+ var discreteUpdates = function (fn, a, b, c, d) {
9011
+ myreactReconcilerExports.beforeSyncUpdate();
9012
+ try {
9013
+ return fn(a, b, c, d);
9014
+ }
9015
+ finally {
9016
+ myreactReconcilerExports.afterSyncUpdate();
9017
+ }
9018
+ };
9019
+ var updateContainerSync = function (element, container, ignore, callback) {
9020
+ myreactReconcilerExports.beforeSyncUpdate();
9021
+ try {
9022
+ updateContainer(element, container, ignore, callback);
9023
+ }
9024
+ finally {
9025
+ myreactReconcilerExports.afterSyncUpdate();
9026
+ }
9027
+ };
9028
+ var flushPassiveEffects = function () {
9029
+ try {
9030
+ myreactReconcilerExports.flushEffectCallback();
9031
+ return true;
9032
+ }
9033
+ catch (_a) {
9034
+ return false;
9035
+ }
9036
+ };
9037
+ var isAlreadyRendering = function () {
9038
+ return isRendering;
9039
+ };
9040
+ var deferredUpdates = function (fn) {
9041
+ return fn();
9042
+ };
9043
+ var findHostInstance = function (component) {
9044
+ try {
9045
+ var fiber = myreactReconcilerExports.getInstanceOwnerFiber(component);
9046
+ if (!fiber)
9047
+ return null;
9048
+ var current = fiber;
9049
+ while (current) {
9050
+ if (current.nativeNode && typeof current.type === "string") {
9051
+ return (_config === null || _config === void 0 ? void 0 : _config.getPublicInstance) ? _config.getPublicInstance(current.nativeNode) : current.nativeNode;
9052
+ }
9053
+ current = current.child;
9054
+ }
9055
+ return null;
9056
+ }
9057
+ catch (_a) {
9058
+ return null;
9059
+ }
9060
+ };
9061
+ var findHostInstanceWithWarning = function (component, _methodName) {
9062
+ return findHostInstance(component);
9063
+ };
9064
+ var findHostInstanceWithNoPortals = function (fiber) {
9065
+ return findHostInstance(fiber);
9066
+ };
9067
+ var attemptSynchronousHydration = function (_fiber) {
9068
+ // no-op: hydration not yet supported in MyReact reconciler-compact
9069
+ };
9070
+ var attemptDiscreteHydration = function (_fiber) {
9071
+ // no-op
9072
+ };
9073
+ var attemptContinuousHydration = function (_fiber) {
9074
+ // no-op
9075
+ };
9076
+ var attemptHydrationAtCurrentPriority = function (_fiber) {
9077
+ // no-op
9078
+ };
9079
+ var getCurrentUpdatePriority = function () {
9080
+ return 0;
9081
+ };
9082
+ var runWithPriority = function (_priority, fn) {
9083
+ return fn();
9084
+ };
9085
+ var shouldErrorImpl = null;
9086
+ var shouldSuspendImpl = null;
9087
+ var shouldError = function (fiber) {
9088
+ return shouldErrorImpl ? shouldErrorImpl(fiber) : undefined;
9089
+ };
9090
+ var shouldSuspend = function (fiber) {
9091
+ return shouldSuspendImpl ? shouldSuspendImpl(fiber) : false;
9092
+ };
9093
+ var registerMutableSourceForHydration = function (_root, _mutableSource) {
9094
+ // no-op
9095
+ };
9096
+ var createComponentSelector = function (component) { return ({ $$typeof: Symbol.for("react.test.selector"), value: component }); };
9097
+ var createHasPseudoClassSelector = function (selectors) { return ({ $$typeof: Symbol.for("react.test.selector"), value: selectors }); };
9098
+ var createRoleSelector = function (role) { return ({ $$typeof: Symbol.for("react.test.selector"), value: role }); };
9099
+ var createTextSelector = function (text) { return ({ $$typeof: Symbol.for("react.test.selector"), value: text }); };
9100
+ var createTestNameSelector = function (id) { return ({ $$typeof: Symbol.for("react.test.selector"), value: id }); };
9101
+ var getFindAllNodesFailureDescription = function (_hostRoot, _selectors) {
9102
+ return null;
9103
+ };
9104
+ var findAllNodes = function (_hostRoot, _selectors) {
9105
+ return [];
9106
+ };
9107
+ var findBoundingRects = function (_hostRoot, _selectors) {
9108
+ return [];
9109
+ };
9110
+ var focusWithin = function (_hostRoot, _selectors) {
9111
+ return false;
9112
+ };
9113
+ var observeVisibleRects = function (_hostRoot, _selectors, _callback, _options) {
9114
+ return { disconnect: function () { } };
9370
9115
  };
9371
9116
  return {
9372
9117
  createPortal: createPortal,
9373
9118
  createContainer: createContainer,
9119
+ createHydrationContainer: createHydrationContainer,
9374
9120
  updateContainer: updateContainer,
9121
+ updateContainerSync: updateContainerSync,
9375
9122
  injectIntoDevTools: injectIntoDevTools,
9376
9123
  getPublicRootInstance: getPublicRootInstance,
9377
- injectIntoDevToolsWithSocketIO: injectIntoDevToolsWithSocketIO,
9124
+ injectIntoDevToolsAuto: injectIntoDevToolsAuto,
9378
9125
  flushSync: myreactReconcilerExports.safeCallWithSync,
9379
9126
  flushSyncWork: myreactReconcilerExports.safeCallWithSync,
9380
9127
  batchedUpdates: myreactReconcilerExports.safeCallWithSync,
9128
+ discreteUpdates: discreteUpdates,
9129
+ deferredUpdates: deferredUpdates,
9130
+ flushPassiveEffects: flushPassiveEffects,
9131
+ isAlreadyRendering: isAlreadyRendering,
9132
+ findHostInstance: findHostInstance,
9133
+ findHostInstanceWithWarning: findHostInstanceWithWarning,
9134
+ findHostInstanceWithNoPortals: findHostInstanceWithNoPortals,
9135
+ attemptSynchronousHydration: attemptSynchronousHydration,
9136
+ attemptDiscreteHydration: attemptDiscreteHydration,
9137
+ attemptContinuousHydration: attemptContinuousHydration,
9138
+ attemptHydrationAtCurrentPriority: attemptHydrationAtCurrentPriority,
9139
+ getCurrentUpdatePriority: getCurrentUpdatePriority,
9140
+ runWithPriority: runWithPriority,
9141
+ shouldError: shouldError,
9142
+ shouldSuspend: shouldSuspend,
9143
+ registerMutableSourceForHydration: registerMutableSourceForHydration,
9144
+ createComponentSelector: createComponentSelector,
9145
+ createHasPseudoClassSelector: createHasPseudoClassSelector,
9146
+ createRoleSelector: createRoleSelector,
9147
+ createTextSelector: createTextSelector,
9148
+ createTestNameSelector: createTestNameSelector,
9149
+ getFindAllNodesFailureDescription: getFindAllNodesFailureDescription,
9150
+ findAllNodes: findAllNodes,
9151
+ findBoundingRects: findBoundingRects,
9152
+ focusWithin: focusWithin,
9153
+ observeVisibleRects: observeVisibleRects,
9381
9154
  };
9382
9155
  };
9383
9156
 
9384
- var version = "0.0.14";
9157
+ var version = "0.0.16";
9385
9158
  var createReconciler = Reconciler;
9159
+ var defaultOnUncaughtError = function (error) {
9160
+ console.error("Uncaught", error);
9161
+ };
9162
+ var defaultOnCaughtError = function (error) {
9163
+ console.error("Caught", error);
9164
+ };
9165
+ var defaultOnRecoverableError = function (error) {
9166
+ console.error("Recoverable", error);
9167
+ };
9168
+ var startHostTransition = function () {
9169
+ // no-op
9170
+ };
9386
9171
 
9387
9172
  exports.createReconciler = createReconciler;
9388
9173
  exports.default = createReconciler;
9174
+ exports.defaultOnCaughtError = defaultOnCaughtError;
9175
+ exports.defaultOnRecoverableError = defaultOnRecoverableError;
9176
+ exports.defaultOnUncaughtError = defaultOnUncaughtError;
9389
9177
  exports.enableKnownConfigLog = enableKnownConfigLog;
9178
+ exports.startHostTransition = startHostTransition;
9390
9179
  exports.version = version;