react-server-dom-turbopack 19.2.3 → 19.2.5

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.
@@ -442,6 +442,11 @@
442
442
  return "$" + (iterable ? "x" : "X") + streamId.toString(16);
443
443
  }
444
444
  function resolveToJSON(key, value) {
445
+ "__proto__" === key &&
446
+ console.error(
447
+ "Expected not to serialize an object with own property `__proto__`. When parsed this property will be omitted.%s",
448
+ describeObjectForErrorMessage(this, key)
449
+ );
445
450
  var originalValue = this[key];
446
451
  "object" !== typeof originalValue ||
447
452
  originalValue === value ||
@@ -686,17 +691,20 @@
686
691
  if ("undefined" === typeof value) return "$undefined";
687
692
  if ("function" === typeof value) {
688
693
  parentReference = knownServerReferences.get(value);
689
- if (void 0 !== parentReference)
690
- return (
691
- (key = JSON.stringify(
692
- { id: parentReference.id, bound: parentReference.bound },
693
- resolveToJSON
694
- )),
695
- null === formData && (formData = new FormData()),
696
- (parentReference = nextPartId++),
697
- formData.set(formFieldPrefix + parentReference, key),
698
- "$h" + parentReference.toString(16)
694
+ if (void 0 !== parentReference) {
695
+ key = writtenObjects.get(value);
696
+ if (void 0 !== key) return key;
697
+ key = JSON.stringify(
698
+ { id: parentReference.id, bound: parentReference.bound },
699
+ resolveToJSON
699
700
  );
701
+ null === formData && (formData = new FormData());
702
+ parentReference = nextPartId++;
703
+ formData.set(formFieldPrefix + parentReference, key);
704
+ key = "$h" + parentReference.toString(16);
705
+ writtenObjects.set(value, key);
706
+ return key;
707
+ }
700
708
  if (
701
709
  void 0 !== temporaryReferences &&
702
710
  -1 === key.indexOf(":") &&
@@ -2107,7 +2115,14 @@
2107
2115
  }
2108
2116
  }
2109
2117
  }
2110
- value = value[path[i]];
2118
+ var name = path[i];
2119
+ if (
2120
+ "object" === typeof value &&
2121
+ null !== value &&
2122
+ hasOwnProperty.call(value, name)
2123
+ )
2124
+ value = value[name];
2125
+ else throw Error("Invalid reference.");
2111
2126
  }
2112
2127
  for (
2113
2128
  ;
@@ -2135,7 +2150,7 @@
2135
2150
  }
2136
2151
  }
2137
2152
  var mappedValue = map(response, value, parentObject, key);
2138
- parentObject[key] = mappedValue;
2153
+ "__proto__" !== key && (parentObject[key] = mappedValue);
2139
2154
  "" === key && null === handler.value && (handler.value = mappedValue);
2140
2155
  if (
2141
2156
  parentObject[0] === REACT_ELEMENT_TYPE &&
@@ -2305,7 +2320,7 @@
2305
2320
  metaData.bound,
2306
2321
  response._encodeFormAction
2307
2322
  );
2308
- parentObject[key] = resolvedValue;
2323
+ "__proto__" !== key && (parentObject[key] = resolvedValue);
2309
2324
  "" === key &&
2310
2325
  null === handler.value &&
2311
2326
  (handler.value = resolvedValue);
@@ -2558,20 +2573,21 @@
2558
2573
  Object.setPrototypeOf(parentObject, model.prototype);
2559
2574
  }
2560
2575
  function defineLazyGetter(response, chunk, parentObject, key) {
2561
- Object.defineProperty(parentObject, key, {
2562
- get: function () {
2563
- "resolved_model" === chunk.status && initializeModelChunk(chunk);
2564
- switch (chunk.status) {
2565
- case "fulfilled":
2566
- return chunk.value;
2567
- case "rejected":
2568
- throw chunk.reason;
2569
- }
2570
- return "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.";
2571
- },
2572
- enumerable: !0,
2573
- configurable: !1
2574
- });
2576
+ "__proto__" !== key &&
2577
+ Object.defineProperty(parentObject, key, {
2578
+ get: function () {
2579
+ "resolved_model" === chunk.status && initializeModelChunk(chunk);
2580
+ switch (chunk.status) {
2581
+ case "fulfilled":
2582
+ return chunk.value;
2583
+ case "rejected":
2584
+ throw chunk.reason;
2585
+ }
2586
+ return "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.";
2587
+ },
2588
+ enumerable: !0,
2589
+ configurable: !1
2590
+ });
2575
2591
  return null;
2576
2592
  }
2577
2593
  function extractIterator(response, model) {
@@ -2775,13 +2791,14 @@
2775
2791
  ? ref.value
2776
2792
  : defineLazyGetter(response, ref, parentObject, key);
2777
2793
  }
2778
- Object.defineProperty(parentObject, key, {
2779
- get: function () {
2780
- return "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.";
2781
- },
2782
- enumerable: !0,
2783
- configurable: !1
2784
- });
2794
+ "__proto__" !== key &&
2795
+ Object.defineProperty(parentObject, key, {
2796
+ get: function () {
2797
+ return "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.";
2798
+ },
2799
+ enumerable: !0,
2800
+ configurable: !1
2801
+ });
2785
2802
  return null;
2786
2803
  default:
2787
2804
  return (
@@ -4568,83 +4585,85 @@
4568
4585
  }
4569
4586
  function createFromJSONCallback(response) {
4570
4587
  return function (key, value) {
4571
- if ("string" === typeof value)
4572
- return parseModelString(response, this, key, value);
4573
- if ("object" === typeof value && null !== value) {
4574
- if (value[0] === REACT_ELEMENT_TYPE)
4575
- b: {
4576
- var owner = value[4],
4577
- stack = value[5];
4578
- key = value[6];
4579
- value = {
4580
- $$typeof: REACT_ELEMENT_TYPE,
4581
- type: value[1],
4582
- key: value[2],
4583
- props: value[3],
4584
- _owner: void 0 === owner ? null : owner
4585
- };
4586
- Object.defineProperty(value, "ref", {
4587
- enumerable: !1,
4588
- get: nullRefGetter
4589
- });
4590
- value._store = {};
4591
- Object.defineProperty(value._store, "validated", {
4592
- configurable: !1,
4593
- enumerable: !1,
4594
- writable: !0,
4595
- value: key
4596
- });
4597
- Object.defineProperty(value, "_debugInfo", {
4598
- configurable: !1,
4599
- enumerable: !1,
4600
- writable: !0,
4601
- value: null
4602
- });
4603
- Object.defineProperty(value, "_debugStack", {
4604
- configurable: !1,
4605
- enumerable: !1,
4606
- writable: !0,
4607
- value: void 0 === stack ? null : stack
4608
- });
4609
- Object.defineProperty(value, "_debugTask", {
4610
- configurable: !1,
4611
- enumerable: !1,
4612
- writable: !0,
4613
- value: null
4614
- });
4615
- if (null !== initializingHandler) {
4616
- owner = initializingHandler;
4617
- initializingHandler = owner.parent;
4618
- if (owner.errored) {
4619
- stack = new ReactPromise("rejected", null, owner.reason);
4620
- initializeElement(response, value, null);
4621
- owner = {
4622
- name: getComponentNameFromType(value.type) || "",
4623
- owner: value._owner
4624
- };
4625
- owner.debugStack = value._debugStack;
4626
- supportsCreateTask && (owner.debugTask = value._debugTask);
4627
- stack._debugInfo = [owner];
4628
- key = createLazyChunkWrapper(stack, key);
4629
- break b;
4630
- }
4631
- if (0 < owner.deps) {
4632
- stack = new ReactPromise("blocked", null, null);
4633
- owner.value = value;
4634
- owner.chunk = stack;
4635
- key = createLazyChunkWrapper(stack, key);
4636
- value = initializeElement.bind(null, response, value, key);
4637
- stack.then(value, value);
4638
- break b;
4588
+ if ("__proto__" !== key) {
4589
+ if ("string" === typeof value)
4590
+ return parseModelString(response, this, key, value);
4591
+ if ("object" === typeof value && null !== value) {
4592
+ if (value[0] === REACT_ELEMENT_TYPE)
4593
+ b: {
4594
+ var owner = value[4],
4595
+ stack = value[5];
4596
+ key = value[6];
4597
+ value = {
4598
+ $$typeof: REACT_ELEMENT_TYPE,
4599
+ type: value[1],
4600
+ key: value[2],
4601
+ props: value[3],
4602
+ _owner: void 0 === owner ? null : owner
4603
+ };
4604
+ Object.defineProperty(value, "ref", {
4605
+ enumerable: !1,
4606
+ get: nullRefGetter
4607
+ });
4608
+ value._store = {};
4609
+ Object.defineProperty(value._store, "validated", {
4610
+ configurable: !1,
4611
+ enumerable: !1,
4612
+ writable: !0,
4613
+ value: key
4614
+ });
4615
+ Object.defineProperty(value, "_debugInfo", {
4616
+ configurable: !1,
4617
+ enumerable: !1,
4618
+ writable: !0,
4619
+ value: null
4620
+ });
4621
+ Object.defineProperty(value, "_debugStack", {
4622
+ configurable: !1,
4623
+ enumerable: !1,
4624
+ writable: !0,
4625
+ value: void 0 === stack ? null : stack
4626
+ });
4627
+ Object.defineProperty(value, "_debugTask", {
4628
+ configurable: !1,
4629
+ enumerable: !1,
4630
+ writable: !0,
4631
+ value: null
4632
+ });
4633
+ if (null !== initializingHandler) {
4634
+ owner = initializingHandler;
4635
+ initializingHandler = owner.parent;
4636
+ if (owner.errored) {
4637
+ stack = new ReactPromise("rejected", null, owner.reason);
4638
+ initializeElement(response, value, null);
4639
+ owner = {
4640
+ name: getComponentNameFromType(value.type) || "",
4641
+ owner: value._owner
4642
+ };
4643
+ owner.debugStack = value._debugStack;
4644
+ supportsCreateTask && (owner.debugTask = value._debugTask);
4645
+ stack._debugInfo = [owner];
4646
+ key = createLazyChunkWrapper(stack, key);
4647
+ break b;
4648
+ }
4649
+ if (0 < owner.deps) {
4650
+ stack = new ReactPromise("blocked", null, null);
4651
+ owner.value = value;
4652
+ owner.chunk = stack;
4653
+ key = createLazyChunkWrapper(stack, key);
4654
+ value = initializeElement.bind(null, response, value, key);
4655
+ stack.then(value, value);
4656
+ break b;
4657
+ }
4639
4658
  }
4659
+ initializeElement(response, value, null);
4660
+ key = value;
4640
4661
  }
4641
- initializeElement(response, value, null);
4642
- key = value;
4643
- }
4644
- else key = value;
4645
- return key;
4662
+ else key = value;
4663
+ return key;
4664
+ }
4665
+ return value;
4646
4666
  }
4647
- return value;
4648
4667
  };
4649
4668
  }
4650
4669
  function close(weakResponse) {
@@ -455,17 +455,20 @@ function processReply(
455
455
  if ("undefined" === typeof value) return "$undefined";
456
456
  if ("function" === typeof value) {
457
457
  parentReference = knownServerReferences.get(value);
458
- if (void 0 !== parentReference)
459
- return (
460
- (key = JSON.stringify(
461
- { id: parentReference.id, bound: parentReference.bound },
462
- resolveToJSON
463
- )),
464
- null === formData && (formData = new FormData()),
465
- (parentReference = nextPartId++),
466
- formData.set(formFieldPrefix + parentReference, key),
467
- "$h" + parentReference.toString(16)
458
+ if (void 0 !== parentReference) {
459
+ key = writtenObjects.get(value);
460
+ if (void 0 !== key) return key;
461
+ key = JSON.stringify(
462
+ { id: parentReference.id, bound: parentReference.bound },
463
+ resolveToJSON
468
464
  );
465
+ null === formData && (formData = new FormData());
466
+ parentReference = nextPartId++;
467
+ formData.set(formFieldPrefix + parentReference, key);
468
+ key = "$h" + parentReference.toString(16);
469
+ writtenObjects.set(value, key);
470
+ return key;
471
+ }
469
472
  if (
470
473
  void 0 !== temporaryReferences &&
471
474
  -1 === key.indexOf(":") &&
@@ -1009,7 +1012,14 @@ function fulfillReference(reference, value) {
1009
1012
  }
1010
1013
  }
1011
1014
  }
1012
- value = value[path[i]];
1015
+ var name = path[i];
1016
+ if (
1017
+ "object" === typeof value &&
1018
+ null !== value &&
1019
+ hasOwnProperty.call(value, name)
1020
+ )
1021
+ value = value[name];
1022
+ else throw Error("Invalid reference.");
1013
1023
  }
1014
1024
  for (
1015
1025
  ;
@@ -1018,26 +1028,26 @@ function fulfillReference(reference, value) {
1018
1028
  value.$$typeof === REACT_LAZY_TYPE;
1019
1029
 
1020
1030
  ) {
1021
- var referencedChunk$43 = value._payload;
1022
- if (referencedChunk$43 === handler.chunk) value = handler.value;
1031
+ var referencedChunk$44 = value._payload;
1032
+ if (referencedChunk$44 === handler.chunk) value = handler.value;
1023
1033
  else {
1024
- switch (referencedChunk$43.status) {
1034
+ switch (referencedChunk$44.status) {
1025
1035
  case "resolved_model":
1026
- initializeModelChunk(referencedChunk$43);
1036
+ initializeModelChunk(referencedChunk$44);
1027
1037
  break;
1028
1038
  case "resolved_module":
1029
- initializeModuleChunk(referencedChunk$43);
1039
+ initializeModuleChunk(referencedChunk$44);
1030
1040
  }
1031
- switch (referencedChunk$43.status) {
1041
+ switch (referencedChunk$44.status) {
1032
1042
  case "fulfilled":
1033
- value = referencedChunk$43.value;
1043
+ value = referencedChunk$44.value;
1034
1044
  continue;
1035
1045
  }
1036
1046
  break;
1037
1047
  }
1038
1048
  }
1039
1049
  var mappedValue = map(response, value, parentObject, key);
1040
- parentObject[key] = mappedValue;
1050
+ "__proto__" !== key && (parentObject[key] = mappedValue);
1041
1051
  "" === key && null === handler.value && (handler.value = mappedValue);
1042
1052
  if (
1043
1053
  parentObject[0] === REACT_ELEMENT_TYPE &&
@@ -1166,7 +1176,7 @@ function loadServerReference(response, metaData, parentObject, key) {
1166
1176
  metaData.bound,
1167
1177
  response._encodeFormAction
1168
1178
  );
1169
- parentObject[key] = resolvedValue;
1179
+ "__proto__" !== key && (parentObject[key] = resolvedValue);
1170
1180
  "" === key && null === handler.value && (handler.value = resolvedValue);
1171
1181
  if (
1172
1182
  parentObject[0] === REACT_ELEMENT_TYPE &&
@@ -1579,8 +1589,8 @@ function startReadableStream(response, id, type) {
1579
1589
  (previousBlockedChunk = chunk));
1580
1590
  } else {
1581
1591
  chunk = previousBlockedChunk;
1582
- var chunk$54 = new ReactPromise("pending", null, null);
1583
- chunk$54.then(
1592
+ var chunk$55 = new ReactPromise("pending", null, null);
1593
+ chunk$55.then(
1584
1594
  function (v) {
1585
1595
  return controller.enqueue(v);
1586
1596
  },
@@ -1588,10 +1598,10 @@ function startReadableStream(response, id, type) {
1588
1598
  return controller.error(e);
1589
1599
  }
1590
1600
  );
1591
- previousBlockedChunk = chunk$54;
1601
+ previousBlockedChunk = chunk$55;
1592
1602
  chunk.then(function () {
1593
- previousBlockedChunk === chunk$54 && (previousBlockedChunk = null);
1594
- resolveModelChunk(response, chunk$54, json);
1603
+ previousBlockedChunk === chunk$55 && (previousBlockedChunk = null);
1604
+ resolveModelChunk(response, chunk$55, json);
1595
1605
  });
1596
1606
  }
1597
1607
  },
@@ -1747,8 +1757,8 @@ function mergeBuffer(buffer, lastChunk) {
1747
1757
  for (var l = buffer.length, byteLength = lastChunk.length, i = 0; i < l; i++)
1748
1758
  byteLength += buffer[i].byteLength;
1749
1759
  byteLength = new Uint8Array(byteLength);
1750
- for (var i$55 = (i = 0); i$55 < l; i$55++) {
1751
- var chunk = buffer[i$55];
1760
+ for (var i$56 = (i = 0); i$56 < l; i$56++) {
1761
+ var chunk = buffer[i$56];
1752
1762
  byteLength.set(chunk, i);
1753
1763
  i += chunk.byteLength;
1754
1764
  }
@@ -2017,37 +2027,39 @@ function processBinaryChunk(weakResponse, streamState, chunk) {
2017
2027
  }
2018
2028
  function createFromJSONCallback(response) {
2019
2029
  return function (key, value) {
2020
- if ("string" === typeof value)
2021
- return parseModelString(response, this, key, value);
2022
- if ("object" === typeof value && null !== value) {
2023
- if (value[0] === REACT_ELEMENT_TYPE) {
2024
- if (
2025
- ((key = {
2026
- $$typeof: REACT_ELEMENT_TYPE,
2027
- type: value[1],
2028
- key: value[2],
2029
- ref: null,
2030
- props: value[3]
2031
- }),
2032
- null !== initializingHandler)
2033
- )
2030
+ if ("__proto__" !== key) {
2031
+ if ("string" === typeof value)
2032
+ return parseModelString(response, this, key, value);
2033
+ if ("object" === typeof value && null !== value) {
2034
+ if (value[0] === REACT_ELEMENT_TYPE) {
2034
2035
  if (
2035
- ((value = initializingHandler),
2036
- (initializingHandler = value.parent),
2037
- value.errored)
2036
+ ((key = {
2037
+ $$typeof: REACT_ELEMENT_TYPE,
2038
+ type: value[1],
2039
+ key: value[2],
2040
+ ref: null,
2041
+ props: value[3]
2042
+ }),
2043
+ null !== initializingHandler)
2038
2044
  )
2039
- (key = new ReactPromise("rejected", null, value.reason)),
2040
- (key = createLazyChunkWrapper(key));
2041
- else if (0 < value.deps) {
2042
- var blockedChunk = new ReactPromise("blocked", null, null);
2043
- value.value = key;
2044
- value.chunk = blockedChunk;
2045
- key = createLazyChunkWrapper(blockedChunk);
2046
- }
2047
- } else key = value;
2048
- return key;
2045
+ if (
2046
+ ((value = initializingHandler),
2047
+ (initializingHandler = value.parent),
2048
+ value.errored)
2049
+ )
2050
+ (key = new ReactPromise("rejected", null, value.reason)),
2051
+ (key = createLazyChunkWrapper(key));
2052
+ else if (0 < value.deps) {
2053
+ var blockedChunk = new ReactPromise("blocked", null, null);
2054
+ value.value = key;
2055
+ value.chunk = blockedChunk;
2056
+ key = createLazyChunkWrapper(blockedChunk);
2057
+ }
2058
+ } else key = value;
2059
+ return key;
2060
+ }
2061
+ return value;
2049
2062
  }
2050
- return value;
2051
2063
  };
2052
2064
  }
2053
2065
  function close(weakResponse) {