react-server-dom-webpack 19.0.2 → 19.0.4
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 +626 -346
- package/cjs/react-server-dom-webpack-server.browser.production.js +599 -310
- package/cjs/react-server-dom-webpack-server.edge.development.js +626 -346
- package/cjs/react-server-dom-webpack-server.edge.production.js +599 -310
- package/cjs/react-server-dom-webpack-server.node.development.js +632 -350
- package/cjs/react-server-dom-webpack-server.node.production.js +605 -314
- package/cjs/react-server-dom-webpack-server.node.unbundled.development.js +632 -350
- package/cjs/react-server-dom-webpack-server.node.unbundled.production.js +605 -314
- package/package.json +3 -3
|
@@ -707,7 +707,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) {
|
|
|
707
707
|
"\n " + str + "\n " + objectOrArray)
|
|
708
708
|
: "\n " + str;
|
|
709
709
|
}
|
|
710
|
-
var ObjectPrototype = Object.prototype,
|
|
710
|
+
var ObjectPrototype$1 = Object.prototype,
|
|
711
711
|
stringify = JSON.stringify;
|
|
712
712
|
function defaultErrorHandler(error) {
|
|
713
713
|
console.error(error);
|
|
@@ -1534,7 +1534,7 @@ function renderModelDestructive(
|
|
|
1534
1534
|
if (value instanceof Date) return "$D" + value.toJSON();
|
|
1535
1535
|
request = getPrototypeOf(value);
|
|
1536
1536
|
if (
|
|
1537
|
-
request !== ObjectPrototype &&
|
|
1537
|
+
request !== ObjectPrototype$1 &&
|
|
1538
1538
|
(null === request || null !== getPrototypeOf(request))
|
|
1539
1539
|
)
|
|
1540
1540
|
throw Error(
|
|
@@ -2028,15 +2028,23 @@ ReactPromise.prototype.then = function (resolve, reject) {
|
|
|
2028
2028
|
case "fulfilled":
|
|
2029
2029
|
if ("function" === typeof resolve) {
|
|
2030
2030
|
for (
|
|
2031
|
-
var inspectedValue = this.value
|
|
2031
|
+
var inspectedValue = this.value,
|
|
2032
|
+
cycleProtection = 0,
|
|
2033
|
+
visited = new Set();
|
|
2032
2034
|
inspectedValue instanceof ReactPromise;
|
|
2033
2035
|
|
|
2034
2036
|
) {
|
|
2035
|
-
|
|
2037
|
+
cycleProtection++;
|
|
2038
|
+
if (
|
|
2039
|
+
inspectedValue === this ||
|
|
2040
|
+
visited.has(inspectedValue) ||
|
|
2041
|
+
1e3 < cycleProtection
|
|
2042
|
+
) {
|
|
2036
2043
|
"function" === typeof reject &&
|
|
2037
2044
|
reject(Error("Cannot have cyclic thenables."));
|
|
2038
2045
|
return;
|
|
2039
2046
|
}
|
|
2047
|
+
visited.add(inspectedValue);
|
|
2040
2048
|
if ("fulfilled" === inspectedValue.status)
|
|
2041
2049
|
inspectedValue = inspectedValue.value;
|
|
2042
2050
|
else break;
|
|
@@ -2055,12 +2063,14 @@ ReactPromise.prototype.then = function (resolve, reject) {
|
|
|
2055
2063
|
"function" === typeof reject && reject(this.reason);
|
|
2056
2064
|
}
|
|
2057
2065
|
};
|
|
2058
|
-
|
|
2066
|
+
var ObjectPrototype = Object.prototype,
|
|
2067
|
+
ArrayPrototype = Array.prototype;
|
|
2068
|
+
function wakeChunk(response, listeners, value, chunk) {
|
|
2059
2069
|
for (var i = 0; i < listeners.length; i++) {
|
|
2060
2070
|
var listener = listeners[i];
|
|
2061
2071
|
"function" === typeof listener
|
|
2062
2072
|
? listener(value)
|
|
2063
|
-
: fulfillReference(response, listener, value);
|
|
2073
|
+
: fulfillReference(response, listener, value, chunk.reason);
|
|
2064
2074
|
}
|
|
2065
2075
|
}
|
|
2066
2076
|
function rejectChunk(response, listeners, error) {
|
|
@@ -2071,27 +2081,6 @@ function rejectChunk(response, listeners, error) {
|
|
|
2071
2081
|
: rejectReference(response, listener.handler, error);
|
|
2072
2082
|
}
|
|
2073
2083
|
}
|
|
2074
|
-
function resolveBlockedCycle(resolvedChunk, reference) {
|
|
2075
|
-
var referencedChunk = reference.handler.chunk;
|
|
2076
|
-
if (null === referencedChunk) return null;
|
|
2077
|
-
if (referencedChunk === resolvedChunk) return reference.handler;
|
|
2078
|
-
reference = referencedChunk.value;
|
|
2079
|
-
if (null !== reference)
|
|
2080
|
-
for (
|
|
2081
|
-
referencedChunk = 0;
|
|
2082
|
-
referencedChunk < reference.length;
|
|
2083
|
-
referencedChunk++
|
|
2084
|
-
) {
|
|
2085
|
-
var listener = reference[referencedChunk];
|
|
2086
|
-
if (
|
|
2087
|
-
"function" !== typeof listener &&
|
|
2088
|
-
((listener = resolveBlockedCycle(resolvedChunk, listener)),
|
|
2089
|
-
null !== listener)
|
|
2090
|
-
)
|
|
2091
|
-
return listener;
|
|
2092
|
-
}
|
|
2093
|
-
return null;
|
|
2094
|
-
}
|
|
2095
2084
|
function triggerErrorOnChunk(response, chunk, error) {
|
|
2096
2085
|
if ("pending" !== chunk.status && "blocked" !== chunk.status)
|
|
2097
2086
|
chunk.reason.error(error);
|
|
@@ -2127,33 +2116,11 @@ function resolveModelChunk(response, chunk, value, id) {
|
|
|
2127
2116
|
chunk.reason =
|
|
2128
2117
|
((value.id = id), (value[RESPONSE_SYMBOL] = response), value);
|
|
2129
2118
|
if (null !== resolveListeners)
|
|
2130
|
-
|
|
2119
|
+
switch ((initializeModelChunk(chunk), chunk.status)) {
|
|
2131
2120
|
case "fulfilled":
|
|
2132
|
-
wakeChunk(response, resolveListeners, chunk.value);
|
|
2121
|
+
wakeChunk(response, resolveListeners, chunk.value, chunk);
|
|
2133
2122
|
break;
|
|
2134
2123
|
case "blocked":
|
|
2135
|
-
for (value = 0; value < resolveListeners.length; value++)
|
|
2136
|
-
if (((id = resolveListeners[value]), "function" !== typeof id)) {
|
|
2137
|
-
var cyclicHandler = resolveBlockedCycle(chunk, id);
|
|
2138
|
-
if (null !== cyclicHandler)
|
|
2139
|
-
switch (
|
|
2140
|
-
(fulfillReference(response, id, cyclicHandler.value),
|
|
2141
|
-
resolveListeners.splice(value, 1),
|
|
2142
|
-
value--,
|
|
2143
|
-
null !== rejectListeners &&
|
|
2144
|
-
((id = rejectListeners.indexOf(id)),
|
|
2145
|
-
-1 !== id && rejectListeners.splice(id, 1)),
|
|
2146
|
-
chunk.status)
|
|
2147
|
-
) {
|
|
2148
|
-
case "fulfilled":
|
|
2149
|
-
wakeChunk(response, resolveListeners, chunk.value);
|
|
2150
|
-
break a;
|
|
2151
|
-
case "rejected":
|
|
2152
|
-
null !== rejectListeners &&
|
|
2153
|
-
rejectChunk(response, rejectListeners, chunk.reason);
|
|
2154
|
-
break a;
|
|
2155
|
-
}
|
|
2156
|
-
}
|
|
2157
2124
|
case "pending":
|
|
2158
2125
|
if (chunk.value)
|
|
2159
2126
|
for (response = 0; response < resolveListeners.length; response++)
|
|
@@ -2170,7 +2137,8 @@ function resolveModelChunk(response, chunk, value, id) {
|
|
|
2170
2137
|
} else chunk.reason = rejectListeners;
|
|
2171
2138
|
break;
|
|
2172
2139
|
case "rejected":
|
|
2173
|
-
rejectListeners &&
|
|
2140
|
+
rejectListeners &&
|
|
2141
|
+
rejectChunk(response, rejectListeners, chunk.reason);
|
|
2174
2142
|
}
|
|
2175
2143
|
}
|
|
2176
2144
|
}
|
|
@@ -2193,15 +2161,50 @@ function resolveIteratorResultChunk(response, chunk, value, done) {
|
|
|
2193
2161
|
);
|
|
2194
2162
|
}
|
|
2195
2163
|
function loadServerReference$1(response, metaData, parentObject, key) {
|
|
2164
|
+
function reject(error) {
|
|
2165
|
+
var rejectListeners = blockedPromise.reason,
|
|
2166
|
+
erroredPromise = blockedPromise;
|
|
2167
|
+
erroredPromise.status = "rejected";
|
|
2168
|
+
erroredPromise.value = null;
|
|
2169
|
+
erroredPromise.reason = error;
|
|
2170
|
+
null !== rejectListeners && rejectChunk(response, rejectListeners, error);
|
|
2171
|
+
rejectReference(response, handler, error);
|
|
2172
|
+
}
|
|
2196
2173
|
var id = metaData.id;
|
|
2197
2174
|
if ("string" !== typeof id || "then" === key) return null;
|
|
2175
|
+
var cachedPromise = metaData.$$promise;
|
|
2176
|
+
if (void 0 !== cachedPromise) {
|
|
2177
|
+
if ("fulfilled" === cachedPromise.status)
|
|
2178
|
+
return (
|
|
2179
|
+
(cachedPromise = cachedPromise.value),
|
|
2180
|
+
"__proto__" === key ? null : (parentObject[key] = cachedPromise)
|
|
2181
|
+
);
|
|
2182
|
+
initializingHandler
|
|
2183
|
+
? ((id = initializingHandler), id.deps++)
|
|
2184
|
+
: (id = initializingHandler =
|
|
2185
|
+
{ chunk: null, value: null, reason: null, deps: 1, errored: !1 });
|
|
2186
|
+
cachedPromise.then(
|
|
2187
|
+
resolveReference.bind(null, response, id, parentObject, key),
|
|
2188
|
+
rejectReference.bind(null, response, id)
|
|
2189
|
+
);
|
|
2190
|
+
return null;
|
|
2191
|
+
}
|
|
2192
|
+
var blockedPromise = new ReactPromise("blocked", null, null);
|
|
2193
|
+
metaData.$$promise = blockedPromise;
|
|
2198
2194
|
var serverReference = resolveServerReference(response._bundlerConfig, id);
|
|
2199
|
-
|
|
2200
|
-
|
|
2201
|
-
|
|
2202
|
-
|
|
2203
|
-
else if (
|
|
2204
|
-
|
|
2195
|
+
cachedPromise = metaData.bound;
|
|
2196
|
+
if ((id = preloadModule(serverReference)))
|
|
2197
|
+
cachedPromise instanceof ReactPromise &&
|
|
2198
|
+
(id = Promise.all([id, cachedPromise]));
|
|
2199
|
+
else if (cachedPromise instanceof ReactPromise)
|
|
2200
|
+
id = Promise.resolve(cachedPromise);
|
|
2201
|
+
else
|
|
2202
|
+
return (
|
|
2203
|
+
(cachedPromise = requireModule(serverReference)),
|
|
2204
|
+
(id = blockedPromise),
|
|
2205
|
+
(id.status = "fulfilled"),
|
|
2206
|
+
(id.value = cachedPromise)
|
|
2207
|
+
);
|
|
2205
2208
|
if (initializingHandler) {
|
|
2206
2209
|
var handler = initializingHandler;
|
|
2207
2210
|
handler.deps++;
|
|
@@ -2213,74 +2216,105 @@ function loadServerReference$1(response, metaData, parentObject, key) {
|
|
|
2213
2216
|
deps: 1,
|
|
2214
2217
|
errored: !1
|
|
2215
2218
|
};
|
|
2216
|
-
|
|
2217
|
-
|
|
2218
|
-
|
|
2219
|
-
|
|
2220
|
-
|
|
2221
|
-
|
|
2222
|
-
|
|
2223
|
-
|
|
2224
|
-
|
|
2225
|
-
|
|
2226
|
-
|
|
2227
|
-
|
|
2228
|
-
|
|
2229
|
-
|
|
2230
|
-
null !== resolvedValue &&
|
|
2231
|
-
"blocked" === resolvedValue.status &&
|
|
2232
|
-
((promiseValue = resolvedValue.value),
|
|
2233
|
-
(resolvedValue.status = "fulfilled"),
|
|
2234
|
-
(resolvedValue.value = handler.value),
|
|
2235
|
-
(resolvedValue.reason = null),
|
|
2236
|
-
null !== promiseValue &&
|
|
2237
|
-
wakeChunk(response, promiseValue, handler.value)));
|
|
2238
|
-
},
|
|
2239
|
-
function (error) {
|
|
2240
|
-
if (!handler.errored) {
|
|
2241
|
-
handler.errored = !0;
|
|
2242
|
-
handler.value = null;
|
|
2243
|
-
handler.reason = error;
|
|
2244
|
-
var chunk = handler.chunk;
|
|
2245
|
-
null !== chunk &&
|
|
2246
|
-
"blocked" === chunk.status &&
|
|
2247
|
-
triggerErrorOnChunk(response, chunk, error);
|
|
2219
|
+
id.then(function () {
|
|
2220
|
+
var resolvedValue = requireModule(serverReference);
|
|
2221
|
+
if (metaData.bound) {
|
|
2222
|
+
var promiseValue = metaData.bound.value;
|
|
2223
|
+
promiseValue = isArrayImpl(promiseValue) ? promiseValue.slice(0) : [];
|
|
2224
|
+
if (1e3 < promiseValue.length) {
|
|
2225
|
+
reject(
|
|
2226
|
+
Error(
|
|
2227
|
+
"Server Function has too many bound arguments. Received " +
|
|
2228
|
+
promiseValue.length +
|
|
2229
|
+
" but the limit is 1000."
|
|
2230
|
+
)
|
|
2231
|
+
);
|
|
2232
|
+
return;
|
|
2248
2233
|
}
|
|
2234
|
+
promiseValue.unshift(null);
|
|
2235
|
+
resolvedValue = resolvedValue.bind.apply(resolvedValue, promiseValue);
|
|
2249
2236
|
}
|
|
2250
|
-
|
|
2237
|
+
promiseValue = blockedPromise.value;
|
|
2238
|
+
var initializedPromise = blockedPromise;
|
|
2239
|
+
initializedPromise.status = "fulfilled";
|
|
2240
|
+
initializedPromise.value = resolvedValue;
|
|
2241
|
+
initializedPromise.reason = null;
|
|
2242
|
+
null !== promiseValue &&
|
|
2243
|
+
wakeChunk(response, promiseValue, resolvedValue, initializedPromise);
|
|
2244
|
+
resolveReference(response, handler, parentObject, key, resolvedValue);
|
|
2245
|
+
}, reject);
|
|
2251
2246
|
return null;
|
|
2252
2247
|
}
|
|
2253
|
-
function reviveModel(
|
|
2248
|
+
function reviveModel(
|
|
2249
|
+
response,
|
|
2250
|
+
parentObj,
|
|
2251
|
+
parentKey,
|
|
2252
|
+
value,
|
|
2253
|
+
reference,
|
|
2254
|
+
arrayRoot
|
|
2255
|
+
) {
|
|
2254
2256
|
if ("string" === typeof value)
|
|
2255
|
-
return parseModelString(
|
|
2257
|
+
return parseModelString(
|
|
2258
|
+
response,
|
|
2259
|
+
parentObj,
|
|
2260
|
+
parentKey,
|
|
2261
|
+
value,
|
|
2262
|
+
reference,
|
|
2263
|
+
arrayRoot
|
|
2264
|
+
);
|
|
2256
2265
|
if ("object" === typeof value && null !== value)
|
|
2257
2266
|
if (
|
|
2258
2267
|
(void 0 !== reference &&
|
|
2259
2268
|
void 0 !== response._temporaryReferences &&
|
|
2260
2269
|
response._temporaryReferences.set(value, reference),
|
|
2261
|
-
|
|
2262
|
-
)
|
|
2263
|
-
|
|
2264
|
-
|
|
2270
|
+
isArrayImpl(value))
|
|
2271
|
+
) {
|
|
2272
|
+
if (null === arrayRoot) {
|
|
2273
|
+
var childContext = { count: 0, fork: !1 };
|
|
2274
|
+
response._rootArrayContexts.set(value, childContext);
|
|
2275
|
+
} else childContext = arrayRoot;
|
|
2276
|
+
1 < value.length && (childContext.fork = !0);
|
|
2277
|
+
bumpArrayCount(childContext, value.length + 1, response);
|
|
2278
|
+
for (parentObj = 0; parentObj < value.length; parentObj++)
|
|
2279
|
+
value[parentObj] = reviveModel(
|
|
2265
2280
|
response,
|
|
2266
2281
|
value,
|
|
2267
|
-
"" +
|
|
2268
|
-
value[
|
|
2269
|
-
void 0 !== reference ? reference + ":" +
|
|
2282
|
+
"" + parentObj,
|
|
2283
|
+
value[parentObj],
|
|
2284
|
+
void 0 !== reference ? reference + ":" + parentObj : void 0,
|
|
2285
|
+
childContext
|
|
2270
2286
|
);
|
|
2271
|
-
else
|
|
2272
|
-
for (
|
|
2273
|
-
hasOwnProperty.call(value,
|
|
2274
|
-
(
|
|
2275
|
-
|
|
2276
|
-
|
|
2277
|
-
|
|
2278
|
-
|
|
2279
|
-
|
|
2280
|
-
|
|
2281
|
-
|
|
2287
|
+
} else
|
|
2288
|
+
for (childContext in value)
|
|
2289
|
+
hasOwnProperty.call(value, childContext) &&
|
|
2290
|
+
("__proto__" === childContext
|
|
2291
|
+
? delete value[childContext]
|
|
2292
|
+
: ((parentObj =
|
|
2293
|
+
void 0 !== reference && -1 === childContext.indexOf(":")
|
|
2294
|
+
? reference + ":" + childContext
|
|
2295
|
+
: void 0),
|
|
2296
|
+
(parentObj = reviveModel(
|
|
2297
|
+
response,
|
|
2298
|
+
value,
|
|
2299
|
+
childContext,
|
|
2300
|
+
value[childContext],
|
|
2301
|
+
parentObj,
|
|
2302
|
+
null
|
|
2303
|
+
)),
|
|
2304
|
+
void 0 !== parentObj
|
|
2305
|
+
? (value[childContext] = parentObj)
|
|
2306
|
+
: delete value[childContext]));
|
|
2282
2307
|
return value;
|
|
2283
2308
|
}
|
|
2309
|
+
function bumpArrayCount(arrayContext, slots, response) {
|
|
2310
|
+
if (
|
|
2311
|
+
(arrayContext.count += slots) > response._arraySizeLimit &&
|
|
2312
|
+
arrayContext.fork
|
|
2313
|
+
)
|
|
2314
|
+
throw Error(
|
|
2315
|
+
"Maximum array nesting exceeded. Large nested arrays can be dangerous. Try adding intermediate objects."
|
|
2316
|
+
);
|
|
2317
|
+
}
|
|
2284
2318
|
var initializingHandler = null;
|
|
2285
2319
|
function initializeModelChunk(chunk) {
|
|
2286
2320
|
var prevHandler = initializingHandler;
|
|
@@ -2294,13 +2328,15 @@ function initializeModelChunk(chunk) {
|
|
|
2294
2328
|
chunk.value = null;
|
|
2295
2329
|
chunk.reason = null;
|
|
2296
2330
|
try {
|
|
2297
|
-
var rawModel = JSON.parse(resolvedModel)
|
|
2298
|
-
|
|
2331
|
+
var rawModel = JSON.parse(resolvedModel);
|
|
2332
|
+
resolvedModel = { count: 0, fork: !1 };
|
|
2333
|
+
var value = reviveModel(
|
|
2299
2334
|
response,
|
|
2300
2335
|
{ "": rawModel },
|
|
2301
2336
|
"",
|
|
2302
2337
|
rawModel,
|
|
2303
|
-
_chunk$reason
|
|
2338
|
+
_chunk$reason,
|
|
2339
|
+
resolvedModel
|
|
2304
2340
|
),
|
|
2305
2341
|
resolveListeners = chunk.value;
|
|
2306
2342
|
if (null !== resolveListeners)
|
|
@@ -2312,19 +2348,20 @@ function initializeModelChunk(chunk) {
|
|
|
2312
2348
|
var listener = resolveListeners[rawModel];
|
|
2313
2349
|
"function" === typeof listener
|
|
2314
2350
|
? listener(value)
|
|
2315
|
-
: fulfillReference(response, listener, value);
|
|
2351
|
+
: fulfillReference(response, listener, value, resolvedModel);
|
|
2316
2352
|
}
|
|
2317
2353
|
if (null !== initializingHandler) {
|
|
2318
2354
|
if (initializingHandler.errored) throw initializingHandler.reason;
|
|
2319
2355
|
if (0 < initializingHandler.deps) {
|
|
2320
2356
|
initializingHandler.value = value;
|
|
2357
|
+
initializingHandler.reason = resolvedModel;
|
|
2321
2358
|
initializingHandler.chunk = chunk;
|
|
2322
2359
|
return;
|
|
2323
2360
|
}
|
|
2324
2361
|
}
|
|
2325
2362
|
chunk.status = "fulfilled";
|
|
2326
2363
|
chunk.value = value;
|
|
2327
|
-
chunk.reason =
|
|
2364
|
+
chunk.reason = resolvedModel;
|
|
2328
2365
|
} catch (error) {
|
|
2329
2366
|
(chunk.status = "rejected"), (chunk.reason = error);
|
|
2330
2367
|
} finally {
|
|
@@ -2337,7 +2374,8 @@ function reportGlobalError(response, error) {
|
|
|
2337
2374
|
? triggerErrorOnChunk(response, chunk, error)
|
|
2338
2375
|
: "fulfilled" === chunk.status &&
|
|
2339
2376
|
null !== chunk.reason &&
|
|
2340
|
-
chunk.reason
|
|
2377
|
+
((chunk = chunk.reason),
|
|
2378
|
+
"function" === typeof chunk.error && chunk.error(error));
|
|
2341
2379
|
});
|
|
2342
2380
|
}
|
|
2343
2381
|
function getChunk(response, id) {
|
|
@@ -2352,40 +2390,67 @@ function getChunk(response, id) {
|
|
|
2352
2390
|
chunks.set(id, chunk));
|
|
2353
2391
|
return chunk;
|
|
2354
2392
|
}
|
|
2355
|
-
function fulfillReference(response, reference, value) {
|
|
2393
|
+
function fulfillReference(response, reference, value, arrayRoot) {
|
|
2356
2394
|
var handler = reference.handler,
|
|
2357
2395
|
parentObject = reference.parentObject,
|
|
2358
2396
|
key = reference.key,
|
|
2359
2397
|
map = reference.map,
|
|
2360
2398
|
path = reference.path;
|
|
2361
2399
|
try {
|
|
2362
|
-
for (
|
|
2400
|
+
for (
|
|
2401
|
+
var localLength = 0,
|
|
2402
|
+
rootArrayContexts = response._rootArrayContexts,
|
|
2403
|
+
i = 1;
|
|
2404
|
+
i < path.length;
|
|
2405
|
+
i++
|
|
2406
|
+
) {
|
|
2363
2407
|
var name = path[i];
|
|
2364
2408
|
if (
|
|
2365
2409
|
"object" !== typeof value ||
|
|
2366
|
-
|
|
2367
|
-
value
|
|
2410
|
+
null === value ||
|
|
2411
|
+
(getPrototypeOf(value) !== ObjectPrototype &&
|
|
2412
|
+
getPrototypeOf(value) !== ArrayPrototype) ||
|
|
2413
|
+
!hasOwnProperty.call(value, name)
|
|
2368
2414
|
)
|
|
2369
2415
|
throw Error("Invalid reference.");
|
|
2370
2416
|
value = value[name];
|
|
2417
|
+
if (isArrayImpl(value))
|
|
2418
|
+
(localLength = 0),
|
|
2419
|
+
(arrayRoot = rootArrayContexts.get(value) || arrayRoot);
|
|
2420
|
+
else if (((arrayRoot = null), "string" === typeof value))
|
|
2421
|
+
localLength = value.length;
|
|
2422
|
+
else if ("bigint" === typeof value) {
|
|
2423
|
+
var n = Math.abs(Number(value));
|
|
2424
|
+
localLength = 0 === n ? 1 : Math.floor(Math.log10(n)) + 1;
|
|
2425
|
+
} else localLength = ArrayBuffer.isView(value) ? value.byteLength : 0;
|
|
2371
2426
|
}
|
|
2372
|
-
var
|
|
2373
|
-
|
|
2374
|
-
|
|
2427
|
+
var resolvedValue = map(response, value, parentObject, key);
|
|
2428
|
+
var referenceArrayRoot = reference.arrayRoot;
|
|
2429
|
+
null !== referenceArrayRoot &&
|
|
2430
|
+
(null !== arrayRoot
|
|
2431
|
+
? (arrayRoot.fork && (referenceArrayRoot.fork = !0),
|
|
2432
|
+
bumpArrayCount(referenceArrayRoot, arrayRoot.count, response))
|
|
2433
|
+
: 0 < localLength &&
|
|
2434
|
+
bumpArrayCount(referenceArrayRoot, localLength, response));
|
|
2375
2435
|
} catch (error) {
|
|
2376
|
-
rejectReference(response,
|
|
2436
|
+
rejectReference(response, handler, error);
|
|
2377
2437
|
return;
|
|
2378
2438
|
}
|
|
2439
|
+
resolveReference(response, handler, parentObject, key, resolvedValue);
|
|
2440
|
+
}
|
|
2441
|
+
function resolveReference(response, handler, parentObject, key, resolvedValue) {
|
|
2442
|
+
"__proto__" !== key && (parentObject[key] = resolvedValue);
|
|
2443
|
+
"" === key && null === handler.value && (handler.value = resolvedValue);
|
|
2379
2444
|
handler.deps--;
|
|
2380
2445
|
0 === handler.deps &&
|
|
2381
|
-
((
|
|
2382
|
-
null !==
|
|
2383
|
-
"blocked" ===
|
|
2384
|
-
((
|
|
2385
|
-
(
|
|
2386
|
-
(
|
|
2387
|
-
(
|
|
2388
|
-
null !==
|
|
2446
|
+
((parentObject = handler.chunk),
|
|
2447
|
+
null !== parentObject &&
|
|
2448
|
+
"blocked" === parentObject.status &&
|
|
2449
|
+
((key = parentObject.value),
|
|
2450
|
+
(parentObject.status = "fulfilled"),
|
|
2451
|
+
(parentObject.value = handler.value),
|
|
2452
|
+
(parentObject.reason = handler.reason),
|
|
2453
|
+
null !== key && wakeChunk(response, key, handler.value, parentObject)));
|
|
2389
2454
|
}
|
|
2390
2455
|
function rejectReference(response, handler, error) {
|
|
2391
2456
|
handler.errored ||
|
|
@@ -2397,60 +2462,97 @@ function rejectReference(response, handler, error) {
|
|
|
2397
2462
|
"blocked" === handler.status &&
|
|
2398
2463
|
triggerErrorOnChunk(response, handler, error));
|
|
2399
2464
|
}
|
|
2400
|
-
function getOutlinedModel(
|
|
2465
|
+
function getOutlinedModel(
|
|
2466
|
+
response,
|
|
2467
|
+
reference,
|
|
2468
|
+
parentObject,
|
|
2469
|
+
key,
|
|
2470
|
+
referenceArrayRoot,
|
|
2471
|
+
map
|
|
2472
|
+
) {
|
|
2401
2473
|
reference = reference.split(":");
|
|
2402
|
-
var id = parseInt(reference[0], 16)
|
|
2403
|
-
|
|
2404
|
-
switch (
|
|
2474
|
+
var id = parseInt(reference[0], 16),
|
|
2475
|
+
chunk = getChunk(response, id);
|
|
2476
|
+
switch (chunk.status) {
|
|
2405
2477
|
case "resolved_model":
|
|
2406
|
-
initializeModelChunk(
|
|
2478
|
+
initializeModelChunk(chunk);
|
|
2407
2479
|
}
|
|
2408
|
-
switch (
|
|
2480
|
+
switch (chunk.status) {
|
|
2409
2481
|
case "fulfilled":
|
|
2410
|
-
id =
|
|
2411
|
-
|
|
2412
|
-
|
|
2482
|
+
id = chunk.value;
|
|
2483
|
+
chunk = chunk.reason;
|
|
2484
|
+
for (
|
|
2485
|
+
var localLength = 0,
|
|
2486
|
+
rootArrayContexts = response._rootArrayContexts,
|
|
2487
|
+
i = 1;
|
|
2488
|
+
i < reference.length;
|
|
2489
|
+
i++
|
|
2490
|
+
) {
|
|
2491
|
+
localLength = reference[i];
|
|
2413
2492
|
if (
|
|
2414
2493
|
"object" !== typeof id ||
|
|
2415
|
-
|
|
2416
|
-
id
|
|
2494
|
+
null === id ||
|
|
2495
|
+
(getPrototypeOf(id) !== ObjectPrototype &&
|
|
2496
|
+
getPrototypeOf(id) !== ArrayPrototype) ||
|
|
2497
|
+
!hasOwnProperty.call(id, localLength)
|
|
2417
2498
|
)
|
|
2418
2499
|
throw Error("Invalid reference.");
|
|
2419
|
-
id = id[
|
|
2500
|
+
id = id[localLength];
|
|
2501
|
+
isArrayImpl(id)
|
|
2502
|
+
? ((localLength = 0), (chunk = rootArrayContexts.get(id) || chunk))
|
|
2503
|
+
: ((chunk = null),
|
|
2504
|
+
"string" === typeof id
|
|
2505
|
+
? (localLength = id.length)
|
|
2506
|
+
: "bigint" === typeof id
|
|
2507
|
+
? ((localLength = Math.abs(Number(id))),
|
|
2508
|
+
(localLength =
|
|
2509
|
+
0 === localLength
|
|
2510
|
+
? 1
|
|
2511
|
+
: Math.floor(Math.log10(localLength)) + 1))
|
|
2512
|
+
: (localLength = ArrayBuffer.isView(id) ? id.byteLength : 0));
|
|
2420
2513
|
}
|
|
2421
|
-
|
|
2422
|
-
|
|
2514
|
+
parentObject = map(response, id, parentObject, key);
|
|
2515
|
+
null !== referenceArrayRoot &&
|
|
2516
|
+
(null !== chunk
|
|
2517
|
+
? (chunk.fork && (referenceArrayRoot.fork = !0),
|
|
2518
|
+
bumpArrayCount(referenceArrayRoot, chunk.count, response))
|
|
2519
|
+
: 0 < localLength &&
|
|
2520
|
+
bumpArrayCount(referenceArrayRoot, localLength, response));
|
|
2521
|
+
return parentObject;
|
|
2423
2522
|
case "blocked":
|
|
2424
2523
|
return (
|
|
2425
2524
|
initializingHandler
|
|
2426
2525
|
? ((response = initializingHandler), response.deps++)
|
|
2427
2526
|
: (response = initializingHandler =
|
|
2428
2527
|
{ chunk: null, value: null, reason: null, deps: 1, errored: !1 }),
|
|
2429
|
-
(
|
|
2528
|
+
(referenceArrayRoot = {
|
|
2430
2529
|
handler: response,
|
|
2431
2530
|
parentObject: parentObject,
|
|
2432
2531
|
key: key,
|
|
2433
2532
|
map: map,
|
|
2434
|
-
path: reference
|
|
2533
|
+
path: reference,
|
|
2534
|
+
arrayRoot: referenceArrayRoot
|
|
2435
2535
|
}),
|
|
2436
|
-
null ===
|
|
2437
|
-
? (
|
|
2438
|
-
:
|
|
2439
|
-
null ===
|
|
2440
|
-
? (
|
|
2441
|
-
:
|
|
2536
|
+
null === chunk.value
|
|
2537
|
+
? (chunk.value = [referenceArrayRoot])
|
|
2538
|
+
: chunk.value.push(referenceArrayRoot),
|
|
2539
|
+
null === chunk.reason
|
|
2540
|
+
? (chunk.reason = [referenceArrayRoot])
|
|
2541
|
+
: chunk.reason.push(referenceArrayRoot),
|
|
2442
2542
|
null
|
|
2443
2543
|
);
|
|
2544
|
+
case "pending":
|
|
2545
|
+
throw Error("Invalid forward reference.");
|
|
2444
2546
|
default:
|
|
2445
2547
|
return (
|
|
2446
2548
|
initializingHandler
|
|
2447
2549
|
? ((initializingHandler.errored = !0),
|
|
2448
2550
|
(initializingHandler.value = null),
|
|
2449
|
-
(initializingHandler.reason =
|
|
2551
|
+
(initializingHandler.reason = chunk.reason))
|
|
2450
2552
|
: (initializingHandler = {
|
|
2451
2553
|
chunk: null,
|
|
2452
2554
|
value: null,
|
|
2453
|
-
reason:
|
|
2555
|
+
reason: chunk.reason,
|
|
2454
2556
|
deps: 0,
|
|
2455
2557
|
errored: !0
|
|
2456
2558
|
}),
|
|
@@ -2459,13 +2561,25 @@ function getOutlinedModel(response, reference, parentObject, key, map) {
|
|
|
2459
2561
|
}
|
|
2460
2562
|
}
|
|
2461
2563
|
function createMap(response, model) {
|
|
2462
|
-
|
|
2564
|
+
if (!isArrayImpl(model)) throw Error("Invalid Map initializer.");
|
|
2565
|
+
if (!0 === model.$$consumed) throw Error("Already initialized Map.");
|
|
2566
|
+
response = new Map(model);
|
|
2567
|
+
model.$$consumed = !0;
|
|
2568
|
+
return response;
|
|
2463
2569
|
}
|
|
2464
2570
|
function createSet(response, model) {
|
|
2465
|
-
|
|
2571
|
+
if (!isArrayImpl(model)) throw Error("Invalid Set initializer.");
|
|
2572
|
+
if (!0 === model.$$consumed) throw Error("Already initialized Set.");
|
|
2573
|
+
response = new Set(model);
|
|
2574
|
+
model.$$consumed = !0;
|
|
2575
|
+
return response;
|
|
2466
2576
|
}
|
|
2467
2577
|
function extractIterator(response, model) {
|
|
2468
|
-
|
|
2578
|
+
if (!isArrayImpl(model)) throw Error("Invalid Iterator initializer.");
|
|
2579
|
+
if (!0 === model.$$consumed) throw Error("Already initialized Iterator.");
|
|
2580
|
+
response = model[Symbol.iterator]();
|
|
2581
|
+
model.$$consumed = !0;
|
|
2582
|
+
return response;
|
|
2469
2583
|
}
|
|
2470
2584
|
function createModel(response, model, parentObject, key) {
|
|
2471
2585
|
return "then" === key && "function" === typeof model ? null : model;
|
|
@@ -2476,13 +2590,34 @@ function parseTypedArray(
|
|
|
2476
2590
|
constructor,
|
|
2477
2591
|
bytesPerElement,
|
|
2478
2592
|
parentObject,
|
|
2479
|
-
parentKey
|
|
2593
|
+
parentKey,
|
|
2594
|
+
referenceArrayRoot
|
|
2480
2595
|
) {
|
|
2596
|
+
function reject(error) {
|
|
2597
|
+
if (!handler.errored) {
|
|
2598
|
+
handler.errored = !0;
|
|
2599
|
+
handler.value = null;
|
|
2600
|
+
handler.reason = error;
|
|
2601
|
+
var chunk = handler.chunk;
|
|
2602
|
+
null !== chunk &&
|
|
2603
|
+
"blocked" === chunk.status &&
|
|
2604
|
+
triggerErrorOnChunk(response, chunk, error);
|
|
2605
|
+
}
|
|
2606
|
+
}
|
|
2481
2607
|
reference = parseInt(reference.slice(2), 16);
|
|
2482
|
-
|
|
2483
|
-
|
|
2608
|
+
var key = response._prefix + reference;
|
|
2609
|
+
bytesPerElement = response._chunks;
|
|
2610
|
+
if (bytesPerElement.has(reference))
|
|
2484
2611
|
throw Error("Already initialized typed array.");
|
|
2485
|
-
|
|
2612
|
+
bytesPerElement.set(
|
|
2613
|
+
reference,
|
|
2614
|
+
new ReactPromise(
|
|
2615
|
+
"rejected",
|
|
2616
|
+
null,
|
|
2617
|
+
Error("Already initialized typed array.")
|
|
2618
|
+
)
|
|
2619
|
+
);
|
|
2620
|
+
reference = response._formData.get(key).arrayBuffer();
|
|
2486
2621
|
if (initializingHandler) {
|
|
2487
2622
|
var handler = initializingHandler;
|
|
2488
2623
|
handler.deps++;
|
|
@@ -2494,37 +2629,32 @@ function parseTypedArray(
|
|
|
2494
2629
|
deps: 1,
|
|
2495
2630
|
errored: !1
|
|
2496
2631
|
};
|
|
2497
|
-
reference.then(
|
|
2498
|
-
|
|
2499
|
-
|
|
2500
|
-
|
|
2501
|
-
|
|
2502
|
-
|
|
2503
|
-
|
|
2504
|
-
|
|
2505
|
-
|
|
2506
|
-
|
|
2507
|
-
|
|
2508
|
-
|
|
2509
|
-
|
|
2510
|
-
buffer.value = handler.value;
|
|
2511
|
-
buffer.reason = null;
|
|
2512
|
-
null !== resolveListeners &&
|
|
2513
|
-
wakeChunk(response, resolveListeners, handler.value);
|
|
2514
|
-
}
|
|
2515
|
-
},
|
|
2516
|
-
function (error) {
|
|
2517
|
-
if (!handler.errored) {
|
|
2518
|
-
handler.errored = !0;
|
|
2519
|
-
handler.value = null;
|
|
2520
|
-
handler.reason = error;
|
|
2521
|
-
var chunk = handler.chunk;
|
|
2522
|
-
null !== chunk &&
|
|
2523
|
-
"blocked" === chunk.status &&
|
|
2524
|
-
triggerErrorOnChunk(response, chunk, error);
|
|
2525
|
-
}
|
|
2632
|
+
reference.then(function (buffer) {
|
|
2633
|
+
try {
|
|
2634
|
+
null !== referenceArrayRoot &&
|
|
2635
|
+
bumpArrayCount(referenceArrayRoot, buffer.byteLength, response);
|
|
2636
|
+
var resolvedValue =
|
|
2637
|
+
constructor === ArrayBuffer ? buffer : new constructor(buffer);
|
|
2638
|
+
"__proto__" !== key && (parentObject[parentKey] = resolvedValue);
|
|
2639
|
+
"" === parentKey &&
|
|
2640
|
+
null === handler.value &&
|
|
2641
|
+
(handler.value = resolvedValue);
|
|
2642
|
+
} catch (x) {
|
|
2643
|
+
reject(x);
|
|
2644
|
+
return;
|
|
2526
2645
|
}
|
|
2527
|
-
|
|
2646
|
+
handler.deps--;
|
|
2647
|
+
0 === handler.deps &&
|
|
2648
|
+
((buffer = handler.chunk),
|
|
2649
|
+
null !== buffer &&
|
|
2650
|
+
"blocked" === buffer.status &&
|
|
2651
|
+
((resolvedValue = buffer.value),
|
|
2652
|
+
(buffer.status = "fulfilled"),
|
|
2653
|
+
(buffer.value = handler.value),
|
|
2654
|
+
(buffer.reason = null),
|
|
2655
|
+
null !== resolvedValue &&
|
|
2656
|
+
wakeChunk(response, resolvedValue, handler.value, buffer)));
|
|
2657
|
+
}, reject);
|
|
2528
2658
|
return null;
|
|
2529
2659
|
}
|
|
2530
2660
|
function resolveStream(response, id, stream, controller) {
|
|
@@ -2540,86 +2670,78 @@ function resolveStream(response, id, stream, controller) {
|
|
|
2540
2670
|
: controller.enqueueModel(chunks));
|
|
2541
2671
|
}
|
|
2542
2672
|
function parseReadableStream(response, reference, type) {
|
|
2673
|
+
function enqueue(value) {
|
|
2674
|
+
"bytes" !== type || ArrayBuffer.isView(value)
|
|
2675
|
+
? controller.enqueue(value)
|
|
2676
|
+
: flightController.error(Error("Invalid data for bytes stream."));
|
|
2677
|
+
}
|
|
2543
2678
|
reference = parseInt(reference.slice(2), 16);
|
|
2544
2679
|
if (response._chunks.has(reference))
|
|
2545
2680
|
throw Error("Already initialized stream.");
|
|
2546
2681
|
var controller = null,
|
|
2547
|
-
closed = !1
|
|
2548
|
-
|
|
2549
|
-
|
|
2550
|
-
|
|
2551
|
-
|
|
2552
|
-
}
|
|
2553
|
-
});
|
|
2554
|
-
var previousBlockedChunk = null;
|
|
2555
|
-
resolveStream(response, reference, type, {
|
|
2556
|
-
enqueueModel: function (json) {
|
|
2557
|
-
if (null === previousBlockedChunk) {
|
|
2558
|
-
var chunk = createResolvedModelChunk(response, json, -1);
|
|
2559
|
-
initializeModelChunk(chunk);
|
|
2560
|
-
"fulfilled" === chunk.status
|
|
2561
|
-
? controller.enqueue(chunk.value)
|
|
2562
|
-
: (chunk.then(
|
|
2563
|
-
function (v) {
|
|
2564
|
-
return controller.enqueue(v);
|
|
2565
|
-
},
|
|
2566
|
-
function (e) {
|
|
2567
|
-
return controller.error(e);
|
|
2568
|
-
}
|
|
2569
|
-
),
|
|
2570
|
-
(previousBlockedChunk = chunk));
|
|
2571
|
-
} else {
|
|
2572
|
-
chunk = previousBlockedChunk;
|
|
2573
|
-
var chunk$31 = new ReactPromise("pending", null, null);
|
|
2574
|
-
chunk$31.then(
|
|
2575
|
-
function (v) {
|
|
2576
|
-
return controller.enqueue(v);
|
|
2577
|
-
},
|
|
2578
|
-
function (e) {
|
|
2579
|
-
return controller.error(e);
|
|
2580
|
-
}
|
|
2581
|
-
);
|
|
2582
|
-
previousBlockedChunk = chunk$31;
|
|
2583
|
-
chunk.then(function () {
|
|
2584
|
-
previousBlockedChunk === chunk$31 && (previousBlockedChunk = null);
|
|
2585
|
-
resolveModelChunk(response, chunk$31, json, -1);
|
|
2586
|
-
});
|
|
2682
|
+
closed = !1,
|
|
2683
|
+
stream = new ReadableStream({
|
|
2684
|
+
type: type,
|
|
2685
|
+
start: function (c) {
|
|
2686
|
+
controller = c;
|
|
2587
2687
|
}
|
|
2588
|
-
},
|
|
2589
|
-
|
|
2590
|
-
|
|
2591
|
-
|
|
2592
|
-
|
|
2593
|
-
var
|
|
2594
|
-
|
|
2595
|
-
|
|
2596
|
-
|
|
2597
|
-
|
|
2598
|
-
|
|
2599
|
-
|
|
2600
|
-
|
|
2601
|
-
|
|
2602
|
-
|
|
2603
|
-
|
|
2604
|
-
|
|
2605
|
-
|
|
2606
|
-
|
|
2607
|
-
blockedChunk.then(function () {
|
|
2608
|
-
return controller.error(error);
|
|
2688
|
+
}),
|
|
2689
|
+
previousBlockedChunk = null,
|
|
2690
|
+
flightController = {
|
|
2691
|
+
enqueueModel: function (json) {
|
|
2692
|
+
if (null === previousBlockedChunk) {
|
|
2693
|
+
var chunk = createResolvedModelChunk(response, json, -1);
|
|
2694
|
+
initializeModelChunk(chunk);
|
|
2695
|
+
"fulfilled" === chunk.status
|
|
2696
|
+
? enqueue(chunk.value)
|
|
2697
|
+
: (chunk.then(enqueue, flightController.error),
|
|
2698
|
+
(previousBlockedChunk = chunk));
|
|
2699
|
+
} else {
|
|
2700
|
+
chunk = previousBlockedChunk;
|
|
2701
|
+
var chunk$32 = new ReactPromise("pending", null, null);
|
|
2702
|
+
chunk$32.then(enqueue, flightController.error);
|
|
2703
|
+
previousBlockedChunk = chunk$32;
|
|
2704
|
+
chunk.then(function () {
|
|
2705
|
+
previousBlockedChunk === chunk$32 && (previousBlockedChunk = null);
|
|
2706
|
+
resolveModelChunk(response, chunk$32, json, -1);
|
|
2609
2707
|
});
|
|
2610
2708
|
}
|
|
2611
|
-
|
|
2612
|
-
|
|
2613
|
-
|
|
2614
|
-
|
|
2615
|
-
|
|
2616
|
-
|
|
2709
|
+
},
|
|
2710
|
+
close: function () {
|
|
2711
|
+
if (!closed)
|
|
2712
|
+
if (((closed = !0), null === previousBlockedChunk))
|
|
2713
|
+
controller.close();
|
|
2714
|
+
else {
|
|
2715
|
+
var blockedChunk = previousBlockedChunk;
|
|
2716
|
+
previousBlockedChunk = null;
|
|
2717
|
+
blockedChunk.then(function () {
|
|
2718
|
+
return controller.close();
|
|
2719
|
+
});
|
|
2720
|
+
}
|
|
2721
|
+
},
|
|
2722
|
+
error: function (error) {
|
|
2723
|
+
if (!closed)
|
|
2724
|
+
if (((closed = !0), null === previousBlockedChunk))
|
|
2725
|
+
controller.error(error);
|
|
2726
|
+
else {
|
|
2727
|
+
var blockedChunk = previousBlockedChunk;
|
|
2728
|
+
previousBlockedChunk = null;
|
|
2729
|
+
blockedChunk.then(function () {
|
|
2730
|
+
return controller.error(error);
|
|
2731
|
+
});
|
|
2732
|
+
}
|
|
2733
|
+
}
|
|
2734
|
+
};
|
|
2735
|
+
resolveStream(response, reference, stream, flightController);
|
|
2736
|
+
return stream;
|
|
2617
2737
|
}
|
|
2618
|
-
function
|
|
2619
|
-
next =
|
|
2620
|
-
next[ASYNC_ITERATOR] = asyncIterator;
|
|
2621
|
-
return next;
|
|
2738
|
+
function FlightIterator(next) {
|
|
2739
|
+
this.next = next;
|
|
2622
2740
|
}
|
|
2741
|
+
FlightIterator.prototype = {};
|
|
2742
|
+
FlightIterator.prototype[ASYNC_ITERATOR] = function () {
|
|
2743
|
+
return this;
|
|
2744
|
+
};
|
|
2623
2745
|
function parseAsyncIterable(response, reference, iterator) {
|
|
2624
2746
|
reference = parseInt(reference.slice(2), 16);
|
|
2625
2747
|
if (response._chunks.has(reference))
|
|
@@ -2631,7 +2753,7 @@ function parseAsyncIterable(response, reference, iterator) {
|
|
|
2631
2753
|
$jscomp$compprop5 =
|
|
2632
2754
|
(($jscomp$compprop5[ASYNC_ITERATOR] = function () {
|
|
2633
2755
|
var nextReadIndex = 0;
|
|
2634
|
-
return
|
|
2756
|
+
return new FlightIterator(function (arg) {
|
|
2635
2757
|
if (void 0 !== arg)
|
|
2636
2758
|
throw Error(
|
|
2637
2759
|
"Values cannot be passed to next() of AsyncIterables passed to Client Components."
|
|
@@ -2711,17 +2833,28 @@ function parseAsyncIterable(response, reference, iterator) {
|
|
|
2711
2833
|
});
|
|
2712
2834
|
return iterator;
|
|
2713
2835
|
}
|
|
2714
|
-
function parseModelString(response, obj, key, value, reference) {
|
|
2836
|
+
function parseModelString(response, obj, key, value, reference, arrayRoot) {
|
|
2715
2837
|
if ("$" === value[0]) {
|
|
2716
2838
|
switch (value[1]) {
|
|
2717
2839
|
case "$":
|
|
2718
|
-
return
|
|
2840
|
+
return (
|
|
2841
|
+
null !== arrayRoot &&
|
|
2842
|
+
bumpArrayCount(arrayRoot, value.length - 1, response),
|
|
2843
|
+
value.slice(1)
|
|
2844
|
+
);
|
|
2719
2845
|
case "@":
|
|
2720
2846
|
return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj);
|
|
2721
2847
|
case "h":
|
|
2722
2848
|
return (
|
|
2723
|
-
(
|
|
2724
|
-
getOutlinedModel(
|
|
2849
|
+
(arrayRoot = value.slice(2)),
|
|
2850
|
+
getOutlinedModel(
|
|
2851
|
+
response,
|
|
2852
|
+
arrayRoot,
|
|
2853
|
+
obj,
|
|
2854
|
+
key,
|
|
2855
|
+
null,
|
|
2856
|
+
loadServerReference$1
|
|
2857
|
+
)
|
|
2725
2858
|
);
|
|
2726
2859
|
case "T":
|
|
2727
2860
|
if (void 0 === reference || void 0 === response._temporaryReferences)
|
|
@@ -2734,27 +2867,37 @@ function parseModelString(response, obj, key, value, reference) {
|
|
|
2734
2867
|
);
|
|
2735
2868
|
case "Q":
|
|
2736
2869
|
return (
|
|
2737
|
-
(
|
|
2738
|
-
getOutlinedModel(response,
|
|
2870
|
+
(arrayRoot = value.slice(2)),
|
|
2871
|
+
getOutlinedModel(response, arrayRoot, obj, key, null, createMap)
|
|
2739
2872
|
);
|
|
2740
2873
|
case "W":
|
|
2741
2874
|
return (
|
|
2742
|
-
(
|
|
2743
|
-
getOutlinedModel(response,
|
|
2875
|
+
(arrayRoot = value.slice(2)),
|
|
2876
|
+
getOutlinedModel(response, arrayRoot, obj, key, null, createSet)
|
|
2744
2877
|
);
|
|
2745
2878
|
case "K":
|
|
2746
2879
|
obj = value.slice(2);
|
|
2747
|
-
|
|
2748
|
-
|
|
2749
|
-
response._formData
|
|
2750
|
-
|
|
2751
|
-
|
|
2752
|
-
|
|
2753
|
-
|
|
2880
|
+
obj = response._prefix + obj + "_";
|
|
2881
|
+
key = new FormData();
|
|
2882
|
+
response = response._formData;
|
|
2883
|
+
arrayRoot = Array.from(response.keys());
|
|
2884
|
+
for (value = 0; value < arrayRoot.length; value++)
|
|
2885
|
+
if (((reference = arrayRoot[value]), reference.startsWith(obj))) {
|
|
2886
|
+
for (
|
|
2887
|
+
var entries = response.getAll(reference),
|
|
2888
|
+
newKey = reference.slice(obj.length),
|
|
2889
|
+
j = 0;
|
|
2890
|
+
j < entries.length;
|
|
2891
|
+
j++
|
|
2892
|
+
)
|
|
2893
|
+
key.append(newKey, entries[j]);
|
|
2894
|
+
response.delete(reference);
|
|
2895
|
+
}
|
|
2896
|
+
return key;
|
|
2754
2897
|
case "i":
|
|
2755
2898
|
return (
|
|
2756
|
-
(
|
|
2757
|
-
getOutlinedModel(response,
|
|
2899
|
+
(arrayRoot = value.slice(2)),
|
|
2900
|
+
getOutlinedModel(response, arrayRoot, obj, key, null, extractIterator)
|
|
2758
2901
|
);
|
|
2759
2902
|
case "I":
|
|
2760
2903
|
return Infinity;
|
|
@@ -2767,35 +2910,147 @@ function parseModelString(response, obj, key, value, reference) {
|
|
|
2767
2910
|
case "D":
|
|
2768
2911
|
return new Date(Date.parse(value.slice(2)));
|
|
2769
2912
|
case "n":
|
|
2770
|
-
|
|
2913
|
+
obj = value.slice(2);
|
|
2914
|
+
if (300 < obj.length)
|
|
2915
|
+
throw Error(
|
|
2916
|
+
"BigInt is too large. Received " +
|
|
2917
|
+
obj.length +
|
|
2918
|
+
" digits but the limit is 300."
|
|
2919
|
+
);
|
|
2920
|
+
null !== arrayRoot && bumpArrayCount(arrayRoot, obj.length, response);
|
|
2921
|
+
return BigInt(obj);
|
|
2771
2922
|
}
|
|
2772
2923
|
switch (value[1]) {
|
|
2773
2924
|
case "A":
|
|
2774
|
-
return parseTypedArray(
|
|
2925
|
+
return parseTypedArray(
|
|
2926
|
+
response,
|
|
2927
|
+
value,
|
|
2928
|
+
ArrayBuffer,
|
|
2929
|
+
1,
|
|
2930
|
+
obj,
|
|
2931
|
+
key,
|
|
2932
|
+
arrayRoot
|
|
2933
|
+
);
|
|
2775
2934
|
case "O":
|
|
2776
|
-
return parseTypedArray(
|
|
2935
|
+
return parseTypedArray(
|
|
2936
|
+
response,
|
|
2937
|
+
value,
|
|
2938
|
+
Int8Array,
|
|
2939
|
+
1,
|
|
2940
|
+
obj,
|
|
2941
|
+
key,
|
|
2942
|
+
arrayRoot
|
|
2943
|
+
);
|
|
2777
2944
|
case "o":
|
|
2778
|
-
return parseTypedArray(
|
|
2945
|
+
return parseTypedArray(
|
|
2946
|
+
response,
|
|
2947
|
+
value,
|
|
2948
|
+
Uint8Array,
|
|
2949
|
+
1,
|
|
2950
|
+
obj,
|
|
2951
|
+
key,
|
|
2952
|
+
arrayRoot
|
|
2953
|
+
);
|
|
2779
2954
|
case "U":
|
|
2780
|
-
return parseTypedArray(
|
|
2955
|
+
return parseTypedArray(
|
|
2956
|
+
response,
|
|
2957
|
+
value,
|
|
2958
|
+
Uint8ClampedArray,
|
|
2959
|
+
1,
|
|
2960
|
+
obj,
|
|
2961
|
+
key,
|
|
2962
|
+
arrayRoot
|
|
2963
|
+
);
|
|
2781
2964
|
case "S":
|
|
2782
|
-
return parseTypedArray(
|
|
2965
|
+
return parseTypedArray(
|
|
2966
|
+
response,
|
|
2967
|
+
value,
|
|
2968
|
+
Int16Array,
|
|
2969
|
+
2,
|
|
2970
|
+
obj,
|
|
2971
|
+
key,
|
|
2972
|
+
arrayRoot
|
|
2973
|
+
);
|
|
2783
2974
|
case "s":
|
|
2784
|
-
return parseTypedArray(
|
|
2975
|
+
return parseTypedArray(
|
|
2976
|
+
response,
|
|
2977
|
+
value,
|
|
2978
|
+
Uint16Array,
|
|
2979
|
+
2,
|
|
2980
|
+
obj,
|
|
2981
|
+
key,
|
|
2982
|
+
arrayRoot
|
|
2983
|
+
);
|
|
2785
2984
|
case "L":
|
|
2786
|
-
return parseTypedArray(
|
|
2985
|
+
return parseTypedArray(
|
|
2986
|
+
response,
|
|
2987
|
+
value,
|
|
2988
|
+
Int32Array,
|
|
2989
|
+
4,
|
|
2990
|
+
obj,
|
|
2991
|
+
key,
|
|
2992
|
+
arrayRoot
|
|
2993
|
+
);
|
|
2787
2994
|
case "l":
|
|
2788
|
-
return parseTypedArray(
|
|
2995
|
+
return parseTypedArray(
|
|
2996
|
+
response,
|
|
2997
|
+
value,
|
|
2998
|
+
Uint32Array,
|
|
2999
|
+
4,
|
|
3000
|
+
obj,
|
|
3001
|
+
key,
|
|
3002
|
+
arrayRoot
|
|
3003
|
+
);
|
|
2789
3004
|
case "G":
|
|
2790
|
-
return parseTypedArray(
|
|
3005
|
+
return parseTypedArray(
|
|
3006
|
+
response,
|
|
3007
|
+
value,
|
|
3008
|
+
Float32Array,
|
|
3009
|
+
4,
|
|
3010
|
+
obj,
|
|
3011
|
+
key,
|
|
3012
|
+
arrayRoot
|
|
3013
|
+
);
|
|
2791
3014
|
case "g":
|
|
2792
|
-
return parseTypedArray(
|
|
3015
|
+
return parseTypedArray(
|
|
3016
|
+
response,
|
|
3017
|
+
value,
|
|
3018
|
+
Float64Array,
|
|
3019
|
+
8,
|
|
3020
|
+
obj,
|
|
3021
|
+
key,
|
|
3022
|
+
arrayRoot
|
|
3023
|
+
);
|
|
2793
3024
|
case "M":
|
|
2794
|
-
return parseTypedArray(
|
|
3025
|
+
return parseTypedArray(
|
|
3026
|
+
response,
|
|
3027
|
+
value,
|
|
3028
|
+
BigInt64Array,
|
|
3029
|
+
8,
|
|
3030
|
+
obj,
|
|
3031
|
+
key,
|
|
3032
|
+
arrayRoot
|
|
3033
|
+
);
|
|
2795
3034
|
case "m":
|
|
2796
|
-
return parseTypedArray(
|
|
3035
|
+
return parseTypedArray(
|
|
3036
|
+
response,
|
|
3037
|
+
value,
|
|
3038
|
+
BigUint64Array,
|
|
3039
|
+
8,
|
|
3040
|
+
obj,
|
|
3041
|
+
key,
|
|
3042
|
+
arrayRoot
|
|
3043
|
+
);
|
|
2797
3044
|
case "V":
|
|
2798
|
-
return parseTypedArray(
|
|
3045
|
+
return parseTypedArray(
|
|
3046
|
+
response,
|
|
3047
|
+
value,
|
|
3048
|
+
DataView,
|
|
3049
|
+
1,
|
|
3050
|
+
obj,
|
|
3051
|
+
key,
|
|
3052
|
+
arrayRoot
|
|
3053
|
+
);
|
|
2799
3054
|
case "B":
|
|
2800
3055
|
return (
|
|
2801
3056
|
(obj = parseInt(value.slice(2), 16)),
|
|
@@ -2813,8 +3068,9 @@ function parseModelString(response, obj, key, value, reference) {
|
|
|
2813
3068
|
return parseAsyncIterable(response, value, !0);
|
|
2814
3069
|
}
|
|
2815
3070
|
value = value.slice(1);
|
|
2816
|
-
return getOutlinedModel(response, value, obj, key, createModel);
|
|
3071
|
+
return getOutlinedModel(response, value, obj, key, arrayRoot, createModel);
|
|
2817
3072
|
}
|
|
3073
|
+
null !== arrayRoot && bumpArrayCount(arrayRoot, value.length, response);
|
|
2818
3074
|
return value;
|
|
2819
3075
|
}
|
|
2820
3076
|
function createResponse(bundlerConfig, formFieldPrefix, temporaryReferences) {
|
|
@@ -2822,25 +3078,38 @@ function createResponse(bundlerConfig, formFieldPrefix, temporaryReferences) {
|
|
|
2822
3078
|
3 < arguments.length && void 0 !== arguments[3]
|
|
2823
3079
|
? arguments[3]
|
|
2824
3080
|
: new FormData(),
|
|
3081
|
+
arraySizeLimit =
|
|
3082
|
+
4 < arguments.length && void 0 !== arguments[4] ? arguments[4] : 1e6,
|
|
2825
3083
|
chunks = new Map();
|
|
2826
3084
|
return {
|
|
2827
3085
|
_bundlerConfig: bundlerConfig,
|
|
2828
3086
|
_prefix: formFieldPrefix,
|
|
2829
3087
|
_formData: backingFormData,
|
|
2830
3088
|
_chunks: chunks,
|
|
2831
|
-
_temporaryReferences: temporaryReferences
|
|
3089
|
+
_temporaryReferences: temporaryReferences,
|
|
3090
|
+
_rootArrayContexts: new WeakMap(),
|
|
3091
|
+
_arraySizeLimit: arraySizeLimit
|
|
2832
3092
|
};
|
|
2833
3093
|
}
|
|
2834
3094
|
function close(response) {
|
|
2835
3095
|
reportGlobalError(response, Error("Connection closed."));
|
|
2836
3096
|
}
|
|
2837
|
-
function loadServerReference(bundlerConfig,
|
|
3097
|
+
function loadServerReference(bundlerConfig, metaData) {
|
|
3098
|
+
var id = metaData.id;
|
|
3099
|
+
if ("string" !== typeof id) return null;
|
|
2838
3100
|
var serverReference = resolveServerReference(bundlerConfig, id);
|
|
2839
3101
|
bundlerConfig = preloadModule(serverReference);
|
|
2840
|
-
|
|
2841
|
-
|
|
3102
|
+
metaData = metaData.bound;
|
|
3103
|
+
return metaData instanceof Promise
|
|
3104
|
+
? Promise.all([metaData, bundlerConfig]).then(function (_ref) {
|
|
2842
3105
|
_ref = _ref[0];
|
|
2843
3106
|
var fn = requireModule(serverReference);
|
|
3107
|
+
if (1e3 < _ref.length)
|
|
3108
|
+
throw Error(
|
|
3109
|
+
"Server Function has too many bound arguments. Received " +
|
|
3110
|
+
_ref.length +
|
|
3111
|
+
" but the limit is 1000."
|
|
3112
|
+
);
|
|
2844
3113
|
return fn.bind.apply(fn, [null].concat(_ref));
|
|
2845
3114
|
})
|
|
2846
3115
|
: bundlerConfig
|
|
@@ -2849,8 +3118,19 @@ function loadServerReference(bundlerConfig, id, bound) {
|
|
|
2849
3118
|
})
|
|
2850
3119
|
: Promise.resolve(requireModule(serverReference));
|
|
2851
3120
|
}
|
|
2852
|
-
function decodeBoundActionMetaData(
|
|
2853
|
-
body
|
|
3121
|
+
function decodeBoundActionMetaData(
|
|
3122
|
+
body,
|
|
3123
|
+
serverManifest,
|
|
3124
|
+
formFieldPrefix,
|
|
3125
|
+
arraySizeLimit
|
|
3126
|
+
) {
|
|
3127
|
+
body = createResponse(
|
|
3128
|
+
serverManifest,
|
|
3129
|
+
formFieldPrefix,
|
|
3130
|
+
void 0,
|
|
3131
|
+
body,
|
|
3132
|
+
arraySizeLimit
|
|
3133
|
+
);
|
|
2854
3134
|
close(body);
|
|
2855
3135
|
body = getChunk(body, 0);
|
|
2856
3136
|
body.then(function () {});
|
|
@@ -2866,16 +3146,24 @@ exports.createTemporaryReferenceSet = function () {
|
|
|
2866
3146
|
};
|
|
2867
3147
|
exports.decodeAction = function (body, serverManifest) {
|
|
2868
3148
|
var formData = new FormData(),
|
|
2869
|
-
action = null
|
|
3149
|
+
action = null,
|
|
3150
|
+
seenActions = new Set();
|
|
2870
3151
|
body.forEach(function (value, key) {
|
|
2871
3152
|
key.startsWith("$ACTION_")
|
|
2872
3153
|
? key.startsWith("$ACTION_REF_")
|
|
2873
|
-
? (
|
|
3154
|
+
? seenActions.has(key) ||
|
|
3155
|
+
(seenActions.add(key),
|
|
3156
|
+
(value = "$ACTION_" + key.slice(12) + ":"),
|
|
2874
3157
|
(value = decodeBoundActionMetaData(body, serverManifest, value)),
|
|
2875
|
-
(action = loadServerReference(serverManifest, value
|
|
3158
|
+
(action = loadServerReference(serverManifest, value)))
|
|
2876
3159
|
: key.startsWith("$ACTION_ID_") &&
|
|
2877
|
-
(
|
|
2878
|
-
(
|
|
3160
|
+
!seenActions.has(key) &&
|
|
3161
|
+
(seenActions.add(key),
|
|
3162
|
+
(value = key.slice(11)),
|
|
3163
|
+
(action = loadServerReference(serverManifest, {
|
|
3164
|
+
id: value,
|
|
3165
|
+
bound: null
|
|
3166
|
+
})))
|
|
2879
3167
|
: formData.append(key, value);
|
|
2880
3168
|
});
|
|
2881
3169
|
return null === action
|
|
@@ -2911,7 +3199,8 @@ exports.decodeReply = function (body, webpackMap, options) {
|
|
|
2911
3199
|
webpackMap,
|
|
2912
3200
|
"",
|
|
2913
3201
|
options ? options.temporaryReferences : void 0,
|
|
2914
|
-
body
|
|
3202
|
+
body,
|
|
3203
|
+
options ? options.arraySizeLimit : void 0
|
|
2915
3204
|
);
|
|
2916
3205
|
webpackMap = getChunk(body, 0);
|
|
2917
3206
|
close(body);
|