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.
@@ -383,7 +383,8 @@
383
383
  function trackUsedThenable(thenableState, thenable, index) {
384
384
  index = thenableState[index];
385
385
  void 0 === index
386
- ? thenableState.push(thenable)
386
+ ? (thenableState.push(thenable),
387
+ (thenableState._stacks || (thenableState._stacks = [])).push(Error()))
387
388
  : index !== thenable && (thenable.then(noop, noop), (thenable = index));
388
389
  switch (thenable.status) {
389
390
  case "fulfilled":
@@ -663,8 +664,8 @@
663
664
  var callsite = stack[i],
664
665
  functionName = callsite[0];
665
666
  var url = callsite[1];
666
- if (url.startsWith("rsc://React/")) {
667
- var envIdx = url.indexOf("/", 12),
667
+ if (url.startsWith("about://React/")) {
668
+ var envIdx = url.indexOf("/", 14),
668
669
  suffixIdx = url.lastIndexOf("?");
669
670
  -1 < envIdx &&
670
671
  -1 < suffixIdx &&
@@ -907,8 +908,21 @@
907
908
  this.deferredDebugObjects = keepDebugAlive
908
909
  ? { retained: new Map(), existing: new Map() }
909
910
  : null;
910
- type = createTask(this, model, null, !1, abortSet, 0, null, null, null);
911
- pingedTasks.push(type);
911
+ type = this.timeOrigin = performance.now();
912
+ emitTimeOriginChunk(this, type + performance.timeOrigin);
913
+ this.abortTime = -0;
914
+ model = createTask(
915
+ this,
916
+ model,
917
+ null,
918
+ !1,
919
+ abortSet,
920
+ type,
921
+ null,
922
+ null,
923
+ null
924
+ );
925
+ pingedTasks.push(model);
912
926
  }
913
927
  function createRequest(
914
928
  model,
@@ -1044,7 +1058,7 @@
1044
1058
  task.keyPath,
1045
1059
  task.implicitSlot,
1046
1060
  request.abortableTasks,
1047
- 0,
1061
+ task.time,
1048
1062
  task.debugOwner,
1049
1063
  task.debugStack,
1050
1064
  task.debugTask
@@ -1052,14 +1066,26 @@
1052
1066
  switch (thenable.status) {
1053
1067
  case "fulfilled":
1054
1068
  return (
1055
- forwardDebugInfoFromThenable(request, newTask, thenable),
1069
+ forwardDebugInfoFromThenable(
1070
+ request,
1071
+ newTask,
1072
+ thenable,
1073
+ null,
1074
+ null
1075
+ ),
1056
1076
  (newTask.model = thenable.value),
1057
1077
  pingTask(request, newTask),
1058
1078
  newTask.id
1059
1079
  );
1060
1080
  case "rejected":
1061
1081
  return (
1062
- forwardDebugInfoFromThenable(request, newTask, thenable),
1082
+ forwardDebugInfoFromThenable(
1083
+ request,
1084
+ newTask,
1085
+ thenable,
1086
+ null,
1087
+ null
1088
+ ),
1063
1089
  erroredTask(request, newTask, thenable.reason),
1064
1090
  newTask.id
1065
1091
  );
@@ -1094,7 +1120,9 @@
1094
1120
  },
1095
1121
  function (reason) {
1096
1122
  0 === newTask.status &&
1097
- (erroredTask(request, newTask, reason), enqueueFlush(request));
1123
+ ((newTask.timed = !0),
1124
+ erroredTask(request, newTask, reason),
1125
+ enqueueFlush(request));
1098
1126
  }
1099
1127
  );
1100
1128
  return newTask.id;
@@ -1158,7 +1186,7 @@
1158
1186
  task.keyPath,
1159
1187
  task.implicitSlot,
1160
1188
  request.abortableTasks,
1161
- 0,
1189
+ task.time,
1162
1190
  task.debugOwner,
1163
1191
  task.debugStack,
1164
1192
  task.debugTask
@@ -1238,7 +1266,7 @@
1238
1266
  task.keyPath,
1239
1267
  task.implicitSlot,
1240
1268
  request.abortableTasks,
1241
- 0,
1269
+ task.time,
1242
1270
  task.debugOwner,
1243
1271
  task.debugStack,
1244
1272
  task.debugTask
@@ -1268,11 +1296,11 @@
1268
1296
  switch (wakeable.status) {
1269
1297
  case "fulfilled":
1270
1298
  return (
1271
- forwardDebugInfoFromThenable(request, task, wakeable),
1299
+ forwardDebugInfoFromThenable(request, task, wakeable, null, null),
1272
1300
  wakeable.value
1273
1301
  );
1274
1302
  case "rejected":
1275
- forwardDebugInfoFromThenable(request, task, wakeable);
1303
+ forwardDebugInfoFromThenable(request, task, wakeable, null, null);
1276
1304
  break;
1277
1305
  default:
1278
1306
  "string" !== typeof wakeable.status &&
@@ -1412,6 +1440,9 @@
1412
1440
  componentDebugInfo.debugStack = task.debugStack;
1413
1441
  componentDebugInfo.debugTask = task.debugTask;
1414
1442
  outlineComponentInfo(request, componentDebugInfo);
1443
+ var timestamp = performance.now();
1444
+ timestamp > task.time && (task.time = timestamp);
1445
+ task.timed = !0;
1415
1446
  emitDebugChunk(request, componentDebugID, componentDebugInfo);
1416
1447
  task.environmentName = componentEnv;
1417
1448
  2 === validated &&
@@ -1438,14 +1469,17 @@
1438
1469
  validated = thenableState;
1439
1470
  if (null !== validated)
1440
1471
  for (
1441
- prevThenableState = 0;
1442
- prevThenableState < validated.length;
1443
- prevThenableState++
1472
+ prevThenableState = validated._stacks || (validated._stacks = []),
1473
+ componentDebugID = 0;
1474
+ componentDebugID < validated.length;
1475
+ componentDebugID++
1444
1476
  )
1445
1477
  forwardDebugInfoFromThenable(
1446
1478
  request,
1447
1479
  task,
1448
- validated[prevThenableState]
1480
+ validated[componentDebugID],
1481
+ componentDebugInfo,
1482
+ prevThenableState[componentDebugID]
1449
1483
  );
1450
1484
  props = processServerComponentReturnValue(
1451
1485
  request,
@@ -1541,7 +1575,7 @@
1541
1575
  task.keyPath,
1542
1576
  task.implicitSlot,
1543
1577
  request.abortableTasks,
1544
- 0,
1578
+ task.time,
1545
1579
  task.debugOwner,
1546
1580
  task.debugStack,
1547
1581
  task.debugTask
@@ -1556,7 +1590,7 @@
1556
1590
  task.keyPath,
1557
1591
  task.implicitSlot,
1558
1592
  request.abortableTasks,
1559
- 0,
1593
+ task.time,
1560
1594
  task.debugOwner,
1561
1595
  task.debugStack,
1562
1596
  task.debugTask
@@ -1691,6 +1725,7 @@
1691
1725
  return task;
1692
1726
  }
1693
1727
  function pingTask(request, task) {
1728
+ task.timed = !0;
1694
1729
  var pingedTasks = request.pingedTasks;
1695
1730
  pingedTasks.push(task);
1696
1731
  1 === pingedTasks.length &&
@@ -1715,14 +1750,14 @@
1715
1750
  debugTask
1716
1751
  ) {
1717
1752
  request.pendingChunks++;
1718
- lastTimestamp = request.nextChunkId++;
1753
+ var id = request.nextChunkId++;
1719
1754
  "object" !== typeof model ||
1720
1755
  null === model ||
1721
1756
  null !== keyPath ||
1722
1757
  implicitSlot ||
1723
- request.writtenObjects.set(model, serializeByValueID(lastTimestamp));
1758
+ request.writtenObjects.set(model, serializeByValueID(id));
1724
1759
  var task = {
1725
- id: lastTimestamp,
1760
+ id: id,
1726
1761
  status: 0,
1727
1762
  model: model,
1728
1763
  keyPath: keyPath,
@@ -1756,8 +1791,10 @@
1756
1791
  });
1757
1792
  return renderModel(request, task, parent, parentPropertyName, value);
1758
1793
  },
1759
- thenableState: null
1794
+ thenableState: null,
1795
+ timed: !1
1760
1796
  };
1797
+ task.time = lastTimestamp;
1761
1798
  task.environmentName = request.environmentName();
1762
1799
  task.debugOwner = debugOwner;
1763
1800
  task.debugStack = debugStack;
@@ -1877,7 +1914,7 @@
1877
1914
  null,
1878
1915
  !1,
1879
1916
  request.abortableTasks,
1880
- 0,
1917
+ performance.now(),
1881
1918
  null,
1882
1919
  null,
1883
1920
  null
@@ -2014,7 +2051,7 @@
2014
2051
  null,
2015
2052
  !1,
2016
2053
  request.abortableTasks,
2017
- 0,
2054
+ performance.now(),
2018
2055
  null,
2019
2056
  null,
2020
2057
  null
@@ -2059,7 +2096,7 @@
2059
2096
  task.keyPath,
2060
2097
  task.implicitSlot,
2061
2098
  request.abortableTasks,
2062
- 0,
2099
+ task.time,
2063
2100
  task.debugOwner,
2064
2101
  task.debugStack,
2065
2102
  task.debugTask
@@ -2937,78 +2974,83 @@
2937
2974
  emitOutlinedDebugModelChunk(request, id, counter, model);
2938
2975
  return id;
2939
2976
  }
2977
+ function emitTimeOriginChunk(request, timeOrigin) {
2978
+ request.pendingDebugChunks++;
2979
+ timeOrigin = stringToChunk(":N" + timeOrigin + "\n");
2980
+ request.completedDebugChunks.push(timeOrigin);
2981
+ }
2940
2982
  function forwardDebugInfo(request$jscomp$1, task, debugInfo) {
2941
- task = task.id;
2942
- for (var i = 0; i < debugInfo.length; i++) {
2983
+ for (var id = task.id, i = 0; i < debugInfo.length; i++) {
2943
2984
  var info = debugInfo[i];
2944
- if ("number" !== typeof info.time)
2945
- if ("string" === typeof info.name)
2946
- outlineComponentInfo(request$jscomp$1, info),
2947
- request$jscomp$1.pendingChunks++,
2948
- emitDebugChunk(request$jscomp$1, task, info);
2949
- else if (info.awaited) {
2950
- var ioInfo = info.awaited;
2951
- if (!(ioInfo.end <= request$jscomp$1.timeOrigin)) {
2952
- var request = request$jscomp$1,
2953
- ioInfo$jscomp$0 = ioInfo;
2954
- if (!request.writtenObjects.has(ioInfo$jscomp$0)) {
2955
- request.pendingDebugChunks++;
2956
- var id = request.nextChunkId++,
2957
- owner = ioInfo$jscomp$0.owner;
2958
- null != owner && outlineComponentInfo(request, owner);
2959
- var debugStack =
2960
- null == ioInfo$jscomp$0.stack &&
2961
- null != ioInfo$jscomp$0.debugStack
2962
- ? filterStackTrace(
2963
- request,
2964
- parseStackTrace(ioInfo$jscomp$0.debugStack, 1)
2965
- )
2966
- : ioInfo$jscomp$0.stack;
2967
- var request$jscomp$0 = request,
2968
- id$jscomp$0 = id,
2969
- value = ioInfo$jscomp$0.value,
2970
- env = ioInfo$jscomp$0.env,
2971
- objectLimit = 10;
2972
- debugStack && (objectLimit += debugStack.length);
2973
- var debugIOInfo = {
2974
- name: ioInfo$jscomp$0.name,
2975
- start: ioInfo$jscomp$0.start - request$jscomp$0.timeOrigin,
2976
- end: ioInfo$jscomp$0.end - request$jscomp$0.timeOrigin
2977
- };
2978
- null != env && (debugIOInfo.env = env);
2979
- null != debugStack && (debugIOInfo.stack = debugStack);
2980
- null != owner && (debugIOInfo.owner = owner);
2981
- void 0 !== value && (debugIOInfo.value = value);
2982
- value = serializeDebugModel(
2983
- request$jscomp$0,
2984
- objectLimit,
2985
- debugIOInfo
2986
- );
2987
- id$jscomp$0 = id$jscomp$0.toString(16) + ":J" + value + "\n";
2988
- id$jscomp$0 = stringToChunk(id$jscomp$0);
2989
- request$jscomp$0.completedDebugChunks.push(id$jscomp$0);
2990
- request.writtenDebugObjects.set(
2991
- ioInfo$jscomp$0,
2992
- serializeByValueID(id)
2993
- );
2994
- }
2995
- request =
2996
- null == info.stack && null != info.debugStack
2985
+ if ("number" === typeof info.time)
2986
+ markOperationEndTime(request$jscomp$1, task, info.time);
2987
+ else if ("string" === typeof info.name)
2988
+ outlineComponentInfo(request$jscomp$1, info),
2989
+ request$jscomp$1.pendingChunks++,
2990
+ emitDebugChunk(request$jscomp$1, id, info);
2991
+ else if (info.awaited) {
2992
+ var ioInfo = info.awaited;
2993
+ if (!(ioInfo.end <= request$jscomp$1.timeOrigin)) {
2994
+ var request = request$jscomp$1,
2995
+ ioInfo$jscomp$0 = ioInfo;
2996
+ if (!request.writtenObjects.has(ioInfo$jscomp$0)) {
2997
+ request.pendingDebugChunks++;
2998
+ var id$jscomp$0 = request.nextChunkId++,
2999
+ owner = ioInfo$jscomp$0.owner;
3000
+ null != owner && outlineComponentInfo(request, owner);
3001
+ var debugStack =
3002
+ null == ioInfo$jscomp$0.stack &&
3003
+ null != ioInfo$jscomp$0.debugStack
2997
3004
  ? filterStackTrace(
2998
- request$jscomp$1,
2999
- parseStackTrace(info.debugStack, 1)
3005
+ request,
3006
+ parseStackTrace(ioInfo$jscomp$0.debugStack, 1)
3000
3007
  )
3001
- : info.stack;
3002
- ioInfo = { awaited: ioInfo };
3003
- null != info.env && (ioInfo.env = info.env);
3004
- null != info.owner && (ioInfo.owner = info.owner);
3005
- null != request && (ioInfo.stack = request);
3006
- request$jscomp$1.pendingChunks++;
3007
- emitDebugChunk(request$jscomp$1, task, ioInfo);
3008
+ : ioInfo$jscomp$0.stack;
3009
+ var request$jscomp$0 = request,
3010
+ id$jscomp$1 = id$jscomp$0,
3011
+ value = ioInfo$jscomp$0.value,
3012
+ env = ioInfo$jscomp$0.env,
3013
+ objectLimit = 10;
3014
+ debugStack && (objectLimit += debugStack.length);
3015
+ var debugIOInfo = {
3016
+ name: ioInfo$jscomp$0.name,
3017
+ start: ioInfo$jscomp$0.start - request$jscomp$0.timeOrigin,
3018
+ end: ioInfo$jscomp$0.end - request$jscomp$0.timeOrigin
3019
+ };
3020
+ null != env && (debugIOInfo.env = env);
3021
+ null != debugStack && (debugIOInfo.stack = debugStack);
3022
+ null != owner && (debugIOInfo.owner = owner);
3023
+ void 0 !== value && (debugIOInfo.value = value);
3024
+ value = serializeDebugModel(
3025
+ request$jscomp$0,
3026
+ objectLimit,
3027
+ debugIOInfo
3028
+ );
3029
+ id$jscomp$1 = id$jscomp$1.toString(16) + ":J" + value + "\n";
3030
+ id$jscomp$1 = stringToChunk(id$jscomp$1);
3031
+ request$jscomp$0.completedDebugChunks.push(id$jscomp$1);
3032
+ request.writtenDebugObjects.set(
3033
+ ioInfo$jscomp$0,
3034
+ serializeByValueID(id$jscomp$0)
3035
+ );
3008
3036
  }
3009
- } else
3010
- request$jscomp$1.pendingChunks++,
3011
- emitDebugChunk(request$jscomp$1, task, info);
3037
+ request =
3038
+ null == info.stack && null != info.debugStack
3039
+ ? filterStackTrace(
3040
+ request$jscomp$1,
3041
+ parseStackTrace(info.debugStack, 1)
3042
+ )
3043
+ : info.stack;
3044
+ ioInfo = { awaited: ioInfo };
3045
+ null != info.env && (ioInfo.env = info.env);
3046
+ null != info.owner && (ioInfo.owner = info.owner);
3047
+ null != request && (ioInfo.stack = request);
3048
+ request$jscomp$1.pendingChunks++;
3049
+ emitDebugChunk(request$jscomp$1, id, ioInfo);
3050
+ }
3051
+ } else
3052
+ request$jscomp$1.pendingChunks++,
3053
+ emitDebugChunk(request$jscomp$1, id, info);
3012
3054
  }
3013
3055
  }
3014
3056
  function forwardDebugInfoFromThenable(request, task, thenable) {
@@ -3019,6 +3061,11 @@
3019
3061
  (thenable = thenable._debugInfo) &&
3020
3062
  forwardDebugInfo(request, task, thenable);
3021
3063
  }
3064
+ function markOperationEndTime(request, task, timestamp) {
3065
+ !(request.status === ABORTING && timestamp > request.abortTime) &&
3066
+ timestamp > task.time &&
3067
+ (task.time = timestamp);
3068
+ }
3022
3069
  function emitChunk(request, task, value) {
3023
3070
  var id = task.id;
3024
3071
  "string" === typeof value && null !== byteLengthOfChunk
@@ -3065,6 +3112,7 @@
3065
3112
  emitModelChunk(request, task.id, value));
3066
3113
  }
3067
3114
  function erroredTask(request, task, error) {
3115
+ task.timed && markOperationEndTime(request, task, performance.now());
3068
3116
  task.status = 4;
3069
3117
  var digest = logRecoverableError(request, error, task);
3070
3118
  emitErrorChunk(request, task.id, digest, error, !1);
@@ -3094,6 +3142,7 @@
3094
3142
  currentEnv !== task.environmentName &&
3095
3143
  (request.pendingChunks++,
3096
3144
  emitDebugChunk(request, task.id, { env: currentEnv }));
3145
+ task.timed && markOperationEndTime(request, task, performance.now());
3097
3146
  if ("object" === typeof resolvedModel && null !== resolvedModel)
3098
3147
  request.writtenObjects.set(
3099
3148
  resolvedModel,
@@ -3176,6 +3225,7 @@
3176
3225
  null !== model &&
3177
3226
  (model = model._debugInfo) &&
3178
3227
  forwardDebugInfo(request, task, model);
3228
+ task.timed && markOperationEndTime(request, task, request.abortTime);
3179
3229
  errorId = serializeByValueID(errorId);
3180
3230
  task = encodeReferenceChunk(request, task.id, errorId);
3181
3231
  request.completedErrorChunks.push(task);
@@ -3296,15 +3346,18 @@
3296
3346
  "This render completed successfully. All cacheSignals are now aborted to allow clean up of any unused resources."
3297
3347
  )
3298
3348
  ),
3299
- (request.status = CLOSED),
3300
3349
  null !== request.destination &&
3301
- (request.destination.close(), (request.destination = null)),
3350
+ ((request.status = CLOSED),
3351
+ request.destination.close(),
3352
+ (request.destination = null)),
3302
3353
  null !== request.debugDestination &&
3303
3354
  (request.debugDestination.close(),
3304
3355
  (request.debugDestination = null)))
3305
3356
  : null !== importsChunks &&
3306
3357
  null !== request.destination &&
3307
- (request.destination.close(), (request.destination = null)));
3358
+ ((request.status = CLOSED),
3359
+ request.destination.close(),
3360
+ (request.destination = null)));
3308
3361
  }
3309
3362
  function startWork(request) {
3310
3363
  request.flushScheduled = null !== request.destination;
@@ -3358,6 +3411,7 @@
3358
3411
  if (!(11 < request.status))
3359
3412
  try {
3360
3413
  request.status = ABORTING;
3414
+ request.abortTime = performance.now();
3361
3415
  request.cacheController.abort(reason);
3362
3416
  var abortableTasks = request.abortableTasks;
3363
3417
  if (0 < abortableTasks.size) {
@@ -1882,9 +1882,10 @@ function flushCompletedChunks(request) {
1882
1882
  "This render completed successfully. All cacheSignals are now aborted to allow clean up of any unused resources."
1883
1883
  )
1884
1884
  ),
1885
- (request.status = 14),
1886
1885
  null !== request.destination &&
1887
- (request.destination.close(), (request.destination = null)));
1886
+ ((request.status = 14),
1887
+ request.destination.close(),
1888
+ (request.destination = null)));
1888
1889
  }
1889
1890
  function startWork(request) {
1890
1891
  request.flushScheduled = null !== request.destination;