react-dom 19.2.0-canary-72135096-20250421 → 19.2.0-canary-197d6a04-20250424

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.
@@ -146,6 +146,16 @@
146
146
  }
147
147
  return null;
148
148
  }
149
+ function getActivityInstanceFromFiber(fiber) {
150
+ if (31 === fiber.tag) {
151
+ var activityState = fiber.memoizedState;
152
+ null === activityState &&
153
+ ((fiber = fiber.alternate),
154
+ null !== fiber && (activityState = fiber.memoizedState));
155
+ if (null !== activityState) return activityState.dehydrated;
156
+ }
157
+ return null;
158
+ }
149
159
  function assertIsMounted(fiber) {
150
160
  if (getNearestMountedFiber(fiber) !== fiber)
151
161
  throw Error("Unable to find node on an unmounted component.");
@@ -1242,6 +1252,16 @@
1242
1252
  rootEntangledLanes &= ~lane;
1243
1253
  }
1244
1254
  }
1255
+ function getBumpedLaneForHydration(root, renderLanes) {
1256
+ var renderLane = renderLanes & -renderLanes;
1257
+ renderLane =
1258
+ 0 !== (renderLane & 42)
1259
+ ? 1
1260
+ : getBumpedLaneForHydrationByLane(renderLane);
1261
+ return 0 !== (renderLane & (root.suspendedLanes | renderLanes))
1262
+ ? 0
1263
+ : renderLane;
1264
+ }
1245
1265
  function getBumpedLaneForHydrationByLane(lane) {
1246
1266
  switch (lane) {
1247
1267
  case 2:
@@ -1359,13 +1379,13 @@
1359
1379
  (null !== parentNode && null !== parentNode.child)
1360
1380
  )
1361
1381
  for (
1362
- targetNode = getParentSuspenseInstance(targetNode);
1382
+ targetNode = getParentHydrationBoundary(targetNode);
1363
1383
  null !== targetNode;
1364
1384
 
1365
1385
  ) {
1366
1386
  if ((parentNode = targetNode[internalInstanceKey]))
1367
1387
  return parentNode;
1368
- targetNode = getParentSuspenseInstance(targetNode);
1388
+ targetNode = getParentHydrationBoundary(targetNode);
1369
1389
  }
1370
1390
  return targetInst;
1371
1391
  }
@@ -1383,6 +1403,7 @@
1383
1403
  5 === tag ||
1384
1404
  6 === tag ||
1385
1405
  13 === tag ||
1406
+ 31 === tag ||
1386
1407
  26 === tag ||
1387
1408
  27 === tag ||
1388
1409
  3 === tag
@@ -1914,6 +1935,8 @@
1914
1935
  return fiber.type;
1915
1936
  case 16:
1916
1937
  return "Lazy";
1938
+ case 31:
1939
+ return "Activity";
1917
1940
  case 13:
1918
1941
  return "Suspense";
1919
1942
  case 19:
@@ -4293,6 +4316,11 @@
4293
4316
  content.lanes = lanes;
4294
4317
  return content;
4295
4318
  }
4319
+ function createFiberFromDehydratedFragment(dehydratedNode) {
4320
+ var fiber = createFiber(18, null, null, NoMode);
4321
+ fiber.stateNode = dehydratedNode;
4322
+ return fiber;
4323
+ }
4296
4324
  function createFiberFromPortal(portal, mode, lanes) {
4297
4325
  mode = createFiber(
4298
4326
  4,
@@ -4364,6 +4392,21 @@
4364
4392
  (treeContextId = idStack[--idStackIndex]),
4365
4393
  (idStack[idStackIndex] = null);
4366
4394
  }
4395
+ function getSuspendedTreeContext() {
4396
+ warnIfNotHydrating();
4397
+ return null !== treeContextProvider
4398
+ ? { id: treeContextId, overflow: treeContextOverflow }
4399
+ : null;
4400
+ }
4401
+ function restoreSuspendedTreeContext(workInProgress, suspendedContext) {
4402
+ warnIfNotHydrating();
4403
+ idStack[idStackIndex++] = treeContextId;
4404
+ idStack[idStackIndex++] = treeContextOverflow;
4405
+ idStack[idStackIndex++] = treeContextProvider;
4406
+ treeContextId = suspendedContext.id;
4407
+ treeContextOverflow = suspendedContext.overflow;
4408
+ treeContextProvider = workInProgress;
4409
+ }
4367
4410
  function warnIfNotHydrating() {
4368
4411
  isHydrating ||
4369
4412
  console.error(
@@ -4411,6 +4454,12 @@
4411
4454
  siblings.push(distanceFromLeaf);
4412
4455
  return distanceFromLeaf;
4413
4456
  }
4457
+ function warnIfHydrating() {
4458
+ isHydrating &&
4459
+ console.error(
4460
+ "We should not be hydrating here. This is a bug in React. Please file a bug."
4461
+ );
4462
+ }
4414
4463
  function warnNonHydratedInstance(fiber, rejectedCandidate) {
4415
4464
  didSuspendOrErrorDEV ||
4416
4465
  ((fiber = buildHydrationDiffNode(fiber, 0)),
@@ -4533,6 +4582,7 @@
4533
4582
  for (hydrationParentFiber = fiber.return; hydrationParentFiber; )
4534
4583
  switch (hydrationParentFiber.tag) {
4535
4584
  case 5:
4585
+ case 31:
4536
4586
  case 13:
4537
4587
  rootOrSingletonContext = !1;
4538
4588
  return;
@@ -4566,7 +4616,7 @@
4566
4616
  diffNode.serverTail.push(description);
4567
4617
  JSCompiler_temp =
4568
4618
  "Suspense" === description.type
4569
- ? getNextHydratableInstanceAfterSuspenseInstance(JSCompiler_temp)
4619
+ ? getNextHydratableInstanceAfterHydrationBoundary(JSCompiler_temp)
4570
4620
  : getNextHydratable(JSCompiler_temp.nextSibling);
4571
4621
  }
4572
4622
  throwOnHydrationMismatch(fiber);
@@ -4580,7 +4630,16 @@
4580
4630
  "Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue."
4581
4631
  );
4582
4632
  nextHydratableInstance =
4583
- getNextHydratableInstanceAfterSuspenseInstance(fiber);
4633
+ getNextHydratableInstanceAfterHydrationBoundary(fiber);
4634
+ } else if (31 === tag) {
4635
+ fiber = fiber.memoizedState;
4636
+ fiber = null !== fiber ? fiber.dehydrated : null;
4637
+ if (!fiber)
4638
+ throw Error(
4639
+ "Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue."
4640
+ );
4641
+ nextHydratableInstance =
4642
+ getNextHydratableInstanceAfterHydrationBoundary(fiber);
4584
4643
  } else
4585
4644
  27 === tag
4586
4645
  ? ((tag = nextHydratableInstance),
@@ -6479,19 +6538,17 @@
6479
6538
  ? (shellBoundary = handler)
6480
6539
  : null !== current.memoizedState && (shellBoundary = handler));
6481
6540
  }
6541
+ function pushDehydratedActivitySuspenseHandler(fiber) {
6542
+ push(suspenseStackCursor, suspenseStackCursor.current, fiber);
6543
+ push(suspenseHandlerStackCursor, fiber, fiber);
6544
+ null === shellBoundary && (shellBoundary = fiber);
6545
+ }
6482
6546
  function pushOffscreenSuspenseHandler(fiber) {
6483
- if (22 === fiber.tag) {
6484
- if (
6485
- (push(suspenseStackCursor, suspenseStackCursor.current, fiber),
6547
+ 22 === fiber.tag
6548
+ ? (push(suspenseStackCursor, suspenseStackCursor.current, fiber),
6486
6549
  push(suspenseHandlerStackCursor, fiber, fiber),
6487
- null === shellBoundary)
6488
- ) {
6489
- var current = fiber.alternate;
6490
- null !== current &&
6491
- null !== current.memoizedState &&
6492
- (shellBoundary = fiber);
6493
- }
6494
- } else reuseSuspenseHandlerOnStack(fiber);
6550
+ null === shellBoundary && (shellBoundary = fiber))
6551
+ : reuseSuspenseHandlerOnStack(fiber);
6495
6552
  }
6496
6553
  function reuseSuspenseHandlerOnStack(fiber) {
6497
6554
  push(suspenseStackCursor, suspenseStackCursor.current, fiber);
@@ -8490,6 +8547,7 @@
8490
8547
  sourceFiber = suspenseHandlerStackCursor.current;
8491
8548
  if (null !== sourceFiber) {
8492
8549
  switch (sourceFiber.tag) {
8550
+ case 31:
8493
8551
  case 13:
8494
8552
  return (
8495
8553
  null === shellBoundary
@@ -8819,7 +8877,18 @@
8819
8877
  renderLanes
8820
8878
  );
8821
8879
  }
8822
- if (0 === (renderLanes & 536870912) || isHydrating)
8880
+ if (0 !== (renderLanes & 536870912))
8881
+ (workInProgress.memoizedState = { baseLanes: 0, cachePool: null }),
8882
+ null !== current &&
8883
+ pushTransition(
8884
+ workInProgress,
8885
+ null !== prevState ? prevState.cachePool : null
8886
+ ),
8887
+ null !== prevState
8888
+ ? pushHiddenContext(workInProgress, prevState)
8889
+ : reuseHiddenContextOnStack(workInProgress),
8890
+ pushOffscreenSuspenseHandler(workInProgress);
8891
+ else
8823
8892
  return (
8824
8893
  (workInProgress.lanes = workInProgress.childLanes = 536870912),
8825
8894
  deferHiddenOffscreenComponent(
@@ -8831,16 +8900,6 @@
8831
8900
  renderLanes
8832
8901
  )
8833
8902
  );
8834
- workInProgress.memoizedState = { baseLanes: 0, cachePool: null };
8835
- null !== current &&
8836
- pushTransition(
8837
- workInProgress,
8838
- null !== prevState ? prevState.cachePool : null
8839
- );
8840
- null !== prevState
8841
- ? pushHiddenContext(workInProgress, prevState)
8842
- : reuseHiddenContextOnStack(workInProgress);
8843
- pushOffscreenSuspenseHandler(workInProgress);
8844
8903
  } else
8845
8904
  null !== prevState
8846
8905
  ? (pushTransition(workInProgress, prevState.cachePool),
@@ -8878,6 +8937,42 @@
8878
8937
  propagateParentContextChanges(current, workInProgress, renderLanes, !0);
8879
8938
  return null;
8880
8939
  }
8940
+ function mountActivityChildren(workInProgress, nextProps) {
8941
+ var hiddenProp = nextProps.hidden;
8942
+ void 0 !== hiddenProp &&
8943
+ console.error(
8944
+ '<Activity> doesn\'t accept a hidden prop. Use mode="hidden" instead.\n- <Activity %s>\n+ <Activity %s>',
8945
+ !0 === hiddenProp
8946
+ ? "hidden"
8947
+ : !1 === hiddenProp
8948
+ ? "hidden={false}"
8949
+ : "hidden={...}",
8950
+ hiddenProp ? 'mode="hidden"' : 'mode="visible"'
8951
+ );
8952
+ nextProps = mountWorkInProgressOffscreenFiber(
8953
+ { mode: nextProps.mode, children: nextProps.children },
8954
+ workInProgress.mode
8955
+ );
8956
+ nextProps.ref = workInProgress.ref;
8957
+ workInProgress.child = nextProps;
8958
+ nextProps.return = workInProgress;
8959
+ return nextProps;
8960
+ }
8961
+ function retryActivityComponentWithoutHydrating(
8962
+ current,
8963
+ workInProgress,
8964
+ renderLanes
8965
+ ) {
8966
+ reconcileChildFibers(workInProgress, current.child, null, renderLanes);
8967
+ current = mountActivityChildren(
8968
+ workInProgress,
8969
+ workInProgress.pendingProps
8970
+ );
8971
+ current.flags |= 2;
8972
+ popSuspenseHandler(workInProgress);
8973
+ workInProgress.memoizedState = null;
8974
+ return current;
8975
+ }
8881
8976
  function markRef(current, workInProgress) {
8882
8977
  var ref = workInProgress.ref;
8883
8978
  if (null === ref)
@@ -9582,72 +9677,51 @@
9582
9677
  return current;
9583
9678
  }
9584
9679
  function updateSuspenseComponent(current, workInProgress, renderLanes) {
9585
- var JSCompiler_object_inline_digest_2448;
9586
- var JSCompiler_object_inline_stack_2449 = workInProgress.pendingProps;
9680
+ var JSCompiler_object_inline_digest_2527;
9681
+ var JSCompiler_object_inline_stack_2528 = workInProgress.pendingProps;
9587
9682
  shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128);
9588
- var showFallback = !1,
9589
- didSuspend = 0 !== (workInProgress.flags & 128);
9590
- (JSCompiler_object_inline_digest_2448 = didSuspend) ||
9591
- (JSCompiler_object_inline_digest_2448 =
9683
+ var JSCompiler_object_inline_message_2526 = !1;
9684
+ var didSuspend = 0 !== (workInProgress.flags & 128);
9685
+ (JSCompiler_object_inline_digest_2527 = didSuspend) ||
9686
+ (JSCompiler_object_inline_digest_2527 =
9592
9687
  null !== current && null === current.memoizedState
9593
9688
  ? !1
9594
9689
  : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback));
9595
- JSCompiler_object_inline_digest_2448 &&
9596
- ((showFallback = !0), (workInProgress.flags &= -129));
9597
- JSCompiler_object_inline_digest_2448 = 0 !== (workInProgress.flags & 32);
9690
+ JSCompiler_object_inline_digest_2527 &&
9691
+ ((JSCompiler_object_inline_message_2526 = !0),
9692
+ (workInProgress.flags &= -129));
9693
+ JSCompiler_object_inline_digest_2527 = 0 !== (workInProgress.flags & 32);
9598
9694
  workInProgress.flags &= -33;
9599
9695
  if (null === current) {
9600
9696
  if (isHydrating) {
9601
- showFallback
9697
+ JSCompiler_object_inline_message_2526
9602
9698
  ? pushPrimaryTreeSuspenseHandler(workInProgress)
9603
9699
  : reuseSuspenseHandlerOnStack(workInProgress);
9604
- if ((current = nextHydratableInstance)) {
9605
- a: {
9606
- JSCompiler_object_inline_digest_2448 = current;
9607
- for (
9608
- renderLanes = rootOrSingletonContext;
9609
- 8 !== JSCompiler_object_inline_digest_2448.nodeType;
9610
-
9611
- ) {
9612
- if (!renderLanes) {
9613
- renderLanes = null;
9614
- break a;
9615
- }
9616
- JSCompiler_object_inline_digest_2448 = getNextHydratable(
9617
- JSCompiler_object_inline_digest_2448.nextSibling
9618
- );
9619
- if (null === JSCompiler_object_inline_digest_2448) {
9620
- renderLanes = null;
9621
- break a;
9622
- }
9623
- }
9624
- renderLanes = JSCompiler_object_inline_digest_2448;
9625
- }
9626
- null !== renderLanes &&
9627
- (warnIfNotHydrating(),
9628
- (workInProgress.memoizedState = {
9629
- dehydrated: renderLanes,
9630
- treeContext:
9631
- null !== treeContextProvider
9632
- ? { id: treeContextId, overflow: treeContextOverflow }
9633
- : null,
9634
- retryLane: 536870912,
9635
- hydrationErrors: null
9636
- }),
9637
- (JSCompiler_object_inline_digest_2448 = renderLanes),
9638
- (JSCompiler_object_inline_stack_2449 = createFiber(
9639
- 18,
9640
- null,
9641
- null,
9642
- NoMode
9700
+ (current = nextHydratableInstance)
9701
+ ? ((renderLanes = canHydrateHydrationBoundary(
9702
+ current,
9703
+ rootOrSingletonContext
9643
9704
  )),
9644
- (JSCompiler_object_inline_stack_2449.stateNode =
9645
- JSCompiler_object_inline_digest_2448),
9646
- (JSCompiler_object_inline_stack_2449.return = workInProgress),
9647
- (workInProgress.child = JSCompiler_object_inline_stack_2449),
9648
- (hydrationParentFiber = workInProgress),
9649
- (nextHydratableInstance = null));
9650
- } else renderLanes = null;
9705
+ (renderLanes =
9706
+ null !== renderLanes && renderLanes.data !== ACTIVITY_START_DATA
9707
+ ? renderLanes
9708
+ : null),
9709
+ null !== renderLanes &&
9710
+ ((JSCompiler_object_inline_digest_2527 = {
9711
+ dehydrated: renderLanes,
9712
+ treeContext: getSuspendedTreeContext(),
9713
+ retryLane: 536870912,
9714
+ hydrationErrors: null
9715
+ }),
9716
+ (workInProgress.memoizedState =
9717
+ JSCompiler_object_inline_digest_2527),
9718
+ (JSCompiler_object_inline_digest_2527 =
9719
+ createFiberFromDehydratedFragment(renderLanes)),
9720
+ (JSCompiler_object_inline_digest_2527.return = workInProgress),
9721
+ (workInProgress.child = JSCompiler_object_inline_digest_2527),
9722
+ (hydrationParentFiber = workInProgress),
9723
+ (nextHydratableInstance = null)))
9724
+ : (renderLanes = null);
9651
9725
  if (null === renderLanes)
9652
9726
  throw (
9653
9727
  (warnNonHydratedInstance(workInProgress, current),
@@ -9658,305 +9732,266 @@
9658
9732
  : (workInProgress.lanes = 536870912);
9659
9733
  return null;
9660
9734
  }
9661
- var JSCompiler_object_inline_componentStack_2450 =
9662
- JSCompiler_object_inline_stack_2449.children;
9663
- JSCompiler_object_inline_stack_2449 =
9664
- JSCompiler_object_inline_stack_2449.fallback;
9665
- if (showFallback) {
9735
+ var nextPrimaryChildren = JSCompiler_object_inline_stack_2528.children;
9736
+ JSCompiler_object_inline_stack_2528 =
9737
+ JSCompiler_object_inline_stack_2528.fallback;
9738
+ if (JSCompiler_object_inline_message_2526) {
9666
9739
  reuseSuspenseHandlerOnStack(workInProgress);
9667
9740
  var mode = workInProgress.mode;
9668
- JSCompiler_object_inline_componentStack_2450 =
9669
- mountWorkInProgressOffscreenFiber(
9670
- {
9671
- mode: "hidden",
9672
- children: JSCompiler_object_inline_componentStack_2450
9673
- },
9674
- mode
9675
- );
9676
- JSCompiler_object_inline_stack_2449 = createFiberFromFragment(
9677
- JSCompiler_object_inline_stack_2449,
9741
+ nextPrimaryChildren = mountWorkInProgressOffscreenFiber(
9742
+ { mode: "hidden", children: nextPrimaryChildren },
9743
+ mode
9744
+ );
9745
+ JSCompiler_object_inline_stack_2528 = createFiberFromFragment(
9746
+ JSCompiler_object_inline_stack_2528,
9678
9747
  mode,
9679
9748
  renderLanes,
9680
9749
  null
9681
9750
  );
9682
- JSCompiler_object_inline_componentStack_2450.return = workInProgress;
9683
- JSCompiler_object_inline_stack_2449.return = workInProgress;
9684
- JSCompiler_object_inline_componentStack_2450.sibling =
9685
- JSCompiler_object_inline_stack_2449;
9686
- workInProgress.child = JSCompiler_object_inline_componentStack_2450;
9687
- JSCompiler_object_inline_componentStack_2450 = workInProgress.child;
9688
- JSCompiler_object_inline_componentStack_2450.memoizedState =
9751
+ nextPrimaryChildren.return = workInProgress;
9752
+ JSCompiler_object_inline_stack_2528.return = workInProgress;
9753
+ nextPrimaryChildren.sibling = JSCompiler_object_inline_stack_2528;
9754
+ workInProgress.child = nextPrimaryChildren;
9755
+ nextPrimaryChildren = workInProgress.child;
9756
+ nextPrimaryChildren.memoizedState =
9689
9757
  mountSuspenseOffscreenState(renderLanes);
9690
- JSCompiler_object_inline_componentStack_2450.childLanes =
9691
- getRemainingWorkInPrimaryTree(
9692
- current,
9693
- JSCompiler_object_inline_digest_2448,
9694
- renderLanes
9695
- );
9758
+ nextPrimaryChildren.childLanes = getRemainingWorkInPrimaryTree(
9759
+ current,
9760
+ JSCompiler_object_inline_digest_2527,
9761
+ renderLanes
9762
+ );
9696
9763
  workInProgress.memoizedState = SUSPENDED_MARKER;
9697
- return JSCompiler_object_inline_stack_2449;
9764
+ return JSCompiler_object_inline_stack_2528;
9698
9765
  }
9699
9766
  pushPrimaryTreeSuspenseHandler(workInProgress);
9700
9767
  return mountSuspensePrimaryChildren(
9701
9768
  workInProgress,
9702
- JSCompiler_object_inline_componentStack_2450
9769
+ nextPrimaryChildren
9703
9770
  );
9704
9771
  }
9705
- var JSCompiler_object_inline_message_2447 = current.memoizedState;
9706
- if (
9707
- null !== JSCompiler_object_inline_message_2447 &&
9708
- ((JSCompiler_object_inline_componentStack_2450 =
9709
- JSCompiler_object_inline_message_2447.dehydrated),
9710
- null !== JSCompiler_object_inline_componentStack_2450)
9711
- ) {
9712
- if (didSuspend)
9713
- workInProgress.flags & 256
9714
- ? (pushPrimaryTreeSuspenseHandler(workInProgress),
9715
- (workInProgress.flags &= -257),
9716
- (workInProgress = retrySuspenseComponentWithoutHydrating(
9717
- current,
9718
- workInProgress,
9719
- renderLanes
9720
- )))
9721
- : null !== workInProgress.memoizedState
9722
- ? (reuseSuspenseHandlerOnStack(workInProgress),
9723
- (workInProgress.child = current.child),
9724
- (workInProgress.flags |= 128),
9725
- (workInProgress = null))
9726
- : (reuseSuspenseHandlerOnStack(workInProgress),
9727
- (JSCompiler_object_inline_componentStack_2450 =
9728
- JSCompiler_object_inline_stack_2449.fallback),
9729
- (mode = workInProgress.mode),
9730
- (JSCompiler_object_inline_stack_2449 =
9731
- mountWorkInProgressOffscreenFiber(
9732
- {
9733
- mode: "visible",
9734
- children: JSCompiler_object_inline_stack_2449.children
9735
- },
9736
- mode
9737
- )),
9738
- (JSCompiler_object_inline_componentStack_2450 =
9739
- createFiberFromFragment(
9740
- JSCompiler_object_inline_componentStack_2450,
9772
+ var prevState = current.memoizedState;
9773
+ if (null !== prevState) {
9774
+ var JSCompiler_object_inline_componentStack_2529 = prevState.dehydrated;
9775
+ if (null !== JSCompiler_object_inline_componentStack_2529) {
9776
+ if (didSuspend)
9777
+ workInProgress.flags & 256
9778
+ ? (pushPrimaryTreeSuspenseHandler(workInProgress),
9779
+ (workInProgress.flags &= -257),
9780
+ (workInProgress = retrySuspenseComponentWithoutHydrating(
9781
+ current,
9782
+ workInProgress,
9783
+ renderLanes
9784
+ )))
9785
+ : null !== workInProgress.memoizedState
9786
+ ? (reuseSuspenseHandlerOnStack(workInProgress),
9787
+ (workInProgress.child = current.child),
9788
+ (workInProgress.flags |= 128),
9789
+ (workInProgress = null))
9790
+ : (reuseSuspenseHandlerOnStack(workInProgress),
9791
+ (nextPrimaryChildren =
9792
+ JSCompiler_object_inline_stack_2528.fallback),
9793
+ (mode = workInProgress.mode),
9794
+ (JSCompiler_object_inline_stack_2528 =
9795
+ mountWorkInProgressOffscreenFiber(
9796
+ {
9797
+ mode: "visible",
9798
+ children: JSCompiler_object_inline_stack_2528.children
9799
+ },
9800
+ mode
9801
+ )),
9802
+ (nextPrimaryChildren = createFiberFromFragment(
9803
+ nextPrimaryChildren,
9741
9804
  mode,
9742
9805
  renderLanes,
9743
9806
  null
9744
9807
  )),
9745
- (JSCompiler_object_inline_componentStack_2450.flags |= 2),
9746
- (JSCompiler_object_inline_stack_2449.return = workInProgress),
9747
- (JSCompiler_object_inline_componentStack_2450.return =
9748
- workInProgress),
9749
- (JSCompiler_object_inline_stack_2449.sibling =
9750
- JSCompiler_object_inline_componentStack_2450),
9751
- (workInProgress.child = JSCompiler_object_inline_stack_2449),
9752
- reconcileChildFibers(
9753
- workInProgress,
9754
- current.child,
9755
- null,
9756
- renderLanes
9757
- ),
9758
- (JSCompiler_object_inline_stack_2449 = workInProgress.child),
9759
- (JSCompiler_object_inline_stack_2449.memoizedState =
9760
- mountSuspenseOffscreenState(renderLanes)),
9761
- (JSCompiler_object_inline_stack_2449.childLanes =
9762
- getRemainingWorkInPrimaryTree(
9763
- current,
9764
- JSCompiler_object_inline_digest_2448,
9808
+ (nextPrimaryChildren.flags |= 2),
9809
+ (JSCompiler_object_inline_stack_2528.return = workInProgress),
9810
+ (nextPrimaryChildren.return = workInProgress),
9811
+ (JSCompiler_object_inline_stack_2528.sibling =
9812
+ nextPrimaryChildren),
9813
+ (workInProgress.child = JSCompiler_object_inline_stack_2528),
9814
+ reconcileChildFibers(
9815
+ workInProgress,
9816
+ current.child,
9817
+ null,
9765
9818
  renderLanes
9766
- )),
9767
- (workInProgress.memoizedState = SUSPENDED_MARKER),
9768
- (workInProgress =
9769
- JSCompiler_object_inline_componentStack_2450));
9770
- else if (
9771
- (pushPrimaryTreeSuspenseHandler(workInProgress),
9772
- isHydrating &&
9773
- console.error(
9774
- "We should not be hydrating here. This is a bug in React. Please file a bug."
9775
- ),
9776
- isSuspenseInstanceFallback(
9777
- JSCompiler_object_inline_componentStack_2450
9778
- ))
9779
- ) {
9780
- JSCompiler_object_inline_digest_2448 =
9781
- JSCompiler_object_inline_componentStack_2450.nextSibling &&
9782
- JSCompiler_object_inline_componentStack_2450.nextSibling.dataset;
9783
- if (JSCompiler_object_inline_digest_2448) {
9784
- mode = JSCompiler_object_inline_digest_2448.dgst;
9785
- var message = JSCompiler_object_inline_digest_2448.msg;
9786
- var componentStack = JSCompiler_object_inline_digest_2448.stck;
9787
- var componentStack$jscomp$0 =
9788
- JSCompiler_object_inline_digest_2448.cstck;
9789
- }
9790
- JSCompiler_object_inline_message_2447 = message;
9791
- JSCompiler_object_inline_digest_2448 = mode;
9792
- JSCompiler_object_inline_stack_2449 = componentStack;
9793
- JSCompiler_object_inline_componentStack_2450 =
9794
- componentStack$jscomp$0;
9795
- mode = JSCompiler_object_inline_message_2447;
9796
- componentStack = JSCompiler_object_inline_componentStack_2450;
9797
- JSCompiler_object_inline_componentStack_2450 = mode
9798
- ? Error(mode)
9799
- : Error(
9800
- "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering."
9819
+ ),
9820
+ (JSCompiler_object_inline_stack_2528 = workInProgress.child),
9821
+ (JSCompiler_object_inline_stack_2528.memoizedState =
9822
+ mountSuspenseOffscreenState(renderLanes)),
9823
+ (JSCompiler_object_inline_stack_2528.childLanes =
9824
+ getRemainingWorkInPrimaryTree(
9825
+ current,
9826
+ JSCompiler_object_inline_digest_2527,
9827
+ renderLanes
9828
+ )),
9829
+ (workInProgress.memoizedState = SUSPENDED_MARKER),
9830
+ (workInProgress = nextPrimaryChildren));
9831
+ else if (
9832
+ (pushPrimaryTreeSuspenseHandler(workInProgress),
9833
+ warnIfHydrating(),
9834
+ isSuspenseInstanceFallback(
9835
+ JSCompiler_object_inline_componentStack_2529
9836
+ ))
9837
+ ) {
9838
+ JSCompiler_object_inline_digest_2527 =
9839
+ JSCompiler_object_inline_componentStack_2529.nextSibling &&
9840
+ JSCompiler_object_inline_componentStack_2529.nextSibling.dataset;
9841
+ if (JSCompiler_object_inline_digest_2527) {
9842
+ nextPrimaryChildren = JSCompiler_object_inline_digest_2527.dgst;
9843
+ var message = JSCompiler_object_inline_digest_2527.msg;
9844
+ mode = JSCompiler_object_inline_digest_2527.stck;
9845
+ var componentStack = JSCompiler_object_inline_digest_2527.cstck;
9846
+ }
9847
+ JSCompiler_object_inline_message_2526 = message;
9848
+ JSCompiler_object_inline_digest_2527 = nextPrimaryChildren;
9849
+ JSCompiler_object_inline_stack_2528 = mode;
9850
+ JSCompiler_object_inline_componentStack_2529 = componentStack;
9851
+ nextPrimaryChildren = JSCompiler_object_inline_message_2526;
9852
+ mode = JSCompiler_object_inline_componentStack_2529;
9853
+ nextPrimaryChildren = nextPrimaryChildren
9854
+ ? Error(nextPrimaryChildren)
9855
+ : Error(
9856
+ "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering."
9857
+ );
9858
+ nextPrimaryChildren.stack =
9859
+ JSCompiler_object_inline_stack_2528 || "";
9860
+ nextPrimaryChildren.digest = JSCompiler_object_inline_digest_2527;
9861
+ JSCompiler_object_inline_digest_2527 =
9862
+ void 0 === mode ? null : mode;
9863
+ JSCompiler_object_inline_stack_2528 = {
9864
+ value: nextPrimaryChildren,
9865
+ source: null,
9866
+ stack: JSCompiler_object_inline_digest_2527
9867
+ };
9868
+ "string" === typeof JSCompiler_object_inline_digest_2527 &&
9869
+ CapturedStacks.set(
9870
+ nextPrimaryChildren,
9871
+ JSCompiler_object_inline_stack_2528
9801
9872
  );
9802
- JSCompiler_object_inline_componentStack_2450.stack =
9803
- JSCompiler_object_inline_stack_2449 || "";
9804
- JSCompiler_object_inline_componentStack_2450.digest =
9805
- JSCompiler_object_inline_digest_2448;
9806
- JSCompiler_object_inline_digest_2448 =
9807
- void 0 === componentStack ? null : componentStack;
9808
- JSCompiler_object_inline_stack_2449 = {
9809
- value: JSCompiler_object_inline_componentStack_2450,
9810
- source: null,
9811
- stack: JSCompiler_object_inline_digest_2448
9812
- };
9813
- "string" === typeof JSCompiler_object_inline_digest_2448 &&
9814
- CapturedStacks.set(
9815
- JSCompiler_object_inline_componentStack_2450,
9816
- JSCompiler_object_inline_stack_2449
9817
- );
9818
- queueHydrationError(JSCompiler_object_inline_stack_2449);
9819
- workInProgress = retrySuspenseComponentWithoutHydrating(
9820
- current,
9821
- workInProgress,
9822
- renderLanes
9823
- );
9824
- } else if (
9825
- (didReceiveUpdate ||
9826
- propagateParentContextChanges(
9873
+ queueHydrationError(JSCompiler_object_inline_stack_2528);
9874
+ workInProgress = retrySuspenseComponentWithoutHydrating(
9827
9875
  current,
9828
9876
  workInProgress,
9829
- renderLanes,
9830
- !1
9831
- ),
9832
- (JSCompiler_object_inline_digest_2448 =
9833
- 0 !== (renderLanes & current.childLanes)),
9834
- didReceiveUpdate || JSCompiler_object_inline_digest_2448)
9835
- ) {
9836
- JSCompiler_object_inline_digest_2448 = workInProgressRoot;
9837
- if (
9838
- null !== JSCompiler_object_inline_digest_2448 &&
9839
- ((JSCompiler_object_inline_stack_2449 = renderLanes & -renderLanes),
9840
- (JSCompiler_object_inline_stack_2449 =
9841
- 0 !== (JSCompiler_object_inline_stack_2449 & 42)
9842
- ? 1
9843
- : getBumpedLaneForHydrationByLane(
9844
- JSCompiler_object_inline_stack_2449
9845
- )),
9846
- (JSCompiler_object_inline_stack_2449 =
9847
- 0 !==
9848
- (JSCompiler_object_inline_stack_2449 &
9849
- (JSCompiler_object_inline_digest_2448.suspendedLanes |
9850
- renderLanes))
9851
- ? 0
9852
- : JSCompiler_object_inline_stack_2449),
9853
- 0 !== JSCompiler_object_inline_stack_2449 &&
9854
- JSCompiler_object_inline_stack_2449 !==
9855
- JSCompiler_object_inline_message_2447.retryLane)
9856
- )
9857
- throw (
9858
- ((JSCompiler_object_inline_message_2447.retryLane =
9859
- JSCompiler_object_inline_stack_2449),
9860
- enqueueConcurrentRenderForLane(
9861
- current,
9862
- JSCompiler_object_inline_stack_2449
9863
- ),
9864
- scheduleUpdateOnFiber(
9865
- JSCompiler_object_inline_digest_2448,
9866
- current,
9867
- JSCompiler_object_inline_stack_2449
9868
- ),
9869
- SelectiveHydrationException)
9877
+ renderLanes
9870
9878
  );
9871
- JSCompiler_object_inline_componentStack_2450.data ===
9872
- SUSPENSE_PENDING_START_DATA || renderDidSuspendDelayIfPossible();
9873
- workInProgress = retrySuspenseComponentWithoutHydrating(
9874
- current,
9875
- workInProgress,
9876
- renderLanes
9877
- );
9878
- } else
9879
- JSCompiler_object_inline_componentStack_2450.data ===
9880
- SUSPENSE_PENDING_START_DATA
9881
- ? ((workInProgress.flags |= 192),
9882
- (workInProgress.child = current.child),
9883
- (workInProgress = null))
9884
- : ((current = JSCompiler_object_inline_message_2447.treeContext),
9885
- (nextHydratableInstance = getNextHydratable(
9886
- JSCompiler_object_inline_componentStack_2450.nextSibling
9887
- )),
9888
- (hydrationParentFiber = workInProgress),
9889
- (isHydrating = !0),
9890
- (hydrationErrors = null),
9891
- (didSuspendOrErrorDEV = !1),
9892
- (hydrationDiffRootDEV = null),
9893
- (rootOrSingletonContext = !1),
9894
- null !== current &&
9895
- (warnIfNotHydrating(),
9896
- (idStack[idStackIndex++] = treeContextId),
9897
- (idStack[idStackIndex++] = treeContextOverflow),
9898
- (idStack[idStackIndex++] = treeContextProvider),
9899
- (treeContextId = current.id),
9900
- (treeContextOverflow = current.overflow),
9901
- (treeContextProvider = workInProgress)),
9902
- (workInProgress = mountSuspensePrimaryChildren(
9879
+ } else if (
9880
+ (didReceiveUpdate ||
9881
+ propagateParentContextChanges(
9882
+ current,
9903
9883
  workInProgress,
9904
- JSCompiler_object_inline_stack_2449.children
9884
+ renderLanes,
9885
+ !1
9886
+ ),
9887
+ (JSCompiler_object_inline_digest_2527 =
9888
+ 0 !== (renderLanes & current.childLanes)),
9889
+ didReceiveUpdate || JSCompiler_object_inline_digest_2527)
9890
+ ) {
9891
+ JSCompiler_object_inline_digest_2527 = workInProgressRoot;
9892
+ if (
9893
+ null !== JSCompiler_object_inline_digest_2527 &&
9894
+ ((JSCompiler_object_inline_stack_2528 = getBumpedLaneForHydration(
9895
+ JSCompiler_object_inline_digest_2527,
9896
+ renderLanes
9905
9897
  )),
9906
- (workInProgress.flags |= 4096));
9907
- return workInProgress;
9898
+ 0 !== JSCompiler_object_inline_stack_2528 &&
9899
+ JSCompiler_object_inline_stack_2528 !== prevState.retryLane)
9900
+ )
9901
+ throw (
9902
+ ((prevState.retryLane = JSCompiler_object_inline_stack_2528),
9903
+ enqueueConcurrentRenderForLane(
9904
+ current,
9905
+ JSCompiler_object_inline_stack_2528
9906
+ ),
9907
+ scheduleUpdateOnFiber(
9908
+ JSCompiler_object_inline_digest_2527,
9909
+ current,
9910
+ JSCompiler_object_inline_stack_2528
9911
+ ),
9912
+ SelectiveHydrationException)
9913
+ );
9914
+ JSCompiler_object_inline_componentStack_2529.data ===
9915
+ SUSPENSE_PENDING_START_DATA || renderDidSuspendDelayIfPossible();
9916
+ workInProgress = retrySuspenseComponentWithoutHydrating(
9917
+ current,
9918
+ workInProgress,
9919
+ renderLanes
9920
+ );
9921
+ } else
9922
+ JSCompiler_object_inline_componentStack_2529.data ===
9923
+ SUSPENSE_PENDING_START_DATA
9924
+ ? ((workInProgress.flags |= 192),
9925
+ (workInProgress.child = current.child),
9926
+ (workInProgress = null))
9927
+ : ((current = prevState.treeContext),
9928
+ (nextHydratableInstance = getNextHydratable(
9929
+ JSCompiler_object_inline_componentStack_2529.nextSibling
9930
+ )),
9931
+ (hydrationParentFiber = workInProgress),
9932
+ (isHydrating = !0),
9933
+ (hydrationErrors = null),
9934
+ (didSuspendOrErrorDEV = !1),
9935
+ (hydrationDiffRootDEV = null),
9936
+ (rootOrSingletonContext = !1),
9937
+ null !== current &&
9938
+ restoreSuspendedTreeContext(workInProgress, current),
9939
+ (workInProgress = mountSuspensePrimaryChildren(
9940
+ workInProgress,
9941
+ JSCompiler_object_inline_stack_2528.children
9942
+ )),
9943
+ (workInProgress.flags |= 4096));
9944
+ return workInProgress;
9945
+ }
9908
9946
  }
9909
- if (showFallback)
9947
+ if (JSCompiler_object_inline_message_2526)
9910
9948
  return (
9911
9949
  reuseSuspenseHandlerOnStack(workInProgress),
9912
- (JSCompiler_object_inline_componentStack_2450 =
9913
- JSCompiler_object_inline_stack_2449.fallback),
9950
+ (nextPrimaryChildren = JSCompiler_object_inline_stack_2528.fallback),
9914
9951
  (mode = workInProgress.mode),
9915
9952
  (componentStack = current.child),
9916
- (componentStack$jscomp$0 = componentStack.sibling),
9917
- (JSCompiler_object_inline_stack_2449 = createWorkInProgress(
9953
+ (JSCompiler_object_inline_componentStack_2529 =
9954
+ componentStack.sibling),
9955
+ (JSCompiler_object_inline_stack_2528 = createWorkInProgress(
9918
9956
  componentStack,
9919
9957
  {
9920
9958
  mode: "hidden",
9921
- children: JSCompiler_object_inline_stack_2449.children
9959
+ children: JSCompiler_object_inline_stack_2528.children
9922
9960
  }
9923
9961
  )),
9924
- (JSCompiler_object_inline_stack_2449.subtreeFlags =
9962
+ (JSCompiler_object_inline_stack_2528.subtreeFlags =
9925
9963
  componentStack.subtreeFlags & 65011712),
9926
- null !== componentStack$jscomp$0
9927
- ? (JSCompiler_object_inline_componentStack_2450 =
9928
- createWorkInProgress(
9929
- componentStack$jscomp$0,
9930
- JSCompiler_object_inline_componentStack_2450
9931
- ))
9932
- : ((JSCompiler_object_inline_componentStack_2450 =
9933
- createFiberFromFragment(
9934
- JSCompiler_object_inline_componentStack_2450,
9935
- mode,
9936
- renderLanes,
9937
- null
9938
- )),
9939
- (JSCompiler_object_inline_componentStack_2450.flags |= 2)),
9940
- (JSCompiler_object_inline_componentStack_2450.return =
9941
- workInProgress),
9942
- (JSCompiler_object_inline_stack_2449.return = workInProgress),
9943
- (JSCompiler_object_inline_stack_2449.sibling =
9944
- JSCompiler_object_inline_componentStack_2450),
9945
- (workInProgress.child = JSCompiler_object_inline_stack_2449),
9946
- (JSCompiler_object_inline_stack_2449 =
9947
- JSCompiler_object_inline_componentStack_2450),
9948
- (JSCompiler_object_inline_componentStack_2450 = workInProgress.child),
9964
+ null !== JSCompiler_object_inline_componentStack_2529
9965
+ ? (nextPrimaryChildren = createWorkInProgress(
9966
+ JSCompiler_object_inline_componentStack_2529,
9967
+ nextPrimaryChildren
9968
+ ))
9969
+ : ((nextPrimaryChildren = createFiberFromFragment(
9970
+ nextPrimaryChildren,
9971
+ mode,
9972
+ renderLanes,
9973
+ null
9974
+ )),
9975
+ (nextPrimaryChildren.flags |= 2)),
9976
+ (nextPrimaryChildren.return = workInProgress),
9977
+ (JSCompiler_object_inline_stack_2528.return = workInProgress),
9978
+ (JSCompiler_object_inline_stack_2528.sibling = nextPrimaryChildren),
9979
+ (workInProgress.child = JSCompiler_object_inline_stack_2528),
9980
+ (JSCompiler_object_inline_stack_2528 = nextPrimaryChildren),
9981
+ (nextPrimaryChildren = workInProgress.child),
9949
9982
  (mode = current.child.memoizedState),
9950
9983
  null === mode
9951
9984
  ? (mode = mountSuspenseOffscreenState(renderLanes))
9952
9985
  : ((componentStack = mode.cachePool),
9953
9986
  null !== componentStack
9954
- ? ((componentStack$jscomp$0 = CacheContext._currentValue),
9987
+ ? ((JSCompiler_object_inline_componentStack_2529 =
9988
+ CacheContext._currentValue),
9955
9989
  (componentStack =
9956
- componentStack.parent !== componentStack$jscomp$0
9990
+ componentStack.parent !==
9991
+ JSCompiler_object_inline_componentStack_2529
9957
9992
  ? {
9958
- parent: componentStack$jscomp$0,
9959
- pool: componentStack$jscomp$0
9993
+ parent: JSCompiler_object_inline_componentStack_2529,
9994
+ pool: JSCompiler_object_inline_componentStack_2529
9960
9995
  }
9961
9996
  : componentStack))
9962
9997
  : (componentStack = getSuspendedCache()),
@@ -9964,31 +9999,30 @@
9964
9999
  baseLanes: mode.baseLanes | renderLanes,
9965
10000
  cachePool: componentStack
9966
10001
  })),
9967
- (JSCompiler_object_inline_componentStack_2450.memoizedState = mode),
9968
- (JSCompiler_object_inline_componentStack_2450.childLanes =
9969
- getRemainingWorkInPrimaryTree(
9970
- current,
9971
- JSCompiler_object_inline_digest_2448,
9972
- renderLanes
9973
- )),
10002
+ (nextPrimaryChildren.memoizedState = mode),
10003
+ (nextPrimaryChildren.childLanes = getRemainingWorkInPrimaryTree(
10004
+ current,
10005
+ JSCompiler_object_inline_digest_2527,
10006
+ renderLanes
10007
+ )),
9974
10008
  (workInProgress.memoizedState = SUSPENDED_MARKER),
9975
- JSCompiler_object_inline_stack_2449
10009
+ JSCompiler_object_inline_stack_2528
9976
10010
  );
9977
10011
  pushPrimaryTreeSuspenseHandler(workInProgress);
9978
10012
  renderLanes = current.child;
9979
10013
  current = renderLanes.sibling;
9980
10014
  renderLanes = createWorkInProgress(renderLanes, {
9981
10015
  mode: "visible",
9982
- children: JSCompiler_object_inline_stack_2449.children
10016
+ children: JSCompiler_object_inline_stack_2528.children
9983
10017
  });
9984
10018
  renderLanes.return = workInProgress;
9985
10019
  renderLanes.sibling = null;
9986
10020
  null !== current &&
9987
- ((JSCompiler_object_inline_digest_2448 = workInProgress.deletions),
9988
- null === JSCompiler_object_inline_digest_2448
10021
+ ((JSCompiler_object_inline_digest_2527 = workInProgress.deletions),
10022
+ null === JSCompiler_object_inline_digest_2527
9989
10023
  ? ((workInProgress.deletions = [current]),
9990
10024
  (workInProgress.flags |= 16))
9991
- : JSCompiler_object_inline_digest_2448.push(current));
10025
+ : JSCompiler_object_inline_digest_2527.push(current));
9992
10026
  workInProgress.child = renderLanes;
9993
10027
  workInProgress.memoizedState = null;
9994
10028
  return renderLanes;
@@ -10327,6 +10361,14 @@
10327
10361
  stateNode.effectDuration = -0;
10328
10362
  stateNode.passiveEffectDuration = -0;
10329
10363
  break;
10364
+ case 31:
10365
+ if (null !== workInProgress.memoizedState)
10366
+ return (
10367
+ (workInProgress.flags |= 128),
10368
+ pushDehydratedActivitySuspenseHandler(workInProgress),
10369
+ null
10370
+ );
10371
+ break;
10330
10372
  case 13:
10331
10373
  stateNode = workInProgress.memoizedState;
10332
10374
  if (null !== stateNode) {
@@ -10542,10 +10584,10 @@
10542
10584
  current.$$typeof === REACT_LAZY_TYPE &&
10543
10585
  (workInProgress =
10544
10586
  " Did you wrap a component in React.lazy() more than once?");
10545
- current = getComponentNameFromType(current) || current;
10587
+ renderLanes = getComponentNameFromType(current) || current;
10546
10588
  throw Error(
10547
10589
  "Element type is invalid. Received a promise that resolves to: " +
10548
- current +
10590
+ renderLanes +
10549
10591
  ". Lazy element type must resolve to a class or function." +
10550
10592
  workInProgress
10551
10593
  );
@@ -10653,15 +10695,15 @@
10653
10695
  didSuspendOrErrorDEV = !1;
10654
10696
  hydrationDiffRootDEV = null;
10655
10697
  rootOrSingletonContext = !0;
10656
- current = mountChildFibers(
10698
+ renderLanes = mountChildFibers(
10657
10699
  workInProgress,
10658
10700
  null,
10659
10701
  returnFiber,
10660
10702
  renderLanes
10661
10703
  );
10662
- for (workInProgress.child = current; current; )
10663
- (current.flags = (current.flags & -3) | 4096),
10664
- (current = current.sibling);
10704
+ for (workInProgress.child = renderLanes; renderLanes; )
10705
+ (renderLanes.flags = (renderLanes.flags & -3) | 4096),
10706
+ (renderLanes = renderLanes.sibling);
10665
10707
  }
10666
10708
  else {
10667
10709
  resetHydrationState();
@@ -10687,26 +10729,26 @@
10687
10729
  return (
10688
10730
  markRef(current, workInProgress),
10689
10731
  null === current
10690
- ? (current = getResource(
10732
+ ? (renderLanes = getResource(
10691
10733
  workInProgress.type,
10692
10734
  null,
10693
10735
  workInProgress.pendingProps,
10694
10736
  null
10695
10737
  ))
10696
- ? (workInProgress.memoizedState = current)
10738
+ ? (workInProgress.memoizedState = renderLanes)
10697
10739
  : isHydrating ||
10698
- ((current = workInProgress.type),
10699
- (renderLanes = workInProgress.pendingProps),
10740
+ ((renderLanes = workInProgress.type),
10741
+ (current = workInProgress.pendingProps),
10700
10742
  (returnFiber = requiredContext(
10701
10743
  rootInstanceStackCursor.current
10702
10744
  )),
10703
10745
  (returnFiber =
10704
10746
  getOwnerDocumentFromRootContainer(
10705
10747
  returnFiber
10706
- ).createElement(current)),
10748
+ ).createElement(renderLanes)),
10707
10749
  (returnFiber[internalInstanceKey] = workInProgress),
10708
- (returnFiber[internalPropsKey] = renderLanes),
10709
- setInitialProperties(returnFiber, current, renderLanes),
10750
+ (returnFiber[internalPropsKey] = current),
10751
+ setInitialProperties(returnFiber, renderLanes, current),
10710
10752
  markNodeAsHoistable(returnFiber),
10711
10753
  (workInProgress.stateNode = returnFiber))
10712
10754
  : (workInProgress.memoizedState = getResource(
@@ -10835,21 +10877,21 @@
10835
10877
  return (
10836
10878
  null === current &&
10837
10879
  isHydrating &&
10838
- ((current = workInProgress.pendingProps),
10839
- (renderLanes = getHostContext()),
10840
- (returnFiber = renderLanes.ancestorInfo.current),
10841
- (current =
10880
+ ((renderLanes = workInProgress.pendingProps),
10881
+ (current = getHostContext()),
10882
+ (returnFiber = current.ancestorInfo.current),
10883
+ (renderLanes =
10842
10884
  null != returnFiber
10843
10885
  ? validateTextNesting(
10844
- current,
10886
+ renderLanes,
10845
10887
  returnFiber.tag,
10846
- renderLanes.ancestorInfo.implicitRootScope
10888
+ current.ancestorInfo.implicitRootScope
10847
10889
  )
10848
10890
  : !0),
10849
- (renderLanes = nextHydratableInstance),
10850
- (returnFiber = !renderLanes) ||
10891
+ (current = nextHydratableInstance),
10892
+ (returnFiber = !current) ||
10851
10893
  ((returnFiber = canHydrateTextInstance(
10852
- renderLanes,
10894
+ current,
10853
10895
  workInProgress.pendingProps,
10854
10896
  rootOrSingletonContext
10855
10897
  )),
@@ -10861,8 +10903,8 @@
10861
10903
  : (returnFiber = !1),
10862
10904
  (returnFiber = !returnFiber)),
10863
10905
  returnFiber &&
10864
- (current &&
10865
- warnNonHydratedInstance(workInProgress, renderLanes),
10906
+ (renderLanes &&
10907
+ warnNonHydratedInstance(workInProgress, current),
10866
10908
  throwOnHydrationMismatch(workInProgress))),
10867
10909
  null
10868
10910
  );
@@ -11002,40 +11044,136 @@
11002
11044
  renderLanes
11003
11045
  );
11004
11046
  case 31:
11005
- return (
11006
- (renderLanes = workInProgress.pendingProps),
11007
- (returnFiber = renderLanes.hidden),
11008
- void 0 !== returnFiber &&
11009
- console.error(
11010
- '<Activity> doesn\'t accept a hidden prop. Use mode="hidden" instead.\n- <Activity %s>\n+ <Activity %s>',
11011
- !0 === returnFiber
11012
- ? "hidden"
11013
- : !1 === returnFiber
11014
- ? "hidden={false}"
11015
- : "hidden={...}",
11016
- returnFiber ? 'mode="hidden"' : 'mode="visible"'
11017
- ),
11018
- (returnFiber = workInProgress.mode),
11019
- (renderLanes = {
11020
- mode: renderLanes.mode,
11021
- children: renderLanes.children
11022
- }),
11023
- null === current
11024
- ? ((current = mountWorkInProgressOffscreenFiber(
11047
+ prevSibling = workInProgress.pendingProps;
11048
+ nextState = 0 !== (workInProgress.flags & 128);
11049
+ workInProgress.flags &= -129;
11050
+ if (null === current)
11051
+ if (isHydrating) {
11052
+ if ("hidden" === prevSibling.mode)
11053
+ mountActivityChildren(workInProgress, prevSibling);
11054
+ else if (
11055
+ (pushDehydratedActivitySuspenseHandler(workInProgress),
11056
+ (renderLanes = nextHydratableInstance)
11057
+ ? ((current = canHydrateHydrationBoundary(
11058
+ renderLanes,
11059
+ rootOrSingletonContext
11060
+ )),
11061
+ (current =
11062
+ null !== current && current.data === ACTIVITY_START_DATA
11063
+ ? current
11064
+ : null),
11065
+ null !== current &&
11066
+ ((returnFiber = {
11067
+ dehydrated: current,
11068
+ treeContext: getSuspendedTreeContext(),
11069
+ retryLane: 536870912,
11070
+ hydrationErrors: null
11071
+ }),
11072
+ (workInProgress.memoizedState = returnFiber),
11073
+ (returnFiber =
11074
+ createFiberFromDehydratedFragment(current)),
11075
+ (returnFiber.return = workInProgress),
11076
+ (workInProgress.child = returnFiber),
11077
+ (hydrationParentFiber = workInProgress),
11078
+ (nextHydratableInstance = null)))
11079
+ : (current = null),
11080
+ null === current)
11081
+ )
11082
+ throw (
11083
+ (warnNonHydratedInstance(workInProgress, renderLanes),
11084
+ throwOnHydrationMismatch(workInProgress))
11085
+ );
11086
+ workInProgress.lanes = 536870912;
11087
+ workInProgress = null;
11088
+ } else
11089
+ workInProgress = mountActivityChildren(
11090
+ workInProgress,
11091
+ prevSibling
11092
+ );
11093
+ else if (
11094
+ ((returnFiber = current.memoizedState), null !== returnFiber)
11095
+ )
11096
+ if (
11097
+ ((prevState = returnFiber.dehydrated),
11098
+ pushDehydratedActivitySuspenseHandler(workInProgress),
11099
+ nextState)
11100
+ )
11101
+ if (workInProgress.flags & 256)
11102
+ (workInProgress.flags &= -257),
11103
+ (workInProgress = retryActivityComponentWithoutHydrating(
11104
+ current,
11105
+ workInProgress,
11106
+ renderLanes
11107
+ ));
11108
+ else if (null !== workInProgress.memoizedState)
11109
+ (workInProgress.child = current.child),
11110
+ (workInProgress.flags |= 128),
11111
+ (workInProgress = null);
11112
+ else
11113
+ throw Error(
11114
+ "Client rendering an Activity suspended it again. This is a bug in React."
11115
+ );
11116
+ else if (
11117
+ (warnIfHydrating(),
11118
+ didReceiveUpdate ||
11119
+ propagateParentContextChanges(
11120
+ current,
11121
+ workInProgress,
11025
11122
  renderLanes,
11026
- returnFiber
11123
+ !1
11124
+ ),
11125
+ (nextState = 0 !== (renderLanes & current.childLanes)),
11126
+ didReceiveUpdate || nextState)
11127
+ ) {
11128
+ prevSibling = workInProgressRoot;
11129
+ if (
11130
+ null !== prevSibling &&
11131
+ ((prevState = getBumpedLaneForHydration(
11132
+ prevSibling,
11133
+ renderLanes
11027
11134
  )),
11028
- (current.ref = workInProgress.ref),
11029
- (workInProgress.child = current),
11030
- (current.return = workInProgress),
11031
- (workInProgress = current))
11032
- : ((current = createWorkInProgress(current.child, renderLanes)),
11033
- (current.ref = workInProgress.ref),
11034
- (workInProgress.child = current),
11035
- (current.return = workInProgress),
11036
- (workInProgress = current)),
11037
- workInProgress
11038
- );
11135
+ 0 !== prevState && prevState !== returnFiber.retryLane)
11136
+ )
11137
+ throw (
11138
+ ((returnFiber.retryLane = prevState),
11139
+ enqueueConcurrentRenderForLane(current, prevState),
11140
+ scheduleUpdateOnFiber(prevSibling, current, prevState),
11141
+ SelectiveHydrationException)
11142
+ );
11143
+ renderDidSuspendDelayIfPossible();
11144
+ workInProgress = retryActivityComponentWithoutHydrating(
11145
+ current,
11146
+ workInProgress,
11147
+ renderLanes
11148
+ );
11149
+ } else
11150
+ (renderLanes = returnFiber.treeContext),
11151
+ (nextHydratableInstance = getNextHydratable(
11152
+ prevState.nextSibling
11153
+ )),
11154
+ (hydrationParentFiber = workInProgress),
11155
+ (isHydrating = !0),
11156
+ (hydrationErrors = null),
11157
+ (didSuspendOrErrorDEV = !1),
11158
+ (hydrationDiffRootDEV = null),
11159
+ (rootOrSingletonContext = !1),
11160
+ null !== renderLanes &&
11161
+ restoreSuspendedTreeContext(workInProgress, renderLanes),
11162
+ (workInProgress = mountActivityChildren(
11163
+ workInProgress,
11164
+ prevSibling
11165
+ )),
11166
+ (workInProgress.flags |= 4096);
11167
+ else
11168
+ (renderLanes = createWorkInProgress(current.child, {
11169
+ mode: prevSibling.mode,
11170
+ children: prevSibling.children
11171
+ })),
11172
+ (renderLanes.ref = workInProgress.ref),
11173
+ (workInProgress.child = renderLanes),
11174
+ (renderLanes.return = workInProgress),
11175
+ (workInProgress = renderLanes);
11176
+ return workInProgress;
11039
11177
  case 22:
11040
11178
  return updateOffscreenComponent(
11041
11179
  current,
@@ -11243,7 +11381,6 @@
11243
11381
  var newProps = workInProgress.pendingProps;
11244
11382
  popTreeContext(workInProgress);
11245
11383
  switch (workInProgress.tag) {
11246
- case 31:
11247
11384
  case 16:
11248
11385
  case 15:
11249
11386
  case 0:
@@ -11571,6 +11708,63 @@
11571
11708
  }
11572
11709
  bubbleProperties(workInProgress);
11573
11710
  return null;
11711
+ case 31:
11712
+ renderLanes = workInProgress.memoizedState;
11713
+ if (null === current || null !== current.memoizedState) {
11714
+ newProps = popHydrationState(workInProgress);
11715
+ if (null !== renderLanes) {
11716
+ if (null === current) {
11717
+ if (!newProps)
11718
+ throw Error(
11719
+ "A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React."
11720
+ );
11721
+ current = workInProgress.memoizedState;
11722
+ current = null !== current ? current.dehydrated : null;
11723
+ if (!current)
11724
+ throw Error(
11725
+ "Expected to have a hydrated activity instance. This error is likely caused by a bug in React. Please file an issue."
11726
+ );
11727
+ current[internalInstanceKey] = workInProgress;
11728
+ bubbleProperties(workInProgress);
11729
+ (workInProgress.mode & ProfileMode) !== NoMode &&
11730
+ null !== renderLanes &&
11731
+ ((current = workInProgress.child),
11732
+ null !== current &&
11733
+ (workInProgress.treeBaseDuration -=
11734
+ current.treeBaseDuration));
11735
+ } else
11736
+ emitPendingHydrationWarnings(),
11737
+ resetHydrationState(),
11738
+ 0 === (workInProgress.flags & 128) &&
11739
+ (renderLanes = workInProgress.memoizedState = null),
11740
+ (workInProgress.flags |= 4),
11741
+ bubbleProperties(workInProgress),
11742
+ (workInProgress.mode & ProfileMode) !== NoMode &&
11743
+ null !== renderLanes &&
11744
+ ((current = workInProgress.child),
11745
+ null !== current &&
11746
+ (workInProgress.treeBaseDuration -=
11747
+ current.treeBaseDuration));
11748
+ current = !1;
11749
+ } else
11750
+ (renderLanes = upgradeHydrationErrorsToRecoverable()),
11751
+ null !== current &&
11752
+ null !== current.memoizedState &&
11753
+ (current.memoizedState.hydrationErrors = renderLanes),
11754
+ (current = !0);
11755
+ if (!current) {
11756
+ if (workInProgress.flags & 256)
11757
+ return popSuspenseHandler(workInProgress), workInProgress;
11758
+ popSuspenseHandler(workInProgress);
11759
+ return null;
11760
+ }
11761
+ if (0 !== (workInProgress.flags & 128))
11762
+ throw Error(
11763
+ "Client rendering an Activity suspended it again. This is a bug in React."
11764
+ );
11765
+ }
11766
+ bubbleProperties(workInProgress);
11767
+ return null;
11574
11768
  case 13:
11575
11769
  newProps = workInProgress.memoizedState;
11576
11770
  if (
@@ -11578,23 +11772,25 @@
11578
11772
  (null !== current.memoizedState &&
11579
11773
  null !== current.memoizedState.dehydrated)
11580
11774
  ) {
11581
- type = popHydrationState(workInProgress);
11582
- if (null !== newProps && null !== newProps.dehydrated) {
11775
+ type = newProps;
11776
+ nextResource = popHydrationState(workInProgress);
11777
+ if (null !== type && null !== type.dehydrated) {
11583
11778
  if (null === current) {
11584
- if (!type)
11779
+ if (!nextResource)
11585
11780
  throw Error(
11586
11781
  "A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React."
11587
11782
  );
11588
- type = workInProgress.memoizedState;
11589
- type = null !== type ? type.dehydrated : null;
11590
- if (!type)
11783
+ nextResource = workInProgress.memoizedState;
11784
+ nextResource =
11785
+ null !== nextResource ? nextResource.dehydrated : null;
11786
+ if (!nextResource)
11591
11787
  throw Error(
11592
11788
  "Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue."
11593
11789
  );
11594
- type[internalInstanceKey] = workInProgress;
11790
+ nextResource[internalInstanceKey] = workInProgress;
11595
11791
  bubbleProperties(workInProgress);
11596
11792
  (workInProgress.mode & ProfileMode) !== NoMode &&
11597
- null !== newProps &&
11793
+ null !== type &&
11598
11794
  ((type = workInProgress.child),
11599
11795
  null !== type &&
11600
11796
  (workInProgress.treeBaseDuration -= type.treeBaseDuration));
@@ -11602,11 +11798,11 @@
11602
11798
  emitPendingHydrationWarnings(),
11603
11799
  resetHydrationState(),
11604
11800
  0 === (workInProgress.flags & 128) &&
11605
- (workInProgress.memoizedState = null),
11801
+ (type = workInProgress.memoizedState = null),
11606
11802
  (workInProgress.flags |= 4),
11607
11803
  bubbleProperties(workInProgress),
11608
11804
  (workInProgress.mode & ProfileMode) !== NoMode &&
11609
- null !== newProps &&
11805
+ null !== type &&
11610
11806
  ((type = workInProgress.child),
11611
11807
  null !== type &&
11612
11808
  (workInProgress.treeBaseDuration -=
@@ -11855,6 +12051,22 @@
11855
12051
  case 27:
11856
12052
  case 5:
11857
12053
  return popHostContext(workInProgress), null;
12054
+ case 31:
12055
+ if (null !== workInProgress.memoizedState) {
12056
+ popSuspenseHandler(workInProgress);
12057
+ if (null === workInProgress.alternate)
12058
+ throw Error(
12059
+ "Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue."
12060
+ );
12061
+ resetHydrationState();
12062
+ }
12063
+ current = workInProgress.flags;
12064
+ return current & 65536
12065
+ ? ((workInProgress.flags = (current & -65537) | 128),
12066
+ (workInProgress.mode & ProfileMode) !== NoMode &&
12067
+ transferActualDuration(workInProgress),
12068
+ workInProgress)
12069
+ : null;
11858
12070
  case 13:
11859
12071
  popSuspenseHandler(workInProgress);
11860
12072
  current = workInProgress.memoizedState;
@@ -11915,6 +12127,10 @@
11915
12127
  case 4:
11916
12128
  popHostContainer(interruptedWork);
11917
12129
  break;
12130
+ case 31:
12131
+ null !== interruptedWork.memoizedState &&
12132
+ popSuspenseHandler(interruptedWork);
12133
+ break;
11918
12134
  case 13:
11919
12135
  popSuspenseHandler(interruptedWork);
11920
12136
  break;
@@ -12834,6 +13050,11 @@
12834
13050
  }
12835
13051
  } else recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
12836
13052
  break;
13053
+ case 31:
13054
+ recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
13055
+ flags & 4 &&
13056
+ commitActivityHydrationCallbacks(finishedRoot, finishedWork);
13057
+ break;
12837
13058
  case 13:
12838
13059
  recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
12839
13060
  flags & 4 &&
@@ -13017,7 +13238,7 @@
13017
13238
  null !== hostParent &&
13018
13239
  (hostParentIsContainer
13019
13240
  ? ((finishedRoot = hostParent),
13020
- clearSuspenseBoundary(
13241
+ clearHydrationBoundary(
13021
13242
  9 === finishedRoot.nodeType
13022
13243
  ? finishedRoot.body
13023
13244
  : "HTML" === finishedRoot.nodeName
@@ -13026,7 +13247,7 @@
13026
13247
  deletedFiber.stateNode
13027
13248
  ),
13028
13249
  retryIfBlockedOn(finishedRoot))
13029
- : clearSuspenseBoundary(hostParent, deletedFiber.stateNode));
13250
+ : clearHydrationBoundary(hostParent, deletedFiber.stateNode));
13030
13251
  break;
13031
13252
  case 4:
13032
13253
  prevHostParent = hostParent;
@@ -13106,6 +13327,25 @@
13106
13327
  }
13107
13328
  popComponentEffectStart(prevEffectStart);
13108
13329
  }
13330
+ function commitActivityHydrationCallbacks(finishedRoot, finishedWork) {
13331
+ if (
13332
+ null === finishedWork.memoizedState &&
13333
+ ((finishedRoot = finishedWork.alternate),
13334
+ null !== finishedRoot &&
13335
+ ((finishedRoot = finishedRoot.memoizedState), null !== finishedRoot))
13336
+ ) {
13337
+ finishedRoot = finishedRoot.dehydrated;
13338
+ try {
13339
+ runWithFiberInDEV(
13340
+ finishedWork,
13341
+ commitHydratedActivityInstance,
13342
+ finishedRoot
13343
+ );
13344
+ } catch (error) {
13345
+ captureCommitPhaseError(finishedWork, finishedWork.return, error);
13346
+ }
13347
+ }
13348
+ }
13109
13349
  function commitSuspenseHydrationCallbacks(finishedRoot, finishedWork) {
13110
13350
  if (
13111
13351
  null === finishedWork.memoizedState &&
@@ -13127,6 +13367,7 @@
13127
13367
  }
13128
13368
  function getRetryCache(finishedWork) {
13129
13369
  switch (finishedWork.tag) {
13370
+ case 31:
13130
13371
  case 13:
13131
13372
  case 19:
13132
13373
  var retryCache = finishedWork.stateNode;
@@ -13263,59 +13504,61 @@
13263
13504
  (offscreenSubtreeWasHidden ||
13264
13505
  null === current ||
13265
13506
  safelyDetachRef(current, current.return));
13266
- if (flags & 4)
13267
- if (
13268
- ((root = null !== current ? current.memoizedState : null),
13269
- (flags = finishedWork.memoizedState),
13270
- null === current)
13271
- )
13507
+ if (flags & 4) {
13508
+ var currentResource =
13509
+ null !== current ? current.memoizedState : null;
13510
+ flags = finishedWork.memoizedState;
13511
+ if (null === current)
13272
13512
  if (null === flags)
13273
13513
  if (null === finishedWork.stateNode) {
13274
13514
  a: {
13275
13515
  flags = finishedWork.type;
13276
13516
  current = finishedWork.memoizedProps;
13277
- root = hoistableRoot.ownerDocument || hoistableRoot;
13517
+ hoistableRoot =
13518
+ hoistableRoot.ownerDocument || hoistableRoot;
13278
13519
  b: switch (flags) {
13279
13520
  case "title":
13280
- hoistableRoot = root.getElementsByTagName("title")[0];
13521
+ currentResource =
13522
+ hoistableRoot.getElementsByTagName("title")[0];
13281
13523
  if (
13282
- !hoistableRoot ||
13283
- hoistableRoot[internalHoistableMarker] ||
13284
- hoistableRoot[internalInstanceKey] ||
13285
- hoistableRoot.namespaceURI === SVG_NAMESPACE ||
13286
- hoistableRoot.hasAttribute("itemprop")
13524
+ !currentResource ||
13525
+ currentResource[internalHoistableMarker] ||
13526
+ currentResource[internalInstanceKey] ||
13527
+ currentResource.namespaceURI === SVG_NAMESPACE ||
13528
+ currentResource.hasAttribute("itemprop")
13287
13529
  )
13288
- (hoistableRoot = root.createElement(flags)),
13289
- root.head.insertBefore(
13290
- hoistableRoot,
13291
- root.querySelector("head > title")
13530
+ (currentResource =
13531
+ hoistableRoot.createElement(flags)),
13532
+ hoistableRoot.head.insertBefore(
13533
+ currentResource,
13534
+ hoistableRoot.querySelector("head > title")
13292
13535
  );
13293
- setInitialProperties(hoistableRoot, flags, current);
13294
- hoistableRoot[internalInstanceKey] = finishedWork;
13295
- markNodeAsHoistable(hoistableRoot);
13296
- flags = hoistableRoot;
13536
+ setInitialProperties(currentResource, flags, current);
13537
+ currentResource[internalInstanceKey] = finishedWork;
13538
+ markNodeAsHoistable(currentResource);
13539
+ flags = currentResource;
13297
13540
  break a;
13298
13541
  case "link":
13299
13542
  var maybeNodes = getHydratableHoistableCache(
13300
13543
  "link",
13301
13544
  "href",
13302
- root
13545
+ hoistableRoot
13303
13546
  ).get(flags + (current.href || ""));
13304
13547
  if (maybeNodes)
13305
13548
  for (var i = 0; i < maybeNodes.length; i++)
13306
13549
  if (
13307
- ((hoistableRoot = maybeNodes[i]),
13308
- hoistableRoot.getAttribute("href") ===
13550
+ ((currentResource = maybeNodes[i]),
13551
+ currentResource.getAttribute("href") ===
13309
13552
  (null == current.href || "" === current.href
13310
13553
  ? null
13311
13554
  : current.href) &&
13312
- hoistableRoot.getAttribute("rel") ===
13555
+ currentResource.getAttribute("rel") ===
13313
13556
  (null == current.rel ? null : current.rel) &&
13314
- hoistableRoot.getAttribute("title") ===
13557
+ currentResource.getAttribute("title") ===
13315
13558
  (null == current.title
13316
13559
  ? null
13317
13560
  : current.title) &&
13318
- hoistableRoot.getAttribute("crossorigin") ===
13561
+ currentResource.getAttribute("crossorigin") ===
13319
13562
  (null == current.crossOrigin
13320
13563
  ? null
13321
13564
  : current.crossOrigin))
@@ -13323,42 +13566,42 @@
13323
13566
  maybeNodes.splice(i, 1);
13324
13567
  break b;
13325
13568
  }
13326
- hoistableRoot = root.createElement(flags);
13327
- setInitialProperties(hoistableRoot, flags, current);
13328
- root.head.appendChild(hoistableRoot);
13569
+ currentResource = hoistableRoot.createElement(flags);
13570
+ setInitialProperties(currentResource, flags, current);
13571
+ hoistableRoot.head.appendChild(currentResource);
13329
13572
  break;
13330
13573
  case "meta":
13331
13574
  if (
13332
13575
  (maybeNodes = getHydratableHoistableCache(
13333
13576
  "meta",
13334
13577
  "content",
13335
- root
13578
+ hoistableRoot
13336
13579
  ).get(flags + (current.content || "")))
13337
13580
  )
13338
13581
  for (i = 0; i < maybeNodes.length; i++)
13339
13582
  if (
13340
- ((hoistableRoot = maybeNodes[i]),
13583
+ ((currentResource = maybeNodes[i]),
13341
13584
  checkAttributeStringCoercion(
13342
13585
  current.content,
13343
13586
  "content"
13344
13587
  ),
13345
- hoistableRoot.getAttribute("content") ===
13588
+ currentResource.getAttribute("content") ===
13346
13589
  (null == current.content
13347
13590
  ? null
13348
13591
  : "" + current.content) &&
13349
- hoistableRoot.getAttribute("name") ===
13592
+ currentResource.getAttribute("name") ===
13350
13593
  (null == current.name
13351
13594
  ? null
13352
13595
  : current.name) &&
13353
- hoistableRoot.getAttribute("property") ===
13596
+ currentResource.getAttribute("property") ===
13354
13597
  (null == current.property
13355
13598
  ? null
13356
13599
  : current.property) &&
13357
- hoistableRoot.getAttribute("http-equiv") ===
13600
+ currentResource.getAttribute("http-equiv") ===
13358
13601
  (null == current.httpEquiv
13359
13602
  ? null
13360
13603
  : current.httpEquiv) &&
13361
- hoistableRoot.getAttribute("charset") ===
13604
+ currentResource.getAttribute("charset") ===
13362
13605
  (null == current.charSet
13363
13606
  ? null
13364
13607
  : current.charSet))
@@ -13366,9 +13609,9 @@
13366
13609
  maybeNodes.splice(i, 1);
13367
13610
  break b;
13368
13611
  }
13369
- hoistableRoot = root.createElement(flags);
13370
- setInitialProperties(hoistableRoot, flags, current);
13371
- root.head.appendChild(hoistableRoot);
13612
+ currentResource = hoistableRoot.createElement(flags);
13613
+ setInitialProperties(currentResource, flags, current);
13614
+ hoistableRoot.head.appendChild(currentResource);
13372
13615
  break;
13373
13616
  default:
13374
13617
  throw Error(
@@ -13377,9 +13620,9 @@
13377
13620
  '". This is a bug in React.'
13378
13621
  );
13379
13622
  }
13380
- hoistableRoot[internalInstanceKey] = finishedWork;
13381
- markNodeAsHoistable(hoistableRoot);
13382
- flags = hoistableRoot;
13623
+ currentResource[internalInstanceKey] = finishedWork;
13624
+ markNodeAsHoistable(currentResource);
13625
+ flags = currentResource;
13383
13626
  }
13384
13627
  finishedWork.stateNode = flags;
13385
13628
  } else
@@ -13395,12 +13638,12 @@
13395
13638
  finishedWork.memoizedProps
13396
13639
  );
13397
13640
  else
13398
- root !== flags
13399
- ? (null === root
13641
+ currentResource !== flags
13642
+ ? (null === currentResource
13400
13643
  ? null !== current.stateNode &&
13401
13644
  ((current = current.stateNode),
13402
13645
  current.parentNode.removeChild(current))
13403
- : root.count--,
13646
+ : currentResource.count--,
13404
13647
  null === flags
13405
13648
  ? mountHoistable(
13406
13649
  hoistableRoot,
@@ -13419,6 +13662,7 @@
13419
13662
  finishedWork.memoizedProps,
13420
13663
  current.memoizedProps
13421
13664
  );
13665
+ }
13422
13666
  break;
13423
13667
  case 27:
13424
13668
  recursivelyTraverseMutationEffects(root, finishedWork);
@@ -13443,20 +13687,20 @@
13443
13687
  null === current ||
13444
13688
  safelyDetachRef(current, current.return));
13445
13689
  if (finishedWork.flags & 32) {
13446
- root = finishedWork.stateNode;
13690
+ hoistableRoot = finishedWork.stateNode;
13447
13691
  try {
13448
- runWithFiberInDEV(finishedWork, resetTextContent, root);
13692
+ runWithFiberInDEV(finishedWork, resetTextContent, hoistableRoot);
13449
13693
  } catch (error) {
13450
13694
  captureCommitPhaseError(finishedWork, finishedWork.return, error);
13451
13695
  }
13452
13696
  }
13453
13697
  flags & 4 &&
13454
13698
  null != finishedWork.stateNode &&
13455
- ((root = finishedWork.memoizedProps),
13699
+ ((hoistableRoot = finishedWork.memoizedProps),
13456
13700
  commitHostUpdate(
13457
13701
  finishedWork,
13458
- root,
13459
- null !== current ? current.memoizedProps : root
13702
+ hoistableRoot,
13703
+ null !== current ? current.memoizedProps : hoistableRoot
13460
13704
  ));
13461
13705
  flags & 1024 &&
13462
13706
  ((needsFormReset = !0),
@@ -13475,12 +13719,12 @@
13475
13719
  );
13476
13720
  flags = finishedWork.memoizedProps;
13477
13721
  current = null !== current ? current.memoizedProps : flags;
13478
- root = finishedWork.stateNode;
13722
+ hoistableRoot = finishedWork.stateNode;
13479
13723
  try {
13480
13724
  runWithFiberInDEV(
13481
13725
  finishedWork,
13482
13726
  commitTextUpdate,
13483
- root,
13727
+ hoistableRoot,
13484
13728
  current,
13485
13729
  flags
13486
13730
  );
@@ -13492,10 +13736,10 @@
13492
13736
  case 3:
13493
13737
  hoistableRoot = pushNestedEffectDurations();
13494
13738
  tagCaches = null;
13495
- maybeNodes = currentHoistableRoot;
13739
+ currentResource = currentHoistableRoot;
13496
13740
  currentHoistableRoot = getHoistableRoot(root.containerInfo);
13497
13741
  recursivelyTraverseMutationEffects(root, finishedWork);
13498
- currentHoistableRoot = maybeNodes;
13742
+ currentHoistableRoot = currentResource;
13499
13743
  commitReconciliationEffects(finishedWork);
13500
13744
  if (
13501
13745
  flags & 4 &&
@@ -13531,6 +13775,15 @@
13531
13775
  finishedWork.stateNode.effectDuration +=
13532
13776
  bubbleNestedEffectDurations(flags);
13533
13777
  break;
13778
+ case 31:
13779
+ recursivelyTraverseMutationEffects(root, finishedWork);
13780
+ commitReconciliationEffects(finishedWork);
13781
+ flags & 4 &&
13782
+ ((flags = finishedWork.updateQueue),
13783
+ null !== flags &&
13784
+ ((finishedWork.updateQueue = null),
13785
+ attachSuspenseRetryListeners(finishedWork, flags)));
13786
+ break;
13534
13787
  case 13:
13535
13788
  recursivelyTraverseMutationEffects(root, finishedWork);
13536
13789
  commitReconciliationEffects(finishedWork);
@@ -13578,9 +13831,13 @@
13578
13831
  if (null === current) {
13579
13832
  wasHidden = current = root;
13580
13833
  try {
13581
- (maybeNodes = wasHidden.stateNode),
13834
+ (currentResource = wasHidden.stateNode),
13582
13835
  hoistableRoot
13583
- ? runWithFiberInDEV(wasHidden, hideInstance, maybeNodes)
13836
+ ? runWithFiberInDEV(
13837
+ wasHidden,
13838
+ hideInstance,
13839
+ currentResource
13840
+ )
13584
13841
  : runWithFiberInDEV(
13585
13842
  wasHidden,
13586
13843
  unhideInstance,
@@ -13595,19 +13852,43 @@
13595
13852
  if (null === current) {
13596
13853
  wasHidden = root;
13597
13854
  try {
13598
- (i = wasHidden.stateNode),
13855
+ (maybeNodes = wasHidden.stateNode),
13599
13856
  hoistableRoot
13600
- ? runWithFiberInDEV(wasHidden, hideTextInstance, i)
13857
+ ? runWithFiberInDEV(
13858
+ wasHidden,
13859
+ hideTextInstance,
13860
+ maybeNodes
13861
+ )
13601
13862
  : runWithFiberInDEV(
13602
13863
  wasHidden,
13603
13864
  unhideTextInstance,
13604
- i,
13865
+ maybeNodes,
13605
13866
  wasHidden.memoizedProps
13606
13867
  );
13607
13868
  } catch (error) {
13608
13869
  captureCommitPhaseError(wasHidden, wasHidden.return, error);
13609
13870
  }
13610
13871
  }
13872
+ } else if (18 === root.tag) {
13873
+ if (null === current) {
13874
+ wasHidden = root;
13875
+ try {
13876
+ (i = wasHidden.stateNode),
13877
+ hoistableRoot
13878
+ ? runWithFiberInDEV(
13879
+ wasHidden,
13880
+ hideDehydratedBoundary,
13881
+ i
13882
+ )
13883
+ : runWithFiberInDEV(
13884
+ wasHidden,
13885
+ unhideDehydratedBoundary,
13886
+ wasHidden.stateNode
13887
+ );
13888
+ } catch (error) {
13889
+ captureCommitPhaseError(wasHidden, wasHidden.return, error);
13890
+ }
13891
+ }
13611
13892
  } else if (
13612
13893
  ((22 !== root.tag && 23 !== root.tag) ||
13613
13894
  null === root.memoizedState ||
@@ -13833,6 +14114,16 @@
13833
14114
  includeWorkInProgressEffects
13834
14115
  );
13835
14116
  break;
14117
+ case 31:
14118
+ recursivelyTraverseReappearLayoutEffects(
14119
+ finishedRoot,
14120
+ finishedWork,
14121
+ includeWorkInProgressEffects
14122
+ );
14123
+ includeWorkInProgressEffects &&
14124
+ flags & 4 &&
14125
+ commitActivityHydrationCallbacks(finishedRoot, finishedWork);
14126
+ break;
13836
14127
  case 13:
13837
14128
  recursivelyTraverseReappearLayoutEffects(
13838
14129
  finishedRoot,
@@ -13998,6 +14289,14 @@
13998
14289
  committedTransitions
13999
14290
  );
14000
14291
  break;
14292
+ case 31:
14293
+ recursivelyTraversePassiveMountEffects(
14294
+ finishedRoot,
14295
+ finishedWork,
14296
+ committedLanes,
14297
+ committedTransitions
14298
+ );
14299
+ break;
14001
14300
  case 13:
14002
14301
  recursivelyTraversePassiveMountEffects(
14003
14302
  finishedRoot,
@@ -16034,6 +16333,7 @@
16034
16333
  function resolveRetryWakeable(boundaryFiber, wakeable) {
16035
16334
  var retryLane = 0;
16036
16335
  switch (boundaryFiber.tag) {
16336
+ case 31:
16037
16337
  case 13:
16038
16338
  var retryCache = boundaryFiber.stateNode;
16039
16339
  var suspenseState = boundaryFiber.memoizedState;
@@ -19534,24 +19834,28 @@
19534
19834
  : container
19535
19835
  ).removeChild(child);
19536
19836
  }
19537
- function clearSuspenseBoundary(parentInstance, suspenseInstance) {
19538
- var node = suspenseInstance,
19837
+ function clearHydrationBoundary(parentInstance, hydrationInstance) {
19838
+ var node = hydrationInstance,
19539
19839
  depth = 0;
19540
19840
  do {
19541
19841
  var nextNode = node.nextSibling;
19542
19842
  parentInstance.removeChild(node);
19543
19843
  if (nextNode && 8 === nextNode.nodeType)
19544
- if (((node = nextNode.data), node === SUSPENSE_END_DATA)) {
19844
+ if (
19845
+ ((node = nextNode.data),
19846
+ node === SUSPENSE_END_DATA || node === ACTIVITY_END_DATA)
19847
+ ) {
19545
19848
  if (0 === depth) {
19546
19849
  parentInstance.removeChild(nextNode);
19547
- retryIfBlockedOn(suspenseInstance);
19850
+ retryIfBlockedOn(hydrationInstance);
19548
19851
  return;
19549
19852
  }
19550
19853
  depth--;
19551
19854
  } else if (
19552
19855
  node === SUSPENSE_START_DATA ||
19553
19856
  node === SUSPENSE_PENDING_START_DATA ||
19554
- node === SUSPENSE_FALLBACK_START_DATA
19857
+ node === SUSPENSE_FALLBACK_START_DATA ||
19858
+ node === ACTIVITY_START_DATA
19555
19859
  )
19556
19860
  depth++;
19557
19861
  else if (node === PREAMBLE_CONTRIBUTION_HTML)
@@ -19577,7 +19881,38 @@
19577
19881
  releaseSingletonInstance(parentInstance.ownerDocument.body);
19578
19882
  node = nextNode;
19579
19883
  } while (node);
19580
- retryIfBlockedOn(suspenseInstance);
19884
+ retryIfBlockedOn(hydrationInstance);
19885
+ }
19886
+ function hideOrUnhideDehydratedBoundary(suspenseInstance, isHidden) {
19887
+ var node = suspenseInstance;
19888
+ suspenseInstance = 0;
19889
+ do {
19890
+ var nextNode = node.nextSibling;
19891
+ 1 === node.nodeType
19892
+ ? isHidden
19893
+ ? ((node._stashedDisplay = node.style.display),
19894
+ (node.style.display = "none"))
19895
+ : ((node.style.display = node._stashedDisplay || ""),
19896
+ "" === node.getAttribute("style") &&
19897
+ node.removeAttribute("style"))
19898
+ : 3 === node.nodeType &&
19899
+ (isHidden
19900
+ ? ((node._stashedText = node.nodeValue), (node.nodeValue = ""))
19901
+ : (node.nodeValue = node._stashedText || ""));
19902
+ if (nextNode && 8 === nextNode.nodeType)
19903
+ if (((node = nextNode.data), node === SUSPENSE_END_DATA))
19904
+ if (0 === suspenseInstance) break;
19905
+ else suspenseInstance--;
19906
+ else
19907
+ (node !== SUSPENSE_START_DATA &&
19908
+ node !== SUSPENSE_PENDING_START_DATA &&
19909
+ node !== SUSPENSE_FALLBACK_START_DATA) ||
19910
+ suspenseInstance++;
19911
+ node = nextNode;
19912
+ } while (node);
19913
+ }
19914
+ function hideDehydratedBoundary(suspenseInstance) {
19915
+ hideOrUnhideDehydratedBoundary(suspenseInstance, !0);
19581
19916
  }
19582
19917
  function hideInstance(instance) {
19583
19918
  instance = instance.style;
@@ -19588,6 +19923,9 @@
19588
19923
  function hideTextInstance(textInstance) {
19589
19924
  textInstance.nodeValue = "";
19590
19925
  }
19926
+ function unhideDehydratedBoundary(dehydratedInstance) {
19927
+ hideOrUnhideDehydratedBoundary(dehydratedInstance, !1);
19928
+ }
19591
19929
  function unhideInstance(instance, props) {
19592
19930
  props = props[STYLE];
19593
19931
  props =
@@ -19710,6 +20048,14 @@
19710
20048
  }
19711
20049
  return instance;
19712
20050
  }
20051
+ function canHydrateHydrationBoundary(instance, inRootOrSingleton) {
20052
+ for (; 8 !== instance.nodeType; ) {
20053
+ if (!inRootOrSingleton) return null;
20054
+ instance = getNextHydratable(instance.nextSibling);
20055
+ if (null === instance) return null;
20056
+ }
20057
+ return instance;
20058
+ }
19713
20059
  function isSuspenseInstanceFallback(instance) {
19714
20060
  return (
19715
20061
  instance.data === SUSPENSE_FALLBACK_START_DATA ||
@@ -19743,11 +20089,13 @@
19743
20089
  nodeType === SUSPENSE_START_DATA ||
19744
20090
  nodeType === SUSPENSE_FALLBACK_START_DATA ||
19745
20091
  nodeType === SUSPENSE_PENDING_START_DATA ||
20092
+ nodeType === ACTIVITY_START_DATA ||
19746
20093
  nodeType === FORM_STATE_IS_MATCHING ||
19747
20094
  nodeType === FORM_STATE_IS_NOT_MATCHING
19748
20095
  )
19749
20096
  break;
19750
- if (nodeType === SUSPENSE_END_DATA) return null;
20097
+ if (nodeType === SUSPENSE_END_DATA || nodeType === ACTIVITY_END_DATA)
20098
+ return null;
19751
20099
  }
19752
20100
  }
19753
20101
  return node;
@@ -19771,7 +20119,9 @@
19771
20119
  return { type: JSCompiler_temp_const, props: serverDifferences };
19772
20120
  }
19773
20121
  return 8 === instance.nodeType
19774
- ? { type: "Suspense", props: {} }
20122
+ ? instance.data === ACTIVITY_START_DATA
20123
+ ? { type: "Activity", props: {} }
20124
+ : { type: "Suspense", props: {} }
19775
20125
  : instance.nodeValue;
19776
20126
  }
19777
20127
  function diffHydratedTextForDevWarnings(textInstance, text, parentProps) {
@@ -19788,26 +20138,29 @@
19788
20138
  textInstance)
19789
20139
  : null;
19790
20140
  }
19791
- function getNextHydratableInstanceAfterSuspenseInstance(suspenseInstance) {
19792
- suspenseInstance = suspenseInstance.nextSibling;
19793
- for (var depth = 0; suspenseInstance; ) {
19794
- if (8 === suspenseInstance.nodeType) {
19795
- var data = suspenseInstance.data;
19796
- if (data === SUSPENSE_END_DATA) {
20141
+ function getNextHydratableInstanceAfterHydrationBoundary(
20142
+ hydrationInstance
20143
+ ) {
20144
+ hydrationInstance = hydrationInstance.nextSibling;
20145
+ for (var depth = 0; hydrationInstance; ) {
20146
+ if (8 === hydrationInstance.nodeType) {
20147
+ var data = hydrationInstance.data;
20148
+ if (data === SUSPENSE_END_DATA || data === ACTIVITY_END_DATA) {
19797
20149
  if (0 === depth)
19798
- return getNextHydratable(suspenseInstance.nextSibling);
20150
+ return getNextHydratable(hydrationInstance.nextSibling);
19799
20151
  depth--;
19800
20152
  } else
19801
20153
  (data !== SUSPENSE_START_DATA &&
19802
20154
  data !== SUSPENSE_FALLBACK_START_DATA &&
19803
- data !== SUSPENSE_PENDING_START_DATA) ||
20155
+ data !== SUSPENSE_PENDING_START_DATA &&
20156
+ data !== ACTIVITY_START_DATA) ||
19804
20157
  depth++;
19805
20158
  }
19806
- suspenseInstance = suspenseInstance.nextSibling;
20159
+ hydrationInstance = hydrationInstance.nextSibling;
19807
20160
  }
19808
20161
  return null;
19809
20162
  }
19810
- function getParentSuspenseInstance(targetInstance) {
20163
+ function getParentHydrationBoundary(targetInstance) {
19811
20164
  targetInstance = targetInstance.previousSibling;
19812
20165
  for (var depth = 0; targetInstance; ) {
19813
20166
  if (8 === targetInstance.nodeType) {
@@ -19815,11 +20168,14 @@
19815
20168
  if (
19816
20169
  data === SUSPENSE_START_DATA ||
19817
20170
  data === SUSPENSE_FALLBACK_START_DATA ||
19818
- data === SUSPENSE_PENDING_START_DATA
20171
+ data === SUSPENSE_PENDING_START_DATA ||
20172
+ data === ACTIVITY_START_DATA
19819
20173
  ) {
19820
20174
  if (0 === depth) return targetInstance;
19821
20175
  depth--;
19822
- } else data === SUSPENSE_END_DATA && depth++;
20176
+ } else
20177
+ (data !== SUSPENSE_END_DATA && data !== ACTIVITY_END_DATA) ||
20178
+ depth++;
19823
20179
  }
19824
20180
  targetInstance = targetInstance.previousSibling;
19825
20181
  }
@@ -19828,6 +20184,9 @@
19828
20184
  function commitHydratedContainer(container) {
19829
20185
  retryIfBlockedOn(container);
19830
20186
  }
20187
+ function commitHydratedActivityInstance(activityInstance) {
20188
+ retryIfBlockedOn(activityInstance);
20189
+ }
19831
20190
  function commitHydratedSuspenseInstance(suspenseInstance) {
19832
20191
  retryIfBlockedOn(suspenseInstance);
19833
20192
  }
@@ -20753,12 +21112,21 @@
20753
21112
  (fiber = fiber.alternate) && markRetryLaneImpl(fiber, retryLane);
20754
21113
  }
20755
21114
  function attemptContinuousHydration(fiber) {
20756
- if (13 === fiber.tag) {
21115
+ if (13 === fiber.tag || 31 === fiber.tag) {
20757
21116
  var root = enqueueConcurrentRenderForLane(fiber, 67108864);
20758
21117
  null !== root && scheduleUpdateOnFiber(root, fiber, 67108864);
20759
21118
  markRetryLaneIfNotHydrated(fiber, 67108864);
20760
21119
  }
20761
21120
  }
21121
+ function attemptHydrationAtCurrentPriority(fiber) {
21122
+ if (13 === fiber.tag || 31 === fiber.tag) {
21123
+ var lane = requestUpdateLane(fiber);
21124
+ lane = getBumpedLaneForHydrationByLane(lane);
21125
+ var root = enqueueConcurrentRenderForLane(fiber, lane);
21126
+ null !== root && scheduleUpdateOnFiber(root, fiber, lane);
21127
+ markRetryLaneIfNotHydrated(fiber, lane);
21128
+ }
21129
+ }
20762
21130
  function getCurrentFiberForDevTools() {
20763
21131
  return current;
20764
21132
  }
@@ -20861,6 +21229,7 @@
20861
21229
  }
20862
21230
  }
20863
21231
  break;
21232
+ case 31:
20864
21233
  case 13:
20865
21234
  (root = enqueueConcurrentRenderForLane(fiber, 2)),
20866
21235
  null !== root && scheduleUpdateOnFiber(root, fiber, 2),
@@ -20906,6 +21275,10 @@
20906
21275
  targetNode = getSuspenseInstanceFromFiber(nearestMounted);
20907
21276
  if (null !== targetNode) return targetNode;
20908
21277
  targetNode = null;
21278
+ } else if (31 === tag) {
21279
+ targetNode = getActivityInstanceFromFiber(nearestMounted);
21280
+ if (null !== targetNode) return targetNode;
21281
+ targetNode = null;
20909
21282
  } else if (3 === tag) {
20910
21283
  if (nearestMounted.stateNode.current.memoizedState.isDehydrated)
20911
21284
  return 3 === nearestMounted.tag
@@ -21155,17 +21528,18 @@
21155
21528
  ) {
21156
21529
  queuedTarget.blockedOn = targetInst;
21157
21530
  runWithPriority(queuedTarget.priority, function () {
21158
- if (13 === nearestMounted.tag) {
21159
- var lane = requestUpdateLane(nearestMounted);
21160
- lane = getBumpedLaneForHydrationByLane(lane);
21161
- var root = enqueueConcurrentRenderForLane(
21162
- nearestMounted,
21163
- lane
21164
- );
21165
- null !== root &&
21166
- scheduleUpdateOnFiber(root, nearestMounted, lane);
21167
- markRetryLaneIfNotHydrated(nearestMounted, lane);
21168
- }
21531
+ attemptHydrationAtCurrentPriority(nearestMounted);
21532
+ });
21533
+ return;
21534
+ }
21535
+ } else if (31 === targetInst) {
21536
+ if (
21537
+ ((targetInst = getActivityInstanceFromFiber(nearestMounted)),
21538
+ null !== targetInst)
21539
+ ) {
21540
+ queuedTarget.blockedOn = targetInst;
21541
+ runWithPriority(queuedTarget.priority, function () {
21542
+ attemptHydrationAtCurrentPriority(nearestMounted);
21169
21543
  });
21170
21544
  return;
21171
21545
  }
@@ -24499,6 +24873,8 @@
24499
24873
  EXPECTED_FORM_ACTION_URL =
24500
24874
  "javascript:throw new Error('React form unexpectedly submitted.')",
24501
24875
  SUPPRESS_HYDRATION_WARNING = "suppressHydrationWarning",
24876
+ ACTIVITY_START_DATA = "&",
24877
+ ACTIVITY_END_DATA = "/&",
24502
24878
  SUSPENSE_START_DATA = "$",
24503
24879
  SUSPENSE_END_DATA = "/$",
24504
24880
  SUSPENSE_PENDING_START_DATA = "$?",
@@ -24949,11 +25325,11 @@
24949
25325
  };
24950
25326
  (function () {
24951
25327
  var isomorphicReactPackageVersion = React.version;
24952
- if ("19.2.0-canary-72135096-20250421" !== isomorphicReactPackageVersion)
25328
+ if ("19.2.0-canary-197d6a04-20250424" !== isomorphicReactPackageVersion)
24953
25329
  throw Error(
24954
25330
  'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' +
24955
25331
  (isomorphicReactPackageVersion +
24956
- "\n - react-dom: 19.2.0-canary-72135096-20250421\nLearn more: https://react.dev/warnings/version-mismatch")
25332
+ "\n - react-dom: 19.2.0-canary-197d6a04-20250424\nLearn more: https://react.dev/warnings/version-mismatch")
24957
25333
  );
24958
25334
  })();
24959
25335
  ("function" === typeof Map &&
@@ -24990,10 +25366,10 @@
24990
25366
  !(function () {
24991
25367
  var internals = {
24992
25368
  bundleType: 1,
24993
- version: "19.2.0-canary-72135096-20250421",
25369
+ version: "19.2.0-canary-197d6a04-20250424",
24994
25370
  rendererPackageName: "react-dom",
24995
25371
  currentDispatcherRef: ReactSharedInternals,
24996
- reconcilerVersion: "19.2.0-canary-72135096-20250421"
25372
+ reconcilerVersion: "19.2.0-canary-197d6a04-20250424"
24997
25373
  };
24998
25374
  internals.overrideHookState = overrideHookState;
24999
25375
  internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
@@ -25137,7 +25513,7 @@
25137
25513
  listenToAllSupportedEvents(container);
25138
25514
  return new ReactDOMHydrationRoot(initialChildren);
25139
25515
  };
25140
- exports.version = "19.2.0-canary-72135096-20250421";
25516
+ exports.version = "19.2.0-canary-197d6a04-20250424";
25141
25517
  "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
25142
25518
  "function" ===
25143
25519
  typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&