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