@my-react/react-reconciler-compact 0.0.1 → 0.0.2

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.
@@ -291,6 +291,8 @@ function requireIndex_development_1 () {
291
291
  UpdateQueueType[UpdateQueueType["hmr"] = 4] = "hmr";
292
292
  UpdateQueueType[UpdateQueueType["trigger"] = 5] = "trigger";
293
293
  UpdateQueueType[UpdateQueueType["suspense"] = 6] = "suspense";
294
+ UpdateQueueType[UpdateQueueType["lazy"] = 7] = "lazy";
295
+ UpdateQueueType[UpdateQueueType["promise"] = 8] = "promise";
294
296
  })(exports.UpdateQueueType || (exports.UpdateQueueType = {}));
295
297
 
296
298
  exports.STATE_TYPE = void 0;
@@ -298,17 +300,15 @@ function requireIndex_development_1 () {
298
300
  STATE_TYPE[STATE_TYPE["__initial__"] = 0] = "__initial__";
299
301
  STATE_TYPE[STATE_TYPE["__create__"] = 1] = "__create__";
300
302
  STATE_TYPE[STATE_TYPE["__stable__"] = 2] = "__stable__";
301
- STATE_TYPE[STATE_TYPE["__skippedConcurrent__"] = 4] = "__skippedConcurrent__";
302
- STATE_TYPE[STATE_TYPE["__skippedSync__"] = 8] = "__skippedSync__";
303
- STATE_TYPE[STATE_TYPE["__inherit__"] = 16] = "__inherit__";
304
- STATE_TYPE[STATE_TYPE["__triggerConcurrent__"] = 32] = "__triggerConcurrent__";
305
- STATE_TYPE[STATE_TYPE["__triggerConcurrentForce__"] = 64] = "__triggerConcurrentForce__";
306
- STATE_TYPE[STATE_TYPE["__triggerSync__"] = 128] = "__triggerSync__";
307
- STATE_TYPE[STATE_TYPE["__triggerSyncForce__"] = 256] = "__triggerSyncForce__";
308
- STATE_TYPE[STATE_TYPE["__unmount__"] = 512] = "__unmount__";
309
- STATE_TYPE[STATE_TYPE["__hmr__"] = 1024] = "__hmr__";
310
- STATE_TYPE[STATE_TYPE["__retrigger__"] = 2048] = "__retrigger__";
311
- STATE_TYPE[STATE_TYPE["__reschedule__"] = 4096] = "__reschedule__";
303
+ STATE_TYPE[STATE_TYPE["__inherit__"] = 4] = "__inherit__";
304
+ STATE_TYPE[STATE_TYPE["__triggerConcurrent__"] = 8] = "__triggerConcurrent__";
305
+ STATE_TYPE[STATE_TYPE["__triggerConcurrentForce__"] = 16] = "__triggerConcurrentForce__";
306
+ STATE_TYPE[STATE_TYPE["__triggerSync__"] = 32] = "__triggerSync__";
307
+ STATE_TYPE[STATE_TYPE["__triggerSyncForce__"] = 64] = "__triggerSyncForce__";
308
+ STATE_TYPE[STATE_TYPE["__unmount__"] = 128] = "__unmount__";
309
+ STATE_TYPE[STATE_TYPE["__hmr__"] = 256] = "__hmr__";
310
+ STATE_TYPE[STATE_TYPE["__retrigger__"] = 512] = "__retrigger__";
311
+ STATE_TYPE[STATE_TYPE["__reschedule__"] = 1024] = "__reschedule__";
312
312
  })(exports.STATE_TYPE || (exports.STATE_TYPE = {}));
313
313
 
314
314
  exports.PATCH_TYPE = void 0;
@@ -918,7 +918,7 @@ function requireIndex_development_1 () {
918
918
  enableSyncFlush$1.current = stack.pop();
919
919
  };
920
920
 
921
- var currentRunningFiber$5 = react.__my_react_internal__.currentRunningFiber, currentScheduler$f = react.__my_react_internal__.currentScheduler, currentScopeFiber$2 = react.__my_react_internal__.currentScopeFiber, currentError$1 = react.__my_react_internal__.currentError, currentCallingFiber$1 = react.__my_react_internal__.currentCallingFiber;
921
+ var currentRunningFiber$5 = react.__my_react_internal__.currentRunningFiber, currentScheduler$g = 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;
922
922
  var safeCall = function (action) {
923
923
  var args = [];
924
924
  for (var _i = 1; _i < arguments.length; _i++) {
@@ -928,8 +928,8 @@ function requireIndex_development_1 () {
928
928
  return action.call.apply(action, __spreadArray([null], args, false));
929
929
  }
930
930
  catch (e) {
931
- 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$2.current || currentRunningFiber$5.current;
932
- var renderScheduler = currentScheduler$f.current;
931
+ 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;
932
+ var renderScheduler = currentScheduler$g.current;
933
933
  currentError$1.current = currentError$1.current || e;
934
934
  renderScheduler.dispatchError({ fiber: fiber, error: currentError$1.current });
935
935
  }
@@ -949,7 +949,7 @@ function requireIndex_development_1 () {
949
949
  return fallback();
950
950
  }
951
951
  else {
952
- var renderScheduler = currentScheduler$f.current;
952
+ var renderScheduler = currentScheduler$g.current;
953
953
  currentError$1.current = currentError$1.current || e;
954
954
  renderScheduler.dispatchError({ fiber: fiber, error: currentError$1.current });
955
955
  }
@@ -964,12 +964,12 @@ function requireIndex_development_1 () {
964
964
  for (var _i = 1; _i < arguments.length; _i++) {
965
965
  args[_i - 1] = arguments[_i];
966
966
  }
967
- currentScopeFiber$2.current = fiber;
967
+ currentScopeFiber$1.current = fiber;
968
968
  try {
969
969
  return action.call.apply(action, __spreadArray([null], args, false));
970
970
  }
971
971
  finally {
972
- currentScopeFiber$2.current = null;
972
+ currentScopeFiber$1.current = null;
973
973
  }
974
974
  };
975
975
  var safeCallWithSync = function (action) {
@@ -982,8 +982,8 @@ function requireIndex_development_1 () {
982
982
  return action.call.apply(action, __spreadArray([null], args, false));
983
983
  }
984
984
  catch (e) {
985
- 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$2.current || currentRunningFiber$5.current;
986
- var renderScheduler = currentScheduler$f.current;
985
+ 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;
986
+ var renderScheduler = currentScheduler$g.current;
987
987
  currentError$1.current = currentError$1.current || e;
988
988
  renderScheduler.dispatchError({ fiber: fiber, error: currentError$1.current });
989
989
  }
@@ -992,7 +992,7 @@ function requireIndex_development_1 () {
992
992
  }
993
993
  };
994
994
 
995
- var currentScheduler$e = react.__my_react_internal__.currentScheduler, currentRunningFiber$4 = react.__my_react_internal__.currentRunningFiber, currentScopeFiber$1 = react.__my_react_internal__.currentScopeFiber, currentCallingFiber = react.__my_react_internal__.currentCallingFiber;
995
+ var currentScheduler$f = react.__my_react_internal__.currentScheduler, currentRunningFiber$4 = react.__my_react_internal__.currentRunningFiber, currentScopeFiber = react.__my_react_internal__.currentScopeFiber, currentCallingFiber = react.__my_react_internal__.currentCallingFiber;
996
996
  var enableOptimizeTreeLog = react.__my_react_shared__.enableOptimizeTreeLog;
997
997
  var typeColor = {
998
998
  normal: "rgba(10, 190, 235, 0.8)",
@@ -1047,9 +1047,9 @@ function requireIndex_development_1 () {
1047
1047
  for (var _i = 0; _i < arguments.length; _i++) {
1048
1048
  args[_i] = arguments[_i];
1049
1049
  }
1050
- var renderScheduler = currentScheduler$e.current;
1050
+ var renderScheduler = currentScheduler$f.current;
1051
1051
  var startWithPlain = typeof args[0] === "string";
1052
- var renderFiber = warnFiber || (currentCallingFiber === null || currentCallingFiber === void 0 ? void 0 : currentCallingFiber[(currentCallingFiber === null || currentCallingFiber === void 0 ? void 0 : currentCallingFiber.length) - 1]) || currentScopeFiber$1.current || currentRunningFiber$4.current;
1052
+ var renderFiber = warnFiber || (currentCallingFiber === null || currentCallingFiber === void 0 ? void 0 : currentCallingFiber[(currentCallingFiber === null || currentCallingFiber === void 0 ? void 0 : currentCallingFiber.length) - 1]) || currentScopeFiber.current || currentRunningFiber$4.current;
1053
1053
  renderFiber && fiberWarn.apply(void 0, __spreadArray([renderFiber], args, false));
1054
1054
  var treeLog = renderFiber ? renderScheduler.getFiberTree(renderFiber) : "";
1055
1055
  if (enableFiberForLog.current && renderFiber) {
@@ -1084,9 +1084,9 @@ function requireIndex_development_1 () {
1084
1084
  for (var _i = 0; _i < arguments.length; _i++) {
1085
1085
  args[_i] = arguments[_i];
1086
1086
  }
1087
- var renderScheduler = currentScheduler$e.current;
1087
+ var renderScheduler = currentScheduler$f.current;
1088
1088
  var startWithPlain = typeof args[0] === "string";
1089
- var renderFiber = errorFiber || (currentCallingFiber === null || currentCallingFiber === void 0 ? void 0 : currentCallingFiber[(currentCallingFiber === null || currentCallingFiber === void 0 ? void 0 : currentCallingFiber.length) - 1]) || currentScopeFiber$1.current || currentRunningFiber$4.current;
1089
+ var renderFiber = errorFiber || (currentCallingFiber === null || currentCallingFiber === void 0 ? void 0 : currentCallingFiber[(currentCallingFiber === null || currentCallingFiber === void 0 ? void 0 : currentCallingFiber.length) - 1]) || currentScopeFiber.current || currentRunningFiber$4.current;
1090
1090
  renderFiber && fiberError.apply(void 0, __spreadArray([renderFiber], args, false));
1091
1091
  var treeLog = renderFiber ? renderScheduler.getFiberTree(renderFiber) : "";
1092
1092
  if (enableFiberForLog.current && renderFiber) {
@@ -1328,7 +1328,7 @@ function requireIndex_development_1 () {
1328
1328
  for (var _i = 2; _i < arguments.length; _i++) {
1329
1329
  args[_i - 2] = arguments[_i];
1330
1330
  }
1331
- var renderScheduler = currentScheduler$e.current;
1331
+ var renderScheduler = currentScheduler$f.current;
1332
1332
  var tree = renderScheduler.getFiberTree(fiber);
1333
1333
  if ((_b = warnMap === null || warnMap === void 0 ? void 0 : warnMap[tree]) === null || _b === void 0 ? void 0 : _b[key])
1334
1334
  return;
@@ -1344,7 +1344,7 @@ function requireIndex_development_1 () {
1344
1344
  for (var _i = 2; _i < arguments.length; _i++) {
1345
1345
  args[_i - 2] = arguments[_i];
1346
1346
  }
1347
- var renderScheduler = currentScheduler$e.current;
1347
+ var renderScheduler = currentScheduler$f.current;
1348
1348
  var tree = renderScheduler.getFiberTree(fiber);
1349
1349
  if ((_b = errorMap === null || errorMap === void 0 ? void 0 : errorMap[tree]) === null || _b === void 0 ? void 0 : _b[key])
1350
1350
  return;
@@ -1595,7 +1595,7 @@ function requireIndex_development_1 () {
1595
1595
  }
1596
1596
  };
1597
1597
 
1598
- var currentRunningFiber$3 = react.__my_react_internal__.currentRunningFiber, currentScheduler$d = react.__my_react_internal__.currentScheduler;
1598
+ var currentRunningFiber$3 = react.__my_react_internal__.currentRunningFiber, currentScheduler$e = react.__my_react_internal__.currentScheduler;
1599
1599
  var dispatchHook = function (params) {
1600
1600
  var fiber = currentRunningFiber$3.current;
1601
1601
  if (!fiber) {
@@ -1685,7 +1685,7 @@ function requireIndex_development_1 () {
1685
1685
  }
1686
1686
  };
1687
1687
  var initScheduler = function () {
1688
- var scheduler = currentScheduler$d.current;
1688
+ var scheduler = currentScheduler$e.current;
1689
1689
  scheduler.getFiberTree = getFiberTree;
1690
1690
  scheduler.readPromise = readPromise;
1691
1691
  scheduler.readContext = readContext;
@@ -1926,20 +1926,19 @@ function requireIndex_development_1 () {
1926
1926
 
1927
1927
  /* eslint-disable max-lines */
1928
1928
  var enableDebugFiled$7 = react.__my_react_shared__.enableDebugFiled;
1929
- var currentScheduler$c = react.__my_react_internal__.currentScheduler;
1929
+ var currentScheduler$d = react.__my_react_internal__.currentScheduler;
1930
1930
  // TODO 整合
1931
1931
  var processClassComponentUpdateQueue = function (renderDispatch, fiber, enableTaskPriority) {
1932
1932
  if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__unmount__))
1933
1933
  return;
1934
1934
  if (myreactSharedExports.exclude(fiber.type, exports.NODE_TYPE.__class__))
1935
1935
  throw new Error("[@my-react/react] current fiber is not a class component, look like a bug for @my-react");
1936
- var renderScheduler = currentScheduler$c.current;
1936
+ var renderScheduler = currentScheduler$d.current;
1937
1937
  var allQueue = fiber.updateQueue;
1938
1938
  var typedFiber = fiber;
1939
1939
  var node = allQueue === null || allQueue === void 0 ? void 0 : allQueue.head;
1940
1940
  var needUpdate = true;
1941
1941
  var isSync = false;
1942
- var isSkip = true;
1943
1942
  var isForce = false;
1944
1943
  var isImmediate = false;
1945
1944
  var isRetrigger = false;
@@ -1972,7 +1971,6 @@ function requireIndex_development_1 () {
1972
1971
  },
1973
1972
  });
1974
1973
  isSync = isSync || updater.isSync;
1975
- isSkip = isSkip && updater.isSkip;
1976
1974
  isForce = isForce || updater.isForce;
1977
1975
  isImmediate = isImmediate || updater.isImmediate;
1978
1976
  isRetrigger = isRetrigger || updater.isRetrigger;
@@ -1990,17 +1988,11 @@ function requireIndex_development_1 () {
1990
1988
  }
1991
1989
  }
1992
1990
  else if (updater.isSync) {
1993
- if (updater.type !== myreactSharedExports.UpdateQueueType.hmr && updater.type !== myreactSharedExports.UpdateQueueType.trigger && updater.type !== myreactSharedExports.UpdateQueueType.suspense) {
1994
- {
1995
- console.error("[@my-react/react] current update not valid, look like a bug for @my-react", node);
1996
- }
1997
- }
1998
1991
  allQueue.delete(node);
1999
1992
  {
2000
1993
  processedNodes.push(updater);
2001
1994
  }
2002
1995
  isSync = isSync || updater.isSync;
2003
- isSkip = isSkip && updater.isSkip;
2004
1996
  isForce = isForce || updater.isForce;
2005
1997
  isImmediate = isImmediate || updater.isImmediate;
2006
1998
  isRetrigger = isRetrigger || updater.isRetrigger;
@@ -2037,7 +2029,6 @@ function requireIndex_development_1 () {
2037
2029
  needUpdate: needUpdate,
2038
2030
  nodes: processedNodes,
2039
2031
  isSync: isSync,
2040
- isSkip: isSkip,
2041
2032
  isForce: isForce,
2042
2033
  isImmediate: isImmediate,
2043
2034
  isRetrigger: isRetrigger,
@@ -2067,7 +2058,6 @@ function requireIndex_development_1 () {
2067
2058
  },
2068
2059
  });
2069
2060
  isSync = isSync || updater.isSync;
2070
- isSkip = isSkip && updater.isSkip;
2071
2061
  isForce = isForce || updater.isForce;
2072
2062
  isImmediate = isImmediate || updater.isImmediate;
2073
2063
  isRetrigger = isRetrigger || updater.isRetrigger;
@@ -2085,17 +2075,11 @@ function requireIndex_development_1 () {
2085
2075
  }
2086
2076
  }
2087
2077
  else {
2088
- if (updater.type !== myreactSharedExports.UpdateQueueType.hmr && updater.type !== myreactSharedExports.UpdateQueueType.trigger && updater.type !== myreactSharedExports.UpdateQueueType.suspense) {
2089
- {
2090
- console.error("[@my-react/react] current update not valid, look like a bug for @my-react", node);
2091
- }
2092
- }
2093
2078
  allQueue.delete(node);
2094
2079
  {
2095
2080
  processedNodes.push(updater);
2096
2081
  }
2097
2082
  isSync = isSync || updater.isSync;
2098
- isSkip = isSkip && updater.isSkip;
2099
2083
  isForce = isForce || updater.isForce;
2100
2084
  isImmediate = isImmediate || updater.isImmediate;
2101
2085
  isRetrigger = isRetrigger || updater.isRetrigger;
@@ -2127,7 +2111,6 @@ function requireIndex_development_1 () {
2127
2111
  needUpdate: needUpdate,
2128
2112
  nodes: processedNodes,
2129
2113
  isSync: isSync,
2130
- isSkip: isSkip,
2131
2114
  isForce: isForce,
2132
2115
  isImmediate: isImmediate,
2133
2116
  isRetrigger: isRetrigger,
@@ -2143,13 +2126,12 @@ function requireIndex_development_1 () {
2143
2126
  if (myreactSharedExports.exclude(fiber.type, exports.NODE_TYPE.__function__)) {
2144
2127
  throw new Error("[@my-react/react] current fiber is not a function component, look like a bug for @my-react");
2145
2128
  }
2146
- var renderScheduler = currentScheduler$c.current;
2129
+ var renderScheduler = currentScheduler$d.current;
2147
2130
  var allQueue = fiber.updateQueue;
2148
2131
  var typedFiber = fiber;
2149
2132
  var node = allQueue === null || allQueue === void 0 ? void 0 : allQueue.head;
2150
2133
  var needUpdate = false;
2151
2134
  var isSync = false;
2152
- var isSkip = true;
2153
2135
  var isForce = false;
2154
2136
  var isImmediate = false;
2155
2137
  var isRetrigger = false;
@@ -2190,7 +2172,6 @@ function requireIndex_development_1 () {
2190
2172
  },
2191
2173
  });
2192
2174
  isSync = isSync || updater.isSync;
2193
- isSkip = isSkip && updater.isSkip;
2194
2175
  isForce = isForce || updater.isForce;
2195
2176
  isImmediate = isImmediate || updater.isImmediate;
2196
2177
  isRetrigger = isRetrigger || updater.isRetrigger;
@@ -2211,18 +2192,12 @@ function requireIndex_development_1 () {
2211
2192
  }
2212
2193
  }
2213
2194
  else if (updater.isSync) {
2214
- if (updater.type !== myreactSharedExports.UpdateQueueType.hmr && updater.type !== myreactSharedExports.UpdateQueueType.trigger && updater.type !== myreactSharedExports.UpdateQueueType.suspense) {
2215
- {
2216
- console.error("[@my-react/react] current update not valid, look like a bug for @my-react", node);
2217
- }
2218
- }
2219
2195
  allQueue.delete(node);
2220
2196
  {
2221
2197
  processedNodes.push(updater);
2222
2198
  }
2223
2199
  var payLoad = updater.payLoad;
2224
2200
  isSync = isSync || updater.isSync;
2225
- isSkip = isSkip && updater.isSkip;
2226
2201
  isForce = isForce || updater.isForce;
2227
2202
  isImmediate = isImmediate || updater.isImmediate;
2228
2203
  isRetrigger = isRetrigger || updater.isRetrigger;
@@ -2259,7 +2234,6 @@ function requireIndex_development_1 () {
2259
2234
  needUpdate: needUpdate,
2260
2235
  nodes: processedNodes,
2261
2236
  isSync: isSync,
2262
- isSkip: isSkip,
2263
2237
  isForce: isForce,
2264
2238
  isImmediate: isImmediate,
2265
2239
  isRetrigger: isRetrigger,
@@ -2302,7 +2276,6 @@ function requireIndex_development_1 () {
2302
2276
  },
2303
2277
  });
2304
2278
  isSync = isSync || updater.isSync;
2305
- isSkip = isSkip && updater.isSkip;
2306
2279
  isForce = isForce || updater.isForce;
2307
2280
  isImmediate = isImmediate || updater.isImmediate;
2308
2281
  isRetrigger = isRetrigger || updater.isRetrigger;
@@ -2323,18 +2296,12 @@ function requireIndex_development_1 () {
2323
2296
  }
2324
2297
  }
2325
2298
  else {
2326
- if (updater.type !== myreactSharedExports.UpdateQueueType.hmr && updater.type !== myreactSharedExports.UpdateQueueType.trigger && updater.type !== myreactSharedExports.UpdateQueueType.suspense) {
2327
- {
2328
- console.error("[@my-react/react] current update not valid, look like a bug for @my-react", node);
2329
- }
2330
- }
2331
2299
  allQueue.delete(node);
2332
2300
  {
2333
2301
  processedNodes.push(updater);
2334
2302
  }
2335
2303
  var payLoad = updater.payLoad;
2336
2304
  isSync = isSync || updater.isSync;
2337
- isSkip = isSkip && updater.isSkip;
2338
2305
  isForce = isForce || updater.isForce;
2339
2306
  isImmediate = isImmediate || updater.isImmediate;
2340
2307
  isRetrigger = isRetrigger || updater.isRetrigger;
@@ -2366,7 +2333,6 @@ function requireIndex_development_1 () {
2366
2333
  needUpdate: needUpdate,
2367
2334
  nodes: processedNodes,
2368
2335
  isSync: isSync,
2369
- isSkip: isSkip,
2370
2336
  isForce: isForce,
2371
2337
  isImmediate: isImmediate,
2372
2338
  isRetrigger: isRetrigger,
@@ -2383,7 +2349,6 @@ function requireIndex_development_1 () {
2383
2349
  var node = allQueue === null || allQueue === void 0 ? void 0 : allQueue.head;
2384
2350
  var needUpdate = true;
2385
2351
  var isSync = false;
2386
- var isSkip = true;
2387
2352
  var isForce = false;
2388
2353
  var isImmediate = false;
2389
2354
  var isRetrigger = false;
@@ -2392,18 +2357,12 @@ function requireIndex_development_1 () {
2392
2357
  while (node) {
2393
2358
  var updater = node.value;
2394
2359
  var nextNode = node.next;
2395
- if (updater.type === myreactSharedExports.UpdateQueueType.hook || updater.type === myreactSharedExports.UpdateQueueType.component) {
2396
- {
2397
- console.error("[@my-react/react] current update not valid, look like a bug for @my-react", node);
2398
- }
2399
- }
2400
2360
  allQueue.delete(node);
2401
2361
  {
2402
2362
  processedNodes.push(updater);
2403
2363
  }
2404
2364
  var payLoad = updater.payLoad;
2405
2365
  isSync = isSync || updater.isSync;
2406
- isSkip = isSkip && updater.isSkip;
2407
2366
  isForce = isForce || updater.isForce;
2408
2367
  isImmediate = isImmediate || updater.isImmediate;
2409
2368
  isRetrigger = isRetrigger || updater.isRetrigger;
@@ -2430,7 +2389,6 @@ function requireIndex_development_1 () {
2430
2389
  needUpdate: needUpdate,
2431
2390
  nodes: processedNodes,
2432
2391
  isSync: isSync,
2433
- isSkip: isSkip,
2434
2392
  isForce: isForce,
2435
2393
  isImmediate: isImmediate,
2436
2394
  isRetrigger: isRetrigger,
@@ -2456,6 +2414,27 @@ function requireIndex_development_1 () {
2456
2414
  syncComponentStateToFiber(fiber);
2457
2415
  };
2458
2416
 
2417
+ var initClassInstance = function (instance) {
2418
+ var field = getInstanceFieldByInstance(instance);
2419
+ if (!field)
2420
+ throw new Error("[@my-react/react] can not find instance field for component, look like a bug for @my-react");
2421
+ var typedField = field;
2422
+ typedField.isMounted = false;
2423
+ };
2424
+ var mountClassInstance = function (instance) {
2425
+ var field = getInstanceFieldByInstance(instance);
2426
+ if (!field)
2427
+ throw new Error("[@my-react/react] can not find instance field for component, look like a bug for @my-react");
2428
+ var typedField = field;
2429
+ typedField.isMounted = true;
2430
+ };
2431
+ var getClassInstanceFieldByInstance = function (instance) {
2432
+ var field = getInstanceFieldByInstance(instance);
2433
+ if (!field)
2434
+ throw new Error("[@my-react/react] can not find instance field for component, look like a bug for @my-react");
2435
+ return field;
2436
+ };
2437
+
2459
2438
  /* eslint-disable max-lines */
2460
2439
  var enableLegacyLifeCycle = react.__my_react_shared__.enableLegacyLifeCycle;
2461
2440
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
@@ -2517,6 +2496,7 @@ function requireIndex_development_1 () {
2517
2496
  instance.context = context;
2518
2497
  fiber.instance = instance;
2519
2498
  initInstance(instance);
2499
+ initClassInstance(instance);
2520
2500
  setOwnerForInstance(instance, fiber);
2521
2501
  setContextForInstance(instance, providerFiber);
2522
2502
  fiber.pendingState = instance.state;
@@ -2545,12 +2525,13 @@ function requireIndex_development_1 () {
2545
2525
  var processComponentDidMountOnMount = function (renderDispatch, fiber) {
2546
2526
  var typedInstance = fiber.instance;
2547
2527
  var effect = getInstanceEffectState(typedInstance);
2548
- if (typedInstance.componentDidMount && myreactSharedExports.exclude(effect, myreactSharedExports.Effect_TYPE.__effect__)) {
2528
+ if (myreactSharedExports.exclude(effect, myreactSharedExports.Effect_TYPE.__effect__)) {
2549
2529
  setEffectForInstance(typedInstance, myreactSharedExports.Effect_TYPE.__effect__);
2550
2530
  renderDispatch.pendingLayoutEffect(fiber, function invokeComponentDidMountOnInstance() {
2551
2531
  var _a;
2552
2532
  setEffectForInstance(typedInstance, myreactSharedExports.Effect_TYPE.__initial__);
2553
2533
  (_a = typedInstance.componentDidMount) === null || _a === void 0 ? void 0 : _a.call(typedInstance);
2534
+ mountClassInstance(typedInstance);
2554
2535
  });
2555
2536
  }
2556
2537
  };
@@ -2803,6 +2784,9 @@ function requireIndex_development_1 () {
2803
2784
  };
2804
2785
  var processClassComponentUnmount = function (renderDispatch, fiber) {
2805
2786
  var typedInstance = fiber.instance;
2787
+ if (!typedInstance)
2788
+ return;
2789
+ var classField = getInstanceFieldByInstance(typedInstance);
2806
2790
  safeCallWithCurrentFiber({
2807
2791
  fiber: fiber,
2808
2792
  action: function safeCallInstanceUnmountListener() {
@@ -2814,26 +2798,20 @@ function requireIndex_development_1 () {
2814
2798
  fiber: fiber,
2815
2799
  action: function safeCallComponentWillUnmountOnInstance() {
2816
2800
  var _a;
2817
- (_a = typedInstance === null || typedInstance === void 0 ? void 0 : typedInstance.componentWillUnmount) === null || _a === void 0 ? void 0 : _a.call(typedInstance);
2801
+ if (classField.isMounted) {
2802
+ (_a = typedInstance === null || typedInstance === void 0 ? void 0 : typedInstance.componentWillUnmount) === null || _a === void 0 ? void 0 : _a.call(typedInstance);
2803
+ }
2818
2804
  },
2819
2805
  });
2820
2806
  };
2821
2807
 
2822
2808
  var currentComponentFiber$4 = react.__my_react_internal__.currentComponentFiber, MyReactInternalInstance$4 = react.__my_react_internal__.MyReactInternalInstance;
2823
- var enableLoopFromRoot$1 = react.__my_react_shared__.enableLoopFromRoot;
2824
2809
  var processProvider = function (renderDispatch, fiber) {
2825
2810
  if (renderDispatch.isAppMounted) {
2826
- var prevProps_1 = fiber.memoizedProps.value;
2827
- var nextProps_1 = fiber.pendingProps.value;
2828
- if (!myreactSharedExports.isNormalEquals(prevProps_1, nextProps_1)) {
2829
- if (enableLoopFromRoot$1.current) {
2830
- prepareUpdateAllDependence(renderDispatch, fiber, prevProps_1, nextProps_1);
2831
- }
2832
- else {
2833
- renderDispatch.pendingLayoutEffect(fiber, function invokePrepareUpdateAllDependenceFromRoot() {
2834
- prepareUpdateAllDependenceFromRoot(renderDispatch, fiber, prevProps_1, nextProps_1);
2835
- });
2836
- }
2811
+ var prevProps = fiber.memoizedProps.value;
2812
+ var nextProps = fiber.pendingProps.value;
2813
+ if (!myreactSharedExports.isNormalEquals(prevProps, nextProps)) {
2814
+ prepareUpdateAllDependence(renderDispatch, fiber, prevProps, nextProps);
2837
2815
  }
2838
2816
  }
2839
2817
  };
@@ -2868,7 +2846,7 @@ function requireIndex_development_1 () {
2868
2846
  return children;
2869
2847
  };
2870
2848
 
2871
- var currentHookTreeNode$2 = react.__my_react_internal__.currentHookTreeNode, currentHookNodeIndex$2 = react.__my_react_internal__.currentHookNodeIndex, currentScheduler$b = react.__my_react_internal__.currentScheduler;
2849
+ var currentHookTreeNode$2 = react.__my_react_internal__.currentHookTreeNode, currentHookNodeIndex$2 = react.__my_react_internal__.currentHookNodeIndex, currentScheduler$c = react.__my_react_internal__.currentScheduler;
2872
2850
  var processFunction = function (fiber) {
2873
2851
  var _a;
2874
2852
  currentHookTreeNode$2.current = (_a = fiber.hookList) === null || _a === void 0 ? void 0 : _a.head;
@@ -2887,7 +2865,7 @@ function requireIndex_development_1 () {
2887
2865
  }
2888
2866
  catch (e) {
2889
2867
  if (myreactSharedExports.isPromise(e)) {
2890
- re = (_b = (_a = currentScheduler$b.current) === null || _a === void 0 ? void 0 : _a.dispatchPromise) === null || _b === void 0 ? void 0 : _b.call(_a, { fiber: fiber, promise: e });
2868
+ re = (_b = (_a = currentScheduler$c.current) === null || _a === void 0 ? void 0 : _a.dispatchPromise) === null || _b === void 0 ? void 0 : _b.call(_a, { fiber: fiber, promise: e });
2891
2869
  }
2892
2870
  else {
2893
2871
  throw e;
@@ -2908,7 +2886,7 @@ function requireIndex_development_1 () {
2908
2886
  }
2909
2887
  catch (e) {
2910
2888
  if (myreactSharedExports.isPromise(e)) {
2911
- re = (_b = (_a = currentScheduler$b.current) === null || _a === void 0 ? void 0 : _a.dispatchPromise) === null || _b === void 0 ? void 0 : _b.call(_a, { fiber: fiber, promise: e });
2889
+ re = (_b = (_a = currentScheduler$c.current) === null || _a === void 0 ? void 0 : _a.dispatchPromise) === null || _b === void 0 ? void 0 : _b.call(_a, { fiber: fiber, promise: e });
2912
2890
  }
2913
2891
  else {
2914
2892
  throw e;
@@ -2941,8 +2919,8 @@ function requireIndex_development_1 () {
2941
2919
  return false;
2942
2920
  };
2943
2921
 
2944
- var currentScheduler$a = react.__my_react_internal__.currentScheduler;
2945
- var loadLazy = function (renderDispatch, fiber, typedElementType) { return __awaiter(void 0, void 0, void 0, function () {
2922
+ var currentScheduler$b = react.__my_react_internal__.currentScheduler;
2923
+ var loadLazy = function (renderDispatch, typedElementType) { return __awaiter(void 0, void 0, void 0, function () {
2946
2924
  var loadedPromise, loaded, render, e_1;
2947
2925
  return __generator(this, function (_a) {
2948
2926
  switch (_a.label) {
@@ -2955,9 +2933,9 @@ function requireIndex_development_1 () {
2955
2933
  typedElementType._loading = true;
2956
2934
  loadedPromise = typedElementType.loader();
2957
2935
  if (!myreactSharedExports.isPromise(loadedPromise)) {
2958
- devWarnWithFiber(fiber, "@my-react lazy() must return a promise");
2936
+ console.warn("[@my-react/react] lazy() must return a promise, but got", loadedPromise);
2959
2937
  }
2960
- return [4 /*yield*/, loadedPromise];
2938
+ return [4 /*yield*/, Promise.resolve(loadedPromise)];
2961
2939
  case 2:
2962
2940
  loaded = _a.sent();
2963
2941
  render = typeof loaded === "object" && (typeof (loaded === null || loaded === void 0 ? void 0 : loaded.default) === "function" || typeof (loaded === null || loaded === void 0 ? void 0 : loaded.default) === "object") ? loaded.default : loaded;
@@ -2979,31 +2957,50 @@ function requireIndex_development_1 () {
2979
2957
  var _a, _b;
2980
2958
  var typedElementType = fiber.elementType;
2981
2959
  if (typedElementType._error) {
2982
- (_b = (_a = currentScheduler$a.current).dispatchError) === null || _b === void 0 ? void 0 : _b.call(_a, { fiber: fiber, error: typedElementType._error });
2960
+ (_b = (_a = currentScheduler$b.current).dispatchError) === null || _b === void 0 ? void 0 : _b.call(_a, { fiber: fiber, error: typedElementType._error });
2983
2961
  return null;
2984
2962
  }
2985
2963
  if (typedElementType._loaded === true) {
2986
2964
  var render = typedElementType.render;
2987
2965
  return WrapperByLazyScope(react.createElement(render, fiber.pendingProps));
2988
2966
  }
2989
- else if (typedElementType._loading === false) {
2967
+ typedElementType._list = typedElementType._list || new Set();
2968
+ typedElementType._list.add(fiber);
2969
+ var suspenseFiber = renderDispatch.resolveSuspenseFiber(fiber);
2970
+ if (suspenseFiber) {
2971
+ var suspenseField = getInstanceFieldByInstance(suspenseFiber.instance);
2972
+ suspenseField.asyncLoadList.uniPush(typedElementType);
2973
+ renderDispatch.pendingSuspenseFiberArray.uniPush(suspenseFiber);
2974
+ return null;
2975
+ }
2976
+ else {
2977
+ if (typedElementType._loading)
2978
+ return null;
2990
2979
  typedElementType._loading = true;
2991
- renderDispatch.pendingAsyncLoadList = renderDispatch.pendingAsyncLoadList || new myreactSharedExports.ListTree();
2992
- if (!renderDispatch.runtimeFiber.visibleFiber) {
2993
- var visibleFiber = renderDispatch.resolveSuspenseFiber(fiber);
2994
- if (visibleFiber) {
2995
- renderDispatch.runtimeFiber.visibleFiber = visibleFiber;
2996
- renderDispatch.pendingAsyncLoadList.push(fiber);
2997
- }
2998
- else {
2999
- throw new Error("[@my-react/react] lazy component should be used in a suspense boundary");
3000
- }
3001
- }
3002
- else {
3003
- renderDispatch.pendingAsyncLoadList.push(fiber);
3004
- }
2980
+ var renderScheduler_1 = currentScheduler$b.current;
2981
+ renderDispatch.processLazy(typedElementType).then(function () {
2982
+ fiber.state = myreactSharedExports.STATE_TYPE.__triggerSync__;
2983
+ typedElementType._list.delete(fiber);
2984
+ var updater = {
2985
+ type: myreactSharedExports.UpdateQueueType.lazy,
2986
+ trigger: fiber,
2987
+ isSync: true,
2988
+ isForce: true,
2989
+ payLoad: typedElementType,
2990
+ };
2991
+ renderScheduler_1.dispatchState(updater);
2992
+ });
2993
+ return null;
3005
2994
  }
3006
- return null;
2995
+ };
2996
+
2997
+ var initSuspenseInstance = function (instance) {
2998
+ var field = getInstanceFieldByInstance(instance);
2999
+ if (!field)
3000
+ throw new Error("[@my-react/react] can not get field for instance, this is a bug for @my-react");
3001
+ var typedField = field;
3002
+ typedField.isHidden = false;
3003
+ typedField.asyncLoadList = new myreactSharedExports.UniqueArray();
3007
3004
  };
3008
3005
 
3009
3006
  var MyReactInternalInstance$3 = react.__my_react_internal__.MyReactInternalInstance;
@@ -3012,6 +3009,7 @@ function requireIndex_development_1 () {
3012
3009
  fiber.instance = fiber.instance || new MyReactInternalInstance$3();
3013
3010
  !isUpdate && initInstance(fiber.instance);
3014
3011
  !isUpdate && initVisibleInstance(fiber.instance);
3012
+ !isUpdate && initSuspenseInstance(fiber.instance);
3015
3013
  !isUpdate && setOwnerForInstance(fiber.instance, fiber);
3016
3014
  var instanceField = getInstanceFieldByInstance(fiber.instance);
3017
3015
  var children = WrapperBySuspenseScope(instanceField.isHidden ? fiber.pendingProps.fallback : fiber.pendingProps.children);
@@ -3163,6 +3161,9 @@ function requireIndex_development_1 () {
3163
3161
  nextWorkCommon(renderDispatch, fiber, children);
3164
3162
  }
3165
3163
  else {
3164
+ var field = getClassInstanceFieldByInstance(fiber.instance);
3165
+ if (!field.isMounted)
3166
+ return;
3166
3167
  var _a = processClassComponentUpdate(renderDispatch, fiber), updated = _a.updated, children = _a.children;
3167
3168
  if (updated)
3168
3169
  nextWorkCommon(renderDispatch, fiber, children);
@@ -3303,7 +3304,7 @@ function requireIndex_development_1 () {
3303
3304
  fiber.state = myreactSharedExports.STATE_TYPE.__stable__;
3304
3305
  }
3305
3306
  else {
3306
- fiber.state = myreactSharedExports.STATE_TYPE.__inherit__;
3307
+ fiber.state = myreactSharedExports.STATE_TYPE.__triggerSync__;
3307
3308
  }
3308
3309
  if (fiber.child)
3309
3310
  return fiber.child;
@@ -3344,7 +3345,7 @@ function requireIndex_development_1 () {
3344
3345
  fiber.state = myreactSharedExports.STATE_TYPE.__stable__;
3345
3346
  }
3346
3347
  else {
3347
- fiber.state = myreactSharedExports.STATE_TYPE.__inherit__;
3348
+ fiber.state = myreactSharedExports.STATE_TYPE.__triggerSync__;
3348
3349
  }
3349
3350
  if (fiber.child)
3350
3351
  return fiber.child;
@@ -3359,47 +3360,6 @@ function requireIndex_development_1 () {
3359
3360
  renderDispatch.generateCommitList(nextFiber);
3360
3361
  return null;
3361
3362
  };
3362
- var performToNextFiberFromTrigger = function (renderDispatch, fiber) {
3363
- if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__unmount__) || renderDispatch.isAppCrashed)
3364
- return null;
3365
- if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__stable__) && fiber.state !== myreactSharedExports.STATE_TYPE.__stable__) {
3366
- devErrorWithFiber(fiber, "[@my-react/react] current fiber state not valid, look like a bug for @my-react");
3367
- }
3368
- if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__create__ |
3369
- myreactSharedExports.STATE_TYPE.__inherit__ |
3370
- myreactSharedExports.STATE_TYPE.__triggerSync__ |
3371
- myreactSharedExports.STATE_TYPE.__triggerSyncForce__ |
3372
- myreactSharedExports.STATE_TYPE.__triggerConcurrent__ |
3373
- myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__ |
3374
- myreactSharedExports.STATE_TYPE.__retrigger__ |
3375
- myreactSharedExports.STATE_TYPE.__reschedule__)) {
3376
- fiber.state = myreactSharedExports.remove(fiber.state, myreactSharedExports.STATE_TYPE.__retrigger__);
3377
- currentRunningFiber$2.current = fiber;
3378
- {
3379
- runtimeNextWorkDev(renderDispatch, fiber);
3380
- }
3381
- currentRunningFiber$2.current = null;
3382
- triggerFiberUpdateListener(renderDispatch, fiber);
3383
- if (!myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__retrigger__)) {
3384
- fiber.state = myreactSharedExports.STATE_TYPE.__stable__;
3385
- }
3386
- else {
3387
- fiber.state = myreactSharedExports.STATE_TYPE.__inherit__;
3388
- }
3389
- if (fiber.child)
3390
- return fiber.child;
3391
- }
3392
- var nextFiber = fiber;
3393
- while (nextFiber && nextFiber !== renderDispatch.runtimeFiber.scheduledFiber) {
3394
- renderDispatch.generateCommitList(nextFiber);
3395
- if (nextFiber.sibling)
3396
- return nextFiber.sibling;
3397
- nextFiber = nextFiber.parent;
3398
- }
3399
- if (nextFiber === renderDispatch.runtimeFiber.scheduledFiber)
3400
- renderDispatch.generateCommitList(nextFiber);
3401
- return null;
3402
- };
3403
3363
 
3404
3364
  var defaultGenerateEffectMap = function (fiber, effect, map, option) {
3405
3365
  var list = map.get(fiber) || new myreactSharedExports.ListTree();
@@ -3502,159 +3462,48 @@ function requireIndex_development_1 () {
3502
3462
  var layoutEffect = defaultInvokeLayoutEffect;
3503
3463
  var insertionEffect = defaultInvokeInsertionEffect;
3504
3464
 
3505
- var isErrorBoundariesInstance = function (instance, Component) {
3506
- return typeof instance.componentDidCatch === "function" || typeof Component.getDerivedStateFromError === "function";
3507
- };
3508
- var isErrorBoundariesComponent = function (fiber) {
3509
- if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__class__) && myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__stable__)) {
3510
- var Component = fiber.elementType;
3511
- var typedComponent = Component;
3512
- var typedInstance = fiber.instance;
3513
- return isErrorBoundariesInstance(typedInstance, typedComponent);
3465
+ var defaultReadPromise = function (_promise) {
3466
+ if (_promise.status === "fulfilled") {
3467
+ return _promise.value;
3468
+ }
3469
+ else if (_promise.status === "rejected") {
3470
+ throw _promise.reason;
3471
+ }
3472
+ else {
3473
+ throw _promise;
3514
3474
  }
3515
- return false;
3516
3475
  };
3517
- var defaultResolveErrorBoundaries = function (fiber) {
3476
+ var defaultResolveSuspenseValue = function (fiber) {
3477
+ var _a;
3518
3478
  var parent = fiber.parent;
3519
3479
  while (parent) {
3520
- if (isErrorBoundariesComponent(parent)) {
3521
- return parent;
3480
+ if (myreactSharedExports.include(parent.type, exports.NODE_TYPE.__suspense__)) {
3481
+ return (_a = parent.pendingProps) === null || _a === void 0 ? void 0 : _a["fallback"];
3522
3482
  }
3523
3483
  parent = parent.parent;
3524
3484
  }
3525
3485
  return null;
3526
3486
  };
3527
-
3528
- var currentComponentFiber$2 = react.__my_react_internal__.currentComponentFiber, currentRunningFiber$1 = react.__my_react_internal__.currentRunningFiber, currentScopeFiber = react.__my_react_internal__.currentScopeFiber;
3529
- var enableDebugFiled$5 = react.__my_react_shared__.enableDebugFiled;
3530
- var MAX_UPDATE_COUNT = 25;
3531
- var lastRenderComponentFiber = null;
3532
- var lastRenderComponentTimeStep = null;
3533
- var renderCount = 0;
3534
- var processState = function (renderDispatch, _params) {
3535
- if (enableDebugFiled$5.current) {
3536
- var typedUpdateQueue = _params;
3537
- typedUpdateQueue._debugCreateTime = Date.now();
3538
- typedUpdateQueue._debugType = myreactSharedExports.UpdateQueueType[_params.type];
3539
- }
3540
- var ownerFiber = getInstanceOwnerFiber(_params.trigger);
3541
- if (!renderDispatch)
3542
- return;
3543
- _params.isSkip = !!_params.isSkip;
3544
- _params.isImmediate =
3545
- typeof _params.isImmediate === "boolean"
3546
- ? _params.isImmediate
3547
- : renderDispatch.isAppMounted
3548
- ? !currentScopeFiber.current || !!currentRunningFiber$1.current
3549
- : false;
3550
- _params.isRetrigger = currentRunningFiber$1.current === ownerFiber || !!_params.isRetrigger;
3551
- safeCallWithCurrentFiber({
3552
- fiber: ownerFiber,
3553
- action: function safeCallFiberStateListener() {
3554
- var _a, _b;
3555
- (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberState) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(ownerFiber, _params); });
3556
- },
3557
- });
3558
- var isImmediate = _params.isImmediate;
3559
- _params.isRetrigger;
3560
- if (_params.type === myreactSharedExports.UpdateQueueType.component) {
3561
- if (!ownerFiber || myreactSharedExports.include(ownerFiber.state, myreactSharedExports.STATE_TYPE.__unmount__))
3562
- return;
3563
- if (!exports.syncFlush && currentComponentFiber$2.current) {
3564
- var currentRFiber = currentRunningFiber$1.current;
3565
- var currentCFiber = currentComponentFiber$2.current;
3566
- var now = Date.now();
3567
- if (lastRenderComponentFiber === currentCFiber) {
3568
- if (lastRenderComponentTimeStep && now - lastRenderComponentTimeStep < 4) {
3569
- renderCount++;
3570
- }
3571
- else {
3572
- renderCount = 0;
3573
- }
3574
- }
3575
- else {
3576
- renderCount = 0;
3577
- }
3578
- if (renderCount > MAX_UPDATE_COUNT) {
3579
- renderCount = 0;
3580
- throw new Error("[@my-react/react] look like there are infinity update for current component ".concat(currentComponentFiber$2.current && getElementName(currentComponentFiber$2.current)));
3581
- }
3582
- else if (!isErrorBoundariesComponent(ownerFiber)) {
3583
- var triggeredElementName = getElementName(ownerFiber);
3584
- var currentElementName = getElementName(currentCFiber);
3585
- if (enableLogForCurrentFlowIsRunning.current) {
3586
- onceWarnWithKeyAndFiber(currentRFiber, "updateWhenCurrentFlowIsRunning-".concat(triggeredElementName), "[@my-react/react] trigger an update for ".concat(triggeredElementName, " when current update flow is running, this is a unexpected behavior, please make sure current render function for ").concat(currentElementName, " is a pure function"));
3587
- }
3588
- }
3589
- lastRenderComponentFiber = currentCFiber;
3590
- lastRenderComponentTimeStep = now;
3487
+ var defaultResolveSuspenseFiber = function (fiber) {
3488
+ var parent = fiber.parent;
3489
+ while (parent) {
3490
+ if (myreactSharedExports.include(parent.type, exports.NODE_TYPE.__suspense__)) {
3491
+ return parent;
3591
3492
  }
3592
- var trigger_1 = _params.trigger;
3593
- safeCallWithCurrentFiber({
3594
- fiber: ownerFiber,
3595
- action: function safeCallInstanceStateListener() {
3596
- var _a, _b;
3597
- (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.instanceState) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(trigger_1, ownerFiber, _params); });
3598
- },
3599
- });
3600
- ownerFiber.updateQueue = ownerFiber.updateQueue || new myreactSharedExports.ListTree();
3601
- ownerFiber.updateQueue.push(_params);
3602
- prepareUpdateOnFiber(renderDispatch, ownerFiber, isImmediate);
3493
+ parent = parent.parent;
3603
3494
  }
3604
- else if (_params.type === myreactSharedExports.UpdateQueueType.hook) {
3605
- if (!ownerFiber || myreactSharedExports.include(ownerFiber === null || ownerFiber === void 0 ? void 0 : ownerFiber.state, myreactSharedExports.STATE_TYPE.__unmount__))
3606
- return;
3607
- if (!exports.syncFlush && currentComponentFiber$2.current) {
3608
- var currentRFiber = currentRunningFiber$1.current;
3609
- var currentCFiber = currentComponentFiber$2.current;
3610
- var now = Date.now();
3611
- if (lastRenderComponentFiber === currentCFiber) {
3612
- if (lastRenderComponentTimeStep && now - lastRenderComponentTimeStep < 4) {
3613
- renderCount++;
3614
- }
3615
- else {
3616
- renderCount = 0;
3617
- }
3618
- }
3619
- else {
3620
- renderCount = 0;
3621
- }
3622
- if (renderCount > MAX_UPDATE_COUNT) {
3623
- renderCount = 0;
3624
- throw new Error("[@my-react/react] look like there are infinity update for current component ".concat(currentComponentFiber$2.current && getElementName(currentComponentFiber$2.current)));
3625
- }
3626
- else if (!isErrorBoundariesComponent(ownerFiber)) {
3627
- var triggeredElementName = getElementName(ownerFiber);
3628
- var currentElementName = getElementName(currentCFiber);
3629
- if (enableLogForCurrentFlowIsRunning.current) {
3630
- onceWarnWithKeyAndFiber(currentRFiber, "updateWhenCurrentFlowIsRunning-".concat(triggeredElementName), "[@my-react/react] trigger an update for ".concat(triggeredElementName, " when current update flow is running, this is a unexpected behavior, please make sure current render function for ").concat(currentElementName, " is a pure function"));
3631
- }
3632
- }
3633
- lastRenderComponentFiber = currentCFiber;
3634
- lastRenderComponentTimeStep = now;
3495
+ return null;
3496
+ };
3497
+ var defaultResolveAliveSuspenseFiber = function (fiber) {
3498
+ while (fiber) {
3499
+ if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__suspense__) && myreactSharedExports.exclude(fiber.state, myreactSharedExports.STATE_TYPE.__unmount__)) {
3500
+ return fiber;
3635
3501
  }
3636
- var trigger_2 = _params.trigger;
3637
- safeCallWithCurrentFiber({
3638
- fiber: ownerFiber,
3639
- action: function safeCallHookStateListener() {
3640
- var _a, _b;
3641
- (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.hookState) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(trigger_2, ownerFiber, _params); });
3642
- },
3643
- });
3644
- ownerFiber.updateQueue = ownerFiber.updateQueue || new myreactSharedExports.ListTree();
3645
- ownerFiber.updateQueue.push(_params);
3646
- prepareUpdateOnFiber(renderDispatch, ownerFiber, isImmediate);
3647
- }
3648
- else {
3649
- var ownerFiber_1 = _params.trigger;
3650
- if (!ownerFiber_1 || myreactSharedExports.include(ownerFiber_1.state, myreactSharedExports.STATE_TYPE.__unmount__))
3651
- return;
3652
- ownerFiber_1.updateQueue = ownerFiber_1.updateQueue || new myreactSharedExports.ListTree();
3653
- ownerFiber_1.updateQueue.push(_params);
3654
- prepareUpdateOnFiber(renderDispatch, ownerFiber_1, isImmediate);
3502
+ fiber = fiber.parent;
3655
3503
  }
3656
3504
  };
3657
3505
 
3506
+ var currentScheduler$a = react.__my_react_internal__.currentScheduler;
3658
3507
  var mountLoopAllFromScheduler = function (renderDispatch) {
3659
3508
  while (renderDispatch.runtimeFiber.nextWorkingFiber) {
3660
3509
  renderDispatch.runtimeFiber.retriggerFiber = null;
@@ -3671,117 +3520,134 @@ function requireIndex_development_1 () {
3671
3520
  mountLoopAllFromScheduler(renderDispatch);
3672
3521
  };
3673
3522
  var processAsyncLoadListOnAsyncMount = function (renderDispatch) { return __awaiter(void 0, void 0, void 0, function () {
3674
- var loopCount, beforeLength, node, afterLength;
3675
- var _a;
3676
- return __generator(this, function (_b) {
3677
- switch (_b.label) {
3523
+ var _loop_1;
3524
+ return __generator(this, function (_a) {
3525
+ switch (_a.label) {
3678
3526
  case 0:
3679
- loopCount = 0;
3680
- _b.label = 1;
3527
+ _loop_1 = function () {
3528
+ var node, suspenseField;
3529
+ return __generator(this, function (_b) {
3530
+ switch (_b.label) {
3531
+ case 0:
3532
+ node = renderDispatch.pendingSuspenseFiberArray.uniShift();
3533
+ suspenseField = getInstanceFieldByInstance(node.instance);
3534
+ renderDispatch.pendingSuspenseFiberArray.clear();
3535
+ return [4 /*yield*/, Promise.all(suspenseField.asyncLoadList.getAll().map(function (item) { return __awaiter(void 0, void 0, void 0, function () {
3536
+ return __generator(this, function (_a) {
3537
+ switch (_a.label) {
3538
+ case 0:
3539
+ if (!myreactSharedExports.isPromise(item)) return [3 /*break*/, 2];
3540
+ return [4 /*yield*/, renderDispatch.processPromise(item)];
3541
+ case 1:
3542
+ _a.sent();
3543
+ return [3 /*break*/, 4];
3544
+ case 2: return [4 /*yield*/, renderDispatch.processLazy(item)];
3545
+ case 3:
3546
+ _a.sent();
3547
+ _a.label = 4;
3548
+ case 4:
3549
+ item._list.forEach(function (node) {
3550
+ node.state = myreactSharedExports.remove(node.state, myreactSharedExports.STATE_TYPE.__stable__);
3551
+ node.state = myreactSharedExports.merge(node.state, myreactSharedExports.STATE_TYPE.__create__);
3552
+ mountLoopAll(renderDispatch, node);
3553
+ });
3554
+ item._list.clear();
3555
+ suspenseField.asyncLoadList.uniDelete(item);
3556
+ return [2 /*return*/];
3557
+ }
3558
+ });
3559
+ }); }))];
3560
+ case 1:
3561
+ _b.sent();
3562
+ return [2 /*return*/];
3563
+ }
3564
+ });
3565
+ };
3566
+ _a.label = 1;
3681
3567
  case 1:
3682
- if (!((_a = renderDispatch.pendingAsyncLoadList) === null || _a === void 0 ? void 0 : _a.length)) return [3 /*break*/, 6];
3683
- beforeLength = renderDispatch.pendingAsyncLoadList.length;
3684
- node = renderDispatch.pendingAsyncLoadList.shift();
3685
- if (!checkIsMyReactFiberNode(node)) return [3 /*break*/, 3];
3686
- return [4 /*yield*/, renderDispatch.processFiber(node)];
3568
+ if (!renderDispatch.pendingSuspenseFiberArray.length) return [3 /*break*/, 3];
3569
+ return [5 /*yield**/, _loop_1()];
3687
3570
  case 2:
3688
- _b.sent();
3689
- node.state = myreactSharedExports.remove(node.state, myreactSharedExports.STATE_TYPE.__stable__);
3690
- node.state = myreactSharedExports.merge(node.state, myreactSharedExports.STATE_TYPE.__create__);
3691
- mountLoopAll(renderDispatch, node);
3692
- return [3 /*break*/, 5];
3571
+ _a.sent();
3572
+ return [3 /*break*/, 1];
3693
3573
  case 3:
3694
- if (!myreactSharedExports.isPromise(node)) return [3 /*break*/, 5];
3695
- return [4 /*yield*/, renderDispatch.processPromise(node)];
3574
+ if (!renderDispatch.pendingSuspenseFiberArray.length) return [3 /*break*/, 5];
3575
+ // If there are still pending async loads, we need to continue processing them
3576
+ return [4 /*yield*/, processAsyncLoadListOnAsyncMount(renderDispatch)];
3696
3577
  case 4:
3697
- _b.sent();
3698
- _b.label = 5;
3699
- case 5:
3700
- afterLength = renderDispatch.pendingAsyncLoadList.length;
3701
- if (beforeLength <= afterLength) {
3702
- loopCount++;
3703
- if (loopCount > 5) {
3704
- throw new Error("async load loop count is too much");
3705
- }
3706
- }
3707
- return [3 /*break*/, 1];
3708
- case 6: return [2 /*return*/];
3578
+ // If there are still pending async loads, we need to continue processing them
3579
+ _a.sent();
3580
+ _a.label = 5;
3581
+ case 5: return [2 /*return*/];
3709
3582
  }
3710
3583
  });
3711
3584
  }); };
3712
3585
  var processAsyncLoadListOnSyncMount = function (renderDispatch) {
3713
3586
  var _a;
3714
- if ((_a = renderDispatch.pendingAsyncLoadList) === null || _a === void 0 ? void 0 : _a.length) {
3715
- var visibleFiber_1 = renderDispatch.runtimeFiber.visibleFiber;
3716
- var asyncLoadList_1 = renderDispatch.pendingAsyncLoadList.toArray();
3717
- renderDispatch.pendingAsyncLoadList.clear();
3587
+ if ((_a = renderDispatch.pendingSuspenseFiberArray) === null || _a === void 0 ? void 0 : _a.length) {
3588
+ var allPendingSuspenseFiberArray = renderDispatch.pendingSuspenseFiberArray.getAll();
3718
3589
  if (renderDispatch.enableAsyncLoad) {
3719
- Promise.all(asyncLoadList_1.map(function (node) { return __awaiter(void 0, void 0, void 0, function () {
3720
- return __generator(this, function (_a) {
3721
- switch (_a.label) {
3722
- case 0:
3723
- if (!checkIsMyReactFiberNode(node)) return [3 /*break*/, 2];
3724
- return [4 /*yield*/, renderDispatch.processFiber(node)];
3725
- case 1:
3726
- _a.sent();
3727
- node.state = myreactSharedExports.remove(node.state, myreactSharedExports.STATE_TYPE.__stable__);
3728
- node.state = myreactSharedExports.merge(node.state, myreactSharedExports.STATE_TYPE.__create__);
3729
- mountLoopAll(renderDispatch, node);
3730
- return [3 /*break*/, 4];
3731
- case 2:
3732
- if (!myreactSharedExports.isPromise(node)) return [3 /*break*/, 4];
3733
- return [4 /*yield*/, renderDispatch.processPromise(node)];
3734
- case 3:
3735
- _a.sent();
3736
- _a.label = 4;
3737
- case 4: return [2 /*return*/];
3590
+ var allField_1 = [];
3591
+ allPendingSuspenseFiberArray.forEach(function (node) {
3592
+ defaultDeleteChildEffect(renderDispatch, node);
3593
+ var field = getInstanceFieldByInstance(node.instance);
3594
+ var allPendingLoadArray = field.asyncLoadList.getAll().filter(function (item) {
3595
+ if (myreactSharedExports.isPromise(item)) {
3596
+ return typeof item.status !== "string";
3597
+ }
3598
+ else {
3599
+ return !item._loading && !item._loaded && !item._error;
3738
3600
  }
3739
3601
  });
3740
- }); })).then(function () {
3741
- if (visibleFiber_1 && myreactSharedExports.exclude(visibleFiber_1.state, myreactSharedExports.STATE_TYPE.__unmount__)) {
3742
- var updateQueue = {
3743
- type: myreactSharedExports.UpdateQueueType.suspense,
3744
- trigger: visibleFiber_1,
3745
- payLoad: asyncLoadList_1,
3746
- isSync: true,
3747
- isForce: true,
3748
- callback: function invokeAsyncLoadListCallback() {
3749
- renderDispatch.runtimeFiber.visibleFiber = null;
3750
- },
3751
- };
3752
- var visibleField = getInstanceFieldByInstance(visibleFiber_1.instance);
3753
- visibleField.isHidden = false;
3754
- processState(renderDispatch, updateQueue);
3755
- }
3756
- else {
3757
- triggerUpdateOnFiber(renderDispatch.rootFiber, myreactSharedExports.STATE_TYPE.__triggerSyncForce__, function invokeAsyncLoadListCallback() {
3758
- renderDispatch.runtimeFiber.visibleFiber = null;
3602
+ if (allPendingLoadArray.length) {
3603
+ Promise.all(allPendingLoadArray.map(function (item) { return __awaiter(void 0, void 0, void 0, function () {
3604
+ var _a;
3605
+ return __generator(this, function (_b) {
3606
+ switch (_b.label) {
3607
+ case 0:
3608
+ if (!myreactSharedExports.isPromise(item)) return [3 /*break*/, 2];
3609
+ return [4 /*yield*/, renderDispatch.processPromise(item)];
3610
+ case 1:
3611
+ _b.sent();
3612
+ return [3 /*break*/, 4];
3613
+ case 2: return [4 /*yield*/, renderDispatch.processLazy(item)];
3614
+ case 3:
3615
+ _b.sent();
3616
+ _b.label = 4;
3617
+ case 4:
3618
+ (_a = item._list) === null || _a === void 0 ? void 0 : _a.clear();
3619
+ field.asyncLoadList.uniDelete(item);
3620
+ return [2 /*return*/];
3621
+ }
3622
+ });
3623
+ }); })).then(function () {
3624
+ var aliveNode = defaultResolveAliveSuspenseFiber(node);
3625
+ aliveNode.state = myreactSharedExports.STATE_TYPE.__triggerSyncForce__;
3626
+ var renderScheduler = currentScheduler$a.current;
3627
+ var updater = {
3628
+ type: myreactSharedExports.UpdateQueueType.suspense,
3629
+ trigger: aliveNode,
3630
+ isSync: true,
3631
+ isForce: true,
3632
+ payLoad: allPendingLoadArray,
3633
+ };
3634
+ renderScheduler.dispatchState(updater);
3759
3635
  });
3760
3636
  }
3637
+ node.state = myreactSharedExports.STATE_TYPE.__create__;
3638
+ field.isHidden = true;
3639
+ allField_1.push(field);
3761
3640
  });
3762
- if (visibleFiber_1) {
3763
- defaultDeleteChildEffect(renderDispatch, visibleFiber_1);
3764
- var visibleField = getInstanceFieldByInstance(visibleFiber_1.instance);
3765
- visibleField.isHidden = true;
3766
- visibleFiber_1.state = myreactSharedExports.merge(visibleFiber_1.state, myreactSharedExports.STATE_TYPE.__create__);
3767
- var updateQueue = {
3768
- type: myreactSharedExports.UpdateQueueType.trigger,
3769
- trigger: visibleFiber_1,
3770
- isRetrigger: true,
3771
- isImmediate: true,
3772
- isSync: true,
3773
- isForce: true,
3774
- isSkip: false,
3775
- callback: null,
3776
- };
3777
- processState(renderDispatch, updateQueue);
3778
- }
3779
- else {
3780
- return null;
3781
- }
3641
+ var root = renderDispatch.rootFiber;
3642
+ root.state = myreactSharedExports.remove(root.state, myreactSharedExports.STATE_TYPE.__stable__);
3643
+ root.state = myreactSharedExports.merge(root.state, myreactSharedExports.STATE_TYPE.__retrigger__);
3644
+ // TODO use hide tree to improve
3645
+ mountLoopAll(renderDispatch, root);
3646
+ allField_1.forEach(function (field) { return (field.isHidden = false); });
3647
+ renderDispatch.pendingSuspenseFiberArray.clear();
3782
3648
  }
3783
3649
  else {
3784
- console.error("[@my-react/reconciler] should not process async load list on sync mount without enableAsyncLoad, you may use a wrong renderDispatch instance");
3650
+ throw new Error("[@my-react/reconciler] should not process async load list on sync mount without enableAsyncLoad, you may use a wrong renderDispatch instance");
3785
3651
  }
3786
3652
  }
3787
3653
  };
@@ -3793,16 +3659,6 @@ function requireIndex_development_1 () {
3793
3659
  updateTypeEnum[updateTypeEnum["concurrentFromRoot"] = 2] = "concurrentFromRoot";
3794
3660
  updateTypeEnum[updateTypeEnum["concurrentFromTrigger"] = 3] = "concurrentFromTrigger";
3795
3661
  })(exports.updateTypeEnum || (exports.updateTypeEnum = {}));
3796
- var mountLoopAllSync = function (renderDispatch) {
3797
- while (renderDispatch.runtimeFiber.nextWorkingFiber) {
3798
- renderDispatch.runtimeFiber.retriggerFiber = null;
3799
- var currentFiber = renderDispatch.runtimeFiber.nextWorkingFiber;
3800
- var nextFiber = mountToNextFiberFromRoot(renderDispatch, currentFiber);
3801
- var retriggerFiber = renderDispatch.runtimeFiber.retriggerFiber;
3802
- renderDispatch.runtimeFiber.nextWorkingFiber = retriggerFiber || nextFiber;
3803
- renderDispatch.runtimeFiber.retriggerFiber = null;
3804
- }
3805
- };
3806
3662
  var triggerFiberUpdateListener = function (renderDispatch, fiber) {
3807
3663
  safeCallWithCurrentFiber({
3808
3664
  fiber: fiber,
@@ -3829,49 +3685,167 @@ function requireIndex_development_1 () {
3829
3685
  renderDispatch.runtimeFiber.retriggerFiber = null;
3830
3686
  }
3831
3687
  };
3832
- var updateLoopSyncFromTrigger = function (renderDispatch) {
3833
- while (renderDispatch.runtimeFiber.nextWorkingFiber) {
3688
+ var updateLoopConcurrentFromRoot = function (renderDispatch) {
3689
+ while (renderDispatch.runtimeFiber.nextWorkingFiber && !renderDispatch.shouldYield()) {
3834
3690
  renderDispatch.runtimeFiber.retriggerFiber = null;
3835
3691
  var currentFiber = renderDispatch.runtimeFiber.nextWorkingFiber;
3836
- var nextFiber = performToNextFiberFromTrigger(renderDispatch, currentFiber);
3692
+ var nextFiber = performToNextFiberFromRoot(renderDispatch, currentFiber);
3837
3693
  var retriggerFiber = renderDispatch.runtimeFiber.retriggerFiber;
3838
3694
  renderDispatch.runtimeFiber.nextWorkingFiber = retriggerFiber || nextFiber;
3839
3695
  renderDispatch.runtimeFiber.retriggerFiber = null;
3840
3696
  }
3841
- };
3842
- var updateLoopConcurrentFromRoot = function (renderDispatch) {
3843
- while (renderDispatch.runtimeFiber.nextWorkingFiber && !renderDispatch.shouldYield()) {
3844
- renderDispatch.runtimeFiber.retriggerFiber = null;
3845
- var currentFiber = renderDispatch.runtimeFiber.nextWorkingFiber;
3846
- var nextFiber = performToNextFiberFromRoot(renderDispatch, currentFiber);
3847
- var retriggerFiber = renderDispatch.runtimeFiber.retriggerFiber;
3848
- renderDispatch.runtimeFiber.nextWorkingFiber = retriggerFiber || nextFiber;
3849
- renderDispatch.runtimeFiber.retriggerFiber = null;
3697
+ };
3698
+ var processAsyncLoadListOnUpdate = processAsyncLoadListOnSyncMount;
3699
+
3700
+ var isErrorBoundariesInstance = function (instance, Component) {
3701
+ return typeof instance.componentDidCatch === "function" || typeof Component.getDerivedStateFromError === "function";
3702
+ };
3703
+ var isErrorBoundariesComponent = function (fiber) {
3704
+ if (myreactSharedExports.include(fiber.type, exports.NODE_TYPE.__class__) && myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__stable__)) {
3705
+ var Component = fiber.elementType;
3706
+ var typedComponent = Component;
3707
+ var typedInstance = fiber.instance;
3708
+ return isErrorBoundariesInstance(typedInstance, typedComponent);
3709
+ }
3710
+ return false;
3711
+ };
3712
+ var defaultResolveErrorBoundaries = function (fiber) {
3713
+ var parent = fiber.parent;
3714
+ while (parent) {
3715
+ if (isErrorBoundariesComponent(parent)) {
3716
+ return parent;
3717
+ }
3718
+ parent = parent.parent;
3719
+ }
3720
+ return null;
3721
+ };
3722
+
3723
+ var currentComponentFiber$2 = react.__my_react_internal__.currentComponentFiber, currentRunningFiber$1 = react.__my_react_internal__.currentRunningFiber;
3724
+ var enableDebugFiled$5 = react.__my_react_shared__.enableDebugFiled;
3725
+ var MAX_UPDATE_COUNT = 25;
3726
+ var lastRenderComponentFiber = null;
3727
+ var lastRenderComponentTimeStep = null;
3728
+ var renderCount = 0;
3729
+ var processState = function (renderDispatch, _params) {
3730
+ if (enableDebugFiled$5.current) {
3731
+ var typedUpdateQueue = _params;
3732
+ typedUpdateQueue._debugCreateTime = Date.now();
3733
+ typedUpdateQueue._debugType = myreactSharedExports.UpdateQueueType[_params.type];
3734
+ }
3735
+ var ownerFiber = getInstanceOwnerFiber(_params.trigger);
3736
+ if (!renderDispatch)
3737
+ return;
3738
+ _params.isRetrigger = currentRunningFiber$1.current === ownerFiber || !!_params.isRetrigger;
3739
+ _params.isImmediate =
3740
+ typeof _params.isImmediate === "boolean"
3741
+ ? _params.isImmediate
3742
+ : _params.isRetrigger || (renderDispatch.isAppMounted ? !!currentRunningFiber$1.current : false);
3743
+ safeCallWithCurrentFiber({
3744
+ fiber: ownerFiber,
3745
+ action: function safeCallFiberStateListener() {
3746
+ var _a, _b;
3747
+ (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberState) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(ownerFiber, _params); });
3748
+ },
3749
+ });
3750
+ var isImmediate = _params.isImmediate;
3751
+ _params.isRetrigger;
3752
+ if (_params.type === myreactSharedExports.UpdateQueueType.component) {
3753
+ if (!ownerFiber || myreactSharedExports.include(ownerFiber.state, myreactSharedExports.STATE_TYPE.__unmount__))
3754
+ return;
3755
+ if (!exports.syncFlush && currentComponentFiber$2.current) {
3756
+ var currentRFiber = currentRunningFiber$1.current;
3757
+ var currentCFiber = currentComponentFiber$2.current;
3758
+ var now = Date.now();
3759
+ if (lastRenderComponentFiber === currentCFiber) {
3760
+ if (lastRenderComponentTimeStep && now - lastRenderComponentTimeStep < 4) {
3761
+ renderCount++;
3762
+ }
3763
+ else {
3764
+ renderCount = 0;
3765
+ }
3766
+ }
3767
+ else {
3768
+ renderCount = 0;
3769
+ }
3770
+ if (renderCount > MAX_UPDATE_COUNT) {
3771
+ renderCount = 0;
3772
+ throw new Error("[@my-react/react] look like there are infinity update for current component ".concat(currentComponentFiber$2.current && getElementName(currentComponentFiber$2.current)));
3773
+ }
3774
+ else if (!isErrorBoundariesComponent(ownerFiber)) {
3775
+ var triggeredElementName = getElementName(ownerFiber);
3776
+ var currentElementName = getElementName(currentCFiber);
3777
+ if (enableLogForCurrentFlowIsRunning.current) {
3778
+ onceWarnWithKeyAndFiber(currentRFiber, "updateWhenCurrentFlowIsRunning-".concat(triggeredElementName), "[@my-react/react] trigger an update for ".concat(triggeredElementName, " when current update flow is running, this is a unexpected behavior, please make sure current render function for ").concat(currentElementName, " is a pure function"));
3779
+ }
3780
+ }
3781
+ lastRenderComponentFiber = currentCFiber;
3782
+ lastRenderComponentTimeStep = now;
3783
+ }
3784
+ var trigger_1 = _params.trigger;
3785
+ safeCallWithCurrentFiber({
3786
+ fiber: ownerFiber,
3787
+ action: function safeCallInstanceStateListener() {
3788
+ var _a, _b;
3789
+ (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.instanceState) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(trigger_1, ownerFiber, _params); });
3790
+ },
3791
+ });
3792
+ ownerFiber.updateQueue = ownerFiber.updateQueue || new myreactSharedExports.ListTree();
3793
+ ownerFiber.updateQueue.push(_params);
3794
+ prepareUpdateOnFiber(renderDispatch, ownerFiber, isImmediate);
3795
+ }
3796
+ else if (_params.type === myreactSharedExports.UpdateQueueType.hook) {
3797
+ if (!ownerFiber || myreactSharedExports.include(ownerFiber === null || ownerFiber === void 0 ? void 0 : ownerFiber.state, myreactSharedExports.STATE_TYPE.__unmount__))
3798
+ return;
3799
+ if (!exports.syncFlush && currentComponentFiber$2.current) {
3800
+ var currentRFiber = currentRunningFiber$1.current;
3801
+ var currentCFiber = currentComponentFiber$2.current;
3802
+ var now = Date.now();
3803
+ if (lastRenderComponentFiber === currentCFiber) {
3804
+ if (lastRenderComponentTimeStep && now - lastRenderComponentTimeStep < 4) {
3805
+ renderCount++;
3806
+ }
3807
+ else {
3808
+ renderCount = 0;
3809
+ }
3810
+ }
3811
+ else {
3812
+ renderCount = 0;
3813
+ }
3814
+ if (renderCount > MAX_UPDATE_COUNT) {
3815
+ renderCount = 0;
3816
+ throw new Error("[@my-react/react] look like there are infinity update for current component ".concat(currentComponentFiber$2.current && getElementName(currentComponentFiber$2.current)));
3817
+ }
3818
+ else if (!isErrorBoundariesComponent(ownerFiber)) {
3819
+ var triggeredElementName = getElementName(ownerFiber);
3820
+ var currentElementName = getElementName(currentCFiber);
3821
+ if (enableLogForCurrentFlowIsRunning.current) {
3822
+ onceWarnWithKeyAndFiber(currentRFiber, "updateWhenCurrentFlowIsRunning-".concat(triggeredElementName), "[@my-react/react] trigger an update for ".concat(triggeredElementName, " when current update flow is running, this is a unexpected behavior, please make sure current render function for ").concat(currentElementName, " is a pure function"));
3823
+ }
3824
+ }
3825
+ lastRenderComponentFiber = currentCFiber;
3826
+ lastRenderComponentTimeStep = now;
3827
+ }
3828
+ var trigger_2 = _params.trigger;
3829
+ safeCallWithCurrentFiber({
3830
+ fiber: ownerFiber,
3831
+ action: function safeCallHookStateListener() {
3832
+ var _a, _b;
3833
+ (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.hookState) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(trigger_2, ownerFiber, _params); });
3834
+ },
3835
+ });
3836
+ ownerFiber.updateQueue = ownerFiber.updateQueue || new myreactSharedExports.ListTree();
3837
+ ownerFiber.updateQueue.push(_params);
3838
+ prepareUpdateOnFiber(renderDispatch, ownerFiber, isImmediate);
3850
3839
  }
3851
- };
3852
- var updateLoopConcurrentFromTrigger = function (renderDispatch) {
3853
- while (renderDispatch.runtimeFiber.nextWorkingFiber && !renderDispatch.shouldYield()) {
3854
- renderDispatch.runtimeFiber.retriggerFiber = null;
3855
- var currentFiber = renderDispatch.runtimeFiber.nextWorkingFiber;
3856
- var nextFiber = performToNextFiberFromTrigger(renderDispatch, currentFiber);
3857
- var retriggerFiber = renderDispatch.runtimeFiber.retriggerFiber;
3858
- renderDispatch.runtimeFiber.nextWorkingFiber = retriggerFiber || nextFiber;
3859
- renderDispatch.runtimeFiber.retriggerFiber = null;
3840
+ else {
3841
+ var ownerFiber_1 = _params.trigger;
3842
+ if (!ownerFiber_1 || myreactSharedExports.include(ownerFiber_1.state, myreactSharedExports.STATE_TYPE.__unmount__))
3843
+ return;
3844
+ ownerFiber_1.updateQueue = ownerFiber_1.updateQueue || new myreactSharedExports.ListTree();
3845
+ ownerFiber_1.updateQueue.push(_params);
3846
+ prepareUpdateOnFiber(renderDispatch, ownerFiber_1, isImmediate);
3860
3847
  }
3861
3848
  };
3862
- // const getNextLoop = (type: updateTypeEnum) => {
3863
- // switch (type) {
3864
- // case updateTypeEnum.syncFromRoot:
3865
- // return updateLoopSyncFromRoot;
3866
- // case updateTypeEnum.syncFromTrigger:
3867
- // return updateLoopSyncFromTrigger;
3868
- // case updateTypeEnum.concurrentFromRoot:
3869
- // return updateLoopConcurrentFromRoot;
3870
- // case updateTypeEnum.concurrentFromTrigger:
3871
- // return updateLoopConcurrentFromTrigger;
3872
- // }
3873
- // };
3874
- var processAsyncLoadListOnUpdate = processAsyncLoadListOnSyncMount;
3875
3849
 
3876
3850
  var defaultGenerateUnmountMap = function (fiber, unmount, map) {
3877
3851
  var list = map.get(fiber) || new myreactSharedExports.ListTree();
@@ -3927,7 +3901,7 @@ function requireIndex_development_1 () {
3927
3901
  var _a, _b, _c, _d;
3928
3902
  renderDispatch.pendingCommitFiberPatch = myreactSharedExports.PATCH_TYPE.__initial__;
3929
3903
  (_a = renderDispatch.pendingUpdateFiberArray) === null || _a === void 0 ? void 0 : _a.clear();
3930
- (_b = renderDispatch.pendingAsyncLoadList) === null || _b === void 0 ? void 0 : _b.clear();
3904
+ (_b = renderDispatch.pendingSuspenseFiberArray) === null || _b === void 0 ? void 0 : _b.clear();
3931
3905
  (_c = renderDispatch.pendingCommitFiberList) === null || _c === void 0 ? void 0 : _c.clear();
3932
3906
  (_d = renderDispatch.pendingChangedFiberList) === null || _d === void 0 ? void 0 : _d.clear();
3933
3907
  renderDispatch.resetUpdateFlowRuntimeFiber();
@@ -4050,7 +4024,7 @@ function requireIndex_development_1 () {
4050
4024
  type: myreactSharedExports.UpdateQueueType.component,
4051
4025
  trigger: typedInstance_1,
4052
4026
  payLoad: payloadState,
4053
- isSync: false,
4027
+ isSync: true,
4054
4028
  isForce: true,
4055
4029
  isRetrigger: false,
4056
4030
  isImmediate: false,
@@ -4080,19 +4054,9 @@ function requireIndex_development_1 () {
4080
4054
  }
4081
4055
  }
4082
4056
  };
4083
- var triggerUnmount = function (renderDispatch, fiber, cb) {
4084
- if (renderDispatch.isAppUnmounted) {
4085
- throw new Error("[@my-react/react] can not unmount a node when current app has been unmounted");
4086
- }
4087
- triggerUpdate(renderDispatch, fiber, myreactSharedExports.STATE_TYPE.__skippedSync__, function finishTriggerUnmountOnFiber() {
4088
- renderDispatch.reconcileUnmount();
4089
- cb === null || cb === void 0 ? void 0 : cb();
4090
- currentTriggerFiber.current = null;
4091
- });
4092
- };
4093
4057
 
4094
4058
  var globalLoop$2 = react.__my_react_internal__.globalLoop, currentScheduler$8 = react.__my_react_internal__.currentScheduler;
4095
- var enableConcurrentMode$1 = react.__my_react_shared__.enableConcurrentMode, enableLoopFromRoot = react.__my_react_shared__.enableLoopFromRoot;
4059
+ var enableConcurrentMode$1 = react.__my_react_shared__.enableConcurrentMode;
4096
4060
  var scheduleUpdateFromRoot = function (renderDispatch) {
4097
4061
  var allLive = renderDispatch.pendingUpdateFiberArray.getAll().filter(function (f) { return myreactSharedExports.exclude(f.state, myreactSharedExports.STATE_TYPE.__unmount__); });
4098
4062
  renderDispatch.pendingUpdateFiberArray.clear();
@@ -4101,8 +4065,7 @@ function requireIndex_development_1 () {
4101
4065
  renderDispatch.runtimeFiber.nextWorkingFiber = renderDispatch.rootFiber;
4102
4066
  currentTriggerFiber.current = allLive.length > 1 ? allLive : allLive[0];
4103
4067
  allLive.forEach(function (fiber) { return applyTriggerFiberCb(renderDispatch, fiber); });
4104
- if (!enableConcurrentMode$1.current ||
4105
- allLive.some(function (f) { return myreactSharedExports.include(f.state, myreactSharedExports.STATE_TYPE.__skippedSync__ | myreactSharedExports.STATE_TYPE.__triggerSync__ | myreactSharedExports.STATE_TYPE.__triggerSyncForce__); })) {
4068
+ if (!enableConcurrentMode$1.current || allLive.some(function (f) { return myreactSharedExports.include(f.state, myreactSharedExports.STATE_TYPE.__triggerSync__ | myreactSharedExports.STATE_TYPE.__triggerSyncForce__); })) {
4106
4069
  updateSyncFromRoot(renderDispatch);
4107
4070
  }
4108
4071
  else {
@@ -4114,66 +4077,6 @@ function requireIndex_development_1 () {
4114
4077
  scheduleNext(renderDispatch);
4115
4078
  }
4116
4079
  };
4117
- var scheduleUpdateFromTrigger = function (renderDispatch) {
4118
- var allPending = renderDispatch.pendingUpdateFiberArray.getAll();
4119
- var nextWorkFiber = null;
4120
- for (var i = 0; i < allPending.length; i++) {
4121
- var item = allPending[i];
4122
- if (myreactSharedExports.include(item.state, myreactSharedExports.STATE_TYPE.__stable__ | myreactSharedExports.STATE_TYPE.__unmount__)) {
4123
- renderDispatch.pendingUpdateFiberArray.uniDelete(item);
4124
- continue;
4125
- }
4126
- else {
4127
- nextWorkFiber = item;
4128
- break;
4129
- }
4130
- }
4131
- if (nextWorkFiber) {
4132
- applyTriggerFiberCb(renderDispatch, nextWorkFiber);
4133
- if (myreactSharedExports.include(nextWorkFiber.state, myreactSharedExports.STATE_TYPE.__skippedSync__ | myreactSharedExports.STATE_TYPE.__triggerSync__ | myreactSharedExports.STATE_TYPE.__triggerSyncForce__)) {
4134
- renderDispatch.runtimeFiber.scheduledFiber = nextWorkFiber;
4135
- currentTriggerFiber.current = nextWorkFiber;
4136
- renderDispatch.runtimeFiber.nextWorkingFiber = nextWorkFiber;
4137
- // normally a context update
4138
- if (myreactSharedExports.include(nextWorkFiber.state, myreactSharedExports.STATE_TYPE.__skippedSync__)) {
4139
- updateSyncFromRoot(renderDispatch);
4140
- }
4141
- else {
4142
- // TODO maybe could use `updateSyncFromRoot`?
4143
- updateSyncFromTrigger(renderDispatch);
4144
- }
4145
- }
4146
- else if (myreactSharedExports.include(nextWorkFiber.state, myreactSharedExports.STATE_TYPE.__skippedConcurrent__ | myreactSharedExports.STATE_TYPE.__triggerConcurrent__ | myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__)) {
4147
- renderDispatch.runtimeFiber.scheduledFiber = nextWorkFiber;
4148
- currentTriggerFiber.current = nextWorkFiber;
4149
- renderDispatch.runtimeFiber.nextWorkingFiber = nextWorkFiber;
4150
- if (myreactSharedExports.include(nextWorkFiber.state, myreactSharedExports.STATE_TYPE.__skippedConcurrent__)) {
4151
- if (enableConcurrentMode$1.current) {
4152
- updateConcurrentFromRoot(renderDispatch);
4153
- }
4154
- else {
4155
- updateSyncFromRoot(renderDispatch);
4156
- }
4157
- }
4158
- else {
4159
- if (enableConcurrentMode$1.current) {
4160
- updateConcurrentFromTrigger(renderDispatch);
4161
- }
4162
- else {
4163
- updateSyncFromTrigger(renderDispatch);
4164
- }
4165
- }
4166
- }
4167
- else {
4168
- // TODO
4169
- throw new Error("[@my-react/react] unknown state, ".concat(nextWorkFiber.state, ", this like a bug for @my-react"));
4170
- }
4171
- }
4172
- else {
4173
- currentTriggerFiber.current = null;
4174
- scheduleNext(renderDispatch);
4175
- }
4176
- };
4177
4080
  var scheduleNext = function (renderDispatch) {
4178
4081
  var _a;
4179
4082
  if (!renderDispatch.isAppUnmounted && !renderDispatch.isAppCrashed && renderDispatch.enableUpdate && renderDispatch.pendingUpdateFiberArray.length) {
@@ -4199,12 +4102,7 @@ function requireIndex_development_1 () {
4199
4102
  scheduleNext(renderDispatch);
4200
4103
  return;
4201
4104
  }
4202
- if (enableLoopFromRoot.current) {
4203
- scheduleUpdateFromRoot(renderDispatch);
4204
- }
4205
- else {
4206
- scheduleUpdateFromTrigger(renderDispatch);
4207
- }
4105
+ scheduleUpdateFromRoot(renderDispatch);
4208
4106
  };
4209
4107
 
4210
4108
  var globalLoop$1 = react.__my_react_internal__.globalLoop, currentScheduler$7 = react.__my_react_internal__.currentScheduler;
@@ -4236,33 +4134,6 @@ function requireIndex_development_1 () {
4236
4134
  scheduleNext(renderDispatch);
4237
4135
  });
4238
4136
  };
4239
- var updateSyncFromTrigger = function (renderDispatch) {
4240
- globalLoop$1.current = true;
4241
- var renderScheduler = currentScheduler$7.current;
4242
- enableScopeTreeLog$3.current && setLogScope();
4243
- updateLoopSyncFromTrigger(renderDispatch);
4244
- processAsyncLoadListOnUpdate(renderDispatch);
4245
- enableScopeTreeLog$3.current && resetLogScope();
4246
- (function finishUpdateSyncFromTrigger() {
4247
- var commitList = renderDispatch.pendingCommitFiberList;
4248
- var changedList = renderDispatch.pendingChangedFiberList;
4249
- renderDispatch.resetUpdateFlowRuntimeFiber();
4250
- renderDispatch.pendingCommitFiberList = null;
4251
- renderDispatch.pendingChangedFiberList = null;
4252
- enableScopeTreeLog$3.current && setLogScope();
4253
- (commitList === null || commitList === void 0 ? void 0 : commitList.length) && renderDispatch.reconcileUpdate(commitList);
4254
- enableScopeTreeLog$3.current && resetLogScope();
4255
- (changedList === null || changedList === void 0 ? void 0 : changedList.length) &&
4256
- safeCall(function safeCallFiberHasChangeListener() {
4257
- var _a, _b;
4258
- (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberHasChange) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(changedList); });
4259
- });
4260
- })();
4261
- renderScheduler.microTask(function callScheduleNext() {
4262
- globalLoop$1.current = false;
4263
- scheduleNext(renderDispatch);
4264
- });
4265
- };
4266
4137
  var updateConcurrentFromRoot = function (renderDispatch) {
4267
4138
  globalLoop$1.current = true;
4268
4139
  var renderScheduler = currentScheduler$7.current;
@@ -4298,41 +4169,6 @@ function requireIndex_development_1 () {
4298
4169
  });
4299
4170
  }
4300
4171
  };
4301
- var updateConcurrentFromTrigger = function (renderDispatch) {
4302
- globalLoop$1.current = true;
4303
- var renderScheduler = currentScheduler$7.current;
4304
- enableScopeTreeLog$3.current && setLogScope();
4305
- updateLoopConcurrentFromTrigger(renderDispatch);
4306
- enableScopeTreeLog$3.current && resetLogScope();
4307
- if (renderDispatch.runtimeFiber.nextWorkingFiber) {
4308
- renderScheduler.yieldTask(function resumeUpdateConcurrentFromTrigger() {
4309
- updateConcurrentFromTrigger(renderDispatch);
4310
- });
4311
- }
4312
- else {
4313
- processAsyncLoadListOnUpdate(renderDispatch);
4314
- (function finishUpdateConcurrentFromTrigger() {
4315
- var commitList = renderDispatch.pendingCommitFiberList;
4316
- var changedList = renderDispatch.pendingChangedFiberList;
4317
- renderDispatch.resetUpdateFlowRuntimeFiber();
4318
- renderDispatch.pendingCommitFiberList = null;
4319
- renderDispatch.pendingChangedFiberList = null;
4320
- enableScopeTreeLog$3.current && setLogScope();
4321
- (commitList === null || commitList === void 0 ? void 0 : commitList.length) && renderDispatch.reconcileUpdate(commitList);
4322
- enableScopeTreeLog$3.current && resetLogScope();
4323
- (changedList === null || changedList === void 0 ? void 0 : changedList.length) &&
4324
- safeCall(function safeCallFiberHasChangeListener() {
4325
- var _a, _b;
4326
- (_b = (_a = listenerMap.get(renderDispatch)) === null || _a === void 0 ? void 0 : _a.fiberHasChange) === null || _b === void 0 ? void 0 : _b.forEach(function (cb) { return cb(changedList); });
4327
- });
4328
- })();
4329
- renderScheduler.microTask(function callScheduleNext() {
4330
- // TODO! flash all effect
4331
- globalLoop$1.current = false;
4332
- scheduleNext(renderDispatch);
4333
- });
4334
- }
4335
- };
4336
4172
 
4337
4173
  var checkHookValid = function (hookNode) {
4338
4174
  if (hookNode.type === myreactSharedExports.HOOK_TYPE.useMemo ||
@@ -4411,7 +4247,7 @@ function requireIndex_development_1 () {
4411
4247
  _this._depsSet.clear();
4412
4248
  _this._value = newValue;
4413
4249
  allDeps.forEach(function (f) { return myreactSharedExports.exclude(f.state, myreactSharedExports.STATE_TYPE.__unmount__) && (f.state = myreactSharedExports.STATE_TYPE.__triggerConcurrent__); });
4414
- triggerUpdateOnFiber(_this._renderDispatch.rootFiber, myreactSharedExports.STATE_TYPE.__skippedSync__);
4250
+ triggerUpdateOnFiber(_this._renderDispatch.rootFiber, myreactSharedExports.STATE_TYPE.__triggerConcurrent__);
4415
4251
  }
4416
4252
  };
4417
4253
  this._value = _rawValue;
@@ -4456,7 +4292,7 @@ function requireIndex_development_1 () {
4456
4292
  hookNode.result = hookNode.value;
4457
4293
  }
4458
4294
  if (hookNode.type === myreactSharedExports.HOOK_TYPE.useId) {
4459
- hookNode.result = "\u00AB-".concat(currentHookIndex, "-").concat(renderDispatch.uniqueIdCount++, "-\u00BB");
4295
+ hookNode.result = "_-".concat(currentHookIndex, "-").concat(renderDispatch.uniqueIdCount++, "-_");
4460
4296
  hookNode.cancel = function () { return renderDispatch.uniqueIdCount--; };
4461
4297
  }
4462
4298
  if (hookNode.type === myreactSharedExports.HOOK_TYPE.useDebugValue) {
@@ -4548,13 +4384,13 @@ function requireIndex_development_1 () {
4548
4384
  var loadingCallback = function (cb) {
4549
4385
  react.startTransition(function () {
4550
4386
  hookNode.result[0] = true;
4551
- hookNode._update({ isForce: true, callback: cb });
4387
+ hookNode._update({ isForce: true, isSync: true, callback: cb });
4552
4388
  });
4553
4389
  };
4554
4390
  var loadedCallback = function () {
4555
4391
  react.startTransition(function () {
4556
4392
  hookNode.result[0] = false;
4557
- hookNode._update({ isForce: true });
4393
+ hookNode._update({ isForce: true, isSync: true });
4558
4394
  });
4559
4395
  };
4560
4396
  var taskCallback = function () {
@@ -4907,7 +4743,6 @@ function requireIndex_development_1 () {
4907
4743
  trigger: this,
4908
4744
  isSync: true,
4909
4745
  isForce: false,
4910
- isSkip: myreactSharedExports.include(state, myreactSharedExports.STATE_TYPE.__skippedSync__ | myreactSharedExports.STATE_TYPE.__skippedConcurrent__),
4911
4746
  isImmediate: true,
4912
4747
  isRetrigger: false,
4913
4748
  callback: cb,
@@ -4964,29 +4799,21 @@ function requireIndex_development_1 () {
4964
4799
  }
4965
4800
  if (updateState.isSync) {
4966
4801
  if (updateState.isImmediate) {
4967
- triggerUpdate(renderDispatch, fiber, updateState.isSkip ? myreactSharedExports.STATE_TYPE.__skippedSync__ : updateState.isForce ? myreactSharedExports.STATE_TYPE.__triggerSyncForce__ : myreactSharedExports.STATE_TYPE.__triggerSync__, updateState.callback);
4802
+ triggerUpdate(renderDispatch, fiber, updateState.isForce ? myreactSharedExports.STATE_TYPE.__triggerSyncForce__ : myreactSharedExports.STATE_TYPE.__triggerSync__, updateState.callback);
4968
4803
  }
4969
4804
  else {
4970
4805
  renderScheduler.microTask(function triggerSyncUpdateOnFiber() {
4971
- triggerUpdate(renderDispatch, fiber, updateState.isSkip ? myreactSharedExports.STATE_TYPE.__skippedSync__ : updateState.isForce ? myreactSharedExports.STATE_TYPE.__triggerSyncForce__ : myreactSharedExports.STATE_TYPE.__triggerSync__, updateState.callback);
4806
+ triggerUpdate(renderDispatch, fiber, updateState.isForce ? myreactSharedExports.STATE_TYPE.__triggerSyncForce__ : myreactSharedExports.STATE_TYPE.__triggerSync__, updateState.callback);
4972
4807
  });
4973
4808
  }
4974
4809
  }
4975
4810
  else {
4976
4811
  if (updateState.isImmediate) {
4977
- triggerUpdate(renderDispatch, fiber, updateState.isSkip
4978
- ? myreactSharedExports.STATE_TYPE.__skippedConcurrent__
4979
- : updateState.isForce
4980
- ? myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__
4981
- : myreactSharedExports.STATE_TYPE.__triggerConcurrent__, updateState.callback);
4812
+ triggerUpdate(renderDispatch, fiber, updateState.isForce ? myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__ : myreactSharedExports.STATE_TYPE.__triggerConcurrent__, updateState.callback);
4982
4813
  }
4983
4814
  else {
4984
4815
  renderScheduler.microTask(function triggerConcurrentUpdateOnFiber() {
4985
- triggerUpdate(renderDispatch, fiber, updateState.isSkip
4986
- ? myreactSharedExports.STATE_TYPE.__skippedConcurrent__
4987
- : updateState.isForce
4988
- ? myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__
4989
- : myreactSharedExports.STATE_TYPE.__triggerConcurrent__, updateState.callback);
4816
+ triggerUpdate(renderDispatch, fiber, updateState.isForce ? myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__ : myreactSharedExports.STATE_TYPE.__triggerConcurrent__, updateState.callback);
4990
4817
  });
4991
4818
  }
4992
4819
  }
@@ -5005,9 +4832,8 @@ function requireIndex_development_1 () {
5005
4832
  });
5006
4833
  }
5007
4834
  };
5008
- var SyncState = myreactSharedExports.merge(myreactSharedExports.STATE_TYPE.__triggerSyncForce__, myreactSharedExports.merge(myreactSharedExports.STATE_TYPE.__skippedSync__, myreactSharedExports.STATE_TYPE.__triggerSync__));
4835
+ var SyncState = myreactSharedExports.merge(myreactSharedExports.STATE_TYPE.__triggerSyncForce__, myreactSharedExports.STATE_TYPE.__triggerSync__);
5009
4836
  var ForceState = myreactSharedExports.merge(myreactSharedExports.STATE_TYPE.__triggerSyncForce__, myreactSharedExports.STATE_TYPE.__triggerConcurrentForce__);
5010
- var SkipState = myreactSharedExports.merge(myreactSharedExports.STATE_TYPE.__skippedSync__, myreactSharedExports.STATE_TYPE.__skippedConcurrent__);
5011
4837
  var triggerUpdateOnFiber = function (fiber, state, callback) {
5012
4838
  if (myreactSharedExports.include(fiber.state, myreactSharedExports.STATE_TYPE.__unmount__))
5013
4839
  return;
@@ -5017,9 +4843,6 @@ function requireIndex_development_1 () {
5017
4843
  trigger: fiber,
5018
4844
  isSync: myreactSharedExports.include(state, SyncState),
5019
4845
  isForce: myreactSharedExports.include(state, ForceState),
5020
- isSkip: myreactSharedExports.include(state, SkipState),
5021
- isImmediate: true,
5022
- isRetrigger: false,
5023
4846
  callback: callback,
5024
4847
  };
5025
4848
  renderScheduler.dispatchState(updater);
@@ -5323,7 +5146,6 @@ function requireIndex_development_1 () {
5323
5146
  errorCatchFiber: null,
5324
5147
  nextWorkingFiber: null,
5325
5148
  retriggerFiber: null,
5326
- visibleFiber: null,
5327
5149
  }); };
5328
5150
  var initialRef = {
5329
5151
  typeForRef: exports.NODE_TYPE.__plain__ | exports.NODE_TYPE.__class__,
@@ -5387,7 +5209,7 @@ function requireIndex_development_1 () {
5387
5209
  RenderDispatchEvent.prototype.pendingLayoutEffect = function (_fiber, _layoutEffect, _option) { };
5388
5210
  RenderDispatchEvent.prototype.pendingInsertionEffect = function (_fiber, _insertionEffect, _option) { };
5389
5211
  RenderDispatchEvent.prototype.dispatchFiber = function (_fiber) { };
5390
- RenderDispatchEvent.prototype.processFiber = function (_fiber) {
5212
+ RenderDispatchEvent.prototype.processLazy = function (_elementType) {
5391
5213
  return Promise.resolve();
5392
5214
  };
5393
5215
  RenderDispatchEvent.prototype.processPromise = function (_promise) {
@@ -5954,39 +5776,6 @@ function requireIndex_development_1 () {
5954
5776
  }
5955
5777
  };
5956
5778
 
5957
- var defaultReadPromise = function (_promise) {
5958
- if (_promise.status === 'fulfilled') {
5959
- return _promise.value;
5960
- }
5961
- else if (_promise.status === 'rejected') {
5962
- throw _promise.reason;
5963
- }
5964
- else {
5965
- throw _promise;
5966
- }
5967
- };
5968
- var defaultResolveSuspenseValue = function (fiber) {
5969
- var _a;
5970
- var parent = fiber.parent;
5971
- while (parent) {
5972
- if (myreactSharedExports.include(parent.type, exports.NODE_TYPE.__suspense__)) {
5973
- return (_a = parent.pendingProps) === null || _a === void 0 ? void 0 : _a["fallback"];
5974
- }
5975
- parent = parent.parent;
5976
- }
5977
- return null;
5978
- };
5979
- var defaultResolveSuspenseFiber = function (fiber) {
5980
- var parent = fiber.parent;
5981
- while (parent) {
5982
- if (myreactSharedExports.include(parent.type, exports.NODE_TYPE.__suspense__)) {
5983
- return parent;
5984
- }
5985
- parent = parent.parent;
5986
- }
5987
- return null;
5988
- };
5989
-
5990
5779
  var currentScheduler$1 = react.__my_react_internal__.currentScheduler;
5991
5780
  var enableScopeTreeLog$1 = react.__my_react_shared__.enableScopeTreeLog;
5992
5781
  var defaultDispatchUpdate = function (_dispatch, _list) {
@@ -5995,6 +5784,10 @@ function requireIndex_development_1 () {
5995
5784
  _list.listToFoot(function invokeUnmountPendingAndInsertionEffectList(_fiber) {
5996
5785
  if (myreactSharedExports.exclude(_fiber.state, myreactSharedExports.STATE_TYPE.__unmount__) && !_dispatch.isAppUnmounted) {
5997
5786
  defaultInvokeUnmountList(_dispatch, _fiber);
5787
+ }
5788
+ });
5789
+ _list.listToFoot(function invokeUnmountPendingAndInsertionEffectList(_fiber) {
5790
+ if (myreactSharedExports.exclude(_fiber.state, myreactSharedExports.STATE_TYPE.__unmount__) && !_dispatch.isAppUnmounted) {
5998
5791
  insertionEffect(_dispatch, _fiber);
5999
5792
  }
6000
5793
  });
@@ -6061,7 +5854,7 @@ function requireIndex_development_1 () {
6061
5854
  };
6062
5855
 
6063
5856
  var currentScheduler = react.__my_react_internal__.currentScheduler;
6064
- var loadPromise = function (renderDispatch, fiber, promise) { return __awaiter(void 0, void 0, void 0, function () {
5857
+ var loadPromise = function (renderDispatch, promise) { return __awaiter(void 0, void 0, void 0, function () {
6065
5858
  var value, reason_1;
6066
5859
  return __generator(this, function (_a) {
6067
5860
  switch (_a.label) {
@@ -6090,7 +5883,6 @@ function requireIndex_development_1 () {
6090
5883
  var processPromise = function (renderDispatch, fiber, promise) {
6091
5884
  var _a, _b;
6092
5885
  defaultDeleteCurrentEffect(renderDispatch, fiber);
6093
- promise.fiber = fiber;
6094
5886
  if (promise.status === "rejected") {
6095
5887
  (_b = (_a = currentScheduler.current).dispatchError) === null || _b === void 0 ? void 0 : _b.call(_a, { fiber: fiber, error: promise.reason });
6096
5888
  return null;
@@ -6100,24 +5892,36 @@ function requireIndex_development_1 () {
6100
5892
  console.warn("[@my-react/react] throw a promise what has already fulfilled, this is not a valid usage");
6101
5893
  }
6102
5894
  }
6103
- if (!promise.status) {
5895
+ promise._list = promise._list || new Set();
5896
+ promise._list.add(fiber);
5897
+ var suspenseFiber = renderDispatch.resolveSuspenseFiber(fiber);
5898
+ if (suspenseFiber) {
5899
+ var suspenseField = getInstanceFieldByInstance(suspenseFiber.instance);
5900
+ suspenseField.asyncLoadList.uniPush(promise);
5901
+ renderDispatch.pendingSuspenseFiberArray.uniPush(suspenseFiber);
5902
+ return null;
5903
+ }
5904
+ else {
5905
+ if (promise._loading)
5906
+ return null;
5907
+ promise._loading = true;
6104
5908
  promise.status = "pending";
6105
- renderDispatch.pendingAsyncLoadList = renderDispatch.pendingAsyncLoadList || new myreactSharedExports.ListTree();
6106
- if (!renderDispatch.runtimeFiber.visibleFiber) {
6107
- var visibleFiber = renderDispatch.resolveSuspenseFiber(fiber);
6108
- if (visibleFiber) {
6109
- renderDispatch.runtimeFiber.visibleFiber = visibleFiber;
6110
- renderDispatch.pendingAsyncLoadList.push(promise);
6111
- }
6112
- else {
6113
- throw new Error("[@my-react/react] the promise is not in a suspense tree");
6114
- }
6115
- }
6116
- else {
6117
- renderDispatch.pendingAsyncLoadList.push(promise);
6118
- }
5909
+ var renderScheduler_1 = currentScheduler.current;
5910
+ renderDispatch.processPromise(promise).then(function () {
5911
+ fiber.state = myreactSharedExports.STATE_TYPE.__triggerSync__;
5912
+ promise._list.delete(fiber);
5913
+ promise._loading = false;
5914
+ var updater = {
5915
+ type: myreactSharedExports.UpdateQueueType.promise,
5916
+ trigger: fiber,
5917
+ isSync: true,
5918
+ isForce: true,
5919
+ payLoad: promise,
5920
+ };
5921
+ renderScheduler_1.dispatchState(updater);
5922
+ });
5923
+ return null;
6119
5924
  }
6120
- return null;
6121
5925
  };
6122
5926
 
6123
5927
  var CustomRenderDispatch = /** @class */ (function (_super) {
@@ -6129,14 +5933,14 @@ function requireIndex_development_1 () {
6129
5933
  _this.isAppMounted = false;
6130
5934
  _this.isAppCrashed = false;
6131
5935
  _this.isAppUnmounted = false;
6132
- _this.version = "0.3.10";
5936
+ _this.version = "0.3.11";
6133
5937
  _this.mode = "development" ;
6134
5938
  _this.renderMode = "render";
6135
5939
  _this.pendingCommitFiberList = null;
6136
5940
  _this.pendingCommitFiberPatch = myreactSharedExports.PATCH_TYPE.__initial__;
6137
- _this.pendingAsyncLoadList = null;
6138
5941
  _this.pendingChangedFiberList = null;
6139
5942
  _this.pendingUpdateFiberArray = new myreactSharedExports.UniqueArray();
5943
+ _this.pendingSuspenseFiberArray = new myreactSharedExports.UniqueArray();
6140
5944
  _this.uniqueIdCount = 0;
6141
5945
  _this.rootElement = rootElement;
6142
5946
  var typedFiber = rootFiber;
@@ -6225,11 +6029,11 @@ function requireIndex_development_1 () {
6225
6029
  CustomRenderDispatch.prototype.dispatchFiber = function (_fiber) {
6226
6030
  defaultDispatchFiber(this, _fiber);
6227
6031
  };
6228
- CustomRenderDispatch.prototype.processFiber = function (_fiber) {
6229
- return loadLazy(this, _fiber, _fiber.elementType);
6032
+ CustomRenderDispatch.prototype.processLazy = function (_elementType) {
6033
+ return loadLazy(this, _elementType);
6230
6034
  };
6231
6035
  CustomRenderDispatch.prototype.processPromise = function (_promise) {
6232
- return loadPromise(this, _promise.fiber, _promise);
6036
+ return loadPromise(this, _promise);
6233
6037
  };
6234
6038
  CustomRenderDispatch.prototype.commitCreate = function (_fiber) {
6235
6039
  };
@@ -6327,7 +6131,6 @@ function requireIndex_development_1 () {
6327
6131
  this.runtimeFiber.scheduledFiber = null;
6328
6132
  this.runtimeFiber.nextWorkingFiber = null;
6329
6133
  this.runtimeFiber.retriggerFiber = null;
6330
- this.runtimeFiber.visibleFiber = null;
6331
6134
  this.pendingCommitFiberPatch = myreactSharedExports.PATCH_TYPE.__initial__;
6332
6135
  };
6333
6136
  CustomRenderDispatch.prototype.getFiberTree = function (_fiber) {
@@ -6431,7 +6234,6 @@ function requireIndex_development_1 () {
6431
6234
  needUpdate: true,
6432
6235
  nodes: processedNodes,
6433
6236
  isSync: true,
6434
- isSkip: false,
6435
6237
  isForce: true,
6436
6238
  isImmediate: true,
6437
6239
  isRetrigger: true,
@@ -6444,69 +6246,6 @@ function requireIndex_development_1 () {
6444
6246
  },
6445
6247
  });
6446
6248
  };
6447
- var prepareUpdateAllDependenceFromRoot = function (renderDispatch, fiber, beforeValue, afterValue) {
6448
- var consumerList = new Set((fiber === null || fiber === void 0 ? void 0 : fiber.dependence) || []);
6449
- var now = Date.now();
6450
- var updater = {
6451
- type: myreactSharedExports.UpdateQueueType.context,
6452
- trigger: fiber,
6453
- payLoad: afterValue,
6454
- isSync: true,
6455
- isForce: true,
6456
- isImmediate: true,
6457
- isRetrigger: false,
6458
- _debugBeforeValue: beforeValue,
6459
- _debugAfterValue: afterValue,
6460
- _debugCreateTime: now,
6461
- _debugRunTime: now,
6462
- _debugType: myreactSharedExports.UpdateQueueType[myreactSharedExports.UpdateQueueType.context],
6463
- };
6464
- consumerList.forEach(function prepareUpdateSingleConsumer(i) {
6465
- var owner = getInstanceOwnerFiber(i);
6466
- if (owner && myreactSharedExports.exclude(owner.state, myreactSharedExports.STATE_TYPE.__unmount__)) {
6467
- var typedFiber = owner;
6468
- typedFiber.state = myreactSharedExports.STATE_TYPE.__triggerSyncForce__;
6469
- }
6470
- });
6471
- var root = renderDispatch.rootFiber;
6472
- if (enableDebugFiled.current && enableDebugUpdateQueue.current) {
6473
- root._debugUpdateQueue = root._debugUpdateQueue || new myreactSharedExports.ListTree();
6474
- root._debugUpdateQueue.push(updater);
6475
- }
6476
- renderDispatch.pendingUpdateFiberArray.clear();
6477
- triggerUpdateOnFiber(root, myreactSharedExports.STATE_TYPE.__skippedSync__);
6478
- };
6479
- var prepareUpdateAllDependenceFromProvider = function (fiber, beforeValue, afterValue) {
6480
- var consumerList = new Set((fiber === null || fiber === void 0 ? void 0 : fiber.dependence) || []);
6481
- var now = Date.now();
6482
- var updater = {
6483
- type: myreactSharedExports.UpdateQueueType.context,
6484
- trigger: fiber,
6485
- payLoad: afterValue,
6486
- isSync: true,
6487
- isForce: true,
6488
- isImmediate: true,
6489
- isRetrigger: true,
6490
- _debugBeforeValue: beforeValue,
6491
- _debugAfterValue: afterValue,
6492
- _debugCreateTime: now,
6493
- _debugRunTime: now,
6494
- _debugType: myreactSharedExports.UpdateQueueType[myreactSharedExports.UpdateQueueType.context],
6495
- };
6496
- consumerList.forEach(function prepareUpdateSingleConsumer(i) {
6497
- var owner = getInstanceOwnerFiber(i);
6498
- if (owner && myreactSharedExports.exclude(owner.state, myreactSharedExports.STATE_TYPE.__unmount__)) {
6499
- var typedFiber_2 = owner;
6500
- typedFiber_2.state = myreactSharedExports.STATE_TYPE.__triggerSyncForce__;
6501
- }
6502
- });
6503
- var typedFiber = fiber;
6504
- if (enableDebugFiled.current && enableDebugUpdateQueue.current) {
6505
- typedFiber._debugUpdateQueue = typedFiber._debugUpdateQueue || new myreactSharedExports.ListTree();
6506
- typedFiber._debugUpdateQueue.push(updater);
6507
- }
6508
- triggerUpdateOnFiber(typedFiber, myreactSharedExports.STATE_TYPE.__skippedSync__);
6509
- };
6510
6249
 
6511
6250
  var currentComponentFiber = react.__my_react_internal__.currentComponentFiber, currentHookNodeIndex = react.__my_react_internal__.currentHookNodeIndex;
6512
6251
  var resolveHookValue = function (hookNode, field) {
@@ -6625,7 +6364,7 @@ function requireIndex_development_1 () {
6625
6364
  });
6626
6365
  }); };
6627
6366
 
6628
- var version = "0.3.10";
6367
+ var version = "0.3.11";
6629
6368
 
6630
6369
  exports.CustomRenderDispatch = CustomRenderDispatch;
6631
6370
  exports.MyReactFiberNode = MyReactFiberNode;
@@ -6667,6 +6406,7 @@ function requireIndex_development_1 () {
6667
6406
  exports.defaultInvokeUnmountList = defaultInvokeUnmountList;
6668
6407
  exports.defaultReadContext = defaultReadContext;
6669
6408
  exports.defaultReadPromise = defaultReadPromise;
6409
+ exports.defaultResolveAliveSuspenseFiber = defaultResolveAliveSuspenseFiber;
6670
6410
  exports.defaultResolveErrorBoundaries = defaultResolveErrorBoundaries;
6671
6411
  exports.defaultResolveScope = defaultResolveScope;
6672
6412
  exports.defaultResolveSuspenseFiber = defaultResolveSuspenseFiber;
@@ -6685,6 +6425,7 @@ function requireIndex_development_1 () {
6685
6425
  exports.fiberToDispatchMap = fiberToDispatchMap;
6686
6426
  exports.generateFiberToMountList = generateFiberToMountList;
6687
6427
  exports.generateFiberToUnmountList = generateFiberToUnmountList;
6428
+ exports.getClassInstanceFieldByInstance = getClassInstanceFieldByInstance;
6688
6429
  exports.getCurrentDispatchFromFiber = getCurrentDispatchFromFiber;
6689
6430
  exports.getCurrentDispatchFromType = getCurrentDispatchFromType;
6690
6431
  exports.getCurrentFibersFromType = getCurrentFibersFromType;
@@ -6708,10 +6449,12 @@ function requireIndex_development_1 () {
6708
6449
  exports.hmrRevert = hmrRevert;
6709
6450
  exports.hmrUpdate = hmrUpdate;
6710
6451
  exports.hookListUnmount = hookListUnmount;
6452
+ exports.initClassInstance = initClassInstance;
6711
6453
  exports.initHMR = initHMR;
6712
6454
  exports.initHookInstance = initHookInstance;
6713
6455
  exports.initInstance = initInstance;
6714
6456
  exports.initScheduler = initScheduler;
6457
+ exports.initSuspenseInstance = initSuspenseInstance;
6715
6458
  exports.initVisibleInstance = initVisibleInstance;
6716
6459
  exports.initialFiberNode = initialFiberNode;
6717
6460
  exports.insertionEffect = insertionEffect;
@@ -6725,9 +6468,9 @@ function requireIndex_development_1 () {
6725
6468
  exports.loadLazy = loadLazy;
6726
6469
  exports.loadPromise = loadPromise;
6727
6470
  exports.mountAsync = mountAsync;
6471
+ exports.mountClassInstance = mountClassInstance;
6728
6472
  exports.mountLoopAll = mountLoopAll;
6729
6473
  exports.mountLoopAllFromScheduler = mountLoopAllFromScheduler;
6730
- exports.mountLoopAllSync = mountLoopAllSync;
6731
6474
  exports.mountSync = mountSync;
6732
6475
  exports.mountToNextFiberFromRoot = mountToNextFiberFromRoot;
6733
6476
  exports.nextWorkClassComponent = nextWorkClassComponent;
@@ -6745,10 +6488,7 @@ function requireIndex_development_1 () {
6745
6488
  exports.originalError = originalError;
6746
6489
  exports.originalWarn = originalWarn;
6747
6490
  exports.performToNextFiberFromRoot = performToNextFiberFromRoot;
6748
- exports.performToNextFiberFromTrigger = performToNextFiberFromTrigger;
6749
6491
  exports.prepareUpdateAllDependence = prepareUpdateAllDependence;
6750
- exports.prepareUpdateAllDependenceFromProvider = prepareUpdateAllDependenceFromProvider;
6751
- exports.prepareUpdateAllDependenceFromRoot = prepareUpdateAllDependenceFromRoot;
6752
6492
  exports.prepareUpdateOnFiber = prepareUpdateOnFiber;
6753
6493
  exports.processAsyncLoadListOnAsyncMount = processAsyncLoadListOnAsyncMount;
6754
6494
  exports.processAsyncLoadListOnSyncMount = processAsyncLoadListOnSyncMount;
@@ -6790,7 +6530,6 @@ function requireIndex_development_1 () {
6790
6530
  exports.triggerError = triggerError;
6791
6531
  exports.triggerFiberUpdateListener = triggerFiberUpdateListener;
6792
6532
  exports.triggerRevert = triggerRevert;
6793
- exports.triggerUnmount = triggerUnmount;
6794
6533
  exports.triggerUpdate = triggerUpdate;
6795
6534
  exports.triggerUpdateOnFiber = triggerUpdateOnFiber;
6796
6535
  exports.typeToFibersMap = typeToFibersMap;
@@ -6800,15 +6539,11 @@ function requireIndex_development_1 () {
6800
6539
  exports.unmountInstance = unmountInstance;
6801
6540
  exports.unmountList = unmountList;
6802
6541
  exports.updateConcurrentFromRoot = updateConcurrentFromRoot;
6803
- exports.updateConcurrentFromTrigger = updateConcurrentFromTrigger;
6804
6542
  exports.updateFiberNode = updateFiberNode;
6805
6543
  exports.updateHookNode = updateHookNode;
6806
6544
  exports.updateLoopConcurrentFromRoot = updateLoopConcurrentFromRoot;
6807
- exports.updateLoopConcurrentFromTrigger = updateLoopConcurrentFromTrigger;
6808
6545
  exports.updateLoopSyncFromRoot = updateLoopSyncFromRoot;
6809
- exports.updateLoopSyncFromTrigger = updateLoopSyncFromTrigger;
6810
6546
  exports.updateSyncFromRoot = updateSyncFromRoot;
6811
- exports.updateSyncFromTrigger = updateSyncFromTrigger;
6812
6547
  exports.version = version;
6813
6548
  } (index_development$1));
6814
6549
  return index_development$1;
@@ -7030,6 +6765,8 @@ function requireIndex_development () {
7030
6765
  UpdateQueueType[UpdateQueueType["hmr"] = 4] = "hmr";
7031
6766
  UpdateQueueType[UpdateQueueType["trigger"] = 5] = "trigger";
7032
6767
  UpdateQueueType[UpdateQueueType["suspense"] = 6] = "suspense";
6768
+ UpdateQueueType[UpdateQueueType["lazy"] = 7] = "lazy";
6769
+ UpdateQueueType[UpdateQueueType["promise"] = 8] = "promise";
7033
6770
  })(exports.UpdateQueueType || (exports.UpdateQueueType = {}));
7034
6771
 
7035
6772
  exports.STATE_TYPE = void 0;
@@ -7037,17 +6774,15 @@ function requireIndex_development () {
7037
6774
  STATE_TYPE[STATE_TYPE["__initial__"] = 0] = "__initial__";
7038
6775
  STATE_TYPE[STATE_TYPE["__create__"] = 1] = "__create__";
7039
6776
  STATE_TYPE[STATE_TYPE["__stable__"] = 2] = "__stable__";
7040
- STATE_TYPE[STATE_TYPE["__skippedConcurrent__"] = 4] = "__skippedConcurrent__";
7041
- STATE_TYPE[STATE_TYPE["__skippedSync__"] = 8] = "__skippedSync__";
7042
- STATE_TYPE[STATE_TYPE["__inherit__"] = 16] = "__inherit__";
7043
- STATE_TYPE[STATE_TYPE["__triggerConcurrent__"] = 32] = "__triggerConcurrent__";
7044
- STATE_TYPE[STATE_TYPE["__triggerConcurrentForce__"] = 64] = "__triggerConcurrentForce__";
7045
- STATE_TYPE[STATE_TYPE["__triggerSync__"] = 128] = "__triggerSync__";
7046
- STATE_TYPE[STATE_TYPE["__triggerSyncForce__"] = 256] = "__triggerSyncForce__";
7047
- STATE_TYPE[STATE_TYPE["__unmount__"] = 512] = "__unmount__";
7048
- STATE_TYPE[STATE_TYPE["__hmr__"] = 1024] = "__hmr__";
7049
- STATE_TYPE[STATE_TYPE["__retrigger__"] = 2048] = "__retrigger__";
7050
- STATE_TYPE[STATE_TYPE["__reschedule__"] = 4096] = "__reschedule__";
6777
+ STATE_TYPE[STATE_TYPE["__inherit__"] = 4] = "__inherit__";
6778
+ STATE_TYPE[STATE_TYPE["__triggerConcurrent__"] = 8] = "__triggerConcurrent__";
6779
+ STATE_TYPE[STATE_TYPE["__triggerConcurrentForce__"] = 16] = "__triggerConcurrentForce__";
6780
+ STATE_TYPE[STATE_TYPE["__triggerSync__"] = 32] = "__triggerSync__";
6781
+ STATE_TYPE[STATE_TYPE["__triggerSyncForce__"] = 64] = "__triggerSyncForce__";
6782
+ STATE_TYPE[STATE_TYPE["__unmount__"] = 128] = "__unmount__";
6783
+ STATE_TYPE[STATE_TYPE["__hmr__"] = 256] = "__hmr__";
6784
+ STATE_TYPE[STATE_TYPE["__retrigger__"] = 512] = "__retrigger__";
6785
+ STATE_TYPE[STATE_TYPE["__reschedule__"] = 1024] = "__reschedule__";
7051
6786
  })(exports.STATE_TYPE || (exports.STATE_TYPE = {}));
7052
6787
 
7053
6788
  exports.PATCH_TYPE = void 0;
@@ -8363,7 +8098,7 @@ var Reconciler = function (_config) {
8363
8098
  };
8364
8099
  };
8365
8100
 
8366
- var version = "0.0.1";
8101
+ var version = "0.0.2";
8367
8102
  var createReconciler = Reconciler;
8368
8103
 
8369
8104
  exports.createReconciler = createReconciler;