@vitejs/plugin-rsc 0.5.6 → 0.5.8

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.
Files changed (43) hide show
  1. package/README.md +7 -18
  2. package/dist/browser.js +0 -2
  3. package/dist/core/browser.js +0 -2
  4. package/dist/core/rsc.d.ts +0 -1
  5. package/dist/core/rsc.js +0 -2
  6. package/dist/core/ssr.d.ts +0 -1
  7. package/dist/core/ssr.js +0 -2
  8. package/dist/index.js +1 -5
  9. package/dist/{plugin-BIsCR7Tu.js → plugin-COe11H-Q.js} +6 -6
  10. package/dist/plugin.js +1 -5
  11. package/dist/plugins/cjs.js +0 -2
  12. package/dist/react/browser.js +0 -2
  13. package/dist/react/rsc.d.ts +0 -1
  14. package/dist/react/rsc.js +0 -2
  15. package/dist/react/ssr.d.ts +0 -1
  16. package/dist/react/ssr.js +0 -2
  17. package/dist/rsc.d.ts +0 -1
  18. package/dist/rsc.js +0 -3
  19. package/dist/ssr.d.ts +0 -1
  20. package/dist/ssr.js +0 -2
  21. package/dist/transforms/index.js +0 -1
  22. package/dist/utils/encryption-runtime.js +0 -3
  23. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-client.browser.development.js +194 -153
  24. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-client.browser.production.js +193 -144
  25. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-client.edge.development.js +192 -151
  26. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-client.edge.production.js +193 -144
  27. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-client.node.development.js +192 -151
  28. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-client.node.production.js +193 -144
  29. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-server.browser.development.js +170 -179
  30. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-server.browser.production.js +165 -173
  31. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-server.edge.development.js +170 -179
  32. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-server.edge.production.js +165 -173
  33. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-server.node.development.js +173 -182
  34. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-server.node.production.js +168 -176
  35. package/dist/vendor/react-server-dom/package.json +6 -21
  36. package/package.json +8 -8
  37. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-client.node.unbundled.development.js +0 -5056
  38. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-client.node.unbundled.production.js +0 -2179
  39. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-server.node.unbundled.development.js +0 -6382
  40. package/dist/vendor/react-server-dom/cjs/react-server-dom-webpack-server.node.unbundled.production.js +0 -3498
  41. package/dist/vendor/react-server-dom/client.node.unbundled.js +0 -7
  42. package/dist/vendor/react-server-dom/server.node.unbundled.js +0 -20
  43. package/dist/vendor/react-server-dom/static.node.unbundled.js +0 -10
@@ -1,3498 +0,0 @@
1
- /**
2
- * @license React
3
- * react-server-dom-webpack-server.node.unbundled.production.js
4
- *
5
- * Copyright (c) Meta Platforms, Inc. and affiliates.
6
- *
7
- * This source code is licensed under the MIT license found in the
8
- * LICENSE file in the root directory of this source tree.
9
- */
10
-
11
- "use strict";
12
- var stream = require("stream"),
13
- util = require("util");
14
- require("crypto");
15
- var async_hooks = require("async_hooks"),
16
- ReactDOM = require("react-dom"),
17
- React = require("react"),
18
- REACT_LEGACY_ELEMENT_TYPE = Symbol.for("react.element"),
19
- REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"),
20
- REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"),
21
- REACT_CONTEXT_TYPE = Symbol.for("react.context"),
22
- REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"),
23
- REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"),
24
- REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"),
25
- REACT_MEMO_TYPE = Symbol.for("react.memo"),
26
- REACT_LAZY_TYPE = Symbol.for("react.lazy"),
27
- REACT_MEMO_CACHE_SENTINEL = Symbol.for("react.memo_cache_sentinel");
28
- Symbol.for("react.postpone");
29
- var MAYBE_ITERATOR_SYMBOL = Symbol.iterator;
30
- function getIteratorFn(maybeIterable) {
31
- if (null === maybeIterable || "object" !== typeof maybeIterable) return null;
32
- maybeIterable =
33
- (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||
34
- maybeIterable["@@iterator"];
35
- return "function" === typeof maybeIterable ? maybeIterable : null;
36
- }
37
- var ASYNC_ITERATOR = Symbol.asyncIterator,
38
- scheduleMicrotask = queueMicrotask,
39
- currentView = null,
40
- writtenBytes = 0,
41
- destinationHasCapacity = !0;
42
- function writeToDestination(destination, view) {
43
- destination = destination.write(view);
44
- destinationHasCapacity = destinationHasCapacity && destination;
45
- }
46
- function writeChunkAndReturn(destination, chunk) {
47
- if ("string" === typeof chunk) {
48
- if (0 !== chunk.length)
49
- if (2048 < 3 * chunk.length)
50
- 0 < writtenBytes &&
51
- (writeToDestination(
52
- destination,
53
- currentView.subarray(0, writtenBytes)
54
- ),
55
- (currentView = new Uint8Array(2048)),
56
- (writtenBytes = 0)),
57
- writeToDestination(destination, chunk);
58
- else {
59
- var target = currentView;
60
- 0 < writtenBytes && (target = currentView.subarray(writtenBytes));
61
- target = textEncoder.encodeInto(chunk, target);
62
- var read = target.read;
63
- writtenBytes += target.written;
64
- read < chunk.length &&
65
- (writeToDestination(
66
- destination,
67
- currentView.subarray(0, writtenBytes)
68
- ),
69
- (currentView = new Uint8Array(2048)),
70
- (writtenBytes = textEncoder.encodeInto(
71
- chunk.slice(read),
72
- currentView
73
- ).written));
74
- 2048 === writtenBytes &&
75
- (writeToDestination(destination, currentView),
76
- (currentView = new Uint8Array(2048)),
77
- (writtenBytes = 0));
78
- }
79
- } else
80
- 0 !== chunk.byteLength &&
81
- (2048 < chunk.byteLength
82
- ? (0 < writtenBytes &&
83
- (writeToDestination(
84
- destination,
85
- currentView.subarray(0, writtenBytes)
86
- ),
87
- (currentView = new Uint8Array(2048)),
88
- (writtenBytes = 0)),
89
- writeToDestination(destination, chunk))
90
- : ((target = currentView.length - writtenBytes),
91
- target < chunk.byteLength &&
92
- (0 === target
93
- ? writeToDestination(destination, currentView)
94
- : (currentView.set(chunk.subarray(0, target), writtenBytes),
95
- (writtenBytes += target),
96
- writeToDestination(destination, currentView),
97
- (chunk = chunk.subarray(target))),
98
- (currentView = new Uint8Array(2048)),
99
- (writtenBytes = 0)),
100
- currentView.set(chunk, writtenBytes),
101
- (writtenBytes += chunk.byteLength),
102
- 2048 === writtenBytes &&
103
- (writeToDestination(destination, currentView),
104
- (currentView = new Uint8Array(2048)),
105
- (writtenBytes = 0))));
106
- return destinationHasCapacity;
107
- }
108
- var textEncoder = new util.TextEncoder();
109
- function byteLengthOfChunk(chunk) {
110
- return "string" === typeof chunk
111
- ? Buffer.byteLength(chunk, "utf8")
112
- : chunk.byteLength;
113
- }
114
- var CLIENT_REFERENCE_TAG$1 = Symbol.for("react.client.reference"),
115
- SERVER_REFERENCE_TAG = Symbol.for("react.server.reference");
116
- function registerClientReferenceImpl(proxyImplementation, id, async) {
117
- return Object.defineProperties(proxyImplementation, {
118
- $$typeof: { value: CLIENT_REFERENCE_TAG$1 },
119
- $$id: { value: id },
120
- $$async: { value: async }
121
- });
122
- }
123
- var FunctionBind = Function.prototype.bind,
124
- ArraySlice = Array.prototype.slice;
125
- function bind() {
126
- var newFn = FunctionBind.apply(this, arguments);
127
- if (this.$$typeof === SERVER_REFERENCE_TAG) {
128
- var args = ArraySlice.call(arguments, 1),
129
- $$typeof = { value: SERVER_REFERENCE_TAG },
130
- $$id = { value: this.$$id };
131
- args = { value: this.$$bound ? this.$$bound.concat(args) : args };
132
- return Object.defineProperties(newFn, {
133
- $$typeof: $$typeof,
134
- $$id: $$id,
135
- $$bound: args,
136
- bind: { value: bind, configurable: !0 }
137
- });
138
- }
139
- return newFn;
140
- }
141
- var PROMISE_PROTOTYPE = Promise.prototype,
142
- deepProxyHandlers = {
143
- get: function (target, name) {
144
- switch (name) {
145
- case "$$typeof":
146
- return target.$$typeof;
147
- case "$$id":
148
- return target.$$id;
149
- case "$$async":
150
- return target.$$async;
151
- case "name":
152
- return target.name;
153
- case "displayName":
154
- return;
155
- case "defaultProps":
156
- return;
157
- case "_debugInfo":
158
- return;
159
- case "toJSON":
160
- return;
161
- case Symbol.toPrimitive:
162
- return Object.prototype[Symbol.toPrimitive];
163
- case Symbol.toStringTag:
164
- return Object.prototype[Symbol.toStringTag];
165
- case "Provider":
166
- throw Error(
167
- "Cannot render a Client Context Provider on the Server. Instead, you can export a Client Component wrapper that itself renders a Client Context Provider."
168
- );
169
- case "then":
170
- throw Error(
171
- "Cannot await or return from a thenable. You cannot await a client module from a server component."
172
- );
173
- }
174
- throw Error(
175
- "Cannot access " +
176
- (String(target.name) + "." + String(name)) +
177
- " on the server. You cannot dot into a client module from a server component. You can only pass the imported name through."
178
- );
179
- },
180
- set: function () {
181
- throw Error("Cannot assign to a client module from a server module.");
182
- }
183
- };
184
- function getReference(target, name) {
185
- switch (name) {
186
- case "$$typeof":
187
- return target.$$typeof;
188
- case "$$id":
189
- return target.$$id;
190
- case "$$async":
191
- return target.$$async;
192
- case "name":
193
- return target.name;
194
- case "defaultProps":
195
- return;
196
- case "_debugInfo":
197
- return;
198
- case "toJSON":
199
- return;
200
- case Symbol.toPrimitive:
201
- return Object.prototype[Symbol.toPrimitive];
202
- case Symbol.toStringTag:
203
- return Object.prototype[Symbol.toStringTag];
204
- case "__esModule":
205
- var moduleId = target.$$id;
206
- target.default = registerClientReferenceImpl(
207
- function () {
208
- throw Error(
209
- "Attempted to call the default export of " +
210
- moduleId +
211
- " from the server but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component."
212
- );
213
- },
214
- target.$$id + "#",
215
- target.$$async
216
- );
217
- return !0;
218
- case "then":
219
- if (target.then) return target.then;
220
- if (target.$$async) return;
221
- var clientReference = registerClientReferenceImpl({}, target.$$id, !0),
222
- proxy = new Proxy(clientReference, proxyHandlers$1);
223
- target.status = "fulfilled";
224
- target.value = proxy;
225
- return (target.then = registerClientReferenceImpl(
226
- function (resolve) {
227
- return Promise.resolve(resolve(proxy));
228
- },
229
- target.$$id + "#then",
230
- !1
231
- ));
232
- }
233
- if ("symbol" === typeof name)
234
- throw Error(
235
- "Cannot read Symbol exports. Only named exports are supported on a client module imported on the server."
236
- );
237
- clientReference = target[name];
238
- clientReference ||
239
- ((clientReference = registerClientReferenceImpl(
240
- function () {
241
- throw Error(
242
- "Attempted to call " +
243
- String(name) +
244
- "() from the server but " +
245
- String(name) +
246
- " is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component."
247
- );
248
- },
249
- target.$$id + "#" + name,
250
- target.$$async
251
- )),
252
- Object.defineProperty(clientReference, "name", { value: name }),
253
- (clientReference = target[name] =
254
- new Proxy(clientReference, deepProxyHandlers)));
255
- return clientReference;
256
- }
257
- var proxyHandlers$1 = {
258
- get: function (target, name) {
259
- return getReference(target, name);
260
- },
261
- getOwnPropertyDescriptor: function (target, name) {
262
- var descriptor = Object.getOwnPropertyDescriptor(target, name);
263
- descriptor ||
264
- ((descriptor = {
265
- value: getReference(target, name),
266
- writable: !1,
267
- configurable: !1,
268
- enumerable: !1
269
- }),
270
- Object.defineProperty(target, name, descriptor));
271
- return descriptor;
272
- },
273
- getPrototypeOf: function () {
274
- return PROMISE_PROTOTYPE;
275
- },
276
- set: function () {
277
- throw Error("Cannot assign to a client module from a server module.");
278
- }
279
- },
280
- ReactDOMSharedInternals =
281
- ReactDOM.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,
282
- previousDispatcher = ReactDOMSharedInternals.d;
283
- ReactDOMSharedInternals.d = {
284
- f: previousDispatcher.f,
285
- r: previousDispatcher.r,
286
- D: prefetchDNS,
287
- C: preconnect,
288
- L: preload,
289
- m: preloadModule$1,
290
- X: preinitScript,
291
- S: preinitStyle,
292
- M: preinitModuleScript
293
- };
294
- function prefetchDNS(href) {
295
- if ("string" === typeof href && href) {
296
- var request = resolveRequest();
297
- if (request) {
298
- var hints = request.hints,
299
- key = "D|" + href;
300
- hints.has(key) || (hints.add(key), emitHint(request, "D", href));
301
- } else previousDispatcher.D(href);
302
- }
303
- }
304
- function preconnect(href, crossOrigin) {
305
- if ("string" === typeof href) {
306
- var request = resolveRequest();
307
- if (request) {
308
- var hints = request.hints,
309
- key = "C|" + (null == crossOrigin ? "null" : crossOrigin) + "|" + href;
310
- hints.has(key) ||
311
- (hints.add(key),
312
- "string" === typeof crossOrigin
313
- ? emitHint(request, "C", [href, crossOrigin])
314
- : emitHint(request, "C", href));
315
- } else previousDispatcher.C(href, crossOrigin);
316
- }
317
- }
318
- function preload(href, as, options) {
319
- if ("string" === typeof href) {
320
- var request = resolveRequest();
321
- if (request) {
322
- var hints = request.hints,
323
- key = "L";
324
- if ("image" === as && options) {
325
- var imageSrcSet = options.imageSrcSet,
326
- imageSizes = options.imageSizes,
327
- uniquePart = "";
328
- "string" === typeof imageSrcSet && "" !== imageSrcSet
329
- ? ((uniquePart += "[" + imageSrcSet + "]"),
330
- "string" === typeof imageSizes &&
331
- (uniquePart += "[" + imageSizes + "]"))
332
- : (uniquePart += "[][]" + href);
333
- key += "[image]" + uniquePart;
334
- } else key += "[" + as + "]" + href;
335
- hints.has(key) ||
336
- (hints.add(key),
337
- (options = trimOptions(options))
338
- ? emitHint(request, "L", [href, as, options])
339
- : emitHint(request, "L", [href, as]));
340
- } else previousDispatcher.L(href, as, options);
341
- }
342
- }
343
- function preloadModule$1(href, options) {
344
- if ("string" === typeof href) {
345
- var request = resolveRequest();
346
- if (request) {
347
- var hints = request.hints,
348
- key = "m|" + href;
349
- if (hints.has(key)) return;
350
- hints.add(key);
351
- return (options = trimOptions(options))
352
- ? emitHint(request, "m", [href, options])
353
- : emitHint(request, "m", href);
354
- }
355
- previousDispatcher.m(href, options);
356
- }
357
- }
358
- function preinitStyle(href, precedence, options) {
359
- if ("string" === typeof href) {
360
- var request = resolveRequest();
361
- if (request) {
362
- var hints = request.hints,
363
- key = "S|" + href;
364
- if (hints.has(key)) return;
365
- hints.add(key);
366
- return (options = trimOptions(options))
367
- ? emitHint(request, "S", [
368
- href,
369
- "string" === typeof precedence ? precedence : 0,
370
- options
371
- ])
372
- : "string" === typeof precedence
373
- ? emitHint(request, "S", [href, precedence])
374
- : emitHint(request, "S", href);
375
- }
376
- previousDispatcher.S(href, precedence, options);
377
- }
378
- }
379
- function preinitScript(src, options) {
380
- if ("string" === typeof src) {
381
- var request = resolveRequest();
382
- if (request) {
383
- var hints = request.hints,
384
- key = "X|" + src;
385
- if (hints.has(key)) return;
386
- hints.add(key);
387
- return (options = trimOptions(options))
388
- ? emitHint(request, "X", [src, options])
389
- : emitHint(request, "X", src);
390
- }
391
- previousDispatcher.X(src, options);
392
- }
393
- }
394
- function preinitModuleScript(src, options) {
395
- if ("string" === typeof src) {
396
- var request = resolveRequest();
397
- if (request) {
398
- var hints = request.hints,
399
- key = "M|" + src;
400
- if (hints.has(key)) return;
401
- hints.add(key);
402
- return (options = trimOptions(options))
403
- ? emitHint(request, "M", [src, options])
404
- : emitHint(request, "M", src);
405
- }
406
- previousDispatcher.M(src, options);
407
- }
408
- }
409
- function trimOptions(options) {
410
- if (null == options) return null;
411
- var hasProperties = !1,
412
- trimmed = {},
413
- key;
414
- for (key in options)
415
- null != options[key] &&
416
- ((hasProperties = !0), (trimmed[key] = options[key]));
417
- return hasProperties ? trimmed : null;
418
- }
419
- function getChildFormatContext(parentContext, type, props) {
420
- switch (type) {
421
- case "img":
422
- type = props.src;
423
- var srcSet = props.srcSet;
424
- if (
425
- !(
426
- "lazy" === props.loading ||
427
- (!type && !srcSet) ||
428
- ("string" !== typeof type && null != type) ||
429
- ("string" !== typeof srcSet && null != srcSet) ||
430
- "low" === props.fetchPriority ||
431
- parentContext & 3
432
- ) &&
433
- ("string" !== typeof type ||
434
- ":" !== type[4] ||
435
- ("d" !== type[0] && "D" !== type[0]) ||
436
- ("a" !== type[1] && "A" !== type[1]) ||
437
- ("t" !== type[2] && "T" !== type[2]) ||
438
- ("a" !== type[3] && "A" !== type[3])) &&
439
- ("string" !== typeof srcSet ||
440
- ":" !== srcSet[4] ||
441
- ("d" !== srcSet[0] && "D" !== srcSet[0]) ||
442
- ("a" !== srcSet[1] && "A" !== srcSet[1]) ||
443
- ("t" !== srcSet[2] && "T" !== srcSet[2]) ||
444
- ("a" !== srcSet[3] && "A" !== srcSet[3]))
445
- ) {
446
- var sizes = "string" === typeof props.sizes ? props.sizes : void 0;
447
- var input = props.crossOrigin;
448
- preload(type || "", "image", {
449
- imageSrcSet: srcSet,
450
- imageSizes: sizes,
451
- crossOrigin:
452
- "string" === typeof input
453
- ? "use-credentials" === input
454
- ? input
455
- : ""
456
- : void 0,
457
- integrity: props.integrity,
458
- type: props.type,
459
- fetchPriority: props.fetchPriority,
460
- referrerPolicy: props.referrerPolicy
461
- });
462
- }
463
- return parentContext;
464
- case "link":
465
- type = props.rel;
466
- srcSet = props.href;
467
- if (
468
- !(
469
- parentContext & 1 ||
470
- null != props.itemProp ||
471
- "string" !== typeof type ||
472
- "string" !== typeof srcSet ||
473
- "" === srcSet
474
- )
475
- )
476
- switch (type) {
477
- case "preload":
478
- preload(srcSet, props.as, {
479
- crossOrigin: props.crossOrigin,
480
- integrity: props.integrity,
481
- nonce: props.nonce,
482
- type: props.type,
483
- fetchPriority: props.fetchPriority,
484
- referrerPolicy: props.referrerPolicy,
485
- imageSrcSet: props.imageSrcSet,
486
- imageSizes: props.imageSizes,
487
- media: props.media
488
- });
489
- break;
490
- case "modulepreload":
491
- preloadModule$1(srcSet, {
492
- as: props.as,
493
- crossOrigin: props.crossOrigin,
494
- integrity: props.integrity,
495
- nonce: props.nonce
496
- });
497
- break;
498
- case "stylesheet":
499
- preload(srcSet, "stylesheet", {
500
- crossOrigin: props.crossOrigin,
501
- integrity: props.integrity,
502
- nonce: props.nonce,
503
- type: props.type,
504
- fetchPriority: props.fetchPriority,
505
- referrerPolicy: props.referrerPolicy,
506
- media: props.media
507
- });
508
- }
509
- return parentContext;
510
- case "picture":
511
- return parentContext | 2;
512
- case "noscript":
513
- return parentContext | 1;
514
- default:
515
- return parentContext;
516
- }
517
- }
518
- var requestStorage = new async_hooks.AsyncLocalStorage(),
519
- TEMPORARY_REFERENCE_TAG = Symbol.for("react.temporary.reference"),
520
- proxyHandlers = {
521
- get: function (target, name) {
522
- switch (name) {
523
- case "$$typeof":
524
- return target.$$typeof;
525
- case "name":
526
- return;
527
- case "displayName":
528
- return;
529
- case "defaultProps":
530
- return;
531
- case "_debugInfo":
532
- return;
533
- case "toJSON":
534
- return;
535
- case Symbol.toPrimitive:
536
- return Object.prototype[Symbol.toPrimitive];
537
- case Symbol.toStringTag:
538
- return Object.prototype[Symbol.toStringTag];
539
- case "Provider":
540
- throw Error(
541
- "Cannot render a Client Context Provider on the Server. Instead, you can export a Client Component wrapper that itself renders a Client Context Provider."
542
- );
543
- case "then":
544
- return;
545
- }
546
- throw Error(
547
- "Cannot access " +
548
- String(name) +
549
- " on the server. You cannot dot into a temporary client reference from a server component. You can only pass the value through to the client."
550
- );
551
- },
552
- set: function () {
553
- throw Error(
554
- "Cannot assign to a temporary client reference from a server module."
555
- );
556
- }
557
- };
558
- function createTemporaryReference(temporaryReferences, id) {
559
- var reference = Object.defineProperties(
560
- function () {
561
- throw Error(
562
- "Attempted to call a temporary Client Reference from the server but it is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component."
563
- );
564
- },
565
- { $$typeof: { value: TEMPORARY_REFERENCE_TAG } }
566
- );
567
- reference = new Proxy(reference, proxyHandlers);
568
- temporaryReferences.set(reference, id);
569
- return reference;
570
- }
571
- function noop() {}
572
- var SuspenseException = Error(
573
- "Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`."
574
- );
575
- function trackUsedThenable(thenableState, thenable, index) {
576
- index = thenableState[index];
577
- void 0 === index
578
- ? thenableState.push(thenable)
579
- : index !== thenable && (thenable.then(noop, noop), (thenable = index));
580
- switch (thenable.status) {
581
- case "fulfilled":
582
- return thenable.value;
583
- case "rejected":
584
- throw thenable.reason;
585
- default:
586
- "string" === typeof thenable.status
587
- ? thenable.then(noop, noop)
588
- : ((thenableState = thenable),
589
- (thenableState.status = "pending"),
590
- thenableState.then(
591
- function (fulfilledValue) {
592
- if ("pending" === thenable.status) {
593
- var fulfilledThenable = thenable;
594
- fulfilledThenable.status = "fulfilled";
595
- fulfilledThenable.value = fulfilledValue;
596
- }
597
- },
598
- function (error) {
599
- if ("pending" === thenable.status) {
600
- var rejectedThenable = thenable;
601
- rejectedThenable.status = "rejected";
602
- rejectedThenable.reason = error;
603
- }
604
- }
605
- ));
606
- switch (thenable.status) {
607
- case "fulfilled":
608
- return thenable.value;
609
- case "rejected":
610
- throw thenable.reason;
611
- }
612
- suspendedThenable = thenable;
613
- throw SuspenseException;
614
- }
615
- }
616
- var suspendedThenable = null;
617
- function getSuspendedThenable() {
618
- if (null === suspendedThenable)
619
- throw Error(
620
- "Expected a suspended thenable. This is a bug in React. Please file an issue."
621
- );
622
- var thenable = suspendedThenable;
623
- suspendedThenable = null;
624
- return thenable;
625
- }
626
- var currentRequest$1 = null,
627
- thenableIndexCounter = 0,
628
- thenableState = null;
629
- function getThenableStateAfterSuspending() {
630
- var state = thenableState || [];
631
- thenableState = null;
632
- return state;
633
- }
634
- var HooksDispatcher = {
635
- readContext: unsupportedContext,
636
- use: use,
637
- useCallback: function (callback) {
638
- return callback;
639
- },
640
- useContext: unsupportedContext,
641
- useEffect: unsupportedHook,
642
- useImperativeHandle: unsupportedHook,
643
- useLayoutEffect: unsupportedHook,
644
- useInsertionEffect: unsupportedHook,
645
- useMemo: function (nextCreate) {
646
- return nextCreate();
647
- },
648
- useReducer: unsupportedHook,
649
- useRef: unsupportedHook,
650
- useState: unsupportedHook,
651
- useDebugValue: function () {},
652
- useDeferredValue: unsupportedHook,
653
- useTransition: unsupportedHook,
654
- useSyncExternalStore: unsupportedHook,
655
- useId: useId,
656
- useHostTransitionStatus: unsupportedHook,
657
- useFormState: unsupportedHook,
658
- useActionState: unsupportedHook,
659
- useOptimistic: unsupportedHook,
660
- useMemoCache: function (size) {
661
- for (var data = Array(size), i = 0; i < size; i++)
662
- data[i] = REACT_MEMO_CACHE_SENTINEL;
663
- return data;
664
- },
665
- useCacheRefresh: function () {
666
- return unsupportedRefresh;
667
- }
668
- };
669
- HooksDispatcher.useEffectEvent = unsupportedHook;
670
- function unsupportedHook() {
671
- throw Error("This Hook is not supported in Server Components.");
672
- }
673
- function unsupportedRefresh() {
674
- throw Error("Refreshing the cache is not supported in Server Components.");
675
- }
676
- function unsupportedContext() {
677
- throw Error("Cannot read a Client Context from a Server Component.");
678
- }
679
- function useId() {
680
- if (null === currentRequest$1)
681
- throw Error("useId can only be used while React is rendering");
682
- var id = currentRequest$1.identifierCount++;
683
- return "_" + currentRequest$1.identifierPrefix + "S_" + id.toString(32) + "_";
684
- }
685
- function use(usable) {
686
- if (
687
- (null !== usable && "object" === typeof usable) ||
688
- "function" === typeof usable
689
- ) {
690
- if ("function" === typeof usable.then) {
691
- var index = thenableIndexCounter;
692
- thenableIndexCounter += 1;
693
- null === thenableState && (thenableState = []);
694
- return trackUsedThenable(thenableState, usable, index);
695
- }
696
- usable.$$typeof === REACT_CONTEXT_TYPE && unsupportedContext();
697
- }
698
- if (usable.$$typeof === CLIENT_REFERENCE_TAG$1) {
699
- if (null != usable.value && usable.value.$$typeof === REACT_CONTEXT_TYPE)
700
- throw Error("Cannot read a Client Context from a Server Component.");
701
- throw Error("Cannot use() an already resolved Client Reference.");
702
- }
703
- throw Error("An unsupported type was passed to use(): " + String(usable));
704
- }
705
- var DefaultAsyncDispatcher = {
706
- getCacheForType: function (resourceType) {
707
- var JSCompiler_inline_result = (JSCompiler_inline_result =
708
- resolveRequest())
709
- ? JSCompiler_inline_result.cache
710
- : new Map();
711
- var entry = JSCompiler_inline_result.get(resourceType);
712
- void 0 === entry &&
713
- ((entry = resourceType()),
714
- JSCompiler_inline_result.set(resourceType, entry));
715
- return entry;
716
- },
717
- cacheSignal: function () {
718
- var request = resolveRequest();
719
- return request ? request.cacheController.signal : null;
720
- }
721
- },
722
- ReactSharedInternalsServer =
723
- React.__SERVER_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;
724
- if (!ReactSharedInternalsServer)
725
- throw Error(
726
- 'The "react" package in this environment is not configured correctly. The "react-server" condition must be enabled in any environment that runs React Server Components.'
727
- );
728
- var isArrayImpl = Array.isArray,
729
- getPrototypeOf = Object.getPrototypeOf;
730
- function objectName(object) {
731
- object = Object.prototype.toString.call(object);
732
- return object.slice(8, object.length - 1);
733
- }
734
- function describeValueForErrorMessage(value) {
735
- switch (typeof value) {
736
- case "string":
737
- return JSON.stringify(
738
- 10 >= value.length ? value : value.slice(0, 10) + "..."
739
- );
740
- case "object":
741
- if (isArrayImpl(value)) return "[...]";
742
- if (null !== value && value.$$typeof === CLIENT_REFERENCE_TAG)
743
- return "client";
744
- value = objectName(value);
745
- return "Object" === value ? "{...}" : value;
746
- case "function":
747
- return value.$$typeof === CLIENT_REFERENCE_TAG
748
- ? "client"
749
- : (value = value.displayName || value.name)
750
- ? "function " + value
751
- : "function";
752
- default:
753
- return String(value);
754
- }
755
- }
756
- function describeElementType(type) {
757
- if ("string" === typeof type) return type;
758
- switch (type) {
759
- case REACT_SUSPENSE_TYPE:
760
- return "Suspense";
761
- case REACT_SUSPENSE_LIST_TYPE:
762
- return "SuspenseList";
763
- }
764
- if ("object" === typeof type)
765
- switch (type.$$typeof) {
766
- case REACT_FORWARD_REF_TYPE:
767
- return describeElementType(type.render);
768
- case REACT_MEMO_TYPE:
769
- return describeElementType(type.type);
770
- case REACT_LAZY_TYPE:
771
- var payload = type._payload;
772
- type = type._init;
773
- try {
774
- return describeElementType(type(payload));
775
- } catch (x) {}
776
- }
777
- return "";
778
- }
779
- var CLIENT_REFERENCE_TAG = Symbol.for("react.client.reference");
780
- function describeObjectForErrorMessage(objectOrArray, expandedName) {
781
- var objKind = objectName(objectOrArray);
782
- if ("Object" !== objKind && "Array" !== objKind) return objKind;
783
- objKind = -1;
784
- var length = 0;
785
- if (isArrayImpl(objectOrArray)) {
786
- var str = "[";
787
- for (var i = 0; i < objectOrArray.length; i++) {
788
- 0 < i && (str += ", ");
789
- var value = objectOrArray[i];
790
- value =
791
- "object" === typeof value && null !== value
792
- ? describeObjectForErrorMessage(value)
793
- : describeValueForErrorMessage(value);
794
- "" + i === expandedName
795
- ? ((objKind = str.length), (length = value.length), (str += value))
796
- : (str =
797
- 10 > value.length && 40 > str.length + value.length
798
- ? str + value
799
- : str + "...");
800
- }
801
- str += "]";
802
- } else if (objectOrArray.$$typeof === REACT_ELEMENT_TYPE)
803
- str = "<" + describeElementType(objectOrArray.type) + "/>";
804
- else {
805
- if (objectOrArray.$$typeof === CLIENT_REFERENCE_TAG) return "client";
806
- str = "{";
807
- i = Object.keys(objectOrArray);
808
- for (value = 0; value < i.length; value++) {
809
- 0 < value && (str += ", ");
810
- var name = i[value],
811
- encodedKey = JSON.stringify(name);
812
- str += ('"' + name + '"' === encodedKey ? name : encodedKey) + ": ";
813
- encodedKey = objectOrArray[name];
814
- encodedKey =
815
- "object" === typeof encodedKey && null !== encodedKey
816
- ? describeObjectForErrorMessage(encodedKey)
817
- : describeValueForErrorMessage(encodedKey);
818
- name === expandedName
819
- ? ((objKind = str.length),
820
- (length = encodedKey.length),
821
- (str += encodedKey))
822
- : (str =
823
- 10 > encodedKey.length && 40 > str.length + encodedKey.length
824
- ? str + encodedKey
825
- : str + "...");
826
- }
827
- str += "}";
828
- }
829
- return void 0 === expandedName
830
- ? str
831
- : -1 < objKind && 0 < length
832
- ? ((objectOrArray = " ".repeat(objKind) + "^".repeat(length)),
833
- "\n " + str + "\n " + objectOrArray)
834
- : "\n " + str;
835
- }
836
- var hasOwnProperty = Object.prototype.hasOwnProperty,
837
- ObjectPrototype = Object.prototype,
838
- stringify = JSON.stringify;
839
- function defaultErrorHandler(error) {
840
- console.error(error);
841
- }
842
- function RequestInstance(
843
- type,
844
- model,
845
- bundlerConfig,
846
- onError,
847
- onPostpone,
848
- onAllReady,
849
- onFatalError,
850
- identifierPrefix,
851
- temporaryReferences
852
- ) {
853
- if (
854
- null !== ReactSharedInternalsServer.A &&
855
- ReactSharedInternalsServer.A !== DefaultAsyncDispatcher
856
- )
857
- throw Error("Currently React only supports one RSC renderer at a time.");
858
- ReactSharedInternalsServer.A = DefaultAsyncDispatcher;
859
- var abortSet = new Set(),
860
- pingedTasks = [],
861
- hints = new Set();
862
- this.type = type;
863
- this.status = 10;
864
- this.flushScheduled = !1;
865
- this.destination = this.fatalError = null;
866
- this.bundlerConfig = bundlerConfig;
867
- this.cache = new Map();
868
- this.cacheController = new AbortController();
869
- this.pendingChunks = this.nextChunkId = 0;
870
- this.hints = hints;
871
- this.abortableTasks = abortSet;
872
- this.pingedTasks = pingedTasks;
873
- this.completedImportChunks = [];
874
- this.completedHintChunks = [];
875
- this.completedRegularChunks = [];
876
- this.completedErrorChunks = [];
877
- this.writtenSymbols = new Map();
878
- this.writtenClientReferences = new Map();
879
- this.writtenServerReferences = new Map();
880
- this.writtenObjects = new WeakMap();
881
- this.temporaryReferences = temporaryReferences;
882
- this.identifierPrefix = identifierPrefix || "";
883
- this.identifierCount = 1;
884
- this.taintCleanupQueue = [];
885
- this.onError = void 0 === onError ? defaultErrorHandler : onError;
886
- this.onPostpone = void 0 === onPostpone ? noop : onPostpone;
887
- this.onAllReady = onAllReady;
888
- this.onFatalError = onFatalError;
889
- type = createTask(this, model, null, !1, 0, abortSet);
890
- pingedTasks.push(type);
891
- }
892
- var currentRequest = null;
893
- function resolveRequest() {
894
- if (currentRequest) return currentRequest;
895
- var store = requestStorage.getStore();
896
- return store ? store : null;
897
- }
898
- function serializeThenable(request, task, thenable) {
899
- var newTask = createTask(
900
- request,
901
- thenable,
902
- task.keyPath,
903
- task.implicitSlot,
904
- task.formatContext,
905
- request.abortableTasks
906
- );
907
- switch (thenable.status) {
908
- case "fulfilled":
909
- return (
910
- (newTask.model = thenable.value), pingTask(request, newTask), newTask.id
911
- );
912
- case "rejected":
913
- return erroredTask(request, newTask, thenable.reason), newTask.id;
914
- default:
915
- if (12 === request.status)
916
- return (
917
- request.abortableTasks.delete(newTask),
918
- 21 === request.type
919
- ? (haltTask(newTask), finishHaltedTask(newTask, request))
920
- : ((task = request.fatalError),
921
- abortTask(newTask),
922
- finishAbortedTask(newTask, request, task)),
923
- newTask.id
924
- );
925
- "string" !== typeof thenable.status &&
926
- ((thenable.status = "pending"),
927
- thenable.then(
928
- function (fulfilledValue) {
929
- "pending" === thenable.status &&
930
- ((thenable.status = "fulfilled"),
931
- (thenable.value = fulfilledValue));
932
- },
933
- function (error) {
934
- "pending" === thenable.status &&
935
- ((thenable.status = "rejected"), (thenable.reason = error));
936
- }
937
- ));
938
- }
939
- thenable.then(
940
- function (value) {
941
- newTask.model = value;
942
- pingTask(request, newTask);
943
- },
944
- function (reason) {
945
- 0 === newTask.status &&
946
- (erroredTask(request, newTask, reason), enqueueFlush(request));
947
- }
948
- );
949
- return newTask.id;
950
- }
951
- function serializeReadableStream(request, task, stream) {
952
- function progress(entry) {
953
- if (0 === streamTask.status)
954
- if (entry.done)
955
- (streamTask.status = 1),
956
- (entry = streamTask.id.toString(16) + ":C\n"),
957
- request.completedRegularChunks.push(entry),
958
- request.abortableTasks.delete(streamTask),
959
- request.cacheController.signal.removeEventListener(
960
- "abort",
961
- abortStream
962
- ),
963
- enqueueFlush(request),
964
- callOnAllReadyIfReady(request);
965
- else
966
- try {
967
- (streamTask.model = entry.value),
968
- request.pendingChunks++,
969
- tryStreamTask(request, streamTask),
970
- enqueueFlush(request),
971
- reader.read().then(progress, error);
972
- } catch (x$11) {
973
- error(x$11);
974
- }
975
- }
976
- function error(reason) {
977
- 0 === streamTask.status &&
978
- (request.cacheController.signal.removeEventListener("abort", abortStream),
979
- erroredTask(request, streamTask, reason),
980
- enqueueFlush(request),
981
- reader.cancel(reason).then(error, error));
982
- }
983
- function abortStream() {
984
- if (0 === streamTask.status) {
985
- var signal = request.cacheController.signal;
986
- signal.removeEventListener("abort", abortStream);
987
- signal = signal.reason;
988
- 21 === request.type
989
- ? (request.abortableTasks.delete(streamTask),
990
- haltTask(streamTask),
991
- finishHaltedTask(streamTask, request))
992
- : (erroredTask(request, streamTask, signal), enqueueFlush(request));
993
- reader.cancel(signal).then(error, error);
994
- }
995
- }
996
- var supportsBYOB = stream.supportsBYOB;
997
- if (void 0 === supportsBYOB)
998
- try {
999
- stream.getReader({ mode: "byob" }).releaseLock(), (supportsBYOB = !0);
1000
- } catch (x) {
1001
- supportsBYOB = !1;
1002
- }
1003
- var reader = stream.getReader(),
1004
- streamTask = createTask(
1005
- request,
1006
- task.model,
1007
- task.keyPath,
1008
- task.implicitSlot,
1009
- task.formatContext,
1010
- request.abortableTasks
1011
- );
1012
- request.pendingChunks++;
1013
- task = streamTask.id.toString(16) + ":" + (supportsBYOB ? "r" : "R") + "\n";
1014
- request.completedRegularChunks.push(task);
1015
- request.cacheController.signal.addEventListener("abort", abortStream);
1016
- reader.read().then(progress, error);
1017
- return serializeByValueID(streamTask.id);
1018
- }
1019
- function serializeAsyncIterable(request, task, iterable, iterator) {
1020
- function progress(entry) {
1021
- if (0 === streamTask.status)
1022
- if (entry.done) {
1023
- streamTask.status = 1;
1024
- if (void 0 === entry.value)
1025
- var endStreamRow = streamTask.id.toString(16) + ":C\n";
1026
- else
1027
- try {
1028
- var chunkId = outlineModelWithFormatContext(
1029
- request,
1030
- entry.value,
1031
- 0
1032
- );
1033
- endStreamRow =
1034
- streamTask.id.toString(16) +
1035
- ":C" +
1036
- stringify(serializeByValueID(chunkId)) +
1037
- "\n";
1038
- } catch (x) {
1039
- error(x);
1040
- return;
1041
- }
1042
- request.completedRegularChunks.push(endStreamRow);
1043
- request.abortableTasks.delete(streamTask);
1044
- request.cacheController.signal.removeEventListener(
1045
- "abort",
1046
- abortIterable
1047
- );
1048
- enqueueFlush(request);
1049
- callOnAllReadyIfReady(request);
1050
- } else
1051
- try {
1052
- (streamTask.model = entry.value),
1053
- request.pendingChunks++,
1054
- tryStreamTask(request, streamTask),
1055
- enqueueFlush(request),
1056
- iterator.next().then(progress, error);
1057
- } catch (x$12) {
1058
- error(x$12);
1059
- }
1060
- }
1061
- function error(reason) {
1062
- 0 === streamTask.status &&
1063
- (request.cacheController.signal.removeEventListener(
1064
- "abort",
1065
- abortIterable
1066
- ),
1067
- erroredTask(request, streamTask, reason),
1068
- enqueueFlush(request),
1069
- "function" === typeof iterator.throw &&
1070
- iterator.throw(reason).then(error, error));
1071
- }
1072
- function abortIterable() {
1073
- if (0 === streamTask.status) {
1074
- var signal = request.cacheController.signal;
1075
- signal.removeEventListener("abort", abortIterable);
1076
- var reason = signal.reason;
1077
- 21 === request.type
1078
- ? (request.abortableTasks.delete(streamTask),
1079
- haltTask(streamTask),
1080
- finishHaltedTask(streamTask, request))
1081
- : (erroredTask(request, streamTask, signal.reason),
1082
- enqueueFlush(request));
1083
- "function" === typeof iterator.throw &&
1084
- iterator.throw(reason).then(error, error);
1085
- }
1086
- }
1087
- iterable = iterable === iterator;
1088
- var streamTask = createTask(
1089
- request,
1090
- task.model,
1091
- task.keyPath,
1092
- task.implicitSlot,
1093
- task.formatContext,
1094
- request.abortableTasks
1095
- );
1096
- request.pendingChunks++;
1097
- task = streamTask.id.toString(16) + ":" + (iterable ? "x" : "X") + "\n";
1098
- request.completedRegularChunks.push(task);
1099
- request.cacheController.signal.addEventListener("abort", abortIterable);
1100
- iterator.next().then(progress, error);
1101
- return serializeByValueID(streamTask.id);
1102
- }
1103
- function emitHint(request, code, model) {
1104
- model = stringify(model);
1105
- request.completedHintChunks.push(":H" + code + model + "\n");
1106
- enqueueFlush(request);
1107
- }
1108
- function readThenable(thenable) {
1109
- if ("fulfilled" === thenable.status) return thenable.value;
1110
- if ("rejected" === thenable.status) throw thenable.reason;
1111
- throw thenable;
1112
- }
1113
- function createLazyWrapperAroundWakeable(request, task, wakeable) {
1114
- switch (wakeable.status) {
1115
- case "fulfilled":
1116
- return wakeable.value;
1117
- case "rejected":
1118
- break;
1119
- default:
1120
- "string" !== typeof wakeable.status &&
1121
- ((wakeable.status = "pending"),
1122
- wakeable.then(
1123
- function (fulfilledValue) {
1124
- "pending" === wakeable.status &&
1125
- ((wakeable.status = "fulfilled"),
1126
- (wakeable.value = fulfilledValue));
1127
- },
1128
- function (error) {
1129
- "pending" === wakeable.status &&
1130
- ((wakeable.status = "rejected"), (wakeable.reason = error));
1131
- }
1132
- ));
1133
- }
1134
- return { $$typeof: REACT_LAZY_TYPE, _payload: wakeable, _init: readThenable };
1135
- }
1136
- function voidHandler() {}
1137
- function processServerComponentReturnValue(request, task, Component, result) {
1138
- if (
1139
- "object" !== typeof result ||
1140
- null === result ||
1141
- result.$$typeof === CLIENT_REFERENCE_TAG$1
1142
- )
1143
- return result;
1144
- if ("function" === typeof result.then)
1145
- return createLazyWrapperAroundWakeable(request, task, result);
1146
- var iteratorFn = getIteratorFn(result);
1147
- return iteratorFn
1148
- ? ((request = {}),
1149
- (request[Symbol.iterator] = function () {
1150
- return iteratorFn.call(result);
1151
- }),
1152
- request)
1153
- : "function" !== typeof result[ASYNC_ITERATOR] ||
1154
- ("function" === typeof ReadableStream &&
1155
- result instanceof ReadableStream)
1156
- ? result
1157
- : ((request = {}),
1158
- (request[ASYNC_ITERATOR] = function () {
1159
- return result[ASYNC_ITERATOR]();
1160
- }),
1161
- request);
1162
- }
1163
- function renderFunctionComponent(request, task, key, Component, props) {
1164
- var prevThenableState = task.thenableState;
1165
- task.thenableState = null;
1166
- thenableIndexCounter = 0;
1167
- thenableState = prevThenableState;
1168
- props = Component(props, void 0);
1169
- if (12 === request.status)
1170
- throw (
1171
- ("object" === typeof props &&
1172
- null !== props &&
1173
- "function" === typeof props.then &&
1174
- props.$$typeof !== CLIENT_REFERENCE_TAG$1 &&
1175
- props.then(voidHandler, voidHandler),
1176
- null)
1177
- );
1178
- props = processServerComponentReturnValue(request, task, Component, props);
1179
- Component = task.keyPath;
1180
- prevThenableState = task.implicitSlot;
1181
- null !== key
1182
- ? (task.keyPath = null === Component ? key : Component + "," + key)
1183
- : null === Component && (task.implicitSlot = !0);
1184
- request = renderModelDestructive(request, task, emptyRoot, "", props);
1185
- task.keyPath = Component;
1186
- task.implicitSlot = prevThenableState;
1187
- return request;
1188
- }
1189
- function renderFragment(request, task, children) {
1190
- return null !== task.keyPath
1191
- ? ((request = [
1192
- REACT_ELEMENT_TYPE,
1193
- REACT_FRAGMENT_TYPE,
1194
- task.keyPath,
1195
- { children: children }
1196
- ]),
1197
- task.implicitSlot ? [request] : request)
1198
- : children;
1199
- }
1200
- var serializedSize = 0;
1201
- function deferTask(request, task) {
1202
- task = createTask(
1203
- request,
1204
- task.model,
1205
- task.keyPath,
1206
- task.implicitSlot,
1207
- task.formatContext,
1208
- request.abortableTasks
1209
- );
1210
- pingTask(request, task);
1211
- return serializeLazyID(task.id);
1212
- }
1213
- function renderElement(request, task, type, key, ref, props) {
1214
- if (null !== ref && void 0 !== ref)
1215
- throw Error(
1216
- "Refs cannot be used in Server Components, nor passed to Client Components."
1217
- );
1218
- if (
1219
- "function" === typeof type &&
1220
- type.$$typeof !== CLIENT_REFERENCE_TAG$1 &&
1221
- type.$$typeof !== TEMPORARY_REFERENCE_TAG
1222
- )
1223
- return renderFunctionComponent(request, task, key, type, props);
1224
- if (type === REACT_FRAGMENT_TYPE && null === key)
1225
- return (
1226
- (type = task.implicitSlot),
1227
- null === task.keyPath && (task.implicitSlot = !0),
1228
- (props = renderModelDestructive(
1229
- request,
1230
- task,
1231
- emptyRoot,
1232
- "",
1233
- props.children
1234
- )),
1235
- (task.implicitSlot = type),
1236
- props
1237
- );
1238
- if (
1239
- null != type &&
1240
- "object" === typeof type &&
1241
- type.$$typeof !== CLIENT_REFERENCE_TAG$1
1242
- )
1243
- switch (type.$$typeof) {
1244
- case REACT_LAZY_TYPE:
1245
- var init = type._init;
1246
- type = init(type._payload);
1247
- if (12 === request.status) throw null;
1248
- return renderElement(request, task, type, key, ref, props);
1249
- case REACT_FORWARD_REF_TYPE:
1250
- return renderFunctionComponent(request, task, key, type.render, props);
1251
- case REACT_MEMO_TYPE:
1252
- return renderElement(request, task, type.type, key, ref, props);
1253
- }
1254
- else
1255
- "string" === typeof type &&
1256
- ((ref = task.formatContext),
1257
- (init = getChildFormatContext(ref, type, props)),
1258
- ref !== init &&
1259
- null != props.children &&
1260
- outlineModelWithFormatContext(request, props.children, init));
1261
- request = key;
1262
- key = task.keyPath;
1263
- null === request
1264
- ? (request = key)
1265
- : null !== key && (request = key + "," + request);
1266
- props = [REACT_ELEMENT_TYPE, type, request, props];
1267
- task = task.implicitSlot && null !== request ? [props] : props;
1268
- return task;
1269
- }
1270
- function pingTask(request, task) {
1271
- var pingedTasks = request.pingedTasks;
1272
- pingedTasks.push(task);
1273
- 1 === pingedTasks.length &&
1274
- ((request.flushScheduled = null !== request.destination),
1275
- 21 === request.type || 10 === request.status
1276
- ? scheduleMicrotask(function () {
1277
- return performWork(request);
1278
- })
1279
- : setImmediate(function () {
1280
- return performWork(request);
1281
- }));
1282
- }
1283
- function createTask(
1284
- request,
1285
- model,
1286
- keyPath,
1287
- implicitSlot,
1288
- formatContext,
1289
- abortSet
1290
- ) {
1291
- request.pendingChunks++;
1292
- var id = request.nextChunkId++;
1293
- "object" !== typeof model ||
1294
- null === model ||
1295
- null !== keyPath ||
1296
- implicitSlot ||
1297
- request.writtenObjects.set(model, serializeByValueID(id));
1298
- var task = {
1299
- id: id,
1300
- status: 0,
1301
- model: model,
1302
- keyPath: keyPath,
1303
- implicitSlot: implicitSlot,
1304
- formatContext: formatContext,
1305
- ping: function () {
1306
- return pingTask(request, task);
1307
- },
1308
- toJSON: function (parentPropertyName, value) {
1309
- serializedSize += parentPropertyName.length;
1310
- var prevKeyPath = task.keyPath,
1311
- prevImplicitSlot = task.implicitSlot;
1312
- try {
1313
- var JSCompiler_inline_result = renderModelDestructive(
1314
- request,
1315
- task,
1316
- this,
1317
- parentPropertyName,
1318
- value
1319
- );
1320
- } catch (thrownValue) {
1321
- if (
1322
- ((parentPropertyName = task.model),
1323
- (parentPropertyName =
1324
- "object" === typeof parentPropertyName &&
1325
- null !== parentPropertyName &&
1326
- (parentPropertyName.$$typeof === REACT_ELEMENT_TYPE ||
1327
- parentPropertyName.$$typeof === REACT_LAZY_TYPE)),
1328
- 12 === request.status)
1329
- )
1330
- (task.status = 3),
1331
- 21 === request.type
1332
- ? ((prevKeyPath = request.nextChunkId++),
1333
- (prevKeyPath = parentPropertyName
1334
- ? serializeLazyID(prevKeyPath)
1335
- : serializeByValueID(prevKeyPath)),
1336
- (JSCompiler_inline_result = prevKeyPath))
1337
- : ((prevKeyPath = request.fatalError),
1338
- (JSCompiler_inline_result = parentPropertyName
1339
- ? serializeLazyID(prevKeyPath)
1340
- : serializeByValueID(prevKeyPath)));
1341
- else if (
1342
- ((value =
1343
- thrownValue === SuspenseException
1344
- ? getSuspendedThenable()
1345
- : thrownValue),
1346
- "object" === typeof value &&
1347
- null !== value &&
1348
- "function" === typeof value.then)
1349
- ) {
1350
- JSCompiler_inline_result = createTask(
1351
- request,
1352
- task.model,
1353
- task.keyPath,
1354
- task.implicitSlot,
1355
- task.formatContext,
1356
- request.abortableTasks
1357
- );
1358
- var ping = JSCompiler_inline_result.ping;
1359
- value.then(ping, ping);
1360
- JSCompiler_inline_result.thenableState =
1361
- getThenableStateAfterSuspending();
1362
- task.keyPath = prevKeyPath;
1363
- task.implicitSlot = prevImplicitSlot;
1364
- JSCompiler_inline_result = parentPropertyName
1365
- ? serializeLazyID(JSCompiler_inline_result.id)
1366
- : serializeByValueID(JSCompiler_inline_result.id);
1367
- } else
1368
- (task.keyPath = prevKeyPath),
1369
- (task.implicitSlot = prevImplicitSlot),
1370
- request.pendingChunks++,
1371
- (prevKeyPath = request.nextChunkId++),
1372
- (prevImplicitSlot = logRecoverableError(request, value, task)),
1373
- emitErrorChunk(request, prevKeyPath, prevImplicitSlot),
1374
- (JSCompiler_inline_result = parentPropertyName
1375
- ? serializeLazyID(prevKeyPath)
1376
- : serializeByValueID(prevKeyPath));
1377
- }
1378
- return JSCompiler_inline_result;
1379
- },
1380
- thenableState: null
1381
- };
1382
- abortSet.add(task);
1383
- return task;
1384
- }
1385
- function serializeByValueID(id) {
1386
- return "$" + id.toString(16);
1387
- }
1388
- function serializeLazyID(id) {
1389
- return "$L" + id.toString(16);
1390
- }
1391
- function encodeReferenceChunk(request, id, reference) {
1392
- request = stringify(reference);
1393
- return id.toString(16) + ":" + request + "\n";
1394
- }
1395
- function serializeClientReference(
1396
- request,
1397
- parent,
1398
- parentPropertyName,
1399
- clientReference
1400
- ) {
1401
- var clientReferenceKey = clientReference.$$async
1402
- ? clientReference.$$id + "#async"
1403
- : clientReference.$$id,
1404
- writtenClientReferences = request.writtenClientReferences,
1405
- existingId = writtenClientReferences.get(clientReferenceKey);
1406
- if (void 0 !== existingId)
1407
- return parent[0] === REACT_ELEMENT_TYPE && "1" === parentPropertyName
1408
- ? serializeLazyID(existingId)
1409
- : serializeByValueID(existingId);
1410
- try {
1411
- var config = request.bundlerConfig,
1412
- modulePath = clientReference.$$id;
1413
- existingId = "";
1414
- var resolvedModuleData = config[modulePath];
1415
- if (resolvedModuleData) existingId = resolvedModuleData.name;
1416
- else {
1417
- var idx = modulePath.lastIndexOf("#");
1418
- -1 !== idx &&
1419
- ((existingId = modulePath.slice(idx + 1)),
1420
- (resolvedModuleData = config[modulePath.slice(0, idx)]));
1421
- if (!resolvedModuleData)
1422
- throw Error(
1423
- 'Could not find the module "' +
1424
- modulePath +
1425
- '" in the React Client Manifest. This is probably a bug in the React Server Components bundler.'
1426
- );
1427
- }
1428
- if (!0 === resolvedModuleData.async && !0 === clientReference.$$async)
1429
- throw Error(
1430
- 'The module "' +
1431
- modulePath +
1432
- '" is marked as an async ESM module but was loaded as a CJS proxy. This is probably a bug in the React Server Components bundler.'
1433
- );
1434
- var JSCompiler_inline_result =
1435
- !0 === resolvedModuleData.async || !0 === clientReference.$$async
1436
- ? [resolvedModuleData.id, resolvedModuleData.chunks, existingId, 1]
1437
- : [resolvedModuleData.id, resolvedModuleData.chunks, existingId];
1438
- request.pendingChunks++;
1439
- var importId = request.nextChunkId++,
1440
- json = stringify(JSCompiler_inline_result),
1441
- processedChunk = importId.toString(16) + ":I" + json + "\n";
1442
- request.completedImportChunks.push(processedChunk);
1443
- writtenClientReferences.set(clientReferenceKey, importId);
1444
- return parent[0] === REACT_ELEMENT_TYPE && "1" === parentPropertyName
1445
- ? serializeLazyID(importId)
1446
- : serializeByValueID(importId);
1447
- } catch (x) {
1448
- return (
1449
- request.pendingChunks++,
1450
- (parent = request.nextChunkId++),
1451
- (parentPropertyName = logRecoverableError(request, x, null)),
1452
- emitErrorChunk(request, parent, parentPropertyName),
1453
- serializeByValueID(parent)
1454
- );
1455
- }
1456
- }
1457
- function outlineModelWithFormatContext(request, value, formatContext) {
1458
- value = createTask(
1459
- request,
1460
- value,
1461
- null,
1462
- !1,
1463
- formatContext,
1464
- request.abortableTasks
1465
- );
1466
- retryTask(request, value);
1467
- return value.id;
1468
- }
1469
- function serializeTypedArray(request, tag, typedArray) {
1470
- request.pendingChunks++;
1471
- var bufferId = request.nextChunkId++;
1472
- emitTypedArrayChunk(request, bufferId, tag, typedArray, !1);
1473
- return serializeByValueID(bufferId);
1474
- }
1475
- function serializeBlob(request, blob) {
1476
- function progress(entry) {
1477
- if (0 === newTask.status)
1478
- if (entry.done)
1479
- request.cacheController.signal.removeEventListener("abort", abortBlob),
1480
- pingTask(request, newTask);
1481
- else
1482
- return (
1483
- model.push(entry.value), reader.read().then(progress).catch(error)
1484
- );
1485
- }
1486
- function error(reason) {
1487
- 0 === newTask.status &&
1488
- (request.cacheController.signal.removeEventListener("abort", abortBlob),
1489
- erroredTask(request, newTask, reason),
1490
- enqueueFlush(request),
1491
- reader.cancel(reason).then(error, error));
1492
- }
1493
- function abortBlob() {
1494
- if (0 === newTask.status) {
1495
- var signal = request.cacheController.signal;
1496
- signal.removeEventListener("abort", abortBlob);
1497
- signal = signal.reason;
1498
- 21 === request.type
1499
- ? (request.abortableTasks.delete(newTask),
1500
- haltTask(newTask),
1501
- finishHaltedTask(newTask, request))
1502
- : (erroredTask(request, newTask, signal), enqueueFlush(request));
1503
- reader.cancel(signal).then(error, error);
1504
- }
1505
- }
1506
- var model = [blob.type],
1507
- newTask = createTask(request, model, null, !1, 0, request.abortableTasks),
1508
- reader = blob.stream().getReader();
1509
- request.cacheController.signal.addEventListener("abort", abortBlob);
1510
- reader.read().then(progress).catch(error);
1511
- return "$B" + newTask.id.toString(16);
1512
- }
1513
- var modelRoot = !1;
1514
- function renderModelDestructive(
1515
- request,
1516
- task,
1517
- parent,
1518
- parentPropertyName,
1519
- value
1520
- ) {
1521
- task.model = value;
1522
- if (value === REACT_ELEMENT_TYPE) return "$";
1523
- if (null === value) return null;
1524
- if ("object" === typeof value) {
1525
- switch (value.$$typeof) {
1526
- case REACT_ELEMENT_TYPE:
1527
- var elementReference = null,
1528
- writtenObjects = request.writtenObjects;
1529
- if (null === task.keyPath && !task.implicitSlot) {
1530
- var existingReference = writtenObjects.get(value);
1531
- if (void 0 !== existingReference)
1532
- if (modelRoot === value) modelRoot = null;
1533
- else return existingReference;
1534
- else
1535
- -1 === parentPropertyName.indexOf(":") &&
1536
- ((parent = writtenObjects.get(parent)),
1537
- void 0 !== parent &&
1538
- ((elementReference = parent + ":" + parentPropertyName),
1539
- writtenObjects.set(value, elementReference)));
1540
- }
1541
- if (3200 < serializedSize) return deferTask(request, task);
1542
- parentPropertyName = value.props;
1543
- parent = parentPropertyName.ref;
1544
- request = renderElement(
1545
- request,
1546
- task,
1547
- value.type,
1548
- value.key,
1549
- void 0 !== parent ? parent : null,
1550
- parentPropertyName
1551
- );
1552
- "object" === typeof request &&
1553
- null !== request &&
1554
- null !== elementReference &&
1555
- (writtenObjects.has(request) ||
1556
- writtenObjects.set(request, elementReference));
1557
- return request;
1558
- case REACT_LAZY_TYPE:
1559
- if (3200 < serializedSize) return deferTask(request, task);
1560
- task.thenableState = null;
1561
- parentPropertyName = value._init;
1562
- value = parentPropertyName(value._payload);
1563
- if (12 === request.status) throw null;
1564
- return renderModelDestructive(request, task, emptyRoot, "", value);
1565
- case REACT_LEGACY_ELEMENT_TYPE:
1566
- throw Error(
1567
- 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.'
1568
- );
1569
- }
1570
- if (value.$$typeof === CLIENT_REFERENCE_TAG$1)
1571
- return serializeClientReference(
1572
- request,
1573
- parent,
1574
- parentPropertyName,
1575
- value
1576
- );
1577
- if (
1578
- void 0 !== request.temporaryReferences &&
1579
- ((elementReference = request.temporaryReferences.get(value)),
1580
- void 0 !== elementReference)
1581
- )
1582
- return "$T" + elementReference;
1583
- elementReference = request.writtenObjects;
1584
- writtenObjects = elementReference.get(value);
1585
- if ("function" === typeof value.then) {
1586
- if (void 0 !== writtenObjects) {
1587
- if (null !== task.keyPath || task.implicitSlot)
1588
- return "$@" + serializeThenable(request, task, value).toString(16);
1589
- if (modelRoot === value) modelRoot = null;
1590
- else return writtenObjects;
1591
- }
1592
- request = "$@" + serializeThenable(request, task, value).toString(16);
1593
- elementReference.set(value, request);
1594
- return request;
1595
- }
1596
- if (void 0 !== writtenObjects)
1597
- if (modelRoot === value) {
1598
- if (writtenObjects !== serializeByValueID(task.id))
1599
- return writtenObjects;
1600
- modelRoot = null;
1601
- } else return writtenObjects;
1602
- else if (
1603
- -1 === parentPropertyName.indexOf(":") &&
1604
- ((writtenObjects = elementReference.get(parent)),
1605
- void 0 !== writtenObjects)
1606
- ) {
1607
- existingReference = parentPropertyName;
1608
- if (isArrayImpl(parent) && parent[0] === REACT_ELEMENT_TYPE)
1609
- switch (parentPropertyName) {
1610
- case "1":
1611
- existingReference = "type";
1612
- break;
1613
- case "2":
1614
- existingReference = "key";
1615
- break;
1616
- case "3":
1617
- existingReference = "props";
1618
- break;
1619
- case "4":
1620
- existingReference = "_owner";
1621
- }
1622
- elementReference.set(value, writtenObjects + ":" + existingReference);
1623
- }
1624
- if (isArrayImpl(value)) return renderFragment(request, task, value);
1625
- if (value instanceof Map)
1626
- return (
1627
- (value = Array.from(value)),
1628
- "$Q" + outlineModelWithFormatContext(request, value, 0).toString(16)
1629
- );
1630
- if (value instanceof Set)
1631
- return (
1632
- (value = Array.from(value)),
1633
- "$W" + outlineModelWithFormatContext(request, value, 0).toString(16)
1634
- );
1635
- if ("function" === typeof FormData && value instanceof FormData)
1636
- return (
1637
- (value = Array.from(value.entries())),
1638
- "$K" + outlineModelWithFormatContext(request, value, 0).toString(16)
1639
- );
1640
- if (value instanceof Error) return "$Z";
1641
- if (value instanceof ArrayBuffer)
1642
- return serializeTypedArray(request, "A", new Uint8Array(value));
1643
- if (value instanceof Int8Array)
1644
- return serializeTypedArray(request, "O", value);
1645
- if (value instanceof Uint8Array)
1646
- return serializeTypedArray(request, "o", value);
1647
- if (value instanceof Uint8ClampedArray)
1648
- return serializeTypedArray(request, "U", value);
1649
- if (value instanceof Int16Array)
1650
- return serializeTypedArray(request, "S", value);
1651
- if (value instanceof Uint16Array)
1652
- return serializeTypedArray(request, "s", value);
1653
- if (value instanceof Int32Array)
1654
- return serializeTypedArray(request, "L", value);
1655
- if (value instanceof Uint32Array)
1656
- return serializeTypedArray(request, "l", value);
1657
- if (value instanceof Float32Array)
1658
- return serializeTypedArray(request, "G", value);
1659
- if (value instanceof Float64Array)
1660
- return serializeTypedArray(request, "g", value);
1661
- if (value instanceof BigInt64Array)
1662
- return serializeTypedArray(request, "M", value);
1663
- if (value instanceof BigUint64Array)
1664
- return serializeTypedArray(request, "m", value);
1665
- if (value instanceof DataView)
1666
- return serializeTypedArray(request, "V", value);
1667
- if ("function" === typeof Blob && value instanceof Blob)
1668
- return serializeBlob(request, value);
1669
- if ((elementReference = getIteratorFn(value)))
1670
- return (
1671
- (parentPropertyName = elementReference.call(value)),
1672
- parentPropertyName === value
1673
- ? ((value = Array.from(parentPropertyName)),
1674
- "$i" +
1675
- outlineModelWithFormatContext(request, value, 0).toString(16))
1676
- : renderFragment(request, task, Array.from(parentPropertyName))
1677
- );
1678
- if ("function" === typeof ReadableStream && value instanceof ReadableStream)
1679
- return serializeReadableStream(request, task, value);
1680
- elementReference = value[ASYNC_ITERATOR];
1681
- if ("function" === typeof elementReference)
1682
- return (
1683
- null !== task.keyPath
1684
- ? ((request = [
1685
- REACT_ELEMENT_TYPE,
1686
- REACT_FRAGMENT_TYPE,
1687
- task.keyPath,
1688
- { children: value }
1689
- ]),
1690
- (request = task.implicitSlot ? [request] : request))
1691
- : ((parentPropertyName = elementReference.call(value)),
1692
- (request = serializeAsyncIterable(
1693
- request,
1694
- task,
1695
- value,
1696
- parentPropertyName
1697
- ))),
1698
- request
1699
- );
1700
- if (value instanceof Date) return "$D" + value.toJSON();
1701
- request = getPrototypeOf(value);
1702
- if (
1703
- request !== ObjectPrototype &&
1704
- (null === request || null !== getPrototypeOf(request))
1705
- )
1706
- throw Error(
1707
- "Only plain objects, and a few built-ins, can be passed to Client Components from Server Components. Classes or null prototypes are not supported." +
1708
- describeObjectForErrorMessage(parent, parentPropertyName)
1709
- );
1710
- return value;
1711
- }
1712
- if ("string" === typeof value) {
1713
- serializedSize += value.length;
1714
- if (
1715
- "Z" === value[value.length - 1] &&
1716
- parent[parentPropertyName] instanceof Date
1717
- )
1718
- return "$D" + value;
1719
- if (1024 <= value.length && null !== byteLengthOfChunk)
1720
- return (
1721
- request.pendingChunks++,
1722
- (task = request.nextChunkId++),
1723
- emitTextChunk(request, task, value, !1),
1724
- serializeByValueID(task)
1725
- );
1726
- request = "$" === value[0] ? "$" + value : value;
1727
- return request;
1728
- }
1729
- if ("boolean" === typeof value) return value;
1730
- if ("number" === typeof value)
1731
- return Number.isFinite(value)
1732
- ? 0 === value && -Infinity === 1 / value
1733
- ? "$-0"
1734
- : value
1735
- : Infinity === value
1736
- ? "$Infinity"
1737
- : -Infinity === value
1738
- ? "$-Infinity"
1739
- : "$NaN";
1740
- if ("undefined" === typeof value) return "$undefined";
1741
- if ("function" === typeof value) {
1742
- if (value.$$typeof === CLIENT_REFERENCE_TAG$1)
1743
- return serializeClientReference(
1744
- request,
1745
- parent,
1746
- parentPropertyName,
1747
- value
1748
- );
1749
- if (value.$$typeof === SERVER_REFERENCE_TAG)
1750
- return (
1751
- (task = request.writtenServerReferences),
1752
- (parentPropertyName = task.get(value)),
1753
- void 0 !== parentPropertyName
1754
- ? (request = "$F" + parentPropertyName.toString(16))
1755
- : ((parentPropertyName = value.$$bound),
1756
- (parentPropertyName =
1757
- null === parentPropertyName
1758
- ? null
1759
- : Promise.resolve(parentPropertyName)),
1760
- (request = outlineModelWithFormatContext(
1761
- request,
1762
- { id: value.$$id, bound: parentPropertyName },
1763
- 0
1764
- )),
1765
- task.set(value, request),
1766
- (request = "$F" + request.toString(16))),
1767
- request
1768
- );
1769
- if (
1770
- void 0 !== request.temporaryReferences &&
1771
- ((request = request.temporaryReferences.get(value)), void 0 !== request)
1772
- )
1773
- return "$T" + request;
1774
- if (value.$$typeof === TEMPORARY_REFERENCE_TAG)
1775
- throw Error(
1776
- "Could not reference an opaque temporary reference. This is likely due to misconfiguring the temporaryReferences options on the server."
1777
- );
1778
- if (/^on[A-Z]/.test(parentPropertyName))
1779
- throw Error(
1780
- "Event handlers cannot be passed to Client Component props." +
1781
- describeObjectForErrorMessage(parent, parentPropertyName) +
1782
- "\nIf you need interactivity, consider converting part of this to a Client Component."
1783
- );
1784
- throw Error(
1785
- 'Functions cannot be passed directly to Client Components unless you explicitly expose it by marking it with "use server". Or maybe you meant to call this function rather than return it.' +
1786
- describeObjectForErrorMessage(parent, parentPropertyName)
1787
- );
1788
- }
1789
- if ("symbol" === typeof value) {
1790
- task = request.writtenSymbols;
1791
- elementReference = task.get(value);
1792
- if (void 0 !== elementReference)
1793
- return serializeByValueID(elementReference);
1794
- elementReference = value.description;
1795
- if (Symbol.for(elementReference) !== value)
1796
- throw Error(
1797
- "Only global symbols received from Symbol.for(...) can be passed to Client Components. The symbol Symbol.for(" +
1798
- (value.description + ") cannot be found among global symbols.") +
1799
- describeObjectForErrorMessage(parent, parentPropertyName)
1800
- );
1801
- request.pendingChunks++;
1802
- parentPropertyName = request.nextChunkId++;
1803
- parent = encodeReferenceChunk(
1804
- request,
1805
- parentPropertyName,
1806
- "$S" + elementReference
1807
- );
1808
- request.completedImportChunks.push(parent);
1809
- task.set(value, parentPropertyName);
1810
- return serializeByValueID(parentPropertyName);
1811
- }
1812
- if ("bigint" === typeof value) return "$n" + value.toString(10);
1813
- throw Error(
1814
- "Type " +
1815
- typeof value +
1816
- " is not supported in Client Component props." +
1817
- describeObjectForErrorMessage(parent, parentPropertyName)
1818
- );
1819
- }
1820
- function logRecoverableError(request, error) {
1821
- var prevRequest = currentRequest;
1822
- currentRequest = null;
1823
- try {
1824
- var errorDigest = requestStorage.run(void 0, request.onError, error);
1825
- } finally {
1826
- currentRequest = prevRequest;
1827
- }
1828
- if (null != errorDigest && "string" !== typeof errorDigest)
1829
- throw Error(
1830
- 'onError returned something with a type other than "string". onError should return a string and may return null or undefined but must not return anything else. It received something of type "' +
1831
- typeof errorDigest +
1832
- '" instead'
1833
- );
1834
- return errorDigest || "";
1835
- }
1836
- function fatalError(request, error) {
1837
- var onFatalError = request.onFatalError;
1838
- onFatalError(error);
1839
- null !== request.destination
1840
- ? ((request.status = 14), request.destination.destroy(error))
1841
- : ((request.status = 13), (request.fatalError = error));
1842
- request.cacheController.abort(
1843
- Error("The render was aborted due to a fatal error.", { cause: error })
1844
- );
1845
- }
1846
- function emitErrorChunk(request, id, digest) {
1847
- digest = { digest: digest };
1848
- id = id.toString(16) + ":E" + stringify(digest) + "\n";
1849
- request.completedErrorChunks.push(id);
1850
- }
1851
- function emitTypedArrayChunk(request, id, tag, typedArray, debug) {
1852
- debug ? request.pendingDebugChunks++ : request.pendingChunks++;
1853
- typedArray = new Uint8Array(
1854
- typedArray.buffer,
1855
- typedArray.byteOffset,
1856
- typedArray.byteLength
1857
- );
1858
- debug = typedArray.byteLength;
1859
- id = id.toString(16) + ":" + tag + debug.toString(16) + ",";
1860
- request.completedRegularChunks.push(id, typedArray);
1861
- }
1862
- function emitTextChunk(request, id, text, debug) {
1863
- if (null === byteLengthOfChunk)
1864
- throw Error(
1865
- "Existence of byteLengthOfChunk should have already been checked. This is a bug in React."
1866
- );
1867
- debug ? request.pendingDebugChunks++ : request.pendingChunks++;
1868
- debug = byteLengthOfChunk(text);
1869
- id = id.toString(16) + ":T" + debug.toString(16) + ",";
1870
- request.completedRegularChunks.push(id, text);
1871
- }
1872
- function emitChunk(request, task, value) {
1873
- var id = task.id;
1874
- "string" === typeof value && null !== byteLengthOfChunk
1875
- ? emitTextChunk(request, id, value, !1)
1876
- : value instanceof ArrayBuffer
1877
- ? emitTypedArrayChunk(request, id, "A", new Uint8Array(value), !1)
1878
- : value instanceof Int8Array
1879
- ? emitTypedArrayChunk(request, id, "O", value, !1)
1880
- : value instanceof Uint8Array
1881
- ? emitTypedArrayChunk(request, id, "o", value, !1)
1882
- : value instanceof Uint8ClampedArray
1883
- ? emitTypedArrayChunk(request, id, "U", value, !1)
1884
- : value instanceof Int16Array
1885
- ? emitTypedArrayChunk(request, id, "S", value, !1)
1886
- : value instanceof Uint16Array
1887
- ? emitTypedArrayChunk(request, id, "s", value, !1)
1888
- : value instanceof Int32Array
1889
- ? emitTypedArrayChunk(request, id, "L", value, !1)
1890
- : value instanceof Uint32Array
1891
- ? emitTypedArrayChunk(request, id, "l", value, !1)
1892
- : value instanceof Float32Array
1893
- ? emitTypedArrayChunk(request, id, "G", value, !1)
1894
- : value instanceof Float64Array
1895
- ? emitTypedArrayChunk(request, id, "g", value, !1)
1896
- : value instanceof BigInt64Array
1897
- ? emitTypedArrayChunk(request, id, "M", value, !1)
1898
- : value instanceof BigUint64Array
1899
- ? emitTypedArrayChunk(request, id, "m", value, !1)
1900
- : value instanceof DataView
1901
- ? emitTypedArrayChunk(request, id, "V", value, !1)
1902
- : ((value = stringify(value, task.toJSON)),
1903
- (task =
1904
- task.id.toString(16) + ":" + value + "\n"),
1905
- request.completedRegularChunks.push(task));
1906
- }
1907
- function erroredTask(request, task, error) {
1908
- task.status = 4;
1909
- error = logRecoverableError(request, error, task);
1910
- emitErrorChunk(request, task.id, error);
1911
- request.abortableTasks.delete(task);
1912
- callOnAllReadyIfReady(request);
1913
- }
1914
- var emptyRoot = {};
1915
- function retryTask(request, task) {
1916
- if (0 === task.status) {
1917
- task.status = 5;
1918
- var parentSerializedSize = serializedSize;
1919
- try {
1920
- modelRoot = task.model;
1921
- var resolvedModel = renderModelDestructive(
1922
- request,
1923
- task,
1924
- emptyRoot,
1925
- "",
1926
- task.model
1927
- );
1928
- modelRoot = resolvedModel;
1929
- task.keyPath = null;
1930
- task.implicitSlot = !1;
1931
- if ("object" === typeof resolvedModel && null !== resolvedModel)
1932
- request.writtenObjects.set(resolvedModel, serializeByValueID(task.id)),
1933
- emitChunk(request, task, resolvedModel);
1934
- else {
1935
- var json = stringify(resolvedModel),
1936
- processedChunk = task.id.toString(16) + ":" + json + "\n";
1937
- request.completedRegularChunks.push(processedChunk);
1938
- }
1939
- task.status = 1;
1940
- request.abortableTasks.delete(task);
1941
- callOnAllReadyIfReady(request);
1942
- } catch (thrownValue) {
1943
- if (12 === request.status)
1944
- if (
1945
- (request.abortableTasks.delete(task),
1946
- (task.status = 0),
1947
- 21 === request.type)
1948
- )
1949
- haltTask(task), finishHaltedTask(task, request);
1950
- else {
1951
- var errorId = request.fatalError;
1952
- abortTask(task);
1953
- finishAbortedTask(task, request, errorId);
1954
- }
1955
- else {
1956
- var x =
1957
- thrownValue === SuspenseException
1958
- ? getSuspendedThenable()
1959
- : thrownValue;
1960
- if (
1961
- "object" === typeof x &&
1962
- null !== x &&
1963
- "function" === typeof x.then
1964
- ) {
1965
- task.status = 0;
1966
- task.thenableState = getThenableStateAfterSuspending();
1967
- var ping = task.ping;
1968
- x.then(ping, ping);
1969
- } else erroredTask(request, task, x);
1970
- }
1971
- } finally {
1972
- serializedSize = parentSerializedSize;
1973
- }
1974
- }
1975
- }
1976
- function tryStreamTask(request, task) {
1977
- var parentSerializedSize = serializedSize;
1978
- try {
1979
- emitChunk(request, task, task.model);
1980
- } finally {
1981
- serializedSize = parentSerializedSize;
1982
- }
1983
- }
1984
- function performWork(request) {
1985
- var prevDispatcher = ReactSharedInternalsServer.H;
1986
- ReactSharedInternalsServer.H = HooksDispatcher;
1987
- var prevRequest = currentRequest;
1988
- currentRequest$1 = currentRequest = request;
1989
- try {
1990
- var pingedTasks = request.pingedTasks;
1991
- request.pingedTasks = [];
1992
- for (var i = 0; i < pingedTasks.length; i++)
1993
- retryTask(request, pingedTasks[i]);
1994
- flushCompletedChunks(request);
1995
- } catch (error) {
1996
- logRecoverableError(request, error, null), fatalError(request, error);
1997
- } finally {
1998
- (ReactSharedInternalsServer.H = prevDispatcher),
1999
- (currentRequest$1 = null),
2000
- (currentRequest = prevRequest);
2001
- }
2002
- }
2003
- function abortTask(task) {
2004
- 0 === task.status && (task.status = 3);
2005
- }
2006
- function finishAbortedTask(task, request, errorId) {
2007
- 3 === task.status &&
2008
- ((errorId = serializeByValueID(errorId)),
2009
- (task = encodeReferenceChunk(request, task.id, errorId)),
2010
- request.completedErrorChunks.push(task));
2011
- }
2012
- function haltTask(task) {
2013
- 0 === task.status && (task.status = 3);
2014
- }
2015
- function finishHaltedTask(task, request) {
2016
- 3 === task.status && request.pendingChunks--;
2017
- }
2018
- function flushCompletedChunks(request) {
2019
- var destination = request.destination;
2020
- if (null !== destination) {
2021
- currentView = new Uint8Array(2048);
2022
- writtenBytes = 0;
2023
- destinationHasCapacity = !0;
2024
- try {
2025
- for (
2026
- var importsChunks = request.completedImportChunks, i = 0;
2027
- i < importsChunks.length;
2028
- i++
2029
- )
2030
- if (
2031
- (request.pendingChunks--,
2032
- !writeChunkAndReturn(destination, importsChunks[i]))
2033
- ) {
2034
- request.destination = null;
2035
- i++;
2036
- break;
2037
- }
2038
- importsChunks.splice(0, i);
2039
- var hintChunks = request.completedHintChunks;
2040
- for (i = 0; i < hintChunks.length; i++)
2041
- if (!writeChunkAndReturn(destination, hintChunks[i])) {
2042
- request.destination = null;
2043
- i++;
2044
- break;
2045
- }
2046
- hintChunks.splice(0, i);
2047
- var regularChunks = request.completedRegularChunks;
2048
- for (i = 0; i < regularChunks.length; i++)
2049
- if (
2050
- (request.pendingChunks--,
2051
- !writeChunkAndReturn(destination, regularChunks[i]))
2052
- ) {
2053
- request.destination = null;
2054
- i++;
2055
- break;
2056
- }
2057
- regularChunks.splice(0, i);
2058
- var errorChunks = request.completedErrorChunks;
2059
- for (i = 0; i < errorChunks.length; i++)
2060
- if (
2061
- (request.pendingChunks--,
2062
- !writeChunkAndReturn(destination, errorChunks[i]))
2063
- ) {
2064
- request.destination = null;
2065
- i++;
2066
- break;
2067
- }
2068
- errorChunks.splice(0, i);
2069
- } finally {
2070
- (request.flushScheduled = !1),
2071
- currentView &&
2072
- 0 < writtenBytes &&
2073
- destination.write(currentView.subarray(0, writtenBytes)),
2074
- (currentView = null),
2075
- (writtenBytes = 0),
2076
- (destinationHasCapacity = !0);
2077
- }
2078
- "function" === typeof destination.flush && destination.flush();
2079
- }
2080
- 0 === request.pendingChunks &&
2081
- (12 > request.status &&
2082
- request.cacheController.abort(
2083
- Error(
2084
- "This render completed successfully. All cacheSignals are now aborted to allow clean up of any unused resources."
2085
- )
2086
- ),
2087
- null !== request.destination &&
2088
- ((request.status = 14),
2089
- request.destination.end(),
2090
- (request.destination = null)));
2091
- }
2092
- function startWork(request) {
2093
- request.flushScheduled = null !== request.destination;
2094
- scheduleMicrotask(function () {
2095
- requestStorage.run(request, performWork, request);
2096
- });
2097
- setImmediate(function () {
2098
- 10 === request.status && (request.status = 11);
2099
- });
2100
- }
2101
- function enqueueFlush(request) {
2102
- !1 === request.flushScheduled &&
2103
- 0 === request.pingedTasks.length &&
2104
- null !== request.destination &&
2105
- ((request.flushScheduled = !0),
2106
- setImmediate(function () {
2107
- request.flushScheduled = !1;
2108
- flushCompletedChunks(request);
2109
- }));
2110
- }
2111
- function callOnAllReadyIfReady(request) {
2112
- 0 === request.abortableTasks.size &&
2113
- ((request = request.onAllReady), request());
2114
- }
2115
- function startFlowing(request, destination) {
2116
- if (13 === request.status)
2117
- (request.status = 14), destination.destroy(request.fatalError);
2118
- else if (14 !== request.status && null === request.destination) {
2119
- request.destination = destination;
2120
- try {
2121
- flushCompletedChunks(request);
2122
- } catch (error) {
2123
- logRecoverableError(request, error, null), fatalError(request, error);
2124
- }
2125
- }
2126
- }
2127
- function finishHalt(request, abortedTasks) {
2128
- try {
2129
- abortedTasks.forEach(function (task) {
2130
- return finishHaltedTask(task, request);
2131
- });
2132
- var onAllReady = request.onAllReady;
2133
- onAllReady();
2134
- flushCompletedChunks(request);
2135
- } catch (error) {
2136
- logRecoverableError(request, error, null), fatalError(request, error);
2137
- }
2138
- }
2139
- function finishAbort(request, abortedTasks, errorId) {
2140
- try {
2141
- abortedTasks.forEach(function (task) {
2142
- return finishAbortedTask(task, request, errorId);
2143
- });
2144
- var onAllReady = request.onAllReady;
2145
- onAllReady();
2146
- flushCompletedChunks(request);
2147
- } catch (error) {
2148
- logRecoverableError(request, error, null), fatalError(request, error);
2149
- }
2150
- }
2151
- function abort(request, reason) {
2152
- if (!(11 < request.status))
2153
- try {
2154
- request.status = 12;
2155
- request.cacheController.abort(reason);
2156
- var abortableTasks = request.abortableTasks;
2157
- if (0 < abortableTasks.size)
2158
- if (21 === request.type)
2159
- abortableTasks.forEach(function (task) {
2160
- return haltTask(task, request);
2161
- }),
2162
- setImmediate(function () {
2163
- return finishHalt(request, abortableTasks);
2164
- });
2165
- else {
2166
- var error =
2167
- void 0 === reason
2168
- ? Error(
2169
- "The render was aborted by the server without a reason."
2170
- )
2171
- : "object" === typeof reason &&
2172
- null !== reason &&
2173
- "function" === typeof reason.then
2174
- ? Error(
2175
- "The render was aborted by the server with a promise."
2176
- )
2177
- : reason,
2178
- digest = logRecoverableError(request, error, null),
2179
- errorId = request.nextChunkId++;
2180
- request.fatalError = errorId;
2181
- request.pendingChunks++;
2182
- emitErrorChunk(request, errorId, digest, error, !1, null);
2183
- abortableTasks.forEach(function (task) {
2184
- return abortTask(task, request, errorId);
2185
- });
2186
- setImmediate(function () {
2187
- return finishAbort(request, abortableTasks, errorId);
2188
- });
2189
- }
2190
- else {
2191
- var onAllReady = request.onAllReady;
2192
- onAllReady();
2193
- flushCompletedChunks(request);
2194
- }
2195
- } catch (error$26) {
2196
- logRecoverableError(request, error$26, null),
2197
- fatalError(request, error$26);
2198
- }
2199
- }
2200
- function resolveServerReference(bundlerConfig, id) {
2201
- var idx = id.lastIndexOf("#");
2202
- bundlerConfig = id.slice(0, idx);
2203
- id = id.slice(idx + 1);
2204
- return { specifier: bundlerConfig, name: id };
2205
- }
2206
- var asyncModuleCache = new Map();
2207
- function preloadModule(metadata) {
2208
- var existingPromise = asyncModuleCache.get(metadata.specifier);
2209
- if (existingPromise)
2210
- return "fulfilled" === existingPromise.status ? null : existingPromise;
2211
- var modulePromise = import(metadata.specifier);
2212
- metadata.async &&
2213
- (modulePromise = modulePromise.then(function (value) {
2214
- return value.default;
2215
- }));
2216
- modulePromise.then(
2217
- function (value) {
2218
- var fulfilledThenable = modulePromise;
2219
- fulfilledThenable.status = "fulfilled";
2220
- fulfilledThenable.value = value;
2221
- },
2222
- function (reason) {
2223
- var rejectedThenable = modulePromise;
2224
- rejectedThenable.status = "rejected";
2225
- rejectedThenable.reason = reason;
2226
- }
2227
- );
2228
- asyncModuleCache.set(metadata.specifier, modulePromise);
2229
- return modulePromise;
2230
- }
2231
- function requireModule(metadata) {
2232
- var moduleExports = asyncModuleCache.get(metadata.specifier);
2233
- if ("fulfilled" === moduleExports.status) moduleExports = moduleExports.value;
2234
- else throw moduleExports.reason;
2235
- if ("*" === metadata.name) return moduleExports;
2236
- if ("" === metadata.name) return moduleExports.default;
2237
- if (hasOwnProperty.call(moduleExports, metadata.name))
2238
- return moduleExports[metadata.name];
2239
- }
2240
- var RESPONSE_SYMBOL = Symbol();
2241
- function ReactPromise(status, value, reason) {
2242
- this.status = status;
2243
- this.value = value;
2244
- this.reason = reason;
2245
- }
2246
- ReactPromise.prototype = Object.create(Promise.prototype);
2247
- ReactPromise.prototype.then = function (resolve, reject) {
2248
- switch (this.status) {
2249
- case "resolved_model":
2250
- initializeModelChunk(this);
2251
- }
2252
- switch (this.status) {
2253
- case "fulfilled":
2254
- "function" === typeof resolve && resolve(this.value);
2255
- break;
2256
- case "pending":
2257
- case "blocked":
2258
- "function" === typeof resolve &&
2259
- (null === this.value && (this.value = []), this.value.push(resolve));
2260
- "function" === typeof reject &&
2261
- (null === this.reason && (this.reason = []), this.reason.push(reject));
2262
- break;
2263
- default:
2264
- "function" === typeof reject && reject(this.reason);
2265
- }
2266
- };
2267
- function wakeChunk(response, listeners, value) {
2268
- for (var i = 0; i < listeners.length; i++) {
2269
- var listener = listeners[i];
2270
- "function" === typeof listener
2271
- ? listener(value)
2272
- : fulfillReference(response, listener, value);
2273
- }
2274
- }
2275
- function rejectChunk(response, listeners, error) {
2276
- for (var i = 0; i < listeners.length; i++) {
2277
- var listener = listeners[i];
2278
- "function" === typeof listener
2279
- ? listener(error)
2280
- : rejectReference(response, listener.handler, error);
2281
- }
2282
- }
2283
- function resolveBlockedCycle(resolvedChunk, reference) {
2284
- var referencedChunk = reference.handler.chunk;
2285
- if (null === referencedChunk) return null;
2286
- if (referencedChunk === resolvedChunk) return reference.handler;
2287
- reference = referencedChunk.value;
2288
- if (null !== reference)
2289
- for (
2290
- referencedChunk = 0;
2291
- referencedChunk < reference.length;
2292
- referencedChunk++
2293
- ) {
2294
- var listener = reference[referencedChunk];
2295
- if (
2296
- "function" !== typeof listener &&
2297
- ((listener = resolveBlockedCycle(resolvedChunk, listener)),
2298
- null !== listener)
2299
- )
2300
- return listener;
2301
- }
2302
- return null;
2303
- }
2304
- function triggerErrorOnChunk(response, chunk, error) {
2305
- if ("pending" !== chunk.status && "blocked" !== chunk.status)
2306
- chunk.reason.error(error);
2307
- else {
2308
- var listeners = chunk.reason;
2309
- chunk.status = "rejected";
2310
- chunk.reason = error;
2311
- null !== listeners && rejectChunk(response, listeners, error);
2312
- }
2313
- }
2314
- function createResolvedModelChunk(response, value, id) {
2315
- var $jscomp$compprop2 = {};
2316
- return new ReactPromise(
2317
- "resolved_model",
2318
- value,
2319
- (($jscomp$compprop2.id = id),
2320
- ($jscomp$compprop2[RESPONSE_SYMBOL] = response),
2321
- $jscomp$compprop2)
2322
- );
2323
- }
2324
- function resolveModelChunk(response, chunk, value, id) {
2325
- if ("pending" !== chunk.status)
2326
- (chunk = chunk.reason),
2327
- "C" === value[0]
2328
- ? chunk.close("C" === value ? '"$undefined"' : value.slice(1))
2329
- : chunk.enqueueModel(value);
2330
- else {
2331
- var resolveListeners = chunk.value,
2332
- rejectListeners = chunk.reason;
2333
- chunk.status = "resolved_model";
2334
- chunk.value = value;
2335
- value = {};
2336
- chunk.reason =
2337
- ((value.id = id), (value[RESPONSE_SYMBOL] = response), value);
2338
- if (null !== resolveListeners)
2339
- a: switch ((initializeModelChunk(chunk), chunk.status)) {
2340
- case "fulfilled":
2341
- wakeChunk(response, resolveListeners, chunk.value);
2342
- break;
2343
- case "blocked":
2344
- for (value = 0; value < resolveListeners.length; value++)
2345
- if (((id = resolveListeners[value]), "function" !== typeof id)) {
2346
- var cyclicHandler = resolveBlockedCycle(chunk, id);
2347
- if (null !== cyclicHandler)
2348
- switch (
2349
- (fulfillReference(response, id, cyclicHandler.value),
2350
- resolveListeners.splice(value, 1),
2351
- value--,
2352
- null !== rejectListeners &&
2353
- ((id = rejectListeners.indexOf(id)),
2354
- -1 !== id && rejectListeners.splice(id, 1)),
2355
- chunk.status)
2356
- ) {
2357
- case "fulfilled":
2358
- wakeChunk(response, resolveListeners, chunk.value);
2359
- break a;
2360
- case "rejected":
2361
- null !== rejectListeners &&
2362
- rejectChunk(response, rejectListeners, chunk.reason);
2363
- break a;
2364
- }
2365
- }
2366
- case "pending":
2367
- if (chunk.value)
2368
- for (response = 0; response < resolveListeners.length; response++)
2369
- chunk.value.push(resolveListeners[response]);
2370
- else chunk.value = resolveListeners;
2371
- if (chunk.reason) {
2372
- if (rejectListeners)
2373
- for (
2374
- resolveListeners = 0;
2375
- resolveListeners < rejectListeners.length;
2376
- resolveListeners++
2377
- )
2378
- chunk.reason.push(rejectListeners[resolveListeners]);
2379
- } else chunk.reason = rejectListeners;
2380
- break;
2381
- case "rejected":
2382
- rejectListeners && wakeChunk(response, rejectListeners, chunk.reason);
2383
- }
2384
- }
2385
- }
2386
- function createResolvedIteratorResultChunk(response, value, done) {
2387
- var $jscomp$compprop4 = {};
2388
- return new ReactPromise(
2389
- "resolved_model",
2390
- (done ? '{"done":true,"value":' : '{"done":false,"value":') + value + "}",
2391
- (($jscomp$compprop4.id = -1),
2392
- ($jscomp$compprop4[RESPONSE_SYMBOL] = response),
2393
- $jscomp$compprop4)
2394
- );
2395
- }
2396
- function resolveIteratorResultChunk(response, chunk, value, done) {
2397
- resolveModelChunk(
2398
- response,
2399
- chunk,
2400
- (done ? '{"done":true,"value":' : '{"done":false,"value":') + value + "}",
2401
- -1
2402
- );
2403
- }
2404
- function loadServerReference$1(response, metaData, parentObject, key) {
2405
- var id = metaData.id;
2406
- if ("string" !== typeof id) return null;
2407
- var serverReference = resolveServerReference(response._bundlerConfig, id);
2408
- id = metaData.bound;
2409
- var promise = preloadModule(serverReference);
2410
- if (promise)
2411
- id instanceof ReactPromise && (promise = Promise.all([promise, id]));
2412
- else if (id instanceof ReactPromise) promise = Promise.resolve(id);
2413
- else return requireModule(serverReference);
2414
- if (initializingHandler) {
2415
- var handler = initializingHandler;
2416
- handler.deps++;
2417
- } else
2418
- handler = initializingHandler = {
2419
- chunk: null,
2420
- value: null,
2421
- reason: null,
2422
- deps: 1,
2423
- errored: !1
2424
- };
2425
- promise.then(
2426
- function () {
2427
- var resolvedValue = requireModule(serverReference);
2428
- if (metaData.bound) {
2429
- var promiseValue = metaData.bound.value;
2430
- promiseValue = Array.isArray(promiseValue) ? promiseValue.slice(0) : [];
2431
- promiseValue.unshift(null);
2432
- resolvedValue = resolvedValue.bind.apply(resolvedValue, promiseValue);
2433
- }
2434
- parentObject[key] = resolvedValue;
2435
- "" === key && null === handler.value && (handler.value = resolvedValue);
2436
- handler.deps--;
2437
- 0 === handler.deps &&
2438
- ((resolvedValue = handler.chunk),
2439
- null !== resolvedValue &&
2440
- "blocked" === resolvedValue.status &&
2441
- ((promiseValue = resolvedValue.value),
2442
- (resolvedValue.status = "fulfilled"),
2443
- (resolvedValue.value = handler.value),
2444
- null !== promiseValue &&
2445
- wakeChunk(response, promiseValue, handler.value)));
2446
- },
2447
- function (error) {
2448
- if (!handler.errored) {
2449
- handler.errored = !0;
2450
- handler.value = null;
2451
- handler.reason = error;
2452
- var chunk = handler.chunk;
2453
- null !== chunk &&
2454
- "blocked" === chunk.status &&
2455
- triggerErrorOnChunk(response, chunk, error);
2456
- }
2457
- }
2458
- );
2459
- return null;
2460
- }
2461
- function reviveModel(response, parentObj, parentKey, value, reference) {
2462
- if ("string" === typeof value)
2463
- return parseModelString(response, parentObj, parentKey, value, reference);
2464
- if ("object" === typeof value && null !== value)
2465
- if (
2466
- (void 0 !== reference &&
2467
- void 0 !== response._temporaryReferences &&
2468
- response._temporaryReferences.set(value, reference),
2469
- Array.isArray(value))
2470
- )
2471
- for (var i = 0; i < value.length; i++)
2472
- value[i] = reviveModel(
2473
- response,
2474
- value,
2475
- "" + i,
2476
- value[i],
2477
- void 0 !== reference ? reference + ":" + i : void 0
2478
- );
2479
- else
2480
- for (i in value)
2481
- hasOwnProperty.call(value, i) &&
2482
- ((parentObj =
2483
- void 0 !== reference && -1 === i.indexOf(":")
2484
- ? reference + ":" + i
2485
- : void 0),
2486
- (parentObj = reviveModel(response, value, i, value[i], parentObj)),
2487
- void 0 !== parentObj || "__proto__" === i
2488
- ? (value[i] = parentObj)
2489
- : delete value[i]);
2490
- return value;
2491
- }
2492
- var initializingHandler = null;
2493
- function initializeModelChunk(chunk) {
2494
- var prevHandler = initializingHandler;
2495
- initializingHandler = null;
2496
- var _chunk$reason = chunk.reason,
2497
- response = _chunk$reason[RESPONSE_SYMBOL];
2498
- _chunk$reason = _chunk$reason.id;
2499
- _chunk$reason = -1 === _chunk$reason ? void 0 : _chunk$reason.toString(16);
2500
- var resolvedModel = chunk.value;
2501
- chunk.status = "blocked";
2502
- chunk.value = null;
2503
- chunk.reason = null;
2504
- try {
2505
- var rawModel = JSON.parse(resolvedModel),
2506
- value = reviveModel(
2507
- response,
2508
- { "": rawModel },
2509
- "",
2510
- rawModel,
2511
- _chunk$reason
2512
- ),
2513
- resolveListeners = chunk.value;
2514
- if (null !== resolveListeners)
2515
- for (
2516
- chunk.value = null, chunk.reason = null, rawModel = 0;
2517
- rawModel < resolveListeners.length;
2518
- rawModel++
2519
- ) {
2520
- var listener = resolveListeners[rawModel];
2521
- "function" === typeof listener
2522
- ? listener(value)
2523
- : fulfillReference(response, listener, value);
2524
- }
2525
- if (null !== initializingHandler) {
2526
- if (initializingHandler.errored) throw initializingHandler.reason;
2527
- if (0 < initializingHandler.deps) {
2528
- initializingHandler.value = value;
2529
- initializingHandler.chunk = chunk;
2530
- return;
2531
- }
2532
- }
2533
- chunk.status = "fulfilled";
2534
- chunk.value = value;
2535
- } catch (error) {
2536
- (chunk.status = "rejected"), (chunk.reason = error);
2537
- } finally {
2538
- initializingHandler = prevHandler;
2539
- }
2540
- }
2541
- function reportGlobalError(response, error) {
2542
- response._closed = !0;
2543
- response._closedReason = error;
2544
- response._chunks.forEach(function (chunk) {
2545
- "pending" === chunk.status && triggerErrorOnChunk(response, chunk, error);
2546
- });
2547
- }
2548
- function getChunk(response, id) {
2549
- var chunks = response._chunks,
2550
- chunk = chunks.get(id);
2551
- chunk ||
2552
- ((chunk = response._formData.get(response._prefix + id)),
2553
- (chunk =
2554
- "string" === typeof chunk
2555
- ? createResolvedModelChunk(response, chunk, id)
2556
- : response._closed
2557
- ? new ReactPromise("rejected", null, response._closedReason)
2558
- : new ReactPromise("pending", null, null)),
2559
- chunks.set(id, chunk));
2560
- return chunk;
2561
- }
2562
- function fulfillReference(response, reference, value) {
2563
- for (
2564
- var handler = reference.handler,
2565
- parentObject = reference.parentObject,
2566
- key = reference.key,
2567
- map = reference.map,
2568
- path = reference.path,
2569
- i = 1;
2570
- i < path.length;
2571
- i++
2572
- ) {
2573
- for (; value instanceof ReactPromise; ) {
2574
- switch (value.status) {
2575
- case "resolved_model":
2576
- initializeModelChunk(value);
2577
- }
2578
- switch (value.status) {
2579
- case "fulfilled":
2580
- value = value.value;
2581
- continue;
2582
- case "blocked":
2583
- case "pending":
2584
- path.splice(0, i - 1);
2585
- null === value.value
2586
- ? (value.value = [reference])
2587
- : value.value.push(reference);
2588
- null === value.reason
2589
- ? (value.reason = [reference])
2590
- : value.reason.push(reference);
2591
- return;
2592
- default:
2593
- rejectReference(response, reference.handler, value.reason);
2594
- return;
2595
- }
2596
- }
2597
- var name = path[i];
2598
- "object" === typeof value &&
2599
- hasOwnProperty.call(value, name) &&
2600
- (value = value[name]);
2601
- }
2602
- reference = map(response, value, parentObject, key);
2603
- parentObject[key] = reference;
2604
- "" === key && null === handler.value && (handler.value = reference);
2605
- handler.deps--;
2606
- 0 === handler.deps &&
2607
- ((parentObject = handler.chunk),
2608
- null !== parentObject &&
2609
- "blocked" === parentObject.status &&
2610
- ((key = parentObject.value),
2611
- (parentObject.status = "fulfilled"),
2612
- (parentObject.value = handler.value),
2613
- (parentObject.reason = handler.reason),
2614
- null !== key && wakeChunk(response, key, handler.value)));
2615
- }
2616
- function rejectReference(response, handler, error) {
2617
- handler.errored ||
2618
- ((handler.errored = !0),
2619
- (handler.value = null),
2620
- (handler.reason = error),
2621
- (handler = handler.chunk),
2622
- null !== handler &&
2623
- "blocked" === handler.status &&
2624
- triggerErrorOnChunk(response, handler, error));
2625
- }
2626
- function waitForReference(
2627
- referencedChunk,
2628
- parentObject,
2629
- key,
2630
- response,
2631
- map,
2632
- path
2633
- ) {
2634
- initializingHandler
2635
- ? ((response = initializingHandler), response.deps++)
2636
- : (response = initializingHandler =
2637
- { chunk: null, value: null, reason: null, deps: 1, errored: !1 });
2638
- parentObject = {
2639
- handler: response,
2640
- parentObject: parentObject,
2641
- key: key,
2642
- map: map,
2643
- path: path
2644
- };
2645
- null === referencedChunk.value
2646
- ? (referencedChunk.value = [parentObject])
2647
- : referencedChunk.value.push(parentObject);
2648
- null === referencedChunk.reason
2649
- ? (referencedChunk.reason = [parentObject])
2650
- : referencedChunk.reason.push(parentObject);
2651
- return null;
2652
- }
2653
- function getOutlinedModel(response, reference, parentObject, key, map) {
2654
- reference = reference.split(":");
2655
- var id = parseInt(reference[0], 16);
2656
- id = getChunk(response, id);
2657
- switch (id.status) {
2658
- case "resolved_model":
2659
- initializeModelChunk(id);
2660
- }
2661
- switch (id.status) {
2662
- case "fulfilled":
2663
- var value = id.value;
2664
- for (id = 1; id < reference.length; id++) {
2665
- for (; value instanceof ReactPromise; ) {
2666
- switch (value.status) {
2667
- case "resolved_model":
2668
- initializeModelChunk(value);
2669
- }
2670
- switch (value.status) {
2671
- case "fulfilled":
2672
- value = value.value;
2673
- break;
2674
- case "blocked":
2675
- case "pending":
2676
- return waitForReference(
2677
- value,
2678
- parentObject,
2679
- key,
2680
- response,
2681
- map,
2682
- reference.slice(id - 1)
2683
- );
2684
- default:
2685
- return (
2686
- initializingHandler
2687
- ? ((initializingHandler.errored = !0),
2688
- (initializingHandler.value = null),
2689
- (initializingHandler.reason = value.reason))
2690
- : (initializingHandler = {
2691
- chunk: null,
2692
- value: null,
2693
- reason: value.reason,
2694
- deps: 0,
2695
- errored: !0
2696
- }),
2697
- null
2698
- );
2699
- }
2700
- }
2701
- var name = reference[id];
2702
- "object" === typeof value &&
2703
- hasOwnProperty.call(value, name) &&
2704
- (value = value[name]);
2705
- }
2706
- return map(response, value, parentObject, key);
2707
- case "pending":
2708
- case "blocked":
2709
- return waitForReference(id, parentObject, key, response, map, reference);
2710
- default:
2711
- return (
2712
- initializingHandler
2713
- ? ((initializingHandler.errored = !0),
2714
- (initializingHandler.value = null),
2715
- (initializingHandler.reason = id.reason))
2716
- : (initializingHandler = {
2717
- chunk: null,
2718
- value: null,
2719
- reason: id.reason,
2720
- deps: 0,
2721
- errored: !0
2722
- }),
2723
- null
2724
- );
2725
- }
2726
- }
2727
- function createMap(response, model) {
2728
- return new Map(model);
2729
- }
2730
- function createSet(response, model) {
2731
- return new Set(model);
2732
- }
2733
- function extractIterator(response, model) {
2734
- return model[Symbol.iterator]();
2735
- }
2736
- function createModel(response, model) {
2737
- return model;
2738
- }
2739
- function parseTypedArray(
2740
- response,
2741
- reference,
2742
- constructor,
2743
- bytesPerElement,
2744
- parentObject,
2745
- parentKey
2746
- ) {
2747
- reference = parseInt(reference.slice(2), 16);
2748
- reference = response._formData
2749
- .get(response._prefix + reference)
2750
- .arrayBuffer();
2751
- if (initializingHandler) {
2752
- var handler = initializingHandler;
2753
- handler.deps++;
2754
- } else
2755
- handler = initializingHandler = {
2756
- chunk: null,
2757
- value: null,
2758
- reason: null,
2759
- deps: 1,
2760
- errored: !1
2761
- };
2762
- reference.then(
2763
- function (buffer) {
2764
- buffer = constructor === ArrayBuffer ? buffer : new constructor(buffer);
2765
- parentObject[parentKey] = buffer;
2766
- "" === parentKey && null === handler.value && (handler.value = buffer);
2767
- handler.deps--;
2768
- if (
2769
- 0 === handler.deps &&
2770
- ((buffer = handler.chunk),
2771
- null !== buffer && "blocked" === buffer.status)
2772
- ) {
2773
- var resolveListeners = buffer.value;
2774
- buffer.status = "fulfilled";
2775
- buffer.value = handler.value;
2776
- null !== resolveListeners &&
2777
- wakeChunk(response, resolveListeners, handler.value);
2778
- }
2779
- },
2780
- function (error) {
2781
- if (!handler.errored) {
2782
- handler.errored = !0;
2783
- handler.value = null;
2784
- handler.reason = error;
2785
- var chunk = handler.chunk;
2786
- null !== chunk &&
2787
- "blocked" === chunk.status &&
2788
- triggerErrorOnChunk(response, chunk, error);
2789
- }
2790
- }
2791
- );
2792
- return null;
2793
- }
2794
- function resolveStream(response, id, stream, controller) {
2795
- var chunks = response._chunks;
2796
- stream = new ReactPromise("fulfilled", stream, controller);
2797
- chunks.set(id, stream);
2798
- response = response._formData.getAll(response._prefix + id);
2799
- for (id = 0; id < response.length; id++)
2800
- (chunks = response[id]),
2801
- "string" === typeof chunks &&
2802
- ("C" === chunks[0]
2803
- ? controller.close("C" === chunks ? '"$undefined"' : chunks.slice(1))
2804
- : controller.enqueueModel(chunks));
2805
- }
2806
- function parseReadableStream(response, reference, type) {
2807
- reference = parseInt(reference.slice(2), 16);
2808
- var controller = null;
2809
- type = new ReadableStream({
2810
- type: type,
2811
- start: function (c) {
2812
- controller = c;
2813
- }
2814
- });
2815
- var previousBlockedChunk = null;
2816
- resolveStream(response, reference, type, {
2817
- enqueueModel: function (json) {
2818
- if (null === previousBlockedChunk) {
2819
- var chunk = createResolvedModelChunk(response, json, -1);
2820
- initializeModelChunk(chunk);
2821
- "fulfilled" === chunk.status
2822
- ? controller.enqueue(chunk.value)
2823
- : (chunk.then(
2824
- function (v) {
2825
- return controller.enqueue(v);
2826
- },
2827
- function (e) {
2828
- return controller.error(e);
2829
- }
2830
- ),
2831
- (previousBlockedChunk = chunk));
2832
- } else {
2833
- chunk = previousBlockedChunk;
2834
- var chunk$30 = new ReactPromise("pending", null, null);
2835
- chunk$30.then(
2836
- function (v) {
2837
- return controller.enqueue(v);
2838
- },
2839
- function (e) {
2840
- return controller.error(e);
2841
- }
2842
- );
2843
- previousBlockedChunk = chunk$30;
2844
- chunk.then(function () {
2845
- previousBlockedChunk === chunk$30 && (previousBlockedChunk = null);
2846
- resolveModelChunk(response, chunk$30, json, -1);
2847
- });
2848
- }
2849
- },
2850
- close: function () {
2851
- if (null === previousBlockedChunk) controller.close();
2852
- else {
2853
- var blockedChunk = previousBlockedChunk;
2854
- previousBlockedChunk = null;
2855
- blockedChunk.then(function () {
2856
- return controller.close();
2857
- });
2858
- }
2859
- },
2860
- error: function (error) {
2861
- if (null === previousBlockedChunk) controller.error(error);
2862
- else {
2863
- var blockedChunk = previousBlockedChunk;
2864
- previousBlockedChunk = null;
2865
- blockedChunk.then(function () {
2866
- return controller.error(error);
2867
- });
2868
- }
2869
- }
2870
- });
2871
- return type;
2872
- }
2873
- function asyncIterator() {
2874
- return this;
2875
- }
2876
- function createIterator(next) {
2877
- next = { next: next };
2878
- next[ASYNC_ITERATOR] = asyncIterator;
2879
- return next;
2880
- }
2881
- function parseAsyncIterable(response, reference, iterator) {
2882
- reference = parseInt(reference.slice(2), 16);
2883
- var buffer = [],
2884
- closed = !1,
2885
- nextWriteIndex = 0,
2886
- $jscomp$compprop5 = {};
2887
- $jscomp$compprop5 =
2888
- (($jscomp$compprop5[ASYNC_ITERATOR] = function () {
2889
- var nextReadIndex = 0;
2890
- return createIterator(function (arg) {
2891
- if (void 0 !== arg)
2892
- throw Error(
2893
- "Values cannot be passed to next() of AsyncIterables passed to Client Components."
2894
- );
2895
- if (nextReadIndex === buffer.length) {
2896
- if (closed)
2897
- return new ReactPromise(
2898
- "fulfilled",
2899
- { done: !0, value: void 0 },
2900
- null
2901
- );
2902
- buffer[nextReadIndex] = new ReactPromise("pending", null, null);
2903
- }
2904
- return buffer[nextReadIndex++];
2905
- });
2906
- }),
2907
- $jscomp$compprop5);
2908
- iterator = iterator ? $jscomp$compprop5[ASYNC_ITERATOR]() : $jscomp$compprop5;
2909
- resolveStream(response, reference, iterator, {
2910
- enqueueModel: function (value) {
2911
- nextWriteIndex === buffer.length
2912
- ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk(
2913
- response,
2914
- value,
2915
- !1
2916
- ))
2917
- : resolveIteratorResultChunk(
2918
- response,
2919
- buffer[nextWriteIndex],
2920
- value,
2921
- !1
2922
- );
2923
- nextWriteIndex++;
2924
- },
2925
- close: function (value) {
2926
- closed = !0;
2927
- nextWriteIndex === buffer.length
2928
- ? (buffer[nextWriteIndex] = createResolvedIteratorResultChunk(
2929
- response,
2930
- value,
2931
- !0
2932
- ))
2933
- : resolveIteratorResultChunk(
2934
- response,
2935
- buffer[nextWriteIndex],
2936
- value,
2937
- !0
2938
- );
2939
- for (nextWriteIndex++; nextWriteIndex < buffer.length; )
2940
- resolveIteratorResultChunk(
2941
- response,
2942
- buffer[nextWriteIndex++],
2943
- '"$undefined"',
2944
- !0
2945
- );
2946
- },
2947
- error: function (error) {
2948
- closed = !0;
2949
- for (
2950
- nextWriteIndex === buffer.length &&
2951
- (buffer[nextWriteIndex] = new ReactPromise("pending", null, null));
2952
- nextWriteIndex < buffer.length;
2953
-
2954
- )
2955
- triggerErrorOnChunk(response, buffer[nextWriteIndex++], error);
2956
- }
2957
- });
2958
- return iterator;
2959
- }
2960
- function parseModelString(response, obj, key, value, reference) {
2961
- if ("$" === value[0]) {
2962
- switch (value[1]) {
2963
- case "$":
2964
- return value.slice(1);
2965
- case "@":
2966
- return (obj = parseInt(value.slice(2), 16)), getChunk(response, obj);
2967
- case "F":
2968
- return (
2969
- (value = value.slice(2)),
2970
- getOutlinedModel(response, value, obj, key, loadServerReference$1)
2971
- );
2972
- case "T":
2973
- if (void 0 === reference || void 0 === response._temporaryReferences)
2974
- throw Error(
2975
- "Could not reference an opaque temporary reference. This is likely due to misconfiguring the temporaryReferences options on the server."
2976
- );
2977
- return createTemporaryReference(
2978
- response._temporaryReferences,
2979
- reference
2980
- );
2981
- case "Q":
2982
- return (
2983
- (value = value.slice(2)),
2984
- getOutlinedModel(response, value, obj, key, createMap)
2985
- );
2986
- case "W":
2987
- return (
2988
- (value = value.slice(2)),
2989
- getOutlinedModel(response, value, obj, key, createSet)
2990
- );
2991
- case "K":
2992
- obj = value.slice(2);
2993
- var formPrefix = response._prefix + obj + "_",
2994
- data = new FormData();
2995
- response._formData.forEach(function (entry, entryKey) {
2996
- entryKey.startsWith(formPrefix) &&
2997
- data.append(entryKey.slice(formPrefix.length), entry);
2998
- });
2999
- return data;
3000
- case "i":
3001
- return (
3002
- (value = value.slice(2)),
3003
- getOutlinedModel(response, value, obj, key, extractIterator)
3004
- );
3005
- case "I":
3006
- return Infinity;
3007
- case "-":
3008
- return "$-0" === value ? -0 : -Infinity;
3009
- case "N":
3010
- return NaN;
3011
- case "u":
3012
- return;
3013
- case "D":
3014
- return new Date(Date.parse(value.slice(2)));
3015
- case "n":
3016
- return BigInt(value.slice(2));
3017
- }
3018
- switch (value[1]) {
3019
- case "A":
3020
- return parseTypedArray(response, value, ArrayBuffer, 1, obj, key);
3021
- case "O":
3022
- return parseTypedArray(response, value, Int8Array, 1, obj, key);
3023
- case "o":
3024
- return parseTypedArray(response, value, Uint8Array, 1, obj, key);
3025
- case "U":
3026
- return parseTypedArray(response, value, Uint8ClampedArray, 1, obj, key);
3027
- case "S":
3028
- return parseTypedArray(response, value, Int16Array, 2, obj, key);
3029
- case "s":
3030
- return parseTypedArray(response, value, Uint16Array, 2, obj, key);
3031
- case "L":
3032
- return parseTypedArray(response, value, Int32Array, 4, obj, key);
3033
- case "l":
3034
- return parseTypedArray(response, value, Uint32Array, 4, obj, key);
3035
- case "G":
3036
- return parseTypedArray(response, value, Float32Array, 4, obj, key);
3037
- case "g":
3038
- return parseTypedArray(response, value, Float64Array, 8, obj, key);
3039
- case "M":
3040
- return parseTypedArray(response, value, BigInt64Array, 8, obj, key);
3041
- case "m":
3042
- return parseTypedArray(response, value, BigUint64Array, 8, obj, key);
3043
- case "V":
3044
- return parseTypedArray(response, value, DataView, 1, obj, key);
3045
- case "B":
3046
- return (
3047
- (obj = parseInt(value.slice(2), 16)),
3048
- response._formData.get(response._prefix + obj)
3049
- );
3050
- }
3051
- switch (value[1]) {
3052
- case "R":
3053
- return parseReadableStream(response, value, void 0);
3054
- case "r":
3055
- return parseReadableStream(response, value, "bytes");
3056
- case "X":
3057
- return parseAsyncIterable(response, value, !1);
3058
- case "x":
3059
- return parseAsyncIterable(response, value, !0);
3060
- }
3061
- value = value.slice(1);
3062
- return getOutlinedModel(response, value, obj, key, createModel);
3063
- }
3064
- return value;
3065
- }
3066
- function createResponse(bundlerConfig, formFieldPrefix, temporaryReferences) {
3067
- var backingFormData =
3068
- 3 < arguments.length && void 0 !== arguments[3]
3069
- ? arguments[3]
3070
- : new FormData(),
3071
- chunks = new Map();
3072
- return {
3073
- _bundlerConfig: bundlerConfig,
3074
- _prefix: formFieldPrefix,
3075
- _formData: backingFormData,
3076
- _chunks: chunks,
3077
- _closed: !1,
3078
- _closedReason: null,
3079
- _temporaryReferences: temporaryReferences
3080
- };
3081
- }
3082
- function resolveField(response, key, value) {
3083
- response._formData.append(key, value);
3084
- var prefix = response._prefix;
3085
- if (key.startsWith(prefix)) {
3086
- var chunks = response._chunks;
3087
- key = +key.slice(prefix.length);
3088
- (chunks = chunks.get(key)) &&
3089
- resolveModelChunk(response, chunks, value, key);
3090
- }
3091
- }
3092
- function close(response) {
3093
- reportGlobalError(response, Error("Connection closed."));
3094
- }
3095
- function loadServerReference(bundlerConfig, id, bound) {
3096
- var serverReference = resolveServerReference(bundlerConfig, id);
3097
- bundlerConfig = preloadModule(serverReference);
3098
- return bound
3099
- ? Promise.all([bound, bundlerConfig]).then(function (_ref) {
3100
- _ref = _ref[0];
3101
- var fn = requireModule(serverReference);
3102
- return fn.bind.apply(fn, [null].concat(_ref));
3103
- })
3104
- : bundlerConfig
3105
- ? Promise.resolve(bundlerConfig).then(function () {
3106
- return requireModule(serverReference);
3107
- })
3108
- : Promise.resolve(requireModule(serverReference));
3109
- }
3110
- function decodeBoundActionMetaData(body, serverManifest, formFieldPrefix) {
3111
- body = createResponse(serverManifest, formFieldPrefix, void 0, body);
3112
- close(body);
3113
- body = getChunk(body, 0);
3114
- body.then(function () {});
3115
- if ("fulfilled" !== body.status) throw body.reason;
3116
- return body.value;
3117
- }
3118
- function createDrainHandler(destination, request) {
3119
- return function () {
3120
- return startFlowing(request, destination);
3121
- };
3122
- }
3123
- function createCancelHandler(request, reason) {
3124
- return function () {
3125
- request.destination = null;
3126
- abort(request, Error(reason));
3127
- };
3128
- }
3129
- function createFakeWritableFromReadableStreamController(controller) {
3130
- return {
3131
- write: function (chunk) {
3132
- "string" === typeof chunk && (chunk = textEncoder.encode(chunk));
3133
- controller.enqueue(chunk);
3134
- return !0;
3135
- },
3136
- end: function () {
3137
- controller.close();
3138
- },
3139
- destroy: function (error) {
3140
- "function" === typeof controller.error
3141
- ? controller.error(error)
3142
- : controller.close();
3143
- }
3144
- };
3145
- }
3146
- function createFakeWritableFromNodeReadable(readable) {
3147
- return {
3148
- write: function (chunk) {
3149
- return readable.push(chunk);
3150
- },
3151
- end: function () {
3152
- readable.push(null);
3153
- },
3154
- destroy: function (error) {
3155
- readable.destroy(error);
3156
- }
3157
- };
3158
- }
3159
- exports.createClientModuleProxy = function (moduleId) {
3160
- moduleId = registerClientReferenceImpl({}, moduleId, !1);
3161
- return new Proxy(moduleId, proxyHandlers$1);
3162
- };
3163
- exports.createTemporaryReferenceSet = function () {
3164
- return new WeakMap();
3165
- };
3166
- exports.decodeAction = function (body, serverManifest) {
3167
- var formData = new FormData(),
3168
- action = null;
3169
- body.forEach(function (value, key) {
3170
- key.startsWith("$ACTION_")
3171
- ? key.startsWith("$ACTION_REF_")
3172
- ? ((value = "$ACTION_" + key.slice(12) + ":"),
3173
- (value = decodeBoundActionMetaData(body, serverManifest, value)),
3174
- (action = loadServerReference(serverManifest, value.id, value.bound)))
3175
- : key.startsWith("$ACTION_ID_") &&
3176
- ((value = key.slice(11)),
3177
- (action = loadServerReference(serverManifest, value, null)))
3178
- : formData.append(key, value);
3179
- });
3180
- return null === action
3181
- ? null
3182
- : action.then(function (fn) {
3183
- return fn.bind(null, formData);
3184
- });
3185
- };
3186
- exports.decodeFormState = function (actionResult, body, serverManifest) {
3187
- var keyPath = body.get("$ACTION_KEY");
3188
- if ("string" !== typeof keyPath) return Promise.resolve(null);
3189
- var metaData = null;
3190
- body.forEach(function (value, key) {
3191
- key.startsWith("$ACTION_REF_") &&
3192
- ((value = "$ACTION_" + key.slice(12) + ":"),
3193
- (metaData = decodeBoundActionMetaData(body, serverManifest, value)));
3194
- });
3195
- if (null === metaData) return Promise.resolve(null);
3196
- var referenceId = metaData.id;
3197
- return Promise.resolve(metaData.bound).then(function (bound) {
3198
- return null === bound
3199
- ? null
3200
- : [actionResult, keyPath, referenceId, bound.length - 1];
3201
- });
3202
- };
3203
- exports.decodeReply = function (body, webpackMap, options) {
3204
- if ("string" === typeof body) {
3205
- var form = new FormData();
3206
- form.append("0", body);
3207
- body = form;
3208
- }
3209
- body = createResponse(
3210
- webpackMap,
3211
- "",
3212
- options ? options.temporaryReferences : void 0,
3213
- body
3214
- );
3215
- webpackMap = getChunk(body, 0);
3216
- close(body);
3217
- return webpackMap;
3218
- };
3219
- exports.decodeReplyFromAsyncIterable = function (
3220
- iterable,
3221
- webpackMap,
3222
- options
3223
- ) {
3224
- function progress(entry) {
3225
- if (entry.done) close(response);
3226
- else {
3227
- var _entry$value = entry.value;
3228
- entry = _entry$value[0];
3229
- _entry$value = _entry$value[1];
3230
- "string" === typeof _entry$value
3231
- ? resolveField(response, entry, _entry$value)
3232
- : response._formData.append(entry, _entry$value);
3233
- iterator.next().then(progress, error);
3234
- }
3235
- }
3236
- function error(reason) {
3237
- reportGlobalError(response, reason);
3238
- "function" === typeof iterator.throw &&
3239
- iterator.throw(reason).then(error, error);
3240
- }
3241
- var iterator = iterable[ASYNC_ITERATOR](),
3242
- response = createResponse(
3243
- webpackMap,
3244
- "",
3245
- options ? options.temporaryReferences : void 0
3246
- );
3247
- iterator.next().then(progress, error);
3248
- return getChunk(response, 0);
3249
- };
3250
- exports.decodeReplyFromBusboy = function (busboyStream, webpackMap, options) {
3251
- var response = createResponse(
3252
- webpackMap,
3253
- "",
3254
- options ? options.temporaryReferences : void 0
3255
- ),
3256
- pendingFiles = 0,
3257
- queuedFields = [];
3258
- busboyStream.on("field", function (name, value) {
3259
- if (0 < pendingFiles) queuedFields.push(name, value);
3260
- else
3261
- try {
3262
- resolveField(response, name, value);
3263
- } catch (error) {
3264
- busboyStream.destroy(error);
3265
- }
3266
- });
3267
- busboyStream.on("file", function (name, value, _ref2) {
3268
- var filename = _ref2.filename,
3269
- mimeType = _ref2.mimeType;
3270
- if ("base64" === _ref2.encoding.toLowerCase())
3271
- busboyStream.destroy(
3272
- Error(
3273
- "React doesn't accept base64 encoded file uploads because we don't expect form data passed from a browser to ever encode data that way. If that's the wrong assumption, we can easily fix it."
3274
- )
3275
- );
3276
- else {
3277
- pendingFiles++;
3278
- var JSCompiler_object_inline_chunks_281 = [];
3279
- value.on("data", function (chunk) {
3280
- JSCompiler_object_inline_chunks_281.push(chunk);
3281
- });
3282
- value.on("end", function () {
3283
- try {
3284
- var blob = new Blob(JSCompiler_object_inline_chunks_281, {
3285
- type: mimeType
3286
- });
3287
- response._formData.append(name, blob, filename);
3288
- pendingFiles--;
3289
- if (0 === pendingFiles) {
3290
- for (blob = 0; blob < queuedFields.length; blob += 2)
3291
- resolveField(
3292
- response,
3293
- queuedFields[blob],
3294
- queuedFields[blob + 1]
3295
- );
3296
- queuedFields.length = 0;
3297
- }
3298
- } catch (error) {
3299
- busboyStream.destroy(error);
3300
- }
3301
- });
3302
- }
3303
- });
3304
- busboyStream.on("finish", function () {
3305
- close(response);
3306
- });
3307
- busboyStream.on("error", function (err) {
3308
- reportGlobalError(response, err);
3309
- });
3310
- return getChunk(response, 0);
3311
- };
3312
- exports.prerender = function (model, webpackMap, options) {
3313
- return new Promise(function (resolve, reject) {
3314
- var request = new RequestInstance(
3315
- 21,
3316
- model,
3317
- webpackMap,
3318
- options ? options.onError : void 0,
3319
- options ? options.onPostpone : void 0,
3320
- function () {
3321
- var writable,
3322
- stream = new ReadableStream(
3323
- {
3324
- type: "bytes",
3325
- start: function (controller) {
3326
- writable =
3327
- createFakeWritableFromReadableStreamController(controller);
3328
- },
3329
- pull: function () {
3330
- startFlowing(request, writable);
3331
- },
3332
- cancel: function (reason) {
3333
- request.destination = null;
3334
- abort(request, reason);
3335
- }
3336
- },
3337
- { highWaterMark: 0 }
3338
- );
3339
- resolve({ prelude: stream });
3340
- },
3341
- reject,
3342
- options ? options.identifierPrefix : void 0,
3343
- options ? options.temporaryReferences : void 0
3344
- );
3345
- if (options && options.signal) {
3346
- var signal = options.signal;
3347
- if (signal.aborted) abort(request, signal.reason);
3348
- else {
3349
- var listener = function () {
3350
- abort(request, signal.reason);
3351
- signal.removeEventListener("abort", listener);
3352
- };
3353
- signal.addEventListener("abort", listener);
3354
- }
3355
- }
3356
- startWork(request);
3357
- });
3358
- };
3359
- exports.prerenderToNodeStream = function (model, webpackMap, options) {
3360
- return new Promise(function (resolve, reject) {
3361
- var request = new RequestInstance(
3362
- 21,
3363
- model,
3364
- webpackMap,
3365
- options ? options.onError : void 0,
3366
- options ? options.onPostpone : void 0,
3367
- function () {
3368
- var readable = new stream.Readable({
3369
- read: function () {
3370
- startFlowing(request, writable);
3371
- }
3372
- }),
3373
- writable = createFakeWritableFromNodeReadable(readable);
3374
- resolve({ prelude: readable });
3375
- },
3376
- reject,
3377
- options ? options.identifierPrefix : void 0,
3378
- options ? options.temporaryReferences : void 0
3379
- );
3380
- if (options && options.signal) {
3381
- var signal = options.signal;
3382
- if (signal.aborted) abort(request, signal.reason);
3383
- else {
3384
- var listener = function () {
3385
- abort(request, signal.reason);
3386
- signal.removeEventListener("abort", listener);
3387
- };
3388
- signal.addEventListener("abort", listener);
3389
- }
3390
- }
3391
- startWork(request);
3392
- });
3393
- };
3394
- exports.registerClientReference = function (
3395
- proxyImplementation,
3396
- id,
3397
- exportName
3398
- ) {
3399
- return registerClientReferenceImpl(
3400
- proxyImplementation,
3401
- id + "#" + exportName,
3402
- !1
3403
- );
3404
- };
3405
- exports.registerServerReference = function (reference, id, exportName) {
3406
- return Object.defineProperties(reference, {
3407
- $$typeof: { value: SERVER_REFERENCE_TAG },
3408
- $$id: {
3409
- value: null === exportName ? id : id + "#" + exportName,
3410
- configurable: !0
3411
- },
3412
- $$bound: { value: null, configurable: !0 },
3413
- bind: { value: bind, configurable: !0 }
3414
- });
3415
- };
3416
- exports.renderToPipeableStream = function (model, webpackMap, options) {
3417
- var request = new RequestInstance(
3418
- 20,
3419
- model,
3420
- webpackMap,
3421
- options ? options.onError : void 0,
3422
- options ? options.onPostpone : void 0,
3423
- noop,
3424
- noop,
3425
- options ? options.identifierPrefix : void 0,
3426
- options ? options.temporaryReferences : void 0
3427
- ),
3428
- hasStartedFlowing = !1;
3429
- startWork(request);
3430
- return {
3431
- pipe: function (destination) {
3432
- if (hasStartedFlowing)
3433
- throw Error(
3434
- "React currently only supports piping to one writable stream."
3435
- );
3436
- hasStartedFlowing = !0;
3437
- startFlowing(request, destination);
3438
- destination.on("drain", createDrainHandler(destination, request));
3439
- destination.on(
3440
- "error",
3441
- createCancelHandler(
3442
- request,
3443
- "The destination stream errored while writing data."
3444
- )
3445
- );
3446
- destination.on(
3447
- "close",
3448
- createCancelHandler(request, "The destination stream closed early.")
3449
- );
3450
- return destination;
3451
- },
3452
- abort: function (reason) {
3453
- abort(request, reason);
3454
- }
3455
- };
3456
- };
3457
- exports.renderToReadableStream = function (model, webpackMap, options) {
3458
- var request = new RequestInstance(
3459
- 20,
3460
- model,
3461
- webpackMap,
3462
- options ? options.onError : void 0,
3463
- options ? options.onPostpone : void 0,
3464
- noop,
3465
- noop,
3466
- options ? options.identifierPrefix : void 0,
3467
- options ? options.temporaryReferences : void 0
3468
- );
3469
- if (options && options.signal) {
3470
- var signal = options.signal;
3471
- if (signal.aborted) abort(request, signal.reason);
3472
- else {
3473
- var listener = function () {
3474
- abort(request, signal.reason);
3475
- signal.removeEventListener("abort", listener);
3476
- };
3477
- signal.addEventListener("abort", listener);
3478
- }
3479
- }
3480
- var writable;
3481
- return new ReadableStream(
3482
- {
3483
- type: "bytes",
3484
- start: function (controller) {
3485
- writable = createFakeWritableFromReadableStreamController(controller);
3486
- startWork(request);
3487
- },
3488
- pull: function () {
3489
- startFlowing(request, writable);
3490
- },
3491
- cancel: function (reason) {
3492
- request.destination = null;
3493
- abort(request, reason);
3494
- }
3495
- },
3496
- { highWaterMark: 0 }
3497
- );
3498
- };