react-dom 19.2.0-canary-c4676e72-20250520 → 19.2.0-canary-8ce15b0f-20250522

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.
@@ -1154,8 +1154,8 @@
1154
1154
  ? null
1155
1155
  : {
1156
1156
  update: parentViewTransition.update,
1157
- enter: null,
1158
- exit: null,
1157
+ enter: "none",
1158
+ exit: "none",
1159
1159
  share: parentViewTransition.update,
1160
1160
  name: parentViewTransition.autoName,
1161
1161
  autoName: parentViewTransition.autoName,
@@ -3708,6 +3708,10 @@
3708
3708
  function hoistStylesheetDependency(stylesheet) {
3709
3709
  this.stylesheets.add(stylesheet);
3710
3710
  }
3711
+ function hoistHoistables(parentState, childState) {
3712
+ childState.styles.forEach(hoistStyleQueueDependency, parentState);
3713
+ childState.stylesheets.forEach(hoistStylesheetDependency, parentState);
3714
+ }
3711
3715
  function getComponentNameFromType(type) {
3712
3716
  if (null == type) return null;
3713
3717
  if ("function" === typeof type)
@@ -4677,11 +4681,14 @@
4677
4681
  };
4678
4682
  null !== row &&
4679
4683
  (row.pendingTasks++,
4680
- (row = row.boundaries),
4681
- null !== row &&
4684
+ (contentPreamble = row.boundaries),
4685
+ null !== contentPreamble &&
4682
4686
  (request.allPendingTasks++,
4683
4687
  fallbackAbortableTasks.pendingTasks++,
4684
- row.push(fallbackAbortableTasks)));
4688
+ contentPreamble.push(fallbackAbortableTasks)),
4689
+ (request = row.inheritedHoistables),
4690
+ null !== request &&
4691
+ hoistHoistables(fallbackAbortableTasks.contentState, request));
4685
4692
  return fallbackAbortableTasks;
4686
4693
  }
4687
4694
  function createRenderTask(
@@ -4960,20 +4967,70 @@
4960
4967
  : ((request.status = 13), (request.fatalError = error));
4961
4968
  }
4962
4969
  function finishSuspenseListRow(request, row) {
4963
- for (row = row.next; null !== row; ) {
4964
- var unblockedBoundaries = row.boundaries;
4970
+ unblockSuspenseListRow(request, row.next, row.hoistables);
4971
+ }
4972
+ function unblockSuspenseListRow(
4973
+ request,
4974
+ unblockedRow,
4975
+ inheritedHoistables
4976
+ ) {
4977
+ for (; null !== unblockedRow; ) {
4978
+ null !== inheritedHoistables &&
4979
+ (hoistHoistables(unblockedRow.hoistables, inheritedHoistables),
4980
+ (unblockedRow.inheritedHoistables = inheritedHoistables));
4981
+ var unblockedBoundaries = unblockedRow.boundaries;
4965
4982
  if (null !== unblockedBoundaries) {
4966
- row.boundaries = null;
4967
- for (var i = 0; i < unblockedBoundaries.length; i++)
4968
- finishedTask(request, unblockedBoundaries[i], null, null);
4983
+ unblockedRow.boundaries = null;
4984
+ for (var i = 0; i < unblockedBoundaries.length; i++) {
4985
+ var unblockedBoundary = unblockedBoundaries[i];
4986
+ null !== inheritedHoistables &&
4987
+ hoistHoistables(
4988
+ unblockedBoundary.contentState,
4989
+ inheritedHoistables
4990
+ );
4991
+ finishedTask(request, unblockedBoundary, null, null);
4992
+ }
4993
+ }
4994
+ unblockedRow.pendingTasks--;
4995
+ if (0 < unblockedRow.pendingTasks) break;
4996
+ inheritedHoistables = unblockedRow.hoistables;
4997
+ unblockedRow = unblockedRow.next;
4998
+ }
4999
+ }
5000
+ function tryToResolveTogetherRow(request, togetherRow) {
5001
+ var boundaries = togetherRow.boundaries;
5002
+ if (
5003
+ null !== boundaries &&
5004
+ togetherRow.pendingTasks === boundaries.length
5005
+ ) {
5006
+ for (
5007
+ var allCompleteAndInlinable = !0, i = 0;
5008
+ i < boundaries.length;
5009
+ i++
5010
+ ) {
5011
+ var rowBoundary = boundaries[i];
5012
+ if (
5013
+ 1 !== rowBoundary.pendingTasks ||
5014
+ rowBoundary.parentFlushed ||
5015
+ 500 < rowBoundary.byteSize
5016
+ ) {
5017
+ allCompleteAndInlinable = !1;
5018
+ break;
5019
+ }
4969
5020
  }
4970
- row.pendingTasks--;
4971
- if (0 < row.pendingTasks) break;
4972
- row = row.next;
5021
+ allCompleteAndInlinable &&
5022
+ unblockSuspenseListRow(request, togetherRow, togetherRow.hoistables);
4973
5023
  }
4974
5024
  }
4975
5025
  function createSuspenseListRow(previousRow) {
4976
- var newRow = { pendingTasks: 1, boundaries: null, next: null };
5026
+ var newRow = {
5027
+ pendingTasks: 1,
5028
+ boundaries: null,
5029
+ hoistables: createHoistableState(),
5030
+ inheritedHoistables: null,
5031
+ together: !1,
5032
+ next: null
5033
+ };
4977
5034
  null !== previousRow &&
4978
5035
  0 < previousRow.pendingTasks &&
4979
5036
  (newRow.pendingTasks++,
@@ -4982,28 +5039,25 @@
4982
5039
  return newRow;
4983
5040
  }
4984
5041
  function renderSuspenseListRows(request, task, keyPath, rows, revealOrder) {
4985
- keyPath = task.keyPath;
4986
- var previousComponentStack = task.componentStack;
5042
+ var prevKeyPath = task.keyPath,
5043
+ prevTreeContext = task.treeContext,
5044
+ prevRow = task.row,
5045
+ previousComponentStack = task.componentStack;
4987
5046
  var previousDebugTask = task.debugTask;
4988
5047
  pushServerComponentStack(task, task.node.props.children._debugInfo);
4989
- var prevTreeContext = task.treeContext,
4990
- prevRow = task.row,
4991
- totalChildren = rows.length,
4992
- previousSuspenseListRow = null;
5048
+ task.keyPath = keyPath;
5049
+ keyPath = rows.length;
5050
+ var previousSuspenseListRow = null;
4993
5051
  if (null !== task.replay) {
4994
5052
  var resumeSlots = task.replay.slots;
4995
5053
  if (null !== resumeSlots && "object" === typeof resumeSlots)
4996
- for (var n = 0; n < totalChildren; n++) {
4997
- var i = "backwards" !== revealOrder ? n : totalChildren - 1 - n,
5054
+ for (var n = 0; n < keyPath; n++) {
5055
+ var i = "backwards" !== revealOrder ? n : keyPath - 1 - n,
4998
5056
  node = rows[i];
4999
5057
  task.row = previousSuspenseListRow = createSuspenseListRow(
5000
5058
  previousSuspenseListRow
5001
5059
  );
5002
- task.treeContext = pushTreeContext(
5003
- prevTreeContext,
5004
- totalChildren,
5005
- i
5006
- );
5060
+ task.treeContext = pushTreeContext(prevTreeContext, keyPath, i);
5007
5061
  var resumeSegmentID = resumeSlots[i];
5008
5062
  "number" === typeof resumeSegmentID
5009
5063
  ? (resumeNode(request, task, resumeSegmentID, node, i),
@@ -5013,32 +5067,28 @@
5013
5067
  finishSuspenseListRow(request, previousSuspenseListRow);
5014
5068
  }
5015
5069
  else
5016
- for (resumeSlots = 0; resumeSlots < totalChildren; resumeSlots++)
5070
+ for (resumeSlots = 0; resumeSlots < keyPath; resumeSlots++)
5017
5071
  (n =
5018
5072
  "backwards" !== revealOrder
5019
5073
  ? resumeSlots
5020
- : totalChildren - 1 - resumeSlots),
5074
+ : keyPath - 1 - resumeSlots),
5021
5075
  (i = rows[n]),
5022
5076
  warnForMissingKey(request, task, i),
5023
5077
  (task.row = previousSuspenseListRow =
5024
5078
  createSuspenseListRow(previousSuspenseListRow)),
5025
- (task.treeContext = pushTreeContext(
5026
- prevTreeContext,
5027
- totalChildren,
5028
- n
5029
- )),
5079
+ (task.treeContext = pushTreeContext(prevTreeContext, keyPath, n)),
5030
5080
  renderNode(request, task, i, n),
5031
5081
  0 === --previousSuspenseListRow.pendingTasks &&
5032
5082
  finishSuspenseListRow(request, previousSuspenseListRow);
5033
5083
  } else if ("backwards" !== revealOrder)
5034
- for (revealOrder = 0; revealOrder < totalChildren; revealOrder++)
5084
+ for (revealOrder = 0; revealOrder < keyPath; revealOrder++)
5035
5085
  (resumeSlots = rows[revealOrder]),
5036
5086
  warnForMissingKey(request, task, resumeSlots),
5037
5087
  (task.row = previousSuspenseListRow =
5038
5088
  createSuspenseListRow(previousSuspenseListRow)),
5039
5089
  (task.treeContext = pushTreeContext(
5040
5090
  prevTreeContext,
5041
- totalChildren,
5091
+ keyPath,
5042
5092
  revealOrder
5043
5093
  )),
5044
5094
  renderNode(request, task, resumeSlots, revealOrder),
@@ -5048,12 +5098,12 @@
5048
5098
  revealOrder = task.blockedSegment;
5049
5099
  resumeSlots = revealOrder.children.length;
5050
5100
  n = revealOrder.chunks.length;
5051
- for (i = totalChildren - 1; 0 <= i; i--) {
5101
+ for (i = keyPath - 1; 0 <= i; i--) {
5052
5102
  node = rows[i];
5053
5103
  task.row = previousSuspenseListRow = createSuspenseListRow(
5054
5104
  previousSuspenseListRow
5055
5105
  );
5056
- task.treeContext = pushTreeContext(prevTreeContext, totalChildren, i);
5106
+ task.treeContext = pushTreeContext(prevTreeContext, keyPath, i);
5057
5107
  resumeSegmentID = createPendingSegment(
5058
5108
  request,
5059
5109
  n,
@@ -5090,7 +5140,7 @@
5090
5140
  (prevRow.pendingTasks++, (previousSuspenseListRow.next = prevRow));
5091
5141
  task.treeContext = prevTreeContext;
5092
5142
  task.row = prevRow;
5093
- task.keyPath = keyPath;
5143
+ task.keyPath = prevKeyPath;
5094
5144
  task.componentStack = previousComponentStack;
5095
5145
  task.debugTask = previousDebugTask;
5096
5146
  }
@@ -5635,7 +5685,7 @@
5635
5685
  );
5636
5686
  segment.lastPushedText = !1;
5637
5687
  var _prevContext2 = task.formatContext,
5638
- _prevKeyPath2 = task.keyPath;
5688
+ _prevKeyPath3 = task.keyPath;
5639
5689
  task.keyPath = keyPath;
5640
5690
  if (
5641
5691
  (task.formatContext = getChildFormatContext(
@@ -5676,7 +5726,7 @@
5676
5726
  request.pingedTasks.push(preambleTask);
5677
5727
  } else renderNode(request, task, _children, -1);
5678
5728
  task.formatContext = _prevContext2;
5679
- task.keyPath = _prevKeyPath2;
5729
+ task.keyPath = _prevKeyPath3;
5680
5730
  a: {
5681
5731
  var target = segment.chunks,
5682
5732
  resumableState = request.resumableState;
@@ -5742,10 +5792,10 @@
5742
5792
  } else if ("hidden" !== props.mode) {
5743
5793
  segment$jscomp$0.chunks.push(startActivityBoundary);
5744
5794
  segment$jscomp$0.lastPushedText = !1;
5745
- var _prevKeyPath3 = task.keyPath;
5795
+ var _prevKeyPath4 = task.keyPath;
5746
5796
  task.keyPath = keyPath;
5747
5797
  renderNode(request, task, props.children, -1);
5748
- task.keyPath = _prevKeyPath3;
5798
+ task.keyPath = _prevKeyPath4;
5749
5799
  segment$jscomp$0.chunks.push(endActivityBoundary);
5750
5800
  segment$jscomp$0.lastPushedText = !1;
5751
5801
  }
@@ -5793,10 +5843,27 @@
5793
5843
  }
5794
5844
  }
5795
5845
  }
5796
- var prevKeyPath$jscomp$3 = task.keyPath;
5797
- task.keyPath = keyPath;
5798
- renderNodeDestructive(request, task, children$jscomp$0, -1);
5799
- task.keyPath = prevKeyPath$jscomp$3;
5846
+ if ("together" === revealOrder) {
5847
+ var _prevKeyPath2 = task.keyPath,
5848
+ prevRow = task.row,
5849
+ newRow = (task.row = createSuspenseListRow(null));
5850
+ newRow.boundaries = [];
5851
+ newRow.together = !0;
5852
+ task.keyPath = keyPath;
5853
+ renderNodeDestructive(request, task, children$jscomp$0, -1);
5854
+ 0 === --newRow.pendingTasks &&
5855
+ finishSuspenseListRow(request, newRow);
5856
+ task.keyPath = _prevKeyPath2;
5857
+ task.row = prevRow;
5858
+ null !== prevRow &&
5859
+ 0 < newRow.pendingTasks &&
5860
+ (prevRow.pendingTasks++, (newRow.next = prevRow));
5861
+ } else {
5862
+ var prevKeyPath$jscomp$3 = task.keyPath;
5863
+ task.keyPath = keyPath;
5864
+ renderNodeDestructive(request, task, children$jscomp$0, -1);
5865
+ task.keyPath = prevKeyPath$jscomp$3;
5866
+ }
5800
5867
  }
5801
5868
  return;
5802
5869
  case REACT_VIEW_TRANSITION_TYPE:
@@ -5826,7 +5893,7 @@
5826
5893
  } else {
5827
5894
  var prevKeyPath$jscomp$4 = task.keyPath,
5828
5895
  prevContext$jscomp$0 = task.formatContext,
5829
- prevRow = task.row,
5896
+ prevRow$jscomp$0 = task.row,
5830
5897
  parentBoundary = task.blockedBoundary,
5831
5898
  parentPreamble = task.blockedPreamble,
5832
5899
  parentHoistableState = task.hoistableState,
@@ -5961,18 +6028,24 @@
5961
6028
  finishedSegment(request, newBoundary, contentRootSegment),
5962
6029
  queueCompletedSegment(newBoundary, contentRootSegment),
5963
6030
  0 === newBoundary.pendingTasks &&
5964
- newBoundary.status === PENDING &&
5965
- ((newBoundary.status = COMPLETED),
5966
- !(500 < newBoundary.byteSize)))
6031
+ newBoundary.status === PENDING)
5967
6032
  ) {
5968
- null !== prevRow &&
5969
- 0 === --prevRow.pendingTasks &&
5970
- finishSuspenseListRow(request, prevRow);
5971
- 0 === request.pendingRootTasks &&
5972
- task.blockedPreamble &&
5973
- preparePreamble(request);
5974
- break a;
5975
- }
6033
+ if (
6034
+ ((newBoundary.status = COMPLETED),
6035
+ !(500 < newBoundary.byteSize))
6036
+ ) {
6037
+ null !== prevRow$jscomp$0 &&
6038
+ 0 === --prevRow$jscomp$0.pendingTasks &&
6039
+ finishSuspenseListRow(request, prevRow$jscomp$0);
6040
+ 0 === request.pendingRootTasks &&
6041
+ task.blockedPreamble &&
6042
+ preparePreamble(request);
6043
+ break a;
6044
+ }
6045
+ } else
6046
+ null !== prevRow$jscomp$0 &&
6047
+ prevRow$jscomp$0.together &&
6048
+ tryToResolveTogetherRow(request, prevRow$jscomp$0);
5976
6049
  } catch (thrownValue$2) {
5977
6050
  newBoundary.status = CLIENT_RENDERED;
5978
6051
  if (12 === request.status) {
@@ -6002,7 +6075,7 @@
6002
6075
  (task.blockedSegment = parentSegment),
6003
6076
  (task.keyPath = prevKeyPath$jscomp$4),
6004
6077
  (task.formatContext = prevContext$jscomp$0),
6005
- (task.row = prevRow);
6078
+ (task.row = prevRow$jscomp$0);
6006
6079
  }
6007
6080
  var suspendedFallbackTask = createRenderTask(
6008
6081
  request,
@@ -6962,10 +7035,6 @@
6962
7035
  if (6 === segment.status) return;
6963
7036
  segment.status = ABORTED;
6964
7037
  }
6965
- segment = task.row;
6966
- null !== segment &&
6967
- 0 === --segment.pendingTasks &&
6968
- finishSuspenseListRow(request, segment);
6969
7038
  segment = getThrownInfo(task.componentStack);
6970
7039
  if (null === boundary) {
6971
7040
  if (13 !== request.status && request.status !== CLOSED) {
@@ -6976,36 +7045,49 @@
6976
7045
  return;
6977
7046
  }
6978
7047
  boundary.pendingTasks--;
6979
- 0 === boundary.pendingTasks &&
6980
- 0 < boundary.nodes.length &&
6981
- ((task = logRecoverableError(request, error, segment, null)),
7048
+ if (0 === boundary.pendingTasks && 0 < boundary.nodes.length) {
7049
+ var errorDigest = logRecoverableError(
7050
+ request,
7051
+ error,
7052
+ segment,
7053
+ null
7054
+ );
6982
7055
  abortRemainingReplayNodes(
6983
7056
  request,
6984
7057
  null,
6985
7058
  boundary.nodes,
6986
7059
  boundary.slots,
6987
7060
  error,
6988
- task,
7061
+ errorDigest,
6989
7062
  segment,
6990
7063
  !0
6991
- ));
7064
+ );
7065
+ }
6992
7066
  request.pendingRootTasks--;
6993
7067
  0 === request.pendingRootTasks && completeShell(request);
6994
7068
  }
6995
7069
  } else
6996
- boundary.pendingTasks--,
6997
- boundary.status !== CLIENT_RENDERED &&
6998
- ((boundary.status = CLIENT_RENDERED),
6999
- (task = logRecoverableError(request, error, segment, null)),
7000
- (boundary.status = CLIENT_RENDERED),
7001
- encodeErrorForBoundary(boundary, task, error, segment, !0),
7002
- untrackBoundary(request, boundary),
7003
- boundary.parentFlushed &&
7004
- request.clientRenderedBoundaries.push(boundary)),
7070
+ boundary.status !== CLIENT_RENDERED &&
7071
+ ((boundary.status = CLIENT_RENDERED),
7072
+ (errorDigest = logRecoverableError(request, error, segment, null)),
7073
+ (boundary.status = CLIENT_RENDERED),
7074
+ encodeErrorForBoundary(boundary, errorDigest, error, segment, !0),
7075
+ untrackBoundary(request, boundary),
7076
+ boundary.parentFlushed &&
7077
+ request.clientRenderedBoundaries.push(boundary)),
7078
+ boundary.pendingTasks--,
7079
+ (segment = boundary.row),
7080
+ null !== segment &&
7081
+ 0 === --segment.pendingTasks &&
7082
+ finishSuspenseListRow(request, segment),
7005
7083
  boundary.fallbackAbortableTasks.forEach(function (fallbackTask) {
7006
7084
  return abortTask(fallbackTask, request, error);
7007
7085
  }),
7008
7086
  boundary.fallbackAbortableTasks.clear();
7087
+ task = task.row;
7088
+ null !== task &&
7089
+ 0 === --task.pendingTasks &&
7090
+ finishSuspenseListRow(request, task);
7009
7091
  request.allPendingTasks--;
7010
7092
  0 === request.allPendingTasks && completeAll(request);
7011
7093
  }
@@ -7117,55 +7199,129 @@
7117
7199
  : (boundary.byteSize += segmentByteSize);
7118
7200
  }
7119
7201
  }
7120
- function finishedTask(request, boundary, row, segment) {
7202
+ function finishedTask(request$jscomp$0, boundary$jscomp$0, row, segment) {
7121
7203
  null !== row &&
7122
- 0 === --row.pendingTasks &&
7123
- finishSuspenseListRow(request, row);
7124
- request.allPendingTasks--;
7125
- if (null === boundary) {
7204
+ (0 === --row.pendingTasks
7205
+ ? finishSuspenseListRow(request$jscomp$0, row)
7206
+ : row.together && tryToResolveTogetherRow(request$jscomp$0, row));
7207
+ request$jscomp$0.allPendingTasks--;
7208
+ if (null === boundary$jscomp$0) {
7126
7209
  if (null !== segment && segment.parentFlushed) {
7127
- if (null !== request.completedRootSegment)
7210
+ if (null !== request$jscomp$0.completedRootSegment)
7128
7211
  throw Error(
7129
7212
  "There can only be one root segment. This is a bug in React."
7130
7213
  );
7131
- request.completedRootSegment = segment;
7214
+ request$jscomp$0.completedRootSegment = segment;
7132
7215
  }
7133
- request.pendingRootTasks--;
7134
- 0 === request.pendingRootTasks && completeShell(request);
7135
- } else
7136
- boundary.pendingTasks--,
7137
- boundary.status !== CLIENT_RENDERED &&
7138
- (0 === boundary.pendingTasks
7139
- ? (boundary.status === PENDING && (boundary.status = COMPLETED),
7140
- null !== segment &&
7141
- segment.parentFlushed &&
7142
- segment.status === COMPLETED &&
7143
- queueCompletedSegment(boundary, segment),
7144
- boundary.parentFlushed &&
7145
- request.completedBoundaries.push(boundary),
7146
- boundary.status === COMPLETED &&
7147
- (500 < boundary.byteSize ||
7148
- (boundary.fallbackAbortableTasks.forEach(
7149
- abortTaskSoft,
7150
- request
7151
- ),
7152
- boundary.fallbackAbortableTasks.clear(),
7153
- (row = boundary.row),
7154
- null !== row &&
7155
- 0 === --row.pendingTasks &&
7156
- finishSuspenseListRow(request, row)),
7157
- 0 === request.pendingRootTasks &&
7158
- null === request.trackedPostpones &&
7159
- null !== boundary.contentPreamble &&
7160
- preparePreamble(request)))
7161
- : null !== segment &&
7162
- segment.parentFlushed &&
7163
- segment.status === COMPLETED &&
7164
- (queueCompletedSegment(boundary, segment),
7165
- 1 === boundary.completedSegments.length &&
7166
- boundary.parentFlushed &&
7167
- request.partialBoundaries.push(boundary)));
7168
- 0 === request.allPendingTasks && completeAll(request);
7216
+ request$jscomp$0.pendingRootTasks--;
7217
+ 0 === request$jscomp$0.pendingRootTasks &&
7218
+ completeShell(request$jscomp$0);
7219
+ } else if (
7220
+ (boundary$jscomp$0.pendingTasks--,
7221
+ boundary$jscomp$0.status !== CLIENT_RENDERED)
7222
+ )
7223
+ if (0 === boundary$jscomp$0.pendingTasks)
7224
+ if (
7225
+ (boundary$jscomp$0.status === PENDING &&
7226
+ (boundary$jscomp$0.status = COMPLETED),
7227
+ null !== segment &&
7228
+ segment.parentFlushed &&
7229
+ segment.status === COMPLETED &&
7230
+ queueCompletedSegment(boundary$jscomp$0, segment),
7231
+ boundary$jscomp$0.parentFlushed &&
7232
+ request$jscomp$0.completedBoundaries.push(boundary$jscomp$0),
7233
+ boundary$jscomp$0.status === COMPLETED)
7234
+ )
7235
+ (row = boundary$jscomp$0.row),
7236
+ null !== row &&
7237
+ hoistHoistables(row.hoistables, boundary$jscomp$0.contentState),
7238
+ 500 < boundary$jscomp$0.byteSize ||
7239
+ (boundary$jscomp$0.fallbackAbortableTasks.forEach(
7240
+ abortTaskSoft,
7241
+ request$jscomp$0
7242
+ ),
7243
+ boundary$jscomp$0.fallbackAbortableTasks.clear(),
7244
+ null !== row &&
7245
+ 0 === --row.pendingTasks &&
7246
+ finishSuspenseListRow(request$jscomp$0, row)),
7247
+ 0 === request$jscomp$0.pendingRootTasks &&
7248
+ null === request$jscomp$0.trackedPostpones &&
7249
+ null !== boundary$jscomp$0.contentPreamble &&
7250
+ preparePreamble(request$jscomp$0);
7251
+ else {
7252
+ if (
7253
+ boundary$jscomp$0.status === POSTPONED &&
7254
+ ((boundary$jscomp$0 = boundary$jscomp$0.row),
7255
+ null !== boundary$jscomp$0)
7256
+ ) {
7257
+ if (null !== request$jscomp$0.trackedPostpones) {
7258
+ row = request$jscomp$0.trackedPostpones;
7259
+ var postponedRow = boundary$jscomp$0.next;
7260
+ if (
7261
+ null !== postponedRow &&
7262
+ ((segment = postponedRow.boundaries), null !== segment)
7263
+ )
7264
+ for (
7265
+ postponedRow.boundaries = null, postponedRow = 0;
7266
+ postponedRow < segment.length;
7267
+ postponedRow++
7268
+ ) {
7269
+ var postponedBoundary = segment[postponedRow];
7270
+ var request = request$jscomp$0,
7271
+ trackedPostpones = row,
7272
+ boundary = postponedBoundary;
7273
+ boundary.status = POSTPONED;
7274
+ boundary.rootSegmentID = request.nextSegmentId++;
7275
+ request = boundary.trackedContentKeyPath;
7276
+ if (null === request)
7277
+ throw Error(
7278
+ "It should not be possible to postpone at the root. This is a bug in React."
7279
+ );
7280
+ var fallbackReplayNode = boundary.trackedFallbackNode,
7281
+ children = [],
7282
+ boundaryNode = trackedPostpones.workingMap.get(request);
7283
+ void 0 === boundaryNode
7284
+ ? ((boundary = [
7285
+ request[1],
7286
+ request[2],
7287
+ children,
7288
+ null,
7289
+ fallbackReplayNode,
7290
+ boundary.rootSegmentID
7291
+ ]),
7292
+ trackedPostpones.workingMap.set(request, boundary),
7293
+ addToReplayParent(
7294
+ boundary,
7295
+ request[0],
7296
+ trackedPostpones
7297
+ ))
7298
+ : ((boundaryNode[4] = fallbackReplayNode),
7299
+ (boundaryNode[5] = boundary.rootSegmentID));
7300
+ finishedTask(
7301
+ request$jscomp$0,
7302
+ postponedBoundary,
7303
+ null,
7304
+ null
7305
+ );
7306
+ }
7307
+ }
7308
+ 0 === --boundary$jscomp$0.pendingTasks &&
7309
+ finishSuspenseListRow(request$jscomp$0, boundary$jscomp$0);
7310
+ }
7311
+ }
7312
+ else
7313
+ null !== segment &&
7314
+ segment.parentFlushed &&
7315
+ segment.status === COMPLETED &&
7316
+ (queueCompletedSegment(boundary$jscomp$0, segment),
7317
+ 1 === boundary$jscomp$0.completedSegments.length &&
7318
+ boundary$jscomp$0.parentFlushed &&
7319
+ request$jscomp$0.partialBoundaries.push(boundary$jscomp$0)),
7320
+ (boundary$jscomp$0 = boundary$jscomp$0.row),
7321
+ null !== boundary$jscomp$0 &&
7322
+ boundary$jscomp$0.together &&
7323
+ tryToResolveTogetherRow(request$jscomp$0, boundary$jscomp$0);
7324
+ 0 === request$jscomp$0.allPendingTasks && completeAll(request$jscomp$0);
7169
7325
  }
7170
7326
  function performWork(request$jscomp$2) {
7171
7327
  if (
@@ -7346,32 +7502,37 @@
7346
7502
  errorInfo$jscomp$1,
7347
7503
  debugTask
7348
7504
  );
7349
- null === boundary$jscomp$0
7350
- ? fatalError(
7351
- request,
7352
- x$jscomp$0,
7353
- errorInfo$jscomp$1,
7354
- debugTask
7355
- )
7356
- : (boundary$jscomp$0.pendingTasks--,
7357
- boundary$jscomp$0.status !== CLIENT_RENDERED &&
7358
- ((boundary$jscomp$0.status = CLIENT_RENDERED),
7359
- encodeErrorForBoundary(
7360
- boundary$jscomp$0,
7361
- prevTaskInDEV,
7362
- x$jscomp$0,
7363
- errorInfo$jscomp$1,
7364
- !1
7365
- ),
7366
- untrackBoundary(request, boundary$jscomp$0),
7367
- boundary$jscomp$0.parentFlushed &&
7368
- request.clientRenderedBoundaries.push(
7369
- boundary$jscomp$0
7370
- ),
7371
- 0 === request.pendingRootTasks &&
7372
- null === request.trackedPostpones &&
7373
- null !== boundary$jscomp$0.contentPreamble &&
7374
- preparePreamble(request)));
7505
+ if (null === boundary$jscomp$0)
7506
+ fatalError(
7507
+ request,
7508
+ x$jscomp$0,
7509
+ errorInfo$jscomp$1,
7510
+ debugTask
7511
+ );
7512
+ else if (
7513
+ (boundary$jscomp$0.pendingTasks--,
7514
+ boundary$jscomp$0.status !== CLIENT_RENDERED)
7515
+ ) {
7516
+ boundary$jscomp$0.status = CLIENT_RENDERED;
7517
+ encodeErrorForBoundary(
7518
+ boundary$jscomp$0,
7519
+ prevTaskInDEV,
7520
+ x$jscomp$0,
7521
+ errorInfo$jscomp$1,
7522
+ !1
7523
+ );
7524
+ untrackBoundary(request, boundary$jscomp$0);
7525
+ var boundaryRow = boundary$jscomp$0.row;
7526
+ null !== boundaryRow &&
7527
+ 0 === --boundaryRow.pendingTasks &&
7528
+ finishSuspenseListRow(request, boundaryRow);
7529
+ boundary$jscomp$0.parentFlushed &&
7530
+ request.clientRenderedBoundaries.push(boundary$jscomp$0);
7531
+ 0 === request.pendingRootTasks &&
7532
+ null === request.trackedPostpones &&
7533
+ null !== boundary$jscomp$0.contentPreamble &&
7534
+ preparePreamble(request);
7535
+ }
7375
7536
  0 === request.allPendingTasks && completeAll(request);
7376
7537
  }
7377
7538
  } finally {
@@ -7583,12 +7744,7 @@
7583
7744
  boundary.rootSegmentID
7584
7745
  ),
7585
7746
  hoistableState &&
7586
- ((boundary = boundary.fallbackState),
7587
- boundary.styles.forEach(hoistStyleQueueDependency, hoistableState),
7588
- boundary.stylesheets.forEach(
7589
- hoistStylesheetDependency,
7590
- hoistableState
7591
- )),
7747
+ hoistHoistables(hoistableState, boundary.fallbackState),
7592
7748
  flushSubtree(request, destination, segment, hoistableState);
7593
7749
  else if (
7594
7750
  500 < boundary.byteSize &&
@@ -7605,12 +7761,7 @@
7605
7761
  else {
7606
7762
  flushedByteSize += boundary.byteSize;
7607
7763
  hoistableState &&
7608
- ((segment = boundary.contentState),
7609
- segment.styles.forEach(hoistStyleQueueDependency, hoistableState),
7610
- segment.stylesheets.forEach(
7611
- hoistStylesheetDependency,
7612
- hoistableState
7613
- ));
7764
+ hoistHoistables(hoistableState, boundary.contentState);
7614
7765
  segment = boundary.row;
7615
7766
  null !== segment &&
7616
7767
  500 < boundary.byteSize &&
@@ -8062,6 +8213,17 @@
8062
8213
  break a;
8063
8214
  }
8064
8215
  completedSegments.splice(0, JSCompiler_inline_result);
8216
+ var row = boundary$jscomp$0.row;
8217
+ null !== row &&
8218
+ row.together &&
8219
+ 1 === boundary$jscomp$0.pendingTasks &&
8220
+ (1 === row.pendingTasks
8221
+ ? unblockSuspenseListRow(
8222
+ clientRenderedBoundaries,
8223
+ row,
8224
+ row.hoistables
8225
+ )
8226
+ : row.pendingTasks--);
8065
8227
  JSCompiler_inline_result$jscomp$0 = writeHoistablesForBoundary(
8066
8228
  boundary,
8067
8229
  boundary$jscomp$0.contentState,
@@ -8172,13 +8334,25 @@
8172
8334
  fatalError(request, error$4, reason, null);
8173
8335
  }
8174
8336
  }
8337
+ function addToReplayParent(node, parentKeyPath, trackedPostpones) {
8338
+ if (null === parentKeyPath) trackedPostpones.rootNodes.push(node);
8339
+ else {
8340
+ var workingMap = trackedPostpones.workingMap,
8341
+ parentNode = workingMap.get(parentKeyPath);
8342
+ void 0 === parentNode &&
8343
+ ((parentNode = [parentKeyPath[1], parentKeyPath[2], [], null]),
8344
+ workingMap.set(parentKeyPath, parentNode),
8345
+ addToReplayParent(parentNode, parentKeyPath[0], trackedPostpones));
8346
+ parentNode[2].push(node);
8347
+ }
8348
+ }
8175
8349
  function ensureCorrectIsomorphicReactVersion() {
8176
8350
  var isomorphicReactPackageVersion = React.version;
8177
- if ("19.2.0-canary-c4676e72-20250520" !== isomorphicReactPackageVersion)
8351
+ if ("19.2.0-canary-8ce15b0f-20250522" !== isomorphicReactPackageVersion)
8178
8352
  throw Error(
8179
8353
  'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' +
8180
8354
  (isomorphicReactPackageVersion +
8181
- "\n - react-dom: 19.2.0-canary-c4676e72-20250520\nLearn more: https://react.dev/warnings/version-mismatch")
8355
+ "\n - react-dom: 19.2.0-canary-8ce15b0f-20250522\nLearn more: https://react.dev/warnings/version-mismatch")
8182
8356
  );
8183
8357
  }
8184
8358
  var React = require("react"),
@@ -9411,10 +9585,10 @@
9411
9585
  stringToPrecomputedChunk('<template data-rsi="" data-sid="');
9412
9586
  stringToPrecomputedChunk('" data-pid="');
9413
9587
  var completeBoundaryScriptFunctionOnly = stringToPrecomputedChunk(
9414
- '$RB=[];$RV=function(){$RT=performance.now();var d=$RB;$RB=[];for(var a=0;a<d.length;a+=2){var b=d[a],h=d[a+1],e=b.parentNode;if(e){var f=b.previousSibling,g=0;do{if(b&&8===b.nodeType){var c=b.data;if("/$"===c||"/&"===c)if(0===g)break;else g--;else"$"!==c&&"$?"!==c&&"$~"!==c&&"$!"!==c&&"&"!==c||g++}c=b.nextSibling;e.removeChild(b);b=c}while(b);for(;h.firstChild;)e.insertBefore(h.firstChild,b);f.data="$";f._reactRetry&&f._reactRetry()}}};$RC=function(d,a){if(a=document.getElementById(a))if(a.parentNode.removeChild(a),d=document.getElementById(d))d.previousSibling.data="$~",$RB.push(d,a),2===$RB.length&&setTimeout($RV,("number"!==typeof $RT?0:$RT)+300-performance.now())};'
9588
+ '$RB=[];$RV=function(c){$RT=performance.now();for(var a=0;a<c.length;a+=2){var b=c[a],h=c[a+1],e=b.parentNode;if(e){var f=b.previousSibling,g=0;do{if(b&&8===b.nodeType){var d=b.data;if("/$"===d||"/&"===d)if(0===g)break;else g--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||g++}d=b.nextSibling;e.removeChild(b);b=d}while(b);for(;h.firstChild;)e.insertBefore(h.firstChild,b);f.data="$";f._reactRetry&&f._reactRetry()}}c.length=0};$RC=function(c,a){if(a=document.getElementById(a))if(a.parentNode.removeChild(a),c=document.getElementById(c))c.previousSibling.data="$~",$RB.push(c,a),2===$RB.length&&setTimeout($RV.bind(null,$RB),("number"!==typeof $RT?0:$RT)+300-performance.now())};'
9415
9589
  );
9416
9590
  stringToPrecomputedChunk(
9417
- "$RV=function(a){try{var b=document.__reactViewTransition;if(b){b.finished.then($RV,$RV);return}if(window._useVT){var c=document.__reactViewTransition=document.startViewTransition({update:a,types:[]});c.finished.finally(function(){document.__reactViewTransition===c&&(document.__reactViewTransition=null)});return}}catch(d){}a()}.bind(null,$RV);"
9591
+ '$RV=function(w,f){function h(b,d){var k=b.getAttribute(d);k&&(d=b.style,l.push(b,d.viewTransitionName,d.viewTransitionClass),"auto"!==k&&(d.viewTransitionClass=k),(b=b.getAttribute("vt-name"))||(b="\\u00abT"+F++ +"\\u00bb"),d.viewTransitionName=b,x=!0)}var x=!1,F=0,l=[];try{var e=document.__reactViewTransition;if(e){e.finished.finally($RV.bind(null,f));return}var m=new Map;for(e=1;e<f.length;e+=2)for(var g=f[e].querySelectorAll("[vt-share]"),c=0;c<g.length;c++){var a=g[c];m.set(a.getAttribute("vt-name"),a)}for(g=0;g<f.length;g+=2){var y=f[g],t=y.parentNode;if(t){var r=t.getBoundingClientRect();if(r.left||r.top||r.width||r.height){a=y;for(e=0;a;){if(8===a.nodeType){var p=a.data;if("/$"===p)if(0===e)break;else e--;else"$"!==p&&"$?"!==p&&"$~"!==p&&"$!"!==p||e++}else if(1===a.nodeType){c=a;var z=c.getAttribute("vt-name"),u=m.get(z);h(c,u?"vt-share":"vt-exit");u&&(h(u,"vt-share"),m.set(z,null));var A=c.querySelectorAll("[vt-share]");for(c=0;c<A.length;c++){var B=A[c],C=B.getAttribute("vt-name"),D=m.get(C);\nD&&(h(B,"vt-share"),h(D,"vt-share"),m.set(C,null))}}a=a.nextSibling}for(var q=f[g+1].firstElementChild;q;)null!==m.get(q.getAttribute("vt-name"))&&h(q,"vt-enter"),q=q.nextElementSibling;a=t;do for(var n=a.firstElementChild;n;){var E=n.getAttribute("vt-update");E&&"none"!==E&&!l.includes(n)&&h(n,"vt-update");n=n.nextElementSibling}while((a=a.parentNode)&&1===a.nodeType&&"none"!==a.getAttribute("vt-update"))}}}if(x){var v=document.__reactViewTransition=document.startViewTransition({update:w.bind(null,\nf),types:[]});v.ready.finally(function(){for(var b=l.length-3;0<=b;b-=3){var d=l[b],k=d.style;k.viewTransitionName=l[b+1];k.viewTransitionClass=l[b+1];""===d.getAttribute("style")&&d.removeAttribute("style")}});v.finished.finally(function(){document.__reactViewTransition===v&&(document.__reactViewTransition=null)});$RB=[];return}}catch(b){}w(f)}.bind(null,$RV);'
9418
9592
  );
9419
9593
  var completeBoundaryScript1Partial = stringToPrecomputedChunk('$RC("'),
9420
9594
  completeBoundaryWithStylesScript1FullPartial = stringToPrecomputedChunk(
@@ -9865,5 +10039,5 @@
9865
10039
  startWork(request);
9866
10040
  });
9867
10041
  };
9868
- exports.version = "19.2.0-canary-c4676e72-20250520";
10042
+ exports.version = "19.2.0-canary-8ce15b0f-20250522";
9869
10043
  })();