react-server-dom-webpack 19.0.3 → 19.0.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.
- package/cjs/react-server-dom-webpack-client.browser.development.js +94 -76
- package/cjs/react-server-dom-webpack-client.browser.production.js +63 -51
- package/cjs/react-server-dom-webpack-client.edge.development.js +92 -74
- package/cjs/react-server-dom-webpack-client.edge.production.js +63 -51
- package/cjs/react-server-dom-webpack-client.node.development.js +92 -74
- package/cjs/react-server-dom-webpack-client.node.production.js +63 -51
- package/cjs/react-server-dom-webpack-client.node.unbundled.development.js +92 -74
- package/cjs/react-server-dom-webpack-client.node.unbundled.production.js +63 -51
- package/cjs/react-server-dom-webpack-server.browser.development.js +619 -343
- package/cjs/react-server-dom-webpack-server.browser.production.js +592 -307
- package/cjs/react-server-dom-webpack-server.edge.development.js +619 -343
- package/cjs/react-server-dom-webpack-server.edge.production.js +592 -307
- package/cjs/react-server-dom-webpack-server.node.development.js +625 -347
- package/cjs/react-server-dom-webpack-server.node.production.js +598 -311
- package/cjs/react-server-dom-webpack-server.node.unbundled.development.js +625 -347
- package/cjs/react-server-dom-webpack-server.node.unbundled.production.js +598 -311
- package/package.json +3 -3
|
@@ -1458,6 +1458,13 @@
|
|
|
1458
1458
|
value
|
|
1459
1459
|
) {
|
|
1460
1460
|
task.model = value;
|
|
1461
|
+
parentPropertyName === __PROTO__$1 &&
|
|
1462
|
+
callWithDebugContextInDEV(request, task, function () {
|
|
1463
|
+
console.error(
|
|
1464
|
+
"Expected not to serialize an object with own property `__proto__`. When parsed this property will be omitted.%s",
|
|
1465
|
+
describeObjectForErrorMessage(parent, parentPropertyName)
|
|
1466
|
+
);
|
|
1467
|
+
});
|
|
1461
1468
|
if (value === REACT_ELEMENT_TYPE) return "$";
|
|
1462
1469
|
if (null === value) return null;
|
|
1463
1470
|
if ("object" === typeof value) {
|
|
@@ -1628,7 +1635,7 @@
|
|
|
1628
1635
|
if (value instanceof Date) return "$D" + value.toJSON();
|
|
1629
1636
|
elementReference = getPrototypeOf(value);
|
|
1630
1637
|
if (
|
|
1631
|
-
elementReference !== ObjectPrototype &&
|
|
1638
|
+
elementReference !== ObjectPrototype$1 &&
|
|
1632
1639
|
(null === elementReference ||
|
|
1633
1640
|
null !== getPrototypeOf(elementReference))
|
|
1634
1641
|
)
|
|
@@ -2515,12 +2522,12 @@
|
|
|
2515
2522
|
this.value = value;
|
|
2516
2523
|
this.reason = reason;
|
|
2517
2524
|
}
|
|
2518
|
-
function wakeChunk(response, listeners, value) {
|
|
2525
|
+
function wakeChunk(response, listeners, value, chunk) {
|
|
2519
2526
|
for (var i = 0; i < listeners.length; i++) {
|
|
2520
2527
|
var listener = listeners[i];
|
|
2521
2528
|
"function" === typeof listener
|
|
2522
2529
|
? listener(value)
|
|
2523
|
-
: fulfillReference(response, listener, value);
|
|
2530
|
+
: fulfillReference(response, listener, value, chunk.reason);
|
|
2524
2531
|
}
|
|
2525
2532
|
}
|
|
2526
2533
|
function rejectChunk(response, listeners, error) {
|
|
@@ -2531,27 +2538,6 @@
|
|
|
2531
2538
|
: rejectReference(response, listener.handler, error);
|
|
2532
2539
|
}
|
|
2533
2540
|
}
|
|
2534
|
-
function resolveBlockedCycle(resolvedChunk, reference) {
|
|
2535
|
-
var referencedChunk = reference.handler.chunk;
|
|
2536
|
-
if (null === referencedChunk) return null;
|
|
2537
|
-
if (referencedChunk === resolvedChunk) return reference.handler;
|
|
2538
|
-
reference = referencedChunk.value;
|
|
2539
|
-
if (null !== reference)
|
|
2540
|
-
for (
|
|
2541
|
-
referencedChunk = 0;
|
|
2542
|
-
referencedChunk < reference.length;
|
|
2543
|
-
referencedChunk++
|
|
2544
|
-
) {
|
|
2545
|
-
var listener = reference[referencedChunk];
|
|
2546
|
-
if (
|
|
2547
|
-
"function" !== typeof listener &&
|
|
2548
|
-
((listener = resolveBlockedCycle(resolvedChunk, listener)),
|
|
2549
|
-
null !== listener)
|
|
2550
|
-
)
|
|
2551
|
-
return listener;
|
|
2552
|
-
}
|
|
2553
|
-
return null;
|
|
2554
|
-
}
|
|
2555
2541
|
function triggerErrorOnChunk(response, chunk, error) {
|
|
2556
2542
|
if ("pending" !== chunk.status && "blocked" !== chunk.status)
|
|
2557
2543
|
chunk.reason.error(error);
|
|
@@ -2575,57 +2561,25 @@
|
|
|
2575
2561
|
chunk.value = value;
|
|
2576
2562
|
chunk.reason = _defineProperty({ id: id }, RESPONSE_SYMBOL, response);
|
|
2577
2563
|
if (null !== resolveListeners)
|
|
2578
|
-
|
|
2564
|
+
switch ((initializeModelChunk(chunk), chunk.status)) {
|
|
2579
2565
|
case "fulfilled":
|
|
2580
|
-
wakeChunk(response, resolveListeners, chunk.value);
|
|
2566
|
+
wakeChunk(response, resolveListeners, chunk.value, chunk);
|
|
2581
2567
|
break;
|
|
2582
2568
|
case "blocked":
|
|
2583
|
-
for (value = 0; value < resolveListeners.length; value++)
|
|
2584
|
-
if (
|
|
2585
|
-
((id = resolveListeners[value]), "function" !== typeof id)
|
|
2586
|
-
) {
|
|
2587
|
-
var cyclicHandler = resolveBlockedCycle(chunk, id);
|
|
2588
|
-
if (null !== cyclicHandler)
|
|
2589
|
-
switch (
|
|
2590
|
-
(fulfillReference(response, id, cyclicHandler.value),
|
|
2591
|
-
resolveListeners.splice(value, 1),
|
|
2592
|
-
value--,
|
|
2593
|
-
null !== rejectListeners &&
|
|
2594
|
-
((id = rejectListeners.indexOf(id)),
|
|
2595
|
-
-1 !== id && rejectListeners.splice(id, 1)),
|
|
2596
|
-
chunk.status)
|
|
2597
|
-
) {
|
|
2598
|
-
case "fulfilled":
|
|
2599
|
-
wakeChunk(response, resolveListeners, chunk.value);
|
|
2600
|
-
break a;
|
|
2601
|
-
case "rejected":
|
|
2602
|
-
null !== rejectListeners &&
|
|
2603
|
-
rejectChunk(response, rejectListeners, chunk.reason);
|
|
2604
|
-
break a;
|
|
2605
|
-
}
|
|
2606
|
-
}
|
|
2607
2569
|
case "pending":
|
|
2608
2570
|
if (chunk.value)
|
|
2609
|
-
for (
|
|
2610
|
-
|
|
2611
|
-
response < resolveListeners.length;
|
|
2612
|
-
response++
|
|
2613
|
-
)
|
|
2614
|
-
chunk.value.push(resolveListeners[response]);
|
|
2571
|
+
for (value = 0; value < resolveListeners.length; value++)
|
|
2572
|
+
chunk.value.push(resolveListeners[value]);
|
|
2615
2573
|
else chunk.value = resolveListeners;
|
|
2616
2574
|
if (chunk.reason) {
|
|
2617
2575
|
if (rejectListeners)
|
|
2618
|
-
for (
|
|
2619
|
-
|
|
2620
|
-
resolveListeners < rejectListeners.length;
|
|
2621
|
-
resolveListeners++
|
|
2622
|
-
)
|
|
2623
|
-
chunk.reason.push(rejectListeners[resolveListeners]);
|
|
2576
|
+
for (value = 0; value < rejectListeners.length; value++)
|
|
2577
|
+
chunk.reason.push(rejectListeners[value]);
|
|
2624
2578
|
} else chunk.reason = rejectListeners;
|
|
2625
2579
|
break;
|
|
2626
2580
|
case "rejected":
|
|
2627
2581
|
rejectListeners &&
|
|
2628
|
-
|
|
2582
|
+
rejectChunk(response, rejectListeners, chunk.reason);
|
|
2629
2583
|
}
|
|
2630
2584
|
}
|
|
2631
2585
|
}
|
|
@@ -2649,15 +2603,51 @@
|
|
|
2649
2603
|
);
|
|
2650
2604
|
}
|
|
2651
2605
|
function loadServerReference$1(response, metaData, parentObject, key) {
|
|
2606
|
+
function reject(error) {
|
|
2607
|
+
var rejectListeners = blockedPromise.reason,
|
|
2608
|
+
erroredPromise = blockedPromise;
|
|
2609
|
+
erroredPromise.status = "rejected";
|
|
2610
|
+
erroredPromise.value = null;
|
|
2611
|
+
erroredPromise.reason = error;
|
|
2612
|
+
null !== rejectListeners &&
|
|
2613
|
+
rejectChunk(response, rejectListeners, error);
|
|
2614
|
+
rejectReference(response, handler, error);
|
|
2615
|
+
}
|
|
2652
2616
|
var id = metaData.id;
|
|
2653
2617
|
if ("string" !== typeof id || "then" === key) return null;
|
|
2618
|
+
var cachedPromise = metaData.$$promise;
|
|
2619
|
+
if (void 0 !== cachedPromise) {
|
|
2620
|
+
if ("fulfilled" === cachedPromise.status)
|
|
2621
|
+
return (
|
|
2622
|
+
(cachedPromise = cachedPromise.value),
|
|
2623
|
+
"__proto__" === key ? null : (parentObject[key] = cachedPromise)
|
|
2624
|
+
);
|
|
2625
|
+
initializingHandler
|
|
2626
|
+
? ((id = initializingHandler), id.deps++)
|
|
2627
|
+
: (id = initializingHandler =
|
|
2628
|
+
{ chunk: null, value: null, reason: null, deps: 1, errored: !1 });
|
|
2629
|
+
cachedPromise.then(
|
|
2630
|
+
resolveReference.bind(null, response, id, parentObject, key),
|
|
2631
|
+
rejectReference.bind(null, response, id)
|
|
2632
|
+
);
|
|
2633
|
+
return null;
|
|
2634
|
+
}
|
|
2635
|
+
var blockedPromise = new ReactPromise("blocked", null, null);
|
|
2636
|
+
metaData.$$promise = blockedPromise;
|
|
2654
2637
|
var serverReference = resolveServerReference(response._bundlerConfig, id);
|
|
2655
|
-
|
|
2656
|
-
|
|
2657
|
-
|
|
2658
|
-
|
|
2659
|
-
else if (
|
|
2660
|
-
|
|
2638
|
+
cachedPromise = metaData.bound;
|
|
2639
|
+
if ((id = preloadModule(serverReference)))
|
|
2640
|
+
cachedPromise instanceof ReactPromise &&
|
|
2641
|
+
(id = Promise.all([id, cachedPromise]));
|
|
2642
|
+
else if (cachedPromise instanceof ReactPromise)
|
|
2643
|
+
id = Promise.resolve(cachedPromise);
|
|
2644
|
+
else
|
|
2645
|
+
return (
|
|
2646
|
+
(cachedPromise = requireModule(serverReference)),
|
|
2647
|
+
(id = blockedPromise),
|
|
2648
|
+
(id.status = "fulfilled"),
|
|
2649
|
+
(id.value = cachedPromise)
|
|
2650
|
+
);
|
|
2661
2651
|
if (initializingHandler) {
|
|
2662
2652
|
var handler = initializingHandler;
|
|
2663
2653
|
handler.deps++;
|
|
@@ -2669,93 +2659,107 @@
|
|
|
2669
2659
|
deps: 1,
|
|
2670
2660
|
errored: !1
|
|
2671
2661
|
};
|
|
2672
|
-
|
|
2673
|
-
|
|
2674
|
-
|
|
2675
|
-
|
|
2676
|
-
|
|
2677
|
-
|
|
2678
|
-
|
|
2679
|
-
|
|
2680
|
-
|
|
2681
|
-
|
|
2682
|
-
|
|
2683
|
-
|
|
2662
|
+
id.then(function () {
|
|
2663
|
+
var resolvedValue = requireModule(serverReference);
|
|
2664
|
+
if (metaData.bound) {
|
|
2665
|
+
var promiseValue = metaData.bound.value;
|
|
2666
|
+
promiseValue = isArrayImpl(promiseValue) ? promiseValue.slice(0) : [];
|
|
2667
|
+
if (promiseValue.length > MAX_BOUND_ARGS) {
|
|
2668
|
+
reject(
|
|
2669
|
+
Error(
|
|
2670
|
+
"Server Function has too many bound arguments. Received " +
|
|
2671
|
+
promiseValue.length +
|
|
2672
|
+
" but the limit is " +
|
|
2673
|
+
MAX_BOUND_ARGS +
|
|
2674
|
+
"."
|
|
2675
|
+
)
|
|
2684
2676
|
);
|
|
2677
|
+
return;
|
|
2685
2678
|
}
|
|
2686
|
-
|
|
2687
|
-
|
|
2688
|
-
null === handler.value &&
|
|
2689
|
-
(handler.value = resolvedValue);
|
|
2690
|
-
handler.deps--;
|
|
2691
|
-
0 === handler.deps &&
|
|
2692
|
-
((resolvedValue = handler.chunk),
|
|
2693
|
-
null !== resolvedValue &&
|
|
2694
|
-
"blocked" === resolvedValue.status &&
|
|
2695
|
-
((promiseValue = resolvedValue.value),
|
|
2696
|
-
(resolvedValue.status = "fulfilled"),
|
|
2697
|
-
(resolvedValue.value = handler.value),
|
|
2698
|
-
(resolvedValue.reason = null),
|
|
2699
|
-
null !== promiseValue &&
|
|
2700
|
-
wakeChunk(response, promiseValue, handler.value)));
|
|
2701
|
-
},
|
|
2702
|
-
function (error) {
|
|
2703
|
-
if (!handler.errored) {
|
|
2704
|
-
handler.errored = !0;
|
|
2705
|
-
handler.value = null;
|
|
2706
|
-
handler.reason = error;
|
|
2707
|
-
var chunk = handler.chunk;
|
|
2708
|
-
null !== chunk &&
|
|
2709
|
-
"blocked" === chunk.status &&
|
|
2710
|
-
triggerErrorOnChunk(response, chunk, error);
|
|
2711
|
-
}
|
|
2679
|
+
promiseValue.unshift(null);
|
|
2680
|
+
resolvedValue = resolvedValue.bind.apply(resolvedValue, promiseValue);
|
|
2712
2681
|
}
|
|
2713
|
-
|
|
2682
|
+
promiseValue = blockedPromise.value;
|
|
2683
|
+
var initializedPromise = blockedPromise;
|
|
2684
|
+
initializedPromise.status = "fulfilled";
|
|
2685
|
+
initializedPromise.value = resolvedValue;
|
|
2686
|
+
initializedPromise.reason = null;
|
|
2687
|
+
null !== promiseValue &&
|
|
2688
|
+
wakeChunk(response, promiseValue, resolvedValue, initializedPromise);
|
|
2689
|
+
resolveReference(response, handler, parentObject, key, resolvedValue);
|
|
2690
|
+
}, reject);
|
|
2714
2691
|
return null;
|
|
2715
2692
|
}
|
|
2716
|
-
function reviveModel(
|
|
2693
|
+
function reviveModel(
|
|
2694
|
+
response,
|
|
2695
|
+
parentObj,
|
|
2696
|
+
parentKey,
|
|
2697
|
+
value,
|
|
2698
|
+
reference,
|
|
2699
|
+
arrayRoot
|
|
2700
|
+
) {
|
|
2717
2701
|
if ("string" === typeof value)
|
|
2718
2702
|
return parseModelString(
|
|
2719
2703
|
response,
|
|
2720
2704
|
parentObj,
|
|
2721
2705
|
parentKey,
|
|
2722
2706
|
value,
|
|
2723
|
-
reference
|
|
2707
|
+
reference,
|
|
2708
|
+
arrayRoot
|
|
2724
2709
|
);
|
|
2725
2710
|
if ("object" === typeof value && null !== value)
|
|
2726
2711
|
if (
|
|
2727
2712
|
(void 0 !== reference &&
|
|
2728
2713
|
void 0 !== response._temporaryReferences &&
|
|
2729
2714
|
response._temporaryReferences.set(value, reference),
|
|
2730
|
-
|
|
2731
|
-
)
|
|
2732
|
-
|
|
2733
|
-
|
|
2715
|
+
isArrayImpl(value))
|
|
2716
|
+
) {
|
|
2717
|
+
if (null === arrayRoot) {
|
|
2718
|
+
var childContext = { count: 0, fork: !1 };
|
|
2719
|
+
response._rootArrayContexts.set(value, childContext);
|
|
2720
|
+
} else childContext = arrayRoot;
|
|
2721
|
+
1 < value.length && (childContext.fork = !0);
|
|
2722
|
+
bumpArrayCount(childContext, value.length + 1, response);
|
|
2723
|
+
for (parentObj = 0; parentObj < value.length; parentObj++)
|
|
2724
|
+
value[parentObj] = reviveModel(
|
|
2734
2725
|
response,
|
|
2735
2726
|
value,
|
|
2736
|
-
"" +
|
|
2737
|
-
value[
|
|
2738
|
-
void 0 !== reference ? reference + ":" +
|
|
2727
|
+
"" + parentObj,
|
|
2728
|
+
value[parentObj],
|
|
2729
|
+
void 0 !== reference ? reference + ":" + parentObj : void 0,
|
|
2730
|
+
childContext
|
|
2739
2731
|
);
|
|
2740
|
-
else
|
|
2741
|
-
for (
|
|
2742
|
-
hasOwnProperty.call(value,
|
|
2743
|
-
(
|
|
2744
|
-
|
|
2745
|
-
|
|
2746
|
-
|
|
2747
|
-
|
|
2748
|
-
|
|
2749
|
-
|
|
2750
|
-
|
|
2751
|
-
|
|
2752
|
-
|
|
2753
|
-
|
|
2754
|
-
|
|
2755
|
-
|
|
2756
|
-
|
|
2732
|
+
} else
|
|
2733
|
+
for (childContext in value)
|
|
2734
|
+
hasOwnProperty.call(value, childContext) &&
|
|
2735
|
+
("__proto__" === childContext
|
|
2736
|
+
? delete value[childContext]
|
|
2737
|
+
: ((parentObj =
|
|
2738
|
+
void 0 !== reference && -1 === childContext.indexOf(":")
|
|
2739
|
+
? reference + ":" + childContext
|
|
2740
|
+
: void 0),
|
|
2741
|
+
(parentObj = reviveModel(
|
|
2742
|
+
response,
|
|
2743
|
+
value,
|
|
2744
|
+
childContext,
|
|
2745
|
+
value[childContext],
|
|
2746
|
+
parentObj,
|
|
2747
|
+
null
|
|
2748
|
+
)),
|
|
2749
|
+
void 0 !== parentObj
|
|
2750
|
+
? (value[childContext] = parentObj)
|
|
2751
|
+
: delete value[childContext]));
|
|
2757
2752
|
return value;
|
|
2758
2753
|
}
|
|
2754
|
+
function bumpArrayCount(arrayContext, slots, response) {
|
|
2755
|
+
if (
|
|
2756
|
+
(arrayContext.count += slots) > response._arraySizeLimit &&
|
|
2757
|
+
arrayContext.fork
|
|
2758
|
+
)
|
|
2759
|
+
throw Error(
|
|
2760
|
+
"Maximum array nesting exceeded. Large nested arrays can be dangerous. Try adding intermediate objects."
|
|
2761
|
+
);
|
|
2762
|
+
}
|
|
2759
2763
|
function initializeModelChunk(chunk) {
|
|
2760
2764
|
var prevHandler = initializingHandler;
|
|
2761
2765
|
initializingHandler = null;
|
|
@@ -2769,13 +2773,15 @@
|
|
|
2769
2773
|
chunk.value = null;
|
|
2770
2774
|
chunk.reason = null;
|
|
2771
2775
|
try {
|
|
2772
|
-
var rawModel = JSON.parse(resolvedModel)
|
|
2773
|
-
|
|
2776
|
+
var rawModel = JSON.parse(resolvedModel);
|
|
2777
|
+
resolvedModel = { count: 0, fork: !1 };
|
|
2778
|
+
var value = reviveModel(
|
|
2774
2779
|
response,
|
|
2775
2780
|
{ "": rawModel },
|
|
2776
2781
|
"",
|
|
2777
2782
|
rawModel,
|
|
2778
|
-
_chunk$reason
|
|
2783
|
+
_chunk$reason,
|
|
2784
|
+
resolvedModel
|
|
2779
2785
|
),
|
|
2780
2786
|
resolveListeners = chunk.value;
|
|
2781
2787
|
if (null !== resolveListeners)
|
|
@@ -2787,19 +2793,20 @@
|
|
|
2787
2793
|
var listener = resolveListeners[rawModel];
|
|
2788
2794
|
"function" === typeof listener
|
|
2789
2795
|
? listener(value)
|
|
2790
|
-
: fulfillReference(response, listener, value);
|
|
2796
|
+
: fulfillReference(response, listener, value, resolvedModel);
|
|
2791
2797
|
}
|
|
2792
2798
|
if (null !== initializingHandler) {
|
|
2793
2799
|
if (initializingHandler.errored) throw initializingHandler.reason;
|
|
2794
2800
|
if (0 < initializingHandler.deps) {
|
|
2795
2801
|
initializingHandler.value = value;
|
|
2802
|
+
initializingHandler.reason = resolvedModel;
|
|
2796
2803
|
initializingHandler.chunk = chunk;
|
|
2797
2804
|
return;
|
|
2798
2805
|
}
|
|
2799
2806
|
}
|
|
2800
2807
|
chunk.status = "fulfilled";
|
|
2801
2808
|
chunk.value = value;
|
|
2802
|
-
chunk.reason =
|
|
2809
|
+
chunk.reason = resolvedModel;
|
|
2803
2810
|
} catch (error) {
|
|
2804
2811
|
(chunk.status = "rejected"), (chunk.reason = error);
|
|
2805
2812
|
} finally {
|
|
@@ -2812,7 +2819,8 @@
|
|
|
2812
2819
|
? triggerErrorOnChunk(response, chunk, error)
|
|
2813
2820
|
: "fulfilled" === chunk.status &&
|
|
2814
2821
|
null !== chunk.reason &&
|
|
2815
|
-
chunk.reason
|
|
2822
|
+
((chunk = chunk.reason),
|
|
2823
|
+
"function" === typeof chunk.error && chunk.error(error));
|
|
2816
2824
|
});
|
|
2817
2825
|
}
|
|
2818
2826
|
function getChunk(response, id) {
|
|
@@ -2831,40 +2839,74 @@
|
|
|
2831
2839
|
chunks.set(id, chunk));
|
|
2832
2840
|
return chunk;
|
|
2833
2841
|
}
|
|
2834
|
-
function fulfillReference(response, reference, value) {
|
|
2842
|
+
function fulfillReference(response, reference, value, arrayRoot) {
|
|
2835
2843
|
var handler = reference.handler,
|
|
2836
2844
|
parentObject = reference.parentObject,
|
|
2837
2845
|
key = reference.key,
|
|
2838
2846
|
map = reference.map,
|
|
2839
2847
|
path = reference.path;
|
|
2840
2848
|
try {
|
|
2841
|
-
for (
|
|
2849
|
+
for (
|
|
2850
|
+
var localLength = 0,
|
|
2851
|
+
rootArrayContexts = response._rootArrayContexts,
|
|
2852
|
+
i = 1;
|
|
2853
|
+
i < path.length;
|
|
2854
|
+
i++
|
|
2855
|
+
) {
|
|
2842
2856
|
var name = path[i];
|
|
2843
2857
|
if (
|
|
2844
2858
|
"object" !== typeof value ||
|
|
2845
|
-
|
|
2846
|
-
value
|
|
2859
|
+
null === value ||
|
|
2860
|
+
(getPrototypeOf(value) !== ObjectPrototype &&
|
|
2861
|
+
getPrototypeOf(value) !== ArrayPrototype) ||
|
|
2862
|
+
!hasOwnProperty.call(value, name)
|
|
2847
2863
|
)
|
|
2848
2864
|
throw Error("Invalid reference.");
|
|
2849
2865
|
value = value[name];
|
|
2866
|
+
if (isArrayImpl(value))
|
|
2867
|
+
(localLength = 0),
|
|
2868
|
+
(arrayRoot = rootArrayContexts.get(value) || arrayRoot);
|
|
2869
|
+
else if (((arrayRoot = null), "string" === typeof value))
|
|
2870
|
+
localLength = value.length;
|
|
2871
|
+
else if ("bigint" === typeof value) {
|
|
2872
|
+
var n = Math.abs(Number(value));
|
|
2873
|
+
localLength = 0 === n ? 1 : Math.floor(Math.log10(n)) + 1;
|
|
2874
|
+
} else localLength = ArrayBuffer.isView(value) ? value.byteLength : 0;
|
|
2850
2875
|
}
|
|
2851
|
-
var
|
|
2852
|
-
|
|
2853
|
-
|
|
2876
|
+
var resolvedValue = map(response, value, parentObject, key);
|
|
2877
|
+
var referenceArrayRoot = reference.arrayRoot;
|
|
2878
|
+
null !== referenceArrayRoot &&
|
|
2879
|
+
(null !== arrayRoot
|
|
2880
|
+
? (arrayRoot.fork && (referenceArrayRoot.fork = !0),
|
|
2881
|
+
bumpArrayCount(referenceArrayRoot, arrayRoot.count, response))
|
|
2882
|
+
: 0 < localLength &&
|
|
2883
|
+
bumpArrayCount(referenceArrayRoot, localLength, response));
|
|
2854
2884
|
} catch (error) {
|
|
2855
|
-
rejectReference(response,
|
|
2885
|
+
rejectReference(response, handler, error);
|
|
2856
2886
|
return;
|
|
2857
2887
|
}
|
|
2888
|
+
resolveReference(response, handler, parentObject, key, resolvedValue);
|
|
2889
|
+
}
|
|
2890
|
+
function resolveReference(
|
|
2891
|
+
response,
|
|
2892
|
+
handler,
|
|
2893
|
+
parentObject,
|
|
2894
|
+
key,
|
|
2895
|
+
resolvedValue
|
|
2896
|
+
) {
|
|
2897
|
+
"__proto__" !== key && (parentObject[key] = resolvedValue);
|
|
2898
|
+
"" === key && null === handler.value && (handler.value = resolvedValue);
|
|
2858
2899
|
handler.deps--;
|
|
2859
2900
|
0 === handler.deps &&
|
|
2860
|
-
((
|
|
2861
|
-
null !==
|
|
2862
|
-
"blocked" ===
|
|
2863
|
-
((
|
|
2864
|
-
(
|
|
2865
|
-
(
|
|
2866
|
-
(
|
|
2867
|
-
null !==
|
|
2901
|
+
((parentObject = handler.chunk),
|
|
2902
|
+
null !== parentObject &&
|
|
2903
|
+
"blocked" === parentObject.status &&
|
|
2904
|
+
((key = parentObject.value),
|
|
2905
|
+
(parentObject.status = "fulfilled"),
|
|
2906
|
+
(parentObject.value = handler.value),
|
|
2907
|
+
(parentObject.reason = handler.reason),
|
|
2908
|
+
null !== key &&
|
|
2909
|
+
wakeChunk(response, key, handler.value, parentObject)));
|
|
2868
2910
|
}
|
|
2869
2911
|
function rejectReference(response, handler, error) {
|
|
2870
2912
|
handler.errored ||
|
|
@@ -2876,29 +2918,66 @@
|
|
|
2876
2918
|
"blocked" === handler.status &&
|
|
2877
2919
|
triggerErrorOnChunk(response, handler, error));
|
|
2878
2920
|
}
|
|
2879
|
-
function getOutlinedModel(
|
|
2921
|
+
function getOutlinedModel(
|
|
2922
|
+
response,
|
|
2923
|
+
reference,
|
|
2924
|
+
parentObject,
|
|
2925
|
+
key,
|
|
2926
|
+
referenceArrayRoot,
|
|
2927
|
+
map
|
|
2928
|
+
) {
|
|
2880
2929
|
reference = reference.split(":");
|
|
2881
|
-
var id = parseInt(reference[0], 16)
|
|
2882
|
-
|
|
2883
|
-
switch (
|
|
2930
|
+
var id = parseInt(reference[0], 16),
|
|
2931
|
+
chunk = getChunk(response, id);
|
|
2932
|
+
switch (chunk.status) {
|
|
2884
2933
|
case "resolved_model":
|
|
2885
|
-
initializeModelChunk(
|
|
2934
|
+
initializeModelChunk(chunk);
|
|
2886
2935
|
}
|
|
2887
|
-
switch (
|
|
2936
|
+
switch (chunk.status) {
|
|
2888
2937
|
case "fulfilled":
|
|
2889
|
-
id =
|
|
2890
|
-
|
|
2891
|
-
|
|
2938
|
+
id = chunk.value;
|
|
2939
|
+
chunk = chunk.reason;
|
|
2940
|
+
for (
|
|
2941
|
+
var localLength = 0,
|
|
2942
|
+
rootArrayContexts = response._rootArrayContexts,
|
|
2943
|
+
i = 1;
|
|
2944
|
+
i < reference.length;
|
|
2945
|
+
i++
|
|
2946
|
+
) {
|
|
2947
|
+
localLength = reference[i];
|
|
2892
2948
|
if (
|
|
2893
2949
|
"object" !== typeof id ||
|
|
2894
|
-
|
|
2895
|
-
id
|
|
2950
|
+
null === id ||
|
|
2951
|
+
(getPrototypeOf(id) !== ObjectPrototype &&
|
|
2952
|
+
getPrototypeOf(id) !== ArrayPrototype) ||
|
|
2953
|
+
!hasOwnProperty.call(id, localLength)
|
|
2896
2954
|
)
|
|
2897
2955
|
throw Error("Invalid reference.");
|
|
2898
|
-
id = id[
|
|
2956
|
+
id = id[localLength];
|
|
2957
|
+
isArrayImpl(id)
|
|
2958
|
+
? ((localLength = 0),
|
|
2959
|
+
(chunk = rootArrayContexts.get(id) || chunk))
|
|
2960
|
+
: ((chunk = null),
|
|
2961
|
+
"string" === typeof id
|
|
2962
|
+
? (localLength = id.length)
|
|
2963
|
+
: "bigint" === typeof id
|
|
2964
|
+
? ((localLength = Math.abs(Number(id))),
|
|
2965
|
+
(localLength =
|
|
2966
|
+
0 === localLength
|
|
2967
|
+
? 1
|
|
2968
|
+
: Math.floor(Math.log10(localLength)) + 1))
|
|
2969
|
+
: (localLength = ArrayBuffer.isView(id)
|
|
2970
|
+
? id.byteLength
|
|
2971
|
+
: 0));
|
|
2899
2972
|
}
|
|
2900
|
-
|
|
2901
|
-
|
|
2973
|
+
parentObject = map(response, id, parentObject, key);
|
|
2974
|
+
null !== referenceArrayRoot &&
|
|
2975
|
+
(null !== chunk
|
|
2976
|
+
? (chunk.fork && (referenceArrayRoot.fork = !0),
|
|
2977
|
+
bumpArrayCount(referenceArrayRoot, chunk.count, response))
|
|
2978
|
+
: 0 < localLength &&
|
|
2979
|
+
bumpArrayCount(referenceArrayRoot, localLength, response));
|
|
2980
|
+
return parentObject;
|
|
2902
2981
|
case "blocked":
|
|
2903
2982
|
return (
|
|
2904
2983
|
initializingHandler
|
|
@@ -2911,31 +2990,34 @@
|
|
|
2911
2990
|
deps: 1,
|
|
2912
2991
|
errored: !1
|
|
2913
2992
|
}),
|
|
2914
|
-
(
|
|
2993
|
+
(referenceArrayRoot = {
|
|
2915
2994
|
handler: response,
|
|
2916
2995
|
parentObject: parentObject,
|
|
2917
2996
|
key: key,
|
|
2918
2997
|
map: map,
|
|
2919
|
-
path: reference
|
|
2998
|
+
path: reference,
|
|
2999
|
+
arrayRoot: referenceArrayRoot
|
|
2920
3000
|
}),
|
|
2921
|
-
null ===
|
|
2922
|
-
? (
|
|
2923
|
-
:
|
|
2924
|
-
null ===
|
|
2925
|
-
? (
|
|
2926
|
-
:
|
|
3001
|
+
null === chunk.value
|
|
3002
|
+
? (chunk.value = [referenceArrayRoot])
|
|
3003
|
+
: chunk.value.push(referenceArrayRoot),
|
|
3004
|
+
null === chunk.reason
|
|
3005
|
+
? (chunk.reason = [referenceArrayRoot])
|
|
3006
|
+
: chunk.reason.push(referenceArrayRoot),
|
|
2927
3007
|
null
|
|
2928
3008
|
);
|
|
3009
|
+
case "pending":
|
|
3010
|
+
throw Error("Invalid forward reference.");
|
|
2929
3011
|
default:
|
|
2930
3012
|
return (
|
|
2931
3013
|
initializingHandler
|
|
2932
3014
|
? ((initializingHandler.errored = !0),
|
|
2933
3015
|
(initializingHandler.value = null),
|
|
2934
|
-
(initializingHandler.reason =
|
|
3016
|
+
(initializingHandler.reason = chunk.reason))
|
|
2935
3017
|
: (initializingHandler = {
|
|
2936
3018
|
chunk: null,
|
|
2937
3019
|
value: null,
|
|
2938
|
-
reason:
|
|
3020
|
+
reason: chunk.reason,
|
|
2939
3021
|
deps: 0,
|
|
2940
3022
|
errored: !0
|
|
2941
3023
|
}),
|
|
@@ -2944,12 +3026,21 @@
|
|
|
2944
3026
|
}
|
|
2945
3027
|
}
|
|
2946
3028
|
function createMap(response, model) {
|
|
3029
|
+
if (!isArrayImpl(model)) throw Error("Invalid Map initializer.");
|
|
3030
|
+
if (!0 === model.$$consumed) throw Error("Already initialized Map.");
|
|
3031
|
+
model.$$consumed = !0;
|
|
2947
3032
|
return new Map(model);
|
|
2948
3033
|
}
|
|
2949
3034
|
function createSet(response, model) {
|
|
3035
|
+
if (!isArrayImpl(model)) throw Error("Invalid Set initializer.");
|
|
3036
|
+
if (!0 === model.$$consumed) throw Error("Already initialized Set.");
|
|
3037
|
+
model.$$consumed = !0;
|
|
2950
3038
|
return new Set(model);
|
|
2951
3039
|
}
|
|
2952
3040
|
function extractIterator(response, model) {
|
|
3041
|
+
if (!isArrayImpl(model)) throw Error("Invalid Iterator initializer.");
|
|
3042
|
+
if (!0 === model.$$consumed) throw Error("Already initialized Iterator.");
|
|
3043
|
+
model.$$consumed = !0;
|
|
2953
3044
|
return model[Symbol.iterator]();
|
|
2954
3045
|
}
|
|
2955
3046
|
function createModel(response, model, parentObject, key) {
|
|
@@ -2961,13 +3052,34 @@
|
|
|
2961
3052
|
constructor,
|
|
2962
3053
|
bytesPerElement,
|
|
2963
3054
|
parentObject,
|
|
2964
|
-
parentKey
|
|
3055
|
+
parentKey,
|
|
3056
|
+
referenceArrayRoot
|
|
2965
3057
|
) {
|
|
3058
|
+
function reject(error) {
|
|
3059
|
+
if (!handler.errored) {
|
|
3060
|
+
handler.errored = !0;
|
|
3061
|
+
handler.value = null;
|
|
3062
|
+
handler.reason = error;
|
|
3063
|
+
var chunk = handler.chunk;
|
|
3064
|
+
null !== chunk &&
|
|
3065
|
+
"blocked" === chunk.status &&
|
|
3066
|
+
triggerErrorOnChunk(response, chunk, error);
|
|
3067
|
+
}
|
|
3068
|
+
}
|
|
2966
3069
|
reference = parseInt(reference.slice(2), 16);
|
|
2967
|
-
|
|
2968
|
-
|
|
3070
|
+
var key = response._prefix + reference;
|
|
3071
|
+
bytesPerElement = response._chunks;
|
|
3072
|
+
if (bytesPerElement.has(reference))
|
|
2969
3073
|
throw Error("Already initialized typed array.");
|
|
2970
|
-
|
|
3074
|
+
bytesPerElement.set(
|
|
3075
|
+
reference,
|
|
3076
|
+
new ReactPromise(
|
|
3077
|
+
"rejected",
|
|
3078
|
+
null,
|
|
3079
|
+
Error("Already initialized typed array.")
|
|
3080
|
+
)
|
|
3081
|
+
);
|
|
3082
|
+
reference = response._formData.get(key).arrayBuffer();
|
|
2971
3083
|
if (initializingHandler) {
|
|
2972
3084
|
var handler = initializingHandler;
|
|
2973
3085
|
handler.deps++;
|
|
@@ -2979,40 +3091,32 @@
|
|
|
2979
3091
|
deps: 1,
|
|
2980
3092
|
errored: !1
|
|
2981
3093
|
};
|
|
2982
|
-
reference.then(
|
|
2983
|
-
|
|
2984
|
-
|
|
3094
|
+
reference.then(function (buffer) {
|
|
3095
|
+
try {
|
|
3096
|
+
null !== referenceArrayRoot &&
|
|
3097
|
+
bumpArrayCount(referenceArrayRoot, buffer.byteLength, response);
|
|
3098
|
+
var resolvedValue =
|
|
2985
3099
|
constructor === ArrayBuffer ? buffer : new constructor(buffer);
|
|
2986
|
-
parentObject[parentKey] =
|
|
3100
|
+
"__proto__" !== key && (parentObject[parentKey] = resolvedValue);
|
|
2987
3101
|
"" === parentKey &&
|
|
2988
3102
|
null === handler.value &&
|
|
2989
|
-
(handler.value =
|
|
2990
|
-
|
|
2991
|
-
|
|
2992
|
-
|
|
2993
|
-
((buffer = handler.chunk),
|
|
2994
|
-
null !== buffer && "blocked" === buffer.status)
|
|
2995
|
-
) {
|
|
2996
|
-
var resolveListeners = buffer.value;
|
|
2997
|
-
buffer.status = "fulfilled";
|
|
2998
|
-
buffer.value = handler.value;
|
|
2999
|
-
buffer.reason = null;
|
|
3000
|
-
null !== resolveListeners &&
|
|
3001
|
-
wakeChunk(response, resolveListeners, handler.value);
|
|
3002
|
-
}
|
|
3003
|
-
},
|
|
3004
|
-
function (error) {
|
|
3005
|
-
if (!handler.errored) {
|
|
3006
|
-
handler.errored = !0;
|
|
3007
|
-
handler.value = null;
|
|
3008
|
-
handler.reason = error;
|
|
3009
|
-
var chunk = handler.chunk;
|
|
3010
|
-
null !== chunk &&
|
|
3011
|
-
"blocked" === chunk.status &&
|
|
3012
|
-
triggerErrorOnChunk(response, chunk, error);
|
|
3013
|
-
}
|
|
3103
|
+
(handler.value = resolvedValue);
|
|
3104
|
+
} catch (x) {
|
|
3105
|
+
reject(x);
|
|
3106
|
+
return;
|
|
3014
3107
|
}
|
|
3015
|
-
|
|
3108
|
+
handler.deps--;
|
|
3109
|
+
0 === handler.deps &&
|
|
3110
|
+
((buffer = handler.chunk),
|
|
3111
|
+
null !== buffer &&
|
|
3112
|
+
"blocked" === buffer.status &&
|
|
3113
|
+
((resolvedValue = buffer.value),
|
|
3114
|
+
(buffer.status = "fulfilled"),
|
|
3115
|
+
(buffer.value = handler.value),
|
|
3116
|
+
(buffer.reason = null),
|
|
3117
|
+
null !== resolvedValue &&
|
|
3118
|
+
wakeChunk(response, resolvedValue, handler.value, buffer)));
|
|
3119
|
+
}, reject);
|
|
3016
3120
|
return null;
|
|
3017
3121
|
}
|
|
3018
3122
|
function resolveStream(response, id, stream, controller) {
|
|
@@ -3030,90 +3134,78 @@
|
|
|
3030
3134
|
: controller.enqueueModel(chunks));
|
|
3031
3135
|
}
|
|
3032
3136
|
function parseReadableStream(response, reference, type) {
|
|
3137
|
+
function enqueue(value) {
|
|
3138
|
+
"bytes" !== type || ArrayBuffer.isView(value)
|
|
3139
|
+
? controller.enqueue(value)
|
|
3140
|
+
: flightController.error(Error("Invalid data for bytes stream."));
|
|
3141
|
+
}
|
|
3033
3142
|
reference = parseInt(reference.slice(2), 16);
|
|
3034
3143
|
if (response._chunks.has(reference))
|
|
3035
3144
|
throw Error("Already initialized stream.");
|
|
3036
3145
|
var controller = null,
|
|
3037
|
-
closed = !1
|
|
3038
|
-
|
|
3039
|
-
|
|
3040
|
-
|
|
3041
|
-
|
|
3042
|
-
}
|
|
3043
|
-
});
|
|
3044
|
-
var previousBlockedChunk = null;
|
|
3045
|
-
resolveStream(response, reference, type, {
|
|
3046
|
-
enqueueModel: function (json) {
|
|
3047
|
-
if (null === previousBlockedChunk) {
|
|
3048
|
-
var chunk = new ReactPromise(
|
|
3049
|
-
"resolved_model",
|
|
3050
|
-
json,
|
|
3051
|
-
_defineProperty({ id: -1 }, RESPONSE_SYMBOL, response)
|
|
3052
|
-
);
|
|
3053
|
-
initializeModelChunk(chunk);
|
|
3054
|
-
"fulfilled" === chunk.status
|
|
3055
|
-
? controller.enqueue(chunk.value)
|
|
3056
|
-
: (chunk.then(
|
|
3057
|
-
function (v) {
|
|
3058
|
-
return controller.enqueue(v);
|
|
3059
|
-
},
|
|
3060
|
-
function (e) {
|
|
3061
|
-
return controller.error(e);
|
|
3062
|
-
}
|
|
3063
|
-
),
|
|
3064
|
-
(previousBlockedChunk = chunk));
|
|
3065
|
-
} else {
|
|
3066
|
-
chunk = previousBlockedChunk;
|
|
3067
|
-
var _chunk = new ReactPromise("pending", null, null);
|
|
3068
|
-
_chunk.then(
|
|
3069
|
-
function (v) {
|
|
3070
|
-
return controller.enqueue(v);
|
|
3071
|
-
},
|
|
3072
|
-
function (e) {
|
|
3073
|
-
return controller.error(e);
|
|
3074
|
-
}
|
|
3075
|
-
);
|
|
3076
|
-
previousBlockedChunk = _chunk;
|
|
3077
|
-
chunk.then(function () {
|
|
3078
|
-
previousBlockedChunk === _chunk && (previousBlockedChunk = null);
|
|
3079
|
-
resolveModelChunk(response, _chunk, json, -1);
|
|
3080
|
-
});
|
|
3146
|
+
closed = !1,
|
|
3147
|
+
stream = new ReadableStream({
|
|
3148
|
+
type: type,
|
|
3149
|
+
start: function (c) {
|
|
3150
|
+
controller = c;
|
|
3081
3151
|
}
|
|
3082
|
-
},
|
|
3083
|
-
|
|
3084
|
-
|
|
3085
|
-
|
|
3086
|
-
|
|
3087
|
-
|
|
3088
|
-
|
|
3089
|
-
|
|
3090
|
-
|
|
3091
|
-
|
|
3092
|
-
|
|
3093
|
-
|
|
3094
|
-
|
|
3095
|
-
|
|
3096
|
-
|
|
3097
|
-
|
|
3098
|
-
|
|
3099
|
-
|
|
3100
|
-
|
|
3101
|
-
previousBlockedChunk =
|
|
3102
|
-
|
|
3103
|
-
|
|
3152
|
+
}),
|
|
3153
|
+
previousBlockedChunk = null,
|
|
3154
|
+
flightController = {
|
|
3155
|
+
enqueueModel: function (json) {
|
|
3156
|
+
if (null === previousBlockedChunk) {
|
|
3157
|
+
var chunk = new ReactPromise(
|
|
3158
|
+
"resolved_model",
|
|
3159
|
+
json,
|
|
3160
|
+
_defineProperty({ id: -1 }, RESPONSE_SYMBOL, response)
|
|
3161
|
+
);
|
|
3162
|
+
initializeModelChunk(chunk);
|
|
3163
|
+
"fulfilled" === chunk.status
|
|
3164
|
+
? enqueue(chunk.value)
|
|
3165
|
+
: (chunk.then(enqueue, flightController.error),
|
|
3166
|
+
(previousBlockedChunk = chunk));
|
|
3167
|
+
} else {
|
|
3168
|
+
chunk = previousBlockedChunk;
|
|
3169
|
+
var _chunk = new ReactPromise("pending", null, null);
|
|
3170
|
+
_chunk.then(enqueue, flightController.error);
|
|
3171
|
+
previousBlockedChunk = _chunk;
|
|
3172
|
+
chunk.then(function () {
|
|
3173
|
+
previousBlockedChunk === _chunk &&
|
|
3174
|
+
(previousBlockedChunk = null);
|
|
3175
|
+
resolveModelChunk(response, _chunk, json, -1);
|
|
3104
3176
|
});
|
|
3105
3177
|
}
|
|
3106
|
-
|
|
3107
|
-
|
|
3108
|
-
|
|
3109
|
-
|
|
3110
|
-
|
|
3111
|
-
|
|
3178
|
+
},
|
|
3179
|
+
close: function () {
|
|
3180
|
+
if (!closed)
|
|
3181
|
+
if (((closed = !0), null === previousBlockedChunk))
|
|
3182
|
+
controller.close();
|
|
3183
|
+
else {
|
|
3184
|
+
var blockedChunk = previousBlockedChunk;
|
|
3185
|
+
previousBlockedChunk = null;
|
|
3186
|
+
blockedChunk.then(function () {
|
|
3187
|
+
return controller.close();
|
|
3188
|
+
});
|
|
3189
|
+
}
|
|
3190
|
+
},
|
|
3191
|
+
error: function (error) {
|
|
3192
|
+
if (!closed)
|
|
3193
|
+
if (((closed = !0), null === previousBlockedChunk))
|
|
3194
|
+
controller.error(error);
|
|
3195
|
+
else {
|
|
3196
|
+
var blockedChunk = previousBlockedChunk;
|
|
3197
|
+
previousBlockedChunk = null;
|
|
3198
|
+
blockedChunk.then(function () {
|
|
3199
|
+
return controller.error(error);
|
|
3200
|
+
});
|
|
3201
|
+
}
|
|
3202
|
+
}
|
|
3203
|
+
};
|
|
3204
|
+
resolveStream(response, reference, stream, flightController);
|
|
3205
|
+
return stream;
|
|
3112
3206
|
}
|
|
3113
|
-
function
|
|
3114
|
-
next =
|
|
3115
|
-
next[ASYNC_ITERATOR] = asyncIterator;
|
|
3116
|
-
return next;
|
|
3207
|
+
function FlightIterator(next) {
|
|
3208
|
+
this.next = next;
|
|
3117
3209
|
}
|
|
3118
3210
|
function parseAsyncIterable(response, reference, iterator) {
|
|
3119
3211
|
reference = parseInt(reference.slice(2), 16);
|
|
@@ -3124,7 +3216,7 @@
|
|
|
3124
3216
|
nextWriteIndex = 0,
|
|
3125
3217
|
iterable = _defineProperty({}, ASYNC_ITERATOR, function () {
|
|
3126
3218
|
var nextReadIndex = 0;
|
|
3127
|
-
return
|
|
3219
|
+
return new FlightIterator(function (arg) {
|
|
3128
3220
|
if (void 0 !== arg)
|
|
3129
3221
|
throw Error(
|
|
3130
3222
|
"Values cannot be passed to next() of AsyncIterables passed to Client Components."
|
|
@@ -3203,19 +3295,30 @@
|
|
|
3203
3295
|
});
|
|
3204
3296
|
return iterator;
|
|
3205
3297
|
}
|
|
3206
|
-
function parseModelString(response, obj, key, value, reference) {
|
|
3298
|
+
function parseModelString(response, obj, key, value, reference, arrayRoot) {
|
|
3207
3299
|
if ("$" === value[0]) {
|
|
3208
3300
|
switch (value[1]) {
|
|
3209
3301
|
case "$":
|
|
3210
|
-
return
|
|
3302
|
+
return (
|
|
3303
|
+
null !== arrayRoot &&
|
|
3304
|
+
bumpArrayCount(arrayRoot, value.length - 1, response),
|
|
3305
|
+
value.slice(1)
|
|
3306
|
+
);
|
|
3211
3307
|
case "@":
|
|
3212
3308
|
return (
|
|
3213
3309
|
(obj = parseInt(value.slice(2), 16)), getChunk(response, obj)
|
|
3214
3310
|
);
|
|
3215
3311
|
case "h":
|
|
3216
3312
|
return (
|
|
3217
|
-
(
|
|
3218
|
-
getOutlinedModel(
|
|
3313
|
+
(arrayRoot = value.slice(2)),
|
|
3314
|
+
getOutlinedModel(
|
|
3315
|
+
response,
|
|
3316
|
+
arrayRoot,
|
|
3317
|
+
obj,
|
|
3318
|
+
key,
|
|
3319
|
+
null,
|
|
3320
|
+
loadServerReference$1
|
|
3321
|
+
)
|
|
3219
3322
|
);
|
|
3220
3323
|
case "T":
|
|
3221
3324
|
if (
|
|
@@ -3231,27 +3334,44 @@
|
|
|
3231
3334
|
);
|
|
3232
3335
|
case "Q":
|
|
3233
3336
|
return (
|
|
3234
|
-
(
|
|
3235
|
-
getOutlinedModel(response,
|
|
3337
|
+
(arrayRoot = value.slice(2)),
|
|
3338
|
+
getOutlinedModel(response, arrayRoot, obj, key, null, createMap)
|
|
3236
3339
|
);
|
|
3237
3340
|
case "W":
|
|
3238
3341
|
return (
|
|
3239
|
-
(
|
|
3240
|
-
getOutlinedModel(response,
|
|
3342
|
+
(arrayRoot = value.slice(2)),
|
|
3343
|
+
getOutlinedModel(response, arrayRoot, obj, key, null, createSet)
|
|
3241
3344
|
);
|
|
3242
3345
|
case "K":
|
|
3243
3346
|
obj = value.slice(2);
|
|
3244
|
-
|
|
3245
|
-
|
|
3246
|
-
response._formData
|
|
3247
|
-
|
|
3248
|
-
|
|
3249
|
-
|
|
3250
|
-
|
|
3347
|
+
obj = response._prefix + obj + "_";
|
|
3348
|
+
key = new FormData();
|
|
3349
|
+
response = response._formData;
|
|
3350
|
+
arrayRoot = Array.from(response.keys());
|
|
3351
|
+
for (value = 0; value < arrayRoot.length; value++)
|
|
3352
|
+
if (((reference = arrayRoot[value]), reference.startsWith(obj))) {
|
|
3353
|
+
for (
|
|
3354
|
+
var entries = response.getAll(reference),
|
|
3355
|
+
newKey = reference.slice(obj.length),
|
|
3356
|
+
j = 0;
|
|
3357
|
+
j < entries.length;
|
|
3358
|
+
j++
|
|
3359
|
+
)
|
|
3360
|
+
key.append(newKey, entries[j]);
|
|
3361
|
+
response.delete(reference);
|
|
3362
|
+
}
|
|
3363
|
+
return key;
|
|
3251
3364
|
case "i":
|
|
3252
3365
|
return (
|
|
3253
|
-
(
|
|
3254
|
-
getOutlinedModel(
|
|
3366
|
+
(arrayRoot = value.slice(2)),
|
|
3367
|
+
getOutlinedModel(
|
|
3368
|
+
response,
|
|
3369
|
+
arrayRoot,
|
|
3370
|
+
obj,
|
|
3371
|
+
key,
|
|
3372
|
+
null,
|
|
3373
|
+
extractIterator
|
|
3374
|
+
)
|
|
3255
3375
|
);
|
|
3256
3376
|
case "I":
|
|
3257
3377
|
return Infinity;
|
|
@@ -3264,15 +3384,50 @@
|
|
|
3264
3384
|
case "D":
|
|
3265
3385
|
return new Date(Date.parse(value.slice(2)));
|
|
3266
3386
|
case "n":
|
|
3267
|
-
|
|
3387
|
+
obj = value.slice(2);
|
|
3388
|
+
if (obj.length > MAX_BIGINT_DIGITS)
|
|
3389
|
+
throw Error(
|
|
3390
|
+
"BigInt is too large. Received " +
|
|
3391
|
+
obj.length +
|
|
3392
|
+
" digits but the limit is " +
|
|
3393
|
+
MAX_BIGINT_DIGITS +
|
|
3394
|
+
"."
|
|
3395
|
+
);
|
|
3396
|
+
null !== arrayRoot &&
|
|
3397
|
+
bumpArrayCount(arrayRoot, obj.length, response);
|
|
3398
|
+
return BigInt(obj);
|
|
3268
3399
|
}
|
|
3269
3400
|
switch (value[1]) {
|
|
3270
3401
|
case "A":
|
|
3271
|
-
return parseTypedArray(
|
|
3402
|
+
return parseTypedArray(
|
|
3403
|
+
response,
|
|
3404
|
+
value,
|
|
3405
|
+
ArrayBuffer,
|
|
3406
|
+
1,
|
|
3407
|
+
obj,
|
|
3408
|
+
key,
|
|
3409
|
+
arrayRoot
|
|
3410
|
+
);
|
|
3272
3411
|
case "O":
|
|
3273
|
-
return parseTypedArray(
|
|
3412
|
+
return parseTypedArray(
|
|
3413
|
+
response,
|
|
3414
|
+
value,
|
|
3415
|
+
Int8Array,
|
|
3416
|
+
1,
|
|
3417
|
+
obj,
|
|
3418
|
+
key,
|
|
3419
|
+
arrayRoot
|
|
3420
|
+
);
|
|
3274
3421
|
case "o":
|
|
3275
|
-
return parseTypedArray(
|
|
3422
|
+
return parseTypedArray(
|
|
3423
|
+
response,
|
|
3424
|
+
value,
|
|
3425
|
+
Uint8Array,
|
|
3426
|
+
1,
|
|
3427
|
+
obj,
|
|
3428
|
+
key,
|
|
3429
|
+
arrayRoot
|
|
3430
|
+
);
|
|
3276
3431
|
case "U":
|
|
3277
3432
|
return parseTypedArray(
|
|
3278
3433
|
response,
|
|
@@ -3280,22 +3435,79 @@
|
|
|
3280
3435
|
Uint8ClampedArray,
|
|
3281
3436
|
1,
|
|
3282
3437
|
obj,
|
|
3283
|
-
key
|
|
3438
|
+
key,
|
|
3439
|
+
arrayRoot
|
|
3284
3440
|
);
|
|
3285
3441
|
case "S":
|
|
3286
|
-
return parseTypedArray(
|
|
3442
|
+
return parseTypedArray(
|
|
3443
|
+
response,
|
|
3444
|
+
value,
|
|
3445
|
+
Int16Array,
|
|
3446
|
+
2,
|
|
3447
|
+
obj,
|
|
3448
|
+
key,
|
|
3449
|
+
arrayRoot
|
|
3450
|
+
);
|
|
3287
3451
|
case "s":
|
|
3288
|
-
return parseTypedArray(
|
|
3452
|
+
return parseTypedArray(
|
|
3453
|
+
response,
|
|
3454
|
+
value,
|
|
3455
|
+
Uint16Array,
|
|
3456
|
+
2,
|
|
3457
|
+
obj,
|
|
3458
|
+
key,
|
|
3459
|
+
arrayRoot
|
|
3460
|
+
);
|
|
3289
3461
|
case "L":
|
|
3290
|
-
return parseTypedArray(
|
|
3462
|
+
return parseTypedArray(
|
|
3463
|
+
response,
|
|
3464
|
+
value,
|
|
3465
|
+
Int32Array,
|
|
3466
|
+
4,
|
|
3467
|
+
obj,
|
|
3468
|
+
key,
|
|
3469
|
+
arrayRoot
|
|
3470
|
+
);
|
|
3291
3471
|
case "l":
|
|
3292
|
-
return parseTypedArray(
|
|
3472
|
+
return parseTypedArray(
|
|
3473
|
+
response,
|
|
3474
|
+
value,
|
|
3475
|
+
Uint32Array,
|
|
3476
|
+
4,
|
|
3477
|
+
obj,
|
|
3478
|
+
key,
|
|
3479
|
+
arrayRoot
|
|
3480
|
+
);
|
|
3293
3481
|
case "G":
|
|
3294
|
-
return parseTypedArray(
|
|
3482
|
+
return parseTypedArray(
|
|
3483
|
+
response,
|
|
3484
|
+
value,
|
|
3485
|
+
Float32Array,
|
|
3486
|
+
4,
|
|
3487
|
+
obj,
|
|
3488
|
+
key,
|
|
3489
|
+
arrayRoot
|
|
3490
|
+
);
|
|
3295
3491
|
case "g":
|
|
3296
|
-
return parseTypedArray(
|
|
3492
|
+
return parseTypedArray(
|
|
3493
|
+
response,
|
|
3494
|
+
value,
|
|
3495
|
+
Float64Array,
|
|
3496
|
+
8,
|
|
3497
|
+
obj,
|
|
3498
|
+
key,
|
|
3499
|
+
arrayRoot
|
|
3500
|
+
);
|
|
3297
3501
|
case "M":
|
|
3298
|
-
return parseTypedArray(
|
|
3502
|
+
return parseTypedArray(
|
|
3503
|
+
response,
|
|
3504
|
+
value,
|
|
3505
|
+
BigInt64Array,
|
|
3506
|
+
8,
|
|
3507
|
+
obj,
|
|
3508
|
+
key,
|
|
3509
|
+
arrayRoot
|
|
3510
|
+
);
|
|
3299
3511
|
case "m":
|
|
3300
3512
|
return parseTypedArray(
|
|
3301
3513
|
response,
|
|
@@ -3303,10 +3515,19 @@
|
|
|
3303
3515
|
BigUint64Array,
|
|
3304
3516
|
8,
|
|
3305
3517
|
obj,
|
|
3306
|
-
key
|
|
3518
|
+
key,
|
|
3519
|
+
arrayRoot
|
|
3307
3520
|
);
|
|
3308
3521
|
case "V":
|
|
3309
|
-
return parseTypedArray(
|
|
3522
|
+
return parseTypedArray(
|
|
3523
|
+
response,
|
|
3524
|
+
value,
|
|
3525
|
+
DataView,
|
|
3526
|
+
1,
|
|
3527
|
+
obj,
|
|
3528
|
+
key,
|
|
3529
|
+
arrayRoot
|
|
3530
|
+
);
|
|
3310
3531
|
case "B":
|
|
3311
3532
|
return (
|
|
3312
3533
|
(obj = parseInt(value.slice(2), 16)),
|
|
@@ -3324,8 +3545,16 @@
|
|
|
3324
3545
|
return parseAsyncIterable(response, value, !0);
|
|
3325
3546
|
}
|
|
3326
3547
|
value = value.slice(1);
|
|
3327
|
-
return getOutlinedModel(
|
|
3548
|
+
return getOutlinedModel(
|
|
3549
|
+
response,
|
|
3550
|
+
value,
|
|
3551
|
+
obj,
|
|
3552
|
+
key,
|
|
3553
|
+
arrayRoot,
|
|
3554
|
+
createModel
|
|
3555
|
+
);
|
|
3328
3556
|
}
|
|
3557
|
+
null !== arrayRoot && bumpArrayCount(arrayRoot, value.length, response);
|
|
3329
3558
|
return value;
|
|
3330
3559
|
}
|
|
3331
3560
|
function createResponse(
|
|
@@ -3337,25 +3566,40 @@
|
|
|
3337
3566
|
3 < arguments.length && void 0 !== arguments[3]
|
|
3338
3567
|
? arguments[3]
|
|
3339
3568
|
: new FormData(),
|
|
3569
|
+
arraySizeLimit =
|
|
3570
|
+
4 < arguments.length && void 0 !== arguments[4] ? arguments[4] : 1e6,
|
|
3340
3571
|
chunks = new Map();
|
|
3341
3572
|
return {
|
|
3342
3573
|
_bundlerConfig: bundlerConfig,
|
|
3343
3574
|
_prefix: formFieldPrefix,
|
|
3344
3575
|
_formData: backingFormData,
|
|
3345
3576
|
_chunks: chunks,
|
|
3346
|
-
_temporaryReferences: temporaryReferences
|
|
3577
|
+
_temporaryReferences: temporaryReferences,
|
|
3578
|
+
_rootArrayContexts: new WeakMap(),
|
|
3579
|
+
_arraySizeLimit: arraySizeLimit
|
|
3347
3580
|
};
|
|
3348
3581
|
}
|
|
3349
3582
|
function close(response) {
|
|
3350
3583
|
reportGlobalError(response, Error("Connection closed."));
|
|
3351
3584
|
}
|
|
3352
|
-
function loadServerReference(bundlerConfig,
|
|
3585
|
+
function loadServerReference(bundlerConfig, metaData) {
|
|
3586
|
+
var id = metaData.id;
|
|
3587
|
+
if ("string" !== typeof id) return null;
|
|
3353
3588
|
var serverReference = resolveServerReference(bundlerConfig, id);
|
|
3354
3589
|
bundlerConfig = preloadModule(serverReference);
|
|
3355
|
-
|
|
3356
|
-
|
|
3590
|
+
metaData = metaData.bound;
|
|
3591
|
+
return metaData instanceof Promise
|
|
3592
|
+
? Promise.all([metaData, bundlerConfig]).then(function (_ref) {
|
|
3357
3593
|
_ref = _ref[0];
|
|
3358
3594
|
var fn = requireModule(serverReference);
|
|
3595
|
+
if (_ref.length > MAX_BOUND_ARGS)
|
|
3596
|
+
throw Error(
|
|
3597
|
+
"Server Function has too many bound arguments. Received " +
|
|
3598
|
+
_ref.length +
|
|
3599
|
+
" but the limit is " +
|
|
3600
|
+
MAX_BOUND_ARGS +
|
|
3601
|
+
"."
|
|
3602
|
+
);
|
|
3359
3603
|
return fn.bind.apply(fn, [null].concat(_ref));
|
|
3360
3604
|
})
|
|
3361
3605
|
: bundlerConfig
|
|
@@ -3364,8 +3608,19 @@
|
|
|
3364
3608
|
})
|
|
3365
3609
|
: Promise.resolve(requireModule(serverReference));
|
|
3366
3610
|
}
|
|
3367
|
-
function decodeBoundActionMetaData(
|
|
3368
|
-
body
|
|
3611
|
+
function decodeBoundActionMetaData(
|
|
3612
|
+
body,
|
|
3613
|
+
serverManifest,
|
|
3614
|
+
formFieldPrefix,
|
|
3615
|
+
arraySizeLimit
|
|
3616
|
+
) {
|
|
3617
|
+
body = createResponse(
|
|
3618
|
+
serverManifest,
|
|
3619
|
+
formFieldPrefix,
|
|
3620
|
+
void 0,
|
|
3621
|
+
body,
|
|
3622
|
+
arraySizeLimit
|
|
3623
|
+
);
|
|
3369
3624
|
close(body);
|
|
3370
3625
|
body = getChunk(body, 0);
|
|
3371
3626
|
body.then(function () {});
|
|
@@ -3791,13 +4046,14 @@
|
|
|
3791
4046
|
patchConsole(console, "table"),
|
|
3792
4047
|
patchConsole(console, "trace"),
|
|
3793
4048
|
patchConsole(console, "warn"));
|
|
3794
|
-
var ObjectPrototype = Object.prototype,
|
|
4049
|
+
var ObjectPrototype$1 = Object.prototype,
|
|
3795
4050
|
stringify = JSON.stringify,
|
|
3796
4051
|
PENDING$1 = 0,
|
|
3797
4052
|
COMPLETED = 1,
|
|
3798
4053
|
ABORTED = 3,
|
|
3799
4054
|
ERRORED$1 = 4,
|
|
3800
4055
|
RENDERING = 5,
|
|
4056
|
+
__PROTO__$1 = "__proto__",
|
|
3801
4057
|
OPENING = 10,
|
|
3802
4058
|
ABORTING = 12,
|
|
3803
4059
|
CLOSING = 13,
|
|
@@ -3828,16 +4084,23 @@
|
|
|
3828
4084
|
case "fulfilled":
|
|
3829
4085
|
if ("function" === typeof resolve) {
|
|
3830
4086
|
for (
|
|
3831
|
-
var inspectedValue = this.value,
|
|
4087
|
+
var inspectedValue = this.value,
|
|
4088
|
+
cycleProtection = 0,
|
|
4089
|
+
visited = new Set();
|
|
3832
4090
|
inspectedValue instanceof ReactPromise;
|
|
3833
4091
|
|
|
3834
4092
|
) {
|
|
3835
4093
|
cycleProtection++;
|
|
3836
|
-
if (
|
|
4094
|
+
if (
|
|
4095
|
+
inspectedValue === this ||
|
|
4096
|
+
visited.has(inspectedValue) ||
|
|
4097
|
+
1e3 < cycleProtection
|
|
4098
|
+
) {
|
|
3837
4099
|
"function" === typeof reject &&
|
|
3838
4100
|
reject(Error("Cannot have cyclic thenables."));
|
|
3839
4101
|
return;
|
|
3840
4102
|
}
|
|
4103
|
+
visited.add(inspectedValue);
|
|
3841
4104
|
if ("fulfilled" === inspectedValue.status)
|
|
3842
4105
|
inspectedValue = inspectedValue.value;
|
|
3843
4106
|
else break;
|
|
@@ -3858,7 +4121,15 @@
|
|
|
3858
4121
|
"function" === typeof reject && reject(this.reason);
|
|
3859
4122
|
}
|
|
3860
4123
|
};
|
|
3861
|
-
var
|
|
4124
|
+
var ObjectPrototype = Object.prototype,
|
|
4125
|
+
ArrayPrototype = Array.prototype,
|
|
4126
|
+
initializingHandler = null;
|
|
4127
|
+
FlightIterator.prototype = {};
|
|
4128
|
+
FlightIterator.prototype[ASYNC_ITERATOR] = function () {
|
|
4129
|
+
return this;
|
|
4130
|
+
};
|
|
4131
|
+
var MAX_BIGINT_DIGITS = 300,
|
|
4132
|
+
MAX_BOUND_ARGS = 1e3;
|
|
3862
4133
|
exports.createClientModuleProxy = function (moduleId) {
|
|
3863
4134
|
moduleId = registerClientReferenceImpl({}, moduleId, !1);
|
|
3864
4135
|
return new Proxy(moduleId, proxyHandlers$1);
|
|
@@ -3868,20 +4139,24 @@
|
|
|
3868
4139
|
};
|
|
3869
4140
|
exports.decodeAction = function (body, serverManifest) {
|
|
3870
4141
|
var formData = new FormData(),
|
|
3871
|
-
action = null
|
|
4142
|
+
action = null,
|
|
4143
|
+
seenActions = new Set();
|
|
3872
4144
|
body.forEach(function (value, key) {
|
|
3873
4145
|
key.startsWith("$ACTION_")
|
|
3874
4146
|
? key.startsWith("$ACTION_REF_")
|
|
3875
|
-
? (
|
|
4147
|
+
? seenActions.has(key) ||
|
|
4148
|
+
(seenActions.add(key),
|
|
4149
|
+
(value = "$ACTION_" + key.slice(12) + ":"),
|
|
3876
4150
|
(value = decodeBoundActionMetaData(body, serverManifest, value)),
|
|
3877
|
-
(action = loadServerReference(
|
|
3878
|
-
serverManifest,
|
|
3879
|
-
value.id,
|
|
3880
|
-
value.bound
|
|
3881
|
-
)))
|
|
4151
|
+
(action = loadServerReference(serverManifest, value)))
|
|
3882
4152
|
: key.startsWith("$ACTION_ID_") &&
|
|
3883
|
-
(
|
|
3884
|
-
(
|
|
4153
|
+
!seenActions.has(key) &&
|
|
4154
|
+
(seenActions.add(key),
|
|
4155
|
+
(value = key.slice(11)),
|
|
4156
|
+
(action = loadServerReference(serverManifest, {
|
|
4157
|
+
id: value,
|
|
4158
|
+
bound: null
|
|
4159
|
+
})))
|
|
3885
4160
|
: formData.append(key, value);
|
|
3886
4161
|
});
|
|
3887
4162
|
return null === action
|
|
@@ -3917,7 +4192,8 @@
|
|
|
3917
4192
|
webpackMap,
|
|
3918
4193
|
"",
|
|
3919
4194
|
options ? options.temporaryReferences : void 0,
|
|
3920
|
-
body
|
|
4195
|
+
body,
|
|
4196
|
+
options ? options.arraySizeLimit : void 0
|
|
3921
4197
|
);
|
|
3922
4198
|
webpackMap = getChunk(body, 0);
|
|
3923
4199
|
close(body);
|