react-server-dom-webpack 19.2.0-canary-edac0dde-20250723 → 19.2.0-canary-19baee81-20250725

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.
@@ -379,7 +379,8 @@
379
379
  function trackUsedThenable(thenableState, thenable, index) {
380
380
  index = thenableState[index];
381
381
  void 0 === index
382
- ? thenableState.push(thenable)
382
+ ? (thenableState.push(thenable),
383
+ (thenableState._stacks || (thenableState._stacks = [])).push(Error()))
383
384
  : index !== thenable && (thenable.then(noop, noop), (thenable = index));
384
385
  switch (thenable.status) {
385
386
  case "fulfilled":
@@ -670,8 +671,8 @@
670
671
  var callsite = stack[i],
671
672
  functionName = callsite[0];
672
673
  var url = callsite[1];
673
- if (url.startsWith("rsc://React/")) {
674
- var envIdx = url.indexOf("/", 12),
674
+ if (url.startsWith("about://React/")) {
675
+ var envIdx = url.indexOf("/", 14),
675
676
  suffixIdx = url.lastIndexOf("?");
676
677
  -1 < envIdx &&
677
678
  -1 < suffixIdx &&
@@ -914,8 +915,21 @@
914
915
  this.deferredDebugObjects = keepDebugAlive
915
916
  ? { retained: new Map(), existing: new Map() }
916
917
  : null;
917
- type = createTask(this, model, null, !1, abortSet, 0, null, null, null);
918
- pingedTasks.push(type);
918
+ type = this.timeOrigin = performance.now();
919
+ emitTimeOriginChunk(this, type + performance.timeOrigin);
920
+ this.abortTime = -0;
921
+ model = createTask(
922
+ this,
923
+ model,
924
+ null,
925
+ !1,
926
+ abortSet,
927
+ type,
928
+ null,
929
+ null,
930
+ null
931
+ );
932
+ pingedTasks.push(model);
919
933
  }
920
934
  function createRequest(
921
935
  model,
@@ -1056,7 +1070,7 @@
1056
1070
  task.keyPath,
1057
1071
  task.implicitSlot,
1058
1072
  request.abortableTasks,
1059
- 0,
1073
+ task.time,
1060
1074
  task.debugOwner,
1061
1075
  task.debugStack,
1062
1076
  task.debugTask
@@ -1064,14 +1078,26 @@
1064
1078
  switch (thenable.status) {
1065
1079
  case "fulfilled":
1066
1080
  return (
1067
- forwardDebugInfoFromThenable(request, newTask, thenable),
1081
+ forwardDebugInfoFromThenable(
1082
+ request,
1083
+ newTask,
1084
+ thenable,
1085
+ null,
1086
+ null
1087
+ ),
1068
1088
  (newTask.model = thenable.value),
1069
1089
  pingTask(request, newTask),
1070
1090
  newTask.id
1071
1091
  );
1072
1092
  case "rejected":
1073
1093
  return (
1074
- forwardDebugInfoFromThenable(request, newTask, thenable),
1094
+ forwardDebugInfoFromThenable(
1095
+ request,
1096
+ newTask,
1097
+ thenable,
1098
+ null,
1099
+ null
1100
+ ),
1075
1101
  erroredTask(request, newTask, thenable.reason),
1076
1102
  newTask.id
1077
1103
  );
@@ -1106,7 +1132,9 @@
1106
1132
  },
1107
1133
  function (reason) {
1108
1134
  0 === newTask.status &&
1109
- (erroredTask(request, newTask, reason), enqueueFlush(request));
1135
+ ((newTask.timed = !0),
1136
+ erroredTask(request, newTask, reason),
1137
+ enqueueFlush(request));
1110
1138
  }
1111
1139
  );
1112
1140
  return newTask.id;
@@ -1170,7 +1198,7 @@
1170
1198
  task.keyPath,
1171
1199
  task.implicitSlot,
1172
1200
  request.abortableTasks,
1173
- 0,
1201
+ task.time,
1174
1202
  task.debugOwner,
1175
1203
  task.debugStack,
1176
1204
  task.debugTask
@@ -1250,7 +1278,7 @@
1250
1278
  task.keyPath,
1251
1279
  task.implicitSlot,
1252
1280
  request.abortableTasks,
1253
- 0,
1281
+ task.time,
1254
1282
  task.debugOwner,
1255
1283
  task.debugStack,
1256
1284
  task.debugTask
@@ -1280,11 +1308,11 @@
1280
1308
  switch (wakeable.status) {
1281
1309
  case "fulfilled":
1282
1310
  return (
1283
- forwardDebugInfoFromThenable(request, task, wakeable),
1311
+ forwardDebugInfoFromThenable(request, task, wakeable, null, null),
1284
1312
  wakeable.value
1285
1313
  );
1286
1314
  case "rejected":
1287
- forwardDebugInfoFromThenable(request, task, wakeable);
1315
+ forwardDebugInfoFromThenable(request, task, wakeable, null, null);
1288
1316
  break;
1289
1317
  default:
1290
1318
  "string" !== typeof wakeable.status &&
@@ -1424,6 +1452,9 @@
1424
1452
  componentDebugInfo.debugStack = task.debugStack;
1425
1453
  componentDebugInfo.debugTask = task.debugTask;
1426
1454
  outlineComponentInfo(request, componentDebugInfo);
1455
+ var timestamp = performance.now();
1456
+ timestamp > task.time && (task.time = timestamp);
1457
+ task.timed = !0;
1427
1458
  emitDebugChunk(request, componentDebugID, componentDebugInfo);
1428
1459
  task.environmentName = componentEnv;
1429
1460
  2 === validated &&
@@ -1474,14 +1505,17 @@
1474
1505
  validated = thenableState;
1475
1506
  if (null !== validated)
1476
1507
  for (
1477
- prevThenableState = 0;
1478
- prevThenableState < validated.length;
1479
- prevThenableState++
1508
+ prevThenableState = validated._stacks || (validated._stacks = []),
1509
+ componentDebugID = 0;
1510
+ componentDebugID < validated.length;
1511
+ componentDebugID++
1480
1512
  )
1481
1513
  forwardDebugInfoFromThenable(
1482
1514
  request,
1483
1515
  task,
1484
- validated[prevThenableState]
1516
+ validated[componentDebugID],
1517
+ componentDebugInfo,
1518
+ prevThenableState[componentDebugID]
1485
1519
  );
1486
1520
  props = processServerComponentReturnValue(
1487
1521
  request,
@@ -1601,7 +1635,7 @@
1601
1635
  task.keyPath,
1602
1636
  task.implicitSlot,
1603
1637
  request.abortableTasks,
1604
- 0,
1638
+ task.time,
1605
1639
  task.debugOwner,
1606
1640
  task.debugStack,
1607
1641
  task.debugTask
@@ -1616,7 +1650,7 @@
1616
1650
  task.keyPath,
1617
1651
  task.implicitSlot,
1618
1652
  request.abortableTasks,
1619
- 0,
1653
+ task.time,
1620
1654
  task.debugOwner,
1621
1655
  task.debugStack,
1622
1656
  task.debugTask
@@ -1751,6 +1785,7 @@
1751
1785
  return task;
1752
1786
  }
1753
1787
  function pingTask(request, task) {
1788
+ task.timed = !0;
1754
1789
  var pingedTasks = request.pingedTasks;
1755
1790
  pingedTasks.push(task);
1756
1791
  1 === pingedTasks.length &&
@@ -1775,14 +1810,14 @@
1775
1810
  debugTask
1776
1811
  ) {
1777
1812
  request.pendingChunks++;
1778
- lastTimestamp = request.nextChunkId++;
1813
+ var id = request.nextChunkId++;
1779
1814
  "object" !== typeof model ||
1780
1815
  null === model ||
1781
1816
  null !== keyPath ||
1782
1817
  implicitSlot ||
1783
- request.writtenObjects.set(model, serializeByValueID(lastTimestamp));
1818
+ request.writtenObjects.set(model, serializeByValueID(id));
1784
1819
  var task = {
1785
- id: lastTimestamp,
1820
+ id: id,
1786
1821
  status: 0,
1787
1822
  model: model,
1788
1823
  keyPath: keyPath,
@@ -1816,8 +1851,10 @@
1816
1851
  });
1817
1852
  return renderModel(request, task, parent, parentPropertyName, value);
1818
1853
  },
1819
- thenableState: null
1854
+ thenableState: null,
1855
+ timed: !1
1820
1856
  };
1857
+ task.time = lastTimestamp;
1821
1858
  task.environmentName = request.environmentName();
1822
1859
  task.debugOwner = debugOwner;
1823
1860
  task.debugStack = debugStack;
@@ -1937,7 +1974,7 @@
1937
1974
  null,
1938
1975
  !1,
1939
1976
  request.abortableTasks,
1940
- 0,
1977
+ performance.now(),
1941
1978
  null,
1942
1979
  null,
1943
1980
  null
@@ -2074,7 +2111,7 @@
2074
2111
  null,
2075
2112
  !1,
2076
2113
  request.abortableTasks,
2077
- 0,
2114
+ performance.now(),
2078
2115
  null,
2079
2116
  null,
2080
2117
  null
@@ -2119,7 +2156,7 @@
2119
2156
  task.keyPath,
2120
2157
  task.implicitSlot,
2121
2158
  request.abortableTasks,
2122
- 0,
2159
+ task.time,
2123
2160
  task.debugOwner,
2124
2161
  task.debugStack,
2125
2162
  task.debugTask
@@ -3008,78 +3045,83 @@
3008
3045
  emitOutlinedDebugModelChunk(request, id, counter, model);
3009
3046
  return id;
3010
3047
  }
3048
+ function emitTimeOriginChunk(request, timeOrigin) {
3049
+ request.pendingDebugChunks++;
3050
+ timeOrigin = stringToChunk(":N" + timeOrigin + "\n");
3051
+ request.completedDebugChunks.push(timeOrigin);
3052
+ }
3011
3053
  function forwardDebugInfo(request$jscomp$1, task, debugInfo) {
3012
- task = task.id;
3013
- for (var i = 0; i < debugInfo.length; i++) {
3054
+ for (var id = task.id, i = 0; i < debugInfo.length; i++) {
3014
3055
  var info = debugInfo[i];
3015
- if ("number" !== typeof info.time)
3016
- if ("string" === typeof info.name)
3017
- outlineComponentInfo(request$jscomp$1, info),
3018
- request$jscomp$1.pendingChunks++,
3019
- emitDebugChunk(request$jscomp$1, task, info);
3020
- else if (info.awaited) {
3021
- var ioInfo = info.awaited;
3022
- if (!(ioInfo.end <= request$jscomp$1.timeOrigin)) {
3023
- var request = request$jscomp$1,
3024
- ioInfo$jscomp$0 = ioInfo;
3025
- if (!request.writtenObjects.has(ioInfo$jscomp$0)) {
3026
- request.pendingDebugChunks++;
3027
- var id = request.nextChunkId++,
3028
- owner = ioInfo$jscomp$0.owner;
3029
- null != owner && outlineComponentInfo(request, owner);
3030
- var debugStack =
3031
- null == ioInfo$jscomp$0.stack &&
3032
- null != ioInfo$jscomp$0.debugStack
3033
- ? filterStackTrace(
3034
- request,
3035
- parseStackTrace(ioInfo$jscomp$0.debugStack, 1)
3036
- )
3037
- : ioInfo$jscomp$0.stack;
3038
- var request$jscomp$0 = request,
3039
- id$jscomp$0 = id,
3040
- value = ioInfo$jscomp$0.value,
3041
- env = ioInfo$jscomp$0.env,
3042
- objectLimit = 10;
3043
- debugStack && (objectLimit += debugStack.length);
3044
- var debugIOInfo = {
3045
- name: ioInfo$jscomp$0.name,
3046
- start: ioInfo$jscomp$0.start - request$jscomp$0.timeOrigin,
3047
- end: ioInfo$jscomp$0.end - request$jscomp$0.timeOrigin
3048
- };
3049
- null != env && (debugIOInfo.env = env);
3050
- null != debugStack && (debugIOInfo.stack = debugStack);
3051
- null != owner && (debugIOInfo.owner = owner);
3052
- void 0 !== value && (debugIOInfo.value = value);
3053
- value = serializeDebugModel(
3054
- request$jscomp$0,
3055
- objectLimit,
3056
- debugIOInfo
3057
- );
3058
- id$jscomp$0 = id$jscomp$0.toString(16) + ":J" + value + "\n";
3059
- id$jscomp$0 = stringToChunk(id$jscomp$0);
3060
- request$jscomp$0.completedDebugChunks.push(id$jscomp$0);
3061
- request.writtenDebugObjects.set(
3062
- ioInfo$jscomp$0,
3063
- serializeByValueID(id)
3064
- );
3065
- }
3066
- request =
3067
- null == info.stack && null != info.debugStack
3056
+ if ("number" === typeof info.time)
3057
+ markOperationEndTime(request$jscomp$1, task, info.time);
3058
+ else if ("string" === typeof info.name)
3059
+ outlineComponentInfo(request$jscomp$1, info),
3060
+ request$jscomp$1.pendingChunks++,
3061
+ emitDebugChunk(request$jscomp$1, id, info);
3062
+ else if (info.awaited) {
3063
+ var ioInfo = info.awaited;
3064
+ if (!(ioInfo.end <= request$jscomp$1.timeOrigin)) {
3065
+ var request = request$jscomp$1,
3066
+ ioInfo$jscomp$0 = ioInfo;
3067
+ if (!request.writtenObjects.has(ioInfo$jscomp$0)) {
3068
+ request.pendingDebugChunks++;
3069
+ var id$jscomp$0 = request.nextChunkId++,
3070
+ owner = ioInfo$jscomp$0.owner;
3071
+ null != owner && outlineComponentInfo(request, owner);
3072
+ var debugStack =
3073
+ null == ioInfo$jscomp$0.stack &&
3074
+ null != ioInfo$jscomp$0.debugStack
3068
3075
  ? filterStackTrace(
3069
- request$jscomp$1,
3070
- parseStackTrace(info.debugStack, 1)
3076
+ request,
3077
+ parseStackTrace(ioInfo$jscomp$0.debugStack, 1)
3071
3078
  )
3072
- : info.stack;
3073
- ioInfo = { awaited: ioInfo };
3074
- null != info.env && (ioInfo.env = info.env);
3075
- null != info.owner && (ioInfo.owner = info.owner);
3076
- null != request && (ioInfo.stack = request);
3077
- request$jscomp$1.pendingChunks++;
3078
- emitDebugChunk(request$jscomp$1, task, ioInfo);
3079
+ : ioInfo$jscomp$0.stack;
3080
+ var request$jscomp$0 = request,
3081
+ id$jscomp$1 = id$jscomp$0,
3082
+ value = ioInfo$jscomp$0.value,
3083
+ env = ioInfo$jscomp$0.env,
3084
+ objectLimit = 10;
3085
+ debugStack && (objectLimit += debugStack.length);
3086
+ var debugIOInfo = {
3087
+ name: ioInfo$jscomp$0.name,
3088
+ start: ioInfo$jscomp$0.start - request$jscomp$0.timeOrigin,
3089
+ end: ioInfo$jscomp$0.end - request$jscomp$0.timeOrigin
3090
+ };
3091
+ null != env && (debugIOInfo.env = env);
3092
+ null != debugStack && (debugIOInfo.stack = debugStack);
3093
+ null != owner && (debugIOInfo.owner = owner);
3094
+ void 0 !== value && (debugIOInfo.value = value);
3095
+ value = serializeDebugModel(
3096
+ request$jscomp$0,
3097
+ objectLimit,
3098
+ debugIOInfo
3099
+ );
3100
+ id$jscomp$1 = id$jscomp$1.toString(16) + ":J" + value + "\n";
3101
+ id$jscomp$1 = stringToChunk(id$jscomp$1);
3102
+ request$jscomp$0.completedDebugChunks.push(id$jscomp$1);
3103
+ request.writtenDebugObjects.set(
3104
+ ioInfo$jscomp$0,
3105
+ serializeByValueID(id$jscomp$0)
3106
+ );
3079
3107
  }
3080
- } else
3081
- request$jscomp$1.pendingChunks++,
3082
- emitDebugChunk(request$jscomp$1, task, info);
3108
+ request =
3109
+ null == info.stack && null != info.debugStack
3110
+ ? filterStackTrace(
3111
+ request$jscomp$1,
3112
+ parseStackTrace(info.debugStack, 1)
3113
+ )
3114
+ : info.stack;
3115
+ ioInfo = { awaited: ioInfo };
3116
+ null != info.env && (ioInfo.env = info.env);
3117
+ null != info.owner && (ioInfo.owner = info.owner);
3118
+ null != request && (ioInfo.stack = request);
3119
+ request$jscomp$1.pendingChunks++;
3120
+ emitDebugChunk(request$jscomp$1, id, ioInfo);
3121
+ }
3122
+ } else
3123
+ request$jscomp$1.pendingChunks++,
3124
+ emitDebugChunk(request$jscomp$1, id, info);
3083
3125
  }
3084
3126
  }
3085
3127
  function forwardDebugInfoFromThenable(request, task, thenable) {
@@ -3090,6 +3132,11 @@
3090
3132
  (thenable = thenable._debugInfo) &&
3091
3133
  forwardDebugInfo(request, task, thenable);
3092
3134
  }
3135
+ function markOperationEndTime(request, task, timestamp) {
3136
+ !(request.status === ABORTING && timestamp > request.abortTime) &&
3137
+ timestamp > task.time &&
3138
+ (task.time = timestamp);
3139
+ }
3093
3140
  function emitChunk(request, task, value) {
3094
3141
  var id = task.id;
3095
3142
  "string" === typeof value && null !== byteLengthOfChunk
@@ -3136,6 +3183,7 @@
3136
3183
  emitModelChunk(request, task.id, value));
3137
3184
  }
3138
3185
  function erroredTask(request, task, error) {
3186
+ task.timed && markOperationEndTime(request, task, performance.now());
3139
3187
  task.status = 4;
3140
3188
  var digest = logRecoverableError(request, error, task);
3141
3189
  emitErrorChunk(request, task.id, digest, error, !1);
@@ -3165,6 +3213,7 @@
3165
3213
  currentEnv !== task.environmentName &&
3166
3214
  (request.pendingChunks++,
3167
3215
  emitDebugChunk(request, task.id, { env: currentEnv }));
3216
+ task.timed && markOperationEndTime(request, task, performance.now());
3168
3217
  if ("object" === typeof resolvedModel && null !== resolvedModel)
3169
3218
  request.writtenObjects.set(
3170
3219
  resolvedModel,
@@ -3247,6 +3296,7 @@
3247
3296
  null !== model &&
3248
3297
  (model = model._debugInfo) &&
3249
3298
  forwardDebugInfo(request, task, model);
3299
+ task.timed && markOperationEndTime(request, task, request.abortTime);
3250
3300
  errorId = serializeByValueID(errorId);
3251
3301
  task = encodeReferenceChunk(request, task.id, errorId);
3252
3302
  request.completedErrorChunks.push(task);
@@ -3367,15 +3417,18 @@
3367
3417
  "This render completed successfully. All cacheSignals are now aborted to allow clean up of any unused resources."
3368
3418
  )
3369
3419
  ),
3370
- (request.status = CLOSED),
3371
3420
  null !== request.destination &&
3372
- (request.destination.close(), (request.destination = null)),
3421
+ ((request.status = CLOSED),
3422
+ request.destination.close(),
3423
+ (request.destination = null)),
3373
3424
  null !== request.debugDestination &&
3374
3425
  (request.debugDestination.close(),
3375
3426
  (request.debugDestination = null)))
3376
3427
  : null !== importsChunks &&
3377
3428
  null !== request.destination &&
3378
- (request.destination.close(), (request.destination = null)));
3429
+ ((request.status = CLOSED),
3430
+ request.destination.close(),
3431
+ (request.destination = null)));
3379
3432
  }
3380
3433
  function startWork(request) {
3381
3434
  request.flushScheduled = null !== request.destination;
@@ -3433,6 +3486,7 @@
3433
3486
  if (!(11 < request.status))
3434
3487
  try {
3435
3488
  request.status = ABORTING;
3489
+ request.abortTime = performance.now();
3436
3490
  request.cacheController.abort(reason);
3437
3491
  var abortableTasks = request.abortableTasks;
3438
3492
  if (0 < abortableTasks.size) {
@@ -1883,9 +1883,10 @@ function flushCompletedChunks(request) {
1883
1883
  "This render completed successfully. All cacheSignals are now aborted to allow clean up of any unused resources."
1884
1884
  )
1885
1885
  ),
1886
- (request.status = 14),
1887
1886
  null !== request.destination &&
1888
- (request.destination.close(), (request.destination = null)));
1887
+ ((request.status = 14),
1888
+ request.destination.close(),
1889
+ (request.destination = null)));
1889
1890
  }
1890
1891
  function startWork(request) {
1891
1892
  request.flushScheduled = null !== request.destination;