@matthamlin/react-client 0.0.0-experimental-06e89951-20250620 → 0.0.0-experimental-12eaef7e-20250623

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.
@@ -11,27 +11,6 @@
11
11
  "use strict";
12
12
  "production" !== process.env.NODE_ENV &&
13
13
  ((module.exports = function ($$$config) {
14
- function _defineProperty(obj, key, value) {
15
- a: if ("object" == typeof key && key) {
16
- var e = key[Symbol.toPrimitive];
17
- if (void 0 !== e) {
18
- key = e.call(key, "string");
19
- if ("object" != typeof key) break a;
20
- throw new TypeError("@@toPrimitive must return a primitive value.");
21
- }
22
- key = String(key);
23
- }
24
- key = "symbol" == typeof key ? key : key + "";
25
- key in obj
26
- ? Object.defineProperty(obj, key, {
27
- value: value,
28
- enumerable: !0,
29
- configurable: !0,
30
- writable: !0
31
- })
32
- : (obj[key] = value);
33
- return obj;
34
- }
35
14
  function getIteratorFn(maybeIterable) {
36
15
  if (null === maybeIterable || "object" !== typeof maybeIterable)
37
16
  return null;
@@ -69,11 +48,8 @@
69
48
  return !0;
70
49
  }
71
50
  function objectName(object) {
72
- return Object.prototype.toString
73
- .call(object)
74
- .replace(/^\[object (.*)\]$/, function (m, p0) {
75
- return p0;
76
- });
51
+ object = Object.prototype.toString.call(object);
52
+ return object.slice(8, object.length - 1);
77
53
  }
78
54
  function describeKeyForErrorMessage(key) {
79
55
  var encodedKey = JSON.stringify(key);
@@ -896,6 +872,102 @@
896
872
  registerBoundServerReference(action, id, bound, encodeFormAction);
897
873
  return action;
898
874
  }
875
+ function getArrayKind(array) {
876
+ for (var kind = 0, i = 0; i < array.length; i++) {
877
+ var value = array[i];
878
+ if ("object" === typeof value && null !== value)
879
+ if (
880
+ isArrayImpl(value) &&
881
+ 2 === value.length &&
882
+ "string" === typeof value[0]
883
+ ) {
884
+ if (0 !== kind && 3 !== kind) return 1;
885
+ kind = 3;
886
+ } else return 1;
887
+ else {
888
+ if (
889
+ "function" === typeof value ||
890
+ ("string" === typeof value && 50 < value.length) ||
891
+ (0 !== kind && 2 !== kind)
892
+ )
893
+ return 1;
894
+ kind = 2;
895
+ }
896
+ }
897
+ return kind;
898
+ }
899
+ function addObjectToProperties(object, properties, indent) {
900
+ for (var key in object)
901
+ hasOwnProperty.call(object, key) &&
902
+ "_" !== key[0] &&
903
+ addValueToProperties(key, object[key], properties, indent);
904
+ }
905
+ function addValueToProperties(propertyName, value, properties, indent) {
906
+ switch (typeof value) {
907
+ case "object":
908
+ if (null === value) {
909
+ value = "null";
910
+ break;
911
+ } else {
912
+ var objectToString = Object.prototype.toString.call(value);
913
+ objectToString = objectToString.slice(8, objectToString.length - 1);
914
+ if ("Array" === objectToString) {
915
+ var kind = getArrayKind(value);
916
+ if (2 === kind || 0 === kind) {
917
+ value = JSON.stringify(value);
918
+ break;
919
+ } else if (3 === kind) {
920
+ properties.push([
921
+ "\u00a0\u00a0".repeat(indent) + propertyName,
922
+ ""
923
+ ]);
924
+ for (
925
+ propertyName = 0;
926
+ propertyName < value.length;
927
+ propertyName++
928
+ )
929
+ (objectToString = value[propertyName]),
930
+ addValueToProperties(
931
+ objectToString[0],
932
+ objectToString[1],
933
+ properties,
934
+ indent + 1
935
+ );
936
+ return;
937
+ }
938
+ }
939
+ "Object" === objectToString &&
940
+ (kind = Object.getPrototypeOf(value)) &&
941
+ "function" === typeof kind.constructor &&
942
+ (objectToString = kind.constructor.name);
943
+ properties.push([
944
+ "\u00a0\u00a0".repeat(indent) + propertyName,
945
+ "Object" === objectToString ? "" : objectToString
946
+ ]);
947
+ 3 > indent && addObjectToProperties(value, properties, indent + 1);
948
+ return;
949
+ }
950
+ case "function":
951
+ value = "" === value.name ? "() => {}" : value.name + "() {}";
952
+ break;
953
+ case "string":
954
+ value =
955
+ "This object has been omitted by React in the console log to avoid sending too much data from the server. Try logging smaller or more specific objects." ===
956
+ value
957
+ ? "..."
958
+ : JSON.stringify(value);
959
+ break;
960
+ case "undefined":
961
+ value = "undefined";
962
+ break;
963
+ case "boolean":
964
+ value = value ? "true" : "false";
965
+ break;
966
+ default:
967
+ value = String(value);
968
+ }
969
+ properties.push(["\u00a0\u00a0".repeat(indent) + propertyName, value]);
970
+ }
899
971
  function getIOColor(functionName) {
900
972
  switch (functionName.charCodeAt(0) % 3) {
901
973
  case 0:
@@ -906,6 +978,133 @@
906
978
  return "tertiary-dark";
907
979
  }
908
980
  }
981
+ function logComponentAwait(
982
+ asyncInfo,
983
+ trackIdx,
984
+ startTime,
985
+ endTime,
986
+ rootEnv,
987
+ value
988
+ ) {
989
+ if (supportsUserTiming && 0 < endTime) {
990
+ var env = asyncInfo.env,
991
+ name = asyncInfo.awaited.name,
992
+ isPrimaryEnv = env === rootEnv;
993
+ rootEnv = getIOColor(name);
994
+ env =
995
+ "await " +
996
+ (isPrimaryEnv || void 0 === env ? name : name + " [" + env + "]");
997
+ (asyncInfo = asyncInfo.debugTask)
998
+ ? ((name = []),
999
+ "object" === typeof value && null !== value
1000
+ ? addObjectToProperties(value, name, 0)
1001
+ : void 0 !== value &&
1002
+ addValueToProperties("Resolved", value, name, 0),
1003
+ asyncInfo.run(
1004
+ performance.measure.bind(performance, env, {
1005
+ start: 0 > startTime ? 0 : startTime,
1006
+ end: endTime,
1007
+ detail: {
1008
+ devtools: {
1009
+ color: rootEnv,
1010
+ track: trackNames[trackIdx],
1011
+ trackGroup: "Server Components \u269b",
1012
+ properties: name
1013
+ }
1014
+ }
1015
+ })
1016
+ ))
1017
+ : console.timeStamp(
1018
+ env,
1019
+ 0 > startTime ? 0 : startTime,
1020
+ endTime,
1021
+ trackNames[trackIdx],
1022
+ "Server Components \u269b",
1023
+ rootEnv
1024
+ );
1025
+ }
1026
+ }
1027
+ function logIOInfoErrored(ioInfo, rootEnv, error) {
1028
+ var startTime = ioInfo.start,
1029
+ endTime = ioInfo.end;
1030
+ if (supportsUserTiming && 0 <= endTime) {
1031
+ var name = ioInfo.name,
1032
+ env = ioInfo.env;
1033
+ rootEnv =
1034
+ env === rootEnv || void 0 === env ? name : name + " [" + env + "]";
1035
+ (ioInfo = ioInfo.debugTask)
1036
+ ? ioInfo.run(
1037
+ performance.measure.bind(performance, rootEnv, {
1038
+ start: 0 > startTime ? 0 : startTime,
1039
+ end: endTime,
1040
+ detail: {
1041
+ devtools: {
1042
+ color: "error",
1043
+ track: "Server Requests \u269b",
1044
+ properties: [
1045
+ [
1046
+ "Rejected",
1047
+ "object" === typeof error &&
1048
+ null !== error &&
1049
+ "string" === typeof error.message
1050
+ ? String(error.message)
1051
+ : String(error)
1052
+ ]
1053
+ ],
1054
+ tooltipText: rootEnv + " Rejected"
1055
+ }
1056
+ }
1057
+ })
1058
+ )
1059
+ : console.timeStamp(
1060
+ rootEnv,
1061
+ 0 > startTime ? 0 : startTime,
1062
+ endTime,
1063
+ "Server Requests \u269b",
1064
+ void 0,
1065
+ "error"
1066
+ );
1067
+ }
1068
+ }
1069
+ function logIOInfo(ioInfo, rootEnv, value) {
1070
+ var startTime = ioInfo.start,
1071
+ endTime = ioInfo.end;
1072
+ if (supportsUserTiming && 0 <= endTime) {
1073
+ var name = ioInfo.name,
1074
+ env = ioInfo.env;
1075
+ rootEnv =
1076
+ env === rootEnv || void 0 === env ? name : name + " [" + env + "]";
1077
+ ioInfo = ioInfo.debugTask;
1078
+ name = getIOColor(name);
1079
+ ioInfo
1080
+ ? ((env = []),
1081
+ "object" === typeof value && null !== value
1082
+ ? addObjectToProperties(value, env, 0)
1083
+ : void 0 !== value &&
1084
+ addValueToProperties("Resolved", value, env, 0),
1085
+ ioInfo.run(
1086
+ performance.measure.bind(performance, rootEnv, {
1087
+ start: 0 > startTime ? 0 : startTime,
1088
+ end: endTime,
1089
+ detail: {
1090
+ devtools: {
1091
+ color: name,
1092
+ track: "Server Requests \u269b",
1093
+ properties: env
1094
+ }
1095
+ }
1096
+ })
1097
+ ))
1098
+ : console.timeStamp(
1099
+ rootEnv,
1100
+ 0 > startTime ? 0 : startTime,
1101
+ endTime,
1102
+ "Server Requests \u269b",
1103
+ void 0,
1104
+ name
1105
+ );
1106
+ }
1107
+ }
909
1108
  function getComponentNameFromType(type) {
910
1109
  if (null == type) return null;
911
1110
  if ("function" === typeof type)
@@ -966,11 +1165,10 @@
966
1165
  }
967
1166
  return null;
968
1167
  }
969
- function ReactPromise(status, value, reason, response) {
1168
+ function ReactPromise(status, value, reason) {
970
1169
  this.status = status;
971
1170
  this.value = value;
972
1171
  this.reason = reason;
973
- this._response = response;
974
1172
  this._children = [];
975
1173
  this._debugInfo = null;
976
1174
  }
@@ -987,16 +1185,17 @@
987
1185
  return chunk.value;
988
1186
  case "pending":
989
1187
  case "blocked":
1188
+ case "halted":
990
1189
  throw chunk;
991
1190
  default:
992
1191
  throw chunk.reason;
993
1192
  }
994
1193
  }
995
- function createPendingChunk(response) {
996
- return new ReactPromise("pending", null, null, response);
1194
+ function createPendingChunk() {
1195
+ return new ReactPromise("pending", null, null);
997
1196
  }
998
1197
  function createErrorChunk(response, error) {
999
- return new ReactPromise("rejected", null, error, response);
1198
+ return new ReactPromise("rejected", null, error);
1000
1199
  }
1001
1200
  function wakeChunk(listeners, value) {
1002
1201
  for (var i = 0; i < listeners.length; i++) (0, listeners[i])(value);
@@ -1042,25 +1241,26 @@
1042
1241
  (done ? '{"done":true,"value":' : '{"done":false,"value":') +
1043
1242
  value +
1044
1243
  "}",
1045
- null,
1046
1244
  response
1047
1245
  );
1048
1246
  }
1049
- function resolveIteratorResultChunk(chunk, value, done) {
1247
+ function resolveIteratorResultChunk(response, chunk, value, done) {
1050
1248
  resolveModelChunk(
1249
+ response,
1051
1250
  chunk,
1052
1251
  (done ? '{"done":true,"value":' : '{"done":false,"value":') +
1053
1252
  value +
1054
1253
  "}"
1055
1254
  );
1056
1255
  }
1057
- function resolveModelChunk(chunk, value) {
1256
+ function resolveModelChunk(response, chunk, value) {
1058
1257
  if ("pending" !== chunk.status) chunk.reason.enqueueModel(value);
1059
1258
  else {
1060
1259
  var resolveListeners = chunk.value,
1061
1260
  rejectListeners = chunk.reason;
1062
1261
  chunk.status = "resolved_model";
1063
1262
  chunk.value = value;
1263
+ chunk.reason = response;
1064
1264
  null !== resolveListeners &&
1065
1265
  (initializeModelChunk(chunk),
1066
1266
  wakeChunkIfInitialized(chunk, resolveListeners, rejectListeners));
@@ -1081,13 +1281,14 @@
1081
1281
  var prevHandler = initializingHandler,
1082
1282
  prevChunk = initializingChunk;
1083
1283
  initializingHandler = null;
1084
- var resolvedModel = chunk.value;
1284
+ var resolvedModel = chunk.value,
1285
+ response = chunk.reason;
1085
1286
  chunk.status = "blocked";
1086
1287
  chunk.value = null;
1087
1288
  chunk.reason = null;
1088
1289
  initializingChunk = chunk;
1089
1290
  try {
1090
- var value = JSON.parse(resolvedModel, chunk._response._fromJSON),
1291
+ var value = JSON.parse(resolvedModel, response._fromJSON),
1091
1292
  resolveListeners = chunk.value;
1092
1293
  null !== resolveListeners &&
1093
1294
  ((chunk.value = null),
@@ -1184,7 +1385,7 @@
1184
1385
  chunk ||
1185
1386
  ((chunk = response._closed
1186
1387
  ? createErrorChunk(response, response._closedReason)
1187
- : createPendingChunk(response)),
1388
+ : createPendingChunk()),
1188
1389
  chunks.set(id, chunk));
1189
1390
  return chunk;
1190
1391
  }
@@ -1273,6 +1474,7 @@
1273
1474
  deps: 1,
1274
1475
  errored: !1
1275
1476
  };
1477
+ fulfill.isReactInternalListener = !0;
1276
1478
  referencedChunk.then(fulfill, reject);
1277
1479
  return null;
1278
1480
  }
@@ -1433,6 +1635,7 @@
1433
1635
  return response;
1434
1636
  case "pending":
1435
1637
  case "blocked":
1638
+ case "halted":
1436
1639
  return waitForReference(
1437
1640
  id,
1438
1641
  parentObject,
@@ -1472,6 +1675,9 @@
1472
1675
  response.append(model[i][0], model[i][1]);
1473
1676
  return response;
1474
1677
  }
1678
+ function applyConstructor(response, model, parentObject) {
1679
+ Object.setPrototypeOf(parentObject, model.prototype);
1680
+ }
1475
1681
  function extractIterator(response, model) {
1476
1682
  return model[Symbol.iterator]();
1477
1683
  }
@@ -1506,13 +1712,14 @@
1506
1712
  createLazyChunkWrapper(response)
1507
1713
  );
1508
1714
  case "@":
1509
- if (2 === value.length) return new Promise(function () {});
1510
- parentObject = parseInt(value.slice(2), 16);
1511
- response = getChunk(response, parentObject);
1512
- null !== initializingChunk &&
1513
- isArrayImpl(initializingChunk._children) &&
1514
- initializingChunk._children.push(response);
1515
- return response;
1715
+ return (
1716
+ (parentObject = parseInt(value.slice(2), 16)),
1717
+ (response = getChunk(response, parentObject)),
1718
+ null !== initializingChunk &&
1719
+ isArrayImpl(initializingChunk._children) &&
1720
+ initializingChunk._children.push(response),
1721
+ response
1722
+ );
1516
1723
  case "S":
1517
1724
  return Symbol.for(value.slice(2));
1518
1725
  case "F":
@@ -1594,10 +1801,54 @@
1594
1801
  return new Date(Date.parse(value.slice(2)));
1595
1802
  case "n":
1596
1803
  return BigInt(value.slice(2));
1804
+ case "P":
1805
+ return (
1806
+ (value = value.slice(2)),
1807
+ getOutlinedModel(
1808
+ response,
1809
+ value,
1810
+ parentObject,
1811
+ key,
1812
+ applyConstructor
1813
+ )
1814
+ );
1597
1815
  case "E":
1816
+ response = value.slice(2);
1598
1817
  try {
1599
- return (0, eval)(value.slice(2));
1818
+ return (0, eval)(response);
1600
1819
  } catch (x) {
1820
+ if (response.startsWith("(async function")) {
1821
+ if (
1822
+ ((parentObject = response.indexOf("(", 15)),
1823
+ -1 !== parentObject)
1824
+ )
1825
+ return (
1826
+ (response = response.slice(15, parentObject).trim()),
1827
+ (0, eval)(
1828
+ "({" + JSON.stringify(response) + ":async function(){}})"
1829
+ )[response]
1830
+ );
1831
+ } else if (response.startsWith("(function")) {
1832
+ if (
1833
+ ((parentObject = response.indexOf("(", 9)),
1834
+ -1 !== parentObject)
1835
+ )
1836
+ return (
1837
+ (response = response.slice(9, parentObject).trim()),
1838
+ (0, eval)(
1839
+ "({" + JSON.stringify(response) + ":function(){}})"
1840
+ )[response]
1841
+ );
1842
+ } else if (
1843
+ response.startsWith("(class") &&
1844
+ ((parentObject = response.indexOf("{", 6)), -1 !== parentObject)
1845
+ )
1846
+ return (
1847
+ (response = response.slice(6, parentObject).trim()),
1848
+ (0, eval)("({" + JSON.stringify(response) + ":class{}})")[
1849
+ response
1850
+ ]
1851
+ );
1601
1852
  return function () {};
1602
1853
  }
1603
1854
  case "Y":
@@ -1670,29 +1921,36 @@
1670
1921
  this._rootEnvironmentName = environmentName;
1671
1922
  this._fromJSON = createFromJSONCallback(this);
1672
1923
  }
1924
+ function resolveDebugHalt(response, id) {
1925
+ response = response._chunks;
1926
+ var chunk = response.get(id);
1927
+ chunk || response.set(id, (chunk = createPendingChunk()));
1928
+ if ("pending" === chunk.status || "blocked" === chunk.status)
1929
+ (id = chunk),
1930
+ (id.status = "halted"),
1931
+ (id.value = null),
1932
+ (id.reason = null);
1933
+ }
1673
1934
  function resolveModel(response, id, model) {
1674
1935
  var chunks = response._chunks,
1675
1936
  chunk = chunks.get(id);
1676
1937
  chunk
1677
- ? resolveModelChunk(chunk, model)
1678
- : chunks.set(
1679
- id,
1680
- new ReactPromise("resolved_model", model, null, response)
1681
- );
1938
+ ? resolveModelChunk(response, chunk, model)
1939
+ : chunks.set(id, new ReactPromise("resolved_model", model, response));
1682
1940
  }
1683
1941
  function resolveText(response, id, text) {
1684
- var chunks = response._chunks,
1685
- chunk = chunks.get(id);
1942
+ response = response._chunks;
1943
+ var chunk = response.get(id);
1686
1944
  chunk && "pending" !== chunk.status
1687
1945
  ? chunk.reason.enqueueValue(text)
1688
- : chunks.set(id, new ReactPromise("fulfilled", text, null, response));
1946
+ : response.set(id, new ReactPromise("fulfilled", text, null));
1689
1947
  }
1690
1948
  function resolveBuffer(response, id, buffer) {
1691
- var chunks = response._chunks,
1692
- chunk = chunks.get(id);
1949
+ response = response._chunks;
1950
+ var chunk = response.get(id);
1693
1951
  chunk && "pending" !== chunk.status
1694
1952
  ? chunk.reason.enqueueValue(buffer)
1695
- : chunks.set(id, new ReactPromise("fulfilled", buffer, null, response));
1953
+ : response.set(id, new ReactPromise("fulfilled", buffer, null));
1696
1954
  }
1697
1955
  function resolveModule(response, id, model) {
1698
1956
  var chunks = response._chunks,
@@ -1707,14 +1965,14 @@
1707
1965
  response._nonce,
1708
1966
  model
1709
1967
  );
1710
- if ((model = preloadModule(clientReference))) {
1968
+ if ((response = preloadModule(clientReference))) {
1711
1969
  if (chunk) {
1712
1970
  var blockedChunk = chunk;
1713
1971
  blockedChunk.status = "blocked";
1714
1972
  } else
1715
- (blockedChunk = new ReactPromise("blocked", null, null, response)),
1973
+ (blockedChunk = new ReactPromise("blocked", null, null)),
1716
1974
  chunks.set(id, blockedChunk);
1717
- model.then(
1975
+ response.then(
1718
1976
  function () {
1719
1977
  return resolveModuleChunk(blockedChunk, clientReference);
1720
1978
  },
@@ -1727,28 +1985,20 @@
1727
1985
  ? resolveModuleChunk(chunk, clientReference)
1728
1986
  : chunks.set(
1729
1987
  id,
1730
- new ReactPromise(
1731
- "resolved_module",
1732
- clientReference,
1733
- null,
1734
- response
1735
- )
1988
+ new ReactPromise("resolved_module", clientReference, null)
1736
1989
  );
1737
1990
  }
1738
1991
  function resolveStream(response, id, stream, controller) {
1739
- var chunks = response._chunks,
1740
- chunk = chunks.get(id);
1741
- chunk
1742
- ? "pending" === chunk.status &&
1743
- ((response = chunk.value),
1744
- (chunk.status = "fulfilled"),
1745
- (chunk.value = stream),
1746
- (chunk.reason = controller),
1747
- null !== response && wakeChunk(response, chunk.value))
1748
- : chunks.set(
1749
- id,
1750
- new ReactPromise("fulfilled", stream, controller, response)
1751
- );
1992
+ var chunks = response._chunks;
1993
+ response = chunks.get(id);
1994
+ response
1995
+ ? "pending" === response.status &&
1996
+ ((id = response.value),
1997
+ (response.status = "fulfilled"),
1998
+ (response.value = stream),
1999
+ (response.reason = controller),
2000
+ null !== id && wakeChunk(id, response.value))
2001
+ : chunks.set(id, new ReactPromise("fulfilled", stream, controller));
1752
2002
  }
1753
2003
  function startReadableStream(response, id, type) {
1754
2004
  var controller = null;
@@ -1769,12 +2019,7 @@
1769
2019
  },
1770
2020
  enqueueModel: function (json) {
1771
2021
  if (null === previousBlockedChunk) {
1772
- var chunk = new ReactPromise(
1773
- "resolved_model",
1774
- json,
1775
- null,
1776
- response
1777
- );
2022
+ var chunk = new ReactPromise("resolved_model", json, response);
1778
2023
  initializeModelChunk(chunk);
1779
2024
  "fulfilled" === chunk.status
1780
2025
  ? controller.enqueue(chunk.value)
@@ -1789,7 +2034,7 @@
1789
2034
  (previousBlockedChunk = chunk));
1790
2035
  } else {
1791
2036
  chunk = previousBlockedChunk;
1792
- var _chunk3 = createPendingChunk(response);
2037
+ var _chunk3 = createPendingChunk();
1793
2038
  _chunk3.then(
1794
2039
  function (v) {
1795
2040
  return controller.enqueue(v);
@@ -1801,7 +2046,7 @@
1801
2046
  previousBlockedChunk = _chunk3;
1802
2047
  chunk.then(function () {
1803
2048
  previousBlockedChunk === _chunk3 && (previousBlockedChunk = null);
1804
- resolveModelChunk(_chunk3, json);
2049
+ resolveModelChunk(response, _chunk3, json);
1805
2050
  });
1806
2051
  }
1807
2052
  },
@@ -1839,26 +2084,26 @@
1839
2084
  var buffer = [],
1840
2085
  closed = !1,
1841
2086
  nextWriteIndex = 0,
1842
- iterable = _defineProperty({}, ASYNC_ITERATOR, function () {
1843
- var nextReadIndex = 0;
1844
- return createIterator(function (arg) {
1845
- if (void 0 !== arg)
1846
- throw Error(
1847
- "Values cannot be passed to next() of AsyncIterables passed to Client Components."
2087
+ iterable = {};
2088
+ iterable[ASYNC_ITERATOR] = function () {
2089
+ var nextReadIndex = 0;
2090
+ return createIterator(function (arg) {
2091
+ if (void 0 !== arg)
2092
+ throw Error(
2093
+ "Values cannot be passed to next() of AsyncIterables passed to Client Components."
2094
+ );
2095
+ if (nextReadIndex === buffer.length) {
2096
+ if (closed)
2097
+ return new ReactPromise(
2098
+ "fulfilled",
2099
+ { done: !0, value: void 0 },
2100
+ null
1848
2101
  );
1849
- if (nextReadIndex === buffer.length) {
1850
- if (closed)
1851
- return new ReactPromise(
1852
- "fulfilled",
1853
- { done: !0, value: void 0 },
1854
- null,
1855
- response
1856
- );
1857
- buffer[nextReadIndex] = createPendingChunk(response);
1858
- }
1859
- return buffer[nextReadIndex++];
1860
- });
2102
+ buffer[nextReadIndex] = createPendingChunk();
2103
+ }
2104
+ return buffer[nextReadIndex++];
1861
2105
  });
2106
+ };
1862
2107
  resolveStream(
1863
2108
  response,
1864
2109
  id,
@@ -1869,8 +2114,7 @@
1869
2114
  buffer[nextWriteIndex] = new ReactPromise(
1870
2115
  "fulfilled",
1871
2116
  { done: !1, value: value },
1872
- null,
1873
- response
2117
+ null
1874
2118
  );
1875
2119
  else {
1876
2120
  var chunk = buffer[nextWriteIndex],
@@ -1894,7 +2138,12 @@
1894
2138
  value,
1895
2139
  !1
1896
2140
  ))
1897
- : resolveIteratorResultChunk(buffer[nextWriteIndex], value, !1);
2141
+ : resolveIteratorResultChunk(
2142
+ response,
2143
+ buffer[nextWriteIndex],
2144
+ value,
2145
+ !1
2146
+ );
1898
2147
  nextWriteIndex++;
1899
2148
  },
1900
2149
  close: function (value) {
@@ -1905,9 +2154,15 @@
1905
2154
  value,
1906
2155
  !0
1907
2156
  ))
1908
- : resolveIteratorResultChunk(buffer[nextWriteIndex], value, !0);
2157
+ : resolveIteratorResultChunk(
2158
+ response,
2159
+ buffer[nextWriteIndex],
2160
+ value,
2161
+ !0
2162
+ );
1909
2163
  for (nextWriteIndex++; nextWriteIndex < buffer.length; )
1910
2164
  resolveIteratorResultChunk(
2165
+ response,
1911
2166
  buffer[nextWriteIndex++],
1912
2167
  '"$undefined"',
1913
2168
  !0
@@ -1917,7 +2172,7 @@
1917
2172
  closed = !0;
1918
2173
  for (
1919
2174
  nextWriteIndex === buffer.length &&
1920
- (buffer[nextWriteIndex] = createPendingChunk(response));
2175
+ (buffer[nextWriteIndex] = createPendingChunk());
1921
2176
  nextWriteIndex < buffer.length;
1922
2177
 
1923
2178
  )
@@ -2271,46 +2526,31 @@
2271
2526
  initializeFakeStack(response, ioInfo));
2272
2527
  ioInfo.start += response._timeOrigin;
2273
2528
  ioInfo.end += response._timeOrigin;
2274
- var startTime = ioInfo.start,
2275
- endTime = ioInfo.end;
2276
- if (supportsUserTiming && 0 <= endTime) {
2277
- var name = ioInfo.name,
2278
- env = ioInfo.env;
2279
- response =
2280
- env === response._rootEnvironmentName || void 0 === env
2281
- ? name
2282
- : name + " [" + env + "]";
2283
- ioInfo = ioInfo.debugTask;
2284
- name = getIOColor(name);
2285
- ioInfo
2286
- ? ioInfo.run(
2287
- console.timeStamp.bind(
2288
- console,
2289
- response,
2290
- 0 > startTime ? 0 : startTime,
2291
- endTime,
2292
- "Server Requests \u269b",
2293
- void 0,
2294
- name
2295
- )
2296
- )
2297
- : console.timeStamp(
2298
- response,
2299
- 0 > startTime ? 0 : startTime,
2300
- endTime,
2301
- "Server Requests \u269b",
2302
- void 0,
2303
- name
2529
+ response = response._rootEnvironmentName;
2530
+ var promise = ioInfo.value;
2531
+ if (promise)
2532
+ switch (promise.status) {
2533
+ case "fulfilled":
2534
+ logIOInfo(ioInfo, response, promise.value);
2535
+ break;
2536
+ case "rejected":
2537
+ logIOInfoErrored(ioInfo, response, promise.reason);
2538
+ break;
2539
+ default:
2540
+ promise.then(
2541
+ logIOInfo.bind(null, ioInfo, response),
2542
+ logIOInfoErrored.bind(null, ioInfo, response)
2304
2543
  );
2305
- }
2544
+ }
2545
+ else logIOInfo(ioInfo, response, void 0);
2306
2546
  }
2307
2547
  function resolveIOInfo(response, id, model) {
2308
2548
  var chunks = response._chunks,
2309
2549
  chunk = chunks.get(id);
2310
2550
  chunk
2311
- ? (resolveModelChunk(chunk, model),
2551
+ ? (resolveModelChunk(response, chunk, model),
2312
2552
  "resolved_model" === chunk.status && initializeModelChunk(chunk))
2313
- : ((chunk = new ReactPromise("resolved_model", model, null, response)),
2553
+ : ((chunk = new ReactPromise("resolved_model", model, response)),
2314
2554
  chunks.set(id, chunk),
2315
2555
  initializeModelChunk(chunk));
2316
2556
  "fulfilled" === chunk.status
@@ -2455,8 +2695,8 @@
2455
2695
  childResult > componentInfo && (componentInfo = childResult);
2456
2696
  }
2457
2697
  if (previousEndTime) {
2458
- var componentEndTime = 0,
2459
- isLastComponent = !0;
2698
+ var componentEndTime = 0;
2699
+ _i4 = !0;
2460
2700
  info = parentEndTime = -1;
2461
2701
  for (
2462
2702
  entryName = previousEndTime.length - 1;
@@ -2472,74 +2712,64 @@
2472
2712
  if (-1 < info)
2473
2713
  for (--info; info > entryName; info--)
2474
2714
  if (
2475
- ((_i4 = previousEndTime[info]), "string" === typeof _i4.name)
2715
+ ((childResult = previousEndTime[info]),
2716
+ "string" === typeof childResult.name)
2476
2717
  ) {
2477
2718
  componentEndTime > componentInfo &&
2478
2719
  (componentInfo = componentEndTime);
2479
- var response = response$jscomp$0;
2480
- childResult = _i4;
2481
- var trackIdx$jscomp$0 = trackIdx$jscomp$1,
2720
+ var response = response$jscomp$0,
2721
+ componentInfo$jscomp$0 = childResult,
2722
+ trackIdx$jscomp$0 = trackIdx$jscomp$1,
2482
2723
  startTime = trackTime,
2483
2724
  componentEndTime$jscomp$0 = componentEndTime,
2484
2725
  childrenEndTime = componentInfo;
2485
- isLastComponent &&
2726
+ _i4 &&
2486
2727
  "rejected" === root.status &&
2487
2728
  root.reason !== response._closedReason
2488
- ? ((isLastComponent = trackIdx$jscomp$0),
2489
- (componentEndTime = startTime),
2490
- (componentEndTime$jscomp$0 = childrenEndTime),
2491
- (childrenEndTime = root.reason),
2729
+ ? ((_i4 = root.reason),
2492
2730
  supportsUserTiming &&
2493
- ((startTime = childResult.env),
2494
- (childResult = childResult.name),
2495
- (childResult =
2496
- startTime === response._rootEnvironmentName ||
2497
- void 0 === startTime
2498
- ? childResult
2499
- : childResult + " [" + startTime + "]"),
2500
- "undefined" !== typeof performance &&
2501
- "function" === typeof performance.measure
2502
- ? performance.measure(childResult, {
2503
- start:
2504
- 0 > componentEndTime ? 0 : componentEndTime,
2505
- end: componentEndTime$jscomp$0,
2506
- detail: {
2507
- devtools: {
2508
- color: "error",
2509
- track: trackNames[isLastComponent],
2510
- trackGroup: "Server Components \u269b",
2511
- tooltipText: childResult + " Errored",
2512
- properties: [
2513
- [
2514
- "Error",
2515
- "object" === typeof childrenEndTime &&
2516
- null !== childrenEndTime &&
2517
- "string" ===
2518
- typeof childrenEndTime.message
2519
- ? String(childrenEndTime.message)
2520
- : String(childrenEndTime)
2521
- ]
2522
- ]
2523
- }
2524
- }
2525
- })
2526
- : console.timeStamp(
2527
- childResult,
2528
- 0 > componentEndTime ? 0 : componentEndTime,
2529
- componentEndTime$jscomp$0,
2530
- trackNames[isLastComponent],
2531
- "Server Components \u269b",
2532
- "error"
2533
- )))
2534
- : ((isLastComponent = trackIdx$jscomp$0),
2731
+ ((componentEndTime = componentInfo$jscomp$0.env),
2732
+ (componentInfo$jscomp$0 = componentInfo$jscomp$0.name),
2733
+ (componentEndTime =
2734
+ componentEndTime === response._rootEnvironmentName ||
2735
+ void 0 === componentEndTime
2736
+ ? componentInfo$jscomp$0
2737
+ : componentInfo$jscomp$0 +
2738
+ " [" +
2739
+ componentEndTime +
2740
+ "]"),
2741
+ performance.measure(componentEndTime, {
2742
+ start: 0 > startTime ? 0 : startTime,
2743
+ end: childrenEndTime,
2744
+ detail: {
2745
+ devtools: {
2746
+ color: "error",
2747
+ track: trackNames[trackIdx$jscomp$0],
2748
+ trackGroup: "Server Components \u269b",
2749
+ tooltipText: componentEndTime + " Errored",
2750
+ properties: [
2751
+ [
2752
+ "Error",
2753
+ "object" === typeof _i4 &&
2754
+ null !== _i4 &&
2755
+ "string" === typeof _i4.message
2756
+ ? String(_i4.message)
2757
+ : String(_i4)
2758
+ ]
2759
+ ]
2760
+ }
2761
+ }
2762
+ })))
2763
+ : ((_i4 = trackIdx$jscomp$0),
2535
2764
  (componentEndTime = startTime),
2765
+ (startTime = childrenEndTime),
2536
2766
  supportsUserTiming &&
2537
- 0 <= childrenEndTime &&
2538
- 10 > isLastComponent &&
2539
- ((startTime = childResult.env),
2540
- (trackIdx$jscomp$0 = childResult.name),
2767
+ 0 <= startTime &&
2768
+ 10 > _i4 &&
2769
+ ((childrenEndTime = componentInfo$jscomp$0.env),
2770
+ (trackIdx$jscomp$0 = componentInfo$jscomp$0.name),
2541
2771
  (response =
2542
- startTime === response._rootEnvironmentName),
2772
+ childrenEndTime === response._rootEnvironmentName),
2543
2773
  (componentEndTime$jscomp$0 -= componentEndTime),
2544
2774
  (componentEndTime$jscomp$0 =
2545
2775
  0.5 > componentEndTime$jscomp$0
@@ -2556,17 +2786,18 @@
2556
2786
  : "secondary-dark"
2557
2787
  : "error"),
2558
2788
  (response =
2559
- response || void 0 === startTime
2789
+ response || void 0 === childrenEndTime
2560
2790
  ? trackIdx$jscomp$0
2561
- : trackIdx$jscomp$0 + " [" + startTime + "]"),
2562
- (childResult = childResult.debugTask)
2563
- ? childResult.run(
2791
+ : trackIdx$jscomp$0 + " [" + childrenEndTime + "]"),
2792
+ (componentInfo$jscomp$0 =
2793
+ componentInfo$jscomp$0.debugTask)
2794
+ ? componentInfo$jscomp$0.run(
2564
2795
  console.timeStamp.bind(
2565
2796
  console,
2566
2797
  response,
2567
2798
  0 > componentEndTime ? 0 : componentEndTime,
2568
- childrenEndTime,
2569
- trackNames[isLastComponent],
2799
+ startTime,
2800
+ trackNames[_i4],
2570
2801
  "Server Components \u269b",
2571
2802
  componentEndTime$jscomp$0
2572
2803
  )
@@ -2574,55 +2805,113 @@
2574
2805
  : console.timeStamp(
2575
2806
  response,
2576
2807
  0 > componentEndTime ? 0 : componentEndTime,
2577
- childrenEndTime,
2578
- trackNames[isLastComponent],
2808
+ startTime,
2809
+ trackNames[_i4],
2579
2810
  "Server Components \u269b",
2580
2811
  componentEndTime$jscomp$0
2581
2812
  )));
2582
2813
  componentEndTime = trackTime;
2583
- trackIdx.component = _i4;
2584
- isLastComponent = !1;
2585
- } else if (
2586
- _i4.awaited &&
2587
- (parentEndTime > componentInfo &&
2588
- (componentInfo = parentEndTime),
2589
- (childrenEndTime = _i4),
2590
- (_i4 = trackIdx$jscomp$1),
2591
- (childResult = trackTime),
2592
- (response = parentEndTime),
2593
- supportsUserTiming && 0 < response)
2594
- ) {
2595
- startTime = childrenEndTime.env;
2596
- trackIdx$jscomp$0 = childrenEndTime.awaited.name;
2597
- var isPrimaryEnv =
2598
- startTime === response$jscomp$0._rootEnvironmentName;
2599
- componentEndTime$jscomp$0 = getIOColor(trackIdx$jscomp$0);
2600
- startTime =
2601
- "await " +
2602
- (isPrimaryEnv || void 0 === startTime
2603
- ? trackIdx$jscomp$0
2604
- : trackIdx$jscomp$0 + " [" + startTime + "]");
2605
- (childrenEndTime = childrenEndTime.debugTask)
2606
- ? childrenEndTime.run(
2607
- console.timeStamp.bind(
2608
- console,
2609
- startTime,
2610
- 0 > childResult ? 0 : childResult,
2611
- response,
2612
- trackNames[_i4],
2613
- "Server Components \u269b",
2614
- componentEndTime$jscomp$0
2615
- )
2616
- )
2617
- : console.timeStamp(
2618
- startTime,
2619
- 0 > childResult ? 0 : childResult,
2620
- response,
2621
- trackNames[_i4],
2622
- "Server Components \u269b",
2623
- componentEndTime$jscomp$0
2624
- );
2625
- }
2814
+ trackIdx.component = childResult;
2815
+ _i4 = !1;
2816
+ } else if (childResult.awaited)
2817
+ if (
2818
+ (parentEndTime > componentInfo &&
2819
+ (componentInfo = parentEndTime),
2820
+ (componentEndTime$jscomp$0 =
2821
+ response$jscomp$0._rootEnvironmentName),
2822
+ (componentInfo$jscomp$0 = childResult.awaited.value))
2823
+ )
2824
+ switch (
2825
+ ((childrenEndTime = componentInfo$jscomp$0),
2826
+ childrenEndTime.status)
2827
+ ) {
2828
+ case "fulfilled":
2829
+ logComponentAwait(
2830
+ childResult,
2831
+ trackIdx$jscomp$1,
2832
+ trackTime,
2833
+ parentEndTime,
2834
+ componentEndTime$jscomp$0,
2835
+ childrenEndTime.value
2836
+ );
2837
+ break;
2838
+ case "rejected":
2839
+ componentInfo$jscomp$0 = trackIdx$jscomp$1;
2840
+ response = trackTime;
2841
+ startTime = parentEndTime;
2842
+ childrenEndTime = childrenEndTime.reason;
2843
+ if (supportsUserTiming && 0 < startTime) {
2844
+ trackIdx$jscomp$0 = childResult.env;
2845
+ var name = childResult.awaited.name;
2846
+ componentEndTime$jscomp$0 =
2847
+ "await " +
2848
+ (trackIdx$jscomp$0 === componentEndTime$jscomp$0 ||
2849
+ void 0 === trackIdx$jscomp$0
2850
+ ? name
2851
+ : name + " [" + trackIdx$jscomp$0 + "]");
2852
+ (childResult = childResult.debugTask)
2853
+ ? childResult.run(
2854
+ performance.measure.bind(
2855
+ performance,
2856
+ componentEndTime$jscomp$0,
2857
+ {
2858
+ start: 0 > response ? 0 : response,
2859
+ end: startTime,
2860
+ detail: {
2861
+ devtools: {
2862
+ color: "error",
2863
+ track:
2864
+ trackNames[componentInfo$jscomp$0],
2865
+ trackGroup: "Server Components \u269b",
2866
+ properties: [
2867
+ [
2868
+ "Rejected",
2869
+ "object" ===
2870
+ typeof childrenEndTime &&
2871
+ null !== childrenEndTime &&
2872
+ "string" ===
2873
+ typeof childrenEndTime.message
2874
+ ? String(childrenEndTime.message)
2875
+ : String(childrenEndTime)
2876
+ ]
2877
+ ],
2878
+ tooltipText:
2879
+ componentEndTime$jscomp$0 +
2880
+ " Rejected"
2881
+ }
2882
+ }
2883
+ }
2884
+ )
2885
+ )
2886
+ : console.timeStamp(
2887
+ componentEndTime$jscomp$0,
2888
+ 0 > response ? 0 : response,
2889
+ startTime,
2890
+ trackNames[componentInfo$jscomp$0],
2891
+ "Server Components \u269b",
2892
+ "error"
2893
+ );
2894
+ }
2895
+ break;
2896
+ default:
2897
+ logComponentAwait(
2898
+ childResult,
2899
+ trackIdx$jscomp$1,
2900
+ trackTime,
2901
+ parentEndTime,
2902
+ componentEndTime$jscomp$0,
2903
+ void 0
2904
+ );
2905
+ }
2906
+ else
2907
+ logComponentAwait(
2908
+ childResult,
2909
+ trackIdx$jscomp$1,
2910
+ trackTime,
2911
+ parentEndTime,
2912
+ componentEndTime$jscomp$0,
2913
+ void 0
2914
+ );
2626
2915
  parentEndTime = trackTime;
2627
2916
  info = entryName;
2628
2917
  }
@@ -2710,7 +2999,7 @@
2710
2999
  response._timeOrigin = +row - performance.timeOrigin;
2711
3000
  break;
2712
3001
  case 68:
2713
- tag = new ReactPromise("resolved_model", row, null, response);
3002
+ tag = new ReactPromise("resolved_model", row, response);
2714
3003
  initializeModelChunk(tag);
2715
3004
  "fulfilled" === tag.status
2716
3005
  ? resolveDebugInfo(response, id, tag.value)
@@ -2747,7 +3036,9 @@
2747
3036
  resolvePostponeDev(response, id, tag.reason, tag.stack, tag.env);
2748
3037
  break;
2749
3038
  default:
2750
- resolveModel(response, id, row);
3039
+ "" === row
3040
+ ? resolveDebugHalt(response, id)
3041
+ : resolveModel(response, id, row);
2751
3042
  }
2752
3043
  }
2753
3044
  function createFromJSONCallback(response) {
@@ -2839,7 +3130,7 @@
2839
3130
  (key._debugInfo = [stack]),
2840
3131
  (value = createLazyChunkWrapper(key)))
2841
3132
  : 0 < stack.deps &&
2842
- ((key = new ReactPromise("blocked", null, null, response)),
3133
+ ((key = new ReactPromise("blocked", null, null)),
2843
3134
  (stack.value = value),
2844
3135
  (stack.chunk = key),
2845
3136
  (value = Object.freeze.bind(Object, value.props)),
@@ -2898,9 +3189,12 @@
2898
3189
  fakeServerFunctionIdx = 0,
2899
3190
  FunctionBind = Function.prototype.bind,
2900
3191
  ArraySlice = Array.prototype.slice,
3192
+ hasOwnProperty = Object.prototype.hasOwnProperty,
2901
3193
  supportsUserTiming =
2902
3194
  "undefined" !== typeof console &&
2903
- "function" === typeof console.timeStamp,
3195
+ "function" === typeof console.timeStamp &&
3196
+ "undefined" !== typeof performance &&
3197
+ "function" === typeof performance.measure,
2904
3198
  trackNames =
2905
3199
  "Primary Parallel Parallel\u200b Parallel\u200b\u200b Parallel\u200b\u200b\u200b Parallel\u200b\u200b\u200b\u200b Parallel\u200b\u200b\u200b\u200b\u200b Parallel\u200b\u200b\u200b\u200b\u200b\u200b Parallel\u200b\u200b\u200b\u200b\u200b\u200b\u200b Parallel\u200b\u200b\u200b\u200b\u200b\u200b\u200b\u200b".split(
2906
3200
  " "
@@ -2924,19 +3218,21 @@
2924
3218
  case "resolved_module":
2925
3219
  initializeModuleChunk(this);
2926
3220
  }
2927
- var resolveCallback = resolve,
2928
- rejectCallback = reject,
2929
- wrapperPromise = new Promise(function (res, rej) {
2930
- resolve = function (value) {
2931
- wrapperPromise._debugInfo = _this._debugInfo;
2932
- res(value);
2933
- };
2934
- reject = function (reason) {
2935
- wrapperPromise._debugInfo = _this._debugInfo;
2936
- rej(reason);
2937
- };
2938
- });
2939
- wrapperPromise.then(resolveCallback, rejectCallback);
3221
+ if ("function" !== typeof resolve || !resolve.isReactInternalListener) {
3222
+ var resolveCallback = resolve,
3223
+ rejectCallback = reject,
3224
+ wrapperPromise = new Promise(function (res, rej) {
3225
+ resolve = function (value) {
3226
+ wrapperPromise._debugInfo = _this._debugInfo;
3227
+ res(value);
3228
+ };
3229
+ reject = function (reason) {
3230
+ wrapperPromise._debugInfo = _this._debugInfo;
3231
+ rej(reason);
3232
+ };
3233
+ });
3234
+ wrapperPromise.then(resolveCallback, rejectCallback);
3235
+ }
2940
3236
  switch (this.status) {
2941
3237
  case "fulfilled":
2942
3238
  resolve(this.value);
@@ -2950,6 +3246,8 @@
2950
3246
  (null === this.reason && (this.reason = []),
2951
3247
  this.reason.push(reject));
2952
3248
  break;
3249
+ case "halted":
3250
+ break;
2953
3251
  default:
2954
3252
  reject && reject(this.reason);
2955
3253
  }
@@ -3054,7 +3352,7 @@
3054
3352
  version: rendererVersion,
3055
3353
  rendererPackageName: rendererPackageName,
3056
3354
  currentDispatcherRef: ReactSharedInternals,
3057
- reconcilerVersion: "19.2.0-experimental-06e89951-20250620",
3355
+ reconcilerVersion: "19.2.0-experimental-12eaef7e-20250623",
3058
3356
  getCurrentComponentInfo: getCurrentOwnerInDEV
3059
3357
  };
3060
3358
  if ("undefined" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__)