react-server-dom-webpack 19.2.0 → 19.2.2

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,7 +11,8 @@
11
11
  "use strict";
12
12
  var util = require("util"),
13
13
  ReactDOM = require("react-dom"),
14
- decoderOptions = { stream: !0 };
14
+ decoderOptions = { stream: !0 },
15
+ hasOwnProperty = Object.prototype.hasOwnProperty;
15
16
  function resolveClientReference(bundlerConfig, metadata) {
16
17
  if (bundlerConfig) {
17
18
  var moduleExports = bundlerConfig[metadata[0]];
@@ -100,13 +101,11 @@ function requireModule(metadata) {
100
101
  if ("fulfilled" === moduleExports.status)
101
102
  moduleExports = moduleExports.value;
102
103
  else throw moduleExports.reason;
103
- return "*" === metadata[2]
104
- ? moduleExports
105
- : "" === metadata[2]
106
- ? moduleExports.__esModule
107
- ? moduleExports.default
108
- : moduleExports
109
- : moduleExports[metadata[2]];
104
+ if ("*" === metadata[2]) return moduleExports;
105
+ if ("" === metadata[2])
106
+ return moduleExports.__esModule ? moduleExports.default : moduleExports;
107
+ if (hasOwnProperty.call(moduleExports, metadata[2]))
108
+ return moduleExports[metadata[2]];
110
109
  }
111
110
  function prepareDestinationWithChunks(moduleLoading, chunks, nonce$jscomp$0) {
112
111
  if (null !== moduleLoading)
@@ -317,13 +316,23 @@ function processReply(
317
316
  pendingParts--;
318
317
  }
319
318
  }
319
+ parentReference = writtenObjects.get(value);
320
320
  if ("function" === typeof value.then) {
321
+ if (void 0 !== parentReference)
322
+ if (modelRoot === value) modelRoot = null;
323
+ else return parentReference;
321
324
  null === formData && (formData = new FormData());
322
325
  pendingParts++;
323
326
  var promiseId = nextPartId++;
327
+ key = "$@" + promiseId.toString(16);
328
+ writtenObjects.set(value, key);
324
329
  value.then(function (partValue) {
325
330
  try {
326
- var partJSON$27 = serializeModel(partValue, promiseId);
331
+ var previousReference = writtenObjects.get(partValue);
332
+ var partJSON$27 =
333
+ void 0 !== previousReference
334
+ ? JSON.stringify(previousReference)
335
+ : serializeModel(partValue, promiseId);
327
336
  partValue = formData;
328
337
  partValue.append(formFieldPrefix + promiseId, partJSON$27);
329
338
  pendingParts--;
@@ -332,9 +341,8 @@ function processReply(
332
341
  reject(reason);
333
342
  }
334
343
  }, reject);
335
- return "$@" + promiseId.toString(16);
344
+ return key;
336
345
  }
337
- parentReference = writtenObjects.get(value);
338
346
  if (void 0 !== parentReference)
339
347
  if (modelRoot === value) modelRoot = null;
340
348
  else return parentReference;
@@ -458,7 +466,7 @@ function processReply(
458
466
  null === formData && (formData = new FormData()),
459
467
  (parentReference = nextPartId++),
460
468
  formData.set(formFieldPrefix + parentReference, key),
461
- "$F" + parentReference.toString(16)
469
+ "$h" + parentReference.toString(16)
462
470
  );
463
471
  if (
464
472
  void 0 !== temporaryReferences &&
@@ -742,12 +750,12 @@ function readChunk(chunk) {
742
750
  throw chunk.reason;
743
751
  }
744
752
  }
745
- function wakeChunk(listeners, value) {
753
+ function wakeChunk(listeners, value, chunk) {
746
754
  for (var i = 0; i < listeners.length; i++) {
747
755
  var listener = listeners[i];
748
756
  "function" === typeof listener
749
757
  ? listener(value)
750
- : fulfillReference(listener, value);
758
+ : fulfillReference(listener, value, chunk);
751
759
  }
752
760
  }
753
761
  function rejectChunk(listeners, error) {
@@ -782,20 +790,31 @@ function resolveBlockedCycle(resolvedChunk, reference) {
782
790
  function wakeChunkIfInitialized(chunk, resolveListeners, rejectListeners) {
783
791
  switch (chunk.status) {
784
792
  case "fulfilled":
785
- wakeChunk(resolveListeners, chunk.value);
793
+ wakeChunk(resolveListeners, chunk.value, chunk);
786
794
  break;
787
795
  case "blocked":
788
796
  for (var i = 0; i < resolveListeners.length; i++) {
789
797
  var listener = resolveListeners[i];
790
798
  if ("function" !== typeof listener) {
791
799
  var cyclicHandler = resolveBlockedCycle(chunk, listener);
792
- null !== cyclicHandler &&
793
- (fulfillReference(listener, cyclicHandler.value),
794
- resolveListeners.splice(i, 1),
795
- i--,
796
- null !== rejectListeners &&
797
- ((listener = rejectListeners.indexOf(listener)),
798
- -1 !== listener && rejectListeners.splice(listener, 1)));
800
+ if (null !== cyclicHandler)
801
+ switch (
802
+ (fulfillReference(listener, cyclicHandler.value, chunk),
803
+ resolveListeners.splice(i, 1),
804
+ i--,
805
+ null !== rejectListeners &&
806
+ ((listener = rejectListeners.indexOf(listener)),
807
+ -1 !== listener && rejectListeners.splice(listener, 1)),
808
+ chunk.status)
809
+ ) {
810
+ case "fulfilled":
811
+ wakeChunk(resolveListeners, chunk.value, chunk);
812
+ return;
813
+ case "rejected":
814
+ null !== rejectListeners &&
815
+ rejectChunk(rejectListeners, chunk.reason);
816
+ return;
817
+ }
799
818
  }
800
819
  }
801
820
  case "pending":
@@ -858,6 +877,7 @@ function resolveModuleChunk(response, chunk, value) {
858
877
  var rejectListeners = chunk.reason;
859
878
  chunk.status = "resolved_module";
860
879
  chunk.value = value;
880
+ chunk.reason = null;
861
881
  null !== response &&
862
882
  (initializeModuleChunk(chunk),
863
883
  wakeChunkIfInitialized(chunk, response, rejectListeners));
@@ -915,8 +935,11 @@ function reportGlobalError(weakResponse, error) {
915
935
  weakResponse._closed = !0;
916
936
  weakResponse._closedReason = error;
917
937
  weakResponse._chunks.forEach(function (chunk) {
918
- "pending" === chunk.status &&
919
- triggerErrorOnChunk(weakResponse, chunk, error);
938
+ "pending" === chunk.status
939
+ ? triggerErrorOnChunk(weakResponse, chunk, error)
940
+ : "fulfilled" === chunk.status &&
941
+ null !== chunk.reason &&
942
+ chunk.reason.error(error);
920
943
  });
921
944
  }
922
945
  function createLazyChunkWrapper(chunk) {
@@ -933,109 +956,117 @@ function getChunk(response, id) {
933
956
  return chunk;
934
957
  }
935
958
  function fulfillReference(reference, value) {
936
- for (
937
- var response = reference.response,
938
- handler = reference.handler,
939
- parentObject = reference.parentObject,
940
- key = reference.key,
941
- map = reference.map,
942
- path = reference.path,
943
- i = 1;
944
- i < path.length;
945
- i++
946
- ) {
959
+ var response = reference.response,
960
+ handler = reference.handler,
961
+ parentObject = reference.parentObject,
962
+ key = reference.key,
963
+ map = reference.map,
964
+ path = reference.path;
965
+ try {
966
+ for (var i = 1; i < path.length; i++) {
967
+ for (
968
+ ;
969
+ "object" === typeof value &&
970
+ null !== value &&
971
+ value.$$typeof === REACT_LAZY_TYPE;
972
+
973
+ ) {
974
+ var referencedChunk = value._payload;
975
+ if (referencedChunk === handler.chunk) value = handler.value;
976
+ else {
977
+ switch (referencedChunk.status) {
978
+ case "resolved_model":
979
+ initializeModelChunk(referencedChunk);
980
+ break;
981
+ case "resolved_module":
982
+ initializeModuleChunk(referencedChunk);
983
+ }
984
+ switch (referencedChunk.status) {
985
+ case "fulfilled":
986
+ value = referencedChunk.value;
987
+ continue;
988
+ case "blocked":
989
+ var cyclicHandler = resolveBlockedCycle(
990
+ referencedChunk,
991
+ reference
992
+ );
993
+ if (null !== cyclicHandler) {
994
+ value = cyclicHandler.value;
995
+ continue;
996
+ }
997
+ case "pending":
998
+ path.splice(0, i - 1);
999
+ null === referencedChunk.value
1000
+ ? (referencedChunk.value = [reference])
1001
+ : referencedChunk.value.push(reference);
1002
+ null === referencedChunk.reason
1003
+ ? (referencedChunk.reason = [reference])
1004
+ : referencedChunk.reason.push(reference);
1005
+ return;
1006
+ case "halted":
1007
+ return;
1008
+ default:
1009
+ rejectReference(reference, referencedChunk.reason);
1010
+ return;
1011
+ }
1012
+ }
1013
+ }
1014
+ value = value[path[i]];
1015
+ }
947
1016
  for (
948
1017
  ;
949
1018
  "object" === typeof value &&
950
1019
  null !== value &&
951
1020
  value.$$typeof === REACT_LAZY_TYPE;
952
1021
 
953
- )
954
- if (((value = value._payload), value === handler.chunk))
955
- value = handler.value;
1022
+ ) {
1023
+ var referencedChunk$43 = value._payload;
1024
+ if (referencedChunk$43 === handler.chunk) value = handler.value;
956
1025
  else {
957
- switch (value.status) {
1026
+ switch (referencedChunk$43.status) {
958
1027
  case "resolved_model":
959
- initializeModelChunk(value);
1028
+ initializeModelChunk(referencedChunk$43);
960
1029
  break;
961
1030
  case "resolved_module":
962
- initializeModuleChunk(value);
1031
+ initializeModuleChunk(referencedChunk$43);
963
1032
  }
964
- switch (value.status) {
1033
+ switch (referencedChunk$43.status) {
965
1034
  case "fulfilled":
966
- value = value.value;
1035
+ value = referencedChunk$43.value;
967
1036
  continue;
968
- case "blocked":
969
- var cyclicHandler = resolveBlockedCycle(value, reference);
970
- if (null !== cyclicHandler) {
971
- value = cyclicHandler.value;
972
- continue;
973
- }
974
- case "pending":
975
- path.splice(0, i - 1);
976
- null === value.value
977
- ? (value.value = [reference])
978
- : value.value.push(reference);
979
- null === value.reason
980
- ? (value.reason = [reference])
981
- : value.reason.push(reference);
982
- return;
983
- case "halted":
984
- return;
985
- default:
986
- rejectReference(reference, value.reason);
987
- return;
988
1037
  }
1038
+ break;
989
1039
  }
990
- value = value[path[i]];
991
- }
992
- for (
993
- ;
994
- "object" === typeof value &&
995
- null !== value &&
996
- value.$$typeof === REACT_LAZY_TYPE;
997
-
998
- )
999
- if (((reference = value._payload), reference === handler.chunk))
1000
- value = handler.value;
1001
- else {
1002
- switch (reference.status) {
1003
- case "resolved_model":
1004
- initializeModelChunk(reference);
1005
- break;
1006
- case "resolved_module":
1007
- initializeModuleChunk(reference);
1008
- }
1009
- switch (reference.status) {
1010
- case "fulfilled":
1011
- value = reference.value;
1012
- continue;
1013
- }
1014
- break;
1015
1040
  }
1016
- response = map(response, value, parentObject, key);
1017
- parentObject[key] = response;
1018
- "" === key && null === handler.value && (handler.value = response);
1019
- if (
1020
- parentObject[0] === REACT_ELEMENT_TYPE &&
1021
- "object" === typeof handler.value &&
1022
- null !== handler.value &&
1023
- handler.value.$$typeof === REACT_ELEMENT_TYPE
1024
- )
1025
- switch (((parentObject = handler.value), key)) {
1026
- case "3":
1027
- parentObject.props = response;
1041
+ var mappedValue = map(response, value, parentObject, key);
1042
+ parentObject[key] = mappedValue;
1043
+ "" === key && null === handler.value && (handler.value = mappedValue);
1044
+ if (
1045
+ parentObject[0] === REACT_ELEMENT_TYPE &&
1046
+ "object" === typeof handler.value &&
1047
+ null !== handler.value &&
1048
+ handler.value.$$typeof === REACT_ELEMENT_TYPE
1049
+ ) {
1050
+ var element = handler.value;
1051
+ switch (key) {
1052
+ case "3":
1053
+ element.props = mappedValue;
1054
+ }
1028
1055
  }
1056
+ } catch (error) {
1057
+ rejectReference(reference, error);
1058
+ return;
1059
+ }
1029
1060
  handler.deps--;
1030
1061
  0 === handler.deps &&
1031
- ((key = handler.chunk),
1032
- null !== key &&
1033
- "blocked" === key.status &&
1034
- ((parentObject = key.value),
1035
- (key.status = "fulfilled"),
1036
- (key.value = handler.value),
1037
- (key.reason = handler.reason),
1038
- null !== parentObject && wakeChunk(parentObject, handler.value)));
1062
+ ((reference = handler.chunk),
1063
+ null !== reference &&
1064
+ "blocked" === reference.status &&
1065
+ ((value = reference.value),
1066
+ (reference.status = "fulfilled"),
1067
+ (reference.value = handler.value),
1068
+ (reference.reason = handler.reason),
1069
+ null !== value && wakeChunk(value, handler.value, reference)));
1039
1070
  }
1040
1071
  function rejectReference(reference, error) {
1041
1072
  var handler = reference.handler;
@@ -1157,7 +1188,9 @@ function loadServerReference(response, metaData, parentObject, key) {
1157
1188
  ((boundArgs = resolvedValue.value),
1158
1189
  (resolvedValue.status = "fulfilled"),
1159
1190
  (resolvedValue.value = handler.value),
1160
- null !== boundArgs && wakeChunk(boundArgs, handler.value)));
1191
+ (resolvedValue.reason = null),
1192
+ null !== boundArgs &&
1193
+ wakeChunk(boundArgs, handler.value, resolvedValue)));
1161
1194
  },
1162
1195
  function (error) {
1163
1196
  if (!handler.errored) {
@@ -1362,7 +1395,7 @@ function parseModelString(response, parentObject, key, value) {
1362
1395
  );
1363
1396
  case "S":
1364
1397
  return Symbol.for(value.slice(2));
1365
- case "F":
1398
+ case "h":
1366
1399
  return (
1367
1400
  (value = value.slice(2)),
1368
1401
  getOutlinedModel(
@@ -1509,12 +1542,13 @@ function resolveStream(response, id, stream, controller) {
1509
1542
  (chunk.status = "fulfilled"),
1510
1543
  (chunk.value = stream),
1511
1544
  (chunk.reason = controller),
1512
- null !== id && wakeChunk(id, chunk.value))
1545
+ null !== id && wakeChunk(id, chunk.value, chunk))
1513
1546
  : ((stream = new ReactPromise("fulfilled", stream, controller)),
1514
1547
  response.set(id, stream));
1515
1548
  }
1516
1549
  function startReadableStream(response, id, type) {
1517
- var controller = null;
1550
+ var controller = null,
1551
+ closed = !1;
1518
1552
  type = new ReadableStream({
1519
1553
  type: type,
1520
1554
  start: function (c) {
@@ -1564,24 +1598,27 @@ function startReadableStream(response, id, type) {
1564
1598
  }
1565
1599
  },
1566
1600
  close: function () {
1567
- if (null === previousBlockedChunk) controller.close();
1568
- else {
1569
- var blockedChunk = previousBlockedChunk;
1570
- previousBlockedChunk = null;
1571
- blockedChunk.then(function () {
1572
- return controller.close();
1573
- });
1574
- }
1601
+ if (!closed)
1602
+ if (((closed = !0), null === previousBlockedChunk)) controller.close();
1603
+ else {
1604
+ var blockedChunk = previousBlockedChunk;
1605
+ previousBlockedChunk = null;
1606
+ blockedChunk.then(function () {
1607
+ return controller.close();
1608
+ });
1609
+ }
1575
1610
  },
1576
1611
  error: function (error) {
1577
- if (null === previousBlockedChunk) controller.error(error);
1578
- else {
1579
- var blockedChunk = previousBlockedChunk;
1580
- previousBlockedChunk = null;
1581
- blockedChunk.then(function () {
1582
- return controller.error(error);
1583
- });
1584
- }
1612
+ if (!closed)
1613
+ if (((closed = !0), null === previousBlockedChunk))
1614
+ controller.error(error);
1615
+ else {
1616
+ var blockedChunk = previousBlockedChunk;
1617
+ previousBlockedChunk = null;
1618
+ blockedChunk.then(function () {
1619
+ return controller.error(error);
1620
+ });
1621
+ }
1585
1622
  }
1586
1623
  });
1587
1624
  }
@@ -1635,6 +1672,7 @@ function startAsyncIterable(response, id, iterator) {
1635
1672
  rejectListeners = chunk.reason;
1636
1673
  chunk.status = "fulfilled";
1637
1674
  chunk.value = { done: !1, value: value };
1675
+ chunk.reason = null;
1638
1676
  null !== resolveListeners &&
1639
1677
  wakeChunkIfInitialized(chunk, resolveListeners, rejectListeners);
1640
1678
  }
@@ -1656,36 +1694,46 @@ function startAsyncIterable(response, id, iterator) {
1656
1694
  nextWriteIndex++;
1657
1695
  },
1658
1696
  close: function (value) {
1659
- closed = !0;
1660
- nextWriteIndex === buffer.length
1661
- ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk(
1662
- response,
1663
- value,
1664
- !0
1665
- ))
1666
- : resolveIteratorResultChunk(
1697
+ if (!closed)
1698
+ for (
1699
+ closed = !0,
1700
+ nextWriteIndex === buffer.length
1701
+ ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk(
1702
+ response,
1703
+ value,
1704
+ !0
1705
+ ))
1706
+ : resolveIteratorResultChunk(
1707
+ response,
1708
+ buffer[nextWriteIndex],
1709
+ value,
1710
+ !0
1711
+ ),
1712
+ nextWriteIndex++;
1713
+ nextWriteIndex < buffer.length;
1714
+
1715
+ )
1716
+ resolveIteratorResultChunk(
1667
1717
  response,
1668
- buffer[nextWriteIndex],
1669
- value,
1718
+ buffer[nextWriteIndex++],
1719
+ '"$undefined"',
1670
1720
  !0
1671
1721
  );
1672
- for (nextWriteIndex++; nextWriteIndex < buffer.length; )
1673
- resolveIteratorResultChunk(
1674
- response,
1675
- buffer[nextWriteIndex++],
1676
- '"$undefined"',
1677
- !0
1678
- );
1679
1722
  },
1680
1723
  error: function (error) {
1681
- closed = !0;
1682
- for (
1683
- nextWriteIndex === buffer.length &&
1684
- (buffer[nextWriteIndex] = new ReactPromise("pending", null, null));
1685
- nextWriteIndex < buffer.length;
1724
+ if (!closed)
1725
+ for (
1726
+ closed = !0,
1727
+ nextWriteIndex === buffer.length &&
1728
+ (buffer[nextWriteIndex] = new ReactPromise(
1729
+ "pending",
1730
+ null,
1731
+ null
1732
+ ));
1733
+ nextWriteIndex < buffer.length;
1686
1734
 
1687
- )
1688
- triggerErrorOnChunk(response, buffer[nextWriteIndex++], error);
1735
+ )
1736
+ triggerErrorOnChunk(response, buffer[nextWriteIndex++], error);
1689
1737
  }
1690
1738
  }
1691
1739
  );