source: node_modules/react-dom/cjs/react-dom-server-legacy.node.production.js

Last change on this file was a762898, checked in by istevanoska <ilinastevanoska@…>, 5 months ago

Added visualizations

  • Property mode set to 100644
File size: 237.1 KB
Line 
1/**
2 * @license React
3 * react-dom-server-legacy.node.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/*
12
13
14 JS Implementation of MurmurHash3 (r136) (as of May 20, 2011)
15
16 Copyright (c) 2011 Gary Court
17 Permission is hereby granted, free of charge, to any person obtaining a copy
18 of this software and associated documentation files (the "Software"), to deal
19 in the Software without restriction, including without limitation the rights
20 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
21 copies of the Software, and to permit persons to whom the Software is
22 furnished to do so, subject to the following conditions:
23
24 The above copyright notice and this permission notice shall be included in
25 all copies or substantial portions of the Software.
26
27 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
28 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
29 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
30 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
31 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
32 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
33 SOFTWARE.
34*/
35"use strict";
36var React = require("react"),
37 ReactDOM = require("react-dom"),
38 REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"),
39 REACT_PORTAL_TYPE = Symbol.for("react.portal"),
40 REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"),
41 REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"),
42 REACT_PROFILER_TYPE = Symbol.for("react.profiler"),
43 REACT_CONSUMER_TYPE = Symbol.for("react.consumer"),
44 REACT_CONTEXT_TYPE = Symbol.for("react.context"),
45 REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"),
46 REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"),
47 REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"),
48 REACT_MEMO_TYPE = Symbol.for("react.memo"),
49 REACT_LAZY_TYPE = Symbol.for("react.lazy"),
50 REACT_SCOPE_TYPE = Symbol.for("react.scope"),
51 REACT_ACTIVITY_TYPE = Symbol.for("react.activity"),
52 REACT_LEGACY_HIDDEN_TYPE = Symbol.for("react.legacy_hidden"),
53 REACT_MEMO_CACHE_SENTINEL = Symbol.for("react.memo_cache_sentinel"),
54 REACT_VIEW_TRANSITION_TYPE = Symbol.for("react.view_transition"),
55 MAYBE_ITERATOR_SYMBOL = Symbol.iterator;
56function getIteratorFn(maybeIterable) {
57 if (null === maybeIterable || "object" !== typeof maybeIterable) return null;
58 maybeIterable =
59 (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||
60 maybeIterable["@@iterator"];
61 return "function" === typeof maybeIterable ? maybeIterable : null;
62}
63var isArrayImpl = Array.isArray;
64function murmurhash3_32_gc(key, seed) {
65 var remainder = key.length & 3;
66 var bytes = key.length - remainder;
67 var h1 = seed;
68 for (seed = 0; seed < bytes; ) {
69 var k1 =
70 (key.charCodeAt(seed) & 255) |
71 ((key.charCodeAt(++seed) & 255) << 8) |
72 ((key.charCodeAt(++seed) & 255) << 16) |
73 ((key.charCodeAt(++seed) & 255) << 24);
74 ++seed;
75 k1 =
76 (3432918353 * (k1 & 65535) +
77 (((3432918353 * (k1 >>> 16)) & 65535) << 16)) &
78 4294967295;
79 k1 = (k1 << 15) | (k1 >>> 17);
80 k1 =
81 (461845907 * (k1 & 65535) + (((461845907 * (k1 >>> 16)) & 65535) << 16)) &
82 4294967295;
83 h1 ^= k1;
84 h1 = (h1 << 13) | (h1 >>> 19);
85 h1 = (5 * (h1 & 65535) + (((5 * (h1 >>> 16)) & 65535) << 16)) & 4294967295;
86 h1 = (h1 & 65535) + 27492 + ((((h1 >>> 16) + 58964) & 65535) << 16);
87 }
88 k1 = 0;
89 switch (remainder) {
90 case 3:
91 k1 ^= (key.charCodeAt(seed + 2) & 255) << 16;
92 case 2:
93 k1 ^= (key.charCodeAt(seed + 1) & 255) << 8;
94 case 1:
95 (k1 ^= key.charCodeAt(seed) & 255),
96 (k1 =
97 (3432918353 * (k1 & 65535) +
98 (((3432918353 * (k1 >>> 16)) & 65535) << 16)) &
99 4294967295),
100 (k1 = (k1 << 15) | (k1 >>> 17)),
101 (h1 ^=
102 (461845907 * (k1 & 65535) +
103 (((461845907 * (k1 >>> 16)) & 65535) << 16)) &
104 4294967295);
105 }
106 h1 ^= key.length;
107 h1 ^= h1 >>> 16;
108 h1 =
109 (2246822507 * (h1 & 65535) + (((2246822507 * (h1 >>> 16)) & 65535) << 16)) &
110 4294967295;
111 h1 ^= h1 >>> 13;
112 h1 =
113 (3266489909 * (h1 & 65535) + (((3266489909 * (h1 >>> 16)) & 65535) << 16)) &
114 4294967295;
115 return (h1 ^ (h1 >>> 16)) >>> 0;
116}
117var assign = Object.assign,
118 hasOwnProperty = Object.prototype.hasOwnProperty,
119 VALID_ATTRIBUTE_NAME_REGEX = RegExp(
120 "^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"
121 ),
122 illegalAttributeNameCache = {},
123 validatedAttributeNameCache = {};
124function isAttributeNameSafe(attributeName) {
125 if (hasOwnProperty.call(validatedAttributeNameCache, attributeName))
126 return !0;
127 if (hasOwnProperty.call(illegalAttributeNameCache, attributeName)) return !1;
128 if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName))
129 return (validatedAttributeNameCache[attributeName] = !0);
130 illegalAttributeNameCache[attributeName] = !0;
131 return !1;
132}
133var unitlessNumbers = new Set(
134 "animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(
135 " "
136 )
137 ),
138 aliases = new Map([
139 ["acceptCharset", "accept-charset"],
140 ["htmlFor", "for"],
141 ["httpEquiv", "http-equiv"],
142 ["crossOrigin", "crossorigin"],
143 ["accentHeight", "accent-height"],
144 ["alignmentBaseline", "alignment-baseline"],
145 ["arabicForm", "arabic-form"],
146 ["baselineShift", "baseline-shift"],
147 ["capHeight", "cap-height"],
148 ["clipPath", "clip-path"],
149 ["clipRule", "clip-rule"],
150 ["colorInterpolation", "color-interpolation"],
151 ["colorInterpolationFilters", "color-interpolation-filters"],
152 ["colorProfile", "color-profile"],
153 ["colorRendering", "color-rendering"],
154 ["dominantBaseline", "dominant-baseline"],
155 ["enableBackground", "enable-background"],
156 ["fillOpacity", "fill-opacity"],
157 ["fillRule", "fill-rule"],
158 ["floodColor", "flood-color"],
159 ["floodOpacity", "flood-opacity"],
160 ["fontFamily", "font-family"],
161 ["fontSize", "font-size"],
162 ["fontSizeAdjust", "font-size-adjust"],
163 ["fontStretch", "font-stretch"],
164 ["fontStyle", "font-style"],
165 ["fontVariant", "font-variant"],
166 ["fontWeight", "font-weight"],
167 ["glyphName", "glyph-name"],
168 ["glyphOrientationHorizontal", "glyph-orientation-horizontal"],
169 ["glyphOrientationVertical", "glyph-orientation-vertical"],
170 ["horizAdvX", "horiz-adv-x"],
171 ["horizOriginX", "horiz-origin-x"],
172 ["imageRendering", "image-rendering"],
173 ["letterSpacing", "letter-spacing"],
174 ["lightingColor", "lighting-color"],
175 ["markerEnd", "marker-end"],
176 ["markerMid", "marker-mid"],
177 ["markerStart", "marker-start"],
178 ["overlinePosition", "overline-position"],
179 ["overlineThickness", "overline-thickness"],
180 ["paintOrder", "paint-order"],
181 ["panose-1", "panose-1"],
182 ["pointerEvents", "pointer-events"],
183 ["renderingIntent", "rendering-intent"],
184 ["shapeRendering", "shape-rendering"],
185 ["stopColor", "stop-color"],
186 ["stopOpacity", "stop-opacity"],
187 ["strikethroughPosition", "strikethrough-position"],
188 ["strikethroughThickness", "strikethrough-thickness"],
189 ["strokeDasharray", "stroke-dasharray"],
190 ["strokeDashoffset", "stroke-dashoffset"],
191 ["strokeLinecap", "stroke-linecap"],
192 ["strokeLinejoin", "stroke-linejoin"],
193 ["strokeMiterlimit", "stroke-miterlimit"],
194 ["strokeOpacity", "stroke-opacity"],
195 ["strokeWidth", "stroke-width"],
196 ["textAnchor", "text-anchor"],
197 ["textDecoration", "text-decoration"],
198 ["textRendering", "text-rendering"],
199 ["transformOrigin", "transform-origin"],
200 ["underlinePosition", "underline-position"],
201 ["underlineThickness", "underline-thickness"],
202 ["unicodeBidi", "unicode-bidi"],
203 ["unicodeRange", "unicode-range"],
204 ["unitsPerEm", "units-per-em"],
205 ["vAlphabetic", "v-alphabetic"],
206 ["vHanging", "v-hanging"],
207 ["vIdeographic", "v-ideographic"],
208 ["vMathematical", "v-mathematical"],
209 ["vectorEffect", "vector-effect"],
210 ["vertAdvY", "vert-adv-y"],
211 ["vertOriginX", "vert-origin-x"],
212 ["vertOriginY", "vert-origin-y"],
213 ["wordSpacing", "word-spacing"],
214 ["writingMode", "writing-mode"],
215 ["xmlnsXlink", "xmlns:xlink"],
216 ["xHeight", "x-height"]
217 ]),
218 matchHtmlRegExp = /["'&<>]/;
219function escapeTextForBrowser(text) {
220 if (
221 "boolean" === typeof text ||
222 "number" === typeof text ||
223 "bigint" === typeof text
224 )
225 return "" + text;
226 text = "" + text;
227 var match = matchHtmlRegExp.exec(text);
228 if (match) {
229 var html = "",
230 index,
231 lastIndex = 0;
232 for (index = match.index; index < text.length; index++) {
233 switch (text.charCodeAt(index)) {
234 case 34:
235 match = "&quot;";
236 break;
237 case 38:
238 match = "&amp;";
239 break;
240 case 39:
241 match = "&#x27;";
242 break;
243 case 60:
244 match = "&lt;";
245 break;
246 case 62:
247 match = "&gt;";
248 break;
249 default:
250 continue;
251 }
252 lastIndex !== index && (html += text.slice(lastIndex, index));
253 lastIndex = index + 1;
254 html += match;
255 }
256 text = lastIndex !== index ? html + text.slice(lastIndex, index) : html;
257 }
258 return text;
259}
260var uppercasePattern = /([A-Z])/g,
261 msPattern = /^ms-/,
262 isJavaScriptProtocol =
263 /^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;
264function sanitizeURL(url) {
265 return isJavaScriptProtocol.test("" + url)
266 ? "javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')"
267 : url;
268}
269var ReactSharedInternals =
270 React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,
271 ReactDOMSharedInternals =
272 ReactDOM.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,
273 sharedNotPendingObject = {
274 pending: !1,
275 data: null,
276 method: null,
277 action: null
278 },
279 previousDispatcher = ReactDOMSharedInternals.d;
280ReactDOMSharedInternals.d = {
281 f: previousDispatcher.f,
282 r: previousDispatcher.r,
283 D: prefetchDNS,
284 C: preconnect,
285 L: preload,
286 m: preloadModule,
287 X: preinitScript,
288 S: preinitStyle,
289 M: preinitModuleScript
290};
291var PRELOAD_NO_CREDS = [],
292 currentlyFlushingRenderState = null,
293 scriptRegex = /(<\/|<)(s)(cript)/gi;
294function scriptReplacer(match, prefix, s, suffix) {
295 return "" + prefix + ("s" === s ? "\\u0073" : "\\u0053") + suffix;
296}
297function createResumableState(
298 identifierPrefix,
299 externalRuntimeConfig,
300 bootstrapScriptContent,
301 bootstrapScripts,
302 bootstrapModules
303) {
304 return {
305 idPrefix: void 0 === identifierPrefix ? "" : identifierPrefix,
306 nextFormID: 0,
307 streamingFormat: 0,
308 bootstrapScriptContent: bootstrapScriptContent,
309 bootstrapScripts: bootstrapScripts,
310 bootstrapModules: bootstrapModules,
311 instructions: 0,
312 hasBody: !1,
313 hasHtml: !1,
314 unknownResources: {},
315 dnsResources: {},
316 connectResources: { default: {}, anonymous: {}, credentials: {} },
317 imageResources: {},
318 styleResources: {},
319 scriptResources: {},
320 moduleUnknownResources: {},
321 moduleScriptResources: {}
322 };
323}
324function createFormatContext(
325 insertionMode,
326 selectedValue,
327 tagScope,
328 viewTransition
329) {
330 return {
331 insertionMode: insertionMode,
332 selectedValue: selectedValue,
333 tagScope: tagScope,
334 viewTransition: viewTransition
335 };
336}
337function getChildFormatContext(parentContext, type, props) {
338 var subtreeScope = parentContext.tagScope & -25;
339 switch (type) {
340 case "noscript":
341 return createFormatContext(2, null, subtreeScope | 1, null);
342 case "select":
343 return createFormatContext(
344 2,
345 null != props.value ? props.value : props.defaultValue,
346 subtreeScope,
347 null
348 );
349 case "svg":
350 return createFormatContext(4, null, subtreeScope, null);
351 case "picture":
352 return createFormatContext(2, null, subtreeScope | 2, null);
353 case "math":
354 return createFormatContext(5, null, subtreeScope, null);
355 case "foreignObject":
356 return createFormatContext(2, null, subtreeScope, null);
357 case "table":
358 return createFormatContext(6, null, subtreeScope, null);
359 case "thead":
360 case "tbody":
361 case "tfoot":
362 return createFormatContext(7, null, subtreeScope, null);
363 case "colgroup":
364 return createFormatContext(9, null, subtreeScope, null);
365 case "tr":
366 return createFormatContext(8, null, subtreeScope, null);
367 case "head":
368 if (2 > parentContext.insertionMode)
369 return createFormatContext(3, null, subtreeScope, null);
370 break;
371 case "html":
372 if (0 === parentContext.insertionMode)
373 return createFormatContext(1, null, subtreeScope, null);
374 }
375 return 6 <= parentContext.insertionMode || 2 > parentContext.insertionMode
376 ? createFormatContext(2, null, subtreeScope, null)
377 : parentContext.tagScope !== subtreeScope
378 ? createFormatContext(
379 parentContext.insertionMode,
380 parentContext.selectedValue,
381 subtreeScope,
382 null
383 )
384 : parentContext;
385}
386function getSuspenseViewTransition(parentViewTransition) {
387 return null === parentViewTransition
388 ? null
389 : {
390 update: parentViewTransition.update,
391 enter: "none",
392 exit: "none",
393 share: parentViewTransition.update,
394 name: parentViewTransition.autoName,
395 autoName: parentViewTransition.autoName,
396 nameIdx: 0
397 };
398}
399function getSuspenseFallbackFormatContext(resumableState, parentContext) {
400 parentContext.tagScope & 32 && (resumableState.instructions |= 128);
401 return createFormatContext(
402 parentContext.insertionMode,
403 parentContext.selectedValue,
404 parentContext.tagScope | 12,
405 getSuspenseViewTransition(parentContext.viewTransition)
406 );
407}
408function getSuspenseContentFormatContext(resumableState, parentContext) {
409 resumableState = getSuspenseViewTransition(parentContext.viewTransition);
410 var subtreeScope = parentContext.tagScope | 16;
411 null !== resumableState &&
412 "none" !== resumableState.share &&
413 (subtreeScope |= 64);
414 return createFormatContext(
415 parentContext.insertionMode,
416 parentContext.selectedValue,
417 subtreeScope,
418 resumableState
419 );
420}
421var styleNameCache = new Map();
422function pushStyleAttribute(target, style) {
423 if ("object" !== typeof style)
424 throw Error(
425 "The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX."
426 );
427 var isFirst = !0,
428 styleName;
429 for (styleName in style)
430 if (hasOwnProperty.call(style, styleName)) {
431 var styleValue = style[styleName];
432 if (
433 null != styleValue &&
434 "boolean" !== typeof styleValue &&
435 "" !== styleValue
436 ) {
437 if (0 === styleName.indexOf("--")) {
438 var nameChunk = escapeTextForBrowser(styleName);
439 styleValue = escapeTextForBrowser(("" + styleValue).trim());
440 } else
441 (nameChunk = styleNameCache.get(styleName)),
442 void 0 === nameChunk &&
443 ((nameChunk = escapeTextForBrowser(
444 styleName
445 .replace(uppercasePattern, "-$1")
446 .toLowerCase()
447 .replace(msPattern, "-ms-")
448 )),
449 styleNameCache.set(styleName, nameChunk)),
450 (styleValue =
451 "number" === typeof styleValue
452 ? 0 === styleValue || unitlessNumbers.has(styleName)
453 ? "" + styleValue
454 : styleValue + "px"
455 : escapeTextForBrowser(("" + styleValue).trim()));
456 isFirst
457 ? ((isFirst = !1),
458 target.push(' style="', nameChunk, ":", styleValue))
459 : target.push(";", nameChunk, ":", styleValue);
460 }
461 }
462 isFirst || target.push('"');
463}
464function pushBooleanAttribute(target, name, value) {
465 value &&
466 "function" !== typeof value &&
467 "symbol" !== typeof value &&
468 target.push(" ", name, '=""');
469}
470function pushStringAttribute(target, name, value) {
471 "function" !== typeof value &&
472 "symbol" !== typeof value &&
473 "boolean" !== typeof value &&
474 target.push(" ", name, '="', escapeTextForBrowser(value), '"');
475}
476var actionJavaScriptURL = escapeTextForBrowser(
477 "javascript:throw new Error('React form unexpectedly submitted.')"
478);
479function pushAdditionalFormField(value, key) {
480 this.push('<input type="hidden"');
481 validateAdditionalFormField(value);
482 pushStringAttribute(this, "name", key);
483 pushStringAttribute(this, "value", value);
484 this.push("/>");
485}
486function validateAdditionalFormField(value) {
487 if ("string" !== typeof value)
488 throw Error(
489 "File/Blob fields are not yet supported in progressive forms. Will fallback to client hydration."
490 );
491}
492function getCustomFormFields(resumableState, formAction) {
493 if ("function" === typeof formAction.$$FORM_ACTION) {
494 var id = resumableState.nextFormID++;
495 resumableState = resumableState.idPrefix + id;
496 try {
497 var customFields = formAction.$$FORM_ACTION(resumableState);
498 if (customFields) {
499 var formData = customFields.data;
500 null != formData && formData.forEach(validateAdditionalFormField);
501 }
502 return customFields;
503 } catch (x) {
504 if ("object" === typeof x && null !== x && "function" === typeof x.then)
505 throw x;
506 }
507 }
508 return null;
509}
510function pushFormActionAttribute(
511 target,
512 resumableState,
513 renderState,
514 formAction,
515 formEncType,
516 formMethod,
517 formTarget,
518 name
519) {
520 var formData = null;
521 if ("function" === typeof formAction) {
522 var customFields = getCustomFormFields(resumableState, formAction);
523 null !== customFields
524 ? ((name = customFields.name),
525 (formAction = customFields.action || ""),
526 (formEncType = customFields.encType),
527 (formMethod = customFields.method),
528 (formTarget = customFields.target),
529 (formData = customFields.data))
530 : (target.push(" ", "formAction", '="', actionJavaScriptURL, '"'),
531 (formTarget = formMethod = formEncType = formAction = name = null),
532 injectFormReplayingRuntime(resumableState, renderState));
533 }
534 null != name && pushAttribute(target, "name", name);
535 null != formAction && pushAttribute(target, "formAction", formAction);
536 null != formEncType && pushAttribute(target, "formEncType", formEncType);
537 null != formMethod && pushAttribute(target, "formMethod", formMethod);
538 null != formTarget && pushAttribute(target, "formTarget", formTarget);
539 return formData;
540}
541function pushAttribute(target, name, value) {
542 switch (name) {
543 case "className":
544 pushStringAttribute(target, "class", value);
545 break;
546 case "tabIndex":
547 pushStringAttribute(target, "tabindex", value);
548 break;
549 case "dir":
550 case "role":
551 case "viewBox":
552 case "width":
553 case "height":
554 pushStringAttribute(target, name, value);
555 break;
556 case "style":
557 pushStyleAttribute(target, value);
558 break;
559 case "src":
560 case "href":
561 if ("" === value) break;
562 case "action":
563 case "formAction":
564 if (
565 null == value ||
566 "function" === typeof value ||
567 "symbol" === typeof value ||
568 "boolean" === typeof value
569 )
570 break;
571 value = sanitizeURL("" + value);
572 target.push(" ", name, '="', escapeTextForBrowser(value), '"');
573 break;
574 case "defaultValue":
575 case "defaultChecked":
576 case "innerHTML":
577 case "suppressContentEditableWarning":
578 case "suppressHydrationWarning":
579 case "ref":
580 break;
581 case "autoFocus":
582 case "multiple":
583 case "muted":
584 pushBooleanAttribute(target, name.toLowerCase(), value);
585 break;
586 case "xlinkHref":
587 if (
588 "function" === typeof value ||
589 "symbol" === typeof value ||
590 "boolean" === typeof value
591 )
592 break;
593 value = sanitizeURL("" + value);
594 target.push(" ", "xlink:href", '="', escapeTextForBrowser(value), '"');
595 break;
596 case "contentEditable":
597 case "spellCheck":
598 case "draggable":
599 case "value":
600 case "autoReverse":
601 case "externalResourcesRequired":
602 case "focusable":
603 case "preserveAlpha":
604 "function" !== typeof value &&
605 "symbol" !== typeof value &&
606 target.push(" ", name, '="', escapeTextForBrowser(value), '"');
607 break;
608 case "inert":
609 case "allowFullScreen":
610 case "async":
611 case "autoPlay":
612 case "controls":
613 case "default":
614 case "defer":
615 case "disabled":
616 case "disablePictureInPicture":
617 case "disableRemotePlayback":
618 case "formNoValidate":
619 case "hidden":
620 case "loop":
621 case "noModule":
622 case "noValidate":
623 case "open":
624 case "playsInline":
625 case "readOnly":
626 case "required":
627 case "reversed":
628 case "scoped":
629 case "seamless":
630 case "itemScope":
631 value &&
632 "function" !== typeof value &&
633 "symbol" !== typeof value &&
634 target.push(" ", name, '=""');
635 break;
636 case "capture":
637 case "download":
638 !0 === value
639 ? target.push(" ", name, '=""')
640 : !1 !== value &&
641 "function" !== typeof value &&
642 "symbol" !== typeof value &&
643 target.push(" ", name, '="', escapeTextForBrowser(value), '"');
644 break;
645 case "cols":
646 case "rows":
647 case "size":
648 case "span":
649 "function" !== typeof value &&
650 "symbol" !== typeof value &&
651 !isNaN(value) &&
652 1 <= value &&
653 target.push(" ", name, '="', escapeTextForBrowser(value), '"');
654 break;
655 case "rowSpan":
656 case "start":
657 "function" === typeof value ||
658 "symbol" === typeof value ||
659 isNaN(value) ||
660 target.push(" ", name, '="', escapeTextForBrowser(value), '"');
661 break;
662 case "xlinkActuate":
663 pushStringAttribute(target, "xlink:actuate", value);
664 break;
665 case "xlinkArcrole":
666 pushStringAttribute(target, "xlink:arcrole", value);
667 break;
668 case "xlinkRole":
669 pushStringAttribute(target, "xlink:role", value);
670 break;
671 case "xlinkShow":
672 pushStringAttribute(target, "xlink:show", value);
673 break;
674 case "xlinkTitle":
675 pushStringAttribute(target, "xlink:title", value);
676 break;
677 case "xlinkType":
678 pushStringAttribute(target, "xlink:type", value);
679 break;
680 case "xmlBase":
681 pushStringAttribute(target, "xml:base", value);
682 break;
683 case "xmlLang":
684 pushStringAttribute(target, "xml:lang", value);
685 break;
686 case "xmlSpace":
687 pushStringAttribute(target, "xml:space", value);
688 break;
689 default:
690 if (
691 !(2 < name.length) ||
692 ("o" !== name[0] && "O" !== name[0]) ||
693 ("n" !== name[1] && "N" !== name[1])
694 )
695 if (((name = aliases.get(name) || name), isAttributeNameSafe(name))) {
696 switch (typeof value) {
697 case "function":
698 case "symbol":
699 return;
700 case "boolean":
701 var prefix$8 = name.toLowerCase().slice(0, 5);
702 if ("data-" !== prefix$8 && "aria-" !== prefix$8) return;
703 }
704 target.push(" ", name, '="', escapeTextForBrowser(value), '"');
705 }
706 }
707}
708function pushInnerHTML(target, innerHTML, children) {
709 if (null != innerHTML) {
710 if (null != children)
711 throw Error(
712 "Can only set one of `children` or `props.dangerouslySetInnerHTML`."
713 );
714 if ("object" !== typeof innerHTML || !("__html" in innerHTML))
715 throw Error(
716 "`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information."
717 );
718 innerHTML = innerHTML.__html;
719 null !== innerHTML && void 0 !== innerHTML && target.push("" + innerHTML);
720 }
721}
722function flattenOptionChildren(children) {
723 var content = "";
724 React.Children.forEach(children, function (child) {
725 null != child && (content += child);
726 });
727 return content;
728}
729function injectFormReplayingRuntime(resumableState, renderState) {
730 if (0 === (resumableState.instructions & 16)) {
731 resumableState.instructions |= 16;
732 var preamble = renderState.preamble,
733 bootstrapChunks = renderState.bootstrapChunks;
734 (preamble.htmlChunks || preamble.headChunks) && 0 === bootstrapChunks.length
735 ? (bootstrapChunks.push(renderState.startInlineScript),
736 pushCompletedShellIdAttribute(bootstrapChunks, resumableState),
737 bootstrapChunks.push(
738 ">",
739 'addEventListener("submit",function(a){if(!a.defaultPrevented){var c=a.target,d=a.submitter,e=c.action,b=d;if(d){var f=d.getAttribute("formAction");null!=f&&(e=f,b=null)}"javascript:throw new Error(\'React form unexpectedly submitted.\')"===e&&(a.preventDefault(),b?(a=document.createElement("input"),a.name=b.name,a.value=b.value,b.parentNode.insertBefore(a,b),b=new FormData(c),a.parentNode.removeChild(a)):b=new FormData(c),a=c.ownerDocument||c,(a.$$reactFormReplay=a.$$reactFormReplay||[]).push(c,d,b))}});',
740 "\x3c/script>"
741 ))
742 : bootstrapChunks.unshift(
743 renderState.startInlineScript,
744 ">",
745 'addEventListener("submit",function(a){if(!a.defaultPrevented){var c=a.target,d=a.submitter,e=c.action,b=d;if(d){var f=d.getAttribute("formAction");null!=f&&(e=f,b=null)}"javascript:throw new Error(\'React form unexpectedly submitted.\')"===e&&(a.preventDefault(),b?(a=document.createElement("input"),a.name=b.name,a.value=b.value,b.parentNode.insertBefore(a,b),b=new FormData(c),a.parentNode.removeChild(a)):b=new FormData(c),a=c.ownerDocument||c,(a.$$reactFormReplay=a.$$reactFormReplay||[]).push(c,d,b))}});',
746 "\x3c/script>"
747 );
748 }
749}
750function pushLinkImpl(target, props) {
751 target.push(startChunkForTag("link"));
752 for (var propKey in props)
753 if (hasOwnProperty.call(props, propKey)) {
754 var propValue = props[propKey];
755 if (null != propValue)
756 switch (propKey) {
757 case "children":
758 case "dangerouslySetInnerHTML":
759 throw Error(
760 "link is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
761 );
762 default:
763 pushAttribute(target, propKey, propValue);
764 }
765 }
766 target.push("/>");
767 return null;
768}
769var styleRegex = /(<\/|<)(s)(tyle)/gi;
770function styleReplacer(match, prefix, s, suffix) {
771 return "" + prefix + ("s" === s ? "\\73 " : "\\53 ") + suffix;
772}
773function pushSelfClosing(target, props, tag) {
774 target.push(startChunkForTag(tag));
775 for (var propKey in props)
776 if (hasOwnProperty.call(props, propKey)) {
777 var propValue = props[propKey];
778 if (null != propValue)
779 switch (propKey) {
780 case "children":
781 case "dangerouslySetInnerHTML":
782 throw Error(
783 tag +
784 " is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
785 );
786 default:
787 pushAttribute(target, propKey, propValue);
788 }
789 }
790 target.push("/>");
791 return null;
792}
793function pushTitleImpl(target, props) {
794 target.push(startChunkForTag("title"));
795 var children = null,
796 innerHTML = null,
797 propKey;
798 for (propKey in props)
799 if (hasOwnProperty.call(props, propKey)) {
800 var propValue = props[propKey];
801 if (null != propValue)
802 switch (propKey) {
803 case "children":
804 children = propValue;
805 break;
806 case "dangerouslySetInnerHTML":
807 innerHTML = propValue;
808 break;
809 default:
810 pushAttribute(target, propKey, propValue);
811 }
812 }
813 target.push(">");
814 props = Array.isArray(children)
815 ? 2 > children.length
816 ? children[0]
817 : null
818 : children;
819 "function" !== typeof props &&
820 "symbol" !== typeof props &&
821 null !== props &&
822 void 0 !== props &&
823 target.push(escapeTextForBrowser("" + props));
824 pushInnerHTML(target, innerHTML, children);
825 target.push(endChunkForTag("title"));
826 return null;
827}
828function pushScriptImpl(target, props) {
829 target.push(startChunkForTag("script"));
830 var children = null,
831 innerHTML = null,
832 propKey;
833 for (propKey in props)
834 if (hasOwnProperty.call(props, propKey)) {
835 var propValue = props[propKey];
836 if (null != propValue)
837 switch (propKey) {
838 case "children":
839 children = propValue;
840 break;
841 case "dangerouslySetInnerHTML":
842 innerHTML = propValue;
843 break;
844 default:
845 pushAttribute(target, propKey, propValue);
846 }
847 }
848 target.push(">");
849 pushInnerHTML(target, innerHTML, children);
850 "string" === typeof children &&
851 target.push(("" + children).replace(scriptRegex, scriptReplacer));
852 target.push(endChunkForTag("script"));
853 return null;
854}
855function pushStartSingletonElement(target, props, tag) {
856 target.push(startChunkForTag(tag));
857 var innerHTML = (tag = null),
858 propKey;
859 for (propKey in props)
860 if (hasOwnProperty.call(props, propKey)) {
861 var propValue = props[propKey];
862 if (null != propValue)
863 switch (propKey) {
864 case "children":
865 tag = propValue;
866 break;
867 case "dangerouslySetInnerHTML":
868 innerHTML = propValue;
869 break;
870 default:
871 pushAttribute(target, propKey, propValue);
872 }
873 }
874 target.push(">");
875 pushInnerHTML(target, innerHTML, tag);
876 return tag;
877}
878function pushStartGenericElement(target, props, tag) {
879 target.push(startChunkForTag(tag));
880 var innerHTML = (tag = null),
881 propKey;
882 for (propKey in props)
883 if (hasOwnProperty.call(props, propKey)) {
884 var propValue = props[propKey];
885 if (null != propValue)
886 switch (propKey) {
887 case "children":
888 tag = propValue;
889 break;
890 case "dangerouslySetInnerHTML":
891 innerHTML = propValue;
892 break;
893 default:
894 pushAttribute(target, propKey, propValue);
895 }
896 }
897 target.push(">");
898 pushInnerHTML(target, innerHTML, tag);
899 return "string" === typeof tag
900 ? (target.push(escapeTextForBrowser(tag)), null)
901 : tag;
902}
903var VALID_TAG_REGEX = /^[a-zA-Z][a-zA-Z:_\.\-\d]*$/,
904 validatedTagCache = new Map();
905function startChunkForTag(tag) {
906 var tagStartChunk = validatedTagCache.get(tag);
907 if (void 0 === tagStartChunk) {
908 if (!VALID_TAG_REGEX.test(tag)) throw Error("Invalid tag: " + tag);
909 tagStartChunk = "<" + tag;
910 validatedTagCache.set(tag, tagStartChunk);
911 }
912 return tagStartChunk;
913}
914function pushStartInstance(
915 target$jscomp$0,
916 type,
917 props,
918 resumableState,
919 renderState,
920 preambleState,
921 hoistableState,
922 formatContext,
923 textEmbedded
924) {
925 switch (type) {
926 case "div":
927 case "span":
928 case "svg":
929 case "path":
930 break;
931 case "a":
932 target$jscomp$0.push(startChunkForTag("a"));
933 var children = null,
934 innerHTML = null,
935 propKey;
936 for (propKey in props)
937 if (hasOwnProperty.call(props, propKey)) {
938 var propValue = props[propKey];
939 if (null != propValue)
940 switch (propKey) {
941 case "children":
942 children = propValue;
943 break;
944 case "dangerouslySetInnerHTML":
945 innerHTML = propValue;
946 break;
947 case "href":
948 "" === propValue
949 ? pushStringAttribute(target$jscomp$0, "href", "")
950 : pushAttribute(target$jscomp$0, propKey, propValue);
951 break;
952 default:
953 pushAttribute(target$jscomp$0, propKey, propValue);
954 }
955 }
956 target$jscomp$0.push(">");
957 pushInnerHTML(target$jscomp$0, innerHTML, children);
958 if ("string" === typeof children) {
959 target$jscomp$0.push(escapeTextForBrowser(children));
960 var JSCompiler_inline_result = null;
961 } else JSCompiler_inline_result = children;
962 return JSCompiler_inline_result;
963 case "g":
964 case "p":
965 case "li":
966 break;
967 case "select":
968 target$jscomp$0.push(startChunkForTag("select"));
969 var children$jscomp$0 = null,
970 innerHTML$jscomp$0 = null,
971 propKey$jscomp$0;
972 for (propKey$jscomp$0 in props)
973 if (hasOwnProperty.call(props, propKey$jscomp$0)) {
974 var propValue$jscomp$0 = props[propKey$jscomp$0];
975 if (null != propValue$jscomp$0)
976 switch (propKey$jscomp$0) {
977 case "children":
978 children$jscomp$0 = propValue$jscomp$0;
979 break;
980 case "dangerouslySetInnerHTML":
981 innerHTML$jscomp$0 = propValue$jscomp$0;
982 break;
983 case "defaultValue":
984 case "value":
985 break;
986 default:
987 pushAttribute(
988 target$jscomp$0,
989 propKey$jscomp$0,
990 propValue$jscomp$0
991 );
992 }
993 }
994 target$jscomp$0.push(">");
995 pushInnerHTML(target$jscomp$0, innerHTML$jscomp$0, children$jscomp$0);
996 return children$jscomp$0;
997 case "option":
998 var selectedValue = formatContext.selectedValue;
999 target$jscomp$0.push(startChunkForTag("option"));
1000 var children$jscomp$1 = null,
1001 value = null,
1002 selected = null,
1003 innerHTML$jscomp$1 = null,
1004 propKey$jscomp$1;
1005 for (propKey$jscomp$1 in props)
1006 if (hasOwnProperty.call(props, propKey$jscomp$1)) {
1007 var propValue$jscomp$1 = props[propKey$jscomp$1];
1008 if (null != propValue$jscomp$1)
1009 switch (propKey$jscomp$1) {
1010 case "children":
1011 children$jscomp$1 = propValue$jscomp$1;
1012 break;
1013 case "selected":
1014 selected = propValue$jscomp$1;
1015 break;
1016 case "dangerouslySetInnerHTML":
1017 innerHTML$jscomp$1 = propValue$jscomp$1;
1018 break;
1019 case "value":
1020 value = propValue$jscomp$1;
1021 default:
1022 pushAttribute(
1023 target$jscomp$0,
1024 propKey$jscomp$1,
1025 propValue$jscomp$1
1026 );
1027 }
1028 }
1029 if (null != selectedValue) {
1030 var stringValue =
1031 null !== value
1032 ? "" + value
1033 : flattenOptionChildren(children$jscomp$1);
1034 if (isArrayImpl(selectedValue))
1035 for (var i = 0; i < selectedValue.length; i++) {
1036 if ("" + selectedValue[i] === stringValue) {
1037 target$jscomp$0.push(' selected=""');
1038 break;
1039 }
1040 }
1041 else
1042 "" + selectedValue === stringValue &&
1043 target$jscomp$0.push(' selected=""');
1044 } else selected && target$jscomp$0.push(' selected=""');
1045 target$jscomp$0.push(">");
1046 pushInnerHTML(target$jscomp$0, innerHTML$jscomp$1, children$jscomp$1);
1047 return children$jscomp$1;
1048 case "textarea":
1049 target$jscomp$0.push(startChunkForTag("textarea"));
1050 var value$jscomp$0 = null,
1051 defaultValue = null,
1052 children$jscomp$2 = null,
1053 propKey$jscomp$2;
1054 for (propKey$jscomp$2 in props)
1055 if (hasOwnProperty.call(props, propKey$jscomp$2)) {
1056 var propValue$jscomp$2 = props[propKey$jscomp$2];
1057 if (null != propValue$jscomp$2)
1058 switch (propKey$jscomp$2) {
1059 case "children":
1060 children$jscomp$2 = propValue$jscomp$2;
1061 break;
1062 case "value":
1063 value$jscomp$0 = propValue$jscomp$2;
1064 break;
1065 case "defaultValue":
1066 defaultValue = propValue$jscomp$2;
1067 break;
1068 case "dangerouslySetInnerHTML":
1069 throw Error(
1070 "`dangerouslySetInnerHTML` does not make sense on <textarea>."
1071 );
1072 default:
1073 pushAttribute(
1074 target$jscomp$0,
1075 propKey$jscomp$2,
1076 propValue$jscomp$2
1077 );
1078 }
1079 }
1080 null === value$jscomp$0 &&
1081 null !== defaultValue &&
1082 (value$jscomp$0 = defaultValue);
1083 target$jscomp$0.push(">");
1084 if (null != children$jscomp$2) {
1085 if (null != value$jscomp$0)
1086 throw Error(
1087 "If you supply `defaultValue` on a <textarea>, do not pass children."
1088 );
1089 if (isArrayImpl(children$jscomp$2)) {
1090 if (1 < children$jscomp$2.length)
1091 throw Error("<textarea> can only have at most one child.");
1092 value$jscomp$0 = "" + children$jscomp$2[0];
1093 }
1094 value$jscomp$0 = "" + children$jscomp$2;
1095 }
1096 "string" === typeof value$jscomp$0 &&
1097 "\n" === value$jscomp$0[0] &&
1098 target$jscomp$0.push("\n");
1099 null !== value$jscomp$0 &&
1100 target$jscomp$0.push(escapeTextForBrowser("" + value$jscomp$0));
1101 return null;
1102 case "input":
1103 target$jscomp$0.push(startChunkForTag("input"));
1104 var name = null,
1105 formAction = null,
1106 formEncType = null,
1107 formMethod = null,
1108 formTarget = null,
1109 value$jscomp$1 = null,
1110 defaultValue$jscomp$0 = null,
1111 checked = null,
1112 defaultChecked = null,
1113 propKey$jscomp$3;
1114 for (propKey$jscomp$3 in props)
1115 if (hasOwnProperty.call(props, propKey$jscomp$3)) {
1116 var propValue$jscomp$3 = props[propKey$jscomp$3];
1117 if (null != propValue$jscomp$3)
1118 switch (propKey$jscomp$3) {
1119 case "children":
1120 case "dangerouslySetInnerHTML":
1121 throw Error(
1122 "input is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
1123 );
1124 case "name":
1125 name = propValue$jscomp$3;
1126 break;
1127 case "formAction":
1128 formAction = propValue$jscomp$3;
1129 break;
1130 case "formEncType":
1131 formEncType = propValue$jscomp$3;
1132 break;
1133 case "formMethod":
1134 formMethod = propValue$jscomp$3;
1135 break;
1136 case "formTarget":
1137 formTarget = propValue$jscomp$3;
1138 break;
1139 case "defaultChecked":
1140 defaultChecked = propValue$jscomp$3;
1141 break;
1142 case "defaultValue":
1143 defaultValue$jscomp$0 = propValue$jscomp$3;
1144 break;
1145 case "checked":
1146 checked = propValue$jscomp$3;
1147 break;
1148 case "value":
1149 value$jscomp$1 = propValue$jscomp$3;
1150 break;
1151 default:
1152 pushAttribute(
1153 target$jscomp$0,
1154 propKey$jscomp$3,
1155 propValue$jscomp$3
1156 );
1157 }
1158 }
1159 var formData = pushFormActionAttribute(
1160 target$jscomp$0,
1161 resumableState,
1162 renderState,
1163 formAction,
1164 formEncType,
1165 formMethod,
1166 formTarget,
1167 name
1168 );
1169 null !== checked
1170 ? pushBooleanAttribute(target$jscomp$0, "checked", checked)
1171 : null !== defaultChecked &&
1172 pushBooleanAttribute(target$jscomp$0, "checked", defaultChecked);
1173 null !== value$jscomp$1
1174 ? pushAttribute(target$jscomp$0, "value", value$jscomp$1)
1175 : null !== defaultValue$jscomp$0 &&
1176 pushAttribute(target$jscomp$0, "value", defaultValue$jscomp$0);
1177 target$jscomp$0.push("/>");
1178 null != formData &&
1179 formData.forEach(pushAdditionalFormField, target$jscomp$0);
1180 return null;
1181 case "button":
1182 target$jscomp$0.push(startChunkForTag("button"));
1183 var children$jscomp$3 = null,
1184 innerHTML$jscomp$2 = null,
1185 name$jscomp$0 = null,
1186 formAction$jscomp$0 = null,
1187 formEncType$jscomp$0 = null,
1188 formMethod$jscomp$0 = null,
1189 formTarget$jscomp$0 = null,
1190 propKey$jscomp$4;
1191 for (propKey$jscomp$4 in props)
1192 if (hasOwnProperty.call(props, propKey$jscomp$4)) {
1193 var propValue$jscomp$4 = props[propKey$jscomp$4];
1194 if (null != propValue$jscomp$4)
1195 switch (propKey$jscomp$4) {
1196 case "children":
1197 children$jscomp$3 = propValue$jscomp$4;
1198 break;
1199 case "dangerouslySetInnerHTML":
1200 innerHTML$jscomp$2 = propValue$jscomp$4;
1201 break;
1202 case "name":
1203 name$jscomp$0 = propValue$jscomp$4;
1204 break;
1205 case "formAction":
1206 formAction$jscomp$0 = propValue$jscomp$4;
1207 break;
1208 case "formEncType":
1209 formEncType$jscomp$0 = propValue$jscomp$4;
1210 break;
1211 case "formMethod":
1212 formMethod$jscomp$0 = propValue$jscomp$4;
1213 break;
1214 case "formTarget":
1215 formTarget$jscomp$0 = propValue$jscomp$4;
1216 break;
1217 default:
1218 pushAttribute(
1219 target$jscomp$0,
1220 propKey$jscomp$4,
1221 propValue$jscomp$4
1222 );
1223 }
1224 }
1225 var formData$jscomp$0 = pushFormActionAttribute(
1226 target$jscomp$0,
1227 resumableState,
1228 renderState,
1229 formAction$jscomp$0,
1230 formEncType$jscomp$0,
1231 formMethod$jscomp$0,
1232 formTarget$jscomp$0,
1233 name$jscomp$0
1234 );
1235 target$jscomp$0.push(">");
1236 null != formData$jscomp$0 &&
1237 formData$jscomp$0.forEach(pushAdditionalFormField, target$jscomp$0);
1238 pushInnerHTML(target$jscomp$0, innerHTML$jscomp$2, children$jscomp$3);
1239 if ("string" === typeof children$jscomp$3) {
1240 target$jscomp$0.push(escapeTextForBrowser(children$jscomp$3));
1241 var JSCompiler_inline_result$jscomp$0 = null;
1242 } else JSCompiler_inline_result$jscomp$0 = children$jscomp$3;
1243 return JSCompiler_inline_result$jscomp$0;
1244 case "form":
1245 target$jscomp$0.push(startChunkForTag("form"));
1246 var children$jscomp$4 = null,
1247 innerHTML$jscomp$3 = null,
1248 formAction$jscomp$1 = null,
1249 formEncType$jscomp$1 = null,
1250 formMethod$jscomp$1 = null,
1251 formTarget$jscomp$1 = null,
1252 propKey$jscomp$5;
1253 for (propKey$jscomp$5 in props)
1254 if (hasOwnProperty.call(props, propKey$jscomp$5)) {
1255 var propValue$jscomp$5 = props[propKey$jscomp$5];
1256 if (null != propValue$jscomp$5)
1257 switch (propKey$jscomp$5) {
1258 case "children":
1259 children$jscomp$4 = propValue$jscomp$5;
1260 break;
1261 case "dangerouslySetInnerHTML":
1262 innerHTML$jscomp$3 = propValue$jscomp$5;
1263 break;
1264 case "action":
1265 formAction$jscomp$1 = propValue$jscomp$5;
1266 break;
1267 case "encType":
1268 formEncType$jscomp$1 = propValue$jscomp$5;
1269 break;
1270 case "method":
1271 formMethod$jscomp$1 = propValue$jscomp$5;
1272 break;
1273 case "target":
1274 formTarget$jscomp$1 = propValue$jscomp$5;
1275 break;
1276 default:
1277 pushAttribute(
1278 target$jscomp$0,
1279 propKey$jscomp$5,
1280 propValue$jscomp$5
1281 );
1282 }
1283 }
1284 var formData$jscomp$1 = null,
1285 formActionName = null;
1286 if ("function" === typeof formAction$jscomp$1) {
1287 var customFields = getCustomFormFields(
1288 resumableState,
1289 formAction$jscomp$1
1290 );
1291 null !== customFields
1292 ? ((formAction$jscomp$1 = customFields.action || ""),
1293 (formEncType$jscomp$1 = customFields.encType),
1294 (formMethod$jscomp$1 = customFields.method),
1295 (formTarget$jscomp$1 = customFields.target),
1296 (formData$jscomp$1 = customFields.data),
1297 (formActionName = customFields.name))
1298 : (target$jscomp$0.push(
1299 " ",
1300 "action",
1301 '="',
1302 actionJavaScriptURL,
1303 '"'
1304 ),
1305 (formTarget$jscomp$1 =
1306 formMethod$jscomp$1 =
1307 formEncType$jscomp$1 =
1308 formAction$jscomp$1 =
1309 null),
1310 injectFormReplayingRuntime(resumableState, renderState));
1311 }
1312 null != formAction$jscomp$1 &&
1313 pushAttribute(target$jscomp$0, "action", formAction$jscomp$1);
1314 null != formEncType$jscomp$1 &&
1315 pushAttribute(target$jscomp$0, "encType", formEncType$jscomp$1);
1316 null != formMethod$jscomp$1 &&
1317 pushAttribute(target$jscomp$0, "method", formMethod$jscomp$1);
1318 null != formTarget$jscomp$1 &&
1319 pushAttribute(target$jscomp$0, "target", formTarget$jscomp$1);
1320 target$jscomp$0.push(">");
1321 null !== formActionName &&
1322 (target$jscomp$0.push('<input type="hidden"'),
1323 pushStringAttribute(target$jscomp$0, "name", formActionName),
1324 target$jscomp$0.push("/>"),
1325 null != formData$jscomp$1 &&
1326 formData$jscomp$1.forEach(pushAdditionalFormField, target$jscomp$0));
1327 pushInnerHTML(target$jscomp$0, innerHTML$jscomp$3, children$jscomp$4);
1328 if ("string" === typeof children$jscomp$4) {
1329 target$jscomp$0.push(escapeTextForBrowser(children$jscomp$4));
1330 var JSCompiler_inline_result$jscomp$1 = null;
1331 } else JSCompiler_inline_result$jscomp$1 = children$jscomp$4;
1332 return JSCompiler_inline_result$jscomp$1;
1333 case "menuitem":
1334 target$jscomp$0.push(startChunkForTag("menuitem"));
1335 for (var propKey$jscomp$6 in props)
1336 if (hasOwnProperty.call(props, propKey$jscomp$6)) {
1337 var propValue$jscomp$6 = props[propKey$jscomp$6];
1338 if (null != propValue$jscomp$6)
1339 switch (propKey$jscomp$6) {
1340 case "children":
1341 case "dangerouslySetInnerHTML":
1342 throw Error(
1343 "menuitems cannot have `children` nor `dangerouslySetInnerHTML`."
1344 );
1345 default:
1346 pushAttribute(
1347 target$jscomp$0,
1348 propKey$jscomp$6,
1349 propValue$jscomp$6
1350 );
1351 }
1352 }
1353 target$jscomp$0.push(">");
1354 return null;
1355 case "object":
1356 target$jscomp$0.push(startChunkForTag("object"));
1357 var children$jscomp$5 = null,
1358 innerHTML$jscomp$4 = null,
1359 propKey$jscomp$7;
1360 for (propKey$jscomp$7 in props)
1361 if (hasOwnProperty.call(props, propKey$jscomp$7)) {
1362 var propValue$jscomp$7 = props[propKey$jscomp$7];
1363 if (null != propValue$jscomp$7)
1364 switch (propKey$jscomp$7) {
1365 case "children":
1366 children$jscomp$5 = propValue$jscomp$7;
1367 break;
1368 case "dangerouslySetInnerHTML":
1369 innerHTML$jscomp$4 = propValue$jscomp$7;
1370 break;
1371 case "data":
1372 var sanitizedValue = sanitizeURL("" + propValue$jscomp$7);
1373 if ("" === sanitizedValue) break;
1374 target$jscomp$0.push(
1375 " ",
1376 "data",
1377 '="',
1378 escapeTextForBrowser(sanitizedValue),
1379 '"'
1380 );
1381 break;
1382 default:
1383 pushAttribute(
1384 target$jscomp$0,
1385 propKey$jscomp$7,
1386 propValue$jscomp$7
1387 );
1388 }
1389 }
1390 target$jscomp$0.push(">");
1391 pushInnerHTML(target$jscomp$0, innerHTML$jscomp$4, children$jscomp$5);
1392 if ("string" === typeof children$jscomp$5) {
1393 target$jscomp$0.push(escapeTextForBrowser(children$jscomp$5));
1394 var JSCompiler_inline_result$jscomp$2 = null;
1395 } else JSCompiler_inline_result$jscomp$2 = children$jscomp$5;
1396 return JSCompiler_inline_result$jscomp$2;
1397 case "title":
1398 var noscriptTagInScope = formatContext.tagScope & 1,
1399 isFallback = formatContext.tagScope & 4;
1400 if (
1401 4 === formatContext.insertionMode ||
1402 noscriptTagInScope ||
1403 null != props.itemProp
1404 )
1405 var JSCompiler_inline_result$jscomp$3 = pushTitleImpl(
1406 target$jscomp$0,
1407 props
1408 );
1409 else
1410 isFallback
1411 ? (JSCompiler_inline_result$jscomp$3 = null)
1412 : (pushTitleImpl(renderState.hoistableChunks, props),
1413 (JSCompiler_inline_result$jscomp$3 = void 0));
1414 return JSCompiler_inline_result$jscomp$3;
1415 case "link":
1416 var noscriptTagInScope$jscomp$0 = formatContext.tagScope & 1,
1417 isFallback$jscomp$0 = formatContext.tagScope & 4,
1418 rel = props.rel,
1419 href = props.href,
1420 precedence = props.precedence;
1421 if (
1422 4 === formatContext.insertionMode ||
1423 noscriptTagInScope$jscomp$0 ||
1424 null != props.itemProp ||
1425 "string" !== typeof rel ||
1426 "string" !== typeof href ||
1427 "" === href
1428 ) {
1429 pushLinkImpl(target$jscomp$0, props);
1430 var JSCompiler_inline_result$jscomp$4 = null;
1431 } else if ("stylesheet" === props.rel)
1432 if (
1433 "string" !== typeof precedence ||
1434 null != props.disabled ||
1435 props.onLoad ||
1436 props.onError
1437 )
1438 JSCompiler_inline_result$jscomp$4 = pushLinkImpl(
1439 target$jscomp$0,
1440 props
1441 );
1442 else {
1443 var styleQueue = renderState.styles.get(precedence),
1444 resourceState = resumableState.styleResources.hasOwnProperty(href)
1445 ? resumableState.styleResources[href]
1446 : void 0;
1447 if (null !== resourceState) {
1448 resumableState.styleResources[href] = null;
1449 styleQueue ||
1450 ((styleQueue = {
1451 precedence: escapeTextForBrowser(precedence),
1452 rules: [],
1453 hrefs: [],
1454 sheets: new Map()
1455 }),
1456 renderState.styles.set(precedence, styleQueue));
1457 var resource = {
1458 state: 0,
1459 props: assign({}, props, {
1460 "data-precedence": props.precedence,
1461 precedence: null
1462 })
1463 };
1464 if (resourceState) {
1465 2 === resourceState.length &&
1466 adoptPreloadCredentials(resource.props, resourceState);
1467 var preloadResource = renderState.preloads.stylesheets.get(href);
1468 preloadResource && 0 < preloadResource.length
1469 ? (preloadResource.length = 0)
1470 : (resource.state = 1);
1471 }
1472 styleQueue.sheets.set(href, resource);
1473 hoistableState && hoistableState.stylesheets.add(resource);
1474 } else if (styleQueue) {
1475 var resource$9 = styleQueue.sheets.get(href);
1476 resource$9 &&
1477 hoistableState &&
1478 hoistableState.stylesheets.add(resource$9);
1479 }
1480 textEmbedded && target$jscomp$0.push("\x3c!-- --\x3e");
1481 JSCompiler_inline_result$jscomp$4 = null;
1482 }
1483 else
1484 props.onLoad || props.onError
1485 ? (JSCompiler_inline_result$jscomp$4 = pushLinkImpl(
1486 target$jscomp$0,
1487 props
1488 ))
1489 : (textEmbedded && target$jscomp$0.push("\x3c!-- --\x3e"),
1490 (JSCompiler_inline_result$jscomp$4 = isFallback$jscomp$0
1491 ? null
1492 : pushLinkImpl(renderState.hoistableChunks, props)));
1493 return JSCompiler_inline_result$jscomp$4;
1494 case "script":
1495 var noscriptTagInScope$jscomp$1 = formatContext.tagScope & 1,
1496 asyncProp = props.async;
1497 if (
1498 "string" !== typeof props.src ||
1499 !props.src ||
1500 !asyncProp ||
1501 "function" === typeof asyncProp ||
1502 "symbol" === typeof asyncProp ||
1503 props.onLoad ||
1504 props.onError ||
1505 4 === formatContext.insertionMode ||
1506 noscriptTagInScope$jscomp$1 ||
1507 null != props.itemProp
1508 )
1509 var JSCompiler_inline_result$jscomp$5 = pushScriptImpl(
1510 target$jscomp$0,
1511 props
1512 );
1513 else {
1514 var key = props.src;
1515 if ("module" === props.type) {
1516 var resources = resumableState.moduleScriptResources;
1517 var preloads = renderState.preloads.moduleScripts;
1518 } else
1519 (resources = resumableState.scriptResources),
1520 (preloads = renderState.preloads.scripts);
1521 var resourceState$jscomp$0 = resources.hasOwnProperty(key)
1522 ? resources[key]
1523 : void 0;
1524 if (null !== resourceState$jscomp$0) {
1525 resources[key] = null;
1526 var scriptProps = props;
1527 if (resourceState$jscomp$0) {
1528 2 === resourceState$jscomp$0.length &&
1529 ((scriptProps = assign({}, props)),
1530 adoptPreloadCredentials(scriptProps, resourceState$jscomp$0));
1531 var preloadResource$jscomp$0 = preloads.get(key);
1532 preloadResource$jscomp$0 && (preloadResource$jscomp$0.length = 0);
1533 }
1534 var resource$jscomp$0 = [];
1535 renderState.scripts.add(resource$jscomp$0);
1536 pushScriptImpl(resource$jscomp$0, scriptProps);
1537 }
1538 textEmbedded && target$jscomp$0.push("\x3c!-- --\x3e");
1539 JSCompiler_inline_result$jscomp$5 = null;
1540 }
1541 return JSCompiler_inline_result$jscomp$5;
1542 case "style":
1543 var noscriptTagInScope$jscomp$2 = formatContext.tagScope & 1,
1544 precedence$jscomp$0 = props.precedence,
1545 href$jscomp$0 = props.href,
1546 nonce = props.nonce;
1547 if (
1548 4 === formatContext.insertionMode ||
1549 noscriptTagInScope$jscomp$2 ||
1550 null != props.itemProp ||
1551 "string" !== typeof precedence$jscomp$0 ||
1552 "string" !== typeof href$jscomp$0 ||
1553 "" === href$jscomp$0
1554 ) {
1555 target$jscomp$0.push(startChunkForTag("style"));
1556 var children$jscomp$6 = null,
1557 innerHTML$jscomp$5 = null,
1558 propKey$jscomp$8;
1559 for (propKey$jscomp$8 in props)
1560 if (hasOwnProperty.call(props, propKey$jscomp$8)) {
1561 var propValue$jscomp$8 = props[propKey$jscomp$8];
1562 if (null != propValue$jscomp$8)
1563 switch (propKey$jscomp$8) {
1564 case "children":
1565 children$jscomp$6 = propValue$jscomp$8;
1566 break;
1567 case "dangerouslySetInnerHTML":
1568 innerHTML$jscomp$5 = propValue$jscomp$8;
1569 break;
1570 default:
1571 pushAttribute(
1572 target$jscomp$0,
1573 propKey$jscomp$8,
1574 propValue$jscomp$8
1575 );
1576 }
1577 }
1578 target$jscomp$0.push(">");
1579 var child = Array.isArray(children$jscomp$6)
1580 ? 2 > children$jscomp$6.length
1581 ? children$jscomp$6[0]
1582 : null
1583 : children$jscomp$6;
1584 "function" !== typeof child &&
1585 "symbol" !== typeof child &&
1586 null !== child &&
1587 void 0 !== child &&
1588 target$jscomp$0.push(("" + child).replace(styleRegex, styleReplacer));
1589 pushInnerHTML(target$jscomp$0, innerHTML$jscomp$5, children$jscomp$6);
1590 target$jscomp$0.push(endChunkForTag("style"));
1591 var JSCompiler_inline_result$jscomp$6 = null;
1592 } else {
1593 var styleQueue$jscomp$0 = renderState.styles.get(precedence$jscomp$0);
1594 if (
1595 null !==
1596 (resumableState.styleResources.hasOwnProperty(href$jscomp$0)
1597 ? resumableState.styleResources[href$jscomp$0]
1598 : void 0)
1599 ) {
1600 resumableState.styleResources[href$jscomp$0] = null;
1601 styleQueue$jscomp$0 ||
1602 ((styleQueue$jscomp$0 = {
1603 precedence: escapeTextForBrowser(precedence$jscomp$0),
1604 rules: [],
1605 hrefs: [],
1606 sheets: new Map()
1607 }),
1608 renderState.styles.set(precedence$jscomp$0, styleQueue$jscomp$0));
1609 var nonceStyle = renderState.nonce.style;
1610 if (!nonceStyle || nonceStyle === nonce) {
1611 styleQueue$jscomp$0.hrefs.push(escapeTextForBrowser(href$jscomp$0));
1612 var target = styleQueue$jscomp$0.rules,
1613 children$jscomp$7 = null,
1614 innerHTML$jscomp$6 = null,
1615 propKey$jscomp$9;
1616 for (propKey$jscomp$9 in props)
1617 if (hasOwnProperty.call(props, propKey$jscomp$9)) {
1618 var propValue$jscomp$9 = props[propKey$jscomp$9];
1619 if (null != propValue$jscomp$9)
1620 switch (propKey$jscomp$9) {
1621 case "children":
1622 children$jscomp$7 = propValue$jscomp$9;
1623 break;
1624 case "dangerouslySetInnerHTML":
1625 innerHTML$jscomp$6 = propValue$jscomp$9;
1626 }
1627 }
1628 var child$jscomp$0 = Array.isArray(children$jscomp$7)
1629 ? 2 > children$jscomp$7.length
1630 ? children$jscomp$7[0]
1631 : null
1632 : children$jscomp$7;
1633 "function" !== typeof child$jscomp$0 &&
1634 "symbol" !== typeof child$jscomp$0 &&
1635 null !== child$jscomp$0 &&
1636 void 0 !== child$jscomp$0 &&
1637 target.push(
1638 ("" + child$jscomp$0).replace(styleRegex, styleReplacer)
1639 );
1640 pushInnerHTML(target, innerHTML$jscomp$6, children$jscomp$7);
1641 }
1642 }
1643 styleQueue$jscomp$0 &&
1644 hoistableState &&
1645 hoistableState.styles.add(styleQueue$jscomp$0);
1646 textEmbedded && target$jscomp$0.push("\x3c!-- --\x3e");
1647 JSCompiler_inline_result$jscomp$6 = void 0;
1648 }
1649 return JSCompiler_inline_result$jscomp$6;
1650 case "meta":
1651 var noscriptTagInScope$jscomp$3 = formatContext.tagScope & 1,
1652 isFallback$jscomp$1 = formatContext.tagScope & 4;
1653 if (
1654 4 === formatContext.insertionMode ||
1655 noscriptTagInScope$jscomp$3 ||
1656 null != props.itemProp
1657 )
1658 var JSCompiler_inline_result$jscomp$7 = pushSelfClosing(
1659 target$jscomp$0,
1660 props,
1661 "meta"
1662 );
1663 else
1664 textEmbedded && target$jscomp$0.push("\x3c!-- --\x3e"),
1665 (JSCompiler_inline_result$jscomp$7 = isFallback$jscomp$1
1666 ? null
1667 : "string" === typeof props.charSet
1668 ? pushSelfClosing(renderState.charsetChunks, props, "meta")
1669 : "viewport" === props.name
1670 ? pushSelfClosing(renderState.viewportChunks, props, "meta")
1671 : pushSelfClosing(renderState.hoistableChunks, props, "meta"));
1672 return JSCompiler_inline_result$jscomp$7;
1673 case "listing":
1674 case "pre":
1675 target$jscomp$0.push(startChunkForTag(type));
1676 var children$jscomp$8 = null,
1677 innerHTML$jscomp$7 = null,
1678 propKey$jscomp$10;
1679 for (propKey$jscomp$10 in props)
1680 if (hasOwnProperty.call(props, propKey$jscomp$10)) {
1681 var propValue$jscomp$10 = props[propKey$jscomp$10];
1682 if (null != propValue$jscomp$10)
1683 switch (propKey$jscomp$10) {
1684 case "children":
1685 children$jscomp$8 = propValue$jscomp$10;
1686 break;
1687 case "dangerouslySetInnerHTML":
1688 innerHTML$jscomp$7 = propValue$jscomp$10;
1689 break;
1690 default:
1691 pushAttribute(
1692 target$jscomp$0,
1693 propKey$jscomp$10,
1694 propValue$jscomp$10
1695 );
1696 }
1697 }
1698 target$jscomp$0.push(">");
1699 if (null != innerHTML$jscomp$7) {
1700 if (null != children$jscomp$8)
1701 throw Error(
1702 "Can only set one of `children` or `props.dangerouslySetInnerHTML`."
1703 );
1704 if (
1705 "object" !== typeof innerHTML$jscomp$7 ||
1706 !("__html" in innerHTML$jscomp$7)
1707 )
1708 throw Error(
1709 "`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information."
1710 );
1711 var html = innerHTML$jscomp$7.__html;
1712 null !== html &&
1713 void 0 !== html &&
1714 ("string" === typeof html && 0 < html.length && "\n" === html[0]
1715 ? target$jscomp$0.push("\n", html)
1716 : target$jscomp$0.push("" + html));
1717 }
1718 "string" === typeof children$jscomp$8 &&
1719 "\n" === children$jscomp$8[0] &&
1720 target$jscomp$0.push("\n");
1721 return children$jscomp$8;
1722 case "img":
1723 var pictureOrNoScriptTagInScope = formatContext.tagScope & 3,
1724 src = props.src,
1725 srcSet = props.srcSet;
1726 if (
1727 !(
1728 "lazy" === props.loading ||
1729 (!src && !srcSet) ||
1730 ("string" !== typeof src && null != src) ||
1731 ("string" !== typeof srcSet && null != srcSet) ||
1732 "low" === props.fetchPriority ||
1733 pictureOrNoScriptTagInScope
1734 ) &&
1735 ("string" !== typeof src ||
1736 ":" !== src[4] ||
1737 ("d" !== src[0] && "D" !== src[0]) ||
1738 ("a" !== src[1] && "A" !== src[1]) ||
1739 ("t" !== src[2] && "T" !== src[2]) ||
1740 ("a" !== src[3] && "A" !== src[3])) &&
1741 ("string" !== typeof srcSet ||
1742 ":" !== srcSet[4] ||
1743 ("d" !== srcSet[0] && "D" !== srcSet[0]) ||
1744 ("a" !== srcSet[1] && "A" !== srcSet[1]) ||
1745 ("t" !== srcSet[2] && "T" !== srcSet[2]) ||
1746 ("a" !== srcSet[3] && "A" !== srcSet[3]))
1747 ) {
1748 null !== hoistableState &&
1749 formatContext.tagScope & 64 &&
1750 (hoistableState.suspenseyImages = !0);
1751 var sizes = "string" === typeof props.sizes ? props.sizes : void 0,
1752 key$jscomp$0 = srcSet ? srcSet + "\n" + (sizes || "") : src,
1753 promotablePreloads = renderState.preloads.images,
1754 resource$jscomp$1 = promotablePreloads.get(key$jscomp$0);
1755 if (resource$jscomp$1) {
1756 if (
1757 "high" === props.fetchPriority ||
1758 10 > renderState.highImagePreloads.size
1759 )
1760 promotablePreloads.delete(key$jscomp$0),
1761 renderState.highImagePreloads.add(resource$jscomp$1);
1762 } else if (
1763 !resumableState.imageResources.hasOwnProperty(key$jscomp$0)
1764 ) {
1765 resumableState.imageResources[key$jscomp$0] = PRELOAD_NO_CREDS;
1766 var input = props.crossOrigin;
1767 var JSCompiler_inline_result$jscomp$8 =
1768 "string" === typeof input
1769 ? "use-credentials" === input
1770 ? input
1771 : ""
1772 : void 0;
1773 var headers = renderState.headers,
1774 header;
1775 headers &&
1776 0 < headers.remainingCapacity &&
1777 "string" !== typeof props.srcSet &&
1778 ("high" === props.fetchPriority ||
1779 500 > headers.highImagePreloads.length) &&
1780 ((header = getPreloadAsHeader(src, "image", {
1781 imageSrcSet: props.srcSet,
1782 imageSizes: props.sizes,
1783 crossOrigin: JSCompiler_inline_result$jscomp$8,
1784 integrity: props.integrity,
1785 nonce: props.nonce,
1786 type: props.type,
1787 fetchPriority: props.fetchPriority,
1788 referrerPolicy: props.refererPolicy
1789 })),
1790 0 <= (headers.remainingCapacity -= header.length + 2))
1791 ? ((renderState.resets.image[key$jscomp$0] = PRELOAD_NO_CREDS),
1792 headers.highImagePreloads && (headers.highImagePreloads += ", "),
1793 (headers.highImagePreloads += header))
1794 : ((resource$jscomp$1 = []),
1795 pushLinkImpl(resource$jscomp$1, {
1796 rel: "preload",
1797 as: "image",
1798 href: srcSet ? void 0 : src,
1799 imageSrcSet: srcSet,
1800 imageSizes: sizes,
1801 crossOrigin: JSCompiler_inline_result$jscomp$8,
1802 integrity: props.integrity,
1803 type: props.type,
1804 fetchPriority: props.fetchPriority,
1805 referrerPolicy: props.referrerPolicy
1806 }),
1807 "high" === props.fetchPriority ||
1808 10 > renderState.highImagePreloads.size
1809 ? renderState.highImagePreloads.add(resource$jscomp$1)
1810 : (renderState.bulkPreloads.add(resource$jscomp$1),
1811 promotablePreloads.set(key$jscomp$0, resource$jscomp$1)));
1812 }
1813 }
1814 return pushSelfClosing(target$jscomp$0, props, "img");
1815 case "base":
1816 case "area":
1817 case "br":
1818 case "col":
1819 case "embed":
1820 case "hr":
1821 case "keygen":
1822 case "param":
1823 case "source":
1824 case "track":
1825 case "wbr":
1826 return pushSelfClosing(target$jscomp$0, props, type);
1827 case "annotation-xml":
1828 case "color-profile":
1829 case "font-face":
1830 case "font-face-src":
1831 case "font-face-uri":
1832 case "font-face-format":
1833 case "font-face-name":
1834 case "missing-glyph":
1835 break;
1836 case "head":
1837 if (2 > formatContext.insertionMode) {
1838 var preamble = preambleState || renderState.preamble;
1839 if (preamble.headChunks)
1840 throw Error("The `<head>` tag may only be rendered once.");
1841 null !== preambleState && target$jscomp$0.push("\x3c!--head--\x3e");
1842 preamble.headChunks = [];
1843 var JSCompiler_inline_result$jscomp$9 = pushStartSingletonElement(
1844 preamble.headChunks,
1845 props,
1846 "head"
1847 );
1848 } else
1849 JSCompiler_inline_result$jscomp$9 = pushStartGenericElement(
1850 target$jscomp$0,
1851 props,
1852 "head"
1853 );
1854 return JSCompiler_inline_result$jscomp$9;
1855 case "body":
1856 if (2 > formatContext.insertionMode) {
1857 var preamble$jscomp$0 = preambleState || renderState.preamble;
1858 if (preamble$jscomp$0.bodyChunks)
1859 throw Error("The `<body>` tag may only be rendered once.");
1860 null !== preambleState && target$jscomp$0.push("\x3c!--body--\x3e");
1861 preamble$jscomp$0.bodyChunks = [];
1862 var JSCompiler_inline_result$jscomp$10 = pushStartSingletonElement(
1863 preamble$jscomp$0.bodyChunks,
1864 props,
1865 "body"
1866 );
1867 } else
1868 JSCompiler_inline_result$jscomp$10 = pushStartGenericElement(
1869 target$jscomp$0,
1870 props,
1871 "body"
1872 );
1873 return JSCompiler_inline_result$jscomp$10;
1874 case "html":
1875 if (0 === formatContext.insertionMode) {
1876 var preamble$jscomp$1 = preambleState || renderState.preamble;
1877 if (preamble$jscomp$1.htmlChunks)
1878 throw Error("The `<html>` tag may only be rendered once.");
1879 null !== preambleState && target$jscomp$0.push("\x3c!--html--\x3e");
1880 preamble$jscomp$1.htmlChunks = [""];
1881 var JSCompiler_inline_result$jscomp$11 = pushStartSingletonElement(
1882 preamble$jscomp$1.htmlChunks,
1883 props,
1884 "html"
1885 );
1886 } else
1887 JSCompiler_inline_result$jscomp$11 = pushStartGenericElement(
1888 target$jscomp$0,
1889 props,
1890 "html"
1891 );
1892 return JSCompiler_inline_result$jscomp$11;
1893 default:
1894 if (-1 !== type.indexOf("-")) {
1895 target$jscomp$0.push(startChunkForTag(type));
1896 var children$jscomp$9 = null,
1897 innerHTML$jscomp$8 = null,
1898 propKey$jscomp$11;
1899 for (propKey$jscomp$11 in props)
1900 if (hasOwnProperty.call(props, propKey$jscomp$11)) {
1901 var propValue$jscomp$11 = props[propKey$jscomp$11];
1902 if (null != propValue$jscomp$11) {
1903 var attributeName = propKey$jscomp$11;
1904 switch (propKey$jscomp$11) {
1905 case "children":
1906 children$jscomp$9 = propValue$jscomp$11;
1907 break;
1908 case "dangerouslySetInnerHTML":
1909 innerHTML$jscomp$8 = propValue$jscomp$11;
1910 break;
1911 case "style":
1912 pushStyleAttribute(target$jscomp$0, propValue$jscomp$11);
1913 break;
1914 case "suppressContentEditableWarning":
1915 case "suppressHydrationWarning":
1916 case "ref":
1917 break;
1918 case "className":
1919 attributeName = "class";
1920 default:
1921 if (
1922 isAttributeNameSafe(propKey$jscomp$11) &&
1923 "function" !== typeof propValue$jscomp$11 &&
1924 "symbol" !== typeof propValue$jscomp$11 &&
1925 !1 !== propValue$jscomp$11
1926 ) {
1927 if (!0 === propValue$jscomp$11) propValue$jscomp$11 = "";
1928 else if ("object" === typeof propValue$jscomp$11) continue;
1929 target$jscomp$0.push(
1930 " ",
1931 attributeName,
1932 '="',
1933 escapeTextForBrowser(propValue$jscomp$11),
1934 '"'
1935 );
1936 }
1937 }
1938 }
1939 }
1940 target$jscomp$0.push(">");
1941 pushInnerHTML(target$jscomp$0, innerHTML$jscomp$8, children$jscomp$9);
1942 return children$jscomp$9;
1943 }
1944 }
1945 return pushStartGenericElement(target$jscomp$0, props, type);
1946}
1947var endTagCache = new Map();
1948function endChunkForTag(tag) {
1949 var chunk = endTagCache.get(tag);
1950 void 0 === chunk && ((chunk = "</" + tag + ">"), endTagCache.set(tag, chunk));
1951 return chunk;
1952}
1953function hoistPreambleState(renderState, preambleState) {
1954 renderState = renderState.preamble;
1955 null === renderState.htmlChunks &&
1956 preambleState.htmlChunks &&
1957 (renderState.htmlChunks = preambleState.htmlChunks);
1958 null === renderState.headChunks &&
1959 preambleState.headChunks &&
1960 (renderState.headChunks = preambleState.headChunks);
1961 null === renderState.bodyChunks &&
1962 preambleState.bodyChunks &&
1963 (renderState.bodyChunks = preambleState.bodyChunks);
1964}
1965function writeBootstrap(destination, renderState) {
1966 renderState = renderState.bootstrapChunks;
1967 for (var i = 0; i < renderState.length - 1; i++)
1968 destination.push(renderState[i]);
1969 return i < renderState.length
1970 ? ((i = renderState[i]), (renderState.length = 0), destination.push(i))
1971 : !0;
1972}
1973function writeStartPendingSuspenseBoundary(destination, renderState, id) {
1974 destination.push('\x3c!--$?--\x3e<template id="');
1975 if (null === id)
1976 throw Error(
1977 "An ID must have been assigned before we can complete the boundary."
1978 );
1979 destination.push(renderState.boundaryPrefix);
1980 renderState = id.toString(16);
1981 destination.push(renderState);
1982 return destination.push('"></template>');
1983}
1984function writeStartSegment(destination, renderState, formatContext, id) {
1985 switch (formatContext.insertionMode) {
1986 case 0:
1987 case 1:
1988 case 3:
1989 case 2:
1990 return (
1991 destination.push('<div hidden id="'),
1992 destination.push(renderState.segmentPrefix),
1993 (renderState = id.toString(16)),
1994 destination.push(renderState),
1995 destination.push('">')
1996 );
1997 case 4:
1998 return (
1999 destination.push('<svg aria-hidden="true" style="display:none" id="'),
2000 destination.push(renderState.segmentPrefix),
2001 (renderState = id.toString(16)),
2002 destination.push(renderState),
2003 destination.push('">')
2004 );
2005 case 5:
2006 return (
2007 destination.push('<math aria-hidden="true" style="display:none" id="'),
2008 destination.push(renderState.segmentPrefix),
2009 (renderState = id.toString(16)),
2010 destination.push(renderState),
2011 destination.push('">')
2012 );
2013 case 6:
2014 return (
2015 destination.push('<table hidden id="'),
2016 destination.push(renderState.segmentPrefix),
2017 (renderState = id.toString(16)),
2018 destination.push(renderState),
2019 destination.push('">')
2020 );
2021 case 7:
2022 return (
2023 destination.push('<table hidden><tbody id="'),
2024 destination.push(renderState.segmentPrefix),
2025 (renderState = id.toString(16)),
2026 destination.push(renderState),
2027 destination.push('">')
2028 );
2029 case 8:
2030 return (
2031 destination.push('<table hidden><tr id="'),
2032 destination.push(renderState.segmentPrefix),
2033 (renderState = id.toString(16)),
2034 destination.push(renderState),
2035 destination.push('">')
2036 );
2037 case 9:
2038 return (
2039 destination.push('<table hidden><colgroup id="'),
2040 destination.push(renderState.segmentPrefix),
2041 (renderState = id.toString(16)),
2042 destination.push(renderState),
2043 destination.push('">')
2044 );
2045 default:
2046 throw Error("Unknown insertion mode. This is a bug in React.");
2047 }
2048}
2049function writeEndSegment(destination, formatContext) {
2050 switch (formatContext.insertionMode) {
2051 case 0:
2052 case 1:
2053 case 3:
2054 case 2:
2055 return destination.push("</div>");
2056 case 4:
2057 return destination.push("</svg>");
2058 case 5:
2059 return destination.push("</math>");
2060 case 6:
2061 return destination.push("</table>");
2062 case 7:
2063 return destination.push("</tbody></table>");
2064 case 8:
2065 return destination.push("</tr></table>");
2066 case 9:
2067 return destination.push("</colgroup></table>");
2068 default:
2069 throw Error("Unknown insertion mode. This is a bug in React.");
2070 }
2071}
2072var regexForJSStringsInInstructionScripts = /[<\u2028\u2029]/g;
2073function escapeJSStringsForInstructionScripts(input) {
2074 return JSON.stringify(input).replace(
2075 regexForJSStringsInInstructionScripts,
2076 function (match) {
2077 switch (match) {
2078 case "<":
2079 return "\\u003c";
2080 case "\u2028":
2081 return "\\u2028";
2082 case "\u2029":
2083 return "\\u2029";
2084 default:
2085 throw Error(
2086 "escapeJSStringsForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React"
2087 );
2088 }
2089 }
2090 );
2091}
2092var regexForJSStringsInScripts = /[&><\u2028\u2029]/g;
2093function escapeJSObjectForInstructionScripts(input) {
2094 return JSON.stringify(input).replace(
2095 regexForJSStringsInScripts,
2096 function (match) {
2097 switch (match) {
2098 case "&":
2099 return "\\u0026";
2100 case ">":
2101 return "\\u003e";
2102 case "<":
2103 return "\\u003c";
2104 case "\u2028":
2105 return "\\u2028";
2106 case "\u2029":
2107 return "\\u2029";
2108 default:
2109 throw Error(
2110 "escapeJSObjectForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React"
2111 );
2112 }
2113 }
2114 );
2115}
2116var currentlyRenderingBoundaryHasStylesToHoist = !1,
2117 destinationHasCapacity = !0;
2118function flushStyleTagsLateForBoundary(styleQueue) {
2119 var rules = styleQueue.rules,
2120 hrefs = styleQueue.hrefs,
2121 i = 0;
2122 if (hrefs.length) {
2123 this.push(currentlyFlushingRenderState.startInlineStyle);
2124 this.push(' media="not all" data-precedence="');
2125 this.push(styleQueue.precedence);
2126 for (this.push('" data-href="'); i < hrefs.length - 1; i++)
2127 this.push(hrefs[i]), this.push(" ");
2128 this.push(hrefs[i]);
2129 this.push('">');
2130 for (i = 0; i < rules.length; i++) this.push(rules[i]);
2131 destinationHasCapacity = this.push("</style>");
2132 currentlyRenderingBoundaryHasStylesToHoist = !0;
2133 rules.length = 0;
2134 hrefs.length = 0;
2135 }
2136}
2137function hasStylesToHoist(stylesheet) {
2138 return 2 !== stylesheet.state
2139 ? (currentlyRenderingBoundaryHasStylesToHoist = !0)
2140 : !1;
2141}
2142function writeHoistablesForBoundary(destination, hoistableState, renderState) {
2143 currentlyRenderingBoundaryHasStylesToHoist = !1;
2144 destinationHasCapacity = !0;
2145 currentlyFlushingRenderState = renderState;
2146 hoistableState.styles.forEach(flushStyleTagsLateForBoundary, destination);
2147 currentlyFlushingRenderState = null;
2148 hoistableState.stylesheets.forEach(hasStylesToHoist);
2149 currentlyRenderingBoundaryHasStylesToHoist &&
2150 (renderState.stylesToHoist = !0);
2151 return destinationHasCapacity;
2152}
2153function flushResource(resource) {
2154 for (var i = 0; i < resource.length; i++) this.push(resource[i]);
2155 resource.length = 0;
2156}
2157var stylesheetFlushingQueue = [];
2158function flushStyleInPreamble(stylesheet) {
2159 pushLinkImpl(stylesheetFlushingQueue, stylesheet.props);
2160 for (var i = 0; i < stylesheetFlushingQueue.length; i++)
2161 this.push(stylesheetFlushingQueue[i]);
2162 stylesheetFlushingQueue.length = 0;
2163 stylesheet.state = 2;
2164}
2165function flushStylesInPreamble(styleQueue) {
2166 var hasStylesheets = 0 < styleQueue.sheets.size;
2167 styleQueue.sheets.forEach(flushStyleInPreamble, this);
2168 styleQueue.sheets.clear();
2169 var rules = styleQueue.rules,
2170 hrefs = styleQueue.hrefs;
2171 if (!hasStylesheets || hrefs.length) {
2172 this.push(currentlyFlushingRenderState.startInlineStyle);
2173 this.push(' data-precedence="');
2174 this.push(styleQueue.precedence);
2175 styleQueue = 0;
2176 if (hrefs.length) {
2177 for (
2178 this.push('" data-href="');
2179 styleQueue < hrefs.length - 1;
2180 styleQueue++
2181 )
2182 this.push(hrefs[styleQueue]), this.push(" ");
2183 this.push(hrefs[styleQueue]);
2184 }
2185 this.push('">');
2186 for (styleQueue = 0; styleQueue < rules.length; styleQueue++)
2187 this.push(rules[styleQueue]);
2188 this.push("</style>");
2189 rules.length = 0;
2190 hrefs.length = 0;
2191 }
2192}
2193function preloadLateStyle(stylesheet) {
2194 if (0 === stylesheet.state) {
2195 stylesheet.state = 1;
2196 var props = stylesheet.props;
2197 pushLinkImpl(stylesheetFlushingQueue, {
2198 rel: "preload",
2199 as: "style",
2200 href: stylesheet.props.href,
2201 crossOrigin: props.crossOrigin,
2202 fetchPriority: props.fetchPriority,
2203 integrity: props.integrity,
2204 media: props.media,
2205 hrefLang: props.hrefLang,
2206 referrerPolicy: props.referrerPolicy
2207 });
2208 for (
2209 stylesheet = 0;
2210 stylesheet < stylesheetFlushingQueue.length;
2211 stylesheet++
2212 )
2213 this.push(stylesheetFlushingQueue[stylesheet]);
2214 stylesheetFlushingQueue.length = 0;
2215 }
2216}
2217function preloadLateStyles(styleQueue) {
2218 styleQueue.sheets.forEach(preloadLateStyle, this);
2219 styleQueue.sheets.clear();
2220}
2221function pushCompletedShellIdAttribute(target, resumableState) {
2222 0 === (resumableState.instructions & 32) &&
2223 ((resumableState.instructions |= 32),
2224 target.push(
2225 ' id="',
2226 escapeTextForBrowser("_" + resumableState.idPrefix + "R_"),
2227 '"'
2228 ));
2229}
2230function writeStyleResourceDependenciesInJS(destination, hoistableState) {
2231 destination.push("[");
2232 var nextArrayOpenBrackChunk = "[";
2233 hoistableState.stylesheets.forEach(function (resource) {
2234 if (2 !== resource.state)
2235 if (3 === resource.state)
2236 destination.push(nextArrayOpenBrackChunk),
2237 (resource = escapeJSObjectForInstructionScripts(
2238 "" + resource.props.href
2239 )),
2240 destination.push(resource),
2241 destination.push("]"),
2242 (nextArrayOpenBrackChunk = ",[");
2243 else {
2244 destination.push(nextArrayOpenBrackChunk);
2245 var precedence = resource.props["data-precedence"],
2246 props = resource.props,
2247 coercedHref = sanitizeURL("" + resource.props.href);
2248 coercedHref = escapeJSObjectForInstructionScripts(coercedHref);
2249 destination.push(coercedHref);
2250 precedence = "" + precedence;
2251 destination.push(",");
2252 precedence = escapeJSObjectForInstructionScripts(precedence);
2253 destination.push(precedence);
2254 for (var propKey in props)
2255 if (
2256 hasOwnProperty.call(props, propKey) &&
2257 ((precedence = props[propKey]), null != precedence)
2258 )
2259 switch (propKey) {
2260 case "href":
2261 case "rel":
2262 case "precedence":
2263 case "data-precedence":
2264 break;
2265 case "children":
2266 case "dangerouslySetInnerHTML":
2267 throw Error(
2268 "link is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
2269 );
2270 default:
2271 writeStyleResourceAttributeInJS(
2272 destination,
2273 propKey,
2274 precedence
2275 );
2276 }
2277 destination.push("]");
2278 nextArrayOpenBrackChunk = ",[";
2279 resource.state = 3;
2280 }
2281 });
2282 destination.push("]");
2283}
2284function writeStyleResourceAttributeInJS(destination, name, value) {
2285 var attributeName = name.toLowerCase();
2286 switch (typeof value) {
2287 case "function":
2288 case "symbol":
2289 return;
2290 }
2291 switch (name) {
2292 case "innerHTML":
2293 case "dangerouslySetInnerHTML":
2294 case "suppressContentEditableWarning":
2295 case "suppressHydrationWarning":
2296 case "style":
2297 case "ref":
2298 return;
2299 case "className":
2300 attributeName = "class";
2301 name = "" + value;
2302 break;
2303 case "hidden":
2304 if (!1 === value) return;
2305 name = "";
2306 break;
2307 case "src":
2308 case "href":
2309 value = sanitizeURL(value);
2310 name = "" + value;
2311 break;
2312 default:
2313 if (
2314 (2 < name.length &&
2315 ("o" === name[0] || "O" === name[0]) &&
2316 ("n" === name[1] || "N" === name[1])) ||
2317 !isAttributeNameSafe(name)
2318 )
2319 return;
2320 name = "" + value;
2321 }
2322 destination.push(",");
2323 attributeName = escapeJSObjectForInstructionScripts(attributeName);
2324 destination.push(attributeName);
2325 destination.push(",");
2326 attributeName = escapeJSObjectForInstructionScripts(name);
2327 destination.push(attributeName);
2328}
2329function createHoistableState() {
2330 return { styles: new Set(), stylesheets: new Set(), suspenseyImages: !1 };
2331}
2332function prefetchDNS(href) {
2333 var request = currentRequest ? currentRequest : null;
2334 if (request) {
2335 var resumableState = request.resumableState,
2336 renderState = request.renderState;
2337 if ("string" === typeof href && href) {
2338 if (!resumableState.dnsResources.hasOwnProperty(href)) {
2339 resumableState.dnsResources[href] = null;
2340 resumableState = renderState.headers;
2341 var header, JSCompiler_temp;
2342 if (
2343 (JSCompiler_temp =
2344 resumableState && 0 < resumableState.remainingCapacity)
2345 )
2346 JSCompiler_temp =
2347 ((header =
2348 "<" +
2349 ("" + href).replace(
2350 regexForHrefInLinkHeaderURLContext,
2351 escapeHrefForLinkHeaderURLContextReplacer
2352 ) +
2353 ">; rel=dns-prefetch"),
2354 0 <= (resumableState.remainingCapacity -= header.length + 2));
2355 JSCompiler_temp
2356 ? ((renderState.resets.dns[href] = null),
2357 resumableState.preconnects && (resumableState.preconnects += ", "),
2358 (resumableState.preconnects += header))
2359 : ((header = []),
2360 pushLinkImpl(header, { href: href, rel: "dns-prefetch" }),
2361 renderState.preconnects.add(header));
2362 }
2363 enqueueFlush(request);
2364 }
2365 } else previousDispatcher.D(href);
2366}
2367function preconnect(href, crossOrigin) {
2368 var request = currentRequest ? currentRequest : null;
2369 if (request) {
2370 var resumableState = request.resumableState,
2371 renderState = request.renderState;
2372 if ("string" === typeof href && href) {
2373 var bucket =
2374 "use-credentials" === crossOrigin
2375 ? "credentials"
2376 : "string" === typeof crossOrigin
2377 ? "anonymous"
2378 : "default";
2379 if (!resumableState.connectResources[bucket].hasOwnProperty(href)) {
2380 resumableState.connectResources[bucket][href] = null;
2381 resumableState = renderState.headers;
2382 var header, JSCompiler_temp;
2383 if (
2384 (JSCompiler_temp =
2385 resumableState && 0 < resumableState.remainingCapacity)
2386 ) {
2387 JSCompiler_temp =
2388 "<" +
2389 ("" + href).replace(
2390 regexForHrefInLinkHeaderURLContext,
2391 escapeHrefForLinkHeaderURLContextReplacer
2392 ) +
2393 ">; rel=preconnect";
2394 if ("string" === typeof crossOrigin) {
2395 var escapedCrossOrigin = ("" + crossOrigin).replace(
2396 regexForLinkHeaderQuotedParamValueContext,
2397 escapeStringForLinkHeaderQuotedParamValueContextReplacer
2398 );
2399 JSCompiler_temp += '; crossorigin="' + escapedCrossOrigin + '"';
2400 }
2401 JSCompiler_temp =
2402 ((header = JSCompiler_temp),
2403 0 <= (resumableState.remainingCapacity -= header.length + 2));
2404 }
2405 JSCompiler_temp
2406 ? ((renderState.resets.connect[bucket][href] = null),
2407 resumableState.preconnects && (resumableState.preconnects += ", "),
2408 (resumableState.preconnects += header))
2409 : ((bucket = []),
2410 pushLinkImpl(bucket, {
2411 rel: "preconnect",
2412 href: href,
2413 crossOrigin: crossOrigin
2414 }),
2415 renderState.preconnects.add(bucket));
2416 }
2417 enqueueFlush(request);
2418 }
2419 } else previousDispatcher.C(href, crossOrigin);
2420}
2421function preload(href, as, options) {
2422 var request = currentRequest ? currentRequest : null;
2423 if (request) {
2424 var resumableState = request.resumableState,
2425 renderState = request.renderState;
2426 if (as && href) {
2427 switch (as) {
2428 case "image":
2429 if (options) {
2430 var imageSrcSet = options.imageSrcSet;
2431 var imageSizes = options.imageSizes;
2432 var fetchPriority = options.fetchPriority;
2433 }
2434 var key = imageSrcSet
2435 ? imageSrcSet + "\n" + (imageSizes || "")
2436 : href;
2437 if (resumableState.imageResources.hasOwnProperty(key)) return;
2438 resumableState.imageResources[key] = PRELOAD_NO_CREDS;
2439 resumableState = renderState.headers;
2440 var header;
2441 resumableState &&
2442 0 < resumableState.remainingCapacity &&
2443 "string" !== typeof imageSrcSet &&
2444 "high" === fetchPriority &&
2445 ((header = getPreloadAsHeader(href, as, options)),
2446 0 <= (resumableState.remainingCapacity -= header.length + 2))
2447 ? ((renderState.resets.image[key] = PRELOAD_NO_CREDS),
2448 resumableState.highImagePreloads &&
2449 (resumableState.highImagePreloads += ", "),
2450 (resumableState.highImagePreloads += header))
2451 : ((resumableState = []),
2452 pushLinkImpl(
2453 resumableState,
2454 assign(
2455 { rel: "preload", href: imageSrcSet ? void 0 : href, as: as },
2456 options
2457 )
2458 ),
2459 "high" === fetchPriority
2460 ? renderState.highImagePreloads.add(resumableState)
2461 : (renderState.bulkPreloads.add(resumableState),
2462 renderState.preloads.images.set(key, resumableState)));
2463 break;
2464 case "style":
2465 if (resumableState.styleResources.hasOwnProperty(href)) return;
2466 imageSrcSet = [];
2467 pushLinkImpl(
2468 imageSrcSet,
2469 assign({ rel: "preload", href: href, as: as }, options)
2470 );
2471 resumableState.styleResources[href] =
2472 !options ||
2473 ("string" !== typeof options.crossOrigin &&
2474 "string" !== typeof options.integrity)
2475 ? PRELOAD_NO_CREDS
2476 : [options.crossOrigin, options.integrity];
2477 renderState.preloads.stylesheets.set(href, imageSrcSet);
2478 renderState.bulkPreloads.add(imageSrcSet);
2479 break;
2480 case "script":
2481 if (resumableState.scriptResources.hasOwnProperty(href)) return;
2482 imageSrcSet = [];
2483 renderState.preloads.scripts.set(href, imageSrcSet);
2484 renderState.bulkPreloads.add(imageSrcSet);
2485 pushLinkImpl(
2486 imageSrcSet,
2487 assign({ rel: "preload", href: href, as: as }, options)
2488 );
2489 resumableState.scriptResources[href] =
2490 !options ||
2491 ("string" !== typeof options.crossOrigin &&
2492 "string" !== typeof options.integrity)
2493 ? PRELOAD_NO_CREDS
2494 : [options.crossOrigin, options.integrity];
2495 break;
2496 default:
2497 if (resumableState.unknownResources.hasOwnProperty(as)) {
2498 if (
2499 ((imageSrcSet = resumableState.unknownResources[as]),
2500 imageSrcSet.hasOwnProperty(href))
2501 )
2502 return;
2503 } else
2504 (imageSrcSet = {}),
2505 (resumableState.unknownResources[as] = imageSrcSet);
2506 imageSrcSet[href] = PRELOAD_NO_CREDS;
2507 if (
2508 (resumableState = renderState.headers) &&
2509 0 < resumableState.remainingCapacity &&
2510 "font" === as &&
2511 ((key = getPreloadAsHeader(href, as, options)),
2512 0 <= (resumableState.remainingCapacity -= key.length + 2))
2513 )
2514 (renderState.resets.font[href] = PRELOAD_NO_CREDS),
2515 resumableState.fontPreloads &&
2516 (resumableState.fontPreloads += ", "),
2517 (resumableState.fontPreloads += key);
2518 else
2519 switch (
2520 ((resumableState = []),
2521 (href = assign({ rel: "preload", href: href, as: as }, options)),
2522 pushLinkImpl(resumableState, href),
2523 as)
2524 ) {
2525 case "font":
2526 renderState.fontPreloads.add(resumableState);
2527 break;
2528 default:
2529 renderState.bulkPreloads.add(resumableState);
2530 }
2531 }
2532 enqueueFlush(request);
2533 }
2534 } else previousDispatcher.L(href, as, options);
2535}
2536function preloadModule(href, options) {
2537 var request = currentRequest ? currentRequest : null;
2538 if (request) {
2539 var resumableState = request.resumableState,
2540 renderState = request.renderState;
2541 if (href) {
2542 var as =
2543 options && "string" === typeof options.as ? options.as : "script";
2544 switch (as) {
2545 case "script":
2546 if (resumableState.moduleScriptResources.hasOwnProperty(href)) return;
2547 as = [];
2548 resumableState.moduleScriptResources[href] =
2549 !options ||
2550 ("string" !== typeof options.crossOrigin &&
2551 "string" !== typeof options.integrity)
2552 ? PRELOAD_NO_CREDS
2553 : [options.crossOrigin, options.integrity];
2554 renderState.preloads.moduleScripts.set(href, as);
2555 break;
2556 default:
2557 if (resumableState.moduleUnknownResources.hasOwnProperty(as)) {
2558 var resources = resumableState.unknownResources[as];
2559 if (resources.hasOwnProperty(href)) return;
2560 } else
2561 (resources = {}),
2562 (resumableState.moduleUnknownResources[as] = resources);
2563 as = [];
2564 resources[href] = PRELOAD_NO_CREDS;
2565 }
2566 pushLinkImpl(as, assign({ rel: "modulepreload", href: href }, options));
2567 renderState.bulkPreloads.add(as);
2568 enqueueFlush(request);
2569 }
2570 } else previousDispatcher.m(href, options);
2571}
2572function preinitStyle(href, precedence, options) {
2573 var request = currentRequest ? currentRequest : null;
2574 if (request) {
2575 var resumableState = request.resumableState,
2576 renderState = request.renderState;
2577 if (href) {
2578 precedence = precedence || "default";
2579 var styleQueue = renderState.styles.get(precedence),
2580 resourceState = resumableState.styleResources.hasOwnProperty(href)
2581 ? resumableState.styleResources[href]
2582 : void 0;
2583 null !== resourceState &&
2584 ((resumableState.styleResources[href] = null),
2585 styleQueue ||
2586 ((styleQueue = {
2587 precedence: escapeTextForBrowser(precedence),
2588 rules: [],
2589 hrefs: [],
2590 sheets: new Map()
2591 }),
2592 renderState.styles.set(precedence, styleQueue)),
2593 (precedence = {
2594 state: 0,
2595 props: assign(
2596 { rel: "stylesheet", href: href, "data-precedence": precedence },
2597 options
2598 )
2599 }),
2600 resourceState &&
2601 (2 === resourceState.length &&
2602 adoptPreloadCredentials(precedence.props, resourceState),
2603 (renderState = renderState.preloads.stylesheets.get(href)) &&
2604 0 < renderState.length
2605 ? (renderState.length = 0)
2606 : (precedence.state = 1)),
2607 styleQueue.sheets.set(href, precedence),
2608 enqueueFlush(request));
2609 }
2610 } else previousDispatcher.S(href, precedence, options);
2611}
2612function preinitScript(src, options) {
2613 var request = currentRequest ? currentRequest : null;
2614 if (request) {
2615 var resumableState = request.resumableState,
2616 renderState = request.renderState;
2617 if (src) {
2618 var resourceState = resumableState.scriptResources.hasOwnProperty(src)
2619 ? resumableState.scriptResources[src]
2620 : void 0;
2621 null !== resourceState &&
2622 ((resumableState.scriptResources[src] = null),
2623 (options = assign({ src: src, async: !0 }, options)),
2624 resourceState &&
2625 (2 === resourceState.length &&
2626 adoptPreloadCredentials(options, resourceState),
2627 (src = renderState.preloads.scripts.get(src))) &&
2628 (src.length = 0),
2629 (src = []),
2630 renderState.scripts.add(src),
2631 pushScriptImpl(src, options),
2632 enqueueFlush(request));
2633 }
2634 } else previousDispatcher.X(src, options);
2635}
2636function preinitModuleScript(src, options) {
2637 var request = currentRequest ? currentRequest : null;
2638 if (request) {
2639 var resumableState = request.resumableState,
2640 renderState = request.renderState;
2641 if (src) {
2642 var resourceState = resumableState.moduleScriptResources.hasOwnProperty(
2643 src
2644 )
2645 ? resumableState.moduleScriptResources[src]
2646 : void 0;
2647 null !== resourceState &&
2648 ((resumableState.moduleScriptResources[src] = null),
2649 (options = assign({ src: src, type: "module", async: !0 }, options)),
2650 resourceState &&
2651 (2 === resourceState.length &&
2652 adoptPreloadCredentials(options, resourceState),
2653 (src = renderState.preloads.moduleScripts.get(src))) &&
2654 (src.length = 0),
2655 (src = []),
2656 renderState.scripts.add(src),
2657 pushScriptImpl(src, options),
2658 enqueueFlush(request));
2659 }
2660 } else previousDispatcher.M(src, options);
2661}
2662function adoptPreloadCredentials(target, preloadState) {
2663 null == target.crossOrigin && (target.crossOrigin = preloadState[0]);
2664 null == target.integrity && (target.integrity = preloadState[1]);
2665}
2666function getPreloadAsHeader(href, as, params) {
2667 href = ("" + href).replace(
2668 regexForHrefInLinkHeaderURLContext,
2669 escapeHrefForLinkHeaderURLContextReplacer
2670 );
2671 as = ("" + as).replace(
2672 regexForLinkHeaderQuotedParamValueContext,
2673 escapeStringForLinkHeaderQuotedParamValueContextReplacer
2674 );
2675 as = "<" + href + '>; rel=preload; as="' + as + '"';
2676 for (var paramName in params)
2677 hasOwnProperty.call(params, paramName) &&
2678 ((href = params[paramName]),
2679 "string" === typeof href &&
2680 (as +=
2681 "; " +
2682 paramName.toLowerCase() +
2683 '="' +
2684 ("" + href).replace(
2685 regexForLinkHeaderQuotedParamValueContext,
2686 escapeStringForLinkHeaderQuotedParamValueContextReplacer
2687 ) +
2688 '"'));
2689 return as;
2690}
2691var regexForHrefInLinkHeaderURLContext = /[<>\r\n]/g;
2692function escapeHrefForLinkHeaderURLContextReplacer(match) {
2693 switch (match) {
2694 case "<":
2695 return "%3C";
2696 case ">":
2697 return "%3E";
2698 case "\n":
2699 return "%0A";
2700 case "\r":
2701 return "%0D";
2702 default:
2703 throw Error(
2704 "escapeLinkHrefForHeaderContextReplacer encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React"
2705 );
2706 }
2707}
2708var regexForLinkHeaderQuotedParamValueContext = /["';,\r\n]/g;
2709function escapeStringForLinkHeaderQuotedParamValueContextReplacer(match) {
2710 switch (match) {
2711 case '"':
2712 return "%22";
2713 case "'":
2714 return "%27";
2715 case ";":
2716 return "%3B";
2717 case ",":
2718 return "%2C";
2719 case "\n":
2720 return "%0A";
2721 case "\r":
2722 return "%0D";
2723 default:
2724 throw Error(
2725 "escapeStringForLinkHeaderQuotedParamValueContextReplacer encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React"
2726 );
2727 }
2728}
2729function hoistStyleQueueDependency(styleQueue) {
2730 this.styles.add(styleQueue);
2731}
2732function hoistStylesheetDependency(stylesheet) {
2733 this.stylesheets.add(stylesheet);
2734}
2735function hoistHoistables(parentState, childState) {
2736 childState.styles.forEach(hoistStyleQueueDependency, parentState);
2737 childState.stylesheets.forEach(hoistStylesheetDependency, parentState);
2738 childState.suspenseyImages && (parentState.suspenseyImages = !0);
2739}
2740function createRenderState(resumableState, generateStaticMarkup) {
2741 var idPrefix = resumableState.idPrefix,
2742 bootstrapChunks = [],
2743 bootstrapScriptContent = resumableState.bootstrapScriptContent,
2744 bootstrapScripts = resumableState.bootstrapScripts,
2745 bootstrapModules = resumableState.bootstrapModules;
2746 void 0 !== bootstrapScriptContent &&
2747 (bootstrapChunks.push("<script"),
2748 pushCompletedShellIdAttribute(bootstrapChunks, resumableState),
2749 bootstrapChunks.push(
2750 ">",
2751 ("" + bootstrapScriptContent).replace(scriptRegex, scriptReplacer),
2752 "\x3c/script>"
2753 ));
2754 bootstrapScriptContent = idPrefix + "P:";
2755 var JSCompiler_object_inline_segmentPrefix_1673 = idPrefix + "S:";
2756 idPrefix += "B:";
2757 var JSCompiler_object_inline_preconnects_1687 = new Set(),
2758 JSCompiler_object_inline_fontPreloads_1688 = new Set(),
2759 JSCompiler_object_inline_highImagePreloads_1689 = new Set(),
2760 JSCompiler_object_inline_styles_1690 = new Map(),
2761 JSCompiler_object_inline_bootstrapScripts_1691 = new Set(),
2762 JSCompiler_object_inline_scripts_1692 = new Set(),
2763 JSCompiler_object_inline_bulkPreloads_1693 = new Set(),
2764 JSCompiler_object_inline_preloads_1694 = {
2765 images: new Map(),
2766 stylesheets: new Map(),
2767 scripts: new Map(),
2768 moduleScripts: new Map()
2769 };
2770 if (void 0 !== bootstrapScripts)
2771 for (var i = 0; i < bootstrapScripts.length; i++) {
2772 var scriptConfig = bootstrapScripts[i],
2773 src,
2774 crossOrigin = void 0,
2775 integrity = void 0,
2776 props = {
2777 rel: "preload",
2778 as: "script",
2779 fetchPriority: "low",
2780 nonce: void 0
2781 };
2782 "string" === typeof scriptConfig
2783 ? (props.href = src = scriptConfig)
2784 : ((props.href = src = scriptConfig.src),
2785 (props.integrity = integrity =
2786 "string" === typeof scriptConfig.integrity
2787 ? scriptConfig.integrity
2788 : void 0),
2789 (props.crossOrigin = crossOrigin =
2790 "string" === typeof scriptConfig || null == scriptConfig.crossOrigin
2791 ? void 0
2792 : "use-credentials" === scriptConfig.crossOrigin
2793 ? "use-credentials"
2794 : ""));
2795 scriptConfig = resumableState;
2796 var href = src;
2797 scriptConfig.scriptResources[href] = null;
2798 scriptConfig.moduleScriptResources[href] = null;
2799 scriptConfig = [];
2800 pushLinkImpl(scriptConfig, props);
2801 JSCompiler_object_inline_bootstrapScripts_1691.add(scriptConfig);
2802 bootstrapChunks.push('<script src="', escapeTextForBrowser(src), '"');
2803 "string" === typeof integrity &&
2804 bootstrapChunks.push(
2805 ' integrity="',
2806 escapeTextForBrowser(integrity),
2807 '"'
2808 );
2809 "string" === typeof crossOrigin &&
2810 bootstrapChunks.push(
2811 ' crossorigin="',
2812 escapeTextForBrowser(crossOrigin),
2813 '"'
2814 );
2815 pushCompletedShellIdAttribute(bootstrapChunks, resumableState);
2816 bootstrapChunks.push(' async="">\x3c/script>');
2817 }
2818 if (void 0 !== bootstrapModules)
2819 for (
2820 bootstrapScripts = 0;
2821 bootstrapScripts < bootstrapModules.length;
2822 bootstrapScripts++
2823 )
2824 (props = bootstrapModules[bootstrapScripts]),
2825 (crossOrigin = src = void 0),
2826 (integrity = {
2827 rel: "modulepreload",
2828 fetchPriority: "low",
2829 nonce: void 0
2830 }),
2831 "string" === typeof props
2832 ? (integrity.href = i = props)
2833 : ((integrity.href = i = props.src),
2834 (integrity.integrity = crossOrigin =
2835 "string" === typeof props.integrity ? props.integrity : void 0),
2836 (integrity.crossOrigin = src =
2837 "string" === typeof props || null == props.crossOrigin
2838 ? void 0
2839 : "use-credentials" === props.crossOrigin
2840 ? "use-credentials"
2841 : "")),
2842 (props = resumableState),
2843 (scriptConfig = i),
2844 (props.scriptResources[scriptConfig] = null),
2845 (props.moduleScriptResources[scriptConfig] = null),
2846 (props = []),
2847 pushLinkImpl(props, integrity),
2848 JSCompiler_object_inline_bootstrapScripts_1691.add(props),
2849 bootstrapChunks.push(
2850 '<script type="module" src="',
2851 escapeTextForBrowser(i),
2852 '"'
2853 ),
2854 "string" === typeof crossOrigin &&
2855 bootstrapChunks.push(
2856 ' integrity="',
2857 escapeTextForBrowser(crossOrigin),
2858 '"'
2859 ),
2860 "string" === typeof src &&
2861 bootstrapChunks.push(
2862 ' crossorigin="',
2863 escapeTextForBrowser(src),
2864 '"'
2865 ),
2866 pushCompletedShellIdAttribute(bootstrapChunks, resumableState),
2867 bootstrapChunks.push(' async="">\x3c/script>');
2868 return {
2869 placeholderPrefix: bootstrapScriptContent,
2870 segmentPrefix: JSCompiler_object_inline_segmentPrefix_1673,
2871 boundaryPrefix: idPrefix,
2872 startInlineScript: "<script",
2873 startInlineStyle: "<style",
2874 preamble: { htmlChunks: null, headChunks: null, bodyChunks: null },
2875 externalRuntimeScript: null,
2876 bootstrapChunks: bootstrapChunks,
2877 importMapChunks: [],
2878 onHeaders: void 0,
2879 headers: null,
2880 resets: {
2881 font: {},
2882 dns: {},
2883 connect: { default: {}, anonymous: {}, credentials: {} },
2884 image: {},
2885 style: {}
2886 },
2887 charsetChunks: [],
2888 viewportChunks: [],
2889 hoistableChunks: [],
2890 preconnects: JSCompiler_object_inline_preconnects_1687,
2891 fontPreloads: JSCompiler_object_inline_fontPreloads_1688,
2892 highImagePreloads: JSCompiler_object_inline_highImagePreloads_1689,
2893 styles: JSCompiler_object_inline_styles_1690,
2894 bootstrapScripts: JSCompiler_object_inline_bootstrapScripts_1691,
2895 scripts: JSCompiler_object_inline_scripts_1692,
2896 bulkPreloads: JSCompiler_object_inline_bulkPreloads_1693,
2897 preloads: JSCompiler_object_inline_preloads_1694,
2898 nonce: { script: void 0, style: void 0 },
2899 stylesToHoist: !1,
2900 generateStaticMarkup: generateStaticMarkup
2901 };
2902}
2903function pushTextInstance(target, text, renderState, textEmbedded) {
2904 if (renderState.generateStaticMarkup)
2905 return target.push(escapeTextForBrowser(text)), !1;
2906 "" === text
2907 ? (target = textEmbedded)
2908 : (textEmbedded && target.push("\x3c!-- --\x3e"),
2909 target.push(escapeTextForBrowser(text)),
2910 (target = !0));
2911 return target;
2912}
2913function pushSegmentFinale(target, renderState, lastPushedText, textEmbedded) {
2914 renderState.generateStaticMarkup ||
2915 (lastPushedText && textEmbedded && target.push("\x3c!-- --\x3e"));
2916}
2917var bind = Function.prototype.bind,
2918 REACT_CLIENT_REFERENCE = Symbol.for("react.client.reference");
2919function getComponentNameFromType(type) {
2920 if (null == type) return null;
2921 if ("function" === typeof type)
2922 return type.$$typeof === REACT_CLIENT_REFERENCE
2923 ? null
2924 : type.displayName || type.name || null;
2925 if ("string" === typeof type) return type;
2926 switch (type) {
2927 case REACT_FRAGMENT_TYPE:
2928 return "Fragment";
2929 case REACT_PROFILER_TYPE:
2930 return "Profiler";
2931 case REACT_STRICT_MODE_TYPE:
2932 return "StrictMode";
2933 case REACT_SUSPENSE_TYPE:
2934 return "Suspense";
2935 case REACT_SUSPENSE_LIST_TYPE:
2936 return "SuspenseList";
2937 case REACT_ACTIVITY_TYPE:
2938 return "Activity";
2939 }
2940 if ("object" === typeof type)
2941 switch (type.$$typeof) {
2942 case REACT_PORTAL_TYPE:
2943 return "Portal";
2944 case REACT_CONTEXT_TYPE:
2945 return type.displayName || "Context";
2946 case REACT_CONSUMER_TYPE:
2947 return (type._context.displayName || "Context") + ".Consumer";
2948 case REACT_FORWARD_REF_TYPE:
2949 var innerType = type.render;
2950 type = type.displayName;
2951 type ||
2952 ((type = innerType.displayName || innerType.name || ""),
2953 (type = "" !== type ? "ForwardRef(" + type + ")" : "ForwardRef"));
2954 return type;
2955 case REACT_MEMO_TYPE:
2956 return (
2957 (innerType = type.displayName || null),
2958 null !== innerType
2959 ? innerType
2960 : getComponentNameFromType(type.type) || "Memo"
2961 );
2962 case REACT_LAZY_TYPE:
2963 innerType = type._payload;
2964 type = type._init;
2965 try {
2966 return getComponentNameFromType(type(innerType));
2967 } catch (x) {}
2968 }
2969 return null;
2970}
2971var emptyContextObject = {},
2972 currentActiveSnapshot = null;
2973function popToNearestCommonAncestor(prev, next) {
2974 if (prev !== next) {
2975 prev.context._currentValue2 = prev.parentValue;
2976 prev = prev.parent;
2977 var parentNext = next.parent;
2978 if (null === prev) {
2979 if (null !== parentNext)
2980 throw Error(
2981 "The stacks must reach the root at the same time. This is a bug in React."
2982 );
2983 } else {
2984 if (null === parentNext)
2985 throw Error(
2986 "The stacks must reach the root at the same time. This is a bug in React."
2987 );
2988 popToNearestCommonAncestor(prev, parentNext);
2989 }
2990 next.context._currentValue2 = next.value;
2991 }
2992}
2993function popAllPrevious(prev) {
2994 prev.context._currentValue2 = prev.parentValue;
2995 prev = prev.parent;
2996 null !== prev && popAllPrevious(prev);
2997}
2998function pushAllNext(next) {
2999 var parentNext = next.parent;
3000 null !== parentNext && pushAllNext(parentNext);
3001 next.context._currentValue2 = next.value;
3002}
3003function popPreviousToCommonLevel(prev, next) {
3004 prev.context._currentValue2 = prev.parentValue;
3005 prev = prev.parent;
3006 if (null === prev)
3007 throw Error(
3008 "The depth must equal at least at zero before reaching the root. This is a bug in React."
3009 );
3010 prev.depth === next.depth
3011 ? popToNearestCommonAncestor(prev, next)
3012 : popPreviousToCommonLevel(prev, next);
3013}
3014function popNextToCommonLevel(prev, next) {
3015 var parentNext = next.parent;
3016 if (null === parentNext)
3017 throw Error(
3018 "The depth must equal at least at zero before reaching the root. This is a bug in React."
3019 );
3020 prev.depth === parentNext.depth
3021 ? popToNearestCommonAncestor(prev, parentNext)
3022 : popNextToCommonLevel(prev, parentNext);
3023 next.context._currentValue2 = next.value;
3024}
3025function switchContext(newSnapshot) {
3026 var prev = currentActiveSnapshot;
3027 prev !== newSnapshot &&
3028 (null === prev
3029 ? pushAllNext(newSnapshot)
3030 : null === newSnapshot
3031 ? popAllPrevious(prev)
3032 : prev.depth === newSnapshot.depth
3033 ? popToNearestCommonAncestor(prev, newSnapshot)
3034 : prev.depth > newSnapshot.depth
3035 ? popPreviousToCommonLevel(prev, newSnapshot)
3036 : popNextToCommonLevel(prev, newSnapshot),
3037 (currentActiveSnapshot = newSnapshot));
3038}
3039var classComponentUpdater = {
3040 enqueueSetState: function (inst, payload) {
3041 inst = inst._reactInternals;
3042 null !== inst.queue && inst.queue.push(payload);
3043 },
3044 enqueueReplaceState: function (inst, payload) {
3045 inst = inst._reactInternals;
3046 inst.replace = !0;
3047 inst.queue = [payload];
3048 },
3049 enqueueForceUpdate: function () {}
3050 },
3051 emptyTreeContext = { id: 1, overflow: "" };
3052function pushTreeContext(baseContext, totalChildren, index) {
3053 var baseIdWithLeadingBit = baseContext.id;
3054 baseContext = baseContext.overflow;
3055 var baseLength = 32 - clz32(baseIdWithLeadingBit) - 1;
3056 baseIdWithLeadingBit &= ~(1 << baseLength);
3057 index += 1;
3058 var length = 32 - clz32(totalChildren) + baseLength;
3059 if (30 < length) {
3060 var numberOfOverflowBits = baseLength - (baseLength % 5);
3061 length = (
3062 baseIdWithLeadingBit &
3063 ((1 << numberOfOverflowBits) - 1)
3064 ).toString(32);
3065 baseIdWithLeadingBit >>= numberOfOverflowBits;
3066 baseLength -= numberOfOverflowBits;
3067 return {
3068 id:
3069 (1 << (32 - clz32(totalChildren) + baseLength)) |
3070 (index << baseLength) |
3071 baseIdWithLeadingBit,
3072 overflow: length + baseContext
3073 };
3074 }
3075 return {
3076 id: (1 << length) | (index << baseLength) | baseIdWithLeadingBit,
3077 overflow: baseContext
3078 };
3079}
3080var clz32 = Math.clz32 ? Math.clz32 : clz32Fallback,
3081 log = Math.log,
3082 LN2 = Math.LN2;
3083function clz32Fallback(x) {
3084 x >>>= 0;
3085 return 0 === x ? 32 : (31 - ((log(x) / LN2) | 0)) | 0;
3086}
3087function noop() {}
3088var SuspenseException = Error(
3089 "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`."
3090);
3091function trackUsedThenable(thenableState, thenable, index) {
3092 index = thenableState[index];
3093 void 0 === index
3094 ? thenableState.push(thenable)
3095 : index !== thenable && (thenable.then(noop, noop), (thenable = index));
3096 switch (thenable.status) {
3097 case "fulfilled":
3098 return thenable.value;
3099 case "rejected":
3100 throw thenable.reason;
3101 default:
3102 "string" === typeof thenable.status
3103 ? thenable.then(noop, noop)
3104 : ((thenableState = thenable),
3105 (thenableState.status = "pending"),
3106 thenableState.then(
3107 function (fulfilledValue) {
3108 if ("pending" === thenable.status) {
3109 var fulfilledThenable = thenable;
3110 fulfilledThenable.status = "fulfilled";
3111 fulfilledThenable.value = fulfilledValue;
3112 }
3113 },
3114 function (error) {
3115 if ("pending" === thenable.status) {
3116 var rejectedThenable = thenable;
3117 rejectedThenable.status = "rejected";
3118 rejectedThenable.reason = error;
3119 }
3120 }
3121 ));
3122 switch (thenable.status) {
3123 case "fulfilled":
3124 return thenable.value;
3125 case "rejected":
3126 throw thenable.reason;
3127 }
3128 suspendedThenable = thenable;
3129 throw SuspenseException;
3130 }
3131}
3132var suspendedThenable = null;
3133function getSuspendedThenable() {
3134 if (null === suspendedThenable)
3135 throw Error(
3136 "Expected a suspended thenable. This is a bug in React. Please file an issue."
3137 );
3138 var thenable = suspendedThenable;
3139 suspendedThenable = null;
3140 return thenable;
3141}
3142function is(x, y) {
3143 return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);
3144}
3145var objectIs = "function" === typeof Object.is ? Object.is : is,
3146 currentlyRenderingComponent = null,
3147 currentlyRenderingTask = null,
3148 currentlyRenderingRequest = null,
3149 currentlyRenderingKeyPath = null,
3150 firstWorkInProgressHook = null,
3151 workInProgressHook = null,
3152 isReRender = !1,
3153 didScheduleRenderPhaseUpdate = !1,
3154 localIdCounter = 0,
3155 actionStateCounter = 0,
3156 actionStateMatchingIndex = -1,
3157 thenableIndexCounter = 0,
3158 thenableState = null,
3159 renderPhaseUpdates = null,
3160 numberOfReRenders = 0;
3161function resolveCurrentlyRenderingComponent() {
3162 if (null === currentlyRenderingComponent)
3163 throw Error(
3164 "Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\n1. You might have mismatching versions of React and the renderer (such as React DOM)\n2. You might be breaking the Rules of Hooks\n3. You might have more than one copy of React in the same app\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem."
3165 );
3166 return currentlyRenderingComponent;
3167}
3168function createHook() {
3169 if (0 < numberOfReRenders)
3170 throw Error("Rendered more hooks than during the previous render");
3171 return { memoizedState: null, queue: null, next: null };
3172}
3173function createWorkInProgressHook() {
3174 null === workInProgressHook
3175 ? null === firstWorkInProgressHook
3176 ? ((isReRender = !1),
3177 (firstWorkInProgressHook = workInProgressHook = createHook()))
3178 : ((isReRender = !0), (workInProgressHook = firstWorkInProgressHook))
3179 : null === workInProgressHook.next
3180 ? ((isReRender = !1),
3181 (workInProgressHook = workInProgressHook.next = createHook()))
3182 : ((isReRender = !0), (workInProgressHook = workInProgressHook.next));
3183 return workInProgressHook;
3184}
3185function getThenableStateAfterSuspending() {
3186 var state = thenableState;
3187 thenableState = null;
3188 return state;
3189}
3190function resetHooksState() {
3191 currentlyRenderingKeyPath =
3192 currentlyRenderingRequest =
3193 currentlyRenderingTask =
3194 currentlyRenderingComponent =
3195 null;
3196 didScheduleRenderPhaseUpdate = !1;
3197 firstWorkInProgressHook = null;
3198 numberOfReRenders = 0;
3199 workInProgressHook = renderPhaseUpdates = null;
3200}
3201function basicStateReducer(state, action) {
3202 return "function" === typeof action ? action(state) : action;
3203}
3204function useReducer(reducer, initialArg, init) {
3205 currentlyRenderingComponent = resolveCurrentlyRenderingComponent();
3206 workInProgressHook = createWorkInProgressHook();
3207 if (isReRender) {
3208 var queue = workInProgressHook.queue;
3209 initialArg = queue.dispatch;
3210 if (
3211 null !== renderPhaseUpdates &&
3212 ((init = renderPhaseUpdates.get(queue)), void 0 !== init)
3213 ) {
3214 renderPhaseUpdates.delete(queue);
3215 queue = workInProgressHook.memoizedState;
3216 do (queue = reducer(queue, init.action)), (init = init.next);
3217 while (null !== init);
3218 workInProgressHook.memoizedState = queue;
3219 return [queue, initialArg];
3220 }
3221 return [workInProgressHook.memoizedState, initialArg];
3222 }
3223 reducer =
3224 reducer === basicStateReducer
3225 ? "function" === typeof initialArg
3226 ? initialArg()
3227 : initialArg
3228 : void 0 !== init
3229 ? init(initialArg)
3230 : initialArg;
3231 workInProgressHook.memoizedState = reducer;
3232 reducer = workInProgressHook.queue = { last: null, dispatch: null };
3233 reducer = reducer.dispatch = dispatchAction.bind(
3234 null,
3235 currentlyRenderingComponent,
3236 reducer
3237 );
3238 return [workInProgressHook.memoizedState, reducer];
3239}
3240function useMemo(nextCreate, deps) {
3241 currentlyRenderingComponent = resolveCurrentlyRenderingComponent();
3242 workInProgressHook = createWorkInProgressHook();
3243 deps = void 0 === deps ? null : deps;
3244 if (null !== workInProgressHook) {
3245 var prevState = workInProgressHook.memoizedState;
3246 if (null !== prevState && null !== deps) {
3247 var prevDeps = prevState[1];
3248 a: if (null === prevDeps) prevDeps = !1;
3249 else {
3250 for (var i = 0; i < prevDeps.length && i < deps.length; i++)
3251 if (!objectIs(deps[i], prevDeps[i])) {
3252 prevDeps = !1;
3253 break a;
3254 }
3255 prevDeps = !0;
3256 }
3257 if (prevDeps) return prevState[0];
3258 }
3259 }
3260 nextCreate = nextCreate();
3261 workInProgressHook.memoizedState = [nextCreate, deps];
3262 return nextCreate;
3263}
3264function dispatchAction(componentIdentity, queue, action) {
3265 if (25 <= numberOfReRenders)
3266 throw Error(
3267 "Too many re-renders. React limits the number of renders to prevent an infinite loop."
3268 );
3269 if (componentIdentity === currentlyRenderingComponent)
3270 if (
3271 ((didScheduleRenderPhaseUpdate = !0),
3272 (componentIdentity = { action: action, next: null }),
3273 null === renderPhaseUpdates && (renderPhaseUpdates = new Map()),
3274 (action = renderPhaseUpdates.get(queue)),
3275 void 0 === action)
3276 )
3277 renderPhaseUpdates.set(queue, componentIdentity);
3278 else {
3279 for (queue = action; null !== queue.next; ) queue = queue.next;
3280 queue.next = componentIdentity;
3281 }
3282}
3283function throwOnUseEffectEventCall() {
3284 throw Error(
3285 "A function wrapped in useEffectEvent can't be called during rendering."
3286 );
3287}
3288function unsupportedStartTransition() {
3289 throw Error("startTransition cannot be called during server rendering.");
3290}
3291function unsupportedSetOptimisticState() {
3292 throw Error("Cannot update optimistic state while rendering.");
3293}
3294function useActionState(action, initialState, permalink) {
3295 resolveCurrentlyRenderingComponent();
3296 var actionStateHookIndex = actionStateCounter++,
3297 request = currentlyRenderingRequest;
3298 if ("function" === typeof action.$$FORM_ACTION) {
3299 var nextPostbackStateKey = null,
3300 componentKeyPath = currentlyRenderingKeyPath;
3301 request = request.formState;
3302 var isSignatureEqual = action.$$IS_SIGNATURE_EQUAL;
3303 if (null !== request && "function" === typeof isSignatureEqual) {
3304 var postbackKey = request[1];
3305 isSignatureEqual.call(action, request[2], request[3]) &&
3306 ((nextPostbackStateKey =
3307 void 0 !== permalink
3308 ? "p" + permalink
3309 : "k" +
3310 murmurhash3_32_gc(
3311 JSON.stringify([componentKeyPath, null, actionStateHookIndex]),
3312 0
3313 )),
3314 postbackKey === nextPostbackStateKey &&
3315 ((actionStateMatchingIndex = actionStateHookIndex),
3316 (initialState = request[0])));
3317 }
3318 var boundAction = action.bind(null, initialState);
3319 action = function (payload) {
3320 boundAction(payload);
3321 };
3322 "function" === typeof boundAction.$$FORM_ACTION &&
3323 (action.$$FORM_ACTION = function (prefix) {
3324 prefix = boundAction.$$FORM_ACTION(prefix);
3325 void 0 !== permalink &&
3326 ((permalink += ""), (prefix.action = permalink));
3327 var formData = prefix.data;
3328 formData &&
3329 (null === nextPostbackStateKey &&
3330 (nextPostbackStateKey =
3331 void 0 !== permalink
3332 ? "p" + permalink
3333 : "k" +
3334 murmurhash3_32_gc(
3335 JSON.stringify([
3336 componentKeyPath,
3337 null,
3338 actionStateHookIndex
3339 ]),
3340 0
3341 )),
3342 formData.append("$ACTION_KEY", nextPostbackStateKey));
3343 return prefix;
3344 });
3345 return [initialState, action, !1];
3346 }
3347 var boundAction$22 = action.bind(null, initialState);
3348 return [
3349 initialState,
3350 function (payload) {
3351 boundAction$22(payload);
3352 },
3353 !1
3354 ];
3355}
3356function unwrapThenable(thenable) {
3357 var index = thenableIndexCounter;
3358 thenableIndexCounter += 1;
3359 null === thenableState && (thenableState = []);
3360 return trackUsedThenable(thenableState, thenable, index);
3361}
3362function unsupportedRefresh() {
3363 throw Error("Cache cannot be refreshed during server rendering.");
3364}
3365var HooksDispatcher = {
3366 readContext: function (context) {
3367 return context._currentValue2;
3368 },
3369 use: function (usable) {
3370 if (null !== usable && "object" === typeof usable) {
3371 if ("function" === typeof usable.then) return unwrapThenable(usable);
3372 if (usable.$$typeof === REACT_CONTEXT_TYPE)
3373 return usable._currentValue2;
3374 }
3375 throw Error("An unsupported type was passed to use(): " + String(usable));
3376 },
3377 useContext: function (context) {
3378 resolveCurrentlyRenderingComponent();
3379 return context._currentValue2;
3380 },
3381 useMemo: useMemo,
3382 useReducer: useReducer,
3383 useRef: function (initialValue) {
3384 currentlyRenderingComponent = resolveCurrentlyRenderingComponent();
3385 workInProgressHook = createWorkInProgressHook();
3386 var previousRef = workInProgressHook.memoizedState;
3387 return null === previousRef
3388 ? ((initialValue = { current: initialValue }),
3389 (workInProgressHook.memoizedState = initialValue))
3390 : previousRef;
3391 },
3392 useState: function (initialState) {
3393 return useReducer(basicStateReducer, initialState);
3394 },
3395 useInsertionEffect: noop,
3396 useLayoutEffect: noop,
3397 useCallback: function (callback, deps) {
3398 return useMemo(function () {
3399 return callback;
3400 }, deps);
3401 },
3402 useImperativeHandle: noop,
3403 useEffect: noop,
3404 useDebugValue: noop,
3405 useDeferredValue: function (value, initialValue) {
3406 resolveCurrentlyRenderingComponent();
3407 return void 0 !== initialValue ? initialValue : value;
3408 },
3409 useTransition: function () {
3410 resolveCurrentlyRenderingComponent();
3411 return [!1, unsupportedStartTransition];
3412 },
3413 useId: function () {
3414 var JSCompiler_inline_result = currentlyRenderingTask.treeContext;
3415 var overflow = JSCompiler_inline_result.overflow;
3416 JSCompiler_inline_result = JSCompiler_inline_result.id;
3417 JSCompiler_inline_result =
3418 (
3419 JSCompiler_inline_result &
3420 ~(1 << (32 - clz32(JSCompiler_inline_result) - 1))
3421 ).toString(32) + overflow;
3422 var resumableState = currentResumableState;
3423 if (null === resumableState)
3424 throw Error(
3425 "Invalid hook call. Hooks can only be called inside of the body of a function component."
3426 );
3427 overflow = localIdCounter++;
3428 JSCompiler_inline_result =
3429 "_" + resumableState.idPrefix + "R_" + JSCompiler_inline_result;
3430 0 < overflow && (JSCompiler_inline_result += "H" + overflow.toString(32));
3431 return JSCompiler_inline_result + "_";
3432 },
3433 useSyncExternalStore: function (subscribe, getSnapshot, getServerSnapshot) {
3434 if (void 0 === getServerSnapshot)
3435 throw Error(
3436 "Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering."
3437 );
3438 return getServerSnapshot();
3439 },
3440 useOptimistic: function (passthrough) {
3441 resolveCurrentlyRenderingComponent();
3442 return [passthrough, unsupportedSetOptimisticState];
3443 },
3444 useActionState: useActionState,
3445 useFormState: useActionState,
3446 useHostTransitionStatus: function () {
3447 resolveCurrentlyRenderingComponent();
3448 return sharedNotPendingObject;
3449 },
3450 useMemoCache: function (size) {
3451 for (var data = Array(size), i = 0; i < size; i++)
3452 data[i] = REACT_MEMO_CACHE_SENTINEL;
3453 return data;
3454 },
3455 useCacheRefresh: function () {
3456 return unsupportedRefresh;
3457 },
3458 useEffectEvent: function () {
3459 return throwOnUseEffectEventCall;
3460 }
3461 },
3462 currentResumableState = null,
3463 DefaultAsyncDispatcher = {
3464 getCacheForType: function () {
3465 throw Error("Not implemented.");
3466 },
3467 cacheSignal: function () {
3468 throw Error("Not implemented.");
3469 }
3470 },
3471 prefix,
3472 suffix;
3473function describeBuiltInComponentFrame(name) {
3474 if (void 0 === prefix)
3475 try {
3476 throw Error();
3477 } catch (x) {
3478 var match = x.stack.trim().match(/\n( *(at )?)/);
3479 prefix = (match && match[1]) || "";
3480 suffix =
3481 -1 < x.stack.indexOf("\n at")
3482 ? " (<anonymous>)"
3483 : -1 < x.stack.indexOf("@")
3484 ? "@unknown:0:0"
3485 : "";
3486 }
3487 return "\n" + prefix + name + suffix;
3488}
3489var reentry = !1;
3490function describeNativeComponentFrame(fn, construct) {
3491 if (!fn || reentry) return "";
3492 reentry = !0;
3493 var previousPrepareStackTrace = Error.prepareStackTrace;
3494 Error.prepareStackTrace = void 0;
3495 try {
3496 var RunInRootFrame = {
3497 DetermineComponentFrameRoot: function () {
3498 try {
3499 if (construct) {
3500 var Fake = function () {
3501 throw Error();
3502 };
3503 Object.defineProperty(Fake.prototype, "props", {
3504 set: function () {
3505 throw Error();
3506 }
3507 });
3508 if ("object" === typeof Reflect && Reflect.construct) {
3509 try {
3510 Reflect.construct(Fake, []);
3511 } catch (x) {
3512 var control = x;
3513 }
3514 Reflect.construct(fn, [], Fake);
3515 } else {
3516 try {
3517 Fake.call();
3518 } catch (x$24) {
3519 control = x$24;
3520 }
3521 fn.call(Fake.prototype);
3522 }
3523 } else {
3524 try {
3525 throw Error();
3526 } catch (x$25) {
3527 control = x$25;
3528 }
3529 (Fake = fn()) &&
3530 "function" === typeof Fake.catch &&
3531 Fake.catch(function () {});
3532 }
3533 } catch (sample) {
3534 if (sample && control && "string" === typeof sample.stack)
3535 return [sample.stack, control.stack];
3536 }
3537 return [null, null];
3538 }
3539 };
3540 RunInRootFrame.DetermineComponentFrameRoot.displayName =
3541 "DetermineComponentFrameRoot";
3542 var namePropDescriptor = Object.getOwnPropertyDescriptor(
3543 RunInRootFrame.DetermineComponentFrameRoot,
3544 "name"
3545 );
3546 namePropDescriptor &&
3547 namePropDescriptor.configurable &&
3548 Object.defineProperty(
3549 RunInRootFrame.DetermineComponentFrameRoot,
3550 "name",
3551 { value: "DetermineComponentFrameRoot" }
3552 );
3553 var _RunInRootFrame$Deter = RunInRootFrame.DetermineComponentFrameRoot(),
3554 sampleStack = _RunInRootFrame$Deter[0],
3555 controlStack = _RunInRootFrame$Deter[1];
3556 if (sampleStack && controlStack) {
3557 var sampleLines = sampleStack.split("\n"),
3558 controlLines = controlStack.split("\n");
3559 for (
3560 namePropDescriptor = RunInRootFrame = 0;
3561 RunInRootFrame < sampleLines.length &&
3562 !sampleLines[RunInRootFrame].includes("DetermineComponentFrameRoot");
3563
3564 )
3565 RunInRootFrame++;
3566 for (
3567 ;
3568 namePropDescriptor < controlLines.length &&
3569 !controlLines[namePropDescriptor].includes(
3570 "DetermineComponentFrameRoot"
3571 );
3572
3573 )
3574 namePropDescriptor++;
3575 if (
3576 RunInRootFrame === sampleLines.length ||
3577 namePropDescriptor === controlLines.length
3578 )
3579 for (
3580 RunInRootFrame = sampleLines.length - 1,
3581 namePropDescriptor = controlLines.length - 1;
3582 1 <= RunInRootFrame &&
3583 0 <= namePropDescriptor &&
3584 sampleLines[RunInRootFrame] !== controlLines[namePropDescriptor];
3585
3586 )
3587 namePropDescriptor--;
3588 for (
3589 ;
3590 1 <= RunInRootFrame && 0 <= namePropDescriptor;
3591 RunInRootFrame--, namePropDescriptor--
3592 )
3593 if (sampleLines[RunInRootFrame] !== controlLines[namePropDescriptor]) {
3594 if (1 !== RunInRootFrame || 1 !== namePropDescriptor) {
3595 do
3596 if (
3597 (RunInRootFrame--,
3598 namePropDescriptor--,
3599 0 > namePropDescriptor ||
3600 sampleLines[RunInRootFrame] !==
3601 controlLines[namePropDescriptor])
3602 ) {
3603 var frame =
3604 "\n" +
3605 sampleLines[RunInRootFrame].replace(" at new ", " at ");
3606 fn.displayName &&
3607 frame.includes("<anonymous>") &&
3608 (frame = frame.replace("<anonymous>", fn.displayName));
3609 return frame;
3610 }
3611 while (1 <= RunInRootFrame && 0 <= namePropDescriptor);
3612 }
3613 break;
3614 }
3615 }
3616 } finally {
3617 (reentry = !1), (Error.prepareStackTrace = previousPrepareStackTrace);
3618 }
3619 return (previousPrepareStackTrace = fn ? fn.displayName || fn.name : "")
3620 ? describeBuiltInComponentFrame(previousPrepareStackTrace)
3621 : "";
3622}
3623function describeComponentStackByType(type) {
3624 if ("string" === typeof type) return describeBuiltInComponentFrame(type);
3625 if ("function" === typeof type)
3626 return type.prototype && type.prototype.isReactComponent
3627 ? describeNativeComponentFrame(type, !0)
3628 : describeNativeComponentFrame(type, !1);
3629 if ("object" === typeof type && null !== type) {
3630 switch (type.$$typeof) {
3631 case REACT_FORWARD_REF_TYPE:
3632 return describeNativeComponentFrame(type.render, !1);
3633 case REACT_MEMO_TYPE:
3634 return describeNativeComponentFrame(type.type, !1);
3635 case REACT_LAZY_TYPE:
3636 var lazyComponent = type,
3637 payload = lazyComponent._payload;
3638 lazyComponent = lazyComponent._init;
3639 try {
3640 type = lazyComponent(payload);
3641 } catch (x) {
3642 return describeBuiltInComponentFrame("Lazy");
3643 }
3644 return describeComponentStackByType(type);
3645 }
3646 if ("string" === typeof type.name) {
3647 a: {
3648 payload = type.name;
3649 lazyComponent = type.env;
3650 var location = type.debugLocation;
3651 if (
3652 null != location &&
3653 ((type = Error.prepareStackTrace),
3654 (Error.prepareStackTrace = void 0),
3655 (location = location.stack),
3656 (Error.prepareStackTrace = type),
3657 location.startsWith("Error: react-stack-top-frame\n") &&
3658 (location = location.slice(29)),
3659 (type = location.indexOf("\n")),
3660 -1 !== type && (location = location.slice(type + 1)),
3661 (type = location.indexOf("react_stack_bottom_frame")),
3662 -1 !== type && (type = location.lastIndexOf("\n", type)),
3663 (type = -1 !== type ? (location = location.slice(0, type)) : ""),
3664 (location = type.lastIndexOf("\n")),
3665 (type = -1 === location ? type : type.slice(location + 1)),
3666 -1 !== type.indexOf(payload))
3667 ) {
3668 payload = "\n" + type;
3669 break a;
3670 }
3671 payload = describeBuiltInComponentFrame(
3672 payload + (lazyComponent ? " [" + lazyComponent + "]" : "")
3673 );
3674 }
3675 return payload;
3676 }
3677 }
3678 switch (type) {
3679 case REACT_SUSPENSE_LIST_TYPE:
3680 return describeBuiltInComponentFrame("SuspenseList");
3681 case REACT_SUSPENSE_TYPE:
3682 return describeBuiltInComponentFrame("Suspense");
3683 }
3684 return "";
3685}
3686function isEligibleForOutlining(request, boundary) {
3687 return (500 < boundary.byteSize || !1) && null === boundary.contentPreamble;
3688}
3689function defaultErrorHandler(error) {
3690 if (
3691 "object" === typeof error &&
3692 null !== error &&
3693 "string" === typeof error.environmentName
3694 ) {
3695 var JSCompiler_inline_result = error.environmentName;
3696 error = [error].slice(0);
3697 "string" === typeof error[0]
3698 ? error.splice(
3699 0,
3700 1,
3701 "[%s] " + error[0],
3702 " " + JSCompiler_inline_result + " "
3703 )
3704 : error.splice(0, 0, "[%s]", " " + JSCompiler_inline_result + " ");
3705 error.unshift(console);
3706 JSCompiler_inline_result = bind.apply(console.error, error);
3707 JSCompiler_inline_result();
3708 } else console.error(error);
3709 return null;
3710}
3711function RequestInstance(
3712 resumableState,
3713 renderState,
3714 rootFormatContext,
3715 progressiveChunkSize,
3716 onError,
3717 onAllReady,
3718 onShellReady,
3719 onShellError,
3720 onFatalError,
3721 onPostpone,
3722 formState
3723) {
3724 var abortSet = new Set();
3725 this.destination = null;
3726 this.flushScheduled = !1;
3727 this.resumableState = resumableState;
3728 this.renderState = renderState;
3729 this.rootFormatContext = rootFormatContext;
3730 this.progressiveChunkSize =
3731 void 0 === progressiveChunkSize ? 12800 : progressiveChunkSize;
3732 this.status = 10;
3733 this.fatalError = null;
3734 this.pendingRootTasks = this.allPendingTasks = this.nextSegmentId = 0;
3735 this.completedPreambleSegments = this.completedRootSegment = null;
3736 this.byteSize = 0;
3737 this.abortableTasks = abortSet;
3738 this.pingedTasks = [];
3739 this.clientRenderedBoundaries = [];
3740 this.completedBoundaries = [];
3741 this.partialBoundaries = [];
3742 this.trackedPostpones = null;
3743 this.onError = void 0 === onError ? defaultErrorHandler : onError;
3744 this.onPostpone = void 0 === onPostpone ? noop : onPostpone;
3745 this.onAllReady = void 0 === onAllReady ? noop : onAllReady;
3746 this.onShellReady = void 0 === onShellReady ? noop : onShellReady;
3747 this.onShellError = void 0 === onShellError ? noop : onShellError;
3748 this.onFatalError = void 0 === onFatalError ? noop : onFatalError;
3749 this.formState = void 0 === formState ? null : formState;
3750}
3751function createRequest(
3752 children,
3753 resumableState,
3754 renderState,
3755 rootFormatContext,
3756 progressiveChunkSize,
3757 onError,
3758 onAllReady,
3759 onShellReady,
3760 onShellError,
3761 onFatalError,
3762 onPostpone,
3763 formState
3764) {
3765 resumableState = new RequestInstance(
3766 resumableState,
3767 renderState,
3768 rootFormatContext,
3769 progressiveChunkSize,
3770 onError,
3771 onAllReady,
3772 onShellReady,
3773 onShellError,
3774 onFatalError,
3775 onPostpone,
3776 formState
3777 );
3778 renderState = createPendingSegment(
3779 resumableState,
3780 0,
3781 null,
3782 rootFormatContext,
3783 !1,
3784 !1
3785 );
3786 renderState.parentFlushed = !0;
3787 children = createRenderTask(
3788 resumableState,
3789 null,
3790 children,
3791 -1,
3792 null,
3793 renderState,
3794 null,
3795 null,
3796 resumableState.abortableTasks,
3797 null,
3798 rootFormatContext,
3799 null,
3800 emptyTreeContext,
3801 null,
3802 null
3803 );
3804 pushComponentStack(children);
3805 resumableState.pingedTasks.push(children);
3806 return resumableState;
3807}
3808var currentRequest = null;
3809function pingTask(request, task) {
3810 request.pingedTasks.push(task);
3811 1 === request.pingedTasks.length &&
3812 ((request.flushScheduled = null !== request.destination),
3813 performWork(request));
3814}
3815function createSuspenseBoundary(
3816 request,
3817 row,
3818 fallbackAbortableTasks,
3819 contentPreamble,
3820 fallbackPreamble
3821) {
3822 fallbackAbortableTasks = {
3823 status: 0,
3824 rootSegmentID: -1,
3825 parentFlushed: !1,
3826 pendingTasks: 0,
3827 row: row,
3828 completedSegments: [],
3829 byteSize: 0,
3830 fallbackAbortableTasks: fallbackAbortableTasks,
3831 errorDigest: null,
3832 contentState: createHoistableState(),
3833 fallbackState: createHoistableState(),
3834 contentPreamble: contentPreamble,
3835 fallbackPreamble: fallbackPreamble,
3836 trackedContentKeyPath: null,
3837 trackedFallbackNode: null
3838 };
3839 null !== row &&
3840 (row.pendingTasks++,
3841 (contentPreamble = row.boundaries),
3842 null !== contentPreamble &&
3843 (request.allPendingTasks++,
3844 fallbackAbortableTasks.pendingTasks++,
3845 contentPreamble.push(fallbackAbortableTasks)),
3846 (request = row.inheritedHoistables),
3847 null !== request &&
3848 hoistHoistables(fallbackAbortableTasks.contentState, request));
3849 return fallbackAbortableTasks;
3850}
3851function createRenderTask(
3852 request,
3853 thenableState,
3854 node,
3855 childIndex,
3856 blockedBoundary,
3857 blockedSegment,
3858 blockedPreamble,
3859 hoistableState,
3860 abortSet,
3861 keyPath,
3862 formatContext,
3863 context,
3864 treeContext,
3865 row,
3866 componentStack
3867) {
3868 request.allPendingTasks++;
3869 null === blockedBoundary
3870 ? request.pendingRootTasks++
3871 : blockedBoundary.pendingTasks++;
3872 null !== row && row.pendingTasks++;
3873 var task = {
3874 replay: null,
3875 node: node,
3876 childIndex: childIndex,
3877 ping: function () {
3878 return pingTask(request, task);
3879 },
3880 blockedBoundary: blockedBoundary,
3881 blockedSegment: blockedSegment,
3882 blockedPreamble: blockedPreamble,
3883 hoistableState: hoistableState,
3884 abortSet: abortSet,
3885 keyPath: keyPath,
3886 formatContext: formatContext,
3887 context: context,
3888 treeContext: treeContext,
3889 row: row,
3890 componentStack: componentStack,
3891 thenableState: thenableState
3892 };
3893 abortSet.add(task);
3894 return task;
3895}
3896function createReplayTask(
3897 request,
3898 thenableState,
3899 replay,
3900 node,
3901 childIndex,
3902 blockedBoundary,
3903 hoistableState,
3904 abortSet,
3905 keyPath,
3906 formatContext,
3907 context,
3908 treeContext,
3909 row,
3910 componentStack
3911) {
3912 request.allPendingTasks++;
3913 null === blockedBoundary
3914 ? request.pendingRootTasks++
3915 : blockedBoundary.pendingTasks++;
3916 null !== row && row.pendingTasks++;
3917 replay.pendingTasks++;
3918 var task = {
3919 replay: replay,
3920 node: node,
3921 childIndex: childIndex,
3922 ping: function () {
3923 return pingTask(request, task);
3924 },
3925 blockedBoundary: blockedBoundary,
3926 blockedSegment: null,
3927 blockedPreamble: null,
3928 hoistableState: hoistableState,
3929 abortSet: abortSet,
3930 keyPath: keyPath,
3931 formatContext: formatContext,
3932 context: context,
3933 treeContext: treeContext,
3934 row: row,
3935 componentStack: componentStack,
3936 thenableState: thenableState
3937 };
3938 abortSet.add(task);
3939 return task;
3940}
3941function createPendingSegment(
3942 request,
3943 index,
3944 boundary,
3945 parentFormatContext,
3946 lastPushedText,
3947 textEmbedded
3948) {
3949 return {
3950 status: 0,
3951 parentFlushed: !1,
3952 id: -1,
3953 index: index,
3954 chunks: [],
3955 children: [],
3956 preambleChildren: [],
3957 parentFormatContext: parentFormatContext,
3958 boundary: boundary,
3959 lastPushedText: lastPushedText,
3960 textEmbedded: textEmbedded
3961 };
3962}
3963function pushComponentStack(task) {
3964 var node = task.node;
3965 if ("object" === typeof node && null !== node)
3966 switch (node.$$typeof) {
3967 case REACT_ELEMENT_TYPE:
3968 task.componentStack = { parent: task.componentStack, type: node.type };
3969 }
3970}
3971function replaceSuspenseComponentStackWithSuspenseFallbackStack(
3972 componentStack
3973) {
3974 return null === componentStack
3975 ? null
3976 : { parent: componentStack.parent, type: "Suspense Fallback" };
3977}
3978function getThrownInfo(node$jscomp$0) {
3979 var errorInfo = {};
3980 node$jscomp$0 &&
3981 Object.defineProperty(errorInfo, "componentStack", {
3982 configurable: !0,
3983 enumerable: !0,
3984 get: function () {
3985 try {
3986 var info = "",
3987 node = node$jscomp$0;
3988 do
3989 (info += describeComponentStackByType(node.type)),
3990 (node = node.parent);
3991 while (node);
3992 var JSCompiler_inline_result = info;
3993 } catch (x) {
3994 JSCompiler_inline_result =
3995 "\nError generating stack: " + x.message + "\n" + x.stack;
3996 }
3997 Object.defineProperty(errorInfo, "componentStack", {
3998 value: JSCompiler_inline_result
3999 });
4000 return JSCompiler_inline_result;
4001 }
4002 });
4003 return errorInfo;
4004}
4005function logRecoverableError(request, error, errorInfo) {
4006 request = request.onError;
4007 error = request(error, errorInfo);
4008 if (null == error || "string" === typeof error) return error;
4009}
4010function fatalError(request, error) {
4011 var onShellError = request.onShellError,
4012 onFatalError = request.onFatalError;
4013 onShellError(error);
4014 onFatalError(error);
4015 null !== request.destination
4016 ? ((request.status = 14), request.destination.destroy(error))
4017 : ((request.status = 13), (request.fatalError = error));
4018}
4019function finishSuspenseListRow(request, row) {
4020 unblockSuspenseListRow(request, row.next, row.hoistables);
4021}
4022function unblockSuspenseListRow(request, unblockedRow, inheritedHoistables) {
4023 for (; null !== unblockedRow; ) {
4024 null !== inheritedHoistables &&
4025 (hoistHoistables(unblockedRow.hoistables, inheritedHoistables),
4026 (unblockedRow.inheritedHoistables = inheritedHoistables));
4027 var unblockedBoundaries = unblockedRow.boundaries;
4028 if (null !== unblockedBoundaries) {
4029 unblockedRow.boundaries = null;
4030 for (var i = 0; i < unblockedBoundaries.length; i++) {
4031 var unblockedBoundary = unblockedBoundaries[i];
4032 null !== inheritedHoistables &&
4033 hoistHoistables(unblockedBoundary.contentState, inheritedHoistables);
4034 finishedTask(request, unblockedBoundary, null, null);
4035 }
4036 }
4037 unblockedRow.pendingTasks--;
4038 if (0 < unblockedRow.pendingTasks) break;
4039 inheritedHoistables = unblockedRow.hoistables;
4040 unblockedRow = unblockedRow.next;
4041 }
4042}
4043function tryToResolveTogetherRow(request, togetherRow) {
4044 var boundaries = togetherRow.boundaries;
4045 if (null !== boundaries && togetherRow.pendingTasks === boundaries.length) {
4046 for (var allCompleteAndInlinable = !0, i = 0; i < boundaries.length; i++) {
4047 var rowBoundary = boundaries[i];
4048 if (
4049 1 !== rowBoundary.pendingTasks ||
4050 rowBoundary.parentFlushed ||
4051 isEligibleForOutlining(request, rowBoundary)
4052 ) {
4053 allCompleteAndInlinable = !1;
4054 break;
4055 }
4056 }
4057 allCompleteAndInlinable &&
4058 unblockSuspenseListRow(request, togetherRow, togetherRow.hoistables);
4059 }
4060}
4061function createSuspenseListRow(previousRow) {
4062 var newRow = {
4063 pendingTasks: 1,
4064 boundaries: null,
4065 hoistables: createHoistableState(),
4066 inheritedHoistables: null,
4067 together: !1,
4068 next: null
4069 };
4070 null !== previousRow &&
4071 0 < previousRow.pendingTasks &&
4072 (newRow.pendingTasks++,
4073 (newRow.boundaries = []),
4074 (previousRow.next = newRow));
4075 return newRow;
4076}
4077function renderSuspenseListRows(request, task, keyPath, rows, revealOrder) {
4078 var prevKeyPath = task.keyPath,
4079 prevTreeContext = task.treeContext,
4080 prevRow = task.row;
4081 task.keyPath = keyPath;
4082 keyPath = rows.length;
4083 var previousSuspenseListRow = null;
4084 if (null !== task.replay) {
4085 var resumeSlots = task.replay.slots;
4086 if (null !== resumeSlots && "object" === typeof resumeSlots)
4087 for (var n = 0; n < keyPath; n++) {
4088 var i =
4089 "backwards" !== revealOrder &&
4090 "unstable_legacy-backwards" !== revealOrder
4091 ? n
4092 : keyPath - 1 - n,
4093 node = rows[i];
4094 task.row = previousSuspenseListRow = createSuspenseListRow(
4095 previousSuspenseListRow
4096 );
4097 task.treeContext = pushTreeContext(prevTreeContext, keyPath, i);
4098 var resumeSegmentID = resumeSlots[i];
4099 "number" === typeof resumeSegmentID
4100 ? (resumeNode(request, task, resumeSegmentID, node, i),
4101 delete resumeSlots[i])
4102 : renderNode(request, task, node, i);
4103 0 === --previousSuspenseListRow.pendingTasks &&
4104 finishSuspenseListRow(request, previousSuspenseListRow);
4105 }
4106 else
4107 for (resumeSlots = 0; resumeSlots < keyPath; resumeSlots++)
4108 (n =
4109 "backwards" !== revealOrder &&
4110 "unstable_legacy-backwards" !== revealOrder
4111 ? resumeSlots
4112 : keyPath - 1 - resumeSlots),
4113 (i = rows[n]),
4114 (task.row = previousSuspenseListRow =
4115 createSuspenseListRow(previousSuspenseListRow)),
4116 (task.treeContext = pushTreeContext(prevTreeContext, keyPath, n)),
4117 renderNode(request, task, i, n),
4118 0 === --previousSuspenseListRow.pendingTasks &&
4119 finishSuspenseListRow(request, previousSuspenseListRow);
4120 } else if (
4121 "backwards" !== revealOrder &&
4122 "unstable_legacy-backwards" !== revealOrder
4123 )
4124 for (revealOrder = 0; revealOrder < keyPath; revealOrder++)
4125 (resumeSlots = rows[revealOrder]),
4126 (task.row = previousSuspenseListRow =
4127 createSuspenseListRow(previousSuspenseListRow)),
4128 (task.treeContext = pushTreeContext(
4129 prevTreeContext,
4130 keyPath,
4131 revealOrder
4132 )),
4133 renderNode(request, task, resumeSlots, revealOrder),
4134 0 === --previousSuspenseListRow.pendingTasks &&
4135 finishSuspenseListRow(request, previousSuspenseListRow);
4136 else {
4137 revealOrder = task.blockedSegment;
4138 resumeSlots = revealOrder.children.length;
4139 n = revealOrder.chunks.length;
4140 for (i = keyPath - 1; 0 <= i; i--) {
4141 node = rows[i];
4142 task.row = previousSuspenseListRow = createSuspenseListRow(
4143 previousSuspenseListRow
4144 );
4145 task.treeContext = pushTreeContext(prevTreeContext, keyPath, i);
4146 resumeSegmentID = createPendingSegment(
4147 request,
4148 n,
4149 null,
4150 task.formatContext,
4151 0 === i ? revealOrder.lastPushedText : !0,
4152 !0
4153 );
4154 revealOrder.children.splice(resumeSlots, 0, resumeSegmentID);
4155 task.blockedSegment = resumeSegmentID;
4156 try {
4157 renderNode(request, task, node, i),
4158 pushSegmentFinale(
4159 resumeSegmentID.chunks,
4160 request.renderState,
4161 resumeSegmentID.lastPushedText,
4162 resumeSegmentID.textEmbedded
4163 ),
4164 (resumeSegmentID.status = 1),
4165 0 === --previousSuspenseListRow.pendingTasks &&
4166 finishSuspenseListRow(request, previousSuspenseListRow);
4167 } catch (thrownValue) {
4168 throw (
4169 ((resumeSegmentID.status = 12 === request.status ? 3 : 4),
4170 thrownValue)
4171 );
4172 }
4173 }
4174 task.blockedSegment = revealOrder;
4175 revealOrder.lastPushedText = !1;
4176 }
4177 null !== prevRow &&
4178 null !== previousSuspenseListRow &&
4179 0 < previousSuspenseListRow.pendingTasks &&
4180 (prevRow.pendingTasks++, (previousSuspenseListRow.next = prevRow));
4181 task.treeContext = prevTreeContext;
4182 task.row = prevRow;
4183 task.keyPath = prevKeyPath;
4184}
4185function renderWithHooks(request, task, keyPath, Component, props, secondArg) {
4186 var prevThenableState = task.thenableState;
4187 task.thenableState = null;
4188 currentlyRenderingComponent = {};
4189 currentlyRenderingTask = task;
4190 currentlyRenderingRequest = request;
4191 currentlyRenderingKeyPath = keyPath;
4192 actionStateCounter = localIdCounter = 0;
4193 actionStateMatchingIndex = -1;
4194 thenableIndexCounter = 0;
4195 thenableState = prevThenableState;
4196 for (request = Component(props, secondArg); didScheduleRenderPhaseUpdate; )
4197 (didScheduleRenderPhaseUpdate = !1),
4198 (actionStateCounter = localIdCounter = 0),
4199 (actionStateMatchingIndex = -1),
4200 (thenableIndexCounter = 0),
4201 (numberOfReRenders += 1),
4202 (workInProgressHook = null),
4203 (request = Component(props, secondArg));
4204 resetHooksState();
4205 return request;
4206}
4207function finishFunctionComponent(
4208 request,
4209 task,
4210 keyPath,
4211 children,
4212 hasId,
4213 actionStateCount,
4214 actionStateMatchingIndex
4215) {
4216 var didEmitActionStateMarkers = !1;
4217 if (0 !== actionStateCount && null !== request.formState) {
4218 var segment = task.blockedSegment;
4219 if (null !== segment) {
4220 didEmitActionStateMarkers = !0;
4221 segment = segment.chunks;
4222 for (var i = 0; i < actionStateCount; i++)
4223 i === actionStateMatchingIndex
4224 ? segment.push("\x3c!--F!--\x3e")
4225 : segment.push("\x3c!--F--\x3e");
4226 }
4227 }
4228 actionStateCount = task.keyPath;
4229 task.keyPath = keyPath;
4230 hasId
4231 ? ((keyPath = task.treeContext),
4232 (task.treeContext = pushTreeContext(keyPath, 1, 0)),
4233 renderNode(request, task, children, -1),
4234 (task.treeContext = keyPath))
4235 : didEmitActionStateMarkers
4236 ? renderNode(request, task, children, -1)
4237 : renderNodeDestructive(request, task, children, -1);
4238 task.keyPath = actionStateCount;
4239}
4240function renderElement(request, task, keyPath, type, props, ref) {
4241 if ("function" === typeof type)
4242 if (type.prototype && type.prototype.isReactComponent) {
4243 var newProps = props;
4244 if ("ref" in props) {
4245 newProps = {};
4246 for (var propName in props)
4247 "ref" !== propName && (newProps[propName] = props[propName]);
4248 }
4249 var defaultProps = type.defaultProps;
4250 if (defaultProps) {
4251 newProps === props && (newProps = assign({}, newProps, props));
4252 for (var propName$43 in defaultProps)
4253 void 0 === newProps[propName$43] &&
4254 (newProps[propName$43] = defaultProps[propName$43]);
4255 }
4256 props = newProps;
4257 newProps = emptyContextObject;
4258 defaultProps = type.contextType;
4259 "object" === typeof defaultProps &&
4260 null !== defaultProps &&
4261 (newProps = defaultProps._currentValue2);
4262 newProps = new type(props, newProps);
4263 var initialState = void 0 !== newProps.state ? newProps.state : null;
4264 newProps.updater = classComponentUpdater;
4265 newProps.props = props;
4266 newProps.state = initialState;
4267 defaultProps = { queue: [], replace: !1 };
4268 newProps._reactInternals = defaultProps;
4269 ref = type.contextType;
4270 newProps.context =
4271 "object" === typeof ref && null !== ref
4272 ? ref._currentValue2
4273 : emptyContextObject;
4274 ref = type.getDerivedStateFromProps;
4275 "function" === typeof ref &&
4276 ((ref = ref(props, initialState)),
4277 (initialState =
4278 null === ref || void 0 === ref
4279 ? initialState
4280 : assign({}, initialState, ref)),
4281 (newProps.state = initialState));
4282 if (
4283 "function" !== typeof type.getDerivedStateFromProps &&
4284 "function" !== typeof newProps.getSnapshotBeforeUpdate &&
4285 ("function" === typeof newProps.UNSAFE_componentWillMount ||
4286 "function" === typeof newProps.componentWillMount)
4287 )
4288 if (
4289 ((type = newProps.state),
4290 "function" === typeof newProps.componentWillMount &&
4291 newProps.componentWillMount(),
4292 "function" === typeof newProps.UNSAFE_componentWillMount &&
4293 newProps.UNSAFE_componentWillMount(),
4294 type !== newProps.state &&
4295 classComponentUpdater.enqueueReplaceState(
4296 newProps,
4297 newProps.state,
4298 null
4299 ),
4300 null !== defaultProps.queue && 0 < defaultProps.queue.length)
4301 )
4302 if (
4303 ((type = defaultProps.queue),
4304 (ref = defaultProps.replace),
4305 (defaultProps.queue = null),
4306 (defaultProps.replace = !1),
4307 ref && 1 === type.length)
4308 )
4309 newProps.state = type[0];
4310 else {
4311 defaultProps = ref ? type[0] : newProps.state;
4312 initialState = !0;
4313 for (ref = ref ? 1 : 0; ref < type.length; ref++)
4314 (propName$43 = type[ref]),
4315 (propName$43 =
4316 "function" === typeof propName$43
4317 ? propName$43.call(newProps, defaultProps, props, void 0)
4318 : propName$43),
4319 null != propName$43 &&
4320 (initialState
4321 ? ((initialState = !1),
4322 (defaultProps = assign({}, defaultProps, propName$43)))
4323 : assign(defaultProps, propName$43));
4324 newProps.state = defaultProps;
4325 }
4326 else defaultProps.queue = null;
4327 type = newProps.render();
4328 if (12 === request.status) throw null;
4329 props = task.keyPath;
4330 task.keyPath = keyPath;
4331 renderNodeDestructive(request, task, type, -1);
4332 task.keyPath = props;
4333 } else {
4334 type = renderWithHooks(request, task, keyPath, type, props, void 0);
4335 if (12 === request.status) throw null;
4336 finishFunctionComponent(
4337 request,
4338 task,
4339 keyPath,
4340 type,
4341 0 !== localIdCounter,
4342 actionStateCounter,
4343 actionStateMatchingIndex
4344 );
4345 }
4346 else if ("string" === typeof type)
4347 if (((newProps = task.blockedSegment), null === newProps))
4348 (newProps = props.children),
4349 (defaultProps = task.formatContext),
4350 (initialState = task.keyPath),
4351 (task.formatContext = getChildFormatContext(defaultProps, type, props)),
4352 (task.keyPath = keyPath),
4353 renderNode(request, task, newProps, -1),
4354 (task.formatContext = defaultProps),
4355 (task.keyPath = initialState);
4356 else {
4357 initialState = pushStartInstance(
4358 newProps.chunks,
4359 type,
4360 props,
4361 request.resumableState,
4362 request.renderState,
4363 task.blockedPreamble,
4364 task.hoistableState,
4365 task.formatContext,
4366 newProps.lastPushedText
4367 );
4368 newProps.lastPushedText = !1;
4369 defaultProps = task.formatContext;
4370 ref = task.keyPath;
4371 task.keyPath = keyPath;
4372 if (
4373 3 ===
4374 (task.formatContext = getChildFormatContext(defaultProps, type, props))
4375 .insertionMode
4376 ) {
4377 keyPath = createPendingSegment(
4378 request,
4379 0,
4380 null,
4381 task.formatContext,
4382 !1,
4383 !1
4384 );
4385 newProps.preambleChildren.push(keyPath);
4386 task.blockedSegment = keyPath;
4387 try {
4388 (keyPath.status = 6),
4389 renderNode(request, task, initialState, -1),
4390 pushSegmentFinale(
4391 keyPath.chunks,
4392 request.renderState,
4393 keyPath.lastPushedText,
4394 keyPath.textEmbedded
4395 ),
4396 (keyPath.status = 1);
4397 } finally {
4398 task.blockedSegment = newProps;
4399 }
4400 } else renderNode(request, task, initialState, -1);
4401 task.formatContext = defaultProps;
4402 task.keyPath = ref;
4403 a: {
4404 task = newProps.chunks;
4405 request = request.resumableState;
4406 switch (type) {
4407 case "title":
4408 case "style":
4409 case "script":
4410 case "area":
4411 case "base":
4412 case "br":
4413 case "col":
4414 case "embed":
4415 case "hr":
4416 case "img":
4417 case "input":
4418 case "keygen":
4419 case "link":
4420 case "meta":
4421 case "param":
4422 case "source":
4423 case "track":
4424 case "wbr":
4425 break a;
4426 case "body":
4427 if (1 >= defaultProps.insertionMode) {
4428 request.hasBody = !0;
4429 break a;
4430 }
4431 break;
4432 case "html":
4433 if (0 === defaultProps.insertionMode) {
4434 request.hasHtml = !0;
4435 break a;
4436 }
4437 break;
4438 case "head":
4439 if (1 >= defaultProps.insertionMode) break a;
4440 }
4441 task.push(endChunkForTag(type));
4442 }
4443 newProps.lastPushedText = !1;
4444 }
4445 else {
4446 switch (type) {
4447 case REACT_LEGACY_HIDDEN_TYPE:
4448 case REACT_STRICT_MODE_TYPE:
4449 case REACT_PROFILER_TYPE:
4450 case REACT_FRAGMENT_TYPE:
4451 type = task.keyPath;
4452 task.keyPath = keyPath;
4453 renderNodeDestructive(request, task, props.children, -1);
4454 task.keyPath = type;
4455 return;
4456 case REACT_ACTIVITY_TYPE:
4457 type = task.blockedSegment;
4458 null === type
4459 ? "hidden" !== props.mode &&
4460 ((type = task.keyPath),
4461 (task.keyPath = keyPath),
4462 renderNode(request, task, props.children, -1),
4463 (task.keyPath = type))
4464 : "hidden" !== props.mode &&
4465 (request.renderState.generateStaticMarkup ||
4466 type.chunks.push("\x3c!--&--\x3e"),
4467 (type.lastPushedText = !1),
4468 (newProps = task.keyPath),
4469 (task.keyPath = keyPath),
4470 renderNode(request, task, props.children, -1),
4471 (task.keyPath = newProps),
4472 request.renderState.generateStaticMarkup ||
4473 type.chunks.push("\x3c!--/&--\x3e"),
4474 (type.lastPushedText = !1));
4475 return;
4476 case REACT_SUSPENSE_LIST_TYPE:
4477 a: {
4478 type = props.children;
4479 props = props.revealOrder;
4480 if (
4481 "forwards" === props ||
4482 "backwards" === props ||
4483 "unstable_legacy-backwards" === props
4484 ) {
4485 if (isArrayImpl(type)) {
4486 renderSuspenseListRows(request, task, keyPath, type, props);
4487 break a;
4488 }
4489 if ((newProps = getIteratorFn(type)))
4490 if ((newProps = newProps.call(type))) {
4491 defaultProps = newProps.next();
4492 if (!defaultProps.done) {
4493 do defaultProps = newProps.next();
4494 while (!defaultProps.done);
4495 renderSuspenseListRows(request, task, keyPath, type, props);
4496 }
4497 break a;
4498 }
4499 }
4500 "together" === props
4501 ? ((props = task.keyPath),
4502 (newProps = task.row),
4503 (defaultProps = task.row = createSuspenseListRow(null)),
4504 (defaultProps.boundaries = []),
4505 (defaultProps.together = !0),
4506 (task.keyPath = keyPath),
4507 renderNodeDestructive(request, task, type, -1),
4508 0 === --defaultProps.pendingTasks &&
4509 finishSuspenseListRow(request, defaultProps),
4510 (task.keyPath = props),
4511 (task.row = newProps),
4512 null !== newProps &&
4513 0 < defaultProps.pendingTasks &&
4514 (newProps.pendingTasks++, (defaultProps.next = newProps)))
4515 : ((props = task.keyPath),
4516 (task.keyPath = keyPath),
4517 renderNodeDestructive(request, task, type, -1),
4518 (task.keyPath = props));
4519 }
4520 return;
4521 case REACT_VIEW_TRANSITION_TYPE:
4522 case REACT_SCOPE_TYPE:
4523 throw Error("ReactDOMServer does not yet support scope components.");
4524 case REACT_SUSPENSE_TYPE:
4525 a: if (null !== task.replay) {
4526 type = task.keyPath;
4527 newProps = task.formatContext;
4528 defaultProps = task.row;
4529 task.keyPath = keyPath;
4530 task.formatContext = getSuspenseContentFormatContext(
4531 request.resumableState,
4532 newProps
4533 );
4534 task.row = null;
4535 keyPath = props.children;
4536 try {
4537 renderNode(request, task, keyPath, -1);
4538 } finally {
4539 (task.keyPath = type),
4540 (task.formatContext = newProps),
4541 (task.row = defaultProps);
4542 }
4543 } else {
4544 type = task.keyPath;
4545 ref = task.formatContext;
4546 var prevRow = task.row,
4547 parentBoundary = task.blockedBoundary;
4548 propName$43 = task.blockedPreamble;
4549 var parentHoistableState = task.hoistableState;
4550 propName = task.blockedSegment;
4551 var fallback = props.fallback;
4552 props = props.children;
4553 var fallbackAbortSet = new Set();
4554 var newBoundary = createSuspenseBoundary(
4555 request,
4556 task.row,
4557 fallbackAbortSet,
4558 null,
4559 null
4560 );
4561 null !== request.trackedPostpones &&
4562 (newBoundary.trackedContentKeyPath = keyPath);
4563 var boundarySegment = createPendingSegment(
4564 request,
4565 propName.chunks.length,
4566 newBoundary,
4567 task.formatContext,
4568 !1,
4569 !1
4570 );
4571 propName.children.push(boundarySegment);
4572 propName.lastPushedText = !1;
4573 var contentRootSegment = createPendingSegment(
4574 request,
4575 0,
4576 null,
4577 task.formatContext,
4578 !1,
4579 !1
4580 );
4581 contentRootSegment.parentFlushed = !0;
4582 if (null !== request.trackedPostpones) {
4583 newProps = task.componentStack;
4584 defaultProps = [keyPath[0], "Suspense Fallback", keyPath[2]];
4585 initialState = [defaultProps[1], defaultProps[2], [], null];
4586 request.trackedPostpones.workingMap.set(defaultProps, initialState);
4587 newBoundary.trackedFallbackNode = initialState;
4588 task.blockedSegment = boundarySegment;
4589 task.blockedPreamble = newBoundary.fallbackPreamble;
4590 task.keyPath = defaultProps;
4591 task.formatContext = getSuspenseFallbackFormatContext(
4592 request.resumableState,
4593 ref
4594 );
4595 task.componentStack =
4596 replaceSuspenseComponentStackWithSuspenseFallbackStack(newProps);
4597 boundarySegment.status = 6;
4598 try {
4599 renderNode(request, task, fallback, -1),
4600 pushSegmentFinale(
4601 boundarySegment.chunks,
4602 request.renderState,
4603 boundarySegment.lastPushedText,
4604 boundarySegment.textEmbedded
4605 ),
4606 (boundarySegment.status = 1);
4607 } catch (thrownValue) {
4608 throw (
4609 ((boundarySegment.status = 12 === request.status ? 3 : 4),
4610 thrownValue)
4611 );
4612 } finally {
4613 (task.blockedSegment = propName),
4614 (task.blockedPreamble = propName$43),
4615 (task.keyPath = type),
4616 (task.formatContext = ref);
4617 }
4618 task = createRenderTask(
4619 request,
4620 null,
4621 props,
4622 -1,
4623 newBoundary,
4624 contentRootSegment,
4625 newBoundary.contentPreamble,
4626 newBoundary.contentState,
4627 task.abortSet,
4628 keyPath,
4629 getSuspenseContentFormatContext(
4630 request.resumableState,
4631 task.formatContext
4632 ),
4633 task.context,
4634 task.treeContext,
4635 null,
4636 newProps
4637 );
4638 pushComponentStack(task);
4639 request.pingedTasks.push(task);
4640 } else {
4641 task.blockedBoundary = newBoundary;
4642 task.blockedPreamble = newBoundary.contentPreamble;
4643 task.hoistableState = newBoundary.contentState;
4644 task.blockedSegment = contentRootSegment;
4645 task.keyPath = keyPath;
4646 task.formatContext = getSuspenseContentFormatContext(
4647 request.resumableState,
4648 ref
4649 );
4650 task.row = null;
4651 contentRootSegment.status = 6;
4652 try {
4653 if (
4654 (renderNode(request, task, props, -1),
4655 pushSegmentFinale(
4656 contentRootSegment.chunks,
4657 request.renderState,
4658 contentRootSegment.lastPushedText,
4659 contentRootSegment.textEmbedded
4660 ),
4661 (contentRootSegment.status = 1),
4662 queueCompletedSegment(newBoundary, contentRootSegment),
4663 0 === newBoundary.pendingTasks && 0 === newBoundary.status)
4664 ) {
4665 if (
4666 ((newBoundary.status = 1),
4667 !isEligibleForOutlining(request, newBoundary))
4668 ) {
4669 null !== prevRow &&
4670 0 === --prevRow.pendingTasks &&
4671 finishSuspenseListRow(request, prevRow);
4672 0 === request.pendingRootTasks &&
4673 task.blockedPreamble &&
4674 preparePreamble(request);
4675 break a;
4676 }
4677 } else
4678 null !== prevRow &&
4679 prevRow.together &&
4680 tryToResolveTogetherRow(request, prevRow);
4681 } catch (thrownValue$30) {
4682 (newBoundary.status = 4),
4683 12 === request.status
4684 ? ((contentRootSegment.status = 3),
4685 (newProps = request.fatalError))
4686 : ((contentRootSegment.status = 4),
4687 (newProps = thrownValue$30)),
4688 (defaultProps = getThrownInfo(task.componentStack)),
4689 (initialState = logRecoverableError(
4690 request,
4691 newProps,
4692 defaultProps
4693 )),
4694 (newBoundary.errorDigest = initialState),
4695 untrackBoundary(request, newBoundary);
4696 } finally {
4697 (task.blockedBoundary = parentBoundary),
4698 (task.blockedPreamble = propName$43),
4699 (task.hoistableState = parentHoistableState),
4700 (task.blockedSegment = propName),
4701 (task.keyPath = type),
4702 (task.formatContext = ref),
4703 (task.row = prevRow);
4704 }
4705 task = createRenderTask(
4706 request,
4707 null,
4708 fallback,
4709 -1,
4710 parentBoundary,
4711 boundarySegment,
4712 newBoundary.fallbackPreamble,
4713 newBoundary.fallbackState,
4714 fallbackAbortSet,
4715 [keyPath[0], "Suspense Fallback", keyPath[2]],
4716 getSuspenseFallbackFormatContext(
4717 request.resumableState,
4718 task.formatContext
4719 ),
4720 task.context,
4721 task.treeContext,
4722 task.row,
4723 replaceSuspenseComponentStackWithSuspenseFallbackStack(
4724 task.componentStack
4725 )
4726 );
4727 pushComponentStack(task);
4728 request.pingedTasks.push(task);
4729 }
4730 }
4731 return;
4732 }
4733 if ("object" === typeof type && null !== type)
4734 switch (type.$$typeof) {
4735 case REACT_FORWARD_REF_TYPE:
4736 if ("ref" in props)
4737 for (fallback in ((newProps = {}), props))
4738 "ref" !== fallback && (newProps[fallback] = props[fallback]);
4739 else newProps = props;
4740 type = renderWithHooks(
4741 request,
4742 task,
4743 keyPath,
4744 type.render,
4745 newProps,
4746 ref
4747 );
4748 finishFunctionComponent(
4749 request,
4750 task,
4751 keyPath,
4752 type,
4753 0 !== localIdCounter,
4754 actionStateCounter,
4755 actionStateMatchingIndex
4756 );
4757 return;
4758 case REACT_MEMO_TYPE:
4759 renderElement(request, task, keyPath, type.type, props, ref);
4760 return;
4761 case REACT_CONTEXT_TYPE:
4762 defaultProps = props.children;
4763 newProps = task.keyPath;
4764 props = props.value;
4765 initialState = type._currentValue2;
4766 type._currentValue2 = props;
4767 ref = currentActiveSnapshot;
4768 currentActiveSnapshot = type = {
4769 parent: ref,
4770 depth: null === ref ? 0 : ref.depth + 1,
4771 context: type,
4772 parentValue: initialState,
4773 value: props
4774 };
4775 task.context = type;
4776 task.keyPath = keyPath;
4777 renderNodeDestructive(request, task, defaultProps, -1);
4778 request = currentActiveSnapshot;
4779 if (null === request)
4780 throw Error(
4781 "Tried to pop a Context at the root of the app. This is a bug in React."
4782 );
4783 request.context._currentValue2 = request.parentValue;
4784 request = currentActiveSnapshot = request.parent;
4785 task.context = request;
4786 task.keyPath = newProps;
4787 return;
4788 case REACT_CONSUMER_TYPE:
4789 props = props.children;
4790 type = props(type._context._currentValue2);
4791 props = task.keyPath;
4792 task.keyPath = keyPath;
4793 renderNodeDestructive(request, task, type, -1);
4794 task.keyPath = props;
4795 return;
4796 case REACT_LAZY_TYPE:
4797 newProps = type._init;
4798 type = newProps(type._payload);
4799 if (12 === request.status) throw null;
4800 renderElement(request, task, keyPath, type, props, ref);
4801 return;
4802 }
4803 throw Error(
4804 "Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: " +
4805 ((null == type ? type : typeof type) + ".")
4806 );
4807 }
4808}
4809function resumeNode(request, task, segmentId, node, childIndex) {
4810 var prevReplay = task.replay,
4811 blockedBoundary = task.blockedBoundary,
4812 resumedSegment = createPendingSegment(
4813 request,
4814 0,
4815 null,
4816 task.formatContext,
4817 !1,
4818 !1
4819 );
4820 resumedSegment.id = segmentId;
4821 resumedSegment.parentFlushed = !0;
4822 try {
4823 (task.replay = null),
4824 (task.blockedSegment = resumedSegment),
4825 renderNode(request, task, node, childIndex),
4826 (resumedSegment.status = 1),
4827 null === blockedBoundary
4828 ? (request.completedRootSegment = resumedSegment)
4829 : (queueCompletedSegment(blockedBoundary, resumedSegment),
4830 blockedBoundary.parentFlushed &&
4831 request.partialBoundaries.push(blockedBoundary));
4832 } finally {
4833 (task.replay = prevReplay), (task.blockedSegment = null);
4834 }
4835}
4836function renderNodeDestructive(request, task, node, childIndex) {
4837 null !== task.replay && "number" === typeof task.replay.slots
4838 ? resumeNode(request, task, task.replay.slots, node, childIndex)
4839 : ((task.node = node),
4840 (task.childIndex = childIndex),
4841 (node = task.componentStack),
4842 pushComponentStack(task),
4843 retryNode(request, task),
4844 (task.componentStack = node));
4845}
4846function retryNode(request, task) {
4847 var node = task.node,
4848 childIndex = task.childIndex;
4849 if (null !== node) {
4850 if ("object" === typeof node) {
4851 switch (node.$$typeof) {
4852 case REACT_ELEMENT_TYPE:
4853 var type = node.type,
4854 key = node.key,
4855 props = node.props;
4856 node = props.ref;
4857 var ref = void 0 !== node ? node : null,
4858 name = getComponentNameFromType(type),
4859 keyOrIndex =
4860 null == key ? (-1 === childIndex ? 0 : childIndex) : key;
4861 key = [task.keyPath, name, keyOrIndex];
4862 if (null !== task.replay)
4863 a: {
4864 var replay = task.replay;
4865 childIndex = replay.nodes;
4866 for (node = 0; node < childIndex.length; node++) {
4867 var node$jscomp$0 = childIndex[node];
4868 if (keyOrIndex === node$jscomp$0[1]) {
4869 if (4 === node$jscomp$0.length) {
4870 if (null !== name && name !== node$jscomp$0[0])
4871 throw Error(
4872 "Expected the resume to render <" +
4873 node$jscomp$0[0] +
4874 "> in this slot but instead it rendered <" +
4875 name +
4876 ">. The tree doesn't match so React will fallback to client rendering."
4877 );
4878 var childNodes = node$jscomp$0[2];
4879 name = node$jscomp$0[3];
4880 keyOrIndex = task.node;
4881 task.replay = {
4882 nodes: childNodes,
4883 slots: name,
4884 pendingTasks: 1
4885 };
4886 try {
4887 renderElement(request, task, key, type, props, ref);
4888 if (
4889 1 === task.replay.pendingTasks &&
4890 0 < task.replay.nodes.length
4891 )
4892 throw Error(
4893 "Couldn't find all resumable slots by key/index during replaying. The tree doesn't match so React will fallback to client rendering."
4894 );
4895 task.replay.pendingTasks--;
4896 } catch (x) {
4897 if (
4898 "object" === typeof x &&
4899 null !== x &&
4900 (x === SuspenseException ||
4901 "function" === typeof x.then)
4902 )
4903 throw (
4904 (task.node === keyOrIndex
4905 ? (task.replay = replay)
4906 : childIndex.splice(node, 1),
4907 x)
4908 );
4909 task.replay.pendingTasks--;
4910 props = getThrownInfo(task.componentStack);
4911 key = request;
4912 request = task.blockedBoundary;
4913 type = x;
4914 props = logRecoverableError(key, type, props);
4915 abortRemainingReplayNodes(
4916 key,
4917 request,
4918 childNodes,
4919 name,
4920 type,
4921 props
4922 );
4923 }
4924 task.replay = replay;
4925 } else {
4926 if (type !== REACT_SUSPENSE_TYPE)
4927 throw Error(
4928 "Expected the resume to render <Suspense> in this slot but instead it rendered <" +
4929 (getComponentNameFromType(type) || "Unknown") +
4930 ">. The tree doesn't match so React will fallback to client rendering."
4931 );
4932 b: {
4933 replay = void 0;
4934 type = node$jscomp$0[5];
4935 ref = node$jscomp$0[2];
4936 name = node$jscomp$0[3];
4937 keyOrIndex =
4938 null === node$jscomp$0[4] ? [] : node$jscomp$0[4][2];
4939 node$jscomp$0 =
4940 null === node$jscomp$0[4] ? null : node$jscomp$0[4][3];
4941 var prevKeyPath = task.keyPath,
4942 prevContext = task.formatContext,
4943 prevRow = task.row,
4944 previousReplaySet = task.replay,
4945 parentBoundary = task.blockedBoundary,
4946 parentHoistableState = task.hoistableState,
4947 content = props.children,
4948 fallback = props.fallback,
4949 fallbackAbortSet = new Set();
4950 props = createSuspenseBoundary(
4951 request,
4952 task.row,
4953 fallbackAbortSet,
4954 null,
4955 null
4956 );
4957 props.parentFlushed = !0;
4958 props.rootSegmentID = type;
4959 task.blockedBoundary = props;
4960 task.hoistableState = props.contentState;
4961 task.keyPath = key;
4962 task.formatContext = getSuspenseContentFormatContext(
4963 request.resumableState,
4964 prevContext
4965 );
4966 task.row = null;
4967 task.replay = {
4968 nodes: ref,
4969 slots: name,
4970 pendingTasks: 1
4971 };
4972 try {
4973 renderNode(request, task, content, -1);
4974 if (
4975 1 === task.replay.pendingTasks &&
4976 0 < task.replay.nodes.length
4977 )
4978 throw Error(
4979 "Couldn't find all resumable slots by key/index during replaying. The tree doesn't match so React will fallback to client rendering."
4980 );
4981 task.replay.pendingTasks--;
4982 if (0 === props.pendingTasks && 0 === props.status) {
4983 props.status = 1;
4984 request.completedBoundaries.push(props);
4985 break b;
4986 }
4987 } catch (error) {
4988 (props.status = 4),
4989 (childNodes = getThrownInfo(task.componentStack)),
4990 (replay = logRecoverableError(
4991 request,
4992 error,
4993 childNodes
4994 )),
4995 (props.errorDigest = replay),
4996 task.replay.pendingTasks--,
4997 request.clientRenderedBoundaries.push(props);
4998 } finally {
4999 (task.blockedBoundary = parentBoundary),
5000 (task.hoistableState = parentHoistableState),
5001 (task.replay = previousReplaySet),
5002 (task.keyPath = prevKeyPath),
5003 (task.formatContext = prevContext),
5004 (task.row = prevRow);
5005 }
5006 childNodes = createReplayTask(
5007 request,
5008 null,
5009 {
5010 nodes: keyOrIndex,
5011 slots: node$jscomp$0,
5012 pendingTasks: 0
5013 },
5014 fallback,
5015 -1,
5016 parentBoundary,
5017 props.fallbackState,
5018 fallbackAbortSet,
5019 [key[0], "Suspense Fallback", key[2]],
5020 getSuspenseFallbackFormatContext(
5021 request.resumableState,
5022 task.formatContext
5023 ),
5024 task.context,
5025 task.treeContext,
5026 task.row,
5027 replaceSuspenseComponentStackWithSuspenseFallbackStack(
5028 task.componentStack
5029 )
5030 );
5031 pushComponentStack(childNodes);
5032 request.pingedTasks.push(childNodes);
5033 }
5034 }
5035 childIndex.splice(node, 1);
5036 break a;
5037 }
5038 }
5039 }
5040 else renderElement(request, task, key, type, props, ref);
5041 return;
5042 case REACT_PORTAL_TYPE:
5043 throw Error(
5044 "Portals are not currently supported by the server renderer. Render them conditionally so that they only appear on the client render."
5045 );
5046 case REACT_LAZY_TYPE:
5047 childNodes = node._init;
5048 node = childNodes(node._payload);
5049 if (12 === request.status) throw null;
5050 renderNodeDestructive(request, task, node, childIndex);
5051 return;
5052 }
5053 if (isArrayImpl(node)) {
5054 renderChildrenArray(request, task, node, childIndex);
5055 return;
5056 }
5057 if ((childNodes = getIteratorFn(node)))
5058 if ((childNodes = childNodes.call(node))) {
5059 node = childNodes.next();
5060 if (!node.done) {
5061 props = [];
5062 do props.push(node.value), (node = childNodes.next());
5063 while (!node.done);
5064 renderChildrenArray(request, task, props, childIndex);
5065 }
5066 return;
5067 }
5068 if ("function" === typeof node.then)
5069 return (
5070 (task.thenableState = null),
5071 renderNodeDestructive(request, task, unwrapThenable(node), childIndex)
5072 );
5073 if (node.$$typeof === REACT_CONTEXT_TYPE)
5074 return renderNodeDestructive(
5075 request,
5076 task,
5077 node._currentValue2,
5078 childIndex
5079 );
5080 childIndex = Object.prototype.toString.call(node);
5081 throw Error(
5082 "Objects are not valid as a React child (found: " +
5083 ("[object Object]" === childIndex
5084 ? "object with keys {" + Object.keys(node).join(", ") + "}"
5085 : childIndex) +
5086 "). If you meant to render a collection of children, use an array instead."
5087 );
5088 }
5089 if ("string" === typeof node)
5090 (childIndex = task.blockedSegment),
5091 null !== childIndex &&
5092 (childIndex.lastPushedText = pushTextInstance(
5093 childIndex.chunks,
5094 node,
5095 request.renderState,
5096 childIndex.lastPushedText
5097 ));
5098 else if ("number" === typeof node || "bigint" === typeof node)
5099 (childIndex = task.blockedSegment),
5100 null !== childIndex &&
5101 (childIndex.lastPushedText = pushTextInstance(
5102 childIndex.chunks,
5103 "" + node,
5104 request.renderState,
5105 childIndex.lastPushedText
5106 ));
5107 }
5108}
5109function renderChildrenArray(request, task, children, childIndex) {
5110 var prevKeyPath = task.keyPath;
5111 if (
5112 -1 !== childIndex &&
5113 ((task.keyPath = [task.keyPath, "Fragment", childIndex]),
5114 null !== task.replay)
5115 ) {
5116 for (
5117 var replay = task.replay, replayNodes = replay.nodes, j = 0;
5118 j < replayNodes.length;
5119 j++
5120 ) {
5121 var node = replayNodes[j];
5122 if (node[1] === childIndex) {
5123 childIndex = node[2];
5124 node = node[3];
5125 task.replay = { nodes: childIndex, slots: node, pendingTasks: 1 };
5126 try {
5127 renderChildrenArray(request, task, children, -1);
5128 if (1 === task.replay.pendingTasks && 0 < task.replay.nodes.length)
5129 throw Error(
5130 "Couldn't find all resumable slots by key/index during replaying. The tree doesn't match so React will fallback to client rendering."
5131 );
5132 task.replay.pendingTasks--;
5133 } catch (x) {
5134 if (
5135 "object" === typeof x &&
5136 null !== x &&
5137 (x === SuspenseException || "function" === typeof x.then)
5138 )
5139 throw x;
5140 task.replay.pendingTasks--;
5141 children = getThrownInfo(task.componentStack);
5142 var boundary = task.blockedBoundary,
5143 error = x;
5144 children = logRecoverableError(request, error, children);
5145 abortRemainingReplayNodes(
5146 request,
5147 boundary,
5148 childIndex,
5149 node,
5150 error,
5151 children
5152 );
5153 }
5154 task.replay = replay;
5155 replayNodes.splice(j, 1);
5156 break;
5157 }
5158 }
5159 task.keyPath = prevKeyPath;
5160 return;
5161 }
5162 replay = task.treeContext;
5163 replayNodes = children.length;
5164 if (
5165 null !== task.replay &&
5166 ((j = task.replay.slots), null !== j && "object" === typeof j)
5167 ) {
5168 for (childIndex = 0; childIndex < replayNodes; childIndex++)
5169 (node = children[childIndex]),
5170 (task.treeContext = pushTreeContext(replay, replayNodes, childIndex)),
5171 (boundary = j[childIndex]),
5172 "number" === typeof boundary
5173 ? (resumeNode(request, task, boundary, node, childIndex),
5174 delete j[childIndex])
5175 : renderNode(request, task, node, childIndex);
5176 task.treeContext = replay;
5177 task.keyPath = prevKeyPath;
5178 return;
5179 }
5180 for (j = 0; j < replayNodes; j++)
5181 (childIndex = children[j]),
5182 (task.treeContext = pushTreeContext(replay, replayNodes, j)),
5183 renderNode(request, task, childIndex, j);
5184 task.treeContext = replay;
5185 task.keyPath = prevKeyPath;
5186}
5187function trackPostponedBoundary(request, trackedPostpones, boundary) {
5188 boundary.status = 5;
5189 boundary.rootSegmentID = request.nextSegmentId++;
5190 request = boundary.trackedContentKeyPath;
5191 if (null === request)
5192 throw Error(
5193 "It should not be possible to postpone at the root. This is a bug in React."
5194 );
5195 var fallbackReplayNode = boundary.trackedFallbackNode,
5196 children = [],
5197 boundaryNode = trackedPostpones.workingMap.get(request);
5198 if (void 0 === boundaryNode)
5199 return (
5200 (boundary = [
5201 request[1],
5202 request[2],
5203 children,
5204 null,
5205 fallbackReplayNode,
5206 boundary.rootSegmentID
5207 ]),
5208 trackedPostpones.workingMap.set(request, boundary),
5209 addToReplayParent(boundary, request[0], trackedPostpones),
5210 boundary
5211 );
5212 boundaryNode[4] = fallbackReplayNode;
5213 boundaryNode[5] = boundary.rootSegmentID;
5214 return boundaryNode;
5215}
5216function trackPostpone(request, trackedPostpones, task, segment) {
5217 segment.status = 5;
5218 var keyPath = task.keyPath,
5219 boundary = task.blockedBoundary;
5220 if (null === boundary)
5221 (segment.id = request.nextSegmentId++),
5222 (trackedPostpones.rootSlots = segment.id),
5223 null !== request.completedRootSegment &&
5224 (request.completedRootSegment.status = 5);
5225 else {
5226 if (null !== boundary && 0 === boundary.status) {
5227 var boundaryNode = trackPostponedBoundary(
5228 request,
5229 trackedPostpones,
5230 boundary
5231 );
5232 if (
5233 boundary.trackedContentKeyPath === keyPath &&
5234 -1 === task.childIndex
5235 ) {
5236 -1 === segment.id &&
5237 (segment.id = segment.parentFlushed
5238 ? boundary.rootSegmentID
5239 : request.nextSegmentId++);
5240 boundaryNode[3] = segment.id;
5241 return;
5242 }
5243 }
5244 -1 === segment.id &&
5245 (segment.id =
5246 segment.parentFlushed && null !== boundary
5247 ? boundary.rootSegmentID
5248 : request.nextSegmentId++);
5249 if (-1 === task.childIndex)
5250 null === keyPath
5251 ? (trackedPostpones.rootSlots = segment.id)
5252 : ((task = trackedPostpones.workingMap.get(keyPath)),
5253 void 0 === task
5254 ? ((task = [keyPath[1], keyPath[2], [], segment.id]),
5255 addToReplayParent(task, keyPath[0], trackedPostpones))
5256 : (task[3] = segment.id));
5257 else {
5258 if (null === keyPath)
5259 if (((request = trackedPostpones.rootSlots), null === request))
5260 request = trackedPostpones.rootSlots = {};
5261 else {
5262 if ("number" === typeof request)
5263 throw Error(
5264 "It should not be possible to postpone both at the root of an element as well as a slot below. This is a bug in React."
5265 );
5266 }
5267 else if (
5268 ((boundary = trackedPostpones.workingMap),
5269 (boundaryNode = boundary.get(keyPath)),
5270 void 0 === boundaryNode)
5271 )
5272 (request = {}),
5273 (boundaryNode = [keyPath[1], keyPath[2], [], request]),
5274 boundary.set(keyPath, boundaryNode),
5275 addToReplayParent(boundaryNode, keyPath[0], trackedPostpones);
5276 else if (((request = boundaryNode[3]), null === request))
5277 request = boundaryNode[3] = {};
5278 else if ("number" === typeof request)
5279 throw Error(
5280 "It should not be possible to postpone both at the root of an element as well as a slot below. This is a bug in React."
5281 );
5282 request[task.childIndex] = segment.id;
5283 }
5284 }
5285}
5286function untrackBoundary(request, boundary) {
5287 request = request.trackedPostpones;
5288 null !== request &&
5289 ((boundary = boundary.trackedContentKeyPath),
5290 null !== boundary &&
5291 ((boundary = request.workingMap.get(boundary)),
5292 void 0 !== boundary &&
5293 ((boundary.length = 4), (boundary[2] = []), (boundary[3] = null))));
5294}
5295function spawnNewSuspendedReplayTask(request, task, thenableState) {
5296 return createReplayTask(
5297 request,
5298 thenableState,
5299 task.replay,
5300 task.node,
5301 task.childIndex,
5302 task.blockedBoundary,
5303 task.hoistableState,
5304 task.abortSet,
5305 task.keyPath,
5306 task.formatContext,
5307 task.context,
5308 task.treeContext,
5309 task.row,
5310 task.componentStack
5311 );
5312}
5313function spawnNewSuspendedRenderTask(request, task, thenableState) {
5314 var segment = task.blockedSegment,
5315 newSegment = createPendingSegment(
5316 request,
5317 segment.chunks.length,
5318 null,
5319 task.formatContext,
5320 segment.lastPushedText,
5321 !0
5322 );
5323 segment.children.push(newSegment);
5324 segment.lastPushedText = !1;
5325 return createRenderTask(
5326 request,
5327 thenableState,
5328 task.node,
5329 task.childIndex,
5330 task.blockedBoundary,
5331 newSegment,
5332 task.blockedPreamble,
5333 task.hoistableState,
5334 task.abortSet,
5335 task.keyPath,
5336 task.formatContext,
5337 task.context,
5338 task.treeContext,
5339 task.row,
5340 task.componentStack
5341 );
5342}
5343function renderNode(request, task, node, childIndex) {
5344 var previousFormatContext = task.formatContext,
5345 previousContext = task.context,
5346 previousKeyPath = task.keyPath,
5347 previousTreeContext = task.treeContext,
5348 previousComponentStack = task.componentStack,
5349 segment = task.blockedSegment;
5350 if (null === segment) {
5351 segment = task.replay;
5352 try {
5353 return renderNodeDestructive(request, task, node, childIndex);
5354 } catch (thrownValue) {
5355 if (
5356 (resetHooksState(),
5357 (node =
5358 thrownValue === SuspenseException
5359 ? getSuspendedThenable()
5360 : thrownValue),
5361 12 !== request.status && "object" === typeof node && null !== node)
5362 ) {
5363 if ("function" === typeof node.then) {
5364 childIndex =
5365 thrownValue === SuspenseException
5366 ? getThenableStateAfterSuspending()
5367 : null;
5368 request = spawnNewSuspendedReplayTask(request, task, childIndex).ping;
5369 node.then(request, request);
5370 task.formatContext = previousFormatContext;
5371 task.context = previousContext;
5372 task.keyPath = previousKeyPath;
5373 task.treeContext = previousTreeContext;
5374 task.componentStack = previousComponentStack;
5375 task.replay = segment;
5376 switchContext(previousContext);
5377 return;
5378 }
5379 if ("Maximum call stack size exceeded" === node.message) {
5380 node =
5381 thrownValue === SuspenseException
5382 ? getThenableStateAfterSuspending()
5383 : null;
5384 node = spawnNewSuspendedReplayTask(request, task, node);
5385 request.pingedTasks.push(node);
5386 task.formatContext = previousFormatContext;
5387 task.context = previousContext;
5388 task.keyPath = previousKeyPath;
5389 task.treeContext = previousTreeContext;
5390 task.componentStack = previousComponentStack;
5391 task.replay = segment;
5392 switchContext(previousContext);
5393 return;
5394 }
5395 }
5396 }
5397 } else {
5398 var childrenLength = segment.children.length,
5399 chunkLength = segment.chunks.length;
5400 try {
5401 return renderNodeDestructive(request, task, node, childIndex);
5402 } catch (thrownValue$62) {
5403 if (
5404 (resetHooksState(),
5405 (segment.children.length = childrenLength),
5406 (segment.chunks.length = chunkLength),
5407 (node =
5408 thrownValue$62 === SuspenseException
5409 ? getSuspendedThenable()
5410 : thrownValue$62),
5411 12 !== request.status && "object" === typeof node && null !== node)
5412 ) {
5413 if ("function" === typeof node.then) {
5414 segment = node;
5415 node =
5416 thrownValue$62 === SuspenseException
5417 ? getThenableStateAfterSuspending()
5418 : null;
5419 request = spawnNewSuspendedRenderTask(request, task, node).ping;
5420 segment.then(request, request);
5421 task.formatContext = previousFormatContext;
5422 task.context = previousContext;
5423 task.keyPath = previousKeyPath;
5424 task.treeContext = previousTreeContext;
5425 task.componentStack = previousComponentStack;
5426 switchContext(previousContext);
5427 return;
5428 }
5429 if ("Maximum call stack size exceeded" === node.message) {
5430 segment =
5431 thrownValue$62 === SuspenseException
5432 ? getThenableStateAfterSuspending()
5433 : null;
5434 segment = spawnNewSuspendedRenderTask(request, task, segment);
5435 request.pingedTasks.push(segment);
5436 task.formatContext = previousFormatContext;
5437 task.context = previousContext;
5438 task.keyPath = previousKeyPath;
5439 task.treeContext = previousTreeContext;
5440 task.componentStack = previousComponentStack;
5441 switchContext(previousContext);
5442 return;
5443 }
5444 }
5445 }
5446 }
5447 task.formatContext = previousFormatContext;
5448 task.context = previousContext;
5449 task.keyPath = previousKeyPath;
5450 task.treeContext = previousTreeContext;
5451 switchContext(previousContext);
5452 throw node;
5453}
5454function abortTaskSoft(task) {
5455 var boundary = task.blockedBoundary,
5456 segment = task.blockedSegment;
5457 null !== segment &&
5458 ((segment.status = 3), finishedTask(this, boundary, task.row, segment));
5459}
5460function abortRemainingReplayNodes(
5461 request$jscomp$0,
5462 boundary,
5463 nodes,
5464 slots,
5465 error,
5466 errorDigest$jscomp$0
5467) {
5468 for (var i = 0; i < nodes.length; i++) {
5469 var node = nodes[i];
5470 if (4 === node.length)
5471 abortRemainingReplayNodes(
5472 request$jscomp$0,
5473 boundary,
5474 node[2],
5475 node[3],
5476 error,
5477 errorDigest$jscomp$0
5478 );
5479 else {
5480 node = node[5];
5481 var request = request$jscomp$0,
5482 errorDigest = errorDigest$jscomp$0,
5483 resumedBoundary = createSuspenseBoundary(
5484 request,
5485 null,
5486 new Set(),
5487 null,
5488 null
5489 );
5490 resumedBoundary.parentFlushed = !0;
5491 resumedBoundary.rootSegmentID = node;
5492 resumedBoundary.status = 4;
5493 resumedBoundary.errorDigest = errorDigest;
5494 resumedBoundary.parentFlushed &&
5495 request.clientRenderedBoundaries.push(resumedBoundary);
5496 }
5497 }
5498 nodes.length = 0;
5499 if (null !== slots) {
5500 if (null === boundary)
5501 throw Error(
5502 "We should not have any resumable nodes in the shell. This is a bug in React."
5503 );
5504 4 !== boundary.status &&
5505 ((boundary.status = 4),
5506 (boundary.errorDigest = errorDigest$jscomp$0),
5507 boundary.parentFlushed &&
5508 request$jscomp$0.clientRenderedBoundaries.push(boundary));
5509 if ("object" === typeof slots) for (var index in slots) delete slots[index];
5510 }
5511}
5512function abortTask(task, request, error) {
5513 var boundary = task.blockedBoundary,
5514 segment = task.blockedSegment;
5515 if (null !== segment) {
5516 if (6 === segment.status) return;
5517 segment.status = 3;
5518 }
5519 var errorInfo = getThrownInfo(task.componentStack);
5520 if (null === boundary) {
5521 if (13 !== request.status && 14 !== request.status) {
5522 boundary = task.replay;
5523 if (null === boundary) {
5524 null !== request.trackedPostpones && null !== segment
5525 ? ((boundary = request.trackedPostpones),
5526 logRecoverableError(request, error, errorInfo),
5527 trackPostpone(request, boundary, task, segment),
5528 finishedTask(request, null, task.row, segment))
5529 : (logRecoverableError(request, error, errorInfo),
5530 fatalError(request, error));
5531 return;
5532 }
5533 boundary.pendingTasks--;
5534 0 === boundary.pendingTasks &&
5535 0 < boundary.nodes.length &&
5536 ((segment = logRecoverableError(request, error, errorInfo)),
5537 abortRemainingReplayNodes(
5538 request,
5539 null,
5540 boundary.nodes,
5541 boundary.slots,
5542 error,
5543 segment
5544 ));
5545 request.pendingRootTasks--;
5546 0 === request.pendingRootTasks && completeShell(request);
5547 }
5548 } else {
5549 var trackedPostpones$63 = request.trackedPostpones;
5550 if (4 !== boundary.status) {
5551 if (null !== trackedPostpones$63 && null !== segment)
5552 return (
5553 logRecoverableError(request, error, errorInfo),
5554 trackPostpone(request, trackedPostpones$63, task, segment),
5555 boundary.fallbackAbortableTasks.forEach(function (fallbackTask) {
5556 return abortTask(fallbackTask, request, error);
5557 }),
5558 boundary.fallbackAbortableTasks.clear(),
5559 finishedTask(request, boundary, task.row, segment)
5560 );
5561 boundary.status = 4;
5562 segment = logRecoverableError(request, error, errorInfo);
5563 boundary.status = 4;
5564 boundary.errorDigest = segment;
5565 untrackBoundary(request, boundary);
5566 boundary.parentFlushed && request.clientRenderedBoundaries.push(boundary);
5567 }
5568 boundary.pendingTasks--;
5569 segment = boundary.row;
5570 null !== segment &&
5571 0 === --segment.pendingTasks &&
5572 finishSuspenseListRow(request, segment);
5573 boundary.fallbackAbortableTasks.forEach(function (fallbackTask) {
5574 return abortTask(fallbackTask, request, error);
5575 });
5576 boundary.fallbackAbortableTasks.clear();
5577 }
5578 task = task.row;
5579 null !== task &&
5580 0 === --task.pendingTasks &&
5581 finishSuspenseListRow(request, task);
5582 request.allPendingTasks--;
5583 0 === request.allPendingTasks && completeAll(request);
5584}
5585function safelyEmitEarlyPreloads(request, shellComplete) {
5586 try {
5587 var renderState = request.renderState,
5588 onHeaders = renderState.onHeaders;
5589 if (onHeaders) {
5590 var headers = renderState.headers;
5591 if (headers) {
5592 renderState.headers = null;
5593 var linkHeader = headers.preconnects;
5594 headers.fontPreloads &&
5595 (linkHeader && (linkHeader += ", "),
5596 (linkHeader += headers.fontPreloads));
5597 headers.highImagePreloads &&
5598 (linkHeader && (linkHeader += ", "),
5599 (linkHeader += headers.highImagePreloads));
5600 if (!shellComplete) {
5601 var queueIter = renderState.styles.values(),
5602 queueStep = queueIter.next();
5603 b: for (
5604 ;
5605 0 < headers.remainingCapacity && !queueStep.done;
5606 queueStep = queueIter.next()
5607 )
5608 for (
5609 var sheetIter = queueStep.value.sheets.values(),
5610 sheetStep = sheetIter.next();
5611 0 < headers.remainingCapacity && !sheetStep.done;
5612 sheetStep = sheetIter.next()
5613 ) {
5614 var sheet = sheetStep.value,
5615 props = sheet.props,
5616 key = props.href,
5617 props$jscomp$0 = sheet.props,
5618 header = getPreloadAsHeader(props$jscomp$0.href, "style", {
5619 crossOrigin: props$jscomp$0.crossOrigin,
5620 integrity: props$jscomp$0.integrity,
5621 nonce: props$jscomp$0.nonce,
5622 type: props$jscomp$0.type,
5623 fetchPriority: props$jscomp$0.fetchPriority,
5624 referrerPolicy: props$jscomp$0.referrerPolicy,
5625 media: props$jscomp$0.media
5626 });
5627 if (0 <= (headers.remainingCapacity -= header.length + 2))
5628 (renderState.resets.style[key] = PRELOAD_NO_CREDS),
5629 linkHeader && (linkHeader += ", "),
5630 (linkHeader += header),
5631 (renderState.resets.style[key] =
5632 "string" === typeof props.crossOrigin ||
5633 "string" === typeof props.integrity
5634 ? [props.crossOrigin, props.integrity]
5635 : PRELOAD_NO_CREDS);
5636 else break b;
5637 }
5638 }
5639 linkHeader ? onHeaders({ Link: linkHeader }) : onHeaders({});
5640 }
5641 }
5642 } catch (error) {
5643 logRecoverableError(request, error, {});
5644 }
5645}
5646function completeShell(request) {
5647 null === request.trackedPostpones && safelyEmitEarlyPreloads(request, !0);
5648 null === request.trackedPostpones && preparePreamble(request);
5649 request.onShellError = noop;
5650 request = request.onShellReady;
5651 request();
5652}
5653function completeAll(request) {
5654 safelyEmitEarlyPreloads(
5655 request,
5656 null === request.trackedPostpones
5657 ? !0
5658 : null === request.completedRootSegment ||
5659 5 !== request.completedRootSegment.status
5660 );
5661 preparePreamble(request);
5662 request = request.onAllReady;
5663 request();
5664}
5665function queueCompletedSegment(boundary, segment) {
5666 if (
5667 0 === segment.chunks.length &&
5668 1 === segment.children.length &&
5669 null === segment.children[0].boundary &&
5670 -1 === segment.children[0].id
5671 ) {
5672 var childSegment = segment.children[0];
5673 childSegment.id = segment.id;
5674 childSegment.parentFlushed = !0;
5675 (1 !== childSegment.status &&
5676 3 !== childSegment.status &&
5677 4 !== childSegment.status) ||
5678 queueCompletedSegment(boundary, childSegment);
5679 } else boundary.completedSegments.push(segment);
5680}
5681function finishedTask(request, boundary, row, segment) {
5682 null !== row &&
5683 (0 === --row.pendingTasks
5684 ? finishSuspenseListRow(request, row)
5685 : row.together && tryToResolveTogetherRow(request, row));
5686 request.allPendingTasks--;
5687 if (null === boundary) {
5688 if (null !== segment && segment.parentFlushed) {
5689 if (null !== request.completedRootSegment)
5690 throw Error(
5691 "There can only be one root segment. This is a bug in React."
5692 );
5693 request.completedRootSegment = segment;
5694 }
5695 request.pendingRootTasks--;
5696 0 === request.pendingRootTasks && completeShell(request);
5697 } else if ((boundary.pendingTasks--, 4 !== boundary.status))
5698 if (0 === boundary.pendingTasks)
5699 if (
5700 (0 === boundary.status && (boundary.status = 1),
5701 null !== segment &&
5702 segment.parentFlushed &&
5703 (1 === segment.status || 3 === segment.status) &&
5704 queueCompletedSegment(boundary, segment),
5705 boundary.parentFlushed && request.completedBoundaries.push(boundary),
5706 1 === boundary.status)
5707 )
5708 (row = boundary.row),
5709 null !== row &&
5710 hoistHoistables(row.hoistables, boundary.contentState),
5711 isEligibleForOutlining(request, boundary) ||
5712 (boundary.fallbackAbortableTasks.forEach(abortTaskSoft, request),
5713 boundary.fallbackAbortableTasks.clear(),
5714 null !== row &&
5715 0 === --row.pendingTasks &&
5716 finishSuspenseListRow(request, row)),
5717 0 === request.pendingRootTasks &&
5718 null === request.trackedPostpones &&
5719 null !== boundary.contentPreamble &&
5720 preparePreamble(request);
5721 else {
5722 if (
5723 5 === boundary.status &&
5724 ((boundary = boundary.row), null !== boundary)
5725 ) {
5726 if (null !== request.trackedPostpones) {
5727 row = request.trackedPostpones;
5728 var postponedRow = boundary.next;
5729 if (
5730 null !== postponedRow &&
5731 ((segment = postponedRow.boundaries), null !== segment)
5732 )
5733 for (
5734 postponedRow.boundaries = null, postponedRow = 0;
5735 postponedRow < segment.length;
5736 postponedRow++
5737 ) {
5738 var postponedBoundary = segment[postponedRow];
5739 trackPostponedBoundary(request, row, postponedBoundary);
5740 finishedTask(request, postponedBoundary, null, null);
5741 }
5742 }
5743 0 === --boundary.pendingTasks &&
5744 finishSuspenseListRow(request, boundary);
5745 }
5746 }
5747 else
5748 null === segment ||
5749 !segment.parentFlushed ||
5750 (1 !== segment.status && 3 !== segment.status) ||
5751 (queueCompletedSegment(boundary, segment),
5752 1 === boundary.completedSegments.length &&
5753 boundary.parentFlushed &&
5754 request.partialBoundaries.push(boundary)),
5755 (boundary = boundary.row),
5756 null !== boundary &&
5757 boundary.together &&
5758 tryToResolveTogetherRow(request, boundary);
5759 0 === request.allPendingTasks && completeAll(request);
5760}
5761function performWork(request$jscomp$2) {
5762 if (14 !== request$jscomp$2.status && 13 !== request$jscomp$2.status) {
5763 var prevContext = currentActiveSnapshot,
5764 prevDispatcher = ReactSharedInternals.H;
5765 ReactSharedInternals.H = HooksDispatcher;
5766 var prevAsyncDispatcher = ReactSharedInternals.A;
5767 ReactSharedInternals.A = DefaultAsyncDispatcher;
5768 var prevRequest = currentRequest;
5769 currentRequest = request$jscomp$2;
5770 var prevResumableState = currentResumableState;
5771 currentResumableState = request$jscomp$2.resumableState;
5772 try {
5773 var pingedTasks = request$jscomp$2.pingedTasks,
5774 i;
5775 for (i = 0; i < pingedTasks.length; i++) {
5776 var task = pingedTasks[i],
5777 request = request$jscomp$2,
5778 segment = task.blockedSegment;
5779 if (null === segment) {
5780 var request$jscomp$0 = request;
5781 if (0 !== task.replay.pendingTasks) {
5782 switchContext(task.context);
5783 try {
5784 "number" === typeof task.replay.slots
5785 ? resumeNode(
5786 request$jscomp$0,
5787 task,
5788 task.replay.slots,
5789 task.node,
5790 task.childIndex
5791 )
5792 : retryNode(request$jscomp$0, task);
5793 if (
5794 1 === task.replay.pendingTasks &&
5795 0 < task.replay.nodes.length
5796 )
5797 throw Error(
5798 "Couldn't find all resumable slots by key/index during replaying. The tree doesn't match so React will fallback to client rendering."
5799 );
5800 task.replay.pendingTasks--;
5801 task.abortSet.delete(task);
5802 finishedTask(
5803 request$jscomp$0,
5804 task.blockedBoundary,
5805 task.row,
5806 null
5807 );
5808 } catch (thrownValue) {
5809 resetHooksState();
5810 var x =
5811 thrownValue === SuspenseException
5812 ? getSuspendedThenable()
5813 : thrownValue;
5814 if (
5815 "object" === typeof x &&
5816 null !== x &&
5817 "function" === typeof x.then
5818 ) {
5819 var ping = task.ping;
5820 x.then(ping, ping);
5821 task.thenableState =
5822 thrownValue === SuspenseException
5823 ? getThenableStateAfterSuspending()
5824 : null;
5825 } else {
5826 task.replay.pendingTasks--;
5827 task.abortSet.delete(task);
5828 var errorInfo = getThrownInfo(task.componentStack);
5829 request = void 0;
5830 var request$jscomp$1 = request$jscomp$0,
5831 boundary = task.blockedBoundary,
5832 error$jscomp$0 =
5833 12 === request$jscomp$0.status
5834 ? request$jscomp$0.fatalError
5835 : x,
5836 replayNodes = task.replay.nodes,
5837 resumeSlots = task.replay.slots;
5838 request = logRecoverableError(
5839 request$jscomp$1,
5840 error$jscomp$0,
5841 errorInfo
5842 );
5843 abortRemainingReplayNodes(
5844 request$jscomp$1,
5845 boundary,
5846 replayNodes,
5847 resumeSlots,
5848 error$jscomp$0,
5849 request
5850 );
5851 request$jscomp$0.pendingRootTasks--;
5852 0 === request$jscomp$0.pendingRootTasks &&
5853 completeShell(request$jscomp$0);
5854 request$jscomp$0.allPendingTasks--;
5855 0 === request$jscomp$0.allPendingTasks &&
5856 completeAll(request$jscomp$0);
5857 }
5858 } finally {
5859 }
5860 }
5861 } else if (
5862 ((request$jscomp$0 = void 0),
5863 (request$jscomp$1 = segment),
5864 0 === request$jscomp$1.status)
5865 ) {
5866 request$jscomp$1.status = 6;
5867 switchContext(task.context);
5868 var childrenLength = request$jscomp$1.children.length,
5869 chunkLength = request$jscomp$1.chunks.length;
5870 try {
5871 retryNode(request, task),
5872 pushSegmentFinale(
5873 request$jscomp$1.chunks,
5874 request.renderState,
5875 request$jscomp$1.lastPushedText,
5876 request$jscomp$1.textEmbedded
5877 ),
5878 task.abortSet.delete(task),
5879 (request$jscomp$1.status = 1),
5880 finishedTask(
5881 request,
5882 task.blockedBoundary,
5883 task.row,
5884 request$jscomp$1
5885 );
5886 } catch (thrownValue) {
5887 resetHooksState();
5888 request$jscomp$1.children.length = childrenLength;
5889 request$jscomp$1.chunks.length = chunkLength;
5890 var x$jscomp$0 =
5891 thrownValue === SuspenseException
5892 ? getSuspendedThenable()
5893 : 12 === request.status
5894 ? request.fatalError
5895 : thrownValue;
5896 if (12 === request.status && null !== request.trackedPostpones) {
5897 var trackedPostpones = request.trackedPostpones,
5898 thrownInfo = getThrownInfo(task.componentStack);
5899 task.abortSet.delete(task);
5900 logRecoverableError(request, x$jscomp$0, thrownInfo);
5901 trackPostpone(request, trackedPostpones, task, request$jscomp$1);
5902 finishedTask(
5903 request,
5904 task.blockedBoundary,
5905 task.row,
5906 request$jscomp$1
5907 );
5908 } else if (
5909 "object" === typeof x$jscomp$0 &&
5910 null !== x$jscomp$0 &&
5911 "function" === typeof x$jscomp$0.then
5912 ) {
5913 request$jscomp$1.status = 0;
5914 task.thenableState =
5915 thrownValue === SuspenseException
5916 ? getThenableStateAfterSuspending()
5917 : null;
5918 var ping$jscomp$0 = task.ping;
5919 x$jscomp$0.then(ping$jscomp$0, ping$jscomp$0);
5920 } else {
5921 var errorInfo$jscomp$0 = getThrownInfo(task.componentStack);
5922 task.abortSet.delete(task);
5923 request$jscomp$1.status = 4;
5924 var boundary$jscomp$0 = task.blockedBoundary,
5925 row = task.row;
5926 null !== row &&
5927 0 === --row.pendingTasks &&
5928 finishSuspenseListRow(request, row);
5929 request.allPendingTasks--;
5930 request$jscomp$0 = logRecoverableError(
5931 request,
5932 x$jscomp$0,
5933 errorInfo$jscomp$0
5934 );
5935 if (null === boundary$jscomp$0) fatalError(request, x$jscomp$0);
5936 else if (
5937 (boundary$jscomp$0.pendingTasks--,
5938 4 !== boundary$jscomp$0.status)
5939 ) {
5940 boundary$jscomp$0.status = 4;
5941 boundary$jscomp$0.errorDigest = request$jscomp$0;
5942 untrackBoundary(request, boundary$jscomp$0);
5943 var boundaryRow = boundary$jscomp$0.row;
5944 null !== boundaryRow &&
5945 0 === --boundaryRow.pendingTasks &&
5946 finishSuspenseListRow(request, boundaryRow);
5947 boundary$jscomp$0.parentFlushed &&
5948 request.clientRenderedBoundaries.push(boundary$jscomp$0);
5949 0 === request.pendingRootTasks &&
5950 null === request.trackedPostpones &&
5951 null !== boundary$jscomp$0.contentPreamble &&
5952 preparePreamble(request);
5953 }
5954 0 === request.allPendingTasks && completeAll(request);
5955 }
5956 } finally {
5957 }
5958 }
5959 }
5960 pingedTasks.splice(0, i);
5961 null !== request$jscomp$2.destination &&
5962 flushCompletedQueues(request$jscomp$2, request$jscomp$2.destination);
5963 } catch (error) {
5964 logRecoverableError(request$jscomp$2, error, {}),
5965 fatalError(request$jscomp$2, error);
5966 } finally {
5967 (currentResumableState = prevResumableState),
5968 (ReactSharedInternals.H = prevDispatcher),
5969 (ReactSharedInternals.A = prevAsyncDispatcher),
5970 prevDispatcher === HooksDispatcher && switchContext(prevContext),
5971 (currentRequest = prevRequest);
5972 }
5973 }
5974}
5975function preparePreambleFromSubtree(
5976 request,
5977 segment,
5978 collectedPreambleSegments
5979) {
5980 segment.preambleChildren.length &&
5981 collectedPreambleSegments.push(segment.preambleChildren);
5982 for (var pendingPreambles = !1, i = 0; i < segment.children.length; i++)
5983 pendingPreambles =
5984 preparePreambleFromSegment(
5985 request,
5986 segment.children[i],
5987 collectedPreambleSegments
5988 ) || pendingPreambles;
5989 return pendingPreambles;
5990}
5991function preparePreambleFromSegment(
5992 request,
5993 segment,
5994 collectedPreambleSegments
5995) {
5996 var boundary = segment.boundary;
5997 if (null === boundary)
5998 return preparePreambleFromSubtree(
5999 request,
6000 segment,
6001 collectedPreambleSegments
6002 );
6003 var preamble = boundary.contentPreamble,
6004 fallbackPreamble = boundary.fallbackPreamble;
6005 if (null === preamble || null === fallbackPreamble) return !1;
6006 switch (boundary.status) {
6007 case 1:
6008 hoistPreambleState(request.renderState, preamble);
6009 request.byteSize += boundary.byteSize;
6010 segment = boundary.completedSegments[0];
6011 if (!segment)
6012 throw Error(
6013 "A previously unvisited boundary must have exactly one root segment. This is a bug in React."
6014 );
6015 return preparePreambleFromSubtree(
6016 request,
6017 segment,
6018 collectedPreambleSegments
6019 );
6020 case 5:
6021 if (null !== request.trackedPostpones) return !0;
6022 case 4:
6023 if (1 === segment.status)
6024 return (
6025 hoistPreambleState(request.renderState, fallbackPreamble),
6026 preparePreambleFromSubtree(
6027 request,
6028 segment,
6029 collectedPreambleSegments
6030 )
6031 );
6032 default:
6033 return !0;
6034 }
6035}
6036function preparePreamble(request) {
6037 if (
6038 request.completedRootSegment &&
6039 null === request.completedPreambleSegments
6040 ) {
6041 var collectedPreambleSegments = [],
6042 originalRequestByteSize = request.byteSize,
6043 hasPendingPreambles = preparePreambleFromSegment(
6044 request,
6045 request.completedRootSegment,
6046 collectedPreambleSegments
6047 ),
6048 preamble = request.renderState.preamble;
6049 !1 === hasPendingPreambles || (preamble.headChunks && preamble.bodyChunks)
6050 ? (request.completedPreambleSegments = collectedPreambleSegments)
6051 : (request.byteSize = originalRequestByteSize);
6052 }
6053}
6054function flushSubtree(request, destination, segment, hoistableState) {
6055 segment.parentFlushed = !0;
6056 switch (segment.status) {
6057 case 0:
6058 segment.id = request.nextSegmentId++;
6059 case 5:
6060 return (
6061 (hoistableState = segment.id),
6062 (segment.lastPushedText = !1),
6063 (segment.textEmbedded = !1),
6064 (request = request.renderState),
6065 destination.push('<template id="'),
6066 destination.push(request.placeholderPrefix),
6067 (request = hoistableState.toString(16)),
6068 destination.push(request),
6069 destination.push('"></template>')
6070 );
6071 case 1:
6072 segment.status = 2;
6073 var r = !0,
6074 chunks = segment.chunks,
6075 chunkIdx = 0;
6076 segment = segment.children;
6077 for (var childIdx = 0; childIdx < segment.length; childIdx++) {
6078 for (r = segment[childIdx]; chunkIdx < r.index; chunkIdx++)
6079 destination.push(chunks[chunkIdx]);
6080 r = flushSegment(request, destination, r, hoistableState);
6081 }
6082 for (; chunkIdx < chunks.length - 1; chunkIdx++)
6083 destination.push(chunks[chunkIdx]);
6084 chunkIdx < chunks.length && (r = destination.push(chunks[chunkIdx]));
6085 return r;
6086 case 3:
6087 return !0;
6088 default:
6089 throw Error(
6090 "Aborted, errored or already flushed boundaries should not be flushed again. This is a bug in React."
6091 );
6092 }
6093}
6094var flushedByteSize = 0;
6095function flushSegment(request, destination, segment, hoistableState) {
6096 var boundary = segment.boundary;
6097 if (null === boundary)
6098 return flushSubtree(request, destination, segment, hoistableState);
6099 boundary.parentFlushed = !0;
6100 if (4 === boundary.status) {
6101 var row = boundary.row;
6102 null !== row &&
6103 0 === --row.pendingTasks &&
6104 finishSuspenseListRow(request, row);
6105 request.renderState.generateStaticMarkup ||
6106 ((boundary = boundary.errorDigest),
6107 destination.push("\x3c!--$!--\x3e"),
6108 destination.push("<template"),
6109 boundary &&
6110 (destination.push(' data-dgst="'),
6111 (boundary = escapeTextForBrowser(boundary)),
6112 destination.push(boundary),
6113 destination.push('"')),
6114 destination.push("></template>"));
6115 flushSubtree(request, destination, segment, hoistableState);
6116 request = request.renderState.generateStaticMarkup
6117 ? !0
6118 : destination.push("\x3c!--/$--\x3e");
6119 return request;
6120 }
6121 if (1 !== boundary.status)
6122 return (
6123 0 === boundary.status &&
6124 (boundary.rootSegmentID = request.nextSegmentId++),
6125 0 < boundary.completedSegments.length &&
6126 request.partialBoundaries.push(boundary),
6127 writeStartPendingSuspenseBoundary(
6128 destination,
6129 request.renderState,
6130 boundary.rootSegmentID
6131 ),
6132 hoistableState && hoistHoistables(hoistableState, boundary.fallbackState),
6133 flushSubtree(request, destination, segment, hoistableState),
6134 destination.push("\x3c!--/$--\x3e")
6135 );
6136 if (
6137 !flushingPartialBoundaries &&
6138 isEligibleForOutlining(request, boundary) &&
6139 flushedByteSize + boundary.byteSize > request.progressiveChunkSize
6140 )
6141 return (
6142 (boundary.rootSegmentID = request.nextSegmentId++),
6143 request.completedBoundaries.push(boundary),
6144 writeStartPendingSuspenseBoundary(
6145 destination,
6146 request.renderState,
6147 boundary.rootSegmentID
6148 ),
6149 flushSubtree(request, destination, segment, hoistableState),
6150 destination.push("\x3c!--/$--\x3e")
6151 );
6152 flushedByteSize += boundary.byteSize;
6153 hoistableState && hoistHoistables(hoistableState, boundary.contentState);
6154 segment = boundary.row;
6155 null !== segment &&
6156 isEligibleForOutlining(request, boundary) &&
6157 0 === --segment.pendingTasks &&
6158 finishSuspenseListRow(request, segment);
6159 request.renderState.generateStaticMarkup ||
6160 destination.push("\x3c!--$--\x3e");
6161 segment = boundary.completedSegments;
6162 if (1 !== segment.length)
6163 throw Error(
6164 "A previously unvisited boundary must have exactly one root segment. This is a bug in React."
6165 );
6166 flushSegment(request, destination, segment[0], hoistableState);
6167 request = request.renderState.generateStaticMarkup
6168 ? !0
6169 : destination.push("\x3c!--/$--\x3e");
6170 return request;
6171}
6172function flushSegmentContainer(request, destination, segment, hoistableState) {
6173 writeStartSegment(
6174 destination,
6175 request.renderState,
6176 segment.parentFormatContext,
6177 segment.id
6178 );
6179 flushSegment(request, destination, segment, hoistableState);
6180 return writeEndSegment(destination, segment.parentFormatContext);
6181}
6182function flushCompletedBoundary(request, destination, boundary) {
6183 flushedByteSize = boundary.byteSize;
6184 for (
6185 var completedSegments = boundary.completedSegments, i = 0;
6186 i < completedSegments.length;
6187 i++
6188 )
6189 flushPartiallyCompletedSegment(
6190 request,
6191 destination,
6192 boundary,
6193 completedSegments[i]
6194 );
6195 completedSegments.length = 0;
6196 completedSegments = boundary.row;
6197 null !== completedSegments &&
6198 isEligibleForOutlining(request, boundary) &&
6199 0 === --completedSegments.pendingTasks &&
6200 finishSuspenseListRow(request, completedSegments);
6201 writeHoistablesForBoundary(
6202 destination,
6203 boundary.contentState,
6204 request.renderState
6205 );
6206 completedSegments = request.resumableState;
6207 request = request.renderState;
6208 i = boundary.rootSegmentID;
6209 boundary = boundary.contentState;
6210 var requiresStyleInsertion = request.stylesToHoist;
6211 request.stylesToHoist = !1;
6212 destination.push(request.startInlineScript);
6213 destination.push(">");
6214 requiresStyleInsertion
6215 ? (0 === (completedSegments.instructions & 4) &&
6216 ((completedSegments.instructions |= 4),
6217 destination.push(
6218 '$RX=function(b,c,d,e,f){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data="$!",a=a.dataset,c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),f&&(a.cstck=f),b._reactRetry&&b._reactRetry())};'
6219 )),
6220 0 === (completedSegments.instructions & 2) &&
6221 ((completedSegments.instructions |= 2),
6222 destination.push(
6223 '$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};\n$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};'
6224 )),
6225 0 === (completedSegments.instructions & 8)
6226 ? ((completedSegments.instructions |= 8),
6227 destination.push(
6228 '$RM=new Map;$RR=function(n,w,p){function u(q){this._p=null;q()}for(var r=new Map,t=document,h,b,e=t.querySelectorAll("link[data-precedence],style[data-precedence]"),v=[],k=0;b=e[k++];)"not all"===b.getAttribute("media")?v.push(b):("LINK"===b.tagName&&$RM.set(b.getAttribute("href"),b),r.set(b.dataset.precedence,h=b));e=0;b=[];var l,a;for(k=!0;;){if(k){var f=p[e++];if(!f){k=!1;e=0;continue}var c=!1,m=0;var d=f[m++];if(a=$RM.get(d)){var g=a._p;c=!0}else{a=t.createElement("link");a.href=d;a.rel=\n"stylesheet";for(a.dataset.precedence=l=f[m++];g=f[m++];)a.setAttribute(g,f[m++]);g=a._p=new Promise(function(q,x){a.onload=u.bind(a,q);a.onerror=u.bind(a,x)});$RM.set(d,a)}d=a.getAttribute("media");!g||d&&!matchMedia(d).matches||b.push(g);if(c)continue}else{a=v[e++];if(!a)break;l=a.getAttribute("data-precedence");a.removeAttribute("media")}c=r.get(l)||h;c===h&&(h=a);r.set(l,a);c?c.parentNode.insertBefore(a,c.nextSibling):(c=t.head,c.insertBefore(a,c.firstChild))}if(p=document.getElementById(n))p.previousSibling.data=\n"$~";Promise.all(b).then($RC.bind(null,n,w),$RX.bind(null,n,"CSS failed to load"))};$RR("'
6229 ))
6230 : destination.push('$RR("'))
6231 : (0 === (completedSegments.instructions & 2) &&
6232 ((completedSegments.instructions |= 2),
6233 destination.push(
6234 '$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};\n$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};'
6235 )),
6236 destination.push('$RC("'));
6237 completedSegments = i.toString(16);
6238 destination.push(request.boundaryPrefix);
6239 destination.push(completedSegments);
6240 destination.push('","');
6241 destination.push(request.segmentPrefix);
6242 destination.push(completedSegments);
6243 requiresStyleInsertion
6244 ? (destination.push('",'),
6245 writeStyleResourceDependenciesInJS(destination, boundary))
6246 : destination.push('"');
6247 boundary = destination.push(")\x3c/script>");
6248 return writeBootstrap(destination, request) && boundary;
6249}
6250function flushPartiallyCompletedSegment(
6251 request,
6252 destination,
6253 boundary,
6254 segment
6255) {
6256 if (2 === segment.status) return !0;
6257 var hoistableState = boundary.contentState,
6258 segmentID = segment.id;
6259 if (-1 === segmentID) {
6260 if (-1 === (segment.id = boundary.rootSegmentID))
6261 throw Error(
6262 "A root segment ID must have been assigned by now. This is a bug in React."
6263 );
6264 return flushSegmentContainer(request, destination, segment, hoistableState);
6265 }
6266 if (segmentID === boundary.rootSegmentID)
6267 return flushSegmentContainer(request, destination, segment, hoistableState);
6268 flushSegmentContainer(request, destination, segment, hoistableState);
6269 boundary = request.resumableState;
6270 request = request.renderState;
6271 destination.push(request.startInlineScript);
6272 destination.push(">");
6273 0 === (boundary.instructions & 1)
6274 ? ((boundary.instructions |= 1),
6275 destination.push(
6276 '$RS=function(a,b){a=document.getElementById(a);b=document.getElementById(b);for(a.parentNode.removeChild(a);a.firstChild;)b.parentNode.insertBefore(a.firstChild,b);b.parentNode.removeChild(b)};$RS("'
6277 ))
6278 : destination.push('$RS("');
6279 destination.push(request.segmentPrefix);
6280 segmentID = segmentID.toString(16);
6281 destination.push(segmentID);
6282 destination.push('","');
6283 destination.push(request.placeholderPrefix);
6284 destination.push(segmentID);
6285 destination = destination.push('")\x3c/script>');
6286 return destination;
6287}
6288var flushingPartialBoundaries = !1;
6289function flushCompletedQueues(request, destination) {
6290 try {
6291 if (!(0 < request.pendingRootTasks)) {
6292 var i,
6293 completedRootSegment = request.completedRootSegment;
6294 if (null !== completedRootSegment) {
6295 if (5 === completedRootSegment.status) return;
6296 var completedPreambleSegments = request.completedPreambleSegments;
6297 if (null === completedPreambleSegments) return;
6298 flushedByteSize = request.byteSize;
6299 var resumableState = request.resumableState,
6300 renderState = request.renderState,
6301 preamble = renderState.preamble,
6302 htmlChunks = preamble.htmlChunks,
6303 headChunks = preamble.headChunks,
6304 i$jscomp$0;
6305 if (htmlChunks) {
6306 for (i$jscomp$0 = 0; i$jscomp$0 < htmlChunks.length; i$jscomp$0++)
6307 destination.push(htmlChunks[i$jscomp$0]);
6308 if (headChunks)
6309 for (i$jscomp$0 = 0; i$jscomp$0 < headChunks.length; i$jscomp$0++)
6310 destination.push(headChunks[i$jscomp$0]);
6311 else {
6312 var chunk = startChunkForTag("head");
6313 destination.push(chunk);
6314 destination.push(">");
6315 }
6316 } else if (headChunks)
6317 for (i$jscomp$0 = 0; i$jscomp$0 < headChunks.length; i$jscomp$0++)
6318 destination.push(headChunks[i$jscomp$0]);
6319 var charsetChunks = renderState.charsetChunks;
6320 for (i$jscomp$0 = 0; i$jscomp$0 < charsetChunks.length; i$jscomp$0++)
6321 destination.push(charsetChunks[i$jscomp$0]);
6322 charsetChunks.length = 0;
6323 renderState.preconnects.forEach(flushResource, destination);
6324 renderState.preconnects.clear();
6325 var viewportChunks = renderState.viewportChunks;
6326 for (i$jscomp$0 = 0; i$jscomp$0 < viewportChunks.length; i$jscomp$0++)
6327 destination.push(viewportChunks[i$jscomp$0]);
6328 viewportChunks.length = 0;
6329 renderState.fontPreloads.forEach(flushResource, destination);
6330 renderState.fontPreloads.clear();
6331 renderState.highImagePreloads.forEach(flushResource, destination);
6332 renderState.highImagePreloads.clear();
6333 currentlyFlushingRenderState = renderState;
6334 renderState.styles.forEach(flushStylesInPreamble, destination);
6335 currentlyFlushingRenderState = null;
6336 var importMapChunks = renderState.importMapChunks;
6337 for (i$jscomp$0 = 0; i$jscomp$0 < importMapChunks.length; i$jscomp$0++)
6338 destination.push(importMapChunks[i$jscomp$0]);
6339 importMapChunks.length = 0;
6340 renderState.bootstrapScripts.forEach(flushResource, destination);
6341 renderState.scripts.forEach(flushResource, destination);
6342 renderState.scripts.clear();
6343 renderState.bulkPreloads.forEach(flushResource, destination);
6344 renderState.bulkPreloads.clear();
6345 resumableState.instructions |= 32;
6346 var hoistableChunks = renderState.hoistableChunks;
6347 for (i$jscomp$0 = 0; i$jscomp$0 < hoistableChunks.length; i$jscomp$0++)
6348 destination.push(hoistableChunks[i$jscomp$0]);
6349 for (
6350 resumableState = hoistableChunks.length = 0;
6351 resumableState < completedPreambleSegments.length;
6352 resumableState++
6353 ) {
6354 var segments = completedPreambleSegments[resumableState];
6355 for (renderState = 0; renderState < segments.length; renderState++)
6356 flushSegment(request, destination, segments[renderState], null);
6357 }
6358 var preamble$jscomp$0 = request.renderState.preamble,
6359 headChunks$jscomp$0 = preamble$jscomp$0.headChunks;
6360 if (preamble$jscomp$0.htmlChunks || headChunks$jscomp$0) {
6361 var chunk$jscomp$0 = endChunkForTag("head");
6362 destination.push(chunk$jscomp$0);
6363 }
6364 var bodyChunks = preamble$jscomp$0.bodyChunks;
6365 if (bodyChunks)
6366 for (
6367 completedPreambleSegments = 0;
6368 completedPreambleSegments < bodyChunks.length;
6369 completedPreambleSegments++
6370 )
6371 destination.push(bodyChunks[completedPreambleSegments]);
6372 flushSegment(request, destination, completedRootSegment, null);
6373 request.completedRootSegment = null;
6374 var renderState$jscomp$0 = request.renderState;
6375 if (
6376 0 !== request.allPendingTasks ||
6377 0 !== request.clientRenderedBoundaries.length ||
6378 0 !== request.completedBoundaries.length ||
6379 (null !== request.trackedPostpones &&
6380 (0 !== request.trackedPostpones.rootNodes.length ||
6381 null !== request.trackedPostpones.rootSlots))
6382 ) {
6383 var resumableState$jscomp$0 = request.resumableState;
6384 if (0 === (resumableState$jscomp$0.instructions & 64)) {
6385 resumableState$jscomp$0.instructions |= 64;
6386 destination.push(renderState$jscomp$0.startInlineScript);
6387 if (0 === (resumableState$jscomp$0.instructions & 32)) {
6388 resumableState$jscomp$0.instructions |= 32;
6389 var shellId = "_" + resumableState$jscomp$0.idPrefix + "R_";
6390 destination.push(' id="');
6391 var chunk$jscomp$1 = escapeTextForBrowser(shellId);
6392 destination.push(chunk$jscomp$1);
6393 destination.push('"');
6394 }
6395 destination.push(">");
6396 destination.push(
6397 "requestAnimationFrame(function(){$RT=performance.now()});"
6398 );
6399 destination.push("\x3c/script>");
6400 }
6401 }
6402 writeBootstrap(destination, renderState$jscomp$0);
6403 }
6404 var renderState$jscomp$1 = request.renderState;
6405 completedRootSegment = 0;
6406 var viewportChunks$jscomp$0 = renderState$jscomp$1.viewportChunks;
6407 for (
6408 completedRootSegment = 0;
6409 completedRootSegment < viewportChunks$jscomp$0.length;
6410 completedRootSegment++
6411 )
6412 destination.push(viewportChunks$jscomp$0[completedRootSegment]);
6413 viewportChunks$jscomp$0.length = 0;
6414 renderState$jscomp$1.preconnects.forEach(flushResource, destination);
6415 renderState$jscomp$1.preconnects.clear();
6416 renderState$jscomp$1.fontPreloads.forEach(flushResource, destination);
6417 renderState$jscomp$1.fontPreloads.clear();
6418 renderState$jscomp$1.highImagePreloads.forEach(
6419 flushResource,
6420 destination
6421 );
6422 renderState$jscomp$1.highImagePreloads.clear();
6423 renderState$jscomp$1.styles.forEach(preloadLateStyles, destination);
6424 renderState$jscomp$1.scripts.forEach(flushResource, destination);
6425 renderState$jscomp$1.scripts.clear();
6426 renderState$jscomp$1.bulkPreloads.forEach(flushResource, destination);
6427 renderState$jscomp$1.bulkPreloads.clear();
6428 var hoistableChunks$jscomp$0 = renderState$jscomp$1.hoistableChunks;
6429 for (
6430 completedRootSegment = 0;
6431 completedRootSegment < hoistableChunks$jscomp$0.length;
6432 completedRootSegment++
6433 )
6434 destination.push(hoistableChunks$jscomp$0[completedRootSegment]);
6435 hoistableChunks$jscomp$0.length = 0;
6436 var clientRenderedBoundaries = request.clientRenderedBoundaries;
6437 for (i = 0; i < clientRenderedBoundaries.length; i++) {
6438 var boundary = clientRenderedBoundaries[i];
6439 renderState$jscomp$1 = destination;
6440 var resumableState$jscomp$1 = request.resumableState,
6441 renderState$jscomp$2 = request.renderState,
6442 id = boundary.rootSegmentID,
6443 errorDigest = boundary.errorDigest;
6444 renderState$jscomp$1.push(renderState$jscomp$2.startInlineScript);
6445 renderState$jscomp$1.push(">");
6446 0 === (resumableState$jscomp$1.instructions & 4)
6447 ? ((resumableState$jscomp$1.instructions |= 4),
6448 renderState$jscomp$1.push(
6449 '$RX=function(b,c,d,e,f){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data="$!",a=a.dataset,c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),f&&(a.cstck=f),b._reactRetry&&b._reactRetry())};;$RX("'
6450 ))
6451 : renderState$jscomp$1.push('$RX("');
6452 renderState$jscomp$1.push(renderState$jscomp$2.boundaryPrefix);
6453 var chunk$jscomp$2 = id.toString(16);
6454 renderState$jscomp$1.push(chunk$jscomp$2);
6455 renderState$jscomp$1.push('"');
6456 if (errorDigest) {
6457 renderState$jscomp$1.push(",");
6458 var chunk$jscomp$3 = escapeJSStringsForInstructionScripts(
6459 errorDigest || ""
6460 );
6461 renderState$jscomp$1.push(chunk$jscomp$3);
6462 }
6463 var JSCompiler_inline_result =
6464 renderState$jscomp$1.push(")\x3c/script>");
6465 if (!JSCompiler_inline_result) {
6466 request.destination = null;
6467 i++;
6468 clientRenderedBoundaries.splice(0, i);
6469 return;
6470 }
6471 }
6472 clientRenderedBoundaries.splice(0, i);
6473 var completedBoundaries = request.completedBoundaries;
6474 for (i = 0; i < completedBoundaries.length; i++)
6475 if (
6476 !flushCompletedBoundary(request, destination, completedBoundaries[i])
6477 ) {
6478 request.destination = null;
6479 i++;
6480 completedBoundaries.splice(0, i);
6481 return;
6482 }
6483 completedBoundaries.splice(0, i);
6484 flushingPartialBoundaries = !0;
6485 var partialBoundaries = request.partialBoundaries;
6486 for (i = 0; i < partialBoundaries.length; i++) {
6487 var boundary$69 = partialBoundaries[i];
6488 a: {
6489 clientRenderedBoundaries = request;
6490 boundary = destination;
6491 flushedByteSize = boundary$69.byteSize;
6492 var completedSegments = boundary$69.completedSegments;
6493 for (
6494 JSCompiler_inline_result = 0;
6495 JSCompiler_inline_result < completedSegments.length;
6496 JSCompiler_inline_result++
6497 )
6498 if (
6499 !flushPartiallyCompletedSegment(
6500 clientRenderedBoundaries,
6501 boundary,
6502 boundary$69,
6503 completedSegments[JSCompiler_inline_result]
6504 )
6505 ) {
6506 JSCompiler_inline_result++;
6507 completedSegments.splice(0, JSCompiler_inline_result);
6508 var JSCompiler_inline_result$jscomp$0 = !1;
6509 break a;
6510 }
6511 completedSegments.splice(0, JSCompiler_inline_result);
6512 var row = boundary$69.row;
6513 null !== row &&
6514 row.together &&
6515 1 === boundary$69.pendingTasks &&
6516 (1 === row.pendingTasks
6517 ? unblockSuspenseListRow(
6518 clientRenderedBoundaries,
6519 row,
6520 row.hoistables
6521 )
6522 : row.pendingTasks--);
6523 JSCompiler_inline_result$jscomp$0 = writeHoistablesForBoundary(
6524 boundary,
6525 boundary$69.contentState,
6526 clientRenderedBoundaries.renderState
6527 );
6528 }
6529 if (!JSCompiler_inline_result$jscomp$0) {
6530 request.destination = null;
6531 i++;
6532 partialBoundaries.splice(0, i);
6533 return;
6534 }
6535 }
6536 partialBoundaries.splice(0, i);
6537 flushingPartialBoundaries = !1;
6538 var largeBoundaries = request.completedBoundaries;
6539 for (i = 0; i < largeBoundaries.length; i++)
6540 if (!flushCompletedBoundary(request, destination, largeBoundaries[i])) {
6541 request.destination = null;
6542 i++;
6543 largeBoundaries.splice(0, i);
6544 return;
6545 }
6546 largeBoundaries.splice(0, i);
6547 }
6548 } finally {
6549 (flushingPartialBoundaries = !1),
6550 0 === request.allPendingTasks &&
6551 0 === request.clientRenderedBoundaries.length &&
6552 0 === request.completedBoundaries.length &&
6553 ((request.flushScheduled = !1),
6554 (i = request.resumableState),
6555 i.hasBody &&
6556 ((partialBoundaries = endChunkForTag("body")),
6557 destination.push(partialBoundaries)),
6558 i.hasHtml && ((i = endChunkForTag("html")), destination.push(i)),
6559 (request.status = 14),
6560 destination.push(null),
6561 (request.destination = null));
6562 }
6563}
6564function enqueueFlush(request) {
6565 if (
6566 !1 === request.flushScheduled &&
6567 0 === request.pingedTasks.length &&
6568 null !== request.destination
6569 ) {
6570 request.flushScheduled = !0;
6571 var destination = request.destination;
6572 destination
6573 ? flushCompletedQueues(request, destination)
6574 : (request.flushScheduled = !1);
6575 }
6576}
6577function startFlowing(request, destination) {
6578 if (13 === request.status)
6579 (request.status = 14), destination.destroy(request.fatalError);
6580 else if (14 !== request.status && null === request.destination) {
6581 request.destination = destination;
6582 try {
6583 flushCompletedQueues(request, destination);
6584 } catch (error) {
6585 logRecoverableError(request, error, {}), fatalError(request, error);
6586 }
6587 }
6588}
6589function abort(request, reason) {
6590 if (11 === request.status || 10 === request.status) request.status = 12;
6591 try {
6592 var abortableTasks = request.abortableTasks;
6593 if (0 < abortableTasks.size) {
6594 var error =
6595 void 0 === reason
6596 ? Error("The render was aborted by the server without a reason.")
6597 : "object" === typeof reason &&
6598 null !== reason &&
6599 "function" === typeof reason.then
6600 ? Error("The render was aborted by the server with a promise.")
6601 : reason;
6602 request.fatalError = error;
6603 abortableTasks.forEach(function (task) {
6604 return abortTask(task, request, error);
6605 });
6606 abortableTasks.clear();
6607 }
6608 null !== request.destination &&
6609 flushCompletedQueues(request, request.destination);
6610 } catch (error$71) {
6611 logRecoverableError(request, error$71, {}), fatalError(request, error$71);
6612 }
6613}
6614function addToReplayParent(node, parentKeyPath, trackedPostpones) {
6615 if (null === parentKeyPath) trackedPostpones.rootNodes.push(node);
6616 else {
6617 var workingMap = trackedPostpones.workingMap,
6618 parentNode = workingMap.get(parentKeyPath);
6619 void 0 === parentNode &&
6620 ((parentNode = [parentKeyPath[1], parentKeyPath[2], [], null]),
6621 workingMap.set(parentKeyPath, parentNode),
6622 addToReplayParent(parentNode, parentKeyPath[0], trackedPostpones));
6623 parentNode[2].push(node);
6624 }
6625}
6626function onError() {}
6627function renderToStringImpl(
6628 children,
6629 options,
6630 generateStaticMarkup,
6631 abortReason
6632) {
6633 var didFatal = !1,
6634 fatalError = null,
6635 result = "",
6636 readyToStream = !1;
6637 options = createResumableState(options ? options.identifierPrefix : void 0);
6638 children = createRequest(
6639 children,
6640 options,
6641 createRenderState(options, generateStaticMarkup),
6642 createFormatContext(0, null, 0, null),
6643 Infinity,
6644 onError,
6645 void 0,
6646 function () {
6647 readyToStream = !0;
6648 },
6649 void 0,
6650 void 0,
6651 void 0
6652 );
6653 children.flushScheduled = null !== children.destination;
6654 performWork(children);
6655 10 === children.status && (children.status = 11);
6656 null === children.trackedPostpones &&
6657 safelyEmitEarlyPreloads(children, 0 === children.pendingRootTasks);
6658 abort(children, abortReason);
6659 startFlowing(children, {
6660 push: function (chunk) {
6661 null !== chunk && (result += chunk);
6662 return !0;
6663 },
6664 destroy: function (error) {
6665 didFatal = !0;
6666 fatalError = error;
6667 }
6668 });
6669 if (didFatal && fatalError !== abortReason) throw fatalError;
6670 if (!readyToStream)
6671 throw Error(
6672 "A component suspended while responding to synchronous input. This will cause the UI to be replaced with a loading indicator. To fix, updates that suspend should be wrapped with startTransition."
6673 );
6674 return result;
6675}
6676exports.renderToStaticMarkup = function (children, options) {
6677 return renderToStringImpl(
6678 children,
6679 options,
6680 !0,
6681 'The server used "renderToStaticMarkup" which does not support Suspense. If you intended to have the server wait for the suspended component please switch to "renderToPipeableStream" which supports Suspense on the server'
6682 );
6683};
6684exports.renderToString = function (children, options) {
6685 return renderToStringImpl(
6686 children,
6687 options,
6688 !1,
6689 'The server used "renderToString" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to "renderToPipeableStream" which supports Suspense on the server'
6690 );
6691};
6692exports.version = "19.2.3";
Note: See TracBrowser for help on using the repository browser.