react-server-dom-parcel 19.2.3 → 19.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/react-server-dom-parcel-client.browser.development.js +129 -110
- package/cjs/react-server-dom-parcel-client.browser.production.js +67 -55
- package/cjs/react-server-dom-parcel-client.edge.development.js +127 -108
- package/cjs/react-server-dom-parcel-client.edge.production.js +67 -55
- package/cjs/react-server-dom-parcel-client.node.development.js +127 -108
- package/cjs/react-server-dom-parcel-client.node.production.js +67 -55
- package/cjs/react-server-dom-parcel-server.browser.development.js +619 -348
- package/cjs/react-server-dom-parcel-server.browser.production.js +592 -311
- package/cjs/react-server-dom-parcel-server.edge.development.js +619 -348
- package/cjs/react-server-dom-parcel-server.edge.production.js +592 -311
- package/cjs/react-server-dom-parcel-server.node.development.js +628 -353
- package/cjs/react-server-dom-parcel-server.node.production.js +601 -316
- package/package.json +3 -3
|
@@ -695,7 +695,7 @@ function describeObjectForErrorMessage(objectOrArray, expandedName) {
|
|
|
695
695
|
: "\n " + str;
|
|
696
696
|
}
|
|
697
697
|
var hasOwnProperty = Object.prototype.hasOwnProperty,
|
|
698
|
-
ObjectPrototype = Object.prototype,
|
|
698
|
+
ObjectPrototype$1 = Object.prototype,
|
|
699
699
|
stringify = JSON.stringify;
|
|
700
700
|
function defaultErrorHandler(error) {
|
|
701
701
|
console.error(error);
|
|
@@ -1544,7 +1544,7 @@ function renderModelDestructive(
|
|
|
1544
1544
|
if (value instanceof Date) return "$D" + value.toJSON();
|
|
1545
1545
|
request = getPrototypeOf(value);
|
|
1546
1546
|
if (
|
|
1547
|
-
request !== ObjectPrototype &&
|
|
1547
|
+
request !== ObjectPrototype$1 &&
|
|
1548
1548
|
(null === request || null !== getPrototypeOf(request))
|
|
1549
1549
|
)
|
|
1550
1550
|
throw Error(
|
|
@@ -2080,16 +2080,23 @@ ReactPromise.prototype.then = function (resolve, reject) {
|
|
|
2080
2080
|
case "fulfilled":
|
|
2081
2081
|
if ("function" === typeof resolve) {
|
|
2082
2082
|
for (
|
|
2083
|
-
var inspectedValue = this.value,
|
|
2083
|
+
var inspectedValue = this.value,
|
|
2084
|
+
cycleProtection = 0,
|
|
2085
|
+
visited = new Set();
|
|
2084
2086
|
inspectedValue instanceof ReactPromise;
|
|
2085
2087
|
|
|
2086
2088
|
) {
|
|
2087
2089
|
cycleProtection++;
|
|
2088
|
-
if (
|
|
2090
|
+
if (
|
|
2091
|
+
inspectedValue === this ||
|
|
2092
|
+
visited.has(inspectedValue) ||
|
|
2093
|
+
1e3 < cycleProtection
|
|
2094
|
+
) {
|
|
2089
2095
|
"function" === typeof reject &&
|
|
2090
2096
|
reject(Error("Cannot have cyclic thenables."));
|
|
2091
2097
|
return;
|
|
2092
2098
|
}
|
|
2099
|
+
visited.add(inspectedValue);
|
|
2093
2100
|
if ("fulfilled" === inspectedValue.status)
|
|
2094
2101
|
inspectedValue = inspectedValue.value;
|
|
2095
2102
|
else break;
|
|
@@ -2108,12 +2115,14 @@ ReactPromise.prototype.then = function (resolve, reject) {
|
|
|
2108
2115
|
"function" === typeof reject && reject(this.reason);
|
|
2109
2116
|
}
|
|
2110
2117
|
};
|
|
2111
|
-
|
|
2118
|
+
var ObjectPrototype = Object.prototype,
|
|
2119
|
+
ArrayPrototype = Array.prototype;
|
|
2120
|
+
function wakeChunk(response, listeners, value, chunk) {
|
|
2112
2121
|
for (var i = 0; i < listeners.length; i++) {
|
|
2113
2122
|
var listener = listeners[i];
|
|
2114
2123
|
"function" === typeof listener
|
|
2115
2124
|
? listener(value)
|
|
2116
|
-
: fulfillReference(response, listener, value);
|
|
2125
|
+
: fulfillReference(response, listener, value, chunk.reason);
|
|
2117
2126
|
}
|
|
2118
2127
|
}
|
|
2119
2128
|
function rejectChunk(response, listeners, error) {
|
|
@@ -2124,27 +2133,6 @@ function rejectChunk(response, listeners, error) {
|
|
|
2124
2133
|
: rejectReference(response, listener.handler, error);
|
|
2125
2134
|
}
|
|
2126
2135
|
}
|
|
2127
|
-
function resolveBlockedCycle(resolvedChunk, reference) {
|
|
2128
|
-
var referencedChunk = reference.handler.chunk;
|
|
2129
|
-
if (null === referencedChunk) return null;
|
|
2130
|
-
if (referencedChunk === resolvedChunk) return reference.handler;
|
|
2131
|
-
reference = referencedChunk.value;
|
|
2132
|
-
if (null !== reference)
|
|
2133
|
-
for (
|
|
2134
|
-
referencedChunk = 0;
|
|
2135
|
-
referencedChunk < reference.length;
|
|
2136
|
-
referencedChunk++
|
|
2137
|
-
) {
|
|
2138
|
-
var listener = reference[referencedChunk];
|
|
2139
|
-
if (
|
|
2140
|
-
"function" !== typeof listener &&
|
|
2141
|
-
((listener = resolveBlockedCycle(resolvedChunk, listener)),
|
|
2142
|
-
null !== listener)
|
|
2143
|
-
)
|
|
2144
|
-
return listener;
|
|
2145
|
-
}
|
|
2146
|
-
return null;
|
|
2147
|
-
}
|
|
2148
2136
|
function triggerErrorOnChunk(response, chunk, error) {
|
|
2149
2137
|
if ("pending" !== chunk.status && "blocked" !== chunk.status)
|
|
2150
2138
|
chunk.reason.error(error);
|
|
@@ -2180,33 +2168,11 @@ function resolveModelChunk(response, chunk, value, id) {
|
|
|
2180
2168
|
chunk.reason =
|
|
2181
2169
|
((value.id = id), (value[RESPONSE_SYMBOL] = response), value);
|
|
2182
2170
|
if (null !== resolveListeners)
|
|
2183
|
-
|
|
2171
|
+
switch ((initializeModelChunk(chunk), chunk.status)) {
|
|
2184
2172
|
case "fulfilled":
|
|
2185
|
-
wakeChunk(response, resolveListeners, chunk.value);
|
|
2173
|
+
wakeChunk(response, resolveListeners, chunk.value, chunk);
|
|
2186
2174
|
break;
|
|
2187
2175
|
case "blocked":
|
|
2188
|
-
for (value = 0; value < resolveListeners.length; value++)
|
|
2189
|
-
if (((id = resolveListeners[value]), "function" !== typeof id)) {
|
|
2190
|
-
var cyclicHandler = resolveBlockedCycle(chunk, id);
|
|
2191
|
-
if (null !== cyclicHandler)
|
|
2192
|
-
switch (
|
|
2193
|
-
(fulfillReference(response, id, cyclicHandler.value),
|
|
2194
|
-
resolveListeners.splice(value, 1),
|
|
2195
|
-
value--,
|
|
2196
|
-
null !== rejectListeners &&
|
|
2197
|
-
((id = rejectListeners.indexOf(id)),
|
|
2198
|
-
-1 !== id && rejectListeners.splice(id, 1)),
|
|
2199
|
-
chunk.status)
|
|
2200
|
-
) {
|
|
2201
|
-
case "fulfilled":
|
|
2202
|
-
wakeChunk(response, resolveListeners, chunk.value);
|
|
2203
|
-
break a;
|
|
2204
|
-
case "rejected":
|
|
2205
|
-
null !== rejectListeners &&
|
|
2206
|
-
rejectChunk(response, rejectListeners, chunk.reason);
|
|
2207
|
-
break a;
|
|
2208
|
-
}
|
|
2209
|
-
}
|
|
2210
2176
|
case "pending":
|
|
2211
2177
|
if (chunk.value)
|
|
2212
2178
|
for (response = 0; response < resolveListeners.length; response++)
|
|
@@ -2223,7 +2189,8 @@ function resolveModelChunk(response, chunk, value, id) {
|
|
|
2223
2189
|
} else chunk.reason = rejectListeners;
|
|
2224
2190
|
break;
|
|
2225
2191
|
case "rejected":
|
|
2226
|
-
rejectListeners &&
|
|
2192
|
+
rejectListeners &&
|
|
2193
|
+
rejectChunk(response, rejectListeners, chunk.reason);
|
|
2227
2194
|
}
|
|
2228
2195
|
}
|
|
2229
2196
|
}
|
|
@@ -2246,15 +2213,50 @@ function resolveIteratorResultChunk(response, chunk, value, done) {
|
|
|
2246
2213
|
);
|
|
2247
2214
|
}
|
|
2248
2215
|
function loadServerReference$1(response, metaData, parentObject, key) {
|
|
2216
|
+
function reject(error) {
|
|
2217
|
+
var rejectListeners = blockedPromise.reason,
|
|
2218
|
+
erroredPromise = blockedPromise;
|
|
2219
|
+
erroredPromise.status = "rejected";
|
|
2220
|
+
erroredPromise.value = null;
|
|
2221
|
+
erroredPromise.reason = error;
|
|
2222
|
+
null !== rejectListeners && rejectChunk(response, rejectListeners, error);
|
|
2223
|
+
rejectReference(response, handler, error);
|
|
2224
|
+
}
|
|
2249
2225
|
var id = metaData.id;
|
|
2250
2226
|
if ("string" !== typeof id || "then" === key) return null;
|
|
2227
|
+
var cachedPromise = metaData.$$promise;
|
|
2228
|
+
if (void 0 !== cachedPromise) {
|
|
2229
|
+
if ("fulfilled" === cachedPromise.status)
|
|
2230
|
+
return (
|
|
2231
|
+
(cachedPromise = cachedPromise.value),
|
|
2232
|
+
"__proto__" === key ? null : (parentObject[key] = cachedPromise)
|
|
2233
|
+
);
|
|
2234
|
+
initializingHandler
|
|
2235
|
+
? ((id = initializingHandler), id.deps++)
|
|
2236
|
+
: (id = initializingHandler =
|
|
2237
|
+
{ chunk: null, value: null, reason: null, deps: 1, errored: !1 });
|
|
2238
|
+
cachedPromise.then(
|
|
2239
|
+
resolveReference.bind(null, response, id, parentObject, key),
|
|
2240
|
+
rejectReference.bind(null, response, id)
|
|
2241
|
+
);
|
|
2242
|
+
return null;
|
|
2243
|
+
}
|
|
2244
|
+
var blockedPromise = new ReactPromise("blocked", null, null);
|
|
2245
|
+
metaData.$$promise = blockedPromise;
|
|
2251
2246
|
var serverReference = resolveServerReference(response._bundlerConfig, id);
|
|
2252
|
-
|
|
2253
|
-
|
|
2254
|
-
|
|
2255
|
-
|
|
2256
|
-
else if (
|
|
2257
|
-
|
|
2247
|
+
cachedPromise = metaData.bound;
|
|
2248
|
+
if ((id = preloadModule(serverReference)))
|
|
2249
|
+
cachedPromise instanceof ReactPromise &&
|
|
2250
|
+
(id = Promise.all([id, cachedPromise]));
|
|
2251
|
+
else if (cachedPromise instanceof ReactPromise)
|
|
2252
|
+
id = Promise.resolve(cachedPromise);
|
|
2253
|
+
else
|
|
2254
|
+
return (
|
|
2255
|
+
(cachedPromise = requireModule(serverReference)),
|
|
2256
|
+
(id = blockedPromise),
|
|
2257
|
+
(id.status = "fulfilled"),
|
|
2258
|
+
(id.value = cachedPromise)
|
|
2259
|
+
);
|
|
2258
2260
|
if (initializingHandler) {
|
|
2259
2261
|
var handler = initializingHandler;
|
|
2260
2262
|
handler.deps++;
|
|
@@ -2266,74 +2268,105 @@ function loadServerReference$1(response, metaData, parentObject, key) {
|
|
|
2266
2268
|
deps: 1,
|
|
2267
2269
|
errored: !1
|
|
2268
2270
|
};
|
|
2269
|
-
|
|
2270
|
-
|
|
2271
|
-
|
|
2272
|
-
|
|
2273
|
-
|
|
2274
|
-
|
|
2275
|
-
|
|
2276
|
-
|
|
2277
|
-
|
|
2278
|
-
|
|
2279
|
-
|
|
2280
|
-
|
|
2281
|
-
|
|
2282
|
-
|
|
2283
|
-
null !== resolvedValue &&
|
|
2284
|
-
"blocked" === resolvedValue.status &&
|
|
2285
|
-
((promiseValue = resolvedValue.value),
|
|
2286
|
-
(resolvedValue.status = "fulfilled"),
|
|
2287
|
-
(resolvedValue.value = handler.value),
|
|
2288
|
-
(resolvedValue.reason = null),
|
|
2289
|
-
null !== promiseValue &&
|
|
2290
|
-
wakeChunk(response, promiseValue, handler.value)));
|
|
2291
|
-
},
|
|
2292
|
-
function (error) {
|
|
2293
|
-
if (!handler.errored) {
|
|
2294
|
-
handler.errored = !0;
|
|
2295
|
-
handler.value = null;
|
|
2296
|
-
handler.reason = error;
|
|
2297
|
-
var chunk = handler.chunk;
|
|
2298
|
-
null !== chunk &&
|
|
2299
|
-
"blocked" === chunk.status &&
|
|
2300
|
-
triggerErrorOnChunk(response, chunk, error);
|
|
2271
|
+
id.then(function () {
|
|
2272
|
+
var resolvedValue = requireModule(serverReference);
|
|
2273
|
+
if (metaData.bound) {
|
|
2274
|
+
var promiseValue = metaData.bound.value;
|
|
2275
|
+
promiseValue = isArrayImpl(promiseValue) ? promiseValue.slice(0) : [];
|
|
2276
|
+
if (1e3 < promiseValue.length) {
|
|
2277
|
+
reject(
|
|
2278
|
+
Error(
|
|
2279
|
+
"Server Function has too many bound arguments. Received " +
|
|
2280
|
+
promiseValue.length +
|
|
2281
|
+
" but the limit is 1000."
|
|
2282
|
+
)
|
|
2283
|
+
);
|
|
2284
|
+
return;
|
|
2301
2285
|
}
|
|
2286
|
+
promiseValue.unshift(null);
|
|
2287
|
+
resolvedValue = resolvedValue.bind.apply(resolvedValue, promiseValue);
|
|
2302
2288
|
}
|
|
2303
|
-
|
|
2289
|
+
promiseValue = blockedPromise.value;
|
|
2290
|
+
var initializedPromise = blockedPromise;
|
|
2291
|
+
initializedPromise.status = "fulfilled";
|
|
2292
|
+
initializedPromise.value = resolvedValue;
|
|
2293
|
+
initializedPromise.reason = null;
|
|
2294
|
+
null !== promiseValue &&
|
|
2295
|
+
wakeChunk(response, promiseValue, resolvedValue, initializedPromise);
|
|
2296
|
+
resolveReference(response, handler, parentObject, key, resolvedValue);
|
|
2297
|
+
}, reject);
|
|
2304
2298
|
return null;
|
|
2305
2299
|
}
|
|
2306
|
-
function reviveModel(
|
|
2300
|
+
function reviveModel(
|
|
2301
|
+
response,
|
|
2302
|
+
parentObj,
|
|
2303
|
+
parentKey,
|
|
2304
|
+
value,
|
|
2305
|
+
reference,
|
|
2306
|
+
arrayRoot
|
|
2307
|
+
) {
|
|
2307
2308
|
if ("string" === typeof value)
|
|
2308
|
-
return parseModelString(
|
|
2309
|
+
return parseModelString(
|
|
2310
|
+
response,
|
|
2311
|
+
parentObj,
|
|
2312
|
+
parentKey,
|
|
2313
|
+
value,
|
|
2314
|
+
reference,
|
|
2315
|
+
arrayRoot
|
|
2316
|
+
);
|
|
2309
2317
|
if ("object" === typeof value && null !== value)
|
|
2310
2318
|
if (
|
|
2311
2319
|
(void 0 !== reference &&
|
|
2312
2320
|
void 0 !== response._temporaryReferences &&
|
|
2313
2321
|
response._temporaryReferences.set(value, reference),
|
|
2314
|
-
|
|
2315
|
-
)
|
|
2316
|
-
|
|
2317
|
-
|
|
2322
|
+
isArrayImpl(value))
|
|
2323
|
+
) {
|
|
2324
|
+
if (null === arrayRoot) {
|
|
2325
|
+
var childContext = { count: 0, fork: !1 };
|
|
2326
|
+
response._rootArrayContexts.set(value, childContext);
|
|
2327
|
+
} else childContext = arrayRoot;
|
|
2328
|
+
1 < value.length && (childContext.fork = !0);
|
|
2329
|
+
bumpArrayCount(childContext, value.length + 1, response);
|
|
2330
|
+
for (parentObj = 0; parentObj < value.length; parentObj++)
|
|
2331
|
+
value[parentObj] = reviveModel(
|
|
2318
2332
|
response,
|
|
2319
2333
|
value,
|
|
2320
|
-
"" +
|
|
2321
|
-
value[
|
|
2322
|
-
void 0 !== reference ? reference + ":" +
|
|
2334
|
+
"" + parentObj,
|
|
2335
|
+
value[parentObj],
|
|
2336
|
+
void 0 !== reference ? reference + ":" + parentObj : void 0,
|
|
2337
|
+
childContext
|
|
2323
2338
|
);
|
|
2324
|
-
else
|
|
2325
|
-
for (
|
|
2326
|
-
hasOwnProperty.call(value,
|
|
2327
|
-
(
|
|
2328
|
-
|
|
2329
|
-
|
|
2330
|
-
|
|
2331
|
-
|
|
2332
|
-
|
|
2333
|
-
|
|
2334
|
-
|
|
2339
|
+
} else
|
|
2340
|
+
for (childContext in value)
|
|
2341
|
+
hasOwnProperty.call(value, childContext) &&
|
|
2342
|
+
("__proto__" === childContext
|
|
2343
|
+
? delete value[childContext]
|
|
2344
|
+
: ((parentObj =
|
|
2345
|
+
void 0 !== reference && -1 === childContext.indexOf(":")
|
|
2346
|
+
? reference + ":" + childContext
|
|
2347
|
+
: void 0),
|
|
2348
|
+
(parentObj = reviveModel(
|
|
2349
|
+
response,
|
|
2350
|
+
value,
|
|
2351
|
+
childContext,
|
|
2352
|
+
value[childContext],
|
|
2353
|
+
parentObj,
|
|
2354
|
+
null
|
|
2355
|
+
)),
|
|
2356
|
+
void 0 !== parentObj
|
|
2357
|
+
? (value[childContext] = parentObj)
|
|
2358
|
+
: delete value[childContext]));
|
|
2335
2359
|
return value;
|
|
2336
2360
|
}
|
|
2361
|
+
function bumpArrayCount(arrayContext, slots, response) {
|
|
2362
|
+
if (
|
|
2363
|
+
(arrayContext.count += slots) > response._arraySizeLimit &&
|
|
2364
|
+
arrayContext.fork
|
|
2365
|
+
)
|
|
2366
|
+
throw Error(
|
|
2367
|
+
"Maximum array nesting exceeded. Large nested arrays can be dangerous. Try adding intermediate objects."
|
|
2368
|
+
);
|
|
2369
|
+
}
|
|
2337
2370
|
var initializingHandler = null;
|
|
2338
2371
|
function initializeModelChunk(chunk) {
|
|
2339
2372
|
var prevHandler = initializingHandler;
|
|
@@ -2347,13 +2380,15 @@ function initializeModelChunk(chunk) {
|
|
|
2347
2380
|
chunk.value = null;
|
|
2348
2381
|
chunk.reason = null;
|
|
2349
2382
|
try {
|
|
2350
|
-
var rawModel = JSON.parse(resolvedModel)
|
|
2351
|
-
|
|
2383
|
+
var rawModel = JSON.parse(resolvedModel);
|
|
2384
|
+
resolvedModel = { count: 0, fork: !1 };
|
|
2385
|
+
var value = reviveModel(
|
|
2352
2386
|
response,
|
|
2353
2387
|
{ "": rawModel },
|
|
2354
2388
|
"",
|
|
2355
2389
|
rawModel,
|
|
2356
|
-
_chunk$reason
|
|
2390
|
+
_chunk$reason,
|
|
2391
|
+
resolvedModel
|
|
2357
2392
|
),
|
|
2358
2393
|
resolveListeners = chunk.value;
|
|
2359
2394
|
if (null !== resolveListeners)
|
|
@@ -2365,19 +2400,20 @@ function initializeModelChunk(chunk) {
|
|
|
2365
2400
|
var listener = resolveListeners[rawModel];
|
|
2366
2401
|
"function" === typeof listener
|
|
2367
2402
|
? listener(value)
|
|
2368
|
-
: fulfillReference(response, listener, value);
|
|
2403
|
+
: fulfillReference(response, listener, value, resolvedModel);
|
|
2369
2404
|
}
|
|
2370
2405
|
if (null !== initializingHandler) {
|
|
2371
2406
|
if (initializingHandler.errored) throw initializingHandler.reason;
|
|
2372
2407
|
if (0 < initializingHandler.deps) {
|
|
2373
2408
|
initializingHandler.value = value;
|
|
2409
|
+
initializingHandler.reason = resolvedModel;
|
|
2374
2410
|
initializingHandler.chunk = chunk;
|
|
2375
2411
|
return;
|
|
2376
2412
|
}
|
|
2377
2413
|
}
|
|
2378
2414
|
chunk.status = "fulfilled";
|
|
2379
2415
|
chunk.value = value;
|
|
2380
|
-
chunk.reason =
|
|
2416
|
+
chunk.reason = resolvedModel;
|
|
2381
2417
|
} catch (error) {
|
|
2382
2418
|
(chunk.status = "rejected"), (chunk.reason = error);
|
|
2383
2419
|
} finally {
|
|
@@ -2392,7 +2428,8 @@ function reportGlobalError(response, error) {
|
|
|
2392
2428
|
? triggerErrorOnChunk(response, chunk, error)
|
|
2393
2429
|
: "fulfilled" === chunk.status &&
|
|
2394
2430
|
null !== chunk.reason &&
|
|
2395
|
-
chunk.reason
|
|
2431
|
+
((chunk = chunk.reason),
|
|
2432
|
+
"function" === typeof chunk.error && chunk.error(error));
|
|
2396
2433
|
});
|
|
2397
2434
|
}
|
|
2398
2435
|
function getChunk(response, id) {
|
|
@@ -2409,40 +2446,67 @@ function getChunk(response, id) {
|
|
|
2409
2446
|
chunks.set(id, chunk));
|
|
2410
2447
|
return chunk;
|
|
2411
2448
|
}
|
|
2412
|
-
function fulfillReference(response, reference, value) {
|
|
2449
|
+
function fulfillReference(response, reference, value, arrayRoot) {
|
|
2413
2450
|
var handler = reference.handler,
|
|
2414
2451
|
parentObject = reference.parentObject,
|
|
2415
2452
|
key = reference.key,
|
|
2416
2453
|
map = reference.map,
|
|
2417
2454
|
path = reference.path;
|
|
2418
2455
|
try {
|
|
2419
|
-
for (
|
|
2456
|
+
for (
|
|
2457
|
+
var localLength = 0,
|
|
2458
|
+
rootArrayContexts = response._rootArrayContexts,
|
|
2459
|
+
i = 1;
|
|
2460
|
+
i < path.length;
|
|
2461
|
+
i++
|
|
2462
|
+
) {
|
|
2420
2463
|
var name = path[i];
|
|
2421
2464
|
if (
|
|
2422
2465
|
"object" !== typeof value ||
|
|
2423
|
-
|
|
2424
|
-
value
|
|
2466
|
+
null === value ||
|
|
2467
|
+
(getPrototypeOf(value) !== ObjectPrototype &&
|
|
2468
|
+
getPrototypeOf(value) !== ArrayPrototype) ||
|
|
2469
|
+
!hasOwnProperty.call(value, name)
|
|
2425
2470
|
)
|
|
2426
2471
|
throw Error("Invalid reference.");
|
|
2427
2472
|
value = value[name];
|
|
2473
|
+
if (isArrayImpl(value))
|
|
2474
|
+
(localLength = 0),
|
|
2475
|
+
(arrayRoot = rootArrayContexts.get(value) || arrayRoot);
|
|
2476
|
+
else if (((arrayRoot = null), "string" === typeof value))
|
|
2477
|
+
localLength = value.length;
|
|
2478
|
+
else if ("bigint" === typeof value) {
|
|
2479
|
+
var n = Math.abs(Number(value));
|
|
2480
|
+
localLength = 0 === n ? 1 : Math.floor(Math.log10(n)) + 1;
|
|
2481
|
+
} else localLength = ArrayBuffer.isView(value) ? value.byteLength : 0;
|
|
2428
2482
|
}
|
|
2429
|
-
var
|
|
2430
|
-
|
|
2431
|
-
|
|
2483
|
+
var resolvedValue = map(response, value, parentObject, key);
|
|
2484
|
+
var referenceArrayRoot = reference.arrayRoot;
|
|
2485
|
+
null !== referenceArrayRoot &&
|
|
2486
|
+
(null !== arrayRoot
|
|
2487
|
+
? (arrayRoot.fork && (referenceArrayRoot.fork = !0),
|
|
2488
|
+
bumpArrayCount(referenceArrayRoot, arrayRoot.count, response))
|
|
2489
|
+
: 0 < localLength &&
|
|
2490
|
+
bumpArrayCount(referenceArrayRoot, localLength, response));
|
|
2432
2491
|
} catch (error) {
|
|
2433
|
-
rejectReference(response,
|
|
2492
|
+
rejectReference(response, handler, error);
|
|
2434
2493
|
return;
|
|
2435
2494
|
}
|
|
2495
|
+
resolveReference(response, handler, parentObject, key, resolvedValue);
|
|
2496
|
+
}
|
|
2497
|
+
function resolveReference(response, handler, parentObject, key, resolvedValue) {
|
|
2498
|
+
"__proto__" !== key && (parentObject[key] = resolvedValue);
|
|
2499
|
+
"" === key && null === handler.value && (handler.value = resolvedValue);
|
|
2436
2500
|
handler.deps--;
|
|
2437
2501
|
0 === handler.deps &&
|
|
2438
|
-
((
|
|
2439
|
-
null !==
|
|
2440
|
-
"blocked" ===
|
|
2441
|
-
((
|
|
2442
|
-
(
|
|
2443
|
-
(
|
|
2444
|
-
(
|
|
2445
|
-
null !==
|
|
2502
|
+
((parentObject = handler.chunk),
|
|
2503
|
+
null !== parentObject &&
|
|
2504
|
+
"blocked" === parentObject.status &&
|
|
2505
|
+
((key = parentObject.value),
|
|
2506
|
+
(parentObject.status = "fulfilled"),
|
|
2507
|
+
(parentObject.value = handler.value),
|
|
2508
|
+
(parentObject.reason = handler.reason),
|
|
2509
|
+
null !== key && wakeChunk(response, key, handler.value, parentObject)));
|
|
2446
2510
|
}
|
|
2447
2511
|
function rejectReference(response, handler, error) {
|
|
2448
2512
|
handler.errored ||
|
|
@@ -2454,60 +2518,97 @@ function rejectReference(response, handler, error) {
|
|
|
2454
2518
|
"blocked" === handler.status &&
|
|
2455
2519
|
triggerErrorOnChunk(response, handler, error));
|
|
2456
2520
|
}
|
|
2457
|
-
function getOutlinedModel(
|
|
2521
|
+
function getOutlinedModel(
|
|
2522
|
+
response,
|
|
2523
|
+
reference,
|
|
2524
|
+
parentObject,
|
|
2525
|
+
key,
|
|
2526
|
+
referenceArrayRoot,
|
|
2527
|
+
map
|
|
2528
|
+
) {
|
|
2458
2529
|
reference = reference.split(":");
|
|
2459
|
-
var id = parseInt(reference[0], 16)
|
|
2460
|
-
|
|
2461
|
-
switch (
|
|
2530
|
+
var id = parseInt(reference[0], 16),
|
|
2531
|
+
chunk = getChunk(response, id);
|
|
2532
|
+
switch (chunk.status) {
|
|
2462
2533
|
case "resolved_model":
|
|
2463
|
-
initializeModelChunk(
|
|
2534
|
+
initializeModelChunk(chunk);
|
|
2464
2535
|
}
|
|
2465
|
-
switch (
|
|
2536
|
+
switch (chunk.status) {
|
|
2466
2537
|
case "fulfilled":
|
|
2467
|
-
id =
|
|
2468
|
-
|
|
2469
|
-
|
|
2538
|
+
id = chunk.value;
|
|
2539
|
+
chunk = chunk.reason;
|
|
2540
|
+
for (
|
|
2541
|
+
var localLength = 0,
|
|
2542
|
+
rootArrayContexts = response._rootArrayContexts,
|
|
2543
|
+
i = 1;
|
|
2544
|
+
i < reference.length;
|
|
2545
|
+
i++
|
|
2546
|
+
) {
|
|
2547
|
+
localLength = reference[i];
|
|
2470
2548
|
if (
|
|
2471
2549
|
"object" !== typeof id ||
|
|
2472
|
-
|
|
2473
|
-
id
|
|
2550
|
+
null === id ||
|
|
2551
|
+
(getPrototypeOf(id) !== ObjectPrototype &&
|
|
2552
|
+
getPrototypeOf(id) !== ArrayPrototype) ||
|
|
2553
|
+
!hasOwnProperty.call(id, localLength)
|
|
2474
2554
|
)
|
|
2475
2555
|
throw Error("Invalid reference.");
|
|
2476
|
-
id = id[
|
|
2556
|
+
id = id[localLength];
|
|
2557
|
+
isArrayImpl(id)
|
|
2558
|
+
? ((localLength = 0), (chunk = rootArrayContexts.get(id) || chunk))
|
|
2559
|
+
: ((chunk = null),
|
|
2560
|
+
"string" === typeof id
|
|
2561
|
+
? (localLength = id.length)
|
|
2562
|
+
: "bigint" === typeof id
|
|
2563
|
+
? ((localLength = Math.abs(Number(id))),
|
|
2564
|
+
(localLength =
|
|
2565
|
+
0 === localLength
|
|
2566
|
+
? 1
|
|
2567
|
+
: Math.floor(Math.log10(localLength)) + 1))
|
|
2568
|
+
: (localLength = ArrayBuffer.isView(id) ? id.byteLength : 0));
|
|
2477
2569
|
}
|
|
2478
|
-
|
|
2479
|
-
|
|
2570
|
+
parentObject = map(response, id, parentObject, key);
|
|
2571
|
+
null !== referenceArrayRoot &&
|
|
2572
|
+
(null !== chunk
|
|
2573
|
+
? (chunk.fork && (referenceArrayRoot.fork = !0),
|
|
2574
|
+
bumpArrayCount(referenceArrayRoot, chunk.count, response))
|
|
2575
|
+
: 0 < localLength &&
|
|
2576
|
+
bumpArrayCount(referenceArrayRoot, localLength, response));
|
|
2577
|
+
return parentObject;
|
|
2480
2578
|
case "blocked":
|
|
2481
2579
|
return (
|
|
2482
2580
|
initializingHandler
|
|
2483
2581
|
? ((response = initializingHandler), response.deps++)
|
|
2484
2582
|
: (response = initializingHandler =
|
|
2485
2583
|
{ chunk: null, value: null, reason: null, deps: 1, errored: !1 }),
|
|
2486
|
-
(
|
|
2584
|
+
(referenceArrayRoot = {
|
|
2487
2585
|
handler: response,
|
|
2488
2586
|
parentObject: parentObject,
|
|
2489
2587
|
key: key,
|
|
2490
2588
|
map: map,
|
|
2491
|
-
path: reference
|
|
2589
|
+
path: reference,
|
|
2590
|
+
arrayRoot: referenceArrayRoot
|
|
2492
2591
|
}),
|
|
2493
|
-
null ===
|
|
2494
|
-
? (
|
|
2495
|
-
:
|
|
2496
|
-
null ===
|
|
2497
|
-
? (
|
|
2498
|
-
:
|
|
2592
|
+
null === chunk.value
|
|
2593
|
+
? (chunk.value = [referenceArrayRoot])
|
|
2594
|
+
: chunk.value.push(referenceArrayRoot),
|
|
2595
|
+
null === chunk.reason
|
|
2596
|
+
? (chunk.reason = [referenceArrayRoot])
|
|
2597
|
+
: chunk.reason.push(referenceArrayRoot),
|
|
2499
2598
|
null
|
|
2500
2599
|
);
|
|
2600
|
+
case "pending":
|
|
2601
|
+
throw Error("Invalid forward reference.");
|
|
2501
2602
|
default:
|
|
2502
2603
|
return (
|
|
2503
2604
|
initializingHandler
|
|
2504
2605
|
? ((initializingHandler.errored = !0),
|
|
2505
2606
|
(initializingHandler.value = null),
|
|
2506
|
-
(initializingHandler.reason =
|
|
2607
|
+
(initializingHandler.reason = chunk.reason))
|
|
2507
2608
|
: (initializingHandler = {
|
|
2508
2609
|
chunk: null,
|
|
2509
2610
|
value: null,
|
|
2510
|
-
reason:
|
|
2611
|
+
reason: chunk.reason,
|
|
2511
2612
|
deps: 0,
|
|
2512
2613
|
errored: !0
|
|
2513
2614
|
}),
|
|
@@ -2516,12 +2617,21 @@ function getOutlinedModel(response, reference, parentObject, key, map) {
|
|
|
2516
2617
|
}
|
|
2517
2618
|
}
|
|
2518
2619
|
function createMap(response, model) {
|
|
2620
|
+
if (!isArrayImpl(model)) throw Error("Invalid Map initializer.");
|
|
2621
|
+
if (!0 === model.$$consumed) throw Error("Already initialized Map.");
|
|
2622
|
+
model.$$consumed = !0;
|
|
2519
2623
|
return new Map(model);
|
|
2520
2624
|
}
|
|
2521
2625
|
function createSet(response, model) {
|
|
2626
|
+
if (!isArrayImpl(model)) throw Error("Invalid Set initializer.");
|
|
2627
|
+
if (!0 === model.$$consumed) throw Error("Already initialized Set.");
|
|
2628
|
+
model.$$consumed = !0;
|
|
2522
2629
|
return new Set(model);
|
|
2523
2630
|
}
|
|
2524
2631
|
function extractIterator(response, model) {
|
|
2632
|
+
if (!isArrayImpl(model)) throw Error("Invalid Iterator initializer.");
|
|
2633
|
+
if (!0 === model.$$consumed) throw Error("Already initialized Iterator.");
|
|
2634
|
+
model.$$consumed = !0;
|
|
2525
2635
|
return model[Symbol.iterator]();
|
|
2526
2636
|
}
|
|
2527
2637
|
function createModel(response, model, parentObject, key) {
|
|
@@ -2533,13 +2643,34 @@ function parseTypedArray(
|
|
|
2533
2643
|
constructor,
|
|
2534
2644
|
bytesPerElement,
|
|
2535
2645
|
parentObject,
|
|
2536
|
-
parentKey
|
|
2646
|
+
parentKey,
|
|
2647
|
+
referenceArrayRoot
|
|
2537
2648
|
) {
|
|
2649
|
+
function reject(error) {
|
|
2650
|
+
if (!handler.errored) {
|
|
2651
|
+
handler.errored = !0;
|
|
2652
|
+
handler.value = null;
|
|
2653
|
+
handler.reason = error;
|
|
2654
|
+
var chunk = handler.chunk;
|
|
2655
|
+
null !== chunk &&
|
|
2656
|
+
"blocked" === chunk.status &&
|
|
2657
|
+
triggerErrorOnChunk(response, chunk, error);
|
|
2658
|
+
}
|
|
2659
|
+
}
|
|
2538
2660
|
reference = parseInt(reference.slice(2), 16);
|
|
2539
|
-
|
|
2540
|
-
|
|
2661
|
+
var key = response._prefix + reference;
|
|
2662
|
+
bytesPerElement = response._chunks;
|
|
2663
|
+
if (bytesPerElement.has(reference))
|
|
2541
2664
|
throw Error("Already initialized typed array.");
|
|
2542
|
-
|
|
2665
|
+
bytesPerElement.set(
|
|
2666
|
+
reference,
|
|
2667
|
+
new ReactPromise(
|
|
2668
|
+
"rejected",
|
|
2669
|
+
null,
|
|
2670
|
+
Error("Already initialized typed array.")
|
|
2671
|
+
)
|
|
2672
|
+
);
|
|
2673
|
+
reference = response._formData.get(key).arrayBuffer();
|
|
2543
2674
|
if (initializingHandler) {
|
|
2544
2675
|
var handler = initializingHandler;
|
|
2545
2676
|
handler.deps++;
|
|
@@ -2551,37 +2682,32 @@ function parseTypedArray(
|
|
|
2551
2682
|
deps: 1,
|
|
2552
2683
|
errored: !1
|
|
2553
2684
|
};
|
|
2554
|
-
reference.then(
|
|
2555
|
-
|
|
2556
|
-
|
|
2557
|
-
|
|
2558
|
-
|
|
2559
|
-
|
|
2560
|
-
|
|
2561
|
-
|
|
2562
|
-
|
|
2563
|
-
|
|
2564
|
-
|
|
2565
|
-
|
|
2566
|
-
|
|
2567
|
-
buffer.value = handler.value;
|
|
2568
|
-
buffer.reason = null;
|
|
2569
|
-
null !== resolveListeners &&
|
|
2570
|
-
wakeChunk(response, resolveListeners, handler.value);
|
|
2571
|
-
}
|
|
2572
|
-
},
|
|
2573
|
-
function (error) {
|
|
2574
|
-
if (!handler.errored) {
|
|
2575
|
-
handler.errored = !0;
|
|
2576
|
-
handler.value = null;
|
|
2577
|
-
handler.reason = error;
|
|
2578
|
-
var chunk = handler.chunk;
|
|
2579
|
-
null !== chunk &&
|
|
2580
|
-
"blocked" === chunk.status &&
|
|
2581
|
-
triggerErrorOnChunk(response, chunk, error);
|
|
2582
|
-
}
|
|
2685
|
+
reference.then(function (buffer) {
|
|
2686
|
+
try {
|
|
2687
|
+
null !== referenceArrayRoot &&
|
|
2688
|
+
bumpArrayCount(referenceArrayRoot, buffer.byteLength, response);
|
|
2689
|
+
var resolvedValue =
|
|
2690
|
+
constructor === ArrayBuffer ? buffer : new constructor(buffer);
|
|
2691
|
+
"__proto__" !== key && (parentObject[parentKey] = resolvedValue);
|
|
2692
|
+
"" === parentKey &&
|
|
2693
|
+
null === handler.value &&
|
|
2694
|
+
(handler.value = resolvedValue);
|
|
2695
|
+
} catch (x) {
|
|
2696
|
+
reject(x);
|
|
2697
|
+
return;
|
|
2583
2698
|
}
|
|
2584
|
-
|
|
2699
|
+
handler.deps--;
|
|
2700
|
+
0 === handler.deps &&
|
|
2701
|
+
((buffer = handler.chunk),
|
|
2702
|
+
null !== buffer &&
|
|
2703
|
+
"blocked" === buffer.status &&
|
|
2704
|
+
((resolvedValue = buffer.value),
|
|
2705
|
+
(buffer.status = "fulfilled"),
|
|
2706
|
+
(buffer.value = handler.value),
|
|
2707
|
+
(buffer.reason = null),
|
|
2708
|
+
null !== resolvedValue &&
|
|
2709
|
+
wakeChunk(response, resolvedValue, handler.value, buffer)));
|
|
2710
|
+
}, reject);
|
|
2585
2711
|
return null;
|
|
2586
2712
|
}
|
|
2587
2713
|
function resolveStream(response, id, stream, controller) {
|
|
@@ -2597,86 +2723,78 @@ function resolveStream(response, id, stream, controller) {
|
|
|
2597
2723
|
: controller.enqueueModel(chunks));
|
|
2598
2724
|
}
|
|
2599
2725
|
function parseReadableStream(response, reference, type) {
|
|
2726
|
+
function enqueue(value) {
|
|
2727
|
+
"bytes" !== type || ArrayBuffer.isView(value)
|
|
2728
|
+
? controller.enqueue(value)
|
|
2729
|
+
: flightController.error(Error("Invalid data for bytes stream."));
|
|
2730
|
+
}
|
|
2600
2731
|
reference = parseInt(reference.slice(2), 16);
|
|
2601
2732
|
if (response._chunks.has(reference))
|
|
2602
2733
|
throw Error("Already initialized stream.");
|
|
2603
2734
|
var controller = null,
|
|
2604
|
-
closed = !1
|
|
2605
|
-
|
|
2606
|
-
|
|
2607
|
-
|
|
2608
|
-
|
|
2609
|
-
}
|
|
2610
|
-
});
|
|
2611
|
-
var previousBlockedChunk = null;
|
|
2612
|
-
resolveStream(response, reference, type, {
|
|
2613
|
-
enqueueModel: function (json) {
|
|
2614
|
-
if (null === previousBlockedChunk) {
|
|
2615
|
-
var chunk = createResolvedModelChunk(response, json, -1);
|
|
2616
|
-
initializeModelChunk(chunk);
|
|
2617
|
-
"fulfilled" === chunk.status
|
|
2618
|
-
? controller.enqueue(chunk.value)
|
|
2619
|
-
: (chunk.then(
|
|
2620
|
-
function (v) {
|
|
2621
|
-
return controller.enqueue(v);
|
|
2622
|
-
},
|
|
2623
|
-
function (e) {
|
|
2624
|
-
return controller.error(e);
|
|
2625
|
-
}
|
|
2626
|
-
),
|
|
2627
|
-
(previousBlockedChunk = chunk));
|
|
2628
|
-
} else {
|
|
2629
|
-
chunk = previousBlockedChunk;
|
|
2630
|
-
var chunk$30 = new ReactPromise("pending", null, null);
|
|
2631
|
-
chunk$30.then(
|
|
2632
|
-
function (v) {
|
|
2633
|
-
return controller.enqueue(v);
|
|
2634
|
-
},
|
|
2635
|
-
function (e) {
|
|
2636
|
-
return controller.error(e);
|
|
2637
|
-
}
|
|
2638
|
-
);
|
|
2639
|
-
previousBlockedChunk = chunk$30;
|
|
2640
|
-
chunk.then(function () {
|
|
2641
|
-
previousBlockedChunk === chunk$30 && (previousBlockedChunk = null);
|
|
2642
|
-
resolveModelChunk(response, chunk$30, json, -1);
|
|
2643
|
-
});
|
|
2735
|
+
closed = !1,
|
|
2736
|
+
stream = new ReadableStream({
|
|
2737
|
+
type: type,
|
|
2738
|
+
start: function (c) {
|
|
2739
|
+
controller = c;
|
|
2644
2740
|
}
|
|
2645
|
-
},
|
|
2646
|
-
|
|
2647
|
-
|
|
2648
|
-
|
|
2649
|
-
|
|
2650
|
-
var
|
|
2651
|
-
|
|
2652
|
-
|
|
2653
|
-
|
|
2654
|
-
|
|
2655
|
-
|
|
2656
|
-
|
|
2657
|
-
|
|
2658
|
-
|
|
2659
|
-
|
|
2660
|
-
|
|
2661
|
-
|
|
2662
|
-
|
|
2663
|
-
|
|
2664
|
-
blockedChunk.then(function () {
|
|
2665
|
-
return controller.error(error);
|
|
2741
|
+
}),
|
|
2742
|
+
previousBlockedChunk = null,
|
|
2743
|
+
flightController = {
|
|
2744
|
+
enqueueModel: function (json) {
|
|
2745
|
+
if (null === previousBlockedChunk) {
|
|
2746
|
+
var chunk = createResolvedModelChunk(response, json, -1);
|
|
2747
|
+
initializeModelChunk(chunk);
|
|
2748
|
+
"fulfilled" === chunk.status
|
|
2749
|
+
? enqueue(chunk.value)
|
|
2750
|
+
: (chunk.then(enqueue, flightController.error),
|
|
2751
|
+
(previousBlockedChunk = chunk));
|
|
2752
|
+
} else {
|
|
2753
|
+
chunk = previousBlockedChunk;
|
|
2754
|
+
var chunk$31 = new ReactPromise("pending", null, null);
|
|
2755
|
+
chunk$31.then(enqueue, flightController.error);
|
|
2756
|
+
previousBlockedChunk = chunk$31;
|
|
2757
|
+
chunk.then(function () {
|
|
2758
|
+
previousBlockedChunk === chunk$31 && (previousBlockedChunk = null);
|
|
2759
|
+
resolveModelChunk(response, chunk$31, json, -1);
|
|
2666
2760
|
});
|
|
2667
2761
|
}
|
|
2668
|
-
|
|
2669
|
-
|
|
2670
|
-
|
|
2671
|
-
|
|
2672
|
-
|
|
2673
|
-
|
|
2762
|
+
},
|
|
2763
|
+
close: function () {
|
|
2764
|
+
if (!closed)
|
|
2765
|
+
if (((closed = !0), null === previousBlockedChunk))
|
|
2766
|
+
controller.close();
|
|
2767
|
+
else {
|
|
2768
|
+
var blockedChunk = previousBlockedChunk;
|
|
2769
|
+
previousBlockedChunk = null;
|
|
2770
|
+
blockedChunk.then(function () {
|
|
2771
|
+
return controller.close();
|
|
2772
|
+
});
|
|
2773
|
+
}
|
|
2774
|
+
},
|
|
2775
|
+
error: function (error) {
|
|
2776
|
+
if (!closed)
|
|
2777
|
+
if (((closed = !0), null === previousBlockedChunk))
|
|
2778
|
+
controller.error(error);
|
|
2779
|
+
else {
|
|
2780
|
+
var blockedChunk = previousBlockedChunk;
|
|
2781
|
+
previousBlockedChunk = null;
|
|
2782
|
+
blockedChunk.then(function () {
|
|
2783
|
+
return controller.error(error);
|
|
2784
|
+
});
|
|
2785
|
+
}
|
|
2786
|
+
}
|
|
2787
|
+
};
|
|
2788
|
+
resolveStream(response, reference, stream, flightController);
|
|
2789
|
+
return stream;
|
|
2674
2790
|
}
|
|
2675
|
-
function
|
|
2676
|
-
next =
|
|
2677
|
-
next[ASYNC_ITERATOR] = asyncIterator;
|
|
2678
|
-
return next;
|
|
2791
|
+
function FlightIterator(next) {
|
|
2792
|
+
this.next = next;
|
|
2679
2793
|
}
|
|
2794
|
+
FlightIterator.prototype = {};
|
|
2795
|
+
FlightIterator.prototype[ASYNC_ITERATOR] = function () {
|
|
2796
|
+
return this;
|
|
2797
|
+
};
|
|
2680
2798
|
function parseAsyncIterable(response, reference, iterator) {
|
|
2681
2799
|
reference = parseInt(reference.slice(2), 16);
|
|
2682
2800
|
if (response._chunks.has(reference))
|
|
@@ -2688,7 +2806,7 @@ function parseAsyncIterable(response, reference, iterator) {
|
|
|
2688
2806
|
$jscomp$compprop5 =
|
|
2689
2807
|
(($jscomp$compprop5[ASYNC_ITERATOR] = function () {
|
|
2690
2808
|
var nextReadIndex = 0;
|
|
2691
|
-
return
|
|
2809
|
+
return new FlightIterator(function (arg) {
|
|
2692
2810
|
if (void 0 !== arg)
|
|
2693
2811
|
throw Error(
|
|
2694
2812
|
"Values cannot be passed to next() of AsyncIterables passed to Client Components."
|
|
@@ -2768,17 +2886,28 @@ function parseAsyncIterable(response, reference, iterator) {
|
|
|
2768
2886
|
});
|
|
2769
2887
|
return iterator;
|
|
2770
2888
|
}
|
|
2771
|
-
function parseModelString(response, obj, key, value, reference) {
|
|
2889
|
+
function parseModelString(response, obj, key, value, reference, arrayRoot) {
|
|
2772
2890
|
if ("$" === value[0]) {
|
|
2773
2891
|
switch (value[1]) {
|
|
2774
2892
|
case "$":
|
|
2775
|
-
return
|
|
2893
|
+
return (
|
|
2894
|
+
null !== arrayRoot &&
|
|
2895
|
+
bumpArrayCount(arrayRoot, value.length - 1, response),
|
|
2896
|
+
value.slice(1)
|
|
2897
|
+
);
|
|
2776
2898
|
case "@":
|
|
2777
2899
|
return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj);
|
|
2778
2900
|
case "h":
|
|
2779
2901
|
return (
|
|
2780
|
-
(
|
|
2781
|
-
getOutlinedModel(
|
|
2902
|
+
(arrayRoot = value.slice(2)),
|
|
2903
|
+
getOutlinedModel(
|
|
2904
|
+
response,
|
|
2905
|
+
arrayRoot,
|
|
2906
|
+
obj,
|
|
2907
|
+
key,
|
|
2908
|
+
null,
|
|
2909
|
+
loadServerReference$1
|
|
2910
|
+
)
|
|
2782
2911
|
);
|
|
2783
2912
|
case "T":
|
|
2784
2913
|
if (void 0 === reference || void 0 === response._temporaryReferences)
|
|
@@ -2791,27 +2920,37 @@ function parseModelString(response, obj, key, value, reference) {
|
|
|
2791
2920
|
);
|
|
2792
2921
|
case "Q":
|
|
2793
2922
|
return (
|
|
2794
|
-
(
|
|
2795
|
-
getOutlinedModel(response,
|
|
2923
|
+
(arrayRoot = value.slice(2)),
|
|
2924
|
+
getOutlinedModel(response, arrayRoot, obj, key, null, createMap)
|
|
2796
2925
|
);
|
|
2797
2926
|
case "W":
|
|
2798
2927
|
return (
|
|
2799
|
-
(
|
|
2800
|
-
getOutlinedModel(response,
|
|
2928
|
+
(arrayRoot = value.slice(2)),
|
|
2929
|
+
getOutlinedModel(response, arrayRoot, obj, key, null, createSet)
|
|
2801
2930
|
);
|
|
2802
2931
|
case "K":
|
|
2803
2932
|
obj = value.slice(2);
|
|
2804
|
-
|
|
2805
|
-
|
|
2806
|
-
response._formData
|
|
2807
|
-
|
|
2808
|
-
|
|
2809
|
-
|
|
2810
|
-
|
|
2933
|
+
obj = response._prefix + obj + "_";
|
|
2934
|
+
key = new FormData();
|
|
2935
|
+
response = response._formData;
|
|
2936
|
+
arrayRoot = Array.from(response.keys());
|
|
2937
|
+
for (value = 0; value < arrayRoot.length; value++)
|
|
2938
|
+
if (((reference = arrayRoot[value]), reference.startsWith(obj))) {
|
|
2939
|
+
for (
|
|
2940
|
+
var entries = response.getAll(reference),
|
|
2941
|
+
newKey = reference.slice(obj.length),
|
|
2942
|
+
j = 0;
|
|
2943
|
+
j < entries.length;
|
|
2944
|
+
j++
|
|
2945
|
+
)
|
|
2946
|
+
key.append(newKey, entries[j]);
|
|
2947
|
+
response.delete(reference);
|
|
2948
|
+
}
|
|
2949
|
+
return key;
|
|
2811
2950
|
case "i":
|
|
2812
2951
|
return (
|
|
2813
|
-
(
|
|
2814
|
-
getOutlinedModel(response,
|
|
2952
|
+
(arrayRoot = value.slice(2)),
|
|
2953
|
+
getOutlinedModel(response, arrayRoot, obj, key, null, extractIterator)
|
|
2815
2954
|
);
|
|
2816
2955
|
case "I":
|
|
2817
2956
|
return Infinity;
|
|
@@ -2824,42 +2963,150 @@ function parseModelString(response, obj, key, value, reference) {
|
|
|
2824
2963
|
case "D":
|
|
2825
2964
|
return new Date(Date.parse(value.slice(2)));
|
|
2826
2965
|
case "n":
|
|
2827
|
-
|
|
2828
|
-
|
|
2829
|
-
|
|
2966
|
+
obj = value.slice(2);
|
|
2967
|
+
if (300 < obj.length)
|
|
2968
|
+
throw Error(
|
|
2969
|
+
"BigInt is too large. Received " +
|
|
2970
|
+
obj.length +
|
|
2971
|
+
" digits but the limit is 300."
|
|
2972
|
+
);
|
|
2973
|
+
null !== arrayRoot && bumpArrayCount(arrayRoot, obj.length, response);
|
|
2974
|
+
return BigInt(obj);
|
|
2830
2975
|
case "A":
|
|
2831
|
-
return parseTypedArray(
|
|
2976
|
+
return parseTypedArray(
|
|
2977
|
+
response,
|
|
2978
|
+
value,
|
|
2979
|
+
ArrayBuffer,
|
|
2980
|
+
1,
|
|
2981
|
+
obj,
|
|
2982
|
+
key,
|
|
2983
|
+
arrayRoot
|
|
2984
|
+
);
|
|
2832
2985
|
case "O":
|
|
2833
|
-
return parseTypedArray(
|
|
2986
|
+
return parseTypedArray(
|
|
2987
|
+
response,
|
|
2988
|
+
value,
|
|
2989
|
+
Int8Array,
|
|
2990
|
+
1,
|
|
2991
|
+
obj,
|
|
2992
|
+
key,
|
|
2993
|
+
arrayRoot
|
|
2994
|
+
);
|
|
2834
2995
|
case "o":
|
|
2835
|
-
return parseTypedArray(
|
|
2996
|
+
return parseTypedArray(
|
|
2997
|
+
response,
|
|
2998
|
+
value,
|
|
2999
|
+
Uint8Array,
|
|
3000
|
+
1,
|
|
3001
|
+
obj,
|
|
3002
|
+
key,
|
|
3003
|
+
arrayRoot
|
|
3004
|
+
);
|
|
2836
3005
|
case "U":
|
|
2837
|
-
return parseTypedArray(
|
|
3006
|
+
return parseTypedArray(
|
|
3007
|
+
response,
|
|
3008
|
+
value,
|
|
3009
|
+
Uint8ClampedArray,
|
|
3010
|
+
1,
|
|
3011
|
+
obj,
|
|
3012
|
+
key,
|
|
3013
|
+
arrayRoot
|
|
3014
|
+
);
|
|
2838
3015
|
case "S":
|
|
2839
|
-
return parseTypedArray(
|
|
3016
|
+
return parseTypedArray(
|
|
3017
|
+
response,
|
|
3018
|
+
value,
|
|
3019
|
+
Int16Array,
|
|
3020
|
+
2,
|
|
3021
|
+
obj,
|
|
3022
|
+
key,
|
|
3023
|
+
arrayRoot
|
|
3024
|
+
);
|
|
2840
3025
|
case "s":
|
|
2841
|
-
return parseTypedArray(
|
|
3026
|
+
return parseTypedArray(
|
|
3027
|
+
response,
|
|
3028
|
+
value,
|
|
3029
|
+
Uint16Array,
|
|
3030
|
+
2,
|
|
3031
|
+
obj,
|
|
3032
|
+
key,
|
|
3033
|
+
arrayRoot
|
|
3034
|
+
);
|
|
2842
3035
|
case "L":
|
|
2843
|
-
return parseTypedArray(
|
|
3036
|
+
return parseTypedArray(
|
|
3037
|
+
response,
|
|
3038
|
+
value,
|
|
3039
|
+
Int32Array,
|
|
3040
|
+
4,
|
|
3041
|
+
obj,
|
|
3042
|
+
key,
|
|
3043
|
+
arrayRoot
|
|
3044
|
+
);
|
|
2844
3045
|
case "l":
|
|
2845
|
-
return parseTypedArray(
|
|
3046
|
+
return parseTypedArray(
|
|
3047
|
+
response,
|
|
3048
|
+
value,
|
|
3049
|
+
Uint32Array,
|
|
3050
|
+
4,
|
|
3051
|
+
obj,
|
|
3052
|
+
key,
|
|
3053
|
+
arrayRoot
|
|
3054
|
+
);
|
|
2846
3055
|
case "G":
|
|
2847
|
-
return parseTypedArray(
|
|
3056
|
+
return parseTypedArray(
|
|
3057
|
+
response,
|
|
3058
|
+
value,
|
|
3059
|
+
Float32Array,
|
|
3060
|
+
4,
|
|
3061
|
+
obj,
|
|
3062
|
+
key,
|
|
3063
|
+
arrayRoot
|
|
3064
|
+
);
|
|
2848
3065
|
case "g":
|
|
2849
|
-
return parseTypedArray(
|
|
3066
|
+
return parseTypedArray(
|
|
3067
|
+
response,
|
|
3068
|
+
value,
|
|
3069
|
+
Float64Array,
|
|
3070
|
+
8,
|
|
3071
|
+
obj,
|
|
3072
|
+
key,
|
|
3073
|
+
arrayRoot
|
|
3074
|
+
);
|
|
2850
3075
|
case "M":
|
|
2851
|
-
return parseTypedArray(
|
|
3076
|
+
return parseTypedArray(
|
|
3077
|
+
response,
|
|
3078
|
+
value,
|
|
3079
|
+
BigInt64Array,
|
|
3080
|
+
8,
|
|
3081
|
+
obj,
|
|
3082
|
+
key,
|
|
3083
|
+
arrayRoot
|
|
3084
|
+
);
|
|
2852
3085
|
case "m":
|
|
2853
|
-
return parseTypedArray(
|
|
3086
|
+
return parseTypedArray(
|
|
3087
|
+
response,
|
|
3088
|
+
value,
|
|
3089
|
+
BigUint64Array,
|
|
3090
|
+
8,
|
|
3091
|
+
obj,
|
|
3092
|
+
key,
|
|
3093
|
+
arrayRoot
|
|
3094
|
+
);
|
|
2854
3095
|
case "V":
|
|
2855
|
-
return parseTypedArray(
|
|
3096
|
+
return parseTypedArray(
|
|
3097
|
+
response,
|
|
3098
|
+
value,
|
|
3099
|
+
DataView,
|
|
3100
|
+
1,
|
|
3101
|
+
obj,
|
|
3102
|
+
key,
|
|
3103
|
+
arrayRoot
|
|
3104
|
+
);
|
|
2856
3105
|
case "B":
|
|
2857
3106
|
return (
|
|
2858
3107
|
(obj = parseInt(value.slice(2), 16)),
|
|
2859
3108
|
response._formData.get(response._prefix + obj)
|
|
2860
3109
|
);
|
|
2861
|
-
}
|
|
2862
|
-
switch (value[1]) {
|
|
2863
3110
|
case "R":
|
|
2864
3111
|
return parseReadableStream(response, value, void 0);
|
|
2865
3112
|
case "r":
|
|
@@ -2870,8 +3117,9 @@ function parseModelString(response, obj, key, value, reference) {
|
|
|
2870
3117
|
return parseAsyncIterable(response, value, !0);
|
|
2871
3118
|
}
|
|
2872
3119
|
value = value.slice(1);
|
|
2873
|
-
return getOutlinedModel(response, value, obj, key, createModel);
|
|
3120
|
+
return getOutlinedModel(response, value, obj, key, arrayRoot, createModel);
|
|
2874
3121
|
}
|
|
3122
|
+
null !== arrayRoot && bumpArrayCount(arrayRoot, value.length, response);
|
|
2875
3123
|
return value;
|
|
2876
3124
|
}
|
|
2877
3125
|
function createResponse(bundlerConfig, formFieldPrefix, temporaryReferences) {
|
|
@@ -2879,6 +3127,8 @@ function createResponse(bundlerConfig, formFieldPrefix, temporaryReferences) {
|
|
|
2879
3127
|
3 < arguments.length && void 0 !== arguments[3]
|
|
2880
3128
|
? arguments[3]
|
|
2881
3129
|
: new FormData(),
|
|
3130
|
+
arraySizeLimit =
|
|
3131
|
+
4 < arguments.length && void 0 !== arguments[4] ? arguments[4] : 1e6,
|
|
2882
3132
|
chunks = new Map();
|
|
2883
3133
|
return {
|
|
2884
3134
|
_bundlerConfig: bundlerConfig,
|
|
@@ -2887,7 +3137,9 @@ function createResponse(bundlerConfig, formFieldPrefix, temporaryReferences) {
|
|
|
2887
3137
|
_chunks: chunks,
|
|
2888
3138
|
_closed: !1,
|
|
2889
3139
|
_closedReason: null,
|
|
2890
|
-
_temporaryReferences: temporaryReferences
|
|
3140
|
+
_temporaryReferences: temporaryReferences,
|
|
3141
|
+
_rootArrayContexts: new WeakMap(),
|
|
3142
|
+
_arraySizeLimit: arraySizeLimit
|
|
2891
3143
|
};
|
|
2892
3144
|
}
|
|
2893
3145
|
function resolveField(response, key, value) {
|
|
@@ -2903,13 +3155,22 @@ function resolveField(response, key, value) {
|
|
|
2903
3155
|
function close(response) {
|
|
2904
3156
|
reportGlobalError(response, Error("Connection closed."));
|
|
2905
3157
|
}
|
|
2906
|
-
function loadServerReference(bundlerConfig,
|
|
3158
|
+
function loadServerReference(bundlerConfig, metaData) {
|
|
3159
|
+
var id = metaData.id;
|
|
3160
|
+
if ("string" !== typeof id) return null;
|
|
2907
3161
|
var serverReference = resolveServerReference(bundlerConfig, id);
|
|
2908
3162
|
bundlerConfig = preloadModule(serverReference);
|
|
2909
|
-
|
|
2910
|
-
|
|
3163
|
+
metaData = metaData.bound;
|
|
3164
|
+
return metaData instanceof Promise
|
|
3165
|
+
? Promise.all([metaData, bundlerConfig]).then(function (_ref) {
|
|
2911
3166
|
_ref = _ref[0];
|
|
2912
3167
|
var fn = requireModule(serverReference);
|
|
3168
|
+
if (1e3 < _ref.length)
|
|
3169
|
+
throw Error(
|
|
3170
|
+
"Server Function has too many bound arguments. Received " +
|
|
3171
|
+
_ref.length +
|
|
3172
|
+
" but the limit is 1000."
|
|
3173
|
+
);
|
|
2913
3174
|
return fn.bind.apply(fn, [null].concat(_ref));
|
|
2914
3175
|
})
|
|
2915
3176
|
: bundlerConfig
|
|
@@ -2918,8 +3179,19 @@ function loadServerReference(bundlerConfig, id, bound) {
|
|
|
2918
3179
|
})
|
|
2919
3180
|
: Promise.resolve(requireModule(serverReference));
|
|
2920
3181
|
}
|
|
2921
|
-
function decodeBoundActionMetaData(
|
|
2922
|
-
body
|
|
3182
|
+
function decodeBoundActionMetaData(
|
|
3183
|
+
body,
|
|
3184
|
+
serverManifest,
|
|
3185
|
+
formFieldPrefix,
|
|
3186
|
+
arraySizeLimit
|
|
3187
|
+
) {
|
|
3188
|
+
body = createResponse(
|
|
3189
|
+
serverManifest,
|
|
3190
|
+
formFieldPrefix,
|
|
3191
|
+
void 0,
|
|
3192
|
+
body,
|
|
3193
|
+
arraySizeLimit
|
|
3194
|
+
);
|
|
2923
3195
|
close(body);
|
|
2924
3196
|
body = getChunk(body, 0);
|
|
2925
3197
|
body.then(function () {});
|
|
@@ -2928,16 +3200,24 @@ function decodeBoundActionMetaData(body, serverManifest, formFieldPrefix) {
|
|
|
2928
3200
|
}
|
|
2929
3201
|
function decodeAction$1(body, serverManifest) {
|
|
2930
3202
|
var formData = new FormData(),
|
|
2931
|
-
action = null
|
|
3203
|
+
action = null,
|
|
3204
|
+
seenActions = new Set();
|
|
2932
3205
|
body.forEach(function (value, key) {
|
|
2933
3206
|
key.startsWith("$ACTION_")
|
|
2934
3207
|
? key.startsWith("$ACTION_REF_")
|
|
2935
|
-
? (
|
|
3208
|
+
? seenActions.has(key) ||
|
|
3209
|
+
(seenActions.add(key),
|
|
3210
|
+
(value = "$ACTION_" + key.slice(12) + ":"),
|
|
2936
3211
|
(value = decodeBoundActionMetaData(body, serverManifest, value)),
|
|
2937
|
-
(action = loadServerReference(serverManifest, value
|
|
3212
|
+
(action = loadServerReference(serverManifest, value)))
|
|
2938
3213
|
: key.startsWith("$ACTION_ID_") &&
|
|
2939
|
-
(
|
|
2940
|
-
(
|
|
3214
|
+
!seenActions.has(key) &&
|
|
3215
|
+
(seenActions.add(key),
|
|
3216
|
+
(value = key.slice(11)),
|
|
3217
|
+
(action = loadServerReference(serverManifest, {
|
|
3218
|
+
id: value,
|
|
3219
|
+
bound: null
|
|
3220
|
+
})))
|
|
2941
3221
|
: formData.append(key, value);
|
|
2942
3222
|
});
|
|
2943
3223
|
return null === action
|
|
@@ -3033,7 +3313,8 @@ exports.decodeReply = function (body, options) {
|
|
|
3033
3313
|
serverManifest,
|
|
3034
3314
|
"",
|
|
3035
3315
|
options ? options.temporaryReferences : void 0,
|
|
3036
|
-
body
|
|
3316
|
+
body,
|
|
3317
|
+
options ? options.arraySizeLimit : void 0
|
|
3037
3318
|
);
|
|
3038
3319
|
options = getChunk(body, 0);
|
|
3039
3320
|
close(body);
|
|
@@ -3061,7 +3342,9 @@ exports.decodeReplyFromAsyncIterable = function (iterable, options) {
|
|
|
3061
3342
|
response = createResponse(
|
|
3062
3343
|
serverManifest,
|
|
3063
3344
|
"",
|
|
3064
|
-
options ? options.temporaryReferences : void 0
|
|
3345
|
+
options ? options.temporaryReferences : void 0,
|
|
3346
|
+
void 0,
|
|
3347
|
+
options ? options.arraySizeLimit : void 0
|
|
3065
3348
|
);
|
|
3066
3349
|
iterator.next().then(progress, error);
|
|
3067
3350
|
return getChunk(response, 0);
|
|
@@ -3070,7 +3353,9 @@ exports.decodeReplyFromBusboy = function (busboyStream, options) {
|
|
|
3070
3353
|
var response = createResponse(
|
|
3071
3354
|
serverManifest,
|
|
3072
3355
|
"",
|
|
3073
|
-
options ? options.temporaryReferences : void 0
|
|
3356
|
+
options ? options.temporaryReferences : void 0,
|
|
3357
|
+
void 0,
|
|
3358
|
+
options ? options.arraySizeLimit : void 0
|
|
3074
3359
|
),
|
|
3075
3360
|
pendingFiles = 0,
|
|
3076
3361
|
queuedFields = [];
|
|
@@ -3094,13 +3379,13 @@ exports.decodeReplyFromBusboy = function (busboyStream, options) {
|
|
|
3094
3379
|
);
|
|
3095
3380
|
else {
|
|
3096
3381
|
pendingFiles++;
|
|
3097
|
-
var
|
|
3382
|
+
var JSCompiler_object_inline_chunks_283 = [];
|
|
3098
3383
|
value.on("data", function (chunk) {
|
|
3099
|
-
|
|
3384
|
+
JSCompiler_object_inline_chunks_283.push(chunk);
|
|
3100
3385
|
});
|
|
3101
3386
|
value.on("end", function () {
|
|
3102
3387
|
try {
|
|
3103
|
-
var blob = new Blob(
|
|
3388
|
+
var blob = new Blob(JSCompiler_object_inline_chunks_283, {
|
|
3104
3389
|
type: mimeType
|
|
3105
3390
|
});
|
|
3106
3391
|
response._formData.append(name, blob, filename);
|