PluginProbe
Gutenberg / trunk
Gutenberg vtrunk
24.1.0 24.0.0 23.9.1 23.9.0 23.8.0 23.7.2 23.7.1 23.7.0 23.6.1 23.6.2 23.6.0 23.5.3 23.5.2 23.5.1 23.5.0 23.4.0 23.3.2 23.3.1 23.3.0 23.2.0 23.2.1 23.2.2 23.1.1 23.1.0 23.0.1 All 404 releases
gutenberg / build / scripts / vendors / react-dom-19-orig.js

react-dom-19-orig.js in Gutenberg trunk, at build/scripts/vendors/react-dom-19-orig.js

22,767 lines 1.1 MB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 var ReactDOM = (() => {
2 var __create = Object.create;
3 var __defProp = Object.defineProperty;
4 var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5 var __getOwnPropNames = Object.getOwnPropertyNames;
6 var __getProtoOf = Object.getPrototypeOf;
7 var __hasOwnProp = Object.prototype.hasOwnProperty;
8 var __esm = (fn, res) => function __init() {
9 return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
10 };
11 var __commonJS = (cb, mod) => function __require() {
12 return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
13 };
14 var __export = (target, all) => {
15 for (var name in all)
16 __defProp(target, name, { get: all[name], enumerable: true });
17 };
18 var __copyProps = (to, from, except, desc) => {
19 if (from && typeof from === "object" || typeof from === "function") {
20 for (let key of __getOwnPropNames(from))
21 if (!__hasOwnProp.call(to, key) && key !== except)
22 __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23 }
24 return to;
25 };
26 var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
27 // If the importer is in node compatibility mode or this is not an ESM
28 // file that has been converted to a CommonJS file using a Babel-
29 // compatible transform (i.e. "__esModule" has not been set), then set
30 // "default" to the CommonJS "module.exports" for node compatibility.
31 isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
32 mod
33 ));
34 var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
35
36 // ../react-19/warn-compat.js
37 var warn_compat_exports = {};
38 __export(warn_compat_exports, {
39 warnCompat: () => warnCompat
40 });
41 function warnCompat(key, message) {
42 if (warned.has(key)) {
43 return;
44 }
45 warned.add(key);
46 if (typeof console !== "undefined" && console.warn) {
47 console.warn(`${PREFIX} ${message}`);
48 }
49 }
50 var PREFIX, warned;
51 var init_warn_compat = __esm({
52 "../react-19/warn-compat.js"() {
53 PREFIX = "[wordpress-react-19]";
54 warned = /* @__PURE__ */ new Set();
55 }
56 });
57
58 // react-external:react
59 var require_react = __commonJS({
60 "react-external:react"(exports, module) {
61 module.exports = globalThis.React;
62 }
63 });
64
65 // ../react-19/node_modules/react-dom/cjs/react-dom.development.js
66 var require_react_dom_development = __commonJS({
67 "../react-19/node_modules/react-dom/cjs/react-dom.development.js"(exports) {
68 "use strict";
69 (function() {
70 function noop() {
71 }
72 function testStringCoercion(value) {
73 return "" + value;
74 }
75 function createPortal$1(children, containerInfo, implementation) {
76 var key = 3 < arguments.length && void 0 !== arguments[3] ? arguments[3] : null;
77 if (null == key) key = null;
78 else if (key === REACT_OPTIMISTIC_KEY) key = REACT_OPTIMISTIC_KEY;
79 else {
80 try {
81 testStringCoercion(key);
82 var JSCompiler_inline_result = false;
83 } catch (e) {
84 JSCompiler_inline_result = true;
85 }
86 JSCompiler_inline_result && (console.error(
87 "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
88 "function" === typeof Symbol && Symbol.toStringTag && key[Symbol.toStringTag] || key.constructor.name || "Object"
89 ), testStringCoercion(key));
90 key = "" + key;
91 }
92 return {
93 $$typeof: REACT_PORTAL_TYPE,
94 key,
95 children,
96 containerInfo,
97 implementation
98 };
99 }
100 function getCrossOriginStringAs(as, input) {
101 if ("font" === as) return "";
102 if ("string" === typeof input)
103 return "use-credentials" === input ? input : "";
104 }
105 function getValueDescriptorExpectingObjectForWarning(thing) {
106 return null === thing ? "`null`" : void 0 === thing ? "`undefined`" : "" === thing ? "an empty string" : 'something with type "' + typeof thing + '"';
107 }
108 function getValueDescriptorExpectingEnumForWarning(thing) {
109 return null === thing ? "`null`" : void 0 === thing ? "`undefined`" : "" === thing ? "an empty string" : "string" === typeof thing ? JSON.stringify(thing) : "number" === typeof thing ? "`" + thing + "`" : 'something with type "' + typeof thing + '"';
110 }
111 function resolveDispatcher() {
112 var dispatcher = ReactSharedInternals.H;
113 null === dispatcher && console.error(
114 "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."
115 );
116 return dispatcher;
117 }
118 "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
119 var React = require_react(), Internals = {
120 d: {
121 f: noop,
122 r: function() {
123 throw Error(
124 "Invalid form element. requestFormReset must be passed a form that was rendered by React."
125 );
126 },
127 D: noop,
128 C: noop,
129 L: noop,
130 m: noop,
131 X: noop,
132 S: noop,
133 M: noop
134 },
135 p: 0,
136 findDOMNode: null
137 }, REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal"), REACT_RECOVERABLE_TYPE = /* @__PURE__ */ Symbol.for("react.recoverable"), REACT_OPTIMISTIC_KEY = /* @__PURE__ */ Symbol.for("react.optimistic_key"), ReactSharedInternals = React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;
138 "function" === typeof Map && null != Map.prototype && "function" === typeof Map.prototype.forEach && "function" === typeof Set && null != Set.prototype && "function" === typeof Set.prototype.clear && "function" === typeof Set.prototype.forEach || console.error(
139 "React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"
140 );
141 exports.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = Internals;
142 exports.browser = function(reason) {
143 return { $$typeof: REACT_RECOVERABLE_TYPE, _reason: reason };
144 };
145 exports.createPortal = function(children, container) {
146 var key = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null;
147 if (!container || 1 !== container.nodeType && 9 !== container.nodeType && 11 !== container.nodeType)
148 throw Error("Target container is not a DOM element.");
149 return createPortal$1(children, container, null, key);
150 };
151 exports.flushSync = function(fn) {
152 var previousTransition = ReactSharedInternals.T, previousUpdatePriority = Internals.p;
153 try {
154 if (ReactSharedInternals.T = null, Internals.p = 2, fn)
155 return fn();
156 } finally {
157 ReactSharedInternals.T = previousTransition, Internals.p = previousUpdatePriority, Internals.d.f() && console.error(
158 "flushSync was called from inside a lifecycle method. React cannot flush when React is already rendering. Consider moving this call to a scheduler task or micro task."
159 );
160 }
161 };
162 exports.preconnect = function(href, options) {
163 "string" === typeof href && href ? null != options && "object" !== typeof options ? console.error(
164 "ReactDOM.preconnect(): Expected the `options` argument (second) to be an object but encountered %s instead. The only supported option at this time is `crossOrigin` which accepts a string.",
165 getValueDescriptorExpectingEnumForWarning(options)
166 ) : null != options && "string" !== typeof options.crossOrigin && console.error(
167 "ReactDOM.preconnect(): Expected the `crossOrigin` option (second argument) to be a string but encountered %s instead. Try removing this option or passing a string value instead.",
168 getValueDescriptorExpectingObjectForWarning(options.crossOrigin)
169 ) : console.error(
170 "ReactDOM.preconnect(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",
171 getValueDescriptorExpectingObjectForWarning(href)
172 );
173 "string" === typeof href && (options ? (options = options.crossOrigin, options = "string" === typeof options ? "use-credentials" === options ? options : "" : void 0) : options = null, Internals.d.C(href, options));
174 };
175 exports.prefetchDNS = function(href) {
176 if ("string" !== typeof href || !href)
177 console.error(
178 "ReactDOM.prefetchDNS(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",
179 getValueDescriptorExpectingObjectForWarning(href)
180 );
181 else if (1 < arguments.length) {
182 var options = arguments[1];
183 "object" === typeof options && options.hasOwnProperty("crossOrigin") ? console.error(
184 "ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. It looks like the you are attempting to set a crossOrigin property for this DNS lookup hint. Browsers do not perform DNS queries using CORS and setting this attribute on the resource hint has no effect. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",
185 getValueDescriptorExpectingEnumForWarning(options)
186 ) : console.error(
187 "ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",
188 getValueDescriptorExpectingEnumForWarning(options)
189 );
190 }
191 "string" === typeof href && Internals.d.D(href);
192 };
193 exports.preinit = function(href, options) {
194 "string" === typeof href && href ? null == options || "object" !== typeof options ? console.error(
195 "ReactDOM.preinit(): Expected the `options` argument (second) to be an object with an `as` property describing the type of resource to be preinitialized but encountered %s instead.",
196 getValueDescriptorExpectingEnumForWarning(options)
197 ) : "style" !== options.as && "script" !== options.as && console.error(
198 'ReactDOM.preinit(): Expected the `as` property in the `options` argument (second) to contain a valid value describing the type of resource to be preinitialized but encountered %s instead. Valid values for `as` are "style" and "script".',
199 getValueDescriptorExpectingEnumForWarning(options.as)
200 ) : console.error(
201 "ReactDOM.preinit(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",
202 getValueDescriptorExpectingObjectForWarning(href)
203 );
204 if ("string" === typeof href && options && "string" === typeof options.as) {
205 var as = options.as, crossOrigin = getCrossOriginStringAs(as, options.crossOrigin), integrity = "string" === typeof options.integrity ? options.integrity : void 0, fetchPriority = "string" === typeof options.fetchPriority ? options.fetchPriority : void 0;
206 "style" === as ? Internals.d.S(
207 href,
208 "string" === typeof options.precedence ? options.precedence : void 0,
209 {
210 crossOrigin,
211 integrity,
212 fetchPriority
213 }
214 ) : "script" === as && Internals.d.X(href, {
215 crossOrigin,
216 integrity,
217 fetchPriority,
218 nonce: "string" === typeof options.nonce ? options.nonce : void 0
219 });
220 }
221 };
222 exports.preinitModule = function(href, options) {
223 var encountered = "";
224 "string" === typeof href && href || (encountered += " The `href` argument encountered was " + getValueDescriptorExpectingObjectForWarning(href) + ".");
225 void 0 !== options && "object" !== typeof options ? encountered += " The `options` argument encountered was " + getValueDescriptorExpectingObjectForWarning(options) + "." : options && "as" in options && "script" !== options.as && (encountered += " The `as` option encountered was " + getValueDescriptorExpectingEnumForWarning(options.as) + ".");
226 if (encountered)
227 console.error(
228 "ReactDOM.preinitModule(): Expected up to two arguments, a non-empty `href` string and, optionally, an `options` object with a valid `as` property.%s",
229 encountered
230 );
231 else
232 switch (encountered = options && "string" === typeof options.as ? options.as : "script", encountered) {
233 case "script":
234 break;
235 default:
236 encountered = getValueDescriptorExpectingEnumForWarning(encountered), console.error(
237 'ReactDOM.preinitModule(): Currently the only supported "as" type for this function is "script" but received "%s" instead. This warning was generated for `href` "%s". In the future other module types will be supported, aligning with the import-attributes proposal. Learn more here: (https://github.com/tc39/proposal-import-attributes)',
238 encountered,
239 href
240 );
241 }
242 if ("string" === typeof href)
243 if ("object" === typeof options && null !== options) {
244 if (null == options.as || "script" === options.as)
245 encountered = getCrossOriginStringAs(
246 options.as,
247 options.crossOrigin
248 ), Internals.d.M(href, {
249 crossOrigin: encountered,
250 integrity: "string" === typeof options.integrity ? options.integrity : void 0,
251 nonce: "string" === typeof options.nonce ? options.nonce : void 0,
252 fetchPriority: "string" === typeof options.fetchPriority ? options.fetchPriority : void 0
253 });
254 } else null == options && Internals.d.M(href);
255 };
256 exports.preload = function(href, options) {
257 var encountered = "";
258 "string" === typeof href && href || (encountered += " The `href` argument encountered was " + getValueDescriptorExpectingObjectForWarning(href) + ".");
259 null == options || "object" !== typeof options ? encountered += " The `options` argument encountered was " + getValueDescriptorExpectingObjectForWarning(options) + "." : "string" === typeof options.as && options.as || (encountered += " The `as` option encountered was " + getValueDescriptorExpectingObjectForWarning(options.as) + ".");
260 encountered && console.error(
261 'ReactDOM.preload(): Expected two arguments, a non-empty `href` string and an `options` object with an `as` property valid for a `<link rel="preload" as="..." />` tag.%s',
262 encountered
263 );
264 if ("string" === typeof href && "object" === typeof options && null !== options && "string" === typeof options.as) {
265 encountered = options.as;
266 var crossOrigin = getCrossOriginStringAs(
267 encountered,
268 options.crossOrigin
269 );
270 Internals.d.L(href, encountered, {
271 crossOrigin,
272 integrity: "string" === typeof options.integrity ? options.integrity : void 0,
273 nonce: "string" === typeof options.nonce ? options.nonce : void 0,
274 type: "string" === typeof options.type ? options.type : void 0,
275 fetchPriority: "string" === typeof options.fetchPriority ? options.fetchPriority : void 0,
276 referrerPolicy: "string" === typeof options.referrerPolicy ? options.referrerPolicy : void 0,
277 imageSrcSet: "string" === typeof options.imageSrcSet ? options.imageSrcSet : void 0,
278 imageSizes: "string" === typeof options.imageSizes ? options.imageSizes : void 0,
279 media: "string" === typeof options.media ? options.media : void 0
280 });
281 }
282 };
283 exports.preloadModule = function(href, options) {
284 var encountered = "";
285 "string" === typeof href && href || (encountered += " The `href` argument encountered was " + getValueDescriptorExpectingObjectForWarning(href) + ".");
286 void 0 !== options && "object" !== typeof options ? encountered += " The `options` argument encountered was " + getValueDescriptorExpectingObjectForWarning(options) + "." : options && "as" in options && "string" !== typeof options.as && (encountered += " The `as` option encountered was " + getValueDescriptorExpectingObjectForWarning(options.as) + ".");
287 encountered && console.error(
288 'ReactDOM.preloadModule(): Expected two arguments, a non-empty `href` string and, optionally, an `options` object with an `as` property valid for a `<link rel="modulepreload" as="..." />` tag.%s',
289 encountered
290 );
291 "string" === typeof href && (options ? (encountered = getCrossOriginStringAs(
292 options.as,
293 options.crossOrigin
294 ), Internals.d.m(href, {
295 as: "string" === typeof options.as && "script" !== options.as ? options.as : void 0,
296 crossOrigin: encountered,
297 integrity: "string" === typeof options.integrity ? options.integrity : void 0,
298 nonce: "string" === typeof options.nonce ? options.nonce : void 0,
299 fetchPriority: "string" === typeof options.fetchPriority ? options.fetchPriority : void 0
300 })) : Internals.d.m(href));
301 };
302 exports.requestFormReset = function(form) {
303 Internals.d.r(form);
304 };
305 exports.unstable_batchedUpdates = function(fn, a) {
306 return fn(a);
307 };
308 exports.useFormState = function(action, initialState, permalink) {
309 return resolveDispatcher().useFormState(action, initialState, permalink);
310 };
311 exports.useFormStatus = function() {
312 return resolveDispatcher().useHostTransitionStatus();
313 };
314 exports.version = "19.3.0";
315 "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
316 })();
317 }
318 });
319
320 // ../react-19/node_modules/react-dom/index.js
321 var require_react_dom = __commonJS({
322 "../react-19/node_modules/react-dom/index.js"(exports, module) {
323 "use strict";
324 if (false) {
325 checkDCE();
326 module.exports = null;
327 } else {
328 module.exports = require_react_dom_development();
329 }
330 }
331 });
332
333 // ../react-19/node_modules/scheduler/cjs/scheduler.development.js
334 var require_scheduler_development = __commonJS({
335 "../react-19/node_modules/scheduler/cjs/scheduler.development.js"(exports) {
336 "use strict";
337 (function() {
338 function performWorkUntilDeadline() {
339 needsPaint = false;
340 if (isMessageLoopRunning) {
341 var currentTime = exports.unstable_now();
342 startTime = currentTime;
343 var hasMoreWork = true;
344 try {
345 a: {
346 isHostCallbackScheduled = false;
347 isHostTimeoutScheduled && (isHostTimeoutScheduled = false, localClearTimeout(taskTimeoutID), taskTimeoutID = -1);
348 isPerformingWork = true;
349 var previousPriorityLevel = currentPriorityLevel;
350 try {
351 b: {
352 advanceTimers(currentTime);
353 for (currentTask = peek(taskQueue); null !== currentTask && !(currentTask.expirationTime > currentTime && shouldYieldToHost()); ) {
354 var callback = currentTask.callback;
355 if ("function" === typeof callback) {
356 currentTask.callback = null;
357 currentPriorityLevel = currentTask.priorityLevel;
358 var continuationCallback = callback(
359 currentTask.expirationTime <= currentTime
360 );
361 currentTime = exports.unstable_now();
362 if ("function" === typeof continuationCallback) {
363 currentTask.callback = continuationCallback;
364 advanceTimers(currentTime);
365 hasMoreWork = true;
366 break b;
367 }
368 currentTask === peek(taskQueue) && pop(taskQueue);
369 advanceTimers(currentTime);
370 } else pop(taskQueue);
371 currentTask = peek(taskQueue);
372 }
373 if (null !== currentTask) hasMoreWork = true;
374 else {
375 var firstTimer = peek(timerQueue);
376 null !== firstTimer && requestHostTimeout(
377 handleTimeout,
378 firstTimer.startTime - currentTime
379 );
380 hasMoreWork = false;
381 }
382 }
383 break a;
384 } finally {
385 currentTask = null, currentPriorityLevel = previousPriorityLevel, isPerformingWork = false;
386 }
387 hasMoreWork = void 0;
388 }
389 } finally {
390 hasMoreWork ? schedulePerformWorkUntilDeadline() : isMessageLoopRunning = false;
391 }
392 }
393 }
394 function push(heap, node) {
395 var index = heap.length;
396 heap.push(node);
397 a: for (; 0 < index; ) {
398 var parentIndex = index - 1 >>> 1, parent = heap[parentIndex];
399 if (0 < compare(parent, node))
400 heap[parentIndex] = node, heap[index] = parent, index = parentIndex;
401 else break a;
402 }
403 }
404 function peek(heap) {
405 return 0 === heap.length ? null : heap[0];
406 }
407 function pop(heap) {
408 if (0 === heap.length) return null;
409 var first = heap[0], last = heap.pop();
410 if (last !== first) {
411 heap[0] = last;
412 a: for (var index = 0, length = heap.length, halfLength = length >>> 1; index < halfLength; ) {
413 var leftIndex = 2 * (index + 1) - 1, left = heap[leftIndex], rightIndex = leftIndex + 1, right = heap[rightIndex];
414 if (0 > compare(left, last))
415 rightIndex < length && 0 > compare(right, left) ? (heap[index] = right, heap[rightIndex] = last, index = rightIndex) : (heap[index] = left, heap[leftIndex] = last, index = leftIndex);
416 else if (rightIndex < length && 0 > compare(right, last))
417 heap[index] = right, heap[rightIndex] = last, index = rightIndex;
418 else break a;
419 }
420 }
421 return first;
422 }
423 function compare(a, b) {
424 var diff = a.sortIndex - b.sortIndex;
425 return 0 !== diff ? diff : a.id - b.id;
426 }
427 function advanceTimers(currentTime) {
428 for (var timer = peek(timerQueue); null !== timer; ) {
429 if (null === timer.callback) pop(timerQueue);
430 else if (timer.startTime <= currentTime)
431 pop(timerQueue), timer.sortIndex = timer.expirationTime, push(taskQueue, timer);
432 else break;
433 timer = peek(timerQueue);
434 }
435 }
436 function handleTimeout(currentTime) {
437 isHostTimeoutScheduled = false;
438 advanceTimers(currentTime);
439 if (!isHostCallbackScheduled)
440 if (null !== peek(taskQueue))
441 isHostCallbackScheduled = true, isMessageLoopRunning || (isMessageLoopRunning = true, schedulePerformWorkUntilDeadline());
442 else {
443 var firstTimer = peek(timerQueue);
444 null !== firstTimer && requestHostTimeout(
445 handleTimeout,
446 firstTimer.startTime - currentTime
447 );
448 }
449 }
450 function shouldYieldToHost() {
451 return needsPaint ? true : exports.unstable_now() - startTime < frameInterval ? false : true;
452 }
453 function requestHostTimeout(callback, ms) {
454 taskTimeoutID = localSetTimeout(function() {
455 callback(exports.unstable_now());
456 }, ms);
457 }
458 "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
459 exports.unstable_now = void 0;
460 if ("object" === typeof performance && "function" === typeof performance.now) {
461 var localPerformance = performance;
462 exports.unstable_now = function() {
463 return localPerformance.now();
464 };
465 } else {
466 var localDate = Date, initialTime = localDate.now();
467 exports.unstable_now = function() {
468 return localDate.now() - initialTime;
469 };
470 }
471 var taskQueue = [], timerQueue = [], taskIdCounter = 1, currentTask = null, currentPriorityLevel = 3, isPerformingWork = false, isHostCallbackScheduled = false, isHostTimeoutScheduled = false, needsPaint = false, localSetTimeout = "function" === typeof setTimeout ? setTimeout : null, localClearTimeout = "function" === typeof clearTimeout ? clearTimeout : null, localSetImmediate = "undefined" !== typeof setImmediate ? setImmediate : null, isMessageLoopRunning = false, taskTimeoutID = -1, frameInterval = 5, startTime = -1;
472 if ("function" === typeof localSetImmediate)
473 var schedulePerformWorkUntilDeadline = function() {
474 localSetImmediate(performWorkUntilDeadline);
475 };
476 else if ("undefined" !== typeof MessageChannel) {
477 var channel = new MessageChannel(), port = channel.port2;
478 channel.port1.onmessage = performWorkUntilDeadline;
479 schedulePerformWorkUntilDeadline = function() {
480 port.postMessage(null);
481 };
482 } else
483 schedulePerformWorkUntilDeadline = function() {
484 localSetTimeout(performWorkUntilDeadline, 0);
485 };
486 exports.unstable_IdlePriority = 5;
487 exports.unstable_ImmediatePriority = 1;
488 exports.unstable_LowPriority = 4;
489 exports.unstable_NormalPriority = 3;
490 exports.unstable_Profiling = null;
491 exports.unstable_UserBlockingPriority = 2;
492 exports.unstable_cancelCallback = function(task) {
493 task.callback = null;
494 };
495 exports.unstable_forceFrameRate = function(fps) {
496 0 > fps || 125 < fps ? console.error(
497 "forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"
498 ) : frameInterval = 0 < fps ? Math.floor(1e3 / fps) : 5;
499 };
500 exports.unstable_getCurrentPriorityLevel = function() {
501 return currentPriorityLevel;
502 };
503 exports.unstable_next = function(eventHandler) {
504 switch (currentPriorityLevel) {
505 case 1:
506 case 2:
507 case 3:
508 var priorityLevel = 3;
509 break;
510 default:
511 priorityLevel = currentPriorityLevel;
512 }
513 var previousPriorityLevel = currentPriorityLevel;
514 currentPriorityLevel = priorityLevel;
515 try {
516 return eventHandler();
517 } finally {
518 currentPriorityLevel = previousPriorityLevel;
519 }
520 };
521 exports.unstable_requestPaint = function() {
522 needsPaint = true;
523 };
524 exports.unstable_runWithPriority = function(priorityLevel, eventHandler) {
525 switch (priorityLevel) {
526 case 1:
527 case 2:
528 case 3:
529 case 4:
530 case 5:
531 break;
532 default:
533 priorityLevel = 3;
534 }
535 var previousPriorityLevel = currentPriorityLevel;
536 currentPriorityLevel = priorityLevel;
537 try {
538 return eventHandler();
539 } finally {
540 currentPriorityLevel = previousPriorityLevel;
541 }
542 };
543 exports.unstable_scheduleCallback = function(priorityLevel, callback, options) {
544 var currentTime = exports.unstable_now();
545 "object" === typeof options && null !== options ? (options = options.delay, options = "number" === typeof options && 0 < options ? currentTime + options : currentTime) : options = currentTime;
546 switch (priorityLevel) {
547 case 1:
548 var timeout = -1;
549 break;
550 case 2:
551 timeout = 250;
552 break;
553 case 5:
554 timeout = 1073741823;
555 break;
556 case 4:
557 timeout = 1e4;
558 break;
559 default:
560 timeout = 5e3;
561 }
562 timeout = options + timeout;
563 priorityLevel = {
564 id: taskIdCounter++,
565 callback,
566 priorityLevel,
567 startTime: options,
568 expirationTime: timeout,
569 sortIndex: -1
570 };
571 options > currentTime ? (priorityLevel.sortIndex = options, push(timerQueue, priorityLevel), null === peek(taskQueue) && priorityLevel === peek(timerQueue) && (isHostTimeoutScheduled ? (localClearTimeout(taskTimeoutID), taskTimeoutID = -1) : isHostTimeoutScheduled = true, requestHostTimeout(handleTimeout, options - currentTime))) : (priorityLevel.sortIndex = timeout, push(taskQueue, priorityLevel), isHostCallbackScheduled || isPerformingWork || (isHostCallbackScheduled = true, isMessageLoopRunning || (isMessageLoopRunning = true, schedulePerformWorkUntilDeadline())));
572 return priorityLevel;
573 };
574 exports.unstable_shouldYield = shouldYieldToHost;
575 exports.unstable_wrapCallback = function(callback) {
576 var parentPriorityLevel = currentPriorityLevel;
577 return function() {
578 var previousPriorityLevel = currentPriorityLevel;
579 currentPriorityLevel = parentPriorityLevel;
580 try {
581 return callback.apply(this, arguments);
582 } finally {
583 currentPriorityLevel = previousPriorityLevel;
584 }
585 };
586 };
587 "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
588 })();
589 }
590 });
591
592 // ../react-19/node_modules/scheduler/index.js
593 var require_scheduler = __commonJS({
594 "../react-19/node_modules/scheduler/index.js"(exports, module) {
595 "use strict";
596 if (false) {
597 module.exports = null;
598 } else {
599 module.exports = require_scheduler_development();
600 }
601 }
602 });
603
604 // ../react-19/node_modules/react-dom/cjs/react-dom-client.development.js
605 var require_react_dom_client_development = __commonJS({
606 "../react-19/node_modules/react-dom/cjs/react-dom-client.development.js"(exports) {
607 "use strict";
608 (function() {
609 function findHook(fiber, id) {
610 for (fiber = fiber.memoizedState; null !== fiber && 0 < id; )
611 fiber = fiber.next, id--;
612 return fiber;
613 }
614 function copyWithSetImpl(obj, path, index, value) {
615 if (index >= path.length) return value;
616 var key = path[index], updated = isArrayImpl(obj) ? obj.slice() : assign({}, obj);
617 updated[key] = copyWithSetImpl(obj[key], path, index + 1, value);
618 return updated;
619 }
620 function copyWithRename(obj, oldPath, newPath) {
621 if (oldPath.length !== newPath.length)
622 console.warn("copyWithRename() expects paths of the same length");
623 else {
624 for (var i = 0; i < newPath.length - 1; i++)
625 if (oldPath[i] !== newPath[i]) {
626 console.warn(
627 "copyWithRename() expects paths to be the same except for the deepest key"
628 );
629 return;
630 }
631 return copyWithRenameImpl(obj, oldPath, newPath, 0);
632 }
633 }
634 function copyWithRenameImpl(obj, oldPath, newPath, index) {
635 var oldKey = oldPath[index], updated = isArrayImpl(obj) ? obj.slice() : assign({}, obj);
636 index + 1 === oldPath.length ? (updated[newPath[index]] = updated[oldKey], isArrayImpl(updated) ? updated.splice(oldKey, 1) : delete updated[oldKey]) : updated[oldKey] = copyWithRenameImpl(
637 obj[oldKey],
638 oldPath,
639 newPath,
640 index + 1
641 );
642 return updated;
643 }
644 function copyWithDeleteImpl(obj, path, index) {
645 var key = path[index], updated = isArrayImpl(obj) ? obj.slice() : assign({}, obj);
646 if (index + 1 === path.length)
647 return isArrayImpl(updated) ? updated.splice(key, 1) : delete updated[key], updated;
648 updated[key] = copyWithDeleteImpl(obj[key], path, index + 1);
649 return updated;
650 }
651 function shouldSuspendImpl() {
652 return false;
653 }
654 function shouldErrorImpl() {
655 return null;
656 }
657 function warnInvalidHookAccess() {
658 console.error(
659 "Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://react.dev/link/rules-of-hooks"
660 );
661 }
662 function warnInvalidContextAccess() {
663 console.error(
664 "Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo()."
665 );
666 }
667 function noop() {
668 }
669 function warnForMissingKey() {
670 }
671 function setToSortedString(set) {
672 var array = [];
673 set.forEach(function(value) {
674 array.push(value);
675 });
676 return array.sort().join(", ");
677 }
678 function createFiber(tag, pendingProps, key, mode) {
679 return new FiberNode(tag, pendingProps, key, mode);
680 }
681 function scheduleRoot(root2, element) {
682 root2.context === emptyContextObject && (updateContainerImpl(root2.current, 2, element, root2, null, null), flushSyncWork$1());
683 }
684 function scheduleRefresh(root2, update) {
685 if (null !== resolveFamily) {
686 var staleFamilies = update.staleFamilies;
687 update = update.updatedFamilies;
688 flushPendingEffects();
689 scheduleFibersWithFamiliesRecursively(
690 root2.current,
691 update,
692 staleFamilies
693 );
694 flushSyncWork$1();
695 }
696 }
697 function setRefreshHandler(handler) {
698 resolveFamily = handler;
699 }
700 function isValidContainer(node) {
701 return !(!node || 1 !== node.nodeType && 9 !== node.nodeType && 11 !== node.nodeType);
702 }
703 function getNearestMountedFiber(fiber) {
704 for (var node = fiber, nextNode = node; nextNode && !nextNode.alternate; )
705 node = nextNode, 0 !== (node.flags & 4098) && (fiber = node.return), nextNode = node.return;
706 for (; node.return; ) node = node.return;
707 return 3 === node.tag ? fiber : null;
708 }
709 function getSuspenseInstanceFromFiber(fiber) {
710 if (13 === fiber.tag) {
711 var suspenseState = fiber.memoizedState;
712 null === suspenseState && (fiber = fiber.alternate, null !== fiber && (suspenseState = fiber.memoizedState));
713 if (null !== suspenseState) return suspenseState.dehydrated;
714 }
715 return null;
716 }
717 function getActivityInstanceFromFiber(fiber) {
718 if (31 === fiber.tag) {
719 var activityState = fiber.memoizedState;
720 null === activityState && (fiber = fiber.alternate, null !== fiber && (activityState = fiber.memoizedState));
721 if (null !== activityState) return activityState.dehydrated;
722 }
723 return null;
724 }
725 function assertIsMounted(fiber) {
726 if (getNearestMountedFiber(fiber) !== fiber)
727 throw Error("Unable to find node on an unmounted component.");
728 }
729 function findCurrentFiberUsingSlowPath(fiber) {
730 var alternate = fiber.alternate;
731 if (!alternate) {
732 alternate = getNearestMountedFiber(fiber);
733 if (null === alternate)
734 throw Error("Unable to find node on an unmounted component.");
735 return alternate !== fiber ? null : fiber;
736 }
737 for (var a = fiber, b = alternate; ; ) {
738 var parentA = a.return;
739 if (null === parentA) break;
740 var parentB = parentA.alternate;
741 if (null === parentB) {
742 b = parentA.return;
743 if (null !== b) {
744 a = b;
745 continue;
746 }
747 break;
748 }
749 if (parentA.child === parentB.child) {
750 for (parentB = parentA.child; parentB; ) {
751 if (parentB === a) return assertIsMounted(parentA), fiber;
752 if (parentB === b) return assertIsMounted(parentA), alternate;
753 parentB = parentB.sibling;
754 }
755 throw Error("Unable to find node on an unmounted component.");
756 }
757 if (a.return !== b.return) a = parentA, b = parentB;
758 else {
759 for (var didFindChild = false, _child = parentA.child; _child; ) {
760 if (_child === a) {
761 didFindChild = true;
762 a = parentA;
763 b = parentB;
764 break;
765 }
766 if (_child === b) {
767 didFindChild = true;
768 b = parentA;
769 a = parentB;
770 break;
771 }
772 _child = _child.sibling;
773 }
774 if (!didFindChild) {
775 for (_child = parentB.child; _child; ) {
776 if (_child === a) {
777 didFindChild = true;
778 a = parentB;
779 b = parentA;
780 break;
781 }
782 if (_child === b) {
783 didFindChild = true;
784 b = parentB;
785 a = parentA;
786 break;
787 }
788 _child = _child.sibling;
789 }
790 if (!didFindChild)
791 throw Error(
792 "Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue."
793 );
794 }
795 }
796 if (a.alternate !== b)
797 throw Error(
798 "Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue."
799 );
800 }
801 if (3 !== a.tag)
802 throw Error("Unable to find node on an unmounted component.");
803 return a.stateNode.current === a ? fiber : alternate;
804 }
805 function findCurrentHostFiberImpl(node) {
806 var tag = node.tag;
807 if (5 === tag || 26 === tag || 27 === tag || 6 === tag) return node;
808 for (node = node.child; null !== node; ) {
809 tag = findCurrentHostFiberImpl(node);
810 if (null !== tag) return tag;
811 node = node.sibling;
812 }
813 return null;
814 }
815 function traverseFragmentInstancesAndTextInstances(fragmentFiber, fn, a, b, c) {
816 traverseVisibleInstancesAndTextInstances(
817 fragmentFiber.child,
818 false,
819 fn,
820 a,
821 b,
822 c
823 );
824 }
825 function traverseVisibleInstancesAndTextInstances(child, searchWithinHosts, fn, a, b, c) {
826 for (; null !== child; ) {
827 if ((5 === child.tag || 27 === child.tag || 6 === child.tag) && fn(child, a, b, c) || (22 !== child.tag || null === child.memoizedState) && (searchWithinHosts || 5 !== child.tag && 27 !== child.tag) && traverseVisibleInstancesAndTextInstances(
828 child.child,
829 searchWithinHosts,
830 fn,
831 a,
832 b,
833 c
834 ))
835 return true;
836 child = child.sibling;
837 }
838 return false;
839 }
840 function getFragmentParentInstanceOrContainerFiber(fiber) {
841 for (fiber = fiber.return; null !== fiber; ) {
842 if (3 === fiber.tag || 5 === fiber.tag || 27 === fiber.tag)
843 return fiber;
844 fiber = fiber.return;
845 }
846 return null;
847 }
848 function fiberIsPortaledIntoHost(fiber) {
849 var foundPortalParent = false;
850 for (fiber = fiber.return; null !== fiber; ) {
851 4 === fiber.tag && (foundPortalParent = true);
852 if (3 === fiber.tag || 5 === fiber.tag || 27 === fiber.tag) break;
853 fiber = fiber.return;
854 }
855 return foundPortalParent;
856 }
857 function getFragmentInstanceOrTextInstanceSiblings(fiber) {
858 var result = [null, null], parentHostFiber = getFragmentParentInstanceOrContainerFiber(fiber);
859 if (null === parentHostFiber) return result;
860 findFragmentInstanceOrTextInstanceSiblings(
861 result,
862 fiber,
863 parentHostFiber.child,
864 { foundSelf: false }
865 );
866 return result;
867 }
868 function findFragmentInstanceOrTextInstanceSiblings(result, self, child, state) {
869 for (; null !== child; ) {
870 if (child === self) state.foundSelf = true;
871 else if (5 === child.tag || 27 === child.tag || 6 === child.tag) {
872 if (state.foundSelf) return result[1] = child, true;
873 result[0] = child;
874 } else if ((22 !== child.tag || null === child.memoizedState) && findFragmentInstanceOrTextInstanceSiblings(
875 result,
876 self,
877 child.child,
878 state
879 ))
880 return true;
881 child = child.sibling;
882 }
883 return false;
884 }
885 function getInstanceFromHostFiber(fiber) {
886 switch (fiber.tag) {
887 case 5:
888 case 27:
889 case 6:
890 return fiber.stateNode;
891 case 3:
892 return fiber.stateNode.containerInfo;
893 default:
894 throw Error("Expected to find a host node. This is a bug in React.");
895 }
896 }
897 function isFiberPrecedingCheck(child, target, boundary) {
898 return child === boundary ? true : child === target ? (searchTarget = child, true) : false;
899 }
900 function isFiberFollowingCheck(child, target, boundary) {
901 return child === boundary ? (searchBoundary = child, false) : child === target ? (null !== searchBoundary && (searchTarget = child), true) : false;
902 }
903 function getParentForFragmentAncestors(inst) {
904 if (null === inst) return null;
905 do
906 inst = null === inst ? null : inst.return;
907 while (inst && 5 !== inst.tag && 27 !== inst.tag && 3 !== inst.tag);
908 return inst ? inst : null;
909 }
910 function getLowestCommonAncestor(instA, instB, getParent2) {
911 for (var depthA = 0, tempA = instA; tempA; tempA = getParent2(tempA))
912 depthA++;
913 tempA = 0;
914 for (var tempB = instB; tempB; tempB = getParent2(tempB)) tempA++;
915 for (; 0 < depthA - tempA; ) instA = getParent2(instA), depthA--;
916 for (; 0 < tempA - depthA; ) instB = getParent2(instB), tempA--;
917 for (; depthA--; ) {
918 if (instA === instB || null !== instB && instA === instB.alternate)
919 return instA;
920 instA = getParent2(instA);
921 instB = getParent2(instB);
922 }
923 return null;
924 }
925 function getIteratorFn(maybeIterable) {
926 if (null === maybeIterable || "object" !== typeof maybeIterable)
927 return null;
928 maybeIterable = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable["@@iterator"];
929 return "function" === typeof maybeIterable ? maybeIterable : null;
930 }
931 function getComponentNameFromType(type) {
932 if (null == type) return null;
933 if ("function" === typeof type)
934 return type.$$typeof === REACT_CLIENT_REFERENCE ? null : type.displayName || type.name || null;
935 if ("string" === typeof type) return type;
936 switch (type) {
937 case REACT_FRAGMENT_TYPE:
938 return "Fragment";
939 case REACT_PROFILER_TYPE:
940 return "Profiler";
941 case REACT_STRICT_MODE_TYPE:
942 return "StrictMode";
943 case REACT_SUSPENSE_TYPE:
944 return "Suspense";
945 case REACT_SUSPENSE_LIST_TYPE:
946 return "SuspenseList";
947 case REACT_ACTIVITY_TYPE:
948 return "Activity";
949 case REACT_VIEW_TRANSITION_TYPE:
950 return "ViewTransition";
951 }
952 if ("object" === typeof type)
953 switch ("number" === typeof type.tag && console.error(
954 "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
955 ), type.$$typeof) {
956 case REACT_PORTAL_TYPE:
957 return "Portal";
958 case REACT_CONTEXT_TYPE:
959 return type.displayName || "Context";
960 case REACT_CONSUMER_TYPE:
961 return (type._context.displayName || "Context") + ".Consumer";
962 case REACT_FORWARD_REF_TYPE:
963 var innerType = type.render;
964 type = type.displayName;
965 type || (type = innerType.displayName || innerType.name || "", type = "" !== type ? "ForwardRef(" + type + ")" : "ForwardRef");
966 return type;
967 case REACT_MEMO_TYPE:
968 return innerType = type.displayName || null, null !== innerType ? innerType : getComponentNameFromType(type.type) || "Memo";
969 case REACT_LAZY_TYPE:
970 innerType = type._payload;
971 type = type._init;
972 try {
973 return getComponentNameFromType(type(innerType));
974 } catch (x) {
975 }
976 }
977 return null;
978 }
979 function getComponentNameFromOwner(owner) {
980 return "number" === typeof owner.tag ? getComponentNameFromFiber(owner) : "string" === typeof owner.name ? owner.name : null;
981 }
982 function getComponentNameFromFiber(fiber) {
983 var type = fiber.type;
984 switch (fiber.tag) {
985 case 31:
986 return "Activity";
987 case 24:
988 return "Cache";
989 case 9:
990 return (type._context.displayName || "Context") + ".Consumer";
991 case 10:
992 return type.displayName || "Context";
993 case 18:
994 return "DehydratedFragment";
995 case 11:
996 return fiber = type.render, fiber = fiber.displayName || fiber.name || "", type.displayName || ("" !== fiber ? "ForwardRef(" + fiber + ")" : "ForwardRef");
997 case 7:
998 return "Fragment";
999 case 26:
1000 case 27:
1001 case 5:
1002 return type;
1003 case 4:
1004 return "Portal";
1005 case 3:
1006 return "Root";
1007 case 6:
1008 return "Text";
1009 case 16:
1010 return getComponentNameFromType(type);
1011 case 8:
1012 return type === REACT_STRICT_MODE_TYPE ? "StrictMode" : "Mode";
1013 case 22:
1014 if (null !== fiber.return)
1015 return getComponentNameFromFiber(fiber.return);
1016 break;
1017 case 12:
1018 return "Profiler";
1019 case 21:
1020 return "Scope";
1021 case 13:
1022 return "Suspense";
1023 case 19:
1024 return "SuspenseList";
1025 case 25:
1026 return "TracingMarker";
1027 case 30:
1028 return "ViewTransition";
1029 case 1:
1030 case 0:
1031 case 14:
1032 case 15:
1033 if ("function" === typeof type)
1034 return type.displayName || type.name || null;
1035 if ("string" === typeof type) return type;
1036 break;
1037 case 29:
1038 type = fiber._debugInfo;
1039 if (null != type) {
1040 for (var i = type.length - 1; 0 <= i; i--)
1041 if ("string" === typeof type[i].name) return type[i].name;
1042 }
1043 if (null !== fiber.return)
1044 return getComponentNameFromFiber(fiber.return);
1045 }
1046 return null;
1047 }
1048 function createCursor(defaultValue) {
1049 return { current: defaultValue };
1050 }
1051 function pop(cursor, fiber) {
1052 0 > index$jscomp$0 ? console.error("Unexpected pop.") : (fiber !== fiberStack[index$jscomp$0] && console.error("Unexpected Fiber popped."), cursor.current = valueStack[index$jscomp$0], valueStack[index$jscomp$0] = null, fiberStack[index$jscomp$0] = null, index$jscomp$0--);
1053 }
1054 function push(cursor, value, fiber) {
1055 index$jscomp$0++;
1056 valueStack[index$jscomp$0] = cursor.current;
1057 fiberStack[index$jscomp$0] = fiber;
1058 cursor.current = value;
1059 }
1060 function requiredContext(c) {
1061 null === c && console.error(
1062 "Expected host context to exist. This error is likely caused by a bug in React. Please file an issue."
1063 );
1064 return c;
1065 }
1066 function pushHostContainer(fiber, nextRootInstance) {
1067 push(rootInstanceStackCursor, nextRootInstance, fiber);
1068 push(contextFiberStackCursor, fiber, fiber);
1069 push(contextStackCursor, null, fiber);
1070 var nextRootContext = nextRootInstance.nodeType;
1071 switch (nextRootContext) {
1072 case 9:
1073 case 11:
1074 nextRootContext = 9 === nextRootContext ? "#document" : "#fragment";
1075 nextRootInstance = (nextRootInstance = nextRootInstance.documentElement) ? (nextRootInstance = nextRootInstance.namespaceURI) ? getOwnHostContext(nextRootInstance) : HostContextNamespaceNone : HostContextNamespaceNone;
1076 break;
1077 default:
1078 if (nextRootContext = nextRootInstance.tagName, nextRootInstance = nextRootInstance.namespaceURI)
1079 nextRootInstance = getOwnHostContext(nextRootInstance), nextRootInstance = getChildHostContextProd(
1080 nextRootInstance,
1081 nextRootContext
1082 );
1083 else
1084 switch (nextRootContext) {
1085 case "svg":
1086 nextRootInstance = HostContextNamespaceSvg;
1087 break;
1088 case "math":
1089 nextRootInstance = HostContextNamespaceMath;
1090 break;
1091 default:
1092 nextRootInstance = HostContextNamespaceNone;
1093 }
1094 }
1095 nextRootContext = nextRootContext.toLowerCase();
1096 nextRootContext = updatedAncestorInfoDev(null, nextRootContext);
1097 nextRootContext = {
1098 context: nextRootInstance,
1099 ancestorInfo: nextRootContext
1100 };
1101 pop(contextStackCursor, fiber);
1102 push(contextStackCursor, nextRootContext, fiber);
1103 }
1104 function popHostContainer(fiber) {
1105 pop(contextStackCursor, fiber);
1106 pop(contextFiberStackCursor, fiber);
1107 pop(rootInstanceStackCursor, fiber);
1108 }
1109 function getHostContext() {
1110 return requiredContext(contextStackCursor.current);
1111 }
1112 function pushHostContext(fiber) {
1113 var stateHook = fiber.memoizedState;
1114 null !== stateHook && (HostTransitionContext._currentValue = stateHook.memoizedState, push(hostTransitionProviderCursor, fiber, fiber));
1115 stateHook = requiredContext(contextStackCursor.current);
1116 var type = fiber.type;
1117 var nextContext = getChildHostContextProd(stateHook.context, type);
1118 type = updatedAncestorInfoDev(stateHook.ancestorInfo, type);
1119 nextContext = { context: nextContext, ancestorInfo: type };
1120 stateHook !== nextContext && (push(contextFiberStackCursor, fiber, fiber), push(contextStackCursor, nextContext, fiber));
1121 }
1122 function popHostContext(fiber) {
1123 contextFiberStackCursor.current === fiber && (pop(contextStackCursor, fiber), pop(contextFiberStackCursor, fiber));
1124 hostTransitionProviderCursor.current === fiber && (pop(hostTransitionProviderCursor, fiber), HostTransitionContext._currentValue = NotPendingTransition);
1125 }
1126 function disabledLog() {
1127 }
1128 function disableLogs() {
1129 if (0 === disabledDepth) {
1130 prevLog = console.log;
1131 prevInfo = console.info;
1132 prevWarn = console.warn;
1133 prevError = console.error;
1134 prevGroup = console.group;
1135 prevGroupCollapsed = console.groupCollapsed;
1136 prevGroupEnd = console.groupEnd;
1137 var props = {
1138 configurable: true,
1139 enumerable: true,
1140 value: disabledLog,
1141 writable: true
1142 };
1143 Object.defineProperties(console, {
1144 info: props,
1145 log: props,
1146 warn: props,
1147 error: props,
1148 group: props,
1149 groupCollapsed: props,
1150 groupEnd: props
1151 });
1152 }
1153 disabledDepth++;
1154 }
1155 function reenableLogs() {
1156 disabledDepth--;
1157 if (0 === disabledDepth) {
1158 var props = { configurable: true, enumerable: true, writable: true };
1159 Object.defineProperties(console, {
1160 log: assign({}, props, { value: prevLog }),
1161 info: assign({}, props, { value: prevInfo }),
1162 warn: assign({}, props, { value: prevWarn }),
1163 error: assign({}, props, { value: prevError }),
1164 group: assign({}, props, { value: prevGroup }),
1165 groupCollapsed: assign({}, props, { value: prevGroupCollapsed }),
1166 groupEnd: assign({}, props, { value: prevGroupEnd })
1167 });
1168 }
1169 0 > disabledDepth && console.error(
1170 "disabledDepth fell below zero. This is a bug in React. Please file an issue."
1171 );
1172 }
1173 function formatOwnerStack(error) {
1174 var prevPrepareStackTrace = Error.prepareStackTrace;
1175 Error.prepareStackTrace = void 0;
1176 error = error.stack;
1177 Error.prepareStackTrace = prevPrepareStackTrace;
1178 error.startsWith("Error: react-stack-top-frame\n") && (error = error.slice(29));
1179 prevPrepareStackTrace = error.indexOf("\n");
1180 -1 !== prevPrepareStackTrace && (error = error.slice(prevPrepareStackTrace + 1));
1181 prevPrepareStackTrace = error.indexOf("react_stack_bottom_frame");
1182 -1 !== prevPrepareStackTrace && (prevPrepareStackTrace = error.lastIndexOf(
1183 "\n",
1184 prevPrepareStackTrace
1185 ));
1186 if (-1 !== prevPrepareStackTrace)
1187 error = error.slice(0, prevPrepareStackTrace);
1188 else return "";
1189 return error;
1190 }
1191 function describeBuiltInComponentFrame(name) {
1192 if (void 0 === prefix)
1193 try {
1194 throw Error();
1195 } catch (x) {
1196 var match = x.stack.trim().match(/\n( *(at )?)/);
1197 prefix = match && match[1] || "";
1198 suffix = -1 < x.stack.indexOf("\n at") ? " (<anonymous>)" : -1 < x.stack.indexOf("@") ? "@unknown:0:0" : "";
1199 }
1200 return "\n" + prefix + name + suffix;
1201 }
1202 function describeNativeComponentFrame(fn, construct) {
1203 if (!fn || reentry) return "";
1204 var frame = componentFrameCache.get(fn);
1205 if (void 0 !== frame) return frame;
1206 reentry = true;
1207 frame = Error.prepareStackTrace;
1208 Error.prepareStackTrace = void 0;
1209 var previousDispatcher2 = null;
1210 previousDispatcher2 = ReactSharedInternals.H;
1211 ReactSharedInternals.H = null;
1212 disableLogs();
1213 try {
1214 var RunInRootFrame = {
1215 DetermineComponentFrameRoot: function() {
1216 try {
1217 if (construct) {
1218 var Fake = function() {
1219 throw Error();
1220 };
1221 Object.defineProperty(Fake.prototype, "props", {
1222 set: function() {
1223 throw Error();
1224 }
1225 });
1226 if ("object" === typeof Reflect && Reflect.construct) {
1227 try {
1228 Reflect.construct(Fake, []);
1229 } catch (x) {
1230 var control = x;
1231 }
1232 Reflect.construct(fn, [], Fake);
1233 } else {
1234 try {
1235 Fake.call();
1236 } catch (x$0) {
1237 control = x$0;
1238 }
1239 Fake = false;
1240 try {
1241 var prevProps = Object.getOwnPropertyDescriptor(
1242 fn.prototype,
1243 "props"
1244 );
1245 Object.defineProperty(fn.prototype, "props", {
1246 configurable: true,
1247 set: function() {
1248 throw Error();
1249 }
1250 });
1251 Fake = true;
1252 new fn();
1253 } finally {
1254 Fake && (void 0 !== prevProps ? Object.defineProperty(
1255 fn.prototype,
1256 "props",
1257 prevProps
1258 ) : delete fn.prototype.props);
1259 }
1260 }
1261 } else {
1262 try {
1263 throw Error();
1264 } catch (x$1) {
1265 control = x$1;
1266 }
1267 (Fake = fn()) && "function" === typeof Fake.catch && Fake.catch(function() {
1268 });
1269 }
1270 } catch (sample) {
1271 if (sample && control && "string" === typeof sample.stack)
1272 return [sample.stack, control.stack];
1273 }
1274 return [null, null];
1275 }
1276 };
1277 RunInRootFrame.DetermineComponentFrameRoot.displayName = "DetermineComponentFrameRoot";
1278 var namePropDescriptor = Object.getOwnPropertyDescriptor(
1279 RunInRootFrame.DetermineComponentFrameRoot,
1280 "name"
1281 );
1282 namePropDescriptor && namePropDescriptor.configurable && Object.defineProperty(
1283 RunInRootFrame.DetermineComponentFrameRoot,
1284 "name",
1285 { value: "DetermineComponentFrameRoot" }
1286 );
1287 var _RunInRootFrame$Deter = RunInRootFrame.DetermineComponentFrameRoot(), sampleStack = _RunInRootFrame$Deter[0], controlStack = _RunInRootFrame$Deter[1];
1288 if (sampleStack && controlStack) {
1289 var sampleLines = sampleStack.split("\n"), controlLines = controlStack.split("\n");
1290 for (_RunInRootFrame$Deter = namePropDescriptor = 0; namePropDescriptor < sampleLines.length && !sampleLines[namePropDescriptor].includes(
1291 "DetermineComponentFrameRoot"
1292 ); )
1293 namePropDescriptor++;
1294 for (; _RunInRootFrame$Deter < controlLines.length && !controlLines[_RunInRootFrame$Deter].includes(
1295 "DetermineComponentFrameRoot"
1296 ); )
1297 _RunInRootFrame$Deter++;
1298 if (namePropDescriptor === sampleLines.length || _RunInRootFrame$Deter === controlLines.length)
1299 for (namePropDescriptor = sampleLines.length - 1, _RunInRootFrame$Deter = controlLines.length - 1; 1 <= namePropDescriptor && 0 <= _RunInRootFrame$Deter && sampleLines[namePropDescriptor] !== controlLines[_RunInRootFrame$Deter]; )
1300 _RunInRootFrame$Deter--;
1301 for (; 1 <= namePropDescriptor && 0 <= _RunInRootFrame$Deter; namePropDescriptor--, _RunInRootFrame$Deter--)
1302 if (sampleLines[namePropDescriptor] !== controlLines[_RunInRootFrame$Deter]) {
1303 if (1 !== namePropDescriptor || 1 !== _RunInRootFrame$Deter) {
1304 do
1305 if (namePropDescriptor--, _RunInRootFrame$Deter--, 0 > _RunInRootFrame$Deter || sampleLines[namePropDescriptor] !== controlLines[_RunInRootFrame$Deter]) {
1306 var _frame = "\n" + sampleLines[namePropDescriptor].replace(
1307 " at new ",
1308 " at "
1309 );
1310 fn.displayName && _frame.includes("<anonymous>") && (_frame = _frame.replace("<anonymous>", fn.displayName));
1311 "function" === typeof fn && componentFrameCache.set(fn, _frame);
1312 return _frame;
1313 }
1314 while (1 <= namePropDescriptor && 0 <= _RunInRootFrame$Deter);
1315 }
1316 break;
1317 }
1318 }
1319 } finally {
1320 reentry = false, ReactSharedInternals.H = previousDispatcher2, reenableLogs(), Error.prepareStackTrace = frame;
1321 }
1322 sampleLines = (sampleLines = fn ? fn.displayName || fn.name : "") ? describeBuiltInComponentFrame(sampleLines) : "";
1323 "function" === typeof fn && componentFrameCache.set(fn, sampleLines);
1324 return sampleLines;
1325 }
1326 function describeFiber(fiber, childFiber) {
1327 switch (fiber.tag) {
1328 case 26:
1329 case 27:
1330 case 5:
1331 return describeBuiltInComponentFrame(fiber.type);
1332 case 16:
1333 return describeBuiltInComponentFrame("Lazy");
1334 case 13:
1335 return fiber.child !== childFiber && null !== childFiber ? describeBuiltInComponentFrame("Suspense Fallback") : describeBuiltInComponentFrame("Suspense");
1336 case 19:
1337 return describeBuiltInComponentFrame("SuspenseList");
1338 case 0:
1339 case 15:
1340 return describeNativeComponentFrame(fiber.type, false);
1341 case 11:
1342 return describeNativeComponentFrame(fiber.type.render, false);
1343 case 1:
1344 return describeNativeComponentFrame(fiber.type, true);
1345 case 31:
1346 return describeBuiltInComponentFrame("Activity");
1347 case 30:
1348 return describeBuiltInComponentFrame("ViewTransition");
1349 default:
1350 return "";
1351 }
1352 }
1353 function getStackByFiberInDevAndProd(workInProgress2) {
1354 try {
1355 var info = "", previous = null;
1356 do {
1357 info += describeFiber(workInProgress2, previous);
1358 var debugInfo = workInProgress2._debugInfo;
1359 if (debugInfo)
1360 for (var i = debugInfo.length - 1; 0 <= i; i--) {
1361 var entry = debugInfo[i];
1362 if ("string" === typeof entry.name) {
1363 var JSCompiler_temp_const = info;
1364 a: {
1365 var name = entry.name, env = entry.env, location = entry.debugLocation;
1366 if (null != location) {
1367 var childStack = formatOwnerStack(location), idx = childStack.lastIndexOf("\n"), lastLine = -1 === idx ? childStack : childStack.slice(idx + 1);
1368 if (-1 !== lastLine.indexOf(name)) {
1369 var JSCompiler_inline_result = "\n" + lastLine;
1370 break a;
1371 }
1372 }
1373 JSCompiler_inline_result = describeBuiltInComponentFrame(
1374 name + (env ? " [" + env + "]" : "")
1375 );
1376 }
1377 info = JSCompiler_temp_const + JSCompiler_inline_result;
1378 }
1379 }
1380 previous = workInProgress2;
1381 workInProgress2 = workInProgress2.return;
1382 } while (workInProgress2);
1383 return info;
1384 } catch (x) {
1385 return "\nError generating stack: " + x.message + "\n" + x.stack;
1386 }
1387 }
1388 function describeFunctionComponentFrameWithoutLineNumber(fn) {
1389 return (fn = fn ? fn.displayName || fn.name : "") ? describeBuiltInComponentFrame(fn) : "";
1390 }
1391 function getCurrentFiberOwnerNameInDevOrNull() {
1392 if (null === current) return null;
1393 var owner = current._debugOwner;
1394 return null != owner ? getComponentNameFromOwner(owner) : null;
1395 }
1396 function getCurrentFiberStackInDev() {
1397 if (null === current) return "";
1398 var workInProgress2 = current;
1399 try {
1400 var info = "";
1401 6 === workInProgress2.tag && (workInProgress2 = workInProgress2.return);
1402 switch (workInProgress2.tag) {
1403 case 26:
1404 case 27:
1405 case 5:
1406 info += describeBuiltInComponentFrame(workInProgress2.type);
1407 break;
1408 case 13:
1409 info += describeBuiltInComponentFrame("Suspense");
1410 break;
1411 case 19:
1412 info += describeBuiltInComponentFrame("SuspenseList");
1413 break;
1414 case 31:
1415 info += describeBuiltInComponentFrame("Activity");
1416 break;
1417 case 30:
1418 info += describeBuiltInComponentFrame("ViewTransition");
1419 break;
1420 case 0:
1421 case 15:
1422 case 1:
1423 workInProgress2._debugOwner || "" !== info || (info += describeFunctionComponentFrameWithoutLineNumber(
1424 workInProgress2.type
1425 ));
1426 break;
1427 case 11:
1428 workInProgress2._debugOwner || "" !== info || (info += describeFunctionComponentFrameWithoutLineNumber(
1429 workInProgress2.type.render
1430 ));
1431 }
1432 for (; workInProgress2; )
1433 if ("number" === typeof workInProgress2.tag) {
1434 var fiber = workInProgress2;
1435 workInProgress2 = fiber._debugOwner;
1436 var debugStack = fiber._debugStack;
1437 if (workInProgress2 && debugStack) {
1438 var formattedStack = formatOwnerStack(debugStack);
1439 "" !== formattedStack && (info += "\n" + formattedStack);
1440 }
1441 } else if (null != workInProgress2.debugStack) {
1442 var ownerStack = workInProgress2.debugStack;
1443 (workInProgress2 = workInProgress2.owner) && ownerStack && (info += "\n" + formatOwnerStack(ownerStack));
1444 } else break;
1445 var JSCompiler_inline_result = info;
1446 } catch (x) {
1447 JSCompiler_inline_result = "\nError generating stack: " + x.message + "\n" + x.stack;
1448 }
1449 return JSCompiler_inline_result;
1450 }
1451 function runWithFiberInDEV(fiber, callback, arg0, arg1, arg2, arg3, arg4) {
1452 var previousFiber = current;
1453 setCurrentFiber(fiber);
1454 try {
1455 return null !== fiber && fiber._debugTask ? fiber._debugTask.run(
1456 callback.bind(null, arg0, arg1, arg2, arg3, arg4)
1457 ) : callback(arg0, arg1, arg2, arg3, arg4);
1458 } finally {
1459 setCurrentFiber(previousFiber);
1460 }
1461 throw Error(
1462 "runWithFiberInDEV should never be called in production. This is a bug in React."
1463 );
1464 }
1465 function setCurrentFiber(fiber) {
1466 ReactSharedInternals.getCurrentStack = null === fiber ? null : getCurrentFiberStackInDev;
1467 isRendering = false;
1468 current = fiber;
1469 }
1470 function typeName(value) {
1471 return "function" === typeof Symbol && Symbol.toStringTag && value[Symbol.toStringTag] || value.constructor.name || "Object";
1472 }
1473 function willCoercionThrow(value) {
1474 try {
1475 return testStringCoercion(value), false;
1476 } catch (e) {
1477 return true;
1478 }
1479 }
1480 function testStringCoercion(value) {
1481 return "" + value;
1482 }
1483 function checkAttributeStringCoercion(value, attributeName) {
1484 if (willCoercionThrow(value))
1485 return console.error(
1486 "The provided `%s` attribute is an unsupported type %s. This value must be coerced to a string before using it here.",
1487 attributeName,
1488 typeName(value)
1489 ), testStringCoercion(value);
1490 }
1491 function checkCSSPropertyStringCoercion(value, propName) {
1492 if (willCoercionThrow(value))
1493 return console.error(
1494 "The provided `%s` CSS property is an unsupported type %s. This value must be coerced to a string before using it here.",
1495 propName,
1496 typeName(value)
1497 ), testStringCoercion(value);
1498 }
1499 function checkFormFieldValueStringCoercion(value) {
1500 if (willCoercionThrow(value))
1501 return console.error(
1502 "Form field values (value, checked, defaultValue, or defaultChecked props) must be strings, not %s. This value must be coerced to a string before using it here.",
1503 typeName(value)
1504 ), testStringCoercion(value);
1505 }
1506 function injectInternals(internals) {
1507 if ("undefined" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) return false;
1508 var hook = __REACT_DEVTOOLS_GLOBAL_HOOK__;
1509 if (hook.isDisabled) return true;
1510 if (!hook.supportsFiber)
1511 return console.error(
1512 "The installed version of React DevTools is too old and will not work with the current version of React. Please update React DevTools. https://react.dev/link/react-devtools"
1513 ), true;
1514 try {
1515 rendererID = hook.inject(internals), injectedHook = hook;
1516 } catch (err) {
1517 console.error("React instrumentation encountered an error: %o.", err);
1518 }
1519 return hook.checkDCE ? true : false;
1520 }
1521 function setIsStrictModeForDevtools(newIsStrictMode) {
1522 "function" === typeof log$1 && unstable_setDisableYieldValue(newIsStrictMode);
1523 if (injectedHook && "function" === typeof injectedHook.setStrictMode)
1524 try {
1525 injectedHook.setStrictMode(rendererID, newIsStrictMode);
1526 } catch (err) {
1527 hasLoggedError || (hasLoggedError = true, console.error(
1528 "React instrumentation encountered an error: %o",
1529 err
1530 ));
1531 }
1532 }
1533 function clz32Fallback(x) {
1534 x >>>= 0;
1535 return 0 === x ? 32 : 31 - (log(x) / LN2 | 0) | 0;
1536 }
1537 function getHighestPriorityLanes(lanes) {
1538 var pendingSyncLanes = lanes & 42;
1539 if (0 !== pendingSyncLanes) return pendingSyncLanes;
1540 switch (lanes & -lanes) {
1541 case 1:
1542 return 1;
1543 case 2:
1544 return 2;
1545 case 4:
1546 return 4;
1547 case 8:
1548 return 8;
1549 case 16:
1550 return 16;
1551 case 32:
1552 return 32;
1553 case 64:
1554 return 64;
1555 case 128:
1556 return 128;
1557 case 256:
1558 case 512:
1559 case 1024:
1560 case 2048:
1561 case 4096:
1562 case 8192:
1563 case 16384:
1564 case 32768:
1565 case 65536:
1566 case 131072:
1567 return lanes & -lanes;
1568 case 262144:
1569 case 524288:
1570 case 1048576:
1571 case 2097152:
1572 return lanes & 3932160;
1573 case 4194304:
1574 case 8388608:
1575 case 16777216:
1576 case 33554432:
1577 return lanes & 62914560;
1578 case 67108864:
1579 return 67108864;
1580 case 134217728:
1581 return 134217728;
1582 case 268435456:
1583 return 268435456;
1584 case 536870912:
1585 return 536870912;
1586 case 1073741824:
1587 return 0;
1588 default:
1589 return console.error(
1590 "Should have found matching lanes. This is a bug in React."
1591 ), lanes;
1592 }
1593 }
1594 function getNextLanes(root2, wipLanes, rootHasPendingCommit) {
1595 var pendingLanes = root2.pendingLanes;
1596 if (0 === pendingLanes) return 0;
1597 var nextLanes = 0, suspendedLanes = root2.suspendedLanes, pingedLanes = root2.pingedLanes;
1598 root2 = root2.warmLanes;
1599 var nonIdlePendingLanes = pendingLanes & 134217727;
1600 0 !== nonIdlePendingLanes ? (pendingLanes = nonIdlePendingLanes & ~suspendedLanes, 0 !== pendingLanes ? nextLanes = getHighestPriorityLanes(pendingLanes) : (pingedLanes &= nonIdlePendingLanes, 0 !== pingedLanes ? nextLanes = getHighestPriorityLanes(pingedLanes) : rootHasPendingCommit || (rootHasPendingCommit = nonIdlePendingLanes & ~root2, 0 !== rootHasPendingCommit && (nextLanes = getHighestPriorityLanes(rootHasPendingCommit))))) : (nonIdlePendingLanes = pendingLanes & ~suspendedLanes, 0 !== nonIdlePendingLanes ? nextLanes = getHighestPriorityLanes(nonIdlePendingLanes) : 0 !== pingedLanes ? nextLanes = getHighestPriorityLanes(pingedLanes) : rootHasPendingCommit || (rootHasPendingCommit = pendingLanes & ~root2, 0 !== rootHasPendingCommit && (nextLanes = getHighestPriorityLanes(rootHasPendingCommit))));
1601 return 0 === nextLanes ? 0 : 0 !== wipLanes && wipLanes !== nextLanes && 0 === (wipLanes & suspendedLanes) && (suspendedLanes = nextLanes & -nextLanes, rootHasPendingCommit = wipLanes & -wipLanes, suspendedLanes >= rootHasPendingCommit || 32 === suspendedLanes && 0 !== (rootHasPendingCommit & 4194048)) ? wipLanes : nextLanes;
1602 }
1603 function checkIfRootIsPrerendering(root2, renderLanes2) {
1604 return 0 === (root2.pendingLanes & ~(root2.suspendedLanes & ~root2.pingedLanes) & renderLanes2);
1605 }
1606 function getEntangledLanes(root2, renderLanes2) {
1607 0 !== (renderLanes2 & 8) && (renderLanes2 |= renderLanes2 & 32);
1608 var allEntangledLanes = root2.entangledLanes;
1609 if (0 !== allEntangledLanes)
1610 for (root2 = root2.entanglements, allEntangledLanes &= renderLanes2; 0 < allEntangledLanes; ) {
1611 var index = 31 - clz32(allEntangledLanes), lane = 1 << index;
1612 renderLanes2 |= root2[index];
1613 allEntangledLanes &= ~lane;
1614 }
1615 return renderLanes2;
1616 }
1617 function computeExpirationTime(lane, currentTime) {
1618 switch (lane) {
1619 case 1:
1620 case 2:
1621 case 4:
1622 case 8:
1623 case 64:
1624 return currentTime + 250;
1625 case 16:
1626 case 32:
1627 case 128:
1628 case 256:
1629 case 512:
1630 case 1024:
1631 case 2048:
1632 case 4096:
1633 case 8192:
1634 case 16384:
1635 case 32768:
1636 case 65536:
1637 case 131072:
1638 case 262144:
1639 case 524288:
1640 case 1048576:
1641 case 2097152:
1642 return currentTime + 5e3;
1643 case 4194304:
1644 case 8388608:
1645 case 16777216:
1646 case 33554432:
1647 return -1;
1648 case 67108864:
1649 case 134217728:
1650 case 268435456:
1651 case 536870912:
1652 case 1073741824:
1653 return -1;
1654 default:
1655 return console.error(
1656 "Should have found matching lanes. This is a bug in React."
1657 ), -1;
1658 }
1659 }
1660 function claimNextRetryLane() {
1661 var lane = nextRetryLane;
1662 nextRetryLane <<= 1;
1663 0 === (nextRetryLane & 62914560) && (nextRetryLane = 4194304);
1664 return lane;
1665 }
1666 function createLaneMap(initial) {
1667 for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial);
1668 return laneMap;
1669 }
1670 function markRootUpdated$1(root2, updateLane) {
1671 root2.pendingLanes |= updateLane;
1672 268435456 !== updateLane && (root2.suspendedLanes = 0, root2.pingedLanes = 0, root2.warmLanes = 0);
1673 }
1674 function markRootFinished(root2, finishedLanes, remainingLanes, spawnedLane, updatedLanes, suspendedRetryLanes) {
1675 var previouslyPendingLanes = root2.pendingLanes;
1676 root2.pendingLanes = remainingLanes;
1677 root2.suspendedLanes = 0;
1678 root2.pingedLanes = 0;
1679 root2.warmLanes = 0;
1680 root2.expiredLanes &= remainingLanes;
1681 root2.entangledLanes &= remainingLanes;
1682 root2.errorRecoveryDisabledLanes &= remainingLanes;
1683 root2.shellSuspendCounter = 0;
1684 var entanglements = root2.entanglements, expirationTimes = root2.expirationTimes, hiddenUpdates = root2.hiddenUpdates;
1685 for (remainingLanes = previouslyPendingLanes & ~remainingLanes; 0 < remainingLanes; ) {
1686 var index = 31 - clz32(remainingLanes), lane = 1 << index;
1687 entanglements[index] = 0;
1688 expirationTimes[index] = -1;
1689 var hiddenUpdatesForLane = hiddenUpdates[index];
1690 if (null !== hiddenUpdatesForLane)
1691 for (hiddenUpdates[index] = null, index = 0; index < hiddenUpdatesForLane.length; index++) {
1692 var update = hiddenUpdatesForLane[index];
1693 null !== update && (update.lane &= -536870913);
1694 }
1695 remainingLanes &= ~lane;
1696 }
1697 0 !== spawnedLane && markSpawnedDeferredLane(root2, spawnedLane, 0);
1698 0 !== suspendedRetryLanes && 0 === updatedLanes && 0 !== root2.tag && (root2.suspendedLanes |= suspendedRetryLanes & ~(previouslyPendingLanes & ~finishedLanes));
1699 }
1700 function markSpawnedDeferredLane(root2, spawnedLane, entangledLanes) {
1701 root2.pendingLanes |= spawnedLane;
1702 root2.suspendedLanes &= ~spawnedLane;
1703 var spawnedLaneIndex = 31 - clz32(spawnedLane);
1704 root2.entangledLanes |= spawnedLane;
1705 root2.entanglements[spawnedLaneIndex] = root2.entanglements[spawnedLaneIndex] | 1073741824 | entangledLanes & 261930;
1706 }
1707 function markRootEntangled(root2, entangledLanes) {
1708 var rootEntangledLanes = root2.entangledLanes |= entangledLanes;
1709 for (root2 = root2.entanglements; rootEntangledLanes; ) {
1710 var index = 31 - clz32(rootEntangledLanes), lane = 1 << index;
1711 lane & entangledLanes | root2[index] & entangledLanes && (root2[index] |= entangledLanes);
1712 rootEntangledLanes &= ~lane;
1713 }
1714 }
1715 function getBumpedLaneForHydration(root2, renderLanes2) {
1716 var renderLane = renderLanes2 & -renderLanes2;
1717 renderLane = 0 !== (renderLane & 42) ? 1 : getBumpedLaneForHydrationByLane(renderLane);
1718 return 0 !== (renderLane & (root2.suspendedLanes | renderLanes2)) ? 0 : renderLane;
1719 }
1720 function getBumpedLaneForHydrationByLane(lane) {
1721 switch (lane) {
1722 case 2:
1723 lane = 1;
1724 break;
1725 case 8:
1726 lane = 4;
1727 break;
1728 case 32:
1729 lane = 16;
1730 break;
1731 case 256:
1732 case 512:
1733 case 1024:
1734 case 2048:
1735 case 4096:
1736 case 8192:
1737 case 16384:
1738 case 32768:
1739 case 65536:
1740 case 131072:
1741 case 262144:
1742 case 524288:
1743 case 1048576:
1744 case 2097152:
1745 case 4194304:
1746 case 8388608:
1747 case 16777216:
1748 case 33554432:
1749 lane = 128;
1750 break;
1751 case 268435456:
1752 lane = 134217728;
1753 break;
1754 default:
1755 lane = 0;
1756 }
1757 return lane;
1758 }
1759 function addFiberToLanesMap(root2, fiber, lanes) {
1760 if (isDevToolsPresent)
1761 for (root2 = root2.pendingUpdatersLaneMap; 0 < lanes; ) {
1762 var index = 31 - clz32(lanes), lane = 1 << index;
1763 root2[index].add(fiber);
1764 lanes &= ~lane;
1765 }
1766 }
1767 function movePendingFibersToMemoized(root2, lanes) {
1768 if (isDevToolsPresent)
1769 for (var pendingUpdatersLaneMap = root2.pendingUpdatersLaneMap, memoizedUpdaters = root2.memoizedUpdaters; 0 < lanes; ) {
1770 var index = 31 - clz32(lanes);
1771 root2 = 1 << index;
1772 index = pendingUpdatersLaneMap[index];
1773 0 < index.size && (index.forEach(function(fiber) {
1774 var alternate = fiber.alternate;
1775 null !== alternate && memoizedUpdaters.has(alternate) || memoizedUpdaters.add(fiber);
1776 }), index.clear());
1777 lanes &= ~root2;
1778 }
1779 }
1780 function lanesToEventPriority(lanes) {
1781 lanes &= -lanes;
1782 return 0 !== DiscreteEventPriority && DiscreteEventPriority < lanes ? 0 !== ContinuousEventPriority && ContinuousEventPriority < lanes ? 0 !== (lanes & 134217727) ? DefaultEventPriority : IdleEventPriority : ContinuousEventPriority : DiscreteEventPriority;
1783 }
1784 function resolveUpdatePriority() {
1785 var updatePriority = ReactDOMSharedInternals.p;
1786 if (0 !== updatePriority) return updatePriority;
1787 updatePriority = window.event;
1788 return void 0 === updatePriority ? DefaultEventPriority : getEventPriority(updatePriority.type);
1789 }
1790 function runWithPriority(priority, fn) {
1791 var previousPriority = ReactDOMSharedInternals.p;
1792 try {
1793 return ReactDOMSharedInternals.p = priority, fn();
1794 } finally {
1795 ReactDOMSharedInternals.p = previousPriority;
1796 }
1797 }
1798 function detachDeletedInstance(node) {
1799 delete node[internalInstanceKey];
1800 delete node[internalPropsKey];
1801 delete node[internalEventHandlerListenersKey];
1802 delete node[internalEventHandlesSetKey];
1803 }
1804 function getClosestInstanceFromNode(targetNode) {
1805 var targetInst;
1806 if (targetInst = targetNode[internalInstanceKey]) return targetInst;
1807 for (var parentNode = targetNode.parentNode; parentNode; ) {
1808 if (targetInst = parentNode[internalContainerInstanceKey] || parentNode[internalInstanceKey]) {
1809 parentNode = targetInst.alternate;
1810 if (null !== targetInst.child || null !== parentNode && null !== parentNode.child)
1811 for (targetNode = getParentHydrationBoundary(targetNode); null !== targetNode; ) {
1812 if (parentNode = targetNode[internalInstanceKey])
1813 return parentNode;
1814 targetNode = getParentHydrationBoundary(targetNode);
1815 }
1816 return targetInst;
1817 }
1818 targetNode = parentNode;
1819 parentNode = targetNode.parentNode;
1820 }
1821 return null;
1822 }
1823 function getInstanceFromNode(node) {
1824 if (node = node[internalInstanceKey] || node[internalContainerInstanceKey]) {
1825 var tag = node.tag;
1826 if (5 === tag || 6 === tag || 13 === tag || 31 === tag || 26 === tag || 27 === tag || 3 === tag)
1827 return node;
1828 }
1829 return null;
1830 }
1831 function getNodeFromInstance(inst) {
1832 var tag = inst.tag;
1833 if (5 === tag || 26 === tag || 27 === tag || 6 === tag)
1834 return inst.stateNode;
1835 throw Error("getNodeFromInstance: Invalid argument.");
1836 }
1837 function getResourcesFromRoot(root2) {
1838 var resources = root2[internalRootNodeResourcesKey];
1839 resources || (resources = root2[internalRootNodeResourcesKey] = { hoistableStyles: /* @__PURE__ */ new Map(), hoistableScripts: /* @__PURE__ */ new Map() });
1840 return resources;
1841 }
1842 function markNodeAsHoistable(node) {
1843 node[internalHoistableMarker] = true;
1844 }
1845 function clearPendingLoadOnNode(node) {
1846 node[internalLoadPendingKey] = void 0;
1847 }
1848 function registerTwoPhaseEvent(registrationName, dependencies) {
1849 registerDirectEvent(registrationName, dependencies);
1850 registerDirectEvent(registrationName + "Capture", dependencies);
1851 }
1852 function registerDirectEvent(registrationName, dependencies) {
1853 registrationNameDependencies[registrationName] && console.error(
1854 "EventRegistry: More than one plugin attempted to publish the same registration name, `%s`.",
1855 registrationName
1856 );
1857 registrationNameDependencies[registrationName] = dependencies;
1858 var lowerCasedName = registrationName.toLowerCase();
1859 possibleRegistrationNames[lowerCasedName] = registrationName;
1860 "onDoubleClick" === registrationName && (possibleRegistrationNames.ondblclick = registrationName);
1861 for (registrationName = 0; registrationName < dependencies.length; registrationName++)
1862 allNativeEvents.add(dependencies[registrationName]);
1863 }
1864 function checkControlledValueProps(tagName, props) {
1865 hasReadOnlyValue[props.type] || props.onChange || props.onInput || props.readOnly || props.disabled || null == props.value || ("select" === tagName ? console.error(
1866 "You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set `onChange`."
1867 ) : console.error(
1868 "You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`."
1869 ));
1870 props.onChange || props.readOnly || props.disabled || null == props.checked || console.error(
1871 "You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`."
1872 );
1873 }
1874 function isAttributeNameSafe(attributeName) {
1875 if (hasOwnProperty.call(validatedAttributeNameCache, attributeName))
1876 return true;
1877 if (hasOwnProperty.call(illegalAttributeNameCache, attributeName))
1878 return false;
1879 if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName))
1880 return validatedAttributeNameCache[attributeName] = true;
1881 illegalAttributeNameCache[attributeName] = true;
1882 console.error("Invalid attribute name: `%s`", attributeName);
1883 return false;
1884 }
1885 function pushMutationContext() {
1886 var prev = viewTransitionMutationContext;
1887 viewTransitionMutationContext = false;
1888 return prev;
1889 }
1890 function getValueForAttributeOnCustomComponent(node, name, expected) {
1891 if (isAttributeNameSafe(name)) {
1892 if (!node.hasAttribute(name)) {
1893 switch (typeof expected) {
1894 case "symbol":
1895 case "object":
1896 return expected;
1897 case "function":
1898 return expected;
1899 case "boolean":
1900 if (false === expected) return expected;
1901 }
1902 return void 0 === expected ? void 0 : null;
1903 }
1904 node = "nonce" === name.toLowerCase() ? node.nonce : node.getAttribute(name);
1905 if ("" === node && true === expected) return true;
1906 checkAttributeStringCoercion(expected, name);
1907 return node === "" + expected ? expected : node;
1908 }
1909 }
1910 function setValueForAttribute(node, name, value) {
1911 if (isAttributeNameSafe(name))
1912 if (null === value) node.removeAttribute(name);
1913 else {
1914 switch (typeof value) {
1915 case "undefined":
1916 case "function":
1917 case "symbol":
1918 node.removeAttribute(name);
1919 return;
1920 case "boolean":
1921 var prefix2 = name.toLowerCase().slice(0, 5);
1922 if ("data-" !== prefix2 && "aria-" !== prefix2) {
1923 node.removeAttribute(name);
1924 return;
1925 }
1926 }
1927 checkAttributeStringCoercion(value, name);
1928 node.setAttribute(name, value);
1929 }
1930 }
1931 function setValueForKnownAttribute(node, name, value) {
1932 if (null === value) node.removeAttribute(name);
1933 else {
1934 switch (typeof value) {
1935 case "undefined":
1936 case "function":
1937 case "symbol":
1938 case "boolean":
1939 node.removeAttribute(name);
1940 return;
1941 }
1942 checkAttributeStringCoercion(value, name);
1943 node.setAttribute(name, value);
1944 }
1945 }
1946 function setValueForNamespacedAttribute(node, namespace, name, value) {
1947 if (null === value) node.removeAttribute(name);
1948 else {
1949 switch (typeof value) {
1950 case "undefined":
1951 case "function":
1952 case "symbol":
1953 case "boolean":
1954 node.removeAttribute(name);
1955 return;
1956 }
1957 checkAttributeStringCoercion(value, name);
1958 node.setAttributeNS(namespace, name, value);
1959 }
1960 }
1961 function getToStringValue(value) {
1962 switch (typeof value) {
1963 case "bigint":
1964 case "boolean":
1965 case "number":
1966 case "string":
1967 case "undefined":
1968 return value;
1969 case "object":
1970 return checkFormFieldValueStringCoercion(value), value;
1971 default:
1972 return "";
1973 }
1974 }
1975 function isCheckable(elem) {
1976 var type = elem.type;
1977 return (elem = elem.nodeName) && "input" === elem.toLowerCase() && ("checkbox" === type || "radio" === type);
1978 }
1979 function trackValueOnNode(node, valueField, currentValue) {
1980 var descriptor = Object.getOwnPropertyDescriptor(
1981 node.constructor.prototype,
1982 valueField
1983 );
1984 if (!node.hasOwnProperty(valueField) && "undefined" !== typeof descriptor && "function" === typeof descriptor.get && "function" === typeof descriptor.set) {
1985 var get = descriptor.get, set = descriptor.set;
1986 Object.defineProperty(node, valueField, {
1987 configurable: true,
1988 get: function() {
1989 return get.call(this);
1990 },
1991 set: function(value) {
1992 checkFormFieldValueStringCoercion(value);
1993 currentValue = "" + value;
1994 set.call(this, value);
1995 }
1996 });
1997 Object.defineProperty(node, valueField, {
1998 enumerable: descriptor.enumerable
1999 });
2000 return {
2001 getValue: function() {
2002 return currentValue;
2003 },
2004 setValue: function(value) {
2005 checkFormFieldValueStringCoercion(value);
2006 currentValue = "" + value;
2007 },
2008 stopTracking: function() {
2009 node._valueTracker = null;
2010 delete node[valueField];
2011 }
2012 };
2013 }
2014 }
2015 function track(node) {
2016 if (!node._valueTracker) {
2017 var valueField = isCheckable(node) ? "checked" : "value";
2018 node._valueTracker = trackValueOnNode(
2019 node,
2020 valueField,
2021 "" + node[valueField]
2022 );
2023 }
2024 }
2025 function updateValueIfChanged(node) {
2026 if (!node) return false;
2027 var tracker = node._valueTracker;
2028 if (!tracker) return true;
2029 var lastValue = tracker.getValue();
2030 var value = "";
2031 node && (value = isCheckable(node) ? node.checked ? "true" : "false" : node.value);
2032 node = value;
2033 return node !== lastValue ? (tracker.setValue(node), true) : false;
2034 }
2035 function escapeSelectorAttributeValueInsideDoubleQuotes(value) {
2036 return value.replace(
2037 escapeSelectorAttributeValueInsideDoubleQuotesRegex,
2038 function(ch) {
2039 return "\\" + ch.charCodeAt(0).toString(16) + " ";
2040 }
2041 );
2042 }
2043 function validateInputProps(element, props) {
2044 void 0 === props.checked || void 0 === props.defaultChecked || didWarnCheckedDefaultChecked || (console.error(
2045 "%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components",
2046 getCurrentFiberOwnerNameInDevOrNull() || "A component",
2047 props.type
2048 ), didWarnCheckedDefaultChecked = true);
2049 void 0 === props.value || void 0 === props.defaultValue || didWarnValueDefaultValue$1 || (console.error(
2050 "%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components",
2051 getCurrentFiberOwnerNameInDevOrNull() || "A component",
2052 props.type
2053 ), didWarnValueDefaultValue$1 = true);
2054 }
2055 function updateInput(element, value, defaultValue, lastDefaultValue, checked, defaultChecked, type, name) {
2056 element.name = "";
2057 null != type && "function" !== typeof type && "symbol" !== typeof type && "boolean" !== typeof type ? (checkAttributeStringCoercion(type, "type"), element.type = type) : element.removeAttribute("type");
2058 if (null != value)
2059 if ("number" === type) {
2060 if (0 === value && "" === element.value || element.value != value)
2061 element.value = "" + getToStringValue(value);
2062 } else
2063 element.value !== "" + getToStringValue(value) && (element.value = "" + getToStringValue(value));
2064 else
2065 "submit" !== type && "reset" !== type || element.removeAttribute("value");
2066 null != value ? "number" === type && element.value == value ? setDefaultValue(element, getToStringValue(element.value)) : setDefaultValue(element, getToStringValue(value)) : null != defaultValue ? setDefaultValue(element, getToStringValue(defaultValue)) : null != lastDefaultValue && element.removeAttribute("value");
2067 null == checked && null != defaultChecked && (element.defaultChecked = !!defaultChecked);
2068 null != checked && (element.checked = checked && "function" !== typeof checked && "symbol" !== typeof checked);
2069 null != name && "function" !== typeof name && "symbol" !== typeof name && "boolean" !== typeof name ? (checkAttributeStringCoercion(name, "name"), element.name = "" + getToStringValue(name)) : element.removeAttribute("name");
2070 }
2071 function initInput(element, value, defaultValue, checked, defaultChecked, type, name, isHydrating2) {
2072 null != type && "function" !== typeof type && "symbol" !== typeof type && "boolean" !== typeof type && (checkAttributeStringCoercion(type, "type"), element.type = type);
2073 if (null != value || null != defaultValue) {
2074 if (!("submit" !== type && "reset" !== type || void 0 !== value && null !== value)) {
2075 track(element);
2076 return;
2077 }
2078 defaultValue = null != defaultValue ? "" + getToStringValue(defaultValue) : "";
2079 value = null != value ? "" + getToStringValue(value) : defaultValue;
2080 isHydrating2 || value === element.value || (element.value = value);
2081 element.defaultValue = value;
2082 }
2083 checked = null != checked ? checked : defaultChecked;
2084 checked = "function" !== typeof checked && "symbol" !== typeof checked && !!checked;
2085 element.checked = isHydrating2 ? element.checked : !!checked;
2086 element.defaultChecked = !!checked;
2087 null != name && "function" !== typeof name && "symbol" !== typeof name && "boolean" !== typeof name && (checkAttributeStringCoercion(name, "name"), element.name = name);
2088 track(element);
2089 }
2090 function setDefaultValue(node, value) {
2091 node.defaultValue !== "" + value && (node.defaultValue = "" + value);
2092 }
2093 function validateOptionProps(element, props) {
2094 null == props.value && ("object" === typeof props.children && null !== props.children ? React.Children.forEach(props.children, function(child) {
2095 null == child || "string" === typeof child || "number" === typeof child || "bigint" === typeof child || didWarnInvalidChild || (didWarnInvalidChild = true, console.error(
2096 "Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to <option>."
2097 ));
2098 }) : null == props.dangerouslySetInnerHTML || didWarnInvalidInnerHTML || (didWarnInvalidInnerHTML = true, console.error(
2099 "Pass a `value` prop if you set dangerouslyInnerHTML so React knows which value should be selected."
2100 )));
2101 null == props.selected || didWarnSelectedSetOnOption || (console.error(
2102 "Use the `defaultValue` or `value` props on <select> instead of setting `selected` on <option>."
2103 ), didWarnSelectedSetOnOption = true);
2104 }
2105 function getDeclarationErrorAddendum() {
2106 var ownerName = getCurrentFiberOwnerNameInDevOrNull();
2107 return ownerName ? "\n\nCheck the render method of `" + ownerName + "`." : "";
2108 }
2109 function updateOptions(node, multiple, propValue, setDefaultSelected) {
2110 node = node.options;
2111 if (multiple) {
2112 multiple = {};
2113 for (var i = 0; i < propValue.length; i++)
2114 multiple["$" + propValue[i]] = true;
2115 for (propValue = 0; propValue < node.length; propValue++)
2116 i = multiple.hasOwnProperty("$" + node[propValue].value), node[propValue].selected !== i && (node[propValue].selected = i), i && setDefaultSelected && (node[propValue].defaultSelected = true);
2117 } else {
2118 propValue = "" + getToStringValue(propValue);
2119 multiple = null;
2120 for (i = 0; i < node.length; i++) {
2121 if (node[i].value === propValue) {
2122 node[i].selected = true;
2123 setDefaultSelected && (node[i].defaultSelected = true);
2124 return;
2125 }
2126 null !== multiple || node[i].disabled || (multiple = node[i]);
2127 }
2128 null !== multiple && (multiple.selected = true);
2129 }
2130 }
2131 function validateSelectProps(element, props) {
2132 for (element = 0; element < valuePropNames.length; element++) {
2133 var propName = valuePropNames[element];
2134 if (null != props[propName]) {
2135 var propNameIsArray = isArrayImpl(props[propName]);
2136 props.multiple && !propNameIsArray ? console.error(
2137 "The `%s` prop supplied to <select> must be an array if `multiple` is true.%s",
2138 propName,
2139 getDeclarationErrorAddendum()
2140 ) : !props.multiple && propNameIsArray && console.error(
2141 "The `%s` prop supplied to <select> must be a scalar value if `multiple` is false.%s",
2142 propName,
2143 getDeclarationErrorAddendum()
2144 );
2145 }
2146 }
2147 void 0 === props.value || void 0 === props.defaultValue || didWarnValueDefaultValue || (console.error(
2148 "Select elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled select element and remove one of these props. More info: https://react.dev/link/controlled-components"
2149 ), didWarnValueDefaultValue = true);
2150 }
2151 function validateTextareaProps(element, props) {
2152 void 0 === props.value || void 0 === props.defaultValue || didWarnValDefaultVal || (console.error(
2153 "%s contains a textarea with both value and defaultValue props. Textarea elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled textarea and remove one of these props. More info: https://react.dev/link/controlled-components",
2154 getCurrentFiberOwnerNameInDevOrNull() || "A component"
2155 ), didWarnValDefaultVal = true);
2156 null != props.children && null == props.value && console.error(
2157 "Use the `defaultValue` or `value` props instead of setting children on <textarea>."
2158 );
2159 }
2160 function updateTextarea(element, value, defaultValue) {
2161 if (null != value && (value = "" + getToStringValue(value), value !== element.value && (element.value = value), null == defaultValue)) {
2162 element.defaultValue !== value && (element.defaultValue = value);
2163 return;
2164 }
2165 element.defaultValue = null != defaultValue ? "" + getToStringValue(defaultValue) : "";
2166 }
2167 function initTextarea(element, value, defaultValue, children) {
2168 if (null == value) {
2169 if (null != children) {
2170 if (null != defaultValue)
2171 throw Error(
2172 "If you supply `defaultValue` on a <textarea>, do not pass children."
2173 );
2174 if (isArrayImpl(children)) {
2175 if (1 < children.length)
2176 throw Error("<textarea> can only have at most one child.");
2177 children = children[0];
2178 }
2179 defaultValue = children;
2180 }
2181 null == defaultValue && (defaultValue = "");
2182 value = defaultValue;
2183 }
2184 defaultValue = getToStringValue(value);
2185 element.defaultValue = defaultValue;
2186 children = element.textContent;
2187 children === defaultValue && "" !== children && null !== children && (element.value = children);
2188 track(element);
2189 }
2190 function findNotableNode(node, indent) {
2191 return void 0 === node.serverProps && 0 === node.serverTail.length && 1 === node.children.length && 3 < node.distanceFromLeaf && node.distanceFromLeaf > 15 - indent ? findNotableNode(node.children[0], indent) : node;
2192 }
2193 function indentation(indent) {
2194 return " " + " ".repeat(indent);
2195 }
2196 function added(indent) {
2197 return "+ " + " ".repeat(indent);
2198 }
2199 function removed(indent) {
2200 return "- " + " ".repeat(indent);
2201 }
2202 function describeFiberType(fiber) {
2203 switch (fiber.tag) {
2204 case 26:
2205 case 27:
2206 case 5:
2207 return fiber.type;
2208 case 16:
2209 return "Lazy";
2210 case 31:
2211 return "Activity";
2212 case 13:
2213 return "Suspense";
2214 case 19:
2215 return "SuspenseList";
2216 case 0:
2217 case 15:
2218 return fiber = fiber.type, fiber.displayName || fiber.name || null;
2219 case 11:
2220 return fiber = fiber.type.render, fiber.displayName || fiber.name || null;
2221 case 1:
2222 return fiber = fiber.type, fiber.displayName || fiber.name || null;
2223 default:
2224 return null;
2225 }
2226 }
2227 function describeTextNode(content, maxLength) {
2228 return needsEscaping.test(content) ? (content = JSON.stringify(content), content.length > maxLength - 2 ? 8 > maxLength ? '{"..."}' : "{" + content.slice(0, maxLength - 7) + '..."}' : "{" + content + "}") : content.length > maxLength ? 5 > maxLength ? '{"..."}' : content.slice(0, maxLength - 3) + "..." : content;
2229 }
2230 function describeTextDiff(clientText, serverProps, indent) {
2231 var maxLength = 120 - 2 * indent;
2232 if (null === serverProps)
2233 return added(indent) + describeTextNode(clientText, maxLength) + "\n";
2234 if ("string" === typeof serverProps) {
2235 for (var firstDiff = 0; firstDiff < serverProps.length && firstDiff < clientText.length && serverProps.charCodeAt(firstDiff) === clientText.charCodeAt(firstDiff); firstDiff++) ;
2236 firstDiff > maxLength - 8 && 10 < firstDiff && (clientText = "..." + clientText.slice(firstDiff - 8), serverProps = "..." + serverProps.slice(firstDiff - 8));
2237 return added(indent) + describeTextNode(clientText, maxLength) + "\n" + removed(indent) + describeTextNode(serverProps, maxLength) + "\n";
2238 }
2239 return indentation(indent) + describeTextNode(clientText, maxLength) + "\n";
2240 }
2241 function objectName(object) {
2242 return Object.prototype.toString.call(object).replace(/^\[object (.*)\]$/, function(m, p0) {
2243 return p0;
2244 });
2245 }
2246 function describeValue(value, maxLength) {
2247 switch (typeof value) {
2248 case "string":
2249 return value = JSON.stringify(value), value.length > maxLength ? 5 > maxLength ? '"..."' : value.slice(0, maxLength - 4) + '..."' : value;
2250 case "object":
2251 if (null === value) return "null";
2252 if (isArrayImpl(value)) return "[...]";
2253 if (value.$$typeof === REACT_ELEMENT_TYPE)
2254 return (maxLength = getComponentNameFromType(value.type)) ? "<" + maxLength + ">" : "<...>";
2255 var name = objectName(value);
2256 if ("Object" === name) {
2257 name = "";
2258 maxLength -= 2;
2259 for (var propName in value)
2260 if (value.hasOwnProperty(propName)) {
2261 var jsonPropName = JSON.stringify(propName);
2262 jsonPropName !== '"' + propName + '"' && (propName = jsonPropName);
2263 maxLength -= propName.length - 2;
2264 jsonPropName = describeValue(
2265 value[propName],
2266 15 > maxLength ? maxLength : 15
2267 );
2268 maxLength -= jsonPropName.length;
2269 if (0 > maxLength) {
2270 name += "" === name ? "..." : ", ...";
2271 break;
2272 }
2273 name += ("" === name ? "" : ",") + propName + ":" + jsonPropName;
2274 }
2275 return "{" + name + "}";
2276 }
2277 return name;
2278 case "function":
2279 return (maxLength = value.displayName || value.name) ? "function " + maxLength : "function";
2280 default:
2281 return String(value);
2282 }
2283 }
2284 function describePropValue(value, maxLength) {
2285 return "string" !== typeof value || needsEscaping.test(value) ? "{" + describeValue(value, maxLength - 2) + "}" : value.length > maxLength - 2 ? 5 > maxLength ? '"..."' : '"' + value.slice(0, maxLength - 5) + '..."' : '"' + value + '"';
2286 }
2287 function describeExpandedElement(type, props, rowPrefix) {
2288 var remainingRowLength = 120 - rowPrefix.length - type.length, properties = [], propName;
2289 for (propName in props)
2290 if (props.hasOwnProperty(propName) && "children" !== propName) {
2291 var propValue = describePropValue(
2292 props[propName],
2293 120 - rowPrefix.length - propName.length - 1
2294 );
2295 remainingRowLength -= propName.length + propValue.length + 2;
2296 properties.push(propName + "=" + propValue);
2297 }
2298 return 0 === properties.length ? rowPrefix + "<" + type + ">\n" : 0 < remainingRowLength ? rowPrefix + "<" + type + " " + properties.join(" ") + ">\n" : rowPrefix + "<" + type + "\n" + rowPrefix + " " + properties.join("\n" + rowPrefix + " ") + "\n" + rowPrefix + ">\n";
2299 }
2300 function describePropertiesDiff(clientObject, serverObject, indent) {
2301 var properties = "", remainingServerProperties = assign({}, serverObject), propName;
2302 for (propName in clientObject)
2303 if (clientObject.hasOwnProperty(propName)) {
2304 delete remainingServerProperties[propName];
2305 var maxLength = 120 - 2 * indent - propName.length - 2, clientPropValue = describeValue(clientObject[propName], maxLength);
2306 serverObject.hasOwnProperty(propName) ? (maxLength = describeValue(serverObject[propName], maxLength), properties += added(indent) + propName + ": " + clientPropValue + "\n", properties += removed(indent) + propName + ": " + maxLength + "\n") : properties += added(indent) + propName + ": " + clientPropValue + "\n";
2307 }
2308 for (var _propName in remainingServerProperties)
2309 remainingServerProperties.hasOwnProperty(_propName) && (clientObject = describeValue(
2310 remainingServerProperties[_propName],
2311 120 - 2 * indent - _propName.length - 2
2312 ), properties += removed(indent) + _propName + ": " + clientObject + "\n");
2313 return properties;
2314 }
2315 function describeElementDiff(type, clientProps, serverProps, indent) {
2316 var content = "", serverPropNames = /* @__PURE__ */ new Map();
2317 for (propName$jscomp$0 in serverProps)
2318 serverProps.hasOwnProperty(propName$jscomp$0) && serverPropNames.set(
2319 propName$jscomp$0.toLowerCase(),
2320 propName$jscomp$0
2321 );
2322 if (1 === serverPropNames.size && serverPropNames.has("children"))
2323 content += describeExpandedElement(
2324 type,
2325 clientProps,
2326 indentation(indent)
2327 );
2328 else {
2329 for (var _propName2 in clientProps)
2330 if (clientProps.hasOwnProperty(_propName2) && "children" !== _propName2) {
2331 var maxLength$jscomp$0 = 120 - 2 * (indent + 1) - _propName2.length - 1, serverPropName = serverPropNames.get(_propName2.toLowerCase());
2332 if (void 0 !== serverPropName) {
2333 serverPropNames.delete(_propName2.toLowerCase());
2334 var propName$jscomp$0 = clientProps[_propName2];
2335 serverPropName = serverProps[serverPropName];
2336 var clientPropValue = describePropValue(
2337 propName$jscomp$0,
2338 maxLength$jscomp$0
2339 );
2340 maxLength$jscomp$0 = describePropValue(
2341 serverPropName,
2342 maxLength$jscomp$0
2343 );
2344 "object" === typeof propName$jscomp$0 && null !== propName$jscomp$0 && "object" === typeof serverPropName && null !== serverPropName && "Object" === objectName(propName$jscomp$0) && "Object" === objectName(serverPropName) && (2 < Object.keys(propName$jscomp$0).length || 2 < Object.keys(serverPropName).length || -1 < clientPropValue.indexOf("...") || -1 < maxLength$jscomp$0.indexOf("...")) ? content += indentation(indent + 1) + _propName2 + "={{\n" + describePropertiesDiff(
2345 propName$jscomp$0,
2346 serverPropName,
2347 indent + 2
2348 ) + indentation(indent + 1) + "}}\n" : (content += added(indent + 1) + _propName2 + "=" + clientPropValue + "\n", content += removed(indent + 1) + _propName2 + "=" + maxLength$jscomp$0 + "\n");
2349 } else
2350 content += indentation(indent + 1) + _propName2 + "=" + describePropValue(clientProps[_propName2], maxLength$jscomp$0) + "\n";
2351 }
2352 serverPropNames.forEach(function(propName) {
2353 if ("children" !== propName) {
2354 var maxLength = 120 - 2 * (indent + 1) - propName.length - 1;
2355 content += removed(indent + 1) + propName + "=" + describePropValue(serverProps[propName], maxLength) + "\n";
2356 }
2357 });
2358 content = "" === content ? indentation(indent) + "<" + type + ">\n" : indentation(indent) + "<" + type + "\n" + content + indentation(indent) + ">\n";
2359 }
2360 type = serverProps.children;
2361 clientProps = clientProps.children;
2362 if ("string" === typeof type || "number" === typeof type || "bigint" === typeof type) {
2363 serverPropNames = "";
2364 if ("string" === typeof clientProps || "number" === typeof clientProps || "bigint" === typeof clientProps)
2365 serverPropNames = "" + clientProps;
2366 content += describeTextDiff(serverPropNames, "" + type, indent + 1);
2367 } else if ("string" === typeof clientProps || "number" === typeof clientProps || "bigint" === typeof clientProps)
2368 content = null == type ? content + describeTextDiff("" + clientProps, null, indent + 1) : content + describeTextDiff("" + clientProps, void 0, indent + 1);
2369 return content;
2370 }
2371 function describeSiblingFiber(fiber, indent) {
2372 var type = describeFiberType(fiber);
2373 if (null === type) {
2374 type = "";
2375 for (fiber = fiber.child; fiber; )
2376 type += describeSiblingFiber(fiber, indent), fiber = fiber.sibling;
2377 return type;
2378 }
2379 return indentation(indent) + "<" + type + ">\n";
2380 }
2381 function describeNode(node, indent) {
2382 var skipToNode = findNotableNode(node, indent);
2383 if (skipToNode !== node && (1 !== node.children.length || node.children[0] !== skipToNode))
2384 return indentation(indent) + "...\n" + describeNode(skipToNode, indent + 1);
2385 skipToNode = "";
2386 var debugInfo = node.fiber._debugInfo;
2387 if (debugInfo)
2388 for (var i = 0; i < debugInfo.length; i++) {
2389 var serverComponentName = debugInfo[i].name;
2390 "string" === typeof serverComponentName && (skipToNode += indentation(indent) + "<" + serverComponentName + ">\n", indent++);
2391 }
2392 debugInfo = "";
2393 i = node.fiber.pendingProps;
2394 if (6 === node.fiber.tag)
2395 debugInfo = describeTextDiff(i, node.serverProps, indent), indent++;
2396 else if (serverComponentName = describeFiberType(node.fiber), null !== serverComponentName)
2397 if (void 0 === node.serverProps) {
2398 debugInfo = indent;
2399 var maxLength = 120 - 2 * debugInfo - serverComponentName.length - 2, content = "";
2400 for (propName in i)
2401 if (i.hasOwnProperty(propName) && "children" !== propName) {
2402 var propValue = describePropValue(i[propName], 15);
2403 maxLength -= propName.length + propValue.length + 2;
2404 if (0 > maxLength) {
2405 content += " ...";
2406 break;
2407 }
2408 content += " " + propName + "=" + propValue;
2409 }
2410 debugInfo = indentation(debugInfo) + "<" + serverComponentName + content + ">\n";
2411 indent++;
2412 } else
2413 null === node.serverProps ? (debugInfo = describeExpandedElement(
2414 serverComponentName,
2415 i,
2416 added(indent)
2417 ), indent++) : "string" === typeof node.serverProps ? console.error(
2418 "Should not have matched a non HostText fiber to a Text node. This is a bug in React."
2419 ) : (debugInfo = describeElementDiff(
2420 serverComponentName,
2421 i,
2422 node.serverProps,
2423 indent
2424 ), indent++);
2425 var propName = "";
2426 i = node.fiber.child;
2427 for (serverComponentName = 0; i && serverComponentName < node.children.length; )
2428 maxLength = node.children[serverComponentName], maxLength.fiber === i ? (propName += describeNode(maxLength, indent), serverComponentName++) : propName += describeSiblingFiber(i, indent), i = i.sibling;
2429 i && 0 < node.children.length && (propName += indentation(indent) + "...\n");
2430 i = node.serverTail;
2431 null === node.serverProps && indent--;
2432 for (node = 0; node < i.length; node++)
2433 serverComponentName = i[node], propName = "string" === typeof serverComponentName ? propName + (removed(indent) + describeTextNode(serverComponentName, 120 - 2 * indent) + "\n") : propName + describeExpandedElement(
2434 serverComponentName.type,
2435 serverComponentName.props,
2436 removed(indent)
2437 );
2438 return skipToNode + debugInfo + propName;
2439 }
2440 function describeDiff(rootNode) {
2441 try {
2442 return "\n\n" + describeNode(rootNode, 0);
2443 } catch (x) {
2444 return "";
2445 }
2446 }
2447 function describeAncestors(ancestor, child, props) {
2448 for (var fiber = child, node = null, distanceFromLeaf = 0; fiber; )
2449 fiber === ancestor && (distanceFromLeaf = 0), node = {
2450 fiber,
2451 children: null !== node ? [node] : [],
2452 serverProps: fiber === child ? props : fiber === ancestor ? null : void 0,
2453 serverTail: [],
2454 distanceFromLeaf
2455 }, distanceFromLeaf++, fiber = fiber.return;
2456 return null !== node ? describeDiff(node).replaceAll(/^[+-]/gm, ">") : "";
2457 }
2458 function updatedAncestorInfoDev(oldInfo, tag) {
2459 var ancestorInfo = assign({}, oldInfo || emptyAncestorInfoDev), info = { tag };
2460 -1 !== inScopeTags.indexOf(tag) && (ancestorInfo.aTagInScope = null, ancestorInfo.buttonTagInScope = null, ancestorInfo.nobrTagInScope = null);
2461 -1 !== buttonScopeTags.indexOf(tag) && (ancestorInfo.pTagInButtonScope = null);
2462 -1 !== specialTags.indexOf(tag) && "address" !== tag && "div" !== tag && "p" !== tag && (ancestorInfo.listItemTagAutoclosing = null, ancestorInfo.dlItemTagAutoclosing = null);
2463 ancestorInfo.current = info;
2464 "form" === tag && (ancestorInfo.formTag = info);
2465 "a" === tag && (ancestorInfo.aTagInScope = info);
2466 "button" === tag && (ancestorInfo.buttonTagInScope = info);
2467 "nobr" === tag && (ancestorInfo.nobrTagInScope = info);
2468 "p" === tag && (ancestorInfo.pTagInButtonScope = info);
2469 "li" === tag && (ancestorInfo.listItemTagAutoclosing = info);
2470 if ("dd" === tag || "dt" === tag)
2471 ancestorInfo.dlItemTagAutoclosing = info;
2472 "#document" === tag || "html" === tag ? ancestorInfo.containerTagInScope = null : ancestorInfo.containerTagInScope || (ancestorInfo.containerTagInScope = info);
2473 null !== oldInfo || "#document" !== tag && "html" !== tag && "body" !== tag ? true === ancestorInfo.implicitRootScope && (ancestorInfo.implicitRootScope = false) : ancestorInfo.implicitRootScope = true;
2474 return ancestorInfo;
2475 }
2476 function isTagValidWithParent(tag, parentTag, implicitRootScope) {
2477 switch (parentTag) {
2478 case "tr":
2479 return "th" === tag || "td" === tag || "style" === tag || "script" === tag || "template" === tag;
2480 case "tbody":
2481 case "thead":
2482 case "tfoot":
2483 return "tr" === tag || "style" === tag || "script" === tag || "template" === tag;
2484 case "colgroup":
2485 return "col" === tag || "template" === tag;
2486 case "table":
2487 return "caption" === tag || "colgroup" === tag || "tbody" === tag || "tfoot" === tag || "thead" === tag || "style" === tag || "script" === tag || "template" === tag;
2488 case "head":
2489 return "base" === tag || "basefont" === tag || "bgsound" === tag || "link" === tag || "meta" === tag || "title" === tag || "noscript" === tag || "noframes" === tag || "style" === tag || "script" === tag || "template" === tag;
2490 case "html":
2491 if (implicitRootScope) break;
2492 return "head" === tag || "body" === tag || "frameset" === tag;
2493 case "frameset":
2494 return "frame" === tag;
2495 case "#document":
2496 if (!implicitRootScope) return "html" === tag;
2497 }
2498 switch (tag) {
2499 case "h1":
2500 case "h2":
2501 case "h3":
2502 case "h4":
2503 case "h5":
2504 case "h6":
2505 return "h1" !== parentTag && "h2" !== parentTag && "h3" !== parentTag && "h4" !== parentTag && "h5" !== parentTag && "h6" !== parentTag;
2506 case "rp":
2507 case "rt":
2508 return -1 === impliedEndTags.indexOf(parentTag);
2509 case "caption":
2510 case "col":
2511 case "colgroup":
2512 case "input":
2513 return "select" !== parentTag;
2514 case "frameset":
2515 case "frame":
2516 case "tbody":
2517 case "td":
2518 case "tfoot":
2519 case "th":
2520 case "thead":
2521 case "tr":
2522 return null == parentTag;
2523 case "head":
2524 return implicitRootScope || null === parentTag;
2525 case "html":
2526 return implicitRootScope && "#document" === parentTag || null === parentTag;
2527 case "body":
2528 return implicitRootScope && ("#document" === parentTag || "html" === parentTag) || null === parentTag;
2529 }
2530 return true;
2531 }
2532 function findInvalidAncestorForTag(tag, ancestorInfo) {
2533 switch (tag) {
2534 case "address":
2535 case "article":
2536 case "aside":
2537 case "blockquote":
2538 case "center":
2539 case "details":
2540 case "dialog":
2541 case "dir":
2542 case "div":
2543 case "dl":
2544 case "fieldset":
2545 case "figcaption":
2546 case "figure":
2547 case "footer":
2548 case "header":
2549 case "hgroup":
2550 case "main":
2551 case "menu":
2552 case "nav":
2553 case "ol":
2554 case "p":
2555 case "section":
2556 case "summary":
2557 case "ul":
2558 case "pre":
2559 case "listing":
2560 case "table":
2561 case "hr":
2562 case "xmp":
2563 case "h1":
2564 case "h2":
2565 case "h3":
2566 case "h4":
2567 case "h5":
2568 case "h6":
2569 return ancestorInfo.pTagInButtonScope;
2570 case "form":
2571 return ancestorInfo.formTag || ancestorInfo.pTagInButtonScope;
2572 case "li":
2573 return ancestorInfo.listItemTagAutoclosing;
2574 case "dd":
2575 case "dt":
2576 return ancestorInfo.dlItemTagAutoclosing;
2577 case "button":
2578 return ancestorInfo.buttonTagInScope;
2579 case "a":
2580 return ancestorInfo.aTagInScope;
2581 case "nobr":
2582 return ancestorInfo.nobrTagInScope;
2583 }
2584 return null;
2585 }
2586 function findAncestor(parent, tagName) {
2587 for (; parent; ) {
2588 switch (parent.tag) {
2589 case 5:
2590 case 26:
2591 case 27:
2592 if (parent.type === tagName) return parent;
2593 }
2594 parent = parent.return;
2595 }
2596 return null;
2597 }
2598 function validateDOMNesting(childTag, ancestorInfo) {
2599 ancestorInfo = ancestorInfo || emptyAncestorInfoDev;
2600 var parentInfo = ancestorInfo.current;
2601 ancestorInfo = (parentInfo = isTagValidWithParent(
2602 childTag,
2603 parentInfo && parentInfo.tag,
2604 ancestorInfo.implicitRootScope
2605 ) ? null : parentInfo) ? null : findInvalidAncestorForTag(childTag, ancestorInfo);
2606 ancestorInfo = parentInfo || ancestorInfo;
2607 if (!ancestorInfo) return true;
2608 var ancestorTag = ancestorInfo.tag;
2609 ancestorInfo = String(!!parentInfo) + "|" + childTag + "|" + ancestorTag;
2610 if (didWarn[ancestorInfo]) return false;
2611 didWarn[ancestorInfo] = true;
2612 var ancestor = (ancestorInfo = current) ? findAncestor(ancestorInfo.return, ancestorTag) : null, ancestorDescription = null !== ancestorInfo && null !== ancestor ? describeAncestors(ancestor, ancestorInfo, null) : "", tagDisplayName = "<" + childTag + ">";
2613 parentInfo ? (parentInfo = "", "table" === ancestorTag && "tr" === childTag && (parentInfo += " Add a <tbody>, <thead> or <tfoot> to your code to match the DOM tree generated by the browser."), console.error(
2614 "In HTML, %s cannot be a child of <%s>.%s\nThis will cause a hydration error.%s",
2615 tagDisplayName,
2616 ancestorTag,
2617 parentInfo,
2618 ancestorDescription
2619 )) : console.error(
2620 "In HTML, %s cannot be a descendant of <%s>.\nThis will cause a hydration error.%s",
2621 tagDisplayName,
2622 ancestorTag,
2623 ancestorDescription
2624 );
2625 ancestorInfo && (childTag = ancestorInfo.return, null === ancestor || null === childTag || ancestor === childTag && childTag._debugOwner === ancestorInfo._debugOwner || runWithFiberInDEV(ancestor, function() {
2626 console.error(
2627 "<%s> cannot contain a nested %s.\nSee this log for the ancestor stack trace.",
2628 ancestorTag,
2629 tagDisplayName
2630 );
2631 }));
2632 return false;
2633 }
2634 function validateTextNesting(childText, parentTag, implicitRootScope) {
2635 if (implicitRootScope || isTagValidWithParent("#text", parentTag, false))
2636 return true;
2637 implicitRootScope = "#text|" + parentTag;
2638 if (didWarn[implicitRootScope]) return false;
2639 didWarn[implicitRootScope] = true;
2640 var ancestor = (implicitRootScope = current) ? findAncestor(implicitRootScope, parentTag) : null;
2641 implicitRootScope = null !== implicitRootScope && null !== ancestor ? describeAncestors(
2642 ancestor,
2643 implicitRootScope,
2644 6 !== implicitRootScope.tag ? { children: null } : null
2645 ) : "";
2646 /\S/.test(childText) ? console.error(
2647 "In HTML, text nodes cannot be a child of <%s>.\nThis will cause a hydration error.%s",
2648 parentTag,
2649 implicitRootScope
2650 ) : console.error(
2651 "In HTML, whitespace text nodes cannot be a child of <%s>. Make sure you don't have any extra whitespace between tags on each line of your source code.\nThis will cause a hydration error.%s",
2652 parentTag,
2653 implicitRootScope
2654 );
2655 return false;
2656 }
2657 function setTextContent(node, text) {
2658 if (text) {
2659 var firstChild = node.firstChild;
2660 if (firstChild && firstChild === node.lastChild && 3 === firstChild.nodeType) {
2661 firstChild.nodeValue = text;
2662 return;
2663 }
2664 }
2665 node.textContent = text;
2666 }
2667 function camelize(string) {
2668 return string.replace(hyphenPattern, function(_, character) {
2669 return character.toUpperCase();
2670 });
2671 }
2672 function setValueForStyle(style2, styleName, value) {
2673 var isCustomProperty = 0 === styleName.indexOf("--");
2674 isCustomProperty || (-1 < styleName.indexOf("-") ? warnedStyleNames.hasOwnProperty(styleName) && warnedStyleNames[styleName] || (warnedStyleNames[styleName] = true, console.error(
2675 "Unsupported style property %s. Did you mean %s?",
2676 styleName,
2677 camelize(styleName.replace(msPattern, "ms-"))
2678 )) : badVendoredStyleNamePattern.test(styleName) ? warnedStyleNames.hasOwnProperty(styleName) && warnedStyleNames[styleName] || (warnedStyleNames[styleName] = true, console.error(
2679 "Unsupported vendor-prefixed style property %s. Did you mean %s?",
2680 styleName,
2681 styleName.charAt(0).toUpperCase() + styleName.slice(1)
2682 )) : !badStyleValueWithSemicolonPattern.test(value) || warnedStyleValues.hasOwnProperty(value) && warnedStyleValues[value] || (warnedStyleValues[value] = true, console.error(
2683 `Style property values shouldn't contain a semicolon. Try "%s: %s" instead.`,
2684 styleName,
2685 value.replace(badStyleValueWithSemicolonPattern, "")
2686 )), "number" === typeof value && (isNaN(value) ? warnedForNaNValue || (warnedForNaNValue = true, console.error(
2687 "`NaN` is an invalid value for the `%s` css style property.",
2688 styleName
2689 )) : isFinite(value) || warnedForInfinityValue || (warnedForInfinityValue = true, console.error(
2690 "`Infinity` is an invalid value for the `%s` css style property.",
2691 styleName
2692 ))));
2693 null == value || "boolean" === typeof value || "" === value ? isCustomProperty ? style2.setProperty(styleName, "") : "float" === styleName ? style2.cssFloat = "" : style2[styleName] = "" : isCustomProperty ? style2.setProperty(styleName, value) : "number" !== typeof value || 0 === value || unitlessNumbers.has(styleName) ? "float" === styleName ? style2.cssFloat = value : (checkCSSPropertyStringCoercion(value, styleName), style2[styleName] = ("" + value).trim()) : style2[styleName] = value + "px";
2694 }
2695 function setValueForStyles(node, styles, prevStyles) {
2696 if (null != styles && "object" !== typeof styles)
2697 throw Error(
2698 "The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX."
2699 );
2700 styles && Object.freeze(styles);
2701 node = node.style;
2702 if (null != prevStyles) {
2703 if (styles) {
2704 var expandedUpdates = {};
2705 if (prevStyles) {
2706 for (var key in prevStyles)
2707 if (prevStyles.hasOwnProperty(key) && !styles.hasOwnProperty(key))
2708 for (var longhands = shorthandToLonghand[key] || [key], i = 0; i < longhands.length; i++)
2709 expandedUpdates[longhands[i]] = key;
2710 }
2711 for (var _key in styles)
2712 if (styles.hasOwnProperty(_key) && (!prevStyles || prevStyles[_key] !== styles[_key]))
2713 for (key = shorthandToLonghand[_key] || [_key], longhands = 0; longhands < key.length; longhands++)
2714 expandedUpdates[key[longhands]] = _key;
2715 _key = {};
2716 for (var key$jscomp$0 in styles)
2717 for (key = shorthandToLonghand[key$jscomp$0] || [key$jscomp$0], longhands = 0; longhands < key.length; longhands++)
2718 _key[key[longhands]] = key$jscomp$0;
2719 key$jscomp$0 = {};
2720 for (var _key2 in expandedUpdates)
2721 if (key = expandedUpdates[_key2], (longhands = _key[_key2]) && key !== longhands && (i = key + "," + longhands, !key$jscomp$0[i])) {
2722 key$jscomp$0[i] = true;
2723 i = console;
2724 var value = styles[key];
2725 i.error.call(
2726 i,
2727 "%s a style property during rerender (%s) when a conflicting property is set (%s) can lead to styling bugs. To avoid this, don't mix shorthand and non-shorthand properties for the same value; instead, replace the shorthand with separate values.",
2728 null == value || "boolean" === typeof value || "" === value ? "Removing" : "Updating",
2729 key,
2730 longhands
2731 );
2732 }
2733 }
2734 for (var styleName in prevStyles)
2735 !prevStyles.hasOwnProperty(styleName) || null != styles && styles.hasOwnProperty(styleName) || (0 === styleName.indexOf("--") ? node.setProperty(styleName, "") : "float" === styleName ? node.cssFloat = "" : node[styleName] = "", viewTransitionMutationContext = true);
2736 for (var _styleName in styles)
2737 _key2 = styles[_styleName], styles.hasOwnProperty(_styleName) && prevStyles[_styleName] !== _key2 && (setValueForStyle(node, _styleName, _key2), viewTransitionMutationContext = true);
2738 } else
2739 for (expandedUpdates in styles)
2740 styles.hasOwnProperty(expandedUpdates) && setValueForStyle(node, expandedUpdates, styles[expandedUpdates]);
2741 }
2742 function isCustomElement(tagName) {
2743 if (-1 === tagName.indexOf("-")) return false;
2744 switch (tagName) {
2745 case "annotation-xml":
2746 case "color-profile":
2747 case "font-face":
2748 case "font-face-src":
2749 case "font-face-uri":
2750 case "font-face-format":
2751 case "font-face-name":
2752 case "missing-glyph":
2753 return false;
2754 default:
2755 return true;
2756 }
2757 }
2758 function getAttributeAlias(name) {
2759 return aliases.get(name) || name;
2760 }
2761 function validateProperty$1(tagName, name) {
2762 if (hasOwnProperty.call(warnedProperties$1, name) && warnedProperties$1[name])
2763 return true;
2764 if (rARIACamel$1.test(name)) {
2765 tagName = "aria-" + name.slice(4).toLowerCase();
2766 tagName = ariaProperties.hasOwnProperty(tagName) ? tagName : null;
2767 if (null == tagName)
2768 return console.error(
2769 "Invalid ARIA attribute `%s`. ARIA attributes follow the pattern aria-* and must be lowercase.",
2770 name
2771 ), warnedProperties$1[name] = true;
2772 if (name !== tagName)
2773 return console.error(
2774 "Invalid ARIA attribute `%s`. Did you mean `%s`?",
2775 name,
2776 tagName
2777 ), warnedProperties$1[name] = true;
2778 }
2779 if (rARIA$1.test(name)) {
2780 tagName = name.toLowerCase();
2781 tagName = ariaProperties.hasOwnProperty(tagName) ? tagName : null;
2782 if (null == tagName) return warnedProperties$1[name] = true, false;
2783 name !== tagName && (console.error(
2784 "Unknown ARIA attribute `%s`. Did you mean `%s`?",
2785 name,
2786 tagName
2787 ), warnedProperties$1[name] = true);
2788 }
2789 return true;
2790 }
2791 function validateProperties$2(type, props) {
2792 var invalidProps = [], key;
2793 for (key in props)
2794 validateProperty$1(type, key) || invalidProps.push(key);
2795 props = invalidProps.map(function(prop) {
2796 return "`" + prop + "`";
2797 }).join(", ");
2798 1 === invalidProps.length ? console.error(
2799 "Invalid aria prop %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props",
2800 props,
2801 type
2802 ) : 1 < invalidProps.length && console.error(
2803 "Invalid aria props %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props",
2804 props,
2805 type
2806 );
2807 }
2808 function validateProperty(tagName, name, value, eventRegistry) {
2809 if (hasOwnProperty.call(warnedProperties, name) && warnedProperties[name])
2810 return true;
2811 var lowerCasedName = name.toLowerCase();
2812 if ("onfocusin" === lowerCasedName || "onfocusout" === lowerCasedName)
2813 return console.error(
2814 "React uses onFocus and onBlur instead of onFocusIn and onFocusOut. All React events are normalized to bubble, so onFocusIn and onFocusOut are not needed/supported by React."
2815 ), warnedProperties[name] = true;
2816 if ("function" === typeof value && ("form" === tagName && "action" === name || "input" === tagName && "formAction" === name || "button" === tagName && "formAction" === name))
2817 return true;
2818 if (null != eventRegistry) {
2819 tagName = eventRegistry.possibleRegistrationNames;
2820 if (eventRegistry.registrationNameDependencies.hasOwnProperty(name))
2821 return true;
2822 eventRegistry = tagName.hasOwnProperty(lowerCasedName) ? tagName[lowerCasedName] : null;
2823 if (null != eventRegistry)
2824 return console.error(
2825 "Invalid event handler property `%s`. Did you mean `%s`?",
2826 name,
2827 eventRegistry
2828 ), warnedProperties[name] = true;
2829 if (EVENT_NAME_REGEX.test(name))
2830 return console.error(
2831 "Unknown event handler property `%s`. It will be ignored.",
2832 name
2833 ), warnedProperties[name] = true;
2834 } else if (EVENT_NAME_REGEX.test(name))
2835 return INVALID_EVENT_NAME_REGEX.test(name) && console.error(
2836 "Invalid event handler property `%s`. React events use the camelCase naming convention, for example `onClick`.",
2837 name
2838 ), warnedProperties[name] = true;
2839 if (rARIA.test(name) || rARIACamel.test(name)) return true;
2840 if ("innerhtml" === lowerCasedName)
2841 return console.error(
2842 "Directly setting property `innerHTML` is not permitted. For more information, lookup documentation on `dangerouslySetInnerHTML`."
2843 ), warnedProperties[name] = true;
2844 if ("aria" === lowerCasedName)
2845 return console.error(
2846 "The `aria` attribute is reserved for future use in React. Pass individual `aria-` attributes instead."
2847 ), warnedProperties[name] = true;
2848 if ("is" === lowerCasedName && null !== value && void 0 !== value && "string" !== typeof value)
2849 return console.error(
2850 "Received a `%s` for a string attribute `is`. If this is expected, cast the value to a string.",
2851 typeof value
2852 ), warnedProperties[name] = true;
2853 if ("number" === typeof value && isNaN(value))
2854 return console.error(
2855 "Received NaN for the `%s` attribute. If this is expected, cast the value to a string.",
2856 name
2857 ), warnedProperties[name] = true;
2858 if (possibleStandardNames.hasOwnProperty(lowerCasedName)) {
2859 if (lowerCasedName = possibleStandardNames[lowerCasedName], lowerCasedName !== name)
2860 return console.error(
2861 "Invalid DOM property `%s`. Did you mean `%s`?",
2862 name,
2863 lowerCasedName
2864 ), warnedProperties[name] = true;
2865 } else if (name !== lowerCasedName)
2866 return console.error(
2867 "React does not recognize the `%s` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `%s` instead. If you accidentally passed it from a parent component, remove it from the DOM element.",
2868 name,
2869 lowerCasedName
2870 ), warnedProperties[name] = true;
2871 switch (name) {
2872 case "dangerouslySetInnerHTML":
2873 case "children":
2874 case "style":
2875 case "suppressContentEditableWarning":
2876 case "suppressHydrationWarning":
2877 case "defaultValue":
2878 case "defaultChecked":
2879 case "innerHTML":
2880 case "ref":
2881 return true;
2882 case "innerText":
2883 case "textContent":
2884 return true;
2885 }
2886 switch (typeof value) {
2887 case "boolean":
2888 switch (name) {
2889 case "autoFocus":
2890 case "checked":
2891 case "multiple":
2892 case "muted":
2893 case "selected":
2894 case "contentEditable":
2895 case "spellCheck":
2896 case "draggable":
2897 case "value":
2898 case "autoReverse":
2899 case "externalResourcesRequired":
2900 case "focusable":
2901 case "preserveAlpha":
2902 case "allowFullScreen":
2903 case "async":
2904 case "autoPlay":
2905 case "controls":
2906 case "credentialless":
2907 case "default":
2908 case "defer":
2909 case "disabled":
2910 case "disablePictureInPicture":
2911 case "disableRemotePlayback":
2912 case "formNoValidate":
2913 case "hidden":
2914 case "loop":
2915 case "noModule":
2916 case "noValidate":
2917 case "open":
2918 case "playsInline":
2919 case "readOnly":
2920 case "required":
2921 case "reversed":
2922 case "scoped":
2923 case "seamless":
2924 case "itemScope":
2925 case "capture":
2926 case "download":
2927 case "inert":
2928 return true;
2929 default:
2930 lowerCasedName = name.toLowerCase().slice(0, 5);
2931 if ("data-" === lowerCasedName || "aria-" === lowerCasedName)
2932 return true;
2933 value ? console.error(
2934 'Received `%s` for a non-boolean attribute `%s`.\n\nIf you want to write it to the DOM, pass a string instead: %s="%s" or %s={value.toString()}.',
2935 value,
2936 name,
2937 name,
2938 value,
2939 name
2940 ) : console.error(
2941 'Received `%s` for a non-boolean attribute `%s`.\n\nIf you want to write it to the DOM, pass a string instead: %s="%s" or %s={value.toString()}.\n\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.',
2942 value,
2943 name,
2944 name,
2945 value,
2946 name,
2947 name,
2948 name
2949 );
2950 return warnedProperties[name] = true;
2951 }
2952 case "function":
2953 case "symbol":
2954 return warnedProperties[name] = true, false;
2955 case "string":
2956 if ("false" === value || "true" === value) {
2957 switch (name) {
2958 case "checked":
2959 case "selected":
2960 case "multiple":
2961 case "muted":
2962 case "allowFullScreen":
2963 case "async":
2964 case "autoPlay":
2965 case "controls":
2966 case "credentialless":
2967 case "default":
2968 case "defer":
2969 case "disabled":
2970 case "disablePictureInPicture":
2971 case "disableRemotePlayback":
2972 case "formNoValidate":
2973 case "hidden":
2974 case "loop":
2975 case "noModule":
2976 case "noValidate":
2977 case "open":
2978 case "playsInline":
2979 case "readOnly":
2980 case "required":
2981 case "reversed":
2982 case "scoped":
2983 case "seamless":
2984 case "itemScope":
2985 case "inert":
2986 break;
2987 default:
2988 return true;
2989 }
2990 console.error(
2991 "Received the string `%s` for the boolean attribute `%s`. %s Did you mean %s={%s}?",
2992 value,
2993 name,
2994 "false" === value ? "The browser will interpret it as a truthy value." : 'Although this works, it will not work as expected if you pass the string "false".',
2995 name,
2996 value
2997 );
2998 warnedProperties[name] = true;
2999 }
3000 }
3001 return true;
3002 }
3003 function warnUnknownProperties(type, props, eventRegistry) {
3004 var unknownProps = [], key;
3005 for (key in props)
3006 validateProperty(type, key, props[key], eventRegistry) || unknownProps.push(key);
3007 props = unknownProps.map(function(prop) {
3008 return "`" + prop + "`";
3009 }).join(", ");
3010 1 === unknownProps.length ? console.error(
3011 "Invalid value for prop %s on <%s> tag. Either remove it from the element, or pass a string or number value to keep it in the DOM. For details, see https://react.dev/link/attribute-behavior ",
3012 props,
3013 type
3014 ) : 1 < unknownProps.length && console.error(
3015 "Invalid values for props %s on <%s> tag. Either remove them from the element, or pass a string or number value to keep them in the DOM. For details, see https://react.dev/link/attribute-behavior ",
3016 props,
3017 type
3018 );
3019 }
3020 function sanitizeURL(url) {
3021 return isJavaScriptProtocol.test("" + url) ? "javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')" : url;
3022 }
3023 function noop$1() {
3024 }
3025 function getEventTarget(nativeEvent) {
3026 nativeEvent = nativeEvent.target || nativeEvent.srcElement || window;
3027 nativeEvent.correspondingUseElement && (nativeEvent = nativeEvent.correspondingUseElement);
3028 return 3 === nativeEvent.nodeType ? nativeEvent.parentNode : nativeEvent;
3029 }
3030 function restoreStateOfTarget(target) {
3031 var internalInstance = getInstanceFromNode(target);
3032 if (internalInstance && (target = internalInstance.stateNode)) {
3033 var props = target[internalPropsKey] || null;
3034 a: switch (target = internalInstance.stateNode, internalInstance.type) {
3035 case "input":
3036 updateInput(
3037 target,
3038 props.value,
3039 props.defaultValue,
3040 props.defaultValue,
3041 props.checked,
3042 props.defaultChecked,
3043 props.type,
3044 props.name
3045 );
3046 internalInstance = props.name;
3047 if ("radio" === props.type && null != internalInstance) {
3048 for (props = target; props.parentNode; ) props = props.parentNode;
3049 checkAttributeStringCoercion(internalInstance, "name");
3050 props = props.querySelectorAll(
3051 'input[name="' + escapeSelectorAttributeValueInsideDoubleQuotes(
3052 "" + internalInstance
3053 ) + '"][type="radio"]'
3054 );
3055 for (internalInstance = 0; internalInstance < props.length; internalInstance++) {
3056 var otherNode = props[internalInstance];
3057 if (otherNode !== target && otherNode.form === target.form) {
3058 var otherProps = otherNode[internalPropsKey] || null;
3059 if (!otherProps)
3060 throw Error(
3061 "ReactDOMInput: Mixing React and non-React radio inputs with the same `name` is not supported."
3062 );
3063 updateInput(
3064 otherNode,
3065 otherProps.value,
3066 otherProps.defaultValue,
3067 otherProps.defaultValue,
3068 otherProps.checked,
3069 otherProps.defaultChecked,
3070 otherProps.type,
3071 otherProps.name
3072 );
3073 }
3074 }
3075 for (internalInstance = 0; internalInstance < props.length; internalInstance++)
3076 otherNode = props[internalInstance], otherNode.form === target.form && updateValueIfChanged(otherNode);
3077 }
3078 break a;
3079 case "textarea":
3080 updateTextarea(target, props.value, props.defaultValue);
3081 break a;
3082 case "select":
3083 internalInstance = props.value, null != internalInstance && updateOptions(target, !!props.multiple, internalInstance, false);
3084 }
3085 }
3086 }
3087 function batchedUpdates$1(fn, a, b) {
3088 if (isInsideEventHandler) return fn(a, b);
3089 isInsideEventHandler = true;
3090 try {
3091 var JSCompiler_inline_result = fn(a);
3092 return JSCompiler_inline_result;
3093 } finally {
3094 if (isInsideEventHandler = false, null !== restoreTarget || null !== restoreQueue) {
3095 if (flushSyncWork$1(), restoreTarget && (a = restoreTarget, fn = restoreQueue, restoreQueue = restoreTarget = null, restoreStateOfTarget(a), fn))
3096 for (a = 0; a < fn.length; a++) restoreStateOfTarget(fn[a]);
3097 }
3098 }
3099 }
3100 function getListener(inst, registrationName) {
3101 var stateNode = inst.stateNode;
3102 if (null === stateNode) return null;
3103 var props = stateNode[internalPropsKey] || null;
3104 if (null === props) return null;
3105 stateNode = props[registrationName];
3106 a: switch (registrationName) {
3107 case "onClick":
3108 case "onClickCapture":
3109 case "onDoubleClick":
3110 case "onDoubleClickCapture":
3111 case "onMouseDown":
3112 case "onMouseDownCapture":
3113 case "onMouseMove":
3114 case "onMouseMoveCapture":
3115 case "onMouseUp":
3116 case "onMouseUpCapture":
3117 case "onMouseEnter":
3118 (props = !props.disabled) || (inst = inst.type, props = !("button" === inst || "input" === inst || "select" === inst || "textarea" === inst));
3119 inst = !props;
3120 break a;
3121 default:
3122 inst = false;
3123 }
3124 if (inst) return null;
3125 if (stateNode && "function" !== typeof stateNode)
3126 throw Error(
3127 "Expected `" + registrationName + "` listener to be a function, instead got a value of `" + typeof stateNode + "` type."
3128 );
3129 return stateNode;
3130 }
3131 function getData() {
3132 if (fallbackText) return fallbackText;
3133 var start, startValue = startText, startLength = startValue.length, end, endValue = "value" in root ? root.value : root.textContent, endLength = endValue.length;
3134 for (start = 0; start < startLength && startValue[start] === endValue[start]; start++) ;
3135 var minEnd = startLength - start;
3136 for (end = 1; end <= minEnd && startValue[startLength - end] === endValue[endLength - end]; end++) ;
3137 return fallbackText = endValue.slice(start, 1 < end ? 1 - end : void 0);
3138 }
3139 function getEventCharCode(nativeEvent) {
3140 var keyCode = nativeEvent.keyCode;
3141 "charCode" in nativeEvent ? (nativeEvent = nativeEvent.charCode, 0 === nativeEvent && 13 === keyCode && (nativeEvent = 13)) : nativeEvent = keyCode;
3142 10 === nativeEvent && (nativeEvent = 13);
3143 return 32 <= nativeEvent || 13 === nativeEvent ? nativeEvent : 0;
3144 }
3145 function functionThatReturnsTrue() {
3146 return true;
3147 }
3148 function functionThatReturnsFalse() {
3149 return false;
3150 }
3151 function createSyntheticEvent(Interface) {
3152 function SyntheticBaseEvent(reactName, reactEventType, targetInst, nativeEvent, nativeEventTarget) {
3153 this._reactName = reactName;
3154 this._targetInst = targetInst;
3155 this.type = reactEventType;
3156 this.nativeEvent = nativeEvent;
3157 this.target = nativeEventTarget;
3158 this.currentTarget = null;
3159 for (var propName in Interface)
3160 Interface.hasOwnProperty(propName) && (reactName = Interface[propName], this[propName] = reactName ? reactName(nativeEvent) : nativeEvent[propName]);
3161 this.isDefaultPrevented = (null != nativeEvent.defaultPrevented ? nativeEvent.defaultPrevented : false === nativeEvent.returnValue) ? functionThatReturnsTrue : functionThatReturnsFalse;
3162 this.isPropagationStopped = functionThatReturnsFalse;
3163 return this;
3164 }
3165 assign(SyntheticBaseEvent.prototype, {
3166 preventDefault: function() {
3167 this.defaultPrevented = true;
3168 var event = this.nativeEvent;
3169 event && (event.preventDefault ? event.preventDefault() : "unknown" !== typeof event.returnValue && (event.returnValue = false), this.isDefaultPrevented = functionThatReturnsTrue);
3170 },
3171 stopPropagation: function() {
3172 var event = this.nativeEvent;
3173 event && (event.stopPropagation ? event.stopPropagation() : "unknown" !== typeof event.cancelBubble && (event.cancelBubble = true), this.isPropagationStopped = functionThatReturnsTrue);
3174 },
3175 persist: function() {
3176 },
3177 isPersistent: functionThatReturnsTrue
3178 });
3179 return SyntheticBaseEvent;
3180 }
3181 function modifierStateGetter(keyArg) {
3182 var nativeEvent = this.nativeEvent;
3183 return nativeEvent.getModifierState ? nativeEvent.getModifierState(keyArg) : (keyArg = modifierKeyToProp[keyArg]) ? !!nativeEvent[keyArg] : false;
3184 }
3185 function getEventModifierState() {
3186 return modifierStateGetter;
3187 }
3188 function isFallbackCompositionEnd(domEventName, nativeEvent) {
3189 switch (domEventName) {
3190 case "keyup":
3191 return -1 !== END_KEYCODES.indexOf(nativeEvent.keyCode);
3192 case "keydown":
3193 return nativeEvent.keyCode !== START_KEYCODE;
3194 case "keypress":
3195 case "mousedown":
3196 case "focusout":
3197 return true;
3198 default:
3199 return false;
3200 }
3201 }
3202 function getDataFromCustomEvent(nativeEvent) {
3203 nativeEvent = nativeEvent.detail;
3204 return "object" === typeof nativeEvent && "data" in nativeEvent ? nativeEvent.data : null;
3205 }
3206 function getNativeBeforeInputChars(domEventName, nativeEvent) {
3207 switch (domEventName) {
3208 case "compositionend":
3209 return getDataFromCustomEvent(nativeEvent);
3210 case "keypress":
3211 if (nativeEvent.which !== SPACEBAR_CODE) return null;
3212 hasSpaceKeypress = true;
3213 return SPACEBAR_CHAR;
3214 case "textInput":
3215 return domEventName = nativeEvent.data, domEventName === SPACEBAR_CHAR && hasSpaceKeypress ? null : domEventName;
3216 default:
3217 return null;
3218 }
3219 }
3220 function getFallbackBeforeInputChars(domEventName, nativeEvent) {
3221 if (isComposing)
3222 return "compositionend" === domEventName || !canUseCompositionEvent && isFallbackCompositionEnd(domEventName, nativeEvent) ? (domEventName = getData(), fallbackText = startText = root = null, isComposing = false, domEventName) : null;
3223 switch (domEventName) {
3224 case "paste":
3225 return null;
3226 case "keypress":
3227 if (!(nativeEvent.ctrlKey || nativeEvent.altKey || nativeEvent.metaKey) || nativeEvent.ctrlKey && nativeEvent.altKey) {
3228 if (nativeEvent.char && 1 < nativeEvent.char.length)
3229 return nativeEvent.char;
3230 if (nativeEvent.which)
3231 return String.fromCharCode(nativeEvent.which);
3232 }
3233 return null;
3234 case "compositionend":
3235 return useFallbackCompositionData && "ko" !== nativeEvent.locale ? null : nativeEvent.data;
3236 default:
3237 return null;
3238 }
3239 }
3240 function isTextInputElement(elem) {
3241 var nodeName = elem && elem.nodeName && elem.nodeName.toLowerCase();
3242 return "input" === nodeName ? !!supportedInputTypes[elem.type] : "textarea" === nodeName ? true : false;
3243 }
3244 function isEventSupported(eventNameSuffix) {
3245 if (!canUseDOM) return false;
3246 eventNameSuffix = "on" + eventNameSuffix;
3247 var isSupported = eventNameSuffix in document;
3248 isSupported || (isSupported = document.createElement("div"), isSupported.setAttribute(eventNameSuffix, "return;"), isSupported = "function" === typeof isSupported[eventNameSuffix]);
3249 return isSupported;
3250 }
3251 function createAndAccumulateChangeEvent(dispatchQueue, inst, nativeEvent, target) {
3252 restoreTarget ? restoreQueue ? restoreQueue.push(target) : restoreQueue = [target] : restoreTarget = target;
3253 inst = accumulateTwoPhaseListeners(inst, "onChange");
3254 0 < inst.length && (nativeEvent = new SyntheticEvent(
3255 "onChange",
3256 "change",
3257 null,
3258 nativeEvent,
3259 target
3260 ), dispatchQueue.push({ event: nativeEvent, listeners: inst }));
3261 }
3262 function runEventInBatch(dispatchQueue) {
3263 processDispatchQueue(dispatchQueue, 0);
3264 }
3265 function getInstIfValueChanged(targetInst) {
3266 var targetNode = getNodeFromInstance(targetInst);
3267 if (updateValueIfChanged(targetNode)) return targetInst;
3268 }
3269 function getTargetInstForChangeEvent(domEventName, targetInst) {
3270 if ("change" === domEventName) return targetInst;
3271 }
3272 function stopWatchingForValueChange() {
3273 activeElement$1 && (activeElement$1.detachEvent("onpropertychange", handlePropertyChange), activeElementInst$1 = activeElement$1 = null);
3274 }
3275 function handlePropertyChange(nativeEvent) {
3276 if ("value" === nativeEvent.propertyName && getInstIfValueChanged(activeElementInst$1)) {
3277 var dispatchQueue = [];
3278 createAndAccumulateChangeEvent(
3279 dispatchQueue,
3280 activeElementInst$1,
3281 nativeEvent,
3282 getEventTarget(nativeEvent)
3283 );
3284 batchedUpdates$1(runEventInBatch, dispatchQueue);
3285 }
3286 }
3287 function handleEventsForInputEventPolyfill(domEventName, target, targetInst) {
3288 "focusin" === domEventName ? (stopWatchingForValueChange(), activeElement$1 = target, activeElementInst$1 = targetInst, activeElement$1.attachEvent("onpropertychange", handlePropertyChange)) : "focusout" === domEventName && stopWatchingForValueChange();
3289 }
3290 function getTargetInstForInputEventPolyfill(domEventName) {
3291 if ("selectionchange" === domEventName || "keyup" === domEventName || "keydown" === domEventName)
3292 return getInstIfValueChanged(activeElementInst$1);
3293 }
3294 function getTargetInstForClickEvent(domEventName, targetInst) {
3295 if ("click" === domEventName) return getInstIfValueChanged(targetInst);
3296 }
3297 function getTargetInstForInputOrChangeEvent(domEventName, targetInst) {
3298 if ("input" === domEventName || "change" === domEventName)
3299 return getInstIfValueChanged(targetInst);
3300 }
3301 function is(x, y) {
3302 return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
3303 }
3304 function shallowEqual(objA, objB) {
3305 if (objectIs(objA, objB)) return true;
3306 if ("object" !== typeof objA || null === objA || "object" !== typeof objB || null === objB)
3307 return false;
3308 var keysA = Object.keys(objA), keysB = Object.keys(objB);
3309 if (keysA.length !== keysB.length) return false;
3310 for (keysB = 0; keysB < keysA.length; keysB++) {
3311 var currentKey = keysA[keysB];
3312 if (!hasOwnProperty.call(objB, currentKey) || !objectIs(objA[currentKey], objB[currentKey]))
3313 return false;
3314 }
3315 return true;
3316 }
3317 function getActiveElement(doc) {
3318 doc = doc || ("undefined" !== typeof document ? document : void 0);
3319 if ("undefined" === typeof doc) return null;
3320 try {
3321 return doc.activeElement || doc.body;
3322 } catch (e$2) {
3323 return doc.body;
3324 }
3325 }
3326 function getLeafNode(node) {
3327 for (; node && node.firstChild; ) node = node.firstChild;
3328 return node;
3329 }
3330 function getNodeForCharacterOffset(root2, offset) {
3331 var node = getLeafNode(root2);
3332 root2 = 0;
3333 for (var nodeEnd; node; ) {
3334 if (3 === node.nodeType) {
3335 nodeEnd = root2 + node.textContent.length;
3336 if (root2 <= offset && nodeEnd >= offset)
3337 return { node, offset: offset - root2 };
3338 root2 = nodeEnd;
3339 }
3340 a: {
3341 for (; node; ) {
3342 if (node.nextSibling) {
3343 node = node.nextSibling;
3344 break a;
3345 }
3346 node = node.parentNode;
3347 }
3348 node = void 0;
3349 }
3350 node = getLeafNode(node);
3351 }
3352 }
3353 function containsNode(outerNode, innerNode) {
3354 return outerNode && innerNode ? outerNode === innerNode ? true : outerNode && 3 === outerNode.nodeType ? false : innerNode && 3 === innerNode.nodeType ? containsNode(outerNode, innerNode.parentNode) : "contains" in outerNode ? outerNode.contains(innerNode) : outerNode.compareDocumentPosition ? !!(outerNode.compareDocumentPosition(innerNode) & 16) : false : false;
3355 }
3356 function getActiveElementDeep(containerInfo) {
3357 containerInfo = null != containerInfo && null != containerInfo.ownerDocument && null != containerInfo.ownerDocument.defaultView ? containerInfo.ownerDocument.defaultView : window;
3358 for (var element = getActiveElement(containerInfo.document); element instanceof containerInfo.HTMLIFrameElement; ) {
3359 try {
3360 var JSCompiler_inline_result = "string" === typeof element.contentWindow.location.href;
3361 } catch (err) {
3362 JSCompiler_inline_result = false;
3363 }
3364 if (JSCompiler_inline_result) containerInfo = element.contentWindow;
3365 else break;
3366 element = getActiveElement(containerInfo.document);
3367 }
3368 return element;
3369 }
3370 function hasSelectionCapabilities(elem) {
3371 var nodeName = elem && elem.nodeName && elem.nodeName.toLowerCase();
3372 return nodeName && ("input" === nodeName && ("text" === elem.type || "search" === elem.type || "tel" === elem.type || "url" === elem.type || "password" === elem.type) || "textarea" === nodeName || "true" === elem.contentEditable);
3373 }
3374 function constructSelectEvent(dispatchQueue, nativeEvent, nativeEventTarget) {
3375 var doc = nativeEventTarget.window === nativeEventTarget ? nativeEventTarget.document : 9 === nativeEventTarget.nodeType ? nativeEventTarget : nativeEventTarget.ownerDocument;
3376 mouseDown || null == activeElement || activeElement !== getActiveElement(doc) || (doc = activeElement, "selectionStart" in doc && hasSelectionCapabilities(doc) ? doc = { start: doc.selectionStart, end: doc.selectionEnd } : (doc = (doc.ownerDocument && doc.ownerDocument.defaultView || window).getSelection(), doc = {
3377 anchorNode: doc.anchorNode,
3378 anchorOffset: doc.anchorOffset,
3379 focusNode: doc.focusNode,
3380 focusOffset: doc.focusOffset
3381 }), lastSelection && shallowEqual(lastSelection, doc) || (lastSelection = doc, doc = accumulateTwoPhaseListeners(activeElementInst, "onSelect"), 0 < doc.length && (nativeEvent = new SyntheticEvent(
3382 "onSelect",
3383 "select",
3384 null,
3385 nativeEvent,
3386 nativeEventTarget
3387 ), dispatchQueue.push({ event: nativeEvent, listeners: doc }), nativeEvent.target = activeElement)));
3388 }
3389 function makePrefixMap(styleProp, eventName) {
3390 var prefixes = {};
3391 prefixes[styleProp.toLowerCase()] = eventName.toLowerCase();
3392 prefixes["Webkit" + styleProp] = "webkit" + eventName;
3393 prefixes["Moz" + styleProp] = "moz" + eventName;
3394 return prefixes;
3395 }
3396 function getVendorPrefixedEventName(eventName) {
3397 if (prefixedEventNames[eventName]) return prefixedEventNames[eventName];
3398 if (!vendorPrefixes[eventName]) return eventName;
3399 var prefixMap = vendorPrefixes[eventName], styleProp;
3400 for (styleProp in prefixMap)
3401 if (prefixMap.hasOwnProperty(styleProp) && styleProp in style)
3402 return prefixedEventNames[eventName] = prefixMap[styleProp];
3403 return eventName;
3404 }
3405 function registerSimpleEvent(domEventName, reactName) {
3406 topLevelEventsToReactNames.set(domEventName, reactName);
3407 registerTwoPhaseEvent(reactName, [domEventName]);
3408 }
3409 function getViewTransitionName(props, instance) {
3410 if (null != props.name && "auto" !== props.name) return props.name;
3411 if (null !== instance.autoName) return instance.autoName;
3412 props = pendingEffectsRoot.identifierPrefix;
3413 var globalClientId = globalClientIdCounter$1++;
3414 props = "_" + props + "t_" + globalClientId.toString(32) + "_";
3415 return instance.autoName = props;
3416 }
3417 function getClassNameByType(classByType) {
3418 if (null == classByType || "string" === typeof classByType)
3419 return classByType;
3420 var className = null, activeTypes = pendingTransitionTypes;
3421 if (null !== activeTypes)
3422 for (var i = 0; i < activeTypes.length; i++) {
3423 var match = classByType[activeTypes[i]];
3424 if (null != match) {
3425 if ("none" === match) return "none";
3426 className = null == className ? match : className + (" " + match);
3427 }
3428 }
3429 return null == className ? classByType.default : className;
3430 }
3431 function getViewTransitionClassName(defaultClass, eventClass) {
3432 defaultClass = getClassNameByType(defaultClass);
3433 eventClass = getClassNameByType(eventClass);
3434 return null == eventClass ? "auto" === defaultClass ? null : defaultClass : "auto" === eventClass ? null : eventClass;
3435 }
3436 function getArrayKind(array) {
3437 for (var kind = EMPTY_ARRAY, i = 0; i < array.length && i < OBJECT_WIDTH_LIMIT; i++) {
3438 var value = array[i];
3439 if ("object" === typeof value && null !== value)
3440 if (isArrayImpl(value) && 2 === value.length && "string" === typeof value[0]) {
3441 if (kind !== EMPTY_ARRAY && kind !== ENTRIES_ARRAY)
3442 return COMPLEX_ARRAY;
3443 kind = ENTRIES_ARRAY;
3444 } else return COMPLEX_ARRAY;
3445 else {
3446 if ("function" === typeof value || "string" === typeof value && 50 < value.length || kind !== EMPTY_ARRAY && kind !== PRIMITIVE_ARRAY || "bigint" === typeof value)
3447 return COMPLEX_ARRAY;
3448 kind = PRIMITIVE_ARRAY;
3449 }
3450 }
3451 return kind;
3452 }
3453 function addObjectToProperties(object, properties, indent, prefix2) {
3454 if (!ArrayBuffer.isView(object)) {
3455 var addedProperties = 0, key;
3456 for (key in object)
3457 if (hasOwnProperty.call(object, key) && "_" !== key[0] && (addedProperties++, addValueToProperties(key, object[key], properties, indent, prefix2), addedProperties >= OBJECT_WIDTH_LIMIT)) {
3458 properties.push([
3459 prefix2 + "\xA0\xA0".repeat(indent) + "Only " + OBJECT_WIDTH_LIMIT + " properties are shown. React will not log more properties of this object.",
3460 ""
3461 ]);
3462 break;
3463 }
3464 }
3465 }
3466 function readReactElementTypeof(value) {
3467 return "$$typeof" in value && hasOwnProperty.call(value, "$$typeof") ? value.$$typeof : void 0;
3468 }
3469 function addValueToProperties(propertyName, value, properties, indent, prefix2) {
3470 switch (typeof value) {
3471 case "object":
3472 if (null === value) {
3473 value = "null";
3474 break;
3475 } else {
3476 if (readReactElementTypeof(value) === REACT_ELEMENT_TYPE) {
3477 var typeName2 = getComponentNameFromType(value.type) || "\u2026", key = value.key;
3478 value = value.props;
3479 var propsKeys = Object.keys(value), propsLength = propsKeys.length;
3480 if (null == key && 0 === propsLength) {
3481 value = "<" + typeName2 + " />";
3482 break;
3483 }
3484 if (3 > indent || 1 === propsLength && "children" === propsKeys[0] && null == key) {
3485 value = "<" + typeName2 + " \u2026 />";
3486 break;
3487 }
3488 properties.push([
3489 prefix2 + "\xA0\xA0".repeat(indent) + propertyName,
3490 "<" + typeName2
3491 ]);
3492 null !== key && addValueToProperties(
3493 "key",
3494 key,
3495 properties,
3496 indent + 1,
3497 prefix2
3498 );
3499 propertyName = false;
3500 key = 0;
3501 for (var propKey in value)
3502 if (key++, "children" === propKey ? null != value.children && (!isArrayImpl(value.children) || 0 < value.children.length) && (propertyName = true) : hasOwnProperty.call(value, propKey) && "_" !== propKey[0] && addValueToProperties(
3503 propKey,
3504 value[propKey],
3505 properties,
3506 indent + 1,
3507 prefix2
3508 ), key >= OBJECT_WIDTH_LIMIT)
3509 break;
3510 properties.push([
3511 "",
3512 propertyName ? ">\u2026</" + typeName2 + ">" : "/>"
3513 ]);
3514 return;
3515 }
3516 typeName2 = Object.prototype.toString.call(value);
3517 typeName2 = typeName2.slice(8, typeName2.length - 1);
3518 if (ArrayBuffer.isView(value)) {
3519 value = value.length;
3520 value = "number" === typeof value ? typeName2 + "(" + value + ")" : typeName2;
3521 break;
3522 }
3523 if ("Array" === typeName2) {
3524 if (propKey = value.length > OBJECT_WIDTH_LIMIT, key = getArrayKind(value), key === PRIMITIVE_ARRAY || key === EMPTY_ARRAY) {
3525 value = JSON.stringify(
3526 propKey ? value.slice(0, OBJECT_WIDTH_LIMIT).concat("\u2026") : value
3527 );
3528 break;
3529 } else if (key === ENTRIES_ARRAY) {
3530 properties.push([
3531 prefix2 + "\xA0\xA0".repeat(indent) + propertyName,
3532 ""
3533 ]);
3534 for (propertyName = 0; propertyName < value.length && propertyName < OBJECT_WIDTH_LIMIT; propertyName++)
3535 typeName2 = value[propertyName], addValueToProperties(
3536 typeName2[0],
3537 typeName2[1],
3538 properties,
3539 indent + 1,
3540 prefix2
3541 );
3542 propKey && addValueToProperties(
3543 OBJECT_WIDTH_LIMIT.toString(),
3544 "\u2026",
3545 properties,
3546 indent + 1,
3547 prefix2
3548 );
3549 return;
3550 }
3551 }
3552 if ("Promise" === typeName2) {
3553 if ("fulfilled" === value.status) {
3554 if (typeName2 = properties.length, addValueToProperties(
3555 propertyName,
3556 value.value,
3557 properties,
3558 indent,
3559 prefix2
3560 ), properties.length > typeName2) {
3561 properties = properties[typeName2];
3562 properties[1] = "Promise<" + (properties[1] || "Object") + ">";
3563 return;
3564 }
3565 } else if ("rejected" === value.status && (typeName2 = properties.length, addValueToProperties(
3566 propertyName,
3567 value.reason,
3568 properties,
3569 indent,
3570 prefix2
3571 ), properties.length > typeName2)) {
3572 properties = properties[typeName2];
3573 properties[1] = "Rejected Promise<" + properties[1] + ">";
3574 return;
3575 }
3576 properties.push([
3577 "\xA0\xA0".repeat(indent) + propertyName,
3578 "Promise"
3579 ]);
3580 return;
3581 }
3582 "Object" === typeName2 && (propKey = Object.getPrototypeOf(value)) && "function" === typeof propKey.constructor && (typeName2 = propKey.constructor.name);
3583 properties.push([
3584 prefix2 + "\xA0\xA0".repeat(indent) + propertyName,
3585 "Object" === typeName2 ? 3 > indent ? "" : "\u2026" : typeName2
3586 ]);
3587 3 > indent && addObjectToProperties(value, properties, indent + 1, prefix2);
3588 return;
3589 }
3590 case "function":
3591 value = value.name;
3592 value = "" === value || "string" !== typeof value ? "() => {}" : value + "() {}";
3593 break;
3594 case "string":
3595 value = value === OMITTED_PROP_ERROR ? "\u2026" : JSON.stringify(
3596 1024 <= value.length ? value.slice(0, 1023) + "\u2026" : value
3597 );
3598 break;
3599 case "undefined":
3600 value = "undefined";
3601 break;
3602 case "boolean":
3603 value = value ? "true" : "false";
3604 break;
3605 default:
3606 value = String(value);
3607 }
3608 properties.push([
3609 prefix2 + "\xA0\xA0".repeat(indent) + propertyName,
3610 value
3611 ]);
3612 }
3613 function addObjectDiffToProperties(prev, next, properties, indent) {
3614 var isDeeplyEqual = true, prevPropertiesChecked = 0;
3615 for (key in prev) {
3616 if (prevPropertiesChecked > OBJECT_WIDTH_LIMIT) {
3617 properties.push([
3618 "Previous object has more than " + OBJECT_WIDTH_LIMIT + " properties. React will not attempt to diff objects with too many properties.",
3619 ""
3620 ]);
3621 isDeeplyEqual = false;
3622 break;
3623 }
3624 key in next || (properties.push([
3625 REMOVED + "\xA0\xA0".repeat(indent) + key,
3626 "\u2026"
3627 ]), isDeeplyEqual = false);
3628 prevPropertiesChecked++;
3629 }
3630 prevPropertiesChecked = 0;
3631 for (var _key in next) {
3632 if (prevPropertiesChecked > OBJECT_WIDTH_LIMIT) {
3633 properties.push([
3634 "Next object has more than " + OBJECT_WIDTH_LIMIT + " properties. React will not attempt to diff objects with too many properties.",
3635 ""
3636 ]);
3637 isDeeplyEqual = false;
3638 break;
3639 }
3640 if (_key in prev) {
3641 var key = prev[_key];
3642 var nextValue = next[_key];
3643 if (key !== nextValue) {
3644 if (0 === indent && "children" === _key) {
3645 isDeeplyEqual = "\xA0\xA0".repeat(indent) + _key;
3646 properties.push(
3647 [REMOVED + isDeeplyEqual, "\u2026"],
3648 [ADDED + isDeeplyEqual, "\u2026"]
3649 );
3650 isDeeplyEqual = false;
3651 continue;
3652 }
3653 if (!(3 <= indent)) {
3654 if ("object" === typeof key && "object" === typeof nextValue && null !== key && null !== nextValue && readReactElementTypeof(key) === readReactElementTypeof(nextValue))
3655 if (readReactElementTypeof(nextValue) === REACT_ELEMENT_TYPE) {
3656 if (key.type === nextValue.type && key.key === nextValue.key) {
3657 key = getComponentNameFromType(nextValue.type) || "\u2026";
3658 isDeeplyEqual = "\xA0\xA0".repeat(indent) + _key;
3659 key = "<" + key + " \u2026 />";
3660 properties.push(
3661 [REMOVED + isDeeplyEqual, key],
3662 [ADDED + isDeeplyEqual, key]
3663 );
3664 isDeeplyEqual = false;
3665 continue;
3666 }
3667 } else {
3668 var prevKind = Object.prototype.toString.call(key), nextKind = Object.prototype.toString.call(nextValue);
3669 if (prevKind === nextKind && ("[object Object]" === nextKind || "[object Array]" === nextKind)) {
3670 prevKind = [
3671 UNCHANGED + "\xA0\xA0".repeat(indent) + _key,
3672 "[object Array]" === nextKind ? "Array" : ""
3673 ];
3674 properties.push(prevKind);
3675 nextKind = properties.length;
3676 addObjectDiffToProperties(
3677 key,
3678 nextValue,
3679 properties,
3680 indent + 1
3681 ) ? nextKind === properties.length && (prevKind[1] = "Referentially unequal but deeply equal objects. Consider memoization.") : isDeeplyEqual = false;
3682 continue;
3683 }
3684 }
3685 else if ("function" === typeof key && "function" === typeof nextValue && key.name === nextValue.name && key.length === nextValue.length && (prevKind = Function.prototype.toString.call(key), nextKind = Function.prototype.toString.call(nextValue), prevKind === nextKind)) {
3686 key = "" === nextValue.name ? "() => {}" : nextValue.name + "() {}";
3687 properties.push([
3688 UNCHANGED + "\xA0\xA0".repeat(indent) + _key,
3689 key + " Referentially unequal function closure. Consider memoization."
3690 ]);
3691 continue;
3692 }
3693 }
3694 addValueToProperties(_key, key, properties, indent, REMOVED);
3695 addValueToProperties(_key, nextValue, properties, indent, ADDED);
3696 isDeeplyEqual = false;
3697 }
3698 } else
3699 properties.push([
3700 ADDED + "\xA0\xA0".repeat(indent) + _key,
3701 "\u2026"
3702 ]), isDeeplyEqual = false;
3703 prevPropertiesChecked++;
3704 }
3705 return isDeeplyEqual;
3706 }
3707 function setCurrentTrackFromLanes(lanes) {
3708 currentTrack = lanes & 63 ? "Blocking" : lanes & 64 ? "Gesture" : lanes & 4194176 ? "Transition" : lanes & 62914560 ? "Suspense" : lanes & 2080374784 ? "Idle" : "Other";
3709 }
3710 function logComponentTrigger(fiber, startTime, endTime, trigger) {
3711 supportsUserTiming && (reusableComponentOptions.start = startTime, reusableComponentOptions.end = endTime, reusableComponentDevToolDetails.color = "warning", reusableComponentDevToolDetails.tooltipText = trigger, reusableComponentDevToolDetails.properties = null, (fiber = fiber._debugTask) ? fiber.run(
3712 performance.measure.bind(
3713 performance,
3714 trigger,
3715 reusableComponentOptions
3716 )
3717 ) : performance.measure(trigger, reusableComponentOptions), performance.clearMeasures(trigger));
3718 }
3719 function logComponentReappeared(fiber, startTime, endTime) {
3720 logComponentTrigger(fiber, startTime, endTime, "Reconnect");
3721 }
3722 function logComponentRender(fiber, startTime, endTime, wasHydrated, committedLanes) {
3723 var name = getComponentNameFromFiber(fiber);
3724 if (null !== name && supportsUserTiming) {
3725 var alternate = fiber.alternate, selfTime = fiber.actualDuration;
3726 if (null === alternate || alternate.child !== fiber.child)
3727 for (var child = fiber.child; null !== child; child = child.sibling)
3728 selfTime -= child.actualDuration;
3729 selfTime = 0.5 > selfTime ? wasHydrated ? "tertiary-light" : "primary-light" : 10 > selfTime ? wasHydrated ? "tertiary" : "primary" : 100 > selfTime ? wasHydrated ? "tertiary-dark" : "primary-dark" : "error";
3730 var props = fiber.memoizedProps;
3731 wasHydrated = fiber._debugTask;
3732 null !== props && null !== alternate && alternate.memoizedProps !== props ? (child = [reusableChangedPropsEntry], props = addObjectDiffToProperties(
3733 alternate.memoizedProps,
3734 props,
3735 child,
3736 0
3737 ), 1 < child.length ? (props && !alreadyWarnedForDeepEquality && 0 === (alternate.lanes & committedLanes) && 100 < fiber.actualDuration ? (alreadyWarnedForDeepEquality = true, child[0] = reusableDeeplyEqualPropsEntry, reusableComponentDevToolDetails.color = "warning", reusableComponentDevToolDetails.tooltipText = DEEP_EQUALITY_WARNING) : (reusableComponentDevToolDetails.color = selfTime, reusableComponentDevToolDetails.tooltipText = name), reusableComponentDevToolDetails.properties = child, reusableComponentOptions.start = startTime, reusableComponentOptions.end = endTime, fiber = "\u200B" + name, null != wasHydrated ? wasHydrated.run(
3738 performance.measure.bind(
3739 performance,
3740 fiber,
3741 reusableComponentOptions
3742 )
3743 ) : performance.measure(fiber, reusableComponentOptions), performance.clearMeasures(fiber)) : null != wasHydrated ? wasHydrated.run(
3744 console.timeStamp.bind(
3745 console,
3746 name,
3747 startTime,
3748 endTime,
3749 COMPONENTS_TRACK,
3750 void 0,
3751 selfTime
3752 )
3753 ) : console.timeStamp(
3754 name,
3755 startTime,
3756 endTime,
3757 COMPONENTS_TRACK,
3758 void 0,
3759 selfTime
3760 )) : null != wasHydrated ? wasHydrated.run(
3761 console.timeStamp.bind(
3762 console,
3763 name,
3764 startTime,
3765 endTime,
3766 COMPONENTS_TRACK,
3767 void 0,
3768 selfTime
3769 )
3770 ) : console.timeStamp(
3771 name,
3772 startTime,
3773 endTime,
3774 COMPONENTS_TRACK,
3775 void 0,
3776 selfTime
3777 );
3778 }
3779 }
3780 function logComponentErrored(fiber, startTime, endTime, errors) {
3781 if (supportsUserTiming) {
3782 var name = getComponentNameFromFiber(fiber);
3783 if (null !== name) {
3784 for (var debugTask = null, properties = [], i = 0; i < errors.length; i++) {
3785 var capturedValue = errors[i];
3786 null == debugTask && null !== capturedValue.source && (debugTask = capturedValue.source._debugTask);
3787 capturedValue = capturedValue.value;
3788 properties.push([
3789 "Error",
3790 "object" === typeof capturedValue && null !== capturedValue && "string" === typeof capturedValue.message ? String(capturedValue.message) : String(capturedValue)
3791 ]);
3792 }
3793 null !== fiber.key && addValueToProperties("key", fiber.key, properties, 0, "");
3794 null !== fiber.memoizedProps && addObjectToProperties(fiber.memoizedProps, properties, 0, "");
3795 null == debugTask && (debugTask = fiber._debugTask);
3796 fiber = {
3797 start: startTime,
3798 end: endTime,
3799 detail: {
3800 devtools: {
3801 color: "error",
3802 track: COMPONENTS_TRACK,
3803 tooltipText: 13 === fiber.tag ? "Hydration failed" : "Error boundary caught an error",
3804 properties
3805 }
3806 }
3807 };
3808 name = "\u200B" + name;
3809 debugTask ? debugTask.run(performance.measure.bind(performance, name, fiber)) : performance.measure(name, fiber);
3810 performance.clearMeasures(name);
3811 }
3812 }
3813 }
3814 function logComponentEffect(fiber, startTime, endTime, selfTime, errors) {
3815 if (null !== errors) {
3816 if (supportsUserTiming) {
3817 var name = getComponentNameFromFiber(fiber);
3818 if (null !== name) {
3819 selfTime = [];
3820 for (var i = 0; i < errors.length; i++) {
3821 var error = errors[i].value;
3822 selfTime.push([
3823 "Error",
3824 "object" === typeof error && null !== error && "string" === typeof error.message ? String(error.message) : String(error)
3825 ]);
3826 }
3827 null !== fiber.key && addValueToProperties("key", fiber.key, selfTime, 0, "");
3828 null !== fiber.memoizedProps && addObjectToProperties(fiber.memoizedProps, selfTime, 0, "");
3829 startTime = {
3830 start: startTime,
3831 end: endTime,
3832 detail: {
3833 devtools: {
3834 color: "error",
3835 track: COMPONENTS_TRACK,
3836 tooltipText: "A lifecycle or effect errored",
3837 properties: selfTime
3838 }
3839 }
3840 };
3841 fiber = fiber._debugTask;
3842 endTime = "\u200B" + name;
3843 fiber ? fiber.run(
3844 performance.measure.bind(performance, endTime, startTime)
3845 ) : performance.measure(endTime, startTime);
3846 performance.clearMeasures(endTime);
3847 }
3848 }
3849 } else
3850 name = getComponentNameFromFiber(fiber), null !== name && supportsUserTiming && (errors = 1 > selfTime ? "secondary-light" : 100 > selfTime ? "secondary" : 500 > selfTime ? "secondary-dark" : "error", (fiber = fiber._debugTask) ? fiber.run(
3851 console.timeStamp.bind(
3852 console,
3853 name,
3854 startTime,
3855 endTime,
3856 COMPONENTS_TRACK,
3857 void 0,
3858 errors
3859 )
3860 ) : console.timeStamp(
3861 name,
3862 startTime,
3863 endTime,
3864 COMPONENTS_TRACK,
3865 void 0,
3866 errors
3867 ));
3868 }
3869 function logSuspendedRenderPhase(startTime, endTime, lanes, debugTask) {
3870 !supportsUserTiming || endTime <= startTime || (lanes = (lanes & 738197653) === lanes ? "tertiary-dark" : "primary-dark", debugTask ? debugTask.run(
3871 console.timeStamp.bind(
3872 console,
3873 "Prewarm",
3874 startTime,
3875 endTime,
3876 currentTrack,
3877 LANES_TRACK_GROUP,
3878 lanes
3879 )
3880 ) : console.timeStamp(
3881 "Prewarm",
3882 startTime,
3883 endTime,
3884 currentTrack,
3885 LANES_TRACK_GROUP,
3886 lanes
3887 ));
3888 }
3889 function logSuspendedWithDelayPhase(startTime, endTime, lanes, debugTask) {
3890 !supportsUserTiming || endTime <= startTime || (lanes = (lanes & 738197653) === lanes ? "tertiary-dark" : "primary-dark", debugTask ? debugTask.run(
3891 console.timeStamp.bind(
3892 console,
3893 "Suspended",
3894 startTime,
3895 endTime,
3896 currentTrack,
3897 LANES_TRACK_GROUP,
3898 lanes
3899 )
3900 ) : console.timeStamp(
3901 "Suspended",
3902 startTime,
3903 endTime,
3904 currentTrack,
3905 LANES_TRACK_GROUP,
3906 lanes
3907 ));
3908 }
3909 function logErroredRenderPhase(startTime, endTime, lanes, debugTask) {
3910 !supportsUserTiming || endTime <= startTime || (debugTask ? debugTask.run(
3911 console.timeStamp.bind(
3912 console,
3913 "Errored",
3914 startTime,
3915 endTime,
3916 currentTrack,
3917 LANES_TRACK_GROUP,
3918 "error"
3919 )
3920 ) : console.timeStamp(
3921 "Errored",
3922 startTime,
3923 endTime,
3924 currentTrack,
3925 LANES_TRACK_GROUP,
3926 "error"
3927 ));
3928 }
3929 function logSuspendedCommitPhase(startTime, endTime, reason, debugTask) {
3930 !supportsUserTiming || endTime <= startTime || (debugTask ? debugTask.run(
3931 console.timeStamp.bind(
3932 console,
3933 reason,
3934 startTime,
3935 endTime,
3936 currentTrack,
3937 LANES_TRACK_GROUP,
3938 "secondary-light"
3939 )
3940 ) : console.timeStamp(
3941 reason,
3942 startTime,
3943 endTime,
3944 currentTrack,
3945 LANES_TRACK_GROUP,
3946 "secondary-light"
3947 ));
3948 }
3949 function logCommitErrored(startTime, endTime, errors, passive, debugTask) {
3950 if (supportsUserTiming && !(endTime <= startTime)) {
3951 for (var properties = [], i = 0; i < errors.length; i++) {
3952 var error = errors[i].value;
3953 properties.push([
3954 "Error",
3955 "object" === typeof error && null !== error && "string" === typeof error.message ? String(error.message) : String(error)
3956 ]);
3957 }
3958 startTime = {
3959 start: startTime,
3960 end: endTime,
3961 detail: {
3962 devtools: {
3963 color: "error",
3964 track: currentTrack,
3965 trackGroup: LANES_TRACK_GROUP,
3966 tooltipText: passive ? "Remaining Effects Errored" : "Commit Errored",
3967 properties
3968 }
3969 }
3970 };
3971 debugTask ? debugTask.run(
3972 performance.measure.bind(performance, "Errored", startTime)
3973 ) : performance.measure("Errored", startTime);
3974 performance.clearMeasures("Errored");
3975 }
3976 }
3977 function logCommitPhase(startTime, endTime, errors, abortedViewTransition, debugTask) {
3978 null !== errors ? logCommitErrored(startTime, endTime, errors, false, debugTask) : !supportsUserTiming || endTime <= startTime || (debugTask ? debugTask.run(
3979 console.timeStamp.bind(
3980 console,
3981 abortedViewTransition ? "Commit Interrupted View Transition" : "Commit",
3982 startTime,
3983 endTime,
3984 currentTrack,
3985 LANES_TRACK_GROUP,
3986 abortedViewTransition ? "error" : "secondary-dark"
3987 )
3988 ) : console.timeStamp(
3989 abortedViewTransition ? "Commit Interrupted View Transition" : "Commit",
3990 startTime,
3991 endTime,
3992 currentTrack,
3993 LANES_TRACK_GROUP,
3994 abortedViewTransition ? "error" : "secondary-dark"
3995 ));
3996 }
3997 function logAnimatingPhase(startTime, endTime, debugTask) {
3998 !supportsUserTiming || endTime <= startTime || (debugTask ? debugTask.run(
3999 console.timeStamp.bind(
4000 console,
4001 "Animating",
4002 startTime,
4003 endTime,
4004 currentTrack,
4005 LANES_TRACK_GROUP,
4006 "secondary-dark"
4007 )
4008 ) : console.timeStamp(
4009 "Animating",
4010 startTime,
4011 endTime,
4012 currentTrack,
4013 LANES_TRACK_GROUP,
4014 "secondary-dark"
4015 ));
4016 }
4017 function finishQueueingConcurrentUpdates() {
4018 for (var endIndex = concurrentQueuesIndex, i = concurrentlyUpdatedLanes = concurrentQueuesIndex = 0; i < endIndex; ) {
4019 var fiber = concurrentQueues[i];
4020 concurrentQueues[i++] = null;
4021 var queue = concurrentQueues[i];
4022 concurrentQueues[i++] = null;
4023 var update = concurrentQueues[i];
4024 concurrentQueues[i++] = null;
4025 var lane = concurrentQueues[i];
4026 concurrentQueues[i++] = null;
4027 if (null !== queue && null !== update) {
4028 var pending = queue.pending;
4029 null === pending ? update.next = update : (update.next = pending.next, pending.next = update);
4030 queue.pending = update;
4031 }
4032 0 !== lane && markUpdateLaneFromFiberToRoot(fiber, update, lane);
4033 }
4034 }
4035 function enqueueUpdate$1(fiber, queue, update, lane) {
4036 concurrentQueues[concurrentQueuesIndex++] = fiber;
4037 concurrentQueues[concurrentQueuesIndex++] = queue;
4038 concurrentQueues[concurrentQueuesIndex++] = update;
4039 concurrentQueues[concurrentQueuesIndex++] = lane;
4040 concurrentlyUpdatedLanes |= lane;
4041 fiber.lanes |= lane;
4042 fiber = fiber.alternate;
4043 null !== fiber && (fiber.lanes |= lane);
4044 }
4045 function enqueueConcurrentHookUpdate(fiber, queue, update, lane) {
4046 enqueueUpdate$1(fiber, queue, update, lane);
4047 return getRootForUpdatedFiber(fiber);
4048 }
4049 function enqueueConcurrentRenderForLane(fiber, lane) {
4050 enqueueUpdate$1(fiber, null, null, lane);
4051 return getRootForUpdatedFiber(fiber);
4052 }
4053 function markUpdateLaneFromFiberToRoot(sourceFiber, update, lane) {
4054 sourceFiber.lanes |= lane;
4055 var alternate = sourceFiber.alternate;
4056 null !== alternate && (alternate.lanes |= lane);
4057 for (var isHidden = false, parent = sourceFiber.return; null !== parent; )
4058 parent.childLanes |= lane, alternate = parent.alternate, null !== alternate && (alternate.childLanes |= lane), 22 === parent.tag && (sourceFiber = parent.stateNode, null === sourceFiber || sourceFiber._visibility & OffscreenVisible || (isHidden = true)), sourceFiber = parent, parent = parent.return;
4059 return 3 === sourceFiber.tag ? (parent = sourceFiber.stateNode, isHidden && null !== update && (isHidden = 31 - clz32(lane), sourceFiber = parent.hiddenUpdates, alternate = sourceFiber[isHidden], null === alternate ? sourceFiber[isHidden] = [update] : alternate.push(update), update.lane = lane | 536870912), parent) : null;
4060 }
4061 function getRootForUpdatedFiber(sourceFiber) {
4062 if (nestedUpdateCount > NESTED_UPDATE_LIMIT)
4063 throw nestedPassiveUpdateCount = nestedUpdateCount = 0, rootWithPassiveNestedUpdates = rootWithNestedUpdates = null, Error(
4064 "Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops."
4065 );
4066 nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT && (nestedPassiveUpdateCount = 0, rootWithPassiveNestedUpdates = null, console.error(
4067 "Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render."
4068 ));
4069 null === sourceFiber.alternate && 0 !== (sourceFiber.flags & 4098) && warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber);
4070 for (var node = sourceFiber, parent = node.return; null !== parent; )
4071 null === node.alternate && 0 !== (node.flags & 4098) && warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber), node = parent, parent = node.return;
4072 return 3 === node.tag ? node.stateNode : null;
4073 }
4074 function resolveTypeForHotReloading(type) {
4075 if (null === resolveFamily) return type;
4076 var family = resolveFamily(type);
4077 return void 0 === family ? type : family.current;
4078 }
4079 function isCompatibleFamilyForHotReloading(fiber, element) {
4080 if (null === resolveFamily) return false;
4081 var resolve = resolveFamily, prevType = fiber.elementType;
4082 element = element.type;
4083 var needsCompareFamilies = false, $$typeofNextType = "object" === typeof element && null !== element ? element.$$typeof : null;
4084 switch (fiber.tag) {
4085 case 1:
4086 "function" === typeof element && (needsCompareFamilies = true);
4087 break;
4088 case 0:
4089 "function" === typeof element ? needsCompareFamilies = true : $$typeofNextType === REACT_LAZY_TYPE && (needsCompareFamilies = true);
4090 break;
4091 case 11:
4092 $$typeofNextType === REACT_FORWARD_REF_TYPE ? needsCompareFamilies = true : $$typeofNextType === REACT_LAZY_TYPE && (needsCompareFamilies = true);
4093 break;
4094 case 14:
4095 case 15:
4096 $$typeofNextType === REACT_MEMO_TYPE ? needsCompareFamilies = true : $$typeofNextType === REACT_LAZY_TYPE && (needsCompareFamilies = true);
4097 break;
4098 default:
4099 return false;
4100 }
4101 return needsCompareFamilies && (fiber = resolve(prevType), void 0 !== fiber && fiber === resolve(element)) ? true : false;
4102 }
4103 function markFailedErrorBoundaryForHotReloading(fiber) {
4104 null !== resolveFamily && "function" === typeof WeakSet && (null === failedBoundaries && (failedBoundaries = /* @__PURE__ */ new WeakSet()), failedBoundaries.add(fiber));
4105 }
4106 function scheduleFibersWithFamiliesRecursively(fiber, updatedFamilies, staleFamilies) {
4107 do {
4108 var _fiber = fiber, alternate = _fiber.alternate, child = _fiber.child, sibling = _fiber.sibling, tag = _fiber.tag, type = _fiber.type, elementType = _fiber.elementType, candidateType = null;
4109 _fiber = null;
4110 switch (tag) {
4111 case 0:
4112 case 1:
4113 candidateType = type;
4114 break;
4115 case 15:
4116 candidateType = type;
4117 _fiber = elementType;
4118 break;
4119 case 14:
4120 _fiber = elementType;
4121 break;
4122 case 11:
4123 candidateType = type.render, _fiber = elementType;
4124 }
4125 if (null === resolveFamily)
4126 throw Error("Expected resolveFamily to be set during hot reload.");
4127 var resolve = resolveFamily;
4128 type = elementType = false;
4129 null !== candidateType && (candidateType = resolve(candidateType), void 0 !== candidateType && (staleFamilies.has(candidateType) ? type = true : updatedFamilies.has(candidateType) && (1 === tag ? type = true : elementType = true)));
4130 type || null === _fiber || (tag = resolve(_fiber), void 0 !== tag && staleFamilies.has(tag) ? type = true : "object" === typeof _fiber && _fiber.$$typeof === REACT_LAZY_TYPE && (tag = _fiber._payload, 1 === tag._status && (tag = resolve(tag._result.default), void 0 !== tag && staleFamilies.has(tag) && (type = true))));
4131 null !== failedBoundaries && (failedBoundaries.has(fiber) || null !== alternate && failedBoundaries.has(alternate)) && (type = true);
4132 type && (fiber._debugNeedsRemount = true);
4133 if (type || elementType)
4134 alternate = enqueueConcurrentRenderForLane(fiber, 2), null !== alternate && scheduleUpdateOnFiber(alternate, fiber, 2);
4135 null === child || type || scheduleFibersWithFamiliesRecursively(
4136 child,
4137 updatedFamilies,
4138 staleFamilies
4139 );
4140 if (null === sibling) break;
4141 fiber = sibling;
4142 } while (1);
4143 }
4144 function FiberNode(tag, pendingProps, key, mode) {
4145 this.tag = tag;
4146 this.key = key;
4147 this.sibling = this.child = this.return = this.stateNode = this.type = this.elementType = null;
4148 this.index = 0;
4149 this.refCleanup = this.ref = null;
4150 this.pendingProps = pendingProps;
4151 this.dependencies = this.memoizedState = this.updateQueue = this.memoizedProps = null;
4152 this.mode = mode;
4153 this.subtreeFlags = this.flags = 0;
4154 this.deletions = null;
4155 this.childLanes = this.lanes = 0;
4156 this.alternate = null;
4157 this.actualDuration = -0;
4158 this.actualStartTime = -1.1;
4159 this.treeBaseDuration = this.selfBaseDuration = -0;
4160 this._debugTask = this._debugStack = this._debugOwner = this._debugInfo = null;
4161 this._debugNeedsRemount = false;
4162 this._debugHookTypes = null;
4163 hasBadMapPolyfill || "function" !== typeof Object.preventExtensions || Object.preventExtensions(this);
4164 }
4165 function shouldConstruct(Component) {
4166 Component = Component.prototype;
4167 return !(!Component || !Component.isReactComponent);
4168 }
4169 function createWorkInProgress(current2, pendingProps) {
4170 var workInProgress2 = current2.alternate;
4171 null === workInProgress2 ? (workInProgress2 = createFiber(
4172 current2.tag,
4173 pendingProps,
4174 current2.key,
4175 current2.mode
4176 ), workInProgress2.elementType = current2.elementType, workInProgress2.type = current2.type, workInProgress2.stateNode = current2.stateNode, workInProgress2._debugOwner = current2._debugOwner, workInProgress2._debugStack = current2._debugStack, workInProgress2._debugTask = current2._debugTask, workInProgress2._debugHookTypes = current2._debugHookTypes, workInProgress2.alternate = current2, current2.alternate = workInProgress2) : (workInProgress2.pendingProps = pendingProps, workInProgress2.type = current2.type, workInProgress2.flags = 0, workInProgress2.subtreeFlags = 0, workInProgress2.deletions = null, workInProgress2.actualDuration = -0, workInProgress2.actualStartTime = -1.1);
4177 workInProgress2.flags = current2.flags & 1206910976;
4178 workInProgress2.childLanes = current2.childLanes;
4179 workInProgress2.lanes = current2.lanes;
4180 workInProgress2.child = current2.child;
4181 workInProgress2.memoizedProps = current2.memoizedProps;
4182 workInProgress2.memoizedState = current2.memoizedState;
4183 workInProgress2.updateQueue = current2.updateQueue;
4184 pendingProps = current2.dependencies;
4185 workInProgress2.dependencies = null === pendingProps ? null : {
4186 lanes: pendingProps.lanes,
4187 firstContext: pendingProps.firstContext,
4188 _debugThenableState: pendingProps._debugThenableState
4189 };
4190 workInProgress2.sibling = current2.sibling;
4191 workInProgress2.index = current2.index;
4192 workInProgress2.ref = current2.ref;
4193 workInProgress2.refCleanup = current2.refCleanup;
4194 workInProgress2.selfBaseDuration = current2.selfBaseDuration;
4195 workInProgress2.treeBaseDuration = current2.treeBaseDuration;
4196 workInProgress2._debugInfo = current2._debugInfo;
4197 workInProgress2._debugNeedsRemount = current2._debugNeedsRemount;
4198 switch (workInProgress2.tag) {
4199 case 0:
4200 case 15:
4201 case 14:
4202 case 1:
4203 case 11:
4204 workInProgress2.type = resolveTypeForHotReloading(current2.type);
4205 }
4206 return workInProgress2;
4207 }
4208 function resetWorkInProgress(workInProgress2, renderLanes2) {
4209 workInProgress2.flags &= 1206910978;
4210 var current2 = workInProgress2.alternate;
4211 null === current2 ? (workInProgress2.childLanes = 0, workInProgress2.lanes = renderLanes2, workInProgress2.child = null, workInProgress2.subtreeFlags = 0, workInProgress2.memoizedProps = null, workInProgress2.memoizedState = null, workInProgress2.updateQueue = null, workInProgress2.dependencies = null, workInProgress2.stateNode = null, workInProgress2.selfBaseDuration = 0, workInProgress2.treeBaseDuration = 0) : (workInProgress2.childLanes = current2.childLanes, workInProgress2.lanes = current2.lanes, workInProgress2.child = current2.child, workInProgress2.subtreeFlags = 0, workInProgress2.deletions = null, workInProgress2.memoizedProps = current2.memoizedProps, workInProgress2.memoizedState = current2.memoizedState, workInProgress2.updateQueue = current2.updateQueue, workInProgress2.type = current2.type, renderLanes2 = current2.dependencies, workInProgress2.dependencies = null === renderLanes2 ? null : {
4212 lanes: renderLanes2.lanes,
4213 firstContext: renderLanes2.firstContext,
4214 _debugThenableState: renderLanes2._debugThenableState
4215 }, workInProgress2.selfBaseDuration = current2.selfBaseDuration, workInProgress2.treeBaseDuration = current2.treeBaseDuration);
4216 return workInProgress2;
4217 }
4218 function createFiberFromTypeAndProps(type, key, pendingProps, owner, mode, lanes) {
4219 var fiberTag = 0;
4220 var resolvedType = resolveTypeForHotReloading(type);
4221 if ("function" === typeof resolvedType)
4222 shouldConstruct(resolvedType) && (fiberTag = 1);
4223 else if ("string" === typeof resolvedType)
4224 fiberTag = getHostContext(), fiberTag = isHostHoistableType(type, pendingProps, fiberTag) ? 26 : "html" === type || "head" === type || "body" === type ? 27 : 5;
4225 else
4226 a: switch (resolvedType) {
4227 case REACT_ACTIVITY_TYPE:
4228 return key = createFiber(31, pendingProps, key, mode), key.elementType = REACT_ACTIVITY_TYPE, key.lanes = lanes, key;
4229 case REACT_FRAGMENT_TYPE:
4230 return createFiberFromFragment(
4231 pendingProps.children,
4232 mode,
4233 lanes,
4234 key
4235 );
4236 case REACT_STRICT_MODE_TYPE:
4237 fiberTag = 8;
4238 mode |= StrictLegacyMode;
4239 mode |= StrictEffectsMode;
4240 break;
4241 case REACT_PROFILER_TYPE:
4242 return type = pendingProps, owner = mode, "string" !== typeof type.id && console.error(
4243 'Profiler must specify an "id" of type `string` as a prop. Received the type `%s` instead.',
4244 typeof type.id
4245 ), key = createFiber(12, type, key, owner | ProfileMode), key.elementType = REACT_PROFILER_TYPE, key.lanes = lanes, key.stateNode = { effectDuration: 0, passiveEffectDuration: 0 }, key;
4246 case REACT_SUSPENSE_TYPE:
4247 return key = createFiber(13, pendingProps, key, mode), key.elementType = REACT_SUSPENSE_TYPE, key.lanes = lanes, key;
4248 case REACT_SUSPENSE_LIST_TYPE:
4249 return key = createFiber(19, pendingProps, key, mode), key.elementType = REACT_SUSPENSE_LIST_TYPE, key.lanes = lanes, key;
4250 case REACT_LEGACY_HIDDEN_TYPE:
4251 case REACT_VIEW_TRANSITION_TYPE:
4252 return type = mode | SuspenseyImagesMode, key = createFiber(30, pendingProps, key, type), key.elementType = REACT_VIEW_TRANSITION_TYPE, key.lanes = lanes, key.stateNode = {
4253 autoName: null,
4254 paired: null,
4255 clones: null,
4256 ref: null
4257 }, key;
4258 default:
4259 if ("object" === typeof resolvedType && null !== resolvedType)
4260 switch (resolvedType.$$typeof) {
4261 case REACT_CONTEXT_TYPE:
4262 fiberTag = 10;
4263 break a;
4264 case REACT_CONSUMER_TYPE:
4265 fiberTag = 9;
4266 break a;
4267 case REACT_FORWARD_REF_TYPE:
4268 fiberTag = 11;
4269 break a;
4270 case REACT_MEMO_TYPE:
4271 fiberTag = 14;
4272 break a;
4273 case REACT_LAZY_TYPE:
4274 fiberTag = 16;
4275 resolvedType = null;
4276 break a;
4277 }
4278 pendingProps = "";
4279 if (void 0 === type || "object" === typeof type && null !== type && 0 === Object.keys(type).length)
4280 pendingProps += " You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.";
4281 null === type ? resolvedType = "null" : isArrayImpl(type) ? resolvedType = "array" : void 0 !== type && type.$$typeof === REACT_ELEMENT_TYPE ? (resolvedType = "<" + (getComponentNameFromType(type.type) || "Unknown") + " />", pendingProps = " Did you accidentally export a JSX literal instead of a component?") : resolvedType = typeof type;
4282 (fiberTag = owner ? getComponentNameFromOwner(owner) : null) && (pendingProps += "\n\nCheck the render method of `" + fiberTag + "`.");
4283 fiberTag = 29;
4284 pendingProps = Error(
4285 "Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: " + (resolvedType + "." + pendingProps)
4286 );
4287 resolvedType = null;
4288 }
4289 key = createFiber(fiberTag, pendingProps, key, mode);
4290 key.elementType = type;
4291 key.type = resolvedType;
4292 key.lanes = lanes;
4293 key._debugOwner = owner;
4294 return key;
4295 }
4296 function createFiberFromElement(element, mode, lanes) {
4297 mode = createFiberFromTypeAndProps(
4298 element.type,
4299 element.key,
4300 element.props,
4301 element._owner,
4302 mode,
4303 lanes
4304 );
4305 mode._debugOwner = element._owner;
4306 mode._debugStack = element._debugStack;
4307 mode._debugTask = element._debugTask;
4308 return mode;
4309 }
4310 function createFiberFromFragment(elements, mode, lanes, key) {
4311 elements = createFiber(7, elements, key, mode);
4312 elements.lanes = lanes;
4313 return elements;
4314 }
4315 function createFiberFromText(content, mode, lanes) {
4316 content = createFiber(6, content, null, mode);
4317 content.lanes = lanes;
4318 return content;
4319 }
4320 function createFiberFromDehydratedFragment(dehydratedNode) {
4321 var fiber = createFiber(18, null, null, NoMode);
4322 fiber.stateNode = dehydratedNode;
4323 return fiber;
4324 }
4325 function createFiberFromPortal(portal, mode, lanes) {
4326 mode = createFiber(
4327 4,
4328 null !== portal.children ? portal.children : [],
4329 portal.key,
4330 mode
4331 );
4332 mode.lanes = lanes;
4333 mode.stateNode = {
4334 containerInfo: portal.containerInfo,
4335 pendingChildren: null,
4336 implementation: portal.implementation
4337 };
4338 return mode;
4339 }
4340 function createCapturedValueAtFiber(value, source) {
4341 if ("object" === typeof value && null !== value) {
4342 var existing = CapturedStacks.get(value);
4343 if (void 0 !== existing) return existing;
4344 source = {
4345 value,
4346 source,
4347 stack: getStackByFiberInDevAndProd(source)
4348 };
4349 CapturedStacks.set(value, source);
4350 return source;
4351 }
4352 return {
4353 value,
4354 source,
4355 stack: getStackByFiberInDevAndProd(source)
4356 };
4357 }
4358 function pushTreeFork(workInProgress2, totalChildren) {
4359 warnIfNotHydrating();
4360 forkStack[forkStackIndex++] = treeForkCount;
4361 forkStack[forkStackIndex++] = treeForkProvider;
4362 treeForkProvider = workInProgress2;
4363 treeForkCount = totalChildren;
4364 }
4365 function pushTreeId(workInProgress2, totalChildren, index) {
4366 warnIfNotHydrating();
4367 idStack[idStackIndex++] = treeContextId;
4368 idStack[idStackIndex++] = treeContextOverflow;
4369 idStack[idStackIndex++] = treeContextProvider;
4370 treeContextProvider = workInProgress2;
4371 var baseIdWithLeadingBit = treeContextId;
4372 workInProgress2 = treeContextOverflow;
4373 var baseLength = 32 - clz32(baseIdWithLeadingBit) - 1;
4374 baseIdWithLeadingBit &= ~(1 << baseLength);
4375 index += 1;
4376 var length = 32 - clz32(totalChildren) + baseLength;
4377 if (30 < length) {
4378 var numberOfOverflowBits = baseLength - baseLength % 5;
4379 length = (baseIdWithLeadingBit & (1 << numberOfOverflowBits) - 1).toString(32);
4380 baseIdWithLeadingBit >>= numberOfOverflowBits;
4381 baseLength -= numberOfOverflowBits;
4382 treeContextId = 1 << 32 - clz32(totalChildren) + baseLength | index << baseLength | baseIdWithLeadingBit;
4383 treeContextOverflow = length + workInProgress2;
4384 } else
4385 treeContextId = 1 << length | index << baseLength | baseIdWithLeadingBit, treeContextOverflow = workInProgress2;
4386 }
4387 function pushMaterializedTreeId(workInProgress2) {
4388 warnIfNotHydrating();
4389 null !== workInProgress2.return && (pushTreeFork(workInProgress2, 1), pushTreeId(workInProgress2, 1, 0));
4390 }
4391 function popTreeContext(workInProgress2) {
4392 for (; workInProgress2 === treeForkProvider; )
4393 treeForkProvider = forkStack[--forkStackIndex], forkStack[forkStackIndex] = null, treeForkCount = forkStack[--forkStackIndex], forkStack[forkStackIndex] = null;
4394 for (; workInProgress2 === treeContextProvider; )
4395 treeContextProvider = idStack[--idStackIndex], idStack[idStackIndex] = null, treeContextOverflow = idStack[--idStackIndex], idStack[idStackIndex] = null, treeContextId = idStack[--idStackIndex], idStack[idStackIndex] = null;
4396 }
4397 function getSuspendedTreeContext() {
4398 warnIfNotHydrating();
4399 return null !== treeContextProvider ? { id: treeContextId, overflow: treeContextOverflow } : null;
4400 }
4401 function restoreSuspendedTreeContext(workInProgress2, suspendedContext) {
4402 warnIfNotHydrating();
4403 idStack[idStackIndex++] = treeContextId;
4404 idStack[idStackIndex++] = treeContextOverflow;
4405 idStack[idStackIndex++] = treeContextProvider;
4406 treeContextId = suspendedContext.id;
4407 treeContextOverflow = suspendedContext.overflow;
4408 treeContextProvider = workInProgress2;
4409 }
4410 function warnIfNotHydrating() {
4411 isHydrating || console.error(
4412 "Expected to be hydrating. This is a bug in React. Please file an issue."
4413 );
4414 }
4415 function buildHydrationDiffNode(fiber, distanceFromLeaf) {
4416 if (null === fiber.return) {
4417 if (null === hydrationDiffRootDEV)
4418 hydrationDiffRootDEV = {
4419 fiber,
4420 children: [],
4421 serverProps: void 0,
4422 serverTail: [],
4423 distanceFromLeaf
4424 };
4425 else {
4426 if (hydrationDiffRootDEV.fiber !== fiber)
4427 throw Error(
4428 "Saw multiple hydration diff roots in a pass. This is a bug in React."
4429 );
4430 hydrationDiffRootDEV.distanceFromLeaf > distanceFromLeaf && (hydrationDiffRootDEV.distanceFromLeaf = distanceFromLeaf);
4431 }
4432 return hydrationDiffRootDEV;
4433 }
4434 var siblings = buildHydrationDiffNode(
4435 fiber.return,
4436 distanceFromLeaf + 1
4437 ).children;
4438 if (0 < siblings.length && siblings[siblings.length - 1].fiber === fiber)
4439 return siblings = siblings[siblings.length - 1], siblings.distanceFromLeaf > distanceFromLeaf && (siblings.distanceFromLeaf = distanceFromLeaf), siblings;
4440 distanceFromLeaf = {
4441 fiber,
4442 children: [],
4443 serverProps: void 0,
4444 serverTail: [],
4445 distanceFromLeaf
4446 };
4447 siblings.push(distanceFromLeaf);
4448 return distanceFromLeaf;
4449 }
4450 function warnIfHydrating() {
4451 isHydrating && console.error(
4452 "We should not be hydrating here. This is a bug in React. Please file a bug."
4453 );
4454 }
4455 function warnNonHydratedInstance(fiber, rejectedCandidate) {
4456 didSuspendOrErrorDEV || (fiber = buildHydrationDiffNode(fiber, 0), fiber.serverProps = null, null !== rejectedCandidate && (rejectedCandidate = describeHydratableInstanceForDevWarnings(rejectedCandidate), fiber.serverTail.push(rejectedCandidate)));
4457 }
4458 function throwOnHydrationMismatch(fiber) {
4459 var fromText = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : false, diff = "", diffRoot = hydrationDiffRootDEV;
4460 null !== diffRoot && (hydrationDiffRootDEV = null, diff = describeDiff(diffRoot));
4461 queueHydrationError(
4462 createCapturedValueAtFiber(
4463 Error(
4464 "Hydration failed because the server rendered " + (fromText ? "text" : "HTML") + " didn't match the client. As a result this tree will be regenerated on the client. This can happen if a SSR-ed Client Component used:\n\n- A server/client branch `if (typeof window !== 'undefined')`.\n- Variable input such as `Date.now()` or `Math.random()` which changes each time it's called.\n- Date formatting in a user's locale which doesn't match the server.\n- External changing data without sending a snapshot of it along with the HTML.\n- Invalid HTML tag nesting.\n\nIt can also happen if the client has a browser extension installed which messes with the HTML before React loaded.\n\nhttps://react.dev/link/hydration-mismatch" + diff
4465 ),
4466 fiber
4467 )
4468 );
4469 throw HydrationMismatchException;
4470 }
4471 function prepareToHydrateHostInstance(fiber) {
4472 var didHydrate = fiber.stateNode;
4473 var type = fiber.type, props = fiber.memoizedProps;
4474 didHydrate[internalInstanceKey] = fiber;
4475 didHydrate[internalPropsKey] = props;
4476 validatePropertiesInDevelopment(type, props);
4477 switch (type) {
4478 case "dialog":
4479 listenToNonDelegatedEvent("cancel", didHydrate);
4480 listenToNonDelegatedEvent("close", didHydrate);
4481 break;
4482 case "iframe":
4483 case "object":
4484 case "embed":
4485 listenToNonDelegatedEvent("load", didHydrate);
4486 break;
4487 case "video":
4488 case "audio":
4489 for (type = 0; type < mediaEventTypes.length; type++)
4490 listenToNonDelegatedEvent(mediaEventTypes[type], didHydrate);
4491 break;
4492 case "source":
4493 listenToNonDelegatedEvent("error", didHydrate);
4494 break;
4495 case "img":
4496 case "image":
4497 case "link":
4498 listenToNonDelegatedEvent("error", didHydrate);
4499 listenToNonDelegatedEvent("load", didHydrate);
4500 break;
4501 case "details":
4502 listenToNonDelegatedEvent("toggle", didHydrate);
4503 break;
4504 case "input":
4505 checkControlledValueProps("input", props);
4506 listenToNonDelegatedEvent("invalid", didHydrate);
4507 validateInputProps(didHydrate, props);
4508 initInput(
4509 didHydrate,
4510 props.value,
4511 props.defaultValue,
4512 props.checked,
4513 props.defaultChecked,
4514 props.type,
4515 props.name,
4516 true
4517 );
4518 break;
4519 case "option":
4520 validateOptionProps(didHydrate, props);
4521 break;
4522 case "select":
4523 checkControlledValueProps("select", props);
4524 listenToNonDelegatedEvent("invalid", didHydrate);
4525 validateSelectProps(didHydrate, props);
4526 break;
4527 case "textarea":
4528 checkControlledValueProps("textarea", props), listenToNonDelegatedEvent("invalid", didHydrate), validateTextareaProps(didHydrate, props), initTextarea(
4529 didHydrate,
4530 props.value,
4531 props.defaultValue,
4532 props.children
4533 );
4534 }
4535 type = props.children;
4536 "string" !== typeof type && "number" !== typeof type && "bigint" !== typeof type || didHydrate.textContent === "" + type || true === props.suppressHydrationWarning || checkForUnmatchedText(didHydrate.textContent, type) ? (null != props.popover && (listenToNonDelegatedEvent("beforetoggle", didHydrate), listenToNonDelegatedEvent("toggle", didHydrate)), null != props.onScroll && listenToNonDelegatedEvent("scroll", didHydrate), null != props.onScrollEnd && listenToNonDelegatedEvent("scrollend", didHydrate), null != props.onClick && (didHydrate.onclick = noop$1), didHydrate = true) : didHydrate = false;
4537 didHydrate || throwOnHydrationMismatch(fiber, true);
4538 }
4539 function popToNextHostParent(fiber) {
4540 for (hydrationParentFiber = fiber.return; hydrationParentFiber; )
4541 switch (hydrationParentFiber.tag) {
4542 case 5:
4543 case 31:
4544 case 13:
4545 rootOrSingletonContext = false;
4546 return;
4547 case 27:
4548 case 3:
4549 rootOrSingletonContext = true;
4550 return;
4551 default:
4552 hydrationParentFiber = hydrationParentFiber.return;
4553 }
4554 }
4555 function popHydrationState(fiber) {
4556 if (fiber !== hydrationParentFiber) return false;
4557 if (!isHydrating)
4558 return popToNextHostParent(fiber), isHydrating = true, false;
4559 var tag = fiber.tag, JSCompiler_temp;
4560 if (JSCompiler_temp = 3 !== tag && 27 !== tag) {
4561 if (JSCompiler_temp = 5 === tag)
4562 JSCompiler_temp = fiber.type, JSCompiler_temp = !("form" !== JSCompiler_temp && "button" !== JSCompiler_temp) || shouldSetTextContent(fiber.type, fiber.memoizedProps);
4563 JSCompiler_temp = !JSCompiler_temp;
4564 }
4565 if (JSCompiler_temp && nextHydratableInstance) {
4566 for (JSCompiler_temp = nextHydratableInstance; JSCompiler_temp; ) {
4567 var diffNode = buildHydrationDiffNode(fiber, 0), description = describeHydratableInstanceForDevWarnings(JSCompiler_temp);
4568 diffNode.serverTail.push(description);
4569 JSCompiler_temp = "Suspense" === description.type ? getNextHydratableInstanceAfterHydrationBoundary(JSCompiler_temp) : getNextHydratable(JSCompiler_temp.nextSibling);
4570 }
4571 throwOnHydrationMismatch(fiber);
4572 }
4573 popToNextHostParent(fiber);
4574 if (13 === tag) {
4575 fiber = fiber.memoizedState;
4576 fiber = null !== fiber ? fiber.dehydrated : null;
4577 if (!fiber)
4578 throw Error(
4579 "Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue."
4580 );
4581 nextHydratableInstance = getNextHydratableInstanceAfterHydrationBoundary(fiber);
4582 } else if (31 === tag) {
4583 fiber = fiber.memoizedState;
4584 fiber = null !== fiber ? fiber.dehydrated : null;
4585 if (!fiber)
4586 throw Error(
4587 "Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue."
4588 );
4589 nextHydratableInstance = getNextHydratableInstanceAfterHydrationBoundary(fiber);
4590 } else
4591 27 === tag ? (tag = nextHydratableInstance, isSingletonScope(fiber.type) ? (fiber = previousHydratableOnEnteringScopedSingleton, previousHydratableOnEnteringScopedSingleton = null, nextHydratableInstance = fiber) : nextHydratableInstance = tag) : nextHydratableInstance = hydrationParentFiber ? getNextHydratable(fiber.stateNode.nextSibling) : null;
4592 return true;
4593 }
4594 function resetHydrationState() {
4595 nextHydratableInstance = hydrationParentFiber = null;
4596 didSuspendOrErrorDEV = isHydrating = false;
4597 }
4598 function upgradeHydrationErrorsToRecoverable() {
4599 var queuedErrors = hydrationErrors;
4600 null !== queuedErrors && (null === workInProgressRootRecoverableErrors ? workInProgressRootRecoverableErrors = queuedErrors : workInProgressRootRecoverableErrors.push.apply(
4601 workInProgressRootRecoverableErrors,
4602 queuedErrors
4603 ), hydrationErrors = null);
4604 return queuedErrors;
4605 }
4606 function queueHydrationError(error) {
4607 null === hydrationErrors ? hydrationErrors = [error] : hydrationErrors.push(error);
4608 }
4609 function emitPendingHydrationWarnings() {
4610 var diffRoot = hydrationDiffRootDEV;
4611 if (null !== diffRoot) {
4612 hydrationDiffRootDEV = null;
4613 for (var diff = describeDiff(diffRoot); 0 < diffRoot.children.length; )
4614 diffRoot = diffRoot.children[0];
4615 runWithFiberInDEV(diffRoot.fiber, function() {
4616 console.error(
4617 "A tree hydrated but some attributes of the server rendered HTML didn't match the client properties. This won't be patched up. This can happen if a SSR-ed Client Component used:\n\n- A server/client branch `if (typeof window !== 'undefined')`.\n- Variable input such as `Date.now()` or `Math.random()` which changes each time it's called.\n- Date formatting in a user's locale which doesn't match the server.\n- External changing data without sending a snapshot of it along with the HTML.\n- Invalid HTML tag nesting.\n\nIt can also happen if the client has a browser extension installed which messes with the HTML before React loaded.\n\n%s%s",
4618 "https://react.dev/link/hydration-mismatch",
4619 diff
4620 );
4621 });
4622 }
4623 }
4624 function resetContextDependencies() {
4625 lastContextDependency = currentlyRenderingFiber$1 = null;
4626 isDisallowedContextReadInDEV = false;
4627 }
4628 function pushProvider(providerFiber, context, nextValue) {
4629 push(valueCursor, context._currentValue, providerFiber);
4630 context._currentValue = nextValue;
4631 push(rendererCursorDEV, context._currentRenderer, providerFiber);
4632 void 0 !== context._currentRenderer && null !== context._currentRenderer && context._currentRenderer !== rendererSigil && console.error(
4633 "Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported."
4634 );
4635 context._currentRenderer = rendererSigil;
4636 }
4637 function popProvider(context, providerFiber) {
4638 context._currentValue = valueCursor.current;
4639 var currentRenderer = rendererCursorDEV.current;
4640 pop(rendererCursorDEV, providerFiber);
4641 context._currentRenderer = currentRenderer;
4642 pop(valueCursor, providerFiber);
4643 }
4644 function scheduleContextWorkOnParentPath(parent, renderLanes2, propagationRoot) {
4645 for (; null !== parent; ) {
4646 var alternate = parent.alternate;
4647 (parent.childLanes & renderLanes2) !== renderLanes2 ? (parent.childLanes |= renderLanes2, null !== alternate && (alternate.childLanes |= renderLanes2)) : null !== alternate && (alternate.childLanes & renderLanes2) !== renderLanes2 && (alternate.childLanes |= renderLanes2);
4648 if (parent === propagationRoot) break;
4649 parent = parent.return;
4650 }
4651 parent !== propagationRoot && console.error(
4652 "Expected to find the propagation root when scheduling context work. This error is likely caused by a bug in React. Please file an issue."
4653 );
4654 }
4655 function propagateContextChanges(workInProgress2, contexts, renderLanes2, forcePropagateEntireTree) {
4656 var fiber = workInProgress2.child;
4657 null !== fiber && (fiber.return = workInProgress2);
4658 for (; null !== fiber; ) {
4659 var list = fiber.dependencies;
4660 if (null !== list) {
4661 var nextFiber = fiber.child;
4662 list = list.firstContext;
4663 a: for (; null !== list; ) {
4664 var dependency = list;
4665 list = fiber;
4666 for (var i = 0; i < contexts.length; i++)
4667 if (dependency.context === contexts[i]) {
4668 list.lanes |= renderLanes2;
4669 dependency = list.alternate;
4670 null !== dependency && (dependency.lanes |= renderLanes2);
4671 scheduleContextWorkOnParentPath(
4672 list.return,
4673 renderLanes2,
4674 workInProgress2
4675 );
4676 forcePropagateEntireTree || (nextFiber = null);
4677 break a;
4678 }
4679 list = dependency.next;
4680 }
4681 } else if (18 === fiber.tag) {
4682 nextFiber = fiber.return;
4683 if (null === nextFiber)
4684 throw Error(
4685 "We just came from a parent so we must have had a parent. This is a bug in React."
4686 );
4687 nextFiber.lanes |= renderLanes2;
4688 list = nextFiber.alternate;
4689 null !== list && (list.lanes |= renderLanes2);
4690 scheduleContextWorkOnParentPath(
4691 nextFiber,
4692 renderLanes2,
4693 workInProgress2
4694 );
4695 nextFiber = null;
4696 } else
4697 13 === fiber.tag && null !== fiber.memoizedState && null === fiber.memoizedState.dehydrated ? (fiber.lanes |= renderLanes2, nextFiber = fiber.alternate, null !== nextFiber && (nextFiber.lanes |= renderLanes2), scheduleContextWorkOnParentPath(
4698 fiber.return,
4699 renderLanes2,
4700 workInProgress2
4701 ), nextFiber = fiber.child, nextFiber = null !== nextFiber ? nextFiber.sibling : null) : nextFiber = fiber.child;
4702 if (null !== nextFiber) nextFiber.return = fiber;
4703 else
4704 for (nextFiber = fiber; null !== nextFiber; ) {
4705 if (nextFiber === workInProgress2) {
4706 nextFiber = null;
4707 break;
4708 }
4709 fiber = nextFiber.sibling;
4710 if (null !== fiber) {
4711 fiber.return = nextFiber.return;
4712 nextFiber = fiber;
4713 break;
4714 }
4715 nextFiber = nextFiber.return;
4716 }
4717 fiber = nextFiber;
4718 }
4719 }
4720 function propagateParentContextChanges(current2, workInProgress2, renderLanes2, forcePropagateEntireTree) {
4721 current2 = null;
4722 for (var parent = workInProgress2, isInsidePropagationBailout = false; null !== parent; ) {
4723 if (!isInsidePropagationBailout) {
4724 if (0 !== (parent.flags & 524288)) isInsidePropagationBailout = true;
4725 else if (0 !== (parent.flags & 262144)) break;
4726 }
4727 if (10 === parent.tag) {
4728 var currentParent = parent.alternate;
4729 if (null === currentParent)
4730 throw Error("Should have a current fiber. This is a bug in React.");
4731 currentParent = currentParent.memoizedProps;
4732 if (null !== currentParent) {
4733 var context = parent.type;
4734 objectIs(parent.pendingProps.value, currentParent.value) || (null !== current2 ? current2.push(context) : current2 = [context]);
4735 }
4736 } else if (parent === hostTransitionProviderCursor.current) {
4737 currentParent = parent.alternate;
4738 if (null === currentParent)
4739 throw Error("Should have a current fiber. This is a bug in React.");
4740 currentParent.memoizedState.memoizedState !== parent.memoizedState.memoizedState && (null !== current2 ? current2.push(HostTransitionContext) : current2 = [HostTransitionContext]);
4741 }
4742 parent = parent.return;
4743 }
4744 null !== current2 && propagateContextChanges(
4745 workInProgress2,
4746 current2,
4747 renderLanes2,
4748 forcePropagateEntireTree
4749 );
4750 workInProgress2.flags |= 262144;
4751 return null !== current2;
4752 }
4753 function checkIfContextChanged(currentDependencies) {
4754 for (currentDependencies = currentDependencies.firstContext; null !== currentDependencies; ) {
4755 if (!objectIs(
4756 currentDependencies.context._currentValue,
4757 currentDependencies.memoizedValue
4758 ))
4759 return true;
4760 currentDependencies = currentDependencies.next;
4761 }
4762 return false;
4763 }
4764 function prepareToReadContext(workInProgress2) {
4765 currentlyRenderingFiber$1 = workInProgress2;
4766 lastContextDependency = null;
4767 workInProgress2 = workInProgress2.dependencies;
4768 null !== workInProgress2 && (workInProgress2.firstContext = null);
4769 }
4770 function readContext(context) {
4771 isDisallowedContextReadInDEV && console.error(
4772 "Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo()."
4773 );
4774 return readContextForConsumer(currentlyRenderingFiber$1, context);
4775 }
4776 function readContextDuringReconciliation(consumer, context) {
4777 null === currentlyRenderingFiber$1 && prepareToReadContext(consumer);
4778 return readContextForConsumer(consumer, context);
4779 }
4780 function readContextForConsumer(consumer, context) {
4781 var value = context._currentValue;
4782 context = { context, memoizedValue: value, next: null };
4783 if (null === lastContextDependency) {
4784 if (null === consumer)
4785 throw Error(
4786 "Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo()."
4787 );
4788 lastContextDependency = context;
4789 consumer.dependencies = {
4790 lanes: 0,
4791 firstContext: context,
4792 _debugThenableState: null
4793 };
4794 consumer.flags |= 524288;
4795 } else lastContextDependency = lastContextDependency.next = context;
4796 return value;
4797 }
4798 function createCache() {
4799 return {
4800 controller: new AbortControllerLocal(),
4801 data: /* @__PURE__ */ new Map(),
4802 refCount: 0
4803 };
4804 }
4805 function retainCache(cache) {
4806 cache.controller.signal.aborted && console.warn(
4807 "A cache instance was retained after it was already freed. This likely indicates a bug in React."
4808 );
4809 cache.refCount++;
4810 }
4811 function releaseCache(cache) {
4812 cache.refCount--;
4813 0 > cache.refCount && console.warn(
4814 "A cache instance was released after it was already freed. This likely indicates a bug in React."
4815 );
4816 0 === cache.refCount && scheduleCallback$2(NormalPriority, function() {
4817 cache.controller.abort();
4818 });
4819 }
4820 function queueTransitionTypes(root2, transitionTypes) {
4821 if (0 !== (root2.pendingLanes & 4194048)) {
4822 var queued = root2.transitionTypes;
4823 null === queued && (queued = root2.transitionTypes = []);
4824 for (root2 = 0; root2 < transitionTypes.length; root2++) {
4825 var transitionType = transitionTypes[root2];
4826 -1 === queued.indexOf(transitionType) && queued.push(transitionType);
4827 }
4828 }
4829 }
4830 function claimQueuedTransitionTypes(root2) {
4831 var claimed = root2.transitionTypes;
4832 root2.transitionTypes = null;
4833 return claimed;
4834 }
4835 function startUpdateTimerByLane(lane, method, fiber) {
4836 if (0 !== (lane & 127))
4837 0 > blockingUpdateTime && (blockingUpdateTime = now(), blockingUpdateTask = createTask(method), blockingUpdateMethodName = method, null != fiber && (blockingUpdateComponentName = getComponentNameFromFiber(fiber)), (executionContext & (RenderContext | CommitContext)) !== NoContext && (componentEffectSpawnedUpdate = true, blockingUpdateType = SPAWNED_UPDATE), lane = resolveEventTimeStamp(), method = resolveEventType(), lane !== blockingEventRepeatTime || method !== blockingEventType ? blockingEventRepeatTime = -1.1 : null !== method && (blockingUpdateType = SPAWNED_UPDATE), blockingEventTime = lane, blockingEventType = method);
4838 else if (0 !== (lane & 4194048) && 0 > transitionUpdateTime && (transitionUpdateTime = now(), transitionUpdateTask = createTask(method), transitionUpdateMethodName = method, null != fiber && (transitionUpdateComponentName = getComponentNameFromFiber(fiber)), 0 > transitionStartTime)) {
4839 lane = resolveEventTimeStamp();
4840 method = resolveEventType();
4841 if (lane !== transitionEventRepeatTime || method !== transitionEventType)
4842 transitionEventRepeatTime = -1.1;
4843 transitionEventTime = lane;
4844 transitionEventType = method;
4845 }
4846 }
4847 function startHostActionTimer(fiber) {
4848 if (0 > blockingUpdateTime) {
4849 blockingUpdateTime = now();
4850 blockingUpdateTask = null != fiber._debugTask ? fiber._debugTask : null;
4851 (executionContext & (RenderContext | CommitContext)) !== NoContext && (blockingUpdateType = SPAWNED_UPDATE);
4852 var newEventTime = resolveEventTimeStamp(), newEventType = resolveEventType();
4853 newEventTime !== blockingEventRepeatTime || newEventType !== blockingEventType ? blockingEventRepeatTime = -1.1 : null !== newEventType && (blockingUpdateType = SPAWNED_UPDATE);
4854 blockingEventTime = newEventTime;
4855 blockingEventType = newEventType;
4856 }
4857 if (0 > transitionUpdateTime && (transitionUpdateTime = now(), transitionUpdateTask = null != fiber._debugTask ? fiber._debugTask : null, 0 > transitionStartTime)) {
4858 fiber = resolveEventTimeStamp();
4859 newEventTime = resolveEventType();
4860 if (fiber !== transitionEventRepeatTime || newEventTime !== transitionEventType)
4861 transitionEventRepeatTime = -1.1;
4862 transitionEventTime = fiber;
4863 transitionEventType = newEventTime;
4864 }
4865 }
4866 function pushNestedEffectDurations() {
4867 var prevEffectDuration = profilerEffectDuration;
4868 profilerEffectDuration = 0;
4869 return prevEffectDuration;
4870 }
4871 function popNestedEffectDurations(prevEffectDuration) {
4872 var elapsedTime = profilerEffectDuration;
4873 profilerEffectDuration = prevEffectDuration;
4874 return elapsedTime;
4875 }
4876 function bubbleNestedEffectDurations(prevEffectDuration) {
4877 var elapsedTime = profilerEffectDuration;
4878 profilerEffectDuration += prevEffectDuration;
4879 return elapsedTime;
4880 }
4881 function resetComponentEffectTimers() {
4882 componentEffectEndTime = componentEffectStartTime = -1.1;
4883 }
4884 function pushComponentEffectStart() {
4885 var prevEffectStart = componentEffectStartTime;
4886 componentEffectStartTime = -1.1;
4887 return prevEffectStart;
4888 }
4889 function popComponentEffectStart(prevEffectStart) {
4890 0 <= prevEffectStart && (componentEffectStartTime = prevEffectStart);
4891 }
4892 function pushComponentEffectDuration() {
4893 var prevEffectDuration = componentEffectDuration;
4894 componentEffectDuration = -0;
4895 return prevEffectDuration;
4896 }
4897 function popComponentEffectDuration(prevEffectDuration) {
4898 0 <= prevEffectDuration && (componentEffectDuration = prevEffectDuration);
4899 }
4900 function pushComponentEffectErrors() {
4901 var prevErrors = componentEffectErrors;
4902 componentEffectErrors = null;
4903 return prevErrors;
4904 }
4905 function pushComponentEffectDidSpawnUpdate() {
4906 var prev = componentEffectSpawnedUpdate;
4907 componentEffectSpawnedUpdate = false;
4908 return prev;
4909 }
4910 function startProfilerTimer(fiber) {
4911 profilerStartTime = now();
4912 0 > fiber.actualStartTime && (fiber.actualStartTime = profilerStartTime);
4913 }
4914 function stopProfilerTimerIfRunningAndRecordDuration(fiber) {
4915 if (0 <= profilerStartTime) {
4916 var elapsedTime = now() - profilerStartTime;
4917 fiber.actualDuration += elapsedTime;
4918 fiber.selfBaseDuration = elapsedTime;
4919 profilerStartTime = -1;
4920 }
4921 }
4922 function stopProfilerTimerIfRunningAndRecordIncompleteDuration(fiber) {
4923 if (0 <= profilerStartTime) {
4924 var elapsedTime = now() - profilerStartTime;
4925 fiber.actualDuration += elapsedTime;
4926 profilerStartTime = -1;
4927 }
4928 }
4929 function recordEffectDuration() {
4930 if (0 <= profilerStartTime) {
4931 var endTime = now(), elapsedTime = endTime - profilerStartTime;
4932 profilerStartTime = -1;
4933 profilerEffectDuration += elapsedTime;
4934 componentEffectDuration += elapsedTime;
4935 componentEffectEndTime = endTime;
4936 }
4937 }
4938 function recordEffectError(errorInfo) {
4939 null === componentEffectErrors && (componentEffectErrors = []);
4940 componentEffectErrors.push(errorInfo);
4941 null === commitErrors && (commitErrors = []);
4942 commitErrors.push(errorInfo);
4943 }
4944 function startEffectTimer() {
4945 profilerStartTime = now();
4946 0 > componentEffectStartTime && (componentEffectStartTime = profilerStartTime);
4947 }
4948 function transferActualDuration(fiber) {
4949 for (var child = fiber.child; child; )
4950 fiber.actualDuration += child.actualDuration, child = child.sibling;
4951 }
4952 function entangleAsyncAction(transition, thenable) {
4953 if (null === currentEntangledListeners) {
4954 var entangledListeners = currentEntangledListeners = [];
4955 currentEntangledPendingCount = 0;
4956 currentEntangledLane = requestTransitionLane();
4957 currentEntangledActionThenable = {
4958 status: "pending",
4959 value: void 0,
4960 then: function(resolve) {
4961 entangledListeners.push(resolve);
4962 }
4963 };
4964 }
4965 currentEntangledPendingCount++;
4966 thenable.then(pingEngtangledActionScope, pingEngtangledActionScope);
4967 return thenable;
4968 }
4969 function pingEngtangledActionScope() {
4970 if (0 === --currentEntangledPendingCount && (-1 < transitionUpdateTime || (transitionStartTime = -1.1), entangledTransitionTypes = null, null !== currentEntangledListeners)) {
4971 null !== currentEntangledActionThenable && (currentEntangledActionThenable.status = "fulfilled");
4972 var listeners = currentEntangledListeners;
4973 currentEntangledListeners = null;
4974 currentEntangledLane = 0;
4975 currentEntangledActionThenable = null;
4976 for (var i = 0; i < listeners.length; i++) (0, listeners[i])();
4977 }
4978 }
4979 function chainThenableValue(thenable, result) {
4980 var listeners = [], thenableWithOverride = {
4981 status: "pending",
4982 value: null,
4983 reason: null,
4984 then: function(resolve) {
4985 listeners.push(resolve);
4986 }
4987 };
4988 thenable.then(
4989 function() {
4990 thenableWithOverride.status = "fulfilled";
4991 thenableWithOverride.value = result;
4992 for (var i = 0; i < listeners.length; i++) (0, listeners[i])(result);
4993 },
4994 function(error) {
4995 thenableWithOverride.status = "rejected";
4996 thenableWithOverride.reason = error;
4997 for (error = 0; error < listeners.length; error++)
4998 (0, listeners[error])(void 0);
4999 }
5000 );
5001 return thenableWithOverride;
5002 }
5003 function peekCacheFromPool() {
5004 var cacheResumedFromPreviousRender = resumedCache.current;
5005 return null !== cacheResumedFromPreviousRender ? cacheResumedFromPreviousRender : workInProgressRoot.pooledCache;
5006 }
5007 function pushTransition(offscreenWorkInProgress, prevCachePool) {
5008 null === prevCachePool ? push(resumedCache, resumedCache.current, offscreenWorkInProgress) : push(resumedCache, prevCachePool.pool, offscreenWorkInProgress);
5009 }
5010 function getSuspendedCache() {
5011 var cacheFromPool = peekCacheFromPool();
5012 return null === cacheFromPool ? null : { parent: CacheContext._currentValue, pool: cacheFromPool };
5013 }
5014 function createThenableState() {
5015 return { didWarnAboutUncachedPromise: false, thenables: [] };
5016 }
5017 function isThenableResolved(thenable) {
5018 thenable = thenable.status;
5019 return "fulfilled" === thenable || "rejected" === thenable;
5020 }
5021 function trackUsedThenable(thenableState2, thenable, index, fiber) {
5022 null !== ReactSharedInternals.actQueue && (ReactSharedInternals.didUsePromise = true);
5023 var trackedThenables = thenableState2.thenables;
5024 index = trackedThenables[index];
5025 void 0 === index ? trackedThenables.push(thenable) : index !== thenable && (thenableState2.didWarnAboutUncachedPromise || (thenableState2.didWarnAboutUncachedPromise = true, console.error(
5026 "A component was suspended by an uncached promise. Creating promises inside a Client Component or hook is not yet supported, except via a Suspense-compatible library or framework."
5027 )), thenable.then(noop$1, noop$1), thenable = index);
5028 if (void 0 === thenable._debugInfo) {
5029 thenableState2 = performance.now();
5030 trackedThenables = thenable.displayName;
5031 var ioInfo = {
5032 name: "string" === typeof trackedThenables ? trackedThenables : "Promise",
5033 start: thenableState2,
5034 end: thenableState2,
5035 value: thenable
5036 };
5037 thenable._debugInfo = [{ awaited: ioInfo }];
5038 "fulfilled" !== thenable.status && "rejected" !== thenable.status && (thenableState2 = function() {
5039 ioInfo.end = performance.now();
5040 }, thenable.then(thenableState2, thenableState2));
5041 }
5042 switch (thenable.status) {
5043 case "fulfilled":
5044 return thenable.value;
5045 case "rejected":
5046 fiber = thenable.reason;
5047 checkIfUseWrappedInAsyncCatch(fiber);
5048 if (void 0 === fiber && !("reason" in thenable))
5049 throw Error(
5050 "A rejected Promise was passed to React without a `reason` property. React threw a generic error from where the Promise was used to assist in identifying the problematic Promise. Make sure that instrumented Promises correctly set the `reason` property when setting `status` to `'rejected'`."
5051 );
5052 throw fiber;
5053 default:
5054 if ("string" === typeof thenable.status)
5055 thenable.then(noop$1, noop$1);
5056 else {
5057 thenableState2 = workInProgressRoot;
5058 if (null !== thenableState2 && 100 < thenableState2.shellSuspendCounter)
5059 throw Error(
5060 "An unknown Component is an async Client Component. Only Server Components can be async at the moment. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server."
5061 );
5062 thenableState2 = thenable;
5063 thenableState2.status = "pending";
5064 thenableState2.then(
5065 function(fulfilledValue) {
5066 if ("pending" === thenable.status) {
5067 var fulfilledThenable = thenable;
5068 fulfilledThenable.status = "fulfilled";
5069 fulfilledThenable.value = fulfilledValue;
5070 }
5071 },
5072 function(error) {
5073 if ("pending" === thenable.status) {
5074 var rejectedThenable = thenable;
5075 rejectedThenable.status = "rejected";
5076 rejectedThenable.reason = error;
5077 }
5078 }
5079 );
5080 }
5081 switch (thenable.status) {
5082 case "fulfilled":
5083 return thenable.value;
5084 case "rejected":
5085 throw fiber = thenable.reason, checkIfUseWrappedInAsyncCatch(fiber), fiber;
5086 }
5087 suspendedThenable = thenable;
5088 needsToResetSuspendedThenableDEV = true;
5089 didIssueUseWarning || null === fiber || null !== fiber.alternate || (lastSuspendedFiber = fiber, lastSuspendedStack = Error(
5090 "This library called use() to suspend in a previous render but did not call use() when it finished. This indicates an incorrect use of use(). Learn more: https://react.dev/warnings/conditional-use-of-use"
5091 ));
5092 throw SuspenseException;
5093 }
5094 }
5095 function resolveLazy(lazyType) {
5096 try {
5097 return callLazyInitInDEV(lazyType);
5098 } catch (x) {
5099 if (null !== x && "object" === typeof x && "function" === typeof x.then)
5100 throw suspendedThenable = x, needsToResetSuspendedThenableDEV = true, SuspenseException;
5101 throw x;
5102 }
5103 }
5104 function getSuspendedThenable() {
5105 if (null === suspendedThenable)
5106 throw Error(
5107 "Expected a suspended thenable. This is a bug in React. Please file an issue."
5108 );
5109 var thenable = suspendedThenable;
5110 suspendedThenable = null;
5111 needsToResetSuspendedThenableDEV = false;
5112 return thenable;
5113 }
5114 function checkIfUseWrappedInAsyncCatch(rejectedReason) {
5115 if (rejectedReason === SuspenseException || rejectedReason === SuspenseActionException)
5116 throw Error(
5117 "Hooks are not supported inside an async component. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server."
5118 );
5119 }
5120 function areSameKeyPath(a, b) {
5121 return a === b ? true : a.tag !== b.tag || a.type !== b.type || a.key !== b.key || a.index !== b.index || 3 === a.tag && a.stateNode !== b.stateNode || null === a.return || null === b.return ? false : areSameKeyPath(a.return, b.return);
5122 }
5123 function pushDebugInfo(debugInfo) {
5124 var previousDebugInfo = currentDebugInfo;
5125 null != debugInfo && (currentDebugInfo = null === previousDebugInfo ? debugInfo : previousDebugInfo.concat(debugInfo));
5126 return previousDebugInfo;
5127 }
5128 function getCurrentDebugTask() {
5129 var debugInfo = currentDebugInfo;
5130 if (null != debugInfo) {
5131 for (var i = debugInfo.length - 1; 0 <= i; i--)
5132 if (null != debugInfo[i].name) {
5133 var debugTask = debugInfo[i].debugTask;
5134 if (null != debugTask) return debugTask;
5135 }
5136 }
5137 return null;
5138 }
5139 function validateFragmentProps(element, fiber, returnFiber) {
5140 for (var keys = Object.keys(element.props), i = 0; i < keys.length; i++) {
5141 var key = keys[i];
5142 if ("children" !== key && "key" !== key && "ref" !== key) {
5143 null === fiber && (fiber = createFiberFromElement(element, returnFiber.mode, 0), fiber._debugInfo = currentDebugInfo, fiber.return = returnFiber);
5144 runWithFiberInDEV(
5145 fiber,
5146 function(erroredKey) {
5147 console.error(
5148 "Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key`, `ref`, and `children` props.",
5149 erroredKey
5150 );
5151 },
5152 key
5153 );
5154 break;
5155 }
5156 }
5157 }
5158 function unwrapThenable(thenable) {
5159 var index = thenableIndexCounter$1;
5160 thenableIndexCounter$1 += 1;
5161 null === thenableState$1 && (thenableState$1 = createThenableState());
5162 return trackUsedThenable(thenableState$1, thenable, index, null);
5163 }
5164 function coerceRef(workInProgress2, element) {
5165 element = element.props.ref;
5166 workInProgress2.ref = void 0 !== element ? element : null;
5167 }
5168 function throwOnInvalidObjectTypeImpl(returnFiber, newChild) {
5169 if (newChild.$$typeof === REACT_LEGACY_ELEMENT_TYPE)
5170 throw Error(
5171 'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.'
5172 );
5173 returnFiber = Object.prototype.toString.call(newChild);
5174 throw Error(
5175 "Objects are not valid as a React child (found: " + ("[object Object]" === returnFiber ? "object with keys {" + Object.keys(newChild).join(", ") + "}" : returnFiber) + "). If you meant to render a collection of children, use an array instead."
5176 );
5177 }
5178 function throwOnInvalidObjectType(returnFiber, newChild) {
5179 var debugTask = getCurrentDebugTask();
5180 null !== debugTask ? debugTask.run(
5181 throwOnInvalidObjectTypeImpl.bind(null, returnFiber, newChild)
5182 ) : throwOnInvalidObjectTypeImpl(returnFiber, newChild);
5183 }
5184 function warnOnFunctionTypeImpl(returnFiber, invalidChild) {
5185 var parentName = getComponentNameFromFiber(returnFiber) || "Component";
5186 ownerHasFunctionTypeWarning[parentName] || (ownerHasFunctionTypeWarning[parentName] = true, invalidChild = invalidChild.displayName || invalidChild.name || "Component", 3 === returnFiber.tag ? console.error(
5187 "Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.\n root.render(%s)",
5188 invalidChild,
5189 invalidChild,
5190 invalidChild
5191 ) : console.error(
5192 "Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.\n <%s>{%s}</%s>",
5193 invalidChild,
5194 invalidChild,
5195 parentName,
5196 invalidChild,
5197 parentName
5198 ));
5199 }
5200 function warnOnFunctionType(returnFiber, invalidChild) {
5201 var debugTask = getCurrentDebugTask();
5202 null !== debugTask ? debugTask.run(
5203 warnOnFunctionTypeImpl.bind(null, returnFiber, invalidChild)
5204 ) : warnOnFunctionTypeImpl(returnFiber, invalidChild);
5205 }
5206 function warnOnSymbolTypeImpl(returnFiber, invalidChild) {
5207 var parentName = getComponentNameFromFiber(returnFiber) || "Component";
5208 ownerHasSymbolTypeWarning[parentName] || (ownerHasSymbolTypeWarning[parentName] = true, invalidChild = String(invalidChild), 3 === returnFiber.tag ? console.error(
5209 "Symbols are not valid as a React child.\n root.render(%s)",
5210 invalidChild
5211 ) : console.error(
5212 "Symbols are not valid as a React child.\n <%s>%s</%s>",
5213 parentName,
5214 invalidChild,
5215 parentName
5216 ));
5217 }
5218 function warnOnSymbolType(returnFiber, invalidChild) {
5219 var debugTask = getCurrentDebugTask();
5220 null !== debugTask ? debugTask.run(
5221 warnOnSymbolTypeImpl.bind(null, returnFiber, invalidChild)
5222 ) : warnOnSymbolTypeImpl(returnFiber, invalidChild);
5223 }
5224 function createChildReconciler(shouldTrackSideEffects) {
5225 function deleteChild(returnFiber, childToDelete) {
5226 if (shouldTrackSideEffects) {
5227 var deletions = returnFiber.deletions;
5228 null === deletions ? (returnFiber.deletions = [childToDelete], returnFiber.flags |= 16) : deletions.push(childToDelete);
5229 }
5230 }
5231 function deleteRemainingChildren(returnFiber, currentFirstChild) {
5232 if (!shouldTrackSideEffects) return null;
5233 for (; null !== currentFirstChild; )
5234 deleteChild(returnFiber, currentFirstChild), currentFirstChild = currentFirstChild.sibling;
5235 return null;
5236 }
5237 function mapRemainingChildren(currentFirstChild) {
5238 for (var existingChildren = /* @__PURE__ */ new Map(); null !== currentFirstChild; )
5239 null === currentFirstChild.key ? existingChildren.set(currentFirstChild.index, currentFirstChild) : existingChildren.set(currentFirstChild.key, currentFirstChild), currentFirstChild = currentFirstChild.sibling;
5240 return existingChildren;
5241 }
5242 function useFiber(fiber, pendingProps) {
5243 fiber = createWorkInProgress(fiber, pendingProps);
5244 fiber.index = 0;
5245 fiber.sibling = null;
5246 return fiber;
5247 }
5248 function placeChild(newFiber, lastPlacedIndex, newIndex) {
5249 newFiber.index = newIndex;
5250 if (!shouldTrackSideEffects)
5251 return newFiber.flags |= 1048576, lastPlacedIndex;
5252 newIndex = newFiber.alternate;
5253 if (null !== newIndex)
5254 return newIndex = newIndex.index, newIndex < lastPlacedIndex ? (newFiber.flags |= 2, lastPlacedIndex) : newIndex;
5255 newFiber.flags |= 134217730;
5256 return lastPlacedIndex;
5257 }
5258 function placeSingleChild(newFiber) {
5259 shouldTrackSideEffects && null === newFiber.alternate && (newFiber.flags |= 134217730);
5260 return newFiber;
5261 }
5262 function updateTextNode(returnFiber, current2, textContent, lanes) {
5263 if (null === current2 || 6 !== current2.tag)
5264 return current2 = createFiberFromText(
5265 textContent,
5266 returnFiber.mode,
5267 lanes
5268 ), current2.return = returnFiber, current2._debugOwner = returnFiber, current2._debugTask = returnFiber._debugTask, current2._debugInfo = currentDebugInfo, current2;
5269 current2 = useFiber(current2, textContent);
5270 current2.return = returnFiber;
5271 current2._debugInfo = currentDebugInfo;
5272 return current2;
5273 }
5274 function updateElement(returnFiber, current2, element, lanes) {
5275 var elementType = element.type;
5276 if (elementType === REACT_FRAGMENT_TYPE)
5277 return current2 = updateFragment(
5278 returnFiber,
5279 current2,
5280 element.props.children,
5281 lanes,
5282 element.key
5283 ), coerceRef(current2, element), validateFragmentProps(element, current2, returnFiber), current2;
5284 if (null !== current2 && (current2.elementType === elementType || isCompatibleFamilyForHotReloading(current2, element) || "object" === typeof elementType && null !== elementType && elementType.$$typeof === REACT_LAZY_TYPE && resolveLazy(elementType) === current2.type))
5285 return current2 = useFiber(current2, element.props), coerceRef(current2, element), current2.return = returnFiber, current2._debugOwner = element._owner, current2._debugInfo = currentDebugInfo, current2;
5286 current2 = createFiberFromElement(element, returnFiber.mode, lanes);
5287 coerceRef(current2, element);
5288 current2.return = returnFiber;
5289 current2._debugInfo = currentDebugInfo;
5290 return current2;
5291 }
5292 function updatePortal(returnFiber, current2, portal, lanes) {
5293 if (null === current2 || 4 !== current2.tag || current2.stateNode.containerInfo !== portal.containerInfo || current2.stateNode.implementation !== portal.implementation)
5294 return current2 = createFiberFromPortal(portal, returnFiber.mode, lanes), current2.return = returnFiber, current2._debugInfo = currentDebugInfo, current2;
5295 current2 = useFiber(current2, portal.children || []);
5296 current2.return = returnFiber;
5297 current2._debugInfo = currentDebugInfo;
5298 return current2;
5299 }
5300 function updateFragment(returnFiber, current2, fragment, lanes, key) {
5301 if (null === current2 || 7 !== current2.tag)
5302 return current2 = createFiberFromFragment(
5303 fragment,
5304 returnFiber.mode,
5305 lanes,
5306 key
5307 ), current2.return = returnFiber, current2._debugOwner = returnFiber, current2._debugTask = returnFiber._debugTask, current2._debugInfo = currentDebugInfo, current2;
5308 current2 = useFiber(current2, fragment);
5309 current2.return = returnFiber;
5310 current2._debugInfo = currentDebugInfo;
5311 return current2;
5312 }
5313 function createChild(returnFiber, newChild, lanes) {
5314 if ("string" === typeof newChild && "" !== newChild || "number" === typeof newChild || "bigint" === typeof newChild)
5315 return newChild = createFiberFromText(
5316 "" + newChild,
5317 returnFiber.mode,
5318 lanes
5319 ), newChild.return = returnFiber, newChild._debugOwner = returnFiber, newChild._debugTask = returnFiber._debugTask, newChild._debugInfo = currentDebugInfo, newChild;
5320 if ("object" === typeof newChild && null !== newChild) {
5321 switch (newChild.$$typeof) {
5322 case REACT_ELEMENT_TYPE:
5323 return lanes = createFiberFromElement(
5324 newChild,
5325 returnFiber.mode,
5326 lanes
5327 ), coerceRef(lanes, newChild), lanes.return = returnFiber, returnFiber = pushDebugInfo(newChild._debugInfo), lanes._debugInfo = currentDebugInfo, currentDebugInfo = returnFiber, lanes;
5328 case REACT_PORTAL_TYPE:
5329 return newChild = createFiberFromPortal(
5330 newChild,
5331 returnFiber.mode,
5332 lanes
5333 ), newChild.return = returnFiber, newChild._debugInfo = currentDebugInfo, newChild;
5334 case REACT_LAZY_TYPE:
5335 var _prevDebugInfo = pushDebugInfo(newChild._debugInfo);
5336 newChild = resolveLazy(newChild);
5337 returnFiber = createChild(returnFiber, newChild, lanes);
5338 currentDebugInfo = _prevDebugInfo;
5339 return returnFiber;
5340 }
5341 if (isArrayImpl(newChild) || getIteratorFn(newChild))
5342 return lanes = createFiberFromFragment(
5343 newChild,
5344 returnFiber.mode,
5345 lanes,
5346 null
5347 ), lanes.return = returnFiber, lanes._debugOwner = returnFiber, lanes._debugTask = returnFiber._debugTask, returnFiber = pushDebugInfo(newChild._debugInfo), lanes._debugInfo = currentDebugInfo, currentDebugInfo = returnFiber, lanes;
5348 if ("function" === typeof newChild.then)
5349 return _prevDebugInfo = pushDebugInfo(newChild._debugInfo), returnFiber = createChild(
5350 returnFiber,
5351 unwrapThenable(newChild),
5352 lanes
5353 ), currentDebugInfo = _prevDebugInfo, returnFiber;
5354 if (newChild.$$typeof === REACT_CONTEXT_TYPE)
5355 return createChild(
5356 returnFiber,
5357 readContextDuringReconciliation(returnFiber, newChild),
5358 lanes
5359 );
5360 throwOnInvalidObjectType(returnFiber, newChild);
5361 }
5362 "function" === typeof newChild && warnOnFunctionType(returnFiber, newChild);
5363 "symbol" === typeof newChild && warnOnSymbolType(returnFiber, newChild);
5364 return null;
5365 }
5366 function updateSlot(returnFiber, oldFiber, newChild, lanes) {
5367 var key = null !== oldFiber ? oldFiber.key : null;
5368 if ("string" === typeof newChild && "" !== newChild || "number" === typeof newChild || "bigint" === typeof newChild)
5369 return null !== key ? null : updateTextNode(returnFiber, oldFiber, "" + newChild, lanes);
5370 if ("object" === typeof newChild && null !== newChild) {
5371 switch (newChild.$$typeof) {
5372 case REACT_ELEMENT_TYPE:
5373 return newChild.key === key ? (key = pushDebugInfo(newChild._debugInfo), returnFiber = updateElement(
5374 returnFiber,
5375 oldFiber,
5376 newChild,
5377 lanes
5378 ), currentDebugInfo = key, returnFiber) : null;
5379 case REACT_PORTAL_TYPE:
5380 return newChild.key === key ? updatePortal(returnFiber, oldFiber, newChild, lanes) : null;
5381 case REACT_LAZY_TYPE:
5382 return key = pushDebugInfo(newChild._debugInfo), newChild = resolveLazy(newChild), returnFiber = updateSlot(
5383 returnFiber,
5384 oldFiber,
5385 newChild,
5386 lanes
5387 ), currentDebugInfo = key, returnFiber;
5388 }
5389 if (isArrayImpl(newChild) || getIteratorFn(newChild)) {
5390 if (null !== key) return null;
5391 key = pushDebugInfo(newChild._debugInfo);
5392 returnFiber = updateFragment(
5393 returnFiber,
5394 oldFiber,
5395 newChild,
5396 lanes,
5397 null
5398 );
5399 currentDebugInfo = key;
5400 return returnFiber;
5401 }
5402 if ("function" === typeof newChild.then)
5403 return key = pushDebugInfo(newChild._debugInfo), returnFiber = updateSlot(
5404 returnFiber,
5405 oldFiber,
5406 unwrapThenable(newChild),
5407 lanes
5408 ), currentDebugInfo = key, returnFiber;
5409 if (newChild.$$typeof === REACT_CONTEXT_TYPE)
5410 return updateSlot(
5411 returnFiber,
5412 oldFiber,
5413 readContextDuringReconciliation(returnFiber, newChild),
5414 lanes
5415 );
5416 throwOnInvalidObjectType(returnFiber, newChild);
5417 }
5418 "function" === typeof newChild && warnOnFunctionType(returnFiber, newChild);
5419 "symbol" === typeof newChild && warnOnSymbolType(returnFiber, newChild);
5420 return null;
5421 }
5422 function updateFromMap(existingChildren, returnFiber, newIdx, newChild, lanes) {
5423 if ("string" === typeof newChild && "" !== newChild || "number" === typeof newChild || "bigint" === typeof newChild)
5424 return existingChildren = existingChildren.get(newIdx) || null, updateTextNode(returnFiber, existingChildren, "" + newChild, lanes);
5425 if ("object" === typeof newChild && null !== newChild) {
5426 switch (newChild.$$typeof) {
5427 case REACT_ELEMENT_TYPE:
5428 return newIdx = existingChildren.get(
5429 null === newChild.key ? newIdx : newChild.key
5430 ) || null, existingChildren = pushDebugInfo(newChild._debugInfo), returnFiber = updateElement(
5431 returnFiber,
5432 newIdx,
5433 newChild,
5434 lanes
5435 ), currentDebugInfo = existingChildren, returnFiber;
5436 case REACT_PORTAL_TYPE:
5437 return existingChildren = existingChildren.get(
5438 null === newChild.key ? newIdx : newChild.key
5439 ) || null, updatePortal(returnFiber, existingChildren, newChild, lanes);
5440 case REACT_LAZY_TYPE:
5441 var _prevDebugInfo7 = pushDebugInfo(newChild._debugInfo);
5442 newChild = resolveLazy(newChild);
5443 returnFiber = updateFromMap(
5444 existingChildren,
5445 returnFiber,
5446 newIdx,
5447 newChild,
5448 lanes
5449 );
5450 currentDebugInfo = _prevDebugInfo7;
5451 return returnFiber;
5452 }
5453 if (isArrayImpl(newChild) || getIteratorFn(newChild))
5454 return newIdx = existingChildren.get(newIdx) || null, existingChildren = pushDebugInfo(newChild._debugInfo), returnFiber = updateFragment(
5455 returnFiber,
5456 newIdx,
5457 newChild,
5458 lanes,
5459 null
5460 ), currentDebugInfo = existingChildren, returnFiber;
5461 if ("function" === typeof newChild.then)
5462 return _prevDebugInfo7 = pushDebugInfo(newChild._debugInfo), returnFiber = updateFromMap(
5463 existingChildren,
5464 returnFiber,
5465 newIdx,
5466 unwrapThenable(newChild),
5467 lanes
5468 ), currentDebugInfo = _prevDebugInfo7, returnFiber;
5469 if (newChild.$$typeof === REACT_CONTEXT_TYPE)
5470 return updateFromMap(
5471 existingChildren,
5472 returnFiber,
5473 newIdx,
5474 readContextDuringReconciliation(returnFiber, newChild),
5475 lanes
5476 );
5477 throwOnInvalidObjectType(returnFiber, newChild);
5478 }
5479 "function" === typeof newChild && warnOnFunctionType(returnFiber, newChild);
5480 "symbol" === typeof newChild && warnOnSymbolType(returnFiber, newChild);
5481 return null;
5482 }
5483 function warnOnInvalidKey(returnFiber, workInProgress2, child, knownKeys) {
5484 if ("object" !== typeof child || null === child) return knownKeys;
5485 switch (child.$$typeof) {
5486 case REACT_ELEMENT_TYPE:
5487 case REACT_PORTAL_TYPE:
5488 warnForMissingKey(returnFiber, workInProgress2, child);
5489 var key = child.key;
5490 if ("string" !== typeof key) break;
5491 if (null === knownKeys) {
5492 knownKeys = /* @__PURE__ */ new Set();
5493 knownKeys.add(key);
5494 break;
5495 }
5496 if (!knownKeys.has(key)) {
5497 knownKeys.add(key);
5498 break;
5499 }
5500 runWithFiberInDEV(workInProgress2, function() {
5501 console.error(
5502 "Encountered two children with the same key, `%s`. Keys should be unique so that components maintain their identity across updates. Non-unique keys may cause children to be duplicated and/or omitted \u2014 the behavior is unsupported and could change in a future version.",
5503 key
5504 );
5505 });
5506 break;
5507 case REACT_LAZY_TYPE:
5508 child = resolveLazy(child), warnOnInvalidKey(returnFiber, workInProgress2, child, knownKeys);
5509 }
5510 return knownKeys;
5511 }
5512 function reconcileChildrenArray(returnFiber, currentFirstChild, newChildren, lanes) {
5513 for (var knownKeys = null, resultingFirstChild = null, previousNewFiber = null, oldFiber = currentFirstChild, newIdx = currentFirstChild = 0, nextOldFiber = null; null !== oldFiber && newIdx < newChildren.length; newIdx++) {
5514 oldFiber.index > newIdx ? (nextOldFiber = oldFiber, oldFiber = null) : nextOldFiber = oldFiber.sibling;
5515 var newFiber = updateSlot(
5516 returnFiber,
5517 oldFiber,
5518 newChildren[newIdx],
5519 lanes
5520 );
5521 if (null === newFiber) {
5522 null === oldFiber && (oldFiber = nextOldFiber);
5523 break;
5524 }
5525 knownKeys = warnOnInvalidKey(
5526 returnFiber,
5527 newFiber,
5528 newChildren[newIdx],
5529 knownKeys
5530 );
5531 shouldTrackSideEffects && oldFiber && null === newFiber.alternate && deleteChild(returnFiber, oldFiber);
5532 currentFirstChild = placeChild(newFiber, currentFirstChild, newIdx);
5533 null === previousNewFiber ? resultingFirstChild = newFiber : previousNewFiber.sibling = newFiber;
5534 previousNewFiber = newFiber;
5535 oldFiber = nextOldFiber;
5536 }
5537 if (newIdx === newChildren.length)
5538 return deleteRemainingChildren(returnFiber, oldFiber), isHydrating && pushTreeFork(returnFiber, newIdx), resultingFirstChild;
5539 if (null === oldFiber) {
5540 for (; newIdx < newChildren.length; newIdx++)
5541 oldFiber = createChild(returnFiber, newChildren[newIdx], lanes), null !== oldFiber && (knownKeys = warnOnInvalidKey(
5542 returnFiber,
5543 oldFiber,
5544 newChildren[newIdx],
5545 knownKeys
5546 ), currentFirstChild = placeChild(
5547 oldFiber,
5548 currentFirstChild,
5549 newIdx
5550 ), null === previousNewFiber ? resultingFirstChild = oldFiber : previousNewFiber.sibling = oldFiber, previousNewFiber = oldFiber);
5551 isHydrating && pushTreeFork(returnFiber, newIdx);
5552 return resultingFirstChild;
5553 }
5554 for (oldFiber = mapRemainingChildren(oldFiber); newIdx < newChildren.length; newIdx++)
5555 nextOldFiber = updateFromMap(
5556 oldFiber,
5557 returnFiber,
5558 newIdx,
5559 newChildren[newIdx],
5560 lanes
5561 ), null !== nextOldFiber && (knownKeys = warnOnInvalidKey(
5562 returnFiber,
5563 nextOldFiber,
5564 newChildren[newIdx],
5565 knownKeys
5566 ), shouldTrackSideEffects && (newFiber = nextOldFiber.alternate, null !== newFiber && oldFiber.delete(
5567 null === newFiber.key ? newIdx : newFiber.key
5568 )), currentFirstChild = placeChild(
5569 nextOldFiber,
5570 currentFirstChild,
5571 newIdx
5572 ), null === previousNewFiber ? resultingFirstChild = nextOldFiber : previousNewFiber.sibling = nextOldFiber, previousNewFiber = nextOldFiber);
5573 shouldTrackSideEffects && oldFiber.forEach(function(child) {
5574 return deleteChild(returnFiber, child);
5575 });
5576 isHydrating && pushTreeFork(returnFiber, newIdx);
5577 return resultingFirstChild;
5578 }
5579 function reconcileChildrenIterator(returnFiber, currentFirstChild, newChildren, lanes) {
5580 if (null == newChildren)
5581 throw Error("An iterable object provided no iterator.");
5582 for (var resultingFirstChild = null, previousNewFiber = null, oldFiber = currentFirstChild, newIdx = currentFirstChild = 0, nextOldFiber = null, knownKeys = null, step = newChildren.next(); null !== oldFiber && !step.done; newIdx++, step = newChildren.next()) {
5583 oldFiber.index > newIdx ? (nextOldFiber = oldFiber, oldFiber = null) : nextOldFiber = oldFiber.sibling;
5584 var newFiber = updateSlot(returnFiber, oldFiber, step.value, lanes);
5585 if (null === newFiber) {
5586 null === oldFiber && (oldFiber = nextOldFiber);
5587 break;
5588 }
5589 knownKeys = warnOnInvalidKey(
5590 returnFiber,
5591 newFiber,
5592 step.value,
5593 knownKeys
5594 );
5595 shouldTrackSideEffects && oldFiber && null === newFiber.alternate && deleteChild(returnFiber, oldFiber);
5596 currentFirstChild = placeChild(newFiber, currentFirstChild, newIdx);
5597 null === previousNewFiber ? resultingFirstChild = newFiber : previousNewFiber.sibling = newFiber;
5598 previousNewFiber = newFiber;
5599 oldFiber = nextOldFiber;
5600 }
5601 if (step.done)
5602 return deleteRemainingChildren(returnFiber, oldFiber), isHydrating && pushTreeFork(returnFiber, newIdx), resultingFirstChild;
5603 if (null === oldFiber) {
5604 for (; !step.done; newIdx++, step = newChildren.next())
5605 oldFiber = createChild(returnFiber, step.value, lanes), null !== oldFiber && (knownKeys = warnOnInvalidKey(
5606 returnFiber,
5607 oldFiber,
5608 step.value,
5609 knownKeys
5610 ), currentFirstChild = placeChild(
5611 oldFiber,
5612 currentFirstChild,
5613 newIdx
5614 ), null === previousNewFiber ? resultingFirstChild = oldFiber : previousNewFiber.sibling = oldFiber, previousNewFiber = oldFiber);
5615 isHydrating && pushTreeFork(returnFiber, newIdx);
5616 return resultingFirstChild;
5617 }
5618 for (oldFiber = mapRemainingChildren(oldFiber); !step.done; newIdx++, step = newChildren.next())
5619 nextOldFiber = updateFromMap(
5620 oldFiber,
5621 returnFiber,
5622 newIdx,
5623 step.value,
5624 lanes
5625 ), null !== nextOldFiber && (knownKeys = warnOnInvalidKey(
5626 returnFiber,
5627 nextOldFiber,
5628 step.value,
5629 knownKeys
5630 ), shouldTrackSideEffects && (step = nextOldFiber.alternate, null !== step && oldFiber.delete(null === step.key ? newIdx : step.key)), currentFirstChild = placeChild(
5631 nextOldFiber,
5632 currentFirstChild,
5633 newIdx
5634 ), null === previousNewFiber ? resultingFirstChild = nextOldFiber : previousNewFiber.sibling = nextOldFiber, previousNewFiber = nextOldFiber);
5635 shouldTrackSideEffects && oldFiber.forEach(function(child) {
5636 return deleteChild(returnFiber, child);
5637 });
5638 isHydrating && pushTreeFork(returnFiber, newIdx);
5639 return resultingFirstChild;
5640 }
5641 function reconcileChildFibersImpl(returnFiber, currentFirstChild, newChild, lanes) {
5642 "object" === typeof newChild && null !== newChild && newChild.type === REACT_FRAGMENT_TYPE && null === newChild.key && void 0 === newChild.props.ref && (validateFragmentProps(newChild, null, returnFiber), newChild = newChild.props.children);
5643 if ("object" === typeof newChild && null !== newChild) {
5644 switch (newChild.$$typeof) {
5645 case REACT_ELEMENT_TYPE:
5646 var prevDebugInfo = pushDebugInfo(newChild._debugInfo);
5647 a: {
5648 for (var key = newChild.key; null !== currentFirstChild; ) {
5649 if (currentFirstChild.key === key) {
5650 key = newChild.type;
5651 if (key === REACT_FRAGMENT_TYPE) {
5652 if (7 === currentFirstChild.tag) {
5653 deleteRemainingChildren(
5654 returnFiber,
5655 currentFirstChild.sibling
5656 );
5657 lanes = useFiber(
5658 currentFirstChild,
5659 newChild.props.children
5660 );
5661 coerceRef(lanes, newChild);
5662 lanes.return = returnFiber;
5663 lanes._debugOwner = newChild._owner;
5664 lanes._debugInfo = currentDebugInfo;
5665 validateFragmentProps(newChild, lanes, returnFiber);
5666 returnFiber = lanes;
5667 break a;
5668 }
5669 } else if (currentFirstChild.elementType === key || isCompatibleFamilyForHotReloading(
5670 currentFirstChild,
5671 newChild
5672 ) || "object" === typeof key && null !== key && key.$$typeof === REACT_LAZY_TYPE && resolveLazy(key) === currentFirstChild.type) {
5673 deleteRemainingChildren(
5674 returnFiber,
5675 currentFirstChild.sibling
5676 );
5677 lanes = useFiber(currentFirstChild, newChild.props);
5678 coerceRef(lanes, newChild);
5679 lanes.return = returnFiber;
5680 lanes._debugOwner = newChild._owner;
5681 lanes._debugInfo = currentDebugInfo;
5682 returnFiber = lanes;
5683 break a;
5684 }
5685 deleteRemainingChildren(returnFiber, currentFirstChild);
5686 break;
5687 } else deleteChild(returnFiber, currentFirstChild);
5688 currentFirstChild = currentFirstChild.sibling;
5689 }
5690 newChild.type === REACT_FRAGMENT_TYPE ? (lanes = createFiberFromFragment(
5691 newChild.props.children,
5692 returnFiber.mode,
5693 lanes,
5694 newChild.key
5695 ), coerceRef(lanes, newChild), lanes.return = returnFiber, lanes._debugOwner = returnFiber, lanes._debugTask = returnFiber._debugTask, lanes._debugInfo = currentDebugInfo, validateFragmentProps(newChild, lanes, returnFiber), returnFiber = lanes) : (lanes = createFiberFromElement(
5696 newChild,
5697 returnFiber.mode,
5698 lanes
5699 ), coerceRef(lanes, newChild), lanes.return = returnFiber, lanes._debugInfo = currentDebugInfo, returnFiber = lanes);
5700 }
5701 returnFiber = placeSingleChild(returnFiber);
5702 currentDebugInfo = prevDebugInfo;
5703 return returnFiber;
5704 case REACT_PORTAL_TYPE:
5705 a: {
5706 prevDebugInfo = newChild;
5707 for (newChild = prevDebugInfo.key; null !== currentFirstChild; ) {
5708 if (currentFirstChild.key === newChild)
5709 if (4 === currentFirstChild.tag && currentFirstChild.stateNode.containerInfo === prevDebugInfo.containerInfo && currentFirstChild.stateNode.implementation === prevDebugInfo.implementation) {
5710 deleteRemainingChildren(
5711 returnFiber,
5712 currentFirstChild.sibling
5713 );
5714 lanes = useFiber(
5715 currentFirstChild,
5716 prevDebugInfo.children || []
5717 );
5718 lanes.return = returnFiber;
5719 returnFiber = lanes;
5720 break a;
5721 } else {
5722 deleteRemainingChildren(returnFiber, currentFirstChild);
5723 break;
5724 }
5725 else deleteChild(returnFiber, currentFirstChild);
5726 currentFirstChild = currentFirstChild.sibling;
5727 }
5728 lanes = createFiberFromPortal(
5729 prevDebugInfo,
5730 returnFiber.mode,
5731 lanes
5732 );
5733 lanes.return = returnFiber;
5734 returnFiber = lanes;
5735 }
5736 return placeSingleChild(returnFiber);
5737 case REACT_LAZY_TYPE:
5738 return prevDebugInfo = pushDebugInfo(newChild._debugInfo), newChild = resolveLazy(newChild), returnFiber = reconcileChildFibersImpl(
5739 returnFiber,
5740 currentFirstChild,
5741 newChild,
5742 lanes
5743 ), currentDebugInfo = prevDebugInfo, returnFiber;
5744 }
5745 if (isArrayImpl(newChild))
5746 return reconcileChildrenArray(
5747 returnFiber,
5748 currentFirstChild,
5749 newChild,
5750 lanes
5751 );
5752 if (getIteratorFn(newChild)) {
5753 prevDebugInfo = newChild;
5754 newChild = getIteratorFn(prevDebugInfo);
5755 if ("function" !== typeof newChild)
5756 throw Error(
5757 "An object is not an iterable. This error is likely caused by a bug in React. Please file an issue."
5758 );
5759 key = newChild.call(prevDebugInfo);
5760 if (key === prevDebugInfo) {
5761 if (0 !== returnFiber.tag || "[object GeneratorFunction]" !== Object.prototype.toString.call(returnFiber.type) || "[object Generator]" !== Object.prototype.toString.call(key))
5762 didWarnAboutGenerators || console.error(
5763 "Using Iterators as children is unsupported and will likely yield unexpected results because enumerating a generator mutates it. You may convert it to an array with `Array.from()` or the `[...spread]` operator before rendering. You can also use an Iterable that can iterate multiple times over the same items."
5764 ), didWarnAboutGenerators = true;
5765 } else
5766 prevDebugInfo.entries !== newChild || didWarnAboutMaps || (console.error(
5767 "Using Maps as children is not supported. Use an array of keyed ReactElements instead."
5768 ), didWarnAboutMaps = true);
5769 return reconcileChildrenIterator(
5770 returnFiber,
5771 currentFirstChild,
5772 key,
5773 lanes
5774 );
5775 }
5776 if ("function" === typeof newChild.then)
5777 return prevDebugInfo = pushDebugInfo(newChild._debugInfo), returnFiber = reconcileChildFibersImpl(
5778 returnFiber,
5779 currentFirstChild,
5780 unwrapThenable(newChild),
5781 lanes
5782 ), currentDebugInfo = prevDebugInfo, returnFiber;
5783 if (newChild.$$typeof === REACT_CONTEXT_TYPE)
5784 return reconcileChildFibersImpl(
5785 returnFiber,
5786 currentFirstChild,
5787 readContextDuringReconciliation(returnFiber, newChild),
5788 lanes
5789 );
5790 throwOnInvalidObjectType(returnFiber, newChild);
5791 }
5792 if ("string" === typeof newChild && "" !== newChild || "number" === typeof newChild || "bigint" === typeof newChild)
5793 return prevDebugInfo = "" + newChild, null !== currentFirstChild && 6 === currentFirstChild.tag ? (deleteRemainingChildren(
5794 returnFiber,
5795 currentFirstChild.sibling
5796 ), lanes = useFiber(currentFirstChild, prevDebugInfo), lanes.return = returnFiber, returnFiber = lanes) : (deleteRemainingChildren(returnFiber, currentFirstChild), lanes = createFiberFromText(
5797 prevDebugInfo,
5798 returnFiber.mode,
5799 lanes
5800 ), lanes.return = returnFiber, lanes._debugOwner = returnFiber, lanes._debugTask = returnFiber._debugTask, lanes._debugInfo = currentDebugInfo, returnFiber = lanes), placeSingleChild(returnFiber);
5801 "function" === typeof newChild && warnOnFunctionType(returnFiber, newChild);
5802 "symbol" === typeof newChild && warnOnSymbolType(returnFiber, newChild);
5803 return deleteRemainingChildren(returnFiber, currentFirstChild);
5804 }
5805 return function(returnFiber, currentFirstChild, newChild, lanes) {
5806 var prevDebugInfo = currentDebugInfo;
5807 currentDebugInfo = null;
5808 try {
5809 thenableIndexCounter$1 = 0;
5810 var firstChildFiber = reconcileChildFibersImpl(
5811 returnFiber,
5812 currentFirstChild,
5813 newChild,
5814 lanes
5815 );
5816 thenableState$1 = null;
5817 return firstChildFiber;
5818 } catch (x) {
5819 if (x === SuspenseException || x === SuspenseActionException) throw x;
5820 var fiber = createFiber(29, x, null, returnFiber.mode);
5821 fiber.lanes = lanes;
5822 fiber.return = returnFiber;
5823 var debugInfo = fiber._debugInfo = currentDebugInfo;
5824 fiber._debugOwner = returnFiber._debugOwner;
5825 fiber._debugTask = returnFiber._debugTask;
5826 if (null != debugInfo) {
5827 for (var i = debugInfo.length - 1; 0 <= i; i--)
5828 if ("string" === typeof debugInfo[i].stack) {
5829 fiber._debugOwner = debugInfo[i];
5830 fiber._debugTask = debugInfo[i].debugTask;
5831 break;
5832 }
5833 }
5834 return fiber;
5835 } finally {
5836 currentDebugInfo = prevDebugInfo;
5837 }
5838 };
5839 }
5840 function validateSuspenseListNestedChild(childSlot, index) {
5841 var isAnArray = isArrayImpl(childSlot);
5842 childSlot = !isAnArray && "function" === typeof getIteratorFn(childSlot);
5843 return isAnArray || childSlot ? (isAnArray = isAnArray ? "array" : "iterable", console.error(
5844 "A nested %s was passed to row #%s in <SuspenseList />. Wrap it in an additional SuspenseList to configure its revealOrder: <SuspenseList revealOrder=...> ... <SuspenseList revealOrder=...>{%s}</SuspenseList> ... </SuspenseList>",
5845 isAnArray,
5846 index,
5847 isAnArray
5848 ), false) : true;
5849 }
5850 function initializeUpdateQueue(fiber) {
5851 fiber.updateQueue = {
5852 baseState: fiber.memoizedState,
5853 firstBaseUpdate: null,
5854 lastBaseUpdate: null,
5855 shared: { pending: null, lanes: 0, hiddenCallbacks: null },
5856 callbacks: null
5857 };
5858 }
5859 function cloneUpdateQueue(current2, workInProgress2) {
5860 current2 = current2.updateQueue;
5861 workInProgress2.updateQueue === current2 && (workInProgress2.updateQueue = {
5862 baseState: current2.baseState,
5863 firstBaseUpdate: current2.firstBaseUpdate,
5864 lastBaseUpdate: current2.lastBaseUpdate,
5865 shared: current2.shared,
5866 callbacks: null
5867 });
5868 }
5869 function createUpdate(lane) {
5870 return {
5871 lane,
5872 tag: UpdateState,
5873 payload: null,
5874 callback: null,
5875 next: null
5876 };
5877 }
5878 function enqueueUpdate(fiber, update, lane) {
5879 var updateQueue = fiber.updateQueue;
5880 if (null === updateQueue) return null;
5881 updateQueue = updateQueue.shared;
5882 if (currentlyProcessingQueue === updateQueue && !didWarnUpdateInsideUpdate) {
5883 var componentName2 = getComponentNameFromFiber(fiber);
5884 console.error(
5885 "An update (setState, replaceState, or forceUpdate) was scheduled from inside an update function. Update functions should be pure, with zero side-effects. Consider using componentDidUpdate or a callback.\n\nPlease update the following component: %s",
5886 componentName2
5887 );
5888 didWarnUpdateInsideUpdate = true;
5889 }
5890 if ((executionContext & RenderContext) !== NoContext)
5891 return componentName2 = updateQueue.pending, null === componentName2 ? update.next = update : (update.next = componentName2.next, componentName2.next = update), updateQueue.pending = update, update = getRootForUpdatedFiber(fiber), markUpdateLaneFromFiberToRoot(fiber, null, lane), update;
5892 enqueueUpdate$1(fiber, updateQueue, update, lane);
5893 return getRootForUpdatedFiber(fiber);
5894 }
5895 function entangleTransitions(root2, fiber, lane) {
5896 fiber = fiber.updateQueue;
5897 if (null !== fiber && (fiber = fiber.shared, 0 !== (lane & 4194048))) {
5898 var queueLanes = fiber.lanes;
5899 queueLanes &= root2.pendingLanes;
5900 lane |= queueLanes;
5901 fiber.lanes = lane;
5902 markRootEntangled(root2, lane);
5903 }
5904 }
5905 function enqueueCapturedUpdate(workInProgress2, capturedUpdate) {
5906 var queue = workInProgress2.updateQueue, current2 = workInProgress2.alternate;
5907 if (null !== current2 && (current2 = current2.updateQueue, queue === current2)) {
5908 var newFirst = null, newLast = null;
5909 queue = queue.firstBaseUpdate;
5910 if (null !== queue) {
5911 do {
5912 var clone = {
5913 lane: queue.lane,
5914 tag: queue.tag,
5915 payload: queue.payload,
5916 callback: null,
5917 next: null
5918 };
5919 null === newLast ? newFirst = newLast = clone : newLast = newLast.next = clone;
5920 queue = queue.next;
5921 } while (null !== queue);
5922 null === newLast ? newFirst = newLast = capturedUpdate : newLast = newLast.next = capturedUpdate;
5923 } else newFirst = newLast = capturedUpdate;
5924 queue = {
5925 baseState: current2.baseState,
5926 firstBaseUpdate: newFirst,
5927 lastBaseUpdate: newLast,
5928 shared: current2.shared,
5929 callbacks: current2.callbacks
5930 };
5931 workInProgress2.updateQueue = queue;
5932 return;
5933 }
5934 workInProgress2 = queue.lastBaseUpdate;
5935 null === workInProgress2 ? queue.firstBaseUpdate = capturedUpdate : workInProgress2.next = capturedUpdate;
5936 queue.lastBaseUpdate = capturedUpdate;
5937 }
5938 function suspendIfUpdateReadFromEntangledAsyncAction() {
5939 if (didReadFromEntangledAsyncAction) {
5940 var entangledActionThenable = currentEntangledActionThenable;
5941 if (null !== entangledActionThenable) throw entangledActionThenable;
5942 }
5943 }
5944 function processUpdateQueue(workInProgress2, props, instance$jscomp$0, renderLanes2) {
5945 didReadFromEntangledAsyncAction = false;
5946 var queue = workInProgress2.updateQueue;
5947 hasForceUpdate = false;
5948 currentlyProcessingQueue = queue.shared;
5949 var firstBaseUpdate = queue.firstBaseUpdate, lastBaseUpdate = queue.lastBaseUpdate, pendingQueue = queue.shared.pending;
5950 if (null !== pendingQueue) {
5951 queue.shared.pending = null;
5952 var lastPendingUpdate = pendingQueue, firstPendingUpdate = lastPendingUpdate.next;
5953 lastPendingUpdate.next = null;
5954 null === lastBaseUpdate ? firstBaseUpdate = firstPendingUpdate : lastBaseUpdate.next = firstPendingUpdate;
5955 lastBaseUpdate = lastPendingUpdate;
5956 var current2 = workInProgress2.alternate;
5957 null !== current2 && (current2 = current2.updateQueue, pendingQueue = current2.lastBaseUpdate, pendingQueue !== lastBaseUpdate && (null === pendingQueue ? current2.firstBaseUpdate = firstPendingUpdate : pendingQueue.next = firstPendingUpdate, current2.lastBaseUpdate = lastPendingUpdate));
5958 }
5959 if (null !== firstBaseUpdate) {
5960 var newState = queue.baseState;
5961 lastBaseUpdate = 0;
5962 current2 = firstPendingUpdate = lastPendingUpdate = null;
5963 pendingQueue = firstBaseUpdate;
5964 do {
5965 var updateLane = pendingQueue.lane & -536870913, isHiddenUpdate = updateLane !== pendingQueue.lane;
5966 if (isHiddenUpdate ? (workInProgressRootRenderLanes & updateLane) === updateLane : (renderLanes2 & updateLane) === updateLane) {
5967 0 !== updateLane && updateLane === currentEntangledLane && (didReadFromEntangledAsyncAction = true);
5968 null !== current2 && (current2 = current2.next = {
5969 lane: 0,
5970 tag: pendingQueue.tag,
5971 payload: pendingQueue.payload,
5972 callback: null,
5973 next: null
5974 });
5975 a: {
5976 updateLane = workInProgress2;
5977 var partialState = pendingQueue;
5978 var nextProps = props, instance = instance$jscomp$0;
5979 switch (partialState.tag) {
5980 case ReplaceState:
5981 partialState = partialState.payload;
5982 if ("function" === typeof partialState) {
5983 isDisallowedContextReadInDEV = true;
5984 var nextState = partialState.call(
5985 instance,
5986 newState,
5987 nextProps
5988 );
5989 if (updateLane.mode & StrictLegacyMode) {
5990 setIsStrictModeForDevtools(true);
5991 try {
5992 partialState.call(instance, newState, nextProps);
5993 } finally {
5994 setIsStrictModeForDevtools(false);
5995 }
5996 }
5997 isDisallowedContextReadInDEV = false;
5998 newState = nextState;
5999 break a;
6000 }
6001 newState = partialState;
6002 break a;
6003 case CaptureUpdate:
6004 updateLane.flags = updateLane.flags & -65537 | 128;
6005 case UpdateState:
6006 nextState = partialState.payload;
6007 if ("function" === typeof nextState) {
6008 isDisallowedContextReadInDEV = true;
6009 partialState = nextState.call(
6010 instance,
6011 newState,
6012 nextProps
6013 );
6014 if (updateLane.mode & StrictLegacyMode) {
6015 setIsStrictModeForDevtools(true);
6016 try {
6017 nextState.call(instance, newState, nextProps);
6018 } finally {
6019 setIsStrictModeForDevtools(false);
6020 }
6021 }
6022 isDisallowedContextReadInDEV = false;
6023 } else partialState = nextState;
6024 if (null === partialState || void 0 === partialState) break a;
6025 newState = assign({}, newState, partialState);
6026 break a;
6027 case ForceUpdate:
6028 hasForceUpdate = true;
6029 }
6030 }
6031 updateLane = pendingQueue.callback;
6032 null !== updateLane && (workInProgress2.flags |= 64, isHiddenUpdate && (workInProgress2.flags |= 8192), isHiddenUpdate = queue.callbacks, null === isHiddenUpdate ? queue.callbacks = [updateLane] : isHiddenUpdate.push(updateLane));
6033 } else
6034 isHiddenUpdate = {
6035 lane: updateLane,
6036 tag: pendingQueue.tag,
6037 payload: pendingQueue.payload,
6038 callback: pendingQueue.callback,
6039 next: null
6040 }, null === current2 ? (firstPendingUpdate = current2 = isHiddenUpdate, lastPendingUpdate = newState) : current2 = current2.next = isHiddenUpdate, lastBaseUpdate |= updateLane;
6041 pendingQueue = pendingQueue.next;
6042 if (null === pendingQueue)
6043 if (pendingQueue = queue.shared.pending, null === pendingQueue)
6044 break;
6045 else
6046 isHiddenUpdate = pendingQueue, pendingQueue = isHiddenUpdate.next, isHiddenUpdate.next = null, queue.lastBaseUpdate = isHiddenUpdate, queue.shared.pending = null;
6047 } while (1);
6048 null === current2 && (lastPendingUpdate = newState);
6049 queue.baseState = lastPendingUpdate;
6050 queue.firstBaseUpdate = firstPendingUpdate;
6051 queue.lastBaseUpdate = current2;
6052 null === firstBaseUpdate && (queue.shared.lanes = 0);
6053 workInProgressRootSkippedLanes |= lastBaseUpdate;
6054 workInProgress2.lanes = lastBaseUpdate;
6055 workInProgress2.memoizedState = newState;
6056 }
6057 currentlyProcessingQueue = null;
6058 }
6059 function callCallback(callback, context) {
6060 if ("function" !== typeof callback)
6061 throw Error(
6062 "Invalid argument passed as callback. Expected a function. Instead received: " + callback
6063 );
6064 callback.call(context);
6065 }
6066 function commitHiddenCallbacks(updateQueue, context) {
6067 var hiddenCallbacks = updateQueue.shared.hiddenCallbacks;
6068 if (null !== hiddenCallbacks)
6069 for (updateQueue.shared.hiddenCallbacks = null, updateQueue = 0; updateQueue < hiddenCallbacks.length; updateQueue++)
6070 callCallback(hiddenCallbacks[updateQueue], context);
6071 }
6072 function commitCallbacks(updateQueue, context) {
6073 var callbacks = updateQueue.callbacks;
6074 if (null !== callbacks)
6075 for (updateQueue.callbacks = null, updateQueue = 0; updateQueue < callbacks.length; updateQueue++)
6076 callCallback(callbacks[updateQueue], context);
6077 }
6078 function pushHiddenContext(fiber, context) {
6079 var prevEntangledRenderLanes = entangledRenderLanes;
6080 push(prevEntangledRenderLanesCursor, prevEntangledRenderLanes, fiber);
6081 push(currentTreeHiddenStackCursor, context, fiber);
6082 entangledRenderLanes = prevEntangledRenderLanes | context.baseLanes;
6083 }
6084 function reuseHiddenContextOnStack(fiber) {
6085 push(prevEntangledRenderLanesCursor, entangledRenderLanes, fiber);
6086 push(
6087 currentTreeHiddenStackCursor,
6088 currentTreeHiddenStackCursor.current,
6089 fiber
6090 );
6091 }
6092 function popHiddenContext(fiber) {
6093 entangledRenderLanes = prevEntangledRenderLanesCursor.current;
6094 pop(currentTreeHiddenStackCursor, fiber);
6095 pop(prevEntangledRenderLanesCursor, fiber);
6096 }
6097 function pushPrimaryTreeSuspenseHandler(handler) {
6098 var current2 = handler.alternate;
6099 push(
6100 suspenseStackCursor,
6101 suspenseStackCursor.current & SubtreeSuspenseContextMask,
6102 handler
6103 );
6104 push(suspenseHandlerStackCursor, handler, handler);
6105 null === shellBoundary && (null === current2 || null !== currentTreeHiddenStackCursor.current ? shellBoundary = handler : null !== current2.memoizedState && (shellBoundary = handler));
6106 }
6107 function pushDehydratedActivitySuspenseHandler(fiber) {
6108 push(suspenseStackCursor, suspenseStackCursor.current, fiber);
6109 push(suspenseHandlerStackCursor, fiber, fiber);
6110 null === shellBoundary && (shellBoundary = fiber);
6111 }
6112 function pushOffscreenSuspenseHandler(fiber) {
6113 22 === fiber.tag ? (push(suspenseStackCursor, suspenseStackCursor.current, fiber), push(suspenseHandlerStackCursor, fiber, fiber), null === shellBoundary && (shellBoundary = fiber)) : reuseSuspenseHandlerOnStack(fiber);
6114 }
6115 function reuseSuspenseHandlerOnStack(fiber) {
6116 push(suspenseStackCursor, suspenseStackCursor.current, fiber);
6117 push(
6118 suspenseHandlerStackCursor,
6119 suspenseHandlerStackCursor.current,
6120 fiber
6121 );
6122 }
6123 function popSuspenseHandler(fiber) {
6124 pop(suspenseHandlerStackCursor, fiber);
6125 shellBoundary === fiber && (shellBoundary = null);
6126 pop(suspenseStackCursor, fiber);
6127 }
6128 function pushSuspenseListContext(fiber, newContext) {
6129 push(
6130 suspenseHandlerStackCursor,
6131 suspenseHandlerStackCursor.current,
6132 fiber
6133 );
6134 push(suspenseStackCursor, newContext, fiber);
6135 }
6136 function popSuspenseListContext(fiber) {
6137 pop(suspenseStackCursor, fiber);
6138 pop(suspenseHandlerStackCursor, fiber);
6139 shellBoundary === fiber && (shellBoundary = null);
6140 }
6141 function findFirstSuspended(row) {
6142 for (var node = row; null !== node; ) {
6143 if (13 === node.tag) {
6144 var state = node.memoizedState;
6145 if (null !== state && (state = state.dehydrated, null === state || isSuspenseInstancePending(state) || isSuspenseInstanceFallback(state)))
6146 return node;
6147 } else if (19 === node.tag && "independent" !== node.memoizedProps.revealOrder) {
6148 if (0 !== (node.flags & 128)) return node;
6149 } else if (null !== node.child) {
6150 node.child.return = node;
6151 node = node.child;
6152 continue;
6153 }
6154 if (node === row) break;
6155 for (; null === node.sibling; ) {
6156 if (null === node.return || node.return === row) return null;
6157 node = node.return;
6158 }
6159 node.sibling.return = node.return;
6160 node = node.sibling;
6161 }
6162 return null;
6163 }
6164 function mountHookTypesDev() {
6165 var hookName = currentHookNameInDev;
6166 null === hookTypesDev ? hookTypesDev = [hookName] : hookTypesDev.push(hookName);
6167 }
6168 function updateHookTypesDev() {
6169 var hookName = currentHookNameInDev;
6170 if (null !== hookTypesDev && (hookTypesUpdateIndexDev++, hookTypesDev[hookTypesUpdateIndexDev] !== hookName)) {
6171 var componentName2 = getComponentNameFromFiber(currentlyRenderingFiber);
6172 if (!didWarnAboutMismatchedHooksForComponent.has(componentName2) && (didWarnAboutMismatchedHooksForComponent.add(componentName2), null !== hookTypesDev)) {
6173 for (var table = "", i = 0; i <= hookTypesUpdateIndexDev; i++) {
6174 var oldHookName = hookTypesDev[i], newHookName = i === hookTypesUpdateIndexDev ? hookName : oldHookName;
6175 for (oldHookName = i + 1 + ". " + oldHookName; 30 > oldHookName.length; )
6176 oldHookName += " ";
6177 oldHookName += newHookName + "\n";
6178 table += oldHookName;
6179 }
6180 console.error(
6181 "React has detected a change in the order of Hooks called by %s. This will lead to bugs and errors if not fixed. For more information, read the Rules of Hooks: https://react.dev/link/rules-of-hooks\n\n Previous render Next render\n ------------------------------------------------------\n%s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
6182 componentName2,
6183 table
6184 );
6185 }
6186 }
6187 }
6188 function checkDepsAreArrayDev(deps) {
6189 void 0 === deps || null === deps || isArrayImpl(deps) || console.error(
6190 "%s received a final argument that is not an array (instead, received `%s`). When specified, the final argument must be an array.",
6191 currentHookNameInDev,
6192 typeof deps
6193 );
6194 }
6195 function warnOnUseFormStateInDev() {
6196 var componentName2 = getComponentNameFromFiber(currentlyRenderingFiber);
6197 didWarnAboutUseFormState.has(componentName2) || (didWarnAboutUseFormState.add(componentName2), console.error(
6198 "ReactDOM.useFormState has been renamed to React.useActionState. Please update %s to use React.useActionState.",
6199 componentName2
6200 ));
6201 }
6202 function throwInvalidHookError() {
6203 throw Error(
6204 "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."
6205 );
6206 }
6207 function areHookInputsEqual(nextDeps, prevDeps) {
6208 if (ignorePreviousDependencies) return false;
6209 if (null === prevDeps)
6210 return console.error(
6211 "%s received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.",
6212 currentHookNameInDev
6213 ), false;
6214 nextDeps.length !== prevDeps.length && console.error(
6215 "The final argument passed to %s changed size between renders. The order and size of this array must remain constant.\n\nPrevious: %s\nIncoming: %s",
6216 currentHookNameInDev,
6217 "[" + prevDeps.join(", ") + "]",
6218 "[" + nextDeps.join(", ") + "]"
6219 );
6220 for (var i = 0; i < prevDeps.length && i < nextDeps.length; i++)
6221 if (!objectIs(nextDeps[i], prevDeps[i])) return false;
6222 return true;
6223 }
6224 function renderWithHooks(current2, workInProgress2, Component, props, secondArg, nextRenderLanes) {
6225 renderLanes = nextRenderLanes;
6226 currentlyRenderingFiber = workInProgress2;
6227 hookTypesDev = null !== current2 ? current2._debugHookTypes : null;
6228 hookTypesUpdateIndexDev = -1;
6229 ignorePreviousDependencies = null !== current2 && current2.type !== workInProgress2.type;
6230 if ("[object AsyncFunction]" === Object.prototype.toString.call(Component) || "[object AsyncGeneratorFunction]" === Object.prototype.toString.call(Component))
6231 nextRenderLanes = getComponentNameFromFiber(currentlyRenderingFiber), didWarnAboutAsyncClientComponent.has(nextRenderLanes) || (didWarnAboutAsyncClientComponent.add(nextRenderLanes), console.error(
6232 "%s is an async Client Component. Only Server Components can be async at the moment. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server.",
6233 null === nextRenderLanes ? "An unknown Component" : "<" + nextRenderLanes + ">"
6234 ));
6235 workInProgress2.memoizedState = null;
6236 workInProgress2.updateQueue = null;
6237 workInProgress2.lanes = 0;
6238 ReactSharedInternals.H = null !== current2 && null !== current2.memoizedState ? HooksDispatcherOnUpdateInDEV : null !== hookTypesDev ? HooksDispatcherOnMountWithHookTypesInDEV : HooksDispatcherOnMountInDEV;
6239 shouldDoubleInvokeUserFnsInHooksDEV = nextRenderLanes = (workInProgress2.mode & StrictLegacyMode) !== NoMode;
6240 var children = callComponentInDEV(Component, props, secondArg);
6241 shouldDoubleInvokeUserFnsInHooksDEV = false;
6242 didScheduleRenderPhaseUpdateDuringThisPass && (children = renderWithHooksAgain(
6243 workInProgress2,
6244 Component,
6245 props,
6246 secondArg
6247 ));
6248 if (nextRenderLanes) {
6249 setIsStrictModeForDevtools(true);
6250 try {
6251 children = renderWithHooksAgain(
6252 workInProgress2,
6253 Component,
6254 props,
6255 secondArg
6256 );
6257 } finally {
6258 setIsStrictModeForDevtools(false);
6259 }
6260 }
6261 finishRenderingHooks(current2, workInProgress2);
6262 return children;
6263 }
6264 function finishRenderingHooks(current2, workInProgress2) {
6265 workInProgress2._debugHookTypes = hookTypesDev;
6266 null === workInProgress2.dependencies ? null !== thenableState && (workInProgress2.dependencies = {
6267 lanes: 0,
6268 firstContext: null,
6269 _debugThenableState: thenableState
6270 }) : workInProgress2.dependencies._debugThenableState = thenableState;
6271 var thenableState$jscomp$0 = thenableState;
6272 null !== lastSuspendedFiber && areSameKeyPath(lastSuspendedFiber, workInProgress2) && (null !== thenableState$jscomp$0 || null === lastSuspendedStack || didIssueUseWarning || (didIssueUseWarning = true, console.error(lastSuspendedStack)), lastSuspendedStack = lastSuspendedFiber = null);
6273 ReactSharedInternals.H = ContextOnlyDispatcher;
6274 thenableState$jscomp$0 = null !== currentHook && null !== currentHook.next;
6275 renderLanes = 0;
6276 hookTypesDev = currentHookNameInDev = workInProgressHook = currentHook = currentlyRenderingFiber = null;
6277 hookTypesUpdateIndexDev = -1;
6278 null !== current2 && (current2.flags & 1206910976) !== (workInProgress2.flags & 1206910976) && console.error(
6279 "Internal React error: Expected static flag was missing. Please notify the React team."
6280 );
6281 didScheduleRenderPhaseUpdate = false;
6282 thenableIndexCounter = 0;
6283 thenableState = null;
6284 if (thenableState$jscomp$0)
6285 throw Error(
6286 "Rendered fewer hooks than expected. This may be caused by an accidental early return statement."
6287 );
6288 null === current2 || didReceiveUpdate || (current2 = current2.dependencies, null !== current2 && checkIfContextChanged(current2) && (didReceiveUpdate = true));
6289 needsToResetSuspendedThenableDEV ? (needsToResetSuspendedThenableDEV = false, current2 = true) : current2 = false;
6290 current2 && (workInProgress2 = getComponentNameFromFiber(workInProgress2) || "Unknown", didWarnAboutUseWrappedInTryCatch.has(workInProgress2) || didWarnAboutAsyncClientComponent.has(workInProgress2) || (didWarnAboutUseWrappedInTryCatch.add(workInProgress2), console.error(
6291 "`use` was called from inside a try/catch block. This is not allowed and can lead to unexpected behavior. To handle errors triggered by `use`, wrap your component in a error boundary."
6292 )));
6293 }
6294 function renderWithHooksAgain(workInProgress2, Component, props, secondArg) {
6295 currentlyRenderingFiber = workInProgress2;
6296 var numberOfReRenders = 0;
6297 do {
6298 didScheduleRenderPhaseUpdateDuringThisPass && (thenableState = null);
6299 thenableIndexCounter = 0;
6300 didScheduleRenderPhaseUpdateDuringThisPass = false;
6301 if (numberOfReRenders >= RE_RENDER_LIMIT)
6302 throw Error(
6303 "Too many re-renders. React limits the number of renders to prevent an infinite loop."
6304 );
6305 numberOfReRenders += 1;
6306 ignorePreviousDependencies = false;
6307 workInProgressHook = currentHook = null;
6308 if (null != workInProgress2.updateQueue) {
6309 var children = workInProgress2.updateQueue;
6310 children.lastEffect = null;
6311 children.events = null;
6312 children.stores = null;
6313 null != children.memoCache && (children.memoCache.index = 0);
6314 }
6315 hookTypesUpdateIndexDev = -1;
6316 ReactSharedInternals.H = HooksDispatcherOnRerenderInDEV;
6317 children = callComponentInDEV(Component, props, secondArg);
6318 } while (didScheduleRenderPhaseUpdateDuringThisPass);
6319 return children;
6320 }
6321 function TransitionAwareHostComponent() {
6322 var dispatcher = ReactSharedInternals.H, maybeThenable = dispatcher.useState()[0];
6323 maybeThenable = "function" === typeof maybeThenable.then ? useThenable(maybeThenable) : maybeThenable;
6324 dispatcher = dispatcher.useState()[0];
6325 (null !== currentHook ? currentHook.memoizedState : null) !== dispatcher && (currentlyRenderingFiber.flags |= 1024);
6326 return maybeThenable;
6327 }
6328 function checkDidRenderIdHook() {
6329 var didRenderIdHook = 0 !== localIdCounter;
6330 localIdCounter = 0;
6331 return didRenderIdHook;
6332 }
6333 function bailoutHooks(current2, workInProgress2, lanes) {
6334 workInProgress2.updateQueue = current2.updateQueue;
6335 workInProgress2.flags = (workInProgress2.mode & StrictEffectsMode) !== NoMode ? workInProgress2.flags & -805308421 : workInProgress2.flags & -2053;
6336 current2.lanes &= ~lanes;
6337 }
6338 function resetHooksOnUnwind(workInProgress2) {
6339 if (didScheduleRenderPhaseUpdate) {
6340 for (workInProgress2 = workInProgress2.memoizedState; null !== workInProgress2; ) {
6341 var queue = workInProgress2.queue;
6342 null !== queue && (queue.pending = null);
6343 workInProgress2 = workInProgress2.next;
6344 }
6345 didScheduleRenderPhaseUpdate = false;
6346 }
6347 renderLanes = 0;
6348 hookTypesDev = workInProgressHook = currentHook = currentlyRenderingFiber = null;
6349 hookTypesUpdateIndexDev = -1;
6350 currentHookNameInDev = null;
6351 didScheduleRenderPhaseUpdateDuringThisPass = false;
6352 thenableIndexCounter = localIdCounter = 0;
6353 thenableState = null;
6354 }
6355 function mountWorkInProgressHook() {
6356 var hook = {
6357 memoizedState: null,
6358 baseState: null,
6359 baseQueue: null,
6360 queue: null,
6361 next: null
6362 };
6363 null === workInProgressHook ? currentlyRenderingFiber.memoizedState = workInProgressHook = hook : workInProgressHook = workInProgressHook.next = hook;
6364 return workInProgressHook;
6365 }
6366 function updateWorkInProgressHook() {
6367 if (null === currentHook) {
6368 var nextCurrentHook = currentlyRenderingFiber.alternate;
6369 nextCurrentHook = null !== nextCurrentHook ? nextCurrentHook.memoizedState : null;
6370 } else nextCurrentHook = currentHook.next;
6371 var nextWorkInProgressHook = null === workInProgressHook ? currentlyRenderingFiber.memoizedState : workInProgressHook.next;
6372 if (null !== nextWorkInProgressHook)
6373 workInProgressHook = nextWorkInProgressHook, currentHook = nextCurrentHook;
6374 else {
6375 if (null === nextCurrentHook) {
6376 if (null === currentlyRenderingFiber.alternate)
6377 throw Error(
6378 "Update hook called on initial render. This is likely a bug in React. Please file an issue."
6379 );
6380 throw Error("Rendered more hooks than during the previous render.");
6381 }
6382 currentHook = nextCurrentHook;
6383 nextCurrentHook = {
6384 memoizedState: currentHook.memoizedState,
6385 baseState: currentHook.baseState,
6386 baseQueue: currentHook.baseQueue,
6387 queue: currentHook.queue,
6388 next: null
6389 };
6390 null === workInProgressHook ? currentlyRenderingFiber.memoizedState = workInProgressHook = nextCurrentHook : workInProgressHook = workInProgressHook.next = nextCurrentHook;
6391 }
6392 return workInProgressHook;
6393 }
6394 function createFunctionComponentUpdateQueue() {
6395 return { lastEffect: null, events: null, stores: null, memoCache: null };
6396 }
6397 function useThenable(thenable) {
6398 var index = thenableIndexCounter;
6399 thenableIndexCounter += 1;
6400 null === thenableState && (thenableState = createThenableState());
6401 thenable = trackUsedThenable(
6402 thenableState,
6403 thenable,
6404 index,
6405 currentlyRenderingFiber
6406 );
6407 index = currentlyRenderingFiber;
6408 null === (null === workInProgressHook ? index.memoizedState : workInProgressHook.next) && (index = index.alternate, ReactSharedInternals.H = null !== index && null !== index.memoizedState ? HooksDispatcherOnUpdateInDEV : HooksDispatcherOnMountInDEV);
6409 return thenable;
6410 }
6411 function use(usable) {
6412 if (null !== usable && "object" === typeof usable) {
6413 if ("function" === typeof usable.then) return useThenable(usable);
6414 if (usable.$$typeof === REACT_RECOVERABLE_TYPE) return;
6415 if (usable.$$typeof === REACT_CONTEXT_TYPE) return readContext(usable);
6416 }
6417 throw Error("An unsupported type was passed to use(): " + String(usable));
6418 }
6419 function useMemoCache(size) {
6420 var memoCache = null, updateQueue = currentlyRenderingFiber.updateQueue;
6421 null !== updateQueue && (memoCache = updateQueue.memoCache);
6422 if (null == memoCache) {
6423 var current2 = currentlyRenderingFiber.alternate;
6424 null !== current2 && (current2 = current2.updateQueue, null !== current2 && (current2 = current2.memoCache, null != current2 && (memoCache = {
6425 data: current2.data.map(function(array) {
6426 return array.slice();
6427 }),
6428 index: 0
6429 })));
6430 }
6431 null == memoCache && (memoCache = { data: [], index: 0 });
6432 null === updateQueue && (updateQueue = createFunctionComponentUpdateQueue(), currentlyRenderingFiber.updateQueue = updateQueue);
6433 updateQueue.memoCache = memoCache;
6434 updateQueue = memoCache.data[memoCache.index];
6435 if (void 0 === updateQueue || ignorePreviousDependencies)
6436 for (updateQueue = memoCache.data[memoCache.index] = Array(size), current2 = 0; current2 < size; current2++)
6437 updateQueue[current2] = REACT_MEMO_CACHE_SENTINEL;
6438 else
6439 updateQueue.length !== size && console.error(
6440 "Expected a constant size argument for each invocation of useMemoCache. The previous cache was allocated with size %s but size %s was requested.",
6441 updateQueue.length,
6442 size
6443 );
6444 memoCache.index++;
6445 return updateQueue;
6446 }
6447 function basicStateReducer(state, action) {
6448 return "function" === typeof action ? action(state) : action;
6449 }
6450 function mountReducer(reducer, initialArg, init) {
6451 var hook = mountWorkInProgressHook();
6452 if (void 0 !== init) {
6453 var initialState = init(initialArg);
6454 if (shouldDoubleInvokeUserFnsInHooksDEV) {
6455 setIsStrictModeForDevtools(true);
6456 try {
6457 init(initialArg);
6458 } finally {
6459 setIsStrictModeForDevtools(false);
6460 }
6461 }
6462 } else initialState = initialArg;
6463 hook.memoizedState = hook.baseState = initialState;
6464 reducer = {
6465 pending: null,
6466 lanes: 0,
6467 dispatch: null,
6468 lastRenderedReducer: reducer,
6469 lastRenderedState: initialState
6470 };
6471 hook.queue = reducer;
6472 reducer = reducer.dispatch = dispatchReducerAction.bind(
6473 null,
6474 currentlyRenderingFiber,
6475 reducer
6476 );
6477 return [hook.memoizedState, reducer];
6478 }
6479 function updateReducer(reducer) {
6480 var hook = updateWorkInProgressHook();
6481 return updateReducerImpl(hook, currentHook, reducer);
6482 }
6483 function updateReducerImpl(hook, current2, reducer) {
6484 var queue = hook.queue;
6485 if (null === queue)
6486 throw Error(
6487 "Should have a queue. You are likely calling Hooks conditionally, which is not allowed. (https://react.dev/link/invalid-hook-call)"
6488 );
6489 queue.lastRenderedReducer = reducer;
6490 var baseQueue = hook.baseQueue, pendingQueue = queue.pending;
6491 if (null !== pendingQueue) {
6492 if (null !== baseQueue) {
6493 var baseFirst = baseQueue.next;
6494 baseQueue.next = pendingQueue.next;
6495 pendingQueue.next = baseFirst;
6496 }
6497 current2.baseQueue !== baseQueue && console.error(
6498 "Internal error: Expected work-in-progress queue to be a clone. This is a bug in React."
6499 );
6500 current2.baseQueue = baseQueue = pendingQueue;
6501 queue.pending = null;
6502 }
6503 pendingQueue = hook.baseState;
6504 if (null === baseQueue) hook.memoizedState = pendingQueue;
6505 else {
6506 current2 = baseQueue.next;
6507 var newBaseQueueFirst = baseFirst = null, newBaseQueueLast = null, update = current2, didReadFromEntangledAsyncAction2 = false;
6508 do {
6509 var updateLane = update.lane & -536870913;
6510 if (updateLane !== update.lane ? (workInProgressRootRenderLanes & updateLane) === updateLane : (renderLanes & updateLane) === updateLane) {
6511 var revertLane = update.revertLane;
6512 if (0 === revertLane)
6513 null !== newBaseQueueLast && (newBaseQueueLast = newBaseQueueLast.next = {
6514 lane: 0,
6515 revertLane: 0,
6516 gesture: null,
6517 action: update.action,
6518 hasEagerState: update.hasEagerState,
6519 eagerState: update.eagerState,
6520 next: null
6521 }), updateLane === currentEntangledLane && (didReadFromEntangledAsyncAction2 = true);
6522 else if ((renderLanes & revertLane) === revertLane) {
6523 update = update.next;
6524 revertLane === currentEntangledLane && (didReadFromEntangledAsyncAction2 = true);
6525 continue;
6526 } else
6527 updateLane = {
6528 lane: 0,
6529 revertLane: update.revertLane,
6530 gesture: null,
6531 action: update.action,
6532 hasEagerState: update.hasEagerState,
6533 eagerState: update.eagerState,
6534 next: null
6535 }, null === newBaseQueueLast ? (newBaseQueueFirst = newBaseQueueLast = updateLane, baseFirst = pendingQueue) : newBaseQueueLast = newBaseQueueLast.next = updateLane, currentlyRenderingFiber.lanes |= revertLane, workInProgressRootSkippedLanes |= revertLane;
6536 updateLane = update.action;
6537 shouldDoubleInvokeUserFnsInHooksDEV && reducer(pendingQueue, updateLane);
6538 pendingQueue = update.hasEagerState ? update.eagerState : reducer(pendingQueue, updateLane);
6539 } else
6540 revertLane = {
6541 lane: updateLane,
6542 revertLane: update.revertLane,
6543 gesture: update.gesture,
6544 action: update.action,
6545 hasEagerState: update.hasEagerState,
6546 eagerState: update.eagerState,
6547 next: null
6548 }, null === newBaseQueueLast ? (newBaseQueueFirst = newBaseQueueLast = revertLane, baseFirst = pendingQueue) : newBaseQueueLast = newBaseQueueLast.next = revertLane, currentlyRenderingFiber.lanes |= updateLane, workInProgressRootSkippedLanes |= updateLane;
6549 update = update.next;
6550 } while (null !== update && update !== current2);
6551 null === newBaseQueueLast ? baseFirst = pendingQueue : newBaseQueueLast.next = newBaseQueueFirst;
6552 if (!objectIs(pendingQueue, hook.memoizedState) && (didReceiveUpdate = true, didReadFromEntangledAsyncAction2 && (reducer = currentEntangledActionThenable, null !== reducer)))
6553 throw reducer;
6554 hook.memoizedState = pendingQueue;
6555 hook.baseState = baseFirst;
6556 hook.baseQueue = newBaseQueueLast;
6557 queue.lastRenderedState = pendingQueue;
6558 }
6559 null === baseQueue && (queue.lanes = 0);
6560 return [hook.memoizedState, queue.dispatch];
6561 }
6562 function rerenderReducer(reducer) {
6563 var hook = updateWorkInProgressHook(), queue = hook.queue;
6564 if (null === queue)
6565 throw Error(
6566 "Should have a queue. You are likely calling Hooks conditionally, which is not allowed. (https://react.dev/link/invalid-hook-call)"
6567 );
6568 queue.lastRenderedReducer = reducer;
6569 var dispatch = queue.dispatch, lastRenderPhaseUpdate = queue.pending, newState = hook.memoizedState;
6570 if (null !== lastRenderPhaseUpdate) {
6571 queue.pending = null;
6572 var update = lastRenderPhaseUpdate = lastRenderPhaseUpdate.next;
6573 do
6574 newState = reducer(newState, update.action), update = update.next;
6575 while (update !== lastRenderPhaseUpdate);
6576 objectIs(newState, hook.memoizedState) || (didReceiveUpdate = true);
6577 hook.memoizedState = newState;
6578 null === hook.baseQueue && (hook.baseState = newState);
6579 queue.lastRenderedState = newState;
6580 }
6581 return [newState, dispatch];
6582 }
6583 function mountSyncExternalStore(subscribe, getSnapshot, getServerSnapshot) {
6584 var fiber = currentlyRenderingFiber, hook = mountWorkInProgressHook();
6585 if (isHydrating) {
6586 if (void 0 === getServerSnapshot)
6587 throw Error(
6588 "Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering."
6589 );
6590 var nextSnapshot = getServerSnapshot();
6591 didWarnUncachedGetSnapshot || nextSnapshot === getServerSnapshot() || (console.error(
6592 "The result of getServerSnapshot should be cached to avoid an infinite loop"
6593 ), didWarnUncachedGetSnapshot = true);
6594 } else {
6595 nextSnapshot = getSnapshot();
6596 didWarnUncachedGetSnapshot || (getServerSnapshot = getSnapshot(), objectIs(nextSnapshot, getServerSnapshot) || (console.error(
6597 "The result of getSnapshot should be cached to avoid an infinite loop"
6598 ), didWarnUncachedGetSnapshot = true));
6599 if (null === workInProgressRoot)
6600 throw Error(
6601 "Expected a work-in-progress root. This is a bug in React. Please file an issue."
6602 );
6603 0 !== (workInProgressRootRenderLanes & 127) || pushStoreConsistencyCheck(fiber, getSnapshot, nextSnapshot);
6604 }
6605 hook.memoizedState = nextSnapshot;
6606 getServerSnapshot = { value: nextSnapshot, getSnapshot };
6607 hook.queue = getServerSnapshot;
6608 mountEffect(
6609 subscribeToStore.bind(null, fiber, getServerSnapshot, subscribe),
6610 [subscribe]
6611 );
6612 fiber.flags |= 2048;
6613 pushSimpleEffect(
6614 HasEffect | Passive,
6615 { destroy: void 0 },
6616 updateStoreInstance.bind(
6617 null,
6618 fiber,
6619 getServerSnapshot,
6620 nextSnapshot,
6621 getSnapshot
6622 ),
6623 null
6624 );
6625 return nextSnapshot;
6626 }
6627 function updateSyncExternalStore(subscribe, getSnapshot, getServerSnapshot) {
6628 var fiber = currentlyRenderingFiber, hook = updateWorkInProgressHook(), isHydrating$jscomp$0 = isHydrating;
6629 if (isHydrating$jscomp$0) {
6630 if (void 0 === getServerSnapshot)
6631 throw Error(
6632 "Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering."
6633 );
6634 getServerSnapshot = getServerSnapshot();
6635 } else if (getServerSnapshot = getSnapshot(), !didWarnUncachedGetSnapshot) {
6636 var cachedSnapshot = getSnapshot();
6637 objectIs(getServerSnapshot, cachedSnapshot) || (console.error(
6638 "The result of getSnapshot should be cached to avoid an infinite loop"
6639 ), didWarnUncachedGetSnapshot = true);
6640 }
6641 if (cachedSnapshot = !objectIs(
6642 (currentHook || hook).memoizedState,
6643 getServerSnapshot
6644 ))
6645 hook.memoizedState = getServerSnapshot, didReceiveUpdate = true;
6646 hook = hook.queue;
6647 var create = subscribeToStore.bind(null, fiber, hook, subscribe);
6648 updateEffectImpl(2048, Passive, create, [subscribe]);
6649 subscribe = hook.getSnapshot !== getSnapshot || cachedSnapshot || null !== workInProgressHook && (workInProgressHook.memoizedState.tag & HasEffect) !== NoFlags;
6650 pushSimpleEffect(
6651 subscribe ? HasEffect | Passive : Passive,
6652 { destroy: void 0 },
6653 updateStoreInstance.bind(
6654 null,
6655 fiber,
6656 hook,
6657 getServerSnapshot,
6658 getSnapshot
6659 ),
6660 null
6661 );
6662 if (subscribe) {
6663 fiber.flags |= 2048;
6664 if (null === workInProgressRoot)
6665 throw Error(
6666 "Expected a work-in-progress root. This is a bug in React. Please file an issue."
6667 );
6668 isHydrating$jscomp$0 || 0 !== (renderLanes & 127) || pushStoreConsistencyCheck(fiber, getSnapshot, getServerSnapshot);
6669 }
6670 return getServerSnapshot;
6671 }
6672 function pushStoreConsistencyCheck(fiber, getSnapshot, renderedSnapshot) {
6673 fiber.flags |= 16384;
6674 fiber = { getSnapshot, value: renderedSnapshot };
6675 getSnapshot = currentlyRenderingFiber.updateQueue;
6676 null === getSnapshot ? (getSnapshot = createFunctionComponentUpdateQueue(), currentlyRenderingFiber.updateQueue = getSnapshot, getSnapshot.stores = [fiber]) : (renderedSnapshot = getSnapshot.stores, null === renderedSnapshot ? getSnapshot.stores = [fiber] : renderedSnapshot.push(fiber));
6677 }
6678 function updateStoreInstance(fiber, inst, nextSnapshot, getSnapshot) {
6679 inst.value = nextSnapshot;
6680 inst.getSnapshot = getSnapshot;
6681 checkIfSnapshotChanged(inst) && forceStoreRerender(fiber);
6682 }
6683 function subscribeToStore(fiber, inst, subscribe) {
6684 return subscribe(function() {
6685 checkIfSnapshotChanged(inst) && (startUpdateTimerByLane(2, "updateSyncExternalStore()", fiber), forceStoreRerender(fiber));
6686 });
6687 }
6688 function checkIfSnapshotChanged(inst) {
6689 var latestGetSnapshot = inst.getSnapshot;
6690 inst = inst.value;
6691 try {
6692 var nextValue = latestGetSnapshot();
6693 return !objectIs(inst, nextValue);
6694 } catch (error) {
6695 return true;
6696 }
6697 }
6698 function forceStoreRerender(fiber) {
6699 var root2 = enqueueConcurrentRenderForLane(fiber, 2);
6700 null !== root2 && scheduleUpdateOnFiber(root2, fiber, 2);
6701 }
6702 function mountStateImpl(initialState) {
6703 var hook = mountWorkInProgressHook();
6704 if ("function" === typeof initialState) {
6705 var initialStateInitializer = initialState;
6706 initialState = initialStateInitializer();
6707 if (shouldDoubleInvokeUserFnsInHooksDEV) {
6708 setIsStrictModeForDevtools(true);
6709 try {
6710 initialStateInitializer();
6711 } finally {
6712 setIsStrictModeForDevtools(false);
6713 }
6714 }
6715 }
6716 hook.memoizedState = hook.baseState = initialState;
6717 hook.queue = {
6718 pending: null,
6719 lanes: 0,
6720 dispatch: null,
6721 lastRenderedReducer: basicStateReducer,
6722 lastRenderedState: initialState
6723 };
6724 return hook;
6725 }
6726 function mountState(initialState) {
6727 initialState = mountStateImpl(initialState);
6728 var queue = initialState.queue, dispatch = dispatchSetState.bind(null, currentlyRenderingFiber, queue);
6729 queue.dispatch = dispatch;
6730 return [initialState.memoizedState, dispatch];
6731 }
6732 function mountOptimistic(passthrough) {
6733 var hook = mountWorkInProgressHook();
6734 hook.memoizedState = hook.baseState = passthrough;
6735 var queue = {
6736 pending: null,
6737 lanes: 0,
6738 dispatch: null,
6739 lastRenderedReducer: null,
6740 lastRenderedState: null
6741 };
6742 hook.queue = queue;
6743 hook = dispatchOptimisticSetState.bind(
6744 null,
6745 currentlyRenderingFiber,
6746 true,
6747 queue
6748 );
6749 queue.dispatch = hook;
6750 return [passthrough, hook];
6751 }
6752 function updateOptimistic(passthrough, reducer) {
6753 var hook = updateWorkInProgressHook();
6754 return updateOptimisticImpl(hook, currentHook, passthrough, reducer);
6755 }
6756 function updateOptimisticImpl(hook, current2, passthrough, reducer) {
6757 hook.baseState = passthrough;
6758 return updateReducerImpl(
6759 hook,
6760 currentHook,
6761 "function" === typeof reducer ? reducer : basicStateReducer
6762 );
6763 }
6764 function rerenderOptimistic(passthrough, reducer) {
6765 var hook = updateWorkInProgressHook();
6766 if (null !== currentHook)
6767 return updateOptimisticImpl(hook, currentHook, passthrough, reducer);
6768 hook.baseState = passthrough;
6769 return [passthrough, hook.queue.dispatch];
6770 }
6771 function dispatchActionState(fiber, actionQueue, setPendingState, setState, payload) {
6772 if (isRenderPhaseUpdate(fiber))
6773 throw Error("Cannot update action state while rendering.");
6774 fiber = actionQueue.action;
6775 if (null !== fiber) {
6776 var actionNode = {
6777 payload,
6778 action: fiber,
6779 next: null,
6780 isTransition: true,
6781 status: "pending",
6782 value: null,
6783 reason: null,
6784 listeners: [],
6785 then: function(listener) {
6786 actionNode.listeners.push(listener);
6787 }
6788 };
6789 null !== ReactSharedInternals.T ? setPendingState(true) : actionNode.isTransition = false;
6790 setState(actionNode);
6791 setPendingState = actionQueue.pending;
6792 null === setPendingState ? (actionNode.next = actionQueue.pending = actionNode, runActionStateAction(actionQueue, actionNode)) : (actionNode.next = setPendingState.next, actionQueue.pending = setPendingState.next = actionNode);
6793 }
6794 }
6795 function runActionStateAction(actionQueue, node) {
6796 var action = node.action, payload = node.payload, prevState = actionQueue.state;
6797 if (node.isTransition) {
6798 var prevTransition = ReactSharedInternals.T, currentTransition = {};
6799 currentTransition.types = null !== prevTransition ? prevTransition.types : null;
6800 currentTransition._updatedFibers = /* @__PURE__ */ new Set();
6801 ReactSharedInternals.T = currentTransition;
6802 try {
6803 var returnValue = action(prevState, payload), onStartTransitionFinish = ReactSharedInternals.S;
6804 null !== onStartTransitionFinish && onStartTransitionFinish(currentTransition, returnValue);
6805 handleActionReturnValue(actionQueue, node, returnValue);
6806 } catch (error) {
6807 onActionError(actionQueue, node, error);
6808 } finally {
6809 null !== prevTransition && null !== currentTransition.types && (null !== prevTransition.types && prevTransition.types !== currentTransition.types && console.error(
6810 "We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React."
6811 ), prevTransition.types = currentTransition.types), ReactSharedInternals.T = prevTransition, null === prevTransition && currentTransition._updatedFibers && (actionQueue = currentTransition._updatedFibers.size, currentTransition._updatedFibers.clear(), 10 < actionQueue && console.warn(
6812 "Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."
6813 ));
6814 }
6815 } else
6816 try {
6817 currentTransition = action(prevState, payload), handleActionReturnValue(actionQueue, node, currentTransition);
6818 } catch (error$5) {
6819 onActionError(actionQueue, node, error$5);
6820 }
6821 }
6822 function handleActionReturnValue(actionQueue, node, returnValue) {
6823 null !== returnValue && "object" === typeof returnValue && "function" === typeof returnValue.then ? (ReactSharedInternals.asyncTransitions++, returnValue.then(releaseAsyncTransition, releaseAsyncTransition), returnValue.then(
6824 function(nextState) {
6825 onActionSuccess(actionQueue, node, nextState);
6826 },
6827 function(error) {
6828 return onActionError(actionQueue, node, error);
6829 }
6830 ), node.isTransition || console.error(
6831 "An async function with useActionState was called outside of a transition. This is likely not what you intended (for example, isPending will not update correctly). Either call the returned function inside startTransition, or pass it to an `action` or `formAction` prop."
6832 )) : onActionSuccess(actionQueue, node, returnValue);
6833 }
6834 function onActionSuccess(actionQueue, actionNode, nextState) {
6835 actionNode.status = "fulfilled";
6836 actionNode.value = nextState;
6837 notifyActionListeners(actionNode);
6838 actionQueue.state = nextState;
6839 actionNode = actionQueue.pending;
6840 null !== actionNode && (nextState = actionNode.next, nextState === actionNode ? actionQueue.pending = null : (nextState = nextState.next, actionNode.next = nextState, runActionStateAction(actionQueue, nextState)));
6841 }
6842 function onActionError(actionQueue, actionNode, error) {
6843 var last = actionQueue.pending;
6844 actionQueue.pending = null;
6845 if (null !== last) {
6846 last = last.next;
6847 do
6848 actionNode.status = "rejected", actionNode.reason = error, notifyActionListeners(actionNode), actionNode = actionNode.next;
6849 while (actionNode !== last);
6850 }
6851 actionQueue.action = null;
6852 }
6853 function notifyActionListeners(actionNode) {
6854 actionNode = actionNode.listeners;
6855 for (var i = 0; i < actionNode.length; i++) (0, actionNode[i])();
6856 }
6857 function actionStateReducer(oldState, newState) {
6858 return newState;
6859 }
6860 function mountActionState(action, initialStateProp) {
6861 if (isHydrating) {
6862 var ssrFormState = workInProgressRoot.formState;
6863 if (null !== ssrFormState) {
6864 a: {
6865 var isMatching = currentlyRenderingFiber;
6866 if (isHydrating) {
6867 if (nextHydratableInstance) {
6868 b: {
6869 var markerInstance = nextHydratableInstance;
6870 for (var inRootOrSingleton = rootOrSingletonContext; 8 !== markerInstance.nodeType; ) {
6871 if (!inRootOrSingleton) {
6872 markerInstance = null;
6873 break b;
6874 }
6875 markerInstance = getNextHydratable(
6876 markerInstance.nextSibling
6877 );
6878 if (null === markerInstance) {
6879 markerInstance = null;
6880 break b;
6881 }
6882 }
6883 inRootOrSingleton = markerInstance.data;
6884 markerInstance = inRootOrSingleton === FORM_STATE_IS_MATCHING || inRootOrSingleton === FORM_STATE_IS_NOT_MATCHING ? markerInstance : null;
6885 }
6886 if (markerInstance) {
6887 nextHydratableInstance = getNextHydratable(
6888 markerInstance.nextSibling
6889 );
6890 isMatching = markerInstance.data === FORM_STATE_IS_MATCHING;
6891 break a;
6892 }
6893 }
6894 throwOnHydrationMismatch(isMatching);
6895 }
6896 isMatching = false;
6897 }
6898 isMatching && (initialStateProp = ssrFormState[0]);
6899 }
6900 }
6901 ssrFormState = mountWorkInProgressHook();
6902 ssrFormState.memoizedState = ssrFormState.baseState = initialStateProp;
6903 isMatching = {
6904 pending: null,
6905 lanes: 0,
6906 dispatch: null,
6907 lastRenderedReducer: actionStateReducer,
6908 lastRenderedState: initialStateProp
6909 };
6910 ssrFormState.queue = isMatching;
6911 ssrFormState = dispatchSetState.bind(
6912 null,
6913 currentlyRenderingFiber,
6914 isMatching
6915 );
6916 isMatching.dispatch = ssrFormState;
6917 isMatching = mountStateImpl(false);
6918 inRootOrSingleton = dispatchOptimisticSetState.bind(
6919 null,
6920 currentlyRenderingFiber,
6921 false,
6922 isMatching.queue
6923 );
6924 isMatching = mountWorkInProgressHook();
6925 markerInstance = {
6926 state: initialStateProp,
6927 dispatch: null,
6928 action,
6929 pending: null
6930 };
6931 isMatching.queue = markerInstance;
6932 ssrFormState = dispatchActionState.bind(
6933 null,
6934 currentlyRenderingFiber,
6935 markerInstance,
6936 inRootOrSingleton,
6937 ssrFormState
6938 );
6939 markerInstance.dispatch = ssrFormState;
6940 isMatching.memoizedState = action;
6941 return [initialStateProp, ssrFormState, false];
6942 }
6943 function updateActionState(action) {
6944 var stateHook = updateWorkInProgressHook();
6945 return updateActionStateImpl(stateHook, currentHook, action);
6946 }
6947 function updateActionStateImpl(stateHook, currentStateHook, action) {
6948 currentStateHook = updateReducerImpl(
6949 stateHook,
6950 currentStateHook,
6951 actionStateReducer
6952 )[0];
6953 stateHook = updateReducer(basicStateReducer)[0];
6954 if ("object" === typeof currentStateHook && null !== currentStateHook && "function" === typeof currentStateHook.then)
6955 try {
6956 var state = useThenable(currentStateHook);
6957 } catch (x) {
6958 if (x === SuspenseException) throw SuspenseActionException;
6959 throw x;
6960 }
6961 else state = currentStateHook;
6962 currentStateHook = updateWorkInProgressHook();
6963 var actionQueue = currentStateHook.queue, dispatch = actionQueue.dispatch;
6964 action !== currentStateHook.memoizedState && (currentlyRenderingFiber.flags |= 2048, pushSimpleEffect(
6965 HasEffect | Passive,
6966 { destroy: void 0 },
6967 actionStateActionEffect.bind(null, actionQueue, action),
6968 null
6969 ));
6970 return [state, dispatch, stateHook];
6971 }
6972 function actionStateActionEffect(actionQueue, action) {
6973 actionQueue.action = action;
6974 }
6975 function rerenderActionState(action) {
6976 var stateHook = updateWorkInProgressHook(), currentStateHook = currentHook;
6977 if (null !== currentStateHook)
6978 return updateActionStateImpl(stateHook, currentStateHook, action);
6979 updateWorkInProgressHook();
6980 stateHook = stateHook.memoizedState;
6981 currentStateHook = updateWorkInProgressHook();
6982 var dispatch = currentStateHook.queue.dispatch;
6983 currentStateHook.memoizedState = action;
6984 return [stateHook, dispatch, false];
6985 }
6986 function pushSimpleEffect(tag, inst, create, deps) {
6987 tag = { tag, create, deps, inst, next: null };
6988 inst = currentlyRenderingFiber.updateQueue;
6989 null === inst && (inst = createFunctionComponentUpdateQueue(), currentlyRenderingFiber.updateQueue = inst);
6990 create = inst.lastEffect;
6991 null === create ? inst.lastEffect = tag.next = tag : (deps = create.next, create.next = tag, tag.next = deps, inst.lastEffect = tag);
6992 return tag;
6993 }
6994 function mountRef(initialValue) {
6995 var hook = mountWorkInProgressHook();
6996 initialValue = { current: initialValue };
6997 return hook.memoizedState = initialValue;
6998 }
6999 function mountEffectImpl(fiberFlags, hookFlags, create, deps) {
7000 var hook = mountWorkInProgressHook();
7001 currentlyRenderingFiber.flags |= fiberFlags;
7002 hook.memoizedState = pushSimpleEffect(
7003 HasEffect | hookFlags,
7004 { destroy: void 0 },
7005 create,
7006 void 0 === deps ? null : deps
7007 );
7008 }
7009 function updateEffectImpl(fiberFlags, hookFlags, create, deps) {
7010 var hook = updateWorkInProgressHook();
7011 deps = void 0 === deps ? null : deps;
7012 var inst = hook.memoizedState.inst;
7013 null !== currentHook && null !== deps && areHookInputsEqual(deps, currentHook.memoizedState.deps) ? hook.memoizedState = pushSimpleEffect(hookFlags, inst, create, deps) : (currentlyRenderingFiber.flags |= fiberFlags, hook.memoizedState = pushSimpleEffect(
7014 HasEffect | hookFlags,
7015 inst,
7016 create,
7017 deps
7018 ));
7019 }
7020 function mountEffect(create, deps) {
7021 (currentlyRenderingFiber.mode & StrictEffectsMode) !== NoMode ? mountEffectImpl(545261568, Passive, create, deps) : mountEffectImpl(8390656, Passive, create, deps);
7022 }
7023 function useEffectEventImpl(payload) {
7024 currentlyRenderingFiber.flags |= 4;
7025 var componentUpdateQueue = currentlyRenderingFiber.updateQueue;
7026 if (null === componentUpdateQueue)
7027 componentUpdateQueue = createFunctionComponentUpdateQueue(), currentlyRenderingFiber.updateQueue = componentUpdateQueue, componentUpdateQueue.events = [payload];
7028 else {
7029 var events = componentUpdateQueue.events;
7030 null === events ? componentUpdateQueue.events = [payload] : events.push(payload);
7031 }
7032 }
7033 function mountEvent(callback) {
7034 var hook = mountWorkInProgressHook(), ref = { impl: callback };
7035 hook.memoizedState = ref;
7036 return function() {
7037 if ((executionContext & RenderContext) !== NoContext)
7038 throw Error(
7039 "A function wrapped in useEffectEvent can't be called during rendering."
7040 );
7041 return ref.impl.apply(void 0, arguments);
7042 };
7043 }
7044 function updateEvent(callback) {
7045 var ref = updateWorkInProgressHook().memoizedState;
7046 useEffectEventImpl({ ref, nextImpl: callback });
7047 return function() {
7048 if ((executionContext & RenderContext) !== NoContext)
7049 throw Error(
7050 "A function wrapped in useEffectEvent can't be called during rendering."
7051 );
7052 return ref.impl.apply(void 0, arguments);
7053 };
7054 }
7055 function mountLayoutEffect(create, deps) {
7056 var fiberFlags = 4194308;
7057 (currentlyRenderingFiber.mode & StrictEffectsMode) !== NoMode && (fiberFlags |= 268435456);
7058 return mountEffectImpl(fiberFlags, Layout, create, deps);
7059 }
7060 function imperativeHandleEffect(create, ref) {
7061 if ("function" === typeof ref) {
7062 create = create();
7063 var refCleanup = ref(create);
7064 return function() {
7065 "function" === typeof refCleanup ? refCleanup() : ref(null);
7066 };
7067 }
7068 if (null !== ref && void 0 !== ref)
7069 return ref.hasOwnProperty("current") || console.error(
7070 "Expected useImperativeHandle() first argument to either be a ref callback or React.createRef() object. Instead received: %s.",
7071 "an object with keys {" + Object.keys(ref).join(", ") + "}"
7072 ), create = create(), ref.current = create, function() {
7073 ref.current = null;
7074 };
7075 }
7076 function mountImperativeHandle(ref, create, deps) {
7077 "function" !== typeof create && console.error(
7078 "Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.",
7079 null !== create ? typeof create : "null"
7080 );
7081 deps = null !== deps && void 0 !== deps ? deps.concat([ref]) : null;
7082 var fiberFlags = 4194308;
7083 (currentlyRenderingFiber.mode & StrictEffectsMode) !== NoMode && (fiberFlags |= 268435456);
7084 mountEffectImpl(
7085 fiberFlags,
7086 Layout,
7087 imperativeHandleEffect.bind(null, create, ref),
7088 deps
7089 );
7090 }
7091 function updateImperativeHandle(ref, create, deps) {
7092 "function" !== typeof create && console.error(
7093 "Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.",
7094 null !== create ? typeof create : "null"
7095 );
7096 deps = null !== deps && void 0 !== deps ? deps.concat([ref]) : null;
7097 updateEffectImpl(
7098 4,
7099 Layout,
7100 imperativeHandleEffect.bind(null, create, ref),
7101 deps
7102 );
7103 }
7104 function mountCallback(callback, deps) {
7105 mountWorkInProgressHook().memoizedState = [
7106 callback,
7107 void 0 === deps ? null : deps
7108 ];
7109 return callback;
7110 }
7111 function updateCallback(callback, deps) {
7112 var hook = updateWorkInProgressHook();
7113 deps = void 0 === deps ? null : deps;
7114 var prevState = hook.memoizedState;
7115 if (null !== deps && areHookInputsEqual(deps, prevState[1]))
7116 return prevState[0];
7117 hook.memoizedState = [callback, deps];
7118 return callback;
7119 }
7120 function mountMemo(nextCreate, deps) {
7121 var hook = mountWorkInProgressHook();
7122 deps = void 0 === deps ? null : deps;
7123 var nextValue = nextCreate();
7124 if (shouldDoubleInvokeUserFnsInHooksDEV) {
7125 setIsStrictModeForDevtools(true);
7126 try {
7127 nextCreate();
7128 } finally {
7129 setIsStrictModeForDevtools(false);
7130 }
7131 }
7132 hook.memoizedState = [nextValue, deps];
7133 return nextValue;
7134 }
7135 function updateMemo(nextCreate, deps) {
7136 var hook = updateWorkInProgressHook();
7137 deps = void 0 === deps ? null : deps;
7138 var prevState = hook.memoizedState;
7139 if (null !== deps && areHookInputsEqual(deps, prevState[1]))
7140 return prevState[0];
7141 prevState = nextCreate();
7142 if (shouldDoubleInvokeUserFnsInHooksDEV) {
7143 setIsStrictModeForDevtools(true);
7144 try {
7145 nextCreate();
7146 } finally {
7147 setIsStrictModeForDevtools(false);
7148 }
7149 }
7150 hook.memoizedState = [prevState, deps];
7151 return prevState;
7152 }
7153 function mountDeferredValue(value, initialValue) {
7154 var hook = mountWorkInProgressHook();
7155 return mountDeferredValueImpl(hook, value, initialValue);
7156 }
7157 function updateDeferredValue(value, initialValue) {
7158 var hook = updateWorkInProgressHook();
7159 return updateDeferredValueImpl(
7160 hook,
7161 currentHook.memoizedState,
7162 value,
7163 initialValue
7164 );
7165 }
7166 function rerenderDeferredValue(value, initialValue) {
7167 var hook = updateWorkInProgressHook();
7168 return null === currentHook ? mountDeferredValueImpl(hook, value, initialValue) : updateDeferredValueImpl(
7169 hook,
7170 currentHook.memoizedState,
7171 value,
7172 initialValue
7173 );
7174 }
7175 function mountDeferredValueImpl(hook, value, initialValue) {
7176 if (void 0 === initialValue || 0 !== (renderLanes & 1073741824) && 0 === (workInProgressRootRenderLanes & 261930))
7177 return hook.memoizedState = value;
7178 hook.memoizedState = initialValue;
7179 hook = requestDeferredLane();
7180 currentlyRenderingFiber.lanes |= hook;
7181 workInProgressRootSkippedLanes |= hook;
7182 return initialValue;
7183 }
7184 function updateDeferredValueImpl(hook, prevValue, value, initialValue) {
7185 if (objectIs(value, prevValue)) return value;
7186 if (null !== currentTreeHiddenStackCursor.current)
7187 return hook = mountDeferredValueImpl(hook, value, initialValue), objectIs(hook, prevValue) || (didReceiveUpdate = true), hook;
7188 if (0 === (renderLanes & 106) || 0 !== (renderLanes & 1073741824) && 0 === (workInProgressRootRenderLanes & 261930))
7189 return didReceiveUpdate = true, hook.memoizedState = value;
7190 hook = requestDeferredLane();
7191 currentlyRenderingFiber.lanes |= hook;
7192 workInProgressRootSkippedLanes |= hook;
7193 return prevValue;
7194 }
7195 function releaseAsyncTransition() {
7196 ReactSharedInternals.asyncTransitions--;
7197 }
7198 function startTransition(fiber, queue, pendingState, finishedState, callback) {
7199 var previousPriority = ReactDOMSharedInternals.p;
7200 ReactDOMSharedInternals.p = 0 !== previousPriority && previousPriority < ContinuousEventPriority ? previousPriority : ContinuousEventPriority;
7201 var prevTransition = ReactSharedInternals.T, currentTransition = {};
7202 currentTransition.types = null !== prevTransition ? prevTransition.types : null;
7203 currentTransition._updatedFibers = /* @__PURE__ */ new Set();
7204 ReactSharedInternals.T = currentTransition;
7205 dispatchOptimisticSetState(fiber, false, queue, pendingState);
7206 try {
7207 var returnValue = callback(), onStartTransitionFinish = ReactSharedInternals.S;
7208 null !== onStartTransitionFinish && onStartTransitionFinish(currentTransition, returnValue);
7209 if (null !== returnValue && "object" === typeof returnValue && "function" === typeof returnValue.then) {
7210 ReactSharedInternals.asyncTransitions++;
7211 returnValue.then(releaseAsyncTransition, releaseAsyncTransition);
7212 var thenableForFinishedState = chainThenableValue(
7213 returnValue,
7214 finishedState
7215 );
7216 dispatchSetStateInternal(
7217 fiber,
7218 queue,
7219 thenableForFinishedState,
7220 requestUpdateLane(fiber)
7221 );
7222 } else
7223 dispatchSetStateInternal(
7224 fiber,
7225 queue,
7226 finishedState,
7227 requestUpdateLane(fiber)
7228 );
7229 } catch (error) {
7230 dispatchSetStateInternal(
7231 fiber,
7232 queue,
7233 { then: function() {
7234 }, status: "rejected", reason: error },
7235 requestUpdateLane(fiber)
7236 );
7237 } finally {
7238 ReactDOMSharedInternals.p = previousPriority, null !== prevTransition && null !== currentTransition.types && (null !== prevTransition.types && prevTransition.types !== currentTransition.types && console.error(
7239 "We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React."
7240 ), prevTransition.types = currentTransition.types), ReactSharedInternals.T = prevTransition, null === prevTransition && currentTransition._updatedFibers && (fiber = currentTransition._updatedFibers.size, currentTransition._updatedFibers.clear(), 10 < fiber && console.warn(
7241 "Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."
7242 ));
7243 }
7244 }
7245 function startHostTransition(formFiber, pendingState, action, formData) {
7246 if (5 !== formFiber.tag)
7247 throw Error(
7248 "Expected the form instance to be a HostComponent. This is a bug in React."
7249 );
7250 var queue = ensureFormComponentIsStateful(formFiber).queue;
7251 startHostActionTimer(formFiber);
7252 startTransition(
7253 formFiber,
7254 queue,
7255 pendingState,
7256 NotPendingTransition,
7257 null === action ? noop : function() {
7258 requestFormReset$1(formFiber);
7259 return action(formData);
7260 }
7261 );
7262 }
7263 function ensureFormComponentIsStateful(formFiber) {
7264 var existingStateHook = formFiber.memoizedState;
7265 if (null !== existingStateHook) return existingStateHook;
7266 existingStateHook = {
7267 memoizedState: NotPendingTransition,
7268 baseState: NotPendingTransition,
7269 baseQueue: null,
7270 queue: {
7271 pending: null,
7272 lanes: 0,
7273 dispatch: null,
7274 lastRenderedReducer: basicStateReducer,
7275 lastRenderedState: NotPendingTransition
7276 },
7277 next: null
7278 };
7279 var initialResetState = {};
7280 existingStateHook.next = {
7281 memoizedState: initialResetState,
7282 baseState: initialResetState,
7283 baseQueue: null,
7284 queue: {
7285 pending: null,
7286 lanes: 0,
7287 dispatch: null,
7288 lastRenderedReducer: basicStateReducer,
7289 lastRenderedState: initialResetState
7290 },
7291 next: null
7292 };
7293 formFiber.memoizedState = existingStateHook;
7294 formFiber = formFiber.alternate;
7295 null !== formFiber && (formFiber.memoizedState = existingStateHook);
7296 return existingStateHook;
7297 }
7298 function requestFormReset$1(formFiber) {
7299 null === ReactSharedInternals.T && console.error(
7300 "requestFormReset was called outside a transition or action. To fix, move to an action, or wrap with startTransition."
7301 );
7302 var stateHook = ensureFormComponentIsStateful(formFiber);
7303 null === stateHook.next && (stateHook = formFiber.alternate.memoizedState);
7304 dispatchSetStateInternal(
7305 formFiber,
7306 stateHook.next.queue,
7307 {},
7308 requestUpdateLane(formFiber)
7309 );
7310 }
7311 function mountTransition() {
7312 var stateHook = mountStateImpl(false);
7313 stateHook = startTransition.bind(
7314 null,
7315 currentlyRenderingFiber,
7316 stateHook.queue,
7317 true,
7318 false
7319 );
7320 mountWorkInProgressHook().memoizedState = stateHook;
7321 return [false, stateHook];
7322 }
7323 function updateTransition() {
7324 var booleanOrThenable = updateReducer(basicStateReducer)[0], start = updateWorkInProgressHook().memoizedState;
7325 return [
7326 "boolean" === typeof booleanOrThenable ? booleanOrThenable : useThenable(booleanOrThenable),
7327 start
7328 ];
7329 }
7330 function rerenderTransition() {
7331 var booleanOrThenable = rerenderReducer(basicStateReducer)[0], start = updateWorkInProgressHook().memoizedState;
7332 return [
7333 "boolean" === typeof booleanOrThenable ? booleanOrThenable : useThenable(booleanOrThenable),
7334 start
7335 ];
7336 }
7337 function useHostTransitionStatus() {
7338 return readContext(HostTransitionContext);
7339 }
7340 function mountId() {
7341 var hook = mountWorkInProgressHook(), identifierPrefix = workInProgressRoot.identifierPrefix;
7342 if (isHydrating) {
7343 var treeId = treeContextOverflow;
7344 var idWithLeadingBit = treeContextId;
7345 treeId = (idWithLeadingBit & ~(1 << 32 - clz32(idWithLeadingBit) - 1)).toString(32) + treeId;
7346 identifierPrefix = "_" + identifierPrefix + "R_" + treeId;
7347 treeId = localIdCounter++;
7348 0 < treeId && (identifierPrefix += "H" + treeId.toString(32));
7349 identifierPrefix += "_";
7350 } else
7351 treeId = globalClientIdCounter++, identifierPrefix = "_" + identifierPrefix + "r_" + treeId.toString(32) + "_";
7352 return hook.memoizedState = identifierPrefix;
7353 }
7354 function mountRefresh() {
7355 return mountWorkInProgressHook().memoizedState = refreshCache.bind(
7356 null,
7357 currentlyRenderingFiber
7358 );
7359 }
7360 function refreshCache(fiber, seedKey) {
7361 for (var provider = fiber.return; null !== provider; ) {
7362 switch (provider.tag) {
7363 case 24:
7364 case 3:
7365 var lane = requestUpdateLane(provider), refreshUpdate = createUpdate(lane), root2 = enqueueUpdate(provider, refreshUpdate, lane);
7366 null !== root2 && (startUpdateTimerByLane(lane, "refresh()", fiber), scheduleUpdateOnFiber(root2, provider, lane), entangleTransitions(root2, provider, lane));
7367 fiber = createCache();
7368 null !== seedKey && void 0 !== seedKey && null !== root2 && console.error(
7369 "The seed argument is not enabled outside experimental channels."
7370 );
7371 refreshUpdate.payload = { cache: fiber };
7372 return;
7373 }
7374 provider = provider.return;
7375 }
7376 }
7377 function dispatchReducerAction(fiber, queue, action) {
7378 var args = arguments;
7379 "function" === typeof args[3] && console.error(
7380 "State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect()."
7381 );
7382 args = requestUpdateLane(fiber);
7383 var update = {
7384 lane: args,
7385 revertLane: 0,
7386 gesture: null,
7387 action,
7388 hasEagerState: false,
7389 eagerState: null,
7390 next: null
7391 };
7392 isRenderPhaseUpdate(fiber) ? enqueueRenderPhaseUpdate(queue, update) : (update = enqueueConcurrentHookUpdate(fiber, queue, update, args), null !== update && (startUpdateTimerByLane(args, "dispatch()", fiber), scheduleUpdateOnFiber(update, fiber, args), entangleTransitionUpdate(update, queue, args)));
7393 }
7394 function dispatchSetState(fiber, queue, action) {
7395 var args = arguments;
7396 "function" === typeof args[3] && console.error(
7397 "State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect()."
7398 );
7399 args = requestUpdateLane(fiber);
7400 dispatchSetStateInternal(fiber, queue, action, args) && startUpdateTimerByLane(args, "setState()", fiber);
7401 }
7402 function dispatchSetStateInternal(fiber, queue, action, lane) {
7403 var update = {
7404 lane,
7405 revertLane: 0,
7406 gesture: null,
7407 action,
7408 hasEagerState: false,
7409 eagerState: null,
7410 next: null
7411 };
7412 if (isRenderPhaseUpdate(fiber)) enqueueRenderPhaseUpdate(queue, update);
7413 else {
7414 var alternate = fiber.alternate;
7415 if (0 === fiber.lanes && (null === alternate || 0 === alternate.lanes) && (alternate = queue.lastRenderedReducer, null !== alternate)) {
7416 var prevDispatcher = ReactSharedInternals.H;
7417 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
7418 try {
7419 var currentState = queue.lastRenderedState, eagerState = alternate(currentState, action);
7420 update.hasEagerState = true;
7421 update.eagerState = eagerState;
7422 if (objectIs(eagerState, currentState))
7423 return enqueueUpdate$1(fiber, queue, update, 0), null === workInProgressRoot && finishQueueingConcurrentUpdates(), false;
7424 } catch (error) {
7425 } finally {
7426 ReactSharedInternals.H = prevDispatcher;
7427 }
7428 }
7429 action = enqueueConcurrentHookUpdate(fiber, queue, update, lane);
7430 if (null !== action)
7431 return scheduleUpdateOnFiber(action, fiber, lane), entangleTransitionUpdate(action, queue, lane), true;
7432 }
7433 return false;
7434 }
7435 function dispatchOptimisticSetState(fiber, throwIfDuringRender, queue, action) {
7436 null === ReactSharedInternals.T && 0 === currentEntangledLane && console.error(
7437 "An optimistic state update occurred outside a transition or action. To fix, move the update to an action, or wrap with startTransition."
7438 );
7439 action = {
7440 lane: 2,
7441 revertLane: requestTransitionLane(),
7442 gesture: null,
7443 action,
7444 hasEagerState: false,
7445 eagerState: null,
7446 next: null
7447 };
7448 if (isRenderPhaseUpdate(fiber)) {
7449 if (throwIfDuringRender)
7450 throw Error("Cannot update optimistic state while rendering.");
7451 console.error("Cannot call startTransition while rendering.");
7452 } else
7453 throwIfDuringRender = enqueueConcurrentHookUpdate(
7454 fiber,
7455 queue,
7456 action,
7457 2
7458 ), null !== throwIfDuringRender && (startUpdateTimerByLane(2, "setOptimistic()", fiber), scheduleUpdateOnFiber(throwIfDuringRender, fiber, 2));
7459 }
7460 function isRenderPhaseUpdate(fiber) {
7461 var alternate = fiber.alternate;
7462 return fiber === currentlyRenderingFiber || null !== alternate && alternate === currentlyRenderingFiber;
7463 }
7464 function enqueueRenderPhaseUpdate(queue, update) {
7465 didScheduleRenderPhaseUpdateDuringThisPass = didScheduleRenderPhaseUpdate = true;
7466 var pending = queue.pending;
7467 null === pending ? update.next = update : (update.next = pending.next, pending.next = update);
7468 queue.pending = update;
7469 }
7470 function entangleTransitionUpdate(root2, queue, lane) {
7471 if (0 !== (lane & 4194048)) {
7472 var queueLanes = queue.lanes;
7473 queueLanes &= root2.pendingLanes;
7474 lane |= queueLanes;
7475 queue.lanes = lane;
7476 markRootEntangled(root2, lane);
7477 }
7478 }
7479 function warnOnInvalidCallback(callback) {
7480 if (null !== callback && "function" !== typeof callback) {
7481 var key = String(callback);
7482 didWarnOnInvalidCallback.has(key) || (didWarnOnInvalidCallback.add(key), console.error(
7483 "Expected the last optional `callback` argument to be a function. Instead received: %s.",
7484 callback
7485 ));
7486 }
7487 }
7488 function applyDerivedStateFromProps(workInProgress2, ctor, getDerivedStateFromProps, nextProps) {
7489 var prevState = workInProgress2.memoizedState, partialState = getDerivedStateFromProps(nextProps, prevState);
7490 if (workInProgress2.mode & StrictLegacyMode) {
7491 setIsStrictModeForDevtools(true);
7492 try {
7493 partialState = getDerivedStateFromProps(nextProps, prevState);
7494 } finally {
7495 setIsStrictModeForDevtools(false);
7496 }
7497 }
7498 void 0 === partialState && (ctor = getComponentNameFromType(ctor) || "Component", didWarnAboutUndefinedDerivedState.has(ctor) || (didWarnAboutUndefinedDerivedState.add(ctor), console.error(
7499 "%s.getDerivedStateFromProps(): A valid state object (or null) must be returned. You have returned undefined.",
7500 ctor
7501 )));
7502 prevState = null === partialState || void 0 === partialState ? prevState : assign({}, prevState, partialState);
7503 workInProgress2.memoizedState = prevState;
7504 0 === workInProgress2.lanes && (workInProgress2.updateQueue.baseState = prevState);
7505 }
7506 function checkShouldComponentUpdate(workInProgress2, ctor, oldProps, newProps, oldState, newState, nextContext) {
7507 var instance = workInProgress2.stateNode;
7508 if ("function" === typeof instance.shouldComponentUpdate) {
7509 oldProps = instance.shouldComponentUpdate(
7510 newProps,
7511 newState,
7512 nextContext
7513 );
7514 if (workInProgress2.mode & StrictLegacyMode) {
7515 setIsStrictModeForDevtools(true);
7516 try {
7517 oldProps = instance.shouldComponentUpdate(
7518 newProps,
7519 newState,
7520 nextContext
7521 );
7522 } finally {
7523 setIsStrictModeForDevtools(false);
7524 }
7525 }
7526 void 0 === oldProps && console.error(
7527 "%s.shouldComponentUpdate(): Returned undefined instead of a boolean value. Make sure to return true or false.",
7528 getComponentNameFromType(ctor) || "Component"
7529 );
7530 return oldProps;
7531 }
7532 return ctor.prototype && ctor.prototype.isPureReactComponent ? !shallowEqual(oldProps, newProps) || !shallowEqual(oldState, newState) : true;
7533 }
7534 function callComponentWillReceiveProps(workInProgress2, instance, newProps, nextContext) {
7535 var oldState = instance.state;
7536 "function" === typeof instance.componentWillReceiveProps && instance.componentWillReceiveProps(newProps, nextContext);
7537 "function" === typeof instance.UNSAFE_componentWillReceiveProps && instance.UNSAFE_componentWillReceiveProps(newProps, nextContext);
7538 instance.state !== oldState && (workInProgress2 = getComponentNameFromFiber(workInProgress2) || "Component", didWarnAboutStateAssignmentForComponent.has(workInProgress2) || (didWarnAboutStateAssignmentForComponent.add(workInProgress2), console.error(
7539 "%s.componentWillReceiveProps(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.",
7540 workInProgress2
7541 )), classComponentUpdater.enqueueReplaceState(
7542 instance,
7543 instance.state,
7544 null
7545 ));
7546 }
7547 function resolveClassComponentProps(Component, baseProps) {
7548 var newProps = baseProps;
7549 if ("ref" in baseProps) {
7550 newProps = {};
7551 for (var propName in baseProps)
7552 "ref" !== propName && (newProps[propName] = baseProps[propName]);
7553 }
7554 if (Component = Component.defaultProps) {
7555 newProps === baseProps && (newProps = assign({}, newProps));
7556 for (var _propName in Component)
7557 void 0 === newProps[_propName] && (newProps[_propName] = Component[_propName]);
7558 }
7559 return newProps;
7560 }
7561 function defaultOnUncaughtError(error) {
7562 reportGlobalError(error);
7563 console.warn(
7564 "%s\n\n%s\n",
7565 componentName ? "An error occurred in the <" + componentName + "> component." : "An error occurred in one of your React components.",
7566 "Consider adding an error boundary to your tree to customize error handling behavior.\nVisit https://react.dev/link/error-boundaries to learn more about error boundaries."
7567 );
7568 }
7569 function defaultOnCaughtError(error) {
7570 var componentNameMessage = componentName ? "The above error occurred in the <" + componentName + "> component." : "The above error occurred in one of your React components.", recreateMessage = "React will try to recreate this component tree from scratch using the error boundary you provided, " + ((errorBoundaryName || "Anonymous") + ".");
7571 if ("object" === typeof error && null !== error && "string" === typeof error.environmentName) {
7572 var JSCompiler_inline_result = error.environmentName;
7573 error = [
7574 "%o\n\n%s\n\n%s\n",
7575 error,
7576 componentNameMessage,
7577 recreateMessage
7578 ].slice(0);
7579 "string" === typeof error[0] ? error.splice(
7580 0,
7581 1,
7582 badgeFormat + " " + error[0],
7583 badgeStyle,
7584 pad + JSCompiler_inline_result + pad,
7585 resetStyle
7586 ) : error.splice(
7587 0,
7588 0,
7589 badgeFormat,
7590 badgeStyle,
7591 pad + JSCompiler_inline_result + pad,
7592 resetStyle
7593 );
7594 error.unshift(console);
7595 JSCompiler_inline_result = bind.apply(console.error, error);
7596 JSCompiler_inline_result();
7597 } else
7598 console.error(
7599 "%o\n\n%s\n\n%s\n",
7600 error,
7601 componentNameMessage,
7602 recreateMessage
7603 );
7604 }
7605 function defaultOnRecoverableError(error) {
7606 reportGlobalError(error);
7607 }
7608 function logUncaughtError(root2, errorInfo) {
7609 try {
7610 componentName = errorInfo.source ? getComponentNameFromFiber(errorInfo.source) : null;
7611 errorBoundaryName = null;
7612 var error = errorInfo.value;
7613 if (null !== ReactSharedInternals.actQueue)
7614 ReactSharedInternals.thrownErrors.push(error);
7615 else {
7616 var onUncaughtError = root2.onUncaughtError;
7617 onUncaughtError(error, { componentStack: errorInfo.stack });
7618 }
7619 } catch (e$6) {
7620 setTimeout(function() {
7621 throw e$6;
7622 });
7623 }
7624 }
7625 function logCaughtError(root2, boundary, errorInfo) {
7626 try {
7627 componentName = errorInfo.source ? getComponentNameFromFiber(errorInfo.source) : null;
7628 errorBoundaryName = getComponentNameFromFiber(boundary);
7629 var onCaughtError = root2.onCaughtError;
7630 onCaughtError(errorInfo.value, {
7631 componentStack: errorInfo.stack,
7632 errorBoundary: 1 === boundary.tag ? boundary.stateNode : null
7633 });
7634 } catch (e$7) {
7635 setTimeout(function() {
7636 throw e$7;
7637 });
7638 }
7639 }
7640 function createRootErrorUpdate(root2, errorInfo, lane) {
7641 lane = createUpdate(lane);
7642 lane.tag = CaptureUpdate;
7643 lane.payload = { element: null };
7644 lane.callback = function() {
7645 runWithFiberInDEV(errorInfo.source, logUncaughtError, root2, errorInfo);
7646 };
7647 return lane;
7648 }
7649 function createClassErrorUpdate(lane) {
7650 lane = createUpdate(lane);
7651 lane.tag = CaptureUpdate;
7652 return lane;
7653 }
7654 function initializeClassErrorUpdate(update, root2, fiber, errorInfo) {
7655 var getDerivedStateFromError = fiber.type.getDerivedStateFromError;
7656 if ("function" === typeof getDerivedStateFromError) {
7657 var error = errorInfo.value;
7658 update.payload = function() {
7659 return getDerivedStateFromError(error);
7660 };
7661 update.callback = function() {
7662 markFailedErrorBoundaryForHotReloading(fiber);
7663 runWithFiberInDEV(
7664 errorInfo.source,
7665 logCaughtError,
7666 root2,
7667 fiber,
7668 errorInfo
7669 );
7670 };
7671 }
7672 var inst = fiber.stateNode;
7673 null !== inst && "function" === typeof inst.componentDidCatch && (update.callback = function() {
7674 markFailedErrorBoundaryForHotReloading(fiber);
7675 runWithFiberInDEV(
7676 errorInfo.source,
7677 logCaughtError,
7678 root2,
7679 fiber,
7680 errorInfo
7681 );
7682 "function" !== typeof getDerivedStateFromError && (null === legacyErrorBoundariesThatAlreadyFailed ? legacyErrorBoundariesThatAlreadyFailed = /* @__PURE__ */ new Set([this]) : legacyErrorBoundariesThatAlreadyFailed.add(this));
7683 callComponentDidCatchInDEV(this, errorInfo);
7684 "function" === typeof getDerivedStateFromError || 0 === (fiber.lanes & 2) && console.error(
7685 "%s: Error boundaries should implement getDerivedStateFromError(). In that method, return a state update to display an error message or fallback UI.",
7686 getComponentNameFromFiber(fiber) || "Unknown"
7687 );
7688 });
7689 }
7690 function throwException(root2, returnFiber, sourceFiber, value, rootRenderLanes) {
7691 sourceFiber.flags |= 32768;
7692 isDevToolsPresent && restorePendingUpdaters(root2, rootRenderLanes);
7693 if (null !== value && "object" === typeof value && "function" === typeof value.then) {
7694 returnFiber = sourceFiber.alternate;
7695 null !== returnFiber && propagateParentContextChanges(
7696 returnFiber,
7697 sourceFiber,
7698 rootRenderLanes,
7699 true
7700 );
7701 isHydrating && (didSuspendOrErrorDEV = true);
7702 sourceFiber = suspenseHandlerStackCursor.current;
7703 if (null !== sourceFiber) {
7704 switch (sourceFiber.tag) {
7705 case 31:
7706 case 13:
7707 case 19:
7708 return null === shellBoundary ? renderDidSuspendDelayIfPossible() : null === sourceFiber.alternate && workInProgressRootExitStatus === RootInProgress && (workInProgressRootExitStatus = RootSuspended), sourceFiber.flags &= -257, sourceFiber.flags |= 65536, sourceFiber.lanes = rootRenderLanes, value === noopSuspenseyCommitThenable ? sourceFiber.flags |= 16384 : (returnFiber = sourceFiber.updateQueue, null === returnFiber ? sourceFiber.updateQueue = /* @__PURE__ */ new Set([value]) : returnFiber.add(value), attachPingListener(root2, value, rootRenderLanes)), false;
7709 case 22:
7710 return sourceFiber.flags |= 65536, value === noopSuspenseyCommitThenable ? sourceFiber.flags |= 16384 : (returnFiber = sourceFiber.updateQueue, null === returnFiber ? (returnFiber = {
7711 transitions: null,
7712 markerInstances: null,
7713 retryQueue: /* @__PURE__ */ new Set([value])
7714 }, sourceFiber.updateQueue = returnFiber) : (sourceFiber = returnFiber.retryQueue, null === sourceFiber ? returnFiber.retryQueue = /* @__PURE__ */ new Set([value]) : sourceFiber.add(value)), attachPingListener(root2, value, rootRenderLanes)), false;
7715 }
7716 throw Error(
7717 "Unexpected Suspense handler tag (" + sourceFiber.tag + "). This is a bug in React."
7718 );
7719 }
7720 attachPingListener(root2, value, rootRenderLanes);
7721 renderDidSuspendDelayIfPossible();
7722 return false;
7723 }
7724 if (isHydrating)
7725 return didSuspendOrErrorDEV = true, returnFiber = suspenseHandlerStackCursor.current, null !== returnFiber ? (19 === returnFiber.tag && console.error(
7726 "SuspenseList should never catch while hydrating. This is a bug in React."
7727 ), 0 === (returnFiber.flags & 65536) && (returnFiber.flags |= 256), returnFiber.flags |= 65536, returnFiber.lanes = rootRenderLanes, value !== HydrationMismatchException && queueHydrationError(
7728 createCapturedValueAtFiber(
7729 Error(
7730 "There was an error while hydrating but React was able to recover by instead client rendering from the nearest Suspense boundary.",
7731 { cause: value }
7732 ),
7733 sourceFiber
7734 )
7735 )) : (value !== HydrationMismatchException && queueHydrationError(
7736 createCapturedValueAtFiber(
7737 Error(
7738 "There was an error while hydrating but React was able to recover by instead client rendering the entire root.",
7739 { cause: value }
7740 ),
7741 sourceFiber
7742 )
7743 ), root2 = root2.current.alternate, root2.flags |= 65536, rootRenderLanes &= -rootRenderLanes, root2.lanes |= rootRenderLanes, value = createCapturedValueAtFiber(value, sourceFiber), rootRenderLanes = createRootErrorUpdate(
7744 root2.stateNode,
7745 value,
7746 rootRenderLanes
7747 ), enqueueCapturedUpdate(root2, rootRenderLanes), workInProgressRootExitStatus !== RootSuspendedWithDelay && (workInProgressRootExitStatus = RootErrored)), false;
7748 var error = createCapturedValueAtFiber(
7749 Error(
7750 "There was an error during concurrent rendering but React was able to recover by instead synchronously rendering the entire root.",
7751 { cause: value }
7752 ),
7753 sourceFiber
7754 );
7755 null === workInProgressRootConcurrentErrors ? workInProgressRootConcurrentErrors = [error] : workInProgressRootConcurrentErrors.push(error);
7756 workInProgressRootExitStatus !== RootSuspendedWithDelay && (workInProgressRootExitStatus = RootErrored);
7757 if (null === returnFiber) return true;
7758 value = createCapturedValueAtFiber(value, sourceFiber);
7759 sourceFiber = returnFiber;
7760 do {
7761 switch (sourceFiber.tag) {
7762 case 3:
7763 return sourceFiber.flags |= 65536, root2 = rootRenderLanes & -rootRenderLanes, sourceFiber.lanes |= root2, root2 = createRootErrorUpdate(
7764 sourceFiber.stateNode,
7765 value,
7766 root2
7767 ), enqueueCapturedUpdate(sourceFiber, root2), false;
7768 case 1:
7769 returnFiber = sourceFiber.type;
7770 error = sourceFiber.stateNode;
7771 if (0 === (sourceFiber.flags & 128) && ("function" === typeof returnFiber.getDerivedStateFromError || null !== error && "function" === typeof error.componentDidCatch && (null === legacyErrorBoundariesThatAlreadyFailed || !legacyErrorBoundariesThatAlreadyFailed.has(error))))
7772 return sourceFiber.flags |= 65536, rootRenderLanes &= -rootRenderLanes, sourceFiber.lanes |= rootRenderLanes, rootRenderLanes = createClassErrorUpdate(rootRenderLanes), initializeClassErrorUpdate(
7773 rootRenderLanes,
7774 root2,
7775 sourceFiber,
7776 value
7777 ), enqueueCapturedUpdate(sourceFiber, rootRenderLanes), false;
7778 break;
7779 case 22:
7780 if (null !== sourceFiber.memoizedState)
7781 return sourceFiber.flags |= 65536, false;
7782 }
7783 sourceFiber = sourceFiber.return;
7784 } while (null !== sourceFiber);
7785 return false;
7786 }
7787 function reconcileChildren(current2, workInProgress2, nextChildren, renderLanes2) {
7788 workInProgress2.child = null === current2 ? mountChildFibers(workInProgress2, null, nextChildren, renderLanes2) : reconcileChildFibers(
7789 workInProgress2,
7790 current2.child,
7791 nextChildren,
7792 renderLanes2
7793 );
7794 }
7795 function updateForwardRef(current2, workInProgress2, Component, nextProps, renderLanes2) {
7796 Component = Component.render;
7797 var resolvedRender = resolveTypeForHotReloading(Component);
7798 resolvedRender !== Component && (Component = resolvedRender, null !== current2 && (didReceiveUpdate = true));
7799 resolvedRender = workInProgress2.ref;
7800 if ("ref" in nextProps) {
7801 var propsWithoutRef = {};
7802 for (var key in nextProps)
7803 "ref" !== key && (propsWithoutRef[key] = nextProps[key]);
7804 } else propsWithoutRef = nextProps;
7805 prepareToReadContext(workInProgress2);
7806 nextProps = renderWithHooks(
7807 current2,
7808 workInProgress2,
7809 Component,
7810 propsWithoutRef,
7811 resolvedRender,
7812 renderLanes2
7813 );
7814 key = checkDidRenderIdHook();
7815 if (null !== current2 && !didReceiveUpdate)
7816 return bailoutHooks(current2, workInProgress2, renderLanes2), bailoutOnAlreadyFinishedWork(current2, workInProgress2, renderLanes2);
7817 isHydrating && key && pushMaterializedTreeId(workInProgress2);
7818 workInProgress2.flags |= 1;
7819 reconcileChildren(current2, workInProgress2, nextProps, renderLanes2);
7820 return workInProgress2.child;
7821 }
7822 function updateMemoComponent(current2, workInProgress2, Component, nextProps, renderLanes2) {
7823 if (null === current2) {
7824 var type = Component.type;
7825 if ("function" === typeof type && !shouldConstruct(type) && void 0 === type.defaultProps && null === Component.compare)
7826 return Component = resolveTypeForHotReloading(type), workInProgress2.tag = 15, workInProgress2.type = Component, validateFunctionComponentInDev(workInProgress2, type), updateSimpleMemoComponent(
7827 current2,
7828 workInProgress2,
7829 Component,
7830 nextProps,
7831 renderLanes2
7832 );
7833 current2 = createFiberFromTypeAndProps(
7834 Component.type,
7835 null,
7836 nextProps,
7837 workInProgress2,
7838 workInProgress2.mode,
7839 renderLanes2
7840 );
7841 current2.ref = workInProgress2.ref;
7842 current2.return = workInProgress2;
7843 return workInProgress2.child = current2;
7844 }
7845 type = current2.child;
7846 if (!checkScheduledUpdateOrContext(current2, renderLanes2)) {
7847 var prevProps = type.memoizedProps;
7848 Component = Component.compare;
7849 Component = null !== Component ? Component : shallowEqual;
7850 if (Component(prevProps, nextProps) && current2.ref === workInProgress2.ref)
7851 return bailoutOnAlreadyFinishedWork(
7852 current2,
7853 workInProgress2,
7854 renderLanes2
7855 );
7856 }
7857 workInProgress2.flags |= 1;
7858 current2 = createWorkInProgress(type, nextProps);
7859 current2.ref = workInProgress2.ref;
7860 current2.return = workInProgress2;
7861 return workInProgress2.child = current2;
7862 }
7863 function updateSimpleMemoComponent(current2, workInProgress2, Component, nextProps, renderLanes2) {
7864 if (null !== current2) {
7865 var prevProps = current2.memoizedProps;
7866 if (shallowEqual(prevProps, nextProps) && current2.ref === workInProgress2.ref && workInProgress2.type === current2.type)
7867 if (didReceiveUpdate = false, workInProgress2.pendingProps = nextProps = prevProps, checkScheduledUpdateOrContext(current2, renderLanes2))
7868 0 !== (current2.flags & 131072) && (didReceiveUpdate = true);
7869 else
7870 return workInProgress2.lanes = current2.lanes, bailoutOnAlreadyFinishedWork(current2, workInProgress2, renderLanes2);
7871 }
7872 return updateFunctionComponent(
7873 current2,
7874 workInProgress2,
7875 Component,
7876 nextProps,
7877 renderLanes2
7878 );
7879 }
7880 function updateOffscreenComponent(current2, workInProgress2, renderLanes2, nextProps) {
7881 var nextChildren = nextProps.children, prevState = null !== current2 ? current2.memoizedState : null;
7882 null === current2 && null === workInProgress2.stateNode && (workInProgress2.stateNode = {
7883 _visibility: OffscreenVisible,
7884 _pendingMarkers: null,
7885 _retryCache: null,
7886 _transitions: null
7887 });
7888 if ("hidden" === nextProps.mode) {
7889 if (0 !== (workInProgress2.flags & 128)) {
7890 prevState = null !== prevState ? prevState.baseLanes | renderLanes2 : renderLanes2;
7891 if (null !== current2) {
7892 nextProps = workInProgress2.child = current2.child;
7893 for (nextChildren = 0; null !== nextProps; )
7894 nextChildren = nextChildren | nextProps.lanes | nextProps.childLanes, nextProps = nextProps.sibling;
7895 nextProps = nextChildren & ~prevState;
7896 } else nextProps = 0, workInProgress2.child = null;
7897 return deferHiddenOffscreenComponent(
7898 current2,
7899 workInProgress2,
7900 prevState,
7901 renderLanes2,
7902 nextProps
7903 );
7904 }
7905 if (0 !== (renderLanes2 & 536870912))
7906 workInProgress2.memoizedState = { baseLanes: 0, cachePool: null }, null !== current2 && pushTransition(
7907 workInProgress2,
7908 null !== prevState ? prevState.cachePool : null
7909 ), null !== prevState ? pushHiddenContext(workInProgress2, prevState) : reuseHiddenContextOnStack(workInProgress2), pushOffscreenSuspenseHandler(workInProgress2);
7910 else
7911 return nextProps = workInProgress2.lanes = 536870912, deferHiddenOffscreenComponent(
7912 current2,
7913 workInProgress2,
7914 null !== prevState ? prevState.baseLanes | renderLanes2 : renderLanes2,
7915 renderLanes2,
7916 nextProps
7917 );
7918 } else
7919 null !== prevState ? (pushTransition(workInProgress2, prevState.cachePool), pushHiddenContext(workInProgress2, prevState), reuseSuspenseHandlerOnStack(workInProgress2), workInProgress2.memoizedState = null) : (null !== current2 && pushTransition(workInProgress2, null), reuseHiddenContextOnStack(workInProgress2), reuseSuspenseHandlerOnStack(workInProgress2));
7920 reconcileChildren(current2, workInProgress2, nextChildren, renderLanes2);
7921 return workInProgress2.child;
7922 }
7923 function bailoutOffscreenComponent(current2, workInProgress2) {
7924 null !== current2 && 22 === current2.tag || null !== workInProgress2.stateNode || (workInProgress2.stateNode = {
7925 _visibility: OffscreenVisible,
7926 _pendingMarkers: null,
7927 _retryCache: null,
7928 _transitions: null
7929 });
7930 return workInProgress2.sibling;
7931 }
7932 function deferHiddenOffscreenComponent(current2, workInProgress2, nextBaseLanes, renderLanes2, remainingChildLanes) {
7933 var JSCompiler_inline_result = peekCacheFromPool();
7934 JSCompiler_inline_result = null === JSCompiler_inline_result ? null : {
7935 parent: CacheContext._currentValue,
7936 pool: JSCompiler_inline_result
7937 };
7938 workInProgress2.memoizedState = {
7939 baseLanes: nextBaseLanes,
7940 cachePool: JSCompiler_inline_result
7941 };
7942 null !== current2 && pushTransition(workInProgress2, null);
7943 reuseHiddenContextOnStack(workInProgress2);
7944 pushOffscreenSuspenseHandler(workInProgress2);
7945 null !== current2 && propagateParentContextChanges(current2, workInProgress2, renderLanes2, true);
7946 workInProgress2.childLanes = remainingChildLanes;
7947 return null;
7948 }
7949 function mountActivityChildren(workInProgress2, nextProps) {
7950 var hiddenProp = nextProps.hidden;
7951 void 0 !== hiddenProp && console.error(
7952 `<Activity> doesn't accept a hidden prop. Use mode="hidden" instead.
7953 - <Activity %s>
7954 + <Activity %s>`,
7955 true === hiddenProp ? "hidden" : false === hiddenProp ? "hidden={false}" : "hidden={...}",
7956 hiddenProp ? 'mode="hidden"' : 'mode="visible"'
7957 );
7958 nextProps = mountWorkInProgressOffscreenFiber(
7959 { mode: nextProps.mode, children: nextProps.children },
7960 workInProgress2.mode
7961 );
7962 nextProps.ref = workInProgress2.ref;
7963 workInProgress2.child = nextProps;
7964 nextProps.return = workInProgress2;
7965 return nextProps;
7966 }
7967 function retryActivityComponentWithoutHydrating(current2, workInProgress2, renderLanes2) {
7968 reconcileChildFibers(workInProgress2, current2.child, null, renderLanes2);
7969 current2 = mountActivityChildren(
7970 workInProgress2,
7971 workInProgress2.pendingProps
7972 );
7973 current2.flags |= 2;
7974 popSuspenseHandler(workInProgress2);
7975 workInProgress2.memoizedState = null;
7976 return current2;
7977 }
7978 function updateActivityComponent(current2, workInProgress2, renderLanes2) {
7979 var nextProps = workInProgress2.pendingProps, didSuspend = 0 !== (workInProgress2.flags & 128);
7980 workInProgress2.flags &= -129;
7981 if (null === current2) {
7982 if (isHydrating) {
7983 if ("hidden" === nextProps.mode)
7984 return current2 = mountActivityChildren(workInProgress2, nextProps), workInProgress2.lanes = 536870912, current2.memoizedState = { baseLanes: 0, cachePool: null }, bailoutOffscreenComponent(null, current2);
7985 pushDehydratedActivitySuspenseHandler(workInProgress2);
7986 (current2 = nextHydratableInstance) ? (renderLanes2 = canHydrateHydrationBoundary(
7987 current2,
7988 rootOrSingletonContext
7989 ), renderLanes2 = null !== renderLanes2 && renderLanes2.data === ACTIVITY_START_DATA ? renderLanes2 : null, null !== renderLanes2 && (nextProps = {
7990 dehydrated: renderLanes2,
7991 treeContext: getSuspendedTreeContext(),
7992 retryLane: 536870912,
7993 hydrationErrors: null
7994 }, workInProgress2.memoizedState = nextProps, nextProps = createFiberFromDehydratedFragment(renderLanes2), nextProps.return = workInProgress2, workInProgress2.child = nextProps, hydrationParentFiber = workInProgress2, nextHydratableInstance = null)) : renderLanes2 = null;
7995 if (null === renderLanes2)
7996 throw warnNonHydratedInstance(workInProgress2, current2), throwOnHydrationMismatch(workInProgress2);
7997 workInProgress2.lanes = 536870912;
7998 return null;
7999 }
8000 return mountActivityChildren(workInProgress2, nextProps);
8001 }
8002 var prevState = current2.memoizedState;
8003 if (null !== prevState) {
8004 var activityInstance = prevState.dehydrated;
8005 pushDehydratedActivitySuspenseHandler(workInProgress2);
8006 if (didSuspend)
8007 if (workInProgress2.flags & 256)
8008 workInProgress2.flags &= -257, workInProgress2 = retryActivityComponentWithoutHydrating(
8009 current2,
8010 workInProgress2,
8011 renderLanes2
8012 );
8013 else if (null !== workInProgress2.memoizedState)
8014 workInProgress2.child = current2.child, workInProgress2.flags |= 128, workInProgress2 = null;
8015 else
8016 throw Error(
8017 "Client rendering an Activity suspended it again. This is a bug in React."
8018 );
8019 else if (warnIfHydrating(), 0 !== (renderLanes2 & 536870912) && markRenderDerivedCause(workInProgress2), didReceiveUpdate || propagateParentContextChanges(
8020 current2,
8021 workInProgress2,
8022 renderLanes2,
8023 false
8024 ), didSuspend = 0 !== (renderLanes2 & current2.childLanes), didReceiveUpdate || didSuspend) {
8025 if (null === currentTreeHiddenStackCursor.current) {
8026 nextProps = workInProgressRoot;
8027 if (null !== nextProps && (activityInstance = getBumpedLaneForHydration(
8028 nextProps,
8029 renderLanes2
8030 ), 0 !== activityInstance && activityInstance !== prevState.retryLane))
8031 throw prevState.retryLane = activityInstance, enqueueConcurrentRenderForLane(current2, activityInstance), scheduleUpdateOnFiber(nextProps, current2, activityInstance), SelectiveHydrationException;
8032 renderDidSuspendDelayIfPossible();
8033 }
8034 workInProgress2 = retryActivityComponentWithoutHydrating(
8035 current2,
8036 workInProgress2,
8037 renderLanes2
8038 );
8039 } else
8040 current2 = prevState.treeContext, nextHydratableInstance = getNextHydratable(
8041 activityInstance.nextSibling
8042 ), hydrationParentFiber = workInProgress2, isHydrating = true, hydrationErrors = null, didSuspendOrErrorDEV = false, hydrationDiffRootDEV = null, rootOrSingletonContext = false, null !== current2 && restoreSuspendedTreeContext(workInProgress2, current2), workInProgress2 = mountActivityChildren(workInProgress2, nextProps), workInProgress2.flags |= 134221824;
8043 return workInProgress2;
8044 }
8045 prevState = current2.child;
8046 nextProps = { mode: nextProps.mode, children: nextProps.children };
8047 0 !== (renderLanes2 & 536870912) && 0 !== (renderLanes2 & current2.lanes) && markRenderDerivedCause(workInProgress2);
8048 current2 = createWorkInProgress(prevState, nextProps);
8049 current2.ref = workInProgress2.ref;
8050 workInProgress2.child = current2;
8051 current2.return = workInProgress2;
8052 return current2;
8053 }
8054 function markRef(current2, workInProgress2) {
8055 var ref = workInProgress2.ref;
8056 if (null === ref)
8057 null !== current2 && null !== current2.ref && (workInProgress2.flags |= 4194816);
8058 else {
8059 if ("function" !== typeof ref && "object" !== typeof ref)
8060 throw Error(
8061 "Expected ref to be a function, an object returned by React.createRef(), or undefined/null."
8062 );
8063 if (null === current2 || current2.ref !== ref)
8064 workInProgress2.flags |= 4194816;
8065 }
8066 }
8067 function updateFunctionComponent(current2, workInProgress2, Component, nextProps, renderLanes2) {
8068 if (Component.prototype && "function" === typeof Component.prototype.render) {
8069 var componentName2 = getComponentNameFromType(Component) || "Unknown";
8070 didWarnAboutBadClass[componentName2] || (console.error(
8071 "The <%s /> component appears to have a render method, but doesn't extend React.Component. This is likely to cause errors. Change %s to extend React.Component instead.",
8072 componentName2,
8073 componentName2
8074 ), didWarnAboutBadClass[componentName2] = true);
8075 }
8076 workInProgress2.mode & StrictLegacyMode && ReactStrictModeWarnings.recordLegacyContextWarning(
8077 workInProgress2,
8078 null
8079 );
8080 null === current2 && (validateFunctionComponentInDev(workInProgress2, workInProgress2.type), Component.contextTypes && (componentName2 = getComponentNameFromType(Component) || "Unknown", didWarnAboutContextTypes[componentName2] || (didWarnAboutContextTypes[componentName2] = true, console.error(
8081 "%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with React.useContext() instead. (https://react.dev/link/legacy-context)",
8082 componentName2
8083 ))));
8084 prepareToReadContext(workInProgress2);
8085 Component = renderWithHooks(
8086 current2,
8087 workInProgress2,
8088 Component,
8089 nextProps,
8090 void 0,
8091 renderLanes2
8092 );
8093 nextProps = checkDidRenderIdHook();
8094 if (null !== current2 && !didReceiveUpdate)
8095 return bailoutHooks(current2, workInProgress2, renderLanes2), bailoutOnAlreadyFinishedWork(current2, workInProgress2, renderLanes2);
8096 isHydrating && nextProps && pushMaterializedTreeId(workInProgress2);
8097 workInProgress2.flags |= 1;
8098 reconcileChildren(current2, workInProgress2, Component, renderLanes2);
8099 return workInProgress2.child;
8100 }
8101 function replayFunctionComponent(current2, workInProgress2, nextProps, Component, secondArg, renderLanes2) {
8102 prepareToReadContext(workInProgress2);
8103 hookTypesUpdateIndexDev = -1;
8104 ignorePreviousDependencies = null !== current2 && current2.type !== workInProgress2.type;
8105 workInProgress2.updateQueue = null;
8106 nextProps = renderWithHooksAgain(
8107 workInProgress2,
8108 Component,
8109 nextProps,
8110 secondArg
8111 );
8112 finishRenderingHooks(current2, workInProgress2);
8113 Component = checkDidRenderIdHook();
8114 if (null !== current2 && !didReceiveUpdate)
8115 return bailoutHooks(current2, workInProgress2, renderLanes2), bailoutOnAlreadyFinishedWork(current2, workInProgress2, renderLanes2);
8116 isHydrating && Component && pushMaterializedTreeId(workInProgress2);
8117 workInProgress2.flags |= 1;
8118 reconcileChildren(current2, workInProgress2, nextProps, renderLanes2);
8119 return workInProgress2.child;
8120 }
8121 function updateClassComponent(current2, workInProgress2, Component, nextProps, renderLanes2) {
8122 switch (shouldErrorImpl(workInProgress2)) {
8123 case false:
8124 var _instance = workInProgress2.stateNode, state = new workInProgress2.type(
8125 workInProgress2.memoizedProps,
8126 _instance.context
8127 ).state;
8128 _instance.updater.enqueueSetState(_instance, state, null);
8129 break;
8130 case true:
8131 workInProgress2.flags |= 128;
8132 workInProgress2.flags |= 65536;
8133 _instance = Error("Simulated error coming from DevTools");
8134 var lane = renderLanes2 & -renderLanes2;
8135 workInProgress2.lanes |= lane;
8136 state = workInProgressRoot;
8137 if (null === state)
8138 throw Error(
8139 "Expected a work-in-progress root. This is a bug in React. Please file an issue."
8140 );
8141 lane = createClassErrorUpdate(lane);
8142 initializeClassErrorUpdate(
8143 lane,
8144 state,
8145 workInProgress2,
8146 createCapturedValueAtFiber(_instance, workInProgress2)
8147 );
8148 enqueueCapturedUpdate(workInProgress2, lane);
8149 }
8150 prepareToReadContext(workInProgress2);
8151 if (null === workInProgress2.stateNode) {
8152 state = emptyContextObject;
8153 _instance = Component.contextType;
8154 "contextType" in Component && null !== _instance && (void 0 === _instance || _instance.$$typeof !== REACT_CONTEXT_TYPE) && !didWarnAboutInvalidateContextType.has(Component) && (didWarnAboutInvalidateContextType.add(Component), lane = void 0 === _instance ? " However, it is set to undefined. This can be caused by a typo or by mixing up named and default imports. This can also happen due to a circular dependency, so try moving the createContext() call to a separate file." : "object" !== typeof _instance ? " However, it is set to a " + typeof _instance + "." : _instance.$$typeof === REACT_CONSUMER_TYPE ? " Did you accidentally pass the Context.Consumer instead?" : " However, it is set to an object with keys {" + Object.keys(_instance).join(", ") + "}.", console.error(
8155 "%s defines an invalid contextType. contextType should point to the Context object returned by React.createContext().%s",
8156 getComponentNameFromType(Component) || "Component",
8157 lane
8158 ));
8159 "object" === typeof _instance && null !== _instance && (state = readContext(_instance));
8160 _instance = new Component(nextProps, state);
8161 if (workInProgress2.mode & StrictLegacyMode) {
8162 setIsStrictModeForDevtools(true);
8163 try {
8164 _instance = new Component(nextProps, state);
8165 } finally {
8166 setIsStrictModeForDevtools(false);
8167 }
8168 }
8169 state = workInProgress2.memoizedState = null !== _instance.state && void 0 !== _instance.state ? _instance.state : null;
8170 _instance.updater = classComponentUpdater;
8171 workInProgress2.stateNode = _instance;
8172 _instance._reactInternals = workInProgress2;
8173 _instance._reactInternalInstance = fakeInternalInstance;
8174 "function" === typeof Component.getDerivedStateFromProps && null === state && (state = getComponentNameFromType(Component) || "Component", didWarnAboutUninitializedState.has(state) || (didWarnAboutUninitializedState.add(state), console.error(
8175 "`%s` uses `getDerivedStateFromProps` but its initial state is %s. This is not recommended. Instead, define the initial state by assigning an object to `this.state` in the constructor of `%s`. This ensures that `getDerivedStateFromProps` arguments have a consistent shape.",
8176 state,
8177 null === _instance.state ? "null" : "undefined",
8178 state
8179 )));
8180 if ("function" === typeof Component.getDerivedStateFromProps || "function" === typeof _instance.getSnapshotBeforeUpdate) {
8181 var foundWillUpdateName = lane = state = null;
8182 "function" === typeof _instance.componentWillMount && true !== _instance.componentWillMount.__suppressDeprecationWarning ? state = "componentWillMount" : "function" === typeof _instance.UNSAFE_componentWillMount && (state = "UNSAFE_componentWillMount");
8183 "function" === typeof _instance.componentWillReceiveProps && true !== _instance.componentWillReceiveProps.__suppressDeprecationWarning ? lane = "componentWillReceiveProps" : "function" === typeof _instance.UNSAFE_componentWillReceiveProps && (lane = "UNSAFE_componentWillReceiveProps");
8184 "function" === typeof _instance.componentWillUpdate && true !== _instance.componentWillUpdate.__suppressDeprecationWarning ? foundWillUpdateName = "componentWillUpdate" : "function" === typeof _instance.UNSAFE_componentWillUpdate && (foundWillUpdateName = "UNSAFE_componentWillUpdate");
8185 if (null !== state || null !== lane || null !== foundWillUpdateName) {
8186 _instance = getComponentNameFromType(Component) || "Component";
8187 var newApiName = "function" === typeof Component.getDerivedStateFromProps ? "getDerivedStateFromProps()" : "getSnapshotBeforeUpdate()";
8188 didWarnAboutLegacyLifecyclesAndDerivedState.has(_instance) || (didWarnAboutLegacyLifecyclesAndDerivedState.add(_instance), console.error(
8189 "Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n%s uses %s but also contains the following legacy lifecycles:%s%s%s\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://react.dev/link/unsafe-component-lifecycles",
8190 _instance,
8191 newApiName,
8192 null !== state ? "\n " + state : "",
8193 null !== lane ? "\n " + lane : "",
8194 null !== foundWillUpdateName ? "\n " + foundWillUpdateName : ""
8195 ));
8196 }
8197 }
8198 _instance = workInProgress2.stateNode;
8199 state = getComponentNameFromType(Component) || "Component";
8200 _instance.render || (Component.prototype && "function" === typeof Component.prototype.render ? console.error(
8201 "No `render` method found on the %s instance: did you accidentally return an object from the constructor?",
8202 state
8203 ) : console.error(
8204 "No `render` method found on the %s instance: you may have forgotten to define `render`.",
8205 state
8206 ));
8207 !_instance.getInitialState || _instance.getInitialState.isReactClassApproved || _instance.state || console.error(
8208 "getInitialState was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Did you mean to define a state property instead?",
8209 state
8210 );
8211 _instance.getDefaultProps && !_instance.getDefaultProps.isReactClassApproved && console.error(
8212 "getDefaultProps was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Use a static property to define defaultProps instead.",
8213 state
8214 );
8215 _instance.contextType && console.error(
8216 "contextType was defined as an instance property on %s. Use a static property to define contextType instead.",
8217 state
8218 );
8219 Component.childContextTypes && !didWarnAboutChildContextTypes.has(Component) && (didWarnAboutChildContextTypes.add(Component), console.error(
8220 "%s uses the legacy childContextTypes API which was removed in React 19. Use React.createContext() instead. (https://react.dev/link/legacy-context)",
8221 state
8222 ));
8223 Component.contextTypes && !didWarnAboutContextTypes$1.has(Component) && (didWarnAboutContextTypes$1.add(Component), console.error(
8224 "%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with static contextType instead. (https://react.dev/link/legacy-context)",
8225 state
8226 ));
8227 "function" === typeof _instance.componentShouldUpdate && console.error(
8228 "%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.",
8229 state
8230 );
8231 Component.prototype && Component.prototype.isPureReactComponent && "undefined" !== typeof _instance.shouldComponentUpdate && console.error(
8232 "%s has a method called shouldComponentUpdate(). shouldComponentUpdate should not be used when extending React.PureComponent. Please extend React.Component if shouldComponentUpdate is used.",
8233 getComponentNameFromType(Component) || "A pure component"
8234 );
8235 "function" === typeof _instance.componentDidUnmount && console.error(
8236 "%s has a method called componentDidUnmount(). But there is no such lifecycle method. Did you mean componentWillUnmount()?",
8237 state
8238 );
8239 "function" === typeof _instance.componentDidReceiveProps && console.error(
8240 "%s has a method called componentDidReceiveProps(). But there is no such lifecycle method. If you meant to update the state in response to changing props, use componentWillReceiveProps(). If you meant to fetch data or run side-effects or mutations after React has updated the UI, use componentDidUpdate().",
8241 state
8242 );
8243 "function" === typeof _instance.componentWillRecieveProps && console.error(
8244 "%s has a method called componentWillRecieveProps(). Did you mean componentWillReceiveProps()?",
8245 state
8246 );
8247 "function" === typeof _instance.UNSAFE_componentWillRecieveProps && console.error(
8248 "%s has a method called UNSAFE_componentWillRecieveProps(). Did you mean UNSAFE_componentWillReceiveProps()?",
8249 state
8250 );
8251 lane = _instance.props !== nextProps;
8252 void 0 !== _instance.props && lane && console.error(
8253 "When calling super() in `%s`, make sure to pass up the same props that your component's constructor was passed.",
8254 state
8255 );
8256 _instance.defaultProps && console.error(
8257 "Setting defaultProps as an instance property on %s is not supported and will be ignored. Instead, define defaultProps as a static property on %s.",
8258 state,
8259 state
8260 );
8261 "function" !== typeof _instance.getSnapshotBeforeUpdate || "function" === typeof _instance.componentDidUpdate || didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate.has(Component) || (didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate.add(Component), console.error(
8262 "%s: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). This component defines getSnapshotBeforeUpdate() only.",
8263 getComponentNameFromType(Component)
8264 ));
8265 "function" === typeof _instance.getDerivedStateFromProps && console.error(
8266 "%s: getDerivedStateFromProps() is defined as an instance method and will be ignored. Instead, declare it as a static method.",
8267 state
8268 );
8269 "function" === typeof _instance.getDerivedStateFromError && console.error(
8270 "%s: getDerivedStateFromError() is defined as an instance method and will be ignored. Instead, declare it as a static method.",
8271 state
8272 );
8273 "function" === typeof Component.getSnapshotBeforeUpdate && console.error(
8274 "%s: getSnapshotBeforeUpdate() is defined as a static method and will be ignored. Instead, declare it as an instance method.",
8275 state
8276 );
8277 (lane = _instance.state) && ("object" !== typeof lane || isArrayImpl(lane)) && console.error("%s.state: must be set to an object or null", state);
8278 "function" === typeof _instance.getChildContext && "object" !== typeof Component.childContextTypes && console.error(
8279 "%s.getChildContext(): childContextTypes must be defined in order to use getChildContext().",
8280 state
8281 );
8282 _instance = workInProgress2.stateNode;
8283 _instance.props = nextProps;
8284 _instance.state = workInProgress2.memoizedState;
8285 _instance.refs = {};
8286 initializeUpdateQueue(workInProgress2);
8287 state = Component.contextType;
8288 _instance.context = "object" === typeof state && null !== state ? readContext(state) : emptyContextObject;
8289 _instance.state === nextProps && (state = getComponentNameFromType(Component) || "Component", didWarnAboutDirectlyAssigningPropsToState.has(state) || (didWarnAboutDirectlyAssigningPropsToState.add(state), console.error(
8290 "%s: It is not recommended to assign props directly to state because updates to props won't be reflected in state. In most cases, it is better to use props directly.",
8291 state
8292 )));
8293 workInProgress2.mode & StrictLegacyMode && ReactStrictModeWarnings.recordLegacyContextWarning(
8294 workInProgress2,
8295 _instance
8296 );
8297 ReactStrictModeWarnings.recordUnsafeLifecycleWarnings(
8298 workInProgress2,
8299 _instance
8300 );
8301 _instance.state = workInProgress2.memoizedState;
8302 state = Component.getDerivedStateFromProps;
8303 "function" === typeof state && (applyDerivedStateFromProps(
8304 workInProgress2,
8305 Component,
8306 state,
8307 nextProps
8308 ), _instance.state = workInProgress2.memoizedState);
8309 "function" === typeof Component.getDerivedStateFromProps || "function" === typeof _instance.getSnapshotBeforeUpdate || "function" !== typeof _instance.UNSAFE_componentWillMount && "function" !== typeof _instance.componentWillMount || (state = _instance.state, "function" === typeof _instance.componentWillMount && _instance.componentWillMount(), "function" === typeof _instance.UNSAFE_componentWillMount && _instance.UNSAFE_componentWillMount(), state !== _instance.state && (console.error(
8310 "%s.componentWillMount(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.",
8311 getComponentNameFromFiber(workInProgress2) || "Component"
8312 ), classComponentUpdater.enqueueReplaceState(
8313 _instance,
8314 _instance.state,
8315 null
8316 )), processUpdateQueue(workInProgress2, nextProps, _instance, renderLanes2), suspendIfUpdateReadFromEntangledAsyncAction(), _instance.state = workInProgress2.memoizedState);
8317 "function" === typeof _instance.componentDidMount && (workInProgress2.flags |= 4194308);
8318 (workInProgress2.mode & StrictEffectsMode) !== NoMode && (workInProgress2.flags |= 268435456);
8319 _instance = true;
8320 } else if (null === current2) {
8321 _instance = workInProgress2.stateNode;
8322 var unresolvedOldProps = workInProgress2.memoizedProps;
8323 lane = resolveClassComponentProps(Component, unresolvedOldProps);
8324 _instance.props = lane;
8325 var oldContext = _instance.context;
8326 foundWillUpdateName = Component.contextType;
8327 state = emptyContextObject;
8328 "object" === typeof foundWillUpdateName && null !== foundWillUpdateName && (state = readContext(foundWillUpdateName));
8329 newApiName = Component.getDerivedStateFromProps;
8330 foundWillUpdateName = "function" === typeof newApiName || "function" === typeof _instance.getSnapshotBeforeUpdate;
8331 unresolvedOldProps = workInProgress2.pendingProps !== unresolvedOldProps;
8332 foundWillUpdateName || "function" !== typeof _instance.UNSAFE_componentWillReceiveProps && "function" !== typeof _instance.componentWillReceiveProps || (unresolvedOldProps || oldContext !== state) && callComponentWillReceiveProps(
8333 workInProgress2,
8334 _instance,
8335 nextProps,
8336 state
8337 );
8338 hasForceUpdate = false;
8339 var oldState = workInProgress2.memoizedState;
8340 _instance.state = oldState;
8341 processUpdateQueue(workInProgress2, nextProps, _instance, renderLanes2);
8342 suspendIfUpdateReadFromEntangledAsyncAction();
8343 oldContext = workInProgress2.memoizedState;
8344 unresolvedOldProps || oldState !== oldContext || hasForceUpdate ? ("function" === typeof newApiName && (applyDerivedStateFromProps(
8345 workInProgress2,
8346 Component,
8347 newApiName,
8348 nextProps
8349 ), oldContext = workInProgress2.memoizedState), (lane = hasForceUpdate || checkShouldComponentUpdate(
8350 workInProgress2,
8351 Component,
8352 lane,
8353 nextProps,
8354 oldState,
8355 oldContext,
8356 state
8357 )) ? (foundWillUpdateName || "function" !== typeof _instance.UNSAFE_componentWillMount && "function" !== typeof _instance.componentWillMount || ("function" === typeof _instance.componentWillMount && _instance.componentWillMount(), "function" === typeof _instance.UNSAFE_componentWillMount && _instance.UNSAFE_componentWillMount()), "function" === typeof _instance.componentDidMount && (workInProgress2.flags |= 4194308), (workInProgress2.mode & StrictEffectsMode) !== NoMode && (workInProgress2.flags |= 268435456)) : ("function" === typeof _instance.componentDidMount && (workInProgress2.flags |= 4194308), (workInProgress2.mode & StrictEffectsMode) !== NoMode && (workInProgress2.flags |= 268435456), workInProgress2.memoizedProps = nextProps, workInProgress2.memoizedState = oldContext), _instance.props = nextProps, _instance.state = oldContext, _instance.context = state, _instance = lane) : ("function" === typeof _instance.componentDidMount && (workInProgress2.flags |= 4194308), (workInProgress2.mode & StrictEffectsMode) !== NoMode && (workInProgress2.flags |= 268435456), _instance = false);
8358 } else {
8359 _instance = workInProgress2.stateNode;
8360 cloneUpdateQueue(current2, workInProgress2);
8361 state = workInProgress2.memoizedProps;
8362 foundWillUpdateName = resolveClassComponentProps(Component, state);
8363 _instance.props = foundWillUpdateName;
8364 newApiName = workInProgress2.pendingProps;
8365 oldState = _instance.context;
8366 oldContext = Component.contextType;
8367 lane = emptyContextObject;
8368 "object" === typeof oldContext && null !== oldContext && (lane = readContext(oldContext));
8369 unresolvedOldProps = Component.getDerivedStateFromProps;
8370 (oldContext = "function" === typeof unresolvedOldProps || "function" === typeof _instance.getSnapshotBeforeUpdate) || "function" !== typeof _instance.UNSAFE_componentWillReceiveProps && "function" !== typeof _instance.componentWillReceiveProps || (state !== newApiName || oldState !== lane) && callComponentWillReceiveProps(
8371 workInProgress2,
8372 _instance,
8373 nextProps,
8374 lane
8375 );
8376 hasForceUpdate = false;
8377 oldState = workInProgress2.memoizedState;
8378 _instance.state = oldState;
8379 processUpdateQueue(workInProgress2, nextProps, _instance, renderLanes2);
8380 suspendIfUpdateReadFromEntangledAsyncAction();
8381 var newState = workInProgress2.memoizedState;
8382 state !== newApiName || oldState !== newState || hasForceUpdate || null !== current2 && null !== current2.dependencies && checkIfContextChanged(current2.dependencies) ? ("function" === typeof unresolvedOldProps && (applyDerivedStateFromProps(
8383 workInProgress2,
8384 Component,
8385 unresolvedOldProps,
8386 nextProps
8387 ), newState = workInProgress2.memoizedState), (foundWillUpdateName = hasForceUpdate || checkShouldComponentUpdate(
8388 workInProgress2,
8389 Component,
8390 foundWillUpdateName,
8391 nextProps,
8392 oldState,
8393 newState,
8394 lane
8395 ) || null !== current2 && null !== current2.dependencies && checkIfContextChanged(current2.dependencies)) ? (oldContext || "function" !== typeof _instance.UNSAFE_componentWillUpdate && "function" !== typeof _instance.componentWillUpdate || ("function" === typeof _instance.componentWillUpdate && _instance.componentWillUpdate(nextProps, newState, lane), "function" === typeof _instance.UNSAFE_componentWillUpdate && _instance.UNSAFE_componentWillUpdate(
8396 nextProps,
8397 newState,
8398 lane
8399 )), "function" === typeof _instance.componentDidUpdate && (workInProgress2.flags |= 4), "function" === typeof _instance.getSnapshotBeforeUpdate && (workInProgress2.flags |= 1024)) : ("function" !== typeof _instance.componentDidUpdate || state === current2.memoizedProps && oldState === current2.memoizedState || (workInProgress2.flags |= 4), "function" !== typeof _instance.getSnapshotBeforeUpdate || state === current2.memoizedProps && oldState === current2.memoizedState || (workInProgress2.flags |= 1024), workInProgress2.memoizedProps = nextProps, workInProgress2.memoizedState = newState), _instance.props = nextProps, _instance.state = newState, _instance.context = lane, _instance = foundWillUpdateName) : ("function" !== typeof _instance.componentDidUpdate || state === current2.memoizedProps && oldState === current2.memoizedState || (workInProgress2.flags |= 4), "function" !== typeof _instance.getSnapshotBeforeUpdate || state === current2.memoizedProps && oldState === current2.memoizedState || (workInProgress2.flags |= 1024), _instance = false);
8400 }
8401 lane = _instance;
8402 markRef(current2, workInProgress2);
8403 state = 0 !== (workInProgress2.flags & 128);
8404 if (lane || state) {
8405 lane = workInProgress2.stateNode;
8406 setCurrentFiber(workInProgress2);
8407 if (state && "function" !== typeof Component.getDerivedStateFromError)
8408 Component = null, profilerStartTime = -1;
8409 else if (Component = callRenderInDEV(lane), workInProgress2.mode & StrictLegacyMode) {
8410 setIsStrictModeForDevtools(true);
8411 try {
8412 callRenderInDEV(lane);
8413 } finally {
8414 setIsStrictModeForDevtools(false);
8415 }
8416 }
8417 workInProgress2.flags |= 1;
8418 null !== current2 && state ? (workInProgress2.child = reconcileChildFibers(
8419 workInProgress2,
8420 current2.child,
8421 null,
8422 renderLanes2
8423 ), workInProgress2.child = reconcileChildFibers(
8424 workInProgress2,
8425 null,
8426 Component,
8427 renderLanes2
8428 )) : reconcileChildren(current2, workInProgress2, Component, renderLanes2);
8429 workInProgress2.memoizedState = lane.state;
8430 current2 = workInProgress2.child;
8431 } else
8432 current2 = bailoutOnAlreadyFinishedWork(
8433 current2,
8434 workInProgress2,
8435 renderLanes2
8436 );
8437 renderLanes2 = workInProgress2.stateNode;
8438 _instance && renderLanes2.props !== nextProps && (didWarnAboutReassigningProps || console.error(
8439 "It looks like %s is reassigning its own `this.props` while rendering. This is not supported and can lead to confusing bugs.",
8440 getComponentNameFromFiber(workInProgress2) || "a component"
8441 ), didWarnAboutReassigningProps = true);
8442 return current2;
8443 }
8444 function mountHostRootWithoutHydrating(current2, workInProgress2, nextChildren, renderLanes2) {
8445 resetHydrationState();
8446 workInProgress2.flags |= 256;
8447 reconcileChildren(current2, workInProgress2, nextChildren, renderLanes2);
8448 return workInProgress2.child;
8449 }
8450 function validateFunctionComponentInDev(workInProgress2, Component) {
8451 Component && Component.childContextTypes && console.error(
8452 "childContextTypes cannot be defined on a function component.\n %s.childContextTypes = ...",
8453 Component.displayName || Component.name || "Component"
8454 );
8455 "function" === typeof Component.getDerivedStateFromProps && (workInProgress2 = getComponentNameFromType(Component) || "Unknown", didWarnAboutGetDerivedStateOnFunctionComponent[workInProgress2] || (console.error(
8456 "%s: Function components do not support getDerivedStateFromProps.",
8457 workInProgress2
8458 ), didWarnAboutGetDerivedStateOnFunctionComponent[workInProgress2] = true));
8459 "object" === typeof Component.contextType && null !== Component.contextType && (Component = getComponentNameFromType(Component) || "Unknown", didWarnAboutContextTypeOnFunctionComponent[Component] || (console.error(
8460 "%s: Function components do not support contextType.",
8461 Component
8462 ), didWarnAboutContextTypeOnFunctionComponent[Component] = true));
8463 }
8464 function mountSuspenseOffscreenState(renderLanes2) {
8465 return { baseLanes: renderLanes2, cachePool: getSuspendedCache() };
8466 }
8467 function getRemainingWorkInPrimaryTree(current2, primaryTreeDidDefer, renderLanes2) {
8468 current2 = null !== current2 ? current2.childLanes & ~renderLanes2 : 0;
8469 primaryTreeDidDefer && (current2 |= workInProgressDeferredLane);
8470 return current2;
8471 }
8472 function updateSuspenseComponent(current2, workInProgress2, renderLanes2) {
8473 var nextProps = workInProgress2.pendingProps;
8474 shouldSuspendImpl(workInProgress2) && (workInProgress2.flags |= 128);
8475 var showFallback = false, didSuspend = 0 !== (workInProgress2.flags & 128), JSCompiler_temp;
8476 (JSCompiler_temp = didSuspend) || (JSCompiler_temp = null !== current2 && null === current2.memoizedState ? false : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback));
8477 JSCompiler_temp && (showFallback = true, workInProgress2.flags &= -129);
8478 JSCompiler_temp = 0 !== (workInProgress2.flags & 32);
8479 workInProgress2.flags &= -33;
8480 if (null === current2) {
8481 if (isHydrating) {
8482 showFallback ? pushPrimaryTreeSuspenseHandler(workInProgress2) : reuseSuspenseHandlerOnStack(workInProgress2);
8483 (current2 = nextHydratableInstance) ? (renderLanes2 = canHydrateHydrationBoundary(
8484 current2,
8485 rootOrSingletonContext
8486 ), renderLanes2 = null !== renderLanes2 && renderLanes2.data !== ACTIVITY_START_DATA ? renderLanes2 : null, null !== renderLanes2 && (JSCompiler_temp = {
8487 dehydrated: renderLanes2,
8488 treeContext: getSuspendedTreeContext(),
8489 retryLane: 536870912,
8490 hydrationErrors: null
8491 }, workInProgress2.memoizedState = JSCompiler_temp, JSCompiler_temp = createFiberFromDehydratedFragment(renderLanes2), JSCompiler_temp.return = workInProgress2, workInProgress2.child = JSCompiler_temp, hydrationParentFiber = workInProgress2, nextHydratableInstance = null)) : renderLanes2 = null;
8492 if (null === renderLanes2)
8493 throw warnNonHydratedInstance(workInProgress2, current2), throwOnHydrationMismatch(workInProgress2);
8494 isSuspenseInstanceFallback(renderLanes2) ? workInProgress2.lanes = 32 : workInProgress2.lanes = 536870912;
8495 return null;
8496 }
8497 didSuspend = nextProps.children;
8498 nextProps = nextProps.fallback;
8499 if (showFallback)
8500 return reuseSuspenseHandlerOnStack(workInProgress2), showFallback = workInProgress2.mode, didSuspend = mountWorkInProgressOffscreenFiber(
8501 { mode: "hidden", children: didSuspend },
8502 showFallback
8503 ), nextProps = createFiberFromFragment(
8504 nextProps,
8505 showFallback,
8506 renderLanes2,
8507 null
8508 ), didSuspend.return = workInProgress2, nextProps.return = workInProgress2, didSuspend.sibling = nextProps, workInProgress2.child = didSuspend, nextProps = workInProgress2.child, nextProps.memoizedState = mountSuspenseOffscreenState(renderLanes2), nextProps.childLanes = getRemainingWorkInPrimaryTree(
8509 current2,
8510 JSCompiler_temp,
8511 renderLanes2
8512 ), workInProgress2.memoizedState = SUSPENDED_MARKER, bailoutOffscreenComponent(null, nextProps);
8513 pushPrimaryTreeSuspenseHandler(workInProgress2);
8514 return mountSuspensePrimaryChildren(workInProgress2, didSuspend);
8515 }
8516 var prevState = current2.memoizedState;
8517 if (null !== prevState) {
8518 var _dehydrated2 = prevState.dehydrated;
8519 if (null !== _dehydrated2)
8520 return updateDehydratedSuspenseComponent(
8521 current2,
8522 workInProgress2,
8523 didSuspend,
8524 JSCompiler_temp,
8525 nextProps,
8526 _dehydrated2,
8527 prevState,
8528 renderLanes2
8529 );
8530 }
8531 if (showFallback)
8532 return reuseSuspenseHandlerOnStack(workInProgress2), showFallback = nextProps.fallback, didSuspend = workInProgress2.mode, prevState = current2.child, _dehydrated2 = prevState.sibling, nextProps = createWorkInProgress(prevState, {
8533 mode: "hidden",
8534 children: nextProps.children
8535 }), nextProps.subtreeFlags = prevState.subtreeFlags & 1206910976, null !== _dehydrated2 ? showFallback = createWorkInProgress(_dehydrated2, showFallback) : (showFallback = createFiberFromFragment(
8536 showFallback,
8537 didSuspend,
8538 renderLanes2,
8539 null
8540 ), showFallback.flags |= 2), showFallback.return = workInProgress2, nextProps.return = workInProgress2, nextProps.sibling = showFallback, workInProgress2.child = nextProps, bailoutOffscreenComponent(null, nextProps), nextProps = workInProgress2.child, showFallback = current2.child.memoizedState, null === showFallback ? showFallback = mountSuspenseOffscreenState(renderLanes2) : (didSuspend = showFallback.cachePool, null !== didSuspend ? (prevState = CacheContext._currentValue, didSuspend = didSuspend.parent !== prevState ? { parent: prevState, pool: prevState } : didSuspend) : didSuspend = getSuspendedCache(), showFallback = {
8541 baseLanes: showFallback.baseLanes | renderLanes2,
8542 cachePool: didSuspend
8543 }), nextProps.memoizedState = showFallback, nextProps.childLanes = getRemainingWorkInPrimaryTree(
8544 current2,
8545 JSCompiler_temp,
8546 renderLanes2
8547 ), workInProgress2.memoizedState = SUSPENDED_MARKER, bailoutOffscreenComponent(current2.child, nextProps);
8548 null !== prevState && (renderLanes2 & 62914560) === renderLanes2 && 0 !== (renderLanes2 & current2.lanes) && markRenderDerivedCause(workInProgress2);
8549 pushPrimaryTreeSuspenseHandler(workInProgress2);
8550 renderLanes2 = current2.child;
8551 current2 = renderLanes2.sibling;
8552 renderLanes2 = createWorkInProgress(renderLanes2, {
8553 mode: "visible",
8554 children: nextProps.children
8555 });
8556 renderLanes2.return = workInProgress2;
8557 renderLanes2.sibling = null;
8558 null !== current2 && (JSCompiler_temp = workInProgress2.deletions, null === JSCompiler_temp ? (workInProgress2.deletions = [current2], workInProgress2.flags |= 16) : JSCompiler_temp.push(current2));
8559 workInProgress2.child = renderLanes2;
8560 workInProgress2.memoizedState = null;
8561 return renderLanes2;
8562 }
8563 function mountSuspensePrimaryChildren(workInProgress2, primaryChildren) {
8564 primaryChildren = mountWorkInProgressOffscreenFiber(
8565 { mode: "visible", children: primaryChildren },
8566 workInProgress2.mode
8567 );
8568 primaryChildren.return = workInProgress2;
8569 return workInProgress2.child = primaryChildren;
8570 }
8571 function mountWorkInProgressOffscreenFiber(offscreenProps, mode) {
8572 offscreenProps = createFiber(22, offscreenProps, null, mode);
8573 offscreenProps.lanes = 0;
8574 return offscreenProps;
8575 }
8576 function retrySuspenseComponentWithoutHydrating(current2, workInProgress2, renderLanes2) {
8577 reconcileChildFibers(workInProgress2, current2.child, null, renderLanes2);
8578 current2 = mountSuspensePrimaryChildren(
8579 workInProgress2,
8580 workInProgress2.pendingProps.children
8581 );
8582 current2.flags |= 2;
8583 workInProgress2.memoizedState = null;
8584 return current2;
8585 }
8586 function updateDehydratedSuspenseComponent(current2, workInProgress2, didSuspend, didPrimaryChildrenDefer, nextProps, suspenseInstance, suspenseState, renderLanes2) {
8587 if (didSuspend) {
8588 if (workInProgress2.flags & 256)
8589 return pushPrimaryTreeSuspenseHandler(workInProgress2), workInProgress2.flags &= -257, retrySuspenseComponentWithoutHydrating(
8590 current2,
8591 workInProgress2,
8592 renderLanes2
8593 );
8594 if (null !== workInProgress2.memoizedState)
8595 return reuseSuspenseHandlerOnStack(workInProgress2), workInProgress2.child = current2.child, workInProgress2.flags |= 128, null;
8596 reuseSuspenseHandlerOnStack(workInProgress2);
8597 var fallbackChildren = nextProps.fallback, fiberMode = workInProgress2.mode, primaryChildFragment = mountWorkInProgressOffscreenFiber(
8598 { mode: "visible", children: nextProps.children },
8599 fiberMode
8600 );
8601 fallbackChildren = createFiberFromFragment(
8602 fallbackChildren,
8603 fiberMode,
8604 renderLanes2,
8605 null
8606 );
8607 fallbackChildren.flags |= 2;
8608 primaryChildFragment.return = workInProgress2;
8609 fallbackChildren.return = workInProgress2;
8610 primaryChildFragment.sibling = fallbackChildren;
8611 workInProgress2.child = primaryChildFragment;
8612 reconcileChildFibers(workInProgress2, current2.child, null, renderLanes2);
8613 fallbackChildren = workInProgress2.child;
8614 fallbackChildren.memoizedState = mountSuspenseOffscreenState(renderLanes2);
8615 fallbackChildren.childLanes = getRemainingWorkInPrimaryTree(
8616 current2,
8617 didPrimaryChildrenDefer,
8618 renderLanes2
8619 );
8620 workInProgress2.memoizedState = SUSPENDED_MARKER;
8621 return bailoutOffscreenComponent(null, fallbackChildren);
8622 }
8623 pushPrimaryTreeSuspenseHandler(workInProgress2);
8624 warnIfHydrating();
8625 0 !== (renderLanes2 & 536870912) && markRenderDerivedCause(workInProgress2);
8626 if (isSuspenseInstanceFallback(suspenseInstance)) {
8627 didPrimaryChildrenDefer = suspenseInstance.nextSibling && suspenseInstance.nextSibling.dataset;
8628 if (didPrimaryChildrenDefer) {
8629 fallbackChildren = didPrimaryChildrenDefer.dgst;
8630 var message = didPrimaryChildrenDefer.msg;
8631 fiberMode = didPrimaryChildrenDefer.stck;
8632 primaryChildFragment = didPrimaryChildrenDefer.cstck;
8633 }
8634 suspenseInstance = message;
8635 suspenseState = fallbackChildren;
8636 nextProps = fiberMode;
8637 didPrimaryChildrenDefer = primaryChildFragment;
8638 fallbackChildren = suspenseState;
8639 fiberMode = suspenseInstance;
8640 primaryChildFragment = nextProps;
8641 nextProps = didPrimaryChildrenDefer;
8642 fallbackChildren !== REACT_RECOVERABLE_DIGEST && (didPrimaryChildrenDefer = fiberMode ? Error(fiberMode) : Error(
8643 "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering."
8644 ), didPrimaryChildrenDefer.stack = primaryChildFragment || "", didPrimaryChildrenDefer.digest = fallbackChildren, fallbackChildren = void 0 === nextProps ? null : nextProps, fiberMode = {
8645 value: didPrimaryChildrenDefer,
8646 source: null,
8647 stack: fallbackChildren
8648 }, "string" === typeof fallbackChildren && CapturedStacks.set(didPrimaryChildrenDefer, fiberMode), queueHydrationError(fiberMode));
8649 return retrySuspenseComponentWithoutHydrating(
8650 current2,
8651 workInProgress2,
8652 renderLanes2
8653 );
8654 }
8655 didReceiveUpdate || propagateParentContextChanges(current2, workInProgress2, renderLanes2, false);
8656 didPrimaryChildrenDefer = 0 !== (renderLanes2 & current2.childLanes);
8657 if (didReceiveUpdate || didPrimaryChildrenDefer) {
8658 if (null !== currentTreeHiddenStackCursor.current)
8659 return retrySuspenseComponentWithoutHydrating(
8660 current2,
8661 workInProgress2,
8662 renderLanes2
8663 );
8664 didPrimaryChildrenDefer = workInProgressRoot;
8665 if (null !== didPrimaryChildrenDefer && (fallbackChildren = getBumpedLaneForHydration(
8666 didPrimaryChildrenDefer,
8667 renderLanes2
8668 ), 0 !== fallbackChildren && fallbackChildren !== suspenseState.retryLane))
8669 throw suspenseState.retryLane = fallbackChildren, enqueueConcurrentRenderForLane(current2, fallbackChildren), scheduleUpdateOnFiber(
8670 didPrimaryChildrenDefer,
8671 current2,
8672 fallbackChildren
8673 ), SelectiveHydrationException;
8674 isSuspenseInstancePending(suspenseInstance) || renderDidSuspendDelayIfPossible();
8675 return retrySuspenseComponentWithoutHydrating(
8676 current2,
8677 workInProgress2,
8678 renderLanes2
8679 );
8680 }
8681 if (isSuspenseInstancePending(suspenseInstance))
8682 return workInProgress2.flags |= 192, workInProgress2.child = current2.child, null;
8683 current2 = suspenseState.treeContext;
8684 nextHydratableInstance = getNextHydratable(suspenseInstance.nextSibling);
8685 hydrationParentFiber = workInProgress2;
8686 isHydrating = true;
8687 hydrationErrors = null;
8688 didSuspendOrErrorDEV = false;
8689 hydrationDiffRootDEV = null;
8690 rootOrSingletonContext = false;
8691 null !== current2 && restoreSuspendedTreeContext(workInProgress2, current2);
8692 workInProgress2 = mountSuspensePrimaryChildren(
8693 workInProgress2,
8694 nextProps.children
8695 );
8696 workInProgress2.flags |= 134221824;
8697 return workInProgress2;
8698 }
8699 function scheduleSuspenseWorkOnFiber(fiber, renderLanes2, propagationRoot) {
8700 fiber.lanes |= renderLanes2;
8701 var alternate = fiber.alternate;
8702 null !== alternate && (alternate.lanes |= renderLanes2);
8703 scheduleContextWorkOnParentPath(
8704 fiber.return,
8705 renderLanes2,
8706 propagationRoot
8707 );
8708 }
8709 function findLastContentRow(firstChild) {
8710 for (var lastContentRow = null; null !== firstChild; ) {
8711 var currentRow = firstChild.alternate;
8712 null !== currentRow && null === findFirstSuspended(currentRow) && (lastContentRow = firstChild);
8713 firstChild = firstChild.sibling;
8714 }
8715 return lastContentRow;
8716 }
8717 function initSuspenseListRenderState(workInProgress2, isBackwards, tail, lastContentRow, tailMode, treeForkCount2) {
8718 var renderState = workInProgress2.memoizedState;
8719 null === renderState ? workInProgress2.memoizedState = {
8720 isBackwards,
8721 rendering: null,
8722 renderingStartTime: 0,
8723 last: lastContentRow,
8724 tail,
8725 tailMode,
8726 treeForkCount: treeForkCount2
8727 } : (renderState.isBackwards = isBackwards, renderState.rendering = null, renderState.renderingStartTime = 0, renderState.last = lastContentRow, renderState.tail = tail, renderState.tailMode = tailMode, renderState.treeForkCount = treeForkCount2);
8728 }
8729 function reverseChildren(fiber) {
8730 var row = fiber.child;
8731 for (fiber.child = null; null !== row; ) {
8732 var nextRow = row.sibling;
8733 row.sibling = fiber.child;
8734 fiber.child = row;
8735 row = nextRow;
8736 }
8737 }
8738 function updateSuspenseListComponent(current2, workInProgress2, renderLanes2) {
8739 var nextProps = workInProgress2.pendingProps, revealOrder = nextProps.revealOrder, tailMode = nextProps.tail, newChildren = nextProps.children, suspenseContext = suspenseStackCursor.current;
8740 if (workInProgress2.flags & 128)
8741 return pushSuspenseListContext(workInProgress2, suspenseContext), null;
8742 (nextProps = 0 !== (suspenseContext & ForceSuspenseFallback)) ? (suspenseContext = suspenseContext & SubtreeSuspenseContextMask | ForceSuspenseFallback, workInProgress2.flags |= 128) : suspenseContext &= SubtreeSuspenseContextMask;
8743 pushSuspenseListContext(workInProgress2, suspenseContext);
8744 suspenseContext = null == revealOrder ? "null" : revealOrder;
8745 if (null != revealOrder && "forwards" !== revealOrder && "backwards" !== revealOrder && "unstable_legacy-backwards" !== revealOrder && "together" !== revealOrder && "independent" !== revealOrder && !didWarnAboutRevealOrder[suspenseContext])
8746 if (didWarnAboutRevealOrder[suspenseContext] = true, "string" === typeof revealOrder)
8747 switch (revealOrder.toLowerCase()) {
8748 case "together":
8749 case "forwards":
8750 case "backwards":
8751 case "independent":
8752 console.error(
8753 '"%s" is not a valid value for revealOrder on <SuspenseList />. Use lowercase "%s" instead.',
8754 revealOrder,
8755 revealOrder.toLowerCase()
8756 );
8757 break;
8758 case "forward":
8759 case "backward":
8760 console.error(
8761 '"%s" is not a valid value for revealOrder on <SuspenseList />. React uses the -s suffix in the spelling. Use "%ss" instead.',
8762 revealOrder,
8763 revealOrder.toLowerCase()
8764 );
8765 break;
8766 default:
8767 console.error(
8768 '"%s" is not a supported revealOrder on <SuspenseList />. Did you mean "independent", "together", "forwards" or "backwards"?',
8769 revealOrder
8770 );
8771 }
8772 else
8773 console.error(
8774 '%s is not a supported value for revealOrder on <SuspenseList />. Did you mean "independent", "together", "forwards" or "backwards"?',
8775 revealOrder
8776 );
8777 suspenseContext = null == tailMode ? "null" : tailMode;
8778 didWarnAboutTailOptions[suspenseContext] || null == tailMode || ("visible" !== tailMode && "collapsed" !== tailMode && "hidden" !== tailMode ? (didWarnAboutTailOptions[suspenseContext] = true, console.error(
8779 '"%s" is not a supported value for tail on <SuspenseList />. Did you mean "visible", "collapsed" or "hidden"?',
8780 tailMode
8781 )) : null != revealOrder && "forwards" !== revealOrder && "backwards" !== revealOrder && "unstable_legacy-backwards" !== revealOrder && (didWarnAboutTailOptions[suspenseContext] = true, console.error(
8782 '<SuspenseList tail="%s" /> is only valid if revealOrder is "forwards" (default) or "backwards". Did you mean to specify revealOrder="forwards"?',
8783 tailMode
8784 )));
8785 a: if ((null == revealOrder || "forwards" === revealOrder || "backwards" === revealOrder || "unstable_legacy-backwards" === revealOrder) && void 0 !== newChildren && null !== newChildren && false !== newChildren)
8786 if (isArrayImpl(newChildren))
8787 for (suspenseContext = 0; suspenseContext < newChildren.length; suspenseContext++) {
8788 if (!validateSuspenseListNestedChild(
8789 newChildren[suspenseContext],
8790 suspenseContext
8791 ))
8792 break a;
8793 }
8794 else if (suspenseContext = getIteratorFn(newChildren), "function" === typeof suspenseContext) {
8795 if (suspenseContext = suspenseContext.call(newChildren))
8796 for (var step = suspenseContext.next(), _i = 0; !step.done; step = suspenseContext.next()) {
8797 if (!validateSuspenseListNestedChild(step.value, _i)) break a;
8798 _i++;
8799 }
8800 } else
8801 console.error(
8802 'A single row was passed to a <SuspenseList revealOrder="%s" />. This is not useful since it needs multiple rows. Did you mean to pass multiple children or an array?',
8803 revealOrder
8804 );
8805 "backwards" === revealOrder && null !== current2 ? (reverseChildren(current2), reconcileChildren(current2, workInProgress2, newChildren, renderLanes2), reverseChildren(current2)) : reconcileChildren(current2, workInProgress2, newChildren, renderLanes2);
8806 isHydrating ? (warnIfNotHydrating(), newChildren = treeForkCount) : newChildren = 0;
8807 if (!nextProps && null !== current2 && 0 !== (current2.flags & 128))
8808 a: for (current2 = workInProgress2.child; null !== current2; ) {
8809 if (13 === current2.tag)
8810 null !== current2.memoizedState && scheduleSuspenseWorkOnFiber(current2, renderLanes2, workInProgress2);
8811 else if (19 === current2.tag)
8812 scheduleSuspenseWorkOnFiber(current2, renderLanes2, workInProgress2);
8813 else if (null !== current2.child) {
8814 current2.child.return = current2;
8815 current2 = current2.child;
8816 continue;
8817 }
8818 if (current2 === workInProgress2) break a;
8819 for (; null === current2.sibling; ) {
8820 if (null === current2.return || current2.return === workInProgress2)
8821 break a;
8822 current2 = current2.return;
8823 }
8824 current2.sibling.return = current2.return;
8825 current2 = current2.sibling;
8826 }
8827 switch (revealOrder) {
8828 case "backwards":
8829 renderLanes2 = findLastContentRow(workInProgress2.child);
8830 null === renderLanes2 ? (revealOrder = workInProgress2.child, workInProgress2.child = null) : (revealOrder = renderLanes2.sibling, renderLanes2.sibling = null, reverseChildren(workInProgress2));
8831 initSuspenseListRenderState(
8832 workInProgress2,
8833 true,
8834 revealOrder,
8835 null,
8836 tailMode,
8837 newChildren
8838 );
8839 break;
8840 case "unstable_legacy-backwards":
8841 renderLanes2 = null;
8842 revealOrder = workInProgress2.child;
8843 for (workInProgress2.child = null; null !== revealOrder; ) {
8844 current2 = revealOrder.alternate;
8845 if (null !== current2 && null === findFirstSuspended(current2)) {
8846 workInProgress2.child = revealOrder;
8847 break;
8848 }
8849 current2 = revealOrder.sibling;
8850 revealOrder.sibling = renderLanes2;
8851 renderLanes2 = revealOrder;
8852 revealOrder = current2;
8853 }
8854 initSuspenseListRenderState(
8855 workInProgress2,
8856 true,
8857 renderLanes2,
8858 null,
8859 tailMode,
8860 newChildren
8861 );
8862 break;
8863 case "together":
8864 initSuspenseListRenderState(
8865 workInProgress2,
8866 false,
8867 null,
8868 null,
8869 void 0,
8870 newChildren
8871 );
8872 break;
8873 case "independent":
8874 workInProgress2.memoizedState = null;
8875 break;
8876 default:
8877 renderLanes2 = findLastContentRow(workInProgress2.child), null === renderLanes2 ? (revealOrder = workInProgress2.child, workInProgress2.child = null) : (revealOrder = renderLanes2.sibling, renderLanes2.sibling = null), initSuspenseListRenderState(
8878 workInProgress2,
8879 false,
8880 revealOrder,
8881 renderLanes2,
8882 tailMode,
8883 newChildren
8884 );
8885 }
8886 return workInProgress2.child;
8887 }
8888 function updateContextProvider(current2, workInProgress2, renderLanes2) {
8889 var context = workInProgress2.type, newProps = workInProgress2.pendingProps, newValue = newProps.value;
8890 "value" in newProps || hasWarnedAboutUsingNoValuePropOnContextProvider || (hasWarnedAboutUsingNoValuePropOnContextProvider = true, console.error(
8891 "The `value` prop is required for the `<Context.Provider>`. Did you misspell it or forget to pass it?"
8892 ));
8893 pushProvider(workInProgress2, context, newValue);
8894 reconcileChildren(
8895 current2,
8896 workInProgress2,
8897 newProps.children,
8898 renderLanes2
8899 );
8900 return workInProgress2.child;
8901 }
8902 function bailoutOnAlreadyFinishedWork(current2, workInProgress2, renderLanes2) {
8903 null !== current2 && (workInProgress2.dependencies = current2.dependencies);
8904 profilerStartTime = -1;
8905 workInProgressRootSkippedLanes |= workInProgress2.lanes;
8906 if (0 === (renderLanes2 & workInProgress2.childLanes))
8907 if (null !== current2) {
8908 if (propagateParentContextChanges(
8909 current2,
8910 workInProgress2,
8911 renderLanes2,
8912 false
8913 ), 0 === (renderLanes2 & workInProgress2.childLanes))
8914 return null;
8915 } else return null;
8916 if (null !== current2 && workInProgress2.child !== current2.child)
8917 throw Error("Resuming work not yet implemented.");
8918 if (null !== workInProgress2.child) {
8919 current2 = workInProgress2.child;
8920 renderLanes2 = createWorkInProgress(current2, current2.pendingProps);
8921 workInProgress2.child = renderLanes2;
8922 for (renderLanes2.return = workInProgress2; null !== current2.sibling; )
8923 current2 = current2.sibling, renderLanes2 = renderLanes2.sibling = createWorkInProgress(current2, current2.pendingProps), renderLanes2.return = workInProgress2;
8924 renderLanes2.sibling = null;
8925 }
8926 return workInProgress2.child;
8927 }
8928 function checkScheduledUpdateOrContext(current2, renderLanes2) {
8929 if (0 !== (current2.lanes & renderLanes2)) return true;
8930 current2 = current2.dependencies;
8931 return null !== current2 && checkIfContextChanged(current2) ? true : false;
8932 }
8933 function attemptEarlyBailoutIfNoScheduledUpdate(current2, workInProgress2, renderLanes2) {
8934 switch (workInProgress2.tag) {
8935 case 3:
8936 pushHostContainer(
8937 workInProgress2,
8938 workInProgress2.stateNode.containerInfo
8939 );
8940 pushProvider(
8941 workInProgress2,
8942 CacheContext,
8943 current2.memoizedState.cache
8944 );
8945 resetHydrationState();
8946 break;
8947 case 27:
8948 case 5:
8949 pushHostContext(workInProgress2);
8950 break;
8951 case 4:
8952 pushHostContainer(
8953 workInProgress2,
8954 workInProgress2.stateNode.containerInfo
8955 );
8956 break;
8957 case 10:
8958 pushProvider(
8959 workInProgress2,
8960 workInProgress2.type,
8961 workInProgress2.memoizedProps.value
8962 );
8963 break;
8964 case 12:
8965 0 !== (renderLanes2 & workInProgress2.childLanes) && (workInProgress2.flags |= 4);
8966 workInProgress2.flags |= 2048;
8967 var stateNode = workInProgress2.stateNode;
8968 stateNode.effectDuration = -0;
8969 stateNode.passiveEffectDuration = -0;
8970 break;
8971 case 31:
8972 if (null !== workInProgress2.memoizedState)
8973 return workInProgress2.flags |= 128, pushDehydratedActivitySuspenseHandler(workInProgress2), null;
8974 break;
8975 case 13:
8976 stateNode = workInProgress2.memoizedState;
8977 if (null !== stateNode) {
8978 if (null !== stateNode.dehydrated)
8979 return pushPrimaryTreeSuspenseHandler(workInProgress2), workInProgress2.flags |= 128, null;
8980 stateNode = propagateParentContextChanges(
8981 current2,
8982 workInProgress2,
8983 renderLanes2,
8984 false
8985 );
8986 var primaryChildLanes = workInProgress2.child.childLanes;
8987 if (stateNode || 0 !== (renderLanes2 & primaryChildLanes))
8988 return updateSuspenseComponent(
8989 current2,
8990 workInProgress2,
8991 renderLanes2
8992 );
8993 pushPrimaryTreeSuspenseHandler(workInProgress2);
8994 current2 = bailoutOnAlreadyFinishedWork(
8995 current2,
8996 workInProgress2,
8997 renderLanes2
8998 );
8999 return null !== current2 ? current2.sibling : null;
9000 }
9001 pushPrimaryTreeSuspenseHandler(workInProgress2);
9002 break;
9003 case 19:
9004 if (workInProgress2.flags & 128)
9005 return updateSuspenseListComponent(
9006 current2,
9007 workInProgress2,
9008 renderLanes2
9009 );
9010 primaryChildLanes = 0 !== (current2.flags & 128);
9011 stateNode = 0 !== (renderLanes2 & workInProgress2.childLanes);
9012 stateNode || (propagateParentContextChanges(
9013 current2,
9014 workInProgress2,
9015 renderLanes2,
9016 false
9017 ), stateNode = 0 !== (renderLanes2 & workInProgress2.childLanes));
9018 if (primaryChildLanes) {
9019 if (stateNode)
9020 return updateSuspenseListComponent(
9021 current2,
9022 workInProgress2,
9023 renderLanes2
9024 );
9025 workInProgress2.flags |= 128;
9026 }
9027 primaryChildLanes = workInProgress2.memoizedState;
9028 null !== primaryChildLanes && (primaryChildLanes.rendering = null, primaryChildLanes.tail = null, primaryChildLanes.lastEffect = null);
9029 pushSuspenseListContext(workInProgress2, suspenseStackCursor.current);
9030 if (stateNode) break;
9031 else return null;
9032 case 22:
9033 return workInProgress2.lanes = 0, updateOffscreenComponent(
9034 current2,
9035 workInProgress2,
9036 renderLanes2,
9037 workInProgress2.pendingProps
9038 );
9039 case 24:
9040 pushProvider(
9041 workInProgress2,
9042 CacheContext,
9043 current2.memoizedState.cache
9044 );
9045 }
9046 return bailoutOnAlreadyFinishedWork(current2, workInProgress2, renderLanes2);
9047 }
9048 function beginWork(current2, workInProgress2, renderLanes2) {
9049 if (workInProgress2._debugNeedsRemount && null !== current2) {
9050 renderLanes2 = createFiberFromTypeAndProps(
9051 resolveTypeForHotReloading(workInProgress2.elementType),
9052 workInProgress2.key,
9053 workInProgress2.pendingProps,
9054 workInProgress2._debugOwner || null,
9055 workInProgress2.mode,
9056 workInProgress2.lanes
9057 );
9058 renderLanes2._debugStack = workInProgress2._debugStack;
9059 renderLanes2._debugTask = workInProgress2._debugTask;
9060 var returnFiber = workInProgress2.return;
9061 if (null === returnFiber) throw Error("Cannot swap the root fiber.");
9062 current2.alternate = null;
9063 workInProgress2.alternate = null;
9064 renderLanes2.index = workInProgress2.index;
9065 renderLanes2.sibling = workInProgress2.sibling;
9066 renderLanes2.return = workInProgress2.return;
9067 renderLanes2.ref = workInProgress2.ref;
9068 renderLanes2._debugInfo = workInProgress2._debugInfo;
9069 if (workInProgress2 === returnFiber.child)
9070 returnFiber.child = renderLanes2;
9071 else {
9072 var prevSibling = returnFiber.child;
9073 if (null === prevSibling)
9074 throw Error("Expected parent to have a child.");
9075 for (; prevSibling.sibling !== workInProgress2; )
9076 if (prevSibling = prevSibling.sibling, null === prevSibling)
9077 throw Error("Expected to find the previous sibling.");
9078 prevSibling.sibling = renderLanes2;
9079 }
9080 workInProgress2 = returnFiber.deletions;
9081 null === workInProgress2 ? (returnFiber.deletions = [current2], returnFiber.flags |= 16) : workInProgress2.push(current2);
9082 renderLanes2.flags |= 134217730;
9083 return renderLanes2;
9084 }
9085 if (null !== current2)
9086 if (current2.memoizedProps !== workInProgress2.pendingProps || workInProgress2.type !== current2.type)
9087 didReceiveUpdate = true;
9088 else {
9089 if (!checkScheduledUpdateOrContext(current2, renderLanes2) && 0 === (workInProgress2.flags & 128))
9090 return didReceiveUpdate = false, attemptEarlyBailoutIfNoScheduledUpdate(
9091 current2,
9092 workInProgress2,
9093 renderLanes2
9094 );
9095 didReceiveUpdate = 0 !== (current2.flags & 131072) ? true : false;
9096 }
9097 else {
9098 didReceiveUpdate = false;
9099 if (returnFiber = isHydrating)
9100 warnIfNotHydrating(), returnFiber = 0 !== (workInProgress2.flags & 1048576);
9101 returnFiber && (returnFiber = workInProgress2.index, warnIfNotHydrating(), pushTreeId(workInProgress2, treeForkCount, returnFiber));
9102 }
9103 workInProgress2.lanes = 0;
9104 switch (workInProgress2.tag) {
9105 case 16:
9106 a: if (returnFiber = workInProgress2.pendingProps, current2 = resolveLazy(workInProgress2.elementType), current2 = resolveTypeForHotReloading(current2), workInProgress2.type = current2, "function" === typeof current2)
9107 shouldConstruct(current2) ? (returnFiber = resolveClassComponentProps(
9108 current2,
9109 returnFiber
9110 ), workInProgress2.tag = 1, workInProgress2 = updateClassComponent(
9111 null,
9112 workInProgress2,
9113 current2,
9114 returnFiber,
9115 renderLanes2
9116 )) : (workInProgress2.tag = 0, validateFunctionComponentInDev(workInProgress2, current2), workInProgress2 = updateFunctionComponent(
9117 null,
9118 workInProgress2,
9119 current2,
9120 returnFiber,
9121 renderLanes2
9122 ));
9123 else {
9124 if (void 0 !== current2 && null !== current2) {
9125 if (prevSibling = current2.$$typeof, prevSibling === REACT_FORWARD_REF_TYPE) {
9126 workInProgress2.tag = 11;
9127 workInProgress2 = updateForwardRef(
9128 null,
9129 workInProgress2,
9130 current2,
9131 returnFiber,
9132 renderLanes2
9133 );
9134 break a;
9135 } else if (prevSibling === REACT_MEMO_TYPE) {
9136 workInProgress2.tag = 14;
9137 workInProgress2 = updateMemoComponent(
9138 null,
9139 workInProgress2,
9140 current2,
9141 returnFiber,
9142 renderLanes2
9143 );
9144 break a;
9145 } else if (prevSibling === REACT_CONTEXT_TYPE) {
9146 workInProgress2.tag = 10;
9147 workInProgress2.type = current2;
9148 workInProgress2 = updateContextProvider(
9149 null,
9150 workInProgress2,
9151 renderLanes2
9152 );
9153 break a;
9154 }
9155 }
9156 workInProgress2 = "";
9157 null !== current2 && "object" === typeof current2 && current2.$$typeof === REACT_LAZY_TYPE && (workInProgress2 = " Did you wrap a component in React.lazy() more than once?");
9158 renderLanes2 = getComponentNameFromType(current2) || current2;
9159 throw Error(
9160 "Element type is invalid. Received a promise that resolves to: " + renderLanes2 + ". Lazy element type must resolve to a class or function." + workInProgress2
9161 );
9162 }
9163 return workInProgress2;
9164 case 0:
9165 return updateFunctionComponent(
9166 current2,
9167 workInProgress2,
9168 workInProgress2.type,
9169 workInProgress2.pendingProps,
9170 renderLanes2
9171 );
9172 case 1:
9173 return returnFiber = workInProgress2.type, prevSibling = resolveClassComponentProps(
9174 returnFiber,
9175 workInProgress2.pendingProps
9176 ), updateClassComponent(
9177 current2,
9178 workInProgress2,
9179 returnFiber,
9180 prevSibling,
9181 renderLanes2
9182 );
9183 case 3:
9184 a: {
9185 pushHostContainer(
9186 workInProgress2,
9187 workInProgress2.stateNode.containerInfo
9188 );
9189 if (null === current2)
9190 throw Error(
9191 "Should have a current fiber. This is a bug in React."
9192 );
9193 returnFiber = workInProgress2.pendingProps;
9194 var prevState = workInProgress2.memoizedState;
9195 prevSibling = prevState.element;
9196 cloneUpdateQueue(current2, workInProgress2);
9197 processUpdateQueue(workInProgress2, returnFiber, null, renderLanes2);
9198 var nextState = workInProgress2.memoizedState;
9199 returnFiber = nextState.cache;
9200 pushProvider(workInProgress2, CacheContext, returnFiber);
9201 returnFiber !== prevState.cache && propagateContextChanges(
9202 workInProgress2,
9203 [CacheContext],
9204 renderLanes2,
9205 true
9206 );
9207 suspendIfUpdateReadFromEntangledAsyncAction();
9208 returnFiber = nextState.element;
9209 if (prevState.isDehydrated)
9210 if (prevState = {
9211 element: returnFiber,
9212 isDehydrated: false,
9213 cache: nextState.cache
9214 }, workInProgress2.updateQueue.baseState = prevState, workInProgress2.memoizedState = prevState, workInProgress2.flags & 256) {
9215 workInProgress2 = mountHostRootWithoutHydrating(
9216 current2,
9217 workInProgress2,
9218 returnFiber,
9219 renderLanes2
9220 );
9221 break a;
9222 } else if (returnFiber !== prevSibling) {
9223 prevSibling = createCapturedValueAtFiber(
9224 Error(
9225 "This root received an early update, before anything was able hydrate. Switched the entire root to client rendering."
9226 ),
9227 workInProgress2
9228 );
9229 queueHydrationError(prevSibling);
9230 workInProgress2 = mountHostRootWithoutHydrating(
9231 current2,
9232 workInProgress2,
9233 returnFiber,
9234 renderLanes2
9235 );
9236 break a;
9237 } else {
9238 current2 = workInProgress2.stateNode.containerInfo;
9239 switch (current2.nodeType) {
9240 case 9:
9241 current2 = current2.body;
9242 break;
9243 default:
9244 current2 = "HTML" === current2.nodeName ? current2.ownerDocument.body : current2;
9245 }
9246 nextHydratableInstance = getNextHydratable(current2.firstChild);
9247 hydrationParentFiber = workInProgress2;
9248 isHydrating = true;
9249 hydrationErrors = null;
9250 didSuspendOrErrorDEV = false;
9251 hydrationDiffRootDEV = null;
9252 rootOrSingletonContext = true;
9253 renderLanes2 = mountChildFibers(
9254 workInProgress2,
9255 null,
9256 returnFiber,
9257 renderLanes2
9258 );
9259 for (workInProgress2.child = renderLanes2; renderLanes2; )
9260 renderLanes2.flags = renderLanes2.flags & -3 | 134221824, renderLanes2 = renderLanes2.sibling;
9261 }
9262 else {
9263 resetHydrationState();
9264 if (returnFiber === prevSibling) {
9265 workInProgress2 = bailoutOnAlreadyFinishedWork(
9266 current2,
9267 workInProgress2,
9268 renderLanes2
9269 );
9270 break a;
9271 }
9272 reconcileChildren(
9273 current2,
9274 workInProgress2,
9275 returnFiber,
9276 renderLanes2
9277 );
9278 }
9279 workInProgress2 = workInProgress2.child;
9280 }
9281 return workInProgress2;
9282 case 26:
9283 return markRef(current2, workInProgress2), null === current2 ? (renderLanes2 = getResource(
9284 workInProgress2.type,
9285 null,
9286 workInProgress2.pendingProps,
9287 null
9288 )) ? workInProgress2.memoizedState = renderLanes2 : isHydrating || (workInProgress2.stateNode = createHoistableInstance(
9289 workInProgress2.type,
9290 workInProgress2.pendingProps,
9291 requiredContext(rootInstanceStackCursor.current),
9292 workInProgress2
9293 )) : workInProgress2.memoizedState = getResource(
9294 workInProgress2.type,
9295 current2.memoizedProps,
9296 workInProgress2.pendingProps,
9297 current2.memoizedState
9298 ), null;
9299 case 27:
9300 return pushHostContext(workInProgress2), null === current2 && isHydrating && (returnFiber = requiredContext(rootInstanceStackCursor.current), prevSibling = getHostContext(), returnFiber = workInProgress2.stateNode = resolveSingletonInstance(
9301 workInProgress2.type,
9302 workInProgress2.pendingProps,
9303 returnFiber,
9304 prevSibling,
9305 false
9306 ), didSuspendOrErrorDEV || (prevSibling = diffHydratedProperties(
9307 returnFiber,
9308 workInProgress2.type,
9309 workInProgress2.pendingProps,
9310 prevSibling
9311 ), null !== prevSibling && (buildHydrationDiffNode(workInProgress2, 0).serverProps = prevSibling)), hydrationParentFiber = workInProgress2, rootOrSingletonContext = true, prevSibling = nextHydratableInstance, isSingletonScope(workInProgress2.type) ? (previousHydratableOnEnteringScopedSingleton = prevSibling, nextHydratableInstance = getNextHydratable(
9312 returnFiber.firstChild
9313 )) : nextHydratableInstance = prevSibling), reconcileChildren(
9314 current2,
9315 workInProgress2,
9316 workInProgress2.pendingProps.children,
9317 renderLanes2
9318 ), markRef(current2, workInProgress2), null === current2 && (workInProgress2.flags |= 4194304), workInProgress2.child;
9319 case 5:
9320 return null === current2 && isHydrating && (prevState = getHostContext(), returnFiber = validateDOMNesting(
9321 workInProgress2.type,
9322 prevState.ancestorInfo
9323 ), prevSibling = nextHydratableInstance, (nextState = !prevSibling) || (nextState = canHydrateInstance(
9324 prevSibling,
9325 workInProgress2.type,
9326 workInProgress2.pendingProps,
9327 rootOrSingletonContext
9328 ), null !== nextState ? (workInProgress2.stateNode = nextState, didSuspendOrErrorDEV || (prevState = diffHydratedProperties(
9329 nextState,
9330 workInProgress2.type,
9331 workInProgress2.pendingProps,
9332 prevState
9333 ), null !== prevState && (buildHydrationDiffNode(workInProgress2, 0).serverProps = prevState)), hydrationParentFiber = workInProgress2, nextHydratableInstance = getNextHydratable(
9334 nextState.firstChild
9335 ), rootOrSingletonContext = false, prevState = true) : prevState = false, nextState = !prevState), nextState && (returnFiber && warnNonHydratedInstance(workInProgress2, prevSibling), throwOnHydrationMismatch(workInProgress2))), pushHostContext(workInProgress2), prevSibling = workInProgress2.type, prevState = workInProgress2.pendingProps, nextState = null !== current2 ? current2.memoizedProps : null, returnFiber = prevState.children, shouldSetTextContent(prevSibling, prevState) ? returnFiber = null : null !== nextState && shouldSetTextContent(prevSibling, nextState) && (workInProgress2.flags |= 32), null !== workInProgress2.memoizedState && (prevSibling = renderWithHooks(
9336 current2,
9337 workInProgress2,
9338 TransitionAwareHostComponent,
9339 null,
9340 null,
9341 renderLanes2
9342 ), HostTransitionContext._currentValue = prevSibling), markRef(current2, workInProgress2), reconcileChildren(
9343 current2,
9344 workInProgress2,
9345 returnFiber,
9346 renderLanes2
9347 ), workInProgress2.child;
9348 case 6:
9349 return null === current2 && isHydrating && (renderLanes2 = workInProgress2.pendingProps, current2 = getHostContext(), returnFiber = current2.ancestorInfo.current, renderLanes2 = null != returnFiber ? validateTextNesting(
9350 renderLanes2,
9351 returnFiber.tag,
9352 current2.ancestorInfo.implicitRootScope
9353 ) : true, current2 = nextHydratableInstance, (returnFiber = !current2) || (returnFiber = canHydrateTextInstance(
9354 current2,
9355 workInProgress2.pendingProps,
9356 rootOrSingletonContext
9357 ), null !== returnFiber ? (workInProgress2.stateNode = returnFiber, hydrationParentFiber = workInProgress2, nextHydratableInstance = null, returnFiber = true) : returnFiber = false, returnFiber = !returnFiber), returnFiber && (renderLanes2 && warnNonHydratedInstance(workInProgress2, current2), throwOnHydrationMismatch(workInProgress2))), null;
9358 case 13:
9359 return updateSuspenseComponent(current2, workInProgress2, renderLanes2);
9360 case 4:
9361 return pushHostContainer(
9362 workInProgress2,
9363 workInProgress2.stateNode.containerInfo
9364 ), returnFiber = workInProgress2.pendingProps, null === current2 ? workInProgress2.child = reconcileChildFibers(
9365 workInProgress2,
9366 null,
9367 returnFiber,
9368 renderLanes2
9369 ) : reconcileChildren(
9370 current2,
9371 workInProgress2,
9372 returnFiber,
9373 renderLanes2
9374 ), workInProgress2.child;
9375 case 11:
9376 return updateForwardRef(
9377 current2,
9378 workInProgress2,
9379 workInProgress2.type,
9380 workInProgress2.pendingProps,
9381 renderLanes2
9382 );
9383 case 7:
9384 return returnFiber = workInProgress2.pendingProps, markRef(current2, workInProgress2), reconcileChildren(
9385 current2,
9386 workInProgress2,
9387 returnFiber,
9388 renderLanes2
9389 ), workInProgress2.child;
9390 case 8:
9391 return reconcileChildren(
9392 current2,
9393 workInProgress2,
9394 workInProgress2.pendingProps.children,
9395 renderLanes2
9396 ), workInProgress2.child;
9397 case 12:
9398 return workInProgress2.flags |= 4, workInProgress2.flags |= 2048, returnFiber = workInProgress2.stateNode, returnFiber.effectDuration = -0, returnFiber.passiveEffectDuration = -0, reconcileChildren(
9399 current2,
9400 workInProgress2,
9401 workInProgress2.pendingProps.children,
9402 renderLanes2
9403 ), workInProgress2.child;
9404 case 10:
9405 return updateContextProvider(current2, workInProgress2, renderLanes2);
9406 case 9:
9407 return prevSibling = workInProgress2.type._context, returnFiber = workInProgress2.pendingProps.children, "function" !== typeof returnFiber && console.error(
9408 "A context consumer was rendered with multiple children, or a child that isn't a function. A context consumer expects a single child that is a function. If you did pass a function, make sure there is no trailing or leading whitespace around it."
9409 ), prepareToReadContext(workInProgress2), prevSibling = readContext(prevSibling), returnFiber = callComponentInDEV(
9410 returnFiber,
9411 prevSibling,
9412 void 0
9413 ), workInProgress2.flags |= 1, reconcileChildren(
9414 current2,
9415 workInProgress2,
9416 returnFiber,
9417 renderLanes2
9418 ), workInProgress2.child;
9419 case 14:
9420 return updateMemoComponent(
9421 current2,
9422 workInProgress2,
9423 workInProgress2.type,
9424 workInProgress2.pendingProps,
9425 renderLanes2
9426 );
9427 case 15:
9428 return updateSimpleMemoComponent(
9429 current2,
9430 workInProgress2,
9431 workInProgress2.type,
9432 workInProgress2.pendingProps,
9433 renderLanes2
9434 );
9435 case 19:
9436 return updateSuspenseListComponent(
9437 current2,
9438 workInProgress2,
9439 renderLanes2
9440 );
9441 case 31:
9442 return updateActivityComponent(current2, workInProgress2, renderLanes2);
9443 case 22:
9444 return updateOffscreenComponent(
9445 current2,
9446 workInProgress2,
9447 renderLanes2,
9448 workInProgress2.pendingProps
9449 );
9450 case 24:
9451 return prepareToReadContext(workInProgress2), returnFiber = readContext(CacheContext), null === current2 ? (prevSibling = peekCacheFromPool(), null === prevSibling && (prevSibling = workInProgressRoot, prevState = createCache(), prevSibling.pooledCache = prevState, retainCache(prevState), null !== prevState && (prevSibling.pooledCacheLanes |= renderLanes2), prevSibling = prevState), workInProgress2.memoizedState = {
9452 parent: returnFiber,
9453 cache: prevSibling
9454 }, initializeUpdateQueue(workInProgress2), pushProvider(workInProgress2, CacheContext, prevSibling)) : (0 !== (current2.lanes & renderLanes2) && (cloneUpdateQueue(current2, workInProgress2), processUpdateQueue(workInProgress2, null, null, renderLanes2), suspendIfUpdateReadFromEntangledAsyncAction()), prevSibling = current2.memoizedState, prevState = workInProgress2.memoizedState, prevSibling.parent !== returnFiber ? (prevSibling = {
9455 parent: returnFiber,
9456 cache: returnFiber
9457 }, workInProgress2.memoizedState = prevSibling, 0 === workInProgress2.lanes && (workInProgress2.memoizedState = workInProgress2.updateQueue.baseState = prevSibling), pushProvider(workInProgress2, CacheContext, returnFiber)) : (returnFiber = prevState.cache, pushProvider(workInProgress2, CacheContext, returnFiber), returnFiber !== prevSibling.cache && propagateContextChanges(
9458 workInProgress2,
9459 [CacheContext],
9460 renderLanes2,
9461 true
9462 ))), reconcileChildren(
9463 current2,
9464 workInProgress2,
9465 workInProgress2.pendingProps.children,
9466 renderLanes2
9467 ), workInProgress2.child;
9468 case 30:
9469 return null === workInProgress2.stateNode && (workInProgress2.stateNode = {
9470 autoName: null,
9471 paired: null,
9472 clones: null,
9473 ref: null
9474 }), returnFiber = workInProgress2.pendingProps, null != returnFiber.name && "auto" !== returnFiber.name ? workInProgress2.flags |= null === current2 ? 18882560 : 18874368 : isHydrating && pushMaterializedTreeId(workInProgress2), void 0 !== returnFiber.className && (prevSibling = "string" === typeof returnFiber.className ? JSON.stringify(returnFiber.className) : "{...}", didWarnAboutClassNameOnViewTransition[prevSibling] || (didWarnAboutClassNameOnViewTransition[prevSibling] = true, console.error(
9475 `<ViewTransition> doesn't accept a "className" prop. It has been renamed to "default".
9476 - <ViewTransition className=%s>
9477 + <ViewTransition default=%s>`,
9478 prevSibling,
9479 prevSibling
9480 ))), null !== current2 && current2.memoizedProps.name !== returnFiber.name ? workInProgress2.flags |= 4194816 : markRef(current2, workInProgress2), reconcileChildren(
9481 current2,
9482 workInProgress2,
9483 returnFiber.children,
9484 renderLanes2
9485 ), workInProgress2.child;
9486 case 29:
9487 throw workInProgress2.pendingProps;
9488 }
9489 throw Error(
9490 "Unknown unit of work tag (" + workInProgress2.tag + "). This error is likely caused by a bug in React. Please file an issue."
9491 );
9492 }
9493 function markUpdate(workInProgress2) {
9494 workInProgress2.flags |= 4;
9495 }
9496 function preloadInstanceAndSuspendIfNeeded(workInProgress2, type, oldProps, newProps, renderLanes2) {
9497 var JSCompiler_temp;
9498 if (JSCompiler_temp = (workInProgress2.mode & SuspenseyImagesMode) !== NoMode)
9499 JSCompiler_temp = null === oldProps ? maySuspendCommit(type, newProps) : maySuspendCommit(type, newProps) && (newProps.src !== oldProps.src || newProps.srcSet !== oldProps.srcSet);
9500 if (JSCompiler_temp) {
9501 if (workInProgress2.flags |= 16777216, (renderLanes2 & 335544128) === renderLanes2)
9502 if (workInProgress2.stateNode.complete) workInProgress2.flags |= 8192;
9503 else if (shouldRemainOnPreviousScreen()) workInProgress2.flags |= 8192;
9504 else
9505 throw suspendedThenable = noopSuspenseyCommitThenable, SuspenseyCommitException;
9506 } else workInProgress2.flags &= -16777217;
9507 }
9508 function preloadResourceAndSuspendIfNeeded(workInProgress2, resource) {
9509 if ("stylesheet" !== resource.type || (resource.state.loading & Inserted) !== NotLoaded)
9510 workInProgress2.flags &= -16777217;
9511 else if (workInProgress2.flags |= 16777216, !preloadResource(resource))
9512 if (shouldRemainOnPreviousScreen()) workInProgress2.flags |= 8192;
9513 else
9514 throw suspendedThenable = noopSuspenseyCommitThenable, SuspenseyCommitException;
9515 }
9516 function scheduleRetryEffect(workInProgress2, retryQueue) {
9517 null !== retryQueue && (workInProgress2.flags |= 4);
9518 workInProgress2.flags & 16384 && (retryQueue = 22 !== workInProgress2.tag ? claimNextRetryLane() : 536870912, workInProgress2.lanes |= retryQueue, workInProgressSuspendedRetryLanes |= retryQueue);
9519 }
9520 function cutOffTailIfNeeded(renderState, hasRenderedATailFallback) {
9521 if (!isHydrating)
9522 switch (renderState.tailMode) {
9523 case "visible":
9524 break;
9525 case "collapsed":
9526 for (var tailNode = renderState.tail, lastTailNode = null; null !== tailNode; )
9527 null !== tailNode.alternate && (lastTailNode = tailNode), tailNode = tailNode.sibling;
9528 null === lastTailNode ? hasRenderedATailFallback || null === renderState.tail ? renderState.tail = null : renderState.tail.sibling = null : lastTailNode.sibling = null;
9529 break;
9530 default:
9531 hasRenderedATailFallback = renderState.tail;
9532 for (tailNode = null; null !== hasRenderedATailFallback; )
9533 null !== hasRenderedATailFallback.alternate && (tailNode = hasRenderedATailFallback), hasRenderedATailFallback = hasRenderedATailFallback.sibling;
9534 null === tailNode ? renderState.tail = null : tailNode.sibling = null;
9535 }
9536 }
9537 function bubbleProperties(completedWork) {
9538 var didBailout = null !== completedWork.alternate && completedWork.alternate.child === completedWork.child, newChildLanes = 0, subtreeFlags = 0;
9539 if (didBailout)
9540 if ((completedWork.mode & ProfileMode) !== NoMode) {
9541 for (var _treeBaseDuration = completedWork.selfBaseDuration, _child2 = completedWork.child; null !== _child2; )
9542 newChildLanes |= _child2.lanes | _child2.childLanes, subtreeFlags |= _child2.subtreeFlags & 1206910976, subtreeFlags |= _child2.flags & 1206910976, _treeBaseDuration += _child2.treeBaseDuration, _child2 = _child2.sibling;
9543 completedWork.treeBaseDuration = _treeBaseDuration;
9544 } else
9545 for (_treeBaseDuration = completedWork.child; null !== _treeBaseDuration; )
9546 newChildLanes |= _treeBaseDuration.lanes | _treeBaseDuration.childLanes, subtreeFlags |= _treeBaseDuration.subtreeFlags & 1206910976, subtreeFlags |= _treeBaseDuration.flags & 1206910976, _treeBaseDuration.return = completedWork, _treeBaseDuration = _treeBaseDuration.sibling;
9547 else if ((completedWork.mode & ProfileMode) !== NoMode) {
9548 _treeBaseDuration = completedWork.actualDuration;
9549 _child2 = completedWork.selfBaseDuration;
9550 for (var child = completedWork.child; null !== child; )
9551 newChildLanes |= child.lanes | child.childLanes, subtreeFlags |= child.subtreeFlags, subtreeFlags |= child.flags, _treeBaseDuration += child.actualDuration, _child2 += child.treeBaseDuration, child = child.sibling;
9552 completedWork.actualDuration = _treeBaseDuration;
9553 completedWork.treeBaseDuration = _child2;
9554 } else
9555 for (_treeBaseDuration = completedWork.child; null !== _treeBaseDuration; )
9556 newChildLanes |= _treeBaseDuration.lanes | _treeBaseDuration.childLanes, subtreeFlags |= _treeBaseDuration.subtreeFlags, subtreeFlags |= _treeBaseDuration.flags, _treeBaseDuration.return = completedWork, _treeBaseDuration = _treeBaseDuration.sibling;
9557 completedWork.subtreeFlags |= subtreeFlags;
9558 completedWork.childLanes = newChildLanes;
9559 return didBailout;
9560 }
9561 function completeWork(current2, workInProgress2, renderLanes2) {
9562 var newProps = workInProgress2.pendingProps;
9563 popTreeContext(workInProgress2);
9564 switch (workInProgress2.tag) {
9565 case 16:
9566 case 15:
9567 case 0:
9568 case 11:
9569 case 7:
9570 case 8:
9571 case 12:
9572 case 9:
9573 case 14:
9574 return bubbleProperties(workInProgress2), null;
9575 case 1:
9576 return bubbleProperties(workInProgress2), null;
9577 case 3:
9578 renderLanes2 = workInProgress2.stateNode;
9579 newProps = null;
9580 null !== current2 && (newProps = current2.memoizedState.cache);
9581 workInProgress2.memoizedState.cache !== newProps && (workInProgress2.flags |= 2048);
9582 popProvider(CacheContext, workInProgress2);
9583 popHostContainer(workInProgress2);
9584 renderLanes2.pendingContext && (renderLanes2.context = renderLanes2.pendingContext, renderLanes2.pendingContext = null);
9585 if (null === current2 || null === current2.child)
9586 popHydrationState(workInProgress2) ? (emitPendingHydrationWarnings(), markUpdate(workInProgress2)) : null === current2 || current2.memoizedState.isDehydrated && 0 === (workInProgress2.flags & 256) || (workInProgress2.flags |= 1024, upgradeHydrationErrorsToRecoverable());
9587 bubbleProperties(workInProgress2);
9588 return null;
9589 case 26:
9590 var type = workInProgress2.type, nextResource = workInProgress2.memoizedState;
9591 null === current2 ? (markUpdate(workInProgress2), null !== nextResource ? (bubbleProperties(workInProgress2), preloadResourceAndSuspendIfNeeded(
9592 workInProgress2,
9593 nextResource
9594 )) : (bubbleProperties(workInProgress2), preloadInstanceAndSuspendIfNeeded(
9595 workInProgress2,
9596 type,
9597 null,
9598 newProps,
9599 renderLanes2
9600 ))) : nextResource ? nextResource !== current2.memoizedState ? (markUpdate(workInProgress2), bubbleProperties(workInProgress2), preloadResourceAndSuspendIfNeeded(
9601 workInProgress2,
9602 nextResource
9603 )) : (bubbleProperties(workInProgress2), workInProgress2.flags &= -16777217) : (current2 = current2.memoizedProps, current2 !== newProps && markUpdate(workInProgress2), bubbleProperties(workInProgress2), preloadInstanceAndSuspendIfNeeded(
9604 workInProgress2,
9605 type,
9606 current2,
9607 newProps,
9608 renderLanes2
9609 ));
9610 return null;
9611 case 27:
9612 popHostContext(workInProgress2);
9613 renderLanes2 = requiredContext(rootInstanceStackCursor.current);
9614 type = workInProgress2.type;
9615 if (null !== current2 && null != workInProgress2.stateNode)
9616 current2.memoizedProps !== newProps && markUpdate(workInProgress2);
9617 else {
9618 if (!newProps) {
9619 if (null === workInProgress2.stateNode)
9620 throw Error(
9621 "We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue."
9622 );
9623 bubbleProperties(workInProgress2);
9624 workInProgress2.subtreeFlags &= -33554433;
9625 return null;
9626 }
9627 current2 = getHostContext();
9628 popHydrationState(workInProgress2) ? prepareToHydrateHostInstance(workInProgress2, current2) : (current2 = resolveSingletonInstance(
9629 type,
9630 newProps,
9631 renderLanes2,
9632 current2,
9633 true
9634 ), workInProgress2.stateNode = current2, markUpdate(workInProgress2));
9635 }
9636 bubbleProperties(workInProgress2);
9637 workInProgress2.subtreeFlags &= -33554433;
9638 return null;
9639 case 5:
9640 popHostContext(workInProgress2);
9641 type = workInProgress2.type;
9642 if (null !== current2 && null != workInProgress2.stateNode)
9643 current2.memoizedProps !== newProps && markUpdate(workInProgress2);
9644 else {
9645 if (!newProps) {
9646 if (null === workInProgress2.stateNode)
9647 throw Error(
9648 "We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue."
9649 );
9650 bubbleProperties(workInProgress2);
9651 workInProgress2.subtreeFlags &= -33554433;
9652 return null;
9653 }
9654 var _currentHostContext = getHostContext();
9655 if (popHydrationState(workInProgress2))
9656 prepareToHydrateHostInstance(workInProgress2, _currentHostContext);
9657 else {
9658 nextResource = requiredContext(rootInstanceStackCursor.current);
9659 validateDOMNesting(type, _currentHostContext.ancestorInfo);
9660 _currentHostContext = _currentHostContext.context;
9661 nextResource = getOwnerDocumentFromRootContainer(nextResource);
9662 switch (_currentHostContext) {
9663 case HostContextNamespaceSvg:
9664 nextResource = nextResource.createElementNS(
9665 SVG_NAMESPACE,
9666 type
9667 );
9668 break;
9669 case HostContextNamespaceMath:
9670 nextResource = nextResource.createElementNS(
9671 MATH_NAMESPACE,
9672 type
9673 );
9674 break;
9675 default:
9676 switch (type) {
9677 case "svg":
9678 nextResource = nextResource.createElementNS(
9679 SVG_NAMESPACE,
9680 type
9681 );
9682 break;
9683 case "math":
9684 nextResource = nextResource.createElementNS(
9685 MATH_NAMESPACE,
9686 type
9687 );
9688 break;
9689 case "script":
9690 nextResource = nextResource.createElement("div");
9691 didWarnScriptTags || isScriptDataBlock(newProps) || (console.error(
9692 "Encountered a script tag while rendering React component. Scripts inside React components are never executed when rendering on the client. Consider using template tag instead (https://developer.mozilla.org/en-US/docs/Web/HTML/Element/template)."
9693 ), didWarnScriptTags = true);
9694 nextResource.innerHTML = "<script><\/script>";
9695 nextResource = nextResource.removeChild(
9696 nextResource.firstChild
9697 );
9698 break;
9699 case "select":
9700 nextResource = "string" === typeof newProps.is ? nextResource.createElement("select", {
9701 is: newProps.is
9702 }) : nextResource.createElement("select");
9703 newProps.multiple ? nextResource.multiple = true : newProps.size && (nextResource.size = newProps.size);
9704 break;
9705 default:
9706 nextResource = "string" === typeof newProps.is ? nextResource.createElement(type, {
9707 is: newProps.is
9708 }) : nextResource.createElement(type), -1 === type.indexOf("-") && (type !== type.toLowerCase() && console.error(
9709 "<%s /> is using incorrect casing. Use PascalCase for React components, or lowercase for HTML elements.",
9710 type
9711 ), "[object HTMLUnknownElement]" !== Object.prototype.toString.call(nextResource) || hasOwnProperty.call(warnedUnknownTags, type) || (warnedUnknownTags[type] = true, console.error(
9712 "The tag <%s> is unrecognized in this browser. If you meant to render a React component, start its name with an uppercase letter.",
9713 type
9714 )));
9715 }
9716 }
9717 nextResource[internalInstanceKey] = workInProgress2;
9718 nextResource[internalPropsKey] = newProps;
9719 a: for (_currentHostContext = workInProgress2.child; null !== _currentHostContext; ) {
9720 if (5 === _currentHostContext.tag || 6 === _currentHostContext.tag)
9721 nextResource.appendChild(_currentHostContext.stateNode);
9722 else if (4 !== _currentHostContext.tag && 27 !== _currentHostContext.tag && null !== _currentHostContext.child) {
9723 _currentHostContext.child.return = _currentHostContext;
9724 _currentHostContext = _currentHostContext.child;
9725 continue;
9726 }
9727 if (_currentHostContext === workInProgress2) break a;
9728 for (; null === _currentHostContext.sibling; ) {
9729 if (null === _currentHostContext.return || _currentHostContext.return === workInProgress2)
9730 break a;
9731 _currentHostContext = _currentHostContext.return;
9732 }
9733 _currentHostContext.sibling.return = _currentHostContext.return;
9734 _currentHostContext = _currentHostContext.sibling;
9735 }
9736 workInProgress2.stateNode = nextResource;
9737 a: switch (setInitialProperties(nextResource, type, newProps), type) {
9738 case "button":
9739 case "input":
9740 case "select":
9741 case "textarea":
9742 newProps = !!newProps.autoFocus;
9743 break a;
9744 case "img":
9745 newProps = true;
9746 break a;
9747 default:
9748 newProps = false;
9749 }
9750 newProps && markUpdate(workInProgress2);
9751 }
9752 }
9753 bubbleProperties(workInProgress2);
9754 workInProgress2.subtreeFlags &= -33554433;
9755 preloadInstanceAndSuspendIfNeeded(
9756 workInProgress2,
9757 workInProgress2.type,
9758 null === current2 ? null : current2.memoizedProps,
9759 workInProgress2.pendingProps,
9760 renderLanes2
9761 );
9762 return null;
9763 case 6:
9764 if (current2 && null != workInProgress2.stateNode)
9765 current2.memoizedProps !== newProps && markUpdate(workInProgress2);
9766 else {
9767 if ("string" !== typeof newProps && null === workInProgress2.stateNode)
9768 throw Error(
9769 "We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue."
9770 );
9771 current2 = requiredContext(rootInstanceStackCursor.current);
9772 renderLanes2 = getHostContext();
9773 if (popHydrationState(workInProgress2)) {
9774 current2 = workInProgress2.stateNode;
9775 renderLanes2 = workInProgress2.memoizedProps;
9776 type = !didSuspendOrErrorDEV;
9777 newProps = null;
9778 nextResource = hydrationParentFiber;
9779 if (null !== nextResource)
9780 switch (nextResource.tag) {
9781 case 3:
9782 type && (type = diffHydratedTextForDevWarnings(
9783 current2,
9784 renderLanes2,
9785 newProps
9786 ), null !== type && (buildHydrationDiffNode(workInProgress2, 0).serverProps = type));
9787 break;
9788 case 27:
9789 case 5:
9790 newProps = nextResource.memoizedProps, type && (type = diffHydratedTextForDevWarnings(
9791 current2,
9792 renderLanes2,
9793 newProps
9794 ), null !== type && (buildHydrationDiffNode(
9795 workInProgress2,
9796 0
9797 ).serverProps = type));
9798 }
9799 current2[internalInstanceKey] = workInProgress2;
9800 current2 = current2.nodeValue === renderLanes2 || null !== newProps && true === newProps.suppressHydrationWarning || checkForUnmatchedText(current2.nodeValue, renderLanes2) ? true : false;
9801 current2 || throwOnHydrationMismatch(workInProgress2, true);
9802 } else
9803 type = renderLanes2.ancestorInfo.current, null != type && validateTextNesting(
9804 newProps,
9805 type.tag,
9806 renderLanes2.ancestorInfo.implicitRootScope
9807 ), current2 = getOwnerDocumentFromRootContainer(current2).createTextNode(
9808 newProps
9809 ), current2[internalInstanceKey] = workInProgress2, workInProgress2.stateNode = current2;
9810 }
9811 bubbleProperties(workInProgress2);
9812 return null;
9813 case 31:
9814 renderLanes2 = workInProgress2.memoizedState;
9815 if (null === current2 || null !== current2.memoizedState) {
9816 newProps = popHydrationState(workInProgress2);
9817 if (null !== renderLanes2) {
9818 if (null === current2) {
9819 if (!newProps)
9820 throw Error(
9821 "A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React."
9822 );
9823 current2 = workInProgress2.memoizedState;
9824 current2 = null !== current2 ? current2.dehydrated : null;
9825 if (!current2)
9826 throw Error(
9827 "Expected to have a hydrated activity instance. This error is likely caused by a bug in React. Please file an issue."
9828 );
9829 current2[internalInstanceKey] = workInProgress2;
9830 bubbleProperties(workInProgress2);
9831 (workInProgress2.mode & ProfileMode) !== NoMode && null !== renderLanes2 && (current2 = workInProgress2.child, null !== current2 && (workInProgress2.treeBaseDuration -= current2.treeBaseDuration));
9832 } else
9833 emitPendingHydrationWarnings(), resetHydrationState(), 0 === (workInProgress2.flags & 128) && (renderLanes2 = workInProgress2.memoizedState = null), workInProgress2.flags |= 4, bubbleProperties(workInProgress2), (workInProgress2.mode & ProfileMode) !== NoMode && null !== renderLanes2 && (current2 = workInProgress2.child, null !== current2 && (workInProgress2.treeBaseDuration -= current2.treeBaseDuration));
9834 current2 = false;
9835 } else
9836 renderLanes2 = upgradeHydrationErrorsToRecoverable(), null !== current2 && null !== current2.memoizedState && (current2.memoizedState.hydrationErrors = renderLanes2), current2 = true;
9837 if (!current2) {
9838 if (workInProgress2.flags & 256)
9839 return popSuspenseHandler(workInProgress2), workInProgress2;
9840 popSuspenseHandler(workInProgress2);
9841 return null;
9842 }
9843 if (0 !== (workInProgress2.flags & 128))
9844 throw Error(
9845 "Client rendering an Activity suspended it again. This is a bug in React."
9846 );
9847 }
9848 bubbleProperties(workInProgress2);
9849 return null;
9850 case 13:
9851 newProps = workInProgress2.memoizedState;
9852 if (null === current2 || null !== current2.memoizedState && null !== current2.memoizedState.dehydrated) {
9853 type = newProps;
9854 nextResource = popHydrationState(workInProgress2);
9855 if (null !== type && null !== type.dehydrated) {
9856 if (null === current2) {
9857 if (!nextResource)
9858 throw Error(
9859 "A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React."
9860 );
9861 nextResource = workInProgress2.memoizedState;
9862 nextResource = null !== nextResource ? nextResource.dehydrated : null;
9863 if (!nextResource)
9864 throw Error(
9865 "Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue."
9866 );
9867 nextResource[internalInstanceKey] = workInProgress2;
9868 bubbleProperties(workInProgress2);
9869 (workInProgress2.mode & ProfileMode) !== NoMode && null !== type && (type = workInProgress2.child, null !== type && (workInProgress2.treeBaseDuration -= type.treeBaseDuration));
9870 } else
9871 emitPendingHydrationWarnings(), resetHydrationState(), 0 === (workInProgress2.flags & 128) && (type = workInProgress2.memoizedState = null), workInProgress2.flags |= 4, bubbleProperties(workInProgress2), (workInProgress2.mode & ProfileMode) !== NoMode && null !== type && (type = workInProgress2.child, null !== type && (workInProgress2.treeBaseDuration -= type.treeBaseDuration));
9872 type = false;
9873 } else
9874 type = upgradeHydrationErrorsToRecoverable(), null !== current2 && null !== current2.memoizedState && (current2.memoizedState.hydrationErrors = type), type = true;
9875 if (!type) {
9876 if (workInProgress2.flags & 256)
9877 return popSuspenseHandler(workInProgress2), workInProgress2;
9878 popSuspenseHandler(workInProgress2);
9879 return null;
9880 }
9881 }
9882 popSuspenseHandler(workInProgress2);
9883 if (0 !== (workInProgress2.flags & 128))
9884 return workInProgress2.lanes = renderLanes2, (workInProgress2.mode & ProfileMode) !== NoMode && transferActualDuration(workInProgress2), workInProgress2;
9885 renderLanes2 = null !== newProps;
9886 current2 = null !== current2 && null !== current2.memoizedState;
9887 renderLanes2 && (newProps = workInProgress2.child, type = null, null !== newProps.alternate && null !== newProps.alternate.memoizedState && null !== newProps.alternate.memoizedState.cachePool && (type = newProps.alternate.memoizedState.cachePool.pool), nextResource = null, null !== newProps.memoizedState && null !== newProps.memoizedState.cachePool && (nextResource = newProps.memoizedState.cachePool.pool), nextResource !== type && (newProps.flags |= 2048));
9888 renderLanes2 !== current2 && renderLanes2 && (workInProgress2.child.flags |= 8192);
9889 scheduleRetryEffect(workInProgress2, workInProgress2.updateQueue);
9890 bubbleProperties(workInProgress2);
9891 (workInProgress2.mode & ProfileMode) !== NoMode && renderLanes2 && (current2 = workInProgress2.child, null !== current2 && (workInProgress2.treeBaseDuration -= current2.treeBaseDuration));
9892 return null;
9893 case 4:
9894 return popHostContainer(workInProgress2), null === current2 && listenToAllSupportedEvents(
9895 workInProgress2.stateNode.containerInfo
9896 ), workInProgress2.flags |= 67108864, bubbleProperties(workInProgress2), null;
9897 case 10:
9898 return popProvider(workInProgress2.type, workInProgress2), bubbleProperties(workInProgress2), null;
9899 case 19:
9900 popSuspenseListContext(workInProgress2);
9901 newProps = workInProgress2.memoizedState;
9902 if (null === newProps) return bubbleProperties(workInProgress2), null;
9903 type = 0 !== (workInProgress2.flags & 128);
9904 nextResource = newProps.rendering;
9905 if (null === nextResource)
9906 if (type) cutOffTailIfNeeded(newProps, false);
9907 else {
9908 if (workInProgressRootExitStatus !== RootInProgress || null !== current2 && 0 !== (current2.flags & 128))
9909 for (current2 = workInProgress2.child; null !== current2; ) {
9910 nextResource = findFirstSuspended(current2);
9911 if (null !== nextResource) {
9912 workInProgress2.flags |= 128;
9913 cutOffTailIfNeeded(newProps, false);
9914 current2 = nextResource.updateQueue;
9915 workInProgress2.updateQueue = current2;
9916 scheduleRetryEffect(workInProgress2, current2);
9917 workInProgress2.subtreeFlags = 0;
9918 current2 = renderLanes2;
9919 for (renderLanes2 = workInProgress2.child; null !== renderLanes2; )
9920 resetWorkInProgress(renderLanes2, current2), renderLanes2 = renderLanes2.sibling;
9921 pushSuspenseListContext(
9922 workInProgress2,
9923 suspenseStackCursor.current & SubtreeSuspenseContextMask | ForceSuspenseFallback
9924 );
9925 isHydrating && pushTreeFork(workInProgress2, newProps.treeForkCount);
9926 return workInProgress2.child;
9927 }
9928 current2 = current2.sibling;
9929 }
9930 null !== newProps.tail && now$1() > workInProgressRootRenderTargetTime && (workInProgress2.flags |= 128, type = true, cutOffTailIfNeeded(newProps, false), workInProgress2.lanes = 4194304);
9931 }
9932 else {
9933 if (!type)
9934 if (current2 = findFirstSuspended(nextResource), null !== current2) {
9935 if (workInProgress2.flags |= 128, type = true, current2 = current2.updateQueue, workInProgress2.updateQueue = current2, scheduleRetryEffect(workInProgress2, current2), cutOffTailIfNeeded(newProps, true), null === newProps.tail && "collapsed" !== newProps.tailMode && "visible" !== newProps.tailMode && !nextResource.alternate && !isHydrating)
9936 return bubbleProperties(workInProgress2), null;
9937 } else
9938 2 * now$1() - newProps.renderingStartTime > workInProgressRootRenderTargetTime && 536870912 !== renderLanes2 && (workInProgress2.flags |= 128, type = true, cutOffTailIfNeeded(newProps, false), workInProgress2.lanes = 4194304);
9939 newProps.isBackwards ? (nextResource.sibling = workInProgress2.child, workInProgress2.child = nextResource) : (current2 = newProps.last, null !== current2 ? current2.sibling = nextResource : workInProgress2.child = nextResource, newProps.last = nextResource);
9940 }
9941 if (null !== newProps.tail) {
9942 current2 = newProps.tail;
9943 a: {
9944 for (renderLanes2 = current2; null !== renderLanes2; ) {
9945 if (null !== renderLanes2.alternate) {
9946 renderLanes2 = false;
9947 break a;
9948 }
9949 renderLanes2 = renderLanes2.sibling;
9950 }
9951 renderLanes2 = true;
9952 }
9953 newProps.rendering = current2;
9954 newProps.tail = current2.sibling;
9955 newProps.renderingStartTime = now$1();
9956 current2.sibling = null;
9957 nextResource = suspenseStackCursor.current;
9958 nextResource = type ? nextResource & SubtreeSuspenseContextMask | ForceSuspenseFallback : nextResource & SubtreeSuspenseContextMask;
9959 "visible" === newProps.tailMode || "collapsed" === newProps.tailMode || !renderLanes2 || isHydrating ? pushSuspenseListContext(workInProgress2, nextResource) : (renderLanes2 = nextResource, push(
9960 suspenseHandlerStackCursor,
9961 workInProgress2,
9962 workInProgress2
9963 ), push(suspenseStackCursor, renderLanes2, workInProgress2), null === shellBoundary && (shellBoundary = workInProgress2));
9964 isHydrating && pushTreeFork(workInProgress2, newProps.treeForkCount);
9965 return current2;
9966 }
9967 bubbleProperties(workInProgress2);
9968 return null;
9969 case 22:
9970 case 23:
9971 return popSuspenseHandler(workInProgress2), popHiddenContext(workInProgress2), newProps = null !== workInProgress2.memoizedState, null !== current2 ? null !== current2.memoizedState !== newProps && (workInProgress2.flags |= 8192) : newProps && (workInProgress2.flags |= 8192), newProps ? 0 !== (renderLanes2 & 536870912) && 0 === (workInProgress2.flags & 128) && (bubbleProperties(workInProgress2), workInProgress2.subtreeFlags & 6 && (workInProgress2.flags |= 8192)) : bubbleProperties(workInProgress2), renderLanes2 = workInProgress2.updateQueue, null !== renderLanes2 && scheduleRetryEffect(workInProgress2, renderLanes2.retryQueue), renderLanes2 = null, null !== current2 && null !== current2.memoizedState && null !== current2.memoizedState.cachePool && (renderLanes2 = current2.memoizedState.cachePool.pool), newProps = null, null !== workInProgress2.memoizedState && null !== workInProgress2.memoizedState.cachePool && (newProps = workInProgress2.memoizedState.cachePool.pool), newProps !== renderLanes2 && (workInProgress2.flags |= 2048), null !== current2 && pop(resumedCache, workInProgress2), null;
9972 case 24:
9973 return renderLanes2 = null, null !== current2 && (renderLanes2 = current2.memoizedState.cache), workInProgress2.memoizedState.cache !== renderLanes2 && (workInProgress2.flags |= 2048), popProvider(CacheContext, workInProgress2), bubbleProperties(workInProgress2), null;
9974 case 25:
9975 return null;
9976 case 30:
9977 return workInProgress2.flags |= 33554432, bubbleProperties(workInProgress2), null;
9978 }
9979 throw Error(
9980 "Unknown unit of work tag (" + workInProgress2.tag + "). This error is likely caused by a bug in React. Please file an issue."
9981 );
9982 }
9983 function unwindWork(current2, workInProgress2) {
9984 popTreeContext(workInProgress2);
9985 switch (workInProgress2.tag) {
9986 case 1:
9987 return current2 = workInProgress2.flags, current2 & 65536 ? (workInProgress2.flags = current2 & -65537 | 128, (workInProgress2.mode & ProfileMode) !== NoMode && transferActualDuration(workInProgress2), workInProgress2) : null;
9988 case 3:
9989 return popProvider(CacheContext, workInProgress2), popHostContainer(workInProgress2), current2 = workInProgress2.flags, 0 !== (current2 & 65536) && 0 === (current2 & 128) ? (workInProgress2.flags = current2 & -65537 | 128, workInProgress2) : null;
9990 case 26:
9991 case 27:
9992 case 5:
9993 return popHostContext(workInProgress2), null;
9994 case 31:
9995 if (null !== workInProgress2.memoizedState) {
9996 popSuspenseHandler(workInProgress2);
9997 if (null === workInProgress2.alternate)
9998 throw Error(
9999 "Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue."
10000 );
10001 resetHydrationState();
10002 }
10003 current2 = workInProgress2.flags;
10004 return current2 & 65536 ? (workInProgress2.flags = current2 & -65537 | 128, (workInProgress2.mode & ProfileMode) !== NoMode && transferActualDuration(workInProgress2), workInProgress2) : null;
10005 case 13:
10006 popSuspenseHandler(workInProgress2);
10007 current2 = workInProgress2.memoizedState;
10008 if (null !== current2 && null !== current2.dehydrated) {
10009 if (null === workInProgress2.alternate)
10010 throw Error(
10011 "Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue."
10012 );
10013 resetHydrationState();
10014 }
10015 current2 = workInProgress2.flags;
10016 return current2 & 65536 ? (workInProgress2.flags = current2 & -65537 | 128, (workInProgress2.mode & ProfileMode) !== NoMode && transferActualDuration(workInProgress2), workInProgress2) : null;
10017 case 19:
10018 return popSuspenseListContext(workInProgress2), current2 = workInProgress2.flags, current2 & 65536 ? (workInProgress2.flags = current2 & -65537 | 128, current2 = workInProgress2.memoizedState, null !== current2 && (current2.rendering = null, current2.tail = null), workInProgress2.flags |= 4, workInProgress2) : null;
10019 case 4:
10020 return popHostContainer(workInProgress2), null;
10021 case 10:
10022 return popProvider(workInProgress2.type, workInProgress2), null;
10023 case 22:
10024 case 23:
10025 return popSuspenseHandler(workInProgress2), popHiddenContext(workInProgress2), null !== current2 && pop(resumedCache, workInProgress2), current2 = workInProgress2.flags, current2 & 65536 ? (workInProgress2.flags = current2 & -65537 | 128, (workInProgress2.mode & ProfileMode) !== NoMode && transferActualDuration(workInProgress2), workInProgress2) : null;
10026 case 24:
10027 return popProvider(CacheContext, workInProgress2), null;
10028 case 25:
10029 return null;
10030 default:
10031 return null;
10032 }
10033 }
10034 function unwindInterruptedWork(current2, interruptedWork) {
10035 popTreeContext(interruptedWork);
10036 switch (interruptedWork.tag) {
10037 case 3:
10038 popProvider(CacheContext, interruptedWork);
10039 popHostContainer(interruptedWork);
10040 break;
10041 case 26:
10042 case 27:
10043 case 5:
10044 popHostContext(interruptedWork);
10045 break;
10046 case 4:
10047 popHostContainer(interruptedWork);
10048 break;
10049 case 31:
10050 null !== interruptedWork.memoizedState && popSuspenseHandler(interruptedWork);
10051 break;
10052 case 13:
10053 popSuspenseHandler(interruptedWork);
10054 break;
10055 case 19:
10056 popSuspenseListContext(interruptedWork);
10057 break;
10058 case 10:
10059 popProvider(interruptedWork.type, interruptedWork);
10060 break;
10061 case 22:
10062 case 23:
10063 popSuspenseHandler(interruptedWork);
10064 popHiddenContext(interruptedWork);
10065 null !== current2 && pop(resumedCache, interruptedWork);
10066 break;
10067 case 24:
10068 popProvider(CacheContext, interruptedWork);
10069 }
10070 }
10071 function shouldProfile(current2) {
10072 return (current2.mode & ProfileMode) !== NoMode;
10073 }
10074 function commitHookLayoutEffects(finishedWork, hookFlags) {
10075 shouldProfile(finishedWork) ? (startEffectTimer(), commitHookEffectListMount(hookFlags, finishedWork), recordEffectDuration()) : commitHookEffectListMount(hookFlags, finishedWork);
10076 }
10077 function commitHookLayoutUnmountEffects(finishedWork, nearestMountedAncestor, hookFlags) {
10078 shouldProfile(finishedWork) ? (startEffectTimer(), commitHookEffectListUnmount(
10079 hookFlags,
10080 finishedWork,
10081 nearestMountedAncestor
10082 ), recordEffectDuration()) : commitHookEffectListUnmount(
10083 hookFlags,
10084 finishedWork,
10085 nearestMountedAncestor
10086 );
10087 }
10088 function commitHookEffectListMount(flags, finishedWork) {
10089 try {
10090 var updateQueue = finishedWork.updateQueue, lastEffect = null !== updateQueue ? updateQueue.lastEffect : null;
10091 if (null !== lastEffect) {
10092 var firstEffect = lastEffect.next;
10093 updateQueue = firstEffect;
10094 do {
10095 if ((updateQueue.tag & flags) === flags && (lastEffect = void 0, (flags & Insertion) !== NoFlags && (isRunningInsertionEffect = true), lastEffect = runWithFiberInDEV(
10096 finishedWork,
10097 callCreateInDEV,
10098 updateQueue
10099 ), (flags & Insertion) !== NoFlags && (isRunningInsertionEffect = false), void 0 !== lastEffect && "function" !== typeof lastEffect)) {
10100 var hookName = void 0;
10101 hookName = 0 !== (updateQueue.tag & Layout) ? "useLayoutEffect" : 0 !== (updateQueue.tag & Insertion) ? "useInsertionEffect" : "useEffect";
10102 var addendum = void 0;
10103 addendum = null === lastEffect ? " You returned null. If your effect does not require clean up, return undefined (or nothing)." : "function" === typeof lastEffect.then ? "\n\nIt looks like you wrote " + hookName + "(async () => ...) or returned a Promise. Instead, write the async function inside your effect and call it immediately:\n\n" + hookName + "(() => {\n async function fetchData() {\n // You can await here\n const response = await MyAPI.getData(someId);\n // ...\n }\n fetchData();\n}, [someId]); // Or [] if effect doesn't need props or state\n\nLearn more about data fetching with Hooks: https://react.dev/link/hooks-data-fetching" : " You returned: " + lastEffect;
10104 runWithFiberInDEV(
10105 finishedWork,
10106 function(n, a) {
10107 console.error(
10108 "%s must not return anything besides a function, which is used for clean-up.%s",
10109 n,
10110 a
10111 );
10112 },
10113 hookName,
10114 addendum
10115 );
10116 }
10117 updateQueue = updateQueue.next;
10118 } while (updateQueue !== firstEffect);
10119 }
10120 } catch (error) {
10121 captureCommitPhaseError(finishedWork, finishedWork.return, error);
10122 }
10123 }
10124 function commitHookEffectListUnmount(flags, finishedWork, nearestMountedAncestor) {
10125 try {
10126 var updateQueue = finishedWork.updateQueue, lastEffect = null !== updateQueue ? updateQueue.lastEffect : null;
10127 if (null !== lastEffect) {
10128 var firstEffect = lastEffect.next;
10129 updateQueue = firstEffect;
10130 do {
10131 if ((updateQueue.tag & flags) === flags) {
10132 var inst = updateQueue.inst, destroy = inst.destroy;
10133 void 0 !== destroy && (inst.destroy = void 0, (flags & Insertion) !== NoFlags && (isRunningInsertionEffect = true), lastEffect = finishedWork, runWithFiberInDEV(
10134 lastEffect,
10135 callDestroyInDEV,
10136 lastEffect,
10137 nearestMountedAncestor,
10138 destroy
10139 ), (flags & Insertion) !== NoFlags && (isRunningInsertionEffect = false));
10140 }
10141 updateQueue = updateQueue.next;
10142 } while (updateQueue !== firstEffect);
10143 }
10144 } catch (error) {
10145 captureCommitPhaseError(finishedWork, finishedWork.return, error);
10146 }
10147 }
10148 function commitHookPassiveMountEffects(finishedWork, hookFlags) {
10149 shouldProfile(finishedWork) ? (startEffectTimer(), commitHookEffectListMount(hookFlags, finishedWork), recordEffectDuration()) : commitHookEffectListMount(hookFlags, finishedWork);
10150 }
10151 function commitHookPassiveUnmountEffects(finishedWork, nearestMountedAncestor, hookFlags) {
10152 shouldProfile(finishedWork) ? (startEffectTimer(), commitHookEffectListUnmount(
10153 hookFlags,
10154 finishedWork,
10155 nearestMountedAncestor
10156 ), recordEffectDuration()) : commitHookEffectListUnmount(
10157 hookFlags,
10158 finishedWork,
10159 nearestMountedAncestor
10160 );
10161 }
10162 function commitClassCallbacks(finishedWork) {
10163 var updateQueue = finishedWork.updateQueue;
10164 if (null !== updateQueue) {
10165 var instance = finishedWork.stateNode;
10166 finishedWork.type.defaultProps || "ref" in finishedWork.memoizedProps || didWarnAboutReassigningProps || (instance.props !== finishedWork.memoizedProps && console.error(
10167 "Expected %s props to match memoized props before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",
10168 getComponentNameFromFiber(finishedWork) || "instance"
10169 ), instance.state !== finishedWork.memoizedState && console.error(
10170 "Expected %s state to match memoized state before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",
10171 getComponentNameFromFiber(finishedWork) || "instance"
10172 ));
10173 try {
10174 runWithFiberInDEV(
10175 finishedWork,
10176 commitCallbacks,
10177 updateQueue,
10178 instance
10179 );
10180 } catch (error) {
10181 captureCommitPhaseError(finishedWork, finishedWork.return, error);
10182 }
10183 }
10184 }
10185 function callGetSnapshotBeforeUpdates(instance, prevProps, prevState) {
10186 return instance.getSnapshotBeforeUpdate(prevProps, prevState);
10187 }
10188 function commitClassSnapshot(finishedWork, current2) {
10189 var prevProps = current2.memoizedProps, prevState = current2.memoizedState;
10190 current2 = finishedWork.stateNode;
10191 finishedWork.type.defaultProps || "ref" in finishedWork.memoizedProps || didWarnAboutReassigningProps || (current2.props !== finishedWork.memoizedProps && console.error(
10192 "Expected %s props to match memoized props before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",
10193 getComponentNameFromFiber(finishedWork) || "instance"
10194 ), current2.state !== finishedWork.memoizedState && console.error(
10195 "Expected %s state to match memoized state before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",
10196 getComponentNameFromFiber(finishedWork) || "instance"
10197 ));
10198 try {
10199 var resolvedPrevProps = resolveClassComponentProps(
10200 finishedWork.type,
10201 prevProps
10202 );
10203 var snapshot = runWithFiberInDEV(
10204 finishedWork,
10205 callGetSnapshotBeforeUpdates,
10206 current2,
10207 resolvedPrevProps,
10208 prevState
10209 );
10210 prevProps = didWarnAboutUndefinedSnapshotBeforeUpdate;
10211 void 0 !== snapshot || prevProps.has(finishedWork.type) || (prevProps.add(finishedWork.type), runWithFiberInDEV(finishedWork, function() {
10212 console.error(
10213 "%s.getSnapshotBeforeUpdate(): A snapshot value (or null) must be returned. You have returned undefined.",
10214 getComponentNameFromFiber(finishedWork)
10215 );
10216 }));
10217 current2.__reactInternalSnapshotBeforeUpdate = snapshot;
10218 } catch (error) {
10219 captureCommitPhaseError(finishedWork, finishedWork.return, error);
10220 }
10221 }
10222 function safelyCallComponentWillUnmount(current2, nearestMountedAncestor, instance) {
10223 instance.props = resolveClassComponentProps(
10224 current2.type,
10225 current2.memoizedProps
10226 );
10227 instance.state = current2.memoizedState;
10228 shouldProfile(current2) ? (startEffectTimer(), runWithFiberInDEV(
10229 current2,
10230 callComponentWillUnmountInDEV,
10231 current2,
10232 nearestMountedAncestor,
10233 instance
10234 ), recordEffectDuration()) : runWithFiberInDEV(
10235 current2,
10236 callComponentWillUnmountInDEV,
10237 current2,
10238 nearestMountedAncestor,
10239 instance
10240 );
10241 }
10242 function commitAttachRef(finishedWork) {
10243 var ref = finishedWork.ref;
10244 if (null !== ref) {
10245 switch (finishedWork.tag) {
10246 case 26:
10247 case 27:
10248 case 5:
10249 var instanceToUse = finishedWork.stateNode;
10250 break;
10251 case 30:
10252 instanceToUse = finishedWork.stateNode;
10253 var name = getViewTransitionName(
10254 finishedWork.memoizedProps,
10255 instanceToUse
10256 );
10257 if (null === instanceToUse.ref || instanceToUse.ref.name !== name)
10258 instanceToUse.ref = createViewTransitionInstance(name);
10259 instanceToUse = instanceToUse.ref;
10260 break;
10261 case 7:
10262 null === finishedWork.stateNode && (instanceToUse = new FragmentInstance(finishedWork), traverseFragmentInstancesAndTextInstances(
10263 finishedWork,
10264 addFragmentHandleToFiber,
10265 instanceToUse
10266 ), finishedWork.stateNode = instanceToUse);
10267 instanceToUse = finishedWork.stateNode;
10268 break;
10269 default:
10270 instanceToUse = finishedWork.stateNode;
10271 }
10272 if ("function" === typeof ref)
10273 if (shouldProfile(finishedWork))
10274 try {
10275 startEffectTimer(), finishedWork.refCleanup = ref(instanceToUse);
10276 } finally {
10277 recordEffectDuration();
10278 }
10279 else finishedWork.refCleanup = ref(instanceToUse);
10280 else
10281 "string" === typeof ref ? console.error("String refs are no longer supported.") : ref.hasOwnProperty("current") || console.error(
10282 "Unexpected ref object provided for %s. Use either a ref-setter function or React.createRef().",
10283 getComponentNameFromFiber(finishedWork)
10284 ), ref.current = instanceToUse;
10285 }
10286 }
10287 function safelyAttachRef(current2, nearestMountedAncestor) {
10288 try {
10289 runWithFiberInDEV(current2, commitAttachRef, current2);
10290 } catch (error) {
10291 captureCommitPhaseError(current2, nearestMountedAncestor, error);
10292 }
10293 }
10294 function safelyDetachRef(current2, nearestMountedAncestor) {
10295 var ref = current2.ref, refCleanup = current2.refCleanup;
10296 if (null !== ref)
10297 if ("function" === typeof refCleanup)
10298 try {
10299 if (shouldProfile(current2))
10300 try {
10301 startEffectTimer(), runWithFiberInDEV(current2, refCleanup);
10302 } finally {
10303 recordEffectDuration(current2);
10304 }
10305 else runWithFiberInDEV(current2, refCleanup);
10306 } catch (error) {
10307 captureCommitPhaseError(current2, nearestMountedAncestor, error);
10308 } finally {
10309 current2.refCleanup = null, current2 = current2.alternate, null != current2 && (current2.refCleanup = null);
10310 }
10311 else if ("function" === typeof ref)
10312 try {
10313 if (shouldProfile(current2))
10314 try {
10315 startEffectTimer(), runWithFiberInDEV(current2, ref, null);
10316 } finally {
10317 recordEffectDuration(current2);
10318 }
10319 else runWithFiberInDEV(current2, ref, null);
10320 } catch (error$8) {
10321 captureCommitPhaseError(current2, nearestMountedAncestor, error$8);
10322 }
10323 else ref.current = null;
10324 }
10325 function commitProfiler(finishedWork, current2, commitStartTime2, effectDuration) {
10326 var _finishedWork$memoize = finishedWork.memoizedProps, id = _finishedWork$memoize.id, onCommit = _finishedWork$memoize.onCommit;
10327 _finishedWork$memoize = _finishedWork$memoize.onRender;
10328 current2 = null === current2 ? "mount" : "update";
10329 currentUpdateIsNested && (current2 = "nested-update");
10330 "function" === typeof _finishedWork$memoize && _finishedWork$memoize(
10331 id,
10332 current2,
10333 finishedWork.actualDuration,
10334 finishedWork.treeBaseDuration,
10335 finishedWork.actualStartTime,
10336 commitStartTime2
10337 );
10338 "function" === typeof onCommit && onCommit(id, current2, effectDuration, commitStartTime2);
10339 }
10340 function commitProfilerPostCommitImpl(finishedWork, current2, commitStartTime2, passiveEffectDuration) {
10341 var _finishedWork$memoize2 = finishedWork.memoizedProps;
10342 finishedWork = _finishedWork$memoize2.id;
10343 _finishedWork$memoize2 = _finishedWork$memoize2.onPostCommit;
10344 current2 = null === current2 ? "mount" : "update";
10345 currentUpdateIsNested && (current2 = "nested-update");
10346 "function" === typeof _finishedWork$memoize2 && _finishedWork$memoize2(
10347 finishedWork,
10348 current2,
10349 passiveEffectDuration,
10350 commitStartTime2
10351 );
10352 }
10353 function commitNewChildToFragmentInstances(fiber, parentFragmentInstances) {
10354 if ((5 === fiber.tag || 27 === fiber.tag || 6 === fiber.tag) && null === fiber.alternate && null !== parentFragmentInstances)
10355 for (var i = 0; i < parentFragmentInstances.length; i++)
10356 commitNewChildToFragmentInstance(
10357 fiber.stateNode,
10358 parentFragmentInstances[i]
10359 );
10360 }
10361 function commitFragmentInstanceInsertionEffects(fiber) {
10362 for (var parent = fiber.return; null !== parent; ) {
10363 isFragmentInstanceParent(parent) && commitNewChildToFragmentInstance(fiber.stateNode, parent.stateNode);
10364 if (isFragmentInstanceHostBoundary(parent)) break;
10365 parent = parent.return;
10366 }
10367 }
10368 function commitFragmentInstanceDeletionEffects(fiber) {
10369 for (var parent = fiber.return; null !== parent; ) {
10370 isFragmentInstanceParent(parent) && deleteChildFromFragmentInstance(fiber.stateNode, parent.stateNode);
10371 if (isFragmentInstanceHostBoundary(parent)) break;
10372 parent = parent.return;
10373 }
10374 }
10375 function isFragmentInstanceHostBoundary(fiber) {
10376 return 5 === fiber.tag || 3 === fiber.tag || 27 === fiber.tag;
10377 }
10378 function isFragmentInstanceParent(fiber) {
10379 return fiber && 7 === fiber.tag && null !== fiber.stateNode;
10380 }
10381 function commitHostMount(finishedWork) {
10382 var type = finishedWork.type, props = finishedWork.memoizedProps, instance = finishedWork.stateNode;
10383 try {
10384 runWithFiberInDEV(
10385 finishedWork,
10386 commitMount,
10387 instance,
10388 type,
10389 props,
10390 finishedWork
10391 );
10392 } catch (error) {
10393 captureCommitPhaseError(finishedWork, finishedWork.return, error);
10394 }
10395 }
10396 function commitHostUpdate(finishedWork, newProps, oldProps) {
10397 try {
10398 runWithFiberInDEV(
10399 finishedWork,
10400 commitUpdate,
10401 finishedWork.stateNode,
10402 finishedWork.type,
10403 oldProps,
10404 newProps,
10405 finishedWork
10406 );
10407 } catch (error) {
10408 captureCommitPhaseError(finishedWork, finishedWork.return, error);
10409 }
10410 }
10411 function isHostParent(fiber) {
10412 return 5 === fiber.tag || 3 === fiber.tag || 26 === fiber.tag || 27 === fiber.tag && isSingletonScope(fiber.type) || 4 === fiber.tag;
10413 }
10414 function getHostSibling(fiber) {
10415 a: for (; ; ) {
10416 for (; null === fiber.sibling; ) {
10417 if (null === fiber.return || isHostParent(fiber.return)) return null;
10418 fiber = fiber.return;
10419 }
10420 fiber.sibling.return = fiber.return;
10421 for (fiber = fiber.sibling; 5 !== fiber.tag && 6 !== fiber.tag && 18 !== fiber.tag; ) {
10422 if (27 === fiber.tag && isSingletonScope(fiber.type)) continue a;
10423 if (fiber.flags & 2) continue a;
10424 if (null === fiber.child || 4 === fiber.tag) continue a;
10425 else fiber.child.return = fiber, fiber = fiber.child;
10426 }
10427 if (!(fiber.flags & 2)) return fiber.stateNode;
10428 }
10429 }
10430 function insertOrAppendPlacementNodeIntoContainer(node, before, parent, parentFragmentInstances) {
10431 var tag = node.tag;
10432 if (5 === tag || 6 === tag)
10433 tag = node.stateNode, before ? (warnForReactChildrenConflict(parent), (9 === parent.nodeType ? parent.body : "HTML" === parent.nodeName ? parent.ownerDocument.body : parent).insertBefore(tag, before)) : (warnForReactChildrenConflict(parent), before = 9 === parent.nodeType ? parent.body : "HTML" === parent.nodeName ? parent.ownerDocument.body : parent, before.appendChild(tag), tag = parent._reactRootContainer, null !== tag && void 0 !== tag || null !== before.onclick || (before.onclick = noop$1)), commitNewChildToFragmentInstances(node, parentFragmentInstances), viewTransitionMutationContext = true;
10434 else if (4 !== tag && (27 === tag && (commitNewChildToFragmentInstances(node, parentFragmentInstances), parentFragmentInstances = null, isSingletonScope(node.type) && (parent = node.stateNode, before = null)), node = node.child, null !== node))
10435 for (insertOrAppendPlacementNodeIntoContainer(
10436 node,
10437 before,
10438 parent,
10439 parentFragmentInstances
10440 ), node = node.sibling; null !== node; )
10441 insertOrAppendPlacementNodeIntoContainer(
10442 node,
10443 before,
10444 parent,
10445 parentFragmentInstances
10446 ), node = node.sibling;
10447 }
10448 function insertOrAppendPlacementNode(node, before, parent, parentFragmentInstances) {
10449 var tag = node.tag;
10450 if (5 === tag || 6 === tag)
10451 tag = node.stateNode, before ? parent.insertBefore(tag, before) : parent.appendChild(tag), commitNewChildToFragmentInstances(node, parentFragmentInstances), viewTransitionMutationContext = true;
10452 else if (4 !== tag && (27 === tag && (commitNewChildToFragmentInstances(node, parentFragmentInstances), parentFragmentInstances = null, isSingletonScope(node.type) && (parent = node.stateNode)), node = node.child, null !== node))
10453 for (insertOrAppendPlacementNode(
10454 node,
10455 before,
10456 parent,
10457 parentFragmentInstances
10458 ), node = node.sibling; null !== node; )
10459 insertOrAppendPlacementNode(
10460 node,
10461 before,
10462 parent,
10463 parentFragmentInstances
10464 ), node = node.sibling;
10465 }
10466 function commitPlacement(finishedWork) {
10467 for (var hostParentFiber, parentFiber = finishedWork.return; null !== parentFiber; ) {
10468 if (isHostParent(parentFiber)) {
10469 hostParentFiber = parentFiber;
10470 break;
10471 }
10472 parentFiber = parentFiber.return;
10473 }
10474 parentFiber = null;
10475 for (var parent = finishedWork.return; null !== parent; ) {
10476 if (isFragmentInstanceParent(parent)) {
10477 var fragmentInstance = parent.stateNode;
10478 null === parentFiber ? parentFiber = [fragmentInstance] : parentFiber.push(fragmentInstance);
10479 }
10480 if (isFragmentInstanceHostBoundary(parent)) break;
10481 parent = parent.return;
10482 }
10483 if (null == hostParentFiber)
10484 throw Error(
10485 "Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue."
10486 );
10487 switch (hostParentFiber.tag) {
10488 case 27:
10489 hostParentFiber = hostParentFiber.stateNode;
10490 parent = getHostSibling(finishedWork);
10491 insertOrAppendPlacementNode(
10492 finishedWork,
10493 parent,
10494 hostParentFiber,
10495 parentFiber
10496 );
10497 break;
10498 case 5:
10499 parent = hostParentFiber.stateNode;
10500 hostParentFiber.flags & 32 && (resetTextContent(parent), hostParentFiber.flags &= -33);
10501 hostParentFiber = getHostSibling(finishedWork);
10502 insertOrAppendPlacementNode(
10503 finishedWork,
10504 hostParentFiber,
10505 parent,
10506 parentFiber
10507 );
10508 break;
10509 case 3:
10510 case 4:
10511 hostParentFiber = hostParentFiber.stateNode.containerInfo;
10512 parent = getHostSibling(finishedWork);
10513 insertOrAppendPlacementNodeIntoContainer(
10514 finishedWork,
10515 parent,
10516 hostParentFiber,
10517 parentFiber
10518 );
10519 break;
10520 default:
10521 throw Error(
10522 "Invalid host parent fiber. This error is likely caused by a bug in React. Please file an issue."
10523 );
10524 }
10525 }
10526 function commitHostSingletonAcquisition(finishedWork) {
10527 var singleton = finishedWork.stateNode, props = finishedWork.memoizedProps;
10528 try {
10529 runWithFiberInDEV(
10530 finishedWork,
10531 acquireSingletonInstance,
10532 finishedWork.type,
10533 props,
10534 singleton,
10535 finishedWork
10536 );
10537 } catch (error) {
10538 captureCommitPhaseError(finishedWork, finishedWork.return, error);
10539 }
10540 }
10541 function trackEnterViewTransitions(placement) {
10542 if (30 === placement.tag || 0 !== (placement.subtreeFlags & 33554432))
10543 shouldStartViewTransition = true;
10544 }
10545 function pushViewTransitionCancelableScope() {
10546 var prevChildren = viewTransitionCancelableChildren;
10547 viewTransitionCancelableChildren = null;
10548 return prevChildren;
10549 }
10550 function applyViewTransitionToHostInstances(fiber, name, className, collectMeasurements, stopAtNestedViewTransitions) {
10551 viewTransitionHostInstanceIdx = 0;
10552 (name = applyViewTransitionToHostInstancesRecursive(
10553 fiber.child,
10554 name,
10555 className,
10556 collectMeasurements,
10557 stopAtNestedViewTransitions
10558 )) && null != fiber._debugTask && null === animatingTask && (animatingTask = fiber._debugTask);
10559 return name;
10560 }
10561 function applyViewTransitionToHostInstancesRecursive(child, name, className, collectMeasurements, stopAtNestedViewTransitions) {
10562 for (var inViewport = false; null !== child; ) {
10563 if (5 === child.tag) {
10564 var _instance = child.stateNode;
10565 if (null !== collectMeasurements) {
10566 var measurement = measureInstance(_instance);
10567 collectMeasurements.push(measurement);
10568 measurement.view && (inViewport = true);
10569 } else
10570 inViewport || measureInstance(_instance).view && (inViewport = true);
10571 shouldStartViewTransition = true;
10572 applyViewTransitionName(
10573 _instance,
10574 0 === viewTransitionHostInstanceIdx ? name : name + "_" + viewTransitionHostInstanceIdx,
10575 className
10576 );
10577 viewTransitionHostInstanceIdx++;
10578 } else if (22 !== child.tag || null === child.memoizedState)
10579 30 === child.tag && stopAtNestedViewTransitions || applyViewTransitionToHostInstancesRecursive(
10580 child.child,
10581 name,
10582 className,
10583 collectMeasurements,
10584 stopAtNestedViewTransitions
10585 ) && (inViewport = true);
10586 child = child.sibling;
10587 }
10588 return inViewport;
10589 }
10590 function restoreViewTransitionOnHostInstances(child, stopAtNestedViewTransitions) {
10591 for (; null !== child; ) {
10592 if (5 === child.tag)
10593 restoreViewTransitionName(child.stateNode, child.memoizedProps);
10594 else if (22 !== child.tag || null === child.memoizedState)
10595 30 === child.tag && stopAtNestedViewTransitions || restoreViewTransitionOnHostInstances(
10596 child.child,
10597 stopAtNestedViewTransitions
10598 );
10599 child = child.sibling;
10600 }
10601 }
10602 function commitAppearingPairViewTransitions(placement) {
10603 if (0 !== (placement.subtreeFlags & 18874368))
10604 for (placement = placement.child; null !== placement; ) {
10605 if (22 !== placement.tag || null === placement.memoizedState) {
10606 if (commitAppearingPairViewTransitions(placement), 30 === placement.tag && 0 !== (placement.flags & 18874368) && placement.stateNode.paired) {
10607 var props = placement.memoizedProps;
10608 if (null == props.name || "auto" === props.name)
10609 throw Error(
10610 "Found a pair with an auto name. This is a bug in React."
10611 );
10612 var name = props.name;
10613 props = getViewTransitionClassName(props.default, props.share);
10614 "none" !== props && (applyViewTransitionToHostInstances(
10615 placement,
10616 name,
10617 props,
10618 null,
10619 false
10620 ) || restoreViewTransitionOnHostInstances(placement.child, false));
10621 }
10622 }
10623 placement = placement.sibling;
10624 }
10625 }
10626 function commitEnterViewTransitions(placement, gesture) {
10627 if (30 === placement.tag) {
10628 var state = placement.stateNode, props = placement.memoizedProps, name = getViewTransitionName(props, state), className = getViewTransitionClassName(
10629 props.default,
10630 state.paired ? props.share : props.enter
10631 );
10632 "none" !== className ? applyViewTransitionToHostInstances(
10633 placement,
10634 name,
10635 className,
10636 null,
10637 false
10638 ) ? (commitAppearingPairViewTransitions(placement), state.paired || gesture || scheduleViewTransitionEvent(placement, props.onEnter)) : restoreViewTransitionOnHostInstances(placement.child, false) : commitAppearingPairViewTransitions(placement);
10639 } else if (0 !== (placement.subtreeFlags & 33554432))
10640 for (placement = placement.child; null !== placement; )
10641 commitEnterViewTransitions(placement, gesture), placement = placement.sibling;
10642 else commitAppearingPairViewTransitions(placement);
10643 }
10644 function commitDeletedPairViewTransitions(deletion) {
10645 if (null !== appearingViewTransitions && 0 !== appearingViewTransitions.size) {
10646 var pairs = appearingViewTransitions;
10647 if (0 !== (deletion.subtreeFlags & 18874368))
10648 for (deletion = deletion.child; null !== deletion; ) {
10649 if (22 !== deletion.tag || null === deletion.memoizedState) {
10650 if (30 === deletion.tag && 0 !== (deletion.flags & 18874368)) {
10651 var props = deletion.memoizedProps, name = props.name;
10652 if (null != name && "auto" !== name) {
10653 var pair = pairs.get(name);
10654 if (void 0 !== pair) {
10655 var className = getViewTransitionClassName(
10656 props.default,
10657 props.share
10658 );
10659 "none" !== className && (applyViewTransitionToHostInstances(
10660 deletion,
10661 name,
10662 className,
10663 null,
10664 false
10665 ) ? (className = deletion.stateNode, pair.paired = className, className.paired = pair, scheduleViewTransitionEvent(deletion, props.onShare)) : restoreViewTransitionOnHostInstances(
10666 deletion.child,
10667 false
10668 ));
10669 pairs.delete(name);
10670 if (0 === pairs.size) break;
10671 }
10672 }
10673 }
10674 commitDeletedPairViewTransitions(deletion);
10675 }
10676 deletion = deletion.sibling;
10677 }
10678 }
10679 }
10680 function commitExitViewTransitions(deletion) {
10681 if (30 === deletion.tag) {
10682 var props = deletion.memoizedProps, name = getViewTransitionName(props, deletion.stateNode), pair = null !== appearingViewTransitions ? appearingViewTransitions.get(name) : void 0, className = getViewTransitionClassName(
10683 props.default,
10684 void 0 !== pair ? props.share : props.exit
10685 );
10686 "none" !== className && (applyViewTransitionToHostInstances(
10687 deletion,
10688 name,
10689 className,
10690 null,
10691 false
10692 ) ? void 0 !== pair ? (className = deletion.stateNode, pair.paired = className, className.paired = pair, appearingViewTransitions.delete(name), scheduleViewTransitionEvent(deletion, props.onShare)) : scheduleViewTransitionEvent(deletion, props.onExit) : restoreViewTransitionOnHostInstances(deletion.child, false));
10693 null !== appearingViewTransitions && commitDeletedPairViewTransitions(deletion);
10694 } else if (0 !== (deletion.subtreeFlags & 33554432))
10695 for (deletion = deletion.child; null !== deletion; )
10696 commitExitViewTransitions(deletion), deletion = deletion.sibling;
10697 else
10698 null !== appearingViewTransitions && commitDeletedPairViewTransitions(deletion);
10699 }
10700 function commitNestedViewTransitions(changedParent) {
10701 for (changedParent = changedParent.child; null !== changedParent; ) {
10702 if (30 === changedParent.tag) {
10703 var props = changedParent.memoizedProps, name = getViewTransitionName(props, changedParent.stateNode);
10704 props = getViewTransitionClassName(props.default, props.update);
10705 changedParent.flags &= -5;
10706 "none" !== props && applyViewTransitionToHostInstances(
10707 changedParent,
10708 name,
10709 props,
10710 changedParent.memoizedState = [],
10711 false
10712 );
10713 } else
10714 0 !== (changedParent.subtreeFlags & 33554432) && commitNestedViewTransitions(changedParent);
10715 changedParent = changedParent.sibling;
10716 }
10717 }
10718 function restorePairedViewTransitions(parent) {
10719 if (0 !== (parent.subtreeFlags & 18874368))
10720 for (parent = parent.child; null !== parent; ) {
10721 if (22 !== parent.tag || null === parent.memoizedState) {
10722 if (30 === parent.tag && 0 !== (parent.flags & 18874368)) {
10723 var instance = parent.stateNode;
10724 null !== instance.paired && (instance.paired = null, restoreViewTransitionOnHostInstances(parent.child, false));
10725 }
10726 restorePairedViewTransitions(parent);
10727 }
10728 parent = parent.sibling;
10729 }
10730 }
10731 function restoreEnterOrExitViewTransitions(fiber) {
10732 if (30 === fiber.tag)
10733 fiber.stateNode.paired = null, restoreViewTransitionOnHostInstances(fiber.child, false), restorePairedViewTransitions(fiber);
10734 else if (0 !== (fiber.subtreeFlags & 33554432))
10735 for (fiber = fiber.child; null !== fiber; )
10736 restoreEnterOrExitViewTransitions(fiber), fiber = fiber.sibling;
10737 else restorePairedViewTransitions(fiber);
10738 }
10739 function restoreNestedViewTransitions(changedParent) {
10740 for (changedParent = changedParent.child; null !== changedParent; )
10741 30 === changedParent.tag ? restoreViewTransitionOnHostInstances(changedParent.child, false) : 0 !== (changedParent.subtreeFlags & 33554432) && restoreNestedViewTransitions(changedParent), changedParent = changedParent.sibling;
10742 }
10743 function measureViewTransitionHostInstancesRecursive(parentViewTransition, child, newName, oldName, className, previousMeasurements, stopAtNestedViewTransitions) {
10744 for (var inViewport = false; null !== child; ) {
10745 if (5 === child.tag) {
10746 var _instance2 = child.stateNode;
10747 if (null !== previousMeasurements && viewTransitionHostInstanceIdx < previousMeasurements.length) {
10748 var previousMeasurement = previousMeasurements[viewTransitionHostInstanceIdx], nextMeasurement = measureInstance(_instance2);
10749 if (previousMeasurement.view || nextMeasurement.view)
10750 inViewport = true;
10751 var JSCompiler_temp;
10752 if (JSCompiler_temp = 0 === (parentViewTransition.flags & 4))
10753 if (nextMeasurement.clip) JSCompiler_temp = true;
10754 else {
10755 JSCompiler_temp = previousMeasurement.rect;
10756 var newRect = nextMeasurement.rect;
10757 JSCompiler_temp = JSCompiler_temp.y !== newRect.y || JSCompiler_temp.x !== newRect.x || JSCompiler_temp.height !== newRect.height || JSCompiler_temp.width !== newRect.width;
10758 }
10759 JSCompiler_temp && (parentViewTransition.flags |= 4);
10760 nextMeasurement.abs ? nextMeasurement = !previousMeasurement.abs : (previousMeasurement = previousMeasurement.rect, nextMeasurement = nextMeasurement.rect, nextMeasurement = previousMeasurement.height !== nextMeasurement.height || previousMeasurement.width !== nextMeasurement.width);
10761 nextMeasurement && (parentViewTransition.flags |= 32);
10762 } else parentViewTransition.flags |= 32;
10763 0 !== (parentViewTransition.flags & 4) && applyViewTransitionName(
10764 _instance2,
10765 0 === viewTransitionHostInstanceIdx ? newName : newName + "_" + viewTransitionHostInstanceIdx,
10766 className
10767 );
10768 inViewport && 0 !== (parentViewTransition.flags & 4) || (null === viewTransitionCancelableChildren && (viewTransitionCancelableChildren = []), viewTransitionCancelableChildren.push(
10769 _instance2,
10770 0 === viewTransitionHostInstanceIdx ? oldName : oldName + "_" + viewTransitionHostInstanceIdx,
10771 child.memoizedProps
10772 ));
10773 viewTransitionHostInstanceIdx++;
10774 } else if (22 !== child.tag || null === child.memoizedState)
10775 30 === child.tag && stopAtNestedViewTransitions ? parentViewTransition.flags |= child.flags & 32 : measureViewTransitionHostInstancesRecursive(
10776 parentViewTransition,
10777 child.child,
10778 newName,
10779 oldName,
10780 className,
10781 previousMeasurements,
10782 stopAtNestedViewTransitions
10783 ) && (inViewport = true);
10784 child = child.sibling;
10785 }
10786 return inViewport;
10787 }
10788 function measureNestedViewTransitions(changedParent, gesture) {
10789 for (changedParent = changedParent.child; null !== changedParent; ) {
10790 if (30 === changedParent.tag) {
10791 var props = changedParent.memoizedProps, state = changedParent.stateNode, name = getViewTransitionName(props, state), className = getViewTransitionClassName(props.default, props.update);
10792 if (gesture) {
10793 state = state.clones;
10794 var previousMeasurements = null === state ? null : state.map(measureClonedInstance);
10795 } else
10796 previousMeasurements = changedParent.memoizedState, changedParent.memoizedState = null;
10797 state = changedParent;
10798 var child = changedParent.child, newName = name;
10799 viewTransitionHostInstanceIdx = 0;
10800 className = measureViewTransitionHostInstancesRecursive(
10801 state,
10802 child,
10803 newName,
10804 name,
10805 className,
10806 previousMeasurements,
10807 false
10808 );
10809 0 !== (changedParent.flags & 4) && className && (gesture || scheduleViewTransitionEvent(changedParent, props.onUpdate));
10810 } else
10811 0 !== (changedParent.subtreeFlags & 33554432) && measureNestedViewTransitions(changedParent, gesture);
10812 changedParent = changedParent.sibling;
10813 }
10814 }
10815 function trackNamedViewTransition(fiber) {
10816 var name = fiber.memoizedProps.name;
10817 if (null != name && "auto" !== name) {
10818 var existing = mountedNamedViewTransitions.get(name);
10819 if (void 0 !== existing) {
10820 if (existing !== fiber && existing !== fiber.alternate && !didWarnAboutName[name]) {
10821 didWarnAboutName[name] = true;
10822 var stringifiedName = JSON.stringify(name);
10823 runWithFiberInDEV(fiber, function() {
10824 console.error(
10825 "There are two <ViewTransition name=%s> components with the same name mounted at the same time. This is not supported and will cause View Transitions to error. Try to use a more unique name e.g. by using a namespace prefix and adding the id of an item to the name.",
10826 stringifiedName
10827 );
10828 });
10829 runWithFiberInDEV(existing, function() {
10830 console.error(
10831 "The existing <ViewTransition name=%s> duplicate has this stack trace.",
10832 stringifiedName
10833 );
10834 });
10835 }
10836 } else mountedNamedViewTransitions.set(name, fiber);
10837 }
10838 }
10839 function untrackNamedViewTransition(fiber) {
10840 var name = fiber.memoizedProps.name;
10841 if (null != name && "auto" !== name) {
10842 var existing = mountedNamedViewTransitions.get(name);
10843 void 0 === existing || existing !== fiber && existing !== fiber.alternate || mountedNamedViewTransitions.delete(name);
10844 }
10845 }
10846 function isHydratingParent(current2, finishedWork) {
10847 return 31 === finishedWork.tag ? (finishedWork = finishedWork.memoizedState, null !== current2.memoizedState && null === finishedWork) : 13 === finishedWork.tag ? (current2 = current2.memoizedState, finishedWork = finishedWork.memoizedState, null !== current2 && null !== current2.dehydrated && (null === finishedWork || null === finishedWork.dehydrated)) : 3 === finishedWork.tag ? current2.memoizedState.isDehydrated && 0 === (finishedWork.flags & 256) : false;
10848 }
10849 function commitBeforeMutationEffects(root2, firstChild, committedLanes) {
10850 root2 = root2.containerInfo;
10851 eventsEnabled = _enabled;
10852 root2 = getActiveElementDeep(root2);
10853 if (hasSelectionCapabilities(root2)) {
10854 if ("selectionStart" in root2)
10855 var JSCompiler_temp = {
10856 start: root2.selectionStart,
10857 end: root2.selectionEnd
10858 };
10859 else
10860 a: {
10861 JSCompiler_temp = (JSCompiler_temp = root2.ownerDocument) && JSCompiler_temp.defaultView || window;
10862 var selection = JSCompiler_temp.getSelection && JSCompiler_temp.getSelection();
10863 if (selection && 0 !== selection.rangeCount) {
10864 JSCompiler_temp = selection.anchorNode;
10865 var anchorOffset = selection.anchorOffset, focusNode = selection.focusNode;
10866 selection = selection.focusOffset;
10867 try {
10868 JSCompiler_temp.nodeType, focusNode.nodeType;
10869 } catch (e$3) {
10870 JSCompiler_temp = null;
10871 break a;
10872 }
10873 var length = 0, start = -1, end = -1, indexWithinAnchor = 0, indexWithinFocus = 0, node = root2, parentNode = null;
10874 b: for (; ; ) {
10875 for (var next; ; ) {
10876 node !== JSCompiler_temp || 0 !== anchorOffset && 3 !== node.nodeType || (start = length + anchorOffset);
10877 node !== focusNode || 0 !== selection && 3 !== node.nodeType || (end = length + selection);
10878 3 === node.nodeType && (length += node.nodeValue.length);
10879 if (null === (next = node.firstChild)) break;
10880 parentNode = node;
10881 node = next;
10882 }
10883 for (; ; ) {
10884 if (node === root2) break b;
10885 parentNode === JSCompiler_temp && ++indexWithinAnchor === anchorOffset && (start = length);
10886 parentNode === focusNode && ++indexWithinFocus === selection && (end = length);
10887 if (null !== (next = node.nextSibling)) break;
10888 node = parentNode;
10889 parentNode = node.parentNode;
10890 }
10891 node = next;
10892 }
10893 JSCompiler_temp = -1 === start || -1 === end ? null : { start, end };
10894 } else JSCompiler_temp = null;
10895 }
10896 JSCompiler_temp = JSCompiler_temp || { start: 0, end: 0 };
10897 } else JSCompiler_temp = null;
10898 selectionInformation = {
10899 focusedElem: root2,
10900 selectionRange: JSCompiler_temp
10901 };
10902 _enabled = false;
10903 committedLanes = (committedLanes & 335544064) === committedLanes;
10904 nextEffect = firstChild;
10905 for (firstChild = committedLanes ? 9270 : 1024; null !== nextEffect; ) {
10906 root2 = nextEffect;
10907 if (committedLanes && (JSCompiler_temp = root2.deletions, null !== JSCompiler_temp))
10908 for (anchorOffset = 0; anchorOffset < JSCompiler_temp.length; anchorOffset++)
10909 committedLanes && commitExitViewTransitions(JSCompiler_temp[anchorOffset]);
10910 if (null === root2.alternate && 0 !== (root2.flags & 2))
10911 committedLanes && trackEnterViewTransitions(root2), commitBeforeMutationEffects_complete(committedLanes);
10912 else {
10913 if (22 === root2.tag) {
10914 if (JSCompiler_temp = root2.alternate, null !== root2.memoizedState) {
10915 null !== JSCompiler_temp && null === JSCompiler_temp.memoizedState && committedLanes && commitExitViewTransitions(JSCompiler_temp);
10916 commitBeforeMutationEffects_complete(committedLanes);
10917 continue;
10918 } else if (null !== JSCompiler_temp && null !== JSCompiler_temp.memoizedState) {
10919 committedLanes && trackEnterViewTransitions(root2);
10920 commitBeforeMutationEffects_complete(committedLanes);
10921 continue;
10922 }
10923 }
10924 JSCompiler_temp = root2.child;
10925 0 !== (root2.subtreeFlags & firstChild) && null !== JSCompiler_temp ? (JSCompiler_temp.return = root2, nextEffect = JSCompiler_temp) : (committedLanes && commitNestedViewTransitions(root2), commitBeforeMutationEffects_complete(committedLanes));
10926 }
10927 }
10928 appearingViewTransitions = null;
10929 }
10930 function commitBeforeMutationEffects_complete(isViewTransitionEligible$jscomp$0) {
10931 for (; null !== nextEffect; ) {
10932 var fiber = nextEffect, finishedWork = fiber, isViewTransitionEligible = isViewTransitionEligible$jscomp$0, current2 = finishedWork.alternate, flags = finishedWork.flags;
10933 switch (finishedWork.tag) {
10934 case 0:
10935 case 11:
10936 case 15:
10937 break;
10938 case 1:
10939 0 !== (flags & 1024) && null !== current2 && commitClassSnapshot(finishedWork, current2);
10940 break;
10941 case 3:
10942 if (0 !== (flags & 1024)) {
10943 if (isViewTransitionEligible = finishedWork.stateNode.containerInfo, finishedWork = isViewTransitionEligible.nodeType, 9 === finishedWork)
10944 clearContainerSparingly(isViewTransitionEligible);
10945 else if (1 === finishedWork)
10946 switch (isViewTransitionEligible.nodeName) {
10947 case "HEAD":
10948 case "HTML":
10949 case "BODY":
10950 clearContainerSparingly(isViewTransitionEligible);
10951 break;
10952 default:
10953 isViewTransitionEligible.textContent = "";
10954 }
10955 }
10956 break;
10957 case 5:
10958 case 26:
10959 case 27:
10960 case 6:
10961 case 4:
10962 case 17:
10963 break;
10964 case 30:
10965 isViewTransitionEligible && null !== current2 && (isViewTransitionEligible = current2, current2 = finishedWork, finishedWork = getViewTransitionName(
10966 isViewTransitionEligible.memoizedProps,
10967 isViewTransitionEligible.stateNode
10968 ), current2 = current2.memoizedProps, current2 = getViewTransitionClassName(
10969 current2.default,
10970 current2.update
10971 ), "none" !== current2 && applyViewTransitionToHostInstances(
10972 isViewTransitionEligible,
10973 finishedWork,
10974 current2,
10975 isViewTransitionEligible.memoizedState = [],
10976 true
10977 ));
10978 break;
10979 default:
10980 if (0 !== (flags & 1024))
10981 throw Error(
10982 "This unit of work tag should not have side-effects. This error is likely caused by a bug in React. Please file an issue."
10983 );
10984 }
10985 isViewTransitionEligible = fiber.sibling;
10986 if (null !== isViewTransitionEligible) {
10987 isViewTransitionEligible.return = fiber.return;
10988 nextEffect = isViewTransitionEligible;
10989 break;
10990 }
10991 nextEffect = fiber.return;
10992 }
10993 }
10994 function commitLayoutEffectOnFiber(finishedRoot, current2, finishedWork) {
10995 var prevEffectStart = pushComponentEffectStart(), prevEffectDuration = pushComponentEffectDuration(), prevEffectErrors = pushComponentEffectErrors(), prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate(), flags = finishedWork.flags;
10996 switch (finishedWork.tag) {
10997 case 0:
10998 case 11:
10999 case 15:
11000 recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
11001 flags & 4 && commitHookLayoutEffects(finishedWork, Layout | HasEffect);
11002 break;
11003 case 1:
11004 recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
11005 if (flags & 4)
11006 if (finishedRoot = finishedWork.stateNode, null === current2)
11007 finishedWork.type.defaultProps || "ref" in finishedWork.memoizedProps || didWarnAboutReassigningProps || (finishedRoot.props !== finishedWork.memoizedProps && console.error(
11008 "Expected %s props to match memoized props before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",
11009 getComponentNameFromFiber(finishedWork) || "instance"
11010 ), finishedRoot.state !== finishedWork.memoizedState && console.error(
11011 "Expected %s state to match memoized state before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",
11012 getComponentNameFromFiber(finishedWork) || "instance"
11013 )), shouldProfile(finishedWork) ? (startEffectTimer(), runWithFiberInDEV(
11014 finishedWork,
11015 callComponentDidMountInDEV,
11016 finishedWork,
11017 finishedRoot
11018 ), recordEffectDuration()) : runWithFiberInDEV(
11019 finishedWork,
11020 callComponentDidMountInDEV,
11021 finishedWork,
11022 finishedRoot
11023 );
11024 else {
11025 var prevProps = resolveClassComponentProps(
11026 finishedWork.type,
11027 current2.memoizedProps
11028 );
11029 current2 = current2.memoizedState;
11030 finishedWork.type.defaultProps || "ref" in finishedWork.memoizedProps || didWarnAboutReassigningProps || (finishedRoot.props !== finishedWork.memoizedProps && console.error(
11031 "Expected %s props to match memoized props before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",
11032 getComponentNameFromFiber(finishedWork) || "instance"
11033 ), finishedRoot.state !== finishedWork.memoizedState && console.error(
11034 "Expected %s state to match memoized state before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",
11035 getComponentNameFromFiber(finishedWork) || "instance"
11036 ));
11037 shouldProfile(finishedWork) ? (startEffectTimer(), runWithFiberInDEV(
11038 finishedWork,
11039 callComponentDidUpdateInDEV,
11040 finishedWork,
11041 finishedRoot,
11042 prevProps,
11043 current2,
11044 finishedRoot.__reactInternalSnapshotBeforeUpdate
11045 ), recordEffectDuration()) : runWithFiberInDEV(
11046 finishedWork,
11047 callComponentDidUpdateInDEV,
11048 finishedWork,
11049 finishedRoot,
11050 prevProps,
11051 current2,
11052 finishedRoot.__reactInternalSnapshotBeforeUpdate
11053 );
11054 }
11055 flags & 64 && commitClassCallbacks(finishedWork);
11056 flags & 512 && safelyAttachRef(finishedWork, finishedWork.return);
11057 break;
11058 case 3:
11059 current2 = pushNestedEffectDurations();
11060 recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
11061 if (flags & 64 && (flags = finishedWork.updateQueue, null !== flags)) {
11062 prevProps = null;
11063 if (null !== finishedWork.child)
11064 switch (finishedWork.child.tag) {
11065 case 27:
11066 case 5:
11067 prevProps = finishedWork.child.stateNode;
11068 break;
11069 case 1:
11070 prevProps = finishedWork.child.stateNode;
11071 }
11072 try {
11073 runWithFiberInDEV(
11074 finishedWork,
11075 commitCallbacks,
11076 flags,
11077 prevProps
11078 );
11079 } catch (error) {
11080 captureCommitPhaseError(finishedWork, finishedWork.return, error);
11081 }
11082 }
11083 finishedRoot.effectDuration += popNestedEffectDurations(current2);
11084 break;
11085 case 27:
11086 null === current2 && flags & 4 && commitHostSingletonAcquisition(finishedWork);
11087 case 26:
11088 case 5:
11089 recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
11090 if (null === current2) {
11091 if (flags & 4) commitHostMount(finishedWork);
11092 else if (flags & 64) {
11093 finishedRoot = finishedWork.type;
11094 current2 = finishedWork.memoizedProps;
11095 prevProps = finishedWork.stateNode;
11096 try {
11097 runWithFiberInDEV(
11098 finishedWork,
11099 commitHydratedInstance,
11100 prevProps,
11101 finishedRoot,
11102 current2,
11103 finishedWork
11104 );
11105 } catch (error) {
11106 captureCommitPhaseError(
11107 finishedWork,
11108 finishedWork.return,
11109 error
11110 );
11111 }
11112 }
11113 }
11114 flags & 512 && safelyAttachRef(finishedWork, finishedWork.return);
11115 break;
11116 case 12:
11117 if (flags & 4) {
11118 flags = pushNestedEffectDurations();
11119 recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
11120 finishedRoot = finishedWork.stateNode;
11121 finishedRoot.effectDuration += bubbleNestedEffectDurations(flags);
11122 try {
11123 runWithFiberInDEV(
11124 finishedWork,
11125 commitProfiler,
11126 finishedWork,
11127 current2,
11128 commitStartTime,
11129 finishedRoot.effectDuration
11130 );
11131 } catch (error) {
11132 captureCommitPhaseError(finishedWork, finishedWork.return, error);
11133 }
11134 } else recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
11135 break;
11136 case 31:
11137 recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
11138 flags & 4 && commitActivityHydrationCallbacks(finishedRoot, finishedWork);
11139 break;
11140 case 13:
11141 recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
11142 flags & 4 && commitSuspenseHydrationCallbacks(finishedRoot, finishedWork);
11143 flags & 64 && (finishedRoot = finishedWork.memoizedState, null !== finishedRoot && (finishedRoot = finishedRoot.dehydrated, null !== finishedRoot && (flags = retryDehydratedSuspenseBoundary.bind(
11144 null,
11145 finishedWork
11146 ), registerSuspenseInstanceRetry(finishedRoot, flags))));
11147 break;
11148 case 22:
11149 flags = null !== finishedWork.memoizedState || offscreenSubtreeIsHidden;
11150 if (!flags) {
11151 var newOffscreenSubtreeWasHidden = null !== current2 && null !== current2.memoizedState || offscreenSubtreeWasHidden;
11152 current2 = offscreenSubtreeIsHidden;
11153 prevProps = offscreenSubtreeWasHidden;
11154 offscreenSubtreeIsHidden = flags;
11155 (offscreenSubtreeWasHidden = newOffscreenSubtreeWasHidden) && !prevProps ? (flags = IncludeHostSingletons, 0 !== (finishedWork.subtreeFlags & 8772) && (flags |= IncludeWorkInProgressEffects), recursivelyTraverseReappearLayoutEffects(
11156 finishedRoot,
11157 finishedWork,
11158 flags
11159 ), (finishedWork.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && 0.05 < componentEffectEndTime - componentEffectStartTime && logComponentReappeared(
11160 finishedWork,
11161 componentEffectStartTime,
11162 componentEffectEndTime
11163 )) : recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
11164 offscreenSubtreeIsHidden = current2;
11165 offscreenSubtreeWasHidden = prevProps;
11166 }
11167 break;
11168 case 30:
11169 flags & 18874368 && trackNamedViewTransition(finishedWork);
11170 recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
11171 flags & 512 && safelyAttachRef(finishedWork, finishedWork.return);
11172 break;
11173 case 7:
11174 flags & 512 && safelyAttachRef(finishedWork, finishedWork.return);
11175 default:
11176 recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
11177 }
11178 (finishedWork.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && ((componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) && logComponentEffect(
11179 finishedWork,
11180 componentEffectStartTime,
11181 componentEffectEndTime,
11182 componentEffectDuration,
11183 componentEffectErrors
11184 ), null === finishedWork.alternate && null !== finishedWork.return && null !== finishedWork.return.alternate && 0.05 < componentEffectEndTime - componentEffectStartTime && (isHydratingParent(
11185 finishedWork.return.alternate,
11186 finishedWork.return
11187 ) || logComponentTrigger(
11188 finishedWork,
11189 componentEffectStartTime,
11190 componentEffectEndTime,
11191 "Mount"
11192 )));
11193 popComponentEffectStart(prevEffectStart);
11194 popComponentEffectDuration(prevEffectDuration);
11195 componentEffectErrors = prevEffectErrors;
11196 componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
11197 }
11198 function hideOrUnhideAllChildren(parentFiber, isHidden) {
11199 for (parentFiber = parentFiber.child; null !== parentFiber; )
11200 hideOrUnhideAllChildrenOnFiber(parentFiber, isHidden), parentFiber = parentFiber.sibling;
11201 }
11202 function hideOrUnhideAllChildrenOnFiber(fiber, isHidden) {
11203 switch (fiber.tag) {
11204 case 5:
11205 case 26:
11206 try {
11207 var instance = fiber.stateNode;
11208 isHidden ? runWithFiberInDEV(fiber, hideInstance, instance) : runWithFiberInDEV(
11209 fiber,
11210 unhideInstance,
11211 fiber.stateNode,
11212 fiber.memoizedProps
11213 );
11214 } catch (error) {
11215 captureCommitPhaseError(fiber, fiber.return, error);
11216 }
11217 hideOrUnhideNearestPortals(fiber, isHidden);
11218 break;
11219 case 6:
11220 try {
11221 var instance$jscomp$0 = fiber.stateNode;
11222 isHidden ? runWithFiberInDEV(fiber, hideTextInstance, instance$jscomp$0) : runWithFiberInDEV(
11223 fiber,
11224 unhideTextInstance,
11225 instance$jscomp$0,
11226 fiber.memoizedProps
11227 );
11228 viewTransitionMutationContext = true;
11229 } catch (error) {
11230 captureCommitPhaseError(fiber, fiber.return, error);
11231 }
11232 break;
11233 case 18:
11234 try {
11235 var instance$jscomp$1 = fiber.stateNode;
11236 isHidden ? runWithFiberInDEV(
11237 fiber,
11238 hideDehydratedBoundary,
11239 instance$jscomp$1
11240 ) : runWithFiberInDEV(
11241 fiber,
11242 unhideDehydratedBoundary,
11243 fiber.stateNode
11244 );
11245 } catch (error) {
11246 captureCommitPhaseError(fiber, fiber.return, error);
11247 }
11248 break;
11249 case 22:
11250 case 23:
11251 null === fiber.memoizedState && hideOrUnhideAllChildren(fiber, isHidden);
11252 break;
11253 default:
11254 hideOrUnhideAllChildren(fiber, isHidden);
11255 }
11256 }
11257 function hideOrUnhideNearestPortals(parentFiber, isHidden$jscomp$0) {
11258 if (parentFiber.subtreeFlags & 67108864)
11259 for (parentFiber = parentFiber.child; null !== parentFiber; ) {
11260 a: {
11261 var fiber = parentFiber, isHidden = isHidden$jscomp$0;
11262 switch (fiber.tag) {
11263 case 4:
11264 hideOrUnhideAllChildrenOnFiber(fiber, isHidden);
11265 break a;
11266 case 22:
11267 null === fiber.memoizedState && hideOrUnhideNearestPortals(fiber, isHidden);
11268 break a;
11269 default:
11270 hideOrUnhideNearestPortals(fiber, isHidden);
11271 }
11272 }
11273 parentFiber = parentFiber.sibling;
11274 }
11275 }
11276 function detachFiberAfterEffects(fiber) {
11277 var alternate = fiber.alternate;
11278 null !== alternate && (fiber.alternate = null, detachFiberAfterEffects(alternate));
11279 fiber.child = null;
11280 fiber.deletions = null;
11281 fiber.sibling = null;
11282 5 === fiber.tag && (alternate = fiber.stateNode, null !== alternate && detachDeletedInstance(alternate));
11283 fiber.stateNode = null;
11284 fiber._debugOwner = null;
11285 fiber.return = null;
11286 fiber.dependencies = null;
11287 fiber.memoizedProps = null;
11288 fiber.memoizedState = null;
11289 fiber.pendingProps = null;
11290 fiber.stateNode = null;
11291 fiber.updateQueue = null;
11292 }
11293 function recursivelyTraverseDeletionEffects(finishedRoot, nearestMountedAncestor, parent) {
11294 for (parent = parent.child; null !== parent; )
11295 commitDeletionEffectsOnFiber(
11296 finishedRoot,
11297 nearestMountedAncestor,
11298 parent
11299 ), parent = parent.sibling;
11300 }
11301 function commitDeletionEffectsOnFiber(finishedRoot, nearestMountedAncestor, deletedFiber) {
11302 if (injectedHook && "function" === typeof injectedHook.onCommitFiberUnmount)
11303 try {
11304 injectedHook.onCommitFiberUnmount(rendererID, deletedFiber);
11305 } catch (err) {
11306 hasLoggedError || (hasLoggedError = true, console.error(
11307 "React instrumentation encountered an error: %o",
11308 err
11309 ));
11310 }
11311 var prevEffectStart = pushComponentEffectStart(), prevEffectDuration = pushComponentEffectDuration(), prevEffectErrors = pushComponentEffectErrors(), prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate();
11312 switch (deletedFiber.tag) {
11313 case 26:
11314 offscreenSubtreeWasHidden || safelyDetachRef(deletedFiber, nearestMountedAncestor);
11315 recursivelyTraverseDeletionEffects(
11316 finishedRoot,
11317 nearestMountedAncestor,
11318 deletedFiber
11319 );
11320 deletedFiber.memoizedState ? deletedFiber.memoizedState.count-- : deletedFiber.stateNode && !offscreenSubtreeWasHidden && (finishedRoot = deletedFiber.stateNode, finishedRoot.parentNode.removeChild(finishedRoot));
11321 break;
11322 case 27:
11323 offscreenSubtreeWasHidden || safelyDetachRef(deletedFiber, nearestMountedAncestor);
11324 commitFragmentInstanceDeletionEffects(deletedFiber);
11325 var prevHostParent = hostParent, prevHostParentIsContainer = hostParentIsContainer;
11326 isSingletonScope(deletedFiber.type) && (hostParent = deletedFiber.stateNode, hostParentIsContainer = false);
11327 recursivelyTraverseDeletionEffects(
11328 finishedRoot,
11329 nearestMountedAncestor,
11330 deletedFiber
11331 );
11332 runWithFiberInDEV(
11333 deletedFiber,
11334 releaseSingletonInstance,
11335 deletedFiber.stateNode,
11336 deletedFiber.type,
11337 deletedFiber.memoizedProps
11338 );
11339 hostParent = prevHostParent;
11340 hostParentIsContainer = prevHostParentIsContainer;
11341 break;
11342 case 5:
11343 offscreenSubtreeWasHidden || safelyDetachRef(deletedFiber, nearestMountedAncestor), commitFragmentInstanceDeletionEffects(deletedFiber);
11344 case 6:
11345 6 === deletedFiber.tag && commitFragmentInstanceDeletionEffects(deletedFiber);
11346 prevHostParent = hostParent;
11347 prevHostParentIsContainer = hostParentIsContainer;
11348 hostParent = null;
11349 recursivelyTraverseDeletionEffects(
11350 finishedRoot,
11351 nearestMountedAncestor,
11352 deletedFiber
11353 );
11354 hostParent = prevHostParent;
11355 hostParentIsContainer = prevHostParentIsContainer;
11356 if (null !== hostParent)
11357 if (hostParentIsContainer)
11358 try {
11359 runWithFiberInDEV(
11360 deletedFiber,
11361 removeChildFromContainer,
11362 hostParent,
11363 deletedFiber.stateNode
11364 ), viewTransitionMutationContext = true;
11365 } catch (error) {
11366 captureCommitPhaseError(
11367 deletedFiber,
11368 nearestMountedAncestor,
11369 error
11370 );
11371 }
11372 else
11373 try {
11374 runWithFiberInDEV(
11375 deletedFiber,
11376 removeChild,
11377 hostParent,
11378 deletedFiber.stateNode
11379 ), viewTransitionMutationContext = true;
11380 } catch (error) {
11381 captureCommitPhaseError(
11382 deletedFiber,
11383 nearestMountedAncestor,
11384 error
11385 );
11386 }
11387 break;
11388 case 18:
11389 null !== hostParent && (hostParentIsContainer ? (finishedRoot = hostParent, clearHydrationBoundary(
11390 9 === finishedRoot.nodeType ? finishedRoot.body : "HTML" === finishedRoot.nodeName ? finishedRoot.ownerDocument.body : finishedRoot,
11391 deletedFiber.stateNode
11392 ), retryIfBlockedOn(finishedRoot)) : clearHydrationBoundary(hostParent, deletedFiber.stateNode));
11393 break;
11394 case 4:
11395 prevHostParent = hostParent;
11396 prevHostParentIsContainer = hostParentIsContainer;
11397 hostParent = deletedFiber.stateNode.containerInfo;
11398 hostParentIsContainer = true;
11399 recursivelyTraverseDeletionEffects(
11400 finishedRoot,
11401 nearestMountedAncestor,
11402 deletedFiber
11403 );
11404 hostParent = prevHostParent;
11405 hostParentIsContainer = prevHostParentIsContainer;
11406 break;
11407 case 0:
11408 case 11:
11409 case 14:
11410 case 15:
11411 commitHookEffectListUnmount(
11412 Insertion,
11413 deletedFiber,
11414 nearestMountedAncestor
11415 );
11416 offscreenSubtreeWasHidden || commitHookLayoutUnmountEffects(
11417 deletedFiber,
11418 nearestMountedAncestor,
11419 Layout
11420 );
11421 recursivelyTraverseDeletionEffects(
11422 finishedRoot,
11423 nearestMountedAncestor,
11424 deletedFiber
11425 );
11426 break;
11427 case 1:
11428 offscreenSubtreeWasHidden || (safelyDetachRef(deletedFiber, nearestMountedAncestor), prevHostParent = deletedFiber.stateNode, "function" === typeof prevHostParent.componentWillUnmount && safelyCallComponentWillUnmount(
11429 deletedFiber,
11430 nearestMountedAncestor,
11431 prevHostParent
11432 ));
11433 recursivelyTraverseDeletionEffects(
11434 finishedRoot,
11435 nearestMountedAncestor,
11436 deletedFiber
11437 );
11438 break;
11439 case 21:
11440 recursivelyTraverseDeletionEffects(
11441 finishedRoot,
11442 nearestMountedAncestor,
11443 deletedFiber
11444 );
11445 break;
11446 case 22:
11447 offscreenSubtreeWasHidden = (prevHostParent = offscreenSubtreeWasHidden) || null !== deletedFiber.memoizedState;
11448 recursivelyTraverseDeletionEffects(
11449 finishedRoot,
11450 nearestMountedAncestor,
11451 deletedFiber
11452 );
11453 offscreenSubtreeWasHidden = prevHostParent;
11454 break;
11455 case 30:
11456 deletedFiber.flags & 18874368 && untrackNamedViewTransition(deletedFiber);
11457 safelyDetachRef(deletedFiber, nearestMountedAncestor);
11458 recursivelyTraverseDeletionEffects(
11459 finishedRoot,
11460 nearestMountedAncestor,
11461 deletedFiber
11462 );
11463 break;
11464 case 7:
11465 offscreenSubtreeWasHidden || safelyDetachRef(deletedFiber, nearestMountedAncestor);
11466 recursivelyTraverseDeletionEffects(
11467 finishedRoot,
11468 nearestMountedAncestor,
11469 deletedFiber
11470 );
11471 break;
11472 default:
11473 recursivelyTraverseDeletionEffects(
11474 finishedRoot,
11475 nearestMountedAncestor,
11476 deletedFiber
11477 );
11478 }
11479 (deletedFiber.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) && logComponentEffect(
11480 deletedFiber,
11481 componentEffectStartTime,
11482 componentEffectEndTime,
11483 componentEffectDuration,
11484 componentEffectErrors
11485 );
11486 popComponentEffectStart(prevEffectStart);
11487 popComponentEffectDuration(prevEffectDuration);
11488 componentEffectErrors = prevEffectErrors;
11489 componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
11490 }
11491 function commitActivityHydrationCallbacks(finishedRoot, finishedWork) {
11492 if (null === finishedWork.memoizedState && (finishedRoot = finishedWork.alternate, null !== finishedRoot && (finishedRoot = finishedRoot.memoizedState, null !== finishedRoot))) {
11493 finishedRoot = finishedRoot.dehydrated;
11494 try {
11495 runWithFiberInDEV(
11496 finishedWork,
11497 commitHydratedActivityInstance,
11498 finishedRoot
11499 );
11500 } catch (error) {
11501 captureCommitPhaseError(finishedWork, finishedWork.return, error);
11502 }
11503 }
11504 }
11505 function commitSuspenseHydrationCallbacks(finishedRoot, finishedWork) {
11506 if (null === finishedWork.memoizedState && (finishedRoot = finishedWork.alternate, null !== finishedRoot && (finishedRoot = finishedRoot.memoizedState, null !== finishedRoot && (finishedRoot = finishedRoot.dehydrated, null !== finishedRoot))))
11507 try {
11508 runWithFiberInDEV(
11509 finishedWork,
11510 commitHydratedSuspenseInstance,
11511 finishedRoot
11512 );
11513 } catch (error) {
11514 captureCommitPhaseError(finishedWork, finishedWork.return, error);
11515 }
11516 }
11517 function getRetryCache(finishedWork) {
11518 switch (finishedWork.tag) {
11519 case 31:
11520 case 13:
11521 case 19:
11522 var retryCache = finishedWork.stateNode;
11523 null === retryCache && (retryCache = finishedWork.stateNode = new PossiblyWeakSet());
11524 return retryCache;
11525 case 22:
11526 return finishedWork = finishedWork.stateNode, retryCache = finishedWork._retryCache, null === retryCache && (retryCache = finishedWork._retryCache = new PossiblyWeakSet()), retryCache;
11527 default:
11528 throw Error(
11529 "Unexpected Suspense handler tag (" + finishedWork.tag + "). This is a bug in React."
11530 );
11531 }
11532 }
11533 function attachSuspenseRetryListeners(finishedWork, wakeables) {
11534 var retryCache = getRetryCache(finishedWork);
11535 wakeables.forEach(function(wakeable) {
11536 if (!retryCache.has(wakeable)) {
11537 retryCache.add(wakeable);
11538 if (isDevToolsPresent)
11539 if (null !== inProgressLanes && null !== inProgressRoot)
11540 restorePendingUpdaters(inProgressRoot, inProgressLanes);
11541 else
11542 throw Error(
11543 "Expected finished root and lanes to be set. This is a bug in React."
11544 );
11545 var retry = resolveRetryWakeable.bind(null, finishedWork, wakeable);
11546 wakeable.then(retry, retry);
11547 }
11548 });
11549 }
11550 function recursivelyTraverseMutationEffects(root$jscomp$0, parentFiber, lanes) {
11551 var deletions = parentFiber.deletions;
11552 if (null !== deletions)
11553 for (var i = 0; i < deletions.length; i++) {
11554 var root2 = root$jscomp$0, returnFiber = parentFiber, deletedFiber = deletions[i], prevEffectStart = pushComponentEffectStart(), parent = returnFiber;
11555 a: for (; null !== parent; ) {
11556 switch (parent.tag) {
11557 case 27:
11558 if (isSingletonScope(parent.type)) {
11559 hostParent = parent.stateNode;
11560 hostParentIsContainer = false;
11561 break a;
11562 }
11563 break;
11564 case 5:
11565 hostParent = parent.stateNode;
11566 hostParentIsContainer = false;
11567 break a;
11568 case 3:
11569 case 4:
11570 hostParent = parent.stateNode.containerInfo;
11571 hostParentIsContainer = true;
11572 break a;
11573 }
11574 parent = parent.return;
11575 }
11576 if (null === hostParent)
11577 throw Error(
11578 "Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue."
11579 );
11580 commitDeletionEffectsOnFiber(root2, returnFiber, deletedFiber);
11581 hostParent = null;
11582 hostParentIsContainer = false;
11583 (deletedFiber.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && 0.05 < componentEffectEndTime - componentEffectStartTime && logComponentTrigger(
11584 deletedFiber,
11585 componentEffectStartTime,
11586 componentEffectEndTime,
11587 "Unmount"
11588 );
11589 popComponentEffectStart(prevEffectStart);
11590 root2 = deletedFiber;
11591 returnFiber = root2.alternate;
11592 null !== returnFiber && (returnFiber.return = null);
11593 root2.return = null;
11594 }
11595 if (parentFiber.subtreeFlags & 13886)
11596 for (parentFiber = parentFiber.child; null !== parentFiber; )
11597 commitMutationEffectsOnFiber(parentFiber, root$jscomp$0, lanes), parentFiber = parentFiber.sibling;
11598 }
11599 function commitMutationEffectsOnFiber(finishedWork, root2, lanes) {
11600 var prevEffectStart = pushComponentEffectStart(), prevEffectDuration = pushComponentEffectDuration(), prevEffectErrors = pushComponentEffectErrors(), prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate(), current2 = finishedWork.alternate, flags = finishedWork.flags;
11601 switch (finishedWork.tag) {
11602 case 0:
11603 case 11:
11604 case 14:
11605 case 15:
11606 if (flags & 4 && (current2 = finishedWork.updateQueue, current2 = null !== current2 ? current2.events : null, null !== current2))
11607 for (var ii = 0; ii < current2.length; ii++) {
11608 var _eventPayloads$ii2 = current2[ii];
11609 _eventPayloads$ii2.ref.impl = _eventPayloads$ii2.nextImpl;
11610 }
11611 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11612 commitReconciliationEffects(finishedWork);
11613 flags & 4 && (commitHookEffectListUnmount(
11614 Insertion | HasEffect,
11615 finishedWork,
11616 finishedWork.return
11617 ), commitHookEffectListMount(Insertion | HasEffect, finishedWork), commitHookLayoutUnmountEffects(
11618 finishedWork,
11619 finishedWork.return,
11620 Layout | HasEffect
11621 ));
11622 break;
11623 case 1:
11624 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11625 commitReconciliationEffects(finishedWork);
11626 flags & 512 && (offscreenSubtreeWasHidden || null === current2 || safelyDetachRef(current2, current2.return));
11627 flags & 64 && offscreenSubtreeIsHidden && (root2 = finishedWork.updateQueue, null !== root2 && (lanes = root2.callbacks, null !== lanes && (flags = root2.shared.hiddenCallbacks, root2.shared.hiddenCallbacks = null === flags ? lanes : flags.concat(lanes))));
11628 break;
11629 case 26:
11630 ii = currentHoistableRoot;
11631 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11632 commitReconciliationEffects(finishedWork);
11633 flags & 512 && (offscreenSubtreeWasHidden || null === current2 || safelyDetachRef(current2, current2.return));
11634 if (flags & 4)
11635 if (flags = null !== current2 ? current2.memoizedState : null, lanes = finishedWork.memoizedState, null === current2)
11636 if (null === lanes)
11637 if (null === finishedWork.stateNode)
11638 if (offscreenSubtreeIsHidden)
11639 finishedWork.stateNode = createHoistableInstance(
11640 finishedWork.type,
11641 finishedWork.memoizedProps,
11642 root2.containerInfo,
11643 finishedWork
11644 );
11645 else {
11646 a: {
11647 root2 = finishedWork.type;
11648 lanes = finishedWork.memoizedProps;
11649 flags = ii.ownerDocument || ii;
11650 b: switch (root2) {
11651 case "title":
11652 current2 = flags.getElementsByTagName("title")[0];
11653 if (!current2 || current2[internalHoistableMarker] || current2[internalInstanceKey] || current2.namespaceURI === SVG_NAMESPACE || current2.hasAttribute("itemprop"))
11654 current2 = flags.createElement(root2), flags.head.insertBefore(
11655 current2,
11656 flags.querySelector("head > title")
11657 );
11658 setInitialProperties(current2, root2, lanes);
11659 current2[internalInstanceKey] = finishedWork;
11660 markNodeAsHoistable(current2);
11661 root2 = current2;
11662 break a;
11663 case "link":
11664 if (ii = getHydratableHoistableCache(
11665 "link",
11666 "href",
11667 flags
11668 ).get(root2 + (lanes.href || ""))) {
11669 for (_eventPayloads$ii2 = 0; _eventPayloads$ii2 < ii.length; _eventPayloads$ii2++)
11670 if (current2 = ii[_eventPayloads$ii2], current2.getAttribute("href") === (null == lanes.href || "" === lanes.href ? null : lanes.href) && current2.getAttribute("rel") === (null == lanes.rel ? null : lanes.rel) && current2.getAttribute("title") === (null == lanes.title ? null : lanes.title) && current2.getAttribute("crossorigin") === (null == lanes.crossOrigin ? null : lanes.crossOrigin)) {
11671 ii.splice(_eventPayloads$ii2, 1);
11672 break b;
11673 }
11674 }
11675 current2 = flags.createElement(root2);
11676 setInitialProperties(current2, root2, lanes);
11677 flags.head.appendChild(current2);
11678 break;
11679 case "meta":
11680 if (ii = getHydratableHoistableCache(
11681 "meta",
11682 "content",
11683 flags
11684 ).get(root2 + (lanes.content || ""))) {
11685 for (_eventPayloads$ii2 = 0; _eventPayloads$ii2 < ii.length; _eventPayloads$ii2++)
11686 if (current2 = ii[_eventPayloads$ii2], checkAttributeStringCoercion(
11687 lanes.content,
11688 "content"
11689 ), current2.getAttribute("content") === (null == lanes.content ? null : "" + lanes.content) && current2.getAttribute("name") === (null == lanes.name ? null : lanes.name) && current2.getAttribute("property") === (null == lanes.property ? null : lanes.property) && current2.getAttribute("http-equiv") === (null == lanes.httpEquiv ? null : lanes.httpEquiv) && current2.getAttribute("charset") === (null == lanes.charSet ? null : lanes.charSet)) {
11690 ii.splice(_eventPayloads$ii2, 1);
11691 break b;
11692 }
11693 }
11694 current2 = flags.createElement(root2);
11695 setInitialProperties(current2, root2, lanes);
11696 flags.head.appendChild(current2);
11697 break;
11698 default:
11699 throw Error(
11700 'getNodesForType encountered a type it did not expect: "' + root2 + '". This is a bug in React.'
11701 );
11702 }
11703 current2[internalInstanceKey] = finishedWork;
11704 markNodeAsHoistable(current2);
11705 root2 = current2;
11706 }
11707 finishedWork.stateNode = root2;
11708 }
11709 else
11710 offscreenSubtreeIsHidden || mountHoistable(
11711 ii,
11712 finishedWork.type,
11713 finishedWork.stateNode
11714 );
11715 else
11716 finishedWork.stateNode = acquireResource(
11717 ii,
11718 lanes,
11719 finishedWork.memoizedProps
11720 );
11721 else
11722 flags !== lanes ? (null === flags ? (root2 = current2.stateNode, null === root2 || offscreenSubtreeWasHidden || root2.parentNode.removeChild(root2)) : flags.count--, null === lanes ? offscreenSubtreeIsHidden || mountHoistable(
11723 ii,
11724 finishedWork.type,
11725 finishedWork.stateNode
11726 ) : acquireResource(ii, lanes, finishedWork.memoizedProps)) : null === lanes && null !== finishedWork.stateNode && commitHostUpdate(
11727 finishedWork,
11728 finishedWork.memoizedProps,
11729 current2.memoizedProps
11730 );
11731 break;
11732 case 27:
11733 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11734 commitReconciliationEffects(finishedWork);
11735 flags & 512 && (offscreenSubtreeWasHidden || null === current2 || safelyDetachRef(current2, current2.return));
11736 null !== current2 && flags & 4 && commitHostUpdate(
11737 finishedWork,
11738 finishedWork.memoizedProps,
11739 current2.memoizedProps
11740 );
11741 break;
11742 case 5:
11743 ii = offscreenDirectParentIsHidden;
11744 offscreenDirectParentIsHidden = false;
11745 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11746 offscreenDirectParentIsHidden = ii;
11747 commitReconciliationEffects(finishedWork);
11748 flags & 512 && (offscreenSubtreeWasHidden || null === current2 || safelyDetachRef(current2, current2.return));
11749 if (finishedWork.flags & 32) {
11750 root2 = finishedWork.stateNode;
11751 try {
11752 runWithFiberInDEV(finishedWork, resetTextContent, root2), viewTransitionMutationContext = true;
11753 } catch (error) {
11754 captureCommitPhaseError(finishedWork, finishedWork.return, error);
11755 }
11756 }
11757 flags & 4 && null != finishedWork.stateNode && (root2 = finishedWork.memoizedProps, commitHostUpdate(
11758 finishedWork,
11759 root2,
11760 null !== current2 ? current2.memoizedProps : root2
11761 ));
11762 flags & 1024 && (needsFormReset = true, "form" !== finishedWork.type && console.error(
11763 "Unexpected host component type. Expected a form. This is a bug in React."
11764 ));
11765 break;
11766 case 6:
11767 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11768 commitReconciliationEffects(finishedWork);
11769 if (flags & 4) {
11770 if (null === finishedWork.stateNode)
11771 throw Error(
11772 "This should have a text node initialized. This error is likely caused by a bug in React. Please file an issue."
11773 );
11774 root2 = finishedWork.memoizedProps;
11775 lanes = null !== current2 ? current2.memoizedProps : root2;
11776 flags = finishedWork.stateNode;
11777 try {
11778 runWithFiberInDEV(
11779 finishedWork,
11780 commitTextUpdate,
11781 flags,
11782 lanes,
11783 root2
11784 ), viewTransitionMutationContext = true;
11785 } catch (error) {
11786 captureCommitPhaseError(finishedWork, finishedWork.return, error);
11787 }
11788 }
11789 break;
11790 case 3:
11791 ii = pushNestedEffectDurations();
11792 viewTransitionMutationContext = false;
11793 tagCaches = null;
11794 _eventPayloads$ii2 = currentHoistableRoot;
11795 currentHoistableRoot = getHoistableRoot(root2.containerInfo);
11796 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11797 currentHoistableRoot = _eventPayloads$ii2;
11798 commitReconciliationEffects(finishedWork);
11799 if (flags & 4 && null !== current2 && current2.memoizedState.isDehydrated)
11800 try {
11801 runWithFiberInDEV(
11802 finishedWork,
11803 commitHydratedContainer,
11804 root2.containerInfo
11805 );
11806 } catch (error) {
11807 captureCommitPhaseError(finishedWork, finishedWork.return, error);
11808 }
11809 needsFormReset && (needsFormReset = false, recursivelyResetForms(finishedWork));
11810 root2.effectDuration += popNestedEffectDurations(ii);
11811 viewTransitionMutationContext = false;
11812 break;
11813 case 4:
11814 flags = offscreenDirectParentIsHidden;
11815 offscreenDirectParentIsHidden = offscreenSubtreeIsHidden;
11816 current2 = pushMutationContext();
11817 ii = currentHoistableRoot;
11818 currentHoistableRoot = getHoistableRoot(
11819 finishedWork.stateNode.containerInfo
11820 );
11821 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11822 commitReconciliationEffects(finishedWork);
11823 currentHoistableRoot = ii;
11824 viewTransitionMutationContext && inUpdateViewTransition && (rootViewTransitionAffected = true);
11825 viewTransitionMutationContext = current2;
11826 offscreenDirectParentIsHidden = flags;
11827 break;
11828 case 12:
11829 flags = pushNestedEffectDurations();
11830 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11831 commitReconciliationEffects(finishedWork);
11832 finishedWork.stateNode.effectDuration += bubbleNestedEffectDurations(flags);
11833 break;
11834 case 31:
11835 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11836 commitReconciliationEffects(finishedWork);
11837 flags & 4 && (root2 = finishedWork.updateQueue, null !== root2 && (finishedWork.updateQueue = null, attachSuspenseRetryListeners(finishedWork, root2)));
11838 break;
11839 case 13:
11840 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11841 commitReconciliationEffects(finishedWork);
11842 finishedWork.child.flags & 8192 && null !== finishedWork.memoizedState !== (null !== current2 && null !== current2.memoizedState) && (globalMostRecentFallbackTime = now$1());
11843 flags & 4 && (root2 = finishedWork.updateQueue, null !== root2 && (finishedWork.updateQueue = null, attachSuspenseRetryListeners(finishedWork, root2)));
11844 break;
11845 case 22:
11846 ii = null !== finishedWork.memoizedState;
11847 _eventPayloads$ii2 = null !== current2 && null !== current2.memoizedState;
11848 var prevOffscreenSubtreeIsHidden = offscreenSubtreeIsHidden, prevOffscreenSubtreeWasHidden = offscreenSubtreeWasHidden, _prevOffscreenDirectParentIsHidden2 = offscreenDirectParentIsHidden;
11849 offscreenSubtreeIsHidden = prevOffscreenSubtreeIsHidden || ii;
11850 offscreenDirectParentIsHidden = _prevOffscreenDirectParentIsHidden2 || ii;
11851 offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden || _eventPayloads$ii2;
11852 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11853 offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden;
11854 offscreenDirectParentIsHidden = _prevOffscreenDirectParentIsHidden2;
11855 offscreenSubtreeIsHidden = prevOffscreenSubtreeIsHidden;
11856 _eventPayloads$ii2 && !ii && !prevOffscreenSubtreeIsHidden && !prevOffscreenSubtreeWasHidden && (finishedWork.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && 0.05 < componentEffectEndTime - componentEffectStartTime && logComponentReappeared(
11857 finishedWork,
11858 componentEffectStartTime,
11859 componentEffectEndTime
11860 );
11861 commitReconciliationEffects(finishedWork);
11862 flags & 8192 && (root2 = finishedWork.stateNode, root2._visibility = ii ? root2._visibility & ~OffscreenVisible : root2._visibility | OffscreenVisible, !ii || null === current2 || _eventPayloads$ii2 || offscreenSubtreeIsHidden || offscreenSubtreeWasHidden || (root2 = IncludeHostSingletons, lanes = _eventPayloads$ii2 || offscreenSubtreeWasHidden, current2 = offscreenSubtreeIsHidden, _eventPayloads$ii2 = offscreenSubtreeWasHidden, offscreenSubtreeIsHidden = ii || offscreenSubtreeIsHidden, offscreenSubtreeWasHidden = lanes, recursivelyTraverseDisappearLayoutEffects(finishedWork, root2), (finishedWork.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && 0.05 < componentEffectEndTime - componentEffectStartTime && logComponentTrigger(
11863 finishedWork,
11864 componentEffectStartTime,
11865 componentEffectEndTime,
11866 "Disconnect"
11867 ), offscreenSubtreeIsHidden = current2, offscreenSubtreeWasHidden = _eventPayloads$ii2), !ii && offscreenDirectParentIsHidden || hideOrUnhideAllChildren(finishedWork, ii));
11868 flags & 4 && (root2 = finishedWork.updateQueue, null !== root2 && (lanes = root2.retryQueue, null !== lanes && (root2.retryQueue = null, attachSuspenseRetryListeners(finishedWork, lanes))));
11869 break;
11870 case 19:
11871 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11872 commitReconciliationEffects(finishedWork);
11873 flags & 4 && (root2 = finishedWork.updateQueue, null !== root2 && (finishedWork.updateQueue = null, attachSuspenseRetryListeners(finishedWork, root2)));
11874 break;
11875 case 30:
11876 flags & 512 && (offscreenSubtreeWasHidden || null === current2 || safelyDetachRef(current2, current2.return));
11877 flags = pushMutationContext();
11878 ii = inUpdateViewTransition;
11879 _eventPayloads$ii2 = (lanes & 335544064) === lanes;
11880 prevOffscreenSubtreeIsHidden = finishedWork.memoizedProps;
11881 inUpdateViewTransition = _eventPayloads$ii2 && "none" !== getViewTransitionClassName(
11882 prevOffscreenSubtreeIsHidden.default,
11883 prevOffscreenSubtreeIsHidden.update
11884 );
11885 recursivelyTraverseMutationEffects(root2, finishedWork, lanes);
11886 commitReconciliationEffects(finishedWork);
11887 _eventPayloads$ii2 && null !== current2 && viewTransitionMutationContext && (finishedWork.flags |= 4);
11888 inUpdateViewTransition = ii;
11889 viewTransitionMutationContext = flags;
11890 break;
11891 case 21:
11892 break;
11893 case 7:
11894 flags & 512 && (offscreenSubtreeWasHidden || null === current2 || safelyDetachRef(current2, current2.return)), current2 && null !== current2.stateNode && (current2.stateNode._fragmentFiber = finishedWork);
11895 default:
11896 recursivelyTraverseMutationEffects(root2, finishedWork, lanes), commitReconciliationEffects(finishedWork);
11897 }
11898 (finishedWork.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && ((componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) && logComponentEffect(
11899 finishedWork,
11900 componentEffectStartTime,
11901 componentEffectEndTime,
11902 componentEffectDuration,
11903 componentEffectErrors
11904 ), null === finishedWork.alternate && null !== finishedWork.return && null !== finishedWork.return.alternate && 0.05 < componentEffectEndTime - componentEffectStartTime && (isHydratingParent(
11905 finishedWork.return.alternate,
11906 finishedWork.return
11907 ) || logComponentTrigger(
11908 finishedWork,
11909 componentEffectStartTime,
11910 componentEffectEndTime,
11911 "Mount"
11912 )));
11913 popComponentEffectStart(prevEffectStart);
11914 popComponentEffectDuration(prevEffectDuration);
11915 componentEffectErrors = prevEffectErrors;
11916 componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
11917 }
11918 function commitReconciliationEffects(finishedWork) {
11919 var flags = finishedWork.flags;
11920 if (flags & 2) {
11921 try {
11922 runWithFiberInDEV(finishedWork, commitPlacement, finishedWork);
11923 } catch (error) {
11924 captureCommitPhaseError(finishedWork, finishedWork.return, error);
11925 }
11926 finishedWork.flags &= -3;
11927 }
11928 flags & 4096 && (finishedWork.flags &= -4097);
11929 }
11930 function recursivelyResetForms(parentFiber) {
11931 if (parentFiber.subtreeFlags & 1024)
11932 for (parentFiber = parentFiber.child; null !== parentFiber; ) {
11933 var fiber = parentFiber;
11934 recursivelyResetForms(fiber);
11935 5 === fiber.tag && fiber.flags & 1024 && (fiber = fiber.stateNode, _enabled = true, fiber.reset(), _enabled = false);
11936 parentFiber = parentFiber.sibling;
11937 }
11938 }
11939 function recursivelyTraverseAfterMutationEffects(root2, parentFiber) {
11940 if (parentFiber.subtreeFlags & 9270)
11941 for (parentFiber = parentFiber.child; null !== parentFiber; )
11942 commitAfterMutationEffectsOnFiber(parentFiber, root2), parentFiber = parentFiber.sibling;
11943 else measureNestedViewTransitions(parentFiber, false);
11944 }
11945 function commitAfterMutationEffectsOnFiber(finishedWork, root2) {
11946 var current2 = finishedWork.alternate;
11947 if (null === current2) commitEnterViewTransitions(finishedWork, false);
11948 else
11949 switch (finishedWork.tag) {
11950 case 3:
11951 rootViewTransitionNameCanceled = viewTransitionContextChanged = false;
11952 pushViewTransitionCancelableScope();
11953 recursivelyTraverseAfterMutationEffects(root2, finishedWork);
11954 if (!viewTransitionContextChanged && !rootViewTransitionAffected) {
11955 finishedWork = viewTransitionCancelableChildren;
11956 if (null !== finishedWork)
11957 for (var i = 0; i < finishedWork.length; i += 3) {
11958 current2 = finishedWork[i];
11959 var oldName = finishedWork[i + 1];
11960 restoreViewTransitionName(current2, finishedWork[i + 2]);
11961 current2 = current2.ownerDocument.documentElement;
11962 null !== current2 && current2.animate(
11963 { opacity: [0, 0], pointerEvents: ["none", "none"] },
11964 {
11965 duration: 0,
11966 fill: "forwards",
11967 pseudoElement: "::view-transition-group(" + oldName + ")"
11968 }
11969 );
11970 }
11971 finishedWork = root2.containerInfo;
11972 finishedWork = 9 === finishedWork.nodeType ? finishedWork.documentElement : finishedWork.ownerDocument.documentElement;
11973 null !== finishedWork && "" === finishedWork.style.viewTransitionName && (finishedWork.style.viewTransitionName = "none", finishedWork.animate(
11974 { opacity: [0, 0], pointerEvents: ["none", "none"] },
11975 {
11976 duration: 0,
11977 fill: "forwards",
11978 pseudoElement: "::view-transition-group(root)"
11979 }
11980 ), finishedWork.animate(
11981 { width: [0, 0], height: [0, 0] },
11982 {
11983 duration: 0,
11984 fill: "forwards",
11985 pseudoElement: "::view-transition"
11986 }
11987 ));
11988 rootViewTransitionNameCanceled = true;
11989 }
11990 viewTransitionCancelableChildren = null;
11991 break;
11992 case 5:
11993 recursivelyTraverseAfterMutationEffects(root2, finishedWork);
11994 break;
11995 case 4:
11996 i = viewTransitionContextChanged;
11997 viewTransitionContextChanged = false;
11998 recursivelyTraverseAfterMutationEffects(root2, finishedWork);
11999 viewTransitionContextChanged && (rootViewTransitionAffected = true);
12000 viewTransitionContextChanged = i;
12001 break;
12002 case 22:
12003 null === finishedWork.memoizedState && (null !== current2.memoizedState ? commitEnterViewTransitions(finishedWork, false) : recursivelyTraverseAfterMutationEffects(root2, finishedWork));
12004 break;
12005 case 30:
12006 i = viewTransitionContextChanged;
12007 oldName = pushViewTransitionCancelableScope();
12008 viewTransitionContextChanged = false;
12009 recursivelyTraverseAfterMutationEffects(root2, finishedWork);
12010 viewTransitionContextChanged && (finishedWork.flags |= 4);
12011 var props = finishedWork.memoizedProps, state = finishedWork.stateNode;
12012 root2 = getViewTransitionName(props, state);
12013 state = getViewTransitionName(current2.memoizedProps, state);
12014 var className = getViewTransitionClassName(
12015 props.default,
12016 props.update
12017 );
12018 "none" === className ? root2 = false : (props = current2.memoizedState, current2.memoizedState = null, current2 = finishedWork.child, viewTransitionHostInstanceIdx = 0, root2 = measureViewTransitionHostInstancesRecursive(
12019 finishedWork,
12020 current2,
12021 root2,
12022 state,
12023 className,
12024 props,
12025 true
12026 ), viewTransitionHostInstanceIdx !== (null === props ? 0 : props.length) && (finishedWork.flags |= 32));
12027 0 !== (finishedWork.flags & 4) && root2 ? (scheduleViewTransitionEvent(
12028 finishedWork,
12029 finishedWork.memoizedProps.onUpdate
12030 ), viewTransitionCancelableChildren = oldName) : null !== oldName && (oldName.push.apply(oldName, viewTransitionCancelableChildren), viewTransitionCancelableChildren = oldName);
12031 viewTransitionContextChanged = 0 !== (finishedWork.flags & 32) ? true : i;
12032 break;
12033 default:
12034 recursivelyTraverseAfterMutationEffects(root2, finishedWork);
12035 }
12036 }
12037 function recursivelyTraverseLayoutEffects(root2, parentFiber) {
12038 if (parentFiber.subtreeFlags & 8772)
12039 for (parentFiber = parentFiber.child; null !== parentFiber; )
12040 commitLayoutEffectOnFiber(root2, parentFiber.alternate, parentFiber), parentFiber = parentFiber.sibling;
12041 }
12042 function disappearLayoutEffects(finishedWork, layoutEffectTraversalFlags) {
12043 var prevEffectStart = pushComponentEffectStart(), prevEffectDuration = pushComponentEffectDuration(), prevEffectErrors = pushComponentEffectErrors(), prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate();
12044 switch (finishedWork.tag) {
12045 case 0:
12046 case 11:
12047 case 14:
12048 case 15:
12049 commitHookLayoutUnmountEffects(
12050 finishedWork,
12051 finishedWork.return,
12052 Layout
12053 );
12054 recursivelyTraverseDisappearLayoutEffects(
12055 finishedWork,
12056 layoutEffectTraversalFlags
12057 );
12058 break;
12059 case 1:
12060 safelyDetachRef(finishedWork, finishedWork.return);
12061 var instance = finishedWork.stateNode;
12062 "function" === typeof instance.componentWillUnmount && safelyCallComponentWillUnmount(
12063 finishedWork,
12064 finishedWork.return,
12065 instance
12066 );
12067 recursivelyTraverseDisappearLayoutEffects(
12068 finishedWork,
12069 layoutEffectTraversalFlags
12070 );
12071 break;
12072 case 27:
12073 (layoutEffectTraversalFlags & IncludeHostSingletons) !== NoLayoutEffectTraversalFlags && runWithFiberInDEV(
12074 finishedWork,
12075 releaseSingletonInstance,
12076 finishedWork.stateNode,
12077 finishedWork.type,
12078 finishedWork.memoizedProps
12079 );
12080 case 5:
12081 safelyDetachRef(finishedWork, finishedWork.return);
12082 5 !== finishedWork.tag && 27 !== finishedWork.tag || commitFragmentInstanceDeletionEffects(finishedWork);
12083 recursivelyTraverseDisappearLayoutEffects(
12084 finishedWork,
12085 layoutEffectTraversalFlags
12086 );
12087 break;
12088 case 6:
12089 commitFragmentInstanceDeletionEffects(finishedWork);
12090 break;
12091 case 26:
12092 safelyDetachRef(finishedWork, finishedWork.return);
12093 instance = finishedWork.stateNode;
12094 null !== finishedWork.memoizedState || null === instance || offscreenSubtreeWasHidden || instance.parentNode.removeChild(instance);
12095 recursivelyTraverseDisappearLayoutEffects(
12096 finishedWork,
12097 layoutEffectTraversalFlags
12098 );
12099 break;
12100 case 22:
12101 null === finishedWork.memoizedState && recursivelyTraverseDisappearLayoutEffects(
12102 finishedWork,
12103 layoutEffectTraversalFlags
12104 );
12105 break;
12106 case 30:
12107 finishedWork.flags & 18874368 && untrackNamedViewTransition(finishedWork);
12108 safelyDetachRef(finishedWork, finishedWork.return);
12109 recursivelyTraverseDisappearLayoutEffects(
12110 finishedWork,
12111 layoutEffectTraversalFlags
12112 );
12113 break;
12114 case 7:
12115 safelyDetachRef(finishedWork, finishedWork.return);
12116 default:
12117 recursivelyTraverseDisappearLayoutEffects(
12118 finishedWork,
12119 layoutEffectTraversalFlags
12120 );
12121 }
12122 (finishedWork.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) && logComponentEffect(
12123 finishedWork,
12124 componentEffectStartTime,
12125 componentEffectEndTime,
12126 componentEffectDuration,
12127 componentEffectErrors
12128 );
12129 popComponentEffectStart(prevEffectStart);
12130 popComponentEffectDuration(prevEffectDuration);
12131 componentEffectErrors = prevEffectErrors;
12132 componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
12133 }
12134 function recursivelyTraverseDisappearLayoutEffects(parentFiber, layoutEffectTraversalFlags) {
12135 for (parentFiber = parentFiber.child; null !== parentFiber; )
12136 disappearLayoutEffects(parentFiber, layoutEffectTraversalFlags), parentFiber = parentFiber.sibling;
12137 }
12138 function reappearLayoutEffects(finishedRoot, current2, finishedWork, layoutEffectTraversalFlags) {
12139 var prevEffectStart = pushComponentEffectStart(), prevEffectDuration = pushComponentEffectDuration(), prevEffectErrors = pushComponentEffectErrors(), prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate(), flags = finishedWork.flags, includeWorkInProgressEffects = (layoutEffectTraversalFlags & IncludeWorkInProgressEffects) !== NoLayoutEffectTraversalFlags;
12140 switch (finishedWork.tag) {
12141 case 0:
12142 case 11:
12143 case 15:
12144 recursivelyTraverseReappearLayoutEffects(
12145 finishedRoot,
12146 finishedWork,
12147 layoutEffectTraversalFlags
12148 );
12149 commitHookLayoutEffects(finishedWork, Layout);
12150 break;
12151 case 1:
12152 recursivelyTraverseReappearLayoutEffects(
12153 finishedRoot,
12154 finishedWork,
12155 layoutEffectTraversalFlags
12156 );
12157 current2 = finishedWork.stateNode;
12158 "function" === typeof current2.componentDidMount && runWithFiberInDEV(
12159 finishedWork,
12160 callComponentDidMountInDEV,
12161 finishedWork,
12162 current2
12163 );
12164 current2 = finishedWork.updateQueue;
12165 if (null !== current2) {
12166 finishedRoot = finishedWork.stateNode;
12167 try {
12168 runWithFiberInDEV(
12169 finishedWork,
12170 commitHiddenCallbacks,
12171 current2,
12172 finishedRoot
12173 );
12174 } catch (error) {
12175 captureCommitPhaseError(finishedWork, finishedWork.return, error);
12176 }
12177 }
12178 includeWorkInProgressEffects && flags & 64 && commitClassCallbacks(finishedWork);
12179 safelyAttachRef(finishedWork, finishedWork.return);
12180 break;
12181 case 27:
12182 (layoutEffectTraversalFlags & IncludeHostSingletons) !== NoLayoutEffectTraversalFlags && commitHostSingletonAcquisition(finishedWork);
12183 case 5:
12184 5 !== finishedWork.tag && 27 !== finishedWork.tag || commitFragmentInstanceInsertionEffects(finishedWork);
12185 recursivelyTraverseReappearLayoutEffects(
12186 finishedRoot,
12187 finishedWork,
12188 layoutEffectTraversalFlags
12189 );
12190 includeWorkInProgressEffects && null === current2 && flags & 4 && commitHostMount(finishedWork);
12191 safelyAttachRef(finishedWork, finishedWork.return);
12192 break;
12193 case 6:
12194 commitFragmentInstanceInsertionEffects(finishedWork);
12195 break;
12196 case 26:
12197 var instance = finishedWork.stateNode;
12198 null !== finishedWork.memoizedState || null === instance || offscreenSubtreeIsHidden || mountHoistable(
12199 getHoistableRoot(instance.ownerDocument),
12200 finishedWork.type,
12201 instance
12202 );
12203 recursivelyTraverseReappearLayoutEffects(
12204 finishedRoot,
12205 finishedWork,
12206 layoutEffectTraversalFlags
12207 );
12208 includeWorkInProgressEffects && null === current2 && flags & 4 && commitHostMount(finishedWork);
12209 safelyAttachRef(finishedWork, finishedWork.return);
12210 break;
12211 case 12:
12212 if (includeWorkInProgressEffects && flags & 4) {
12213 flags = pushNestedEffectDurations();
12214 recursivelyTraverseReappearLayoutEffects(
12215 finishedRoot,
12216 finishedWork,
12217 layoutEffectTraversalFlags
12218 );
12219 includeWorkInProgressEffects = finishedWork.stateNode;
12220 includeWorkInProgressEffects.effectDuration += bubbleNestedEffectDurations(flags);
12221 try {
12222 runWithFiberInDEV(
12223 finishedWork,
12224 commitProfiler,
12225 finishedWork,
12226 current2,
12227 commitStartTime,
12228 includeWorkInProgressEffects.effectDuration
12229 );
12230 } catch (error) {
12231 captureCommitPhaseError(finishedWork, finishedWork.return, error);
12232 }
12233 } else
12234 recursivelyTraverseReappearLayoutEffects(
12235 finishedRoot,
12236 finishedWork,
12237 layoutEffectTraversalFlags
12238 );
12239 break;
12240 case 31:
12241 recursivelyTraverseReappearLayoutEffects(
12242 finishedRoot,
12243 finishedWork,
12244 layoutEffectTraversalFlags
12245 );
12246 includeWorkInProgressEffects && flags & 4 && commitActivityHydrationCallbacks(finishedRoot, finishedWork);
12247 break;
12248 case 13:
12249 recursivelyTraverseReappearLayoutEffects(
12250 finishedRoot,
12251 finishedWork,
12252 layoutEffectTraversalFlags
12253 );
12254 includeWorkInProgressEffects && flags & 4 && commitSuspenseHydrationCallbacks(finishedRoot, finishedWork);
12255 break;
12256 case 22:
12257 null === finishedWork.memoizedState && recursivelyTraverseReappearLayoutEffects(
12258 finishedRoot,
12259 finishedWork,
12260 layoutEffectTraversalFlags
12261 );
12262 safelyAttachRef(finishedWork, finishedWork.return);
12263 break;
12264 case 30:
12265 recursivelyTraverseReappearLayoutEffects(
12266 finishedRoot,
12267 finishedWork,
12268 layoutEffectTraversalFlags
12269 );
12270 flags & 18874368 && trackNamedViewTransition(finishedWork);
12271 safelyAttachRef(finishedWork, finishedWork.return);
12272 break;
12273 case 7:
12274 safelyAttachRef(finishedWork, finishedWork.return);
12275 default:
12276 recursivelyTraverseReappearLayoutEffects(
12277 finishedRoot,
12278 finishedWork,
12279 layoutEffectTraversalFlags
12280 );
12281 }
12282 (finishedWork.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) && logComponentEffect(
12283 finishedWork,
12284 componentEffectStartTime,
12285 componentEffectEndTime,
12286 componentEffectDuration,
12287 componentEffectErrors
12288 );
12289 popComponentEffectStart(prevEffectStart);
12290 popComponentEffectDuration(prevEffectDuration);
12291 componentEffectErrors = prevEffectErrors;
12292 componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
12293 }
12294 function recursivelyTraverseReappearLayoutEffects(finishedRoot, parentFiber, layoutEffectTraversalFlags) {
12295 layoutEffectTraversalFlags = 0 !== (parentFiber.subtreeFlags & 8772) ? layoutEffectTraversalFlags : layoutEffectTraversalFlags & ~IncludeWorkInProgressEffects;
12296 for (parentFiber = parentFiber.child; null !== parentFiber; )
12297 reappearLayoutEffects(
12298 finishedRoot,
12299 parentFiber.alternate,
12300 parentFiber,
12301 layoutEffectTraversalFlags
12302 ), parentFiber = parentFiber.sibling;
12303 }
12304 function commitOffscreenPassiveMountEffects(current2, finishedWork) {
12305 var previousCache = null;
12306 null !== current2 && null !== current2.memoizedState && null !== current2.memoizedState.cachePool && (previousCache = current2.memoizedState.cachePool.pool);
12307 current2 = null;
12308 null !== finishedWork.memoizedState && null !== finishedWork.memoizedState.cachePool && (current2 = finishedWork.memoizedState.cachePool.pool);
12309 current2 !== previousCache && (null != current2 && retainCache(current2), null != previousCache && releaseCache(previousCache));
12310 }
12311 function commitCachePassiveMountEffect(current2, finishedWork) {
12312 current2 = null;
12313 null !== finishedWork.alternate && (current2 = finishedWork.alternate.memoizedState.cache);
12314 finishedWork = finishedWork.memoizedState.cache;
12315 finishedWork !== current2 && (retainCache(finishedWork), null != current2 && releaseCache(current2));
12316 }
12317 function recursivelyTraversePassiveMountEffects(root2, parentFiber, committedLanes, committedTransitions, endTime) {
12318 var isViewTransitionEligible = (committedLanes & 335544064) === committedLanes;
12319 if (parentFiber.subtreeFlags & (isViewTransitionEligible ? 10262 : 10256) || 0 !== parentFiber.actualDuration && (null === parentFiber.alternate || parentFiber.alternate.child !== parentFiber.child))
12320 for (parentFiber = parentFiber.child; null !== parentFiber; )
12321 isViewTransitionEligible = parentFiber.sibling, commitPassiveMountOnFiber(
12322 root2,
12323 parentFiber,
12324 committedLanes,
12325 committedTransitions,
12326 null !== isViewTransitionEligible ? isViewTransitionEligible.actualStartTime : endTime
12327 ), parentFiber = isViewTransitionEligible;
12328 else
12329 isViewTransitionEligible && restoreNestedViewTransitions(parentFiber);
12330 }
12331 function commitPassiveMountOnFiber(finishedRoot, finishedWork, committedLanes, committedTransitions, endTime) {
12332 var prevEffectStart = pushComponentEffectStart(), prevEffectDuration = pushComponentEffectDuration(), prevEffectErrors = pushComponentEffectErrors(), prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate(), prevDeepEquality = alreadyWarnedForDeepEquality, isViewTransitionEligible = (committedLanes & 335544064) === committedLanes;
12333 isViewTransitionEligible && null === finishedWork.alternate && null !== finishedWork.return && null !== finishedWork.return.alternate && restoreEnterOrExitViewTransitions(finishedWork);
12334 var flags = finishedWork.flags;
12335 switch (finishedWork.tag) {
12336 case 0:
12337 case 11:
12338 case 15:
12339 (finishedWork.mode & ProfileMode) !== NoMode && 0 < finishedWork.actualStartTime && 0 !== (finishedWork.flags & 1) && logComponentRender(
12340 finishedWork,
12341 finishedWork.actualStartTime,
12342 endTime,
12343 inHydratedSubtree,
12344 committedLanes
12345 );
12346 recursivelyTraversePassiveMountEffects(
12347 finishedRoot,
12348 finishedWork,
12349 committedLanes,
12350 committedTransitions,
12351 endTime
12352 );
12353 flags & 2048 && commitHookPassiveMountEffects(finishedWork, Passive | HasEffect);
12354 break;
12355 case 1:
12356 (finishedWork.mode & ProfileMode) !== NoMode && 0 < finishedWork.actualStartTime && (0 !== (finishedWork.flags & 128) ? logComponentErrored(
12357 finishedWork,
12358 finishedWork.actualStartTime,
12359 endTime,
12360 []
12361 ) : 0 !== (finishedWork.flags & 1) && logComponentRender(
12362 finishedWork,
12363 finishedWork.actualStartTime,
12364 endTime,
12365 inHydratedSubtree,
12366 committedLanes
12367 ));
12368 recursivelyTraversePassiveMountEffects(
12369 finishedRoot,
12370 finishedWork,
12371 committedLanes,
12372 committedTransitions,
12373 endTime
12374 );
12375 break;
12376 case 3:
12377 var prevProfilerEffectDuration = pushNestedEffectDurations(), wasInHydratedSubtree = inHydratedSubtree;
12378 inHydratedSubtree = null !== finishedWork.alternate && finishedWork.alternate.memoizedState.isDehydrated && 0 === (finishedWork.flags & 256);
12379 recursivelyTraversePassiveMountEffects(
12380 finishedRoot,
12381 finishedWork,
12382 committedLanes,
12383 committedTransitions,
12384 endTime
12385 );
12386 inHydratedSubtree = wasInHydratedSubtree;
12387 isViewTransitionEligible && rootViewTransitionNameCanceled && (committedLanes = finishedRoot.containerInfo, committedLanes = 9 === committedLanes.nodeType ? committedLanes.body : "HTML" === committedLanes.nodeName ? committedLanes.ownerDocument.body : committedLanes, "root" === committedLanes.style.viewTransitionName && (committedLanes.style.viewTransitionName = ""), committedLanes = committedLanes.ownerDocument.documentElement, null !== committedLanes && "none" === committedLanes.style.viewTransitionName && (committedLanes.style.viewTransitionName = ""));
12388 flags & 2048 && (committedLanes = null, null !== finishedWork.alternate && (committedLanes = finishedWork.alternate.memoizedState.cache), committedTransitions = finishedWork.memoizedState.cache, committedTransitions !== committedLanes && (retainCache(committedTransitions), null != committedLanes && releaseCache(committedLanes)));
12389 finishedRoot.passiveEffectDuration += popNestedEffectDurations(
12390 prevProfilerEffectDuration
12391 );
12392 break;
12393 case 12:
12394 if (flags & 2048) {
12395 flags = pushNestedEffectDurations();
12396 recursivelyTraversePassiveMountEffects(
12397 finishedRoot,
12398 finishedWork,
12399 committedLanes,
12400 committedTransitions,
12401 endTime
12402 );
12403 finishedRoot = finishedWork.stateNode;
12404 finishedRoot.passiveEffectDuration += bubbleNestedEffectDurations(flags);
12405 try {
12406 runWithFiberInDEV(
12407 finishedWork,
12408 commitProfilerPostCommitImpl,
12409 finishedWork,
12410 finishedWork.alternate,
12411 commitStartTime,
12412 finishedRoot.passiveEffectDuration
12413 );
12414 } catch (error) {
12415 captureCommitPhaseError(finishedWork, finishedWork.return, error);
12416 }
12417 } else
12418 recursivelyTraversePassiveMountEffects(
12419 finishedRoot,
12420 finishedWork,
12421 committedLanes,
12422 committedTransitions,
12423 endTime
12424 );
12425 break;
12426 case 31:
12427 flags = inHydratedSubtree;
12428 prevProfilerEffectDuration = null !== finishedWork.alternate ? finishedWork.alternate.memoizedState : null;
12429 isViewTransitionEligible = finishedWork.memoizedState;
12430 null !== prevProfilerEffectDuration && null === isViewTransitionEligible ? (isViewTransitionEligible = finishedWork.deletions, null !== isViewTransitionEligible && 0 < isViewTransitionEligible.length && 18 === isViewTransitionEligible[0].tag ? (inHydratedSubtree = false, prevProfilerEffectDuration = prevProfilerEffectDuration.hydrationErrors, null !== prevProfilerEffectDuration && logComponentErrored(
12431 finishedWork,
12432 finishedWork.actualStartTime,
12433 endTime,
12434 prevProfilerEffectDuration
12435 )) : inHydratedSubtree = true) : inHydratedSubtree = false;
12436 recursivelyTraversePassiveMountEffects(
12437 finishedRoot,
12438 finishedWork,
12439 committedLanes,
12440 committedTransitions,
12441 endTime
12442 );
12443 inHydratedSubtree = flags;
12444 break;
12445 case 13:
12446 flags = inHydratedSubtree;
12447 prevProfilerEffectDuration = null !== finishedWork.alternate ? finishedWork.alternate.memoizedState : null;
12448 isViewTransitionEligible = finishedWork.memoizedState;
12449 null === prevProfilerEffectDuration || null === prevProfilerEffectDuration.dehydrated || null !== isViewTransitionEligible && null !== isViewTransitionEligible.dehydrated ? inHydratedSubtree = false : (isViewTransitionEligible = finishedWork.deletions, null !== isViewTransitionEligible && 0 < isViewTransitionEligible.length && 18 === isViewTransitionEligible[0].tag ? (inHydratedSubtree = false, prevProfilerEffectDuration = prevProfilerEffectDuration.hydrationErrors, null !== prevProfilerEffectDuration && logComponentErrored(
12450 finishedWork,
12451 finishedWork.actualStartTime,
12452 endTime,
12453 prevProfilerEffectDuration
12454 )) : inHydratedSubtree = true);
12455 recursivelyTraversePassiveMountEffects(
12456 finishedRoot,
12457 finishedWork,
12458 committedLanes,
12459 committedTransitions,
12460 endTime
12461 );
12462 inHydratedSubtree = flags;
12463 break;
12464 case 23:
12465 break;
12466 case 22:
12467 wasInHydratedSubtree = finishedWork.stateNode;
12468 prevProfilerEffectDuration = finishedWork.alternate;
12469 null !== finishedWork.memoizedState ? (isViewTransitionEligible && null !== prevProfilerEffectDuration && null === prevProfilerEffectDuration.memoizedState && restoreEnterOrExitViewTransitions(prevProfilerEffectDuration), wasInHydratedSubtree._visibility & OffscreenPassiveEffectsConnected ? recursivelyTraversePassiveMountEffects(
12470 finishedRoot,
12471 finishedWork,
12472 committedLanes,
12473 committedTransitions,
12474 endTime
12475 ) : recursivelyTraverseAtomicPassiveEffects(
12476 finishedRoot,
12477 finishedWork,
12478 committedLanes,
12479 committedTransitions,
12480 endTime
12481 )) : (isViewTransitionEligible && null !== prevProfilerEffectDuration && null !== prevProfilerEffectDuration.memoizedState && restoreEnterOrExitViewTransitions(finishedWork), wasInHydratedSubtree._visibility & OffscreenPassiveEffectsConnected ? recursivelyTraversePassiveMountEffects(
12482 finishedRoot,
12483 finishedWork,
12484 committedLanes,
12485 committedTransitions,
12486 endTime
12487 ) : (wasInHydratedSubtree._visibility |= OffscreenPassiveEffectsConnected, recursivelyTraverseReconnectPassiveEffects(
12488 finishedRoot,
12489 finishedWork,
12490 committedLanes,
12491 committedTransitions,
12492 0 !== (finishedWork.subtreeFlags & 10256) || 0 !== finishedWork.actualDuration && (null === finishedWork.alternate || finishedWork.alternate.child !== finishedWork.child),
12493 endTime
12494 ), (finishedWork.mode & ProfileMode) === NoMode || inHydratedSubtree || (finishedRoot = finishedWork.actualStartTime, 0 <= finishedRoot && 0.05 < endTime - finishedRoot && logComponentReappeared(
12495 finishedWork,
12496 finishedRoot,
12497 endTime
12498 ), 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && 0.05 < componentEffectEndTime - componentEffectStartTime && logComponentReappeared(
12499 finishedWork,
12500 componentEffectStartTime,
12501 componentEffectEndTime
12502 ))));
12503 flags & 2048 && commitOffscreenPassiveMountEffects(
12504 prevProfilerEffectDuration,
12505 finishedWork
12506 );
12507 break;
12508 case 24:
12509 recursivelyTraversePassiveMountEffects(
12510 finishedRoot,
12511 finishedWork,
12512 committedLanes,
12513 committedTransitions,
12514 endTime
12515 );
12516 flags & 2048 && commitCachePassiveMountEffect(finishedWork.alternate, finishedWork);
12517 break;
12518 case 30:
12519 isViewTransitionEligible && (flags = finishedWork.alternate, null !== flags && (restoreViewTransitionOnHostInstances(flags.child, true), restoreViewTransitionOnHostInstances(finishedWork.child, true)));
12520 recursivelyTraversePassiveMountEffects(
12521 finishedRoot,
12522 finishedWork,
12523 committedLanes,
12524 committedTransitions,
12525 endTime
12526 );
12527 break;
12528 default:
12529 recursivelyTraversePassiveMountEffects(
12530 finishedRoot,
12531 finishedWork,
12532 committedLanes,
12533 committedTransitions,
12534 endTime
12535 );
12536 }
12537 if ((finishedWork.mode & ProfileMode) !== NoMode) {
12538 if (finishedRoot = !inHydratedSubtree && null === finishedWork.alternate && null !== finishedWork.return && null !== finishedWork.return.alternate)
12539 committedLanes = finishedWork.actualStartTime, 0 <= committedLanes && 0.05 < endTime - committedLanes && logComponentTrigger(
12540 finishedWork,
12541 committedLanes,
12542 endTime,
12543 "Mount"
12544 );
12545 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && ((componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) && logComponentEffect(
12546 finishedWork,
12547 componentEffectStartTime,
12548 componentEffectEndTime,
12549 componentEffectDuration,
12550 componentEffectErrors
12551 ), finishedRoot && 0.05 < componentEffectEndTime - componentEffectStartTime && logComponentTrigger(
12552 finishedWork,
12553 componentEffectStartTime,
12554 componentEffectEndTime,
12555 "Mount"
12556 ));
12557 }
12558 popComponentEffectStart(prevEffectStart);
12559 popComponentEffectDuration(prevEffectDuration);
12560 componentEffectErrors = prevEffectErrors;
12561 componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
12562 alreadyWarnedForDeepEquality = prevDeepEquality;
12563 }
12564 function recursivelyTraverseReconnectPassiveEffects(finishedRoot, parentFiber, committedLanes, committedTransitions, includeWorkInProgressEffects, endTime) {
12565 includeWorkInProgressEffects = includeWorkInProgressEffects && (0 !== (parentFiber.subtreeFlags & 10256) || 0 !== parentFiber.actualDuration && (null === parentFiber.alternate || parentFiber.alternate.child !== parentFiber.child));
12566 for (parentFiber = parentFiber.child; null !== parentFiber; ) {
12567 var nextSibling = parentFiber.sibling;
12568 reconnectPassiveEffects(
12569 finishedRoot,
12570 parentFiber,
12571 committedLanes,
12572 committedTransitions,
12573 includeWorkInProgressEffects,
12574 null !== nextSibling ? nextSibling.actualStartTime : endTime
12575 );
12576 parentFiber = nextSibling;
12577 }
12578 }
12579 function reconnectPassiveEffects(finishedRoot, finishedWork, committedLanes, committedTransitions, includeWorkInProgressEffects, endTime) {
12580 var prevEffectStart = pushComponentEffectStart(), prevEffectDuration = pushComponentEffectDuration(), prevEffectErrors = pushComponentEffectErrors(), prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate(), prevDeepEquality = alreadyWarnedForDeepEquality;
12581 includeWorkInProgressEffects && (finishedWork.mode & ProfileMode) !== NoMode && 0 < finishedWork.actualStartTime && 0 !== (finishedWork.flags & 1) && logComponentRender(
12582 finishedWork,
12583 finishedWork.actualStartTime,
12584 endTime,
12585 inHydratedSubtree,
12586 committedLanes
12587 );
12588 var flags = finishedWork.flags;
12589 switch (finishedWork.tag) {
12590 case 0:
12591 case 11:
12592 case 15:
12593 recursivelyTraverseReconnectPassiveEffects(
12594 finishedRoot,
12595 finishedWork,
12596 committedLanes,
12597 committedTransitions,
12598 includeWorkInProgressEffects,
12599 endTime
12600 );
12601 commitHookPassiveMountEffects(finishedWork, Passive);
12602 break;
12603 case 23:
12604 break;
12605 case 22:
12606 var _instance4 = finishedWork.stateNode;
12607 null !== finishedWork.memoizedState ? _instance4._visibility & OffscreenPassiveEffectsConnected ? recursivelyTraverseReconnectPassiveEffects(
12608 finishedRoot,
12609 finishedWork,
12610 committedLanes,
12611 committedTransitions,
12612 includeWorkInProgressEffects,
12613 endTime
12614 ) : recursivelyTraverseAtomicPassiveEffects(
12615 finishedRoot,
12616 finishedWork,
12617 committedLanes,
12618 committedTransitions,
12619 endTime
12620 ) : (_instance4._visibility |= OffscreenPassiveEffectsConnected, recursivelyTraverseReconnectPassiveEffects(
12621 finishedRoot,
12622 finishedWork,
12623 committedLanes,
12624 committedTransitions,
12625 includeWorkInProgressEffects,
12626 endTime
12627 ));
12628 includeWorkInProgressEffects && flags & 2048 && commitOffscreenPassiveMountEffects(
12629 finishedWork.alternate,
12630 finishedWork
12631 );
12632 break;
12633 case 24:
12634 recursivelyTraverseReconnectPassiveEffects(
12635 finishedRoot,
12636 finishedWork,
12637 committedLanes,
12638 committedTransitions,
12639 includeWorkInProgressEffects,
12640 endTime
12641 );
12642 includeWorkInProgressEffects && flags & 2048 && commitCachePassiveMountEffect(finishedWork.alternate, finishedWork);
12643 break;
12644 default:
12645 recursivelyTraverseReconnectPassiveEffects(
12646 finishedRoot,
12647 finishedWork,
12648 committedLanes,
12649 committedTransitions,
12650 includeWorkInProgressEffects,
12651 endTime
12652 );
12653 }
12654 (finishedWork.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) && logComponentEffect(
12655 finishedWork,
12656 componentEffectStartTime,
12657 componentEffectEndTime,
12658 componentEffectDuration,
12659 componentEffectErrors
12660 );
12661 popComponentEffectStart(prevEffectStart);
12662 popComponentEffectDuration(prevEffectDuration);
12663 componentEffectErrors = prevEffectErrors;
12664 componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
12665 alreadyWarnedForDeepEquality = prevDeepEquality;
12666 }
12667 function recursivelyTraverseAtomicPassiveEffects(finishedRoot$jscomp$0, parentFiber, committedLanes$jscomp$0, committedTransitions$jscomp$0, endTime$jscomp$0) {
12668 if (parentFiber.subtreeFlags & 10256 || 0 !== parentFiber.actualDuration && (null === parentFiber.alternate || parentFiber.alternate.child !== parentFiber.child))
12669 for (var child = parentFiber.child; null !== child; ) {
12670 parentFiber = child.sibling;
12671 var finishedRoot = finishedRoot$jscomp$0, committedLanes = committedLanes$jscomp$0, committedTransitions = committedTransitions$jscomp$0, endTime = null !== parentFiber ? parentFiber.actualStartTime : endTime$jscomp$0, prevDeepEquality = alreadyWarnedForDeepEquality;
12672 (child.mode & ProfileMode) !== NoMode && 0 < child.actualStartTime && 0 !== (child.flags & 1) && logComponentRender(
12673 child,
12674 child.actualStartTime,
12675 endTime,
12676 inHydratedSubtree,
12677 committedLanes
12678 );
12679 var flags = child.flags;
12680 switch (child.tag) {
12681 case 22:
12682 recursivelyTraverseAtomicPassiveEffects(
12683 finishedRoot,
12684 child,
12685 committedLanes,
12686 committedTransitions,
12687 endTime
12688 );
12689 flags & 2048 && commitOffscreenPassiveMountEffects(child.alternate, child);
12690 break;
12691 case 24:
12692 recursivelyTraverseAtomicPassiveEffects(
12693 finishedRoot,
12694 child,
12695 committedLanes,
12696 committedTransitions,
12697 endTime
12698 );
12699 flags & 2048 && commitCachePassiveMountEffect(child.alternate, child);
12700 break;
12701 default:
12702 recursivelyTraverseAtomicPassiveEffects(
12703 finishedRoot,
12704 child,
12705 committedLanes,
12706 committedTransitions,
12707 endTime
12708 );
12709 }
12710 alreadyWarnedForDeepEquality = prevDeepEquality;
12711 child = parentFiber;
12712 }
12713 }
12714 function recursivelyAccumulateSuspenseyCommit(parentFiber, committedLanes, suspendedState) {
12715 if (parentFiber.subtreeFlags & suspenseyCommitFlag)
12716 for (parentFiber = parentFiber.child; null !== parentFiber; )
12717 accumulateSuspenseyCommitOnFiber(
12718 parentFiber,
12719 committedLanes,
12720 suspendedState
12721 ), parentFiber = parentFiber.sibling;
12722 }
12723 function accumulateSuspenseyCommitOnFiber(fiber, committedLanes, suspendedState) {
12724 switch (fiber.tag) {
12725 case 26:
12726 recursivelyAccumulateSuspenseyCommit(
12727 fiber,
12728 committedLanes,
12729 suspendedState
12730 );
12731 fiber.flags & suspenseyCommitFlag && (null !== fiber.memoizedState ? suspendResource(
12732 suspendedState,
12733 currentHoistableRoot,
12734 fiber.memoizedState,
12735 fiber.memoizedProps
12736 ) : (fiber = fiber.stateNode, (committedLanes & 335544128) === committedLanes && suspendInstance(suspendedState, fiber)));
12737 break;
12738 case 5:
12739 recursivelyAccumulateSuspenseyCommit(
12740 fiber,
12741 committedLanes,
12742 suspendedState
12743 );
12744 fiber.flags & suspenseyCommitFlag && (fiber = fiber.stateNode, (committedLanes & 335544128) === committedLanes && suspendInstance(suspendedState, fiber));
12745 break;
12746 case 3:
12747 case 4:
12748 var previousHoistableRoot = currentHoistableRoot;
12749 currentHoistableRoot = getHoistableRoot(
12750 fiber.stateNode.containerInfo
12751 );
12752 recursivelyAccumulateSuspenseyCommit(
12753 fiber,
12754 committedLanes,
12755 suspendedState
12756 );
12757 currentHoistableRoot = previousHoistableRoot;
12758 break;
12759 case 22:
12760 null === fiber.memoizedState && (previousHoistableRoot = fiber.alternate, null !== previousHoistableRoot && null !== previousHoistableRoot.memoizedState ? (previousHoistableRoot = suspenseyCommitFlag, suspenseyCommitFlag = 16777216, recursivelyAccumulateSuspenseyCommit(
12761 fiber,
12762 committedLanes,
12763 suspendedState
12764 ), suspenseyCommitFlag = previousHoistableRoot) : recursivelyAccumulateSuspenseyCommit(
12765 fiber,
12766 committedLanes,
12767 suspendedState
12768 ));
12769 break;
12770 case 30:
12771 if (0 !== (fiber.flags & suspenseyCommitFlag) && (previousHoistableRoot = fiber.memoizedProps.name, null != previousHoistableRoot && "auto" !== previousHoistableRoot)) {
12772 var state = fiber.stateNode;
12773 state.paired = null;
12774 null === appearingViewTransitions && (appearingViewTransitions = /* @__PURE__ */ new Map());
12775 appearingViewTransitions.set(previousHoistableRoot, state);
12776 }
12777 recursivelyAccumulateSuspenseyCommit(
12778 fiber,
12779 committedLanes,
12780 suspendedState
12781 );
12782 break;
12783 default:
12784 recursivelyAccumulateSuspenseyCommit(
12785 fiber,
12786 committedLanes,
12787 suspendedState
12788 );
12789 }
12790 }
12791 function detachAlternateSiblings(parentFiber) {
12792 var previousFiber = parentFiber.alternate;
12793 if (null !== previousFiber && (parentFiber = previousFiber.child, null !== parentFiber)) {
12794 previousFiber.child = null;
12795 do
12796 previousFiber = parentFiber.sibling, parentFiber.sibling = null, parentFiber = previousFiber;
12797 while (null !== parentFiber);
12798 }
12799 }
12800 function recursivelyTraversePassiveUnmountEffects(parentFiber) {
12801 var deletions = parentFiber.deletions;
12802 if (0 !== (parentFiber.flags & 16)) {
12803 if (null !== deletions)
12804 for (var i = 0; i < deletions.length; i++) {
12805 var childToDelete = deletions[i], prevEffectStart = pushComponentEffectStart();
12806 nextEffect = childToDelete;
12807 commitPassiveUnmountEffectsInsideOfDeletedTree_begin(
12808 childToDelete,
12809 parentFiber
12810 );
12811 (childToDelete.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && 0.05 < componentEffectEndTime - componentEffectStartTime && logComponentTrigger(
12812 childToDelete,
12813 componentEffectStartTime,
12814 componentEffectEndTime,
12815 "Unmount"
12816 );
12817 popComponentEffectStart(prevEffectStart);
12818 }
12819 detachAlternateSiblings(parentFiber);
12820 }
12821 if (parentFiber.subtreeFlags & 10256)
12822 for (parentFiber = parentFiber.child; null !== parentFiber; )
12823 commitPassiveUnmountOnFiber(parentFiber), parentFiber = parentFiber.sibling;
12824 }
12825 function commitPassiveUnmountOnFiber(finishedWork) {
12826 var prevEffectStart = pushComponentEffectStart(), prevEffectDuration = pushComponentEffectDuration(), prevEffectErrors = pushComponentEffectErrors(), prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate();
12827 switch (finishedWork.tag) {
12828 case 0:
12829 case 11:
12830 case 15:
12831 recursivelyTraversePassiveUnmountEffects(finishedWork);
12832 finishedWork.flags & 2048 && commitHookPassiveUnmountEffects(
12833 finishedWork,
12834 finishedWork.return,
12835 Passive | HasEffect
12836 );
12837 break;
12838 case 3:
12839 var prevProfilerEffectDuration = pushNestedEffectDurations();
12840 recursivelyTraversePassiveUnmountEffects(finishedWork);
12841 finishedWork.stateNode.passiveEffectDuration += popNestedEffectDurations(prevProfilerEffectDuration);
12842 break;
12843 case 12:
12844 prevProfilerEffectDuration = pushNestedEffectDurations();
12845 recursivelyTraversePassiveUnmountEffects(finishedWork);
12846 finishedWork.stateNode.passiveEffectDuration += bubbleNestedEffectDurations(prevProfilerEffectDuration);
12847 break;
12848 case 22:
12849 prevProfilerEffectDuration = finishedWork.stateNode;
12850 null !== finishedWork.memoizedState && prevProfilerEffectDuration._visibility & OffscreenPassiveEffectsConnected && (null === finishedWork.return || 13 !== finishedWork.return.tag) ? (prevProfilerEffectDuration._visibility &= ~OffscreenPassiveEffectsConnected, recursivelyTraverseDisconnectPassiveEffects(finishedWork), (finishedWork.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && 0.05 < componentEffectEndTime - componentEffectStartTime && logComponentTrigger(
12851 finishedWork,
12852 componentEffectStartTime,
12853 componentEffectEndTime,
12854 "Disconnect"
12855 )) : recursivelyTraversePassiveUnmountEffects(finishedWork);
12856 break;
12857 default:
12858 recursivelyTraversePassiveUnmountEffects(finishedWork);
12859 }
12860 (finishedWork.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) && logComponentEffect(
12861 finishedWork,
12862 componentEffectStartTime,
12863 componentEffectEndTime,
12864 componentEffectDuration,
12865 componentEffectErrors
12866 );
12867 popComponentEffectStart(prevEffectStart);
12868 popComponentEffectDuration(prevEffectDuration);
12869 componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
12870 componentEffectErrors = prevEffectErrors;
12871 }
12872 function recursivelyTraverseDisconnectPassiveEffects(parentFiber) {
12873 var deletions = parentFiber.deletions;
12874 if (0 !== (parentFiber.flags & 16)) {
12875 if (null !== deletions)
12876 for (var i = 0; i < deletions.length; i++) {
12877 var childToDelete = deletions[i], prevEffectStart = pushComponentEffectStart();
12878 nextEffect = childToDelete;
12879 commitPassiveUnmountEffectsInsideOfDeletedTree_begin(
12880 childToDelete,
12881 parentFiber
12882 );
12883 (childToDelete.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && 0.05 < componentEffectEndTime - componentEffectStartTime && logComponentTrigger(
12884 childToDelete,
12885 componentEffectStartTime,
12886 componentEffectEndTime,
12887 "Unmount"
12888 );
12889 popComponentEffectStart(prevEffectStart);
12890 }
12891 detachAlternateSiblings(parentFiber);
12892 }
12893 for (parentFiber = parentFiber.child; null !== parentFiber; )
12894 disconnectPassiveEffect(parentFiber), parentFiber = parentFiber.sibling;
12895 }
12896 function disconnectPassiveEffect(finishedWork) {
12897 var prevEffectStart = pushComponentEffectStart(), prevEffectDuration = pushComponentEffectDuration(), prevEffectErrors = pushComponentEffectErrors(), prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate();
12898 switch (finishedWork.tag) {
12899 case 0:
12900 case 11:
12901 case 15:
12902 commitHookPassiveUnmountEffects(
12903 finishedWork,
12904 finishedWork.return,
12905 Passive
12906 );
12907 recursivelyTraverseDisconnectPassiveEffects(finishedWork);
12908 break;
12909 case 22:
12910 var instance = finishedWork.stateNode;
12911 instance._visibility & OffscreenPassiveEffectsConnected && (instance._visibility &= ~OffscreenPassiveEffectsConnected, recursivelyTraverseDisconnectPassiveEffects(finishedWork));
12912 break;
12913 default:
12914 recursivelyTraverseDisconnectPassiveEffects(finishedWork);
12915 }
12916 (finishedWork.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) && logComponentEffect(
12917 finishedWork,
12918 componentEffectStartTime,
12919 componentEffectEndTime,
12920 componentEffectDuration,
12921 componentEffectErrors
12922 );
12923 popComponentEffectStart(prevEffectStart);
12924 popComponentEffectDuration(prevEffectDuration);
12925 componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
12926 componentEffectErrors = prevEffectErrors;
12927 }
12928 function commitPassiveUnmountEffectsInsideOfDeletedTree_begin(deletedSubtreeRoot, nearestMountedAncestor$jscomp$0) {
12929 for (; null !== nextEffect; ) {
12930 var fiber = nextEffect, current2 = fiber, nearestMountedAncestor = nearestMountedAncestor$jscomp$0, prevEffectStart = pushComponentEffectStart(), prevEffectDuration = pushComponentEffectDuration(), prevEffectErrors = pushComponentEffectErrors(), prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate();
12931 switch (current2.tag) {
12932 case 0:
12933 case 11:
12934 case 15:
12935 commitHookPassiveUnmountEffects(
12936 current2,
12937 nearestMountedAncestor,
12938 Passive
12939 );
12940 break;
12941 case 23:
12942 case 22:
12943 null !== current2.memoizedState && null !== current2.memoizedState.cachePool && (nearestMountedAncestor = current2.memoizedState.cachePool.pool, null != nearestMountedAncestor && retainCache(nearestMountedAncestor));
12944 break;
12945 case 24:
12946 releaseCache(current2.memoizedState.cache);
12947 }
12948 (current2.mode & ProfileMode) !== NoMode && 0 <= componentEffectStartTime && 0 <= componentEffectEndTime && (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) && logComponentEffect(
12949 current2,
12950 componentEffectStartTime,
12951 componentEffectEndTime,
12952 componentEffectDuration,
12953 componentEffectErrors
12954 );
12955 popComponentEffectStart(prevEffectStart);
12956 popComponentEffectDuration(prevEffectDuration);
12957 componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
12958 componentEffectErrors = prevEffectErrors;
12959 current2 = fiber.child;
12960 if (null !== current2) current2.return = fiber, nextEffect = current2;
12961 else
12962 a: for (fiber = deletedSubtreeRoot; null !== nextEffect; ) {
12963 current2 = nextEffect;
12964 prevEffectStart = current2.sibling;
12965 prevEffectDuration = current2.return;
12966 detachFiberAfterEffects(current2);
12967 if (current2 === fiber) {
12968 nextEffect = null;
12969 break a;
12970 }
12971 if (null !== prevEffectStart) {
12972 prevEffectStart.return = prevEffectDuration;
12973 nextEffect = prevEffectStart;
12974 break a;
12975 }
12976 nextEffect = prevEffectDuration;
12977 }
12978 }
12979 }
12980 function onCommitRoot() {
12981 commitHooks.forEach(function(commitHook) {
12982 return commitHook();
12983 });
12984 }
12985 function isConcurrentActEnvironment() {
12986 var isReactActEnvironmentGlobal = "undefined" !== typeof IS_REACT_ACT_ENVIRONMENT ? IS_REACT_ACT_ENVIRONMENT : void 0;
12987 isReactActEnvironmentGlobal || null === ReactSharedInternals.actQueue || console.error(
12988 "The current testing environment is not configured to support act(...)"
12989 );
12990 return isReactActEnvironmentGlobal;
12991 }
12992 function requestUpdateLane(fiber) {
12993 if ((executionContext & RenderContext) !== NoContext && 0 !== workInProgressRootRenderLanes)
12994 return workInProgressRootRenderLanes & -workInProgressRootRenderLanes;
12995 var transition = ReactSharedInternals.T;
12996 if (null !== transition)
12997 return transition._updatedFibers || (transition._updatedFibers = /* @__PURE__ */ new Set()), transition._updatedFibers.add(fiber), null !== lastSuspendedFiber && resolveUpdatePriority() === DiscreteEventPriority && (lastSuspendedFiber = null), requestTransitionLane();
12998 fiber = resolveUpdatePriority();
12999 fiber === DiscreteEventPriority && (lastSuspendedFiber = null);
13000 return fiber;
13001 }
13002 function requestDeferredLane() {
13003 if (0 === workInProgressDeferredLane)
13004 if (0 === (workInProgressRootRenderLanes & 536870912) || isHydrating) {
13005 var lane = nextTransitionDeferredLane;
13006 nextTransitionDeferredLane <<= 1;
13007 0 === (nextTransitionDeferredLane & 3932160) && (nextTransitionDeferredLane = 262144);
13008 workInProgressDeferredLane = lane;
13009 } else workInProgressDeferredLane = 536870912;
13010 lane = suspenseHandlerStackCursor.current;
13011 null !== lane && (lane.flags |= 32);
13012 return workInProgressDeferredLane;
13013 }
13014 function scheduleViewTransitionEvent(fiber, callback) {
13015 if (null != callback) {
13016 var state = fiber.stateNode, instance = state.ref;
13017 null === instance && (instance = state.ref = createViewTransitionInstance(
13018 getViewTransitionName(fiber.memoizedProps, state)
13019 ));
13020 null === pendingViewTransitionEvents && (pendingViewTransitionEvents = []);
13021 pendingViewTransitionEvents.push(callback.bind(null, instance));
13022 }
13023 }
13024 function scheduleUpdateOnFiber(root2, fiber, lane) {
13025 isRunningInsertionEffect && console.error("useInsertionEffect must not schedule updates.");
13026 isFlushingPassiveEffects && (didScheduleUpdateDuringPassiveEffects = true);
13027 if (root2 === workInProgressRoot && (workInProgressSuspendedReason === SuspendedOnData || workInProgressSuspendedReason === SuspendedOnAction) || null !== root2.cancelPendingCommit)
13028 prepareFreshStack(root2, 0), markRootSuspended(
13029 root2,
13030 workInProgressRootRenderLanes,
13031 workInProgressDeferredLane,
13032 false
13033 );
13034 markRootUpdated$1(root2, lane);
13035 if ((executionContext & RenderContext) !== NoContext && root2 === workInProgressRoot) {
13036 if (isRendering)
13037 switch (fiber.tag) {
13038 case 0:
13039 case 11:
13040 case 15:
13041 root2 = workInProgress && getComponentNameFromFiber(workInProgress) || "Unknown";
13042 didWarnAboutUpdateInRenderForAnotherComponent.has(root2) || (didWarnAboutUpdateInRenderForAnotherComponent.add(root2), fiber = getComponentNameFromFiber(fiber) || "Unknown", console.error(
13043 "Cannot update a component (`%s`) while rendering a different component (`%s`). To locate the bad setState() call inside `%s`, follow the stack trace as described in https://react.dev/link/setstate-in-render",
13044 fiber,
13045 root2,
13046 root2
13047 ));
13048 break;
13049 case 1:
13050 didWarnAboutUpdateInRender || (console.error(
13051 "Cannot update during an existing state transition (such as within `render`). Render methods should be a pure function of props and state."
13052 ), didWarnAboutUpdateInRender = true);
13053 }
13054 } else
13055 isDevToolsPresent && addFiberToLanesMap(root2, fiber, lane), warnIfUpdatesNotWrappedWithActDEV(fiber), root2 === workInProgressRoot && ((executionContext & RenderContext) === NoContext && (workInProgressRootInterleavedUpdatedLanes |= lane), workInProgressRootExitStatus === RootSuspendedWithDelay && markRootSuspended(
13056 root2,
13057 workInProgressRootRenderLanes,
13058 workInProgressDeferredLane,
13059 false
13060 )), ensureRootIsScheduled(root2);
13061 }
13062 function performWorkOnRoot(root2, lanes, forceSync) {
13063 if ((executionContext & (RenderContext | CommitContext)) !== NoContext)
13064 throw Error("Should not already be working.");
13065 if (0 !== workInProgressRootRenderLanes && null !== workInProgress) {
13066 var yieldedFiber = workInProgress, yieldEndTime = now$1();
13067 switch (yieldReason) {
13068 case SuspendedOnImmediate:
13069 case SuspendedOnData:
13070 var startTime = yieldStartTime;
13071 supportsUserTiming && ((yieldedFiber = yieldedFiber._debugTask) ? yieldedFiber.run(
13072 console.timeStamp.bind(
13073 console,
13074 "Suspended",
13075 startTime,
13076 yieldEndTime,
13077 COMPONENTS_TRACK,
13078 void 0,
13079 "primary-light"
13080 )
13081 ) : console.timeStamp(
13082 "Suspended",
13083 startTime,
13084 yieldEndTime,
13085 COMPONENTS_TRACK,
13086 void 0,
13087 "primary-light"
13088 ));
13089 break;
13090 case SuspendedOnAction:
13091 startTime = yieldStartTime;
13092 supportsUserTiming && ((yieldedFiber = yieldedFiber._debugTask) ? yieldedFiber.run(
13093 console.timeStamp.bind(
13094 console,
13095 "Action",
13096 startTime,
13097 yieldEndTime,
13098 COMPONENTS_TRACK,
13099 void 0,
13100 "primary-light"
13101 )
13102 ) : console.timeStamp(
13103 "Action",
13104 startTime,
13105 yieldEndTime,
13106 COMPONENTS_TRACK,
13107 void 0,
13108 "primary-light"
13109 ));
13110 break;
13111 default:
13112 supportsUserTiming && (yieldedFiber = yieldEndTime - yieldStartTime, 3 > yieldedFiber || console.timeStamp(
13113 "Blocked",
13114 yieldStartTime,
13115 yieldEndTime,
13116 COMPONENTS_TRACK,
13117 void 0,
13118 5 > yieldedFiber ? "primary-light" : 10 > yieldedFiber ? "primary" : 100 > yieldedFiber ? "primary-dark" : "error"
13119 ));
13120 }
13121 }
13122 startTime = (forceSync = !forceSync && 0 === (lanes & 127) && 0 === (lanes & root2.expiredLanes) || checkIfRootIsPrerendering(root2, lanes)) ? renderRootConcurrent(root2, lanes) : renderRootSync(root2, lanes, true);
13123 var renderWasConcurrent = forceSync;
13124 do {
13125 if (startTime === RootInProgress) {
13126 workInProgressRootIsPrerendering && !forceSync && markRootSuspended(root2, lanes, 0, false);
13127 lanes = workInProgressSuspendedReason;
13128 yieldStartTime = now();
13129 yieldReason = lanes;
13130 break;
13131 } else {
13132 yieldedFiber = now$1();
13133 yieldEndTime = root2.current.alternate;
13134 if (renderWasConcurrent && !isRenderConsistentWithExternalStores(yieldEndTime)) {
13135 setCurrentTrackFromLanes(lanes);
13136 yieldEndTime = renderStartTime;
13137 startTime = yieldedFiber;
13138 !supportsUserTiming || startTime <= yieldEndTime || (workInProgressUpdateTask ? workInProgressUpdateTask.run(
13139 console.timeStamp.bind(
13140 console,
13141 "Teared Render",
13142 yieldEndTime,
13143 startTime,
13144 currentTrack,
13145 LANES_TRACK_GROUP,
13146 "error"
13147 )
13148 ) : console.timeStamp(
13149 "Teared Render",
13150 yieldEndTime,
13151 startTime,
13152 currentTrack,
13153 LANES_TRACK_GROUP,
13154 "error"
13155 ));
13156 finalizeRender(lanes, yieldedFiber);
13157 startTime = renderRootSync(root2, lanes, false);
13158 renderWasConcurrent = false;
13159 continue;
13160 }
13161 if (startTime === RootErrored) {
13162 renderWasConcurrent = lanes;
13163 if (root2.errorRecoveryDisabledLanes & renderWasConcurrent)
13164 var errorRetryLanes = 0;
13165 else
13166 errorRetryLanes = root2.pendingLanes & -536870913, errorRetryLanes = 0 !== errorRetryLanes ? errorRetryLanes : errorRetryLanes & 536870912 ? 536870912 : 0;
13167 if (0 !== errorRetryLanes) {
13168 setCurrentTrackFromLanes(lanes);
13169 logErroredRenderPhase(
13170 renderStartTime,
13171 yieldedFiber,
13172 lanes,
13173 workInProgressUpdateTask
13174 );
13175 finalizeRender(lanes, yieldedFiber);
13176 lanes = errorRetryLanes;
13177 a: {
13178 yieldedFiber = root2;
13179 startTime = renderWasConcurrent;
13180 renderWasConcurrent = workInProgressRootConcurrentErrors;
13181 var wasRootDehydrated = yieldedFiber.current.memoizedState.isDehydrated;
13182 wasRootDehydrated && (prepareFreshStack(yieldedFiber, errorRetryLanes).flags |= 256);
13183 errorRetryLanes = renderRootSync(
13184 yieldedFiber,
13185 errorRetryLanes,
13186 false
13187 );
13188 if (errorRetryLanes !== RootErrored && errorRetryLanes !== RootSuspendedAtTheShell) {
13189 if (workInProgressRootDidAttachPingListener && !wasRootDehydrated) {
13190 yieldedFiber.errorRecoveryDisabledLanes |= startTime;
13191 workInProgressRootInterleavedUpdatedLanes |= startTime;
13192 startTime = RootSuspendedWithDelay;
13193 break a;
13194 }
13195 yieldedFiber = workInProgressRootRecoverableErrors;
13196 workInProgressRootRecoverableErrors = renderWasConcurrent;
13197 null !== yieldedFiber && (null === workInProgressRootRecoverableErrors ? workInProgressRootRecoverableErrors = yieldedFiber : workInProgressRootRecoverableErrors.push.apply(
13198 workInProgressRootRecoverableErrors,
13199 yieldedFiber
13200 ));
13201 }
13202 startTime = errorRetryLanes;
13203 }
13204 renderWasConcurrent = false;
13205 if (startTime !== RootErrored) continue;
13206 else yieldedFiber = now$1();
13207 }
13208 }
13209 if (startTime === RootFatalErrored) {
13210 setCurrentTrackFromLanes(lanes);
13211 logErroredRenderPhase(
13212 renderStartTime,
13213 yieldedFiber,
13214 lanes,
13215 workInProgressUpdateTask
13216 );
13217 finalizeRender(lanes, yieldedFiber);
13218 prepareFreshStack(root2, 0);
13219 markRootSuspended(root2, lanes, 0, true);
13220 break;
13221 }
13222 a: {
13223 forceSync = root2;
13224 switch (startTime) {
13225 case RootInProgress:
13226 case RootFatalErrored:
13227 throw Error("Root did not complete. This is a bug in React.");
13228 case RootSuspendedWithDelay:
13229 if ((lanes & 4194048) !== lanes && (lanes & 62914560) !== lanes)
13230 break;
13231 case RootSuspendedAtTheShell:
13232 setCurrentTrackFromLanes(lanes);
13233 logSuspendedRenderPhase(
13234 renderStartTime,
13235 yieldedFiber,
13236 lanes,
13237 workInProgressUpdateTask
13238 );
13239 finalizeRender(lanes, yieldedFiber);
13240 yieldEndTime = lanes;
13241 0 !== (yieldEndTime & 127) ? blockingSuspendedTime = yieldedFiber : 0 !== (yieldEndTime & 4194048) && (transitionSuspendedTime = yieldedFiber);
13242 markRootSuspended(
13243 forceSync,
13244 lanes,
13245 workInProgressDeferredLane,
13246 !workInProgressRootDidSkipSuspendedSiblings
13247 );
13248 break a;
13249 case RootErrored:
13250 workInProgressRootRecoverableErrors = null;
13251 break;
13252 case RootSuspended:
13253 case RootCompleted:
13254 break;
13255 default:
13256 throw Error("Unknown root exit status.");
13257 }
13258 if (null !== ReactSharedInternals.actQueue)
13259 completeRoot(
13260 forceSync,
13261 yieldEndTime,
13262 lanes,
13263 workInProgressRootRecoverableErrors,
13264 workInProgressTransitions,
13265 workInProgressRootDidIncludeRecursiveRenderUpdate,
13266 workInProgressDeferredLane,
13267 workInProgressRootInterleavedUpdatedLanes,
13268 workInProgressSuspendedRetryLanes,
13269 workInProgressRootDidSkipSuspendedSiblings,
13270 startTime,
13271 null,
13272 null,
13273 renderStartTime,
13274 yieldedFiber
13275 );
13276 else {
13277 if ((lanes & 62914560) === lanes && (renderWasConcurrent = globalMostRecentFallbackTime + FALLBACK_THROTTLE_MS - now$1(), 10 < renderWasConcurrent)) {
13278 markRootSuspended(
13279 forceSync,
13280 lanes,
13281 workInProgressDeferredLane,
13282 !workInProgressRootDidSkipSuspendedSiblings
13283 );
13284 if (0 !== getNextLanes(forceSync, 0, true)) break a;
13285 pendingEffectsLanes = lanes;
13286 forceSync.timeoutHandle = scheduleTimeout(
13287 completeRootWhenReady.bind(
13288 null,
13289 forceSync,
13290 yieldEndTime,
13291 workInProgressRootRecoverableErrors,
13292 workInProgressTransitions,
13293 workInProgressRootDidIncludeRecursiveRenderUpdate,
13294 lanes,
13295 workInProgressDeferredLane,
13296 workInProgressRootInterleavedUpdatedLanes,
13297 workInProgressSuspendedRetryLanes,
13298 workInProgressRootDidSkipSuspendedSiblings,
13299 startTime,
13300 "Throttled",
13301 renderStartTime,
13302 yieldedFiber
13303 ),
13304 renderWasConcurrent
13305 );
13306 break a;
13307 }
13308 completeRootWhenReady(
13309 forceSync,
13310 yieldEndTime,
13311 workInProgressRootRecoverableErrors,
13312 workInProgressTransitions,
13313 workInProgressRootDidIncludeRecursiveRenderUpdate,
13314 lanes,
13315 workInProgressDeferredLane,
13316 workInProgressRootInterleavedUpdatedLanes,
13317 workInProgressSuspendedRetryLanes,
13318 workInProgressRootDidSkipSuspendedSiblings,
13319 startTime,
13320 null,
13321 renderStartTime,
13322 yieldedFiber
13323 );
13324 }
13325 }
13326 }
13327 break;
13328 } while (1);
13329 ensureRootIsScheduled(root2);
13330 }
13331 function completeRootWhenReady(root2, finishedWork, recoverableErrors, transitions, didIncludeRenderPhaseUpdate, lanes, spawnedLane, updatedLanes, suspendedRetryLanes, didSkipSuspendedSiblings, exitStatus, suspendedCommitReason, completedRenderStartTime, completedRenderEndTime) {
13332 root2.timeoutHandle = noTimeout;
13333 var subtreeFlags = finishedWork.subtreeFlags, isViewTransitionEligible = (lanes & 335544064) === lanes, suspendedState = null;
13334 if (isViewTransitionEligible || subtreeFlags & 8192 || 16785408 === (subtreeFlags & 16785408)) {
13335 if (suspendedState = {
13336 stylesheets: null,
13337 count: 0,
13338 imgCount: 0,
13339 imgBytes: 0,
13340 suspenseyImages: [],
13341 waitingForImages: true,
13342 waitingForViewTransition: false,
13343 unsuspend: noop$1
13344 }, appearingViewTransitions = null, accumulateSuspenseyCommitOnFiber(finishedWork, lanes, suspendedState), isViewTransitionEligible && (subtreeFlags = suspendedState, isViewTransitionEligible = root2.containerInfo, isViewTransitionEligible = (9 === isViewTransitionEligible.nodeType ? isViewTransitionEligible : isViewTransitionEligible.ownerDocument).__reactViewTransition, null != isViewTransitionEligible && (subtreeFlags.count++, subtreeFlags.waitingForViewTransition = true, subtreeFlags = onUnsuspend.bind(subtreeFlags), isViewTransitionEligible.finished.then(
13345 subtreeFlags,
13346 subtreeFlags
13347 ))), subtreeFlags = (lanes & 62914560) === lanes ? globalMostRecentFallbackTime - now$1() : (lanes & 4194048) === lanes ? globalMostRecentTransitionTime - now$1() : 0, subtreeFlags = waitForCommitToBeReady(suspendedState, subtreeFlags), null !== subtreeFlags) {
13348 pendingEffectsLanes = lanes;
13349 root2.cancelPendingCommit = subtreeFlags(
13350 completeRoot.bind(
13351 null,
13352 root2,
13353 finishedWork,
13354 lanes,
13355 recoverableErrors,
13356 transitions,
13357 didIncludeRenderPhaseUpdate,
13358 spawnedLane,
13359 updatedLanes,
13360 suspendedRetryLanes,
13361 didSkipSuspendedSiblings,
13362 exitStatus,
13363 suspendedState,
13364 suspendedState.waitingForViewTransition ? "Waiting for the previous Animation" : 0 < suspendedState.count ? 0 < suspendedState.imgCount ? "Suspended on CSS and Images" : "Suspended on CSS" : 1 === suspendedState.imgCount ? "Suspended on an Image" : 0 < suspendedState.imgCount ? "Suspended on Images" : null,
13365 completedRenderStartTime,
13366 completedRenderEndTime
13367 )
13368 );
13369 markRootSuspended(
13370 root2,
13371 lanes,
13372 spawnedLane,
13373 !didSkipSuspendedSiblings
13374 );
13375 return;
13376 }
13377 }
13378 completeRoot(
13379 root2,
13380 finishedWork,
13381 lanes,
13382 recoverableErrors,
13383 transitions,
13384 didIncludeRenderPhaseUpdate,
13385 spawnedLane,
13386 updatedLanes,
13387 suspendedRetryLanes,
13388 didSkipSuspendedSiblings,
13389 exitStatus,
13390 suspendedState,
13391 suspendedCommitReason,
13392 completedRenderStartTime,
13393 completedRenderEndTime
13394 );
13395 }
13396 function isRenderConsistentWithExternalStores(finishedWork) {
13397 for (var node = finishedWork; ; ) {
13398 var tag = node.tag;
13399 if ((0 === tag || 11 === tag || 15 === tag) && node.flags & 16384 && (tag = node.updateQueue, null !== tag && (tag = tag.stores, null !== tag)))
13400 for (var i = 0; i < tag.length; i++) {
13401 var check = tag[i], getSnapshot = check.getSnapshot;
13402 check = check.value;
13403 try {
13404 if (!objectIs(getSnapshot(), check)) return false;
13405 } catch (error) {
13406 return false;
13407 }
13408 }
13409 tag = node.child;
13410 if (node.subtreeFlags & 16384 && null !== tag)
13411 tag.return = node, node = tag;
13412 else {
13413 if (node === finishedWork) break;
13414 for (; null === node.sibling; ) {
13415 if (null === node.return || node.return === finishedWork) return true;
13416 node = node.return;
13417 }
13418 node.sibling.return = node.return;
13419 node = node.sibling;
13420 }
13421 }
13422 return true;
13423 }
13424 function markRootSuspended(root2, suspendedLanes, spawnedLane, didAttemptEntireTree) {
13425 suspendedLanes = getEntangledLanes(root2, suspendedLanes);
13426 suspendedLanes &= ~workInProgressRootPingedLanes;
13427 suspendedLanes &= ~workInProgressRootInterleavedUpdatedLanes;
13428 root2.suspendedLanes |= suspendedLanes;
13429 root2.pingedLanes &= ~suspendedLanes;
13430 didAttemptEntireTree && (root2.warmLanes |= suspendedLanes);
13431 didAttemptEntireTree = root2.expirationTimes;
13432 for (var lanes = suspendedLanes; 0 < lanes; ) {
13433 var index = 31 - clz32(lanes), lane = 1 << index;
13434 didAttemptEntireTree[index] = -1;
13435 lanes &= ~lane;
13436 }
13437 0 !== spawnedLane && markSpawnedDeferredLane(root2, spawnedLane, suspendedLanes);
13438 }
13439 function flushSyncWork$1() {
13440 return (executionContext & (RenderContext | CommitContext)) === NoContext ? (flushSyncWorkAcrossRoots_impl(0, false), false) : true;
13441 }
13442 function resetWorkInProgressStack() {
13443 if (null !== workInProgress) {
13444 if (workInProgressSuspendedReason === NotSuspended)
13445 var interruptedWork = workInProgress.return;
13446 else
13447 interruptedWork = workInProgress, resetContextDependencies(), resetHooksOnUnwind(interruptedWork), thenableState$1 = null, thenableIndexCounter$1 = 0, interruptedWork = workInProgress;
13448 for (; null !== interruptedWork; )
13449 unwindInterruptedWork(interruptedWork.alternate, interruptedWork), interruptedWork = interruptedWork.return;
13450 workInProgress = null;
13451 }
13452 }
13453 function finalizeRender(lanes, finalizationTime) {
13454 0 !== (lanes & 127) && (blockingClampTime = finalizationTime);
13455 0 !== (lanes & 4194048) && (transitionClampTime = finalizationTime);
13456 0 !== (lanes & 62914560) && (retryClampTime = finalizationTime);
13457 0 !== (lanes & 2080374784) && (idleClampTime = finalizationTime);
13458 }
13459 function prepareFreshStack(root2, lanes) {
13460 supportsUserTiming && (console.timeStamp(
13461 "Blocking Track",
13462 3e-3,
13463 3e-3,
13464 "Blocking",
13465 LANES_TRACK_GROUP,
13466 "primary-light"
13467 ), console.timeStamp(
13468 "Transition Track",
13469 3e-3,
13470 3e-3,
13471 "Transition",
13472 LANES_TRACK_GROUP,
13473 "primary-light"
13474 ), console.timeStamp(
13475 "Suspense Track",
13476 3e-3,
13477 3e-3,
13478 "Suspense",
13479 LANES_TRACK_GROUP,
13480 "primary-light"
13481 ), console.timeStamp(
13482 "Idle Track",
13483 3e-3,
13484 3e-3,
13485 "Idle",
13486 LANES_TRACK_GROUP,
13487 "primary-light"
13488 ));
13489 var previousRenderStartTime = renderStartTime;
13490 renderStartTime = now();
13491 if (0 !== workInProgressRootRenderLanes && 0 < previousRenderStartTime) {
13492 setCurrentTrackFromLanes(workInProgressRootRenderLanes);
13493 if (workInProgressRootExitStatus === RootSuspended || workInProgressRootExitStatus === RootSuspendedWithDelay)
13494 logSuspendedRenderPhase(
13495 previousRenderStartTime,
13496 renderStartTime,
13497 lanes,
13498 workInProgressUpdateTask
13499 );
13500 else {
13501 var endTime = renderStartTime, debugTask = workInProgressUpdateTask;
13502 if (supportsUserTiming && !(endTime <= previousRenderStartTime)) {
13503 var color = (lanes & 738197653) === lanes ? "tertiary-dark" : "primary-dark", label = (lanes & 536870912) === lanes ? "Prewarm" : (lanes & 201326741) === lanes ? "Interrupted Hydration" : "Interrupted Render";
13504 debugTask ? debugTask.run(
13505 console.timeStamp.bind(
13506 console,
13507 label,
13508 previousRenderStartTime,
13509 endTime,
13510 currentTrack,
13511 LANES_TRACK_GROUP,
13512 color
13513 )
13514 ) : console.timeStamp(
13515 label,
13516 previousRenderStartTime,
13517 endTime,
13518 currentTrack,
13519 LANES_TRACK_GROUP,
13520 color
13521 );
13522 }
13523 }
13524 finalizeRender(workInProgressRootRenderLanes, renderStartTime);
13525 }
13526 previousRenderStartTime = workInProgressUpdateTask;
13527 workInProgressUpdateTask = null;
13528 if (0 !== (lanes & 127)) {
13529 workInProgressUpdateTask = blockingUpdateTask;
13530 debugTask = 0 <= blockingUpdateTime && blockingUpdateTime < blockingClampTime ? blockingClampTime : blockingUpdateTime;
13531 endTime = 0 <= blockingEventTime && blockingEventTime < blockingClampTime ? blockingClampTime : blockingEventTime;
13532 color = 0 <= endTime ? endTime : 0 <= debugTask ? debugTask : renderStartTime;
13533 0 <= blockingSuspendedTime ? (setCurrentTrackFromLanes(2), logSuspendedWithDelayPhase(
13534 blockingSuspendedTime,
13535 color,
13536 lanes,
13537 previousRenderStartTime
13538 )) : 0 !== (animatingLanes & 127) && (setCurrentTrackFromLanes(2), logAnimatingPhase(blockingClampTime, color, animatingTask));
13539 previousRenderStartTime = debugTask;
13540 var eventTime = endTime, eventType = blockingEventType, eventIsRepeat = 0 < blockingEventRepeatTime, isSpawnedUpdate = blockingUpdateType === SPAWNED_UPDATE, isPingedUpdate = blockingUpdateType === PINGED_UPDATE;
13541 debugTask = renderStartTime;
13542 endTime = blockingUpdateTask;
13543 color = blockingUpdateMethodName;
13544 label = blockingUpdateComponentName;
13545 if (supportsUserTiming) {
13546 currentTrack = "Blocking";
13547 0 < previousRenderStartTime ? previousRenderStartTime > debugTask && (previousRenderStartTime = debugTask) : previousRenderStartTime = debugTask;
13548 0 < eventTime ? eventTime > previousRenderStartTime && (eventTime = previousRenderStartTime) : eventTime = previousRenderStartTime;
13549 if (null !== eventType && previousRenderStartTime > eventTime) {
13550 var color$jscomp$0 = eventIsRepeat ? "secondary-light" : "warning";
13551 endTime ? endTime.run(
13552 console.timeStamp.bind(
13553 console,
13554 eventIsRepeat ? "Consecutive" : "Event: " + eventType,
13555 eventTime,
13556 previousRenderStartTime,
13557 currentTrack,
13558 LANES_TRACK_GROUP,
13559 color$jscomp$0
13560 )
13561 ) : console.timeStamp(
13562 eventIsRepeat ? "Consecutive" : "Event: " + eventType,
13563 eventTime,
13564 previousRenderStartTime,
13565 currentTrack,
13566 LANES_TRACK_GROUP,
13567 color$jscomp$0
13568 );
13569 }
13570 debugTask > previousRenderStartTime && (eventTime = isSpawnedUpdate ? "error" : (lanes & 738197653) === lanes ? "tertiary-light" : "primary-light", isSpawnedUpdate = isPingedUpdate ? "Promise Resolved" : isSpawnedUpdate ? "Cascading Update" : 5 < debugTask - previousRenderStartTime ? "Update Blocked" : "Update", isPingedUpdate = [], null != label && isPingedUpdate.push(["Component name", label]), null != color && isPingedUpdate.push(["Method name", color]), previousRenderStartTime = {
13571 start: previousRenderStartTime,
13572 end: debugTask,
13573 detail: {
13574 devtools: {
13575 properties: isPingedUpdate,
13576 track: currentTrack,
13577 trackGroup: LANES_TRACK_GROUP,
13578 color: eventTime
13579 }
13580 }
13581 }, endTime ? endTime.run(
13582 performance.measure.bind(
13583 performance,
13584 isSpawnedUpdate,
13585 previousRenderStartTime
13586 )
13587 ) : performance.measure(isSpawnedUpdate, previousRenderStartTime), performance.clearMeasures(isSpawnedUpdate));
13588 }
13589 blockingUpdateTime = -1.1;
13590 blockingUpdateType = 0;
13591 blockingUpdateComponentName = blockingUpdateMethodName = null;
13592 blockingSuspendedTime = -1.1;
13593 blockingEventRepeatTime = blockingEventTime;
13594 blockingEventTime = -1.1;
13595 blockingClampTime = now();
13596 }
13597 0 !== (lanes & 4194048) && (workInProgressUpdateTask = transitionUpdateTask, debugTask = 0 <= transitionStartTime && transitionStartTime < transitionClampTime ? transitionClampTime : transitionStartTime, previousRenderStartTime = 0 <= transitionUpdateTime && transitionUpdateTime < transitionClampTime ? transitionClampTime : transitionUpdateTime, endTime = 0 <= transitionEventTime && transitionEventTime < transitionClampTime ? transitionClampTime : transitionEventTime, color = 0 <= endTime ? endTime : 0 <= previousRenderStartTime ? previousRenderStartTime : renderStartTime, 0 <= transitionSuspendedTime ? (setCurrentTrackFromLanes(256), logSuspendedWithDelayPhase(
13598 transitionSuspendedTime,
13599 color,
13600 lanes,
13601 workInProgressUpdateTask
13602 )) : 0 !== (animatingLanes & 4194048) && (setCurrentTrackFromLanes(256), logAnimatingPhase(transitionClampTime, color, animatingTask)), isPingedUpdate = endTime, eventTime = transitionEventType, eventType = 0 < transitionEventRepeatTime, eventIsRepeat = transitionUpdateType === PINGED_UPDATE, color = renderStartTime, endTime = transitionUpdateTask, label = transitionUpdateMethodName, isSpawnedUpdate = transitionUpdateComponentName, supportsUserTiming && (currentTrack = "Transition", 0 < previousRenderStartTime ? previousRenderStartTime > color && (previousRenderStartTime = color) : previousRenderStartTime = color, 0 < debugTask ? debugTask > previousRenderStartTime && (debugTask = previousRenderStartTime) : debugTask = previousRenderStartTime, 0 < isPingedUpdate ? isPingedUpdate > debugTask && (isPingedUpdate = debugTask) : isPingedUpdate = debugTask, debugTask > isPingedUpdate && null !== eventTime && (color$jscomp$0 = eventType ? "secondary-light" : "warning", endTime ? endTime.run(
13603 console.timeStamp.bind(
13604 console,
13605 eventType ? "Consecutive" : "Event: " + eventTime,
13606 isPingedUpdate,
13607 debugTask,
13608 currentTrack,
13609 LANES_TRACK_GROUP,
13610 color$jscomp$0
13611 )
13612 ) : console.timeStamp(
13613 eventType ? "Consecutive" : "Event: " + eventTime,
13614 isPingedUpdate,
13615 debugTask,
13616 currentTrack,
13617 LANES_TRACK_GROUP,
13618 color$jscomp$0
13619 )), previousRenderStartTime > debugTask && (endTime ? endTime.run(
13620 console.timeStamp.bind(
13621 console,
13622 "Action",
13623 debugTask,
13624 previousRenderStartTime,
13625 currentTrack,
13626 LANES_TRACK_GROUP,
13627 "primary-dark"
13628 )
13629 ) : console.timeStamp(
13630 "Action",
13631 debugTask,
13632 previousRenderStartTime,
13633 currentTrack,
13634 LANES_TRACK_GROUP,
13635 "primary-dark"
13636 )), color > previousRenderStartTime && (debugTask = eventIsRepeat ? "Promise Resolved" : 5 < color - previousRenderStartTime ? "Update Blocked" : "Update", isPingedUpdate = [], null != isSpawnedUpdate && isPingedUpdate.push(["Component name", isSpawnedUpdate]), null != label && isPingedUpdate.push(["Method name", label]), previousRenderStartTime = {
13637 start: previousRenderStartTime,
13638 end: color,
13639 detail: {
13640 devtools: {
13641 properties: isPingedUpdate,
13642 track: currentTrack,
13643 trackGroup: LANES_TRACK_GROUP,
13644 color: "primary-light"
13645 }
13646 }
13647 }, endTime ? endTime.run(
13648 performance.measure.bind(
13649 performance,
13650 debugTask,
13651 previousRenderStartTime
13652 )
13653 ) : performance.measure(debugTask, previousRenderStartTime), performance.clearMeasures(debugTask))), transitionUpdateTime = transitionStartTime = -1.1, transitionUpdateType = 0, transitionSuspendedTime = -1.1, transitionEventRepeatTime = transitionEventTime, transitionEventTime = -1.1, transitionClampTime = now());
13654 0 !== (lanes & 62914560) && 0 !== (animatingLanes & 62914560) && (setCurrentTrackFromLanes(4194304), logAnimatingPhase(retryClampTime, renderStartTime, animatingTask));
13655 0 !== (lanes & 2080374784) && 0 !== (animatingLanes & 2080374784) && (setCurrentTrackFromLanes(268435456), logAnimatingPhase(idleClampTime, renderStartTime, animatingTask));
13656 previousRenderStartTime = root2.timeoutHandle;
13657 previousRenderStartTime !== noTimeout && (root2.timeoutHandle = noTimeout, cancelTimeout(previousRenderStartTime));
13658 previousRenderStartTime = root2.cancelPendingCommit;
13659 null !== previousRenderStartTime && (root2.cancelPendingCommit = null, previousRenderStartTime());
13660 pendingEffectsLanes = 0;
13661 resetWorkInProgressStack();
13662 workInProgressRoot = root2;
13663 workInProgress = previousRenderStartTime = createWorkInProgress(
13664 root2.current,
13665 null
13666 );
13667 workInProgressRootRenderLanes = lanes;
13668 workInProgressSuspendedReason = NotSuspended;
13669 workInProgressThrownValue = null;
13670 workInProgressRootDidSkipSuspendedSiblings = false;
13671 workInProgressRootIsPrerendering = checkIfRootIsPrerendering(root2, lanes);
13672 workInProgressRootDidAttachPingListener = false;
13673 workInProgressRootExitStatus = RootInProgress;
13674 workInProgressSuspendedRetryLanes = workInProgressDeferredLane = workInProgressRootPingedLanes = workInProgressRootInterleavedUpdatedLanes = workInProgressRootSkippedLanes = 0;
13675 workInProgressRootRecoverableErrors = workInProgressRootConcurrentErrors = null;
13676 workInProgressRootDidIncludeRecursiveRenderUpdate = false;
13677 entangledRenderLanes = getEntangledLanes(root2, lanes);
13678 finishQueueingConcurrentUpdates();
13679 root2 = getCurrentTime();
13680 1e3 < root2 - lastResetTime && (ReactSharedInternals.recentlyCreatedOwnerStacks = 0, lastResetTime = root2);
13681 ReactStrictModeWarnings.discardPendingWarnings();
13682 return previousRenderStartTime;
13683 }
13684 function handleThrow(root2, thrownValue) {
13685 currentlyRenderingFiber = null;
13686 ReactSharedInternals.H = ContextOnlyDispatcher;
13687 ReactSharedInternals.getCurrentStack = null;
13688 isRendering = false;
13689 current = null;
13690 thrownValue === SuspenseException || thrownValue === SuspenseActionException ? (thrownValue = getSuspendedThenable(), workInProgressSuspendedReason = SuspendedOnImmediate) : thrownValue === SuspenseyCommitException ? (thrownValue = getSuspendedThenable(), workInProgressSuspendedReason = SuspendedOnInstance) : workInProgressSuspendedReason = thrownValue === SelectiveHydrationException ? SuspendedOnHydration : null !== thrownValue && "object" === typeof thrownValue && "function" === typeof thrownValue.then ? SuspendedOnDeprecatedThrowPromise : SuspendedOnError;
13691 workInProgressThrownValue = thrownValue;
13692 var erroredWork = workInProgress;
13693 null === erroredWork ? (workInProgressRootExitStatus = RootFatalErrored, logUncaughtError(
13694 root2,
13695 createCapturedValueAtFiber(thrownValue, root2.current)
13696 )) : erroredWork.mode & ProfileMode && stopProfilerTimerIfRunningAndRecordDuration(erroredWork);
13697 }
13698 function shouldRemainOnPreviousScreen() {
13699 var handler = suspenseHandlerStackCursor.current;
13700 return null === handler ? true : (workInProgressRootRenderLanes & 4194048) === workInProgressRootRenderLanes ? null === shellBoundary ? true : false : (workInProgressRootRenderLanes & 62914560) === workInProgressRootRenderLanes || 0 !== (workInProgressRootRenderLanes & 536870912) ? handler === shellBoundary : false;
13701 }
13702 function pushDispatcher() {
13703 var prevDispatcher = ReactSharedInternals.H;
13704 ReactSharedInternals.H = ContextOnlyDispatcher;
13705 return null === prevDispatcher ? ContextOnlyDispatcher : prevDispatcher;
13706 }
13707 function pushAsyncDispatcher() {
13708 var prevAsyncDispatcher = ReactSharedInternals.A;
13709 ReactSharedInternals.A = DefaultAsyncDispatcher;
13710 return prevAsyncDispatcher;
13711 }
13712 function markRenderDerivedCause(fiber) {
13713 null === workInProgressUpdateTask && (workInProgressUpdateTask = null == fiber._debugTask ? null : fiber._debugTask);
13714 }
13715 function renderDidSuspendDelayIfPossible() {
13716 workInProgressRootExitStatus = RootSuspendedWithDelay;
13717 workInProgressRootDidSkipSuspendedSiblings || (workInProgressRootRenderLanes & 4194048) !== workInProgressRootRenderLanes && null !== suspenseHandlerStackCursor.current || (workInProgressRootIsPrerendering = true);
13718 0 === (workInProgressRootSkippedLanes & 134217727) && 0 === (workInProgressRootInterleavedUpdatedLanes & 134217727) || null === workInProgressRoot || markRootSuspended(
13719 workInProgressRoot,
13720 workInProgressRootRenderLanes,
13721 workInProgressDeferredLane,
13722 false
13723 );
13724 }
13725 function renderRootSync(root2, lanes, shouldYieldForPrerendering) {
13726 var prevExecutionContext = executionContext;
13727 executionContext |= RenderContext;
13728 var prevDispatcher = pushDispatcher(), prevAsyncDispatcher = pushAsyncDispatcher();
13729 if (workInProgressRoot !== root2 || workInProgressRootRenderLanes !== lanes) {
13730 if (isDevToolsPresent) {
13731 var memoizedUpdaters = root2.memoizedUpdaters;
13732 0 < memoizedUpdaters.size && (restorePendingUpdaters(root2, workInProgressRootRenderLanes), memoizedUpdaters.clear());
13733 movePendingFibersToMemoized(root2, lanes);
13734 }
13735 workInProgressTransitions = null;
13736 prepareFreshStack(root2, lanes);
13737 }
13738 lanes = false;
13739 memoizedUpdaters = workInProgressRootExitStatus;
13740 a: do
13741 try {
13742 if (workInProgressSuspendedReason !== NotSuspended && null !== workInProgress) {
13743 var unitOfWork = workInProgress, thrownValue = workInProgressThrownValue;
13744 switch (workInProgressSuspendedReason) {
13745 case SuspendedOnHydration:
13746 resetWorkInProgressStack();
13747 memoizedUpdaters = RootSuspendedAtTheShell;
13748 break a;
13749 case SuspendedOnImmediate:
13750 case SuspendedOnData:
13751 case SuspendedOnAction:
13752 case SuspendedOnDeprecatedThrowPromise:
13753 null === suspenseHandlerStackCursor.current && (lanes = true);
13754 var reason = workInProgressSuspendedReason;
13755 workInProgressSuspendedReason = NotSuspended;
13756 workInProgressThrownValue = null;
13757 throwAndUnwindWorkLoop(root2, unitOfWork, thrownValue, reason);
13758 if (shouldYieldForPrerendering && workInProgressRootIsPrerendering) {
13759 memoizedUpdaters = RootInProgress;
13760 break a;
13761 }
13762 break;
13763 default:
13764 reason = workInProgressSuspendedReason, workInProgressSuspendedReason = NotSuspended, workInProgressThrownValue = null, throwAndUnwindWorkLoop(root2, unitOfWork, thrownValue, reason);
13765 }
13766 }
13767 workLoopSync();
13768 memoizedUpdaters = workInProgressRootExitStatus;
13769 break;
13770 } catch (thrownValue$9) {
13771 handleThrow(root2, thrownValue$9);
13772 }
13773 while (1);
13774 lanes && root2.shellSuspendCounter++;
13775 resetContextDependencies();
13776 executionContext = prevExecutionContext;
13777 ReactSharedInternals.H = prevDispatcher;
13778 ReactSharedInternals.A = prevAsyncDispatcher;
13779 null === workInProgress && (workInProgressRoot = null, workInProgressRootRenderLanes = 0, finishQueueingConcurrentUpdates());
13780 return memoizedUpdaters;
13781 }
13782 function workLoopSync() {
13783 for (; null !== workInProgress; ) performUnitOfWork(workInProgress);
13784 }
13785 function renderRootConcurrent(root2, lanes) {
13786 var prevExecutionContext = executionContext;
13787 executionContext |= RenderContext;
13788 var prevDispatcher = pushDispatcher(), prevAsyncDispatcher = pushAsyncDispatcher();
13789 if (workInProgressRoot !== root2 || workInProgressRootRenderLanes !== lanes) {
13790 if (isDevToolsPresent) {
13791 var memoizedUpdaters = root2.memoizedUpdaters;
13792 0 < memoizedUpdaters.size && (restorePendingUpdaters(root2, workInProgressRootRenderLanes), memoizedUpdaters.clear());
13793 movePendingFibersToMemoized(root2, lanes);
13794 }
13795 workInProgressTransitions = null;
13796 workInProgressRootRenderTargetTime = now$1() + RENDER_TIMEOUT_MS;
13797 prepareFreshStack(root2, lanes);
13798 } else
13799 workInProgressRootIsPrerendering = checkIfRootIsPrerendering(
13800 root2,
13801 lanes
13802 );
13803 a: do
13804 try {
13805 if (workInProgressSuspendedReason !== NotSuspended && null !== workInProgress)
13806 b: switch (lanes = workInProgress, memoizedUpdaters = workInProgressThrownValue, workInProgressSuspendedReason) {
13807 case SuspendedOnError:
13808 workInProgressSuspendedReason = NotSuspended;
13809 workInProgressThrownValue = null;
13810 throwAndUnwindWorkLoop(
13811 root2,
13812 lanes,
13813 memoizedUpdaters,
13814 SuspendedOnError
13815 );
13816 break;
13817 case SuspendedOnData:
13818 case SuspendedOnAction:
13819 if (isThenableResolved(memoizedUpdaters)) {
13820 workInProgressSuspendedReason = NotSuspended;
13821 workInProgressThrownValue = null;
13822 replaySuspendedUnitOfWork(lanes);
13823 break;
13824 }
13825 lanes = function() {
13826 workInProgressSuspendedReason !== SuspendedOnData && workInProgressSuspendedReason !== SuspendedOnAction || workInProgressRoot !== root2 || (workInProgressSuspendedReason = SuspendedAndReadyToContinue);
13827 ensureRootIsScheduled(root2);
13828 };
13829 memoizedUpdaters.then(lanes, lanes);
13830 break a;
13831 case SuspendedOnImmediate:
13832 workInProgressSuspendedReason = SuspendedAndReadyToContinue;
13833 break a;
13834 case SuspendedOnInstance:
13835 workInProgressSuspendedReason = SuspendedOnInstanceAndReadyToContinue;
13836 break a;
13837 case SuspendedAndReadyToContinue:
13838 isThenableResolved(memoizedUpdaters) ? (workInProgressSuspendedReason = NotSuspended, workInProgressThrownValue = null, replaySuspendedUnitOfWork(lanes)) : (workInProgressSuspendedReason = NotSuspended, workInProgressThrownValue = null, throwAndUnwindWorkLoop(
13839 root2,
13840 lanes,
13841 memoizedUpdaters,
13842 SuspendedAndReadyToContinue
13843 ));
13844 break;
13845 case SuspendedOnInstanceAndReadyToContinue:
13846 var resource = null;
13847 switch (workInProgress.tag) {
13848 case 26:
13849 resource = workInProgress.memoizedState;
13850 case 5:
13851 case 27:
13852 var hostFiber = workInProgress;
13853 if (resource ? preloadResource(resource) : hostFiber.stateNode.complete) {
13854 workInProgressSuspendedReason = NotSuspended;
13855 workInProgressThrownValue = null;
13856 var sibling = hostFiber.sibling;
13857 if (null !== sibling) workInProgress = sibling;
13858 else {
13859 var returnFiber = hostFiber.return;
13860 null !== returnFiber ? (workInProgress = returnFiber, completeUnitOfWork(returnFiber)) : workInProgress = null;
13861 }
13862 break b;
13863 }
13864 break;
13865 default:
13866 console.error(
13867 "Unexpected type of fiber triggered a suspensey commit. This is a bug in React."
13868 );
13869 }
13870 workInProgressSuspendedReason = NotSuspended;
13871 workInProgressThrownValue = null;
13872 throwAndUnwindWorkLoop(
13873 root2,
13874 lanes,
13875 memoizedUpdaters,
13876 SuspendedOnInstanceAndReadyToContinue
13877 );
13878 break;
13879 case SuspendedOnDeprecatedThrowPromise:
13880 workInProgressSuspendedReason = NotSuspended;
13881 workInProgressThrownValue = null;
13882 throwAndUnwindWorkLoop(
13883 root2,
13884 lanes,
13885 memoizedUpdaters,
13886 SuspendedOnDeprecatedThrowPromise
13887 );
13888 break;
13889 case SuspendedOnHydration:
13890 resetWorkInProgressStack();
13891 workInProgressRootExitStatus = RootSuspendedAtTheShell;
13892 break a;
13893 default:
13894 throw Error(
13895 "Unexpected SuspendedReason. This is a bug in React."
13896 );
13897 }
13898 null !== ReactSharedInternals.actQueue ? workLoopSync() : workLoopConcurrentByScheduler();
13899 break;
13900 } catch (thrownValue$10) {
13901 handleThrow(root2, thrownValue$10);
13902 }
13903 while (1);
13904 resetContextDependencies();
13905 ReactSharedInternals.H = prevDispatcher;
13906 ReactSharedInternals.A = prevAsyncDispatcher;
13907 executionContext = prevExecutionContext;
13908 if (null !== workInProgress) return RootInProgress;
13909 workInProgressRoot = null;
13910 workInProgressRootRenderLanes = 0;
13911 finishQueueingConcurrentUpdates();
13912 return workInProgressRootExitStatus;
13913 }
13914 function workLoopConcurrentByScheduler() {
13915 for (; null !== workInProgress && !shouldYield(); )
13916 performUnitOfWork(workInProgress);
13917 }
13918 function performUnitOfWork(unitOfWork) {
13919 var current2 = unitOfWork.alternate;
13920 (unitOfWork.mode & ProfileMode) !== NoMode ? (startProfilerTimer(unitOfWork), current2 = runWithFiberInDEV(
13921 unitOfWork,
13922 beginWork,
13923 current2,
13924 unitOfWork,
13925 entangledRenderLanes
13926 ), stopProfilerTimerIfRunningAndRecordDuration(unitOfWork)) : current2 = runWithFiberInDEV(
13927 unitOfWork,
13928 beginWork,
13929 current2,
13930 unitOfWork,
13931 entangledRenderLanes
13932 );
13933 unitOfWork.memoizedProps = unitOfWork.pendingProps;
13934 null === current2 ? completeUnitOfWork(unitOfWork) : workInProgress = current2;
13935 }
13936 function replaySuspendedUnitOfWork(unitOfWork) {
13937 var next = runWithFiberInDEV(unitOfWork, replayBeginWork, unitOfWork);
13938 unitOfWork.memoizedProps = unitOfWork.pendingProps;
13939 null === next ? completeUnitOfWork(unitOfWork) : workInProgress = next;
13940 }
13941 function replayBeginWork(unitOfWork) {
13942 var current2 = unitOfWork.alternate, isProfilingMode = (unitOfWork.mode & ProfileMode) !== NoMode;
13943 isProfilingMode && startProfilerTimer(unitOfWork);
13944 switch (unitOfWork.tag) {
13945 case 15:
13946 case 0:
13947 current2 = replayFunctionComponent(
13948 current2,
13949 unitOfWork,
13950 unitOfWork.pendingProps,
13951 unitOfWork.type,
13952 void 0,
13953 workInProgressRootRenderLanes
13954 );
13955 break;
13956 case 11:
13957 current2 = replayFunctionComponent(
13958 current2,
13959 unitOfWork,
13960 unitOfWork.pendingProps,
13961 unitOfWork.type.render,
13962 unitOfWork.ref,
13963 workInProgressRootRenderLanes
13964 );
13965 break;
13966 case 5:
13967 resetHooksOnUnwind(unitOfWork);
13968 var fiber = unitOfWork;
13969 fiber === hydrationParentFiber && (isHydrating ? (popToNextHostParent(fiber), 5 === fiber.tag && null != fiber.stateNode && (nextHydratableInstance = fiber.stateNode)) : (popToNextHostParent(fiber), isHydrating = true));
13970 default:
13971 unwindInterruptedWork(current2, unitOfWork), unitOfWork = workInProgress = resetWorkInProgress(unitOfWork, entangledRenderLanes), current2 = beginWork(current2, unitOfWork, entangledRenderLanes);
13972 }
13973 isProfilingMode && stopProfilerTimerIfRunningAndRecordDuration(unitOfWork);
13974 return current2;
13975 }
13976 function throwAndUnwindWorkLoop(root2, unitOfWork, thrownValue, suspendedReason) {
13977 resetContextDependencies();
13978 resetHooksOnUnwind(unitOfWork);
13979 thenableState$1 = null;
13980 thenableIndexCounter$1 = 0;
13981 var returnFiber = unitOfWork.return;
13982 try {
13983 if (throwException(
13984 root2,
13985 returnFiber,
13986 unitOfWork,
13987 thrownValue,
13988 workInProgressRootRenderLanes
13989 )) {
13990 workInProgressRootExitStatus = RootFatalErrored;
13991 logUncaughtError(
13992 root2,
13993 createCapturedValueAtFiber(thrownValue, root2.current)
13994 );
13995 workInProgress = null;
13996 return;
13997 }
13998 } catch (error) {
13999 if (null !== returnFiber) throw workInProgress = returnFiber, error;
14000 workInProgressRootExitStatus = RootFatalErrored;
14001 logUncaughtError(
14002 root2,
14003 createCapturedValueAtFiber(thrownValue, root2.current)
14004 );
14005 workInProgress = null;
14006 return;
14007 }
14008 if (unitOfWork.flags & 32768) {
14009 if (isHydrating || suspendedReason === SuspendedOnError) root2 = true;
14010 else if (workInProgressRootIsPrerendering || 0 !== (workInProgressRootRenderLanes & 536870912))
14011 root2 = false;
14012 else if (workInProgressRootDidSkipSuspendedSiblings = root2 = true, suspendedReason === SuspendedOnData || suspendedReason === SuspendedOnAction || suspendedReason === SuspendedOnImmediate || suspendedReason === SuspendedOnDeprecatedThrowPromise)
14013 suspendedReason = suspenseHandlerStackCursor.current, null !== suspendedReason && 13 === suspendedReason.tag && (suspendedReason.flags |= 16384);
14014 unwindUnitOfWork(unitOfWork, root2);
14015 } else completeUnitOfWork(unitOfWork);
14016 }
14017 function completeUnitOfWork(unitOfWork) {
14018 var completedWork = unitOfWork;
14019 do {
14020 if (0 !== (completedWork.flags & 32768)) {
14021 unwindUnitOfWork(
14022 completedWork,
14023 workInProgressRootDidSkipSuspendedSiblings
14024 );
14025 return;
14026 }
14027 var current2 = completedWork.alternate;
14028 unitOfWork = completedWork.return;
14029 startProfilerTimer(completedWork);
14030 current2 = runWithFiberInDEV(
14031 completedWork,
14032 completeWork,
14033 current2,
14034 completedWork,
14035 entangledRenderLanes
14036 );
14037 (completedWork.mode & ProfileMode) !== NoMode && stopProfilerTimerIfRunningAndRecordIncompleteDuration(completedWork);
14038 if (null !== current2) {
14039 workInProgress = current2;
14040 return;
14041 }
14042 completedWork = completedWork.sibling;
14043 if (null !== completedWork) {
14044 workInProgress = completedWork;
14045 return;
14046 }
14047 workInProgress = completedWork = unitOfWork;
14048 } while (null !== completedWork);
14049 workInProgressRootExitStatus === RootInProgress && (workInProgressRootExitStatus = RootCompleted);
14050 }
14051 function unwindUnitOfWork(unitOfWork, skipSiblings) {
14052 do {
14053 var next = unwindWork(unitOfWork.alternate, unitOfWork);
14054 if (null !== next) {
14055 next.flags &= 32767;
14056 workInProgress = next;
14057 return;
14058 }
14059 if ((unitOfWork.mode & ProfileMode) !== NoMode) {
14060 stopProfilerTimerIfRunningAndRecordIncompleteDuration(unitOfWork);
14061 next = unitOfWork.actualDuration;
14062 for (var child = unitOfWork.child; null !== child; )
14063 next += child.actualDuration, child = child.sibling;
14064 unitOfWork.actualDuration = next;
14065 }
14066 next = unitOfWork.return;
14067 null !== next && (next.flags |= 32768, next.subtreeFlags = 0, next.deletions = null);
14068 if (!skipSiblings && (unitOfWork = unitOfWork.sibling, null !== unitOfWork)) {
14069 workInProgress = unitOfWork;
14070 return;
14071 }
14072 workInProgress = unitOfWork = next;
14073 } while (null !== unitOfWork);
14074 workInProgressRootExitStatus = RootSuspendedAtTheShell;
14075 workInProgress = null;
14076 }
14077 function completeRoot(root2, finishedWork, lanes, recoverableErrors, transitions, didIncludeRenderPhaseUpdate, spawnedLane, updatedLanes, suspendedRetryLanes, didSkipSuspendedSiblings, exitStatus, suspendedState, suspendedCommitReason, completedRenderStartTime, completedRenderEndTime) {
14078 root2.cancelPendingCommit = null;
14079 do
14080 flushPendingEffects();
14081 while (pendingEffectsStatus !== NO_PENDING_EFFECTS);
14082 ReactStrictModeWarnings.flushLegacyContextWarning();
14083 ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings();
14084 if ((executionContext & (RenderContext | CommitContext)) !== NoContext)
14085 throw Error("Should not already be working.");
14086 setCurrentTrackFromLanes(lanes);
14087 if (exitStatus === RootErrored)
14088 logErroredRenderPhase(
14089 completedRenderStartTime,
14090 completedRenderEndTime,
14091 lanes,
14092 workInProgressUpdateTask
14093 );
14094 else if (null !== recoverableErrors) {
14095 if (didSkipSuspendedSiblings = null !== finishedWork && null !== finishedWork.alternate && finishedWork.alternate.memoizedState.isDehydrated && 0 !== (finishedWork.flags & 256), didIncludeRenderPhaseUpdate = workInProgressUpdateTask, supportsUserTiming && !(completedRenderEndTime <= completedRenderStartTime)) {
14096 exitStatus = [];
14097 for (var i = 0; i < recoverableErrors.length; i++) {
14098 var error = recoverableErrors[i].value;
14099 exitStatus.push([
14100 "Recoverable Error",
14101 "object" === typeof error && null !== error && "string" === typeof error.message ? String(error.message) : String(error)
14102 ]);
14103 }
14104 completedRenderStartTime = {
14105 start: completedRenderStartTime,
14106 end: completedRenderEndTime,
14107 detail: {
14108 devtools: {
14109 color: "primary-dark",
14110 track: currentTrack,
14111 trackGroup: LANES_TRACK_GROUP,
14112 tooltipText: didSkipSuspendedSiblings ? "Hydration Failed" : "Recovered after Error",
14113 properties: exitStatus
14114 }
14115 }
14116 };
14117 didIncludeRenderPhaseUpdate ? didIncludeRenderPhaseUpdate.run(
14118 performance.measure.bind(
14119 performance,
14120 "Recovered",
14121 completedRenderStartTime
14122 )
14123 ) : performance.measure("Recovered", completedRenderStartTime);
14124 performance.clearMeasures("Recovered");
14125 }
14126 } else
14127 didIncludeRenderPhaseUpdate = workInProgressUpdateTask, !supportsUserTiming || completedRenderEndTime <= completedRenderStartTime || (didSkipSuspendedSiblings = (lanes & 738197653) === lanes ? "tertiary-dark" : "primary-dark", exitStatus = (lanes & 536870912) === lanes ? "Prepared" : (lanes & 201326741) === lanes ? "Hydrated" : "Render", didIncludeRenderPhaseUpdate ? didIncludeRenderPhaseUpdate.run(
14128 console.timeStamp.bind(
14129 console,
14130 exitStatus,
14131 completedRenderStartTime,
14132 completedRenderEndTime,
14133 currentTrack,
14134 LANES_TRACK_GROUP,
14135 didSkipSuspendedSiblings
14136 )
14137 ) : console.timeStamp(
14138 exitStatus,
14139 completedRenderStartTime,
14140 completedRenderEndTime,
14141 currentTrack,
14142 LANES_TRACK_GROUP,
14143 didSkipSuspendedSiblings
14144 ));
14145 if (null !== finishedWork) {
14146 0 === lanes && console.error(
14147 "finishedLanes should not be empty during a commit. This is a bug in React."
14148 );
14149 if (finishedWork === root2.current)
14150 throw Error(
14151 "Cannot commit the same tree as before. This error is likely caused by a bug in React. Please file an issue."
14152 );
14153 root2 === workInProgressRoot && (workInProgress = workInProgressRoot = null, workInProgressRootRenderLanes = 0);
14154 pendingFinishedWork = finishedWork;
14155 pendingEffectsRoot = root2;
14156 pendingEffectsLanes = lanes;
14157 pendingPassiveTransitions = transitions;
14158 pendingRecoverableErrors = recoverableErrors;
14159 pendingEffectsRenderEndTime = completedRenderEndTime;
14160 pendingSuspendedCommitReason = suspendedCommitReason;
14161 pendingDelayedCommitReason = IMMEDIATE_COMMIT;
14162 pendingSuspendedViewTransitionReason = null;
14163 commitRoot(
14164 root2,
14165 finishedWork,
14166 lanes,
14167 spawnedLane,
14168 updatedLanes,
14169 suspendedRetryLanes,
14170 suspendedState,
14171 suspendedCommitReason,
14172 completedRenderEndTime
14173 );
14174 }
14175 }
14176 function commitRoot(root2, finishedWork, lanes, spawnedLane, updatedLanes, suspendedRetryLanes, suspendedState, suspendedCommitReason, completedRenderEndTime) {
14177 var remainingLanes = finishedWork.lanes | finishedWork.childLanes;
14178 pendingEffectsRemainingLanes = remainingLanes;
14179 remainingLanes |= concurrentlyUpdatedLanes;
14180 markRootFinished(
14181 root2,
14182 lanes,
14183 remainingLanes,
14184 spawnedLane,
14185 updatedLanes,
14186 suspendedRetryLanes
14187 );
14188 pendingViewTransitionEvents = null;
14189 (lanes & 335544064) === lanes ? (pendingTransitionTypes = claimQueuedTransitionTypes(root2), spawnedLane = 10262) : (pendingTransitionTypes = null, spawnedLane = 10256);
14190 0 !== finishedWork.actualDuration || 0 !== (finishedWork.subtreeFlags & spawnedLane) || 0 !== (finishedWork.flags & spawnedLane) ? (root2.callbackNode = null, root2.callbackPriority = 0, scheduleCallback$1(NormalPriority$1, function() {
14191 schedulerEvent = window.event;
14192 pendingDelayedCommitReason === IMMEDIATE_COMMIT && (pendingDelayedCommitReason = DELAYED_PASSIVE_COMMIT);
14193 flushPassiveEffects();
14194 return null;
14195 })) : (root2.callbackNode = null, root2.callbackPriority = 0);
14196 commitErrors = null;
14197 commitStartTime = now();
14198 null !== suspendedCommitReason && logSuspendedCommitPhase(
14199 completedRenderEndTime,
14200 commitStartTime,
14201 suspendedCommitReason,
14202 workInProgressUpdateTask
14203 );
14204 shouldStartViewTransition = false;
14205 suspendedCommitReason = 0 !== (finishedWork.flags & 13878);
14206 if (0 !== (finishedWork.subtreeFlags & 13878) || suspendedCommitReason) {
14207 suspendedCommitReason = ReactSharedInternals.T;
14208 ReactSharedInternals.T = null;
14209 completedRenderEndTime = ReactDOMSharedInternals.p;
14210 ReactDOMSharedInternals.p = DiscreteEventPriority;
14211 spawnedLane = executionContext;
14212 executionContext |= CommitContext;
14213 try {
14214 commitBeforeMutationEffects(root2, finishedWork, lanes);
14215 } finally {
14216 executionContext = spawnedLane, ReactDOMSharedInternals.p = completedRenderEndTime, ReactSharedInternals.T = suspendedCommitReason;
14217 }
14218 }
14219 pendingEffectsStatus = PENDING_MUTATION_PHASE;
14220 shouldStartViewTransition ? (animatingLanes |= lanes, animatingTask = null, pendingViewTransition = startViewTransition(
14221 suspendedState,
14222 root2.containerInfo,
14223 pendingTransitionTypes,
14224 flushMutationEffects,
14225 flushLayoutEffects,
14226 flushAfterMutationEffects,
14227 flushSpawnedWork,
14228 flushPassiveEffects,
14229 reportViewTransitionError,
14230 suspendedViewTransition,
14231 finishedViewTransition.bind(null, lanes)
14232 )) : (flushMutationEffects(), flushLayoutEffects(), flushSpawnedWork());
14233 }
14234 function reportViewTransitionError(error) {
14235 if (pendingEffectsStatus !== NO_PENDING_EFFECTS) {
14236 var onRecoverableError = pendingEffectsRoot.onRecoverableError;
14237 onRecoverableError(error, makeErrorInfo(null));
14238 }
14239 }
14240 function suspendedViewTransition(reason) {
14241 commitEndTime = now();
14242 logCommitPhase(
14243 null === pendingSuspendedCommitReason ? pendingEffectsRenderEndTime : commitStartTime,
14244 commitEndTime,
14245 commitErrors,
14246 pendingDelayedCommitReason === ABORTED_VIEW_TRANSITION_COMMIT,
14247 workInProgressUpdateTask
14248 );
14249 pendingSuspendedCommitReason = pendingSuspendedViewTransitionReason = reason;
14250 }
14251 function finishedViewTransition(lanes) {
14252 if (0 !== (animatingLanes & lanes)) {
14253 var task = animatingTask;
14254 animatingLanes &= ~lanes;
14255 animatingTask = null;
14256 0 !== (lanes & 4194048) && 0 === (workInProgressRootRenderLanes & 4194048) && 0 === (pendingEffectsLanes & 4194048) && (setCurrentTrackFromLanes(256), logAnimatingPhase(transitionClampTime, now$1(), task));
14257 0 !== (lanes & 62914560) && 0 === (workInProgressRootRenderLanes & 62914560) && 0 === (pendingEffectsLanes & 62914560) && (setCurrentTrackFromLanes(4194304), logAnimatingPhase(retryClampTime, now$1(), task));
14258 0 !== (lanes & 2080374784) && 0 === (workInProgressRootRenderLanes & 2080374784) && 0 === (pendingEffectsLanes & 2080374784) && (setCurrentTrackFromLanes(268435456), logAnimatingPhase(idleClampTime, now$1(), task));
14259 }
14260 }
14261 function flushAfterMutationEffects() {
14262 pendingEffectsStatus === PENDING_AFTER_MUTATION_PHASE && (pendingEffectsStatus = NO_PENDING_EFFECTS, commitAfterMutationEffectsOnFiber(
14263 pendingFinishedWork,
14264 pendingEffectsRoot
14265 ), pendingEffectsStatus = PENDING_SPAWNED_WORK);
14266 }
14267 function flushMutationEffects() {
14268 if (pendingEffectsStatus === PENDING_MUTATION_PHASE) {
14269 pendingEffectsStatus = NO_PENDING_EFFECTS;
14270 var root2 = pendingEffectsRoot, finishedWork = pendingFinishedWork, lanes = pendingEffectsLanes, rootMutationHasEffect = 0 !== (finishedWork.flags & 13878);
14271 if (0 !== (finishedWork.subtreeFlags & 13878) || rootMutationHasEffect) {
14272 rootMutationHasEffect = ReactSharedInternals.T;
14273 ReactSharedInternals.T = null;
14274 var previousPriority = ReactDOMSharedInternals.p;
14275 ReactDOMSharedInternals.p = DiscreteEventPriority;
14276 var prevExecutionContext = executionContext;
14277 executionContext |= CommitContext;
14278 try {
14279 inProgressLanes = lanes;
14280 inProgressRoot = root2;
14281 inUpdateViewTransition = rootViewTransitionAffected = false;
14282 resetComponentEffectTimers();
14283 commitMutationEffectsOnFiber(finishedWork, root2, lanes);
14284 inProgressRoot = inProgressLanes = null;
14285 lanes = selectionInformation;
14286 var curFocusedElem = getActiveElementDeep(root2.containerInfo), priorFocusedElem = lanes.focusedElem, priorSelectionRange = lanes.selectionRange;
14287 if (curFocusedElem !== priorFocusedElem && priorFocusedElem && priorFocusedElem.ownerDocument && containsNode(
14288 priorFocusedElem.ownerDocument.documentElement,
14289 priorFocusedElem
14290 )) {
14291 if (null !== priorSelectionRange && hasSelectionCapabilities(priorFocusedElem)) {
14292 var start = priorSelectionRange.start, end = priorSelectionRange.end;
14293 void 0 === end && (end = start);
14294 if ("selectionStart" in priorFocusedElem)
14295 priorFocusedElem.selectionStart = start, priorFocusedElem.selectionEnd = Math.min(
14296 end,
14297 priorFocusedElem.value.length
14298 );
14299 else {
14300 var doc = priorFocusedElem.ownerDocument || document, win = doc && doc.defaultView || window;
14301 if (win.getSelection) {
14302 var selection = win.getSelection(), length = priorFocusedElem.textContent.length, start$jscomp$0 = Math.min(
14303 priorSelectionRange.start,
14304 length
14305 ), end$jscomp$0 = void 0 === priorSelectionRange.end ? start$jscomp$0 : Math.min(priorSelectionRange.end, length);
14306 !selection.extend && start$jscomp$0 > end$jscomp$0 && (curFocusedElem = end$jscomp$0, end$jscomp$0 = start$jscomp$0, start$jscomp$0 = curFocusedElem);
14307 var startMarker = getNodeForCharacterOffset(
14308 priorFocusedElem,
14309 start$jscomp$0
14310 ), endMarker = getNodeForCharacterOffset(
14311 priorFocusedElem,
14312 end$jscomp$0
14313 );
14314 if (startMarker && endMarker && (1 !== selection.rangeCount || selection.anchorNode !== startMarker.node || selection.anchorOffset !== startMarker.offset || selection.focusNode !== endMarker.node || selection.focusOffset !== endMarker.offset)) {
14315 var range = doc.createRange();
14316 range.setStart(startMarker.node, startMarker.offset);
14317 selection.removeAllRanges();
14318 start$jscomp$0 > end$jscomp$0 ? (selection.addRange(range), selection.extend(endMarker.node, endMarker.offset)) : (range.setEnd(endMarker.node, endMarker.offset), selection.addRange(range));
14319 }
14320 }
14321 }
14322 }
14323 doc = [];
14324 for (selection = priorFocusedElem; selection = selection.parentNode; )
14325 1 === selection.nodeType && doc.push({
14326 element: selection,
14327 left: selection.scrollLeft,
14328 top: selection.scrollTop
14329 });
14330 "function" === typeof priorFocusedElem.focus && priorFocusedElem.focus();
14331 for (priorFocusedElem = 0; priorFocusedElem < doc.length; priorFocusedElem++) {
14332 var info = doc[priorFocusedElem];
14333 info.element.scrollLeft = info.left;
14334 info.element.scrollTop = info.top;
14335 }
14336 }
14337 _enabled = !!eventsEnabled;
14338 selectionInformation = eventsEnabled = null;
14339 } finally {
14340 executionContext = prevExecutionContext, ReactDOMSharedInternals.p = previousPriority, ReactSharedInternals.T = rootMutationHasEffect;
14341 }
14342 }
14343 root2.current = finishedWork;
14344 pendingEffectsStatus = PENDING_LAYOUT_PHASE;
14345 }
14346 }
14347 function flushLayoutEffects() {
14348 if (pendingEffectsStatus === PENDING_LAYOUT_PHASE) {
14349 pendingEffectsStatus = NO_PENDING_EFFECTS;
14350 var suspendedViewTransitionReason = pendingSuspendedViewTransitionReason;
14351 if (null !== suspendedViewTransitionReason) {
14352 commitStartTime = now();
14353 var startTime = commitEndTime, endTime = commitStartTime;
14354 !supportsUserTiming || endTime <= startTime || (animatingTask ? animatingTask.run(
14355 console.timeStamp.bind(
14356 console,
14357 suspendedViewTransitionReason,
14358 startTime,
14359 endTime,
14360 currentTrack,
14361 LANES_TRACK_GROUP,
14362 "secondary-light"
14363 )
14364 ) : console.timeStamp(
14365 suspendedViewTransitionReason,
14366 startTime,
14367 endTime,
14368 currentTrack,
14369 LANES_TRACK_GROUP,
14370 "secondary-light"
14371 ));
14372 }
14373 suspendedViewTransitionReason = pendingEffectsRoot;
14374 startTime = pendingFinishedWork;
14375 endTime = pendingEffectsLanes;
14376 var rootHasLayoutEffect = 0 !== (startTime.flags & 8772);
14377 if (0 !== (startTime.subtreeFlags & 8772) || rootHasLayoutEffect) {
14378 rootHasLayoutEffect = ReactSharedInternals.T;
14379 ReactSharedInternals.T = null;
14380 var _previousPriority = ReactDOMSharedInternals.p;
14381 ReactDOMSharedInternals.p = DiscreteEventPriority;
14382 var _prevExecutionContext = executionContext;
14383 executionContext |= CommitContext;
14384 try {
14385 inProgressLanes = endTime, inProgressRoot = suspendedViewTransitionReason, resetComponentEffectTimers(), commitLayoutEffectOnFiber(
14386 suspendedViewTransitionReason,
14387 startTime.alternate,
14388 startTime
14389 ), inProgressRoot = inProgressLanes = null;
14390 } finally {
14391 executionContext = _prevExecutionContext, ReactDOMSharedInternals.p = _previousPriority, ReactSharedInternals.T = rootHasLayoutEffect;
14392 }
14393 }
14394 suspendedViewTransitionReason = pendingEffectsRenderEndTime;
14395 startTime = pendingSuspendedCommitReason;
14396 commitEndTime = now();
14397 logCommitPhase(
14398 null === startTime ? suspendedViewTransitionReason : commitStartTime,
14399 commitEndTime,
14400 commitErrors,
14401 pendingDelayedCommitReason === ABORTED_VIEW_TRANSITION_COMMIT,
14402 workInProgressUpdateTask
14403 );
14404 pendingEffectsStatus = PENDING_AFTER_MUTATION_PHASE;
14405 }
14406 }
14407 function flushSpawnedWork() {
14408 if (pendingEffectsStatus === PENDING_SPAWNED_WORK || pendingEffectsStatus === PENDING_AFTER_MUTATION_PHASE) {
14409 if (pendingEffectsStatus === PENDING_SPAWNED_WORK) {
14410 var startViewTransitionStartTime = commitEndTime;
14411 commitEndTime = now();
14412 var endTime = commitEndTime, abortedViewTransition = pendingDelayedCommitReason === ABORTED_VIEW_TRANSITION_COMMIT;
14413 !supportsUserTiming || endTime <= startViewTransitionStartTime || (animatingTask ? animatingTask.run(
14414 console.timeStamp.bind(
14415 console,
14416 abortedViewTransition ? "Interrupted View Transition" : "Starting Animation",
14417 startViewTransitionStartTime,
14418 endTime,
14419 currentTrack,
14420 LANES_TRACK_GROUP,
14421 abortedViewTransition ? "error" : "secondary-light"
14422 )
14423 ) : console.timeStamp(
14424 abortedViewTransition ? "Interrupted View Transition" : "Starting Animation",
14425 startViewTransitionStartTime,
14426 endTime,
14427 currentTrack,
14428 LANES_TRACK_GROUP,
14429 abortedViewTransition ? " error" : "secondary-light"
14430 ));
14431 pendingDelayedCommitReason !== ABORTED_VIEW_TRANSITION_COMMIT && (pendingDelayedCommitReason = ANIMATION_STARTED_COMMIT);
14432 }
14433 pendingEffectsStatus = NO_PENDING_EFFECTS;
14434 startViewTransitionStartTime = pendingViewTransition;
14435 pendingViewTransition = null;
14436 requestPaint();
14437 endTime = pendingEffectsRoot;
14438 var finishedWork = pendingFinishedWork;
14439 abortedViewTransition = pendingEffectsLanes;
14440 var recoverableErrors = pendingRecoverableErrors, passiveSubtreeMask = (abortedViewTransition & 335544064) === abortedViewTransition ? 10262 : 10256;
14441 (passiveSubtreeMask = 0 !== finishedWork.actualDuration || 0 !== (finishedWork.subtreeFlags & passiveSubtreeMask) || 0 !== (finishedWork.flags & passiveSubtreeMask)) ? pendingEffectsStatus = PENDING_PASSIVE_PHASE : (pendingEffectsStatus = NO_PENDING_EFFECTS, pendingFinishedWork = pendingEffectsRoot = null, releaseRootPooledCache(endTime, endTime.pendingLanes), nestedPassiveUpdateCount = 0, rootWithPassiveNestedUpdates = null);
14442 var remainingLanes = endTime.pendingLanes;
14443 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null);
14444 passiveSubtreeMask || commitDoubleInvokeEffectsInDEV(endTime);
14445 remainingLanes = lanesToEventPriority(abortedViewTransition);
14446 finishedWork = finishedWork.stateNode;
14447 if (injectedHook && "function" === typeof injectedHook.onCommitFiberRoot)
14448 try {
14449 var didError = 128 === (finishedWork.current.flags & 128);
14450 switch (remainingLanes) {
14451 case DiscreteEventPriority:
14452 var schedulerPriority = ImmediatePriority;
14453 break;
14454 case ContinuousEventPriority:
14455 schedulerPriority = UserBlockingPriority;
14456 break;
14457 case DefaultEventPriority:
14458 schedulerPriority = NormalPriority$1;
14459 break;
14460 case IdleEventPriority:
14461 schedulerPriority = IdlePriority;
14462 break;
14463 default:
14464 schedulerPriority = NormalPriority$1;
14465 }
14466 injectedHook.onCommitFiberRoot(
14467 rendererID,
14468 finishedWork,
14469 schedulerPriority,
14470 didError
14471 );
14472 } catch (err) {
14473 hasLoggedError || (hasLoggedError = true, console.error(
14474 "React instrumentation encountered an error: %o",
14475 err
14476 ));
14477 }
14478 isDevToolsPresent && endTime.memoizedUpdaters.clear();
14479 onCommitRoot();
14480 if (null !== recoverableErrors) {
14481 didError = ReactSharedInternals.T;
14482 schedulerPriority = ReactDOMSharedInternals.p;
14483 ReactDOMSharedInternals.p = DiscreteEventPriority;
14484 ReactSharedInternals.T = null;
14485 try {
14486 var onRecoverableError = endTime.onRecoverableError;
14487 for (finishedWork = 0; finishedWork < recoverableErrors.length; finishedWork++) {
14488 var recoverableError = recoverableErrors[finishedWork], errorInfo = makeErrorInfo(recoverableError.stack);
14489 runWithFiberInDEV(
14490 recoverableError.source,
14491 onRecoverableError,
14492 recoverableError.value,
14493 errorInfo
14494 );
14495 }
14496 } finally {
14497 ReactSharedInternals.T = didError, ReactDOMSharedInternals.p = schedulerPriority;
14498 }
14499 }
14500 onRecoverableError = pendingViewTransitionEvents;
14501 recoverableError = pendingTransitionTypes;
14502 pendingTransitionTypes = null;
14503 if (null !== onRecoverableError && (pendingViewTransitionEvents = null, null === recoverableError && (recoverableError = []), null !== startViewTransitionStartTime))
14504 for (errorInfo = 0; errorInfo < onRecoverableError.length; errorInfo++)
14505 recoverableErrors = (0, onRecoverableError[errorInfo])(
14506 recoverableError
14507 ), void 0 !== recoverableErrors && startViewTransitionStartTime.finished.finally(
14508 recoverableErrors
14509 );
14510 0 !== (pendingEffectsLanes & 3) && flushPendingEffects();
14511 ensureRootIsScheduled(endTime);
14512 remainingLanes = endTime.pendingLanes;
14513 0 !== (abortedViewTransition & 261930) && 0 !== (remainingLanes & 42) ? (nestedUpdateScheduled = true, endTime === rootWithNestedUpdates ? nestedUpdateCount++ : (nestedUpdateCount = 0, rootWithNestedUpdates = endTime)) : (nestedUpdateCount = 0, rootWithNestedUpdates = null);
14514 passiveSubtreeMask || finalizeRender(abortedViewTransition, commitEndTime);
14515 flushSyncWorkAcrossRoots_impl(0, false);
14516 }
14517 }
14518 function makeErrorInfo(componentStack) {
14519 componentStack = { componentStack };
14520 Object.defineProperty(componentStack, "digest", {
14521 get: function() {
14522 console.error(
14523 'You are accessing "digest" from the errorInfo object passed to onRecoverableError. This property is no longer provided as part of errorInfo but can be accessed as a property of the Error instance itself.'
14524 );
14525 }
14526 });
14527 return componentStack;
14528 }
14529 function releaseRootPooledCache(root2, remainingLanes) {
14530 0 === (root2.pooledCacheLanes &= remainingLanes) && (remainingLanes = root2.pooledCache, null != remainingLanes && (root2.pooledCache = null, releaseCache(remainingLanes)));
14531 }
14532 function flushPendingEffects() {
14533 null !== pendingViewTransition && (pendingViewTransition.skipTransition(), didWarnAboutInterruptedViewTransitions || (didWarnAboutInterruptedViewTransitions = true, console.warn(
14534 "A flushSync update cancelled a View Transition because it was called while the View Transition was still preparing. To preserve the synchronous semantics, React had to skip the View Transition. If you can, try to avoid flushSync() in a scenario that's likely to interfere."
14535 )), pendingViewTransition = null, pendingDelayedCommitReason = ABORTED_VIEW_TRANSITION_COMMIT);
14536 flushMutationEffects();
14537 flushLayoutEffects();
14538 flushSpawnedWork();
14539 return flushPassiveEffects();
14540 }
14541 function flushPassiveEffects() {
14542 if (pendingEffectsStatus !== PENDING_PASSIVE_PHASE) return false;
14543 var root2 = pendingEffectsRoot, remainingLanes = pendingEffectsRemainingLanes;
14544 pendingEffectsRemainingLanes = 0;
14545 var renderPriority = lanesToEventPriority(pendingEffectsLanes), priority = 0 === DefaultEventPriority || DefaultEventPriority > renderPriority ? DefaultEventPriority : renderPriority;
14546 renderPriority = ReactSharedInternals.T;
14547 var previousPriority = ReactDOMSharedInternals.p;
14548 try {
14549 ReactDOMSharedInternals.p = priority;
14550 ReactSharedInternals.T = null;
14551 var transitions = pendingPassiveTransitions;
14552 pendingPassiveTransitions = null;
14553 priority = pendingEffectsRoot;
14554 var lanes = pendingEffectsLanes;
14555 pendingEffectsStatus = NO_PENDING_EFFECTS;
14556 pendingFinishedWork = pendingEffectsRoot = null;
14557 pendingEffectsLanes = 0;
14558 if ((executionContext & (RenderContext | CommitContext)) !== NoContext)
14559 throw Error("Cannot flush passive effects while already rendering.");
14560 setCurrentTrackFromLanes(lanes);
14561 isFlushingPassiveEffects = true;
14562 didScheduleUpdateDuringPassiveEffects = false;
14563 var passiveEffectStartTime = 0;
14564 commitErrors = null;
14565 passiveEffectStartTime = now$1();
14566 if (pendingDelayedCommitReason === ANIMATION_STARTED_COMMIT)
14567 logAnimatingPhase(
14568 commitEndTime,
14569 passiveEffectStartTime,
14570 animatingTask
14571 );
14572 else {
14573 var startTime = commitEndTime, endTime = passiveEffectStartTime, delayedUntilPaint = pendingDelayedCommitReason === DELAYED_PASSIVE_COMMIT;
14574 !supportsUserTiming || endTime <= startTime || (workInProgressUpdateTask ? workInProgressUpdateTask.run(
14575 console.timeStamp.bind(
14576 console,
14577 delayedUntilPaint ? "Waiting for Paint" : "Waiting",
14578 startTime,
14579 endTime,
14580 currentTrack,
14581 LANES_TRACK_GROUP,
14582 "secondary-light"
14583 )
14584 ) : console.timeStamp(
14585 delayedUntilPaint ? "Waiting for Paint" : "Waiting",
14586 startTime,
14587 endTime,
14588 currentTrack,
14589 LANES_TRACK_GROUP,
14590 "secondary-light"
14591 ));
14592 }
14593 startTime = executionContext;
14594 executionContext |= CommitContext;
14595 var finishedWork = priority.current;
14596 resetComponentEffectTimers();
14597 commitPassiveUnmountOnFiber(finishedWork);
14598 var finishedWork$jscomp$0 = priority.current;
14599 finishedWork = pendingEffectsRenderEndTime;
14600 resetComponentEffectTimers();
14601 commitPassiveMountOnFiber(
14602 priority,
14603 finishedWork$jscomp$0,
14604 lanes,
14605 transitions,
14606 finishedWork
14607 );
14608 commitDoubleInvokeEffectsInDEV(priority);
14609 executionContext = startTime;
14610 var passiveEffectsEndTime = now$1();
14611 finishedWork$jscomp$0 = passiveEffectStartTime;
14612 finishedWork = workInProgressUpdateTask;
14613 null !== commitErrors ? logCommitErrored(
14614 finishedWork$jscomp$0,
14615 passiveEffectsEndTime,
14616 commitErrors,
14617 true,
14618 finishedWork
14619 ) : !supportsUserTiming || passiveEffectsEndTime <= finishedWork$jscomp$0 || (finishedWork ? finishedWork.run(
14620 console.timeStamp.bind(
14621 console,
14622 "Remaining Effects",
14623 finishedWork$jscomp$0,
14624 passiveEffectsEndTime,
14625 currentTrack,
14626 LANES_TRACK_GROUP,
14627 "secondary-dark"
14628 )
14629 ) : console.timeStamp(
14630 "Remaining Effects",
14631 finishedWork$jscomp$0,
14632 passiveEffectsEndTime,
14633 currentTrack,
14634 LANES_TRACK_GROUP,
14635 "secondary-dark"
14636 ));
14637 finalizeRender(lanes, passiveEffectsEndTime);
14638 flushSyncWorkAcrossRoots_impl(0, false);
14639 didScheduleUpdateDuringPassiveEffects ? priority === rootWithPassiveNestedUpdates ? nestedPassiveUpdateCount++ : (nestedPassiveUpdateCount = 0, rootWithPassiveNestedUpdates = priority) : nestedPassiveUpdateCount = 0;
14640 didScheduleUpdateDuringPassiveEffects = isFlushingPassiveEffects = false;
14641 if (injectedHook && "function" === typeof injectedHook.onPostCommitFiberRoot)
14642 try {
14643 injectedHook.onPostCommitFiberRoot(rendererID, priority);
14644 } catch (err) {
14645 hasLoggedError || (hasLoggedError = true, console.error(
14646 "React instrumentation encountered an error: %o",
14647 err
14648 ));
14649 }
14650 var stateNode = priority.current.stateNode;
14651 stateNode.effectDuration = 0;
14652 stateNode.passiveEffectDuration = 0;
14653 return true;
14654 } finally {
14655 ReactDOMSharedInternals.p = previousPriority, ReactSharedInternals.T = renderPriority, releaseRootPooledCache(root2, remainingLanes);
14656 }
14657 }
14658 function captureCommitPhaseErrorOnRoot(rootFiber, sourceFiber, error) {
14659 sourceFiber = createCapturedValueAtFiber(error, sourceFiber);
14660 recordEffectError(sourceFiber);
14661 sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2);
14662 rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2);
14663 null !== rootFiber && (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber));
14664 }
14665 function captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error) {
14666 isRunningInsertionEffect = false;
14667 if (3 === sourceFiber.tag)
14668 captureCommitPhaseErrorOnRoot(sourceFiber, sourceFiber, error);
14669 else {
14670 for (; null !== nearestMountedAncestor; ) {
14671 if (3 === nearestMountedAncestor.tag) {
14672 captureCommitPhaseErrorOnRoot(
14673 nearestMountedAncestor,
14674 sourceFiber,
14675 error
14676 );
14677 return;
14678 }
14679 if (1 === nearestMountedAncestor.tag) {
14680 var instance = nearestMountedAncestor.stateNode;
14681 if ("function" === typeof nearestMountedAncestor.type.getDerivedStateFromError || "function" === typeof instance.componentDidCatch && (null === legacyErrorBoundariesThatAlreadyFailed || !legacyErrorBoundariesThatAlreadyFailed.has(instance))) {
14682 sourceFiber = createCapturedValueAtFiber(error, sourceFiber);
14683 recordEffectError(sourceFiber);
14684 error = createClassErrorUpdate(2);
14685 instance = enqueueUpdate(nearestMountedAncestor, error, 2);
14686 null !== instance && (initializeClassErrorUpdate(
14687 error,
14688 instance,
14689 nearestMountedAncestor,
14690 sourceFiber
14691 ), markRootUpdated$1(instance, 2), ensureRootIsScheduled(instance));
14692 return;
14693 }
14694 }
14695 nearestMountedAncestor = nearestMountedAncestor.return;
14696 }
14697 console.error(
14698 "Internal React error: Attempted to capture a commit phase error inside a detached tree. This indicates a bug in React. Potential causes include deleting the same fiber more than once, committing an already-finished tree, or an inconsistent return pointer.\n\nError message:\n\n%s",
14699 error
14700 );
14701 }
14702 }
14703 function attachPingListener(root2, wakeable, lanes) {
14704 var pingCache = root2.pingCache;
14705 if (null === pingCache) {
14706 pingCache = root2.pingCache = new PossiblyWeakMap();
14707 var threadIDs = /* @__PURE__ */ new Set();
14708 pingCache.set(wakeable, threadIDs);
14709 } else
14710 threadIDs = pingCache.get(wakeable), void 0 === threadIDs && (threadIDs = /* @__PURE__ */ new Set(), pingCache.set(wakeable, threadIDs));
14711 threadIDs.has(lanes) || (workInProgressRootDidAttachPingListener = true, threadIDs.add(lanes), pingCache = pingSuspendedRoot.bind(null, root2, wakeable, lanes), isDevToolsPresent && restorePendingUpdaters(root2, lanes), wakeable.then(pingCache, pingCache));
14712 }
14713 function pingSuspendedRoot(root2, wakeable, pingedLanes) {
14714 var pingCache = root2.pingCache;
14715 null !== pingCache && pingCache.delete(wakeable);
14716 root2.pingedLanes |= root2.suspendedLanes & pingedLanes;
14717 root2.warmLanes &= ~pingedLanes;
14718 0 !== (pingedLanes & 127) ? 0 > blockingUpdateTime && (blockingClampTime = blockingUpdateTime = now(), blockingUpdateTask = createTask("Promise Resolved"), blockingUpdateType = PINGED_UPDATE) : 0 !== (pingedLanes & 4194048) && 0 > transitionUpdateTime && (transitionClampTime = transitionUpdateTime = now(), transitionUpdateTask = createTask("Promise Resolved"), transitionUpdateType = PINGED_UPDATE);
14719 isConcurrentActEnvironment() && null === ReactSharedInternals.actQueue && console.error(
14720 "A suspended resource finished loading inside a test, but the event was not wrapped in act(...).\n\nWhen testing, code that resolves suspended data should be wrapped into act(...):\n\nact(() => {\n /* finish loading suspended data */\n});\n/* assert on the output */\n\nThis ensures that you're testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act"
14721 );
14722 workInProgressRoot === root2 && (workInProgressRootRenderLanes & pingedLanes) === pingedLanes && (workInProgressRootExitStatus === RootSuspendedWithDelay || workInProgressRootExitStatus === RootSuspended && (workInProgressRootRenderLanes & 62914560) === workInProgressRootRenderLanes && now$1() - globalMostRecentFallbackTime < FALLBACK_THROTTLE_MS ? (executionContext & RenderContext) === NoContext ? prepareFreshStack(root2, 0) : workInProgressRootPingedLanes |= pingedLanes : workInProgressRootPingedLanes |= pingedLanes, workInProgressSuspendedRetryLanes === workInProgressRootRenderLanes && (workInProgressSuspendedRetryLanes = 0));
14723 ensureRootIsScheduled(root2);
14724 }
14725 function retryTimedOutBoundary(boundaryFiber, retryLane) {
14726 0 === retryLane && (retryLane = claimNextRetryLane());
14727 boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane);
14728 null !== boundaryFiber && (markRootUpdated$1(boundaryFiber, retryLane), ensureRootIsScheduled(boundaryFiber));
14729 }
14730 function retryDehydratedSuspenseBoundary(boundaryFiber) {
14731 var suspenseState = boundaryFiber.memoizedState, retryLane = 0;
14732 null !== suspenseState && (retryLane = suspenseState.retryLane);
14733 retryTimedOutBoundary(boundaryFiber, retryLane);
14734 }
14735 function resolveRetryWakeable(boundaryFiber, wakeable) {
14736 var retryLane = 0;
14737 switch (boundaryFiber.tag) {
14738 case 31:
14739 case 13:
14740 var retryCache = boundaryFiber.stateNode;
14741 var suspenseState = boundaryFiber.memoizedState;
14742 null !== suspenseState && (retryLane = suspenseState.retryLane);
14743 break;
14744 case 19:
14745 retryCache = boundaryFiber.stateNode;
14746 break;
14747 case 22:
14748 retryCache = boundaryFiber.stateNode._retryCache;
14749 break;
14750 default:
14751 throw Error(
14752 "Pinged unknown suspense boundary type. This is probably a bug in React."
14753 );
14754 }
14755 null !== retryCache && retryCache.delete(wakeable);
14756 retryTimedOutBoundary(boundaryFiber, retryLane);
14757 }
14758 function recursivelyTraverseAndDoubleInvokeEffectsInDEV(root$jscomp$0, parentFiber, isInStrictMode) {
14759 if (0 !== (parentFiber.subtreeFlags & 134225920))
14760 for (parentFiber = parentFiber.child; null !== parentFiber; ) {
14761 var root2 = root$jscomp$0, fiber = parentFiber, isStrictModeFiber = fiber.type === REACT_STRICT_MODE_TYPE;
14762 isStrictModeFiber = isInStrictMode || isStrictModeFiber;
14763 22 !== fiber.tag ? fiber.flags & 134217728 ? isStrictModeFiber && runWithFiberInDEV(
14764 fiber,
14765 doubleInvokeEffectsOnFiber,
14766 root2,
14767 fiber
14768 ) : recursivelyTraverseAndDoubleInvokeEffectsInDEV(
14769 root2,
14770 fiber,
14771 isStrictModeFiber
14772 ) : null === fiber.memoizedState && (isStrictModeFiber && fiber.flags & 134225920 ? runWithFiberInDEV(
14773 fiber,
14774 doubleInvokeEffectsOnFiber,
14775 root2,
14776 fiber
14777 ) : fiber.subtreeFlags & 134217728 && runWithFiberInDEV(
14778 fiber,
14779 recursivelyTraverseAndDoubleInvokeEffectsInDEV,
14780 root2,
14781 fiber,
14782 isStrictModeFiber
14783 ));
14784 parentFiber = parentFiber.sibling;
14785 }
14786 }
14787 function doubleInvokeEffectsOnFiber(root2, fiber) {
14788 setIsStrictModeForDevtools(true);
14789 try {
14790 disappearLayoutEffects(fiber, NoLayoutEffectTraversalFlags), disconnectPassiveEffect(fiber), reappearLayoutEffects(
14791 root2,
14792 fiber.alternate,
14793 fiber,
14794 NoLayoutEffectTraversalFlags
14795 ), reconnectPassiveEffects(root2, fiber, 0, null, false, 0);
14796 } finally {
14797 setIsStrictModeForDevtools(false);
14798 }
14799 }
14800 function commitDoubleInvokeEffectsInDEV(root2) {
14801 var doubleInvokeEffects = true;
14802 root2.current.mode & (StrictLegacyMode | StrictEffectsMode) || (doubleInvokeEffects = false);
14803 recursivelyTraverseAndDoubleInvokeEffectsInDEV(
14804 root2,
14805 root2.current,
14806 doubleInvokeEffects
14807 );
14808 }
14809 function warnAboutUpdateOnNotYetMountedFiberInDEV(fiber) {
14810 if ((executionContext & RenderContext) === NoContext) {
14811 var tag = fiber.tag;
14812 if (3 === tag || 1 === tag || 0 === tag || 11 === tag || 14 === tag || 15 === tag) {
14813 tag = getComponentNameFromFiber(fiber) || "ReactComponent";
14814 if (null !== didWarnStateUpdateForNotYetMountedComponent) {
14815 if (didWarnStateUpdateForNotYetMountedComponent.has(tag)) return;
14816 didWarnStateUpdateForNotYetMountedComponent.add(tag);
14817 } else didWarnStateUpdateForNotYetMountedComponent = /* @__PURE__ */ new Set([tag]);
14818 runWithFiberInDEV(fiber, function() {
14819 console.error(
14820 "Can't perform a React state update on a component that hasn't mounted yet. This indicates that you have a side-effect in your render function that asynchronously tries to update the component. Move this work to useEffect instead."
14821 );
14822 });
14823 }
14824 }
14825 }
14826 function restorePendingUpdaters(root2, lanes) {
14827 isDevToolsPresent && root2.memoizedUpdaters.forEach(function(schedulingFiber) {
14828 addFiberToLanesMap(root2, schedulingFiber, lanes);
14829 });
14830 }
14831 function scheduleCallback$1(priorityLevel, callback) {
14832 var actQueue = ReactSharedInternals.actQueue;
14833 return null !== actQueue ? (actQueue.push(callback), fakeActCallbackNode$1) : scheduleCallback$3(priorityLevel, callback);
14834 }
14835 function warnIfUpdatesNotWrappedWithActDEV(fiber) {
14836 isConcurrentActEnvironment() && null === ReactSharedInternals.actQueue && runWithFiberInDEV(fiber, function() {
14837 console.error(
14838 "An update to %s inside a test was not wrapped in act(...).\n\nWhen testing, code that causes React state updates should be wrapped into act(...):\n\nact(() => {\n /* fire events that update state */\n});\n/* assert on the output */\n\nThis ensures that you're testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act",
14839 getComponentNameFromFiber(fiber)
14840 );
14841 });
14842 }
14843 function ensureRootIsScheduled(root2) {
14844 root2 !== lastScheduledRoot && null === root2.next && (null === lastScheduledRoot ? firstScheduledRoot = lastScheduledRoot = root2 : lastScheduledRoot = lastScheduledRoot.next = root2);
14845 mightHavePendingSyncWork = true;
14846 null !== ReactSharedInternals.actQueue ? didScheduleMicrotask_act || (didScheduleMicrotask_act = true, scheduleImmediateRootScheduleTask()) : didScheduleMicrotask || (didScheduleMicrotask = true, scheduleImmediateRootScheduleTask());
14847 }
14848 function flushSyncWorkAcrossRoots_impl(syncTransitionLanes, onlyLegacy) {
14849 if (!isFlushingWork && mightHavePendingSyncWork) {
14850 isFlushingWork = true;
14851 do {
14852 var didPerformSomeWork = false;
14853 for (var root2 = firstScheduledRoot; null !== root2; ) {
14854 if (!onlyLegacy)
14855 if (0 !== syncTransitionLanes) {
14856 var pendingLanes = root2.pendingLanes;
14857 if (0 === pendingLanes) var nextLanes = 0;
14858 else {
14859 var suspendedLanes = root2.suspendedLanes, pingedLanes = root2.pingedLanes;
14860 nextLanes = (1 << 31 - clz32(42 | syncTransitionLanes) + 1) - 1;
14861 nextLanes &= pendingLanes & ~(suspendedLanes & ~pingedLanes);
14862 nextLanes = nextLanes & 201326741 ? nextLanes & 201326741 | 1 : nextLanes ? nextLanes | 2 : 0;
14863 }
14864 0 !== nextLanes && (didPerformSomeWork = true, performSyncWorkOnRoot(root2, nextLanes));
14865 } else
14866 nextLanes = workInProgressRootRenderLanes, nextLanes = getNextLanes(
14867 root2,
14868 root2 === workInProgressRoot ? nextLanes : 0,
14869 null !== root2.cancelPendingCommit || root2.timeoutHandle !== noTimeout
14870 ), 0 === (nextLanes & 3) || checkIfRootIsPrerendering(root2, nextLanes) || (didPerformSomeWork = true, performSyncWorkOnRoot(root2, nextLanes));
14871 root2 = root2.next;
14872 }
14873 } while (didPerformSomeWork);
14874 isFlushingWork = false;
14875 }
14876 }
14877 function processRootScheduleInImmediateTask() {
14878 schedulerEvent = window.event;
14879 processRootScheduleInMicrotask();
14880 }
14881 function processRootScheduleInMicrotask() {
14882 mightHavePendingSyncWork = didScheduleMicrotask_act = didScheduleMicrotask = false;
14883 var syncTransitionLanes = 0;
14884 0 !== currentEventTransitionLane && shouldAttemptEagerTransition() && (syncTransitionLanes = currentEventTransitionLane);
14885 for (var currentTime = now$1(), prev = null, root2 = firstScheduledRoot; null !== root2; ) {
14886 var next = root2.next, nextLanes = scheduleTaskForRootDuringMicrotask(root2, currentTime);
14887 if (0 === nextLanes)
14888 root2.next = null, null === prev ? firstScheduledRoot = next : prev.next = next, null === next && (lastScheduledRoot = prev);
14889 else if (prev = root2, 0 !== syncTransitionLanes || 0 !== (nextLanes & 3))
14890 mightHavePendingSyncWork = true;
14891 root2 = next;
14892 }
14893 pendingEffectsStatus !== NO_PENDING_EFFECTS && pendingEffectsStatus !== PENDING_PASSIVE_PHASE || flushSyncWorkAcrossRoots_impl(syncTransitionLanes, false);
14894 0 !== currentEventTransitionLane && (currentEventTransitionLane = 0);
14895 }
14896 function scheduleTaskForRootDuringMicrotask(root2, currentTime) {
14897 for (var suspendedLanes = root2.suspendedLanes, pingedLanes = root2.pingedLanes, expirationTimes = root2.expirationTimes, lanes = root2.pendingLanes & -62914561; 0 < lanes; ) {
14898 var index = 31 - clz32(lanes), lane = 1 << index, expirationTime = expirationTimes[index];
14899 if (-1 === expirationTime) {
14900 if (0 === (lane & suspendedLanes) || 0 !== (lane & pingedLanes))
14901 expirationTimes[index] = computeExpirationTime(lane, currentTime);
14902 } else expirationTime <= currentTime && (root2.expiredLanes |= lane);
14903 lanes &= ~lane;
14904 }
14905 currentTime = workInProgressRoot;
14906 suspendedLanes = workInProgressRootRenderLanes;
14907 suspendedLanes = getNextLanes(
14908 root2,
14909 root2 === currentTime ? suspendedLanes : 0,
14910 null !== root2.cancelPendingCommit || root2.timeoutHandle !== noTimeout
14911 );
14912 pingedLanes = root2.callbackNode;
14913 if (0 === suspendedLanes || root2 === currentTime && (workInProgressSuspendedReason === SuspendedOnData || workInProgressSuspendedReason === SuspendedOnAction) || null !== root2.cancelPendingCommit)
14914 return null !== pingedLanes && cancelCallback(pingedLanes), root2.callbackNode = null, root2.callbackPriority = 0;
14915 if (0 === (suspendedLanes & 3) || checkIfRootIsPrerendering(root2, suspendedLanes)) {
14916 currentTime = suspendedLanes & -suspendedLanes;
14917 if (currentTime !== root2.callbackPriority || null !== ReactSharedInternals.actQueue && pingedLanes !== fakeActCallbackNode)
14918 cancelCallback(pingedLanes);
14919 else return currentTime;
14920 switch (lanesToEventPriority(suspendedLanes)) {
14921 case DiscreteEventPriority:
14922 case ContinuousEventPriority:
14923 suspendedLanes = UserBlockingPriority;
14924 break;
14925 case DefaultEventPriority:
14926 suspendedLanes = NormalPriority$1;
14927 break;
14928 case IdleEventPriority:
14929 suspendedLanes = IdlePriority;
14930 break;
14931 default:
14932 suspendedLanes = NormalPriority$1;
14933 }
14934 pingedLanes = performWorkOnRootViaSchedulerTask.bind(null, root2);
14935 null !== ReactSharedInternals.actQueue ? (ReactSharedInternals.actQueue.push(pingedLanes), suspendedLanes = fakeActCallbackNode) : suspendedLanes = scheduleCallback$3(suspendedLanes, pingedLanes);
14936 root2.callbackPriority = currentTime;
14937 root2.callbackNode = suspendedLanes;
14938 return currentTime;
14939 }
14940 null !== pingedLanes && cancelCallback(pingedLanes);
14941 root2.callbackPriority = 2;
14942 root2.callbackNode = null;
14943 return 2;
14944 }
14945 function performWorkOnRootViaSchedulerTask(root2, didTimeout) {
14946 nestedUpdateScheduled = currentUpdateIsNested = false;
14947 schedulerEvent = window.event;
14948 if (pendingEffectsStatus !== NO_PENDING_EFFECTS && pendingEffectsStatus !== PENDING_PASSIVE_PHASE)
14949 return root2.callbackNode = null, root2.callbackPriority = 0, null;
14950 var originalCallbackNode = root2.callbackNode;
14951 pendingDelayedCommitReason === IMMEDIATE_COMMIT && (pendingDelayedCommitReason = DELAYED_PASSIVE_COMMIT);
14952 if (flushPendingEffects() && root2.callbackNode !== originalCallbackNode)
14953 return null;
14954 var workInProgressRootRenderLanes$jscomp$0 = workInProgressRootRenderLanes;
14955 workInProgressRootRenderLanes$jscomp$0 = getNextLanes(
14956 root2,
14957 root2 === workInProgressRoot ? workInProgressRootRenderLanes$jscomp$0 : 0,
14958 null !== root2.cancelPendingCommit || root2.timeoutHandle !== noTimeout
14959 );
14960 if (0 === workInProgressRootRenderLanes$jscomp$0) return null;
14961 performWorkOnRoot(
14962 root2,
14963 workInProgressRootRenderLanes$jscomp$0,
14964 didTimeout
14965 );
14966 scheduleTaskForRootDuringMicrotask(root2, now$1());
14967 return null != root2.callbackNode && root2.callbackNode === originalCallbackNode ? performWorkOnRootViaSchedulerTask.bind(null, root2) : null;
14968 }
14969 function performSyncWorkOnRoot(root2, lanes) {
14970 if (flushPendingEffects()) return null;
14971 currentUpdateIsNested = nestedUpdateScheduled;
14972 nestedUpdateScheduled = false;
14973 performWorkOnRoot(root2, lanes, true);
14974 }
14975 function cancelCallback(callbackNode) {
14976 callbackNode !== fakeActCallbackNode && null !== callbackNode && cancelCallback$1(callbackNode);
14977 }
14978 function scheduleImmediateRootScheduleTask() {
14979 null !== ReactSharedInternals.actQueue && ReactSharedInternals.actQueue.push(function() {
14980 processRootScheduleInMicrotask();
14981 return null;
14982 });
14983 scheduleMicrotask(function() {
14984 (executionContext & (RenderContext | CommitContext)) !== NoContext ? scheduleCallback$3(
14985 ImmediatePriority,
14986 processRootScheduleInImmediateTask
14987 ) : processRootScheduleInMicrotask();
14988 });
14989 }
14990 function requestTransitionLane() {
14991 if (0 === currentEventTransitionLane) {
14992 var actionScopeLane = currentEntangledLane;
14993 0 === actionScopeLane && (actionScopeLane = nextTransitionUpdateLane, nextTransitionUpdateLane <<= 1, 0 === (nextTransitionUpdateLane & 261888) && (nextTransitionUpdateLane = 256));
14994 currentEventTransitionLane = actionScopeLane;
14995 }
14996 return currentEventTransitionLane;
14997 }
14998 function coerceFormActionProp(actionProp) {
14999 if (null == actionProp || "symbol" === typeof actionProp || "boolean" === typeof actionProp)
15000 return null;
15001 if ("function" === typeof actionProp) return actionProp;
15002 checkAttributeStringCoercion(actionProp, "action");
15003 return sanitizeURL(actionProp);
15004 }
15005 function extractEvents$1(dispatchQueue, domEventName, maybeTargetInst, nativeEvent, nativeEventTarget) {
15006 if ("submit" === domEventName && maybeTargetInst && maybeTargetInst.stateNode === nativeEventTarget) {
15007 var action = coerceFormActionProp(
15008 (nativeEventTarget[internalPropsKey] || null).action
15009 ), submitter = nativeEvent.submitter;
15010 submitter && (domEventName = (domEventName = submitter[internalPropsKey] || null) ? coerceFormActionProp(domEventName.formAction) : submitter.getAttribute("formAction"), null !== domEventName && (action = domEventName, submitter = null));
15011 var event = new SyntheticEvent(
15012 "action",
15013 "action",
15014 null,
15015 nativeEvent,
15016 nativeEventTarget
15017 );
15018 dispatchQueue.push({
15019 event,
15020 listeners: [
15021 {
15022 instance: null,
15023 listener: function() {
15024 if (nativeEvent.defaultPrevented) {
15025 if (0 !== currentEventTransitionLane) {
15026 var formData = new FormData(nativeEventTarget, submitter), pendingState = {
15027 pending: true,
15028 data: formData,
15029 method: nativeEventTarget.method,
15030 action
15031 };
15032 Object.freeze(pendingState);
15033 startHostTransition(
15034 maybeTargetInst,
15035 pendingState,
15036 null,
15037 formData
15038 );
15039 }
15040 } else
15041 "function" === typeof action && (event.preventDefault(), formData = new FormData(nativeEventTarget, submitter), pendingState = {
15042 pending: true,
15043 data: formData,
15044 method: nativeEventTarget.method,
15045 action
15046 }, Object.freeze(pendingState), startHostTransition(
15047 maybeTargetInst,
15048 pendingState,
15049 action,
15050 formData
15051 ));
15052 },
15053 currentTarget: nativeEventTarget
15054 }
15055 ]
15056 });
15057 }
15058 }
15059 function executeDispatch(event, listener, currentTarget) {
15060 event.currentTarget = currentTarget;
15061 try {
15062 listener(event);
15063 } catch (error) {
15064 reportGlobalError(error);
15065 }
15066 event.currentTarget = null;
15067 }
15068 function processDispatchQueue(dispatchQueue, eventSystemFlags) {
15069 eventSystemFlags = 0 !== (eventSystemFlags & 4);
15070 for (var i = 0; i < dispatchQueue.length; i++) {
15071 var _dispatchQueue$i = dispatchQueue[i];
15072 a: {
15073 var previousInstance = void 0, event = _dispatchQueue$i.event;
15074 _dispatchQueue$i = _dispatchQueue$i.listeners;
15075 if (eventSystemFlags)
15076 for (var i$jscomp$0 = _dispatchQueue$i.length - 1; 0 <= i$jscomp$0; i$jscomp$0--) {
15077 var _dispatchListeners$i = _dispatchQueue$i[i$jscomp$0], instance = _dispatchListeners$i.instance, currentTarget = _dispatchListeners$i.currentTarget;
15078 _dispatchListeners$i = _dispatchListeners$i.listener;
15079 if (instance !== previousInstance && event.isPropagationStopped())
15080 break a;
15081 null !== instance ? runWithFiberInDEV(
15082 instance,
15083 executeDispatch,
15084 event,
15085 _dispatchListeners$i,
15086 currentTarget
15087 ) : executeDispatch(event, _dispatchListeners$i, currentTarget);
15088 previousInstance = instance;
15089 }
15090 else
15091 for (i$jscomp$0 = 0; i$jscomp$0 < _dispatchQueue$i.length; i$jscomp$0++) {
15092 _dispatchListeners$i = _dispatchQueue$i[i$jscomp$0];
15093 instance = _dispatchListeners$i.instance;
15094 currentTarget = _dispatchListeners$i.currentTarget;
15095 _dispatchListeners$i = _dispatchListeners$i.listener;
15096 if (instance !== previousInstance && event.isPropagationStopped())
15097 break a;
15098 null !== instance ? runWithFiberInDEV(
15099 instance,
15100 executeDispatch,
15101 event,
15102 _dispatchListeners$i,
15103 currentTarget
15104 ) : executeDispatch(event, _dispatchListeners$i, currentTarget);
15105 previousInstance = instance;
15106 }
15107 }
15108 }
15109 }
15110 function listenToNonDelegatedEvent(domEventName, targetElement) {
15111 nonDelegatedEvents.has(domEventName) || console.error(
15112 'Did not expect a listenToNonDelegatedEvent() call for "%s". This is a bug in React. Please file an issue.',
15113 domEventName
15114 );
15115 var listenerSet = targetElement[internalEventHandlersKey];
15116 void 0 === listenerSet && (listenerSet = targetElement[internalEventHandlersKey] = /* @__PURE__ */ new Set());
15117 var listenerSetKey = domEventName + "__bubble";
15118 listenerSet.has(listenerSetKey) || (addTrappedEventListener(targetElement, domEventName, 2, false), listenerSet.add(listenerSetKey));
15119 }
15120 function listenToNativeEvent(domEventName, isCapturePhaseListener, target) {
15121 nonDelegatedEvents.has(domEventName) && !isCapturePhaseListener && console.error(
15122 'Did not expect a listenToNativeEvent() call for "%s" in the bubble phase. This is a bug in React. Please file an issue.',
15123 domEventName
15124 );
15125 var eventSystemFlags = 0;
15126 isCapturePhaseListener && (eventSystemFlags |= 4);
15127 addTrappedEventListener(
15128 target,
15129 domEventName,
15130 eventSystemFlags,
15131 isCapturePhaseListener
15132 );
15133 }
15134 function listenToAllSupportedEvents(rootContainerElement) {
15135 if (!rootContainerElement[listeningMarker]) {
15136 rootContainerElement[listeningMarker] = true;
15137 allNativeEvents.forEach(function(domEventName) {
15138 "selectionchange" !== domEventName && (nonDelegatedEvents.has(domEventName) || listenToNativeEvent(domEventName, false, rootContainerElement), listenToNativeEvent(domEventName, true, rootContainerElement));
15139 });
15140 var ownerDocument = 9 === rootContainerElement.nodeType ? rootContainerElement : rootContainerElement.ownerDocument;
15141 null === ownerDocument || ownerDocument[listeningMarker] || (ownerDocument[listeningMarker] = true, listenToNativeEvent("selectionchange", false, ownerDocument));
15142 }
15143 }
15144 function addTrappedEventListener(targetContainer, domEventName, eventSystemFlags, isCapturePhaseListener) {
15145 switch (getEventPriority(domEventName)) {
15146 case DiscreteEventPriority:
15147 var listenerWrapper = dispatchDiscreteEvent;
15148 break;
15149 case ContinuousEventPriority:
15150 listenerWrapper = dispatchContinuousEvent;
15151 break;
15152 default:
15153 listenerWrapper = dispatchEvent;
15154 }
15155 eventSystemFlags = listenerWrapper.bind(
15156 null,
15157 domEventName,
15158 eventSystemFlags,
15159 targetContainer
15160 );
15161 listenerWrapper = void 0;
15162 !passiveBrowserEventsSupported || "touchstart" !== domEventName && "touchmove" !== domEventName && "wheel" !== domEventName || (listenerWrapper = true);
15163 isCapturePhaseListener ? void 0 !== listenerWrapper ? targetContainer.addEventListener(domEventName, eventSystemFlags, {
15164 capture: true,
15165 passive: listenerWrapper
15166 }) : targetContainer.addEventListener(domEventName, eventSystemFlags, true) : void 0 !== listenerWrapper ? targetContainer.addEventListener(domEventName, eventSystemFlags, {
15167 passive: listenerWrapper
15168 }) : targetContainer.addEventListener(
15169 domEventName,
15170 eventSystemFlags,
15171 false
15172 );
15173 }
15174 function dispatchEventForPluginEventSystem(domEventName, eventSystemFlags, nativeEvent, targetInst$jscomp$0, targetContainer) {
15175 var ancestorInst = targetInst$jscomp$0;
15176 if (0 === (eventSystemFlags & 1) && 0 === (eventSystemFlags & 2) && null !== targetInst$jscomp$0)
15177 a: for (; ; ) {
15178 if (null === targetInst$jscomp$0) return;
15179 var nodeTag = targetInst$jscomp$0.tag;
15180 if (3 === nodeTag || 4 === nodeTag) {
15181 var container = targetInst$jscomp$0.stateNode.containerInfo;
15182 if (container === targetContainer) break;
15183 if (4 === nodeTag)
15184 for (nodeTag = targetInst$jscomp$0.return; null !== nodeTag; ) {
15185 var grandTag = nodeTag.tag;
15186 if ((3 === grandTag || 4 === grandTag) && nodeTag.stateNode.containerInfo === targetContainer)
15187 return;
15188 nodeTag = nodeTag.return;
15189 }
15190 for (; null !== container; ) {
15191 nodeTag = getClosestInstanceFromNode(container);
15192 if (null === nodeTag) return;
15193 grandTag = nodeTag.tag;
15194 if (5 === grandTag || 6 === grandTag || 26 === grandTag || 27 === grandTag) {
15195 targetInst$jscomp$0 = ancestorInst = nodeTag;
15196 continue a;
15197 }
15198 container = container.parentNode;
15199 }
15200 }
15201 targetInst$jscomp$0 = targetInst$jscomp$0.return;
15202 }
15203 batchedUpdates$1(function() {
15204 var targetInst = ancestorInst, nativeEventTarget = getEventTarget(nativeEvent), dispatchQueue = [];
15205 a: {
15206 var reactName = topLevelEventsToReactNames.get(domEventName);
15207 if (void 0 !== reactName) {
15208 var SyntheticEventCtor = SyntheticEvent, reactEventType = domEventName;
15209 switch (domEventName) {
15210 case "keypress":
15211 if (0 === getEventCharCode(nativeEvent)) break a;
15212 case "keydown":
15213 case "keyup":
15214 SyntheticEventCtor = SyntheticKeyboardEvent;
15215 break;
15216 case "focusin":
15217 reactEventType = "focus";
15218 SyntheticEventCtor = SyntheticFocusEvent;
15219 break;
15220 case "focusout":
15221 reactEventType = "blur";
15222 SyntheticEventCtor = SyntheticFocusEvent;
15223 break;
15224 case "beforeblur":
15225 case "afterblur":
15226 SyntheticEventCtor = SyntheticFocusEvent;
15227 break;
15228 case "click":
15229 if (2 === nativeEvent.button) break a;
15230 case "auxclick":
15231 case "dblclick":
15232 case "mousedown":
15233 case "mousemove":
15234 case "mouseup":
15235 case "mouseout":
15236 case "mouseover":
15237 case "contextmenu":
15238 SyntheticEventCtor = SyntheticMouseEvent;
15239 break;
15240 case "drag":
15241 case "dragend":
15242 case "dragenter":
15243 case "dragexit":
15244 case "dragleave":
15245 case "dragover":
15246 case "dragstart":
15247 case "drop":
15248 SyntheticEventCtor = SyntheticDragEvent;
15249 break;
15250 case "touchcancel":
15251 case "touchend":
15252 case "touchmove":
15253 case "touchstart":
15254 SyntheticEventCtor = SyntheticTouchEvent;
15255 break;
15256 case ANIMATION_END:
15257 case ANIMATION_ITERATION:
15258 case ANIMATION_START:
15259 SyntheticEventCtor = SyntheticAnimationEvent;
15260 break;
15261 case TRANSITION_END:
15262 SyntheticEventCtor = SyntheticTransitionEvent;
15263 break;
15264 case "scroll":
15265 case "scrollend":
15266 SyntheticEventCtor = SyntheticUIEvent;
15267 break;
15268 case "wheel":
15269 SyntheticEventCtor = SyntheticWheelEvent;
15270 break;
15271 case "copy":
15272 case "cut":
15273 case "paste":
15274 SyntheticEventCtor = SyntheticClipboardEvent;
15275 break;
15276 case "gotpointercapture":
15277 case "lostpointercapture":
15278 case "pointercancel":
15279 case "pointerdown":
15280 case "pointermove":
15281 case "pointerout":
15282 case "pointerover":
15283 case "pointerup":
15284 SyntheticEventCtor = SyntheticPointerEvent;
15285 break;
15286 case "submit":
15287 SyntheticEventCtor = SyntheticSubmitEvent;
15288 break;
15289 case "toggle":
15290 case "beforetoggle":
15291 SyntheticEventCtor = SyntheticToggleEvent;
15292 }
15293 var inCapturePhase = 0 !== (eventSystemFlags & 4), accumulateTargetOnly = !inCapturePhase && ("scroll" === domEventName || "scrollend" === domEventName), reactEventName = inCapturePhase ? null !== reactName ? reactName + "Capture" : null : reactName;
15294 inCapturePhase = [];
15295 for (var instance = targetInst, lastHostComponent; null !== instance; ) {
15296 var _instance2 = instance;
15297 lastHostComponent = _instance2.stateNode;
15298 _instance2 = _instance2.tag;
15299 5 !== _instance2 && 26 !== _instance2 && 27 !== _instance2 || null === lastHostComponent || null === reactEventName || (_instance2 = getListener(instance, reactEventName), null != _instance2 && inCapturePhase.push(
15300 createDispatchListener(
15301 instance,
15302 _instance2,
15303 lastHostComponent
15304 )
15305 ));
15306 if (accumulateTargetOnly) break;
15307 instance = instance.return;
15308 }
15309 0 < inCapturePhase.length && (reactName = new SyntheticEventCtor(
15310 reactName,
15311 reactEventType,
15312 null,
15313 nativeEvent,
15314 nativeEventTarget
15315 ), dispatchQueue.push({
15316 event: reactName,
15317 listeners: inCapturePhase
15318 }));
15319 }
15320 }
15321 if (0 === (eventSystemFlags & 7)) {
15322 a: {
15323 SyntheticEventCtor = "mouseover" === domEventName || "pointerover" === domEventName;
15324 reactName = "mouseout" === domEventName || "pointerout" === domEventName;
15325 if (SyntheticEventCtor && nativeEvent !== currentReplayingEvent && (reactEventType = nativeEvent.relatedTarget || nativeEvent.fromElement) && (getClosestInstanceFromNode(reactEventType) || reactEventType[internalContainerInstanceKey]))
15326 break a;
15327 if (reactName || SyntheticEventCtor) {
15328 reactEventType = nativeEventTarget.window === nativeEventTarget ? nativeEventTarget : (SyntheticEventCtor = nativeEventTarget.ownerDocument) ? SyntheticEventCtor.defaultView || SyntheticEventCtor.parentWindow : window;
15329 if (reactName) {
15330 if (SyntheticEventCtor = nativeEvent.relatedTarget || nativeEvent.toElement, reactName = targetInst, SyntheticEventCtor = SyntheticEventCtor ? getClosestInstanceFromNode(SyntheticEventCtor) : null, null !== SyntheticEventCtor && (accumulateTargetOnly = getNearestMountedFiber(SyntheticEventCtor), inCapturePhase = SyntheticEventCtor.tag, SyntheticEventCtor !== accumulateTargetOnly || 5 !== inCapturePhase && 27 !== inCapturePhase && 6 !== inCapturePhase))
15331 SyntheticEventCtor = null;
15332 } else reactName = null, SyntheticEventCtor = targetInst;
15333 if (reactName !== SyntheticEventCtor) {
15334 inCapturePhase = SyntheticMouseEvent;
15335 _instance2 = "onMouseLeave";
15336 reactEventName = "onMouseEnter";
15337 instance = "mouse";
15338 if ("pointerout" === domEventName || "pointerover" === domEventName)
15339 inCapturePhase = SyntheticPointerEvent, _instance2 = "onPointerLeave", reactEventName = "onPointerEnter", instance = "pointer";
15340 accumulateTargetOnly = null == reactName ? reactEventType : getNodeFromInstance(reactName);
15341 lastHostComponent = null == SyntheticEventCtor ? reactEventType : getNodeFromInstance(SyntheticEventCtor);
15342 reactEventType = new inCapturePhase(
15343 _instance2,
15344 instance + "leave",
15345 reactName,
15346 nativeEvent,
15347 nativeEventTarget
15348 );
15349 reactEventType.target = accumulateTargetOnly;
15350 reactEventType.relatedTarget = lastHostComponent;
15351 _instance2 = null;
15352 getClosestInstanceFromNode(nativeEventTarget) === targetInst && (inCapturePhase = new inCapturePhase(
15353 reactEventName,
15354 instance + "enter",
15355 SyntheticEventCtor,
15356 nativeEvent,
15357 nativeEventTarget
15358 ), inCapturePhase.target = lastHostComponent, inCapturePhase.relatedTarget = accumulateTargetOnly, _instance2 = inCapturePhase);
15359 accumulateTargetOnly = _instance2;
15360 inCapturePhase = reactName && SyntheticEventCtor ? getLowestCommonAncestor(
15361 reactName,
15362 SyntheticEventCtor,
15363 getParent
15364 ) : null;
15365 null !== reactName && accumulateEnterLeaveListenersForEvent(
15366 dispatchQueue,
15367 reactEventType,
15368 reactName,
15369 inCapturePhase,
15370 false
15371 );
15372 null !== SyntheticEventCtor && null !== accumulateTargetOnly && accumulateEnterLeaveListenersForEvent(
15373 dispatchQueue,
15374 accumulateTargetOnly,
15375 SyntheticEventCtor,
15376 inCapturePhase,
15377 true
15378 );
15379 }
15380 }
15381 }
15382 a: {
15383 reactName = targetInst ? getNodeFromInstance(targetInst) : window;
15384 SyntheticEventCtor = reactName.nodeName && reactName.nodeName.toLowerCase();
15385 if ("select" === SyntheticEventCtor || "input" === SyntheticEventCtor && "file" === reactName.type)
15386 var getTargetInstFunc = getTargetInstForChangeEvent;
15387 else if (isTextInputElement(reactName))
15388 if (isInputEventSupported)
15389 getTargetInstFunc = getTargetInstForInputOrChangeEvent;
15390 else {
15391 getTargetInstFunc = getTargetInstForInputEventPolyfill;
15392 var handleEventFunc = handleEventsForInputEventPolyfill;
15393 }
15394 else
15395 SyntheticEventCtor = reactName.nodeName, !SyntheticEventCtor || "input" !== SyntheticEventCtor.toLowerCase() || "checkbox" !== reactName.type && "radio" !== reactName.type ? targetInst && isCustomElement(targetInst.elementType) && (getTargetInstFunc = getTargetInstForChangeEvent) : getTargetInstFunc = getTargetInstForClickEvent;
15396 if (getTargetInstFunc && (getTargetInstFunc = getTargetInstFunc(domEventName, targetInst))) {
15397 createAndAccumulateChangeEvent(
15398 dispatchQueue,
15399 getTargetInstFunc,
15400 nativeEvent,
15401 nativeEventTarget
15402 );
15403 break a;
15404 }
15405 handleEventFunc && handleEventFunc(domEventName, reactName, targetInst);
15406 }
15407 handleEventFunc = targetInst ? getNodeFromInstance(targetInst) : window;
15408 switch (domEventName) {
15409 case "focusin":
15410 if (isTextInputElement(handleEventFunc) || "true" === handleEventFunc.contentEditable)
15411 activeElement = handleEventFunc, activeElementInst = targetInst, lastSelection = null;
15412 break;
15413 case "focusout":
15414 lastSelection = activeElementInst = activeElement = null;
15415 break;
15416 case "mousedown":
15417 mouseDown = true;
15418 break;
15419 case "contextmenu":
15420 case "mouseup":
15421 case "dragend":
15422 mouseDown = false;
15423 constructSelectEvent(
15424 dispatchQueue,
15425 nativeEvent,
15426 nativeEventTarget
15427 );
15428 break;
15429 case "selectionchange":
15430 if (skipSelectionChangeEvent) break;
15431 case "keydown":
15432 case "keyup":
15433 constructSelectEvent(
15434 dispatchQueue,
15435 nativeEvent,
15436 nativeEventTarget
15437 );
15438 }
15439 var fallbackData;
15440 if (canUseCompositionEvent)
15441 b: {
15442 switch (domEventName) {
15443 case "compositionstart":
15444 var eventType = "onCompositionStart";
15445 break b;
15446 case "compositionend":
15447 eventType = "onCompositionEnd";
15448 break b;
15449 case "compositionupdate":
15450 eventType = "onCompositionUpdate";
15451 break b;
15452 }
15453 eventType = void 0;
15454 }
15455 else
15456 isComposing ? isFallbackCompositionEnd(domEventName, nativeEvent) && (eventType = "onCompositionEnd") : "keydown" === domEventName && nativeEvent.keyCode === START_KEYCODE && (eventType = "onCompositionStart");
15457 eventType && (useFallbackCompositionData && "ko" !== nativeEvent.locale && (isComposing || "onCompositionStart" !== eventType ? "onCompositionEnd" === eventType && isComposing && (fallbackData = getData()) : (root = nativeEventTarget, startText = "value" in root ? root.value : root.textContent, isComposing = true)), handleEventFunc = accumulateTwoPhaseListeners(
15458 targetInst,
15459 eventType
15460 ), 0 < handleEventFunc.length && (eventType = new SyntheticCompositionEvent(
15461 eventType,
15462 domEventName,
15463 null,
15464 nativeEvent,
15465 nativeEventTarget
15466 ), dispatchQueue.push({
15467 event: eventType,
15468 listeners: handleEventFunc
15469 }), fallbackData ? eventType.data = fallbackData : (fallbackData = getDataFromCustomEvent(nativeEvent), null !== fallbackData && (eventType.data = fallbackData))));
15470 if (fallbackData = canUseTextInputEvent ? getNativeBeforeInputChars(domEventName, nativeEvent) : getFallbackBeforeInputChars(domEventName, nativeEvent))
15471 eventType = accumulateTwoPhaseListeners(
15472 targetInst,
15473 "onBeforeInput"
15474 ), 0 < eventType.length && (handleEventFunc = new SyntheticInputEvent(
15475 "onBeforeInput",
15476 "beforeinput",
15477 null,
15478 nativeEvent,
15479 nativeEventTarget
15480 ), dispatchQueue.push({
15481 event: handleEventFunc,
15482 listeners: eventType
15483 }), handleEventFunc.data = fallbackData);
15484 extractEvents$1(
15485 dispatchQueue,
15486 domEventName,
15487 targetInst,
15488 nativeEvent,
15489 nativeEventTarget
15490 );
15491 }
15492 processDispatchQueue(dispatchQueue, eventSystemFlags);
15493 });
15494 }
15495 function createDispatchListener(instance, listener, currentTarget) {
15496 return {
15497 instance,
15498 listener,
15499 currentTarget
15500 };
15501 }
15502 function accumulateTwoPhaseListeners(targetFiber, reactName) {
15503 for (var captureName = reactName + "Capture", listeners = []; null !== targetFiber; ) {
15504 var _instance3 = targetFiber, stateNode = _instance3.stateNode;
15505 _instance3 = _instance3.tag;
15506 5 !== _instance3 && 26 !== _instance3 && 27 !== _instance3 || null === stateNode || (_instance3 = getListener(targetFiber, captureName), null != _instance3 && listeners.unshift(
15507 createDispatchListener(targetFiber, _instance3, stateNode)
15508 ), _instance3 = getListener(targetFiber, reactName), null != _instance3 && listeners.push(
15509 createDispatchListener(targetFiber, _instance3, stateNode)
15510 ));
15511 if (3 === targetFiber.tag) return listeners;
15512 targetFiber = targetFiber.return;
15513 }
15514 return [];
15515 }
15516 function getParent(inst) {
15517 if (null === inst) return null;
15518 do
15519 inst = inst.return;
15520 while (inst && 5 !== inst.tag && 27 !== inst.tag);
15521 return inst ? inst : null;
15522 }
15523 function accumulateEnterLeaveListenersForEvent(dispatchQueue, event, target, common, inCapturePhase) {
15524 for (var registrationName = event._reactName, listeners = []; null !== target && target !== common; ) {
15525 var _instance4 = target, alternate = _instance4.alternate, stateNode = _instance4.stateNode;
15526 _instance4 = _instance4.tag;
15527 if (null !== alternate && alternate === common) break;
15528 5 !== _instance4 && 26 !== _instance4 && 27 !== _instance4 || null === stateNode || (alternate = stateNode, inCapturePhase ? (stateNode = getListener(target, registrationName), null != stateNode && listeners.unshift(
15529 createDispatchListener(target, stateNode, alternate)
15530 )) : inCapturePhase || (stateNode = getListener(target, registrationName), null != stateNode && listeners.push(
15531 createDispatchListener(target, stateNode, alternate)
15532 )));
15533 target = target.return;
15534 }
15535 0 !== listeners.length && dispatchQueue.push({ event, listeners });
15536 }
15537 function validatePropertiesInDevelopment(type, props) {
15538 validateProperties$2(type, props);
15539 "input" !== type && "textarea" !== type && "select" !== type || null == props || null !== props.value || didWarnValueNull || (didWarnValueNull = true, "select" === type && props.multiple ? console.error(
15540 "`value` prop on `%s` should not be null. Consider using an empty array when `multiple` is set to `true` to clear the component or `undefined` for uncontrolled components.",
15541 type
15542 ) : console.error(
15543 "`value` prop on `%s` should not be null. Consider using an empty string to clear the component or `undefined` for uncontrolled components.",
15544 type
15545 ));
15546 var eventRegistry = {
15547 registrationNameDependencies,
15548 possibleRegistrationNames
15549 };
15550 isCustomElement(type) || "string" === typeof props.is || warnUnknownProperties(type, props, eventRegistry);
15551 props.contentEditable && !props.suppressContentEditableWarning && null != props.children && console.error(
15552 "A component is `contentEditable` and contains `children` managed by React. It is now your responsibility to guarantee that none of those nodes are unexpectedly modified or duplicated. This is probably not intentional."
15553 );
15554 }
15555 function warnForPropDifference(propName, serverValue, clientValue, serverDifferences) {
15556 serverValue !== clientValue && (clientValue = normalizeMarkupForTextOrAttribute(clientValue), normalizeMarkupForTextOrAttribute(serverValue) !== clientValue && (serverDifferences[propName] = serverValue));
15557 }
15558 function hasViewTransition(htmlElement) {
15559 return !!(htmlElement.getAttribute("vt-share") || htmlElement.getAttribute("vt-exit") || htmlElement.getAttribute("vt-enter") || htmlElement.getAttribute("vt-update"));
15560 }
15561 function isExpectedViewTransitionName(htmlElement) {
15562 if (!hasViewTransition(htmlElement)) return false;
15563 var expectedVtName = htmlElement.getAttribute("vt-name");
15564 htmlElement = htmlElement.style["view-transition-name"];
15565 return expectedVtName ? expectedVtName === htmlElement : htmlElement.startsWith("_T_");
15566 }
15567 function warnForExtraAttributes(domElement, attributeNames, serverDifferences) {
15568 attributeNames.forEach(function(attributeName) {
15569 "style" === attributeName ? "" !== domElement.getAttribute(attributeName) && (attributeName = domElement.style, (1 === attributeName.length && "view-transition-name" === attributeName[0] || 2 === attributeName.length && "view-transition-class" === attributeName[0] && "view-transition-name" === attributeName[1]) && isExpectedViewTransitionName(domElement) || (serverDifferences.style = getStylesObjectFromElement(domElement))) : serverDifferences[getPropNameFromAttributeName(attributeName)] = domElement.getAttribute(attributeName);
15570 });
15571 }
15572 function warnForInvalidEventListener(registrationName, listener) {
15573 false === listener ? console.error(
15574 "Expected `%s` listener to be a function, instead got `false`.\n\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.",
15575 registrationName,
15576 registrationName,
15577 registrationName
15578 ) : console.error(
15579 "Expected `%s` listener to be a function, instead got a value of `%s` type.",
15580 registrationName,
15581 typeof listener
15582 );
15583 }
15584 function normalizeHTML(parent, html) {
15585 parent = parent.namespaceURI === MATH_NAMESPACE || parent.namespaceURI === SVG_NAMESPACE ? parent.ownerDocument.createElementNS(
15586 parent.namespaceURI,
15587 parent.tagName
15588 ) : parent.ownerDocument.createElement(parent.tagName);
15589 parent.innerHTML = html;
15590 return parent.innerHTML;
15591 }
15592 function normalizeMarkupForTextOrAttribute(markup) {
15593 willCoercionThrow(markup) && (console.error(
15594 "The provided HTML markup uses a value of unsupported type %s. This value must be coerced to a string before using it here.",
15595 typeName(markup)
15596 ), testStringCoercion(markup));
15597 return ("string" === typeof markup ? markup : "" + markup).replace(NORMALIZE_NEWLINES_REGEX, "\n").replace(NORMALIZE_NULL_AND_REPLACEMENT_REGEX, "");
15598 }
15599 function checkForUnmatchedText(serverText, clientText) {
15600 clientText = normalizeMarkupForTextOrAttribute(clientText);
15601 return normalizeMarkupForTextOrAttribute(serverText) === clientText ? true : false;
15602 }
15603 function setProp(domElement, tag, key, value, props, prevValue) {
15604 switch (key) {
15605 case "children":
15606 if ("string" === typeof value)
15607 validateTextNesting(value, tag, false), "body" === tag || "textarea" === tag && "" === value || setTextContent(domElement, value);
15608 else if ("number" === typeof value || "bigint" === typeof value)
15609 validateTextNesting("" + value, tag, false), "body" !== tag && setTextContent(domElement, "" + value);
15610 else return;
15611 break;
15612 case "className":
15613 setValueForKnownAttribute(domElement, "class", value);
15614 break;
15615 case "tabIndex":
15616 setValueForKnownAttribute(domElement, "tabindex", value);
15617 break;
15618 case "dir":
15619 case "role":
15620 case "viewBox":
15621 case "width":
15622 case "height":
15623 setValueForKnownAttribute(domElement, key, value);
15624 break;
15625 case "style":
15626 setValueForStyles(domElement, value, prevValue);
15627 return;
15628 case "data":
15629 if ("object" !== tag) {
15630 setValueForKnownAttribute(domElement, "data", value);
15631 break;
15632 }
15633 case "src":
15634 case "href":
15635 if ("" === value && ("a" !== tag || "href" !== key)) {
15636 "src" === key ? console.error(
15637 'An empty string ("") was passed to the %s attribute. This may cause the browser to download the whole page again over the network. To fix this, either do not render the element at all or pass null to %s instead of an empty string.',
15638 key,
15639 key
15640 ) : console.error(
15641 'An empty string ("") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.',
15642 key,
15643 key
15644 );
15645 domElement.removeAttribute(key);
15646 break;
15647 }
15648 if (null == value || "function" === typeof value || "symbol" === typeof value || "boolean" === typeof value) {
15649 domElement.removeAttribute(key);
15650 break;
15651 }
15652 checkAttributeStringCoercion(value, key);
15653 value = sanitizeURL(value);
15654 domElement.setAttribute(key, value);
15655 break;
15656 case "action":
15657 case "formAction":
15658 null != value && ("form" === tag ? "formAction" === key ? console.error(
15659 "You can only pass the formAction prop to <input> or <button>. Use the action prop on <form>."
15660 ) : "function" === typeof value && (null == props.encType && null == props.method || didWarnFormActionMethod || (didWarnFormActionMethod = true, console.error(
15661 "Cannot specify a encType or method for a form that specifies a function as the action. React provides those automatically. They will get overridden."
15662 )), null == props.target || didWarnFormActionTarget || (didWarnFormActionTarget = true, console.error(
15663 "Cannot specify a target for a form that specifies a function as the action. The function will always be executed in the same window."
15664 ))) : "input" === tag || "button" === tag ? "action" === key ? console.error(
15665 "You can only pass the action prop to <form>. Use the formAction prop on <input> or <button>."
15666 ) : "input" !== tag || "submit" === props.type || "image" === props.type || didWarnFormActionType ? "button" !== tag || null == props.type || "submit" === props.type || didWarnFormActionType ? "function" === typeof value && (null == props.name || didWarnFormActionName || (didWarnFormActionName = true, console.error(
15667 'Cannot specify a "name" prop for a button that specifies a function as a formAction. React needs it to encode which action should be invoked. It will get overridden.'
15668 )), null == props.formEncType && null == props.formMethod || didWarnFormActionMethod || (didWarnFormActionMethod = true, console.error(
15669 "Cannot specify a formEncType or formMethod for a button that specifies a function as a formAction. React provides those automatically. They will get overridden."
15670 )), null == props.formTarget || didWarnFormActionTarget || (didWarnFormActionTarget = true, console.error(
15671 "Cannot specify a formTarget for a button that specifies a function as a formAction. The function will always be executed in the same window."
15672 ))) : (didWarnFormActionType = true, console.error(
15673 'A button can only specify a formAction along with type="submit" or no type.'
15674 )) : (didWarnFormActionType = true, console.error(
15675 'An input can only specify a formAction along with type="submit" or type="image".'
15676 )) : "action" === key ? console.error(
15677 "You can only pass the action prop to <form>."
15678 ) : console.error(
15679 "You can only pass the formAction prop to <input> or <button>."
15680 ));
15681 if ("function" === typeof value) {
15682 domElement.setAttribute(
15683 key,
15684 "javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')"
15685 );
15686 break;
15687 } else
15688 "function" === typeof prevValue && ("formAction" === key ? ("input" !== tag && setProp(domElement, tag, "name", props.name, props, null), setProp(
15689 domElement,
15690 tag,
15691 "formEncType",
15692 props.formEncType,
15693 props,
15694 null
15695 ), setProp(
15696 domElement,
15697 tag,
15698 "formMethod",
15699 props.formMethod,
15700 props,
15701 null
15702 ), setProp(
15703 domElement,
15704 tag,
15705 "formTarget",
15706 props.formTarget,
15707 props,
15708 null
15709 )) : (setProp(
15710 domElement,
15711 tag,
15712 "encType",
15713 props.encType,
15714 props,
15715 null
15716 ), setProp(domElement, tag, "method", props.method, props, null), setProp(
15717 domElement,
15718 tag,
15719 "target",
15720 props.target,
15721 props,
15722 null
15723 )));
15724 if (null == value || "symbol" === typeof value || "boolean" === typeof value) {
15725 domElement.removeAttribute(key);
15726 break;
15727 }
15728 checkAttributeStringCoercion(value, key);
15729 value = sanitizeURL(value);
15730 domElement.setAttribute(key, value);
15731 break;
15732 case "onClick":
15733 null != value && ("function" !== typeof value && warnForInvalidEventListener(key, value), domElement.onclick = noop$1);
15734 return;
15735 case "onScroll":
15736 null != value && ("function" !== typeof value && warnForInvalidEventListener(key, value), listenToNonDelegatedEvent("scroll", domElement));
15737 return;
15738 case "onScrollEnd":
15739 null != value && ("function" !== typeof value && warnForInvalidEventListener(key, value), listenToNonDelegatedEvent("scrollend", domElement));
15740 return;
15741 case "dangerouslySetInnerHTML":
15742 if (null != value) {
15743 if ("object" !== typeof value || !("__html" in value))
15744 throw Error(
15745 "`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information."
15746 );
15747 key = value.__html;
15748 if (null != key) {
15749 if (null != props.children)
15750 throw Error(
15751 "Can only set one of `children` or `props.dangerouslySetInnerHTML`."
15752 );
15753 (null != prevValue ? prevValue.__html : void 0) !== key && (domElement.innerHTML = key);
15754 }
15755 }
15756 break;
15757 case "multiple":
15758 domElement.multiple = value && "function" !== typeof value && "symbol" !== typeof value;
15759 break;
15760 case "muted":
15761 domElement.muted = value && "function" !== typeof value && "symbol" !== typeof value;
15762 break;
15763 case "suppressContentEditableWarning":
15764 case "suppressHydrationWarning":
15765 case "defaultValue":
15766 case "defaultChecked":
15767 case "innerHTML":
15768 case "ref":
15769 break;
15770 case "autoFocus":
15771 break;
15772 case "xlinkHref":
15773 if (null == value || "function" === typeof value || "boolean" === typeof value || "symbol" === typeof value) {
15774 domElement.removeAttribute("xlink:href");
15775 break;
15776 }
15777 checkAttributeStringCoercion(value, key);
15778 key = sanitizeURL(value);
15779 domElement.setAttributeNS(xlinkNamespace, "xlink:href", key);
15780 break;
15781 case "contentEditable":
15782 case "spellCheck":
15783 case "draggable":
15784 case "value":
15785 case "autoReverse":
15786 case "externalResourcesRequired":
15787 case "focusable":
15788 case "preserveAlpha":
15789 null != value && "function" !== typeof value && "symbol" !== typeof value ? (checkAttributeStringCoercion(value, key), domElement.setAttribute(key, value)) : domElement.removeAttribute(key);
15790 break;
15791 case "inert":
15792 "" !== value || didWarnForNewBooleanPropsWithEmptyValue[key] || (didWarnForNewBooleanPropsWithEmptyValue[key] = true, console.error(
15793 "Received an empty string for a boolean attribute `%s`. This will treat the attribute as if it were false. Either pass `false` to silence this warning, or pass `true` if you used an empty string in earlier versions of React to indicate this attribute is true.",
15794 key
15795 ));
15796 case "allowFullScreen":
15797 case "async":
15798 case "autoPlay":
15799 case "controls":
15800 case "credentialless":
15801 case "default":
15802 case "defer":
15803 case "disabled":
15804 case "disablePictureInPicture":
15805 case "disableRemotePlayback":
15806 case "formNoValidate":
15807 case "hidden":
15808 case "loop":
15809 case "noModule":
15810 case "noValidate":
15811 case "open":
15812 case "playsInline":
15813 case "readOnly":
15814 case "required":
15815 case "reversed":
15816 case "scoped":
15817 case "seamless":
15818 case "itemScope":
15819 value && "function" !== typeof value && "symbol" !== typeof value ? domElement.setAttribute(key, "") : domElement.removeAttribute(key);
15820 break;
15821 case "capture":
15822 case "download":
15823 true === value ? domElement.setAttribute(key, "") : false !== value && null != value && "function" !== typeof value && "symbol" !== typeof value ? (checkAttributeStringCoercion(value, key), domElement.setAttribute(key, value)) : domElement.removeAttribute(key);
15824 break;
15825 case "cols":
15826 case "rows":
15827 case "size":
15828 case "span":
15829 null != value && "function" !== typeof value && "symbol" !== typeof value && !isNaN(value) && 1 <= value ? (checkAttributeStringCoercion(value, key), domElement.setAttribute(key, value)) : domElement.removeAttribute(key);
15830 break;
15831 case "rowSpan":
15832 case "start":
15833 null == value || "function" === typeof value || "symbol" === typeof value || isNaN(value) ? domElement.removeAttribute(key) : (checkAttributeStringCoercion(value, key), domElement.setAttribute(key, value));
15834 break;
15835 case "popover":
15836 listenToNonDelegatedEvent("beforetoggle", domElement);
15837 listenToNonDelegatedEvent("toggle", domElement);
15838 setValueForAttribute(domElement, "popover", value);
15839 break;
15840 case "xlinkActuate":
15841 setValueForNamespacedAttribute(
15842 domElement,
15843 xlinkNamespace,
15844 "xlink:actuate",
15845 value
15846 );
15847 break;
15848 case "xlinkArcrole":
15849 setValueForNamespacedAttribute(
15850 domElement,
15851 xlinkNamespace,
15852 "xlink:arcrole",
15853 value
15854 );
15855 break;
15856 case "xlinkRole":
15857 setValueForNamespacedAttribute(
15858 domElement,
15859 xlinkNamespace,
15860 "xlink:role",
15861 value
15862 );
15863 break;
15864 case "xlinkShow":
15865 setValueForNamespacedAttribute(
15866 domElement,
15867 xlinkNamespace,
15868 "xlink:show",
15869 value
15870 );
15871 break;
15872 case "xlinkTitle":
15873 setValueForNamespacedAttribute(
15874 domElement,
15875 xlinkNamespace,
15876 "xlink:title",
15877 value
15878 );
15879 break;
15880 case "xlinkType":
15881 setValueForNamespacedAttribute(
15882 domElement,
15883 xlinkNamespace,
15884 "xlink:type",
15885 value
15886 );
15887 break;
15888 case "xmlBase":
15889 setValueForNamespacedAttribute(
15890 domElement,
15891 xmlNamespace,
15892 "xml:base",
15893 value
15894 );
15895 break;
15896 case "xmlLang":
15897 setValueForNamespacedAttribute(
15898 domElement,
15899 xmlNamespace,
15900 "xml:lang",
15901 value
15902 );
15903 break;
15904 case "xmlSpace":
15905 setValueForNamespacedAttribute(
15906 domElement,
15907 xmlNamespace,
15908 "xml:space",
15909 value
15910 );
15911 break;
15912 case "is":
15913 null != prevValue && console.error(
15914 'Cannot update the "is" prop after it has been initialized.'
15915 );
15916 setValueForAttribute(domElement, "is", value);
15917 break;
15918 case "innerText":
15919 case "textContent":
15920 return;
15921 case "popoverTarget":
15922 didWarnPopoverTargetObject || null == value || "object" !== typeof value || (didWarnPopoverTargetObject = true, console.error(
15923 "The `popoverTarget` prop expects the ID of an Element as a string. Received %s instead.",
15924 value
15925 ));
15926 default:
15927 if (!(2 < key.length) || "o" !== key[0] && "O" !== key[0] || "n" !== key[1] && "N" !== key[1])
15928 key = getAttributeAlias(key), setValueForAttribute(domElement, key, value);
15929 else {
15930 registrationNameDependencies.hasOwnProperty(key) && null != value && "function" !== typeof value && warnForInvalidEventListener(key, value);
15931 return;
15932 }
15933 }
15934 viewTransitionMutationContext = true;
15935 }
15936 function setPropOnCustomElement(domElement, tag, key, value, props, prevValue) {
15937 switch (key) {
15938 case "style":
15939 setValueForStyles(domElement, value, prevValue);
15940 return;
15941 case "dangerouslySetInnerHTML":
15942 if (null != value) {
15943 if ("object" !== typeof value || !("__html" in value))
15944 throw Error(
15945 "`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information."
15946 );
15947 key = value.__html;
15948 if (null != key) {
15949 if (null != props.children)
15950 throw Error(
15951 "Can only set one of `children` or `props.dangerouslySetInnerHTML`."
15952 );
15953 (null != prevValue ? prevValue.__html : void 0) !== key && (domElement.innerHTML = key);
15954 }
15955 }
15956 break;
15957 case "children":
15958 if ("string" === typeof value) setTextContent(domElement, value);
15959 else if ("number" === typeof value || "bigint" === typeof value)
15960 setTextContent(domElement, "" + value);
15961 else return;
15962 break;
15963 case "onScroll":
15964 null != value && ("function" !== typeof value && warnForInvalidEventListener(key, value), listenToNonDelegatedEvent("scroll", domElement));
15965 return;
15966 case "onScrollEnd":
15967 null != value && ("function" !== typeof value && warnForInvalidEventListener(key, value), listenToNonDelegatedEvent("scrollend", domElement));
15968 return;
15969 case "onClick":
15970 null != value && ("function" !== typeof value && warnForInvalidEventListener(key, value), domElement.onclick = noop$1);
15971 return;
15972 case "suppressContentEditableWarning":
15973 case "suppressHydrationWarning":
15974 case "innerHTML":
15975 case "ref":
15976 return;
15977 case "innerText":
15978 case "textContent":
15979 return;
15980 default:
15981 if (registrationNameDependencies.hasOwnProperty(key))
15982 null != value && "function" !== typeof value && warnForInvalidEventListener(key, value);
15983 else
15984 a: {
15985 if ("o" === key[0] && "n" === key[1] && (props = key.endsWith("Capture"), prevValue = key.slice(2, props ? key.length - 7 : void 0), tag = domElement[internalPropsKey] || null, tag = null != tag ? tag[key] : null, "function" === typeof tag && domElement.removeEventListener(prevValue, tag, props), "function" === typeof value)) {
15986 "function" !== typeof tag && null !== tag && (key in domElement ? domElement[key] = null : domElement.hasAttribute(key) && domElement.removeAttribute(key));
15987 domElement.addEventListener(prevValue, value, props);
15988 break a;
15989 }
15990 viewTransitionMutationContext = true;
15991 key in domElement ? domElement[key] = value : true === value ? domElement.setAttribute(key, "") : setValueForAttribute(domElement, key, value);
15992 }
15993 return;
15994 }
15995 viewTransitionMutationContext = true;
15996 }
15997 function setInitialProperties(domElement, tag, props) {
15998 validatePropertiesInDevelopment(tag, props);
15999 switch (tag) {
16000 case "div":
16001 case "span":
16002 case "svg":
16003 case "path":
16004 case "a":
16005 case "g":
16006 case "p":
16007 case "li":
16008 break;
16009 case "img":
16010 listenToNonDelegatedEvent("error", domElement);
16011 listenToNonDelegatedEvent("load", domElement);
16012 var hasSrc = false, hasSrcSet = false, propKey;
16013 for (propKey in props)
16014 if (props.hasOwnProperty(propKey)) {
16015 var propValue = props[propKey];
16016 if (null != propValue)
16017 switch (propKey) {
16018 case "src":
16019 hasSrc = true;
16020 break;
16021 case "srcSet":
16022 hasSrcSet = true;
16023 break;
16024 case "children":
16025 case "dangerouslySetInnerHTML":
16026 throw Error(
16027 tag + " is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
16028 );
16029 default:
16030 setProp(domElement, tag, propKey, propValue, props, null);
16031 }
16032 }
16033 hasSrcSet && setProp(domElement, tag, "srcSet", props.srcSet, props, null);
16034 hasSrc && setProp(domElement, tag, "src", props.src, props, null);
16035 return;
16036 case "input":
16037 checkControlledValueProps("input", props);
16038 listenToNonDelegatedEvent("invalid", domElement);
16039 var defaultValue = propKey = propValue = hasSrcSet = null, checked = null, defaultChecked = null;
16040 for (hasSrc in props)
16041 if (props.hasOwnProperty(hasSrc)) {
16042 var _propValue = props[hasSrc];
16043 if (null != _propValue)
16044 switch (hasSrc) {
16045 case "name":
16046 hasSrcSet = _propValue;
16047 break;
16048 case "type":
16049 propValue = _propValue;
16050 break;
16051 case "checked":
16052 checked = _propValue;
16053 break;
16054 case "defaultChecked":
16055 defaultChecked = _propValue;
16056 break;
16057 case "value":
16058 propKey = _propValue;
16059 break;
16060 case "defaultValue":
16061 defaultValue = _propValue;
16062 break;
16063 case "children":
16064 case "dangerouslySetInnerHTML":
16065 if (null != _propValue)
16066 throw Error(
16067 tag + " is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
16068 );
16069 break;
16070 default:
16071 setProp(domElement, tag, hasSrc, _propValue, props, null);
16072 }
16073 }
16074 validateInputProps(domElement, props);
16075 initInput(
16076 domElement,
16077 propKey,
16078 defaultValue,
16079 checked,
16080 defaultChecked,
16081 propValue,
16082 hasSrcSet,
16083 false
16084 );
16085 return;
16086 case "select":
16087 checkControlledValueProps("select", props);
16088 listenToNonDelegatedEvent("invalid", domElement);
16089 hasSrc = propValue = propKey = null;
16090 for (hasSrcSet in props)
16091 if (props.hasOwnProperty(hasSrcSet) && (defaultValue = props[hasSrcSet], null != defaultValue))
16092 switch (hasSrcSet) {
16093 case "value":
16094 propKey = defaultValue;
16095 break;
16096 case "defaultValue":
16097 propValue = defaultValue;
16098 break;
16099 case "multiple":
16100 hasSrc = defaultValue;
16101 default:
16102 setProp(
16103 domElement,
16104 tag,
16105 hasSrcSet,
16106 defaultValue,
16107 props,
16108 null
16109 );
16110 }
16111 validateSelectProps(domElement, props);
16112 tag = propKey;
16113 props = propValue;
16114 domElement.multiple = !!hasSrc;
16115 null != tag ? updateOptions(domElement, !!hasSrc, tag, false) : null != props && updateOptions(domElement, !!hasSrc, props, true);
16116 return;
16117 case "textarea":
16118 checkControlledValueProps("textarea", props);
16119 listenToNonDelegatedEvent("invalid", domElement);
16120 propKey = hasSrcSet = hasSrc = null;
16121 for (propValue in props)
16122 if (props.hasOwnProperty(propValue) && (defaultValue = props[propValue], null != defaultValue))
16123 switch (propValue) {
16124 case "value":
16125 hasSrc = defaultValue;
16126 break;
16127 case "defaultValue":
16128 hasSrcSet = defaultValue;
16129 break;
16130 case "children":
16131 propKey = defaultValue;
16132 break;
16133 case "dangerouslySetInnerHTML":
16134 if (null != defaultValue)
16135 throw Error(
16136 "`dangerouslySetInnerHTML` does not make sense on <textarea>."
16137 );
16138 break;
16139 default:
16140 setProp(
16141 domElement,
16142 tag,
16143 propValue,
16144 defaultValue,
16145 props,
16146 null
16147 );
16148 }
16149 validateTextareaProps(domElement, props);
16150 initTextarea(domElement, hasSrc, hasSrcSet, propKey);
16151 return;
16152 case "option":
16153 validateOptionProps(domElement, props);
16154 for (checked in props)
16155 if (props.hasOwnProperty(checked) && (hasSrc = props[checked], null != hasSrc))
16156 switch (checked) {
16157 case "selected":
16158 domElement.selected = hasSrc && "function" !== typeof hasSrc && "symbol" !== typeof hasSrc;
16159 break;
16160 default:
16161 setProp(domElement, tag, checked, hasSrc, props, null);
16162 }
16163 return;
16164 case "dialog":
16165 listenToNonDelegatedEvent("beforetoggle", domElement);
16166 listenToNonDelegatedEvent("toggle", domElement);
16167 listenToNonDelegatedEvent("cancel", domElement);
16168 listenToNonDelegatedEvent("close", domElement);
16169 break;
16170 case "iframe":
16171 case "object":
16172 listenToNonDelegatedEvent("load", domElement);
16173 break;
16174 case "video":
16175 case "audio":
16176 for (hasSrc = 0; hasSrc < mediaEventTypes.length; hasSrc++)
16177 listenToNonDelegatedEvent(mediaEventTypes[hasSrc], domElement);
16178 break;
16179 case "image":
16180 listenToNonDelegatedEvent("error", domElement);
16181 listenToNonDelegatedEvent("load", domElement);
16182 break;
16183 case "details":
16184 listenToNonDelegatedEvent("toggle", domElement);
16185 break;
16186 case "embed":
16187 case "source":
16188 case "link":
16189 listenToNonDelegatedEvent("error", domElement), listenToNonDelegatedEvent("load", domElement);
16190 case "area":
16191 case "base":
16192 case "br":
16193 case "col":
16194 case "hr":
16195 case "keygen":
16196 case "meta":
16197 case "param":
16198 case "track":
16199 case "wbr":
16200 case "menuitem":
16201 for (defaultChecked in props)
16202 if (props.hasOwnProperty(defaultChecked) && (hasSrc = props[defaultChecked], null != hasSrc))
16203 switch (defaultChecked) {
16204 case "children":
16205 case "dangerouslySetInnerHTML":
16206 throw Error(
16207 tag + " is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
16208 );
16209 default:
16210 setProp(domElement, tag, defaultChecked, hasSrc, props, null);
16211 }
16212 return;
16213 default:
16214 if (isCustomElement(tag)) {
16215 for (_propValue in props)
16216 props.hasOwnProperty(_propValue) && (hasSrc = props[_propValue], void 0 !== hasSrc && setPropOnCustomElement(
16217 domElement,
16218 tag,
16219 _propValue,
16220 hasSrc,
16221 props,
16222 void 0
16223 ));
16224 return;
16225 }
16226 }
16227 for (defaultValue in props)
16228 props.hasOwnProperty(defaultValue) && (hasSrc = props[defaultValue], null != hasSrc && setProp(domElement, tag, defaultValue, hasSrc, props, null));
16229 }
16230 function updateProperties(domElement, tag, lastProps, nextProps) {
16231 validatePropertiesInDevelopment(tag, nextProps);
16232 switch (tag) {
16233 case "div":
16234 case "span":
16235 case "svg":
16236 case "path":
16237 case "a":
16238 case "g":
16239 case "p":
16240 case "li":
16241 break;
16242 case "input":
16243 var name = null, type = null, value = null, defaultValue = null, lastDefaultValue = null, checked = null, defaultChecked = null;
16244 for (propKey in lastProps) {
16245 var lastProp = lastProps[propKey];
16246 if (lastProps.hasOwnProperty(propKey) && null != lastProp)
16247 switch (propKey) {
16248 case "checked":
16249 break;
16250 case "value":
16251 break;
16252 case "defaultValue":
16253 lastDefaultValue = lastProp;
16254 default:
16255 nextProps.hasOwnProperty(propKey) || setProp(
16256 domElement,
16257 tag,
16258 propKey,
16259 null,
16260 nextProps,
16261 lastProp
16262 );
16263 }
16264 }
16265 for (var _propKey8 in nextProps) {
16266 var propKey = nextProps[_propKey8];
16267 lastProp = lastProps[_propKey8];
16268 if (nextProps.hasOwnProperty(_propKey8) && (null != propKey || null != lastProp))
16269 switch (_propKey8) {
16270 case "type":
16271 propKey !== lastProp && (viewTransitionMutationContext = true);
16272 type = propKey;
16273 break;
16274 case "name":
16275 propKey !== lastProp && (viewTransitionMutationContext = true);
16276 name = propKey;
16277 break;
16278 case "checked":
16279 propKey !== lastProp && (viewTransitionMutationContext = true);
16280 checked = propKey;
16281 break;
16282 case "defaultChecked":
16283 propKey !== lastProp && (viewTransitionMutationContext = true);
16284 defaultChecked = propKey;
16285 break;
16286 case "value":
16287 propKey !== lastProp && (viewTransitionMutationContext = true);
16288 value = propKey;
16289 break;
16290 case "defaultValue":
16291 propKey !== lastProp && (viewTransitionMutationContext = true);
16292 defaultValue = propKey;
16293 break;
16294 case "children":
16295 case "dangerouslySetInnerHTML":
16296 if (null != propKey)
16297 throw Error(
16298 tag + " is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
16299 );
16300 break;
16301 default:
16302 propKey !== lastProp && setProp(
16303 domElement,
16304 tag,
16305 _propKey8,
16306 propKey,
16307 nextProps,
16308 lastProp
16309 );
16310 }
16311 }
16312 tag = "checkbox" === lastProps.type || "radio" === lastProps.type ? null != lastProps.checked : null != lastProps.value;
16313 nextProps = "checkbox" === nextProps.type || "radio" === nextProps.type ? null != nextProps.checked : null != nextProps.value;
16314 tag || !nextProps || didWarnUncontrolledToControlled || (console.error(
16315 "A component is changing an uncontrolled input to be controlled. This is likely caused by the value changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://react.dev/link/controlled-components"
16316 ), didWarnUncontrolledToControlled = true);
16317 !tag || nextProps || didWarnControlledToUncontrolled || (console.error(
16318 "A component is changing a controlled input to be uncontrolled. This is likely caused by the value changing from a defined to undefined, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://react.dev/link/controlled-components"
16319 ), didWarnControlledToUncontrolled = true);
16320 updateInput(
16321 domElement,
16322 value,
16323 defaultValue,
16324 lastDefaultValue,
16325 checked,
16326 defaultChecked,
16327 type,
16328 name
16329 );
16330 return;
16331 case "select":
16332 propKey = value = defaultValue = _propKey8 = null;
16333 for (type in lastProps)
16334 if (lastDefaultValue = lastProps[type], lastProps.hasOwnProperty(type) && null != lastDefaultValue)
16335 switch (type) {
16336 case "value":
16337 break;
16338 case "multiple":
16339 propKey = lastDefaultValue;
16340 default:
16341 nextProps.hasOwnProperty(type) || setProp(
16342 domElement,
16343 tag,
16344 type,
16345 null,
16346 nextProps,
16347 lastDefaultValue
16348 );
16349 }
16350 for (name in nextProps)
16351 if (type = nextProps[name], lastDefaultValue = lastProps[name], nextProps.hasOwnProperty(name) && (null != type || null != lastDefaultValue))
16352 switch (name) {
16353 case "value":
16354 type !== lastDefaultValue && (viewTransitionMutationContext = true);
16355 _propKey8 = type;
16356 break;
16357 case "defaultValue":
16358 type !== lastDefaultValue && (viewTransitionMutationContext = true);
16359 defaultValue = type;
16360 break;
16361 case "multiple":
16362 type !== lastDefaultValue && (viewTransitionMutationContext = true), value = type;
16363 default:
16364 type !== lastDefaultValue && setProp(
16365 domElement,
16366 tag,
16367 name,
16368 type,
16369 nextProps,
16370 lastDefaultValue
16371 );
16372 }
16373 nextProps = defaultValue;
16374 tag = value;
16375 lastProps = propKey;
16376 null != _propKey8 ? updateOptions(domElement, !!tag, _propKey8, false) : !!lastProps !== !!tag && (null != nextProps ? updateOptions(domElement, !!tag, nextProps, true) : updateOptions(domElement, !!tag, tag ? [] : "", false));
16377 return;
16378 case "textarea":
16379 propKey = _propKey8 = null;
16380 for (defaultValue in lastProps)
16381 if (name = lastProps[defaultValue], lastProps.hasOwnProperty(defaultValue) && null != name && !nextProps.hasOwnProperty(defaultValue))
16382 switch (defaultValue) {
16383 case "value":
16384 break;
16385 case "children":
16386 break;
16387 default:
16388 setProp(domElement, tag, defaultValue, null, nextProps, name);
16389 }
16390 for (value in nextProps)
16391 if (name = nextProps[value], type = lastProps[value], nextProps.hasOwnProperty(value) && (null != name || null != type))
16392 switch (value) {
16393 case "value":
16394 name !== type && (viewTransitionMutationContext = true);
16395 _propKey8 = name;
16396 break;
16397 case "defaultValue":
16398 name !== type && (viewTransitionMutationContext = true);
16399 propKey = name;
16400 break;
16401 case "children":
16402 break;
16403 case "dangerouslySetInnerHTML":
16404 if (null != name)
16405 throw Error(
16406 "`dangerouslySetInnerHTML` does not make sense on <textarea>."
16407 );
16408 break;
16409 default:
16410 name !== type && setProp(domElement, tag, value, name, nextProps, type);
16411 }
16412 updateTextarea(domElement, _propKey8, propKey);
16413 return;
16414 case "option":
16415 for (var _propKey13 in lastProps)
16416 if (_propKey8 = lastProps[_propKey13], lastProps.hasOwnProperty(_propKey13) && null != _propKey8 && !nextProps.hasOwnProperty(_propKey13))
16417 switch (_propKey13) {
16418 case "selected":
16419 domElement.selected = false;
16420 break;
16421 default:
16422 setProp(
16423 domElement,
16424 tag,
16425 _propKey13,
16426 null,
16427 nextProps,
16428 _propKey8
16429 );
16430 }
16431 for (lastDefaultValue in nextProps)
16432 if (_propKey8 = nextProps[lastDefaultValue], propKey = lastProps[lastDefaultValue], nextProps.hasOwnProperty(lastDefaultValue) && _propKey8 !== propKey && (null != _propKey8 || null != propKey))
16433 switch (lastDefaultValue) {
16434 case "selected":
16435 _propKey8 !== propKey && (viewTransitionMutationContext = true);
16436 domElement.selected = _propKey8 && "function" !== typeof _propKey8 && "symbol" !== typeof _propKey8;
16437 break;
16438 default:
16439 setProp(
16440 domElement,
16441 tag,
16442 lastDefaultValue,
16443 _propKey8,
16444 nextProps,
16445 propKey
16446 );
16447 }
16448 return;
16449 case "img":
16450 case "link":
16451 case "area":
16452 case "base":
16453 case "br":
16454 case "col":
16455 case "embed":
16456 case "hr":
16457 case "keygen":
16458 case "meta":
16459 case "param":
16460 case "source":
16461 case "track":
16462 case "wbr":
16463 case "menuitem":
16464 for (var _propKey15 in lastProps)
16465 _propKey8 = lastProps[_propKey15], lastProps.hasOwnProperty(_propKey15) && null != _propKey8 && !nextProps.hasOwnProperty(_propKey15) && setProp(
16466 domElement,
16467 tag,
16468 _propKey15,
16469 null,
16470 nextProps,
16471 _propKey8
16472 );
16473 for (checked in nextProps)
16474 if (_propKey8 = nextProps[checked], propKey = lastProps[checked], nextProps.hasOwnProperty(checked) && _propKey8 !== propKey && (null != _propKey8 || null != propKey))
16475 switch (checked) {
16476 case "children":
16477 case "dangerouslySetInnerHTML":
16478 if (null != _propKey8)
16479 throw Error(
16480 tag + " is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
16481 );
16482 break;
16483 default:
16484 setProp(
16485 domElement,
16486 tag,
16487 checked,
16488 _propKey8,
16489 nextProps,
16490 propKey
16491 );
16492 }
16493 return;
16494 default:
16495 if (isCustomElement(tag)) {
16496 for (var _propKey17 in lastProps)
16497 _propKey8 = lastProps[_propKey17], lastProps.hasOwnProperty(_propKey17) && void 0 !== _propKey8 && !nextProps.hasOwnProperty(_propKey17) && setPropOnCustomElement(
16498 domElement,
16499 tag,
16500 _propKey17,
16501 void 0,
16502 nextProps,
16503 _propKey8
16504 );
16505 for (defaultChecked in nextProps)
16506 _propKey8 = nextProps[defaultChecked], propKey = lastProps[defaultChecked], !nextProps.hasOwnProperty(defaultChecked) || _propKey8 === propKey || void 0 === _propKey8 && void 0 === propKey || setPropOnCustomElement(
16507 domElement,
16508 tag,
16509 defaultChecked,
16510 _propKey8,
16511 nextProps,
16512 propKey
16513 );
16514 return;
16515 }
16516 }
16517 for (var _propKey19 in lastProps)
16518 _propKey8 = lastProps[_propKey19], lastProps.hasOwnProperty(_propKey19) && null != _propKey8 && !nextProps.hasOwnProperty(_propKey19) && setProp(domElement, tag, _propKey19, null, nextProps, _propKey8);
16519 for (lastProp in nextProps)
16520 _propKey8 = nextProps[lastProp], propKey = lastProps[lastProp], !nextProps.hasOwnProperty(lastProp) || _propKey8 === propKey || null == _propKey8 && null == propKey || setProp(domElement, tag, lastProp, _propKey8, nextProps, propKey);
16521 }
16522 function getPropNameFromAttributeName(attrName) {
16523 switch (attrName) {
16524 case "class":
16525 return "className";
16526 case "for":
16527 return "htmlFor";
16528 default:
16529 return attrName;
16530 }
16531 }
16532 function getStylesObjectFromElement(domElement) {
16533 for (var serverValueInObjectForm = {}, style2 = domElement.style, i = 0; i < style2.length; i++) {
16534 var styleName = style2[i];
16535 "view-transition-name" === styleName && isExpectedViewTransitionName(domElement) || (serverValueInObjectForm[styleName] = style2.getPropertyValue(styleName));
16536 }
16537 return serverValueInObjectForm;
16538 }
16539 function diffHydratedStyles(domElement, value$jscomp$0, serverDifferences) {
16540 if (null != value$jscomp$0 && "object" !== typeof value$jscomp$0)
16541 console.error(
16542 "The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX."
16543 );
16544 else {
16545 var clientValue;
16546 var delimiter = clientValue = "", styleName;
16547 for (styleName in value$jscomp$0)
16548 if (value$jscomp$0.hasOwnProperty(styleName)) {
16549 var value = value$jscomp$0[styleName];
16550 null != value && "boolean" !== typeof value && "" !== value && (0 === styleName.indexOf("--") ? (checkCSSPropertyStringCoercion(value, styleName), clientValue += delimiter + styleName + ":" + ("" + value).trim()) : "number" !== typeof value || 0 === value || unitlessNumbers.has(styleName) ? (checkCSSPropertyStringCoercion(value, styleName), clientValue += delimiter + styleName.replace(uppercasePattern, "-$1").toLowerCase().replace(msPattern$1, "-ms-") + ":" + ("" + value).trim()) : clientValue += delimiter + styleName.replace(uppercasePattern, "-$1").toLowerCase().replace(msPattern$1, "-ms-") + ":" + value + "px", delimiter = ";");
16551 }
16552 clientValue = clientValue || null;
16553 value$jscomp$0 = domElement.getAttribute("style");
16554 value$jscomp$0 !== clientValue && (clientValue = normalizeMarkupForTextOrAttribute(clientValue), value$jscomp$0 = normalizeMarkupForTextOrAttribute(value$jscomp$0), value$jscomp$0 === clientValue || ";" === value$jscomp$0[value$jscomp$0.length - 1] && hasViewTransition(domElement) || (serverDifferences.style = getStylesObjectFromElement(domElement)));
16555 }
16556 }
16557 function hydrateAttribute(domElement, propKey, attributeName, value, extraAttributes, serverDifferences) {
16558 extraAttributes.delete(attributeName);
16559 domElement = domElement.getAttribute(attributeName);
16560 if (null === domElement)
16561 switch (typeof value) {
16562 case "undefined":
16563 case "function":
16564 case "symbol":
16565 case "boolean":
16566 return;
16567 }
16568 else if (null != value)
16569 switch (typeof value) {
16570 case "function":
16571 case "symbol":
16572 case "boolean":
16573 break;
16574 default:
16575 if (checkAttributeStringCoercion(value, propKey), domElement === "" + value)
16576 return;
16577 }
16578 warnForPropDifference(propKey, domElement, value, serverDifferences);
16579 }
16580 function hydrateBooleanAttribute(domElement, propKey, attributeName, value, extraAttributes, serverDifferences) {
16581 extraAttributes.delete(attributeName);
16582 domElement = domElement.getAttribute(attributeName);
16583 if (null === domElement) {
16584 switch (typeof value) {
16585 case "function":
16586 case "symbol":
16587 return;
16588 }
16589 if (!value) return;
16590 } else
16591 switch (typeof value) {
16592 case "function":
16593 case "symbol":
16594 break;
16595 default:
16596 if (value) return;
16597 }
16598 warnForPropDifference(propKey, domElement, value, serverDifferences);
16599 }
16600 function hydrateBooleanishAttribute(domElement, propKey, attributeName, value, extraAttributes, serverDifferences) {
16601 extraAttributes.delete(attributeName);
16602 domElement = domElement.getAttribute(attributeName);
16603 if (null === domElement)
16604 switch (typeof value) {
16605 case "undefined":
16606 case "function":
16607 case "symbol":
16608 return;
16609 }
16610 else if (null != value)
16611 switch (typeof value) {
16612 case "function":
16613 case "symbol":
16614 break;
16615 default:
16616 if (checkAttributeStringCoercion(value, attributeName), domElement === "" + value)
16617 return;
16618 }
16619 warnForPropDifference(propKey, domElement, value, serverDifferences);
16620 }
16621 function hydrateNumericAttribute(domElement, propKey, attributeName, value, extraAttributes, serverDifferences) {
16622 extraAttributes.delete(attributeName);
16623 domElement = domElement.getAttribute(attributeName);
16624 if (null === domElement)
16625 switch (typeof value) {
16626 case "undefined":
16627 case "function":
16628 case "symbol":
16629 case "boolean":
16630 return;
16631 default:
16632 if (isNaN(value)) return;
16633 }
16634 else if (null != value)
16635 switch (typeof value) {
16636 case "function":
16637 case "symbol":
16638 case "boolean":
16639 break;
16640 default:
16641 if (!isNaN(value) && (checkAttributeStringCoercion(value, propKey), domElement === "" + value))
16642 return;
16643 }
16644 warnForPropDifference(propKey, domElement, value, serverDifferences);
16645 }
16646 function hydrateSanitizedAttribute(domElement, propKey, attributeName, value, extraAttributes, serverDifferences) {
16647 extraAttributes.delete(attributeName);
16648 domElement = domElement.getAttribute(attributeName);
16649 if (null === domElement)
16650 switch (typeof value) {
16651 case "undefined":
16652 case "function":
16653 case "symbol":
16654 case "boolean":
16655 return;
16656 }
16657 else if (null != value)
16658 switch (typeof value) {
16659 case "function":
16660 case "symbol":
16661 case "boolean":
16662 break;
16663 default:
16664 if (checkAttributeStringCoercion(value, propKey), attributeName = sanitizeURL("" + value), domElement === attributeName)
16665 return;
16666 }
16667 warnForPropDifference(propKey, domElement, value, serverDifferences);
16668 }
16669 function diffHydratedProperties(domElement, tag, props, hostContext) {
16670 for (var serverDifferences = {}, extraAttributes = /* @__PURE__ */ new Set(), attributes = domElement.attributes, i = 0; i < attributes.length; i++)
16671 switch (attributes[i].name.toLowerCase()) {
16672 case "value":
16673 break;
16674 case "checked":
16675 break;
16676 case "selected":
16677 break;
16678 case "vt-name":
16679 case "vt-update":
16680 case "vt-enter":
16681 case "vt-exit":
16682 case "vt-share":
16683 case "vt-parent-enter":
16684 case "vt-parent-exit":
16685 break;
16686 default:
16687 extraAttributes.add(attributes[i].name);
16688 }
16689 if (isCustomElement(tag))
16690 for (var propKey in props) {
16691 if (props.hasOwnProperty(propKey)) {
16692 var value = props[propKey];
16693 if (null != value) {
16694 if (registrationNameDependencies.hasOwnProperty(propKey))
16695 "function" !== typeof value && warnForInvalidEventListener(propKey, value);
16696 else if (true !== props.suppressHydrationWarning)
16697 switch (propKey) {
16698 case "children":
16699 "string" !== typeof value && "number" !== typeof value || warnForPropDifference(
16700 "children",
16701 domElement.textContent,
16702 value,
16703 serverDifferences
16704 );
16705 continue;
16706 case "suppressContentEditableWarning":
16707 case "suppressHydrationWarning":
16708 case "defaultValue":
16709 case "defaultChecked":
16710 case "innerHTML":
16711 case "ref":
16712 continue;
16713 case "dangerouslySetInnerHTML":
16714 attributes = domElement.innerHTML;
16715 value = value ? value.__html : void 0;
16716 null != value && (value = normalizeHTML(domElement, value), warnForPropDifference(
16717 propKey,
16718 attributes,
16719 value,
16720 serverDifferences
16721 ));
16722 continue;
16723 case "style":
16724 extraAttributes.delete(propKey);
16725 diffHydratedStyles(domElement, value, serverDifferences);
16726 continue;
16727 case "offsetParent":
16728 case "offsetTop":
16729 case "offsetLeft":
16730 case "offsetWidth":
16731 case "offsetHeight":
16732 case "isContentEditable":
16733 case "outerText":
16734 case "outerHTML":
16735 extraAttributes.delete(propKey.toLowerCase());
16736 console.error(
16737 "Assignment to read-only property will result in a no-op: `%s`",
16738 propKey
16739 );
16740 continue;
16741 case "className":
16742 extraAttributes.delete("class");
16743 attributes = getValueForAttributeOnCustomComponent(
16744 domElement,
16745 "class",
16746 value
16747 );
16748 warnForPropDifference(
16749 "className",
16750 attributes,
16751 value,
16752 serverDifferences
16753 );
16754 continue;
16755 default:
16756 hostContext.context === HostContextNamespaceNone && "svg" !== tag && "math" !== tag ? extraAttributes.delete(propKey.toLowerCase()) : extraAttributes.delete(propKey), attributes = getValueForAttributeOnCustomComponent(
16757 domElement,
16758 propKey,
16759 value
16760 ), warnForPropDifference(
16761 propKey,
16762 attributes,
16763 value,
16764 serverDifferences
16765 );
16766 }
16767 }
16768 }
16769 }
16770 else
16771 for (value in props)
16772 if (props.hasOwnProperty(value) && (propKey = props[value], null != propKey)) {
16773 if (registrationNameDependencies.hasOwnProperty(value))
16774 "function" !== typeof propKey && warnForInvalidEventListener(value, propKey);
16775 else if (true !== props.suppressHydrationWarning)
16776 switch (value) {
16777 case "children":
16778 "string" !== typeof propKey && "number" !== typeof propKey || warnForPropDifference(
16779 "children",
16780 domElement.textContent,
16781 propKey,
16782 serverDifferences
16783 );
16784 continue;
16785 case "suppressContentEditableWarning":
16786 case "suppressHydrationWarning":
16787 case "value":
16788 case "checked":
16789 case "selected":
16790 case "defaultValue":
16791 case "defaultChecked":
16792 case "innerHTML":
16793 case "ref":
16794 continue;
16795 case "dangerouslySetInnerHTML":
16796 attributes = domElement.innerHTML;
16797 propKey = propKey ? propKey.__html : void 0;
16798 null != propKey && (propKey = normalizeHTML(domElement, propKey), attributes !== propKey && (serverDifferences[value] = { __html: attributes }));
16799 continue;
16800 case "className":
16801 hydrateAttribute(
16802 domElement,
16803 value,
16804 "class",
16805 propKey,
16806 extraAttributes,
16807 serverDifferences
16808 );
16809 continue;
16810 case "tabIndex":
16811 hydrateAttribute(
16812 domElement,
16813 value,
16814 "tabindex",
16815 propKey,
16816 extraAttributes,
16817 serverDifferences
16818 );
16819 continue;
16820 case "style":
16821 extraAttributes.delete(value);
16822 diffHydratedStyles(domElement, propKey, serverDifferences);
16823 continue;
16824 case "multiple":
16825 extraAttributes.delete(value);
16826 warnForPropDifference(
16827 value,
16828 domElement.multiple,
16829 propKey,
16830 serverDifferences
16831 );
16832 continue;
16833 case "muted":
16834 extraAttributes.delete(value);
16835 warnForPropDifference(
16836 value,
16837 domElement.muted,
16838 propKey,
16839 serverDifferences
16840 );
16841 continue;
16842 case "autoFocus":
16843 extraAttributes.delete("autofocus");
16844 warnForPropDifference(
16845 value,
16846 domElement.autofocus,
16847 propKey,
16848 serverDifferences
16849 );
16850 continue;
16851 case "data":
16852 if ("object" !== tag) {
16853 extraAttributes.delete(value);
16854 attributes = domElement.getAttribute("data");
16855 warnForPropDifference(
16856 value,
16857 attributes,
16858 propKey,
16859 serverDifferences
16860 );
16861 continue;
16862 }
16863 case "src":
16864 case "href":
16865 if (!("" !== propKey || "a" === tag && "href" === value || "object" === tag && "data" === value)) {
16866 "src" === value ? console.error(
16867 'An empty string ("") was passed to the %s attribute. This may cause the browser to download the whole page again over the network. To fix this, either do not render the element at all or pass null to %s instead of an empty string.',
16868 value,
16869 value
16870 ) : console.error(
16871 'An empty string ("") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.',
16872 value,
16873 value
16874 );
16875 continue;
16876 }
16877 hydrateSanitizedAttribute(
16878 domElement,
16879 value,
16880 value,
16881 propKey,
16882 extraAttributes,
16883 serverDifferences
16884 );
16885 continue;
16886 case "action":
16887 case "formAction":
16888 attributes = domElement.getAttribute(value);
16889 if ("function" === typeof propKey) {
16890 extraAttributes.delete(value.toLowerCase());
16891 "formAction" === value ? (extraAttributes.delete("name"), extraAttributes.delete("formenctype"), extraAttributes.delete("formmethod"), extraAttributes.delete("formtarget")) : (extraAttributes.delete("enctype"), extraAttributes.delete("method"), extraAttributes.delete("target"));
16892 continue;
16893 } else if (attributes === EXPECTED_FORM_ACTION_URL) {
16894 extraAttributes.delete(value.toLowerCase());
16895 warnForPropDifference(
16896 value,
16897 "function",
16898 propKey,
16899 serverDifferences
16900 );
16901 continue;
16902 }
16903 hydrateSanitizedAttribute(
16904 domElement,
16905 value,
16906 value.toLowerCase(),
16907 propKey,
16908 extraAttributes,
16909 serverDifferences
16910 );
16911 continue;
16912 case "xlinkHref":
16913 hydrateSanitizedAttribute(
16914 domElement,
16915 value,
16916 "xlink:href",
16917 propKey,
16918 extraAttributes,
16919 serverDifferences
16920 );
16921 continue;
16922 case "contentEditable":
16923 hydrateBooleanishAttribute(
16924 domElement,
16925 value,
16926 "contenteditable",
16927 propKey,
16928 extraAttributes,
16929 serverDifferences
16930 );
16931 continue;
16932 case "spellCheck":
16933 hydrateBooleanishAttribute(
16934 domElement,
16935 value,
16936 "spellcheck",
16937 propKey,
16938 extraAttributes,
16939 serverDifferences
16940 );
16941 continue;
16942 case "draggable":
16943 case "autoReverse":
16944 case "externalResourcesRequired":
16945 case "focusable":
16946 case "preserveAlpha":
16947 hydrateBooleanishAttribute(
16948 domElement,
16949 value,
16950 value,
16951 propKey,
16952 extraAttributes,
16953 serverDifferences
16954 );
16955 continue;
16956 case "allowFullScreen":
16957 case "async":
16958 case "autoPlay":
16959 case "controls":
16960 case "credentialless":
16961 case "default":
16962 case "defer":
16963 case "disabled":
16964 case "disablePictureInPicture":
16965 case "disableRemotePlayback":
16966 case "formNoValidate":
16967 case "hidden":
16968 case "loop":
16969 case "noModule":
16970 case "noValidate":
16971 case "open":
16972 case "playsInline":
16973 case "readOnly":
16974 case "required":
16975 case "reversed":
16976 case "scoped":
16977 case "seamless":
16978 case "itemScope":
16979 hydrateBooleanAttribute(
16980 domElement,
16981 value,
16982 value.toLowerCase(),
16983 propKey,
16984 extraAttributes,
16985 serverDifferences
16986 );
16987 continue;
16988 case "capture":
16989 case "download":
16990 a: {
16991 i = domElement;
16992 var attributeName = attributes = value, serverDifferences$jscomp$0 = serverDifferences;
16993 extraAttributes.delete(attributeName);
16994 i = i.getAttribute(attributeName);
16995 if (null === i)
16996 switch (typeof propKey) {
16997 case "undefined":
16998 case "function":
16999 case "symbol":
17000 break a;
17001 default:
17002 if (false === propKey) break a;
17003 }
17004 else if (null != propKey)
17005 switch (typeof propKey) {
17006 case "function":
17007 case "symbol":
17008 break;
17009 case "boolean":
17010 if (true === propKey && "" === i) break a;
17011 break;
17012 default:
17013 if (checkAttributeStringCoercion(propKey, attributes), i === "" + propKey)
17014 break a;
17015 }
17016 warnForPropDifference(
17017 attributes,
17018 i,
17019 propKey,
17020 serverDifferences$jscomp$0
17021 );
17022 }
17023 continue;
17024 case "cols":
17025 case "rows":
17026 case "size":
17027 case "span":
17028 a: {
17029 i = domElement;
17030 attributeName = attributes = value;
17031 serverDifferences$jscomp$0 = serverDifferences;
17032 extraAttributes.delete(attributeName);
17033 i = i.getAttribute(attributeName);
17034 if (null === i)
17035 switch (typeof propKey) {
17036 case "undefined":
17037 case "function":
17038 case "symbol":
17039 case "boolean":
17040 break a;
17041 default:
17042 if (isNaN(propKey) || 1 > propKey) break a;
17043 }
17044 else if (null != propKey)
17045 switch (typeof propKey) {
17046 case "function":
17047 case "symbol":
17048 case "boolean":
17049 break;
17050 default:
17051 if (!(isNaN(propKey) || 1 > propKey) && (checkAttributeStringCoercion(propKey, attributes), i === "" + propKey))
17052 break a;
17053 }
17054 warnForPropDifference(
17055 attributes,
17056 i,
17057 propKey,
17058 serverDifferences$jscomp$0
17059 );
17060 }
17061 continue;
17062 case "rowSpan":
17063 hydrateNumericAttribute(
17064 domElement,
17065 value,
17066 "rowspan",
17067 propKey,
17068 extraAttributes,
17069 serverDifferences
17070 );
17071 continue;
17072 case "start":
17073 hydrateNumericAttribute(
17074 domElement,
17075 value,
17076 value,
17077 propKey,
17078 extraAttributes,
17079 serverDifferences
17080 );
17081 continue;
17082 case "xHeight":
17083 hydrateAttribute(
17084 domElement,
17085 value,
17086 "x-height",
17087 propKey,
17088 extraAttributes,
17089 serverDifferences
17090 );
17091 continue;
17092 case "xlinkActuate":
17093 hydrateAttribute(
17094 domElement,
17095 value,
17096 "xlink:actuate",
17097 propKey,
17098 extraAttributes,
17099 serverDifferences
17100 );
17101 continue;
17102 case "xlinkArcrole":
17103 hydrateAttribute(
17104 domElement,
17105 value,
17106 "xlink:arcrole",
17107 propKey,
17108 extraAttributes,
17109 serverDifferences
17110 );
17111 continue;
17112 case "xlinkRole":
17113 hydrateAttribute(
17114 domElement,
17115 value,
17116 "xlink:role",
17117 propKey,
17118 extraAttributes,
17119 serverDifferences
17120 );
17121 continue;
17122 case "xlinkShow":
17123 hydrateAttribute(
17124 domElement,
17125 value,
17126 "xlink:show",
17127 propKey,
17128 extraAttributes,
17129 serverDifferences
17130 );
17131 continue;
17132 case "xlinkTitle":
17133 hydrateAttribute(
17134 domElement,
17135 value,
17136 "xlink:title",
17137 propKey,
17138 extraAttributes,
17139 serverDifferences
17140 );
17141 continue;
17142 case "xlinkType":
17143 hydrateAttribute(
17144 domElement,
17145 value,
17146 "xlink:type",
17147 propKey,
17148 extraAttributes,
17149 serverDifferences
17150 );
17151 continue;
17152 case "xmlBase":
17153 hydrateAttribute(
17154 domElement,
17155 value,
17156 "xml:base",
17157 propKey,
17158 extraAttributes,
17159 serverDifferences
17160 );
17161 continue;
17162 case "xmlLang":
17163 hydrateAttribute(
17164 domElement,
17165 value,
17166 "xml:lang",
17167 propKey,
17168 extraAttributes,
17169 serverDifferences
17170 );
17171 continue;
17172 case "xmlSpace":
17173 hydrateAttribute(
17174 domElement,
17175 value,
17176 "xml:space",
17177 propKey,
17178 extraAttributes,
17179 serverDifferences
17180 );
17181 continue;
17182 case "inert":
17183 "" !== propKey || didWarnForNewBooleanPropsWithEmptyValue[value] || (didWarnForNewBooleanPropsWithEmptyValue[value] = true, console.error(
17184 "Received an empty string for a boolean attribute `%s`. This will treat the attribute as if it were false. Either pass `false` to silence this warning, or pass `true` if you used an empty string in earlier versions of React to indicate this attribute is true.",
17185 value
17186 ));
17187 hydrateBooleanAttribute(
17188 domElement,
17189 value,
17190 value,
17191 propKey,
17192 extraAttributes,
17193 serverDifferences
17194 );
17195 continue;
17196 default:
17197 if (!(2 < value.length) || "o" !== value[0] && "O" !== value[0] || "n" !== value[1] && "N" !== value[1]) {
17198 i = getAttributeAlias(value);
17199 attributes = false;
17200 hostContext.context === HostContextNamespaceNone && "svg" !== tag && "math" !== tag ? extraAttributes.delete(i.toLowerCase()) : (attributeName = value.toLowerCase(), attributeName = possibleStandardNames.hasOwnProperty(
17201 attributeName
17202 ) ? possibleStandardNames[attributeName] || null : null, null !== attributeName && attributeName !== value && (attributes = true, extraAttributes.delete(attributeName)), extraAttributes.delete(i));
17203 a: if (attributeName = domElement, serverDifferences$jscomp$0 = i, i = propKey, isAttributeNameSafe(serverDifferences$jscomp$0))
17204 if (attributeName.hasAttribute(serverDifferences$jscomp$0))
17205 attributeName = "nonce" === serverDifferences$jscomp$0.toLowerCase() ? attributeName.nonce : attributeName.getAttribute(
17206 serverDifferences$jscomp$0
17207 ), checkAttributeStringCoercion(
17208 i,
17209 serverDifferences$jscomp$0
17210 ), i = attributeName === "" + i ? i : attributeName;
17211 else {
17212 switch (typeof i) {
17213 case "function":
17214 case "symbol":
17215 break a;
17216 case "boolean":
17217 if (attributeName = serverDifferences$jscomp$0.toLowerCase().slice(0, 5), "data-" !== attributeName && "aria-" !== attributeName)
17218 break a;
17219 }
17220 i = void 0 === i ? void 0 : null;
17221 }
17222 else i = void 0;
17223 attributes || warnForPropDifference(
17224 value,
17225 i,
17226 propKey,
17227 serverDifferences
17228 );
17229 }
17230 }
17231 }
17232 0 < extraAttributes.size && true !== props.suppressHydrationWarning && warnForExtraAttributes(domElement, extraAttributes, serverDifferences);
17233 return 0 === Object.keys(serverDifferences).length ? null : serverDifferences;
17234 }
17235 function propNamesListJoin(list, combinator) {
17236 switch (list.length) {
17237 case 0:
17238 return "";
17239 case 1:
17240 return list[0];
17241 case 2:
17242 return list[0] + " " + combinator + " " + list[1];
17243 default:
17244 return list.slice(0, -1).join(", ") + ", " + combinator + " " + list[list.length - 1];
17245 }
17246 }
17247 function isLikelyStaticResource(initiatorType) {
17248 switch (initiatorType) {
17249 case "css":
17250 case "script":
17251 case "font":
17252 case "img":
17253 case "image":
17254 case "input":
17255 case "link":
17256 return true;
17257 default:
17258 return false;
17259 }
17260 }
17261 function estimateBandwidth() {
17262 if ("function" === typeof performance.getEntriesByType) {
17263 for (var count = 0, bits = 0, resourceEntries = performance.getEntriesByType("resource"), i = 0; i < resourceEntries.length; i++) {
17264 var entry = resourceEntries[i], transferSize = entry.transferSize, initiatorType = entry.initiatorType, duration = entry.duration;
17265 if (transferSize && duration && isLikelyStaticResource(initiatorType)) {
17266 initiatorType = 0;
17267 duration = entry.responseEnd;
17268 for (i += 1; i < resourceEntries.length; i++) {
17269 var overlapEntry = resourceEntries[i], overlapStartTime = overlapEntry.startTime;
17270 if (overlapStartTime > duration) break;
17271 var overlapTransferSize = overlapEntry.transferSize, overlapInitiatorType = overlapEntry.initiatorType;
17272 overlapTransferSize && isLikelyStaticResource(overlapInitiatorType) && (overlapEntry = overlapEntry.responseEnd, initiatorType += overlapTransferSize * (overlapEntry < duration ? 1 : (duration - overlapStartTime) / (overlapEntry - overlapStartTime)));
17273 }
17274 --i;
17275 bits += 8 * (transferSize + initiatorType) / (entry.duration / 1e3);
17276 count++;
17277 if (10 < count) break;
17278 }
17279 }
17280 if (0 < count) return bits / count / 1e6;
17281 }
17282 return navigator.connection && (count = navigator.connection.downlink, "number" === typeof count) ? count : 5;
17283 }
17284 function getOwnerDocumentFromRootContainer(rootContainerElement) {
17285 return 9 === rootContainerElement.nodeType ? rootContainerElement : rootContainerElement.ownerDocument;
17286 }
17287 function getOwnHostContext(namespaceURI) {
17288 switch (namespaceURI) {
17289 case SVG_NAMESPACE:
17290 return HostContextNamespaceSvg;
17291 case MATH_NAMESPACE:
17292 return HostContextNamespaceMath;
17293 default:
17294 return HostContextNamespaceNone;
17295 }
17296 }
17297 function getChildHostContextProd(parentNamespace, type) {
17298 if (parentNamespace === HostContextNamespaceNone)
17299 switch (type) {
17300 case "svg":
17301 return HostContextNamespaceSvg;
17302 case "math":
17303 return HostContextNamespaceMath;
17304 default:
17305 return HostContextNamespaceNone;
17306 }
17307 return parentNamespace === HostContextNamespaceSvg && "foreignObject" === type ? HostContextNamespaceNone : parentNamespace;
17308 }
17309 function createHoistableInstance(type, props, rootContainerInstance, internalInstanceHandle) {
17310 rootContainerInstance = getOwnerDocumentFromRootContainer(
17311 rootContainerInstance
17312 ).createElement(type);
17313 rootContainerInstance[internalInstanceKey] = internalInstanceHandle;
17314 rootContainerInstance[internalPropsKey] = props;
17315 setInitialProperties(rootContainerInstance, type, props);
17316 markNodeAsHoistable(rootContainerInstance);
17317 return rootContainerInstance;
17318 }
17319 function isScriptDataBlock(props) {
17320 props = props.type;
17321 if ("string" !== typeof props || "" === props) return false;
17322 props = props.toLowerCase();
17323 if ("module" === props || "importmap" === props || "speculationrules" === props)
17324 return false;
17325 switch (props) {
17326 case "application/ecmascript":
17327 case "application/javascript":
17328 case "application/x-ecmascript":
17329 case "application/x-javascript":
17330 case "text/ecmascript":
17331 case "text/javascript":
17332 case "text/javascript1.0":
17333 case "text/javascript1.1":
17334 case "text/javascript1.2":
17335 case "text/javascript1.3":
17336 case "text/javascript1.4":
17337 case "text/javascript1.5":
17338 case "text/jscript":
17339 case "text/livescript":
17340 case "text/x-ecmascript":
17341 case "text/x-javascript":
17342 return false;
17343 }
17344 return true;
17345 }
17346 function shouldSetTextContent(type, props) {
17347 return "textarea" === type || "noscript" === type || "string" === typeof props.children || "number" === typeof props.children || "bigint" === typeof props.children || "object" === typeof props.dangerouslySetInnerHTML && null !== props.dangerouslySetInnerHTML && null != props.dangerouslySetInnerHTML.__html;
17348 }
17349 function shouldAttemptEagerTransition() {
17350 var event = window.event;
17351 if (event && "popstate" === event.type) {
17352 if (event === currentPopstateTransitionEvent) return false;
17353 currentPopstateTransitionEvent = event;
17354 return true;
17355 }
17356 currentPopstateTransitionEvent = null;
17357 return false;
17358 }
17359 function resolveEventType() {
17360 var event = window.event;
17361 return event && event !== schedulerEvent ? event.type : null;
17362 }
17363 function resolveEventTimeStamp() {
17364 var event = window.event;
17365 return event && event !== schedulerEvent ? event.timeStamp : -1.1;
17366 }
17367 function handleErrorInNextTick(error) {
17368 setTimeout(function() {
17369 throw error;
17370 });
17371 }
17372 function commitMount(domElement, type, newProps) {
17373 switch (type) {
17374 case "button":
17375 case "input":
17376 case "select":
17377 case "textarea":
17378 newProps.autoFocus && domElement.focus();
17379 break;
17380 case "img":
17381 newProps.src ? domElement.src = newProps.src : newProps.srcSet && (domElement.srcset = newProps.srcSet);
17382 }
17383 }
17384 function commitHydratedInstance() {
17385 }
17386 function commitUpdate(domElement, type, oldProps, newProps) {
17387 updateProperties(domElement, type, oldProps, newProps);
17388 domElement[internalPropsKey] = newProps;
17389 }
17390 function resetTextContent(domElement) {
17391 setTextContent(domElement, "");
17392 }
17393 function commitTextUpdate(textInstance, oldText, newText) {
17394 textInstance.nodeValue = newText;
17395 }
17396 function warnForReactChildrenConflict(container) {
17397 if (!container.__reactWarnedAboutChildrenConflict) {
17398 var props = container[internalPropsKey] || null;
17399 if (null !== props) {
17400 var fiber = getInstanceFromNode(container);
17401 null !== fiber && ("string" === typeof props.children || "number" === typeof props.children ? (container.__reactWarnedAboutChildrenConflict = true, runWithFiberInDEV(fiber, function() {
17402 console.error(
17403 'Cannot use a ref on a React element as a container to `createRoot` or `createPortal` if that element also sets "children" text content using React. It should be a leaf with no children. Otherwise it\'s ambiguous which children should be used.'
17404 );
17405 })) : null != props.dangerouslySetInnerHTML && (container.__reactWarnedAboutChildrenConflict = true, runWithFiberInDEV(fiber, function() {
17406 console.error(
17407 'Cannot use a ref on a React element as a container to `createRoot` or `createPortal` if that element also sets "dangerouslySetInnerHTML" using React. It should be a leaf with no children. Otherwise it\'s ambiguous which children should be used.'
17408 );
17409 })));
17410 }
17411 }
17412 }
17413 function isSingletonScope(type) {
17414 return "head" === type;
17415 }
17416 function removeChild(parentInstance, child) {
17417 parentInstance.removeChild(child);
17418 }
17419 function removeChildFromContainer(container, child) {
17420 (9 === container.nodeType ? container.body : "HTML" === container.nodeName ? container.ownerDocument.body : container).removeChild(child);
17421 }
17422 function clearHydrationBoundary(parentInstance, hydrationInstance) {
17423 var node = hydrationInstance, depth = 0;
17424 do {
17425 var nextNode = node.nextSibling;
17426 parentInstance.removeChild(node);
17427 if (nextNode && 8 === nextNode.nodeType)
17428 if (node = nextNode.data, node === SUSPENSE_END_DATA || node === ACTIVITY_END_DATA) {
17429 if (0 === depth) {
17430 parentInstance.removeChild(nextNode);
17431 retryIfBlockedOn(hydrationInstance);
17432 return;
17433 }
17434 depth--;
17435 } else if (node === SUSPENSE_START_DATA || node === SUSPENSE_PENDING_START_DATA || node === SUSPENSE_QUEUED_START_DATA || node === SUSPENSE_FALLBACK_START_DATA || node === ACTIVITY_START_DATA)
17436 depth++;
17437 else if (node === PREAMBLE_CONTRIBUTION_HTML)
17438 clearSingletonPreambleContribution(
17439 parentInstance.ownerDocument.documentElement
17440 );
17441 else if (node === PREAMBLE_CONTRIBUTION_HEAD) {
17442 node = parentInstance.ownerDocument.head;
17443 clearSingletonPreambleContribution(node);
17444 for (var node$jscomp$0 = node.firstChild; node$jscomp$0; ) {
17445 var nextNode$jscomp$0 = node$jscomp$0.nextSibling, nodeName = node$jscomp$0.nodeName;
17446 node$jscomp$0[internalHoistableMarker] || "SCRIPT" === nodeName || "STYLE" === nodeName || "LINK" === nodeName && "stylesheet" === node$jscomp$0.rel.toLowerCase() || node.removeChild(node$jscomp$0);
17447 node$jscomp$0 = nextNode$jscomp$0;
17448 }
17449 } else
17450 node === PREAMBLE_CONTRIBUTION_BODY && clearSingletonPreambleContribution(
17451 parentInstance.ownerDocument.body
17452 );
17453 node = nextNode;
17454 } while (node);
17455 retryIfBlockedOn(hydrationInstance);
17456 }
17457 function hideOrUnhideDehydratedBoundary(suspenseInstance, isHidden) {
17458 var node = suspenseInstance;
17459 suspenseInstance = 0;
17460 do {
17461 var nextNode = node.nextSibling;
17462 1 === node.nodeType ? isHidden ? (node._stashedDisplay = node.style.display, node.style.display = "none") : (node.style.display = node._stashedDisplay || "", "" === node.getAttribute("style") && node.removeAttribute("style")) : 3 === node.nodeType && (isHidden ? (node._stashedText = node.nodeValue, node.nodeValue = "") : node.nodeValue = node._stashedText || "");
17463 if (nextNode && 8 === nextNode.nodeType)
17464 if (node = nextNode.data, node === SUSPENSE_END_DATA)
17465 if (0 === suspenseInstance) break;
17466 else suspenseInstance--;
17467 else
17468 node !== SUSPENSE_START_DATA && node !== SUSPENSE_PENDING_START_DATA && node !== SUSPENSE_QUEUED_START_DATA && node !== SUSPENSE_FALLBACK_START_DATA || suspenseInstance++;
17469 node = nextNode;
17470 } while (node);
17471 }
17472 function hideDehydratedBoundary(suspenseInstance) {
17473 hideOrUnhideDehydratedBoundary(suspenseInstance, true);
17474 }
17475 function hideInstance(instance) {
17476 instance = instance.style;
17477 "function" === typeof instance.setProperty ? instance.setProperty("display", "none", "important") : instance.display = "none";
17478 }
17479 function hideTextInstance(textInstance) {
17480 textInstance.nodeValue = "";
17481 }
17482 function unhideDehydratedBoundary(dehydratedInstance) {
17483 hideOrUnhideDehydratedBoundary(dehydratedInstance, false);
17484 }
17485 function unhideInstance(instance, props) {
17486 props = props[STYLE];
17487 props = void 0 !== props && null !== props && props.hasOwnProperty("display") ? props.display : null;
17488 instance.style.display = null == props || "boolean" === typeof props ? "" : ("" + props).trim();
17489 }
17490 function unhideTextInstance(textInstance, text) {
17491 textInstance.nodeValue = text;
17492 }
17493 function warnForBlockInsideInline(instance) {
17494 for (var nextNode = instance.firstChild; null != nextNode; ) {
17495 if (1 === nextNode.nodeType && "block" === getComputedStyle(nextNode).display) {
17496 var fiber = getInstanceFromNode(nextNode) || getInstanceFromNode(instance);
17497 runWithFiberInDEV(
17498 fiber,
17499 function(parentTag, childTag) {
17500 console.error(
17501 "You're about to start a <ViewTransition> around a display: inline element <%s>, which itself has a display: block element <%s> inside it. This might trigger a bug in Safari which causes the View Transition to be skipped with a duplicate name error.\nhttps://bugs.webkit.org/show_bug.cgi?id=290923",
17502 parentTag.toLocaleLowerCase(),
17503 childTag.toLocaleLowerCase()
17504 );
17505 },
17506 instance.tagName,
17507 nextNode.tagName
17508 );
17509 break;
17510 }
17511 if (null != nextNode.firstChild) nextNode = nextNode.firstChild;
17512 else {
17513 if (nextNode === instance) break;
17514 for (; null == nextNode.nextSibling && null != nextNode.parentNode && nextNode.parentNode !== instance; )
17515 nextNode = nextNode.parentNode;
17516 nextNode = nextNode.nextSibling;
17517 }
17518 }
17519 }
17520 function applyViewTransitionName(instance, name, className) {
17521 name = CSS.escape(name) !== name ? "r-" + btoa(name).replace(/=/g, "") : name;
17522 instance.style.viewTransitionName = name;
17523 null != className && (instance.style.viewTransitionClass = className);
17524 className = getComputedStyle(instance);
17525 if ("inline" === className.display) {
17526 name = instance.getClientRects();
17527 if (1 === name.length) var JSCompiler_inline_result = 1;
17528 else
17529 for (var i = JSCompiler_inline_result = 0; i < name.length; i++) {
17530 var rect = name[i];
17531 0 < rect.width && 0 < rect.height && JSCompiler_inline_result++;
17532 }
17533 1 === JSCompiler_inline_result ? (instance = instance.style, instance.display = 1 === name.length ? "inline-block" : "block", instance.marginTop = "-" + className.paddingTop, instance.marginBottom = "-" + className.paddingBottom) : warnForBlockInsideInline(instance);
17534 }
17535 }
17536 function restoreViewTransitionName(instance, props) {
17537 instance = instance.style;
17538 props = props[STYLE];
17539 var viewTransitionName = null != props ? props.hasOwnProperty("viewTransitionName") ? props.viewTransitionName : props.hasOwnProperty("view-transition-name") ? props["view-transition-name"] : null : null;
17540 instance.viewTransitionName = null == viewTransitionName || "boolean" === typeof viewTransitionName ? "" : ("" + viewTransitionName).trim();
17541 viewTransitionName = null != props ? props.hasOwnProperty("viewTransitionClass") ? props.viewTransitionClass : props.hasOwnProperty("view-transition-class") ? props["view-transition-class"] : null : null;
17542 instance.viewTransitionClass = null == viewTransitionName || "boolean" === typeof viewTransitionName ? "" : ("" + viewTransitionName).trim();
17543 "inline-block" === instance.display && (null == props ? instance.display = instance.margin = "" : (viewTransitionName = props.display, instance.display = null == viewTransitionName || "boolean" === typeof viewTransitionName ? "" : viewTransitionName, viewTransitionName = props.margin, null != viewTransitionName ? instance.margin = viewTransitionName : (viewTransitionName = props.hasOwnProperty("marginTop") ? props.marginTop : props["margin-top"], instance.marginTop = null == viewTransitionName || "boolean" === typeof viewTransitionName ? "" : viewTransitionName, props = props.hasOwnProperty("marginBottom") ? props.marginBottom : props["margin-bottom"], instance.marginBottom = null == props || "boolean" === typeof props ? "" : props)));
17544 }
17545 function createMeasurement(rect, computedStyle, element) {
17546 element = element.ownerDocument.defaultView;
17547 return {
17548 rect,
17549 abs: "absolute" === computedStyle.position || "fixed" === computedStyle.position,
17550 clip: "none" !== computedStyle.clipPath || "visible" !== computedStyle.overflow || "none" !== computedStyle.filter || "none" !== computedStyle.mask || "none" !== computedStyle.mask || "0px" !== computedStyle.borderRadius,
17551 view: 0 <= rect.bottom && 0 <= rect.right && rect.top <= element.innerHeight && rect.left <= element.innerWidth
17552 };
17553 }
17554 function measureInstance(instance) {
17555 var rect = instance.getBoundingClientRect(), computedStyle = getComputedStyle(instance);
17556 return createMeasurement(rect, computedStyle, instance);
17557 }
17558 function measureClonedInstance(instance) {
17559 var measuredRect = instance.getBoundingClientRect();
17560 measuredRect = new DOMRect(
17561 measuredRect.x + 2e4,
17562 measuredRect.y + 2e4,
17563 measuredRect.width,
17564 measuredRect.height
17565 );
17566 var computedStyle = getComputedStyle(instance);
17567 return createMeasurement(measuredRect, computedStyle, instance);
17568 }
17569 function customizeViewTransitionError(error, ignoreAbort) {
17570 if ("object" === typeof error && null !== error)
17571 switch (error.name) {
17572 case "TimeoutError":
17573 return Error(
17574 "A ViewTransition timed out because a Navigation stalled. This can happen if a Navigation is blocked on React itself. Such as if it's resolved inside useEffect. This can be solved by moving the resolution to useLayoutEffect.",
17575 { cause: error }
17576 );
17577 case "AbortError":
17578 return ignoreAbort ? null : Error(
17579 "A ViewTransition was aborted early. This might be because you have other View Transition libraries on the page and only one can run at a time. To avoid this, use only React's built-in <ViewTransition> to coordinate.",
17580 { cause: error }
17581 );
17582 case "InvalidStateError":
17583 if ("View transition was skipped because document visibility state is hidden." === error.message || "Skipping view transition because document visibility state has become hidden." === error.message || "Skipping view transition because viewport size changed." === error.message || "Transition was aborted because of invalid state" === error.message)
17584 return null;
17585 }
17586 return error;
17587 }
17588 function forceLayout(ownerDocument) {
17589 return ownerDocument.documentElement.clientHeight;
17590 }
17591 function waitForImageToLoad(resolve) {
17592 this.addEventListener("load", resolve);
17593 this.addEventListener("error", resolve);
17594 }
17595 function startViewTransition(suspendedState, rootContainer, transitionTypes, mutationCallback, layoutCallback, afterMutationCallback, spawnedWorkCallback, passiveCallback, errorCallback, blockedCallback, finishedAnimation) {
17596 var ownerDocument = 9 === rootContainer.nodeType ? rootContainer : rootContainer.ownerDocument;
17597 try {
17598 var transition = ownerDocument.startViewTransition({
17599 update: function() {
17600 var ownerWindow = ownerDocument.defaultView, pendingNavigation = ownerWindow.navigation && ownerWindow.navigation.transition, previousFontLoadingStatus = ownerDocument.fonts.status;
17601 mutationCallback();
17602 var blockingPromises = [];
17603 "loaded" === previousFontLoadingStatus && (forceLayout(ownerDocument), "loading" === ownerDocument.fonts.status && blockingPromises.push(ownerDocument.fonts.ready));
17604 previousFontLoadingStatus = blockingPromises.length;
17605 if (null !== suspendedState)
17606 for (var suspenseyImages = suspendedState.suspenseyImages, imgBytes = 0, i = 0; i < suspenseyImages.length; i++) {
17607 var suspenseyImage = suspenseyImages[i];
17608 if (!suspenseyImage.complete) {
17609 var rect = suspenseyImage.getBoundingClientRect();
17610 if (0 < rect.bottom && 0 < rect.right && rect.top < ownerWindow.innerHeight && rect.left < ownerWindow.innerWidth) {
17611 imgBytes += estimateImageBytes(suspenseyImage);
17612 if (imgBytes > estimatedBytesWithinLimit) {
17613 blockingPromises.length = previousFontLoadingStatus;
17614 break;
17615 }
17616 suspenseyImage = new Promise(
17617 waitForImageToLoad.bind(suspenseyImage)
17618 );
17619 blockingPromises.push(suspenseyImage);
17620 }
17621 }
17622 }
17623 if (0 < blockingPromises.length)
17624 return blockedCallback(
17625 0 < previousFontLoadingStatus ? blockingPromises.length > previousFontLoadingStatus ? "Waiting on Fonts and Images" : "Waiting on Fonts" : "Waiting on Images"
17626 ), ownerWindow = Promise.race([
17627 Promise.all(blockingPromises),
17628 new Promise(function(resolve) {
17629 return setTimeout(
17630 resolve,
17631 SUSPENSEY_FONT_AND_IMAGE_TIMEOUT
17632 );
17633 })
17634 ]).then(layoutCallback, layoutCallback), (pendingNavigation ? Promise.allSettled([
17635 pendingNavigation.finished,
17636 ownerWindow
17637 ]) : ownerWindow).then(afterMutationCallback, afterMutationCallback);
17638 layoutCallback();
17639 if (pendingNavigation)
17640 return pendingNavigation.finished.then(
17641 afterMutationCallback,
17642 afterMutationCallback
17643 );
17644 afterMutationCallback();
17645 },
17646 types: transitionTypes
17647 });
17648 ownerDocument.__reactViewTransition = transition;
17649 var viewTransitionAnimations = [];
17650 transition.ready.then(
17651 function() {
17652 for (var animations = ownerDocument.documentElement.getAnimations({
17653 subtree: true
17654 }), i = 0; i < animations.length; i++) {
17655 var animation = animations[i], effect = animation.effect, pseudoElement = effect.pseudoElement;
17656 if (null != pseudoElement && pseudoElement.startsWith("::view-transition")) {
17657 viewTransitionAnimations.push(animation);
17658 animation = effect.getKeyframes();
17659 for (var height = pseudoElement = void 0, unchangedDimensions = true, j = 0; j < animation.length; j++) {
17660 var keyframe = animation[j], w = keyframe.width;
17661 if (void 0 === pseudoElement) pseudoElement = w;
17662 else if (pseudoElement !== w) {
17663 unchangedDimensions = false;
17664 break;
17665 }
17666 w = keyframe.height;
17667 if (void 0 === height) height = w;
17668 else if (height !== w) {
17669 unchangedDimensions = false;
17670 break;
17671 }
17672 delete keyframe.width;
17673 delete keyframe.height;
17674 "none" === keyframe.transform && delete keyframe.transform;
17675 }
17676 unchangedDimensions && void 0 !== pseudoElement && void 0 !== height && (effect.setKeyframes(animation), unchangedDimensions = getComputedStyle(
17677 effect.target,
17678 effect.pseudoElement
17679 ), unchangedDimensions.width !== pseudoElement || unchangedDimensions.height !== height) && (unchangedDimensions = animation[0], unchangedDimensions.width = pseudoElement, unchangedDimensions.height = height, unchangedDimensions = animation[animation.length - 1], unchangedDimensions.width = pseudoElement, unchangedDimensions.height = height, effect.setKeyframes(animation));
17680 }
17681 }
17682 spawnedWorkCallback();
17683 },
17684 function(error) {
17685 ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null);
17686 try {
17687 error = customizeViewTransitionError(error, false), null !== error && errorCallback(error);
17688 } finally {
17689 mutationCallback(), layoutCallback(), spawnedWorkCallback(), finishedAnimation();
17690 }
17691 }
17692 );
17693 transition.finished.finally(function() {
17694 for (var i = 0; i < viewTransitionAnimations.length; i++)
17695 viewTransitionAnimations[i].cancel();
17696 ownerDocument.__reactViewTransition === transition && (ownerDocument.__reactViewTransition = null);
17697 finishedAnimation();
17698 passiveCallback();
17699 });
17700 return transition;
17701 } catch (x) {
17702 return mutationCallback(), layoutCallback(), finishedAnimation(), spawnedWorkCallback(), null;
17703 }
17704 }
17705 function ViewTransitionPseudoElement(pseudo, name) {
17706 this._scope = document.documentElement;
17707 this._selector = "::view-transition-" + pseudo + "(" + name + ")";
17708 }
17709 function createViewTransitionInstance(name) {
17710 return {
17711 name,
17712 group: new ViewTransitionPseudoElement("group", name),
17713 imagePair: new ViewTransitionPseudoElement("image-pair", name),
17714 old: new ViewTransitionPseudoElement("old", name),
17715 new: new ViewTransitionPseudoElement("new", name)
17716 };
17717 }
17718 function FragmentInstance(fragmentFiber) {
17719 this._fragmentFiber = fragmentFiber;
17720 this._observers = this._eventListeners = null;
17721 }
17722 function addEventListenerToChild(child, type, listener, optionsOrUseCapture) {
17723 getInstanceFromHostFiber(child).addEventListener(
17724 type,
17725 listener,
17726 optionsOrUseCapture
17727 );
17728 return false;
17729 }
17730 function removeEventListenerFromChild(child, type, listener, optionsOrUseCapture) {
17731 getInstanceFromHostFiber(child).removeEventListener(
17732 type,
17733 listener,
17734 optionsOrUseCapture
17735 );
17736 return false;
17737 }
17738 function getAttachOptions(opts) {
17739 return null != opts && "boolean" !== typeof opts && (true === opts.once || opts.signal instanceof AbortSignal) ? { capture: opts.capture, passive: opts.passive } : opts;
17740 }
17741 function normalizeListenerOptions(opts) {
17742 return null == opts ? "c=0" : "boolean" === typeof opts ? "c=" + (opts ? "1" : "0") : "c=" + (opts.capture ? "1" : "0");
17743 }
17744 function indexOfEventListener(eventListeners, type, listener, optionsOrUseCapture) {
17745 if (0 === eventListeners.length) return -1;
17746 optionsOrUseCapture = normalizeListenerOptions(optionsOrUseCapture);
17747 for (var i = 0; i < eventListeners.length; i++) {
17748 var item = eventListeners[i];
17749 if (item.type === type && item.listener === listener && normalizeListenerOptions(item.optionsOrUseCapture) === optionsOrUseCapture)
17750 return i;
17751 }
17752 return -1;
17753 }
17754 function setFocusOnFiberIfFocusable(fiber, focusOptions) {
17755 if (6 === fiber.tag) return false;
17756 fiber = getInstanceFromHostFiber(fiber);
17757 return setFocusIfFocusable(fiber, focusOptions);
17758 }
17759 function collectChildren(child, collection) {
17760 collection.push(child);
17761 return false;
17762 }
17763 function blurActiveElementWithinFragment(child, activeElement2) {
17764 if (6 === child.tag) return false;
17765 child = getInstanceFromHostFiber(child);
17766 return child === activeElement2 || child.contains(activeElement2) ? (activeElement2.blur(), true) : false;
17767 }
17768 function observeChild(child, observer) {
17769 if (6 === child.tag) return false;
17770 child = getInstanceFromHostFiber(child);
17771 observer.observe(child);
17772 return false;
17773 }
17774 function unobserveChild(child, observer) {
17775 if (6 === child.tag) return false;
17776 child = getInstanceFromHostFiber(child);
17777 observer.unobserve(child);
17778 return false;
17779 }
17780 function schedulePendingIntersectionUnobserve(fragmentInstance, observer, instance) {
17781 pendingIntersectionUnobserves.push({
17782 fragmentInstance,
17783 observer,
17784 instance
17785 });
17786 intersectionUnobserveScheduled || (intersectionUnobserveScheduled = true, requestPostPaintCallback(function() {
17787 intersectionUnobserveScheduled = false;
17788 var pending = pendingIntersectionUnobserves;
17789 pendingIntersectionUnobserves = [];
17790 for (var i = 0; i < pending.length; i++) {
17791 var item = pending[i];
17792 item.observer.unobserve(item.instance);
17793 }
17794 }));
17795 }
17796 function collectClientRects(child, rects) {
17797 if (6 === child.tag) {
17798 child = child.stateNode;
17799 var range = child.ownerDocument.createRange();
17800 range.selectNodeContents(child);
17801 rects.push.apply(rects, range.getClientRects());
17802 } else
17803 child = getInstanceFromHostFiber(child), rects.push.apply(rects, child.getClientRects());
17804 return false;
17805 }
17806 function validateDocumentPositionWithFiberTree(documentPosition, fragmentFiber, precedingBoundaryFiber, followingBoundaryFiber, otherNode) {
17807 var otherFiber = getClosestInstanceFromNode(otherNode);
17808 if (documentPosition & Node.DOCUMENT_POSITION_CONTAINED_BY) {
17809 if (precedingBoundaryFiber = !!otherFiber)
17810 a: {
17811 for (; null !== otherFiber; ) {
17812 if (7 === otherFiber.tag && (otherFiber === fragmentFiber || otherFiber.alternate === fragmentFiber)) {
17813 precedingBoundaryFiber = true;
17814 break a;
17815 }
17816 otherFiber = otherFiber.return;
17817 }
17818 precedingBoundaryFiber = false;
17819 }
17820 return precedingBoundaryFiber;
17821 }
17822 if (documentPosition & Node.DOCUMENT_POSITION_CONTAINS) {
17823 if (null === otherFiber)
17824 return otherFiber = otherNode.ownerDocument, otherNode === otherFiber || otherNode === otherFiber.documentElement || otherNode === otherFiber.body;
17825 a: {
17826 otherFiber = fragmentFiber;
17827 for (fragmentFiber = getFragmentParentInstanceOrContainerFiber(fragmentFiber); null !== otherFiber; ) {
17828 if (!(5 !== otherFiber.tag && 3 !== otherFiber.tag && 27 !== otherFiber.tag || otherFiber !== fragmentFiber && otherFiber.alternate !== fragmentFiber)) {
17829 otherFiber = true;
17830 break a;
17831 }
17832 otherFiber = otherFiber.return;
17833 }
17834 otherFiber = false;
17835 }
17836 return otherFiber;
17837 }
17838 return documentPosition & Node.DOCUMENT_POSITION_PRECEDING ? ((fragmentFiber = !!otherFiber) && !(fragmentFiber = otherFiber === precedingBoundaryFiber) && (fragmentFiber = getLowestCommonAncestor(
17839 precedingBoundaryFiber,
17840 otherFiber,
17841 getParentForFragmentAncestors
17842 ), null === fragmentFiber ? fragmentFiber = false : (traverseVisibleInstancesAndTextInstances(
17843 fragmentFiber,
17844 true,
17845 isFiberPrecedingCheck,
17846 otherFiber,
17847 precedingBoundaryFiber
17848 ), otherFiber = searchTarget, searchTarget = null, fragmentFiber = null !== otherFiber)), fragmentFiber) : documentPosition & Node.DOCUMENT_POSITION_FOLLOWING ? ((fragmentFiber = !!otherFiber) && !(fragmentFiber = otherFiber === followingBoundaryFiber) && (fragmentFiber = getLowestCommonAncestor(
17849 followingBoundaryFiber,
17850 otherFiber,
17851 getParentForFragmentAncestors
17852 ), null === fragmentFiber ? fragmentFiber = false : (traverseVisibleInstancesAndTextInstances(
17853 fragmentFiber,
17854 true,
17855 isFiberFollowingCheck,
17856 otherFiber,
17857 followingBoundaryFiber
17858 ), otherFiber = searchTarget, searchBoundary = searchTarget = null, fragmentFiber = null !== otherFiber)), fragmentFiber) : false;
17859 }
17860 function scrollTextNodeIntoView(textNode, resolvedAlignToTop) {
17861 var range = textNode.ownerDocument.createRange();
17862 range.selectNodeContents(textNode);
17863 textNode = range.getBoundingClientRect();
17864 window.scrollTo(
17865 window.scrollX + textNode.left,
17866 resolvedAlignToTop ? window.scrollY + textNode.top : window.scrollY + textNode.bottom - window.innerHeight
17867 );
17868 }
17869 function addFragmentHandleToFiber(child, fragmentInstance) {
17870 child = getInstanceFromHostFiber(child);
17871 addFragmentHandleToInstance(child, fragmentInstance);
17872 return false;
17873 }
17874 function addFragmentHandleToInstance(instance, fragmentInstance) {
17875 null == instance.reactFragments && (instance.reactFragments = /* @__PURE__ */ new Set());
17876 instance.reactFragments.add(fragmentInstance);
17877 }
17878 function commitNewChildToFragmentInstance(childInstance, fragmentInstance) {
17879 var eventListeners = fragmentInstance._eventListeners;
17880 if (null !== eventListeners)
17881 for (var i$jscomp$0 = 0; i$jscomp$0 < eventListeners.length; i$jscomp$0++) {
17882 var _eventListeners$i2 = eventListeners[i$jscomp$0];
17883 childInstance.addEventListener(
17884 _eventListeners$i2.type,
17885 _eventListeners$i2.attachedListener,
17886 getAttachOptions(_eventListeners$i2.optionsOrUseCapture)
17887 );
17888 }
17889 3 !== childInstance.nodeType && (eventListeners = fragmentInstance._observers, null !== eventListeners && eventListeners.forEach(function(observer) {
17890 for (var writeIdx = 0, i = 0; i < pendingIntersectionUnobserves.length; i++) {
17891 var pending = pendingIntersectionUnobserves[i];
17892 if (pending.fragmentInstance !== fragmentInstance || pending.observer !== observer || pending.instance !== childInstance)
17893 pendingIntersectionUnobserves[writeIdx++] = pending;
17894 }
17895 pendingIntersectionUnobserves.length = writeIdx;
17896 observer.observe(childInstance);
17897 }), addFragmentHandleToInstance(childInstance, fragmentInstance));
17898 }
17899 function deleteChildFromFragmentInstance(childInstance, fragmentInstance) {
17900 var eventListeners = fragmentInstance._eventListeners;
17901 if (null !== eventListeners)
17902 for (var i = 0; i < eventListeners.length; i++) {
17903 var _eventListeners$i3 = eventListeners[i];
17904 childInstance.removeEventListener(
17905 _eventListeners$i3.type,
17906 _eventListeners$i3.attachedListener,
17907 getAttachOptions(_eventListeners$i3.optionsOrUseCapture)
17908 );
17909 }
17910 3 !== childInstance.nodeType && (eventListeners = fragmentInstance._observers, null !== eventListeners && eventListeners.forEach(function(observer) {
17911 "string" === typeof observer.rootMargin ? schedulePendingIntersectionUnobserve(
17912 fragmentInstance,
17913 observer,
17914 childInstance
17915 ) : observer.unobserve(childInstance);
17916 }), null != childInstance.reactFragments && childInstance.reactFragments.delete(fragmentInstance));
17917 }
17918 function clearContainerSparingly(container) {
17919 var nextNode = container.firstChild;
17920 nextNode && 10 === nextNode.nodeType && (nextNode = nextNode.nextSibling);
17921 for (; nextNode; ) {
17922 var node = nextNode;
17923 nextNode = nextNode.nextSibling;
17924 switch (node.nodeName) {
17925 case "HTML":
17926 case "HEAD":
17927 case "BODY":
17928 clearContainerSparingly(node);
17929 detachDeletedInstance(node);
17930 continue;
17931 case "SCRIPT":
17932 case "STYLE":
17933 continue;
17934 case "LINK":
17935 if ("stylesheet" === node.rel.toLowerCase()) continue;
17936 }
17937 container.removeChild(node);
17938 }
17939 }
17940 function canHydrateInstance(instance, type, props, inRootOrSingleton) {
17941 for (; 1 === instance.nodeType; ) {
17942 var anyProps = props;
17943 if (instance.nodeName.toLowerCase() !== type.toLowerCase()) {
17944 if (!inRootOrSingleton && ("INPUT" !== instance.nodeName || "hidden" !== instance.type))
17945 break;
17946 } else if (!inRootOrSingleton)
17947 if ("input" === type && "hidden" === instance.type) {
17948 checkAttributeStringCoercion(anyProps.name, "name");
17949 var name = null == anyProps.name ? null : "" + anyProps.name;
17950 if ("hidden" === anyProps.type && instance.getAttribute("name") === name)
17951 return instance;
17952 } else return instance;
17953 else if (!instance[internalHoistableMarker])
17954 switch (type) {
17955 case "meta":
17956 if (!instance.hasAttribute("itemprop")) break;
17957 return instance;
17958 case "link":
17959 name = instance.getAttribute("rel");
17960 if ("stylesheet" === name && instance.hasAttribute("data-precedence"))
17961 break;
17962 else if (name !== anyProps.rel || instance.getAttribute("href") !== (null == anyProps.href || "" === anyProps.href ? null : anyProps.href) || instance.getAttribute("crossorigin") !== (null == anyProps.crossOrigin ? null : anyProps.crossOrigin) || instance.getAttribute("title") !== (null == anyProps.title ? null : anyProps.title))
17963 break;
17964 return instance;
17965 case "style":
17966 if (instance.hasAttribute("data-precedence")) break;
17967 return instance;
17968 case "script":
17969 name = instance.getAttribute("src");
17970 if ((name !== (null == anyProps.src ? null : anyProps.src) || instance.getAttribute("type") !== (null == anyProps.type ? null : anyProps.type) || instance.getAttribute("crossorigin") !== (null == anyProps.crossOrigin ? null : anyProps.crossOrigin)) && name && instance.hasAttribute("async") && !instance.hasAttribute("itemprop"))
17971 break;
17972 return instance;
17973 default:
17974 return instance;
17975 }
17976 instance = getNextHydratable(instance.nextSibling);
17977 if (null === instance) break;
17978 }
17979 return null;
17980 }
17981 function canHydrateTextInstance(instance, text, inRootOrSingleton) {
17982 if ("" === text) return null;
17983 for (; 3 !== instance.nodeType; ) {
17984 if ((1 !== instance.nodeType || "INPUT" !== instance.nodeName || "hidden" !== instance.type) && !inRootOrSingleton)
17985 return null;
17986 instance = getNextHydratable(instance.nextSibling);
17987 if (null === instance) return null;
17988 }
17989 return instance;
17990 }
17991 function canHydrateHydrationBoundary(instance, inRootOrSingleton) {
17992 for (; 8 !== instance.nodeType; ) {
17993 if ((1 !== instance.nodeType || "INPUT" !== instance.nodeName || "hidden" !== instance.type) && !inRootOrSingleton)
17994 return null;
17995 instance = getNextHydratable(instance.nextSibling);
17996 if (null === instance) return null;
17997 }
17998 return instance;
17999 }
18000 function isSuspenseInstancePending(instance) {
18001 return instance.data === SUSPENSE_PENDING_START_DATA || instance.data === SUSPENSE_QUEUED_START_DATA;
18002 }
18003 function isSuspenseInstanceFallback(instance) {
18004 return instance.data === SUSPENSE_FALLBACK_START_DATA || instance.data === SUSPENSE_PENDING_START_DATA && instance.ownerDocument.readyState !== DOCUMENT_READY_STATE_LOADING;
18005 }
18006 function registerSuspenseInstanceRetry(instance, callback) {
18007 var ownerDocument = instance.ownerDocument;
18008 if (instance.data === SUSPENSE_QUEUED_START_DATA)
18009 instance._reactRetry = callback;
18010 else if (instance.data !== SUSPENSE_PENDING_START_DATA || ownerDocument.readyState !== DOCUMENT_READY_STATE_LOADING)
18011 callback();
18012 else {
18013 var listener = function() {
18014 callback();
18015 ownerDocument.removeEventListener("DOMContentLoaded", listener);
18016 };
18017 ownerDocument.addEventListener("DOMContentLoaded", listener);
18018 instance._reactRetry = listener;
18019 }
18020 }
18021 function getNextHydratable(node) {
18022 for (; null != node; node = node.nextSibling) {
18023 var nodeType = node.nodeType;
18024 if (1 === nodeType || 3 === nodeType) break;
18025 if (8 === nodeType) {
18026 nodeType = node.data;
18027 if (nodeType === SUSPENSE_START_DATA || nodeType === SUSPENSE_FALLBACK_START_DATA || nodeType === SUSPENSE_PENDING_START_DATA || nodeType === SUSPENSE_QUEUED_START_DATA || nodeType === ACTIVITY_START_DATA || nodeType === FORM_STATE_IS_MATCHING || nodeType === FORM_STATE_IS_NOT_MATCHING)
18028 break;
18029 if (nodeType === SUSPENSE_END_DATA || nodeType === ACTIVITY_END_DATA)
18030 return null;
18031 }
18032 }
18033 return node;
18034 }
18035 function describeHydratableInstanceForDevWarnings(instance) {
18036 if (1 === instance.nodeType) {
18037 for (var JSCompiler_temp_const = instance.nodeName.toLowerCase(), serverDifferences = {}, attributes = instance.attributes, i = 0; i < attributes.length; i++) {
18038 var attr = attributes[i];
18039 serverDifferences[getPropNameFromAttributeName(attr.name)] = "style" === attr.name.toLowerCase() ? getStylesObjectFromElement(instance) : attr.value;
18040 }
18041 return { type: JSCompiler_temp_const, props: serverDifferences };
18042 }
18043 return 8 === instance.nodeType ? instance.data === ACTIVITY_START_DATA ? { type: "Activity", props: {} } : { type: "Suspense", props: {} } : instance.nodeValue;
18044 }
18045 function diffHydratedTextForDevWarnings(textInstance, text, parentProps) {
18046 return null === parentProps || true !== parentProps[SUPPRESS_HYDRATION_WARNING] ? (textInstance.nodeValue === text ? textInstance = null : (text = normalizeMarkupForTextOrAttribute(text), textInstance = normalizeMarkupForTextOrAttribute(textInstance.nodeValue) === text ? null : textInstance.nodeValue), textInstance) : null;
18047 }
18048 function getNextHydratableInstanceAfterHydrationBoundary(hydrationInstance) {
18049 hydrationInstance = hydrationInstance.nextSibling;
18050 for (var depth = 0; hydrationInstance; ) {
18051 if (8 === hydrationInstance.nodeType) {
18052 var data = hydrationInstance.data;
18053 if (data === SUSPENSE_END_DATA || data === ACTIVITY_END_DATA) {
18054 if (0 === depth)
18055 return getNextHydratable(hydrationInstance.nextSibling);
18056 depth--;
18057 } else
18058 data !== SUSPENSE_START_DATA && data !== SUSPENSE_FALLBACK_START_DATA && data !== SUSPENSE_PENDING_START_DATA && data !== SUSPENSE_QUEUED_START_DATA && data !== ACTIVITY_START_DATA || depth++;
18059 }
18060 hydrationInstance = hydrationInstance.nextSibling;
18061 }
18062 return null;
18063 }
18064 function getParentHydrationBoundary(targetInstance) {
18065 targetInstance = targetInstance.previousSibling;
18066 for (var depth = 0; targetInstance; ) {
18067 if (8 === targetInstance.nodeType) {
18068 var data = targetInstance.data;
18069 if (data === SUSPENSE_START_DATA || data === SUSPENSE_FALLBACK_START_DATA || data === SUSPENSE_PENDING_START_DATA || data === SUSPENSE_QUEUED_START_DATA || data === ACTIVITY_START_DATA) {
18070 if (0 === depth) return targetInstance;
18071 depth--;
18072 } else
18073 data !== SUSPENSE_END_DATA && data !== ACTIVITY_END_DATA || depth++;
18074 }
18075 targetInstance = targetInstance.previousSibling;
18076 }
18077 return null;
18078 }
18079 function commitHydratedContainer(container) {
18080 retryIfBlockedOn(container);
18081 }
18082 function commitHydratedActivityInstance(activityInstance) {
18083 retryIfBlockedOn(activityInstance);
18084 }
18085 function commitHydratedSuspenseInstance(suspenseInstance) {
18086 retryIfBlockedOn(suspenseInstance);
18087 }
18088 function setFocusIfFocusable(node, focusOptions) {
18089 function handleFocus() {
18090 didFocus = true;
18091 }
18092 if (node.ownerDocument.activeElement === node) return true;
18093 var didFocus = false;
18094 try {
18095 node.ownerDocument.addEventListener("focus", handleFocus, true), (node.focus || HTMLElement.prototype.focus).call(node, focusOptions);
18096 } finally {
18097 node.ownerDocument.removeEventListener("focus", handleFocus, true);
18098 }
18099 return didFocus;
18100 }
18101 function requestPostPaintCallback(callback) {
18102 localRequestAnimationFrame(function() {
18103 localRequestAnimationFrame(function(time) {
18104 return callback(time);
18105 });
18106 });
18107 }
18108 function resolveSingletonInstance(type, props, rootContainerInstance, hostContext, validateDOMNestingDev) {
18109 validateDOMNestingDev && validateDOMNesting(type, hostContext.ancestorInfo);
18110 props = getOwnerDocumentFromRootContainer(rootContainerInstance);
18111 switch (type) {
18112 case "html":
18113 type = props.documentElement;
18114 if (!type)
18115 throw Error(
18116 "React expected an <html> element (document.documentElement) to exist in the Document but one was not found. React never removes the documentElement for any Document it renders into so the cause is likely in some other script running on this page."
18117 );
18118 return type;
18119 case "head":
18120 type = props.head;
18121 if (!type)
18122 throw Error(
18123 "React expected a <head> element (document.head) to exist in the Document but one was not found. React never removes the head for any Document it renders into so the cause is likely in some other script running on this page."
18124 );
18125 return type;
18126 case "body":
18127 type = props.body;
18128 if (!type)
18129 throw Error(
18130 "React expected a <body> element (document.body) to exist in the Document but one was not found. React never removes the body for any Document it renders into so the cause is likely in some other script running on this page."
18131 );
18132 return type;
18133 default:
18134 throw Error(
18135 "resolveSingletonInstance was called with an element type that is not supported. This is a bug in React."
18136 );
18137 }
18138 }
18139 function acquireSingletonInstance(type, props, instance, internalInstanceHandle) {
18140 if (!instance[internalContainerInstanceKey] && getInstanceFromNode(instance)) {
18141 var tagName = instance.tagName.toLowerCase();
18142 console.error(
18143 "You are mounting a new %s component when a previous one has not first unmounted. It is an error to render more than one %s component at a time and attributes and children of these components will likely fail in unpredictable ways. Please only render a single instance of <%s> and if you need to mount a new one, ensure any previous ones have unmounted first.",
18144 tagName,
18145 tagName,
18146 tagName
18147 );
18148 }
18149 switch (type) {
18150 case "html":
18151 case "head":
18152 case "body":
18153 break;
18154 default:
18155 console.error(
18156 "acquireSingletonInstance was called with an element type that is not supported. This is a bug in React."
18157 );
18158 }
18159 for (tagName = instance.attributes; tagName.length; )
18160 instance.removeAttributeNode(tagName[0]);
18161 setInitialProperties(instance, type, props);
18162 instance[internalInstanceKey] = internalInstanceHandle;
18163 instance[internalPropsKey] = props;
18164 }
18165 function releaseSingletonInstance(instance, type, props) {
18166 for (var propKey in props) {
18167 var propValue = props[propKey];
18168 props.hasOwnProperty(propKey) && null != propValue && setProp(instance, type, propKey, null, emptyProps, propValue);
18169 }
18170 null != props.dangerouslySetInnerHTML && (instance.textContent = "");
18171 instance.onclick === noop$1 && (instance.onclick = null);
18172 detachDeletedInstance(instance);
18173 }
18174 function clearSingletonPreambleContribution(instance) {
18175 for (var attributes = instance.attributes; attributes.length; )
18176 instance.removeAttributeNode(attributes[0]);
18177 detachDeletedInstance(instance);
18178 }
18179 function getHoistableRoot(container) {
18180 if ("function" === typeof container.getRootNode) {
18181 var rootNode = container.getRootNode();
18182 if (9 === rootNode.nodeType || 11 === rootNode.nodeType)
18183 return rootNode;
18184 }
18185 return 9 === container.nodeType ? container : container.ownerDocument;
18186 }
18187 function preconnectAs(rel, href, crossOrigin) {
18188 var ownerDocument = globalDocument;
18189 if (ownerDocument && "string" === typeof href && href) {
18190 var limitedEscapedHref = escapeSelectorAttributeValueInsideDoubleQuotes(href);
18191 limitedEscapedHref = 'link[rel="' + rel + '"][href="' + limitedEscapedHref + '"]';
18192 "string" === typeof crossOrigin && (limitedEscapedHref += '[crossorigin="' + crossOrigin + '"]');
18193 preconnectsSet.has(limitedEscapedHref) || (preconnectsSet.add(limitedEscapedHref), rel = { rel, crossOrigin, href }, null === ownerDocument.querySelector(limitedEscapedHref) && (href = ownerDocument.createElement("link"), setInitialProperties(href, "link", rel), markNodeAsHoistable(href), ownerDocument.head.appendChild(href)));
18194 }
18195 }
18196 function getResource(type, currentProps, pendingProps, currentResource) {
18197 var resourceRoot = (resourceRoot = rootInstanceStackCursor.current) ? getHoistableRoot(resourceRoot) : null;
18198 if (!resourceRoot)
18199 throw Error(
18200 '"resourceRoot" was expected to exist. This is a bug in React.'
18201 );
18202 switch (type) {
18203 case "meta":
18204 case "title":
18205 return null;
18206 case "style":
18207 return "string" === typeof pendingProps.precedence && "string" === typeof pendingProps.href ? (pendingProps = getStyleKey(pendingProps.href), currentProps = getResourcesFromRoot(resourceRoot).hoistableStyles, currentResource = currentProps.get(pendingProps), currentResource || (currentResource = {
18208 type: "style",
18209 instance: null,
18210 count: 0,
18211 state: null
18212 }, currentProps.set(pendingProps, currentResource)), currentResource) : { type: "void", instance: null, count: 0, state: null };
18213 case "link":
18214 if ("stylesheet" === pendingProps.rel && "string" === typeof pendingProps.href && "string" === typeof pendingProps.precedence) {
18215 type = getStyleKey(pendingProps.href);
18216 var _styles = getResourcesFromRoot(resourceRoot).hoistableStyles, _resource = _styles.get(type);
18217 _resource || (resourceRoot = resourceRoot.ownerDocument || resourceRoot, _resource = {
18218 type: "stylesheet",
18219 instance: null,
18220 count: 0,
18221 state: { loading: NotLoaded, preload: null }
18222 }, _styles.set(type, _resource), (_styles = resourceRoot.querySelector(
18223 getStylesheetSelectorFromKey(type)
18224 )) ? _styles._p || (_resource.instance = _styles, _resource.state.loading = Loaded | Inserted) : (_styles = preloadPropsMap.get(type), _styles || (_styles = {
18225 rel: "preload",
18226 as: "style",
18227 href: pendingProps.href,
18228 crossOrigin: pendingProps.crossOrigin,
18229 integrity: pendingProps.integrity,
18230 media: pendingProps.media,
18231 hrefLang: pendingProps.hrefLang,
18232 referrerPolicy: pendingProps.referrerPolicy
18233 }, preloadPropsMap.set(type, _styles)), preloadStylesheet(
18234 resourceRoot,
18235 type,
18236 _styles,
18237 _resource.state
18238 )));
18239 if (currentProps && null === currentResource)
18240 throw pendingProps = "\n\n - " + describeLinkForResourceErrorDEV(currentProps) + "\n + " + describeLinkForResourceErrorDEV(pendingProps), Error(
18241 "Expected <link> not to update to be updated to a stylesheet with precedence. Check the `rel`, `href`, and `precedence` props of this component. Alternatively, check whether two different <link> components render in the same slot or share the same key." + pendingProps
18242 );
18243 return _resource;
18244 }
18245 if (currentProps && null !== currentResource)
18246 throw pendingProps = "\n\n - " + describeLinkForResourceErrorDEV(currentProps) + "\n + " + describeLinkForResourceErrorDEV(pendingProps), Error(
18247 "Expected stylesheet with precedence to not be updated to a different kind of <link>. Check the `rel`, `href`, and `precedence` props of this component. Alternatively, check whether two different <link> components render in the same slot or share the same key." + pendingProps
18248 );
18249 return null;
18250 case "script":
18251 return currentProps = pendingProps.async, pendingProps = pendingProps.src, "string" === typeof pendingProps && currentProps && "function" !== typeof currentProps && "symbol" !== typeof currentProps ? (pendingProps = getScriptKey(pendingProps), currentProps = getResourcesFromRoot(resourceRoot).hoistableScripts, currentResource = currentProps.get(pendingProps), currentResource || (currentResource = {
18252 type: "script",
18253 instance: null,
18254 count: 0,
18255 state: null
18256 }, currentProps.set(pendingProps, currentResource)), currentResource) : { type: "void", instance: null, count: 0, state: null };
18257 default:
18258 throw Error(
18259 'getResource encountered a type it did not expect: "' + type + '". this is a bug in React.'
18260 );
18261 }
18262 }
18263 function describeLinkForResourceErrorDEV(props) {
18264 var describedProps = 0, description = "<link";
18265 "string" === typeof props.rel ? (describedProps++, description += ' rel="' + props.rel + '"') : hasOwnProperty.call(props, "rel") && (describedProps++, description += ' rel="' + (null === props.rel ? "null" : "invalid type " + typeof props.rel) + '"');
18266 "string" === typeof props.href ? (describedProps++, description += ' href="' + props.href + '"') : hasOwnProperty.call(props, "href") && (describedProps++, description += ' href="' + (null === props.href ? "null" : "invalid type " + typeof props.href) + '"');
18267 "string" === typeof props.precedence ? (describedProps++, description += ' precedence="' + props.precedence + '"') : hasOwnProperty.call(props, "precedence") && (describedProps++, description += " precedence={" + (null === props.precedence ? "null" : "invalid type " + typeof props.precedence) + "}");
18268 Object.getOwnPropertyNames(props).length > describedProps && (description += " ...");
18269 return description + " />";
18270 }
18271 function getStyleKey(href) {
18272 return 'href="' + escapeSelectorAttributeValueInsideDoubleQuotes(href) + '"';
18273 }
18274 function getStylesheetSelectorFromKey(key) {
18275 return 'link[rel="stylesheet"][' + key + "]";
18276 }
18277 function stylesheetPropsFromRawProps(rawProps) {
18278 return assign({}, rawProps, {
18279 "data-precedence": rawProps.precedence,
18280 precedence: null
18281 });
18282 }
18283 function preloadStylesheet(ownerDocument, key, preloadProps, state) {
18284 if (key = ownerDocument.querySelector(
18285 'link[rel="preload"][as="style"][' + key + "]"
18286 )) {
18287 if (true !== key[internalLoadPendingKey]) {
18288 state.loading = Loaded;
18289 return;
18290 }
18291 } else
18292 key = ownerDocument.createElement("link"), key[internalLoadPendingKey] = true, key.onload = key.onerror = clearPendingLoadOnNode.bind(null, key), setInitialProperties(key, "link", preloadProps), markNodeAsHoistable(key), ownerDocument.head.appendChild(key);
18293 state.preload = key;
18294 key.addEventListener("load", function() {
18295 return state.loading |= Loaded;
18296 });
18297 key.addEventListener("error", function() {
18298 return state.loading |= Errored;
18299 });
18300 }
18301 function getScriptKey(src) {
18302 return '[src="' + escapeSelectorAttributeValueInsideDoubleQuotes(src) + '"]';
18303 }
18304 function getScriptSelectorFromKey(key) {
18305 return "script[async]" + key;
18306 }
18307 function acquireResource(hoistableRoot, resource, props) {
18308 resource.count++;
18309 if (null === resource.instance)
18310 switch (resource.type) {
18311 case "style":
18312 var instance = hoistableRoot.querySelector(
18313 'style[data-href~="' + escapeSelectorAttributeValueInsideDoubleQuotes(props.href) + '"]'
18314 );
18315 if (instance)
18316 return resource.instance = instance, markNodeAsHoistable(instance), instance;
18317 var styleProps = assign({}, props, {
18318 "data-href": props.href,
18319 "data-precedence": props.precedence,
18320 href: null,
18321 precedence: null
18322 });
18323 instance = (hoistableRoot.ownerDocument || hoistableRoot).createElement("style");
18324 markNodeAsHoistable(instance);
18325 setInitialProperties(instance, "style", styleProps);
18326 insertStylesheet(instance, props.precedence, hoistableRoot);
18327 return resource.instance = instance;
18328 case "stylesheet":
18329 styleProps = getStyleKey(props.href);
18330 var _instance = hoistableRoot.querySelector(
18331 getStylesheetSelectorFromKey(styleProps)
18332 );
18333 if (_instance)
18334 return resource.state.loading |= Inserted, resource.instance = _instance, markNodeAsHoistable(_instance), _instance;
18335 instance = stylesheetPropsFromRawProps(props);
18336 (styleProps = preloadPropsMap.get(styleProps)) && adoptPreloadPropsForStylesheet(instance, styleProps);
18337 _instance = (hoistableRoot.ownerDocument || hoistableRoot).createElement("link");
18338 markNodeAsHoistable(_instance);
18339 var linkInstance = _instance;
18340 linkInstance._p = new Promise(function(resolve, reject) {
18341 linkInstance.onload = resolve;
18342 linkInstance.onerror = reject;
18343 });
18344 setInitialProperties(_instance, "link", instance);
18345 resource.state.loading |= Inserted;
18346 insertStylesheet(_instance, props.precedence, hoistableRoot);
18347 return resource.instance = _instance;
18348 case "script":
18349 _instance = getScriptKey(props.src);
18350 if (styleProps = hoistableRoot.querySelector(
18351 getScriptSelectorFromKey(_instance)
18352 ))
18353 return resource.instance = styleProps, markNodeAsHoistable(styleProps), styleProps;
18354 instance = props;
18355 if (styleProps = preloadPropsMap.get(_instance))
18356 instance = assign({}, props), adoptPreloadPropsForScript(instance, styleProps);
18357 hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot;
18358 styleProps = hoistableRoot.createElement("script");
18359 markNodeAsHoistable(styleProps);
18360 setInitialProperties(styleProps, "link", instance);
18361 hoistableRoot.head.appendChild(styleProps);
18362 return resource.instance = styleProps;
18363 case "void":
18364 return null;
18365 default:
18366 throw Error(
18367 'acquireResource encountered a resource type it did not expect: "' + resource.type + '". this is a bug in React.'
18368 );
18369 }
18370 else
18371 "stylesheet" === resource.type && (resource.state.loading & Inserted) === NotLoaded && (instance = resource.instance, resource.state.loading |= Inserted, insertStylesheet(instance, props.precedence, hoistableRoot));
18372 return resource.instance;
18373 }
18374 function insertStylesheet(instance, precedence, root2) {
18375 for (var nodes = root2.querySelectorAll(
18376 'link[rel="stylesheet"][data-precedence],style[data-precedence]'
18377 ), last = nodes.length ? nodes[nodes.length - 1] : null, prior = last, i = 0; i < nodes.length; i++) {
18378 var node = nodes[i];
18379 if (node.dataset.precedence === precedence) prior = node;
18380 else if (prior !== last) break;
18381 }
18382 prior ? prior.parentNode.insertBefore(instance, prior.nextSibling) : (precedence = 9 === root2.nodeType ? root2.head : root2, precedence.insertBefore(instance, precedence.firstChild));
18383 }
18384 function adoptPreloadPropsForStylesheet(stylesheetProps, preloadProps) {
18385 null == stylesheetProps.crossOrigin && (stylesheetProps.crossOrigin = preloadProps.crossOrigin);
18386 null == stylesheetProps.referrerPolicy && (stylesheetProps.referrerPolicy = preloadProps.referrerPolicy);
18387 null == stylesheetProps.title && (stylesheetProps.title = preloadProps.title);
18388 }
18389 function adoptPreloadPropsForScript(scriptProps, preloadProps) {
18390 null == scriptProps.crossOrigin && (scriptProps.crossOrigin = preloadProps.crossOrigin);
18391 null == scriptProps.referrerPolicy && (scriptProps.referrerPolicy = preloadProps.referrerPolicy);
18392 null == scriptProps.integrity && (scriptProps.integrity = preloadProps.integrity);
18393 }
18394 function getHydratableHoistableCache(type, keyAttribute, ownerDocument) {
18395 if (null === tagCaches) {
18396 var cache = /* @__PURE__ */ new Map();
18397 var caches = tagCaches = /* @__PURE__ */ new Map();
18398 caches.set(ownerDocument, cache);
18399 } else
18400 caches = tagCaches, cache = caches.get(ownerDocument), cache || (cache = /* @__PURE__ */ new Map(), caches.set(ownerDocument, cache));
18401 if (cache.has(type)) return cache;
18402 cache.set(type, null);
18403 ownerDocument = ownerDocument.getElementsByTagName(type);
18404 for (caches = 0; caches < ownerDocument.length; caches++) {
18405 var node = ownerDocument[caches];
18406 if (!(node[internalHoistableMarker] || node[internalInstanceKey] || "link" === type && "stylesheet" === node.getAttribute("rel")) && node.namespaceURI !== SVG_NAMESPACE) {
18407 var nodeKey = node.getAttribute(keyAttribute) || "";
18408 nodeKey = type + nodeKey;
18409 var existing = cache.get(nodeKey);
18410 existing ? existing.push(node) : cache.set(nodeKey, [node]);
18411 }
18412 }
18413 return cache;
18414 }
18415 function mountHoistable(hoistableRoot, type, instance) {
18416 hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot;
18417 hoistableRoot.head.insertBefore(
18418 instance,
18419 "title" === type ? hoistableRoot.querySelector("head > title") : null
18420 );
18421 }
18422 function isHostHoistableType(type, props, hostContext) {
18423 var outsideHostContainerContext = !hostContext.ancestorInfo.containerTagInScope;
18424 if (hostContext.context === HostContextNamespaceSvg || null != props.itemProp)
18425 return !outsideHostContainerContext || null == props.itemProp || "meta" !== type && "title" !== type && "style" !== type && "link" !== type && "script" !== type || console.error(
18426 "Cannot render a <%s> outside the main document if it has an `itemProp` prop. `itemProp` suggests the tag belongs to an `itemScope` which can appear anywhere in the DOM. If you were intending for React to hoist this <%s> remove the `itemProp` prop. Otherwise, try moving this tag into the <head> or <body> of the Document.",
18427 type,
18428 type
18429 ), false;
18430 switch (type) {
18431 case "meta":
18432 case "title":
18433 return true;
18434 case "style":
18435 if ("string" !== typeof props.precedence || "string" !== typeof props.href || "" === props.href) {
18436 outsideHostContainerContext && console.error(
18437 'Cannot render a <style> outside the main document without knowing its precedence and a unique href key. React can hoist and deduplicate <style> tags if you provide a `precedence` prop along with an `href` prop that does not conflict with the `href` values used in any other hoisted <style> or <link rel="stylesheet" ...> tags. Note that hoisting <style> tags is considered an advanced feature that most will not use directly. Consider moving the <style> tag to the <head> or consider adding a `precedence="default"` and `href="some unique resource identifier"`.'
18438 );
18439 break;
18440 }
18441 return true;
18442 case "link":
18443 if ("string" !== typeof props.rel || "string" !== typeof props.href || "" === props.href || props.onLoad || props.onError) {
18444 if ("stylesheet" === props.rel && "string" === typeof props.precedence) {
18445 type = props.href;
18446 var onError = props.onError, disabled = props.disabled;
18447 hostContext = [];
18448 props.onLoad && hostContext.push("`onLoad`");
18449 onError && hostContext.push("`onError`");
18450 null != disabled && hostContext.push("`disabled`");
18451 onError = propNamesListJoin(hostContext, "and");
18452 onError += 1 === hostContext.length ? " prop" : " props";
18453 disabled = 1 === hostContext.length ? "an " + onError : "the " + onError;
18454 hostContext.length && console.error(
18455 'React encountered a <link rel="stylesheet" href="%s" ... /> with a `precedence` prop that also included %s. The presence of loading and error handlers indicates an intent to manage the stylesheet loading state from your from your Component code and React will not hoist or deduplicate this stylesheet. If your intent was to have React hoist and deduplciate this stylesheet using the `precedence` prop remove the %s, otherwise remove the `precedence` prop.',
18456 type,
18457 disabled,
18458 onError
18459 );
18460 }
18461 outsideHostContainerContext && ("string" !== typeof props.rel || "string" !== typeof props.href || "" === props.href ? console.error(
18462 "Cannot render a <link> outside the main document without a `rel` and `href` prop. Try adding a `rel` and/or `href` prop to this <link> or moving the link into the <head> tag"
18463 ) : (props.onError || props.onLoad) && console.error(
18464 "Cannot render a <link> with onLoad or onError listeners outside the main document. Try removing onLoad={...} and onError={...} or moving it into the root <head> tag or somewhere in the <body>."
18465 ));
18466 break;
18467 }
18468 switch (props.rel) {
18469 case "stylesheet":
18470 return type = props.precedence, props = props.disabled, "string" !== typeof type && outsideHostContainerContext && console.error(
18471 'Cannot render a <link rel="stylesheet" /> outside the main document without knowing its precedence. Consider adding precedence="default" or moving it into the root <head> tag.'
18472 ), "string" === typeof type && null == props;
18473 default:
18474 return true;
18475 }
18476 case "script":
18477 type = props.async && "function" !== typeof props.async && "symbol" !== typeof props.async;
18478 if (!type || props.onLoad || props.onError || !props.src || "string" !== typeof props.src) {
18479 outsideHostContainerContext && (type ? props.onLoad || props.onError ? console.error(
18480 "Cannot render a <script> with onLoad or onError listeners outside the main document. Try removing onLoad={...} and onError={...} or moving it into the root <head> tag or somewhere in the <body>."
18481 ) : console.error(
18482 "Cannot render a <script> outside the main document without `async={true}` and a non-empty `src` prop. Ensure there is a valid `src` and either make the script async or move it into the root <head> tag or somewhere in the <body>."
18483 ) : console.error(
18484 'Cannot render a sync or defer <script> outside the main document without knowing its order. Try adding async="" or moving it into the root <head> tag.'
18485 ));
18486 break;
18487 }
18488 return true;
18489 case "noscript":
18490 case "template":
18491 outsideHostContainerContext && console.error(
18492 "Cannot render <%s> outside the main document. Try moving it into the root <head> tag.",
18493 type
18494 );
18495 }
18496 return false;
18497 }
18498 function maySuspendCommit(type, props) {
18499 return "img" === type && null != props.src && "" !== props.src && null == props.onLoad && "lazy" !== props.loading;
18500 }
18501 function preloadResource(resource) {
18502 return "stylesheet" === resource.type && (resource.state.loading & Settled) === NotLoaded ? false : true;
18503 }
18504 function estimateImageBytes(instance) {
18505 return (instance.width || 100) * (instance.height || 100) * ("number" === typeof devicePixelRatio ? devicePixelRatio : 1) * 0.25;
18506 }
18507 function suspendInstance(state, instance) {
18508 "function" === typeof instance.decode && (state.imgCount++, instance.complete || (state.imgBytes += estimateImageBytes(instance), state.suspenseyImages.push(instance)), state = onUnsuspendImg.bind(state), instance.decode().then(state, state));
18509 }
18510 function suspendResource(state, hoistableRoot, resource, props) {
18511 if ("stylesheet" === resource.type && ("string" !== typeof props.media || false !== matchMedia(props.media).matches) && (resource.state.loading & Inserted) === NotLoaded) {
18512 if (null === resource.instance) {
18513 var key = getStyleKey(props.href), instance = hoistableRoot.querySelector(
18514 getStylesheetSelectorFromKey(key)
18515 );
18516 if (instance) {
18517 hoistableRoot = instance._p;
18518 null !== hoistableRoot && "object" === typeof hoistableRoot && "function" === typeof hoistableRoot.then && (state.count++, state = onUnsuspend.bind(state), hoistableRoot.then(state, state));
18519 resource.state.loading |= Inserted;
18520 resource.instance = instance;
18521 markNodeAsHoistable(instance);
18522 return;
18523 }
18524 instance = hoistableRoot.ownerDocument || hoistableRoot;
18525 props = stylesheetPropsFromRawProps(props);
18526 (key = preloadPropsMap.get(key)) && adoptPreloadPropsForStylesheet(props, key);
18527 instance = instance.createElement("link");
18528 markNodeAsHoistable(instance);
18529 var linkInstance = instance;
18530 linkInstance._p = new Promise(function(resolve, reject) {
18531 linkInstance.onload = resolve;
18532 linkInstance.onerror = reject;
18533 });
18534 setInitialProperties(instance, "link", props);
18535 resource.instance = instance;
18536 }
18537 null === state.stylesheets && (state.stylesheets = /* @__PURE__ */ new Map());
18538 state.stylesheets.set(resource, hoistableRoot);
18539 (hoistableRoot = resource.state.preload) && (resource.state.loading & Settled) === NotLoaded && (state.count++, resource = onUnsuspend.bind(state), hoistableRoot.addEventListener("load", resource), hoistableRoot.addEventListener("error", resource));
18540 }
18541 }
18542 function waitForCommitToBeReady(state, timeoutOffset) {
18543 state.stylesheets && 0 === state.count && insertSuspendedStylesheets(state, state.stylesheets);
18544 return 0 < state.count || 0 < state.imgCount ? function(commit) {
18545 var stylesheetTimer = setTimeout(function() {
18546 state.stylesheets && insertSuspendedStylesheets(state, state.stylesheets);
18547 if (state.unsuspend) {
18548 var unsuspend = state.unsuspend;
18549 state.unsuspend = null;
18550 unsuspend();
18551 }
18552 }, SUSPENSEY_STYLESHEET_TIMEOUT + timeoutOffset);
18553 0 < state.imgBytes && 0 === estimatedBytesWithinLimit && (estimatedBytesWithinLimit = 125 * estimateBandwidth() * SUSPENSEY_IMAGE_TIME_ESTIMATE);
18554 var imgTimer = setTimeout(
18555 function() {
18556 state.waitingForImages = false;
18557 if (0 === state.count && (state.stylesheets && insertSuspendedStylesheets(state, state.stylesheets), state.unsuspend)) {
18558 var unsuspend = state.unsuspend;
18559 state.unsuspend = null;
18560 unsuspend();
18561 }
18562 },
18563 (state.imgBytes > estimatedBytesWithinLimit ? 50 : SUSPENSEY_IMAGE_TIMEOUT) + timeoutOffset
18564 );
18565 state.unsuspend = commit;
18566 return function() {
18567 state.unsuspend = null;
18568 clearTimeout(stylesheetTimer);
18569 clearTimeout(imgTimer);
18570 };
18571 } : null;
18572 }
18573 function checkIfFullyUnsuspended(state) {
18574 if (0 === state.count && (0 === state.imgCount || !state.waitingForImages)) {
18575 if (state.stylesheets)
18576 insertSuspendedStylesheets(state, state.stylesheets);
18577 else if (state.unsuspend) {
18578 var unsuspend = state.unsuspend;
18579 state.unsuspend = null;
18580 unsuspend();
18581 }
18582 }
18583 }
18584 function onUnsuspend() {
18585 this.count--;
18586 checkIfFullyUnsuspended(this);
18587 }
18588 function onUnsuspendImg() {
18589 this.imgCount--;
18590 checkIfFullyUnsuspended(this);
18591 }
18592 function insertSuspendedStylesheets(state, resources) {
18593 state.stylesheets = null;
18594 null !== state.unsuspend && (state.count++, precedencesByRoot = /* @__PURE__ */ new Map(), resources.forEach(insertStylesheetIntoRoot, state), precedencesByRoot = null, onUnsuspend.call(state));
18595 }
18596 function insertStylesheetIntoRoot(root2, resource) {
18597 if (!(resource.state.loading & Inserted)) {
18598 var precedences = precedencesByRoot.get(root2);
18599 if (precedences) var last = precedences.get(LAST_PRECEDENCE);
18600 else {
18601 precedences = /* @__PURE__ */ new Map();
18602 precedencesByRoot.set(root2, precedences);
18603 for (var nodes = root2.querySelectorAll(
18604 "link[data-precedence],style[data-precedence]"
18605 ), i = 0; i < nodes.length; i++) {
18606 var node = nodes[i];
18607 if ("LINK" === node.nodeName || "not all" !== node.getAttribute("media"))
18608 precedences.set(node.dataset.precedence, node), last = node;
18609 }
18610 last && precedences.set(LAST_PRECEDENCE, last);
18611 }
18612 nodes = resource.instance;
18613 node = nodes.getAttribute("data-precedence");
18614 i = precedences.get(node) || last;
18615 i === last && precedences.set(LAST_PRECEDENCE, nodes);
18616 precedences.set(node, nodes);
18617 this.count++;
18618 last = onUnsuspend.bind(this);
18619 nodes.addEventListener("load", last);
18620 nodes.addEventListener("error", last);
18621 i ? i.parentNode.insertBefore(nodes, i.nextSibling) : (root2 = 9 === root2.nodeType ? root2.head : root2, root2.insertBefore(nodes, root2.firstChild));
18622 resource.state.loading |= Inserted;
18623 }
18624 }
18625 function FiberRootNode(containerInfo, tag, hydrate2, identifierPrefix, onUncaughtError, onCaughtError, onRecoverableError, onDefaultTransitionIndicator, formState) {
18626 this.tag = 1;
18627 this.containerInfo = containerInfo;
18628 this.pingCache = this.current = this.pendingChildren = null;
18629 this.timeoutHandle = noTimeout;
18630 this.callbackNode = this.next = this.pendingContext = this.context = this.cancelPendingCommit = null;
18631 this.callbackPriority = 0;
18632 this.expirationTimes = createLaneMap(-1);
18633 this.entangledLanes = this.shellSuspendCounter = this.errorRecoveryDisabledLanes = this.expiredLanes = this.warmLanes = this.pingedLanes = this.suspendedLanes = this.pendingLanes = 0;
18634 this.entanglements = createLaneMap(0);
18635 this.hiddenUpdates = createLaneMap(null);
18636 this.identifierPrefix = identifierPrefix;
18637 this.onUncaughtError = onUncaughtError;
18638 this.onCaughtError = onCaughtError;
18639 this.onRecoverableError = onRecoverableError;
18640 this.pooledCache = null;
18641 this.pooledCacheLanes = 0;
18642 this.formState = formState;
18643 this.transitionTypes = null;
18644 this.incompleteTransitions = /* @__PURE__ */ new Map();
18645 this.passiveEffectDuration = this.effectDuration = -0;
18646 this.memoizedUpdaters = /* @__PURE__ */ new Set();
18647 containerInfo = this.pendingUpdatersLaneMap = [];
18648 for (tag = 0; 31 > tag; tag++) containerInfo.push(/* @__PURE__ */ new Set());
18649 this._debugRootType = hydrate2 ? "hydrateRoot()" : "createRoot()";
18650 }
18651 function createFiberRoot(containerInfo, tag, hydrate2, initialChildren, hydrationCallbacks, isStrictMode, identifierPrefix, formState, onUncaughtError, onCaughtError, onRecoverableError, onDefaultTransitionIndicator) {
18652 containerInfo = new FiberRootNode(
18653 containerInfo,
18654 tag,
18655 hydrate2,
18656 identifierPrefix,
18657 onUncaughtError,
18658 onCaughtError,
18659 onRecoverableError,
18660 onDefaultTransitionIndicator,
18661 formState
18662 );
18663 tag = ConcurrentMode;
18664 true === isStrictMode && (tag |= StrictLegacyMode | StrictEffectsMode);
18665 tag |= ProfileMode;
18666 isStrictMode = createFiber(3, null, null, tag);
18667 containerInfo.current = isStrictMode;
18668 isStrictMode.stateNode = containerInfo;
18669 tag = createCache();
18670 retainCache(tag);
18671 containerInfo.pooledCache = tag;
18672 retainCache(tag);
18673 isStrictMode.memoizedState = {
18674 element: initialChildren,
18675 isDehydrated: hydrate2,
18676 cache: tag
18677 };
18678 initializeUpdateQueue(isStrictMode);
18679 return containerInfo;
18680 }
18681 function getContextForSubtree(parentComponent) {
18682 if (!parentComponent) return emptyContextObject;
18683 parentComponent = emptyContextObject;
18684 return parentComponent;
18685 }
18686 function updateContainerImpl(rootFiber, lane, element, container, parentComponent, callback) {
18687 if (injectedHook && "function" === typeof injectedHook.onScheduleFiberRoot)
18688 try {
18689 injectedHook.onScheduleFiberRoot(rendererID, container, element);
18690 } catch (err) {
18691 hasLoggedError || (hasLoggedError = true, console.error(
18692 "React instrumentation encountered an error: %o",
18693 err
18694 ));
18695 }
18696 parentComponent = getContextForSubtree(parentComponent);
18697 null === container.context ? container.context = parentComponent : container.pendingContext = parentComponent;
18698 isRendering && null !== current && !didWarnAboutNestedUpdates && (didWarnAboutNestedUpdates = true, console.error(
18699 "Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate.\n\nCheck the render method of %s.",
18700 getComponentNameFromFiber(current) || "Unknown"
18701 ));
18702 container = createUpdate(lane);
18703 container.payload = { element };
18704 callback = void 0 === callback ? null : callback;
18705 null !== callback && ("function" !== typeof callback && console.error(
18706 "Expected the last optional `callback` argument to be a function. Instead received: %s.",
18707 callback
18708 ), container.callback = callback);
18709 element = enqueueUpdate(rootFiber, container, lane);
18710 null !== element && (startUpdateTimerByLane(lane, "root.render()", null), scheduleUpdateOnFiber(element, rootFiber, lane), entangleTransitions(element, rootFiber, lane));
18711 }
18712 function markRetryLaneImpl(fiber, retryLane) {
18713 fiber = fiber.memoizedState;
18714 if (null !== fiber && null !== fiber.dehydrated) {
18715 var a = fiber.retryLane;
18716 fiber.retryLane = 0 !== a && a < retryLane ? a : retryLane;
18717 }
18718 }
18719 function markRetryLaneIfNotHydrated(fiber, retryLane) {
18720 markRetryLaneImpl(fiber, retryLane);
18721 (fiber = fiber.alternate) && markRetryLaneImpl(fiber, retryLane);
18722 }
18723 function attemptContinuousHydration(fiber) {
18724 if (13 === fiber.tag || 31 === fiber.tag) {
18725 var root2 = enqueueConcurrentRenderForLane(fiber, 67108864);
18726 null !== root2 && scheduleUpdateOnFiber(root2, fiber, 67108864);
18727 markRetryLaneIfNotHydrated(fiber, 67108864);
18728 }
18729 }
18730 function attemptHydrationAtCurrentPriority(fiber) {
18731 if (13 === fiber.tag || 31 === fiber.tag) {
18732 var lane = requestUpdateLane(fiber);
18733 lane = getBumpedLaneForHydrationByLane(lane);
18734 var root2 = enqueueConcurrentRenderForLane(fiber, lane);
18735 null !== root2 && scheduleUpdateOnFiber(root2, fiber, lane);
18736 markRetryLaneIfNotHydrated(fiber, lane);
18737 }
18738 }
18739 function getCurrentFiberForDevTools() {
18740 return current;
18741 }
18742 function dispatchDiscreteEvent(domEventName, eventSystemFlags, container, nativeEvent) {
18743 var prevTransition = ReactSharedInternals.T;
18744 ReactSharedInternals.T = null;
18745 var previousPriority = ReactDOMSharedInternals.p;
18746 try {
18747 ReactDOMSharedInternals.p = DiscreteEventPriority, dispatchEvent(domEventName, eventSystemFlags, container, nativeEvent);
18748 } finally {
18749 ReactDOMSharedInternals.p = previousPriority, ReactSharedInternals.T = prevTransition;
18750 }
18751 }
18752 function dispatchContinuousEvent(domEventName, eventSystemFlags, container, nativeEvent) {
18753 var prevTransition = ReactSharedInternals.T;
18754 ReactSharedInternals.T = null;
18755 var previousPriority = ReactDOMSharedInternals.p;
18756 try {
18757 ReactDOMSharedInternals.p = ContinuousEventPriority, dispatchEvent(domEventName, eventSystemFlags, container, nativeEvent);
18758 } finally {
18759 ReactDOMSharedInternals.p = previousPriority, ReactSharedInternals.T = prevTransition;
18760 }
18761 }
18762 function dispatchEvent(domEventName, eventSystemFlags, targetContainer, nativeEvent) {
18763 if (_enabled) {
18764 var blockedOn = findInstanceBlockingEvent(nativeEvent);
18765 if (null === blockedOn)
18766 dispatchEventForPluginEventSystem(
18767 domEventName,
18768 eventSystemFlags,
18769 nativeEvent,
18770 return_targetInst,
18771 targetContainer
18772 ), clearIfContinuousEvent(domEventName, nativeEvent);
18773 else if (queueIfContinuousEvent(
18774 blockedOn,
18775 domEventName,
18776 eventSystemFlags,
18777 targetContainer,
18778 nativeEvent
18779 ))
18780 nativeEvent.stopPropagation();
18781 else if (clearIfContinuousEvent(domEventName, nativeEvent), eventSystemFlags & 4 && -1 < discreteReplayableEvents.indexOf(domEventName)) {
18782 for (; null !== blockedOn; ) {
18783 var fiber = getInstanceFromNode(blockedOn);
18784 if (null !== fiber)
18785 switch (fiber.tag) {
18786 case 3:
18787 fiber = fiber.stateNode;
18788 if (fiber.current.memoizedState.isDehydrated) {
18789 var lanes = getHighestPriorityLanes(fiber.pendingLanes);
18790 if (0 !== lanes) {
18791 var root2 = fiber;
18792 root2.pendingLanes |= 2;
18793 for (root2.entangledLanes |= 2; lanes; ) {
18794 var lane = 1 << 31 - clz32(lanes);
18795 root2.entanglements[1] |= lane;
18796 lanes &= ~lane;
18797 }
18798 ensureRootIsScheduled(fiber);
18799 (executionContext & (RenderContext | CommitContext)) === NoContext && (workInProgressRootRenderTargetTime = now$1() + RENDER_TIMEOUT_MS, flushSyncWorkAcrossRoots_impl(0, false));
18800 }
18801 }
18802 break;
18803 case 31:
18804 case 13:
18805 root2 = enqueueConcurrentRenderForLane(fiber, 2), null !== root2 && scheduleUpdateOnFiber(root2, fiber, 2), flushSyncWork$1(), markRetryLaneIfNotHydrated(fiber, 2);
18806 }
18807 fiber = findInstanceBlockingEvent(nativeEvent);
18808 null === fiber && dispatchEventForPluginEventSystem(
18809 domEventName,
18810 eventSystemFlags,
18811 nativeEvent,
18812 return_targetInst,
18813 targetContainer
18814 );
18815 if (fiber === blockedOn) break;
18816 blockedOn = fiber;
18817 }
18818 null !== blockedOn && nativeEvent.stopPropagation();
18819 } else
18820 dispatchEventForPluginEventSystem(
18821 domEventName,
18822 eventSystemFlags,
18823 nativeEvent,
18824 null,
18825 targetContainer
18826 );
18827 }
18828 }
18829 function findInstanceBlockingEvent(nativeEvent) {
18830 nativeEvent = getEventTarget(nativeEvent);
18831 return findInstanceBlockingTarget(nativeEvent);
18832 }
18833 function findInstanceBlockingTarget(targetNode) {
18834 return_targetInst = null;
18835 targetNode = getClosestInstanceFromNode(targetNode);
18836 if (null !== targetNode) {
18837 var nearestMounted = getNearestMountedFiber(targetNode);
18838 if (null === nearestMounted) targetNode = null;
18839 else {
18840 var tag = nearestMounted.tag;
18841 if (13 === tag) {
18842 targetNode = getSuspenseInstanceFromFiber(nearestMounted);
18843 if (null !== targetNode) return targetNode;
18844 targetNode = null;
18845 } else if (31 === tag) {
18846 targetNode = getActivityInstanceFromFiber(nearestMounted);
18847 if (null !== targetNode) return targetNode;
18848 targetNode = null;
18849 } else if (3 === tag) {
18850 if (nearestMounted.stateNode.current.memoizedState.isDehydrated)
18851 return 3 === nearestMounted.tag ? nearestMounted.stateNode.containerInfo : null;
18852 targetNode = null;
18853 } else nearestMounted !== targetNode && (targetNode = null);
18854 }
18855 }
18856 return_targetInst = targetNode;
18857 return null;
18858 }
18859 function getEventPriority(domEventName) {
18860 switch (domEventName) {
18861 case "beforetoggle":
18862 case "cancel":
18863 case "click":
18864 case "close":
18865 case "contextmenu":
18866 case "copy":
18867 case "cut":
18868 case "auxclick":
18869 case "dblclick":
18870 case "dragend":
18871 case "dragstart":
18872 case "drop":
18873 case "focusin":
18874 case "focusout":
18875 case "input":
18876 case "invalid":
18877 case "keydown":
18878 case "keypress":
18879 case "keyup":
18880 case "mousedown":
18881 case "mouseup":
18882 case "paste":
18883 case "pause":
18884 case "play":
18885 case "pointercancel":
18886 case "pointerdown":
18887 case "pointerup":
18888 case "ratechange":
18889 case "reset":
18890 case "seeked":
18891 case "submit":
18892 case "toggle":
18893 case "touchcancel":
18894 case "touchend":
18895 case "touchstart":
18896 case "volumechange":
18897 case "change":
18898 case "selectionchange":
18899 case "textInput":
18900 case "compositionstart":
18901 case "compositionend":
18902 case "compositionupdate":
18903 case "beforeblur":
18904 case "afterblur":
18905 case "beforeinput":
18906 case "blur":
18907 case "fullscreenchange":
18908 case "fullscreenerror":
18909 case "focus":
18910 case "hashchange":
18911 case "popstate":
18912 case "select":
18913 case "selectstart":
18914 return DiscreteEventPriority;
18915 case "drag":
18916 case "dragenter":
18917 case "dragexit":
18918 case "dragleave":
18919 case "dragover":
18920 case "mousemove":
18921 case "mouseout":
18922 case "mouseover":
18923 case "pointermove":
18924 case "pointerout":
18925 case "pointerover":
18926 case "resize":
18927 case "scroll":
18928 case "touchmove":
18929 case "wheel":
18930 case "mouseenter":
18931 case "mouseleave":
18932 case "pointerenter":
18933 case "pointerleave":
18934 return ContinuousEventPriority;
18935 case "message":
18936 switch (getCurrentPriorityLevel()) {
18937 case ImmediatePriority:
18938 return DiscreteEventPriority;
18939 case UserBlockingPriority:
18940 return ContinuousEventPriority;
18941 case NormalPriority$1:
18942 case LowPriority:
18943 return DefaultEventPriority;
18944 case IdlePriority:
18945 return IdleEventPriority;
18946 default:
18947 return DefaultEventPriority;
18948 }
18949 default:
18950 return DefaultEventPriority;
18951 }
18952 }
18953 function clearIfContinuousEvent(domEventName, nativeEvent) {
18954 switch (domEventName) {
18955 case "focusin":
18956 case "focusout":
18957 queuedFocus = null;
18958 break;
18959 case "dragenter":
18960 case "dragleave":
18961 queuedDrag = null;
18962 break;
18963 case "mouseover":
18964 case "mouseout":
18965 queuedMouse = null;
18966 break;
18967 case "pointerover":
18968 case "pointerout":
18969 queuedPointers.delete(nativeEvent.pointerId);
18970 break;
18971 case "gotpointercapture":
18972 case "lostpointercapture":
18973 queuedPointerCaptures.delete(nativeEvent.pointerId);
18974 }
18975 }
18976 function accumulateOrCreateContinuousQueuedReplayableEvent(existingQueuedEvent, blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent) {
18977 if (null === existingQueuedEvent || existingQueuedEvent.nativeEvent !== nativeEvent)
18978 return existingQueuedEvent = {
18979 blockedOn,
18980 domEventName,
18981 eventSystemFlags,
18982 nativeEvent,
18983 targetContainers: [targetContainer]
18984 }, null !== blockedOn && (blockedOn = getInstanceFromNode(blockedOn), null !== blockedOn && attemptContinuousHydration(blockedOn)), existingQueuedEvent;
18985 existingQueuedEvent.eventSystemFlags |= eventSystemFlags;
18986 blockedOn = existingQueuedEvent.targetContainers;
18987 null !== targetContainer && -1 === blockedOn.indexOf(targetContainer) && blockedOn.push(targetContainer);
18988 return existingQueuedEvent;
18989 }
18990 function queueIfContinuousEvent(blockedOn, domEventName, eventSystemFlags, targetContainer, nativeEvent) {
18991 switch (domEventName) {
18992 case "focusin":
18993 return queuedFocus = accumulateOrCreateContinuousQueuedReplayableEvent(
18994 queuedFocus,
18995 blockedOn,
18996 domEventName,
18997 eventSystemFlags,
18998 targetContainer,
18999 nativeEvent
19000 ), true;
19001 case "dragenter":
19002 return queuedDrag = accumulateOrCreateContinuousQueuedReplayableEvent(
19003 queuedDrag,
19004 blockedOn,
19005 domEventName,
19006 eventSystemFlags,
19007 targetContainer,
19008 nativeEvent
19009 ), true;
19010 case "mouseover":
19011 return queuedMouse = accumulateOrCreateContinuousQueuedReplayableEvent(
19012 queuedMouse,
19013 blockedOn,
19014 domEventName,
19015 eventSystemFlags,
19016 targetContainer,
19017 nativeEvent
19018 ), true;
19019 case "pointerover":
19020 var pointerId = nativeEvent.pointerId;
19021 queuedPointers.set(
19022 pointerId,
19023 accumulateOrCreateContinuousQueuedReplayableEvent(
19024 queuedPointers.get(pointerId) || null,
19025 blockedOn,
19026 domEventName,
19027 eventSystemFlags,
19028 targetContainer,
19029 nativeEvent
19030 )
19031 );
19032 return true;
19033 case "gotpointercapture":
19034 return pointerId = nativeEvent.pointerId, queuedPointerCaptures.set(
19035 pointerId,
19036 accumulateOrCreateContinuousQueuedReplayableEvent(
19037 queuedPointerCaptures.get(pointerId) || null,
19038 blockedOn,
19039 domEventName,
19040 eventSystemFlags,
19041 targetContainer,
19042 nativeEvent
19043 )
19044 ), true;
19045 }
19046 return false;
19047 }
19048 function attemptExplicitHydrationTarget(queuedTarget) {
19049 var targetInst = getClosestInstanceFromNode(queuedTarget.target);
19050 if (null !== targetInst) {
19051 var nearestMounted = getNearestMountedFiber(targetInst);
19052 if (null !== nearestMounted) {
19053 if (targetInst = nearestMounted.tag, 13 === targetInst) {
19054 if (targetInst = getSuspenseInstanceFromFiber(nearestMounted), null !== targetInst) {
19055 queuedTarget.blockedOn = targetInst;
19056 runWithPriority(queuedTarget.priority, function() {
19057 attemptHydrationAtCurrentPriority(nearestMounted);
19058 });
19059 return;
19060 }
19061 } else if (31 === targetInst) {
19062 if (targetInst = getActivityInstanceFromFiber(nearestMounted), null !== targetInst) {
19063 queuedTarget.blockedOn = targetInst;
19064 runWithPriority(queuedTarget.priority, function() {
19065 attemptHydrationAtCurrentPriority(nearestMounted);
19066 });
19067 return;
19068 }
19069 } else if (3 === targetInst && nearestMounted.stateNode.current.memoizedState.isDehydrated) {
19070 queuedTarget.blockedOn = 3 === nearestMounted.tag ? nearestMounted.stateNode.containerInfo : null;
19071 return;
19072 }
19073 }
19074 }
19075 queuedTarget.blockedOn = null;
19076 }
19077 function attemptReplayContinuousQueuedEvent(queuedEvent) {
19078 if (null !== queuedEvent.blockedOn) return false;
19079 for (var targetContainers = queuedEvent.targetContainers; 0 < targetContainers.length; ) {
19080 var nextBlockedOn = findInstanceBlockingEvent(queuedEvent.nativeEvent);
19081 if (null === nextBlockedOn) {
19082 nextBlockedOn = queuedEvent.nativeEvent;
19083 var nativeEventClone = new nextBlockedOn.constructor(
19084 nextBlockedOn.type,
19085 nextBlockedOn
19086 ), event = nativeEventClone;
19087 null !== currentReplayingEvent && console.error(
19088 "Expected currently replaying event to be null. This error is likely caused by a bug in React. Please file an issue."
19089 );
19090 currentReplayingEvent = event;
19091 nextBlockedOn.target.dispatchEvent(nativeEventClone);
19092 null === currentReplayingEvent && console.error(
19093 "Expected currently replaying event to not be null. This error is likely caused by a bug in React. Please file an issue."
19094 );
19095 currentReplayingEvent = null;
19096 } else
19097 return targetContainers = getInstanceFromNode(nextBlockedOn), null !== targetContainers && attemptContinuousHydration(targetContainers), queuedEvent.blockedOn = nextBlockedOn, false;
19098 targetContainers.shift();
19099 }
19100 return true;
19101 }
19102 function attemptReplayContinuousQueuedEventInMap(queuedEvent, key, map) {
19103 attemptReplayContinuousQueuedEvent(queuedEvent) && map.delete(key);
19104 }
19105 function replayUnblockedEvents() {
19106 hasScheduledReplayAttempt = false;
19107 null !== queuedFocus && attemptReplayContinuousQueuedEvent(queuedFocus) && (queuedFocus = null);
19108 null !== queuedDrag && attemptReplayContinuousQueuedEvent(queuedDrag) && (queuedDrag = null);
19109 null !== queuedMouse && attemptReplayContinuousQueuedEvent(queuedMouse) && (queuedMouse = null);
19110 queuedPointers.forEach(attemptReplayContinuousQueuedEventInMap);
19111 queuedPointerCaptures.forEach(attemptReplayContinuousQueuedEventInMap);
19112 }
19113 function scheduleCallbackIfUnblocked(queuedEvent, unblocked) {
19114 queuedEvent.blockedOn === unblocked && (queuedEvent.blockedOn = null, hasScheduledReplayAttempt || (hasScheduledReplayAttempt = true, Scheduler.unstable_scheduleCallback(
19115 Scheduler.unstable_NormalPriority,
19116 replayUnblockedEvents
19117 )));
19118 }
19119 function scheduleReplayQueueIfNeeded(formReplayingQueue) {
19120 lastScheduledReplayQueue !== formReplayingQueue && (lastScheduledReplayQueue = formReplayingQueue, Scheduler.unstable_scheduleCallback(
19121 Scheduler.unstable_NormalPriority,
19122 function() {
19123 lastScheduledReplayQueue === formReplayingQueue && (lastScheduledReplayQueue = null);
19124 for (var i = 0; i < formReplayingQueue.length; i += 3) {
19125 var form = formReplayingQueue[i], submitterOrAction = formReplayingQueue[i + 1], formData = formReplayingQueue[i + 2];
19126 if ("function" !== typeof submitterOrAction)
19127 if (null === findInstanceBlockingTarget(submitterOrAction || form))
19128 continue;
19129 else break;
19130 var formInst = getInstanceFromNode(form);
19131 null !== formInst && (formReplayingQueue.splice(i, 3), i -= 3, form = {
19132 pending: true,
19133 data: formData,
19134 method: form.method,
19135 action: submitterOrAction
19136 }, Object.freeze(form), startHostTransition(
19137 formInst,
19138 form,
19139 submitterOrAction,
19140 formData
19141 ));
19142 }
19143 }
19144 ));
19145 }
19146 function retryIfBlockedOn(unblocked) {
19147 function unblock(queuedEvent) {
19148 return scheduleCallbackIfUnblocked(queuedEvent, unblocked);
19149 }
19150 null !== queuedFocus && scheduleCallbackIfUnblocked(queuedFocus, unblocked);
19151 null !== queuedDrag && scheduleCallbackIfUnblocked(queuedDrag, unblocked);
19152 null !== queuedMouse && scheduleCallbackIfUnblocked(queuedMouse, unblocked);
19153 queuedPointers.forEach(unblock);
19154 queuedPointerCaptures.forEach(unblock);
19155 for (var i = 0; i < queuedExplicitHydrationTargets.length; i++) {
19156 var queuedTarget = queuedExplicitHydrationTargets[i];
19157 queuedTarget.blockedOn === unblocked && (queuedTarget.blockedOn = null);
19158 }
19159 for (; 0 < queuedExplicitHydrationTargets.length && (i = queuedExplicitHydrationTargets[0], null === i.blockedOn); )
19160 attemptExplicitHydrationTarget(i), null === i.blockedOn && queuedExplicitHydrationTargets.shift();
19161 i = (unblocked.ownerDocument || unblocked).$$reactFormReplay;
19162 if (null != i)
19163 for (queuedTarget = 0; queuedTarget < i.length; queuedTarget += 3) {
19164 var form = i[queuedTarget], submitterOrAction = i[queuedTarget + 1], formProps = form[internalPropsKey] || null;
19165 if ("function" === typeof submitterOrAction)
19166 formProps || scheduleReplayQueueIfNeeded(i);
19167 else if (formProps) {
19168 var action = null;
19169 if (submitterOrAction && submitterOrAction.hasAttribute("formAction"))
19170 if (form = submitterOrAction, formProps = submitterOrAction[internalPropsKey] || null)
19171 action = formProps.formAction;
19172 else {
19173 if (null !== findInstanceBlockingTarget(form)) continue;
19174 }
19175 else action = formProps.action;
19176 "function" === typeof action ? i[queuedTarget + 1] = action : (i.splice(queuedTarget, 3), queuedTarget -= 3);
19177 scheduleReplayQueueIfNeeded(i);
19178 }
19179 }
19180 }
19181 function defaultOnDefaultTransitionIndicator() {
19182 function handleNavigate(event) {
19183 event.canIntercept && "react-transition" === event.info && event.intercept({
19184 handler: function() {
19185 return new Promise(function(resolve) {
19186 return pendingResolve = resolve;
19187 });
19188 },
19189 focusReset: "manual",
19190 scroll: "manual"
19191 });
19192 }
19193 function handleNavigateComplete() {
19194 null !== pendingResolve && (pendingResolve(), pendingResolve = null);
19195 isCancelled || setTimeout(startFakeNavigation, 20);
19196 }
19197 function startFakeNavigation() {
19198 if (!isCancelled && !navigation.transition) {
19199 var currentEntry = navigation.currentEntry;
19200 currentEntry && null != currentEntry.url && navigation.navigate(currentEntry.url, {
19201 state: currentEntry.getState(),
19202 info: "react-transition",
19203 history: "replace"
19204 });
19205 }
19206 }
19207 if ("object" === typeof navigation) {
19208 var isCancelled = false, pendingResolve = null;
19209 navigation.addEventListener("navigate", handleNavigate);
19210 navigation.addEventListener("navigatesuccess", handleNavigateComplete);
19211 navigation.addEventListener("navigateerror", handleNavigateComplete);
19212 setTimeout(startFakeNavigation, 100);
19213 return function() {
19214 isCancelled = true;
19215 navigation.removeEventListener("navigate", handleNavigate);
19216 navigation.removeEventListener(
19217 "navigatesuccess",
19218 handleNavigateComplete
19219 );
19220 navigation.removeEventListener(
19221 "navigateerror",
19222 handleNavigateComplete
19223 );
19224 null !== pendingResolve && (pendingResolve(), pendingResolve = null);
19225 };
19226 }
19227 }
19228 function ReactDOMRoot(internalRoot) {
19229 this._internalRoot = internalRoot;
19230 }
19231 function ReactDOMHydrationRoot(internalRoot) {
19232 this._internalRoot = internalRoot;
19233 }
19234 function warnIfReactDOMContainerInDEV(container) {
19235 container[internalContainerInstanceKey] && (container._reactRootContainer ? console.error(
19236 "You are calling ReactDOMClient.createRoot() on a container that was previously passed to ReactDOM.render(). This is not supported."
19237 ) : console.error(
19238 "You are calling ReactDOMClient.createRoot() on a container that has already been passed to createRoot() before. Instead, call root.render() on the existing root instead if you want to update it."
19239 ));
19240 }
19241 "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
19242 var Scheduler = require_scheduler(), React = require_react(), ReactDOM = require_react_dom(), searchTarget = null, searchBoundary = null, assign = Object.assign, REACT_LEGACY_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.element"), REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = /* @__PURE__ */ Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = /* @__PURE__ */ Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = /* @__PURE__ */ Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = /* @__PURE__ */ Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = /* @__PURE__ */ Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = /* @__PURE__ */ Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = /* @__PURE__ */ Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = /* @__PURE__ */ Symbol.for("react.memo"), REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy");
19243 /* @__PURE__ */ Symbol.for("react.scope");
19244 var REACT_ACTIVITY_TYPE = /* @__PURE__ */ Symbol.for("react.activity"), REACT_LEGACY_HIDDEN_TYPE = /* @__PURE__ */ Symbol.for("react.legacy_hidden");
19245 /* @__PURE__ */ Symbol.for("react.tracing_marker");
19246 var REACT_MEMO_CACHE_SENTINEL = /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel"), REACT_VIEW_TRANSITION_TYPE = /* @__PURE__ */ Symbol.for("react.view_transition"), REACT_RECOVERABLE_TYPE = /* @__PURE__ */ Symbol.for("react.recoverable"), MAYBE_ITERATOR_SYMBOL = Symbol.iterator, REACT_CLIENT_REFERENCE = /* @__PURE__ */ Symbol.for("react.client.reference"), isArrayImpl = Array.isArray, ReactSharedInternals = React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, ReactDOMSharedInternals = ReactDOM.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, NotPending = Object.freeze({
19247 pending: false,
19248 data: null,
19249 method: null,
19250 action: null
19251 }), valueStack = [];
19252 var fiberStack = [];
19253 var index$jscomp$0 = -1, contextStackCursor = createCursor(null), contextFiberStackCursor = createCursor(null), rootInstanceStackCursor = createCursor(null), hostTransitionProviderCursor = createCursor(null), disabledDepth = 0, prevLog, prevInfo, prevWarn, prevError, prevGroup, prevGroupCollapsed, prevGroupEnd;
19254 disabledLog.__reactDisabledLog = true;
19255 var prefix, suffix, reentry = false;
19256 var componentFrameCache = new ("function" === typeof WeakMap ? WeakMap : Map)();
19257 var current = null, isRendering = false, hasOwnProperty = Object.prototype.hasOwnProperty, scheduleCallback$3 = Scheduler.unstable_scheduleCallback, cancelCallback$1 = Scheduler.unstable_cancelCallback, shouldYield = Scheduler.unstable_shouldYield, requestPaint = Scheduler.unstable_requestPaint, now$1 = Scheduler.unstable_now, getCurrentPriorityLevel = Scheduler.unstable_getCurrentPriorityLevel, ImmediatePriority = Scheduler.unstable_ImmediatePriority, UserBlockingPriority = Scheduler.unstable_UserBlockingPriority, NormalPriority$1 = Scheduler.unstable_NormalPriority, LowPriority = Scheduler.unstable_LowPriority, IdlePriority = Scheduler.unstable_IdlePriority, log$1 = Scheduler.log, unstable_setDisableYieldValue = Scheduler.unstable_setDisableYieldValue, rendererID = null, injectedHook = null, hasLoggedError = false, isDevToolsPresent = "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__, clz32 = Math.clz32 ? Math.clz32 : clz32Fallback, log = Math.log, LN2 = Math.LN2, nextTransitionUpdateLane = 256, nextTransitionDeferredLane = 262144, nextRetryLane = 4194304, DiscreteEventPriority = 2, ContinuousEventPriority = 8, DefaultEventPriority = 32, IdleEventPriority = 268435456, randomKey = Math.random().toString(36).slice(2), internalInstanceKey = "__reactFiber$" + randomKey, internalPropsKey = "__reactProps$" + randomKey, internalContainerInstanceKey = "__reactContainer$" + randomKey, internalEventHandlersKey = "__reactEvents$" + randomKey, internalEventHandlerListenersKey = "__reactListeners$" + randomKey, internalEventHandlesSetKey = "__reactHandles$" + randomKey, internalRootNodeResourcesKey = "__reactResources$" + randomKey, internalHoistableMarker = "__reactMarker$" + randomKey, internalLoadPendingKey = "__reactLoad$" + randomKey, allNativeEvents = /* @__PURE__ */ new Set(), registrationNameDependencies = {}, possibleRegistrationNames = {}, hasReadOnlyValue = {
19258 button: true,
19259 checkbox: true,
19260 image: true,
19261 hidden: true,
19262 radio: true,
19263 reset: true,
19264 submit: true
19265 }, VALID_ATTRIBUTE_NAME_REGEX = RegExp(
19266 "^[: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]*$"
19267 ), illegalAttributeNameCache = {}, validatedAttributeNameCache = {}, viewTransitionMutationContext = false, escapeSelectorAttributeValueInsideDoubleQuotesRegex = /[\n"\\]/g, didWarnValueDefaultValue$1 = false, didWarnCheckedDefaultChecked = false, didWarnSelectedSetOnOption = false, didWarnInvalidChild = false, didWarnInvalidInnerHTML = false;
19268 var didWarnValueDefaultValue = false;
19269 var valuePropNames = ["value", "defaultValue"], didWarnValDefaultVal = false, needsEscaping = /["'&<>\n\t]|^\s|\s$/, specialTags = "address applet area article aside base basefont bgsound blockquote body br button caption center col colgroup dd details dir div dl dt embed fieldset figcaption figure footer form frame frameset h1 h2 h3 h4 h5 h6 head header hgroup hr html iframe img input isindex li link listing main marquee menu menuitem meta nav noembed noframes noscript object ol p param plaintext pre script section select source style summary table tbody td template textarea tfoot th thead title tr track ul wbr xmp".split(
19270 " "
19271 ), inScopeTags = "applet caption html table td th marquee object select template foreignObject desc title".split(
19272 " "
19273 ), buttonScopeTags = inScopeTags.concat(["button"]), impliedEndTags = "dd dt li option optgroup p rp rt".split(" "), emptyAncestorInfoDev = {
19274 current: null,
19275 formTag: null,
19276 aTagInScope: null,
19277 buttonTagInScope: null,
19278 nobrTagInScope: null,
19279 pTagInButtonScope: null,
19280 listItemTagAutoclosing: null,
19281 dlItemTagAutoclosing: null,
19282 containerTagInScope: null,
19283 implicitRootScope: false
19284 }, didWarn = {}, shorthandToLonghand = {
19285 animation: "animationDelay animationDirection animationDuration animationFillMode animationIterationCount animationName animationPlayState animationTimingFunction".split(
19286 " "
19287 ),
19288 background: "backgroundAttachment backgroundClip backgroundColor backgroundImage backgroundOrigin backgroundPositionX backgroundPositionY backgroundRepeat backgroundSize".split(
19289 " "
19290 ),
19291 backgroundPosition: ["backgroundPositionX", "backgroundPositionY"],
19292 border: "borderBottomColor borderBottomStyle borderBottomWidth borderImageOutset borderImageRepeat borderImageSlice borderImageSource borderImageWidth borderLeftColor borderLeftStyle borderLeftWidth borderRightColor borderRightStyle borderRightWidth borderTopColor borderTopStyle borderTopWidth".split(
19293 " "
19294 ),
19295 borderBlock: "borderBlockEndColor borderBlockEndStyle borderBlockEndWidth borderBlockStartColor borderBlockStartStyle borderBlockStartWidth".split(
19296 " "
19297 ),
19298 borderBlockColor: ["borderBlockEndColor", "borderBlockStartColor"],
19299 borderBlockEnd: [
19300 "borderBlockEndColor",
19301 "borderBlockEndStyle",
19302 "borderBlockEndWidth"
19303 ],
19304 borderBlockStart: [
19305 "borderBlockStartColor",
19306 "borderBlockStartStyle",
19307 "borderBlockStartWidth"
19308 ],
19309 borderBlockStyle: ["borderBlockEndStyle", "borderBlockStartStyle"],
19310 borderBlockWidth: ["borderBlockEndWidth", "borderBlockStartWidth"],
19311 borderBottom: [
19312 "borderBottomColor",
19313 "borderBottomStyle",
19314 "borderBottomWidth"
19315 ],
19316 borderColor: [
19317 "borderBottomColor",
19318 "borderLeftColor",
19319 "borderRightColor",
19320 "borderTopColor"
19321 ],
19322 borderImage: [
19323 "borderImageOutset",
19324 "borderImageRepeat",
19325 "borderImageSlice",
19326 "borderImageSource",
19327 "borderImageWidth"
19328 ],
19329 borderInline: "borderInlineEndColor borderInlineEndStyle borderInlineEndWidth borderInlineStartColor borderInlineStartStyle borderInlineStartWidth".split(
19330 " "
19331 ),
19332 borderInlineColor: ["borderInlineEndColor", "borderInlineStartColor"],
19333 borderInlineEnd: [
19334 "borderInlineEndColor",
19335 "borderInlineEndStyle",
19336 "borderInlineEndWidth"
19337 ],
19338 borderInlineStart: [
19339 "borderInlineStartColor",
19340 "borderInlineStartStyle",
19341 "borderInlineStartWidth"
19342 ],
19343 borderInlineStyle: ["borderInlineEndStyle", "borderInlineStartStyle"],
19344 borderInlineWidth: ["borderInlineEndWidth", "borderInlineStartWidth"],
19345 borderLeft: ["borderLeftColor", "borderLeftStyle", "borderLeftWidth"],
19346 borderRadius: [
19347 "borderBottomLeftRadius",
19348 "borderBottomRightRadius",
19349 "borderTopLeftRadius",
19350 "borderTopRightRadius"
19351 ],
19352 borderRight: [
19353 "borderRightColor",
19354 "borderRightStyle",
19355 "borderRightWidth"
19356 ],
19357 borderStyle: [
19358 "borderBottomStyle",
19359 "borderLeftStyle",
19360 "borderRightStyle",
19361 "borderTopStyle"
19362 ],
19363 borderTop: ["borderTopColor", "borderTopStyle", "borderTopWidth"],
19364 borderWidth: [
19365 "borderBottomWidth",
19366 "borderLeftWidth",
19367 "borderRightWidth",
19368 "borderTopWidth"
19369 ],
19370 colorAdjust: ["printColorAdjust"],
19371 columnRule: ["columnRuleColor", "columnRuleStyle", "columnRuleWidth"],
19372 columns: ["columnCount", "columnWidth"],
19373 containIntrinsicSize: [
19374 "containIntrinsicHeight",
19375 "containIntrinsicWidth"
19376 ],
19377 container: ["containerName", "containerType"],
19378 flex: ["flexBasis", "flexGrow", "flexShrink"],
19379 flexFlow: ["flexDirection", "flexWrap"],
19380 font: "fontFamily fontFeatureSettings fontKerning fontLanguageOverride fontSize fontSizeAdjust fontStretch fontStyle fontVariant fontVariantAlternates fontVariantCaps fontVariantEastAsian fontVariantLigatures fontVariantNumeric fontVariantPosition fontWeight lineHeight".split(
19381 " "
19382 ),
19383 fontSynthesis: [
19384 "fontSynthesisPosition",
19385 "fontSynthesisSmallCaps",
19386 "fontSynthesisStyle",
19387 "fontSynthesisWeight"
19388 ],
19389 fontVariant: "fontVariantAlternates fontVariantCaps fontVariantEastAsian fontVariantLigatures fontVariantNumeric fontVariantPosition".split(
19390 " "
19391 ),
19392 gap: ["columnGap", "rowGap"],
19393 grid: "gridAutoColumns gridAutoFlow gridAutoRows gridTemplateAreas gridTemplateColumns gridTemplateRows".split(
19394 " "
19395 ),
19396 gridArea: [
19397 "gridColumnEnd",
19398 "gridColumnStart",
19399 "gridRowEnd",
19400 "gridRowStart"
19401 ],
19402 gridColumn: ["gridColumnEnd", "gridColumnStart"],
19403 gridColumnGap: ["columnGap"],
19404 gridGap: ["columnGap", "rowGap"],
19405 gridRow: ["gridRowEnd", "gridRowStart"],
19406 gridRowGap: ["rowGap"],
19407 gridTemplate: [
19408 "gridTemplateAreas",
19409 "gridTemplateColumns",
19410 "gridTemplateRows"
19411 ],
19412 inset: ["bottom", "left", "right", "top"],
19413 insetBlock: ["insetBlockEnd", "insetBlockStart"],
19414 insetInline: ["insetInlineEnd", "insetInlineStart"],
19415 listStyle: ["listStyleImage", "listStylePosition", "listStyleType"],
19416 margin: ["marginBottom", "marginLeft", "marginRight", "marginTop"],
19417 marginBlock: ["marginBlockEnd", "marginBlockStart"],
19418 marginInline: ["marginInlineEnd", "marginInlineStart"],
19419 marker: ["markerEnd", "markerMid", "markerStart"],
19420 mask: "maskClip maskComposite maskImage maskMode maskOrigin maskPositionX maskPositionY maskRepeat maskSize".split(
19421 " "
19422 ),
19423 maskPosition: ["maskPositionX", "maskPositionY"],
19424 offset: [
19425 "offsetAnchor",
19426 "offsetDistance",
19427 "offsetPath",
19428 "offsetPosition",
19429 "offsetRotate"
19430 ],
19431 outline: ["outlineColor", "outlineStyle", "outlineWidth"],
19432 overflow: ["overflowX", "overflowY"],
19433 overscrollBehavior: ["overscrollBehaviorX", "overscrollBehaviorY"],
19434 padding: ["paddingBottom", "paddingLeft", "paddingRight", "paddingTop"],
19435 paddingBlock: ["paddingBlockEnd", "paddingBlockStart"],
19436 paddingInline: ["paddingInlineEnd", "paddingInlineStart"],
19437 pageBreakAfter: ["breakAfter"],
19438 pageBreakBefore: ["breakBefore"],
19439 pageBreakInside: ["breakInside"],
19440 placeContent: ["alignContent", "justifyContent"],
19441 placeItems: ["alignItems", "justifyItems"],
19442 placeSelf: ["alignSelf", "justifySelf"],
19443 scrollMargin: [
19444 "scrollMarginBottom",
19445 "scrollMarginLeft",
19446 "scrollMarginRight",
19447 "scrollMarginTop"
19448 ],
19449 scrollMarginBlock: ["scrollMarginBlockEnd", "scrollMarginBlockStart"],
19450 scrollMarginInline: [
19451 "scrollMarginInlineEnd",
19452 "scrollMarginInlineStart"
19453 ],
19454 scrollPadding: [
19455 "scrollPaddingBottom",
19456 "scrollPaddingLeft",
19457 "scrollPaddingRight",
19458 "scrollPaddingTop"
19459 ],
19460 scrollPaddingBlock: [
19461 "scrollPaddingBlockEnd",
19462 "scrollPaddingBlockStart"
19463 ],
19464 scrollPaddingInline: [
19465 "scrollPaddingInlineEnd",
19466 "scrollPaddingInlineStart"
19467 ],
19468 textDecoration: [
19469 "textDecorationColor",
19470 "textDecorationLine",
19471 "textDecorationStyle",
19472 "textDecorationThickness"
19473 ],
19474 textEmphasis: ["textEmphasisColor", "textEmphasisStyle"],
19475 textWrap: ["textWrapMode", "textWrapStyle"],
19476 transition: [
19477 "transitionBehavior",
19478 "transitionDelay",
19479 "transitionDuration",
19480 "transitionProperty",
19481 "transitionTimingFunction"
19482 ],
19483 verticalAlign: ["alignmentBaseline", "baselineShift", "baselineSource"],
19484 whiteSpace: ["textWrapMode", "whiteSpaceCollapse"],
19485 wordWrap: ["overflowWrap"]
19486 }, uppercasePattern = /([A-Z])/g, msPattern$1 = /^ms-/, badVendoredStyleNamePattern = /^(?:webkit|moz|o)[A-Z]/, msPattern = /^-ms-/, hyphenPattern = /-(.)/g, badStyleValueWithSemicolonPattern = /;\s*$/, warnedStyleNames = {}, warnedStyleValues = {}, warnedForNaNValue = false, warnedForInfinityValue = false, unitlessNumbers = new Set(
19487 "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(
19488 " "
19489 )
19490 ), MATH_NAMESPACE = "http://www.w3.org/1998/Math/MathML", SVG_NAMESPACE = "http://www.w3.org/2000/svg", aliases = /* @__PURE__ */ new Map([
19491 ["acceptCharset", "accept-charset"],
19492 ["htmlFor", "for"],
19493 ["httpEquiv", "http-equiv"],
19494 ["crossOrigin", "crossorigin"],
19495 ["accentHeight", "accent-height"],
19496 ["alignmentBaseline", "alignment-baseline"],
19497 ["arabicForm", "arabic-form"],
19498 ["baselineShift", "baseline-shift"],
19499 ["capHeight", "cap-height"],
19500 ["clipPath", "clip-path"],
19501 ["clipRule", "clip-rule"],
19502 ["colorInterpolation", "color-interpolation"],
19503 ["colorInterpolationFilters", "color-interpolation-filters"],
19504 ["colorProfile", "color-profile"],
19505 ["colorRendering", "color-rendering"],
19506 ["dominantBaseline", "dominant-baseline"],
19507 ["enableBackground", "enable-background"],
19508 ["fillOpacity", "fill-opacity"],
19509 ["fillRule", "fill-rule"],
19510 ["floodColor", "flood-color"],
19511 ["floodOpacity", "flood-opacity"],
19512 ["fontFamily", "font-family"],
19513 ["fontSize", "font-size"],
19514 ["fontSizeAdjust", "font-size-adjust"],
19515 ["fontStretch", "font-stretch"],
19516 ["fontStyle", "font-style"],
19517 ["fontVariant", "font-variant"],
19518 ["fontWeight", "font-weight"],
19519 ["glyphName", "glyph-name"],
19520 ["glyphOrientationHorizontal", "glyph-orientation-horizontal"],
19521 ["glyphOrientationVertical", "glyph-orientation-vertical"],
19522 ["horizAdvX", "horiz-adv-x"],
19523 ["horizOriginX", "horiz-origin-x"],
19524 ["imageRendering", "image-rendering"],
19525 ["letterSpacing", "letter-spacing"],
19526 ["lightingColor", "lighting-color"],
19527 ["markerEnd", "marker-end"],
19528 ["markerMid", "marker-mid"],
19529 ["markerStart", "marker-start"],
19530 ["maskType", "mask-type"],
19531 ["overlinePosition", "overline-position"],
19532 ["overlineThickness", "overline-thickness"],
19533 ["paintOrder", "paint-order"],
19534 ["panose-1", "panose-1"],
19535 ["pointerEvents", "pointer-events"],
19536 ["renderingIntent", "rendering-intent"],
19537 ["shapeRendering", "shape-rendering"],
19538 ["stopColor", "stop-color"],
19539 ["stopOpacity", "stop-opacity"],
19540 ["strikethroughPosition", "strikethrough-position"],
19541 ["strikethroughThickness", "strikethrough-thickness"],
19542 ["strokeDasharray", "stroke-dasharray"],
19543 ["strokeDashoffset", "stroke-dashoffset"],
19544 ["strokeLinecap", "stroke-linecap"],
19545 ["strokeLinejoin", "stroke-linejoin"],
19546 ["strokeMiterlimit", "stroke-miterlimit"],
19547 ["strokeOpacity", "stroke-opacity"],
19548 ["strokeWidth", "stroke-width"],
19549 ["textAnchor", "text-anchor"],
19550 ["textDecoration", "text-decoration"],
19551 ["textRendering", "text-rendering"],
19552 ["transformOrigin", "transform-origin"],
19553 ["underlinePosition", "underline-position"],
19554 ["underlineThickness", "underline-thickness"],
19555 ["unicodeBidi", "unicode-bidi"],
19556 ["unicodeRange", "unicode-range"],
19557 ["unitsPerEm", "units-per-em"],
19558 ["vAlphabetic", "v-alphabetic"],
19559 ["vHanging", "v-hanging"],
19560 ["vIdeographic", "v-ideographic"],
19561 ["vMathematical", "v-mathematical"],
19562 ["vectorEffect", "vector-effect"],
19563 ["vertAdvY", "vert-adv-y"],
19564 ["vertOriginX", "vert-origin-x"],
19565 ["vertOriginY", "vert-origin-y"],
19566 ["wordSpacing", "word-spacing"],
19567 ["writingMode", "writing-mode"],
19568 ["xmlnsXlink", "xmlns:xlink"],
19569 ["xHeight", "x-height"]
19570 ]), possibleStandardNames = {
19571 accept: "accept",
19572 acceptcharset: "acceptCharset",
19573 "accept-charset": "acceptCharset",
19574 accesskey: "accessKey",
19575 action: "action",
19576 allowfullscreen: "allowFullScreen",
19577 alt: "alt",
19578 as: "as",
19579 async: "async",
19580 autocapitalize: "autoCapitalize",
19581 autocomplete: "autoComplete",
19582 autocorrect: "autoCorrect",
19583 autofocus: "autoFocus",
19584 autoplay: "autoPlay",
19585 autosave: "autoSave",
19586 capture: "capture",
19587 cellpadding: "cellPadding",
19588 cellspacing: "cellSpacing",
19589 challenge: "challenge",
19590 charset: "charSet",
19591 checked: "checked",
19592 children: "children",
19593 cite: "cite",
19594 class: "className",
19595 classid: "classID",
19596 classname: "className",
19597 cols: "cols",
19598 colspan: "colSpan",
19599 content: "content",
19600 contenteditable: "contentEditable",
19601 contextmenu: "contextMenu",
19602 controls: "controls",
19603 controlslist: "controlsList",
19604 coords: "coords",
19605 credentialless: "credentialless",
19606 crossorigin: "crossOrigin",
19607 dangerouslysetinnerhtml: "dangerouslySetInnerHTML",
19608 data: "data",
19609 datetime: "dateTime",
19610 default: "default",
19611 defaultchecked: "defaultChecked",
19612 defaultvalue: "defaultValue",
19613 defer: "defer",
19614 dir: "dir",
19615 disabled: "disabled",
19616 disablepictureinpicture: "disablePictureInPicture",
19617 disableremoteplayback: "disableRemotePlayback",
19618 download: "download",
19619 draggable: "draggable",
19620 enctype: "encType",
19621 enterkeyhint: "enterKeyHint",
19622 fetchpriority: "fetchPriority",
19623 for: "htmlFor",
19624 form: "form",
19625 formmethod: "formMethod",
19626 formaction: "formAction",
19627 formenctype: "formEncType",
19628 formnovalidate: "formNoValidate",
19629 formtarget: "formTarget",
19630 frameborder: "frameBorder",
19631 headers: "headers",
19632 height: "height",
19633 hidden: "hidden",
19634 high: "high",
19635 href: "href",
19636 hreflang: "hrefLang",
19637 htmlfor: "htmlFor",
19638 httpequiv: "httpEquiv",
19639 "http-equiv": "httpEquiv",
19640 icon: "icon",
19641 id: "id",
19642 imagesizes: "imageSizes",
19643 imagesrcset: "imageSrcSet",
19644 inert: "inert",
19645 innerhtml: "innerHTML",
19646 inputmode: "inputMode",
19647 integrity: "integrity",
19648 is: "is",
19649 itemid: "itemID",
19650 itemprop: "itemProp",
19651 itemref: "itemRef",
19652 itemscope: "itemScope",
19653 itemtype: "itemType",
19654 keyparams: "keyParams",
19655 keytype: "keyType",
19656 kind: "kind",
19657 label: "label",
19658 lang: "lang",
19659 list: "list",
19660 loop: "loop",
19661 low: "low",
19662 manifest: "manifest",
19663 marginwidth: "marginWidth",
19664 marginheight: "marginHeight",
19665 max: "max",
19666 maxlength: "maxLength",
19667 media: "media",
19668 mediagroup: "mediaGroup",
19669 method: "method",
19670 min: "min",
19671 minlength: "minLength",
19672 multiple: "multiple",
19673 muted: "muted",
19674 name: "name",
19675 nomodule: "noModule",
19676 nonce: "nonce",
19677 novalidate: "noValidate",
19678 open: "open",
19679 optimum: "optimum",
19680 pattern: "pattern",
19681 placeholder: "placeholder",
19682 playsinline: "playsInline",
19683 poster: "poster",
19684 preload: "preload",
19685 profile: "profile",
19686 radiogroup: "radioGroup",
19687 readonly: "readOnly",
19688 referrerpolicy: "referrerPolicy",
19689 rel: "rel",
19690 required: "required",
19691 reversed: "reversed",
19692 role: "role",
19693 rows: "rows",
19694 rowspan: "rowSpan",
19695 sandbox: "sandbox",
19696 scope: "scope",
19697 scoped: "scoped",
19698 scrolling: "scrolling",
19699 seamless: "seamless",
19700 selected: "selected",
19701 shape: "shape",
19702 size: "size",
19703 sizes: "sizes",
19704 span: "span",
19705 spellcheck: "spellCheck",
19706 src: "src",
19707 srcdoc: "srcDoc",
19708 srclang: "srcLang",
19709 srcset: "srcSet",
19710 start: "start",
19711 step: "step",
19712 style: "style",
19713 summary: "summary",
19714 tabindex: "tabIndex",
19715 target: "target",
19716 title: "title",
19717 type: "type",
19718 usemap: "useMap",
19719 value: "value",
19720 width: "width",
19721 wmode: "wmode",
19722 wrap: "wrap",
19723 about: "about",
19724 accentheight: "accentHeight",
19725 "accent-height": "accentHeight",
19726 accumulate: "accumulate",
19727 additive: "additive",
19728 alignmentbaseline: "alignmentBaseline",
19729 "alignment-baseline": "alignmentBaseline",
19730 allowreorder: "allowReorder",
19731 alphabetic: "alphabetic",
19732 amplitude: "amplitude",
19733 arabicform: "arabicForm",
19734 "arabic-form": "arabicForm",
19735 ascent: "ascent",
19736 attributename: "attributeName",
19737 attributetype: "attributeType",
19738 autoreverse: "autoReverse",
19739 azimuth: "azimuth",
19740 basefrequency: "baseFrequency",
19741 baselineshift: "baselineShift",
19742 "baseline-shift": "baselineShift",
19743 baseprofile: "baseProfile",
19744 bbox: "bbox",
19745 begin: "begin",
19746 bias: "bias",
19747 by: "by",
19748 calcmode: "calcMode",
19749 capheight: "capHeight",
19750 "cap-height": "capHeight",
19751 clip: "clip",
19752 clippath: "clipPath",
19753 "clip-path": "clipPath",
19754 clippathunits: "clipPathUnits",
19755 cliprule: "clipRule",
19756 "clip-rule": "clipRule",
19757 color: "color",
19758 colorinterpolation: "colorInterpolation",
19759 "color-interpolation": "colorInterpolation",
19760 colorinterpolationfilters: "colorInterpolationFilters",
19761 "color-interpolation-filters": "colorInterpolationFilters",
19762 colorprofile: "colorProfile",
19763 "color-profile": "colorProfile",
19764 colorrendering: "colorRendering",
19765 "color-rendering": "colorRendering",
19766 contentscripttype: "contentScriptType",
19767 contentstyletype: "contentStyleType",
19768 cursor: "cursor",
19769 cx: "cx",
19770 cy: "cy",
19771 d: "d",
19772 datatype: "datatype",
19773 decelerate: "decelerate",
19774 descent: "descent",
19775 diffuseconstant: "diffuseConstant",
19776 direction: "direction",
19777 display: "display",
19778 divisor: "divisor",
19779 dominantbaseline: "dominantBaseline",
19780 "dominant-baseline": "dominantBaseline",
19781 dur: "dur",
19782 dx: "dx",
19783 dy: "dy",
19784 edgemode: "edgeMode",
19785 elevation: "elevation",
19786 enablebackground: "enableBackground",
19787 "enable-background": "enableBackground",
19788 end: "end",
19789 exponent: "exponent",
19790 externalresourcesrequired: "externalResourcesRequired",
19791 fill: "fill",
19792 fillopacity: "fillOpacity",
19793 "fill-opacity": "fillOpacity",
19794 fillrule: "fillRule",
19795 "fill-rule": "fillRule",
19796 filter: "filter",
19797 filterres: "filterRes",
19798 filterunits: "filterUnits",
19799 floodopacity: "floodOpacity",
19800 "flood-opacity": "floodOpacity",
19801 floodcolor: "floodColor",
19802 "flood-color": "floodColor",
19803 focusable: "focusable",
19804 fontfamily: "fontFamily",
19805 "font-family": "fontFamily",
19806 fontsize: "fontSize",
19807 "font-size": "fontSize",
19808 fontsizeadjust: "fontSizeAdjust",
19809 "font-size-adjust": "fontSizeAdjust",
19810 fontstretch: "fontStretch",
19811 "font-stretch": "fontStretch",
19812 fontstyle: "fontStyle",
19813 "font-style": "fontStyle",
19814 fontvariant: "fontVariant",
19815 "font-variant": "fontVariant",
19816 fontweight: "fontWeight",
19817 "font-weight": "fontWeight",
19818 format: "format",
19819 from: "from",
19820 fx: "fx",
19821 fy: "fy",
19822 g1: "g1",
19823 g2: "g2",
19824 glyphname: "glyphName",
19825 "glyph-name": "glyphName",
19826 glyphorientationhorizontal: "glyphOrientationHorizontal",
19827 "glyph-orientation-horizontal": "glyphOrientationHorizontal",
19828 glyphorientationvertical: "glyphOrientationVertical",
19829 "glyph-orientation-vertical": "glyphOrientationVertical",
19830 glyphref: "glyphRef",
19831 gradienttransform: "gradientTransform",
19832 gradientunits: "gradientUnits",
19833 hanging: "hanging",
19834 horizadvx: "horizAdvX",
19835 "horiz-adv-x": "horizAdvX",
19836 horizoriginx: "horizOriginX",
19837 "horiz-origin-x": "horizOriginX",
19838 ideographic: "ideographic",
19839 imagerendering: "imageRendering",
19840 "image-rendering": "imageRendering",
19841 in2: "in2",
19842 in: "in",
19843 inlist: "inlist",
19844 intercept: "intercept",
19845 k1: "k1",
19846 k2: "k2",
19847 k3: "k3",
19848 k4: "k4",
19849 k: "k",
19850 kernelmatrix: "kernelMatrix",
19851 kernelunitlength: "kernelUnitLength",
19852 kerning: "kerning",
19853 keypoints: "keyPoints",
19854 keysplines: "keySplines",
19855 keytimes: "keyTimes",
19856 lengthadjust: "lengthAdjust",
19857 letterspacing: "letterSpacing",
19858 "letter-spacing": "letterSpacing",
19859 lightingcolor: "lightingColor",
19860 "lighting-color": "lightingColor",
19861 limitingconeangle: "limitingConeAngle",
19862 local: "local",
19863 markerend: "markerEnd",
19864 "marker-end": "markerEnd",
19865 markerheight: "markerHeight",
19866 markermid: "markerMid",
19867 "marker-mid": "markerMid",
19868 markerstart: "markerStart",
19869 "marker-start": "markerStart",
19870 markerunits: "markerUnits",
19871 markerwidth: "markerWidth",
19872 mask: "mask",
19873 maskcontentunits: "maskContentUnits",
19874 masktype: "maskType",
19875 maskunits: "maskUnits",
19876 mathematical: "mathematical",
19877 mode: "mode",
19878 numoctaves: "numOctaves",
19879 offset: "offset",
19880 opacity: "opacity",
19881 operator: "operator",
19882 order: "order",
19883 orient: "orient",
19884 orientation: "orientation",
19885 origin: "origin",
19886 overflow: "overflow",
19887 overlineposition: "overlinePosition",
19888 "overline-position": "overlinePosition",
19889 overlinethickness: "overlineThickness",
19890 "overline-thickness": "overlineThickness",
19891 paintorder: "paintOrder",
19892 "paint-order": "paintOrder",
19893 panose1: "panose1",
19894 "panose-1": "panose1",
19895 pathlength: "pathLength",
19896 patterncontentunits: "patternContentUnits",
19897 patterntransform: "patternTransform",
19898 patternunits: "patternUnits",
19899 pointerevents: "pointerEvents",
19900 "pointer-events": "pointerEvents",
19901 points: "points",
19902 pointsatx: "pointsAtX",
19903 pointsaty: "pointsAtY",
19904 pointsatz: "pointsAtZ",
19905 popover: "popover",
19906 popovertarget: "popoverTarget",
19907 popovertargetaction: "popoverTargetAction",
19908 prefix: "prefix",
19909 preservealpha: "preserveAlpha",
19910 preserveaspectratio: "preserveAspectRatio",
19911 primitiveunits: "primitiveUnits",
19912 property: "property",
19913 r: "r",
19914 radius: "radius",
19915 refx: "refX",
19916 refy: "refY",
19917 renderingintent: "renderingIntent",
19918 "rendering-intent": "renderingIntent",
19919 repeatcount: "repeatCount",
19920 repeatdur: "repeatDur",
19921 requiredextensions: "requiredExtensions",
19922 requiredfeatures: "requiredFeatures",
19923 resource: "resource",
19924 restart: "restart",
19925 result: "result",
19926 results: "results",
19927 rotate: "rotate",
19928 rx: "rx",
19929 ry: "ry",
19930 scale: "scale",
19931 security: "security",
19932 seed: "seed",
19933 shaperendering: "shapeRendering",
19934 "shape-rendering": "shapeRendering",
19935 slope: "slope",
19936 spacing: "spacing",
19937 specularconstant: "specularConstant",
19938 specularexponent: "specularExponent",
19939 speed: "speed",
19940 spreadmethod: "spreadMethod",
19941 startoffset: "startOffset",
19942 stddeviation: "stdDeviation",
19943 stemh: "stemh",
19944 stemv: "stemv",
19945 stitchtiles: "stitchTiles",
19946 stopcolor: "stopColor",
19947 "stop-color": "stopColor",
19948 stopopacity: "stopOpacity",
19949 "stop-opacity": "stopOpacity",
19950 strikethroughposition: "strikethroughPosition",
19951 "strikethrough-position": "strikethroughPosition",
19952 strikethroughthickness: "strikethroughThickness",
19953 "strikethrough-thickness": "strikethroughThickness",
19954 string: "string",
19955 stroke: "stroke",
19956 strokedasharray: "strokeDasharray",
19957 "stroke-dasharray": "strokeDasharray",
19958 strokedashoffset: "strokeDashoffset",
19959 "stroke-dashoffset": "strokeDashoffset",
19960 strokelinecap: "strokeLinecap",
19961 "stroke-linecap": "strokeLinecap",
19962 strokelinejoin: "strokeLinejoin",
19963 "stroke-linejoin": "strokeLinejoin",
19964 strokemiterlimit: "strokeMiterlimit",
19965 "stroke-miterlimit": "strokeMiterlimit",
19966 strokewidth: "strokeWidth",
19967 "stroke-width": "strokeWidth",
19968 strokeopacity: "strokeOpacity",
19969 "stroke-opacity": "strokeOpacity",
19970 suppresscontenteditablewarning: "suppressContentEditableWarning",
19971 suppresshydrationwarning: "suppressHydrationWarning",
19972 surfacescale: "surfaceScale",
19973 systemlanguage: "systemLanguage",
19974 tablevalues: "tableValues",
19975 targetx: "targetX",
19976 targety: "targetY",
19977 textanchor: "textAnchor",
19978 "text-anchor": "textAnchor",
19979 textdecoration: "textDecoration",
19980 "text-decoration": "textDecoration",
19981 textlength: "textLength",
19982 textrendering: "textRendering",
19983 "text-rendering": "textRendering",
19984 to: "to",
19985 transform: "transform",
19986 transformorigin: "transformOrigin",
19987 "transform-origin": "transformOrigin",
19988 typeof: "typeof",
19989 u1: "u1",
19990 u2: "u2",
19991 underlineposition: "underlinePosition",
19992 "underline-position": "underlinePosition",
19993 underlinethickness: "underlineThickness",
19994 "underline-thickness": "underlineThickness",
19995 unicode: "unicode",
19996 unicodebidi: "unicodeBidi",
19997 "unicode-bidi": "unicodeBidi",
19998 unicoderange: "unicodeRange",
19999 "unicode-range": "unicodeRange",
20000 unitsperem: "unitsPerEm",
20001 "units-per-em": "unitsPerEm",
20002 unselectable: "unselectable",
20003 valphabetic: "vAlphabetic",
20004 "v-alphabetic": "vAlphabetic",
20005 values: "values",
20006 vectoreffect: "vectorEffect",
20007 "vector-effect": "vectorEffect",
20008 version: "version",
20009 vertadvy: "vertAdvY",
20010 "vert-adv-y": "vertAdvY",
20011 vertoriginx: "vertOriginX",
20012 "vert-origin-x": "vertOriginX",
20013 vertoriginy: "vertOriginY",
20014 "vert-origin-y": "vertOriginY",
20015 vhanging: "vHanging",
20016 "v-hanging": "vHanging",
20017 videographic: "vIdeographic",
20018 "v-ideographic": "vIdeographic",
20019 viewbox: "viewBox",
20020 viewtarget: "viewTarget",
20021 visibility: "visibility",
20022 vmathematical: "vMathematical",
20023 "v-mathematical": "vMathematical",
20024 vocab: "vocab",
20025 widths: "widths",
20026 wordspacing: "wordSpacing",
20027 "word-spacing": "wordSpacing",
20028 writingmode: "writingMode",
20029 "writing-mode": "writingMode",
20030 x1: "x1",
20031 x2: "x2",
20032 x: "x",
20033 xchannelselector: "xChannelSelector",
20034 xheight: "xHeight",
20035 "x-height": "xHeight",
20036 xlinkactuate: "xlinkActuate",
20037 "xlink:actuate": "xlinkActuate",
20038 xlinkarcrole: "xlinkArcrole",
20039 "xlink:arcrole": "xlinkArcrole",
20040 xlinkhref: "xlinkHref",
20041 "xlink:href": "xlinkHref",
20042 xlinkrole: "xlinkRole",
20043 "xlink:role": "xlinkRole",
20044 xlinkshow: "xlinkShow",
20045 "xlink:show": "xlinkShow",
20046 xlinktitle: "xlinkTitle",
20047 "xlink:title": "xlinkTitle",
20048 xlinktype: "xlinkType",
20049 "xlink:type": "xlinkType",
20050 xmlbase: "xmlBase",
20051 "xml:base": "xmlBase",
20052 xmllang: "xmlLang",
20053 "xml:lang": "xmlLang",
20054 xmlns: "xmlns",
20055 "xml:space": "xmlSpace",
20056 xmlnsxlink: "xmlnsXlink",
20057 "xmlns:xlink": "xmlnsXlink",
20058 xmlspace: "xmlSpace",
20059 y1: "y1",
20060 y2: "y2",
20061 y: "y",
20062 ychannelselector: "yChannelSelector",
20063 z: "z",
20064 zoomandpan: "zoomAndPan"
20065 }, ariaProperties = {
20066 "aria-current": 0,
20067 "aria-description": 0,
20068 "aria-details": 0,
20069 "aria-disabled": 0,
20070 "aria-hidden": 0,
20071 "aria-invalid": 0,
20072 "aria-keyshortcuts": 0,
20073 "aria-label": 0,
20074 "aria-roledescription": 0,
20075 "aria-autocomplete": 0,
20076 "aria-checked": 0,
20077 "aria-expanded": 0,
20078 "aria-haspopup": 0,
20079 "aria-level": 0,
20080 "aria-modal": 0,
20081 "aria-multiline": 0,
20082 "aria-multiselectable": 0,
20083 "aria-orientation": 0,
20084 "aria-placeholder": 0,
20085 "aria-pressed": 0,
20086 "aria-readonly": 0,
20087 "aria-required": 0,
20088 "aria-selected": 0,
20089 "aria-sort": 0,
20090 "aria-valuemax": 0,
20091 "aria-valuemin": 0,
20092 "aria-valuenow": 0,
20093 "aria-valuetext": 0,
20094 "aria-atomic": 0,
20095 "aria-busy": 0,
20096 "aria-live": 0,
20097 "aria-relevant": 0,
20098 "aria-dropeffect": 0,
20099 "aria-grabbed": 0,
20100 "aria-activedescendant": 0,
20101 "aria-colcount": 0,
20102 "aria-colindex": 0,
20103 "aria-colspan": 0,
20104 "aria-controls": 0,
20105 "aria-describedby": 0,
20106 "aria-errormessage": 0,
20107 "aria-flowto": 0,
20108 "aria-labelledby": 0,
20109 "aria-owns": 0,
20110 "aria-posinset": 0,
20111 "aria-rowcount": 0,
20112 "aria-rowindex": 0,
20113 "aria-rowspan": 0,
20114 "aria-setsize": 0,
20115 "aria-braillelabel": 0,
20116 "aria-brailleroledescription": 0,
20117 "aria-colindextext": 0,
20118 "aria-rowindextext": 0
20119 }, warnedProperties$1 = {}, rARIA$1 = RegExp(
20120 "^(aria)-[: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]*$"
20121 ), rARIACamel$1 = RegExp(
20122 "^(aria)[A-Z][: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]*$"
20123 ), didWarnValueNull = false, warnedProperties = {}, EVENT_NAME_REGEX = /^on./, INVALID_EVENT_NAME_REGEX = /^on[^A-Z]/, rARIA = RegExp(
20124 "^(aria)-[: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]*$"
20125 ), rARIACamel = RegExp(
20126 "^(aria)[A-Z][: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]*$"
20127 ), isJavaScriptProtocol = /^[\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, currentReplayingEvent = null, restoreTarget = null, restoreQueue = null, isInsideEventHandler = false, canUseDOM = !("undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement), passiveBrowserEventsSupported = false;
20128 if (canUseDOM)
20129 try {
20130 var options$jscomp$0 = {};
20131 Object.defineProperty(options$jscomp$0, "passive", {
20132 get: function() {
20133 passiveBrowserEventsSupported = true;
20134 }
20135 });
20136 window.addEventListener("test", options$jscomp$0, options$jscomp$0);
20137 window.removeEventListener("test", options$jscomp$0, options$jscomp$0);
20138 } catch (e) {
20139 passiveBrowserEventsSupported = false;
20140 }
20141 var root = null, startText = null, fallbackText = null, EventInterface = {
20142 eventPhase: 0,
20143 bubbles: 0,
20144 cancelable: 0,
20145 timeStamp: function(event) {
20146 return event.timeStamp || Date.now();
20147 },
20148 defaultPrevented: 0,
20149 isTrusted: 0
20150 }, SyntheticEvent = createSyntheticEvent(EventInterface), UIEventInterface = assign({}, EventInterface, { view: 0, detail: 0 }), SyntheticUIEvent = createSyntheticEvent(UIEventInterface), lastMovementX, lastMovementY, lastMouseEvent, MouseEventInterface = assign({}, UIEventInterface, {
20151 screenX: 0,
20152 screenY: 0,
20153 clientX: 0,
20154 clientY: 0,
20155 pageX: 0,
20156 pageY: 0,
20157 ctrlKey: 0,
20158 shiftKey: 0,
20159 altKey: 0,
20160 metaKey: 0,
20161 getModifierState: getEventModifierState,
20162 button: 0,
20163 buttons: 0,
20164 relatedTarget: function(event) {
20165 return void 0 === event.relatedTarget ? event.fromElement === event.srcElement ? event.toElement : event.fromElement : event.relatedTarget;
20166 },
20167 movementX: function(event) {
20168 if ("movementX" in event) return event.movementX;
20169 event !== lastMouseEvent && (lastMouseEvent && "mousemove" === event.type ? (lastMovementX = event.screenX - lastMouseEvent.screenX, lastMovementY = event.screenY - lastMouseEvent.screenY) : lastMovementY = lastMovementX = 0, lastMouseEvent = event);
20170 return lastMovementX;
20171 },
20172 movementY: function(event) {
20173 return "movementY" in event ? event.movementY : lastMovementY;
20174 }
20175 }), SyntheticMouseEvent = createSyntheticEvent(MouseEventInterface), DragEventInterface = assign({}, MouseEventInterface, { dataTransfer: 0 }), SyntheticDragEvent = createSyntheticEvent(DragEventInterface), FocusEventInterface = assign({}, UIEventInterface, { relatedTarget: 0 }), SyntheticFocusEvent = createSyntheticEvent(FocusEventInterface), AnimationEventInterface = assign({}, EventInterface, {
20176 animationName: 0,
20177 elapsedTime: 0,
20178 pseudoElement: 0
20179 }), SyntheticAnimationEvent = createSyntheticEvent(AnimationEventInterface), ClipboardEventInterface = assign({}, EventInterface, {
20180 clipboardData: function(event) {
20181 return "clipboardData" in event ? event.clipboardData : window.clipboardData;
20182 }
20183 }), SyntheticClipboardEvent = createSyntheticEvent(ClipboardEventInterface), CompositionEventInterface = assign({}, EventInterface, { data: 0 }), SyntheticCompositionEvent = createSyntheticEvent(
20184 CompositionEventInterface
20185 ), SyntheticInputEvent = SyntheticCompositionEvent, normalizeKey = {
20186 Esc: "Escape",
20187 Spacebar: " ",
20188 Left: "ArrowLeft",
20189 Up: "ArrowUp",
20190 Right: "ArrowRight",
20191 Down: "ArrowDown",
20192 Del: "Delete",
20193 Win: "OS",
20194 Menu: "ContextMenu",
20195 Apps: "ContextMenu",
20196 Scroll: "ScrollLock",
20197 MozPrintableKey: "Unidentified"
20198 }, translateToKey = {
20199 8: "Backspace",
20200 9: "Tab",
20201 12: "Clear",
20202 13: "Enter",
20203 16: "Shift",
20204 17: "Control",
20205 18: "Alt",
20206 19: "Pause",
20207 20: "CapsLock",
20208 27: "Escape",
20209 32: " ",
20210 33: "PageUp",
20211 34: "PageDown",
20212 35: "End",
20213 36: "Home",
20214 37: "ArrowLeft",
20215 38: "ArrowUp",
20216 39: "ArrowRight",
20217 40: "ArrowDown",
20218 45: "Insert",
20219 46: "Delete",
20220 112: "F1",
20221 113: "F2",
20222 114: "F3",
20223 115: "F4",
20224 116: "F5",
20225 117: "F6",
20226 118: "F7",
20227 119: "F8",
20228 120: "F9",
20229 121: "F10",
20230 122: "F11",
20231 123: "F12",
20232 144: "NumLock",
20233 145: "ScrollLock",
20234 224: "Meta"
20235 }, modifierKeyToProp = {
20236 Alt: "altKey",
20237 Control: "ctrlKey",
20238 Meta: "metaKey",
20239 Shift: "shiftKey"
20240 }, KeyboardEventInterface = assign({}, UIEventInterface, {
20241 key: function(nativeEvent) {
20242 if (nativeEvent.key) {
20243 var key = normalizeKey[nativeEvent.key] || nativeEvent.key;
20244 if ("Unidentified" !== key) return key;
20245 }
20246 return "keypress" === nativeEvent.type ? (nativeEvent = getEventCharCode(nativeEvent), 13 === nativeEvent ? "Enter" : String.fromCharCode(nativeEvent)) : "keydown" === nativeEvent.type || "keyup" === nativeEvent.type ? translateToKey[nativeEvent.keyCode] || "Unidentified" : "";
20247 },
20248 code: 0,
20249 location: 0,
20250 ctrlKey: 0,
20251 shiftKey: 0,
20252 altKey: 0,
20253 metaKey: 0,
20254 repeat: 0,
20255 locale: 0,
20256 getModifierState: getEventModifierState,
20257 charCode: function(event) {
20258 return "keypress" === event.type ? getEventCharCode(event) : 0;
20259 },
20260 keyCode: function(event) {
20261 return "keydown" === event.type || "keyup" === event.type ? event.keyCode : 0;
20262 },
20263 which: function(event) {
20264 return "keypress" === event.type ? getEventCharCode(event) : "keydown" === event.type || "keyup" === event.type ? event.keyCode : 0;
20265 }
20266 }), SyntheticKeyboardEvent = createSyntheticEvent(KeyboardEventInterface), PointerEventInterface = assign({}, MouseEventInterface, {
20267 pointerId: 0,
20268 width: 0,
20269 height: 0,
20270 pressure: 0,
20271 tangentialPressure: 0,
20272 tiltX: 0,
20273 tiltY: 0,
20274 twist: 0,
20275 pointerType: 0,
20276 isPrimary: 0
20277 }), SyntheticPointerEvent = createSyntheticEvent(PointerEventInterface), SubmitEventInterface = assign({}, EventInterface, { submitter: 0 }), SyntheticSubmitEvent = createSyntheticEvent(SubmitEventInterface), TouchEventInterface = assign({}, UIEventInterface, {
20278 touches: 0,
20279 targetTouches: 0,
20280 changedTouches: 0,
20281 altKey: 0,
20282 metaKey: 0,
20283 ctrlKey: 0,
20284 shiftKey: 0,
20285 getModifierState: getEventModifierState
20286 }), SyntheticTouchEvent = createSyntheticEvent(TouchEventInterface), TransitionEventInterface = assign({}, EventInterface, {
20287 propertyName: 0,
20288 elapsedTime: 0,
20289 pseudoElement: 0
20290 }), SyntheticTransitionEvent = createSyntheticEvent(TransitionEventInterface), WheelEventInterface = assign({}, MouseEventInterface, {
20291 deltaX: function(event) {
20292 return "deltaX" in event ? event.deltaX : "wheelDeltaX" in event ? -event.wheelDeltaX : 0;
20293 },
20294 deltaY: function(event) {
20295 return "deltaY" in event ? event.deltaY : "wheelDeltaY" in event ? -event.wheelDeltaY : "wheelDelta" in event ? -event.wheelDelta : 0;
20296 },
20297 deltaZ: 0,
20298 deltaMode: 0
20299 }), SyntheticWheelEvent = createSyntheticEvent(WheelEventInterface), ToggleEventInterface = assign({}, EventInterface, {
20300 newState: 0,
20301 oldState: 0,
20302 source: 0
20303 }), SyntheticToggleEvent = createSyntheticEvent(ToggleEventInterface), END_KEYCODES = [9, 13, 27, 32], START_KEYCODE = 229, canUseCompositionEvent = canUseDOM && "CompositionEvent" in window, documentMode = null;
20304 canUseDOM && "documentMode" in document && (documentMode = document.documentMode);
20305 var canUseTextInputEvent = canUseDOM && "TextEvent" in window && !documentMode, useFallbackCompositionData = canUseDOM && (!canUseCompositionEvent || documentMode && 8 < documentMode && 11 >= documentMode), SPACEBAR_CODE = 32, SPACEBAR_CHAR = String.fromCharCode(SPACEBAR_CODE), hasSpaceKeypress = false, isComposing = false, supportedInputTypes = {
20306 color: true,
20307 date: true,
20308 datetime: true,
20309 "datetime-local": true,
20310 email: true,
20311 month: true,
20312 number: true,
20313 password: true,
20314 range: true,
20315 search: true,
20316 tel: true,
20317 text: true,
20318 time: true,
20319 url: true,
20320 week: true
20321 }, activeElement$1 = null, activeElementInst$1 = null, isInputEventSupported = false;
20322 canUseDOM && (isInputEventSupported = isEventSupported("input") && (!document.documentMode || 9 < document.documentMode));
20323 var objectIs = "function" === typeof Object.is ? Object.is : is, skipSelectionChangeEvent = canUseDOM && "documentMode" in document && 11 >= document.documentMode, activeElement = null, activeElementInst = null, lastSelection = null, mouseDown = false, vendorPrefixes = {
20324 animationend: makePrefixMap("Animation", "AnimationEnd"),
20325 animationiteration: makePrefixMap("Animation", "AnimationIteration"),
20326 animationstart: makePrefixMap("Animation", "AnimationStart"),
20327 transitionrun: makePrefixMap("Transition", "TransitionRun"),
20328 transitionstart: makePrefixMap("Transition", "TransitionStart"),
20329 transitioncancel: makePrefixMap("Transition", "TransitionCancel"),
20330 transitionend: makePrefixMap("Transition", "TransitionEnd")
20331 }, prefixedEventNames = {}, style = {};
20332 canUseDOM && (style = document.createElement("div").style, "AnimationEvent" in window || (delete vendorPrefixes.animationend.animation, delete vendorPrefixes.animationiteration.animation, delete vendorPrefixes.animationstart.animation), "TransitionEvent" in window || delete vendorPrefixes.transitionend.transition);
20333 var ANIMATION_END = getVendorPrefixedEventName("animationend"), ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration"), ANIMATION_START = getVendorPrefixedEventName("animationstart"), TRANSITION_RUN = getVendorPrefixedEventName("transitionrun"), TRANSITION_START = getVendorPrefixedEventName("transitionstart"), TRANSITION_CANCEL = getVendorPrefixedEventName("transitioncancel"), TRANSITION_END = getVendorPrefixedEventName("transitionend"), topLevelEventsToReactNames = /* @__PURE__ */ new Map(), simpleEventPluginEvents = "abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error fullscreenChange fullscreenError gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(
20334 " "
20335 );
20336 simpleEventPluginEvents.push("scrollEnd");
20337 var globalClientIdCounter$1 = 0, lastResetTime = 0;
20338 if ("object" === typeof performance && "function" === typeof performance.now) {
20339 var localPerformance = performance;
20340 var getCurrentTime = function() {
20341 return localPerformance.now();
20342 };
20343 } else {
20344 var localDate = Date;
20345 getCurrentTime = function() {
20346 return localDate.now();
20347 };
20348 }
20349 var reportGlobalError = "function" === typeof reportError ? reportError : function(error) {
20350 if ("object" === typeof window && "function" === typeof window.ErrorEvent) {
20351 var event = new window.ErrorEvent("error", {
20352 bubbles: true,
20353 cancelable: true,
20354 message: "object" === typeof error && null !== error && "string" === typeof error.message ? String(error.message) : String(error),
20355 error
20356 });
20357 if (!window.dispatchEvent(event)) return;
20358 } else if ("object" === typeof process && "function" === typeof process.emit) {
20359 process.emit("uncaughtException", error);
20360 return;
20361 }
20362 console.error(error);
20363 }, OMITTED_PROP_ERROR = "This object has been omitted by React in the console log to avoid sending too much data from the server. Try logging smaller or more specific objects.", EMPTY_ARRAY = 0, COMPLEX_ARRAY = 1, PRIMITIVE_ARRAY = 2, ENTRIES_ARRAY = 3, OBJECT_WIDTH_LIMIT = 100, REMOVED = "-\xA0", ADDED = "+\xA0", UNCHANGED = "\u2007\xA0", supportsUserTiming = "undefined" !== typeof console && "function" === typeof console.timeStamp && "undefined" !== typeof performance && "function" === typeof performance.measure, COMPONENTS_TRACK = "Components \u269B", LANES_TRACK_GROUP = "Scheduler \u269B", currentTrack = "Blocking", alreadyWarnedForDeepEquality = false, reusableComponentDevToolDetails = {
20364 color: "primary",
20365 properties: null,
20366 tooltipText: "",
20367 track: COMPONENTS_TRACK
20368 }, reusableComponentOptions = {
20369 start: -0,
20370 end: -0,
20371 detail: { devtools: reusableComponentDevToolDetails }
20372 }, reusableChangedPropsEntry = ["Changed Props", ""], DEEP_EQUALITY_WARNING = "This component received deeply equal props. It might benefit from useMemo or the React Compiler in its owner.", reusableDeeplyEqualPropsEntry = ["Changed Props", DEEP_EQUALITY_WARNING], OffscreenVisible = 1, OffscreenPassiveEffectsConnected = 2, concurrentQueues = [], concurrentQueuesIndex = 0, concurrentlyUpdatedLanes = 0, emptyContextObject = {};
20373 Object.freeze(emptyContextObject);
20374 var resolveFamily = null, failedBoundaries = null, NoMode = 0, ConcurrentMode = 1, ProfileMode = 2, StrictLegacyMode = 8, StrictEffectsMode = 16, SuspenseyImagesMode = 32;
20375 var hasBadMapPolyfill = false;
20376 try {
20377 var nonExtensibleObject = Object.preventExtensions({});
20378 /* @__PURE__ */ new Map([[nonExtensibleObject, null]]);
20379 /* @__PURE__ */ new Set([nonExtensibleObject]);
20380 } catch (e$4) {
20381 hasBadMapPolyfill = true;
20382 }
20383 var CapturedStacks = /* @__PURE__ */ new WeakMap(), forkStack = [], forkStackIndex = 0, treeForkProvider = null, treeForkCount = 0, idStack = [], idStackIndex = 0, treeContextProvider = null, treeContextId = 1, treeContextOverflow = "", hydrationParentFiber = null, nextHydratableInstance = null, isHydrating = false, didSuspendOrErrorDEV = false, hydrationDiffRootDEV = null, hydrationErrors = null, rootOrSingletonContext = false, HydrationMismatchException = Error(
20384 "Hydration Mismatch Exception: This is not a real error, and should not leak into userspace. If you're seeing this, it's likely a bug in React."
20385 ), valueCursor = createCursor(null);
20386 var rendererCursorDEV = createCursor(null);
20387 var rendererSigil = {};
20388 var currentlyRenderingFiber$1 = null, lastContextDependency = null, isDisallowedContextReadInDEV = false, AbortControllerLocal = "undefined" !== typeof AbortController ? AbortController : function() {
20389 var listeners = [], signal = this.signal = {
20390 aborted: false,
20391 addEventListener: function(type, listener) {
20392 listeners.push(listener);
20393 }
20394 };
20395 this.abort = function() {
20396 signal.aborted = true;
20397 listeners.forEach(function(listener) {
20398 return listener();
20399 });
20400 };
20401 }, scheduleCallback$2 = Scheduler.unstable_scheduleCallback, NormalPriority = Scheduler.unstable_NormalPriority, CacheContext = {
20402 $$typeof: REACT_CONTEXT_TYPE,
20403 Consumer: null,
20404 Provider: null,
20405 _currentValue: null,
20406 _currentValue2: null,
20407 _threadCount: 0,
20408 _currentRenderer: null,
20409 _currentRenderer2: null
20410 }, entangledTransitionTypes = null, now = Scheduler.unstable_now, createTask = console.createTask ? console.createTask : function() {
20411 return null;
20412 }, SPAWNED_UPDATE = 1, PINGED_UPDATE = 2, renderStartTime = -0, commitStartTime = -0, commitEndTime = -0, commitErrors = null, profilerStartTime = -1.1, profilerEffectDuration = -0, componentEffectDuration = -0, componentEffectStartTime = -1.1, componentEffectEndTime = -1.1, componentEffectErrors = null, componentEffectSpawnedUpdate = false, blockingClampTime = -0, blockingUpdateTime = -1.1, blockingUpdateTask = null, blockingUpdateType = 0, blockingUpdateMethodName = null, blockingUpdateComponentName = null, blockingEventTime = -1.1, blockingEventType = null, blockingEventRepeatTime = -1.1, blockingSuspendedTime = -1.1, transitionClampTime = -0, transitionStartTime = -1.1, transitionUpdateTime = -1.1, transitionUpdateType = 0, transitionUpdateTask = null, transitionUpdateMethodName = null, transitionUpdateComponentName = null, transitionEventTime = -1.1, transitionEventType = null, transitionEventRepeatTime = -1.1, transitionSuspendedTime = -1.1, retryClampTime = -0, idleClampTime = -0, animatingLanes = 0, animatingTask = null, yieldReason = 0, yieldStartTime = -1.1, currentUpdateIsNested = false, nestedUpdateScheduled = false, currentEntangledListeners = null, currentEntangledPendingCount = 0, currentEntangledLane = 0, currentEntangledActionThenable = null, prevOnStartTransitionFinish = ReactSharedInternals.S;
20413 ReactSharedInternals.S = function(transition, returnValue) {
20414 globalMostRecentTransitionTime = now$1();
20415 if ("object" === typeof returnValue && null !== returnValue && "function" === typeof returnValue.then) {
20416 if (0 > transitionStartTime && 0 > transitionUpdateTime) {
20417 transitionStartTime = now();
20418 var newEventTime = resolveEventTimeStamp(), newEventType = resolveEventType();
20419 if (newEventTime !== transitionEventRepeatTime || newEventType !== transitionEventType)
20420 transitionEventRepeatTime = -1.1;
20421 transitionEventTime = newEventTime;
20422 transitionEventType = newEventType;
20423 }
20424 entangleAsyncAction(transition, returnValue);
20425 }
20426 if (null !== entangledTransitionTypes)
20427 for (newEventTime = firstScheduledRoot; null !== newEventTime; )
20428 queueTransitionTypes(newEventTime, entangledTransitionTypes), newEventTime = newEventTime.next;
20429 newEventTime = transition.types;
20430 if (null !== newEventTime) {
20431 for (newEventType = firstScheduledRoot; null !== newEventType; )
20432 queueTransitionTypes(newEventType, newEventTime), newEventType = newEventType.next;
20433 if (0 !== currentEntangledLane) {
20434 newEventType = entangledTransitionTypes;
20435 null === newEventType && (newEventType = entangledTransitionTypes = []);
20436 for (var i = 0; i < newEventTime.length; i++) {
20437 var transitionType = newEventTime[i];
20438 -1 === newEventType.indexOf(transitionType) && newEventType.push(transitionType);
20439 }
20440 }
20441 }
20442 null !== prevOnStartTransitionFinish && prevOnStartTransitionFinish(transition, returnValue);
20443 };
20444 var resumedCache = createCursor(null), ReactStrictModeWarnings = {
20445 recordUnsafeLifecycleWarnings: function() {
20446 },
20447 flushPendingUnsafeLifecycleWarnings: function() {
20448 },
20449 recordLegacyContextWarning: function() {
20450 },
20451 flushLegacyContextWarning: function() {
20452 },
20453 discardPendingWarnings: function() {
20454 }
20455 }, pendingComponentWillMountWarnings = [], pendingUNSAFE_ComponentWillMountWarnings = [], pendingComponentWillReceivePropsWarnings = [], pendingUNSAFE_ComponentWillReceivePropsWarnings = [], pendingComponentWillUpdateWarnings = [], pendingUNSAFE_ComponentWillUpdateWarnings = [], didWarnAboutUnsafeLifecycles = /* @__PURE__ */ new Set();
20456 ReactStrictModeWarnings.recordUnsafeLifecycleWarnings = function(fiber, instance) {
20457 didWarnAboutUnsafeLifecycles.has(fiber.type) || ("function" === typeof instance.componentWillMount && true !== instance.componentWillMount.__suppressDeprecationWarning && pendingComponentWillMountWarnings.push(fiber), fiber.mode & StrictLegacyMode && "function" === typeof instance.UNSAFE_componentWillMount && pendingUNSAFE_ComponentWillMountWarnings.push(fiber), "function" === typeof instance.componentWillReceiveProps && true !== instance.componentWillReceiveProps.__suppressDeprecationWarning && pendingComponentWillReceivePropsWarnings.push(fiber), fiber.mode & StrictLegacyMode && "function" === typeof instance.UNSAFE_componentWillReceiveProps && pendingUNSAFE_ComponentWillReceivePropsWarnings.push(fiber), "function" === typeof instance.componentWillUpdate && true !== instance.componentWillUpdate.__suppressDeprecationWarning && pendingComponentWillUpdateWarnings.push(fiber), fiber.mode & StrictLegacyMode && "function" === typeof instance.UNSAFE_componentWillUpdate && pendingUNSAFE_ComponentWillUpdateWarnings.push(fiber));
20458 };
20459 ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings = function() {
20460 var componentWillMountUniqueNames = /* @__PURE__ */ new Set();
20461 0 < pendingComponentWillMountWarnings.length && (pendingComponentWillMountWarnings.forEach(function(fiber) {
20462 componentWillMountUniqueNames.add(
20463 getComponentNameFromFiber(fiber) || "Component"
20464 );
20465 didWarnAboutUnsafeLifecycles.add(fiber.type);
20466 }), pendingComponentWillMountWarnings = []);
20467 var UNSAFE_componentWillMountUniqueNames = /* @__PURE__ */ new Set();
20468 0 < pendingUNSAFE_ComponentWillMountWarnings.length && (pendingUNSAFE_ComponentWillMountWarnings.forEach(function(fiber) {
20469 UNSAFE_componentWillMountUniqueNames.add(
20470 getComponentNameFromFiber(fiber) || "Component"
20471 );
20472 didWarnAboutUnsafeLifecycles.add(fiber.type);
20473 }), pendingUNSAFE_ComponentWillMountWarnings = []);
20474 var componentWillReceivePropsUniqueNames = /* @__PURE__ */ new Set();
20475 0 < pendingComponentWillReceivePropsWarnings.length && (pendingComponentWillReceivePropsWarnings.forEach(function(fiber) {
20476 componentWillReceivePropsUniqueNames.add(
20477 getComponentNameFromFiber(fiber) || "Component"
20478 );
20479 didWarnAboutUnsafeLifecycles.add(fiber.type);
20480 }), pendingComponentWillReceivePropsWarnings = []);
20481 var UNSAFE_componentWillReceivePropsUniqueNames = /* @__PURE__ */ new Set();
20482 0 < pendingUNSAFE_ComponentWillReceivePropsWarnings.length && (pendingUNSAFE_ComponentWillReceivePropsWarnings.forEach(
20483 function(fiber) {
20484 UNSAFE_componentWillReceivePropsUniqueNames.add(
20485 getComponentNameFromFiber(fiber) || "Component"
20486 );
20487 didWarnAboutUnsafeLifecycles.add(fiber.type);
20488 }
20489 ), pendingUNSAFE_ComponentWillReceivePropsWarnings = []);
20490 var componentWillUpdateUniqueNames = /* @__PURE__ */ new Set();
20491 0 < pendingComponentWillUpdateWarnings.length && (pendingComponentWillUpdateWarnings.forEach(function(fiber) {
20492 componentWillUpdateUniqueNames.add(
20493 getComponentNameFromFiber(fiber) || "Component"
20494 );
20495 didWarnAboutUnsafeLifecycles.add(fiber.type);
20496 }), pendingComponentWillUpdateWarnings = []);
20497 var UNSAFE_componentWillUpdateUniqueNames = /* @__PURE__ */ new Set();
20498 0 < pendingUNSAFE_ComponentWillUpdateWarnings.length && (pendingUNSAFE_ComponentWillUpdateWarnings.forEach(function(fiber) {
20499 UNSAFE_componentWillUpdateUniqueNames.add(
20500 getComponentNameFromFiber(fiber) || "Component"
20501 );
20502 didWarnAboutUnsafeLifecycles.add(fiber.type);
20503 }), pendingUNSAFE_ComponentWillUpdateWarnings = []);
20504 if (0 < UNSAFE_componentWillMountUniqueNames.size) {
20505 var sortedNames = setToSortedString(
20506 UNSAFE_componentWillMountUniqueNames
20507 );
20508 console.error(
20509 "Using UNSAFE_componentWillMount in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.\n\n* Move code with side effects to componentDidMount, and set initial state in the constructor.\n\nPlease update the following components: %s",
20510 sortedNames
20511 );
20512 }
20513 0 < UNSAFE_componentWillReceivePropsUniqueNames.size && (sortedNames = setToSortedString(
20514 UNSAFE_componentWillReceivePropsUniqueNames
20515 ), console.error(
20516 "Using UNSAFE_componentWillReceiveProps in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.\n\n* Move data fetching code or side effects to componentDidUpdate.\n* If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state\n\nPlease update the following components: %s",
20517 sortedNames
20518 ));
20519 0 < UNSAFE_componentWillUpdateUniqueNames.size && (sortedNames = setToSortedString(
20520 UNSAFE_componentWillUpdateUniqueNames
20521 ), console.error(
20522 "Using UNSAFE_componentWillUpdate in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.\n\n* Move data fetching code or side effects to componentDidUpdate.\n\nPlease update the following components: %s",
20523 sortedNames
20524 ));
20525 0 < componentWillMountUniqueNames.size && (sortedNames = setToSortedString(componentWillMountUniqueNames), console.warn(
20526 "componentWillMount has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.\n\n* Move code with side effects to componentDidMount, and set initial state in the constructor.\n* Rename componentWillMount to UNSAFE_componentWillMount to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.\n\nPlease update the following components: %s",
20527 sortedNames
20528 ));
20529 0 < componentWillReceivePropsUniqueNames.size && (sortedNames = setToSortedString(
20530 componentWillReceivePropsUniqueNames
20531 ), console.warn(
20532 "componentWillReceiveProps has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.\n\n* Move data fetching code or side effects to componentDidUpdate.\n* If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state\n* Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.\n\nPlease update the following components: %s",
20533 sortedNames
20534 ));
20535 0 < componentWillUpdateUniqueNames.size && (sortedNames = setToSortedString(componentWillUpdateUniqueNames), console.warn(
20536 "componentWillUpdate has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.\n\n* Move data fetching code or side effects to componentDidUpdate.\n* Rename componentWillUpdate to UNSAFE_componentWillUpdate to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.\n\nPlease update the following components: %s",
20537 sortedNames
20538 ));
20539 };
20540 var pendingLegacyContextWarning = /* @__PURE__ */ new Map(), didWarnAboutLegacyContext = /* @__PURE__ */ new Set();
20541 ReactStrictModeWarnings.recordLegacyContextWarning = function(fiber, instance) {
20542 var strictRoot = null;
20543 for (var node = fiber; null !== node; )
20544 node.mode & StrictLegacyMode && (strictRoot = node), node = node.return;
20545 null === strictRoot ? console.error(
20546 "Expected to find a StrictMode component in a strict mode tree. This error is likely caused by a bug in React. Please file an issue."
20547 ) : !didWarnAboutLegacyContext.has(fiber.type) && (node = pendingLegacyContextWarning.get(strictRoot), null != fiber.type.contextTypes || null != fiber.type.childContextTypes || null !== instance && "function" === typeof instance.getChildContext) && (void 0 === node && (node = [], pendingLegacyContextWarning.set(strictRoot, node)), node.push(fiber));
20548 };
20549 ReactStrictModeWarnings.flushLegacyContextWarning = function() {
20550 pendingLegacyContextWarning.forEach(function(fiberArray) {
20551 if (0 !== fiberArray.length) {
20552 var firstFiber = fiberArray[0], uniqueNames = /* @__PURE__ */ new Set();
20553 fiberArray.forEach(function(fiber) {
20554 uniqueNames.add(getComponentNameFromFiber(fiber) || "Component");
20555 didWarnAboutLegacyContext.add(fiber.type);
20556 });
20557 var sortedNames = setToSortedString(uniqueNames);
20558 runWithFiberInDEV(firstFiber, function() {
20559 console.error(
20560 "Legacy context API has been detected within a strict-mode tree.\n\nThe old API will be supported in all 16.x releases, but applications using it should migrate to the new version.\n\nPlease update the following components: %s\n\nLearn more about this warning here: https://react.dev/link/legacy-context",
20561 sortedNames
20562 );
20563 });
20564 }
20565 });
20566 };
20567 ReactStrictModeWarnings.discardPendingWarnings = function() {
20568 pendingComponentWillMountWarnings = [];
20569 pendingUNSAFE_ComponentWillMountWarnings = [];
20570 pendingComponentWillReceivePropsWarnings = [];
20571 pendingUNSAFE_ComponentWillReceivePropsWarnings = [];
20572 pendingComponentWillUpdateWarnings = [];
20573 pendingUNSAFE_ComponentWillUpdateWarnings = [];
20574 pendingLegacyContextWarning = /* @__PURE__ */ new Map();
20575 };
20576 var REACT_RECOVERABLE_DIGEST = "", callComponent = {
20577 react_stack_bottom_frame: function(Component, props, secondArg) {
20578 var wasRendering = isRendering;
20579 isRendering = true;
20580 try {
20581 return Component(props, secondArg);
20582 } finally {
20583 isRendering = wasRendering;
20584 }
20585 }
20586 }, callComponentInDEV = callComponent.react_stack_bottom_frame.bind(callComponent), callRender = {
20587 react_stack_bottom_frame: function(instance) {
20588 var wasRendering = isRendering;
20589 isRendering = true;
20590 try {
20591 return instance.render();
20592 } finally {
20593 isRendering = wasRendering;
20594 }
20595 }
20596 }, callRenderInDEV = callRender.react_stack_bottom_frame.bind(callRender), callComponentDidMount = {
20597 react_stack_bottom_frame: function(finishedWork, instance) {
20598 try {
20599 instance.componentDidMount();
20600 } catch (error) {
20601 captureCommitPhaseError(finishedWork, finishedWork.return, error);
20602 }
20603 }
20604 }, callComponentDidMountInDEV = callComponentDidMount.react_stack_bottom_frame.bind(
20605 callComponentDidMount
20606 ), callComponentDidUpdate = {
20607 react_stack_bottom_frame: function(finishedWork, instance, prevProps, prevState, snapshot) {
20608 try {
20609 instance.componentDidUpdate(prevProps, prevState, snapshot);
20610 } catch (error) {
20611 captureCommitPhaseError(finishedWork, finishedWork.return, error);
20612 }
20613 }
20614 }, callComponentDidUpdateInDEV = callComponentDidUpdate.react_stack_bottom_frame.bind(
20615 callComponentDidUpdate
20616 ), callComponentDidCatch = {
20617 react_stack_bottom_frame: function(instance, errorInfo) {
20618 var stack = errorInfo.stack;
20619 instance.componentDidCatch(errorInfo.value, {
20620 componentStack: null !== stack ? stack : ""
20621 });
20622 }
20623 }, callComponentDidCatchInDEV = callComponentDidCatch.react_stack_bottom_frame.bind(
20624 callComponentDidCatch
20625 ), callComponentWillUnmount = {
20626 react_stack_bottom_frame: function(current2, nearestMountedAncestor, instance) {
20627 try {
20628 instance.componentWillUnmount();
20629 } catch (error) {
20630 captureCommitPhaseError(current2, nearestMountedAncestor, error);
20631 }
20632 }
20633 }, callComponentWillUnmountInDEV = callComponentWillUnmount.react_stack_bottom_frame.bind(
20634 callComponentWillUnmount
20635 ), callCreate = {
20636 react_stack_bottom_frame: function(effect) {
20637 var create = effect.create;
20638 effect = effect.inst;
20639 create = create();
20640 return effect.destroy = create;
20641 }
20642 }, callCreateInDEV = callCreate.react_stack_bottom_frame.bind(callCreate), callDestroy = {
20643 react_stack_bottom_frame: function(current2, nearestMountedAncestor, destroy) {
20644 try {
20645 destroy();
20646 } catch (error) {
20647 captureCommitPhaseError(current2, nearestMountedAncestor, error);
20648 }
20649 }
20650 }, callDestroyInDEV = callDestroy.react_stack_bottom_frame.bind(callDestroy), callLazyInit = {
20651 react_stack_bottom_frame: function(lazy) {
20652 var init = lazy._init;
20653 return init(lazy._payload);
20654 }
20655 }, callLazyInitInDEV = callLazyInit.react_stack_bottom_frame.bind(callLazyInit), SuspenseException = Error(
20656 "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`."
20657 ), SuspenseyCommitException = Error(
20658 "Suspense Exception: This is not a real error, and should not leak into userspace. If you're seeing this, it's likely a bug in React."
20659 ), SuspenseActionException = Error(
20660 "Suspense Exception: This is not a real error! It's an implementation detail of `useActionState` to interrupt the current render. You must either rethrow it immediately, or move the `useActionState` 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."
20661 ), noopSuspenseyCommitThenable = {
20662 then: function() {
20663 console.error(
20664 'Internal React error: A listener was unexpectedly attached to a "noop" thenable. This is a bug in React. Please file an issue.'
20665 );
20666 }
20667 }, lastSuspendedFiber = null, lastSuspendedStack = null, didIssueUseWarning = false, suspendedThenable = null, needsToResetSuspendedThenableDEV = false, thenableState$1 = null, thenableIndexCounter$1 = 0, currentDebugInfo = null, didWarnAboutMaps;
20668 var didWarnAboutGenerators = didWarnAboutMaps = false;
20669 var ownerHasKeyUseWarning = {};
20670 var ownerHasFunctionTypeWarning = {};
20671 var ownerHasSymbolTypeWarning = {};
20672 warnForMissingKey = function(returnFiber, workInProgress2, child) {
20673 if (null !== child && "object" === typeof child && child._store && (!child._store.validated && null == child.key || 2 === child._store.validated)) {
20674 if ("object" !== typeof child._store)
20675 throw Error(
20676 "React Component in warnForMissingKey should have a _store. This error is likely caused by a bug in React. Please file an issue."
20677 );
20678 child._store.validated = 1;
20679 var componentName2 = getComponentNameFromFiber(returnFiber), componentKey = componentName2 || "null";
20680 if (!ownerHasKeyUseWarning[componentKey]) {
20681 ownerHasKeyUseWarning[componentKey] = true;
20682 child = child._owner;
20683 returnFiber = returnFiber._debugOwner;
20684 var currentComponentErrorInfo = "";
20685 returnFiber && "number" === typeof returnFiber.tag && (componentKey = getComponentNameFromFiber(returnFiber)) && (currentComponentErrorInfo = "\n\nCheck the render method of `" + componentKey + "`.");
20686 currentComponentErrorInfo || componentName2 && (currentComponentErrorInfo = "\n\nCheck the top-level render call using <" + componentName2 + ">.");
20687 var childOwnerAppendix = "";
20688 null != child && returnFiber !== child && (componentName2 = null, "number" === typeof child.tag ? componentName2 = getComponentNameFromFiber(child) : "string" === typeof child.name && (componentName2 = child.name), componentName2 && (childOwnerAppendix = " It was passed a child from " + componentName2 + "."));
20689 runWithFiberInDEV(workInProgress2, function() {
20690 console.error(
20691 'Each child in a list should have a unique "key" prop.%s%s See https://react.dev/link/warning-keys for more information.',
20692 currentComponentErrorInfo,
20693 childOwnerAppendix
20694 );
20695 });
20696 }
20697 }
20698 };
20699 var reconcileChildFibers = createChildReconciler(true), mountChildFibers = createChildReconciler(false), UpdateState = 0, ReplaceState = 1, ForceUpdate = 2, CaptureUpdate = 3, hasForceUpdate = false;
20700 var didWarnUpdateInsideUpdate = false;
20701 var currentlyProcessingQueue = null;
20702 var didReadFromEntangledAsyncAction = false, currentTreeHiddenStackCursor = createCursor(null), prevEntangledRenderLanesCursor = createCursor(0), suspenseHandlerStackCursor = createCursor(null), shellBoundary = null, SubtreeSuspenseContextMask = 1, ForceSuspenseFallback = 2, suspenseStackCursor = createCursor(0), NoFlags = 0, HasEffect = 1, Insertion = 2, Layout = 4, Passive = 8, didWarnUncachedGetSnapshot;
20703 var didWarnAboutMismatchedHooksForComponent = /* @__PURE__ */ new Set();
20704 var didWarnAboutUseWrappedInTryCatch = /* @__PURE__ */ new Set();
20705 var didWarnAboutAsyncClientComponent = /* @__PURE__ */ new Set();
20706 var didWarnAboutUseFormState = /* @__PURE__ */ new Set();
20707 var renderLanes = 0, currentlyRenderingFiber = null, currentHook = null, workInProgressHook = null, didScheduleRenderPhaseUpdate = false, didScheduleRenderPhaseUpdateDuringThisPass = false, shouldDoubleInvokeUserFnsInHooksDEV = false, localIdCounter = 0, thenableIndexCounter = 0, thenableState = null, globalClientIdCounter = 0, RE_RENDER_LIMIT = 25, currentHookNameInDev = null, hookTypesDev = null, hookTypesUpdateIndexDev = -1, ignorePreviousDependencies = false, ContextOnlyDispatcher = {
20708 readContext,
20709 use,
20710 useCallback: throwInvalidHookError,
20711 useContext: throwInvalidHookError,
20712 useEffect: throwInvalidHookError,
20713 useImperativeHandle: throwInvalidHookError,
20714 useLayoutEffect: throwInvalidHookError,
20715 useInsertionEffect: throwInvalidHookError,
20716 useMemo: throwInvalidHookError,
20717 useReducer: throwInvalidHookError,
20718 useRef: throwInvalidHookError,
20719 useState: throwInvalidHookError,
20720 useDebugValue: throwInvalidHookError,
20721 useDeferredValue: throwInvalidHookError,
20722 useTransition: throwInvalidHookError,
20723 useSyncExternalStore: throwInvalidHookError,
20724 useId: throwInvalidHookError,
20725 useHostTransitionStatus: throwInvalidHookError,
20726 useFormState: throwInvalidHookError,
20727 useActionState: throwInvalidHookError,
20728 useOptimistic: throwInvalidHookError,
20729 useMemoCache: throwInvalidHookError,
20730 useCacheRefresh: throwInvalidHookError,
20731 useEffectEvent: throwInvalidHookError
20732 }, HooksDispatcherOnMountInDEV = null, HooksDispatcherOnMountWithHookTypesInDEV = null, HooksDispatcherOnUpdateInDEV = null, HooksDispatcherOnRerenderInDEV = null, InvalidNestedHooksDispatcherOnMountInDEV = null, InvalidNestedHooksDispatcherOnUpdateInDEV = null, InvalidNestedHooksDispatcherOnRerenderInDEV = null;
20733 HooksDispatcherOnMountInDEV = {
20734 readContext: function(context) {
20735 return readContext(context);
20736 },
20737 use,
20738 useCallback: function(callback, deps) {
20739 currentHookNameInDev = "useCallback";
20740 mountHookTypesDev();
20741 checkDepsAreArrayDev(deps);
20742 return mountCallback(callback, deps);
20743 },
20744 useContext: function(context) {
20745 currentHookNameInDev = "useContext";
20746 mountHookTypesDev();
20747 return readContext(context);
20748 },
20749 useEffect: function(create, deps) {
20750 currentHookNameInDev = "useEffect";
20751 mountHookTypesDev();
20752 checkDepsAreArrayDev(deps);
20753 return mountEffect(create, deps);
20754 },
20755 useImperativeHandle: function(ref, create, deps) {
20756 currentHookNameInDev = "useImperativeHandle";
20757 mountHookTypesDev();
20758 checkDepsAreArrayDev(deps);
20759 return mountImperativeHandle(ref, create, deps);
20760 },
20761 useInsertionEffect: function(create, deps) {
20762 currentHookNameInDev = "useInsertionEffect";
20763 mountHookTypesDev();
20764 checkDepsAreArrayDev(deps);
20765 mountEffectImpl(4, Insertion, create, deps);
20766 },
20767 useLayoutEffect: function(create, deps) {
20768 currentHookNameInDev = "useLayoutEffect";
20769 mountHookTypesDev();
20770 checkDepsAreArrayDev(deps);
20771 return mountLayoutEffect(create, deps);
20772 },
20773 useMemo: function(create, deps) {
20774 currentHookNameInDev = "useMemo";
20775 mountHookTypesDev();
20776 checkDepsAreArrayDev(deps);
20777 var prevDispatcher = ReactSharedInternals.H;
20778 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
20779 try {
20780 return mountMemo(create, deps);
20781 } finally {
20782 ReactSharedInternals.H = prevDispatcher;
20783 }
20784 },
20785 useReducer: function(reducer, initialArg, init) {
20786 currentHookNameInDev = "useReducer";
20787 mountHookTypesDev();
20788 var prevDispatcher = ReactSharedInternals.H;
20789 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
20790 try {
20791 return mountReducer(reducer, initialArg, init);
20792 } finally {
20793 ReactSharedInternals.H = prevDispatcher;
20794 }
20795 },
20796 useRef: function(initialValue) {
20797 currentHookNameInDev = "useRef";
20798 mountHookTypesDev();
20799 return mountRef(initialValue);
20800 },
20801 useState: function(initialState) {
20802 currentHookNameInDev = "useState";
20803 mountHookTypesDev();
20804 var prevDispatcher = ReactSharedInternals.H;
20805 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
20806 try {
20807 return mountState(initialState);
20808 } finally {
20809 ReactSharedInternals.H = prevDispatcher;
20810 }
20811 },
20812 useDebugValue: function() {
20813 currentHookNameInDev = "useDebugValue";
20814 mountHookTypesDev();
20815 },
20816 useDeferredValue: function(value, initialValue) {
20817 currentHookNameInDev = "useDeferredValue";
20818 mountHookTypesDev();
20819 return mountDeferredValue(value, initialValue);
20820 },
20821 useTransition: function() {
20822 currentHookNameInDev = "useTransition";
20823 mountHookTypesDev();
20824 return mountTransition();
20825 },
20826 useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
20827 currentHookNameInDev = "useSyncExternalStore";
20828 mountHookTypesDev();
20829 return mountSyncExternalStore(
20830 subscribe,
20831 getSnapshot,
20832 getServerSnapshot
20833 );
20834 },
20835 useId: function() {
20836 currentHookNameInDev = "useId";
20837 mountHookTypesDev();
20838 return mountId();
20839 },
20840 useFormState: function(action, initialState) {
20841 currentHookNameInDev = "useFormState";
20842 mountHookTypesDev();
20843 warnOnUseFormStateInDev();
20844 return mountActionState(action, initialState);
20845 },
20846 useActionState: function(action, initialState) {
20847 currentHookNameInDev = "useActionState";
20848 mountHookTypesDev();
20849 return mountActionState(action, initialState);
20850 },
20851 useOptimistic: function(passthrough) {
20852 currentHookNameInDev = "useOptimistic";
20853 mountHookTypesDev();
20854 return mountOptimistic(passthrough);
20855 },
20856 useHostTransitionStatus,
20857 useMemoCache,
20858 useCacheRefresh: function() {
20859 currentHookNameInDev = "useCacheRefresh";
20860 mountHookTypesDev();
20861 return mountRefresh();
20862 },
20863 useEffectEvent: function(callback) {
20864 currentHookNameInDev = "useEffectEvent";
20865 mountHookTypesDev();
20866 return mountEvent(callback);
20867 }
20868 };
20869 HooksDispatcherOnMountWithHookTypesInDEV = {
20870 readContext: function(context) {
20871 return readContext(context);
20872 },
20873 use,
20874 useCallback: function(callback, deps) {
20875 currentHookNameInDev = "useCallback";
20876 updateHookTypesDev();
20877 return mountCallback(callback, deps);
20878 },
20879 useContext: function(context) {
20880 currentHookNameInDev = "useContext";
20881 updateHookTypesDev();
20882 return readContext(context);
20883 },
20884 useEffect: function(create, deps) {
20885 currentHookNameInDev = "useEffect";
20886 updateHookTypesDev();
20887 return mountEffect(create, deps);
20888 },
20889 useImperativeHandle: function(ref, create, deps) {
20890 currentHookNameInDev = "useImperativeHandle";
20891 updateHookTypesDev();
20892 return mountImperativeHandle(ref, create, deps);
20893 },
20894 useInsertionEffect: function(create, deps) {
20895 currentHookNameInDev = "useInsertionEffect";
20896 updateHookTypesDev();
20897 mountEffectImpl(4, Insertion, create, deps);
20898 },
20899 useLayoutEffect: function(create, deps) {
20900 currentHookNameInDev = "useLayoutEffect";
20901 updateHookTypesDev();
20902 return mountLayoutEffect(create, deps);
20903 },
20904 useMemo: function(create, deps) {
20905 currentHookNameInDev = "useMemo";
20906 updateHookTypesDev();
20907 var prevDispatcher = ReactSharedInternals.H;
20908 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
20909 try {
20910 return mountMemo(create, deps);
20911 } finally {
20912 ReactSharedInternals.H = prevDispatcher;
20913 }
20914 },
20915 useReducer: function(reducer, initialArg, init) {
20916 currentHookNameInDev = "useReducer";
20917 updateHookTypesDev();
20918 var prevDispatcher = ReactSharedInternals.H;
20919 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
20920 try {
20921 return mountReducer(reducer, initialArg, init);
20922 } finally {
20923 ReactSharedInternals.H = prevDispatcher;
20924 }
20925 },
20926 useRef: function(initialValue) {
20927 currentHookNameInDev = "useRef";
20928 updateHookTypesDev();
20929 return mountRef(initialValue);
20930 },
20931 useState: function(initialState) {
20932 currentHookNameInDev = "useState";
20933 updateHookTypesDev();
20934 var prevDispatcher = ReactSharedInternals.H;
20935 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
20936 try {
20937 return mountState(initialState);
20938 } finally {
20939 ReactSharedInternals.H = prevDispatcher;
20940 }
20941 },
20942 useDebugValue: function() {
20943 currentHookNameInDev = "useDebugValue";
20944 updateHookTypesDev();
20945 },
20946 useDeferredValue: function(value, initialValue) {
20947 currentHookNameInDev = "useDeferredValue";
20948 updateHookTypesDev();
20949 return mountDeferredValue(value, initialValue);
20950 },
20951 useTransition: function() {
20952 currentHookNameInDev = "useTransition";
20953 updateHookTypesDev();
20954 return mountTransition();
20955 },
20956 useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
20957 currentHookNameInDev = "useSyncExternalStore";
20958 updateHookTypesDev();
20959 return mountSyncExternalStore(
20960 subscribe,
20961 getSnapshot,
20962 getServerSnapshot
20963 );
20964 },
20965 useId: function() {
20966 currentHookNameInDev = "useId";
20967 updateHookTypesDev();
20968 return mountId();
20969 },
20970 useActionState: function(action, initialState) {
20971 currentHookNameInDev = "useActionState";
20972 updateHookTypesDev();
20973 return mountActionState(action, initialState);
20974 },
20975 useFormState: function(action, initialState) {
20976 currentHookNameInDev = "useFormState";
20977 updateHookTypesDev();
20978 warnOnUseFormStateInDev();
20979 return mountActionState(action, initialState);
20980 },
20981 useOptimistic: function(passthrough) {
20982 currentHookNameInDev = "useOptimistic";
20983 updateHookTypesDev();
20984 return mountOptimistic(passthrough);
20985 },
20986 useHostTransitionStatus,
20987 useMemoCache,
20988 useCacheRefresh: function() {
20989 currentHookNameInDev = "useCacheRefresh";
20990 updateHookTypesDev();
20991 return mountRefresh();
20992 },
20993 useEffectEvent: function(callback) {
20994 currentHookNameInDev = "useEffectEvent";
20995 updateHookTypesDev();
20996 return mountEvent(callback);
20997 }
20998 };
20999 HooksDispatcherOnUpdateInDEV = {
21000 readContext: function(context) {
21001 return readContext(context);
21002 },
21003 use,
21004 useCallback: function(callback, deps) {
21005 currentHookNameInDev = "useCallback";
21006 updateHookTypesDev();
21007 return updateCallback(callback, deps);
21008 },
21009 useContext: function(context) {
21010 currentHookNameInDev = "useContext";
21011 updateHookTypesDev();
21012 return readContext(context);
21013 },
21014 useEffect: function(create, deps) {
21015 currentHookNameInDev = "useEffect";
21016 updateHookTypesDev();
21017 updateEffectImpl(2048, Passive, create, deps);
21018 },
21019 useImperativeHandle: function(ref, create, deps) {
21020 currentHookNameInDev = "useImperativeHandle";
21021 updateHookTypesDev();
21022 return updateImperativeHandle(ref, create, deps);
21023 },
21024 useInsertionEffect: function(create, deps) {
21025 currentHookNameInDev = "useInsertionEffect";
21026 updateHookTypesDev();
21027 return updateEffectImpl(4, Insertion, create, deps);
21028 },
21029 useLayoutEffect: function(create, deps) {
21030 currentHookNameInDev = "useLayoutEffect";
21031 updateHookTypesDev();
21032 return updateEffectImpl(4, Layout, create, deps);
21033 },
21034 useMemo: function(create, deps) {
21035 currentHookNameInDev = "useMemo";
21036 updateHookTypesDev();
21037 var prevDispatcher = ReactSharedInternals.H;
21038 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
21039 try {
21040 return updateMemo(create, deps);
21041 } finally {
21042 ReactSharedInternals.H = prevDispatcher;
21043 }
21044 },
21045 useReducer: function(reducer, initialArg, init) {
21046 currentHookNameInDev = "useReducer";
21047 updateHookTypesDev();
21048 var prevDispatcher = ReactSharedInternals.H;
21049 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
21050 try {
21051 return updateReducer(reducer, initialArg, init);
21052 } finally {
21053 ReactSharedInternals.H = prevDispatcher;
21054 }
21055 },
21056 useRef: function() {
21057 currentHookNameInDev = "useRef";
21058 updateHookTypesDev();
21059 return updateWorkInProgressHook().memoizedState;
21060 },
21061 useState: function() {
21062 currentHookNameInDev = "useState";
21063 updateHookTypesDev();
21064 var prevDispatcher = ReactSharedInternals.H;
21065 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
21066 try {
21067 return updateReducer(basicStateReducer);
21068 } finally {
21069 ReactSharedInternals.H = prevDispatcher;
21070 }
21071 },
21072 useDebugValue: function() {
21073 currentHookNameInDev = "useDebugValue";
21074 updateHookTypesDev();
21075 },
21076 useDeferredValue: function(value, initialValue) {
21077 currentHookNameInDev = "useDeferredValue";
21078 updateHookTypesDev();
21079 return updateDeferredValue(value, initialValue);
21080 },
21081 useTransition: function() {
21082 currentHookNameInDev = "useTransition";
21083 updateHookTypesDev();
21084 return updateTransition();
21085 },
21086 useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
21087 currentHookNameInDev = "useSyncExternalStore";
21088 updateHookTypesDev();
21089 return updateSyncExternalStore(
21090 subscribe,
21091 getSnapshot,
21092 getServerSnapshot
21093 );
21094 },
21095 useId: function() {
21096 currentHookNameInDev = "useId";
21097 updateHookTypesDev();
21098 return updateWorkInProgressHook().memoizedState;
21099 },
21100 useFormState: function(action) {
21101 currentHookNameInDev = "useFormState";
21102 updateHookTypesDev();
21103 warnOnUseFormStateInDev();
21104 return updateActionState(action);
21105 },
21106 useActionState: function(action) {
21107 currentHookNameInDev = "useActionState";
21108 updateHookTypesDev();
21109 return updateActionState(action);
21110 },
21111 useOptimistic: function(passthrough, reducer) {
21112 currentHookNameInDev = "useOptimistic";
21113 updateHookTypesDev();
21114 return updateOptimistic(passthrough, reducer);
21115 },
21116 useHostTransitionStatus,
21117 useMemoCache,
21118 useCacheRefresh: function() {
21119 currentHookNameInDev = "useCacheRefresh";
21120 updateHookTypesDev();
21121 return updateWorkInProgressHook().memoizedState;
21122 },
21123 useEffectEvent: function(callback) {
21124 currentHookNameInDev = "useEffectEvent";
21125 updateHookTypesDev();
21126 return updateEvent(callback);
21127 }
21128 };
21129 HooksDispatcherOnRerenderInDEV = {
21130 readContext: function(context) {
21131 return readContext(context);
21132 },
21133 use,
21134 useCallback: function(callback, deps) {
21135 currentHookNameInDev = "useCallback";
21136 updateHookTypesDev();
21137 return updateCallback(callback, deps);
21138 },
21139 useContext: function(context) {
21140 currentHookNameInDev = "useContext";
21141 updateHookTypesDev();
21142 return readContext(context);
21143 },
21144 useEffect: function(create, deps) {
21145 currentHookNameInDev = "useEffect";
21146 updateHookTypesDev();
21147 updateEffectImpl(2048, Passive, create, deps);
21148 },
21149 useImperativeHandle: function(ref, create, deps) {
21150 currentHookNameInDev = "useImperativeHandle";
21151 updateHookTypesDev();
21152 return updateImperativeHandle(ref, create, deps);
21153 },
21154 useInsertionEffect: function(create, deps) {
21155 currentHookNameInDev = "useInsertionEffect";
21156 updateHookTypesDev();
21157 return updateEffectImpl(4, Insertion, create, deps);
21158 },
21159 useLayoutEffect: function(create, deps) {
21160 currentHookNameInDev = "useLayoutEffect";
21161 updateHookTypesDev();
21162 return updateEffectImpl(4, Layout, create, deps);
21163 },
21164 useMemo: function(create, deps) {
21165 currentHookNameInDev = "useMemo";
21166 updateHookTypesDev();
21167 var prevDispatcher = ReactSharedInternals.H;
21168 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnRerenderInDEV;
21169 try {
21170 return updateMemo(create, deps);
21171 } finally {
21172 ReactSharedInternals.H = prevDispatcher;
21173 }
21174 },
21175 useReducer: function(reducer, initialArg, init) {
21176 currentHookNameInDev = "useReducer";
21177 updateHookTypesDev();
21178 var prevDispatcher = ReactSharedInternals.H;
21179 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnRerenderInDEV;
21180 try {
21181 return rerenderReducer(reducer, initialArg, init);
21182 } finally {
21183 ReactSharedInternals.H = prevDispatcher;
21184 }
21185 },
21186 useRef: function() {
21187 currentHookNameInDev = "useRef";
21188 updateHookTypesDev();
21189 return updateWorkInProgressHook().memoizedState;
21190 },
21191 useState: function() {
21192 currentHookNameInDev = "useState";
21193 updateHookTypesDev();
21194 var prevDispatcher = ReactSharedInternals.H;
21195 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnRerenderInDEV;
21196 try {
21197 return rerenderReducer(basicStateReducer);
21198 } finally {
21199 ReactSharedInternals.H = prevDispatcher;
21200 }
21201 },
21202 useDebugValue: function() {
21203 currentHookNameInDev = "useDebugValue";
21204 updateHookTypesDev();
21205 },
21206 useDeferredValue: function(value, initialValue) {
21207 currentHookNameInDev = "useDeferredValue";
21208 updateHookTypesDev();
21209 return rerenderDeferredValue(value, initialValue);
21210 },
21211 useTransition: function() {
21212 currentHookNameInDev = "useTransition";
21213 updateHookTypesDev();
21214 return rerenderTransition();
21215 },
21216 useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
21217 currentHookNameInDev = "useSyncExternalStore";
21218 updateHookTypesDev();
21219 return updateSyncExternalStore(
21220 subscribe,
21221 getSnapshot,
21222 getServerSnapshot
21223 );
21224 },
21225 useId: function() {
21226 currentHookNameInDev = "useId";
21227 updateHookTypesDev();
21228 return updateWorkInProgressHook().memoizedState;
21229 },
21230 useFormState: function(action) {
21231 currentHookNameInDev = "useFormState";
21232 updateHookTypesDev();
21233 warnOnUseFormStateInDev();
21234 return rerenderActionState(action);
21235 },
21236 useActionState: function(action) {
21237 currentHookNameInDev = "useActionState";
21238 updateHookTypesDev();
21239 return rerenderActionState(action);
21240 },
21241 useOptimistic: function(passthrough, reducer) {
21242 currentHookNameInDev = "useOptimistic";
21243 updateHookTypesDev();
21244 return rerenderOptimistic(passthrough, reducer);
21245 },
21246 useHostTransitionStatus,
21247 useMemoCache,
21248 useCacheRefresh: function() {
21249 currentHookNameInDev = "useCacheRefresh";
21250 updateHookTypesDev();
21251 return updateWorkInProgressHook().memoizedState;
21252 },
21253 useEffectEvent: function(callback) {
21254 currentHookNameInDev = "useEffectEvent";
21255 updateHookTypesDev();
21256 return updateEvent(callback);
21257 }
21258 };
21259 InvalidNestedHooksDispatcherOnMountInDEV = {
21260 readContext: function(context) {
21261 warnInvalidContextAccess();
21262 return readContext(context);
21263 },
21264 use: function(usable) {
21265 warnInvalidHookAccess();
21266 return use(usable);
21267 },
21268 useCallback: function(callback, deps) {
21269 currentHookNameInDev = "useCallback";
21270 warnInvalidHookAccess();
21271 mountHookTypesDev();
21272 return mountCallback(callback, deps);
21273 },
21274 useContext: function(context) {
21275 currentHookNameInDev = "useContext";
21276 warnInvalidHookAccess();
21277 mountHookTypesDev();
21278 return readContext(context);
21279 },
21280 useEffect: function(create, deps) {
21281 currentHookNameInDev = "useEffect";
21282 warnInvalidHookAccess();
21283 mountHookTypesDev();
21284 return mountEffect(create, deps);
21285 },
21286 useImperativeHandle: function(ref, create, deps) {
21287 currentHookNameInDev = "useImperativeHandle";
21288 warnInvalidHookAccess();
21289 mountHookTypesDev();
21290 return mountImperativeHandle(ref, create, deps);
21291 },
21292 useInsertionEffect: function(create, deps) {
21293 currentHookNameInDev = "useInsertionEffect";
21294 warnInvalidHookAccess();
21295 mountHookTypesDev();
21296 mountEffectImpl(4, Insertion, create, deps);
21297 },
21298 useLayoutEffect: function(create, deps) {
21299 currentHookNameInDev = "useLayoutEffect";
21300 warnInvalidHookAccess();
21301 mountHookTypesDev();
21302 return mountLayoutEffect(create, deps);
21303 },
21304 useMemo: function(create, deps) {
21305 currentHookNameInDev = "useMemo";
21306 warnInvalidHookAccess();
21307 mountHookTypesDev();
21308 var prevDispatcher = ReactSharedInternals.H;
21309 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
21310 try {
21311 return mountMemo(create, deps);
21312 } finally {
21313 ReactSharedInternals.H = prevDispatcher;
21314 }
21315 },
21316 useReducer: function(reducer, initialArg, init) {
21317 currentHookNameInDev = "useReducer";
21318 warnInvalidHookAccess();
21319 mountHookTypesDev();
21320 var prevDispatcher = ReactSharedInternals.H;
21321 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
21322 try {
21323 return mountReducer(reducer, initialArg, init);
21324 } finally {
21325 ReactSharedInternals.H = prevDispatcher;
21326 }
21327 },
21328 useRef: function(initialValue) {
21329 currentHookNameInDev = "useRef";
21330 warnInvalidHookAccess();
21331 mountHookTypesDev();
21332 return mountRef(initialValue);
21333 },
21334 useState: function(initialState) {
21335 currentHookNameInDev = "useState";
21336 warnInvalidHookAccess();
21337 mountHookTypesDev();
21338 var prevDispatcher = ReactSharedInternals.H;
21339 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
21340 try {
21341 return mountState(initialState);
21342 } finally {
21343 ReactSharedInternals.H = prevDispatcher;
21344 }
21345 },
21346 useDebugValue: function() {
21347 currentHookNameInDev = "useDebugValue";
21348 warnInvalidHookAccess();
21349 mountHookTypesDev();
21350 },
21351 useDeferredValue: function(value, initialValue) {
21352 currentHookNameInDev = "useDeferredValue";
21353 warnInvalidHookAccess();
21354 mountHookTypesDev();
21355 return mountDeferredValue(value, initialValue);
21356 },
21357 useTransition: function() {
21358 currentHookNameInDev = "useTransition";
21359 warnInvalidHookAccess();
21360 mountHookTypesDev();
21361 return mountTransition();
21362 },
21363 useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
21364 currentHookNameInDev = "useSyncExternalStore";
21365 warnInvalidHookAccess();
21366 mountHookTypesDev();
21367 return mountSyncExternalStore(
21368 subscribe,
21369 getSnapshot,
21370 getServerSnapshot
21371 );
21372 },
21373 useId: function() {
21374 currentHookNameInDev = "useId";
21375 warnInvalidHookAccess();
21376 mountHookTypesDev();
21377 return mountId();
21378 },
21379 useFormState: function(action, initialState) {
21380 currentHookNameInDev = "useFormState";
21381 warnInvalidHookAccess();
21382 mountHookTypesDev();
21383 return mountActionState(action, initialState);
21384 },
21385 useActionState: function(action, initialState) {
21386 currentHookNameInDev = "useActionState";
21387 warnInvalidHookAccess();
21388 mountHookTypesDev();
21389 return mountActionState(action, initialState);
21390 },
21391 useOptimistic: function(passthrough) {
21392 currentHookNameInDev = "useOptimistic";
21393 warnInvalidHookAccess();
21394 mountHookTypesDev();
21395 return mountOptimistic(passthrough);
21396 },
21397 useMemoCache: function(size) {
21398 warnInvalidHookAccess();
21399 return useMemoCache(size);
21400 },
21401 useHostTransitionStatus,
21402 useCacheRefresh: function() {
21403 currentHookNameInDev = "useCacheRefresh";
21404 mountHookTypesDev();
21405 return mountRefresh();
21406 },
21407 useEffectEvent: function(callback) {
21408 currentHookNameInDev = "useEffectEvent";
21409 warnInvalidHookAccess();
21410 mountHookTypesDev();
21411 return mountEvent(callback);
21412 }
21413 };
21414 InvalidNestedHooksDispatcherOnUpdateInDEV = {
21415 readContext: function(context) {
21416 warnInvalidContextAccess();
21417 return readContext(context);
21418 },
21419 use: function(usable) {
21420 warnInvalidHookAccess();
21421 return use(usable);
21422 },
21423 useCallback: function(callback, deps) {
21424 currentHookNameInDev = "useCallback";
21425 warnInvalidHookAccess();
21426 updateHookTypesDev();
21427 return updateCallback(callback, deps);
21428 },
21429 useContext: function(context) {
21430 currentHookNameInDev = "useContext";
21431 warnInvalidHookAccess();
21432 updateHookTypesDev();
21433 return readContext(context);
21434 },
21435 useEffect: function(create, deps) {
21436 currentHookNameInDev = "useEffect";
21437 warnInvalidHookAccess();
21438 updateHookTypesDev();
21439 updateEffectImpl(2048, Passive, create, deps);
21440 },
21441 useImperativeHandle: function(ref, create, deps) {
21442 currentHookNameInDev = "useImperativeHandle";
21443 warnInvalidHookAccess();
21444 updateHookTypesDev();
21445 return updateImperativeHandle(ref, create, deps);
21446 },
21447 useInsertionEffect: function(create, deps) {
21448 currentHookNameInDev = "useInsertionEffect";
21449 warnInvalidHookAccess();
21450 updateHookTypesDev();
21451 return updateEffectImpl(4, Insertion, create, deps);
21452 },
21453 useLayoutEffect: function(create, deps) {
21454 currentHookNameInDev = "useLayoutEffect";
21455 warnInvalidHookAccess();
21456 updateHookTypesDev();
21457 return updateEffectImpl(4, Layout, create, deps);
21458 },
21459 useMemo: function(create, deps) {
21460 currentHookNameInDev = "useMemo";
21461 warnInvalidHookAccess();
21462 updateHookTypesDev();
21463 var prevDispatcher = ReactSharedInternals.H;
21464 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
21465 try {
21466 return updateMemo(create, deps);
21467 } finally {
21468 ReactSharedInternals.H = prevDispatcher;
21469 }
21470 },
21471 useReducer: function(reducer, initialArg, init) {
21472 currentHookNameInDev = "useReducer";
21473 warnInvalidHookAccess();
21474 updateHookTypesDev();
21475 var prevDispatcher = ReactSharedInternals.H;
21476 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
21477 try {
21478 return updateReducer(reducer, initialArg, init);
21479 } finally {
21480 ReactSharedInternals.H = prevDispatcher;
21481 }
21482 },
21483 useRef: function() {
21484 currentHookNameInDev = "useRef";
21485 warnInvalidHookAccess();
21486 updateHookTypesDev();
21487 return updateWorkInProgressHook().memoizedState;
21488 },
21489 useState: function() {
21490 currentHookNameInDev = "useState";
21491 warnInvalidHookAccess();
21492 updateHookTypesDev();
21493 var prevDispatcher = ReactSharedInternals.H;
21494 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
21495 try {
21496 return updateReducer(basicStateReducer);
21497 } finally {
21498 ReactSharedInternals.H = prevDispatcher;
21499 }
21500 },
21501 useDebugValue: function() {
21502 currentHookNameInDev = "useDebugValue";
21503 warnInvalidHookAccess();
21504 updateHookTypesDev();
21505 },
21506 useDeferredValue: function(value, initialValue) {
21507 currentHookNameInDev = "useDeferredValue";
21508 warnInvalidHookAccess();
21509 updateHookTypesDev();
21510 return updateDeferredValue(value, initialValue);
21511 },
21512 useTransition: function() {
21513 currentHookNameInDev = "useTransition";
21514 warnInvalidHookAccess();
21515 updateHookTypesDev();
21516 return updateTransition();
21517 },
21518 useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
21519 currentHookNameInDev = "useSyncExternalStore";
21520 warnInvalidHookAccess();
21521 updateHookTypesDev();
21522 return updateSyncExternalStore(
21523 subscribe,
21524 getSnapshot,
21525 getServerSnapshot
21526 );
21527 },
21528 useId: function() {
21529 currentHookNameInDev = "useId";
21530 warnInvalidHookAccess();
21531 updateHookTypesDev();
21532 return updateWorkInProgressHook().memoizedState;
21533 },
21534 useFormState: function(action) {
21535 currentHookNameInDev = "useFormState";
21536 warnInvalidHookAccess();
21537 updateHookTypesDev();
21538 return updateActionState(action);
21539 },
21540 useActionState: function(action) {
21541 currentHookNameInDev = "useActionState";
21542 warnInvalidHookAccess();
21543 updateHookTypesDev();
21544 return updateActionState(action);
21545 },
21546 useOptimistic: function(passthrough, reducer) {
21547 currentHookNameInDev = "useOptimistic";
21548 warnInvalidHookAccess();
21549 updateHookTypesDev();
21550 return updateOptimistic(passthrough, reducer);
21551 },
21552 useMemoCache: function(size) {
21553 warnInvalidHookAccess();
21554 return useMemoCache(size);
21555 },
21556 useHostTransitionStatus,
21557 useCacheRefresh: function() {
21558 currentHookNameInDev = "useCacheRefresh";
21559 updateHookTypesDev();
21560 return updateWorkInProgressHook().memoizedState;
21561 },
21562 useEffectEvent: function(callback) {
21563 currentHookNameInDev = "useEffectEvent";
21564 warnInvalidHookAccess();
21565 updateHookTypesDev();
21566 return updateEvent(callback);
21567 }
21568 };
21569 InvalidNestedHooksDispatcherOnRerenderInDEV = {
21570 readContext: function(context) {
21571 warnInvalidContextAccess();
21572 return readContext(context);
21573 },
21574 use: function(usable) {
21575 warnInvalidHookAccess();
21576 return use(usable);
21577 },
21578 useCallback: function(callback, deps) {
21579 currentHookNameInDev = "useCallback";
21580 warnInvalidHookAccess();
21581 updateHookTypesDev();
21582 return updateCallback(callback, deps);
21583 },
21584 useContext: function(context) {
21585 currentHookNameInDev = "useContext";
21586 warnInvalidHookAccess();
21587 updateHookTypesDev();
21588 return readContext(context);
21589 },
21590 useEffect: function(create, deps) {
21591 currentHookNameInDev = "useEffect";
21592 warnInvalidHookAccess();
21593 updateHookTypesDev();
21594 updateEffectImpl(2048, Passive, create, deps);
21595 },
21596 useImperativeHandle: function(ref, create, deps) {
21597 currentHookNameInDev = "useImperativeHandle";
21598 warnInvalidHookAccess();
21599 updateHookTypesDev();
21600 return updateImperativeHandle(ref, create, deps);
21601 },
21602 useInsertionEffect: function(create, deps) {
21603 currentHookNameInDev = "useInsertionEffect";
21604 warnInvalidHookAccess();
21605 updateHookTypesDev();
21606 return updateEffectImpl(4, Insertion, create, deps);
21607 },
21608 useLayoutEffect: function(create, deps) {
21609 currentHookNameInDev = "useLayoutEffect";
21610 warnInvalidHookAccess();
21611 updateHookTypesDev();
21612 return updateEffectImpl(4, Layout, create, deps);
21613 },
21614 useMemo: function(create, deps) {
21615 currentHookNameInDev = "useMemo";
21616 warnInvalidHookAccess();
21617 updateHookTypesDev();
21618 var prevDispatcher = ReactSharedInternals.H;
21619 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
21620 try {
21621 return updateMemo(create, deps);
21622 } finally {
21623 ReactSharedInternals.H = prevDispatcher;
21624 }
21625 },
21626 useReducer: function(reducer, initialArg, init) {
21627 currentHookNameInDev = "useReducer";
21628 warnInvalidHookAccess();
21629 updateHookTypesDev();
21630 var prevDispatcher = ReactSharedInternals.H;
21631 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
21632 try {
21633 return rerenderReducer(reducer, initialArg, init);
21634 } finally {
21635 ReactSharedInternals.H = prevDispatcher;
21636 }
21637 },
21638 useRef: function() {
21639 currentHookNameInDev = "useRef";
21640 warnInvalidHookAccess();
21641 updateHookTypesDev();
21642 return updateWorkInProgressHook().memoizedState;
21643 },
21644 useState: function() {
21645 currentHookNameInDev = "useState";
21646 warnInvalidHookAccess();
21647 updateHookTypesDev();
21648 var prevDispatcher = ReactSharedInternals.H;
21649 ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
21650 try {
21651 return rerenderReducer(basicStateReducer);
21652 } finally {
21653 ReactSharedInternals.H = prevDispatcher;
21654 }
21655 },
21656 useDebugValue: function() {
21657 currentHookNameInDev = "useDebugValue";
21658 warnInvalidHookAccess();
21659 updateHookTypesDev();
21660 },
21661 useDeferredValue: function(value, initialValue) {
21662 currentHookNameInDev = "useDeferredValue";
21663 warnInvalidHookAccess();
21664 updateHookTypesDev();
21665 return rerenderDeferredValue(value, initialValue);
21666 },
21667 useTransition: function() {
21668 currentHookNameInDev = "useTransition";
21669 warnInvalidHookAccess();
21670 updateHookTypesDev();
21671 return rerenderTransition();
21672 },
21673 useSyncExternalStore: function(subscribe, getSnapshot, getServerSnapshot) {
21674 currentHookNameInDev = "useSyncExternalStore";
21675 warnInvalidHookAccess();
21676 updateHookTypesDev();
21677 return updateSyncExternalStore(
21678 subscribe,
21679 getSnapshot,
21680 getServerSnapshot
21681 );
21682 },
21683 useId: function() {
21684 currentHookNameInDev = "useId";
21685 warnInvalidHookAccess();
21686 updateHookTypesDev();
21687 return updateWorkInProgressHook().memoizedState;
21688 },
21689 useFormState: function(action) {
21690 currentHookNameInDev = "useFormState";
21691 warnInvalidHookAccess();
21692 updateHookTypesDev();
21693 return rerenderActionState(action);
21694 },
21695 useActionState: function(action) {
21696 currentHookNameInDev = "useActionState";
21697 warnInvalidHookAccess();
21698 updateHookTypesDev();
21699 return rerenderActionState(action);
21700 },
21701 useOptimistic: function(passthrough, reducer) {
21702 currentHookNameInDev = "useOptimistic";
21703 warnInvalidHookAccess();
21704 updateHookTypesDev();
21705 return rerenderOptimistic(passthrough, reducer);
21706 },
21707 useMemoCache: function(size) {
21708 warnInvalidHookAccess();
21709 return useMemoCache(size);
21710 },
21711 useHostTransitionStatus,
21712 useCacheRefresh: function() {
21713 currentHookNameInDev = "useCacheRefresh";
21714 updateHookTypesDev();
21715 return updateWorkInProgressHook().memoizedState;
21716 },
21717 useEffectEvent: function(callback) {
21718 currentHookNameInDev = "useEffectEvent";
21719 warnInvalidHookAccess();
21720 updateHookTypesDev();
21721 return updateEvent(callback);
21722 }
21723 };
21724 var fakeInternalInstance = {};
21725 var didWarnAboutStateAssignmentForComponent = /* @__PURE__ */ new Set();
21726 var didWarnAboutUninitializedState = /* @__PURE__ */ new Set();
21727 var didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate = /* @__PURE__ */ new Set();
21728 var didWarnAboutLegacyLifecyclesAndDerivedState = /* @__PURE__ */ new Set();
21729 var didWarnAboutDirectlyAssigningPropsToState = /* @__PURE__ */ new Set();
21730 var didWarnAboutUndefinedDerivedState = /* @__PURE__ */ new Set();
21731 var didWarnAboutContextTypes$1 = /* @__PURE__ */ new Set();
21732 var didWarnAboutChildContextTypes = /* @__PURE__ */ new Set();
21733 var didWarnAboutInvalidateContextType = /* @__PURE__ */ new Set();
21734 var didWarnOnInvalidCallback = /* @__PURE__ */ new Set();
21735 Object.freeze(fakeInternalInstance);
21736 var classComponentUpdater = {
21737 enqueueSetState: function(inst, payload, callback) {
21738 inst = inst._reactInternals;
21739 var lane = requestUpdateLane(inst), update = createUpdate(lane);
21740 update.payload = payload;
21741 void 0 !== callback && null !== callback && (warnOnInvalidCallback(callback), update.callback = callback);
21742 payload = enqueueUpdate(inst, update, lane);
21743 null !== payload && (startUpdateTimerByLane(lane, "this.setState()", inst), scheduleUpdateOnFiber(payload, inst, lane), entangleTransitions(payload, inst, lane));
21744 },
21745 enqueueReplaceState: function(inst, payload, callback) {
21746 inst = inst._reactInternals;
21747 var lane = requestUpdateLane(inst), update = createUpdate(lane);
21748 update.tag = ReplaceState;
21749 update.payload = payload;
21750 void 0 !== callback && null !== callback && (warnOnInvalidCallback(callback), update.callback = callback);
21751 payload = enqueueUpdate(inst, update, lane);
21752 null !== payload && (startUpdateTimerByLane(lane, "this.replaceState()", inst), scheduleUpdateOnFiber(payload, inst, lane), entangleTransitions(payload, inst, lane));
21753 },
21754 enqueueForceUpdate: function(inst, callback) {
21755 inst = inst._reactInternals;
21756 var lane = requestUpdateLane(inst), update = createUpdate(lane);
21757 update.tag = ForceUpdate;
21758 void 0 !== callback && null !== callback && (warnOnInvalidCallback(callback), update.callback = callback);
21759 callback = enqueueUpdate(inst, update, lane);
21760 null !== callback && (startUpdateTimerByLane(lane, "this.forceUpdate()", inst), scheduleUpdateOnFiber(callback, inst, lane), entangleTransitions(callback, inst, lane));
21761 }
21762 }, componentName = null, errorBoundaryName = null, SelectiveHydrationException = Error(
21763 "This is not a real error. It's an implementation detail of React's selective hydration feature. If this leaks into userspace, it's a bug in React. Please file an issue."
21764 ), didReceiveUpdate = false;
21765 var didWarnAboutBadClass = {};
21766 var didWarnAboutContextTypeOnFunctionComponent = {};
21767 var didWarnAboutContextTypes = {};
21768 var didWarnAboutGetDerivedStateOnFunctionComponent = {};
21769 var didWarnAboutReassigningProps = false;
21770 var didWarnAboutRevealOrder = {};
21771 var didWarnAboutTailOptions = {};
21772 var didWarnAboutClassNameOnViewTransition = {};
21773 var SUSPENDED_MARKER = {
21774 dehydrated: null,
21775 treeContext: null,
21776 retryLane: 0,
21777 hydrationErrors: null
21778 }, hasWarnedAboutUsingNoValuePropOnContextProvider = false, didWarnAboutUndefinedSnapshotBeforeUpdate = null;
21779 didWarnAboutUndefinedSnapshotBeforeUpdate = /* @__PURE__ */ new Set();
21780 var shouldStartViewTransition = false, appearingViewTransitions = null, viewTransitionCancelableChildren = null, viewTransitionHostInstanceIdx = 0, mountedNamedViewTransitions = /* @__PURE__ */ new Map(), didWarnAboutName = {}, NoLayoutEffectTraversalFlags = 0, IncludeWorkInProgressEffects = 1, IncludeHostSingletons = 2, offscreenSubtreeIsHidden = false, offscreenSubtreeWasHidden = false, offscreenDirectParentIsHidden = false, needsFormReset = false, PossiblyWeakSet = "function" === typeof WeakSet ? WeakSet : Set, nextEffect = null, inProgressLanes = null, inProgressRoot = null, viewTransitionContextChanged = false, inUpdateViewTransition = false, rootViewTransitionAffected = false, rootViewTransitionNameCanceled = false, hostParent = null, hostParentIsContainer = false, currentHoistableRoot = null, inHydratedSubtree = false, suspenseyCommitFlag = 8192, DefaultAsyncDispatcher = {
21781 getCacheForType: function(resourceType) {
21782 var cache = readContext(CacheContext), cacheForType = cache.data.get(resourceType);
21783 void 0 === cacheForType && (cacheForType = resourceType(), cache.data.set(resourceType, cacheForType));
21784 return cacheForType;
21785 },
21786 cacheSignal: function() {
21787 return readContext(CacheContext).controller.signal;
21788 },
21789 getOwner: function() {
21790 return current;
21791 }
21792 };
21793 if ("function" === typeof Symbol && Symbol.for) {
21794 var symbolFor = Symbol.for;
21795 symbolFor("selector.component");
21796 symbolFor("selector.has_pseudo_class");
21797 symbolFor("selector.role");
21798 symbolFor("selector.test_id");
21799 symbolFor("selector.text");
21800 }
21801 var commitHooks = [], PossiblyWeakMap = "function" === typeof WeakMap ? WeakMap : Map, NoContext = 0, RenderContext = 2, CommitContext = 4, RootInProgress = 0, RootFatalErrored = 1, RootErrored = 2, RootSuspended = 3, RootSuspendedWithDelay = 4, RootSuspendedAtTheShell = 6, RootCompleted = 5, executionContext = NoContext, workInProgressRoot = null, workInProgress = null, workInProgressRootRenderLanes = 0, NotSuspended = 0, SuspendedOnError = 1, SuspendedOnData = 2, SuspendedOnImmediate = 3, SuspendedOnInstance = 4, SuspendedOnInstanceAndReadyToContinue = 5, SuspendedOnDeprecatedThrowPromise = 6, SuspendedAndReadyToContinue = 7, SuspendedOnHydration = 8, SuspendedOnAction = 9, workInProgressSuspendedReason = NotSuspended, workInProgressThrownValue = null, workInProgressRootDidSkipSuspendedSiblings = false, workInProgressRootIsPrerendering = false, workInProgressRootDidAttachPingListener = false, entangledRenderLanes = 0, workInProgressRootExitStatus = RootInProgress, workInProgressRootSkippedLanes = 0, workInProgressRootInterleavedUpdatedLanes = 0, workInProgressRootPingedLanes = 0, workInProgressDeferredLane = 0, workInProgressSuspendedRetryLanes = 0, workInProgressRootConcurrentErrors = null, workInProgressRootRecoverableErrors = null, workInProgressRootDidIncludeRecursiveRenderUpdate = false, globalMostRecentFallbackTime = 0, globalMostRecentTransitionTime = 0, FALLBACK_THROTTLE_MS = 300, workInProgressRootRenderTargetTime = Infinity, RENDER_TIMEOUT_MS = 500, workInProgressTransitions = null, workInProgressUpdateTask = null, legacyErrorBoundariesThatAlreadyFailed = null, IMMEDIATE_COMMIT = 0, ABORTED_VIEW_TRANSITION_COMMIT = 1, DELAYED_PASSIVE_COMMIT = 2, ANIMATION_STARTED_COMMIT = 3, NO_PENDING_EFFECTS = 0, PENDING_MUTATION_PHASE = 1, PENDING_LAYOUT_PHASE = 2, PENDING_AFTER_MUTATION_PHASE = 3, PENDING_SPAWNED_WORK = 4, PENDING_PASSIVE_PHASE = 5, pendingEffectsStatus = 0, pendingEffectsRoot = null, pendingFinishedWork = null, pendingEffectsLanes = 0, pendingEffectsRemainingLanes = 0, pendingEffectsRenderEndTime = -0, pendingPassiveTransitions = null, pendingRecoverableErrors = null, pendingViewTransition = null, pendingViewTransitionEvents = null, pendingTransitionTypes = null, pendingSuspendedCommitReason = null, pendingDelayedCommitReason = IMMEDIATE_COMMIT, pendingSuspendedViewTransitionReason = null, NESTED_UPDATE_LIMIT = 50, nestedUpdateCount = 0, rootWithNestedUpdates = null, isFlushingPassiveEffects = false, didScheduleUpdateDuringPassiveEffects = false, NESTED_PASSIVE_UPDATE_LIMIT = 50, nestedPassiveUpdateCount = 0, rootWithPassiveNestedUpdates = null, isRunningInsertionEffect = false, didWarnAboutInterruptedViewTransitions = false, didWarnStateUpdateForNotYetMountedComponent = null, didWarnAboutUpdateInRender = false;
21802 var didWarnAboutUpdateInRenderForAnotherComponent = /* @__PURE__ */ new Set();
21803 var fakeActCallbackNode$1 = {}, firstScheduledRoot = null, lastScheduledRoot = null, didScheduleMicrotask = false, didScheduleMicrotask_act = false, mightHavePendingSyncWork = false, isFlushingWork = false, currentEventTransitionLane = 0, fakeActCallbackNode = {};
21804 (function() {
21805 for (var i = 0; i < simpleEventPluginEvents.length; i++) {
21806 var eventName = simpleEventPluginEvents[i], domEventName = eventName.toLowerCase();
21807 eventName = eventName[0].toUpperCase() + eventName.slice(1);
21808 registerSimpleEvent(domEventName, "on" + eventName);
21809 }
21810 registerSimpleEvent(ANIMATION_END, "onAnimationEnd");
21811 registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration");
21812 registerSimpleEvent(ANIMATION_START, "onAnimationStart");
21813 registerSimpleEvent("dblclick", "onDoubleClick");
21814 registerSimpleEvent("focusin", "onFocus");
21815 registerSimpleEvent("focusout", "onBlur");
21816 registerSimpleEvent(TRANSITION_RUN, "onTransitionRun");
21817 registerSimpleEvent(TRANSITION_START, "onTransitionStart");
21818 registerSimpleEvent(TRANSITION_CANCEL, "onTransitionCancel");
21819 registerSimpleEvent(TRANSITION_END, "onTransitionEnd");
21820 })();
21821 registerDirectEvent("onMouseEnter", ["mouseout", "mouseover"]);
21822 registerDirectEvent("onMouseLeave", ["mouseout", "mouseover"]);
21823 registerDirectEvent("onPointerEnter", ["pointerout", "pointerover"]);
21824 registerDirectEvent("onPointerLeave", ["pointerout", "pointerover"]);
21825 registerTwoPhaseEvent(
21826 "onChange",
21827 "change click focusin focusout input keydown keyup selectionchange".split(
21828 " "
21829 )
21830 );
21831 registerTwoPhaseEvent(
21832 "onSelect",
21833 "focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(
21834 " "
21835 )
21836 );
21837 registerTwoPhaseEvent("onBeforeInput", [
21838 "compositionend",
21839 "keypress",
21840 "textInput",
21841 "paste"
21842 ]);
21843 registerTwoPhaseEvent(
21844 "onCompositionEnd",
21845 "compositionend focusout keydown keypress keyup mousedown".split(" ")
21846 );
21847 registerTwoPhaseEvent(
21848 "onCompositionStart",
21849 "compositionstart focusout keydown keypress keyup mousedown".split(" ")
21850 );
21851 registerTwoPhaseEvent(
21852 "onCompositionUpdate",
21853 "compositionupdate focusout keydown keypress keyup mousedown".split(" ")
21854 );
21855 var mediaEventTypes = "abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(
21856 " "
21857 ), nonDelegatedEvents = new Set(
21858 "beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(mediaEventTypes)
21859 ), listeningMarker = "_reactListening" + Math.random().toString(36).slice(2), didWarnControlledToUncontrolled = false, didWarnUncontrolledToControlled = false, didWarnFormActionType = false, didWarnFormActionName = false, didWarnFormActionTarget = false, didWarnFormActionMethod = false, didWarnPopoverTargetObject = false;
21860 var didWarnForNewBooleanPropsWithEmptyValue = {};
21861 var NORMALIZE_NEWLINES_REGEX = /\r\n?/g, NORMALIZE_NULL_AND_REPLACEMENT_REGEX = /\u0000|\uFFFD/g, xlinkNamespace = "http://www.w3.org/1999/xlink", xmlNamespace = "http://www.w3.org/XML/1998/namespace", emptyProps = {}, EXPECTED_FORM_ACTION_URL = "javascript:throw new Error('React form unexpectedly submitted.')", SUPPRESS_HYDRATION_WARNING = "suppressHydrationWarning", ACTIVITY_START_DATA = "&", ACTIVITY_END_DATA = "/&", SUSPENSE_START_DATA = "$", SUSPENSE_END_DATA = "/$", SUSPENSE_PENDING_START_DATA = "$?", SUSPENSE_QUEUED_START_DATA = "$~", SUSPENSE_FALLBACK_START_DATA = "$!", PREAMBLE_CONTRIBUTION_HTML = "html", PREAMBLE_CONTRIBUTION_BODY = "body", PREAMBLE_CONTRIBUTION_HEAD = "head", FORM_STATE_IS_MATCHING = "F!", FORM_STATE_IS_NOT_MATCHING = "F", DOCUMENT_READY_STATE_LOADING = "loading", STYLE = "style", HostContextNamespaceNone = 0, HostContextNamespaceSvg = 1, HostContextNamespaceMath = 2, eventsEnabled = null, selectionInformation = null, didWarnScriptTags = false, warnedUnknownTags = { dialog: true, webview: true }, currentPopstateTransitionEvent = null, schedulerEvent = void 0, scheduleTimeout = "function" === typeof setTimeout ? setTimeout : void 0, cancelTimeout = "function" === typeof clearTimeout ? clearTimeout : void 0, noTimeout = -1, localPromise = "function" === typeof Promise ? Promise : void 0, localRequestAnimationFrame = "function" === typeof requestAnimationFrame ? requestAnimationFrame : scheduleTimeout, scheduleMicrotask = "function" === typeof queueMicrotask ? queueMicrotask : "undefined" !== typeof localPromise ? function(callback) {
21862 return localPromise.resolve(null).then(callback).catch(handleErrorInNextTick);
21863 } : scheduleTimeout, SUSPENSEY_FONT_AND_IMAGE_TIMEOUT = 500;
21864 ViewTransitionPseudoElement.prototype.animate = function(keyframes, options) {
21865 options = "number" === typeof options ? { duration: options } : assign({}, options);
21866 options.pseudoElement = this._selector;
21867 return this._scope.animate(keyframes, options);
21868 };
21869 ViewTransitionPseudoElement.prototype.getAnimations = function() {
21870 for (var scope = this._scope, selector = this._selector, animations = scope.getAnimations({ subtree: true }), result = [], i = 0; i < animations.length; i++) {
21871 var effect = animations[i].effect;
21872 null !== effect && effect.target === scope && effect.pseudoElement === selector && result.push(animations[i]);
21873 }
21874 return result;
21875 };
21876 ViewTransitionPseudoElement.prototype.getComputedStyle = function() {
21877 return getComputedStyle(this._scope, this._selector);
21878 };
21879 FragmentInstance.prototype.addEventListener = function(type, listener, optionsOrUseCapture) {
21880 var signal = null, cleanup = null;
21881 if (null != optionsOrUseCapture && "boolean" !== typeof optionsOrUseCapture && (signal = optionsOrUseCapture.signal || null, null !== signal && signal.aborted))
21882 return;
21883 null === this._eventListeners && (this._eventListeners = []);
21884 var listeners = this._eventListeners;
21885 if (-1 === indexOfEventListener(listeners, type, listener, optionsOrUseCapture)) {
21886 var fragmentInstance = this, attachedListener = listener;
21887 null != optionsOrUseCapture && "boolean" !== typeof optionsOrUseCapture && true === optionsOrUseCapture.once && (attachedListener = function(event) {
21888 fragmentInstance.removeEventListener(
21889 type,
21890 listener,
21891 optionsOrUseCapture
21892 );
21893 "function" === typeof listener ? listener.call(this, event) : listener.handleEvent(event);
21894 });
21895 null !== signal && (cleanup = fragmentInstance.removeEventListener.bind(
21896 fragmentInstance,
21897 type,
21898 listener,
21899 optionsOrUseCapture
21900 ), signal.addEventListener("abort", cleanup, { once: true }), cleanup = signal.removeEventListener.bind(
21901 signal,
21902 "abort",
21903 cleanup
21904 ));
21905 signal = getAttachOptions(optionsOrUseCapture);
21906 listeners.push({
21907 type,
21908 listener,
21909 optionsOrUseCapture,
21910 attachedListener,
21911 cleanup
21912 });
21913 traverseFragmentInstancesAndTextInstances(
21914 this._fragmentFiber,
21915 addEventListenerToChild,
21916 type,
21917 attachedListener,
21918 signal
21919 );
21920 }
21921 this._eventListeners = listeners;
21922 };
21923 FragmentInstance.prototype.removeEventListener = function(type, listener, optionsOrUseCapture) {
21924 var listeners = this._eventListeners;
21925 if (null !== listeners && (listener = indexOfEventListener(
21926 listeners,
21927 type,
21928 listener,
21929 optionsOrUseCapture
21930 ), -1 !== listener)) {
21931 var _listeners$index = listeners[listener];
21932 optionsOrUseCapture = _listeners$index.attachedListener;
21933 var cleanup = _listeners$index.cleanup;
21934 _listeners$index = getAttachOptions(
21935 _listeners$index.optionsOrUseCapture
21936 );
21937 traverseFragmentInstancesAndTextInstances(
21938 this._fragmentFiber,
21939 removeEventListenerFromChild,
21940 type,
21941 optionsOrUseCapture,
21942 _listeners$index
21943 );
21944 listeners.splice(listener, 1);
21945 null !== cleanup && cleanup();
21946 }
21947 };
21948 FragmentInstance.prototype.dispatchEvent = function(event) {
21949 var parentHostFiber = getFragmentParentInstanceOrContainerFiber(
21950 this._fragmentFiber
21951 );
21952 if (null === parentHostFiber) return true;
21953 parentHostFiber = getInstanceFromHostFiber(parentHostFiber);
21954 var eventListeners = this._eventListeners;
21955 if (null !== eventListeners && 0 < eventListeners.length || !event.bubbles) {
21956 var temp = 9 === parentHostFiber.nodeType ? parentHostFiber.createComment("") : document.createTextNode("");
21957 if (eventListeners)
21958 for (var i = 0; i < eventListeners.length; i++) {
21959 var _eventListeners$i = eventListeners[i];
21960 temp.addEventListener(
21961 _eventListeners$i.type,
21962 _eventListeners$i.attachedListener,
21963 getAttachOptions(_eventListeners$i.optionsOrUseCapture)
21964 );
21965 }
21966 parentHostFiber.appendChild(temp);
21967 event = temp.dispatchEvent(event);
21968 if (eventListeners)
21969 for (i = 0; i < eventListeners.length; i++)
21970 _eventListeners$i = eventListeners[i], temp.removeEventListener(
21971 _eventListeners$i.type,
21972 _eventListeners$i.attachedListener,
21973 getAttachOptions(_eventListeners$i.optionsOrUseCapture)
21974 );
21975 parentHostFiber.removeChild(temp);
21976 return event;
21977 }
21978 return parentHostFiber.dispatchEvent(event);
21979 };
21980 FragmentInstance.prototype.focus = function(focusOptions) {
21981 traverseVisibleInstancesAndTextInstances(
21982 this._fragmentFiber.child,
21983 true,
21984 setFocusOnFiberIfFocusable,
21985 focusOptions,
21986 void 0,
21987 void 0
21988 );
21989 };
21990 FragmentInstance.prototype.focusLast = function(focusOptions) {
21991 var children = [];
21992 traverseVisibleInstancesAndTextInstances(
21993 this._fragmentFiber.child,
21994 true,
21995 collectChildren,
21996 children,
21997 void 0,
21998 void 0
21999 );
22000 for (var i = children.length - 1; 0 <= i && !setFocusOnFiberIfFocusable(children[i], focusOptions); i--) ;
22001 };
22002 FragmentInstance.prototype.blur = function() {
22003 var parentHostFiber = getFragmentParentInstanceOrContainerFiber(
22004 this._fragmentFiber
22005 );
22006 null !== parentHostFiber && (parentHostFiber = getInstanceFromHostFiber(parentHostFiber), parentHostFiber = getOwnerDocumentFromRootContainer(parentHostFiber).activeElement, null !== parentHostFiber && traverseFragmentInstancesAndTextInstances(
22007 this._fragmentFiber,
22008 blurActiveElementWithinFragment,
22009 parentHostFiber
22010 ));
22011 };
22012 FragmentInstance.prototype.observeUsing = function(observer) {
22013 var hasText = false, hasElement = false;
22014 traverseFragmentInstancesAndTextInstances(
22015 this._fragmentFiber,
22016 function(child) {
22017 if (6 === child.tag) hasText = true;
22018 else return hasElement = true;
22019 return false;
22020 }
22021 );
22022 hasText && !hasElement && console.error(
22023 "observeUsing() was called on a FragmentInstance with only text children. Observers do not work on text nodes."
22024 );
22025 null === this._observers && (this._observers = /* @__PURE__ */ new Set());
22026 this._observers.add(observer);
22027 traverseFragmentInstancesAndTextInstances(
22028 this._fragmentFiber,
22029 observeChild,
22030 observer
22031 );
22032 };
22033 FragmentInstance.prototype.unobserveUsing = function(observer) {
22034 var observers = this._observers;
22035 if (null !== observers && observers.has(observer)) {
22036 observers.delete(observer);
22037 traverseFragmentInstancesAndTextInstances(
22038 this._fragmentFiber,
22039 unobserveChild,
22040 observer
22041 );
22042 for (var i = observers = 0; i < pendingIntersectionUnobserves.length; i++) {
22043 var pending = pendingIntersectionUnobserves[i];
22044 pending.fragmentInstance === this && pending.observer === observer ? observer.unobserve(pending.instance) : pendingIntersectionUnobserves[observers++] = pending;
22045 }
22046 pendingIntersectionUnobserves.length = observers;
22047 } else
22048 console.error(
22049 "You are calling unobserveUsing() with an observer that is not being observed with this fragment instance. First attach the observer with observeUsing()"
22050 );
22051 };
22052 var pendingIntersectionUnobserves = [], intersectionUnobserveScheduled = false;
22053 FragmentInstance.prototype.getClientRects = function() {
22054 var rects = [];
22055 traverseFragmentInstancesAndTextInstances(
22056 this._fragmentFiber,
22057 collectClientRects,
22058 rects
22059 );
22060 return rects;
22061 };
22062 FragmentInstance.prototype.getRootNode = function(getRootNodeOptions) {
22063 var parentHostFiber = getFragmentParentInstanceOrContainerFiber(
22064 this._fragmentFiber
22065 );
22066 return null === parentHostFiber ? this : getInstanceFromHostFiber(parentHostFiber).getRootNode(
22067 getRootNodeOptions
22068 );
22069 };
22070 FragmentInstance.prototype.compareDocumentPosition = function(otherNode) {
22071 var parentHostFiber = getFragmentParentInstanceOrContainerFiber(
22072 this._fragmentFiber
22073 );
22074 if (null === parentHostFiber) return Node.DOCUMENT_POSITION_DISCONNECTED;
22075 var children = [];
22076 traverseFragmentInstancesAndTextInstances(
22077 this._fragmentFiber,
22078 collectChildren,
22079 children
22080 );
22081 var parentHostInstance = getInstanceFromHostFiber(parentHostFiber);
22082 if (0 === children.length) {
22083 parentHostFiber = parentHostInstance;
22084 if (fiberIsPortaledIntoHost(this._fragmentFiber)) {
22085 a: {
22086 for (children = this._fragmentFiber.return; null !== children; ) {
22087 if (4 === children.tag) {
22088 children = children.stateNode.containerInfo;
22089 break a;
22090 }
22091 if (3 === children.tag || 5 === children.tag || 27 === children.tag)
22092 break;
22093 children = children.return;
22094 }
22095 children = null;
22096 }
22097 null != children && (parentHostFiber = children);
22098 }
22099 children = this._fragmentFiber;
22100 var result = parentHostInstance = parentHostFiber.compareDocumentPosition(otherNode);
22101 parentHostFiber === otherNode ? result = Node.DOCUMENT_POSITION_CONTAINS : parentHostInstance & Node.DOCUMENT_POSITION_CONTAINED_BY && (children = getFragmentInstanceOrTextInstanceSiblings(children)[1], null === children ? result = Node.DOCUMENT_POSITION_PRECEDING : (otherNode = getInstanceFromHostFiber(children).compareDocumentPosition(
22102 otherNode
22103 ), result = 0 === otherNode || otherNode & Node.DOCUMENT_POSITION_FOLLOWING ? Node.DOCUMENT_POSITION_FOLLOWING : Node.DOCUMENT_POSITION_PRECEDING));
22104 return result |= Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC;
22105 }
22106 parentHostFiber = getInstanceFromHostFiber(children[0]);
22107 result = getInstanceFromHostFiber(children[children.length - 1]);
22108 var parentHostInstanceFromDOM = fiberIsPortaledIntoHost(
22109 this._fragmentFiber
22110 ) ? parentHostFiber.parentElement : parentHostInstance;
22111 if (null == parentHostInstanceFromDOM)
22112 return Node.DOCUMENT_POSITION_DISCONNECTED;
22113 parentHostInstance = parentHostInstanceFromDOM.compareDocumentPosition(parentHostFiber) & Node.DOCUMENT_POSITION_CONTAINED_BY;
22114 parentHostInstanceFromDOM = parentHostInstanceFromDOM.compareDocumentPosition(result) & Node.DOCUMENT_POSITION_CONTAINED_BY;
22115 var firstResult = parentHostFiber.compareDocumentPosition(otherNode), lastResult = result.compareDocumentPosition(otherNode), otherNodeIsWithinFirstOrLastChild = firstResult & Node.DOCUMENT_POSITION_CONTAINED_BY || lastResult & Node.DOCUMENT_POSITION_CONTAINED_BY;
22116 lastResult = parentHostInstance && parentHostInstanceFromDOM && firstResult & Node.DOCUMENT_POSITION_FOLLOWING && lastResult & Node.DOCUMENT_POSITION_PRECEDING;
22117 parentHostFiber = parentHostInstance && parentHostFiber === otherNode || parentHostInstanceFromDOM && result === otherNode || otherNodeIsWithinFirstOrLastChild || lastResult ? Node.DOCUMENT_POSITION_CONTAINED_BY : !parentHostInstance && parentHostFiber === otherNode || !parentHostInstanceFromDOM && result === otherNode ? Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC : firstResult;
22118 return parentHostFiber & Node.DOCUMENT_POSITION_DISCONNECTED || parentHostFiber & Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC || validateDocumentPositionWithFiberTree(
22119 parentHostFiber,
22120 this._fragmentFiber,
22121 children[0],
22122 children[children.length - 1],
22123 otherNode
22124 ) ? parentHostFiber : Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC;
22125 };
22126 FragmentInstance.prototype.scrollIntoView = function(alignToTop) {
22127 if ("object" === typeof alignToTop)
22128 throw Error(
22129 "FragmentInstance.scrollIntoView() does not support scrollIntoViewOptions. Use the alignToTop boolean instead."
22130 );
22131 var children = [];
22132 traverseFragmentInstancesAndTextInstances(
22133 this._fragmentFiber,
22134 collectChildren,
22135 children
22136 );
22137 var resolvedAlignToTop = false !== alignToTop;
22138 if (0 === children.length) {
22139 var hostSiblings = getFragmentInstanceOrTextInstanceSiblings(
22140 this._fragmentFiber
22141 );
22142 hostSiblings = resolvedAlignToTop ? hostSiblings[1] || hostSiblings[0] || getFragmentParentInstanceOrContainerFiber(this._fragmentFiber) : hostSiblings[0] || hostSiblings[1];
22143 if (null === hostSiblings) return;
22144 if (6 === hostSiblings.tag) {
22145 alignToTop = getInstanceFromHostFiber(hostSiblings);
22146 scrollTextNodeIntoView(alignToTop, resolvedAlignToTop);
22147 return;
22148 }
22149 hostSiblings = getInstanceFromHostFiber(hostSiblings);
22150 if (9 !== hostSiblings.nodeType) {
22151 if (11 === hostSiblings.nodeType) {
22152 resolvedAlignToTop = "host" in hostSiblings ? hostSiblings.host : null;
22153 null !== resolvedAlignToTop ? resolvedAlignToTop.scrollIntoView(alignToTop) : console.warn(
22154 "You are attempting to scroll a FragmentInstance that is only mounted inside a detached DocumentFragment. No scroll was performed."
22155 );
22156 return;
22157 }
22158 hostSiblings.scrollIntoView(alignToTop);
22159 }
22160 }
22161 for (hostSiblings = resolvedAlignToTop ? children.length - 1 : 0; hostSiblings !== (resolvedAlignToTop ? -1 : children.length); ) {
22162 var child = children[hostSiblings];
22163 6 === child.tag ? (child = getInstanceFromHostFiber(child), scrollTextNodeIntoView(child, resolvedAlignToTop)) : getInstanceFromHostFiber(child).scrollIntoView(alignToTop);
22164 hostSiblings += resolvedAlignToTop ? -1 : 1;
22165 }
22166 };
22167 var previousHydratableOnEnteringScopedSingleton = null, NotLoaded = 0, Loaded = 1, Errored = 2, Settled = 3, Inserted = 4, preloadPropsMap = /* @__PURE__ */ new Map(), preconnectsSet = /* @__PURE__ */ new Set(), previousDispatcher = ReactDOMSharedInternals.d;
22168 ReactDOMSharedInternals.d = {
22169 f: function() {
22170 var previousWasRendering = previousDispatcher.f(), wasRendering = flushSyncWork$1();
22171 return previousWasRendering || wasRendering;
22172 },
22173 r: function(form) {
22174 var formInst = getInstanceFromNode(form);
22175 null !== formInst && 5 === formInst.tag && "form" === formInst.type ? requestFormReset$1(formInst) : previousDispatcher.r(form);
22176 },
22177 D: function(href) {
22178 previousDispatcher.D(href);
22179 preconnectAs("dns-prefetch", href, null);
22180 },
22181 C: function(href, crossOrigin) {
22182 previousDispatcher.C(href, crossOrigin);
22183 preconnectAs("preconnect", href, crossOrigin);
22184 },
22185 L: function(href, as, options) {
22186 previousDispatcher.L(href, as, options);
22187 var ownerDocument = globalDocument;
22188 if (ownerDocument && href && as) {
22189 var preloadSelector = 'link[rel="preload"][as="' + escapeSelectorAttributeValueInsideDoubleQuotes(as) + '"]';
22190 "image" === as ? options && options.imageSrcSet ? (preloadSelector += '[imagesrcset="' + escapeSelectorAttributeValueInsideDoubleQuotes(
22191 options.imageSrcSet
22192 ) + '"]', "string" === typeof options.imageSizes && (preloadSelector += '[imagesizes="' + escapeSelectorAttributeValueInsideDoubleQuotes(
22193 options.imageSizes
22194 ) + '"]')) : preloadSelector += '[href="' + escapeSelectorAttributeValueInsideDoubleQuotes(href) + '"]' : preloadSelector += '[href="' + escapeSelectorAttributeValueInsideDoubleQuotes(href) + '"]';
22195 var key = preloadSelector;
22196 switch (as) {
22197 case "style":
22198 key = getStyleKey(href);
22199 break;
22200 case "script":
22201 key = getScriptKey(href);
22202 }
22203 if (!(preloadPropsMap.has(key) || (href = assign(
22204 {
22205 rel: "preload",
22206 href: "image" === as && options && options.imageSrcSet ? void 0 : href,
22207 as
22208 },
22209 options
22210 ), preloadPropsMap.set(key, href), null !== ownerDocument.querySelector(preloadSelector) || "style" === as && ownerDocument.querySelector(
22211 getStylesheetSelectorFromKey(key)
22212 ) || "script" === as && ownerDocument.querySelector(getScriptSelectorFromKey(key))))) {
22213 var instance = ownerDocument.createElement("link");
22214 setInitialProperties(instance, "link", href);
22215 "style" === as && (instance[internalLoadPendingKey] = true, instance.onload = instance.onerror = function() {
22216 clearPendingLoadOnNode(instance);
22217 });
22218 markNodeAsHoistable(instance);
22219 ownerDocument.head.appendChild(instance);
22220 }
22221 }
22222 },
22223 m: function(href, options) {
22224 previousDispatcher.m(href, options);
22225 var ownerDocument = globalDocument;
22226 if (ownerDocument && href) {
22227 var as = options && "string" === typeof options.as ? options.as : "script", preloadSelector = 'link[rel="modulepreload"][as="' + escapeSelectorAttributeValueInsideDoubleQuotes(as) + '"][href="' + escapeSelectorAttributeValueInsideDoubleQuotes(href) + '"]', key = preloadSelector;
22228 switch (as) {
22229 case "audioworklet":
22230 case "paintworklet":
22231 case "serviceworker":
22232 case "sharedworker":
22233 case "worker":
22234 case "script":
22235 key = getScriptKey(href);
22236 }
22237 if (!preloadPropsMap.has(key) && (href = assign({ rel: "modulepreload", href }, options), preloadPropsMap.set(key, href), null === ownerDocument.querySelector(preloadSelector))) {
22238 switch (as) {
22239 case "audioworklet":
22240 case "paintworklet":
22241 case "serviceworker":
22242 case "sharedworker":
22243 case "worker":
22244 case "script":
22245 if (ownerDocument.querySelector(getScriptSelectorFromKey(key)))
22246 return;
22247 }
22248 as = ownerDocument.createElement("link");
22249 setInitialProperties(as, "link", href);
22250 markNodeAsHoistable(as);
22251 ownerDocument.head.appendChild(as);
22252 }
22253 }
22254 },
22255 X: function(src, options) {
22256 previousDispatcher.X(src, options);
22257 var ownerDocument = globalDocument;
22258 if (ownerDocument && src) {
22259 var scripts = getResourcesFromRoot(ownerDocument).hoistableScripts, key = getScriptKey(src), resource = scripts.get(key);
22260 resource || (resource = ownerDocument.querySelector(
22261 getScriptSelectorFromKey(key)
22262 ), resource || (src = assign({ src, async: true }, options), (options = preloadPropsMap.get(key)) && adoptPreloadPropsForScript(src, options), resource = ownerDocument.createElement("script"), markNodeAsHoistable(resource), setInitialProperties(resource, "link", src), ownerDocument.head.appendChild(resource)), resource = {
22263 type: "script",
22264 instance: resource,
22265 count: 1,
22266 state: null
22267 }, scripts.set(key, resource));
22268 }
22269 },
22270 S: function(href, precedence, options) {
22271 previousDispatcher.S(href, precedence, options);
22272 var ownerDocument = globalDocument;
22273 if (ownerDocument && href) {
22274 var styles = getResourcesFromRoot(ownerDocument).hoistableStyles, key = getStyleKey(href);
22275 precedence = precedence || "default";
22276 var resource = styles.get(key);
22277 if (!resource) {
22278 var state = { loading: NotLoaded, preload: null };
22279 if (resource = ownerDocument.querySelector(
22280 getStylesheetSelectorFromKey(key)
22281 ))
22282 state.loading = Loaded | Inserted;
22283 else {
22284 href = assign(
22285 {
22286 rel: "stylesheet",
22287 href,
22288 "data-precedence": precedence
22289 },
22290 options
22291 );
22292 (options = preloadPropsMap.get(key)) && adoptPreloadPropsForStylesheet(href, options);
22293 var link = resource = ownerDocument.createElement("link");
22294 markNodeAsHoistable(link);
22295 setInitialProperties(link, "link", href);
22296 link._p = new Promise(function(resolve, reject) {
22297 link.onload = resolve;
22298 link.onerror = reject;
22299 });
22300 link.addEventListener("load", function() {
22301 state.loading |= Loaded;
22302 });
22303 link.addEventListener("error", function() {
22304 state.loading |= Errored;
22305 });
22306 state.loading |= Inserted;
22307 insertStylesheet(resource, precedence, ownerDocument);
22308 }
22309 resource = {
22310 type: "stylesheet",
22311 instance: resource,
22312 count: 1,
22313 state
22314 };
22315 styles.set(key, resource);
22316 }
22317 }
22318 },
22319 M: function(src, options) {
22320 previousDispatcher.M(src, options);
22321 var ownerDocument = globalDocument;
22322 if (ownerDocument && src) {
22323 var scripts = getResourcesFromRoot(ownerDocument).hoistableScripts, key = getScriptKey(src), resource = scripts.get(key);
22324 resource || (resource = ownerDocument.querySelector(
22325 getScriptSelectorFromKey(key)
22326 ), resource || (src = assign({ src, async: true, type: "module" }, options), (options = preloadPropsMap.get(key)) && adoptPreloadPropsForScript(src, options), resource = ownerDocument.createElement("script"), markNodeAsHoistable(resource), setInitialProperties(resource, "link", src), ownerDocument.head.appendChild(resource)), resource = {
22327 type: "script",
22328 instance: resource,
22329 count: 1,
22330 state: null
22331 }, scripts.set(key, resource));
22332 }
22333 }
22334 };
22335 var globalDocument = "undefined" === typeof document ? null : document, tagCaches = null, SUSPENSEY_STYLESHEET_TIMEOUT = 6e4, SUSPENSEY_IMAGE_TIMEOUT = 800, SUSPENSEY_IMAGE_TIME_ESTIMATE = 500, estimatedBytesWithinLimit = 0, LAST_PRECEDENCE = null, precedencesByRoot = null, NotPendingTransition = NotPending, HostTransitionContext = {
22336 $$typeof: REACT_CONTEXT_TYPE,
22337 Provider: null,
22338 Consumer: null,
22339 _currentValue: NotPendingTransition,
22340 _currentValue2: NotPendingTransition,
22341 _threadCount: 0
22342 }, badgeFormat = "%c%s%c", badgeStyle = "background: #e6e6e6;background: light-dark(rgba(0,0,0,0.1), rgba(255,255,255,0.25));color: #000000;color: light-dark(#000000, #ffffff);border-radius: 2px", resetStyle = "", pad = " ", bind = Function.prototype.bind;
22343 var didWarnAboutNestedUpdates = false;
22344 var overrideHookState = null, overrideHookStateDeletePath = null, overrideHookStateRenamePath = null, overrideProps = null, overridePropsDeletePath = null, overridePropsRenamePath = null, scheduleUpdate = null, scheduleRetry = null, setErrorHandler = null, setSuspenseHandler = null;
22345 overrideHookState = function(fiber, id, path, value) {
22346 id = findHook(fiber, id);
22347 null !== id && (path = copyWithSetImpl(id.memoizedState, path, 0, value), id.memoizedState = path, id.baseState = path, fiber.memoizedProps = assign({}, fiber.memoizedProps), path = enqueueConcurrentRenderForLane(fiber, 2), null !== path && scheduleUpdateOnFiber(path, fiber, 2));
22348 };
22349 overrideHookStateDeletePath = function(fiber, id, path) {
22350 id = findHook(fiber, id);
22351 null !== id && (path = copyWithDeleteImpl(id.memoizedState, path, 0), id.memoizedState = path, id.baseState = path, fiber.memoizedProps = assign({}, fiber.memoizedProps), path = enqueueConcurrentRenderForLane(fiber, 2), null !== path && scheduleUpdateOnFiber(path, fiber, 2));
22352 };
22353 overrideHookStateRenamePath = function(fiber, id, oldPath, newPath) {
22354 id = findHook(fiber, id);
22355 null !== id && (oldPath = copyWithRename(id.memoizedState, oldPath, newPath), id.memoizedState = oldPath, id.baseState = oldPath, fiber.memoizedProps = assign({}, fiber.memoizedProps), oldPath = enqueueConcurrentRenderForLane(fiber, 2), null !== oldPath && scheduleUpdateOnFiber(oldPath, fiber, 2));
22356 };
22357 overrideProps = function(fiber, path, value) {
22358 fiber.pendingProps = copyWithSetImpl(fiber.memoizedProps, path, 0, value);
22359 fiber.alternate && (fiber.alternate.pendingProps = fiber.pendingProps);
22360 path = enqueueConcurrentRenderForLane(fiber, 2);
22361 null !== path && scheduleUpdateOnFiber(path, fiber, 2);
22362 };
22363 overridePropsDeletePath = function(fiber, path) {
22364 fiber.pendingProps = copyWithDeleteImpl(fiber.memoizedProps, path, 0);
22365 fiber.alternate && (fiber.alternate.pendingProps = fiber.pendingProps);
22366 path = enqueueConcurrentRenderForLane(fiber, 2);
22367 null !== path && scheduleUpdateOnFiber(path, fiber, 2);
22368 };
22369 overridePropsRenamePath = function(fiber, oldPath, newPath) {
22370 fiber.pendingProps = copyWithRename(
22371 fiber.memoizedProps,
22372 oldPath,
22373 newPath
22374 );
22375 fiber.alternate && (fiber.alternate.pendingProps = fiber.pendingProps);
22376 oldPath = enqueueConcurrentRenderForLane(fiber, 2);
22377 null !== oldPath && scheduleUpdateOnFiber(oldPath, fiber, 2);
22378 };
22379 scheduleUpdate = function(fiber) {
22380 var root2 = enqueueConcurrentRenderForLane(fiber, 2);
22381 null !== root2 && scheduleUpdateOnFiber(root2, fiber, 2);
22382 };
22383 scheduleRetry = function(fiber) {
22384 var lane = claimNextRetryLane(), root2 = enqueueConcurrentRenderForLane(fiber, lane);
22385 null !== root2 && scheduleUpdateOnFiber(root2, fiber, lane);
22386 };
22387 setErrorHandler = function(newShouldErrorImpl) {
22388 shouldErrorImpl = newShouldErrorImpl;
22389 };
22390 setSuspenseHandler = function(newShouldSuspendImpl) {
22391 shouldSuspendImpl = newShouldSuspendImpl;
22392 };
22393 var _enabled = true, return_targetInst = null, hasScheduledReplayAttempt = false, queuedFocus = null, queuedDrag = null, queuedMouse = null, queuedPointers = /* @__PURE__ */ new Map(), queuedPointerCaptures = /* @__PURE__ */ new Map(), queuedExplicitHydrationTargets = [], discreteReplayableEvents = "mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(
22394 " "
22395 ), lastScheduledReplayQueue = null;
22396 ReactDOMHydrationRoot.prototype.render = ReactDOMRoot.prototype.render = function(children) {
22397 var root2 = this._internalRoot;
22398 if (null === root2) throw Error("Cannot update an unmounted root.");
22399 var args = arguments;
22400 "function" === typeof args[1] ? console.error(
22401 "does not support the second callback argument. To execute a side effect after rendering, declare it in a component body with useEffect()."
22402 ) : isValidContainer(args[1]) ? console.error(
22403 "You passed a container to the second argument of root.render(...). You don't need to pass it again since you already passed it to create the root."
22404 ) : "undefined" !== typeof args[1] && console.error(
22405 "You passed a second argument to root.render(...) but it only accepts one argument."
22406 );
22407 args = children;
22408 var current2 = root2.current, lane = requestUpdateLane(current2);
22409 updateContainerImpl(current2, lane, args, root2, null, null);
22410 };
22411 ReactDOMHydrationRoot.prototype.unmount = ReactDOMRoot.prototype.unmount = function() {
22412 var args = arguments;
22413 "function" === typeof args[0] && console.error(
22414 "does not support a callback argument. To execute a side effect after rendering, declare it in a component body with useEffect()."
22415 );
22416 args = this._internalRoot;
22417 if (null !== args) {
22418 this._internalRoot = null;
22419 var container = args.containerInfo;
22420 (executionContext & (RenderContext | CommitContext)) !== NoContext && console.error(
22421 "Attempted to synchronously unmount a root while React was already rendering. React cannot finish unmounting the root until the current render has completed, which may lead to a race condition."
22422 );
22423 updateContainerImpl(args.current, 2, null, args, null, null);
22424 flushSyncWork$1();
22425 container[internalContainerInstanceKey] = null;
22426 }
22427 };
22428 ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function(target) {
22429 if (target) {
22430 var updatePriority = resolveUpdatePriority();
22431 target = { blockedOn: null, target, priority: updatePriority };
22432 for (var i = 0; i < queuedExplicitHydrationTargets.length && 0 !== updatePriority && updatePriority < queuedExplicitHydrationTargets[i].priority; i++) ;
22433 queuedExplicitHydrationTargets.splice(i, 0, target);
22434 0 === i && attemptExplicitHydrationTarget(target);
22435 }
22436 };
22437 (function() {
22438 var isomorphicReactPackageVersion = React.version;
22439 if ("19.3.0" !== isomorphicReactPackageVersion)
22440 throw Error(
22441 'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' + (isomorphicReactPackageVersion + "\n - react-dom: 19.3.0\nLearn more: https://react.dev/warnings/version-mismatch")
22442 );
22443 })();
22444 "function" === typeof Map && null != Map.prototype && "function" === typeof Map.prototype.forEach && "function" === typeof Set && null != Set.prototype && "function" === typeof Set.prototype.clear && "function" === typeof Set.prototype.forEach || console.error(
22445 "React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://react.dev/link/react-polyfills"
22446 );
22447 ReactDOMSharedInternals.findDOMNode = function(componentOrElement) {
22448 var fiber = componentOrElement._reactInternals;
22449 if (void 0 === fiber) {
22450 if ("function" === typeof componentOrElement.render)
22451 throw Error("Unable to find node on an unmounted component.");
22452 componentOrElement = Object.keys(componentOrElement).join(",");
22453 throw Error(
22454 "Argument appears to not be a ReactComponent. Keys: " + componentOrElement
22455 );
22456 }
22457 componentOrElement = findCurrentFiberUsingSlowPath(fiber);
22458 componentOrElement = null !== componentOrElement ? findCurrentHostFiberImpl(componentOrElement) : null;
22459 componentOrElement = null === componentOrElement ? null : componentOrElement.stateNode;
22460 return componentOrElement;
22461 };
22462 if (!(function() {
22463 var internals = {
22464 bundleType: 1,
22465 version: "19.3.0",
22466 rendererPackageName: "react-dom",
22467 currentDispatcherRef: ReactSharedInternals,
22468 reconcilerVersion: "19.3.0"
22469 };
22470 internals.overrideHookState = overrideHookState;
22471 internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
22472 internals.overrideHookStateRenamePath = overrideHookStateRenamePath;
22473 internals.overrideProps = overrideProps;
22474 internals.overridePropsDeletePath = overridePropsDeletePath;
22475 internals.overridePropsRenamePath = overridePropsRenamePath;
22476 internals.scheduleUpdate = scheduleUpdate;
22477 internals.scheduleRetry = scheduleRetry;
22478 internals.setErrorHandler = setErrorHandler;
22479 internals.setSuspenseHandler = setSuspenseHandler;
22480 internals.scheduleRefresh = scheduleRefresh;
22481 internals.scheduleRoot = scheduleRoot;
22482 internals.setRefreshHandler = setRefreshHandler;
22483 internals.getCurrentFiber = getCurrentFiberForDevTools;
22484 return injectInternals(internals);
22485 })() && canUseDOM && window.top === window.self && (-1 < navigator.userAgent.indexOf("Chrome") && -1 === navigator.userAgent.indexOf("Edge") || -1 < navigator.userAgent.indexOf("Firefox"))) {
22486 var protocol = window.location.protocol;
22487 /^(https?|file):$/.test(protocol) && console.info(
22488 "%cDownload the React DevTools for a better development experience: https://react.dev/link/react-devtools" + ("file:" === protocol ? "\nYou might need to use a local HTTP server (instead of file://): https://react.dev/link/react-devtools-faq" : ""),
22489 "font-weight:bold"
22490 );
22491 }
22492 exports.createRoot = function(container, options) {
22493 if (!isValidContainer(container))
22494 throw Error("Target container is not a DOM element.");
22495 warnIfReactDOMContainerInDEV(container);
22496 var isStrictMode = false, identifierPrefix = "", onUncaughtError = defaultOnUncaughtError, onCaughtError = defaultOnCaughtError, onRecoverableError = defaultOnRecoverableError;
22497 null !== options && void 0 !== options && (options.hydrate ? console.warn(
22498 "hydrate through createRoot is deprecated. Use ReactDOMClient.hydrateRoot(container, <App />) instead."
22499 ) : "object" === typeof options && null !== options && options.$$typeof === REACT_ELEMENT_TYPE && console.error(
22500 "You passed a JSX element to createRoot. You probably meant to call root.render instead. Example usage:\n\n let root = createRoot(domContainer);\n root.render(<App />);"
22501 ), true === options.unstable_strictMode && (isStrictMode = true), void 0 !== options.identifierPrefix && (identifierPrefix = options.identifierPrefix), void 0 !== options.onUncaughtError && (onUncaughtError = options.onUncaughtError), void 0 !== options.onCaughtError && (onCaughtError = options.onCaughtError), void 0 !== options.onRecoverableError && (onRecoverableError = options.onRecoverableError));
22502 options = createFiberRoot(
22503 container,
22504 1,
22505 false,
22506 null,
22507 null,
22508 isStrictMode,
22509 identifierPrefix,
22510 null,
22511 onUncaughtError,
22512 onCaughtError,
22513 onRecoverableError,
22514 defaultOnDefaultTransitionIndicator
22515 );
22516 container[internalContainerInstanceKey] = options.current;
22517 listenToAllSupportedEvents(container);
22518 return new ReactDOMRoot(options);
22519 };
22520 exports.hydrateRoot = function(container, initialChildren, options) {
22521 if (!isValidContainer(container))
22522 throw Error("Target container is not a DOM element.");
22523 warnIfReactDOMContainerInDEV(container);
22524 void 0 === initialChildren && console.error(
22525 "Must provide initial children as second argument to hydrateRoot. Example usage: hydrateRoot(domContainer, <App />)"
22526 );
22527 var isStrictMode = false, identifierPrefix = "", onUncaughtError = defaultOnUncaughtError, onCaughtError = defaultOnCaughtError, onRecoverableError = defaultOnRecoverableError, formState = null;
22528 null !== options && void 0 !== options && (true === options.unstable_strictMode && (isStrictMode = true), void 0 !== options.identifierPrefix && (identifierPrefix = options.identifierPrefix), void 0 !== options.onUncaughtError && (onUncaughtError = options.onUncaughtError), void 0 !== options.onCaughtError && (onCaughtError = options.onCaughtError), void 0 !== options.onRecoverableError && (onRecoverableError = options.onRecoverableError), void 0 !== options.formState && (formState = options.formState));
22529 initialChildren = createFiberRoot(
22530 container,
22531 1,
22532 true,
22533 initialChildren,
22534 null != options ? options : null,
22535 isStrictMode,
22536 identifierPrefix,
22537 formState,
22538 onUncaughtError,
22539 onCaughtError,
22540 onRecoverableError,
22541 defaultOnDefaultTransitionIndicator
22542 );
22543 initialChildren.context = getContextForSubtree(null);
22544 options = initialChildren.current;
22545 isStrictMode = requestUpdateLane(options);
22546 isStrictMode = getBumpedLaneForHydrationByLane(isStrictMode);
22547 identifierPrefix = createUpdate(isStrictMode);
22548 identifierPrefix.callback = null;
22549 enqueueUpdate(options, identifierPrefix, isStrictMode);
22550 startUpdateTimerByLane(isStrictMode, "hydrateRoot()", null);
22551 options = isStrictMode;
22552 initialChildren.current.lanes = options;
22553 markRootUpdated$1(initialChildren, options);
22554 ensureRootIsScheduled(initialChildren);
22555 container[internalContainerInstanceKey] = initialChildren.current;
22556 listenToAllSupportedEvents(container);
22557 return new ReactDOMHydrationRoot(initialChildren);
22558 };
22559 exports.version = "19.3.0";
22560 "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
22561 })();
22562 }
22563 });
22564
22565 // ../react-19/node_modules/react-dom/client.js
22566 var require_client = __commonJS({
22567 "../react-19/node_modules/react-dom/client.js"(exports, module) {
22568 "use strict";
22569 if (false) {
22570 checkDCE();
22571 module.exports = null;
22572 } else {
22573 module.exports = require_react_dom_client_development();
22574 }
22575 }
22576 });
22577
22578 // ../react-19/react-polyfill.js
22579 var react_polyfill_exports = {};
22580 __export(react_polyfill_exports, {
22581 findDOMNode: () => findDOMNode,
22582 hydrate: () => hydrate,
22583 render: () => render,
22584 unmountComponentAtNode: () => unmountComponentAtNode
22585 });
22586 function findCurrentFiber(fiber) {
22587 if (!fiber.alternate) {
22588 return fiber;
22589 }
22590 let node = fiber;
22591 while (node.return) {
22592 node = node.return;
22593 }
22594 if (node.stateNode.current === node) {
22595 return fiber;
22596 }
22597 return fiber.alternate;
22598 }
22599 function findHostFiber(fiber) {
22600 const current = findCurrentFiber(fiber);
22601 if (!current) {
22602 return null;
22603 }
22604 return findHostFiberImpl(current);
22605 }
22606 function findHostFiberImpl(fiber) {
22607 if (fiber.tag === HostComponent || fiber.tag === HostText) {
22608 return fiber;
22609 }
22610 let child = fiber.child;
22611 while (child) {
22612 const hostFiber = findHostFiberImpl(child);
22613 if (hostFiber) {
22614 return hostFiber;
22615 }
22616 child = child.sibling;
22617 }
22618 return null;
22619 }
22620 function findDOMNode(instance) {
22621 warnCompat(
22622 "findDOMNode",
22623 "`ReactDOM.findDOMNode` was removed in React 19 and is emulated by a compatibility polyfill. Use refs instead."
22624 );
22625 if (instance === null || instance === void 0) {
22626 return null;
22627 }
22628 if (instance.nodeType !== void 0) {
22629 return instance;
22630 }
22631 const fiber = instance[internalsKey];
22632 if (fiber === void 0) {
22633 if (typeof instance.render === "function") {
22634 throw new Error("Unable to find node on an unmounted component.");
22635 }
22636 const keys = Object.keys(instance).join(",");
22637 throw new Error(
22638 `Argument appears to not be a ReactComponent. Keys: ${keys}`
22639 );
22640 }
22641 const hostFiber = findHostFiber(fiber);
22642 return hostFiber?.stateNode ?? null;
22643 }
22644 function render(element, container, callback) {
22645 warnCompat(
22646 "render",
22647 "`ReactDOM.render` was removed in React 19 and is emulated by a compatibility polyfill. Use `createRoot` instead."
22648 );
22649 let root = roots.get(container);
22650 if (!root) {
22651 root = (0, import_client.createRoot)(container);
22652 roots.set(container, root);
22653 }
22654 (0, import_react_dom.flushSync)(() => {
22655 root.render(element);
22656 });
22657 if (typeof callback === "function") {
22658 callback();
22659 }
22660 }
22661 function hydrate(element, container, callback) {
22662 warnCompat(
22663 "hydrate",
22664 "`ReactDOM.hydrate` was removed in React 19 and is emulated by a compatibility polyfill. Use `hydrateRoot` instead."
22665 );
22666 let root = roots.get(container);
22667 if (!root) {
22668 root = (0, import_client.hydrateRoot)(container, element);
22669 roots.set(container, root);
22670 } else {
22671 root.render(element);
22672 }
22673 if (typeof callback === "function") {
22674 callback();
22675 }
22676 }
22677 function unmountComponentAtNode(container) {
22678 warnCompat(
22679 "unmountComponentAtNode",
22680 "`ReactDOM.unmountComponentAtNode` was removed in React 19 and is emulated by a compatibility polyfill. Use `root.unmount` instead."
22681 );
22682 const root = roots.get(container);
22683 if (!root) {
22684 return false;
22685 }
22686 (0, import_react_dom.flushSync)(() => {
22687 root.unmount();
22688 });
22689 roots.delete(container);
22690 return true;
22691 }
22692 var import_react_dom, import_client, internalsKey, HostComponent, HostText, roots;
22693 var init_react_polyfill = __esm({
22694 "../react-19/react-polyfill.js"() {
22695 import_react_dom = __toESM(require_react_dom());
22696 import_client = __toESM(require_client());
22697 init_warn_compat();
22698 internalsKey = "_reactInternals";
22699 HostComponent = 5;
22700 HostText = 6;
22701 roots = /* @__PURE__ */ new WeakMap();
22702 }
22703 });
22704
22705 // ../react-19/react-dom.js
22706 var require_react_dom2 = __commonJS({
22707 "../react-19/react-dom.js"(exports, module) {
22708 var { warnCompat: warnCompat2 } = (init_warn_compat(), __toCommonJS(warn_compat_exports));
22709 var SECRET_INTERNALS_KEY = "__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED";
22710 var secretInternals = {};
22711 var reactDOM = {
22712 ...require_react_dom(),
22713 ...require_client(),
22714 ...(init_react_polyfill(), __toCommonJS(react_polyfill_exports))
22715 };
22716 Object.defineProperty(reactDOM, SECRET_INTERNALS_KEY, {
22717 enumerable: true,
22718 configurable: true,
22719 get() {
22720 warnCompat2(
22721 "react-dom-secret-internals",
22722 `Accessing \`${SECRET_INTERNALS_KEY}\` was removed in React 19 and is provided by a compatibility shim.`
22723 );
22724 return secretInternals;
22725 }
22726 });
22727 module.exports = reactDOM;
22728 }
22729 });
22730 return require_react_dom2();
22731 })();
22732 /*! Bundled license information:
22733
22734 react-dom/cjs/react-dom.development.js:
22735 (**
22736 * @license React
22737 * react-dom.development.js
22738 *
22739 * Copyright (c) Meta Platforms, Inc. and affiliates.
22740 *
22741 * This source code is licensed under the MIT license found in the
22742 * LICENSE file in the root directory of this source tree.
22743 *)
22744
22745 scheduler/cjs/scheduler.development.js:
22746 (**
22747 * @license React
22748 * scheduler.development.js
22749 *
22750 * Copyright (c) Meta Platforms, Inc. and affiliates.
22751 *
22752 * This source code is licensed under the MIT license found in the
22753 * LICENSE file in the root directory of this source tree.
22754 *)
22755
22756 react-dom/cjs/react-dom-client.development.js:
22757 (**
22758 * @license React
22759 * react-dom-client.development.js
22760 *
22761 * Copyright (c) Meta Platforms, Inc. and affiliates.
22762 *
22763 * This source code is licensed under the MIT license found in the
22764 * LICENSE file in the root directory of this source tree.
22765 *)
22766 */
22767