sales-frontend-api 0.0.136 → 0.0.138
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/server.cjs +62 -0
- package/dist/server.cjs.map +1 -1
- package/dist/server.d.cts +18 -1
- package/dist/server.d.ts +18 -1
- package/dist/server.js +58 -1
- package/dist/server.js.map +1 -1
- package/package.json +9 -9
package/dist/server.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/dist/compiled/@edge-runtime/cookies/index.js","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/web/spec-extension/cookies.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/web/spec-extension/adapters/reflect.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/async-local-storage.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/work-async-storage-instance.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/work-async-storage.external.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/work-unit-async-storage-instance.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/client/components/app-router-headers.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/work-unit-async-storage.external.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/web/spec-extension/adapters/request-cookies.ts","../../../node_modules/.pnpm/react@19.1.0/node_modules/react/cjs/react.production.js","../../../node_modules/.pnpm/react@19.1.0/node_modules/react/cjs/react.development.js","../../../node_modules/.pnpm/react@19.1.0/node_modules/react/index.js","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/client/components/hooks-server-context.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/client/components/static-generation-bailout.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/dynamic-rendering-utils.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/lib/metadata/metadata-constants.tsx","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/lib/scheduler.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/dynamic-rendering.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/create-deduped-by-callsite-server-error-logger.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/after-task-async-storage-instance.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/after-task-async-storage.external.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/request/utils.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/request/cookies.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/web/spec-extension/adapters/headers.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/request/headers.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/request/draft-mode.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/headers.js","../src/http-client/cookie/cookie-server.ts","../src/http-client/header/header-manager-async.ts","../src/http-client/header/header.types.ts","../src/http-client/fetch/fetch-instance.ts","../src/http-client/fetch/http-client-fetch.ts"],"names":["__defProp","__getOwnPropDesc","__getOwnPropNames","__hasOwnProp","__copyProps","headers","RequestCookies","ResponseCookies","stringifyCookie","ReflectAdapter","get","target","prop","receiver","value","Reflect","bind","set","has","deleteProperty","bindSnapshot","createAsyncLocalStorage","createSnapshot","sharedAsyncLocalStorageNotAvailableError","Error","FakeAsyncLocalStorage","disable","getStore","undefined","run","exit","enterWith","fn","maybeGlobalAsyncLocalStorage","globalThis","AsyncLocalStorage","snapshot","args","workAsyncStorageInstance","workAsyncStorage","workUnitAsyncStorageInstance","ACTION_HEADER","FLIGHT_HEADERS","NEXT_DID_POSTPONE_HEADER","NEXT_HMR_REFRESH_HASH_COOKIE","NEXT_HMR_REFRESH_HEADER","NEXT_IS_PRERENDER_HEADER","NEXT_REWRITTEN_PATH_HEADER","NEXT_REWRITTEN_QUERY_HEADER","NEXT_ROUTER_PREFETCH_HEADER","NEXT_ROUTER_SEGMENT_PREFETCH_HEADER","NEXT_ROUTER_STALE_TIME_HEADER","NEXT_ROUTER_STATE_TREE_HEADER","NEXT_RSC_UNION_QUERY","NEXT_URL","RSC_CONTENT_TYPE_HEADER","RSC_HEADER","getDraftModeProviderForCacheScope","getExpectedRequestStore","getHmrRefreshHash","getPrerenderResumeDataCache","getRenderResumeDataCache","throwForMissingRequestStore","workUnitAsyncStorage","callingExpression","workUnitStore","type","_exhaustiveCheck","prerenderResumeDataCache","renderResumeDataCache","workStore","dev","hmrRefreshHash","cookies","isDraftMode","draftMode","MutableRequestCookiesAdapter","ReadonlyRequestCookiesError","RequestCookiesAdapter","appendMutableCookies","areCookiesMutableInCurrentPhase","getModifiedCookieValues","responseCookiesToRequestCookies","wrapWithMutableAccessCheck","constructor","callable","seal","Proxy","SYMBOL_MODIFY_COOKIE_VALUES","Symbol","for","modified","Array","isArray","length","mutableCookies","modifiedCookieValues","resCookies","returnedCookies","getAll","cookie","wrap","onUpdateCookies","responseCookies","Headers","modifiedValues","modifiedCookies","Set","updateResponseCookies","pathWasRevalidated","allCookies","filter","c","name","serializedCookies","tempCookies","push","toString","wrappedCookies","add","delete","ensureCookiesAreStillMutable","requestStore","phase","requestCookies","DynamicServerError","isDynamicServerError","DYNAMIC_ERROR_CODE","description","digest","err","StaticGenBailoutError","isStaticGenBailoutError","NEXT_STATIC_GEN_BAILOUT","code","error","isHangingPromiseRejectionError","makeHangingPromise","HANGING_PROMISE_REJECTION","HangingPromiseRejectionError","expression","abortListenersBySignal","WeakMap","signal","aborted","Promise","reject","hangingPromise","_","boundRejection","currentListeners","listeners","addEventListener","i","once","catch","ignoreReject","METADATA_BOUNDARY_NAME","OUTLET_BOUNDARY_NAME","VIEWPORT_BOUNDARY_NAME","atLeastOneTask","scheduleImmediate","scheduleOnNextTick","waitAtLeastOneReactRenderTask","cb","resolve","then","process","env","NEXT_RUNTIME","setTimeout","nextTick","setImmediate","r","Postpone","abortAndThrowOnSynchronousRequestDataAccess","abortOnSynchronousPlatformIOAccess","accessedDynamicData","annotateDynamicAccess","consumeDynamicAccess","createDynamicTrackingState","createDynamicValidationState","createHangingInputAbortSignal","createPostponedAbortSignal","formatDynamicAPIAccesses","getFirstDynamicReason","isDynamicPostpone","isPrerenderInterruptedError","markCurrentScopeAsDynamic","postponeWithTracking","throwIfDisallowedDynamic","throwToInterruptStaticGeneration","trackAllowedDynamicAccess","trackDynamicDataInDynamicRender","trackFallbackParamAccessed","trackSynchronousPlatformIOAccessInDev","trackSynchronousRequestDataAccessInDev","useDynamicRouteParams","hasPostpone","React","unstable_postpone","isDebugDynamicAccesses","dynamicAccesses","syncDynamicExpression","syncDynamicErrorWithStack","hasSuspendedDynamic","hasDynamicMetadata","hasDynamicViewport","hasSyncDynamicErrors","dynamicErrors","trackingState","store","forceDynamic","forceStatic","dynamicShouldError","route","dynamicTracking","revalidate","dynamicUsageDescription","dynamicUsageStack","stack","NODE_ENV","usedDynamic","prerenderStore","_store","abortOnSynchronousDynamicDataAccess","reason","createPrerenderInterruptedError","controller","abort","errorWithStack","prerenderPhase","prerenderSignal","validating","syncDynamicLogged","assertPostpone","createPostponeReason","message","isDynamicPostponeReason","includes","NEXT_PRERENDER_INTERRUPTED","serverDynamic","clientDynamic","access","map","split","slice","line","join","AbortController","x","cacheSignal","inputReady","isStaticGeneration","fallbackRouteParams","size","use","renderSignal","hasSuspenseRegex","hasMetadataRegex","RegExp","hasViewportRegex","hasOutletRegex","componentStack","dynamicValidation","test","createErrorWithComponentStack","syncError","syncExpression","syncLogged","console","createDedupedByCallsiteServerErrorLoggerDev","errorRef","current","cache","logErrorOrWarn","__NEXT_DYNAMIC_IO","warn","flushCurrentErrorIfNew","key","getMessage","logDedupedError","callStackFrames","afterTaskAsyncStorageInstance","afterTaskAsyncStorage","isRequestAPICallableInsideAfter","throwForSearchParamsAccessInUseCache","throwWithStaticGenerationBailoutError","throwWithStaticGenerationBailoutErrorWithDynamicError","invalidUsageError","afterTaskStore","rootTaskSpawnPhase","underlyingCookies","createEmptyCookies","makeUntrackedExoticCookies","makeDynamicallyTrackedExoticCookies","userspaceMutableCookies","isPrefetchRequest","makeUntrackedExoticCookiesWithDevWarnings","CachedCookies","cachedPromise","promise","Object","defineProperties","iterator","createCookiesAccessError","arguments","describeNameArg","arg","clear","cachedCookies","polyfilledResponseCookiesIterator","polyfilledResponseCookiesClear","syncIODev","apply","call","writable","warnForSyncAccess","prefix","values","returnable","HeadersAdapter","ReadonlyHeadersError","lowercased","toLowerCase","original","keys","find","o","merge","from","append","existing","forEach","callbackfn","thisArg","entries","underlyingHeaders","makeUntrackedExoticHeaders","makeDynamicallyTrackedExoticHeaders","makeUntrackedExoticHeadersWithDevWarnings","CachedHeaders","cachedHeaders","createHeadersAccessError","_delete","getSetCookie","createOrGetCachedExoticDraftMode","draftModeProvider","createExoticDraftModeWithDevWarnings","createExoticDraftMode","cachedDraftMode","CachedDraftModes","underlyingProvider","instance","DraftMode","defineProperty","isEnabled","newValue","enumerable","configurable","enable","provider","_provider","trackDynamicDraftMode","createDraftModeAccessError","require_headers","import_headers","responseData","config"],"mappings":"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","file":"server.cjs","sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n RequestCookies: () => RequestCookies,\n ResponseCookies: () => ResponseCookies,\n parseCookie: () => parseCookie,\n parseSetCookie: () => parseSetCookie,\n stringifyCookie: () => stringifyCookie\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/serialize.ts\nfunction stringifyCookie(c) {\n var _a;\n const attrs = [\n \"path\" in c && c.path && `Path=${c.path}`,\n \"expires\" in c && (c.expires || c.expires === 0) && `Expires=${(typeof c.expires === \"number\" ? new Date(c.expires) : c.expires).toUTCString()}`,\n \"maxAge\" in c && typeof c.maxAge === \"number\" && `Max-Age=${c.maxAge}`,\n \"domain\" in c && c.domain && `Domain=${c.domain}`,\n \"secure\" in c && c.secure && \"Secure\",\n \"httpOnly\" in c && c.httpOnly && \"HttpOnly\",\n \"sameSite\" in c && c.sameSite && `SameSite=${c.sameSite}`,\n \"partitioned\" in c && c.partitioned && \"Partitioned\",\n \"priority\" in c && c.priority && `Priority=${c.priority}`\n ].filter(Boolean);\n const stringified = `${c.name}=${encodeURIComponent((_a = c.value) != null ? _a : \"\")}`;\n return attrs.length === 0 ? stringified : `${stringified}; ${attrs.join(\"; \")}`;\n}\nfunction parseCookie(cookie) {\n const map = /* @__PURE__ */ new Map();\n for (const pair of cookie.split(/; */)) {\n if (!pair)\n continue;\n const splitAt = pair.indexOf(\"=\");\n if (splitAt === -1) {\n map.set(pair, \"true\");\n continue;\n }\n const [key, value] = [pair.slice(0, splitAt), pair.slice(splitAt + 1)];\n try {\n map.set(key, decodeURIComponent(value != null ? value : \"true\"));\n } catch {\n }\n }\n return map;\n}\nfunction parseSetCookie(setCookie) {\n if (!setCookie) {\n return void 0;\n }\n const [[name, value], ...attributes] = parseCookie(setCookie);\n const {\n domain,\n expires,\n httponly,\n maxage,\n path,\n samesite,\n secure,\n partitioned,\n priority\n } = Object.fromEntries(\n attributes.map(([key, value2]) => [\n key.toLowerCase().replace(/-/g, \"\"),\n value2\n ])\n );\n const cookie = {\n name,\n value: decodeURIComponent(value),\n domain,\n ...expires && { expires: new Date(expires) },\n ...httponly && { httpOnly: true },\n ...typeof maxage === \"string\" && { maxAge: Number(maxage) },\n path,\n ...samesite && { sameSite: parseSameSite(samesite) },\n ...secure && { secure: true },\n ...priority && { priority: parsePriority(priority) },\n ...partitioned && { partitioned: true }\n };\n return compact(cookie);\n}\nfunction compact(t) {\n const newT = {};\n for (const key in t) {\n if (t[key]) {\n newT[key] = t[key];\n }\n }\n return newT;\n}\nvar SAME_SITE = [\"strict\", \"lax\", \"none\"];\nfunction parseSameSite(string) {\n string = string.toLowerCase();\n return SAME_SITE.includes(string) ? string : void 0;\n}\nvar PRIORITY = [\"low\", \"medium\", \"high\"];\nfunction parsePriority(string) {\n string = string.toLowerCase();\n return PRIORITY.includes(string) ? string : void 0;\n}\nfunction splitCookiesString(cookiesString) {\n if (!cookiesString)\n return [];\n var cookiesStrings = [];\n var pos = 0;\n var start;\n var ch;\n var lastComma;\n var nextStart;\n var cookiesSeparatorFound;\n function skipWhitespace() {\n while (pos < cookiesString.length && /\\s/.test(cookiesString.charAt(pos))) {\n pos += 1;\n }\n return pos < cookiesString.length;\n }\n function notSpecialChar() {\n ch = cookiesString.charAt(pos);\n return ch !== \"=\" && ch !== \";\" && ch !== \",\";\n }\n while (pos < cookiesString.length) {\n start = pos;\n cookiesSeparatorFound = false;\n while (skipWhitespace()) {\n ch = cookiesString.charAt(pos);\n if (ch === \",\") {\n lastComma = pos;\n pos += 1;\n skipWhitespace();\n nextStart = pos;\n while (pos < cookiesString.length && notSpecialChar()) {\n pos += 1;\n }\n if (pos < cookiesString.length && cookiesString.charAt(pos) === \"=\") {\n cookiesSeparatorFound = true;\n pos = nextStart;\n cookiesStrings.push(cookiesString.substring(start, lastComma));\n start = pos;\n } else {\n pos = lastComma + 1;\n }\n } else {\n pos += 1;\n }\n }\n if (!cookiesSeparatorFound || pos >= cookiesString.length) {\n cookiesStrings.push(cookiesString.substring(start, cookiesString.length));\n }\n }\n return cookiesStrings;\n}\n\n// src/request-cookies.ts\nvar RequestCookies = class {\n constructor(requestHeaders) {\n /** @internal */\n this._parsed = /* @__PURE__ */ new Map();\n this._headers = requestHeaders;\n const header = requestHeaders.get(\"cookie\");\n if (header) {\n const parsed = parseCookie(header);\n for (const [name, value] of parsed) {\n this._parsed.set(name, { name, value });\n }\n }\n }\n [Symbol.iterator]() {\n return this._parsed[Symbol.iterator]();\n }\n /**\n * The amount of cookies received from the client\n */\n get size() {\n return this._parsed.size;\n }\n get(...args) {\n const name = typeof args[0] === \"string\" ? args[0] : args[0].name;\n return this._parsed.get(name);\n }\n getAll(...args) {\n var _a;\n const all = Array.from(this._parsed);\n if (!args.length) {\n return all.map(([_, value]) => value);\n }\n const name = typeof args[0] === \"string\" ? args[0] : (_a = args[0]) == null ? void 0 : _a.name;\n return all.filter(([n]) => n === name).map(([_, value]) => value);\n }\n has(name) {\n return this._parsed.has(name);\n }\n set(...args) {\n const [name, value] = args.length === 1 ? [args[0].name, args[0].value] : args;\n const map = this._parsed;\n map.set(name, { name, value });\n this._headers.set(\n \"cookie\",\n Array.from(map).map(([_, value2]) => stringifyCookie(value2)).join(\"; \")\n );\n return this;\n }\n /**\n * Delete the cookies matching the passed name or names in the request.\n */\n delete(names) {\n const map = this._parsed;\n const result = !Array.isArray(names) ? map.delete(names) : names.map((name) => map.delete(name));\n this._headers.set(\n \"cookie\",\n Array.from(map).map(([_, value]) => stringifyCookie(value)).join(\"; \")\n );\n return result;\n }\n /**\n * Delete all the cookies in the cookies in the request.\n */\n clear() {\n this.delete(Array.from(this._parsed.keys()));\n return this;\n }\n /**\n * Format the cookies in the request as a string for logging\n */\n [Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return `RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`;\n }\n toString() {\n return [...this._parsed.values()].map((v) => `${v.name}=${encodeURIComponent(v.value)}`).join(\"; \");\n }\n};\n\n// src/response-cookies.ts\nvar ResponseCookies = class {\n constructor(responseHeaders) {\n /** @internal */\n this._parsed = /* @__PURE__ */ new Map();\n var _a, _b, _c;\n this._headers = responseHeaders;\n const setCookie = (_c = (_b = (_a = responseHeaders.getSetCookie) == null ? void 0 : _a.call(responseHeaders)) != null ? _b : responseHeaders.get(\"set-cookie\")) != null ? _c : [];\n const cookieStrings = Array.isArray(setCookie) ? setCookie : splitCookiesString(setCookie);\n for (const cookieString of cookieStrings) {\n const parsed = parseSetCookie(cookieString);\n if (parsed)\n this._parsed.set(parsed.name, parsed);\n }\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-get CookieStore#get} without the Promise.\n */\n get(...args) {\n const key = typeof args[0] === \"string\" ? args[0] : args[0].name;\n return this._parsed.get(key);\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-getAll CookieStore#getAll} without the Promise.\n */\n getAll(...args) {\n var _a;\n const all = Array.from(this._parsed.values());\n if (!args.length) {\n return all;\n }\n const key = typeof args[0] === \"string\" ? args[0] : (_a = args[0]) == null ? void 0 : _a.name;\n return all.filter((c) => c.name === key);\n }\n has(name) {\n return this._parsed.has(name);\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-set CookieStore#set} without the Promise.\n */\n set(...args) {\n const [name, value, cookie] = args.length === 1 ? [args[0].name, args[0].value, args[0]] : args;\n const map = this._parsed;\n map.set(name, normalizeCookie({ name, value, ...cookie }));\n replace(map, this._headers);\n return this;\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-delete CookieStore#delete} without the Promise.\n */\n delete(...args) {\n const [name, options] = typeof args[0] === \"string\" ? [args[0]] : [args[0].name, args[0]];\n return this.set({ ...options, name, value: \"\", expires: /* @__PURE__ */ new Date(0) });\n }\n [Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return `ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`;\n }\n toString() {\n return [...this._parsed.values()].map(stringifyCookie).join(\"; \");\n }\n};\nfunction replace(bag, headers) {\n headers.delete(\"set-cookie\");\n for (const [, value] of bag) {\n const serialized = stringifyCookie(value);\n headers.append(\"set-cookie\", serialized);\n }\n}\nfunction normalizeCookie(cookie = { name: \"\", value: \"\" }) {\n if (typeof cookie.expires === \"number\") {\n cookie.expires = new Date(cookie.expires);\n }\n if (cookie.maxAge) {\n cookie.expires = new Date(Date.now() + cookie.maxAge * 1e3);\n }\n if (cookie.path === null || cookie.path === void 0) {\n cookie.path = \"/\";\n }\n return cookie;\n}\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n RequestCookies,\n ResponseCookies,\n parseCookie,\n parseSetCookie,\n stringifyCookie\n});\n","export {\n RequestCookies,\n ResponseCookies,\n stringifyCookie,\n} from 'next/dist/compiled/@edge-runtime/cookies'\n","export class ReflectAdapter {\n static get<T extends object>(\n target: T,\n prop: string | symbol,\n receiver: unknown\n ): any {\n const value = Reflect.get(target, prop, receiver)\n if (typeof value === 'function') {\n return value.bind(target)\n }\n\n return value\n }\n\n static set<T extends object>(\n target: T,\n prop: string | symbol,\n value: any,\n receiver: any\n ): boolean {\n return Reflect.set(target, prop, value, receiver)\n }\n\n static has<T extends object>(target: T, prop: string | symbol): boolean {\n return Reflect.has(target, prop)\n }\n\n static deleteProperty<T extends object>(\n target: T,\n prop: string | symbol\n ): boolean {\n return Reflect.deleteProperty(target, prop)\n }\n}\n","import type { AsyncLocalStorage } from 'async_hooks'\n\nconst sharedAsyncLocalStorageNotAvailableError = new Error(\n 'Invariant: AsyncLocalStorage accessed in runtime where it is not available'\n)\n\nclass FakeAsyncLocalStorage<Store extends {}>\n implements AsyncLocalStorage<Store>\n{\n disable(): void {\n throw sharedAsyncLocalStorageNotAvailableError\n }\n\n getStore(): Store | undefined {\n // This fake implementation of AsyncLocalStorage always returns `undefined`.\n return undefined\n }\n\n run<R>(): R {\n throw sharedAsyncLocalStorageNotAvailableError\n }\n\n exit<R>(): R {\n throw sharedAsyncLocalStorageNotAvailableError\n }\n\n enterWith(): void {\n throw sharedAsyncLocalStorageNotAvailableError\n }\n\n static bind<T>(fn: T): T {\n return fn\n }\n}\n\nconst maybeGlobalAsyncLocalStorage =\n typeof globalThis !== 'undefined' && (globalThis as any).AsyncLocalStorage\n\nexport function createAsyncLocalStorage<\n Store extends {},\n>(): AsyncLocalStorage<Store> {\n if (maybeGlobalAsyncLocalStorage) {\n return new maybeGlobalAsyncLocalStorage()\n }\n return new FakeAsyncLocalStorage()\n}\n\nexport function bindSnapshot<T>(fn: T): T {\n if (maybeGlobalAsyncLocalStorage) {\n return maybeGlobalAsyncLocalStorage.bind(fn)\n }\n return FakeAsyncLocalStorage.bind(fn)\n}\n\nexport function createSnapshot(): <R, TArgs extends any[]>(\n fn: (...args: TArgs) => R,\n ...args: TArgs\n) => R {\n if (maybeGlobalAsyncLocalStorage) {\n return maybeGlobalAsyncLocalStorage.snapshot()\n }\n return function (fn: any, ...args: any[]) {\n return fn(...args)\n }\n}\n","import type { WorkAsyncStorage } from './work-async-storage.external'\nimport { createAsyncLocalStorage } from './async-local-storage'\n\nexport const workAsyncStorageInstance: WorkAsyncStorage =\n createAsyncLocalStorage()\n","import type { AsyncLocalStorage } from 'async_hooks'\nimport type { IncrementalCache } from '../lib/incremental-cache'\nimport type { FetchMetrics } from '../base-http'\nimport type { FallbackRouteParams } from '../request/fallback-params'\nimport type { DeepReadonly } from '../../shared/lib/deep-readonly'\nimport type { AppSegmentConfig } from '../../build/segment-config/app/app-segment-config'\nimport type { AfterContext } from '../after/after-context'\nimport type { CacheLife } from '../use-cache/cache-life'\n\n// Share the instance module in the next-shared layer\nimport { workAsyncStorageInstance } from './work-async-storage-instance' with { 'turbopack-transition': 'next-shared' }\nimport type { LazyResult } from '../lib/lazy-result'\n\nexport interface WorkStore {\n readonly isStaticGeneration: boolean\n\n /**\n * The page that is being rendered. This relates to the path to the page file.\n */\n readonly page: string\n\n /**\n * The route that is being rendered. This is the page property without the\n * trailing `/page` or `/route` suffix.\n */\n readonly route: string\n\n /**\n * The set of unknown route parameters. Accessing these will be tracked as\n * a dynamic access.\n */\n readonly fallbackRouteParams: FallbackRouteParams | null\n\n readonly incrementalCache?: IncrementalCache\n readonly cacheLifeProfiles?: { [profile: string]: CacheLife }\n\n readonly isOnDemandRevalidate?: boolean\n readonly isPrerendering?: boolean\n readonly isRevalidate?: boolean\n\n forceDynamic?: boolean\n fetchCache?: AppSegmentConfig['fetchCache']\n\n forceStatic?: boolean\n dynamicShouldError?: boolean\n pendingRevalidates?: Record<string, Promise<any>>\n pendingRevalidateWrites?: Array<Promise<void>> // This is like pendingRevalidates but isn't used for deduping.\n readonly afterContext: AfterContext\n\n dynamicUsageDescription?: string\n dynamicUsageStack?: string\n\n /**\n * Invalid usage errors might be caught in userland. We attach them to the\n * work store to ensure we can still fail the build or dev render.\n */\n // TODO: Collect an array of errors, and throw as AggregateError when\n // `serializeError` and the Dev Overlay support it.\n invalidUsageError?: Error\n\n nextFetchId?: number\n pathWasRevalidated?: boolean\n\n /**\n * Tags that were revalidated during the current request. They need to be sent\n * to cache handlers to propagate their revalidation.\n */\n pendingRevalidatedTags?: string[]\n\n /**\n * Tags that were previously revalidated (e.g. by a redirecting server action)\n * and have already been sent to cache handlers. Retrieved cache entries that\n * include any of these tags must be discarded.\n */\n readonly previouslyRevalidatedTags: readonly string[]\n\n /**\n * This map contains lazy results so that we can evaluate them when the first\n * cache entry is read. It allows us to skip refreshing tags if no caches are\n * read at all.\n */\n readonly refreshTagsByCacheKind: Map<string, LazyResult<void>>\n\n fetchMetrics?: FetchMetrics\n\n isDraftMode?: boolean\n isUnstableNoStore?: boolean\n isPrefetchRequest?: boolean\n\n requestEndedState?: { ended?: boolean }\n\n buildId: string\n\n readonly reactLoadableManifest?: DeepReadonly<\n Record<string, { files: string[] }>\n >\n readonly assetPrefix?: string\n\n dynamicIOEnabled: boolean\n dev: boolean\n}\n\nexport type WorkAsyncStorage = AsyncLocalStorage<WorkStore>\n\nexport { workAsyncStorageInstance as workAsyncStorage }\n","import { createAsyncLocalStorage } from './async-local-storage'\nimport type { WorkUnitAsyncStorage } from './work-unit-async-storage.external'\n\nexport const workUnitAsyncStorageInstance: WorkUnitAsyncStorage =\n createAsyncLocalStorage()\n","export const RSC_HEADER = 'RSC' as const\nexport const ACTION_HEADER = 'Next-Action' as const\n// TODO: Instead of sending the full router state, we only need to send the\n// segment path. Saves bytes. Then we could also use this field for segment\n// prefetches, which also need to specify a particular segment.\nexport const NEXT_ROUTER_STATE_TREE_HEADER = 'Next-Router-State-Tree' as const\nexport const NEXT_ROUTER_PREFETCH_HEADER = 'Next-Router-Prefetch' as const\n// This contains the path to the segment being prefetched.\n// TODO: If we change Next-Router-State-Tree to be a segment path, we can use\n// that instead. Then Next-Router-Prefetch and Next-Router-Segment-Prefetch can\n// be merged into a single enum.\nexport const NEXT_ROUTER_SEGMENT_PREFETCH_HEADER =\n 'Next-Router-Segment-Prefetch' as const\nexport const NEXT_HMR_REFRESH_HEADER = 'Next-HMR-Refresh' as const\nexport const NEXT_HMR_REFRESH_HASH_COOKIE = '__next_hmr_refresh_hash__' as const\nexport const NEXT_URL = 'Next-Url' as const\nexport const RSC_CONTENT_TYPE_HEADER = 'text/x-component' as const\n\nexport const FLIGHT_HEADERS = [\n RSC_HEADER,\n NEXT_ROUTER_STATE_TREE_HEADER,\n NEXT_ROUTER_PREFETCH_HEADER,\n NEXT_HMR_REFRESH_HEADER,\n NEXT_ROUTER_SEGMENT_PREFETCH_HEADER,\n] as const\n\nexport const NEXT_RSC_UNION_QUERY = '_rsc' as const\n\nexport const NEXT_ROUTER_STALE_TIME_HEADER = 'x-nextjs-stale-time' as const\nexport const NEXT_DID_POSTPONE_HEADER = 'x-nextjs-postponed' as const\nexport const NEXT_REWRITTEN_PATH_HEADER = 'x-nextjs-rewritten-path' as const\nexport const NEXT_REWRITTEN_QUERY_HEADER = 'x-nextjs-rewritten-query' as const\nexport const NEXT_IS_PRERENDER_HEADER = 'x-nextjs-prerender' as const\n","import type { AsyncLocalStorage } from 'async_hooks'\nimport type { DraftModeProvider } from '../async-storage/draft-mode-provider'\nimport type { ResponseCookies } from '../web/spec-extension/cookies'\nimport type { ReadonlyHeaders } from '../web/spec-extension/adapters/headers'\nimport type { ReadonlyRequestCookies } from '../web/spec-extension/adapters/request-cookies'\nimport type { CacheSignal } from './cache-signal'\nimport type { DynamicTrackingState } from './dynamic-rendering'\n\n// Share the instance module in the next-shared layer\nimport { workUnitAsyncStorageInstance } from './work-unit-async-storage-instance' with { 'turbopack-transition': 'next-shared' }\nimport type { ServerComponentsHmrCache } from '../response-cache'\nimport type {\n RenderResumeDataCache,\n PrerenderResumeDataCache,\n} from '../resume-data-cache/resume-data-cache'\nimport type { Params } from '../request/params'\nimport type { ImplicitTags } from '../lib/implicit-tags'\nimport type { WorkStore } from './work-async-storage.external'\nimport { NEXT_HMR_REFRESH_HASH_COOKIE } from '../../client/components/app-router-headers'\n\nexport type WorkUnitPhase = 'action' | 'render' | 'after'\n\nexport interface CommonWorkUnitStore {\n /** NOTE: Will be mutated as phases change */\n phase: WorkUnitPhase\n readonly implicitTags: ImplicitTags\n}\n\nexport interface RequestStore extends CommonWorkUnitStore {\n type: 'request'\n\n /**\n * The URL of the request. This only specifies the pathname and the search\n * part of the URL.\n */\n readonly url: {\n /**\n * The pathname of the requested URL.\n */\n readonly pathname: string\n\n /**\n * The search part of the requested URL. If the request did not provide a\n * search part, this will be an empty string.\n */\n readonly search: string\n }\n\n readonly headers: ReadonlyHeaders\n // This is mutable because we need to reassign it when transitioning from the action phase to the render phase.\n // The cookie object itself is deliberately read only and thus can't be updated.\n cookies: ReadonlyRequestCookies\n readonly mutableCookies: ResponseCookies\n readonly userspaceMutableCookies: ResponseCookies\n readonly draftMode: DraftModeProvider\n readonly isHmrRefresh?: boolean\n readonly serverComponentsHmrCache?: ServerComponentsHmrCache\n\n readonly rootParams: Params\n\n /**\n * The resume data cache for this request. This will be a immutable cache.\n */\n renderResumeDataCache: RenderResumeDataCache | null\n\n // DEV-only\n usedDynamic?: boolean\n prerenderPhase?: boolean\n}\n\n/**\n * The Prerender store is for tracking information related to prerenders.\n *\n * It can be used for both RSC and SSR prerendering and should be scoped as close\n * to the individual `renderTo...` API call as possible. To keep the type simple\n * we don't distinguish between RSC and SSR prerendering explicitly but instead\n * use conditional object properties to infer which mode we are in. For instance cache tracking\n * only needs to happen during the RSC prerender when we are prospectively prerendering\n * to fill all caches.\n */\nexport interface PrerenderStoreModern extends CommonWorkUnitStore {\n type: 'prerender'\n\n /**\n * This signal is aborted when the React render is complete. (i.e. it is the same signal passed to react)\n */\n readonly renderSignal: AbortSignal\n /**\n * This is the AbortController which represents the boundary between Prerender and dynamic. In some renders it is\n * the same as the controller for the renderSignal but in others it is a separate controller. It should be aborted\n * whenever the we are no longer in the prerender phase of rendering. Typically this is after one task or when you call\n * a sync API which requires the prerender to end immediately\n */\n readonly controller: AbortController\n\n /**\n * when not null this signal is used to track cache reads during prerendering and\n * to await all cache reads completing before aborting the prerender.\n */\n readonly cacheSignal: null | CacheSignal\n\n /**\n * During some prerenders we want to track dynamic access.\n */\n readonly dynamicTracking: null | DynamicTrackingState\n\n readonly rootParams: Params\n\n // Collected revalidate times and tags for this document during the prerender.\n revalidate: number // in seconds. 0 means dynamic. INFINITE_CACHE and higher means never revalidate.\n expire: number // server expiration time\n stale: number // client expiration time\n tags: null | string[]\n\n /**\n * The resume data cache for this prerender.\n */\n prerenderResumeDataCache: PrerenderResumeDataCache | null\n\n // DEV ONLY\n // When used this flag informs certain APIs to skip logging because we're\n // not part of the primary render path and are just prerendering to produce\n // validation results\n validating?: boolean\n\n /**\n * The HMR refresh hash is only provided in dev mode. It is needed for the dev\n * warmup render to ensure that the cache keys will be identical for the\n * subsequent dynamic render.\n */\n readonly hmrRefreshHash: string | undefined\n}\n\nexport interface PrerenderStorePPR extends CommonWorkUnitStore {\n type: 'prerender-ppr'\n readonly rootParams: Params\n readonly dynamicTracking: null | DynamicTrackingState\n // Collected revalidate times and tags for this document during the prerender.\n revalidate: number // in seconds. 0 means dynamic. INFINITE_CACHE and higher means never revalidate.\n expire: number // server expiration time\n stale: number // client expiration time\n tags: null | string[]\n\n /**\n * The resume data cache for this prerender.\n */\n prerenderResumeDataCache: PrerenderResumeDataCache\n}\n\nexport interface PrerenderStoreLegacy extends CommonWorkUnitStore {\n type: 'prerender-legacy'\n readonly rootParams: Params\n // Collected revalidate times and tags for this document during the prerender.\n revalidate: number // in seconds. 0 means dynamic. INFINITE_CACHE and higher means never revalidate.\n expire: number // server expiration time\n stale: number // client expiration time\n tags: null | string[]\n}\n\nexport type PrerenderStore =\n | PrerenderStoreLegacy\n | PrerenderStorePPR\n | PrerenderStoreModern\n\nexport interface CommonCacheStore\n extends Omit<CommonWorkUnitStore, 'implicitTags'> {\n /**\n * A cache work unit store might not always have an outer work unit store,\n * from which implicit tags could be inherited.\n */\n readonly implicitTags: ImplicitTags | undefined\n}\n\nexport interface UseCacheStore extends CommonCacheStore {\n type: 'cache'\n // Collected revalidate times and tags for this cache entry during the cache render.\n revalidate: number // implicit revalidate time from inner caches / fetches\n expire: number // server expiration time\n stale: number // client expiration time\n explicitRevalidate: undefined | number // explicit revalidate time from cacheLife() calls\n explicitExpire: undefined | number // server expiration time\n explicitStale: undefined | number // client expiration time\n tags: null | string[]\n readonly hmrRefreshHash: string | undefined\n readonly isHmrRefresh: boolean\n readonly serverComponentsHmrCache: ServerComponentsHmrCache | undefined\n readonly forceRevalidate: boolean\n // Draft mode is only available if the outer work unit store is a request\n // store and draft mode is enabled.\n readonly draftMode: DraftModeProvider | undefined\n}\n\nexport interface UnstableCacheStore extends CommonCacheStore {\n type: 'unstable-cache'\n // Draft mode is only available if the outer work unit store is a request\n // store and draft mode is enabled.\n readonly draftMode: DraftModeProvider | undefined\n}\n\n/**\n * The Cache store is for tracking information inside a \"use cache\" or unstable_cache context.\n * Inside this context we should never expose any request or page specific information.\n */\nexport type CacheStore = UseCacheStore | UnstableCacheStore\n\nexport type WorkUnitStore = RequestStore | CacheStore | PrerenderStore\n\nexport type WorkUnitAsyncStorage = AsyncLocalStorage<WorkUnitStore>\n\nexport { workUnitAsyncStorageInstance as workUnitAsyncStorage }\n\nexport function getExpectedRequestStore(\n callingExpression: string\n): RequestStore {\n const workUnitStore = workUnitAsyncStorageInstance.getStore()\n\n if (!workUnitStore) {\n throwForMissingRequestStore(callingExpression)\n }\n\n switch (workUnitStore.type) {\n case 'request':\n return workUnitStore\n\n case 'prerender':\n case 'prerender-ppr':\n case 'prerender-legacy':\n // This should not happen because we should have checked it already.\n throw new Error(\n `\\`${callingExpression}\\` cannot be called inside a prerender. This is a bug in Next.js.`\n )\n\n case 'cache':\n throw new Error(\n `\\`${callingExpression}\\` cannot be called inside \"use cache\". Call it outside and pass an argument instead. Read more: https://nextjs.org/docs/messages/next-request-in-use-cache`\n )\n\n case 'unstable-cache':\n throw new Error(\n `\\`${callingExpression}\\` cannot be called inside unstable_cache. Call it outside and pass an argument instead. Read more: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`\n )\n\n default:\n const _exhaustiveCheck: never = workUnitStore\n return _exhaustiveCheck\n }\n}\n\nexport function throwForMissingRequestStore(callingExpression: string): never {\n throw new Error(\n `\\`${callingExpression}\\` was called outside a request scope. Read more: https://nextjs.org/docs/messages/next-dynamic-api-wrong-context`\n )\n}\n\nexport function getPrerenderResumeDataCache(\n workUnitStore: WorkUnitStore\n): PrerenderResumeDataCache | null {\n if (\n workUnitStore.type === 'prerender' ||\n workUnitStore.type === 'prerender-ppr'\n ) {\n return workUnitStore.prerenderResumeDataCache\n }\n\n return null\n}\n\nexport function getRenderResumeDataCache(\n workUnitStore: WorkUnitStore\n): RenderResumeDataCache | null {\n if (\n workUnitStore.type !== 'prerender-legacy' &&\n workUnitStore.type !== 'cache' &&\n workUnitStore.type !== 'unstable-cache'\n ) {\n if (workUnitStore.type === 'request') {\n return workUnitStore.renderResumeDataCache\n }\n\n // We return the mutable resume data cache here as an immutable version of\n // the cache as it can also be used for reading.\n return workUnitStore.prerenderResumeDataCache\n }\n\n return null\n}\n\nexport function getHmrRefreshHash(\n workStore: WorkStore,\n workUnitStore: WorkUnitStore\n): string | undefined {\n if (!workStore.dev) {\n return undefined\n }\n\n return workUnitStore.type === 'cache' || workUnitStore.type === 'prerender'\n ? workUnitStore.hmrRefreshHash\n : workUnitStore.type === 'request'\n ? workUnitStore.cookies.get(NEXT_HMR_REFRESH_HASH_COOKIE)?.value\n : undefined\n}\n\n/**\n * Returns a draft mode provider only if draft mode is enabled.\n */\nexport function getDraftModeProviderForCacheScope(\n workStore: WorkStore,\n workUnitStore: WorkUnitStore\n): DraftModeProvider | undefined {\n if (workStore.isDraftMode) {\n switch (workUnitStore.type) {\n case 'cache':\n case 'unstable-cache':\n case 'request':\n return workUnitStore.draftMode\n default:\n return undefined\n }\n }\n\n return undefined\n}\n","import { RequestCookies } from '../cookies'\n\nimport { ResponseCookies } from '../cookies'\nimport { ReflectAdapter } from './reflect'\nimport { workAsyncStorage } from '../../../app-render/work-async-storage.external'\nimport {\n getExpectedRequestStore,\n type RequestStore,\n} from '../../../app-render/work-unit-async-storage.external'\n\n/**\n * @internal\n */\nexport class ReadonlyRequestCookiesError extends Error {\n constructor() {\n super(\n 'Cookies can only be modified in a Server Action or Route Handler. Read more: https://nextjs.org/docs/app/api-reference/functions/cookies#options'\n )\n }\n\n public static callable() {\n throw new ReadonlyRequestCookiesError()\n }\n}\n\n// We use this to type some APIs but we don't construct instances directly\nexport type { ResponseCookies }\n\n// The `cookies()` API is a mix of request and response cookies. For `.get()` methods,\n// we want to return the request cookie if it exists. For mutative methods like `.set()`,\n// we want to return the response cookie.\nexport type ReadonlyRequestCookies = Omit<\n RequestCookies,\n 'set' | 'clear' | 'delete'\n> &\n Pick<ResponseCookies, 'set' | 'delete'>\n\nexport class RequestCookiesAdapter {\n public static seal(cookies: RequestCookies): ReadonlyRequestCookies {\n return new Proxy(cookies as any, {\n get(target, prop, receiver) {\n switch (prop) {\n case 'clear':\n case 'delete':\n case 'set':\n return ReadonlyRequestCookiesError.callable\n default:\n return ReflectAdapter.get(target, prop, receiver)\n }\n },\n })\n }\n}\n\nconst SYMBOL_MODIFY_COOKIE_VALUES = Symbol.for('next.mutated.cookies')\n\nexport function getModifiedCookieValues(\n cookies: ResponseCookies\n): ResponseCookie[] {\n const modified: ResponseCookie[] | undefined = (cookies as unknown as any)[\n SYMBOL_MODIFY_COOKIE_VALUES\n ]\n if (!modified || !Array.isArray(modified) || modified.length === 0) {\n return []\n }\n\n return modified\n}\n\ntype SetCookieArgs =\n | [key: string, value: string, cookie?: Partial<ResponseCookie>]\n | [options: ResponseCookie]\n\nexport function appendMutableCookies(\n headers: Headers,\n mutableCookies: ResponseCookies\n): boolean {\n const modifiedCookieValues = getModifiedCookieValues(mutableCookies)\n if (modifiedCookieValues.length === 0) {\n return false\n }\n\n // Return a new response that extends the response with\n // the modified cookies as fallbacks. `res` cookies\n // will still take precedence.\n const resCookies = new ResponseCookies(headers)\n const returnedCookies = resCookies.getAll()\n\n // Set the modified cookies as fallbacks.\n for (const cookie of modifiedCookieValues) {\n resCookies.set(cookie)\n }\n\n // Set the original cookies as the final values.\n for (const cookie of returnedCookies) {\n resCookies.set(cookie)\n }\n\n return true\n}\n\ntype ResponseCookie = NonNullable<\n ReturnType<InstanceType<typeof ResponseCookies>['get']>\n>\n\nexport class MutableRequestCookiesAdapter {\n public static wrap(\n cookies: RequestCookies,\n onUpdateCookies?: (cookies: string[]) => void\n ): ResponseCookies {\n const responseCookies = new ResponseCookies(new Headers())\n for (const cookie of cookies.getAll()) {\n responseCookies.set(cookie)\n }\n\n let modifiedValues: ResponseCookie[] = []\n const modifiedCookies = new Set<string>()\n const updateResponseCookies = () => {\n // TODO-APP: change method of getting workStore\n const workStore = workAsyncStorage.getStore()\n if (workStore) {\n workStore.pathWasRevalidated = true\n }\n\n const allCookies = responseCookies.getAll()\n modifiedValues = allCookies.filter((c) => modifiedCookies.has(c.name))\n if (onUpdateCookies) {\n const serializedCookies: string[] = []\n for (const cookie of modifiedValues) {\n const tempCookies = new ResponseCookies(new Headers())\n tempCookies.set(cookie)\n serializedCookies.push(tempCookies.toString())\n }\n\n onUpdateCookies(serializedCookies)\n }\n }\n\n const wrappedCookies = new Proxy(responseCookies, {\n get(target, prop, receiver) {\n switch (prop) {\n // A special symbol to get the modified cookie values\n case SYMBOL_MODIFY_COOKIE_VALUES:\n return modifiedValues\n\n // TODO: Throw error if trying to set a cookie after the response\n // headers have been set.\n case 'delete':\n return function (...args: [string] | [ResponseCookie]) {\n modifiedCookies.add(\n typeof args[0] === 'string' ? args[0] : args[0].name\n )\n try {\n target.delete(...args)\n return wrappedCookies\n } finally {\n updateResponseCookies()\n }\n }\n case 'set':\n return function (...args: SetCookieArgs) {\n modifiedCookies.add(\n typeof args[0] === 'string' ? args[0] : args[0].name\n )\n try {\n target.set(...args)\n return wrappedCookies\n } finally {\n updateResponseCookies()\n }\n }\n\n default:\n return ReflectAdapter.get(target, prop, receiver)\n }\n },\n })\n\n return wrappedCookies\n }\n}\n\nexport function wrapWithMutableAccessCheck(\n responseCookies: ResponseCookies\n): ResponseCookies {\n const wrappedCookies = new Proxy(responseCookies, {\n get(target, prop, receiver) {\n switch (prop) {\n case 'delete':\n return function (...args: [string] | [ResponseCookie]) {\n ensureCookiesAreStillMutable('cookies().delete')\n target.delete(...args)\n return wrappedCookies\n }\n case 'set':\n return function (...args: SetCookieArgs) {\n ensureCookiesAreStillMutable('cookies().set')\n target.set(...args)\n return wrappedCookies\n }\n\n default:\n return ReflectAdapter.get(target, prop, receiver)\n }\n },\n })\n return wrappedCookies\n}\n\nexport function areCookiesMutableInCurrentPhase(requestStore: RequestStore) {\n return requestStore.phase === 'action'\n}\n\n/** Ensure that cookies() starts throwing on mutation\n * if we changed phases and can no longer mutate.\n *\n * This can happen when going:\n * 'render' -> 'after'\n * 'action' -> 'render'\n * */\nfunction ensureCookiesAreStillMutable(callingExpression: string) {\n const requestStore = getExpectedRequestStore(callingExpression)\n if (!areCookiesMutableInCurrentPhase(requestStore)) {\n // TODO: maybe we can give a more precise error message based on callingExpression?\n throw new ReadonlyRequestCookiesError()\n }\n}\n\nexport function responseCookiesToRequestCookies(\n responseCookies: ResponseCookies\n): RequestCookies {\n const requestCookies = new RequestCookies(new Headers())\n for (const cookie of responseCookies.getAll()) {\n requestCookies.set(cookie)\n }\n return requestCookies\n}\n","/**\n * @license React\n * react.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nfunction getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable) return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n}\nvar ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function () {},\n enqueueReplaceState: function () {},\n enqueueSetState: function () {}\n },\n assign = Object.assign,\n emptyObject = {};\nfunction Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nComponent.prototype.isReactComponent = {};\nComponent.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n};\nComponent.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n};\nfunction ComponentDummy() {}\nComponentDummy.prototype = Component.prototype;\nfunction PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nvar pureComponentPrototype = (PureComponent.prototype = new ComponentDummy());\npureComponentPrototype.constructor = PureComponent;\nassign(pureComponentPrototype, Component.prototype);\npureComponentPrototype.isPureReactComponent = !0;\nvar isArrayImpl = Array.isArray,\n ReactSharedInternals = { H: null, A: null, T: null, S: null, V: null },\n hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction ReactElement(type, key, self, source, owner, props) {\n self = props.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== self ? self : null,\n props: props\n };\n}\nfunction cloneAndReplaceKey(oldElement, newKey) {\n return ReactElement(\n oldElement.type,\n newKey,\n void 0,\n void 0,\n void 0,\n oldElement.props\n );\n}\nfunction isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n}\nfunction escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n}\nvar userProvidedKeyEscapeRegex = /\\/+/g;\nfunction getElementKey(element, index) {\n return \"object\" === typeof element && null !== element && null != element.key\n ? escape(\"\" + element.key)\n : index.toString(36);\n}\nfunction noop$1() {}\nfunction resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop$1, noop$1)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"), (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n}\nfunction mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback)\n return (\n (callback = callback(children)),\n (invokeCallback =\n \"\" === nameSoFar ? \".\" + getElementKey(children, 0) : nameSoFar),\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != invokeCallback &&\n (escapedPrefix =\n invokeCallback.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (callback = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (children && children.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n invokeCallback\n )),\n array.push(callback)),\n 1\n );\n invokeCallback = 0;\n var nextNamePrefix = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = nextNamePrefix + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n children = i.call(children), i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = nextNamePrefix + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n}\nfunction mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n}\nfunction lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status && ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status) return payload._result.default;\n throw payload._result;\n}\nvar reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n };\nfunction noop() {}\nexports.Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n};\nexports.Component = Component;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.PureComponent = PureComponent;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\nexports.__COMPILER_RUNTIME = {\n __proto__: null,\n c: function (size) {\n return ReactSharedInternals.H.useMemoCache(size);\n }\n};\nexports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n};\nexports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" + element + \".\"\n );\n var props = assign({}, element.props),\n key = element.key,\n owner = void 0;\n if (null != config)\n for (propName in (void 0 !== config.ref && (owner = void 0),\n void 0 !== config.key && (key = \"\" + config.key),\n config))\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n for (var childArray = Array(propName), i = 0; i < propName; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n return ReactElement(element.type, key, void 0, void 0, owner, props);\n};\nexports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n return defaultValue;\n};\nexports.createElement = function (type, config, children) {\n var propName,\n props = {},\n key = null;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (props[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) props.children = children;\n else if (1 < childrenLength) {\n for (var childArray = Array(childrenLength), i = 0; i < childrenLength; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === props[propName] &&\n (props[propName] = childrenLength[propName]);\n return ReactElement(type, key, void 0, void 0, null, props);\n};\nexports.createRef = function () {\n return { current: null };\n};\nexports.forwardRef = function (render) {\n return { $$typeof: REACT_FORWARD_REF_TYPE, render: render };\n};\nexports.isValidElement = isValidElement;\nexports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n};\nexports.memo = function (type, compare) {\n return {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n};\nexports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n ReactSharedInternals.T = prevTransition;\n }\n};\nexports.unstable_useCacheRefresh = function () {\n return ReactSharedInternals.H.useCacheRefresh();\n};\nexports.use = function (usable) {\n return ReactSharedInternals.H.use(usable);\n};\nexports.useActionState = function (action, initialState, permalink) {\n return ReactSharedInternals.H.useActionState(action, initialState, permalink);\n};\nexports.useCallback = function (callback, deps) {\n return ReactSharedInternals.H.useCallback(callback, deps);\n};\nexports.useContext = function (Context) {\n return ReactSharedInternals.H.useContext(Context);\n};\nexports.useDebugValue = function () {};\nexports.useDeferredValue = function (value, initialValue) {\n return ReactSharedInternals.H.useDeferredValue(value, initialValue);\n};\nexports.useEffect = function (create, createDeps, update) {\n var dispatcher = ReactSharedInternals.H;\n if (\"function\" === typeof update)\n throw Error(\n \"useEffect CRUD overload is not enabled in this build of React.\"\n );\n return dispatcher.useEffect(create, createDeps);\n};\nexports.useId = function () {\n return ReactSharedInternals.H.useId();\n};\nexports.useImperativeHandle = function (ref, create, deps) {\n return ReactSharedInternals.H.useImperativeHandle(ref, create, deps);\n};\nexports.useInsertionEffect = function (create, deps) {\n return ReactSharedInternals.H.useInsertionEffect(create, deps);\n};\nexports.useLayoutEffect = function (create, deps) {\n return ReactSharedInternals.H.useLayoutEffect(create, deps);\n};\nexports.useMemo = function (create, deps) {\n return ReactSharedInternals.H.useMemo(create, deps);\n};\nexports.useOptimistic = function (passthrough, reducer) {\n return ReactSharedInternals.H.useOptimistic(passthrough, reducer);\n};\nexports.useReducer = function (reducer, initialArg, init) {\n return ReactSharedInternals.H.useReducer(reducer, initialArg, init);\n};\nexports.useRef = function (initialValue) {\n return ReactSharedInternals.H.useRef(initialValue);\n};\nexports.useState = function (initialState) {\n return ReactSharedInternals.H.useState(initialState);\n};\nexports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n) {\n return ReactSharedInternals.H.useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n};\nexports.useTransition = function () {\n return ReactSharedInternals.H.useTransition();\n};\nexports.version = \"19.1.0\";\n","/**\n * @license React\n * react.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function defineDeprecationWarning(methodName, info) {\n Object.defineProperty(Component.prototype, methodName, {\n get: function () {\n console.warn(\n \"%s(...) is deprecated in plain JavaScript React classes. %s\",\n info[0],\n info[1]\n );\n }\n });\n }\n function getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable)\n return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n }\n function warnNoop(publicInstance, callerName) {\n publicInstance =\n ((publicInstance = publicInstance.constructor) &&\n (publicInstance.displayName || publicInstance.name)) ||\n \"ReactClass\";\n var warningKey = publicInstance + \".\" + callerName;\n didWarnStateUpdateForUnmountedComponent[warningKey] ||\n (console.error(\n \"Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.\",\n callerName,\n publicInstance\n ),\n (didWarnStateUpdateForUnmountedComponent[warningKey] = !0));\n }\n function Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n }\n function ComponentDummy() {}\n function PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return (type.displayName || \"Context\") + \".Provider\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(\n type,\n key,\n self,\n source,\n owner,\n props,\n debugStack,\n debugTask\n ) {\n self = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== self ? self : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function cloneAndReplaceKey(oldElement, newKey) {\n newKey = ReactElement(\n oldElement.type,\n newKey,\n void 0,\n void 0,\n oldElement._owner,\n oldElement.props,\n oldElement._debugStack,\n oldElement._debugTask\n );\n oldElement._store &&\n (newKey._store.validated = oldElement._store.validated);\n return newKey;\n }\n function isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n }\n function escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n }\n function getElementKey(element, index) {\n return \"object\" === typeof element &&\n null !== element &&\n null != element.key\n ? (checkKeyStringCoercion(element.key), escape(\"\" + element.key))\n : index.toString(36);\n }\n function noop$1() {}\n function resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop$1, noop$1)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"),\n (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n }\n function mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback) {\n invokeCallback = children;\n callback = callback(invokeCallback);\n var childKey =\n \"\" === nameSoFar ? \".\" + getElementKey(invokeCallback, 0) : nameSoFar;\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != childKey &&\n (escapedPrefix =\n childKey.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (null != callback.key &&\n ((invokeCallback && invokeCallback.key === callback.key) ||\n checkKeyStringCoercion(callback.key)),\n (escapedPrefix = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (invokeCallback && invokeCallback.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n childKey\n )),\n \"\" !== nameSoFar &&\n null != invokeCallback &&\n isValidElement(invokeCallback) &&\n null == invokeCallback.key &&\n invokeCallback._store &&\n !invokeCallback._store.validated &&\n (escapedPrefix._store.validated = 2),\n (callback = escapedPrefix)),\n array.push(callback));\n return 1;\n }\n invokeCallback = 0;\n childKey = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = childKey + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n i === children.entries &&\n (didWarnAboutMaps ||\n console.warn(\n \"Using Maps as children is not supported. Use an array of keyed ReactElements instead.\"\n ),\n (didWarnAboutMaps = !0)),\n children = i.call(children),\n i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = childKey + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n }\n function mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n }\n function lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status &&\n ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status)\n return (\n (ctor = payload._result),\n void 0 === ctor &&\n console.error(\n \"lazy: Expected the result of a dynamic import() call. Instead received: %s\\n\\nYour code should look like: \\n const MyComponent = lazy(() => import('./MyComponent'))\\n\\nDid you accidentally put curly braces around the import?\",\n ctor\n ),\n \"default\" in ctor ||\n console.error(\n \"lazy: Expected the result of a dynamic import() call. Instead received: %s\\n\\nYour code should look like: \\n const MyComponent = lazy(() => import('./MyComponent'))\",\n ctor\n ),\n ctor.default\n );\n throw payload._result;\n }\n function resolveDispatcher() {\n var dispatcher = ReactSharedInternals.H;\n null === dispatcher &&\n console.error(\n \"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.\"\n );\n return dispatcher;\n }\n function noop() {}\n function enqueueTask(task) {\n if (null === enqueueTaskImpl)\n try {\n var requireString = (\"require\" + Math.random()).slice(0, 7);\n enqueueTaskImpl = (module && module[requireString]).call(\n module,\n \"timers\"\n ).setImmediate;\n } catch (_err) {\n enqueueTaskImpl = function (callback) {\n !1 === didWarnAboutMessageChannel &&\n ((didWarnAboutMessageChannel = !0),\n \"undefined\" === typeof MessageChannel &&\n console.error(\n \"This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning.\"\n ));\n var channel = new MessageChannel();\n channel.port1.onmessage = callback;\n channel.port2.postMessage(void 0);\n };\n }\n return enqueueTaskImpl(task);\n }\n function aggregateErrors(errors) {\n return 1 < errors.length && \"function\" === typeof AggregateError\n ? new AggregateError(errors)\n : errors[0];\n }\n function popActScope(prevActQueue, prevActScopeDepth) {\n prevActScopeDepth !== actScopeDepth - 1 &&\n console.error(\n \"You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. \"\n );\n actScopeDepth = prevActScopeDepth;\n }\n function recursivelyFlushAsyncActWork(returnValue, resolve, reject) {\n var queue = ReactSharedInternals.actQueue;\n if (null !== queue)\n if (0 !== queue.length)\n try {\n flushActQueue(queue);\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(returnValue, resolve, reject);\n });\n return;\n } catch (error) {\n ReactSharedInternals.thrownErrors.push(error);\n }\n else ReactSharedInternals.actQueue = null;\n 0 < ReactSharedInternals.thrownErrors.length\n ? ((queue = aggregateErrors(ReactSharedInternals.thrownErrors)),\n (ReactSharedInternals.thrownErrors.length = 0),\n reject(queue))\n : resolve(returnValue);\n }\n function flushActQueue(queue) {\n if (!isFlushing) {\n isFlushing = !0;\n var i = 0;\n try {\n for (; i < queue.length; i++) {\n var callback = queue[i];\n do {\n ReactSharedInternals.didUsePromise = !1;\n var continuation = callback(!1);\n if (null !== continuation) {\n if (ReactSharedInternals.didUsePromise) {\n queue[i] = callback;\n queue.splice(0, i);\n return;\n }\n callback = continuation;\n } else break;\n } while (1);\n }\n queue.length = 0;\n } catch (error) {\n queue.splice(0, i + 1), ReactSharedInternals.thrownErrors.push(error);\n } finally {\n isFlushing = !1;\n }\n }\n }\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());\n var REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\n Symbol.for(\"react.provider\");\n var REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator,\n didWarnStateUpdateForUnmountedComponent = {},\n ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function (publicInstance) {\n warnNoop(publicInstance, \"forceUpdate\");\n },\n enqueueReplaceState: function (publicInstance) {\n warnNoop(publicInstance, \"replaceState\");\n },\n enqueueSetState: function (publicInstance) {\n warnNoop(publicInstance, \"setState\");\n }\n },\n assign = Object.assign,\n emptyObject = {};\n Object.freeze(emptyObject);\n Component.prototype.isReactComponent = {};\n Component.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n };\n Component.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n };\n var deprecatedAPIs = {\n isMounted: [\n \"isMounted\",\n \"Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks.\"\n ],\n replaceState: [\n \"replaceState\",\n \"Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236).\"\n ]\n },\n fnName;\n for (fnName in deprecatedAPIs)\n deprecatedAPIs.hasOwnProperty(fnName) &&\n defineDeprecationWarning(fnName, deprecatedAPIs[fnName]);\n ComponentDummy.prototype = Component.prototype;\n deprecatedAPIs = PureComponent.prototype = new ComponentDummy();\n deprecatedAPIs.constructor = PureComponent;\n assign(deprecatedAPIs, Component.prototype);\n deprecatedAPIs.isPureReactComponent = !0;\n var isArrayImpl = Array.isArray,\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals = {\n H: null,\n A: null,\n T: null,\n S: null,\n V: null,\n actQueue: null,\n isBatchingLegacy: !1,\n didScheduleLegacyUpdate: !1,\n didUsePromise: !1,\n thrownErrors: [],\n getCurrentStack: null,\n recentlyCreatedOwnerStacks: 0\n },\n hasOwnProperty = Object.prototype.hasOwnProperty,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n deprecatedAPIs = {\n \"react-stack-bottom-frame\": function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown, didWarnAboutOldJSXRuntime;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = deprecatedAPIs[\n \"react-stack-bottom-frame\"\n ].bind(deprecatedAPIs, UnknownOwner)();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutMaps = !1,\n userProvidedKeyEscapeRegex = /\\/+/g,\n reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n },\n didWarnAboutMessageChannel = !1,\n enqueueTaskImpl = null,\n actScopeDepth = 0,\n didWarnNoAwaitAct = !1,\n isFlushing = !1,\n queueSeveralMicrotasks =\n \"function\" === typeof queueMicrotask\n ? function (callback) {\n queueMicrotask(function () {\n return queueMicrotask(callback);\n });\n }\n : enqueueTask;\n deprecatedAPIs = Object.freeze({\n __proto__: null,\n c: function (size) {\n return resolveDispatcher().useMemoCache(size);\n }\n });\n exports.Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n };\n exports.Component = Component;\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.Profiler = REACT_PROFILER_TYPE;\n exports.PureComponent = PureComponent;\n exports.StrictMode = REACT_STRICT_MODE_TYPE;\n exports.Suspense = REACT_SUSPENSE_TYPE;\n exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\n exports.__COMPILER_RUNTIME = deprecatedAPIs;\n exports.act = function (callback) {\n var prevActQueue = ReactSharedInternals.actQueue,\n prevActScopeDepth = actScopeDepth;\n actScopeDepth++;\n var queue = (ReactSharedInternals.actQueue =\n null !== prevActQueue ? prevActQueue : []),\n didAwaitActCall = !1;\n try {\n var result = callback();\n } catch (error) {\n ReactSharedInternals.thrownErrors.push(error);\n }\n if (0 < ReactSharedInternals.thrownErrors.length)\n throw (\n (popActScope(prevActQueue, prevActScopeDepth),\n (callback = aggregateErrors(ReactSharedInternals.thrownErrors)),\n (ReactSharedInternals.thrownErrors.length = 0),\n callback)\n );\n if (\n null !== result &&\n \"object\" === typeof result &&\n \"function\" === typeof result.then\n ) {\n var thenable = result;\n queueSeveralMicrotasks(function () {\n didAwaitActCall ||\n didWarnNoAwaitAct ||\n ((didWarnNoAwaitAct = !0),\n console.error(\n \"You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);\"\n ));\n });\n return {\n then: function (resolve, reject) {\n didAwaitActCall = !0;\n thenable.then(\n function (returnValue) {\n popActScope(prevActQueue, prevActScopeDepth);\n if (0 === prevActScopeDepth) {\n try {\n flushActQueue(queue),\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(\n returnValue,\n resolve,\n reject\n );\n });\n } catch (error$0) {\n ReactSharedInternals.thrownErrors.push(error$0);\n }\n if (0 < ReactSharedInternals.thrownErrors.length) {\n var _thrownError = aggregateErrors(\n ReactSharedInternals.thrownErrors\n );\n ReactSharedInternals.thrownErrors.length = 0;\n reject(_thrownError);\n }\n } else resolve(returnValue);\n },\n function (error) {\n popActScope(prevActQueue, prevActScopeDepth);\n 0 < ReactSharedInternals.thrownErrors.length\n ? ((error = aggregateErrors(\n ReactSharedInternals.thrownErrors\n )),\n (ReactSharedInternals.thrownErrors.length = 0),\n reject(error))\n : reject(error);\n }\n );\n }\n };\n }\n var returnValue$jscomp$0 = result;\n popActScope(prevActQueue, prevActScopeDepth);\n 0 === prevActScopeDepth &&\n (flushActQueue(queue),\n 0 !== queue.length &&\n queueSeveralMicrotasks(function () {\n didAwaitActCall ||\n didWarnNoAwaitAct ||\n ((didWarnNoAwaitAct = !0),\n console.error(\n \"A component suspended inside an `act` scope, but the `act` call was not awaited. When testing React components that depend on asynchronous data, you must await the result:\\n\\nawait act(() => ...)\"\n ));\n }),\n (ReactSharedInternals.actQueue = null));\n if (0 < ReactSharedInternals.thrownErrors.length)\n throw (\n ((callback = aggregateErrors(ReactSharedInternals.thrownErrors)),\n (ReactSharedInternals.thrownErrors.length = 0),\n callback)\n );\n return {\n then: function (resolve, reject) {\n didAwaitActCall = !0;\n 0 === prevActScopeDepth\n ? ((ReactSharedInternals.actQueue = queue),\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(\n returnValue$jscomp$0,\n resolve,\n reject\n );\n }))\n : resolve(returnValue$jscomp$0);\n }\n };\n };\n exports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n };\n exports.captureOwnerStack = function () {\n var getCurrentStack = ReactSharedInternals.getCurrentStack;\n return null === getCurrentStack ? null : getCurrentStack();\n };\n exports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" +\n element +\n \".\"\n );\n var props = assign({}, element.props),\n key = element.key,\n owner = element._owner;\n if (null != config) {\n var JSCompiler_inline_result;\n a: {\n if (\n hasOwnProperty.call(config, \"ref\") &&\n (JSCompiler_inline_result = Object.getOwnPropertyDescriptor(\n config,\n \"ref\"\n ).get) &&\n JSCompiler_inline_result.isReactWarning\n ) {\n JSCompiler_inline_result = !1;\n break a;\n }\n JSCompiler_inline_result = void 0 !== config.ref;\n }\n JSCompiler_inline_result && (owner = getOwner());\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (key = \"\" + config.key));\n for (propName in config)\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n }\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n JSCompiler_inline_result = Array(propName);\n for (var i = 0; i < propName; i++)\n JSCompiler_inline_result[i] = arguments[i + 2];\n props.children = JSCompiler_inline_result;\n }\n props = ReactElement(\n element.type,\n key,\n void 0,\n void 0,\n owner,\n props,\n element._debugStack,\n element._debugTask\n );\n for (key = 2; key < arguments.length; key++)\n (owner = arguments[key]),\n isValidElement(owner) && owner._store && (owner._store.validated = 1);\n return props;\n };\n exports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n defaultValue._currentRenderer = null;\n defaultValue._currentRenderer2 = null;\n return defaultValue;\n };\n exports.createElement = function (type, config, children) {\n for (var i = 2; i < arguments.length; i++) {\n var node = arguments[i];\n isValidElement(node) && node._store && (node._store.validated = 1);\n }\n i = {};\n node = null;\n if (null != config)\n for (propName in (didWarnAboutOldJSXRuntime ||\n !(\"__self\" in config) ||\n \"key\" in config ||\n ((didWarnAboutOldJSXRuntime = !0),\n console.warn(\n \"Your app (or one of its dependencies) is using an outdated JSX transform. Update to the modern JSX transform for faster performance: https://react.dev/link/new-jsx-transform\"\n )),\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (node = \"\" + config.key)),\n config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (i[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) i.children = children;\n else if (1 < childrenLength) {\n for (\n var childArray = Array(childrenLength), _i = 0;\n _i < childrenLength;\n _i++\n )\n childArray[_i] = arguments[_i + 2];\n Object.freeze && Object.freeze(childArray);\n i.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === i[propName] && (i[propName] = childrenLength[propName]);\n node &&\n defineKeyPropWarningGetter(\n i,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n var propName = 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return ReactElement(\n type,\n node,\n void 0,\n void 0,\n getOwner(),\n i,\n propName ? Error(\"react-stack-top-frame\") : unknownOwnerDebugStack,\n propName ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.createRef = function () {\n var refObject = { current: null };\n Object.seal(refObject);\n return refObject;\n };\n exports.forwardRef = function (render) {\n null != render && render.$$typeof === REACT_MEMO_TYPE\n ? console.error(\n \"forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...)).\"\n )\n : \"function\" !== typeof render\n ? console.error(\n \"forwardRef requires a render function but was given %s.\",\n null === render ? \"null\" : typeof render\n )\n : 0 !== render.length &&\n 2 !== render.length &&\n console.error(\n \"forwardRef render functions accept exactly two parameters: props and ref. %s\",\n 1 === render.length\n ? \"Did you forget to use the ref parameter?\"\n : \"Any additional parameter will be undefined.\"\n );\n null != render &&\n null != render.defaultProps &&\n console.error(\n \"forwardRef render functions do not support defaultProps. Did you accidentally pass a React component?\"\n );\n var elementType = { $$typeof: REACT_FORWARD_REF_TYPE, render: render },\n ownName;\n Object.defineProperty(elementType, \"displayName\", {\n enumerable: !1,\n configurable: !0,\n get: function () {\n return ownName;\n },\n set: function (name) {\n ownName = name;\n render.name ||\n render.displayName ||\n (Object.defineProperty(render, \"name\", { value: name }),\n (render.displayName = name));\n }\n });\n return elementType;\n };\n exports.isValidElement = isValidElement;\n exports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n };\n exports.memo = function (type, compare) {\n null == type &&\n console.error(\n \"memo: The first argument must be a component. Instead received: %s\",\n null === type ? \"null\" : typeof type\n );\n compare = {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n var ownName;\n Object.defineProperty(compare, \"displayName\", {\n enumerable: !1,\n configurable: !0,\n get: function () {\n return ownName;\n },\n set: function (name) {\n ownName = name;\n type.name ||\n type.displayName ||\n (Object.defineProperty(type, \"name\", { value: name }),\n (type.displayName = name));\n }\n });\n return compare;\n };\n exports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n currentTransition._updatedFibers = new Set();\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n null === prevTransition &&\n currentTransition._updatedFibers &&\n ((scope = currentTransition._updatedFibers.size),\n currentTransition._updatedFibers.clear(),\n 10 < scope &&\n console.warn(\n \"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.\"\n )),\n (ReactSharedInternals.T = prevTransition);\n }\n };\n exports.unstable_useCacheRefresh = function () {\n return resolveDispatcher().useCacheRefresh();\n };\n exports.use = function (usable) {\n return resolveDispatcher().use(usable);\n };\n exports.useActionState = function (action, initialState, permalink) {\n return resolveDispatcher().useActionState(\n action,\n initialState,\n permalink\n );\n };\n exports.useCallback = function (callback, deps) {\n return resolveDispatcher().useCallback(callback, deps);\n };\n exports.useContext = function (Context) {\n var dispatcher = resolveDispatcher();\n Context.$$typeof === REACT_CONSUMER_TYPE &&\n console.error(\n \"Calling useContext(Context.Consumer) is not supported and will cause bugs. Did you mean to call useContext(Context) instead?\"\n );\n return dispatcher.useContext(Context);\n };\n exports.useDebugValue = function (value, formatterFn) {\n return resolveDispatcher().useDebugValue(value, formatterFn);\n };\n exports.useDeferredValue = function (value, initialValue) {\n return resolveDispatcher().useDeferredValue(value, initialValue);\n };\n exports.useEffect = function (create, createDeps, update) {\n null == create &&\n console.warn(\n \"React Hook useEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n var dispatcher = resolveDispatcher();\n if (\"function\" === typeof update)\n throw Error(\n \"useEffect CRUD overload is not enabled in this build of React.\"\n );\n return dispatcher.useEffect(create, createDeps);\n };\n exports.useId = function () {\n return resolveDispatcher().useId();\n };\n exports.useImperativeHandle = function (ref, create, deps) {\n return resolveDispatcher().useImperativeHandle(ref, create, deps);\n };\n exports.useInsertionEffect = function (create, deps) {\n null == create &&\n console.warn(\n \"React Hook useInsertionEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n return resolveDispatcher().useInsertionEffect(create, deps);\n };\n exports.useLayoutEffect = function (create, deps) {\n null == create &&\n console.warn(\n \"React Hook useLayoutEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n return resolveDispatcher().useLayoutEffect(create, deps);\n };\n exports.useMemo = function (create, deps) {\n return resolveDispatcher().useMemo(create, deps);\n };\n exports.useOptimistic = function (passthrough, reducer) {\n return resolveDispatcher().useOptimistic(passthrough, reducer);\n };\n exports.useReducer = function (reducer, initialArg, init) {\n return resolveDispatcher().useReducer(reducer, initialArg, init);\n };\n exports.useRef = function (initialValue) {\n return resolveDispatcher().useRef(initialValue);\n };\n exports.useState = function (initialState) {\n return resolveDispatcher().useState(initialState);\n };\n exports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n ) {\n return resolveDispatcher().useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n };\n exports.useTransition = function () {\n return resolveDispatcher().useTransition();\n };\n exports.version = \"19.1.0\";\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","const DYNAMIC_ERROR_CODE = 'DYNAMIC_SERVER_USAGE'\n\nexport class DynamicServerError extends Error {\n digest: typeof DYNAMIC_ERROR_CODE = DYNAMIC_ERROR_CODE\n\n constructor(public readonly description: string) {\n super(`Dynamic server usage: ${description}`)\n }\n}\n\nexport function isDynamicServerError(err: unknown): err is DynamicServerError {\n if (\n typeof err !== 'object' ||\n err === null ||\n !('digest' in err) ||\n typeof err.digest !== 'string'\n ) {\n return false\n }\n\n return err.digest === DYNAMIC_ERROR_CODE\n}\n","const NEXT_STATIC_GEN_BAILOUT = 'NEXT_STATIC_GEN_BAILOUT'\n\nexport class StaticGenBailoutError extends Error {\n public readonly code = NEXT_STATIC_GEN_BAILOUT\n}\n\nexport function isStaticGenBailoutError(\n error: unknown\n): error is StaticGenBailoutError {\n if (typeof error !== 'object' || error === null || !('code' in error)) {\n return false\n }\n\n return error.code === NEXT_STATIC_GEN_BAILOUT\n}\n","export function isHangingPromiseRejectionError(\n err: unknown\n): err is HangingPromiseRejectionError {\n if (typeof err !== 'object' || err === null || !('digest' in err)) {\n return false\n }\n\n return err.digest === HANGING_PROMISE_REJECTION\n}\n\nconst HANGING_PROMISE_REJECTION = 'HANGING_PROMISE_REJECTION'\n\nclass HangingPromiseRejectionError extends Error {\n public readonly digest = HANGING_PROMISE_REJECTION\n\n constructor(public readonly expression: string) {\n super(\n `During prerendering, ${expression} rejects when the prerender is complete. Typically these errors are handled by React but if you move ${expression} to a different context by using \\`setTimeout\\`, \\`after\\`, or similar functions you may observe this error and you should handle it in that context.`\n )\n }\n}\n\ntype AbortListeners = Array<(err: unknown) => void>\nconst abortListenersBySignal = new WeakMap<AbortSignal, AbortListeners>()\n\n/**\n * This function constructs a promise that will never resolve. This is primarily\n * useful for dynamicIO where we use promise resolution timing to determine which\n * parts of a render can be included in a prerender.\n *\n * @internal\n */\nexport function makeHangingPromise<T>(\n signal: AbortSignal,\n expression: string\n): Promise<T> {\n if (signal.aborted) {\n return Promise.reject(new HangingPromiseRejectionError(expression))\n } else {\n const hangingPromise = new Promise<T>((_, reject) => {\n const boundRejection = reject.bind(\n null,\n new HangingPromiseRejectionError(expression)\n )\n let currentListeners = abortListenersBySignal.get(signal)\n if (currentListeners) {\n currentListeners.push(boundRejection)\n } else {\n const listeners = [boundRejection]\n abortListenersBySignal.set(signal, listeners)\n signal.addEventListener(\n 'abort',\n () => {\n for (let i = 0; i < listeners.length; i++) {\n listeners[i]()\n }\n },\n { once: true }\n )\n }\n })\n // We are fine if no one actually awaits this promise. We shouldn't consider this an unhandled rejection so\n // we attach a noop catch handler here to suppress this warning. If you actually await somewhere or construct\n // your own promise out of it you'll need to ensure you handle the error when it rejects.\n hangingPromise.catch(ignoreReject)\n return hangingPromise\n }\n}\n\nfunction ignoreReject() {}\n","export const METADATA_BOUNDARY_NAME = '__next_metadata_boundary__'\nexport const VIEWPORT_BOUNDARY_NAME = '__next_viewport_boundary__'\nexport const OUTLET_BOUNDARY_NAME = '__next_outlet_boundary__'\n","export type ScheduledFn<T = void> = () => T | PromiseLike<T>\nexport type SchedulerFn<T = void> = (cb: ScheduledFn<T>) => void\n\n/**\n * Schedules a function to be called on the next tick after the other promises\n * have been resolved.\n *\n * @param cb the function to schedule\n */\nexport const scheduleOnNextTick = <T = void>(cb: ScheduledFn<T>): void => {\n // We use Promise.resolve().then() here so that the operation is scheduled at\n // the end of the promise job queue, we then add it to the next process tick\n // to ensure it's evaluated afterwards.\n //\n // This was inspired by the implementation of the DataLoader interface: https://github.com/graphql/dataloader/blob/d336bd15282664e0be4b4a657cb796f09bafbc6b/src/index.js#L213-L255\n //\n Promise.resolve().then(() => {\n if (process.env.NEXT_RUNTIME === 'edge') {\n setTimeout(cb, 0)\n } else {\n process.nextTick(cb)\n }\n })\n}\n\n/**\n * Schedules a function to be called using `setImmediate` or `setTimeout` if\n * `setImmediate` is not available (like in the Edge runtime).\n *\n * @param cb the function to schedule\n */\nexport const scheduleImmediate = <T = void>(cb: ScheduledFn<T>): void => {\n if (process.env.NEXT_RUNTIME === 'edge') {\n setTimeout(cb, 0)\n } else {\n setImmediate(cb)\n }\n}\n\n/**\n * returns a promise than resolves in a future task. There is no guarantee that the task it resolves in\n * will be the next task but if you await it you can at least be sure that the current task is over and\n * most usefully that the entire microtask queue of the current task has been emptied.\n */\nexport function atLeastOneTask() {\n return new Promise<void>((resolve) => scheduleImmediate(resolve))\n}\n\n/**\n * This utility function is extracted to make it easier to find places where we are doing\n * specific timing tricks to try to schedule work after React has rendered. This is especially\n * important at the moment because Next.js uses the edge builds of React which use setTimeout to\n * schedule work when you might expect that something like setImmediate would do the trick.\n *\n * Long term we should switch to the node versions of React rendering when possible and then\n * update this to use setImmediate rather than setTimeout\n */\nexport function waitAtLeastOneReactRenderTask(): Promise<void> {\n if (process.env.NEXT_RUNTIME === 'edge') {\n return new Promise((r) => setTimeout(r, 0))\n } else {\n return new Promise((r) => setImmediate(r))\n }\n}\n","/**\n * The functions provided by this module are used to communicate certain properties\n * about the currently running code so that Next.js can make decisions on how to handle\n * the current execution in different rendering modes such as pre-rendering, resuming, and SSR.\n *\n * Today Next.js treats all code as potentially static. Certain APIs may only make sense when dynamically rendering.\n * Traditionally this meant deopting the entire render to dynamic however with PPR we can now deopt parts\n * of a React tree as dynamic while still keeping other parts static. There are really two different kinds of\n * Dynamic indications.\n *\n * The first is simply an intention to be dynamic. unstable_noStore is an example of this where\n * the currently executing code simply declares that the current scope is dynamic but if you use it\n * inside unstable_cache it can still be cached. This type of indication can be removed if we ever\n * make the default dynamic to begin with because the only way you would ever be static is inside\n * a cache scope which this indication does not affect.\n *\n * The second is an indication that a dynamic data source was read. This is a stronger form of dynamic\n * because it means that it is inappropriate to cache this at all. using a dynamic data source inside\n * unstable_cache should error. If you want to use some dynamic data inside unstable_cache you should\n * read that data outside the cache and pass it in as an argument to the cached function.\n */\n\nimport type { WorkStore } from '../app-render/work-async-storage.external'\nimport type {\n WorkUnitStore,\n RequestStore,\n PrerenderStoreLegacy,\n PrerenderStoreModern,\n} from '../app-render/work-unit-async-storage.external'\n\n// Once postpone is in stable we should switch to importing the postpone export directly\nimport React from 'react'\n\nimport { DynamicServerError } from '../../client/components/hooks-server-context'\nimport { StaticGenBailoutError } from '../../client/components/static-generation-bailout'\nimport { workUnitAsyncStorage } from './work-unit-async-storage.external'\nimport { workAsyncStorage } from '../app-render/work-async-storage.external'\nimport { makeHangingPromise } from '../dynamic-rendering-utils'\nimport {\n METADATA_BOUNDARY_NAME,\n VIEWPORT_BOUNDARY_NAME,\n OUTLET_BOUNDARY_NAME,\n} from '../../lib/metadata/metadata-constants'\nimport { scheduleOnNextTick } from '../../lib/scheduler'\n\nconst hasPostpone = typeof React.unstable_postpone === 'function'\n\nexport type DynamicAccess = {\n /**\n * If debugging, this will contain the stack trace of where the dynamic access\n * occurred. This is used to provide more information to the user about why\n * their page is being rendered dynamically.\n */\n stack?: string\n\n /**\n * The expression that was accessed dynamically.\n */\n expression: string\n}\n\n// Stores dynamic reasons used during an RSC render.\nexport type DynamicTrackingState = {\n /**\n * When true, stack information will also be tracked during dynamic access.\n */\n readonly isDebugDynamicAccesses: boolean | undefined\n\n /**\n * The dynamic accesses that occurred during the render.\n */\n readonly dynamicAccesses: Array<DynamicAccess>\n\n syncDynamicExpression: undefined | string\n syncDynamicErrorWithStack: null | Error\n // Dev only\n syncDynamicLogged?: boolean\n}\n\n// Stores dynamic reasons used during an SSR render.\nexport type DynamicValidationState = {\n hasSuspendedDynamic: boolean\n hasDynamicMetadata: boolean\n hasDynamicViewport: boolean\n hasSyncDynamicErrors: boolean\n dynamicErrors: Array<Error>\n}\n\nexport function createDynamicTrackingState(\n isDebugDynamicAccesses: boolean | undefined\n): DynamicTrackingState {\n return {\n isDebugDynamicAccesses,\n dynamicAccesses: [],\n syncDynamicExpression: undefined,\n syncDynamicErrorWithStack: null,\n }\n}\n\nexport function createDynamicValidationState(): DynamicValidationState {\n return {\n hasSuspendedDynamic: false,\n hasDynamicMetadata: false,\n hasDynamicViewport: false,\n hasSyncDynamicErrors: false,\n dynamicErrors: [],\n }\n}\n\nexport function getFirstDynamicReason(\n trackingState: DynamicTrackingState\n): undefined | string {\n return trackingState.dynamicAccesses[0]?.expression\n}\n\n/**\n * This function communicates that the current scope should be treated as dynamic.\n *\n * In most cases this function is a no-op but if called during\n * a PPR prerender it will postpone the current sub-tree and calling\n * it during a normal prerender will cause the entire prerender to abort\n */\nexport function markCurrentScopeAsDynamic(\n store: WorkStore,\n workUnitStore: undefined | Exclude<WorkUnitStore, PrerenderStoreModern>,\n expression: string\n): void {\n if (workUnitStore) {\n if (\n workUnitStore.type === 'cache' ||\n workUnitStore.type === 'unstable-cache'\n ) {\n // inside cache scopes marking a scope as dynamic has no effect because the outer cache scope\n // creates a cache boundary. This is subtly different from reading a dynamic data source which is\n // forbidden inside a cache scope.\n return\n }\n }\n\n // If we're forcing dynamic rendering or we're forcing static rendering, we\n // don't need to do anything here because the entire page is already dynamic\n // or it's static and it should not throw or postpone here.\n if (store.forceDynamic || store.forceStatic) return\n\n if (store.dynamicShouldError) {\n throw new StaticGenBailoutError(\n `Route ${store.route} with \\`dynamic = \"error\"\\` couldn't be rendered statically because it used \\`${expression}\\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`\n )\n }\n\n if (workUnitStore) {\n if (workUnitStore.type === 'prerender-ppr') {\n postponeWithTracking(\n store.route,\n expression,\n workUnitStore.dynamicTracking\n )\n } else if (workUnitStore.type === 'prerender-legacy') {\n workUnitStore.revalidate = 0\n\n // We aren't prerendering but we are generating a static page. We need to bail out of static generation\n const err = new DynamicServerError(\n `Route ${store.route} couldn't be rendered statically because it used ${expression}. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`\n )\n store.dynamicUsageDescription = expression\n store.dynamicUsageStack = err.stack\n\n throw err\n } else if (\n process.env.NODE_ENV === 'development' &&\n workUnitStore &&\n workUnitStore.type === 'request'\n ) {\n workUnitStore.usedDynamic = true\n }\n }\n}\n\n/**\n * This function communicates that some dynamic path parameter was read. This\n * differs from the more general `trackDynamicDataAccessed` in that it is will\n * not error when `dynamic = \"error\"` is set.\n *\n * @param store The static generation store\n * @param expression The expression that was accessed dynamically\n */\nexport function trackFallbackParamAccessed(\n store: WorkStore,\n expression: string\n): void {\n const prerenderStore = workUnitAsyncStorage.getStore()\n if (!prerenderStore || prerenderStore.type !== 'prerender-ppr') return\n\n postponeWithTracking(store.route, expression, prerenderStore.dynamicTracking)\n}\n\n/**\n * This function is meant to be used when prerendering without dynamicIO or PPR.\n * When called during a build it will cause Next.js to consider the route as dynamic.\n *\n * @internal\n */\nexport function throwToInterruptStaticGeneration(\n expression: string,\n store: WorkStore,\n prerenderStore: PrerenderStoreLegacy\n): never {\n // We aren't prerendering but we are generating a static page. We need to bail out of static generation\n const err = new DynamicServerError(\n `Route ${store.route} couldn't be rendered statically because it used \\`${expression}\\`. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`\n )\n\n prerenderStore.revalidate = 0\n\n store.dynamicUsageDescription = expression\n store.dynamicUsageStack = err.stack\n\n throw err\n}\n\n/**\n * This function should be used to track whether something dynamic happened even when\n * we are in a dynamic render. This is useful for Dev where all renders are dynamic but\n * we still track whether dynamic APIs were accessed for helpful messaging\n *\n * @internal\n */\nexport function trackDynamicDataInDynamicRender(\n _store: WorkStore,\n workUnitStore: void | WorkUnitStore\n) {\n if (workUnitStore) {\n if (\n workUnitStore.type === 'cache' ||\n workUnitStore.type === 'unstable-cache'\n ) {\n // inside cache scopes marking a scope as dynamic has no effect because the outer cache scope\n // creates a cache boundary. This is subtly different from reading a dynamic data source which is\n // forbidden inside a cache scope.\n return\n }\n if (\n workUnitStore.type === 'prerender' ||\n workUnitStore.type === 'prerender-legacy'\n ) {\n workUnitStore.revalidate = 0\n }\n if (\n process.env.NODE_ENV === 'development' &&\n workUnitStore.type === 'request'\n ) {\n workUnitStore.usedDynamic = true\n }\n }\n}\n\n// Despite it's name we don't actually abort unless we have a controller to call abort on\n// There are times when we let a prerender run long to discover caches where we want the semantics\n// of tracking dynamic access without terminating the prerender early\nfunction abortOnSynchronousDynamicDataAccess(\n route: string,\n expression: string,\n prerenderStore: PrerenderStoreModern\n): void {\n const reason = `Route ${route} needs to bail out of prerendering at this point because it used ${expression}.`\n\n const error = createPrerenderInterruptedError(reason)\n\n prerenderStore.controller.abort(error)\n\n const dynamicTracking = prerenderStore.dynamicTracking\n if (dynamicTracking) {\n dynamicTracking.dynamicAccesses.push({\n // When we aren't debugging, we don't need to create another error for the\n // stack trace.\n stack: dynamicTracking.isDebugDynamicAccesses\n ? new Error().stack\n : undefined,\n expression,\n })\n }\n}\n\nexport function abortOnSynchronousPlatformIOAccess(\n route: string,\n expression: string,\n errorWithStack: Error,\n prerenderStore: PrerenderStoreModern\n): void {\n const dynamicTracking = prerenderStore.dynamicTracking\n if (dynamicTracking) {\n if (dynamicTracking.syncDynamicErrorWithStack === null) {\n dynamicTracking.syncDynamicExpression = expression\n dynamicTracking.syncDynamicErrorWithStack = errorWithStack\n }\n }\n abortOnSynchronousDynamicDataAccess(route, expression, prerenderStore)\n}\n\nexport function trackSynchronousPlatformIOAccessInDev(\n requestStore: RequestStore\n): void {\n // We don't actually have a controller to abort but we do the semantic equivalent by\n // advancing the request store out of prerender mode\n requestStore.prerenderPhase = false\n}\n\n/**\n * use this function when prerendering with dynamicIO. If we are doing a\n * prospective prerender we don't actually abort because we want to discover\n * all caches for the shell. If this is the actual prerender we do abort.\n *\n * This function accepts a prerenderStore but the caller should ensure we're\n * actually running in dynamicIO mode.\n *\n * @internal\n */\nexport function abortAndThrowOnSynchronousRequestDataAccess(\n route: string,\n expression: string,\n errorWithStack: Error,\n prerenderStore: PrerenderStoreModern\n): never {\n const prerenderSignal = prerenderStore.controller.signal\n if (prerenderSignal.aborted === false) {\n // TODO it would be better to move this aborted check into the callsite so we can avoid making\n // the error object when it isn't relevant to the aborting of the prerender however\n // since we need the throw semantics regardless of whether we abort it is easier to land\n // this way. See how this was handled with `abortOnSynchronousPlatformIOAccess` for a closer\n // to ideal implementation\n const dynamicTracking = prerenderStore.dynamicTracking\n if (dynamicTracking) {\n if (dynamicTracking.syncDynamicErrorWithStack === null) {\n dynamicTracking.syncDynamicExpression = expression\n dynamicTracking.syncDynamicErrorWithStack = errorWithStack\n if (prerenderStore.validating === true) {\n // We always log Request Access in dev at the point of calling the function\n // So we mark the dynamic validation as not requiring it to be printed\n dynamicTracking.syncDynamicLogged = true\n }\n }\n }\n abortOnSynchronousDynamicDataAccess(route, expression, prerenderStore)\n }\n throw createPrerenderInterruptedError(\n `Route ${route} needs to bail out of prerendering at this point because it used ${expression}.`\n )\n}\n\n// For now these implementations are the same so we just reexport\nexport const trackSynchronousRequestDataAccessInDev =\n trackSynchronousPlatformIOAccessInDev\n\n/**\n * This component will call `React.postpone` that throws the postponed error.\n */\ntype PostponeProps = {\n reason: string\n route: string\n}\nexport function Postpone({ reason, route }: PostponeProps): never {\n const prerenderStore = workUnitAsyncStorage.getStore()\n const dynamicTracking =\n prerenderStore && prerenderStore.type === 'prerender-ppr'\n ? prerenderStore.dynamicTracking\n : null\n postponeWithTracking(route, reason, dynamicTracking)\n}\n\nexport function postponeWithTracking(\n route: string,\n expression: string,\n dynamicTracking: null | DynamicTrackingState\n): never {\n assertPostpone()\n if (dynamicTracking) {\n dynamicTracking.dynamicAccesses.push({\n // When we aren't debugging, we don't need to create another error for the\n // stack trace.\n stack: dynamicTracking.isDebugDynamicAccesses\n ? new Error().stack\n : undefined,\n expression,\n })\n }\n\n React.unstable_postpone(createPostponeReason(route, expression))\n}\n\nfunction createPostponeReason(route: string, expression: string) {\n return (\n `Route ${route} needs to bail out of prerendering at this point because it used ${expression}. ` +\n `React throws this special object to indicate where. It should not be caught by ` +\n `your own try/catch. Learn more: https://nextjs.org/docs/messages/ppr-caught-error`\n )\n}\n\nexport function isDynamicPostpone(err: unknown) {\n if (\n typeof err === 'object' &&\n err !== null &&\n typeof (err as any).message === 'string'\n ) {\n return isDynamicPostponeReason((err as any).message)\n }\n return false\n}\n\nfunction isDynamicPostponeReason(reason: string) {\n return (\n reason.includes(\n 'needs to bail out of prerendering at this point because it used'\n ) &&\n reason.includes(\n 'Learn more: https://nextjs.org/docs/messages/ppr-caught-error'\n )\n )\n}\n\nif (isDynamicPostponeReason(createPostponeReason('%%%', '^^^')) === false) {\n throw new Error(\n 'Invariant: isDynamicPostpone misidentified a postpone reason. This is a bug in Next.js'\n )\n}\n\nconst NEXT_PRERENDER_INTERRUPTED = 'NEXT_PRERENDER_INTERRUPTED'\n\nfunction createPrerenderInterruptedError(message: string): Error {\n const error = new Error(message)\n ;(error as any).digest = NEXT_PRERENDER_INTERRUPTED\n return error\n}\n\ntype DigestError = Error & {\n digest: string\n}\n\nexport function isPrerenderInterruptedError(\n error: unknown\n): error is DigestError {\n return (\n typeof error === 'object' &&\n error !== null &&\n (error as any).digest === NEXT_PRERENDER_INTERRUPTED &&\n 'name' in error &&\n 'message' in error &&\n error instanceof Error\n )\n}\n\nexport function accessedDynamicData(\n dynamicAccesses: Array<DynamicAccess>\n): boolean {\n return dynamicAccesses.length > 0\n}\n\nexport function consumeDynamicAccess(\n serverDynamic: DynamicTrackingState,\n clientDynamic: DynamicTrackingState\n): DynamicTrackingState['dynamicAccesses'] {\n // We mutate because we only call this once we are no longer writing\n // to the dynamicTrackingState and it's more efficient than creating a new\n // array.\n serverDynamic.dynamicAccesses.push(...clientDynamic.dynamicAccesses)\n return serverDynamic.dynamicAccesses\n}\n\nexport function formatDynamicAPIAccesses(\n dynamicAccesses: Array<DynamicAccess>\n): string[] {\n return dynamicAccesses\n .filter(\n (access): access is Required<DynamicAccess> =>\n typeof access.stack === 'string' && access.stack.length > 0\n )\n .map(({ expression, stack }) => {\n stack = stack\n .split('\\n')\n // Remove the \"Error: \" prefix from the first line of the stack trace as\n // well as the first 4 lines of the stack trace which is the distance\n // from the user code and the `new Error().stack` call.\n .slice(4)\n .filter((line) => {\n // Exclude Next.js internals from the stack trace.\n if (line.includes('node_modules/next/')) {\n return false\n }\n\n // Exclude anonymous functions from the stack trace.\n if (line.includes(' (<anonymous>)')) {\n return false\n }\n\n // Exclude Node.js internals from the stack trace.\n if (line.includes(' (node:')) {\n return false\n }\n\n return true\n })\n .join('\\n')\n return `Dynamic API Usage Debug - ${expression}:\\n${stack}`\n })\n}\n\nfunction assertPostpone() {\n if (!hasPostpone) {\n throw new Error(\n `Invariant: React.unstable_postpone is not defined. This suggests the wrong version of React was loaded. This is a bug in Next.js`\n )\n }\n}\n\n/**\n * This is a bit of a hack to allow us to abort a render using a Postpone instance instead of an Error which changes React's\n * abort semantics slightly.\n */\nexport function createPostponedAbortSignal(reason: string): AbortSignal {\n assertPostpone()\n const controller = new AbortController()\n // We get our hands on a postpone instance by calling postpone and catching the throw\n try {\n React.unstable_postpone(reason)\n } catch (x: unknown) {\n controller.abort(x)\n }\n return controller.signal\n}\n\n/**\n * In a prerender, we may end up with hanging Promises as inputs due them\n * stalling on connection() or because they're loading dynamic data. In that\n * case we need to abort the encoding of arguments since they'll never complete.\n */\nexport function createHangingInputAbortSignal(\n workUnitStore: PrerenderStoreModern\n): AbortSignal {\n const controller = new AbortController()\n\n if (workUnitStore.cacheSignal) {\n // If we have a cacheSignal it means we're in a prospective render. If the input\n // we're waiting on is coming from another cache, we do want to wait for it so that\n // we can resolve this cache entry too.\n workUnitStore.cacheSignal.inputReady().then(() => {\n controller.abort()\n })\n } else {\n // Otherwise we're in the final render and we should already have all our caches\n // filled. We might still be waiting on some microtasks so we wait one tick before\n // giving up. When we give up, we still want to render the content of this cache\n // as deeply as we can so that we can suspend as deeply as possible in the tree\n // or not at all if we don't end up waiting for the input.\n scheduleOnNextTick(() => controller.abort())\n }\n\n return controller.signal\n}\n\nexport function annotateDynamicAccess(\n expression: string,\n prerenderStore: PrerenderStoreModern\n) {\n const dynamicTracking = prerenderStore.dynamicTracking\n if (dynamicTracking) {\n dynamicTracking.dynamicAccesses.push({\n stack: dynamicTracking.isDebugDynamicAccesses\n ? new Error().stack\n : undefined,\n expression,\n })\n }\n}\n\nexport function useDynamicRouteParams(expression: string) {\n const workStore = workAsyncStorage.getStore()\n\n if (\n workStore &&\n workStore.isStaticGeneration &&\n workStore.fallbackRouteParams &&\n workStore.fallbackRouteParams.size > 0\n ) {\n // There are fallback route params, we should track these as dynamic\n // accesses.\n const workUnitStore = workUnitAsyncStorage.getStore()\n if (workUnitStore) {\n // We're prerendering with dynamicIO or PPR or both\n if (workUnitStore.type === 'prerender') {\n // We are in a prerender with dynamicIO semantics\n // We are going to hang here and never resolve. This will cause the currently\n // rendering component to effectively be a dynamic hole\n React.use(makeHangingPromise(workUnitStore.renderSignal, expression))\n } else if (workUnitStore.type === 'prerender-ppr') {\n // We're prerendering with PPR\n postponeWithTracking(\n workStore.route,\n expression,\n workUnitStore.dynamicTracking\n )\n } else if (workUnitStore.type === 'prerender-legacy') {\n throwToInterruptStaticGeneration(expression, workStore, workUnitStore)\n }\n }\n }\n}\n\nconst hasSuspenseRegex = /\\n\\s+at Suspense \\(<anonymous>\\)/\nconst hasMetadataRegex = new RegExp(\n `\\\\n\\\\s+at ${METADATA_BOUNDARY_NAME}[\\\\n\\\\s]`\n)\nconst hasViewportRegex = new RegExp(\n `\\\\n\\\\s+at ${VIEWPORT_BOUNDARY_NAME}[\\\\n\\\\s]`\n)\nconst hasOutletRegex = new RegExp(`\\\\n\\\\s+at ${OUTLET_BOUNDARY_NAME}[\\\\n\\\\s]`)\n\nexport function trackAllowedDynamicAccess(\n route: string,\n componentStack: string,\n dynamicValidation: DynamicValidationState,\n serverDynamic: DynamicTrackingState,\n clientDynamic: DynamicTrackingState\n) {\n if (hasOutletRegex.test(componentStack)) {\n // We don't need to track that this is dynamic. It is only so when something else is also dynamic.\n return\n } else if (hasMetadataRegex.test(componentStack)) {\n dynamicValidation.hasDynamicMetadata = true\n return\n } else if (hasViewportRegex.test(componentStack)) {\n dynamicValidation.hasDynamicViewport = true\n return\n } else if (hasSuspenseRegex.test(componentStack)) {\n dynamicValidation.hasSuspendedDynamic = true\n return\n } else if (\n serverDynamic.syncDynamicErrorWithStack ||\n clientDynamic.syncDynamicErrorWithStack\n ) {\n dynamicValidation.hasSyncDynamicErrors = true\n return\n } else {\n const message = `Route \"${route}\": A component accessed data, headers, params, searchParams, or a short-lived cache without a Suspense boundary nor a \"use cache\" above it. We don't have the exact line number added to error messages yet but you can see which component in the stack below. See more info: https://nextjs.org/docs/messages/next-prerender-missing-suspense`\n const error = createErrorWithComponentStack(message, componentStack)\n dynamicValidation.dynamicErrors.push(error)\n return\n }\n}\n\nfunction createErrorWithComponentStack(\n message: string,\n componentStack: string\n) {\n const error = new Error(message)\n error.stack = 'Error: ' + message + componentStack\n return error\n}\n\nexport function throwIfDisallowedDynamic(\n route: string,\n dynamicValidation: DynamicValidationState,\n serverDynamic: DynamicTrackingState,\n clientDynamic: DynamicTrackingState\n): void {\n let syncError: null | Error\n let syncExpression: undefined | string\n let syncLogged: boolean\n if (serverDynamic.syncDynamicErrorWithStack) {\n syncError = serverDynamic.syncDynamicErrorWithStack\n syncExpression = serverDynamic.syncDynamicExpression!\n syncLogged = serverDynamic.syncDynamicLogged === true\n } else if (clientDynamic.syncDynamicErrorWithStack) {\n syncError = clientDynamic.syncDynamicErrorWithStack\n syncExpression = clientDynamic.syncDynamicExpression!\n syncLogged = clientDynamic.syncDynamicLogged === true\n } else {\n syncError = null\n syncExpression = undefined\n syncLogged = false\n }\n\n if (dynamicValidation.hasSyncDynamicErrors && syncError) {\n if (!syncLogged) {\n // In dev we already log errors about sync dynamic access. But during builds we need to ensure\n // the offending sync error is logged before we exit the build\n console.error(syncError)\n }\n // The actual error should have been logged when the sync access ocurred\n throw new StaticGenBailoutError()\n }\n\n const dynamicErrors = dynamicValidation.dynamicErrors\n if (dynamicErrors.length) {\n for (let i = 0; i < dynamicErrors.length; i++) {\n console.error(dynamicErrors[i])\n }\n\n throw new StaticGenBailoutError()\n }\n\n if (!dynamicValidation.hasSuspendedDynamic) {\n if (dynamicValidation.hasDynamicMetadata) {\n if (syncError) {\n console.error(syncError)\n throw new StaticGenBailoutError(\n `Route \"${route}\" has a \\`generateMetadata\\` that could not finish rendering before ${syncExpression} was used. Follow the instructions in the error for this expression to resolve.`\n )\n }\n throw new StaticGenBailoutError(\n `Route \"${route}\" has a \\`generateMetadata\\` that depends on Request data (\\`cookies()\\`, etc...) or external data (\\`fetch(...)\\`, etc...) but the rest of the route was static or only used cached data (\\`\"use cache\"\\`). If you expected this route to be prerenderable update your \\`generateMetadata\\` to not use Request data and only use cached external data. Otherwise, add \\`await connection()\\` somewhere within this route to indicate explicitly it should not be prerendered.`\n )\n } else if (dynamicValidation.hasDynamicViewport) {\n if (syncError) {\n console.error(syncError)\n throw new StaticGenBailoutError(\n `Route \"${route}\" has a \\`generateViewport\\` that could not finish rendering before ${syncExpression} was used. Follow the instructions in the error for this expression to resolve.`\n )\n }\n throw new StaticGenBailoutError(\n `Route \"${route}\" has a \\`generateViewport\\` that depends on Request data (\\`cookies()\\`, etc...) or external data (\\`fetch(...)\\`, etc...) but the rest of the route was static or only used cached data (\\`\"use cache\"\\`). If you expected this route to be prerenderable update your \\`generateViewport\\` to not use Request data and only use cached external data. Otherwise, add \\`await connection()\\` somewhere within this route to indicate explicitly it should not be prerendered.`\n )\n }\n }\n}\n","import * as React from 'react'\n\nconst errorRef: { current: null | Error } = { current: null }\n\n// React.cache is currently only available in canary/experimental React channels.\nconst cache =\n typeof React.cache === 'function'\n ? React.cache\n : (fn: (key: unknown) => void) => fn\n\n// When Dynamic IO is enabled, we record these as errors so that they\n// are captured by the dev overlay as it's more critical to fix these\n// when enabled.\nconst logErrorOrWarn = process.env.__NEXT_DYNAMIC_IO\n ? console.error\n : console.warn\n\n// We don't want to dedupe across requests.\n// The developer might've just attempted to fix the warning so we should warn again if it still happens.\nconst flushCurrentErrorIfNew = cache(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars -- cache key\n (key: unknown) => {\n try {\n logErrorOrWarn(errorRef.current)\n } finally {\n errorRef.current = null\n }\n }\n)\n\n/**\n * Creates a function that logs an error message that is deduped by the userland\n * callsite.\n * This requires no indirection between the call of this function and the userland\n * callsite i.e. there's only a single library frame above this.\n * Do not use on the Client where sourcemaps and ignore listing might be enabled.\n * Only use that for warnings need a fix independent of the callstack.\n *\n * @param getMessage\n * @returns\n */\nexport function createDedupedByCallsiteServerErrorLoggerDev<Args extends any[]>(\n getMessage: (...args: Args) => Error\n) {\n return function logDedupedError(...args: Args) {\n const message = getMessage(...args)\n\n if (process.env.NODE_ENV !== 'production') {\n const callStackFrames = new Error().stack?.split('\\n')\n if (callStackFrames === undefined || callStackFrames.length < 4) {\n logErrorOrWarn(message)\n } else {\n // Error:\n // logDedupedError\n // asyncApiBeingAccessedSynchronously\n // <userland callsite>\n // TODO: This breaks if sourcemaps with ignore lists are enabled.\n const key = callStackFrames[4]\n errorRef.current = message\n flushCurrentErrorIfNew(key)\n }\n } else {\n logErrorOrWarn(message)\n }\n }\n}\n","import type { AfterTaskAsyncStorage } from './after-task-async-storage.external'\nimport { createAsyncLocalStorage } from './async-local-storage'\n\nexport const afterTaskAsyncStorageInstance: AfterTaskAsyncStorage =\n createAsyncLocalStorage()\n","import type { AsyncLocalStorage } from 'async_hooks'\n\n// Share the instance module in the next-shared layer\nimport { afterTaskAsyncStorageInstance as afterTaskAsyncStorage } from './after-task-async-storage-instance' with { 'turbopack-transition': 'next-shared' }\nimport type { WorkUnitStore } from './work-unit-async-storage.external'\n\nexport interface AfterTaskStore {\n /** The phase in which the topmost `after` was called.\n *\n * NOTE: Can be undefined when running `generateStaticParams`,\n * where we only have a `workStore`, no `workUnitStore`.\n */\n readonly rootTaskSpawnPhase: WorkUnitStore['phase'] | undefined\n}\n\nexport type AfterTaskAsyncStorage = AsyncLocalStorage<AfterTaskStore>\n\nexport { afterTaskAsyncStorage }\n","import { StaticGenBailoutError } from '../../client/components/static-generation-bailout'\nimport { afterTaskAsyncStorage } from '../app-render/after-task-async-storage.external'\nimport type { WorkStore } from '../app-render/work-async-storage.external'\n\nexport function throwWithStaticGenerationBailoutError(\n route: string,\n expression: string\n): never {\n throw new StaticGenBailoutError(\n `Route ${route} couldn't be rendered statically because it used ${expression}. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`\n )\n}\n\nexport function throwWithStaticGenerationBailoutErrorWithDynamicError(\n route: string,\n expression: string\n): never {\n throw new StaticGenBailoutError(\n `Route ${route} with \\`dynamic = \"error\"\\` couldn't be rendered statically because it used ${expression}. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`\n )\n}\n\nexport function throwForSearchParamsAccessInUseCache(\n workStore: WorkStore\n): never {\n const error = new Error(\n `Route ${workStore.route} used \"searchParams\" inside \"use cache\". Accessing Dynamic data sources inside a cache scope is not supported. If you need this data inside a cached function use \"searchParams\" outside of the cached function and pass the required dynamic data in as an argument. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`\n )\n\n workStore.invalidUsageError ??= error\n\n throw error\n}\n\nexport function isRequestAPICallableInsideAfter() {\n const afterTaskStore = afterTaskAsyncStorage.getStore()\n return afterTaskStore?.rootTaskSpawnPhase === 'action'\n}\n","import {\n type ReadonlyRequestCookies,\n type ResponseCookies,\n areCookiesMutableInCurrentPhase,\n RequestCookiesAdapter,\n} from '../web/spec-extension/adapters/request-cookies'\nimport { RequestCookies } from '../web/spec-extension/cookies'\nimport { workAsyncStorage } from '../app-render/work-async-storage.external'\nimport {\n workUnitAsyncStorage,\n type PrerenderStoreModern,\n} from '../app-render/work-unit-async-storage.external'\nimport {\n postponeWithTracking,\n abortAndThrowOnSynchronousRequestDataAccess,\n throwToInterruptStaticGeneration,\n trackDynamicDataInDynamicRender,\n trackSynchronousRequestDataAccessInDev,\n} from '../app-render/dynamic-rendering'\nimport { getExpectedRequestStore } from '../app-render/work-unit-async-storage.external'\nimport { StaticGenBailoutError } from '../../client/components/static-generation-bailout'\nimport { makeHangingPromise } from '../dynamic-rendering-utils'\nimport { createDedupedByCallsiteServerErrorLoggerDev } from '../create-deduped-by-callsite-server-error-logger'\nimport { scheduleImmediate } from '../../lib/scheduler'\nimport { isRequestAPICallableInsideAfter } from './utils'\n\n/**\n * In this version of Next.js `cookies()` returns a Promise however you can still reference the properties of the underlying cookies object\n * synchronously to facilitate migration. The `UnsafeUnwrappedCookies` type is added to your code by a codemod that attempts to automatically\n * updates callsites to reflect the new Promise return type. There are some cases where `cookies()` cannot be automatically converted, namely\n * when it is used inside a synchronous function and we can't be sure the function can be made async automatically. In these cases we add an\n * explicit type case to `UnsafeUnwrappedCookies` to enable typescript to allow for the synchronous usage only where it is actually necessary.\n *\n * You should should update these callsites to either be async functions where the `cookies()` value can be awaited or you should call `cookies()`\n * from outside and await the return value before passing it into this function.\n *\n * You can find instances that require manual migration by searching for `UnsafeUnwrappedCookies` in your codebase or by search for a comment that\n * starts with `@next-codemod-error`.\n *\n * In a future version of Next.js `cookies()` will only return a Promise and you will not be able to access the underlying cookies object directly\n * without awaiting the return value first. When this change happens the type `UnsafeUnwrappedCookies` will be updated to reflect that is it no longer\n * usable.\n *\n * This type is marked deprecated to help identify it as target for refactoring away.\n *\n * @deprecated\n */\nexport type UnsafeUnwrappedCookies = ReadonlyRequestCookies\n\nexport function cookies(): Promise<ReadonlyRequestCookies> {\n const callingExpression = 'cookies'\n const workStore = workAsyncStorage.getStore()\n const workUnitStore = workUnitAsyncStorage.getStore()\n\n if (workStore) {\n if (\n workUnitStore &&\n workUnitStore.phase === 'after' &&\n !isRequestAPICallableInsideAfter()\n ) {\n throw new Error(\n // TODO(after): clarify that this only applies to pages?\n `Route ${workStore.route} used \"cookies\" inside \"after(...)\". This is not supported. If you need this data inside an \"after\" callback, use \"cookies\" outside of the callback. See more info here: https://nextjs.org/docs/canary/app/api-reference/functions/after`\n )\n }\n\n if (workStore.forceStatic) {\n // When using forceStatic we override all other logic and always just return an empty\n // cookies object without tracking\n const underlyingCookies = createEmptyCookies()\n return makeUntrackedExoticCookies(underlyingCookies)\n }\n\n if (workUnitStore) {\n if (workUnitStore.type === 'cache') {\n throw new Error(\n `Route ${workStore.route} used \"cookies\" inside \"use cache\". Accessing Dynamic data sources inside a cache scope is not supported. If you need this data inside a cached function use \"cookies\" outside of the cached function and pass the required dynamic data in as an argument. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`\n )\n } else if (workUnitStore.type === 'unstable-cache') {\n throw new Error(\n `Route ${workStore.route} used \"cookies\" inside a function cached with \"unstable_cache(...)\". Accessing Dynamic data sources inside a cache scope is not supported. If you need this data inside a cached function use \"cookies\" outside of the cached function and pass the required dynamic data in as an argument. See more info here: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`\n )\n }\n }\n if (workStore.dynamicShouldError) {\n throw new StaticGenBailoutError(\n `Route ${workStore.route} with \\`dynamic = \"error\"\\` couldn't be rendered statically because it used \\`cookies\\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`\n )\n }\n\n if (workUnitStore) {\n if (workUnitStore.type === 'prerender') {\n // dynamicIO Prerender\n // We don't track dynamic access here because access will be tracked when you access\n // one of the properties of the cookies object.\n return makeDynamicallyTrackedExoticCookies(\n workStore.route,\n workUnitStore\n )\n } else if (workUnitStore.type === 'prerender-ppr') {\n // PPR Prerender (no dynamicIO)\n // We are prerendering with PPR. We need track dynamic access here eagerly\n // to keep continuity with how cookies has worked in PPR without dynamicIO.\n postponeWithTracking(\n workStore.route,\n callingExpression,\n workUnitStore.dynamicTracking\n )\n } else if (workUnitStore.type === 'prerender-legacy') {\n // Legacy Prerender\n // We track dynamic access here so we don't need to wrap the cookies in\n // individual property access tracking.\n throwToInterruptStaticGeneration(\n callingExpression,\n workStore,\n workUnitStore\n )\n }\n }\n // We fall through to the dynamic context below but we still track dynamic access\n // because in dev we can still error for things like using cookies inside a cache context\n trackDynamicDataInDynamicRender(workStore, workUnitStore)\n }\n\n // cookies is being called in a dynamic context\n\n const requestStore = getExpectedRequestStore(callingExpression)\n\n let underlyingCookies: ReadonlyRequestCookies\n\n if (areCookiesMutableInCurrentPhase(requestStore)) {\n // We can't conditionally return different types here based on the context.\n // To avoid confusion, we always return the readonly type here.\n underlyingCookies =\n requestStore.userspaceMutableCookies as unknown as ReadonlyRequestCookies\n } else {\n underlyingCookies = requestStore.cookies\n }\n\n if (process.env.NODE_ENV === 'development' && !workStore?.isPrefetchRequest) {\n return makeUntrackedExoticCookiesWithDevWarnings(\n underlyingCookies,\n workStore?.route\n )\n } else {\n return makeUntrackedExoticCookies(underlyingCookies)\n }\n}\n\nfunction createEmptyCookies(): ReadonlyRequestCookies {\n return RequestCookiesAdapter.seal(new RequestCookies(new Headers({})))\n}\n\ninterface CacheLifetime {}\nconst CachedCookies = new WeakMap<\n CacheLifetime,\n Promise<ReadonlyRequestCookies>\n>()\n\nfunction makeDynamicallyTrackedExoticCookies(\n route: string,\n prerenderStore: PrerenderStoreModern\n): Promise<ReadonlyRequestCookies> {\n const cachedPromise = CachedCookies.get(prerenderStore)\n if (cachedPromise) {\n return cachedPromise\n }\n\n const promise = makeHangingPromise<ReadonlyRequestCookies>(\n prerenderStore.renderSignal,\n '`cookies()`'\n )\n CachedCookies.set(prerenderStore, promise)\n\n Object.defineProperties(promise, {\n [Symbol.iterator]: {\n value: function () {\n const expression = '`cookies()[Symbol.iterator]()`'\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n size: {\n get() {\n const expression = '`cookies().size`'\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n get: {\n value: function get() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().get()`'\n } else {\n expression = `\\`cookies().get(${describeNameArg(arguments[0])})\\``\n }\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n getAll: {\n value: function getAll() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().getAll()`'\n } else {\n expression = `\\`cookies().getAll(${describeNameArg(arguments[0])})\\``\n }\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n has: {\n value: function has() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().has()`'\n } else {\n expression = `\\`cookies().has(${describeNameArg(arguments[0])})\\``\n }\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n set: {\n value: function set() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().set()`'\n } else {\n const arg = arguments[0]\n if (arg) {\n expression = `\\`cookies().set(${describeNameArg(arg)}, ...)\\``\n } else {\n expression = '`cookies().set(...)`'\n }\n }\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n delete: {\n value: function () {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().delete()`'\n } else if (arguments.length === 1) {\n expression = `\\`cookies().delete(${describeNameArg(arguments[0])})\\``\n } else {\n expression = `\\`cookies().delete(${describeNameArg(arguments[0])}, ...)\\``\n }\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n clear: {\n value: function clear() {\n const expression = '`cookies().clear()`'\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n toString: {\n value: function toString() {\n const expression = '`cookies().toString()`'\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n } satisfies CookieExtensions)\n\n return promise\n}\n\nfunction makeUntrackedExoticCookies(\n underlyingCookies: ReadonlyRequestCookies\n): Promise<ReadonlyRequestCookies> {\n const cachedCookies = CachedCookies.get(underlyingCookies)\n if (cachedCookies) {\n return cachedCookies\n }\n\n const promise = Promise.resolve(underlyingCookies)\n CachedCookies.set(underlyingCookies, promise)\n\n Object.defineProperties(promise, {\n [Symbol.iterator]: {\n value: underlyingCookies[Symbol.iterator]\n ? underlyingCookies[Symbol.iterator].bind(underlyingCookies)\n : // TODO this is a polyfill for when the underlying type is ResponseCookies\n // We should remove this and unify our cookies types. We could just let this continue to throw lazily\n // but that's already a hard thing to debug so we may as well implement it consistently. The biggest problem with\n // implementing this in this way is the underlying cookie type is a ResponseCookie and not a RequestCookie and so it\n // has extra properties not available on RequestCookie instances.\n polyfilledResponseCookiesIterator.bind(underlyingCookies),\n },\n size: {\n get(): number {\n return underlyingCookies.size\n },\n },\n get: {\n value: underlyingCookies.get.bind(underlyingCookies),\n },\n getAll: {\n value: underlyingCookies.getAll.bind(underlyingCookies),\n },\n has: {\n value: underlyingCookies.has.bind(underlyingCookies),\n },\n set: {\n value: underlyingCookies.set.bind(underlyingCookies),\n },\n delete: {\n value: underlyingCookies.delete.bind(underlyingCookies),\n },\n clear: {\n value:\n // @ts-expect-error clear is defined in RequestCookies implementation but not in the type\n typeof underlyingCookies.clear === 'function'\n ? // @ts-expect-error clear is defined in RequestCookies implementation but not in the type\n underlyingCookies.clear.bind(underlyingCookies)\n : // TODO this is a polyfill for when the underlying type is ResponseCookies\n // We should remove this and unify our cookies types. We could just let this continue to throw lazily\n // but that's already a hard thing to debug so we may as well implement it consistently. The biggest problem with\n // implementing this in this way is the underlying cookie type is a ResponseCookie and not a RequestCookie and so it\n // has extra properties not available on RequestCookie instances.\n polyfilledResponseCookiesClear.bind(underlyingCookies, promise),\n },\n toString: {\n value: underlyingCookies.toString.bind(underlyingCookies),\n },\n } satisfies CookieExtensions)\n\n return promise\n}\n\nfunction makeUntrackedExoticCookiesWithDevWarnings(\n underlyingCookies: ReadonlyRequestCookies,\n route?: string\n): Promise<ReadonlyRequestCookies> {\n const cachedCookies = CachedCookies.get(underlyingCookies)\n if (cachedCookies) {\n return cachedCookies\n }\n\n const promise = new Promise<ReadonlyRequestCookies>((resolve) =>\n scheduleImmediate(() => resolve(underlyingCookies))\n )\n CachedCookies.set(underlyingCookies, promise)\n\n Object.defineProperties(promise, {\n [Symbol.iterator]: {\n value: function () {\n const expression = '`...cookies()` or similar iteration'\n syncIODev(route, expression)\n return underlyingCookies[Symbol.iterator]\n ? underlyingCookies[Symbol.iterator].apply(\n underlyingCookies,\n arguments as any\n )\n : // TODO this is a polyfill for when the underlying type is ResponseCookies\n // We should remove this and unify our cookies types. We could just let this continue to throw lazily\n // but that's already a hard thing to debug so we may as well implement it consistently. The biggest problem with\n // implementing this in this way is the underlying cookie type is a ResponseCookie and not a RequestCookie and so it\n // has extra properties not available on RequestCookie instances.\n polyfilledResponseCookiesIterator.call(underlyingCookies)\n },\n writable: false,\n },\n size: {\n get(): number {\n const expression = '`cookies().size`'\n syncIODev(route, expression)\n return underlyingCookies.size\n },\n },\n get: {\n value: function get() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().get()`'\n } else {\n expression = `\\`cookies().get(${describeNameArg(arguments[0])})\\``\n }\n syncIODev(route, expression)\n return underlyingCookies.get.apply(underlyingCookies, arguments as any)\n },\n writable: false,\n },\n getAll: {\n value: function getAll() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().getAll()`'\n } else {\n expression = `\\`cookies().getAll(${describeNameArg(arguments[0])})\\``\n }\n syncIODev(route, expression)\n return underlyingCookies.getAll.apply(\n underlyingCookies,\n arguments as any\n )\n },\n writable: false,\n },\n has: {\n value: function get() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().has()`'\n } else {\n expression = `\\`cookies().has(${describeNameArg(arguments[0])})\\``\n }\n syncIODev(route, expression)\n return underlyingCookies.has.apply(underlyingCookies, arguments as any)\n },\n writable: false,\n },\n set: {\n value: function set() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().set()`'\n } else {\n const arg = arguments[0]\n if (arg) {\n expression = `\\`cookies().set(${describeNameArg(arg)}, ...)\\``\n } else {\n expression = '`cookies().set(...)`'\n }\n }\n syncIODev(route, expression)\n return underlyingCookies.set.apply(underlyingCookies, arguments as any)\n },\n writable: false,\n },\n delete: {\n value: function () {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().delete()`'\n } else if (arguments.length === 1) {\n expression = `\\`cookies().delete(${describeNameArg(arguments[0])})\\``\n } else {\n expression = `\\`cookies().delete(${describeNameArg(arguments[0])}, ...)\\``\n }\n syncIODev(route, expression)\n return underlyingCookies.delete.apply(\n underlyingCookies,\n arguments as any\n )\n },\n writable: false,\n },\n clear: {\n value: function clear() {\n const expression = '`cookies().clear()`'\n syncIODev(route, expression)\n // @ts-ignore clear is defined in RequestCookies implementation but not in the type\n return typeof underlyingCookies.clear === 'function'\n ? // @ts-ignore clear is defined in RequestCookies implementation but not in the type\n underlyingCookies.clear.apply(underlyingCookies, arguments)\n : // TODO this is a polyfill for when the underlying type is ResponseCookies\n // We should remove this and unify our cookies types. We could just let this continue to throw lazily\n // but that's already a hard thing to debug so we may as well implement it consistently. The biggest problem with\n // implementing this in this way is the underlying cookie type is a ResponseCookie and not a RequestCookie and so it\n // has extra properties not available on RequestCookie instances.\n polyfilledResponseCookiesClear.call(underlyingCookies, promise)\n },\n writable: false,\n },\n toString: {\n value: function toString() {\n const expression = '`cookies().toString()` or implicit casting'\n syncIODev(route, expression)\n return underlyingCookies.toString.apply(\n underlyingCookies,\n arguments as any\n )\n },\n writable: false,\n },\n } satisfies CookieExtensions)\n\n return promise\n}\n\nfunction describeNameArg(arg: unknown) {\n return typeof arg === 'object' &&\n arg !== null &&\n typeof (arg as any).name === 'string'\n ? `'${(arg as any).name}'`\n : typeof arg === 'string'\n ? `'${arg}'`\n : '...'\n}\n\nfunction syncIODev(route: string | undefined, expression: string) {\n const workUnitStore = workUnitAsyncStorage.getStore()\n if (\n workUnitStore &&\n workUnitStore.type === 'request' &&\n workUnitStore.prerenderPhase === true\n ) {\n // When we're rendering dynamically in dev we need to advance out of the\n // Prerender environment when we read Request data synchronously\n const requestStore = workUnitStore\n trackSynchronousRequestDataAccessInDev(requestStore)\n }\n // In all cases we warn normally\n warnForSyncAccess(route, expression)\n}\n\nconst warnForSyncAccess = createDedupedByCallsiteServerErrorLoggerDev(\n createCookiesAccessError\n)\n\nfunction createCookiesAccessError(\n route: string | undefined,\n expression: string\n) {\n const prefix = route ? `Route \"${route}\" ` : 'This route '\n return new Error(\n `${prefix}used ${expression}. ` +\n `\\`cookies()\\` should be awaited before using its value. ` +\n `Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis`\n )\n}\n\nfunction polyfilledResponseCookiesIterator(\n this: ResponseCookies\n): ReturnType<ReadonlyRequestCookies[typeof Symbol.iterator]> {\n return this.getAll()\n .map((c) => [c.name, c] as [string, any])\n .values()\n}\n\nfunction polyfilledResponseCookiesClear(\n this: ResponseCookies,\n returnable: Promise<ReadonlyRequestCookies>\n): typeof returnable {\n for (const cookie of this.getAll()) {\n this.delete(cookie.name)\n }\n return returnable\n}\n\ntype CookieExtensions = {\n [K in keyof ReadonlyRequestCookies | 'clear']: unknown\n}\n","import type { IncomingHttpHeaders } from 'http'\n\nimport { ReflectAdapter } from './reflect'\n\n/**\n * @internal\n */\nexport class ReadonlyHeadersError extends Error {\n constructor() {\n super(\n 'Headers cannot be modified. Read more: https://nextjs.org/docs/app/api-reference/functions/headers'\n )\n }\n\n public static callable() {\n throw new ReadonlyHeadersError()\n }\n}\n\nexport type ReadonlyHeaders = Headers & {\n /** @deprecated Method unavailable on `ReadonlyHeaders`. Read more: https://nextjs.org/docs/app/api-reference/functions/headers */\n append(...args: any[]): void\n /** @deprecated Method unavailable on `ReadonlyHeaders`. Read more: https://nextjs.org/docs/app/api-reference/functions/headers */\n set(...args: any[]): void\n /** @deprecated Method unavailable on `ReadonlyHeaders`. Read more: https://nextjs.org/docs/app/api-reference/functions/headers */\n delete(...args: any[]): void\n}\nexport class HeadersAdapter extends Headers {\n private readonly headers: IncomingHttpHeaders\n\n constructor(headers: IncomingHttpHeaders) {\n // We've already overridden the methods that would be called, so we're just\n // calling the super constructor to ensure that the instanceof check works.\n super()\n\n this.headers = new Proxy(headers, {\n get(target, prop, receiver) {\n // Because this is just an object, we expect that all \"get\" operations\n // are for properties. If it's a \"get\" for a symbol, we'll just return\n // the symbol.\n if (typeof prop === 'symbol') {\n return ReflectAdapter.get(target, prop, receiver)\n }\n\n const lowercased = prop.toLowerCase()\n\n // Let's find the original casing of the key. This assumes that there is\n // no mixed case keys (e.g. \"Content-Type\" and \"content-type\") in the\n // headers object.\n const original = Object.keys(headers).find(\n (o) => o.toLowerCase() === lowercased\n )\n\n // If the original casing doesn't exist, return undefined.\n if (typeof original === 'undefined') return\n\n // If the original casing exists, return the value.\n return ReflectAdapter.get(target, original, receiver)\n },\n set(target, prop, value, receiver) {\n if (typeof prop === 'symbol') {\n return ReflectAdapter.set(target, prop, value, receiver)\n }\n\n const lowercased = prop.toLowerCase()\n\n // Let's find the original casing of the key. This assumes that there is\n // no mixed case keys (e.g. \"Content-Type\" and \"content-type\") in the\n // headers object.\n const original = Object.keys(headers).find(\n (o) => o.toLowerCase() === lowercased\n )\n\n // If the original casing doesn't exist, use the prop as the key.\n return ReflectAdapter.set(target, original ?? prop, value, receiver)\n },\n has(target, prop) {\n if (typeof prop === 'symbol') return ReflectAdapter.has(target, prop)\n\n const lowercased = prop.toLowerCase()\n\n // Let's find the original casing of the key. This assumes that there is\n // no mixed case keys (e.g. \"Content-Type\" and \"content-type\") in the\n // headers object.\n const original = Object.keys(headers).find(\n (o) => o.toLowerCase() === lowercased\n )\n\n // If the original casing doesn't exist, return false.\n if (typeof original === 'undefined') return false\n\n // If the original casing exists, return true.\n return ReflectAdapter.has(target, original)\n },\n deleteProperty(target, prop) {\n if (typeof prop === 'symbol')\n return ReflectAdapter.deleteProperty(target, prop)\n\n const lowercased = prop.toLowerCase()\n\n // Let's find the original casing of the key. This assumes that there is\n // no mixed case keys (e.g. \"Content-Type\" and \"content-type\") in the\n // headers object.\n const original = Object.keys(headers).find(\n (o) => o.toLowerCase() === lowercased\n )\n\n // If the original casing doesn't exist, return true.\n if (typeof original === 'undefined') return true\n\n // If the original casing exists, delete the property.\n return ReflectAdapter.deleteProperty(target, original)\n },\n })\n }\n\n /**\n * Seals a Headers instance to prevent modification by throwing an error when\n * any mutating method is called.\n */\n public static seal(headers: Headers): ReadonlyHeaders {\n return new Proxy<ReadonlyHeaders>(headers, {\n get(target, prop, receiver) {\n switch (prop) {\n case 'append':\n case 'delete':\n case 'set':\n return ReadonlyHeadersError.callable\n default:\n return ReflectAdapter.get(target, prop, receiver)\n }\n },\n })\n }\n\n /**\n * Merges a header value into a string. This stores multiple values as an\n * array, so we need to merge them into a string.\n *\n * @param value a header value\n * @returns a merged header value (a string)\n */\n private merge(value: string | string[]): string {\n if (Array.isArray(value)) return value.join(', ')\n\n return value\n }\n\n /**\n * Creates a Headers instance from a plain object or a Headers instance.\n *\n * @param headers a plain object or a Headers instance\n * @returns a headers instance\n */\n public static from(headers: IncomingHttpHeaders | Headers): Headers {\n if (headers instanceof Headers) return headers\n\n return new HeadersAdapter(headers)\n }\n\n public append(name: string, value: string): void {\n const existing = this.headers[name]\n if (typeof existing === 'string') {\n this.headers[name] = [existing, value]\n } else if (Array.isArray(existing)) {\n existing.push(value)\n } else {\n this.headers[name] = value\n }\n }\n\n public delete(name: string): void {\n delete this.headers[name]\n }\n\n public get(name: string): string | null {\n const value = this.headers[name]\n if (typeof value !== 'undefined') return this.merge(value)\n\n return null\n }\n\n public has(name: string): boolean {\n return typeof this.headers[name] !== 'undefined'\n }\n\n public set(name: string, value: string): void {\n this.headers[name] = value\n }\n\n public forEach(\n callbackfn: (value: string, name: string, parent: Headers) => void,\n thisArg?: any\n ): void {\n for (const [name, value] of this.entries()) {\n callbackfn.call(thisArg, value, name, this)\n }\n }\n\n public *entries(): HeadersIterator<[string, string]> {\n for (const key of Object.keys(this.headers)) {\n const name = key.toLowerCase()\n // We assert here that this is a string because we got it from the\n // Object.keys() call above.\n const value = this.get(name) as string\n\n yield [name, value] as [string, string]\n }\n }\n\n public *keys(): HeadersIterator<string> {\n for (const key of Object.keys(this.headers)) {\n const name = key.toLowerCase()\n yield name\n }\n }\n\n public *values(): HeadersIterator<string> {\n for (const key of Object.keys(this.headers)) {\n // We assert here that this is a string because we got it from the\n // Object.keys() call above.\n const value = this.get(key) as string\n\n yield value\n }\n }\n\n public [Symbol.iterator](): HeadersIterator<[string, string]> {\n return this.entries()\n }\n}\n","import {\n HeadersAdapter,\n type ReadonlyHeaders,\n} from '../web/spec-extension/adapters/headers'\nimport { workAsyncStorage } from '../app-render/work-async-storage.external'\nimport { getExpectedRequestStore } from '../app-render/work-unit-async-storage.external'\nimport {\n workUnitAsyncStorage,\n type PrerenderStoreModern,\n} from '../app-render/work-unit-async-storage.external'\nimport {\n postponeWithTracking,\n abortAndThrowOnSynchronousRequestDataAccess,\n throwToInterruptStaticGeneration,\n trackDynamicDataInDynamicRender,\n trackSynchronousRequestDataAccessInDev,\n} from '../app-render/dynamic-rendering'\nimport { StaticGenBailoutError } from '../../client/components/static-generation-bailout'\nimport { makeHangingPromise } from '../dynamic-rendering-utils'\nimport { createDedupedByCallsiteServerErrorLoggerDev } from '../create-deduped-by-callsite-server-error-logger'\nimport { scheduleImmediate } from '../../lib/scheduler'\nimport { isRequestAPICallableInsideAfter } from './utils'\n\n/**\n * In this version of Next.js `headers()` returns a Promise however you can still reference the properties of the underlying Headers instance\n * synchronously to facilitate migration. The `UnsafeUnwrappedHeaders` type is added to your code by a codemod that attempts to automatically\n * updates callsites to reflect the new Promise return type. There are some cases where `headers()` cannot be automatically converted, namely\n * when it is used inside a synchronous function and we can't be sure the function can be made async automatically. In these cases we add an\n * explicit type case to `UnsafeUnwrappedHeaders` to enable typescript to allow for the synchronous usage only where it is actually necessary.\n *\n * You should should update these callsites to either be async functions where the `headers()` value can be awaited or you should call `headers()`\n * from outside and await the return value before passing it into this function.\n *\n * You can find instances that require manual migration by searching for `UnsafeUnwrappedHeaders` in your codebase or by search for a comment that\n * starts with `@next-codemod-error`.\n *\n * In a future version of Next.js `headers()` will only return a Promise and you will not be able to access the underlying Headers instance\n * without awaiting the return value first. When this change happens the type `UnsafeUnwrappedHeaders` will be updated to reflect that is it no longer\n * usable.\n *\n * This type is marked deprecated to help identify it as target for refactoring away.\n *\n * @deprecated\n */\nexport type UnsafeUnwrappedHeaders = ReadonlyHeaders\n\n/**\n * This function allows you to read the HTTP incoming request headers in\n * [Server Components](https://nextjs.org/docs/app/building-your-application/rendering/server-components),\n * [Server Actions](https://nextjs.org/docs/app/building-your-application/data-fetching/server-actions-and-mutations),\n * [Route Handlers](https://nextjs.org/docs/app/building-your-application/routing/route-handlers) and\n * [Middleware](https://nextjs.org/docs/app/building-your-application/routing/middleware).\n *\n * Read more: [Next.js Docs: `headers`](https://nextjs.org/docs/app/api-reference/functions/headers)\n */\nexport function headers(): Promise<ReadonlyHeaders> {\n const workStore = workAsyncStorage.getStore()\n const workUnitStore = workUnitAsyncStorage.getStore()\n\n if (workStore) {\n if (\n workUnitStore &&\n workUnitStore.phase === 'after' &&\n !isRequestAPICallableInsideAfter()\n ) {\n throw new Error(\n `Route ${workStore.route} used \"headers\" inside \"after(...)\". This is not supported. If you need this data inside an \"after\" callback, use \"headers\" outside of the callback. See more info here: https://nextjs.org/docs/canary/app/api-reference/functions/after`\n )\n }\n\n if (workStore.forceStatic) {\n // When using forceStatic we override all other logic and always just return an empty\n // headers object without tracking\n const underlyingHeaders = HeadersAdapter.seal(new Headers({}))\n return makeUntrackedExoticHeaders(underlyingHeaders)\n }\n\n if (workUnitStore) {\n if (workUnitStore.type === 'cache') {\n throw new Error(\n `Route ${workStore.route} used \"headers\" inside \"use cache\". Accessing Dynamic data sources inside a cache scope is not supported. If you need this data inside a cached function use \"headers\" outside of the cached function and pass the required dynamic data in as an argument. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`\n )\n } else if (workUnitStore.type === 'unstable-cache') {\n throw new Error(\n `Route ${workStore.route} used \"headers\" inside a function cached with \"unstable_cache(...)\". Accessing Dynamic data sources inside a cache scope is not supported. If you need this data inside a cached function use \"headers\" outside of the cached function and pass the required dynamic data in as an argument. See more info here: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`\n )\n }\n }\n if (workStore.dynamicShouldError) {\n throw new StaticGenBailoutError(\n `Route ${workStore.route} with \\`dynamic = \"error\"\\` couldn't be rendered statically because it used \\`headers\\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`\n )\n }\n\n if (workUnitStore) {\n if (workUnitStore.type === 'prerender') {\n // dynamicIO Prerender\n // We don't track dynamic access here because access will be tracked when you access\n // one of the properties of the headers object.\n return makeDynamicallyTrackedExoticHeaders(\n workStore.route,\n workUnitStore\n )\n } else if (workUnitStore.type === 'prerender-ppr') {\n // PPR Prerender (no dynamicIO)\n // We are prerendering with PPR. We need track dynamic access here eagerly\n // to keep continuity with how headers has worked in PPR without dynamicIO.\n // TODO consider switching the semantic to throw on property access instead\n postponeWithTracking(\n workStore.route,\n 'headers',\n workUnitStore.dynamicTracking\n )\n } else if (workUnitStore.type === 'prerender-legacy') {\n // Legacy Prerender\n // We are in a legacy static generation mode while prerendering\n // We track dynamic access here so we don't need to wrap the headers in\n // individual property access tracking.\n throwToInterruptStaticGeneration('headers', workStore, workUnitStore)\n }\n }\n // We fall through to the dynamic context below but we still track dynamic access\n // because in dev we can still error for things like using headers inside a cache context\n trackDynamicDataInDynamicRender(workStore, workUnitStore)\n }\n\n const requestStore = getExpectedRequestStore('headers')\n if (process.env.NODE_ENV === 'development' && !workStore?.isPrefetchRequest) {\n return makeUntrackedExoticHeadersWithDevWarnings(\n requestStore.headers,\n workStore?.route\n )\n } else {\n return makeUntrackedExoticHeaders(requestStore.headers)\n }\n}\n\ninterface CacheLifetime {}\nconst CachedHeaders = new WeakMap<CacheLifetime, Promise<ReadonlyHeaders>>()\n\nfunction makeDynamicallyTrackedExoticHeaders(\n route: string,\n prerenderStore: PrerenderStoreModern\n): Promise<ReadonlyHeaders> {\n const cachedHeaders = CachedHeaders.get(prerenderStore)\n if (cachedHeaders) {\n return cachedHeaders\n }\n\n const promise = makeHangingPromise<ReadonlyHeaders>(\n prerenderStore.renderSignal,\n '`headers()`'\n )\n CachedHeaders.set(prerenderStore, promise)\n\n Object.defineProperties(promise, {\n append: {\n value: function append() {\n const expression = `\\`headers().append(${describeNameArg(arguments[0])}, ...)\\``\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n delete: {\n value: function _delete() {\n const expression = `\\`headers().delete(${describeNameArg(arguments[0])})\\``\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n get: {\n value: function get() {\n const expression = `\\`headers().get(${describeNameArg(arguments[0])})\\``\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n has: {\n value: function has() {\n const expression = `\\`headers().has(${describeNameArg(arguments[0])})\\``\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n set: {\n value: function set() {\n const expression = `\\`headers().set(${describeNameArg(arguments[0])}, ...)\\``\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n getSetCookie: {\n value: function getSetCookie() {\n const expression = '`headers().getSetCookie()`'\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n forEach: {\n value: function forEach() {\n const expression = '`headers().forEach(...)`'\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n keys: {\n value: function keys() {\n const expression = '`headers().keys()`'\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n values: {\n value: function values() {\n const expression = '`headers().values()`'\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n entries: {\n value: function entries() {\n const expression = '`headers().entries()`'\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n [Symbol.iterator]: {\n value: function () {\n const expression = '`headers()[Symbol.iterator]()`'\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n } satisfies HeadersExtensions)\n\n return promise\n}\n\nfunction makeUntrackedExoticHeaders(\n underlyingHeaders: ReadonlyHeaders\n): Promise<ReadonlyHeaders> {\n const cachedHeaders = CachedHeaders.get(underlyingHeaders)\n if (cachedHeaders) {\n return cachedHeaders\n }\n\n const promise = Promise.resolve(underlyingHeaders)\n CachedHeaders.set(underlyingHeaders, promise)\n\n Object.defineProperties(promise, {\n append: {\n value: underlyingHeaders.append.bind(underlyingHeaders),\n },\n delete: {\n value: underlyingHeaders.delete.bind(underlyingHeaders),\n },\n get: {\n value: underlyingHeaders.get.bind(underlyingHeaders),\n },\n has: {\n value: underlyingHeaders.has.bind(underlyingHeaders),\n },\n set: {\n value: underlyingHeaders.set.bind(underlyingHeaders),\n },\n getSetCookie: {\n value: underlyingHeaders.getSetCookie.bind(underlyingHeaders),\n },\n forEach: {\n value: underlyingHeaders.forEach.bind(underlyingHeaders),\n },\n keys: {\n value: underlyingHeaders.keys.bind(underlyingHeaders),\n },\n values: {\n value: underlyingHeaders.values.bind(underlyingHeaders),\n },\n entries: {\n value: underlyingHeaders.entries.bind(underlyingHeaders),\n },\n [Symbol.iterator]: {\n value: underlyingHeaders[Symbol.iterator].bind(underlyingHeaders),\n },\n } satisfies HeadersExtensions)\n\n return promise\n}\n\nfunction makeUntrackedExoticHeadersWithDevWarnings(\n underlyingHeaders: ReadonlyHeaders,\n route?: string\n): Promise<ReadonlyHeaders> {\n const cachedHeaders = CachedHeaders.get(underlyingHeaders)\n if (cachedHeaders) {\n return cachedHeaders\n }\n\n const promise = new Promise<ReadonlyHeaders>((resolve) =>\n scheduleImmediate(() => resolve(underlyingHeaders))\n )\n\n CachedHeaders.set(underlyingHeaders, promise)\n\n Object.defineProperties(promise, {\n append: {\n value: function append() {\n const expression = `\\`headers().append(${describeNameArg(arguments[0])}, ...)\\``\n syncIODev(route, expression)\n return underlyingHeaders.append.apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n delete: {\n value: function _delete() {\n const expression = `\\`headers().delete(${describeNameArg(arguments[0])})\\``\n syncIODev(route, expression)\n return underlyingHeaders.delete.apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n get: {\n value: function get() {\n const expression = `\\`headers().get(${describeNameArg(arguments[0])})\\``\n syncIODev(route, expression)\n return underlyingHeaders.get.apply(underlyingHeaders, arguments as any)\n },\n },\n has: {\n value: function has() {\n const expression = `\\`headers().has(${describeNameArg(arguments[0])})\\``\n syncIODev(route, expression)\n return underlyingHeaders.has.apply(underlyingHeaders, arguments as any)\n },\n },\n set: {\n value: function set() {\n const expression = `\\`headers().set(${describeNameArg(arguments[0])}, ...)\\``\n syncIODev(route, expression)\n return underlyingHeaders.set.apply(underlyingHeaders, arguments as any)\n },\n },\n getSetCookie: {\n value: function getSetCookie() {\n const expression = '`headers().getSetCookie()`'\n syncIODev(route, expression)\n return underlyingHeaders.getSetCookie.apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n forEach: {\n value: function forEach() {\n const expression = '`headers().forEach(...)`'\n syncIODev(route, expression)\n return underlyingHeaders.forEach.apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n keys: {\n value: function keys() {\n const expression = '`headers().keys()`'\n syncIODev(route, expression)\n return underlyingHeaders.keys.apply(underlyingHeaders, arguments as any)\n },\n },\n values: {\n value: function values() {\n const expression = '`headers().values()`'\n syncIODev(route, expression)\n return underlyingHeaders.values.apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n entries: {\n value: function entries() {\n const expression = '`headers().entries()`'\n syncIODev(route, expression)\n return underlyingHeaders.entries.apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n [Symbol.iterator]: {\n value: function () {\n const expression = '`...headers()` or similar iteration'\n syncIODev(route, expression)\n return underlyingHeaders[Symbol.iterator].apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n } satisfies HeadersExtensions)\n\n return promise\n}\n\nfunction describeNameArg(arg: unknown) {\n return typeof arg === 'string' ? `'${arg}'` : '...'\n}\n\nfunction syncIODev(route: string | undefined, expression: string) {\n const workUnitStore = workUnitAsyncStorage.getStore()\n if (\n workUnitStore &&\n workUnitStore.type === 'request' &&\n workUnitStore.prerenderPhase === true\n ) {\n // When we're rendering dynamically in dev we need to advance out of the\n // Prerender environment when we read Request data synchronously\n const requestStore = workUnitStore\n trackSynchronousRequestDataAccessInDev(requestStore)\n }\n // In all cases we warn normally\n warnForSyncAccess(route, expression)\n}\n\nconst warnForSyncAccess = createDedupedByCallsiteServerErrorLoggerDev(\n createHeadersAccessError\n)\n\nfunction createHeadersAccessError(\n route: string | undefined,\n expression: string\n) {\n const prefix = route ? `Route \"${route}\" ` : 'This route '\n return new Error(\n `${prefix}used ${expression}. ` +\n `\\`headers()\\` should be awaited before using its value. ` +\n `Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis`\n )\n}\n\ntype HeadersExtensions = {\n [K in keyof ReadonlyHeaders]: unknown\n}\n","import {\n getDraftModeProviderForCacheScope,\n throwForMissingRequestStore,\n} from '../app-render/work-unit-async-storage.external'\n\nimport type { DraftModeProvider } from '../async-storage/draft-mode-provider'\n\nimport {\n workAsyncStorage,\n type WorkStore,\n} from '../app-render/work-async-storage.external'\nimport { workUnitAsyncStorage } from '../app-render/work-unit-async-storage.external'\nimport {\n abortAndThrowOnSynchronousRequestDataAccess,\n postponeWithTracking,\n trackSynchronousRequestDataAccessInDev,\n} from '../app-render/dynamic-rendering'\nimport { createDedupedByCallsiteServerErrorLoggerDev } from '../create-deduped-by-callsite-server-error-logger'\nimport { StaticGenBailoutError } from '../../client/components/static-generation-bailout'\nimport { DynamicServerError } from '../../client/components/hooks-server-context'\n\n/**\n * In this version of Next.js `draftMode()` returns a Promise however you can still reference the properties of the underlying draftMode object\n * synchronously to facilitate migration. The `UnsafeUnwrappedDraftMode` type is added to your code by a codemod that attempts to automatically\n * updates callsites to reflect the new Promise return type. There are some cases where `draftMode()` cannot be automatically converted, namely\n * when it is used inside a synchronous function and we can't be sure the function can be made async automatically. In these cases we add an\n * explicit type case to `UnsafeUnwrappedDraftMode` to enable typescript to allow for the synchronous usage only where it is actually necessary.\n *\n * You should should update these callsites to either be async functions where the `draftMode()` value can be awaited or you should call `draftMode()`\n * from outside and await the return value before passing it into this function.\n *\n * You can find instances that require manual migration by searching for `UnsafeUnwrappedDraftMode` in your codebase or by search for a comment that\n * starts with `@next-codemod-error`.\n *\n * In a future version of Next.js `draftMode()` will only return a Promise and you will not be able to access the underlying draftMode object directly\n * without awaiting the return value first. When this change happens the type `UnsafeUnwrappedDraftMode` will be updated to reflect that is it no longer\n * usable.\n *\n * This type is marked deprecated to help identify it as target for refactoring away.\n *\n * @deprecated\n */\nexport type UnsafeUnwrappedDraftMode = DraftMode\n\nexport function draftMode(): Promise<DraftMode> {\n const callingExpression = 'draftMode'\n const workStore = workAsyncStorage.getStore()\n const workUnitStore = workUnitAsyncStorage.getStore()\n\n if (!workStore || !workUnitStore) {\n throwForMissingRequestStore(callingExpression)\n }\n\n switch (workUnitStore.type) {\n case 'request':\n return createOrGetCachedExoticDraftMode(\n workUnitStore.draftMode,\n workStore\n )\n\n case 'cache':\n case 'unstable-cache':\n // Inside of `\"use cache\"` or `unstable_cache`, draft mode is available if\n // the outmost work unit store is a request store, and if draft mode is\n // enabled.\n const draftModeProvider = getDraftModeProviderForCacheScope(\n workStore,\n workUnitStore\n )\n\n if (draftModeProvider) {\n return createOrGetCachedExoticDraftMode(draftModeProvider, workStore)\n }\n\n // Otherwise, we fall through to providing an empty draft mode.\n // eslint-disable-next-line no-fallthrough\n case 'prerender':\n case 'prerender-ppr':\n case 'prerender-legacy':\n // Return empty draft mode\n if (\n process.env.NODE_ENV === 'development' &&\n !workStore?.isPrefetchRequest\n ) {\n const route = workStore?.route\n return createExoticDraftModeWithDevWarnings(null, route)\n } else {\n return createExoticDraftMode(null)\n }\n\n default:\n const _exhaustiveCheck: never = workUnitStore\n return _exhaustiveCheck\n }\n}\n\nfunction createOrGetCachedExoticDraftMode(\n draftModeProvider: DraftModeProvider,\n workStore: WorkStore | undefined\n): Promise<DraftMode> {\n const cachedDraftMode = CachedDraftModes.get(draftMode)\n\n if (cachedDraftMode) {\n return cachedDraftMode\n }\n\n let promise: Promise<DraftMode>\n\n if (process.env.NODE_ENV === 'development' && !workStore?.isPrefetchRequest) {\n const route = workStore?.route\n promise = createExoticDraftModeWithDevWarnings(draftModeProvider, route)\n } else {\n promise = createExoticDraftMode(draftModeProvider)\n }\n\n CachedDraftModes.set(draftModeProvider, promise)\n\n return promise\n}\n\ninterface CacheLifetime {}\nconst CachedDraftModes = new WeakMap<CacheLifetime, Promise<DraftMode>>()\n\nfunction createExoticDraftMode(\n underlyingProvider: null | DraftModeProvider\n): Promise<DraftMode> {\n const instance = new DraftMode(underlyingProvider)\n const promise = Promise.resolve(instance)\n\n Object.defineProperty(promise, 'isEnabled', {\n get() {\n return instance.isEnabled\n },\n set(newValue) {\n Object.defineProperty(promise, 'isEnabled', {\n value: newValue,\n writable: true,\n enumerable: true,\n })\n },\n enumerable: true,\n configurable: true,\n })\n ;(promise as any).enable = instance.enable.bind(instance)\n ;(promise as any).disable = instance.disable.bind(instance)\n\n return promise\n}\n\nfunction createExoticDraftModeWithDevWarnings(\n underlyingProvider: null | DraftModeProvider,\n route: undefined | string\n): Promise<DraftMode> {\n const instance = new DraftMode(underlyingProvider)\n const promise = Promise.resolve(instance)\n\n Object.defineProperty(promise, 'isEnabled', {\n get() {\n const expression = '`draftMode().isEnabled`'\n syncIODev(route, expression)\n return instance.isEnabled\n },\n set(newValue) {\n Object.defineProperty(promise, 'isEnabled', {\n value: newValue,\n writable: true,\n enumerable: true,\n })\n },\n enumerable: true,\n configurable: true,\n })\n\n Object.defineProperty(promise, 'enable', {\n value: function get() {\n const expression = '`draftMode().enable()`'\n syncIODev(route, expression)\n return instance.enable.apply(instance, arguments as any)\n },\n })\n\n Object.defineProperty(promise, 'disable', {\n value: function get() {\n const expression = '`draftMode().disable()`'\n syncIODev(route, expression)\n return instance.disable.apply(instance, arguments as any)\n },\n })\n\n return promise\n}\n\nclass DraftMode {\n /**\n * @internal - this declaration is stripped via `tsc --stripInternal`\n */\n private readonly _provider: null | DraftModeProvider\n\n constructor(provider: null | DraftModeProvider) {\n this._provider = provider\n }\n get isEnabled() {\n if (this._provider !== null) {\n return this._provider.isEnabled\n }\n return false\n }\n public enable() {\n // We have a store we want to track dynamic data access to ensure we\n // don't statically generate routes that manipulate draft mode.\n trackDynamicDraftMode('draftMode().enable()')\n if (this._provider !== null) {\n this._provider.enable()\n }\n }\n public disable() {\n trackDynamicDraftMode('draftMode().disable()')\n if (this._provider !== null) {\n this._provider.disable()\n }\n }\n}\n\nfunction syncIODev(route: string | undefined, expression: string) {\n const workUnitStore = workUnitAsyncStorage.getStore()\n if (\n workUnitStore &&\n workUnitStore.type === 'request' &&\n workUnitStore.prerenderPhase === true\n ) {\n // When we're rendering dynamically in dev we need to advance out of the\n // Prerender environment when we read Request data synchronously\n const requestStore = workUnitStore\n trackSynchronousRequestDataAccessInDev(requestStore)\n }\n // In all cases we warn normally\n warnForSyncAccess(route, expression)\n}\n\nconst warnForSyncAccess = createDedupedByCallsiteServerErrorLoggerDev(\n createDraftModeAccessError\n)\n\nfunction createDraftModeAccessError(\n route: string | undefined,\n expression: string\n) {\n const prefix = route ? `Route \"${route}\" ` : 'This route '\n return new Error(\n `${prefix}used ${expression}. ` +\n `\\`draftMode()\\` should be awaited before using its value. ` +\n `Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis`\n )\n}\n\nfunction trackDynamicDraftMode(expression: string) {\n const store = workAsyncStorage.getStore()\n const workUnitStore = workUnitAsyncStorage.getStore()\n if (store) {\n // We have a store we want to track dynamic data access to ensure we\n // don't statically generate routes that manipulate draft mode.\n if (workUnitStore) {\n if (workUnitStore.type === 'cache') {\n throw new Error(\n `Route ${store.route} used \"${expression}\" inside \"use cache\". The enabled status of draftMode can be read in caches but you must not enable or disable draftMode inside a cache. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`\n )\n } else if (workUnitStore.type === 'unstable-cache') {\n throw new Error(\n `Route ${store.route} used \"${expression}\" inside a function cached with \"unstable_cache(...)\". The enabled status of draftMode can be read in caches but you must not enable or disable draftMode inside a cache. See more info here: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`\n )\n } else if (workUnitStore.phase === 'after') {\n throw new Error(\n `Route ${store.route} used \"${expression}\" inside \\`after\\`. The enabled status of draftMode can be read inside \\`after\\` but you cannot enable or disable draftMode. See more info here: https://nextjs.org/docs/app/api-reference/functions/after`\n )\n }\n }\n\n if (store.dynamicShouldError) {\n throw new StaticGenBailoutError(\n `Route ${store.route} with \\`dynamic = \"error\"\\` couldn't be rendered statically because it used \\`${expression}\\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`\n )\n }\n\n if (workUnitStore) {\n if (workUnitStore.type === 'prerender') {\n // dynamicIO Prerender\n const error = new Error(\n `Route ${store.route} used ${expression} without first calling \\`await connection()\\`. See more info here: https://nextjs.org/docs/messages/next-prerender-sync-headers`\n )\n abortAndThrowOnSynchronousRequestDataAccess(\n store.route,\n expression,\n error,\n workUnitStore\n )\n } else if (workUnitStore.type === 'prerender-ppr') {\n // PPR Prerender\n postponeWithTracking(\n store.route,\n expression,\n workUnitStore.dynamicTracking\n )\n } else if (workUnitStore.type === 'prerender-legacy') {\n // legacy Prerender\n workUnitStore.revalidate = 0\n\n const err = new DynamicServerError(\n `Route ${store.route} couldn't be rendered statically because it used \\`${expression}\\`. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`\n )\n store.dynamicUsageDescription = expression\n store.dynamicUsageStack = err.stack\n\n throw err\n } else if (\n process.env.NODE_ENV === 'development' &&\n workUnitStore &&\n workUnitStore.type === 'request'\n ) {\n workUnitStore.usedDynamic = true\n }\n }\n }\n}\n","module.exports.cookies = require('./dist/server/request/cookies').cookies\nmodule.exports.headers = require('./dist/server/request/headers').headers\nmodule.exports.draftMode = require('./dist/server/request/draft-mode').draftMode\n","import { cookies } from 'next/headers';\n\n/**\n * 서버사이드용 쿠키함수\n */\nexport const cookieServer = {\n async getCookie(name: string): Promise<string> {\n const cookieStore = await cookies();\n\n return cookieStore.get(name)?.value || '';\n },\n\n async setCookie(name: string, value: string, options?: any): Promise<void> {\n const cookieStore = await cookies();\n cookieStore.set(name, value, options);\n },\n\n async deleteCookie(name: string): Promise<void> {\n const cookieStore = await cookies();\n cookieStore.delete(name);\n }\n};\n","import { headers } from 'next/headers';\n\nimport { AT, customHeaderNames, GetterAsync, SetterAsync } from './header.types';\n\n// =============================================================================\n// 비동기 버전 (서버 사이드용)\n// =============================================================================\n\nexport class HeaderManagerAsync {\n private getter: GetterAsync;\n private setter: SetterAsync;\n\n constructor(getter: GetterAsync, setter: SetterAsync) {\n this.getter = getter;\n this.setter = setter;\n }\n\n /**\n * 커스텀 헤더를 비동기적으로 설정합니다.\n */\n async setCustomHeaders(): Promise<void> {\n const headerPromises = customHeaderNames.map(async (headerName) => {\n const customHeaderKey = `X-Channel-${headerName}`;\n const headerValue = await Promise.resolve(this.getter(customHeaderKey));\n if (headerValue) {\n await Promise.resolve(this.setter(customHeaderKey, headerValue));\n }\n });\n await Promise.all(headerPromises);\n }\n\n /**\n * 인증 토큰을 비동기적으로 설정합니다.\n */\n async setAuthToken(): Promise<void> {\n const token = await Promise.resolve(this.getter(AT));\n if (token) {\n await Promise.resolve(this.setter('Authorization', `Bearer ${token}`));\n }\n }\n\n /**\n * 모든 헤더를 비동기적으로 설정합니다.\n */\n async setAllHeaders(): Promise<void> {\n await Promise.all([this.setCustomHeaders(), this.setAuthToken()]);\n }\n}\n\nexport const HeaderFunc = {\n async getHeader(name: string) {\n const headersList = await headers();\n\n return headersList.get(name);\n },\n\n async setHeader(name: string, value: string) {\n const headersList = await headers();\n\n headersList.set(name, value);\n }\n};\n","/**\n * @see https://loop.cloud.microsoft/p/eyJ3Ijp7InUiOiJodHRwczovL2hhbndoYWxpZmVtMzY1LnNoYXJlcG9pbnQuY29tLz9uYXY9Y3owbE1rWW1aRDFpSVVVd1FXdDJSbGhSV0VWUE1tUkNYMWhUZW5KWVVFdFBSVXByYWs1b1NrSlBjRk4wYm5wNmNsWmpMVUZ5YjI1UlJWOVdSREpUV25aeWVUUTJTV2swUlZrbVpqMHdNVk5OVGtkR1JsTkJXVE0xVVZaQ1ZrRkVRa1ZaVEVoRVNUSTBXRXhVVlZoV0ptTTlKbVpzZFdsa1BURSUzRCIsInIiOmZhbHNlfSwicCI6eyJ1IjoiaHR0cHM6Ly9oYW53aGFsaWZlbTM2NS5zaGFyZXBvaW50LmNvbS9jb250ZW50c3RvcmFnZS9DU1BfYmMyNDQwMTMtZDA1NS00MzVjLWI2NzQtMWZkNzRiM2FkNzNjLyVFQiVBQyVCOCVFQyU4NCU5QyUyMCVFQiU5RCVCQyVFQyU5RCVCNCVFQiVCOCU4QyVFQiU5RiVBQyVFQiVBNiVBQy9Mb29wQXBwRGF0YS8wOS0yLiUyMEJyaWRnZSUyMFNwZWMlMjAxLmxvb3A%2FbmF2PWN6MGxNa1pqYjI1MFpXNTBjM1J2Y21GblpTVXlSa05UVUY5aVl6STBOREF4TXkxa01EVTFMVFF6TldNdFlqWTNOQzB4Wm1RM05HSXpZV1EzTTJNbVpEMWlJVVV3UVd0MlJsaFJXRVZQTW1SQ1gxaFRlbkpZVUV0UFJVcHJhazVvU2tKUGNGTjBibnA2Y2xaakxVRnliMjVSUlY5V1JESlRXblp5ZVRRMlNXazBSVmttWmowd01WTk5Ua2RHUmxGRlYxTlFOelpMUWtsTFdrWkpXVUUzU1ZkWldGTklWa0ZUSm1NOUpUSkdKbVpzZFdsa1BURSUzRCIsInIiOmZhbHNlfSwiaSI6eyJpIjoiNTdkZmVhM2QtZDA2Yi00YWRlLWIxZjEtYjE4NDA4MmNlN2VjIn19\n */\nexport const customHeaderNames = [\n 'Accept-Language',\n 'DeviceId',\n 'LoginType',\n 'PlatformName',\n 'PlatformVersion',\n 'AppVersion',\n 'DeviceModel',\n 'FormFactor',\n 'LoginChannel'\n];\n\nexport const AT = 'AT';\nexport type GetterSync = (keyName: string) => string;\nexport type SetterSync = (keyName: string, value: string) => void;\n\nexport type GetterAsync = (keyName: string) => Promise<string> | string;\nexport type SetterAsync = (keyName: string, value: string) => Promise<void> | void;\n","/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport type { HttpClientConfig, Interceptor, RequestConfig } from './fetch.types';\n\n/**\n * HTTP 오류를 위한 사용자 정의 오류\n * 응답 객체를 포함\n * @todo CustomeError > 다이렉트 에러 참고하여 수정 필요\n */\nexport class HttpError extends Error {\n public response: Response;\n public data: any;\n\n constructor(response: Response, data: any) {\n super(`Request failed with status ${response.status} ${response.statusText}`);\n this.name = 'HttpError';\n this.response = response;\n this.data = data;\n }\n}\n\n/**\n * Axios와 유사하게 인터셉터 컬렉션을 관리합니다.\n */\nclass InterceptorManager<V> {\n private handlers: Array<Interceptor<V> | null> = [];\n\n /**\n * 체인에 새 인터셉터를 추가\n * @param onFulfilled - 프로미스가 이행되었을 때 호출할 함수\n * @param onRejected - 프로미스가 거부되었을 때 호출할 함수\n * @returns 인터셉터의 ID이며, 나중에 제거하는 데 사용\n */\n public use(onFulfilled?: (value: V) => V | Promise<V>, onRejected?: (error: any) => any): number {\n this.handlers.push({ onFulfilled, onRejected });\n\n return this.handlers.length - 1;\n }\n\n /**\n * ID를 사용하여 체인에서 인터셉터를 제거합니다.\n * @param id - 제거할 인터셉터의 ID입니다.\n */\n public eject(id: number): void {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * 주어진 프로미스에 대해 인터셉터 체인을 실행합니다.\n * @param promise - 체인을 시작할 초기 프로미스입니다.\n * @returns 전체 체인이 실행된 후 확인되는 새 프로미스입니다.\n */\n public executeChain(promise: Promise<V>): Promise<V> {\n let chain = promise;\n\n this.handlers.forEach((handler) => {\n if (handler) {\n chain = chain.then(handler.onFulfilled, handler.onRejected);\n }\n });\n\n return chain;\n }\n}\n\n/**\n * @description middleware.ts에서 사용하기 위한 용도로 작성\n */\nexport class FetchInstance {\n private defaults: HttpClientConfig;\n\n public interceptors: {\n request: InterceptorManager<RequestConfig>;\n response: InterceptorManager<Response>;\n };\n\n constructor(config: HttpClientConfig = {}) {\n this.defaults = config;\n this.interceptors = {\n request: new InterceptorManager<RequestConfig>(),\n response: new InterceptorManager<Response>()\n };\n }\n\n /**\n * 인터셉터를 적용하고 실제 fetch 호출을 수행\n * @param config - 요청 설정\n */\n public async request<T = any>(config: RequestConfig): Promise<{ data: T; response: Response }> {\n // --- 요청 인터셉터 체인 ---\n let requestConfig = { ...this.defaults, ...config };\n const requestChain = this.interceptors.request.executeChain(Promise.resolve(requestConfig));\n requestConfig = await requestChain;\n\n // --- fetch 준비 ---\n const { baseURL, params, data, ...fetchOptions } = requestConfig;\n const headers = new Headers({ ...this.defaults.headers, ...requestConfig.headers });\n\n // URL 빌드\n const url = new URL(requestConfig.url || '', baseURL);\n if (params) {\n Object.keys(params).forEach((key) => {\n const value = params[key];\n if (value !== undefined && value !== null) {\n url.searchParams.append(key, String(value));\n }\n });\n }\n\n // Body 준비\n let body: BodyInit | undefined = undefined;\n if (data) {\n if (typeof data === 'object' && !(data instanceof FormData) && !(data instanceof Blob)) {\n body = JSON.stringify(data);\n if (!headers.has('Content-Type')) {\n headers.set('Content-Type', 'application/json');\n }\n } else {\n body = data as BodyInit;\n }\n }\n\n // --- fetch 및 응답 인터셉터 체인 ---\n const fetchPromise = fetch(url.toString(), { ...fetchOptions, headers, body });\n\n const response = await this.interceptors.response.executeChain(fetchPromise);\n\n // --- 응답 처리 ---\n if (!response.ok) {\n let responseData: any = null;\n try {\n responseData = await response.clone().json();\n } catch {\n // 본문이 유효한 JSON이 아닌 경우 무시\n }\n throw new HttpError(response, responseData);\n }\n\n let responseData: T;\n try {\n responseData = await response.json();\n } catch {\n // 응답은 성공했지만 JSON 본문이 없는 경우 처리 (예: 204 No Content)\n responseData = null as T;\n }\n\n return { data: responseData, response };\n }\n\n // ===========================================================================\n // 메서드 (GET, POST, PUT, DELETE)\n // ===========================================================================\n\n public get<T = any>(\n url: string,\n config: Omit<RequestConfig, 'method'> = {}\n ): Promise<{ data: T; response: Response }> {\n return this.request<T>({ ...config, url, method: 'GET' });\n }\n\n public post<T = any>(\n url: string,\n data: any,\n config: Omit<RequestConfig, 'method' | 'data'> = {}\n ): Promise<{ data: T; response: Response }> {\n return this.request<T>({ ...config, url, method: 'POST', data });\n }\n\n public put<T = any>(\n url: string,\n data: any,\n config: Omit<RequestConfig, 'method' | 'data'> = {}\n ): Promise<{ data: T; response: Response }> {\n return this.request<T>({ ...config, url, method: 'PUT', data });\n }\n\n public delete<T = any>(\n url: string,\n config: Omit<RequestConfig, 'method'> = {}\n ): Promise<{ data: T; response: Response }> {\n return this.request<T>({ ...config, url, method: 'DELETE' });\n }\n}\n\n/**\n * axios의 핵심 기능을 모방하고 middleware.ts 환경에서도 fetch기본함수로 작성.\n\n 주요 특징:\n * 외부 라이브러리 의존성 없음 (웹 표준 fetch 기반)\n * axios와 유사한 인터셉터 (client.interceptors.request.use(...))\n * HTTP 4xx/5xx 에러 발생 시 response가 포함된 HttpError를 throw\n * baseURL, 기본 헤더, 요청 params 등 편의 기능 지원\n\n 기본 사용법 예시:\n\n import { HttpClientFetch, HttpError } from './http-client-fetch';\n \n // 1. 클라이언트 인스턴스 생성\n const client = new HttpClientFetch({\n baseURL: 'https://jsonplaceholder.typicode.com',\n headers: { 'Content-Type': 'application/json' }\n });\n \n // 2. 응답 인터셉터 사용 예시 (axios와 동일)\n client.interceptors.response.use(\n (response) => {\n // 응답 성공 시 처리\n console.log('응답을 받았습니다');\n return response;\n },\n (error) => {\n // 응답 에러 시 처리\n if (error instanceof HttpError) {\n console.error(`HTTP 오류: ${error.response.status}`);\n }\n return Promise.reject(error);\n }\n );\n \n // 3. API 호출\n async function getUser(id: number) {\n try {\n const { data, response } = await client.get(`/users/${id}`);\n console.log('사용자 데이터:', data);\n console.log('상태 코드:', response.status);\n } catch (error) {\n if (error instanceof HttpError) {\n // 404와 같은 에러는 여기서 잡힙니다.\n console.error(`사용자 정보를 가져오지 못했습니다. 상태: ${error.response.status}`);\n console.log('오류 응답 데이터:', error.data);\n } else {\n console.error('예상치 못한 오류가 발생했습니다:', error);\n }\n }\n }\n \n getUser(1); // 성공 예시\n getUser(999); // 404 에러 예시\n */\n","import { cookieServer } from '../cookie/cookie-server';\nimport { HeaderManagerAsync } from '../header/header-manager-async';\n\nimport { FetchInstance } from './fetch-instance';\n\nimport type { HttpClientConfig } from './fetch.types';\n\n/**\n * @description middleware에서 사용하는 용도.\n * 인증토큰 처리외에 용도는 없음.\n */\nexport class HttpClientFetch extends FetchInstance {\n headerManager: HeaderManagerAsync;\n headers: Record<string, string> = {};\n constructor(config?: HttpClientConfig) {\n super(config);\n\n /**\n * 헤더매니저 셋팅\n * 쿠키에 일단 저장하고 가져오는 방식으로 사용하는 경우에 사용.\n *\n */\n const getter: HeaderManagerAsync['getter'] = (key) => {\n return cookieServer.getCookie(key);\n };\n const setter: HeaderManagerAsync['setter'] = (key, value) => {\n if (config?.headers) {\n config.headers[key] = value;\n }\n };\n this.headerManager = new HeaderManagerAsync(getter, setter);\n\n this.interceptors.request.use((config) => {\n /**\n * AT토큰 주입\n * 헤더로 주입되는 AT 또는 임시토큰으로 발행한 AT를 쿠키에 저장해두고 사용(?)\n * @todo 여기서 한번에 일괄 처리하는게 더 좋을지?\n */\n // middleware에서 셋팅됩니다.\n /**\n * x-channel-[]\n * 커스텀헤더 주입\n */\n // this.headerManager.setCustomHeaders();\n // middleware에서 셋팅됩니다.\n\n /**\n *\n * this.headers설정된 값을 config headers에 주입\n */\n const headerEntries = Object.entries(this.headers);\n headerEntries.forEach(([key, value]) => {\n if (config?.headers) {\n config.headers = {\n ...config.headers,\n [key]: value\n };\n }\n });\n\n return config;\n });\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/dist/compiled/@edge-runtime/cookies/index.js","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/web/spec-extension/cookies.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/web/spec-extension/adapters/reflect.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/async-local-storage.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/work-async-storage-instance.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/work-async-storage.external.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/work-unit-async-storage-instance.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/client/components/app-router-headers.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/work-unit-async-storage.external.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/web/spec-extension/adapters/request-cookies.ts","../../../node_modules/.pnpm/react@19.1.0/node_modules/react/cjs/react.production.js","../../../node_modules/.pnpm/react@19.1.0/node_modules/react/cjs/react.development.js","../../../node_modules/.pnpm/react@19.1.0/node_modules/react/index.js","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/client/components/hooks-server-context.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/client/components/static-generation-bailout.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/dynamic-rendering-utils.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/lib/metadata/metadata-constants.tsx","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/lib/scheduler.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/dynamic-rendering.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/create-deduped-by-callsite-server-error-logger.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/after-task-async-storage-instance.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/app-render/after-task-async-storage.external.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/request/utils.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/request/cookies.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/web/spec-extension/adapters/headers.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/request/headers.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/src/server/request/draft-mode.ts","../../../node_modules/.pnpm/next@15.3.4_react-dom@19.1.0_react@19.1.0__react@19.1.0_sass@1.86.3/node_modules/next/headers.js","../src/http-client/cookie/cookie-server.ts","../src/http-client/header/header-manager-async.ts","../src/http-client/header/header.types.ts","../src/http-client/fetch/fetch-instance.ts","../src/http-client/fetch/http-client-fetch.ts","../src/http-client/axios/http-server-axios.ts"],"names":["__defProp","__getOwnPropDesc","__getOwnPropNames","__hasOwnProp","__copyProps","headers","RequestCookies","ResponseCookies","stringifyCookie","ReflectAdapter","get","target","prop","receiver","value","Reflect","bind","set","has","deleteProperty","bindSnapshot","createAsyncLocalStorage","createSnapshot","sharedAsyncLocalStorageNotAvailableError","Error","FakeAsyncLocalStorage","disable","getStore","undefined","run","exit","enterWith","fn","maybeGlobalAsyncLocalStorage","globalThis","AsyncLocalStorage","snapshot","args","workAsyncStorageInstance","workAsyncStorage","workUnitAsyncStorageInstance","ACTION_HEADER","FLIGHT_HEADERS","NEXT_DID_POSTPONE_HEADER","NEXT_HMR_REFRESH_HASH_COOKIE","NEXT_HMR_REFRESH_HEADER","NEXT_IS_PRERENDER_HEADER","NEXT_REWRITTEN_PATH_HEADER","NEXT_REWRITTEN_QUERY_HEADER","NEXT_ROUTER_PREFETCH_HEADER","NEXT_ROUTER_SEGMENT_PREFETCH_HEADER","NEXT_ROUTER_STALE_TIME_HEADER","NEXT_ROUTER_STATE_TREE_HEADER","NEXT_RSC_UNION_QUERY","NEXT_URL","RSC_CONTENT_TYPE_HEADER","RSC_HEADER","getDraftModeProviderForCacheScope","getExpectedRequestStore","getHmrRefreshHash","getPrerenderResumeDataCache","getRenderResumeDataCache","throwForMissingRequestStore","workUnitAsyncStorage","callingExpression","workUnitStore","type","_exhaustiveCheck","prerenderResumeDataCache","renderResumeDataCache","workStore","dev","hmrRefreshHash","cookies","isDraftMode","draftMode","MutableRequestCookiesAdapter","ReadonlyRequestCookiesError","RequestCookiesAdapter","appendMutableCookies","areCookiesMutableInCurrentPhase","getModifiedCookieValues","responseCookiesToRequestCookies","wrapWithMutableAccessCheck","constructor","callable","seal","Proxy","SYMBOL_MODIFY_COOKIE_VALUES","Symbol","for","modified","Array","isArray","length","mutableCookies","modifiedCookieValues","resCookies","returnedCookies","getAll","cookie","wrap","onUpdateCookies","responseCookies","Headers","modifiedValues","modifiedCookies","Set","updateResponseCookies","pathWasRevalidated","allCookies","filter","c","name","serializedCookies","tempCookies","push","toString","wrappedCookies","add","delete","ensureCookiesAreStillMutable","requestStore","phase","requestCookies","DynamicServerError","isDynamicServerError","DYNAMIC_ERROR_CODE","description","digest","err","StaticGenBailoutError","isStaticGenBailoutError","NEXT_STATIC_GEN_BAILOUT","code","error","isHangingPromiseRejectionError","makeHangingPromise","HANGING_PROMISE_REJECTION","HangingPromiseRejectionError","expression","abortListenersBySignal","WeakMap","signal","aborted","Promise","reject","hangingPromise","_","boundRejection","currentListeners","listeners","addEventListener","i","once","catch","ignoreReject","METADATA_BOUNDARY_NAME","OUTLET_BOUNDARY_NAME","VIEWPORT_BOUNDARY_NAME","atLeastOneTask","scheduleImmediate","scheduleOnNextTick","waitAtLeastOneReactRenderTask","cb","resolve","then","process","env","NEXT_RUNTIME","setTimeout","nextTick","setImmediate","r","Postpone","abortAndThrowOnSynchronousRequestDataAccess","abortOnSynchronousPlatformIOAccess","accessedDynamicData","annotateDynamicAccess","consumeDynamicAccess","createDynamicTrackingState","createDynamicValidationState","createHangingInputAbortSignal","createPostponedAbortSignal","formatDynamicAPIAccesses","getFirstDynamicReason","isDynamicPostpone","isPrerenderInterruptedError","markCurrentScopeAsDynamic","postponeWithTracking","throwIfDisallowedDynamic","throwToInterruptStaticGeneration","trackAllowedDynamicAccess","trackDynamicDataInDynamicRender","trackFallbackParamAccessed","trackSynchronousPlatformIOAccessInDev","trackSynchronousRequestDataAccessInDev","useDynamicRouteParams","hasPostpone","React","unstable_postpone","isDebugDynamicAccesses","dynamicAccesses","syncDynamicExpression","syncDynamicErrorWithStack","hasSuspendedDynamic","hasDynamicMetadata","hasDynamicViewport","hasSyncDynamicErrors","dynamicErrors","trackingState","store","forceDynamic","forceStatic","dynamicShouldError","route","dynamicTracking","revalidate","dynamicUsageDescription","dynamicUsageStack","stack","NODE_ENV","usedDynamic","prerenderStore","_store","abortOnSynchronousDynamicDataAccess","reason","createPrerenderInterruptedError","controller","abort","errorWithStack","prerenderPhase","prerenderSignal","validating","syncDynamicLogged","assertPostpone","createPostponeReason","message","isDynamicPostponeReason","includes","NEXT_PRERENDER_INTERRUPTED","serverDynamic","clientDynamic","access","map","split","slice","line","join","AbortController","x","cacheSignal","inputReady","isStaticGeneration","fallbackRouteParams","size","use","renderSignal","hasSuspenseRegex","hasMetadataRegex","RegExp","hasViewportRegex","hasOutletRegex","componentStack","dynamicValidation","test","createErrorWithComponentStack","syncError","syncExpression","syncLogged","console","createDedupedByCallsiteServerErrorLoggerDev","errorRef","current","cache","logErrorOrWarn","__NEXT_DYNAMIC_IO","warn","flushCurrentErrorIfNew","key","getMessage","logDedupedError","callStackFrames","afterTaskAsyncStorageInstance","afterTaskAsyncStorage","isRequestAPICallableInsideAfter","throwForSearchParamsAccessInUseCache","throwWithStaticGenerationBailoutError","throwWithStaticGenerationBailoutErrorWithDynamicError","invalidUsageError","afterTaskStore","rootTaskSpawnPhase","underlyingCookies","createEmptyCookies","makeUntrackedExoticCookies","makeDynamicallyTrackedExoticCookies","userspaceMutableCookies","isPrefetchRequest","makeUntrackedExoticCookiesWithDevWarnings","CachedCookies","cachedPromise","promise","Object","defineProperties","iterator","createCookiesAccessError","arguments","describeNameArg","arg","clear","cachedCookies","polyfilledResponseCookiesIterator","polyfilledResponseCookiesClear","syncIODev","apply","call","writable","warnForSyncAccess","prefix","values","returnable","HeadersAdapter","ReadonlyHeadersError","lowercased","toLowerCase","original","keys","find","o","merge","from","append","existing","forEach","callbackfn","thisArg","entries","underlyingHeaders","makeUntrackedExoticHeaders","makeDynamicallyTrackedExoticHeaders","makeUntrackedExoticHeadersWithDevWarnings","CachedHeaders","cachedHeaders","createHeadersAccessError","_delete","getSetCookie","createOrGetCachedExoticDraftMode","draftModeProvider","createExoticDraftModeWithDevWarnings","createExoticDraftMode","cachedDraftMode","CachedDraftModes","underlyingProvider","instance","DraftMode","defineProperty","isEnabled","newValue","enumerable","configurable","enable","provider","_provider","trackDynamicDraftMode","createDraftModeAccessError","require_headers","import_headers","responseData","config","axios","AxiosError"],"mappings":"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","file":"server.cjs","sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n RequestCookies: () => RequestCookies,\n ResponseCookies: () => ResponseCookies,\n parseCookie: () => parseCookie,\n parseSetCookie: () => parseSetCookie,\n stringifyCookie: () => stringifyCookie\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/serialize.ts\nfunction stringifyCookie(c) {\n var _a;\n const attrs = [\n \"path\" in c && c.path && `Path=${c.path}`,\n \"expires\" in c && (c.expires || c.expires === 0) && `Expires=${(typeof c.expires === \"number\" ? new Date(c.expires) : c.expires).toUTCString()}`,\n \"maxAge\" in c && typeof c.maxAge === \"number\" && `Max-Age=${c.maxAge}`,\n \"domain\" in c && c.domain && `Domain=${c.domain}`,\n \"secure\" in c && c.secure && \"Secure\",\n \"httpOnly\" in c && c.httpOnly && \"HttpOnly\",\n \"sameSite\" in c && c.sameSite && `SameSite=${c.sameSite}`,\n \"partitioned\" in c && c.partitioned && \"Partitioned\",\n \"priority\" in c && c.priority && `Priority=${c.priority}`\n ].filter(Boolean);\n const stringified = `${c.name}=${encodeURIComponent((_a = c.value) != null ? _a : \"\")}`;\n return attrs.length === 0 ? stringified : `${stringified}; ${attrs.join(\"; \")}`;\n}\nfunction parseCookie(cookie) {\n const map = /* @__PURE__ */ new Map();\n for (const pair of cookie.split(/; */)) {\n if (!pair)\n continue;\n const splitAt = pair.indexOf(\"=\");\n if (splitAt === -1) {\n map.set(pair, \"true\");\n continue;\n }\n const [key, value] = [pair.slice(0, splitAt), pair.slice(splitAt + 1)];\n try {\n map.set(key, decodeURIComponent(value != null ? value : \"true\"));\n } catch {\n }\n }\n return map;\n}\nfunction parseSetCookie(setCookie) {\n if (!setCookie) {\n return void 0;\n }\n const [[name, value], ...attributes] = parseCookie(setCookie);\n const {\n domain,\n expires,\n httponly,\n maxage,\n path,\n samesite,\n secure,\n partitioned,\n priority\n } = Object.fromEntries(\n attributes.map(([key, value2]) => [\n key.toLowerCase().replace(/-/g, \"\"),\n value2\n ])\n );\n const cookie = {\n name,\n value: decodeURIComponent(value),\n domain,\n ...expires && { expires: new Date(expires) },\n ...httponly && { httpOnly: true },\n ...typeof maxage === \"string\" && { maxAge: Number(maxage) },\n path,\n ...samesite && { sameSite: parseSameSite(samesite) },\n ...secure && { secure: true },\n ...priority && { priority: parsePriority(priority) },\n ...partitioned && { partitioned: true }\n };\n return compact(cookie);\n}\nfunction compact(t) {\n const newT = {};\n for (const key in t) {\n if (t[key]) {\n newT[key] = t[key];\n }\n }\n return newT;\n}\nvar SAME_SITE = [\"strict\", \"lax\", \"none\"];\nfunction parseSameSite(string) {\n string = string.toLowerCase();\n return SAME_SITE.includes(string) ? string : void 0;\n}\nvar PRIORITY = [\"low\", \"medium\", \"high\"];\nfunction parsePriority(string) {\n string = string.toLowerCase();\n return PRIORITY.includes(string) ? string : void 0;\n}\nfunction splitCookiesString(cookiesString) {\n if (!cookiesString)\n return [];\n var cookiesStrings = [];\n var pos = 0;\n var start;\n var ch;\n var lastComma;\n var nextStart;\n var cookiesSeparatorFound;\n function skipWhitespace() {\n while (pos < cookiesString.length && /\\s/.test(cookiesString.charAt(pos))) {\n pos += 1;\n }\n return pos < cookiesString.length;\n }\n function notSpecialChar() {\n ch = cookiesString.charAt(pos);\n return ch !== \"=\" && ch !== \";\" && ch !== \",\";\n }\n while (pos < cookiesString.length) {\n start = pos;\n cookiesSeparatorFound = false;\n while (skipWhitespace()) {\n ch = cookiesString.charAt(pos);\n if (ch === \",\") {\n lastComma = pos;\n pos += 1;\n skipWhitespace();\n nextStart = pos;\n while (pos < cookiesString.length && notSpecialChar()) {\n pos += 1;\n }\n if (pos < cookiesString.length && cookiesString.charAt(pos) === \"=\") {\n cookiesSeparatorFound = true;\n pos = nextStart;\n cookiesStrings.push(cookiesString.substring(start, lastComma));\n start = pos;\n } else {\n pos = lastComma + 1;\n }\n } else {\n pos += 1;\n }\n }\n if (!cookiesSeparatorFound || pos >= cookiesString.length) {\n cookiesStrings.push(cookiesString.substring(start, cookiesString.length));\n }\n }\n return cookiesStrings;\n}\n\n// src/request-cookies.ts\nvar RequestCookies = class {\n constructor(requestHeaders) {\n /** @internal */\n this._parsed = /* @__PURE__ */ new Map();\n this._headers = requestHeaders;\n const header = requestHeaders.get(\"cookie\");\n if (header) {\n const parsed = parseCookie(header);\n for (const [name, value] of parsed) {\n this._parsed.set(name, { name, value });\n }\n }\n }\n [Symbol.iterator]() {\n return this._parsed[Symbol.iterator]();\n }\n /**\n * The amount of cookies received from the client\n */\n get size() {\n return this._parsed.size;\n }\n get(...args) {\n const name = typeof args[0] === \"string\" ? args[0] : args[0].name;\n return this._parsed.get(name);\n }\n getAll(...args) {\n var _a;\n const all = Array.from(this._parsed);\n if (!args.length) {\n return all.map(([_, value]) => value);\n }\n const name = typeof args[0] === \"string\" ? args[0] : (_a = args[0]) == null ? void 0 : _a.name;\n return all.filter(([n]) => n === name).map(([_, value]) => value);\n }\n has(name) {\n return this._parsed.has(name);\n }\n set(...args) {\n const [name, value] = args.length === 1 ? [args[0].name, args[0].value] : args;\n const map = this._parsed;\n map.set(name, { name, value });\n this._headers.set(\n \"cookie\",\n Array.from(map).map(([_, value2]) => stringifyCookie(value2)).join(\"; \")\n );\n return this;\n }\n /**\n * Delete the cookies matching the passed name or names in the request.\n */\n delete(names) {\n const map = this._parsed;\n const result = !Array.isArray(names) ? map.delete(names) : names.map((name) => map.delete(name));\n this._headers.set(\n \"cookie\",\n Array.from(map).map(([_, value]) => stringifyCookie(value)).join(\"; \")\n );\n return result;\n }\n /**\n * Delete all the cookies in the cookies in the request.\n */\n clear() {\n this.delete(Array.from(this._parsed.keys()));\n return this;\n }\n /**\n * Format the cookies in the request as a string for logging\n */\n [Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return `RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`;\n }\n toString() {\n return [...this._parsed.values()].map((v) => `${v.name}=${encodeURIComponent(v.value)}`).join(\"; \");\n }\n};\n\n// src/response-cookies.ts\nvar ResponseCookies = class {\n constructor(responseHeaders) {\n /** @internal */\n this._parsed = /* @__PURE__ */ new Map();\n var _a, _b, _c;\n this._headers = responseHeaders;\n const setCookie = (_c = (_b = (_a = responseHeaders.getSetCookie) == null ? void 0 : _a.call(responseHeaders)) != null ? _b : responseHeaders.get(\"set-cookie\")) != null ? _c : [];\n const cookieStrings = Array.isArray(setCookie) ? setCookie : splitCookiesString(setCookie);\n for (const cookieString of cookieStrings) {\n const parsed = parseSetCookie(cookieString);\n if (parsed)\n this._parsed.set(parsed.name, parsed);\n }\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-get CookieStore#get} without the Promise.\n */\n get(...args) {\n const key = typeof args[0] === \"string\" ? args[0] : args[0].name;\n return this._parsed.get(key);\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-getAll CookieStore#getAll} without the Promise.\n */\n getAll(...args) {\n var _a;\n const all = Array.from(this._parsed.values());\n if (!args.length) {\n return all;\n }\n const key = typeof args[0] === \"string\" ? args[0] : (_a = args[0]) == null ? void 0 : _a.name;\n return all.filter((c) => c.name === key);\n }\n has(name) {\n return this._parsed.has(name);\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-set CookieStore#set} without the Promise.\n */\n set(...args) {\n const [name, value, cookie] = args.length === 1 ? [args[0].name, args[0].value, args[0]] : args;\n const map = this._parsed;\n map.set(name, normalizeCookie({ name, value, ...cookie }));\n replace(map, this._headers);\n return this;\n }\n /**\n * {@link https://wicg.github.io/cookie-store/#CookieStore-delete CookieStore#delete} without the Promise.\n */\n delete(...args) {\n const [name, options] = typeof args[0] === \"string\" ? [args[0]] : [args[0].name, args[0]];\n return this.set({ ...options, name, value: \"\", expires: /* @__PURE__ */ new Date(0) });\n }\n [Symbol.for(\"edge-runtime.inspect.custom\")]() {\n return `ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`;\n }\n toString() {\n return [...this._parsed.values()].map(stringifyCookie).join(\"; \");\n }\n};\nfunction replace(bag, headers) {\n headers.delete(\"set-cookie\");\n for (const [, value] of bag) {\n const serialized = stringifyCookie(value);\n headers.append(\"set-cookie\", serialized);\n }\n}\nfunction normalizeCookie(cookie = { name: \"\", value: \"\" }) {\n if (typeof cookie.expires === \"number\") {\n cookie.expires = new Date(cookie.expires);\n }\n if (cookie.maxAge) {\n cookie.expires = new Date(Date.now() + cookie.maxAge * 1e3);\n }\n if (cookie.path === null || cookie.path === void 0) {\n cookie.path = \"/\";\n }\n return cookie;\n}\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n RequestCookies,\n ResponseCookies,\n parseCookie,\n parseSetCookie,\n stringifyCookie\n});\n","export {\n RequestCookies,\n ResponseCookies,\n stringifyCookie,\n} from 'next/dist/compiled/@edge-runtime/cookies'\n","export class ReflectAdapter {\n static get<T extends object>(\n target: T,\n prop: string | symbol,\n receiver: unknown\n ): any {\n const value = Reflect.get(target, prop, receiver)\n if (typeof value === 'function') {\n return value.bind(target)\n }\n\n return value\n }\n\n static set<T extends object>(\n target: T,\n prop: string | symbol,\n value: any,\n receiver: any\n ): boolean {\n return Reflect.set(target, prop, value, receiver)\n }\n\n static has<T extends object>(target: T, prop: string | symbol): boolean {\n return Reflect.has(target, prop)\n }\n\n static deleteProperty<T extends object>(\n target: T,\n prop: string | symbol\n ): boolean {\n return Reflect.deleteProperty(target, prop)\n }\n}\n","import type { AsyncLocalStorage } from 'async_hooks'\n\nconst sharedAsyncLocalStorageNotAvailableError = new Error(\n 'Invariant: AsyncLocalStorage accessed in runtime where it is not available'\n)\n\nclass FakeAsyncLocalStorage<Store extends {}>\n implements AsyncLocalStorage<Store>\n{\n disable(): void {\n throw sharedAsyncLocalStorageNotAvailableError\n }\n\n getStore(): Store | undefined {\n // This fake implementation of AsyncLocalStorage always returns `undefined`.\n return undefined\n }\n\n run<R>(): R {\n throw sharedAsyncLocalStorageNotAvailableError\n }\n\n exit<R>(): R {\n throw sharedAsyncLocalStorageNotAvailableError\n }\n\n enterWith(): void {\n throw sharedAsyncLocalStorageNotAvailableError\n }\n\n static bind<T>(fn: T): T {\n return fn\n }\n}\n\nconst maybeGlobalAsyncLocalStorage =\n typeof globalThis !== 'undefined' && (globalThis as any).AsyncLocalStorage\n\nexport function createAsyncLocalStorage<\n Store extends {},\n>(): AsyncLocalStorage<Store> {\n if (maybeGlobalAsyncLocalStorage) {\n return new maybeGlobalAsyncLocalStorage()\n }\n return new FakeAsyncLocalStorage()\n}\n\nexport function bindSnapshot<T>(fn: T): T {\n if (maybeGlobalAsyncLocalStorage) {\n return maybeGlobalAsyncLocalStorage.bind(fn)\n }\n return FakeAsyncLocalStorage.bind(fn)\n}\n\nexport function createSnapshot(): <R, TArgs extends any[]>(\n fn: (...args: TArgs) => R,\n ...args: TArgs\n) => R {\n if (maybeGlobalAsyncLocalStorage) {\n return maybeGlobalAsyncLocalStorage.snapshot()\n }\n return function (fn: any, ...args: any[]) {\n return fn(...args)\n }\n}\n","import type { WorkAsyncStorage } from './work-async-storage.external'\nimport { createAsyncLocalStorage } from './async-local-storage'\n\nexport const workAsyncStorageInstance: WorkAsyncStorage =\n createAsyncLocalStorage()\n","import type { AsyncLocalStorage } from 'async_hooks'\nimport type { IncrementalCache } from '../lib/incremental-cache'\nimport type { FetchMetrics } from '../base-http'\nimport type { FallbackRouteParams } from '../request/fallback-params'\nimport type { DeepReadonly } from '../../shared/lib/deep-readonly'\nimport type { AppSegmentConfig } from '../../build/segment-config/app/app-segment-config'\nimport type { AfterContext } from '../after/after-context'\nimport type { CacheLife } from '../use-cache/cache-life'\n\n// Share the instance module in the next-shared layer\nimport { workAsyncStorageInstance } from './work-async-storage-instance' with { 'turbopack-transition': 'next-shared' }\nimport type { LazyResult } from '../lib/lazy-result'\n\nexport interface WorkStore {\n readonly isStaticGeneration: boolean\n\n /**\n * The page that is being rendered. This relates to the path to the page file.\n */\n readonly page: string\n\n /**\n * The route that is being rendered. This is the page property without the\n * trailing `/page` or `/route` suffix.\n */\n readonly route: string\n\n /**\n * The set of unknown route parameters. Accessing these will be tracked as\n * a dynamic access.\n */\n readonly fallbackRouteParams: FallbackRouteParams | null\n\n readonly incrementalCache?: IncrementalCache\n readonly cacheLifeProfiles?: { [profile: string]: CacheLife }\n\n readonly isOnDemandRevalidate?: boolean\n readonly isPrerendering?: boolean\n readonly isRevalidate?: boolean\n\n forceDynamic?: boolean\n fetchCache?: AppSegmentConfig['fetchCache']\n\n forceStatic?: boolean\n dynamicShouldError?: boolean\n pendingRevalidates?: Record<string, Promise<any>>\n pendingRevalidateWrites?: Array<Promise<void>> // This is like pendingRevalidates but isn't used for deduping.\n readonly afterContext: AfterContext\n\n dynamicUsageDescription?: string\n dynamicUsageStack?: string\n\n /**\n * Invalid usage errors might be caught in userland. We attach them to the\n * work store to ensure we can still fail the build or dev render.\n */\n // TODO: Collect an array of errors, and throw as AggregateError when\n // `serializeError` and the Dev Overlay support it.\n invalidUsageError?: Error\n\n nextFetchId?: number\n pathWasRevalidated?: boolean\n\n /**\n * Tags that were revalidated during the current request. They need to be sent\n * to cache handlers to propagate their revalidation.\n */\n pendingRevalidatedTags?: string[]\n\n /**\n * Tags that were previously revalidated (e.g. by a redirecting server action)\n * and have already been sent to cache handlers. Retrieved cache entries that\n * include any of these tags must be discarded.\n */\n readonly previouslyRevalidatedTags: readonly string[]\n\n /**\n * This map contains lazy results so that we can evaluate them when the first\n * cache entry is read. It allows us to skip refreshing tags if no caches are\n * read at all.\n */\n readonly refreshTagsByCacheKind: Map<string, LazyResult<void>>\n\n fetchMetrics?: FetchMetrics\n\n isDraftMode?: boolean\n isUnstableNoStore?: boolean\n isPrefetchRequest?: boolean\n\n requestEndedState?: { ended?: boolean }\n\n buildId: string\n\n readonly reactLoadableManifest?: DeepReadonly<\n Record<string, { files: string[] }>\n >\n readonly assetPrefix?: string\n\n dynamicIOEnabled: boolean\n dev: boolean\n}\n\nexport type WorkAsyncStorage = AsyncLocalStorage<WorkStore>\n\nexport { workAsyncStorageInstance as workAsyncStorage }\n","import { createAsyncLocalStorage } from './async-local-storage'\nimport type { WorkUnitAsyncStorage } from './work-unit-async-storage.external'\n\nexport const workUnitAsyncStorageInstance: WorkUnitAsyncStorage =\n createAsyncLocalStorage()\n","export const RSC_HEADER = 'RSC' as const\nexport const ACTION_HEADER = 'Next-Action' as const\n// TODO: Instead of sending the full router state, we only need to send the\n// segment path. Saves bytes. Then we could also use this field for segment\n// prefetches, which also need to specify a particular segment.\nexport const NEXT_ROUTER_STATE_TREE_HEADER = 'Next-Router-State-Tree' as const\nexport const NEXT_ROUTER_PREFETCH_HEADER = 'Next-Router-Prefetch' as const\n// This contains the path to the segment being prefetched.\n// TODO: If we change Next-Router-State-Tree to be a segment path, we can use\n// that instead. Then Next-Router-Prefetch and Next-Router-Segment-Prefetch can\n// be merged into a single enum.\nexport const NEXT_ROUTER_SEGMENT_PREFETCH_HEADER =\n 'Next-Router-Segment-Prefetch' as const\nexport const NEXT_HMR_REFRESH_HEADER = 'Next-HMR-Refresh' as const\nexport const NEXT_HMR_REFRESH_HASH_COOKIE = '__next_hmr_refresh_hash__' as const\nexport const NEXT_URL = 'Next-Url' as const\nexport const RSC_CONTENT_TYPE_HEADER = 'text/x-component' as const\n\nexport const FLIGHT_HEADERS = [\n RSC_HEADER,\n NEXT_ROUTER_STATE_TREE_HEADER,\n NEXT_ROUTER_PREFETCH_HEADER,\n NEXT_HMR_REFRESH_HEADER,\n NEXT_ROUTER_SEGMENT_PREFETCH_HEADER,\n] as const\n\nexport const NEXT_RSC_UNION_QUERY = '_rsc' as const\n\nexport const NEXT_ROUTER_STALE_TIME_HEADER = 'x-nextjs-stale-time' as const\nexport const NEXT_DID_POSTPONE_HEADER = 'x-nextjs-postponed' as const\nexport const NEXT_REWRITTEN_PATH_HEADER = 'x-nextjs-rewritten-path' as const\nexport const NEXT_REWRITTEN_QUERY_HEADER = 'x-nextjs-rewritten-query' as const\nexport const NEXT_IS_PRERENDER_HEADER = 'x-nextjs-prerender' as const\n","import type { AsyncLocalStorage } from 'async_hooks'\nimport type { DraftModeProvider } from '../async-storage/draft-mode-provider'\nimport type { ResponseCookies } from '../web/spec-extension/cookies'\nimport type { ReadonlyHeaders } from '../web/spec-extension/adapters/headers'\nimport type { ReadonlyRequestCookies } from '../web/spec-extension/adapters/request-cookies'\nimport type { CacheSignal } from './cache-signal'\nimport type { DynamicTrackingState } from './dynamic-rendering'\n\n// Share the instance module in the next-shared layer\nimport { workUnitAsyncStorageInstance } from './work-unit-async-storage-instance' with { 'turbopack-transition': 'next-shared' }\nimport type { ServerComponentsHmrCache } from '../response-cache'\nimport type {\n RenderResumeDataCache,\n PrerenderResumeDataCache,\n} from '../resume-data-cache/resume-data-cache'\nimport type { Params } from '../request/params'\nimport type { ImplicitTags } from '../lib/implicit-tags'\nimport type { WorkStore } from './work-async-storage.external'\nimport { NEXT_HMR_REFRESH_HASH_COOKIE } from '../../client/components/app-router-headers'\n\nexport type WorkUnitPhase = 'action' | 'render' | 'after'\n\nexport interface CommonWorkUnitStore {\n /** NOTE: Will be mutated as phases change */\n phase: WorkUnitPhase\n readonly implicitTags: ImplicitTags\n}\n\nexport interface RequestStore extends CommonWorkUnitStore {\n type: 'request'\n\n /**\n * The URL of the request. This only specifies the pathname and the search\n * part of the URL.\n */\n readonly url: {\n /**\n * The pathname of the requested URL.\n */\n readonly pathname: string\n\n /**\n * The search part of the requested URL. If the request did not provide a\n * search part, this will be an empty string.\n */\n readonly search: string\n }\n\n readonly headers: ReadonlyHeaders\n // This is mutable because we need to reassign it when transitioning from the action phase to the render phase.\n // The cookie object itself is deliberately read only and thus can't be updated.\n cookies: ReadonlyRequestCookies\n readonly mutableCookies: ResponseCookies\n readonly userspaceMutableCookies: ResponseCookies\n readonly draftMode: DraftModeProvider\n readonly isHmrRefresh?: boolean\n readonly serverComponentsHmrCache?: ServerComponentsHmrCache\n\n readonly rootParams: Params\n\n /**\n * The resume data cache for this request. This will be a immutable cache.\n */\n renderResumeDataCache: RenderResumeDataCache | null\n\n // DEV-only\n usedDynamic?: boolean\n prerenderPhase?: boolean\n}\n\n/**\n * The Prerender store is for tracking information related to prerenders.\n *\n * It can be used for both RSC and SSR prerendering and should be scoped as close\n * to the individual `renderTo...` API call as possible. To keep the type simple\n * we don't distinguish between RSC and SSR prerendering explicitly but instead\n * use conditional object properties to infer which mode we are in. For instance cache tracking\n * only needs to happen during the RSC prerender when we are prospectively prerendering\n * to fill all caches.\n */\nexport interface PrerenderStoreModern extends CommonWorkUnitStore {\n type: 'prerender'\n\n /**\n * This signal is aborted when the React render is complete. (i.e. it is the same signal passed to react)\n */\n readonly renderSignal: AbortSignal\n /**\n * This is the AbortController which represents the boundary between Prerender and dynamic. In some renders it is\n * the same as the controller for the renderSignal but in others it is a separate controller. It should be aborted\n * whenever the we are no longer in the prerender phase of rendering. Typically this is after one task or when you call\n * a sync API which requires the prerender to end immediately\n */\n readonly controller: AbortController\n\n /**\n * when not null this signal is used to track cache reads during prerendering and\n * to await all cache reads completing before aborting the prerender.\n */\n readonly cacheSignal: null | CacheSignal\n\n /**\n * During some prerenders we want to track dynamic access.\n */\n readonly dynamicTracking: null | DynamicTrackingState\n\n readonly rootParams: Params\n\n // Collected revalidate times and tags for this document during the prerender.\n revalidate: number // in seconds. 0 means dynamic. INFINITE_CACHE and higher means never revalidate.\n expire: number // server expiration time\n stale: number // client expiration time\n tags: null | string[]\n\n /**\n * The resume data cache for this prerender.\n */\n prerenderResumeDataCache: PrerenderResumeDataCache | null\n\n // DEV ONLY\n // When used this flag informs certain APIs to skip logging because we're\n // not part of the primary render path and are just prerendering to produce\n // validation results\n validating?: boolean\n\n /**\n * The HMR refresh hash is only provided in dev mode. It is needed for the dev\n * warmup render to ensure that the cache keys will be identical for the\n * subsequent dynamic render.\n */\n readonly hmrRefreshHash: string | undefined\n}\n\nexport interface PrerenderStorePPR extends CommonWorkUnitStore {\n type: 'prerender-ppr'\n readonly rootParams: Params\n readonly dynamicTracking: null | DynamicTrackingState\n // Collected revalidate times and tags for this document during the prerender.\n revalidate: number // in seconds. 0 means dynamic. INFINITE_CACHE and higher means never revalidate.\n expire: number // server expiration time\n stale: number // client expiration time\n tags: null | string[]\n\n /**\n * The resume data cache for this prerender.\n */\n prerenderResumeDataCache: PrerenderResumeDataCache\n}\n\nexport interface PrerenderStoreLegacy extends CommonWorkUnitStore {\n type: 'prerender-legacy'\n readonly rootParams: Params\n // Collected revalidate times and tags for this document during the prerender.\n revalidate: number // in seconds. 0 means dynamic. INFINITE_CACHE and higher means never revalidate.\n expire: number // server expiration time\n stale: number // client expiration time\n tags: null | string[]\n}\n\nexport type PrerenderStore =\n | PrerenderStoreLegacy\n | PrerenderStorePPR\n | PrerenderStoreModern\n\nexport interface CommonCacheStore\n extends Omit<CommonWorkUnitStore, 'implicitTags'> {\n /**\n * A cache work unit store might not always have an outer work unit store,\n * from which implicit tags could be inherited.\n */\n readonly implicitTags: ImplicitTags | undefined\n}\n\nexport interface UseCacheStore extends CommonCacheStore {\n type: 'cache'\n // Collected revalidate times and tags for this cache entry during the cache render.\n revalidate: number // implicit revalidate time from inner caches / fetches\n expire: number // server expiration time\n stale: number // client expiration time\n explicitRevalidate: undefined | number // explicit revalidate time from cacheLife() calls\n explicitExpire: undefined | number // server expiration time\n explicitStale: undefined | number // client expiration time\n tags: null | string[]\n readonly hmrRefreshHash: string | undefined\n readonly isHmrRefresh: boolean\n readonly serverComponentsHmrCache: ServerComponentsHmrCache | undefined\n readonly forceRevalidate: boolean\n // Draft mode is only available if the outer work unit store is a request\n // store and draft mode is enabled.\n readonly draftMode: DraftModeProvider | undefined\n}\n\nexport interface UnstableCacheStore extends CommonCacheStore {\n type: 'unstable-cache'\n // Draft mode is only available if the outer work unit store is a request\n // store and draft mode is enabled.\n readonly draftMode: DraftModeProvider | undefined\n}\n\n/**\n * The Cache store is for tracking information inside a \"use cache\" or unstable_cache context.\n * Inside this context we should never expose any request or page specific information.\n */\nexport type CacheStore = UseCacheStore | UnstableCacheStore\n\nexport type WorkUnitStore = RequestStore | CacheStore | PrerenderStore\n\nexport type WorkUnitAsyncStorage = AsyncLocalStorage<WorkUnitStore>\n\nexport { workUnitAsyncStorageInstance as workUnitAsyncStorage }\n\nexport function getExpectedRequestStore(\n callingExpression: string\n): RequestStore {\n const workUnitStore = workUnitAsyncStorageInstance.getStore()\n\n if (!workUnitStore) {\n throwForMissingRequestStore(callingExpression)\n }\n\n switch (workUnitStore.type) {\n case 'request':\n return workUnitStore\n\n case 'prerender':\n case 'prerender-ppr':\n case 'prerender-legacy':\n // This should not happen because we should have checked it already.\n throw new Error(\n `\\`${callingExpression}\\` cannot be called inside a prerender. This is a bug in Next.js.`\n )\n\n case 'cache':\n throw new Error(\n `\\`${callingExpression}\\` cannot be called inside \"use cache\". Call it outside and pass an argument instead. Read more: https://nextjs.org/docs/messages/next-request-in-use-cache`\n )\n\n case 'unstable-cache':\n throw new Error(\n `\\`${callingExpression}\\` cannot be called inside unstable_cache. Call it outside and pass an argument instead. Read more: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`\n )\n\n default:\n const _exhaustiveCheck: never = workUnitStore\n return _exhaustiveCheck\n }\n}\n\nexport function throwForMissingRequestStore(callingExpression: string): never {\n throw new Error(\n `\\`${callingExpression}\\` was called outside a request scope. Read more: https://nextjs.org/docs/messages/next-dynamic-api-wrong-context`\n )\n}\n\nexport function getPrerenderResumeDataCache(\n workUnitStore: WorkUnitStore\n): PrerenderResumeDataCache | null {\n if (\n workUnitStore.type === 'prerender' ||\n workUnitStore.type === 'prerender-ppr'\n ) {\n return workUnitStore.prerenderResumeDataCache\n }\n\n return null\n}\n\nexport function getRenderResumeDataCache(\n workUnitStore: WorkUnitStore\n): RenderResumeDataCache | null {\n if (\n workUnitStore.type !== 'prerender-legacy' &&\n workUnitStore.type !== 'cache' &&\n workUnitStore.type !== 'unstable-cache'\n ) {\n if (workUnitStore.type === 'request') {\n return workUnitStore.renderResumeDataCache\n }\n\n // We return the mutable resume data cache here as an immutable version of\n // the cache as it can also be used for reading.\n return workUnitStore.prerenderResumeDataCache\n }\n\n return null\n}\n\nexport function getHmrRefreshHash(\n workStore: WorkStore,\n workUnitStore: WorkUnitStore\n): string | undefined {\n if (!workStore.dev) {\n return undefined\n }\n\n return workUnitStore.type === 'cache' || workUnitStore.type === 'prerender'\n ? workUnitStore.hmrRefreshHash\n : workUnitStore.type === 'request'\n ? workUnitStore.cookies.get(NEXT_HMR_REFRESH_HASH_COOKIE)?.value\n : undefined\n}\n\n/**\n * Returns a draft mode provider only if draft mode is enabled.\n */\nexport function getDraftModeProviderForCacheScope(\n workStore: WorkStore,\n workUnitStore: WorkUnitStore\n): DraftModeProvider | undefined {\n if (workStore.isDraftMode) {\n switch (workUnitStore.type) {\n case 'cache':\n case 'unstable-cache':\n case 'request':\n return workUnitStore.draftMode\n default:\n return undefined\n }\n }\n\n return undefined\n}\n","import { RequestCookies } from '../cookies'\n\nimport { ResponseCookies } from '../cookies'\nimport { ReflectAdapter } from './reflect'\nimport { workAsyncStorage } from '../../../app-render/work-async-storage.external'\nimport {\n getExpectedRequestStore,\n type RequestStore,\n} from '../../../app-render/work-unit-async-storage.external'\n\n/**\n * @internal\n */\nexport class ReadonlyRequestCookiesError extends Error {\n constructor() {\n super(\n 'Cookies can only be modified in a Server Action or Route Handler. Read more: https://nextjs.org/docs/app/api-reference/functions/cookies#options'\n )\n }\n\n public static callable() {\n throw new ReadonlyRequestCookiesError()\n }\n}\n\n// We use this to type some APIs but we don't construct instances directly\nexport type { ResponseCookies }\n\n// The `cookies()` API is a mix of request and response cookies. For `.get()` methods,\n// we want to return the request cookie if it exists. For mutative methods like `.set()`,\n// we want to return the response cookie.\nexport type ReadonlyRequestCookies = Omit<\n RequestCookies,\n 'set' | 'clear' | 'delete'\n> &\n Pick<ResponseCookies, 'set' | 'delete'>\n\nexport class RequestCookiesAdapter {\n public static seal(cookies: RequestCookies): ReadonlyRequestCookies {\n return new Proxy(cookies as any, {\n get(target, prop, receiver) {\n switch (prop) {\n case 'clear':\n case 'delete':\n case 'set':\n return ReadonlyRequestCookiesError.callable\n default:\n return ReflectAdapter.get(target, prop, receiver)\n }\n },\n })\n }\n}\n\nconst SYMBOL_MODIFY_COOKIE_VALUES = Symbol.for('next.mutated.cookies')\n\nexport function getModifiedCookieValues(\n cookies: ResponseCookies\n): ResponseCookie[] {\n const modified: ResponseCookie[] | undefined = (cookies as unknown as any)[\n SYMBOL_MODIFY_COOKIE_VALUES\n ]\n if (!modified || !Array.isArray(modified) || modified.length === 0) {\n return []\n }\n\n return modified\n}\n\ntype SetCookieArgs =\n | [key: string, value: string, cookie?: Partial<ResponseCookie>]\n | [options: ResponseCookie]\n\nexport function appendMutableCookies(\n headers: Headers,\n mutableCookies: ResponseCookies\n): boolean {\n const modifiedCookieValues = getModifiedCookieValues(mutableCookies)\n if (modifiedCookieValues.length === 0) {\n return false\n }\n\n // Return a new response that extends the response with\n // the modified cookies as fallbacks. `res` cookies\n // will still take precedence.\n const resCookies = new ResponseCookies(headers)\n const returnedCookies = resCookies.getAll()\n\n // Set the modified cookies as fallbacks.\n for (const cookie of modifiedCookieValues) {\n resCookies.set(cookie)\n }\n\n // Set the original cookies as the final values.\n for (const cookie of returnedCookies) {\n resCookies.set(cookie)\n }\n\n return true\n}\n\ntype ResponseCookie = NonNullable<\n ReturnType<InstanceType<typeof ResponseCookies>['get']>\n>\n\nexport class MutableRequestCookiesAdapter {\n public static wrap(\n cookies: RequestCookies,\n onUpdateCookies?: (cookies: string[]) => void\n ): ResponseCookies {\n const responseCookies = new ResponseCookies(new Headers())\n for (const cookie of cookies.getAll()) {\n responseCookies.set(cookie)\n }\n\n let modifiedValues: ResponseCookie[] = []\n const modifiedCookies = new Set<string>()\n const updateResponseCookies = () => {\n // TODO-APP: change method of getting workStore\n const workStore = workAsyncStorage.getStore()\n if (workStore) {\n workStore.pathWasRevalidated = true\n }\n\n const allCookies = responseCookies.getAll()\n modifiedValues = allCookies.filter((c) => modifiedCookies.has(c.name))\n if (onUpdateCookies) {\n const serializedCookies: string[] = []\n for (const cookie of modifiedValues) {\n const tempCookies = new ResponseCookies(new Headers())\n tempCookies.set(cookie)\n serializedCookies.push(tempCookies.toString())\n }\n\n onUpdateCookies(serializedCookies)\n }\n }\n\n const wrappedCookies = new Proxy(responseCookies, {\n get(target, prop, receiver) {\n switch (prop) {\n // A special symbol to get the modified cookie values\n case SYMBOL_MODIFY_COOKIE_VALUES:\n return modifiedValues\n\n // TODO: Throw error if trying to set a cookie after the response\n // headers have been set.\n case 'delete':\n return function (...args: [string] | [ResponseCookie]) {\n modifiedCookies.add(\n typeof args[0] === 'string' ? args[0] : args[0].name\n )\n try {\n target.delete(...args)\n return wrappedCookies\n } finally {\n updateResponseCookies()\n }\n }\n case 'set':\n return function (...args: SetCookieArgs) {\n modifiedCookies.add(\n typeof args[0] === 'string' ? args[0] : args[0].name\n )\n try {\n target.set(...args)\n return wrappedCookies\n } finally {\n updateResponseCookies()\n }\n }\n\n default:\n return ReflectAdapter.get(target, prop, receiver)\n }\n },\n })\n\n return wrappedCookies\n }\n}\n\nexport function wrapWithMutableAccessCheck(\n responseCookies: ResponseCookies\n): ResponseCookies {\n const wrappedCookies = new Proxy(responseCookies, {\n get(target, prop, receiver) {\n switch (prop) {\n case 'delete':\n return function (...args: [string] | [ResponseCookie]) {\n ensureCookiesAreStillMutable('cookies().delete')\n target.delete(...args)\n return wrappedCookies\n }\n case 'set':\n return function (...args: SetCookieArgs) {\n ensureCookiesAreStillMutable('cookies().set')\n target.set(...args)\n return wrappedCookies\n }\n\n default:\n return ReflectAdapter.get(target, prop, receiver)\n }\n },\n })\n return wrappedCookies\n}\n\nexport function areCookiesMutableInCurrentPhase(requestStore: RequestStore) {\n return requestStore.phase === 'action'\n}\n\n/** Ensure that cookies() starts throwing on mutation\n * if we changed phases and can no longer mutate.\n *\n * This can happen when going:\n * 'render' -> 'after'\n * 'action' -> 'render'\n * */\nfunction ensureCookiesAreStillMutable(callingExpression: string) {\n const requestStore = getExpectedRequestStore(callingExpression)\n if (!areCookiesMutableInCurrentPhase(requestStore)) {\n // TODO: maybe we can give a more precise error message based on callingExpression?\n throw new ReadonlyRequestCookiesError()\n }\n}\n\nexport function responseCookiesToRequestCookies(\n responseCookies: ResponseCookies\n): RequestCookies {\n const requestCookies = new RequestCookies(new Headers())\n for (const cookie of responseCookies.getAll()) {\n requestCookies.set(cookie)\n }\n return requestCookies\n}\n","/**\n * @license React\n * react.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nfunction getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable) return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n}\nvar ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function () {},\n enqueueReplaceState: function () {},\n enqueueSetState: function () {}\n },\n assign = Object.assign,\n emptyObject = {};\nfunction Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nComponent.prototype.isReactComponent = {};\nComponent.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n};\nComponent.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n};\nfunction ComponentDummy() {}\nComponentDummy.prototype = Component.prototype;\nfunction PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nvar pureComponentPrototype = (PureComponent.prototype = new ComponentDummy());\npureComponentPrototype.constructor = PureComponent;\nassign(pureComponentPrototype, Component.prototype);\npureComponentPrototype.isPureReactComponent = !0;\nvar isArrayImpl = Array.isArray,\n ReactSharedInternals = { H: null, A: null, T: null, S: null, V: null },\n hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction ReactElement(type, key, self, source, owner, props) {\n self = props.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== self ? self : null,\n props: props\n };\n}\nfunction cloneAndReplaceKey(oldElement, newKey) {\n return ReactElement(\n oldElement.type,\n newKey,\n void 0,\n void 0,\n void 0,\n oldElement.props\n );\n}\nfunction isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n}\nfunction escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n}\nvar userProvidedKeyEscapeRegex = /\\/+/g;\nfunction getElementKey(element, index) {\n return \"object\" === typeof element && null !== element && null != element.key\n ? escape(\"\" + element.key)\n : index.toString(36);\n}\nfunction noop$1() {}\nfunction resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop$1, noop$1)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"), (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n}\nfunction mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback)\n return (\n (callback = callback(children)),\n (invokeCallback =\n \"\" === nameSoFar ? \".\" + getElementKey(children, 0) : nameSoFar),\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != invokeCallback &&\n (escapedPrefix =\n invokeCallback.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (callback = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (children && children.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n invokeCallback\n )),\n array.push(callback)),\n 1\n );\n invokeCallback = 0;\n var nextNamePrefix = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = nextNamePrefix + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n children = i.call(children), i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = nextNamePrefix + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n}\nfunction mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n}\nfunction lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status && ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status) return payload._result.default;\n throw payload._result;\n}\nvar reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n };\nfunction noop() {}\nexports.Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n};\nexports.Component = Component;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.PureComponent = PureComponent;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\nexports.__COMPILER_RUNTIME = {\n __proto__: null,\n c: function (size) {\n return ReactSharedInternals.H.useMemoCache(size);\n }\n};\nexports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n};\nexports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" + element + \".\"\n );\n var props = assign({}, element.props),\n key = element.key,\n owner = void 0;\n if (null != config)\n for (propName in (void 0 !== config.ref && (owner = void 0),\n void 0 !== config.key && (key = \"\" + config.key),\n config))\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n for (var childArray = Array(propName), i = 0; i < propName; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n return ReactElement(element.type, key, void 0, void 0, owner, props);\n};\nexports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n return defaultValue;\n};\nexports.createElement = function (type, config, children) {\n var propName,\n props = {},\n key = null;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (props[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) props.children = children;\n else if (1 < childrenLength) {\n for (var childArray = Array(childrenLength), i = 0; i < childrenLength; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === props[propName] &&\n (props[propName] = childrenLength[propName]);\n return ReactElement(type, key, void 0, void 0, null, props);\n};\nexports.createRef = function () {\n return { current: null };\n};\nexports.forwardRef = function (render) {\n return { $$typeof: REACT_FORWARD_REF_TYPE, render: render };\n};\nexports.isValidElement = isValidElement;\nexports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n};\nexports.memo = function (type, compare) {\n return {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n};\nexports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n ReactSharedInternals.T = prevTransition;\n }\n};\nexports.unstable_useCacheRefresh = function () {\n return ReactSharedInternals.H.useCacheRefresh();\n};\nexports.use = function (usable) {\n return ReactSharedInternals.H.use(usable);\n};\nexports.useActionState = function (action, initialState, permalink) {\n return ReactSharedInternals.H.useActionState(action, initialState, permalink);\n};\nexports.useCallback = function (callback, deps) {\n return ReactSharedInternals.H.useCallback(callback, deps);\n};\nexports.useContext = function (Context) {\n return ReactSharedInternals.H.useContext(Context);\n};\nexports.useDebugValue = function () {};\nexports.useDeferredValue = function (value, initialValue) {\n return ReactSharedInternals.H.useDeferredValue(value, initialValue);\n};\nexports.useEffect = function (create, createDeps, update) {\n var dispatcher = ReactSharedInternals.H;\n if (\"function\" === typeof update)\n throw Error(\n \"useEffect CRUD overload is not enabled in this build of React.\"\n );\n return dispatcher.useEffect(create, createDeps);\n};\nexports.useId = function () {\n return ReactSharedInternals.H.useId();\n};\nexports.useImperativeHandle = function (ref, create, deps) {\n return ReactSharedInternals.H.useImperativeHandle(ref, create, deps);\n};\nexports.useInsertionEffect = function (create, deps) {\n return ReactSharedInternals.H.useInsertionEffect(create, deps);\n};\nexports.useLayoutEffect = function (create, deps) {\n return ReactSharedInternals.H.useLayoutEffect(create, deps);\n};\nexports.useMemo = function (create, deps) {\n return ReactSharedInternals.H.useMemo(create, deps);\n};\nexports.useOptimistic = function (passthrough, reducer) {\n return ReactSharedInternals.H.useOptimistic(passthrough, reducer);\n};\nexports.useReducer = function (reducer, initialArg, init) {\n return ReactSharedInternals.H.useReducer(reducer, initialArg, init);\n};\nexports.useRef = function (initialValue) {\n return ReactSharedInternals.H.useRef(initialValue);\n};\nexports.useState = function (initialState) {\n return ReactSharedInternals.H.useState(initialState);\n};\nexports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n) {\n return ReactSharedInternals.H.useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n};\nexports.useTransition = function () {\n return ReactSharedInternals.H.useTransition();\n};\nexports.version = \"19.1.0\";\n","/**\n * @license React\n * react.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function defineDeprecationWarning(methodName, info) {\n Object.defineProperty(Component.prototype, methodName, {\n get: function () {\n console.warn(\n \"%s(...) is deprecated in plain JavaScript React classes. %s\",\n info[0],\n info[1]\n );\n }\n });\n }\n function getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable)\n return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n }\n function warnNoop(publicInstance, callerName) {\n publicInstance =\n ((publicInstance = publicInstance.constructor) &&\n (publicInstance.displayName || publicInstance.name)) ||\n \"ReactClass\";\n var warningKey = publicInstance + \".\" + callerName;\n didWarnStateUpdateForUnmountedComponent[warningKey] ||\n (console.error(\n \"Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.\",\n callerName,\n publicInstance\n ),\n (didWarnStateUpdateForUnmountedComponent[warningKey] = !0));\n }\n function Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n }\n function ComponentDummy() {}\n function PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return (type.displayName || \"Context\") + \".Provider\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(\n type,\n key,\n self,\n source,\n owner,\n props,\n debugStack,\n debugTask\n ) {\n self = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== self ? self : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function cloneAndReplaceKey(oldElement, newKey) {\n newKey = ReactElement(\n oldElement.type,\n newKey,\n void 0,\n void 0,\n oldElement._owner,\n oldElement.props,\n oldElement._debugStack,\n oldElement._debugTask\n );\n oldElement._store &&\n (newKey._store.validated = oldElement._store.validated);\n return newKey;\n }\n function isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n }\n function escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n }\n function getElementKey(element, index) {\n return \"object\" === typeof element &&\n null !== element &&\n null != element.key\n ? (checkKeyStringCoercion(element.key), escape(\"\" + element.key))\n : index.toString(36);\n }\n function noop$1() {}\n function resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop$1, noop$1)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"),\n (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n }\n function mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback) {\n invokeCallback = children;\n callback = callback(invokeCallback);\n var childKey =\n \"\" === nameSoFar ? \".\" + getElementKey(invokeCallback, 0) : nameSoFar;\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != childKey &&\n (escapedPrefix =\n childKey.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (null != callback.key &&\n ((invokeCallback && invokeCallback.key === callback.key) ||\n checkKeyStringCoercion(callback.key)),\n (escapedPrefix = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (invokeCallback && invokeCallback.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n childKey\n )),\n \"\" !== nameSoFar &&\n null != invokeCallback &&\n isValidElement(invokeCallback) &&\n null == invokeCallback.key &&\n invokeCallback._store &&\n !invokeCallback._store.validated &&\n (escapedPrefix._store.validated = 2),\n (callback = escapedPrefix)),\n array.push(callback));\n return 1;\n }\n invokeCallback = 0;\n childKey = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = childKey + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n i === children.entries &&\n (didWarnAboutMaps ||\n console.warn(\n \"Using Maps as children is not supported. Use an array of keyed ReactElements instead.\"\n ),\n (didWarnAboutMaps = !0)),\n children = i.call(children),\n i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = childKey + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n }\n function mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n }\n function lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status &&\n ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status)\n return (\n (ctor = payload._result),\n void 0 === ctor &&\n console.error(\n \"lazy: Expected the result of a dynamic import() call. Instead received: %s\\n\\nYour code should look like: \\n const MyComponent = lazy(() => import('./MyComponent'))\\n\\nDid you accidentally put curly braces around the import?\",\n ctor\n ),\n \"default\" in ctor ||\n console.error(\n \"lazy: Expected the result of a dynamic import() call. Instead received: %s\\n\\nYour code should look like: \\n const MyComponent = lazy(() => import('./MyComponent'))\",\n ctor\n ),\n ctor.default\n );\n throw payload._result;\n }\n function resolveDispatcher() {\n var dispatcher = ReactSharedInternals.H;\n null === dispatcher &&\n console.error(\n \"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.\"\n );\n return dispatcher;\n }\n function noop() {}\n function enqueueTask(task) {\n if (null === enqueueTaskImpl)\n try {\n var requireString = (\"require\" + Math.random()).slice(0, 7);\n enqueueTaskImpl = (module && module[requireString]).call(\n module,\n \"timers\"\n ).setImmediate;\n } catch (_err) {\n enqueueTaskImpl = function (callback) {\n !1 === didWarnAboutMessageChannel &&\n ((didWarnAboutMessageChannel = !0),\n \"undefined\" === typeof MessageChannel &&\n console.error(\n \"This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning.\"\n ));\n var channel = new MessageChannel();\n channel.port1.onmessage = callback;\n channel.port2.postMessage(void 0);\n };\n }\n return enqueueTaskImpl(task);\n }\n function aggregateErrors(errors) {\n return 1 < errors.length && \"function\" === typeof AggregateError\n ? new AggregateError(errors)\n : errors[0];\n }\n function popActScope(prevActQueue, prevActScopeDepth) {\n prevActScopeDepth !== actScopeDepth - 1 &&\n console.error(\n \"You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. \"\n );\n actScopeDepth = prevActScopeDepth;\n }\n function recursivelyFlushAsyncActWork(returnValue, resolve, reject) {\n var queue = ReactSharedInternals.actQueue;\n if (null !== queue)\n if (0 !== queue.length)\n try {\n flushActQueue(queue);\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(returnValue, resolve, reject);\n });\n return;\n } catch (error) {\n ReactSharedInternals.thrownErrors.push(error);\n }\n else ReactSharedInternals.actQueue = null;\n 0 < ReactSharedInternals.thrownErrors.length\n ? ((queue = aggregateErrors(ReactSharedInternals.thrownErrors)),\n (ReactSharedInternals.thrownErrors.length = 0),\n reject(queue))\n : resolve(returnValue);\n }\n function flushActQueue(queue) {\n if (!isFlushing) {\n isFlushing = !0;\n var i = 0;\n try {\n for (; i < queue.length; i++) {\n var callback = queue[i];\n do {\n ReactSharedInternals.didUsePromise = !1;\n var continuation = callback(!1);\n if (null !== continuation) {\n if (ReactSharedInternals.didUsePromise) {\n queue[i] = callback;\n queue.splice(0, i);\n return;\n }\n callback = continuation;\n } else break;\n } while (1);\n }\n queue.length = 0;\n } catch (error) {\n queue.splice(0, i + 1), ReactSharedInternals.thrownErrors.push(error);\n } finally {\n isFlushing = !1;\n }\n }\n }\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());\n var REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\n Symbol.for(\"react.provider\");\n var REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator,\n didWarnStateUpdateForUnmountedComponent = {},\n ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function (publicInstance) {\n warnNoop(publicInstance, \"forceUpdate\");\n },\n enqueueReplaceState: function (publicInstance) {\n warnNoop(publicInstance, \"replaceState\");\n },\n enqueueSetState: function (publicInstance) {\n warnNoop(publicInstance, \"setState\");\n }\n },\n assign = Object.assign,\n emptyObject = {};\n Object.freeze(emptyObject);\n Component.prototype.isReactComponent = {};\n Component.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n };\n Component.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n };\n var deprecatedAPIs = {\n isMounted: [\n \"isMounted\",\n \"Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks.\"\n ],\n replaceState: [\n \"replaceState\",\n \"Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236).\"\n ]\n },\n fnName;\n for (fnName in deprecatedAPIs)\n deprecatedAPIs.hasOwnProperty(fnName) &&\n defineDeprecationWarning(fnName, deprecatedAPIs[fnName]);\n ComponentDummy.prototype = Component.prototype;\n deprecatedAPIs = PureComponent.prototype = new ComponentDummy();\n deprecatedAPIs.constructor = PureComponent;\n assign(deprecatedAPIs, Component.prototype);\n deprecatedAPIs.isPureReactComponent = !0;\n var isArrayImpl = Array.isArray,\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals = {\n H: null,\n A: null,\n T: null,\n S: null,\n V: null,\n actQueue: null,\n isBatchingLegacy: !1,\n didScheduleLegacyUpdate: !1,\n didUsePromise: !1,\n thrownErrors: [],\n getCurrentStack: null,\n recentlyCreatedOwnerStacks: 0\n },\n hasOwnProperty = Object.prototype.hasOwnProperty,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n deprecatedAPIs = {\n \"react-stack-bottom-frame\": function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown, didWarnAboutOldJSXRuntime;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = deprecatedAPIs[\n \"react-stack-bottom-frame\"\n ].bind(deprecatedAPIs, UnknownOwner)();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutMaps = !1,\n userProvidedKeyEscapeRegex = /\\/+/g,\n reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n },\n didWarnAboutMessageChannel = !1,\n enqueueTaskImpl = null,\n actScopeDepth = 0,\n didWarnNoAwaitAct = !1,\n isFlushing = !1,\n queueSeveralMicrotasks =\n \"function\" === typeof queueMicrotask\n ? function (callback) {\n queueMicrotask(function () {\n return queueMicrotask(callback);\n });\n }\n : enqueueTask;\n deprecatedAPIs = Object.freeze({\n __proto__: null,\n c: function (size) {\n return resolveDispatcher().useMemoCache(size);\n }\n });\n exports.Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n };\n exports.Component = Component;\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.Profiler = REACT_PROFILER_TYPE;\n exports.PureComponent = PureComponent;\n exports.StrictMode = REACT_STRICT_MODE_TYPE;\n exports.Suspense = REACT_SUSPENSE_TYPE;\n exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\n exports.__COMPILER_RUNTIME = deprecatedAPIs;\n exports.act = function (callback) {\n var prevActQueue = ReactSharedInternals.actQueue,\n prevActScopeDepth = actScopeDepth;\n actScopeDepth++;\n var queue = (ReactSharedInternals.actQueue =\n null !== prevActQueue ? prevActQueue : []),\n didAwaitActCall = !1;\n try {\n var result = callback();\n } catch (error) {\n ReactSharedInternals.thrownErrors.push(error);\n }\n if (0 < ReactSharedInternals.thrownErrors.length)\n throw (\n (popActScope(prevActQueue, prevActScopeDepth),\n (callback = aggregateErrors(ReactSharedInternals.thrownErrors)),\n (ReactSharedInternals.thrownErrors.length = 0),\n callback)\n );\n if (\n null !== result &&\n \"object\" === typeof result &&\n \"function\" === typeof result.then\n ) {\n var thenable = result;\n queueSeveralMicrotasks(function () {\n didAwaitActCall ||\n didWarnNoAwaitAct ||\n ((didWarnNoAwaitAct = !0),\n console.error(\n \"You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);\"\n ));\n });\n return {\n then: function (resolve, reject) {\n didAwaitActCall = !0;\n thenable.then(\n function (returnValue) {\n popActScope(prevActQueue, prevActScopeDepth);\n if (0 === prevActScopeDepth) {\n try {\n flushActQueue(queue),\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(\n returnValue,\n resolve,\n reject\n );\n });\n } catch (error$0) {\n ReactSharedInternals.thrownErrors.push(error$0);\n }\n if (0 < ReactSharedInternals.thrownErrors.length) {\n var _thrownError = aggregateErrors(\n ReactSharedInternals.thrownErrors\n );\n ReactSharedInternals.thrownErrors.length = 0;\n reject(_thrownError);\n }\n } else resolve(returnValue);\n },\n function (error) {\n popActScope(prevActQueue, prevActScopeDepth);\n 0 < ReactSharedInternals.thrownErrors.length\n ? ((error = aggregateErrors(\n ReactSharedInternals.thrownErrors\n )),\n (ReactSharedInternals.thrownErrors.length = 0),\n reject(error))\n : reject(error);\n }\n );\n }\n };\n }\n var returnValue$jscomp$0 = result;\n popActScope(prevActQueue, prevActScopeDepth);\n 0 === prevActScopeDepth &&\n (flushActQueue(queue),\n 0 !== queue.length &&\n queueSeveralMicrotasks(function () {\n didAwaitActCall ||\n didWarnNoAwaitAct ||\n ((didWarnNoAwaitAct = !0),\n console.error(\n \"A component suspended inside an `act` scope, but the `act` call was not awaited. When testing React components that depend on asynchronous data, you must await the result:\\n\\nawait act(() => ...)\"\n ));\n }),\n (ReactSharedInternals.actQueue = null));\n if (0 < ReactSharedInternals.thrownErrors.length)\n throw (\n ((callback = aggregateErrors(ReactSharedInternals.thrownErrors)),\n (ReactSharedInternals.thrownErrors.length = 0),\n callback)\n );\n return {\n then: function (resolve, reject) {\n didAwaitActCall = !0;\n 0 === prevActScopeDepth\n ? ((ReactSharedInternals.actQueue = queue),\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(\n returnValue$jscomp$0,\n resolve,\n reject\n );\n }))\n : resolve(returnValue$jscomp$0);\n }\n };\n };\n exports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n };\n exports.captureOwnerStack = function () {\n var getCurrentStack = ReactSharedInternals.getCurrentStack;\n return null === getCurrentStack ? null : getCurrentStack();\n };\n exports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" +\n element +\n \".\"\n );\n var props = assign({}, element.props),\n key = element.key,\n owner = element._owner;\n if (null != config) {\n var JSCompiler_inline_result;\n a: {\n if (\n hasOwnProperty.call(config, \"ref\") &&\n (JSCompiler_inline_result = Object.getOwnPropertyDescriptor(\n config,\n \"ref\"\n ).get) &&\n JSCompiler_inline_result.isReactWarning\n ) {\n JSCompiler_inline_result = !1;\n break a;\n }\n JSCompiler_inline_result = void 0 !== config.ref;\n }\n JSCompiler_inline_result && (owner = getOwner());\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (key = \"\" + config.key));\n for (propName in config)\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n }\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n JSCompiler_inline_result = Array(propName);\n for (var i = 0; i < propName; i++)\n JSCompiler_inline_result[i] = arguments[i + 2];\n props.children = JSCompiler_inline_result;\n }\n props = ReactElement(\n element.type,\n key,\n void 0,\n void 0,\n owner,\n props,\n element._debugStack,\n element._debugTask\n );\n for (key = 2; key < arguments.length; key++)\n (owner = arguments[key]),\n isValidElement(owner) && owner._store && (owner._store.validated = 1);\n return props;\n };\n exports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n defaultValue._currentRenderer = null;\n defaultValue._currentRenderer2 = null;\n return defaultValue;\n };\n exports.createElement = function (type, config, children) {\n for (var i = 2; i < arguments.length; i++) {\n var node = arguments[i];\n isValidElement(node) && node._store && (node._store.validated = 1);\n }\n i = {};\n node = null;\n if (null != config)\n for (propName in (didWarnAboutOldJSXRuntime ||\n !(\"__self\" in config) ||\n \"key\" in config ||\n ((didWarnAboutOldJSXRuntime = !0),\n console.warn(\n \"Your app (or one of its dependencies) is using an outdated JSX transform. Update to the modern JSX transform for faster performance: https://react.dev/link/new-jsx-transform\"\n )),\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (node = \"\" + config.key)),\n config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (i[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) i.children = children;\n else if (1 < childrenLength) {\n for (\n var childArray = Array(childrenLength), _i = 0;\n _i < childrenLength;\n _i++\n )\n childArray[_i] = arguments[_i + 2];\n Object.freeze && Object.freeze(childArray);\n i.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === i[propName] && (i[propName] = childrenLength[propName]);\n node &&\n defineKeyPropWarningGetter(\n i,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n var propName = 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return ReactElement(\n type,\n node,\n void 0,\n void 0,\n getOwner(),\n i,\n propName ? Error(\"react-stack-top-frame\") : unknownOwnerDebugStack,\n propName ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.createRef = function () {\n var refObject = { current: null };\n Object.seal(refObject);\n return refObject;\n };\n exports.forwardRef = function (render) {\n null != render && render.$$typeof === REACT_MEMO_TYPE\n ? console.error(\n \"forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...)).\"\n )\n : \"function\" !== typeof render\n ? console.error(\n \"forwardRef requires a render function but was given %s.\",\n null === render ? \"null\" : typeof render\n )\n : 0 !== render.length &&\n 2 !== render.length &&\n console.error(\n \"forwardRef render functions accept exactly two parameters: props and ref. %s\",\n 1 === render.length\n ? \"Did you forget to use the ref parameter?\"\n : \"Any additional parameter will be undefined.\"\n );\n null != render &&\n null != render.defaultProps &&\n console.error(\n \"forwardRef render functions do not support defaultProps. Did you accidentally pass a React component?\"\n );\n var elementType = { $$typeof: REACT_FORWARD_REF_TYPE, render: render },\n ownName;\n Object.defineProperty(elementType, \"displayName\", {\n enumerable: !1,\n configurable: !0,\n get: function () {\n return ownName;\n },\n set: function (name) {\n ownName = name;\n render.name ||\n render.displayName ||\n (Object.defineProperty(render, \"name\", { value: name }),\n (render.displayName = name));\n }\n });\n return elementType;\n };\n exports.isValidElement = isValidElement;\n exports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n };\n exports.memo = function (type, compare) {\n null == type &&\n console.error(\n \"memo: The first argument must be a component. Instead received: %s\",\n null === type ? \"null\" : typeof type\n );\n compare = {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n var ownName;\n Object.defineProperty(compare, \"displayName\", {\n enumerable: !1,\n configurable: !0,\n get: function () {\n return ownName;\n },\n set: function (name) {\n ownName = name;\n type.name ||\n type.displayName ||\n (Object.defineProperty(type, \"name\", { value: name }),\n (type.displayName = name));\n }\n });\n return compare;\n };\n exports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n currentTransition._updatedFibers = new Set();\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n null === prevTransition &&\n currentTransition._updatedFibers &&\n ((scope = currentTransition._updatedFibers.size),\n currentTransition._updatedFibers.clear(),\n 10 < scope &&\n console.warn(\n \"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.\"\n )),\n (ReactSharedInternals.T = prevTransition);\n }\n };\n exports.unstable_useCacheRefresh = function () {\n return resolveDispatcher().useCacheRefresh();\n };\n exports.use = function (usable) {\n return resolveDispatcher().use(usable);\n };\n exports.useActionState = function (action, initialState, permalink) {\n return resolveDispatcher().useActionState(\n action,\n initialState,\n permalink\n );\n };\n exports.useCallback = function (callback, deps) {\n return resolveDispatcher().useCallback(callback, deps);\n };\n exports.useContext = function (Context) {\n var dispatcher = resolveDispatcher();\n Context.$$typeof === REACT_CONSUMER_TYPE &&\n console.error(\n \"Calling useContext(Context.Consumer) is not supported and will cause bugs. Did you mean to call useContext(Context) instead?\"\n );\n return dispatcher.useContext(Context);\n };\n exports.useDebugValue = function (value, formatterFn) {\n return resolveDispatcher().useDebugValue(value, formatterFn);\n };\n exports.useDeferredValue = function (value, initialValue) {\n return resolveDispatcher().useDeferredValue(value, initialValue);\n };\n exports.useEffect = function (create, createDeps, update) {\n null == create &&\n console.warn(\n \"React Hook useEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n var dispatcher = resolveDispatcher();\n if (\"function\" === typeof update)\n throw Error(\n \"useEffect CRUD overload is not enabled in this build of React.\"\n );\n return dispatcher.useEffect(create, createDeps);\n };\n exports.useId = function () {\n return resolveDispatcher().useId();\n };\n exports.useImperativeHandle = function (ref, create, deps) {\n return resolveDispatcher().useImperativeHandle(ref, create, deps);\n };\n exports.useInsertionEffect = function (create, deps) {\n null == create &&\n console.warn(\n \"React Hook useInsertionEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n return resolveDispatcher().useInsertionEffect(create, deps);\n };\n exports.useLayoutEffect = function (create, deps) {\n null == create &&\n console.warn(\n \"React Hook useLayoutEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n return resolveDispatcher().useLayoutEffect(create, deps);\n };\n exports.useMemo = function (create, deps) {\n return resolveDispatcher().useMemo(create, deps);\n };\n exports.useOptimistic = function (passthrough, reducer) {\n return resolveDispatcher().useOptimistic(passthrough, reducer);\n };\n exports.useReducer = function (reducer, initialArg, init) {\n return resolveDispatcher().useReducer(reducer, initialArg, init);\n };\n exports.useRef = function (initialValue) {\n return resolveDispatcher().useRef(initialValue);\n };\n exports.useState = function (initialState) {\n return resolveDispatcher().useState(initialState);\n };\n exports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n ) {\n return resolveDispatcher().useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n };\n exports.useTransition = function () {\n return resolveDispatcher().useTransition();\n };\n exports.version = \"19.1.0\";\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","const DYNAMIC_ERROR_CODE = 'DYNAMIC_SERVER_USAGE'\n\nexport class DynamicServerError extends Error {\n digest: typeof DYNAMIC_ERROR_CODE = DYNAMIC_ERROR_CODE\n\n constructor(public readonly description: string) {\n super(`Dynamic server usage: ${description}`)\n }\n}\n\nexport function isDynamicServerError(err: unknown): err is DynamicServerError {\n if (\n typeof err !== 'object' ||\n err === null ||\n !('digest' in err) ||\n typeof err.digest !== 'string'\n ) {\n return false\n }\n\n return err.digest === DYNAMIC_ERROR_CODE\n}\n","const NEXT_STATIC_GEN_BAILOUT = 'NEXT_STATIC_GEN_BAILOUT'\n\nexport class StaticGenBailoutError extends Error {\n public readonly code = NEXT_STATIC_GEN_BAILOUT\n}\n\nexport function isStaticGenBailoutError(\n error: unknown\n): error is StaticGenBailoutError {\n if (typeof error !== 'object' || error === null || !('code' in error)) {\n return false\n }\n\n return error.code === NEXT_STATIC_GEN_BAILOUT\n}\n","export function isHangingPromiseRejectionError(\n err: unknown\n): err is HangingPromiseRejectionError {\n if (typeof err !== 'object' || err === null || !('digest' in err)) {\n return false\n }\n\n return err.digest === HANGING_PROMISE_REJECTION\n}\n\nconst HANGING_PROMISE_REJECTION = 'HANGING_PROMISE_REJECTION'\n\nclass HangingPromiseRejectionError extends Error {\n public readonly digest = HANGING_PROMISE_REJECTION\n\n constructor(public readonly expression: string) {\n super(\n `During prerendering, ${expression} rejects when the prerender is complete. Typically these errors are handled by React but if you move ${expression} to a different context by using \\`setTimeout\\`, \\`after\\`, or similar functions you may observe this error and you should handle it in that context.`\n )\n }\n}\n\ntype AbortListeners = Array<(err: unknown) => void>\nconst abortListenersBySignal = new WeakMap<AbortSignal, AbortListeners>()\n\n/**\n * This function constructs a promise that will never resolve. This is primarily\n * useful for dynamicIO where we use promise resolution timing to determine which\n * parts of a render can be included in a prerender.\n *\n * @internal\n */\nexport function makeHangingPromise<T>(\n signal: AbortSignal,\n expression: string\n): Promise<T> {\n if (signal.aborted) {\n return Promise.reject(new HangingPromiseRejectionError(expression))\n } else {\n const hangingPromise = new Promise<T>((_, reject) => {\n const boundRejection = reject.bind(\n null,\n new HangingPromiseRejectionError(expression)\n )\n let currentListeners = abortListenersBySignal.get(signal)\n if (currentListeners) {\n currentListeners.push(boundRejection)\n } else {\n const listeners = [boundRejection]\n abortListenersBySignal.set(signal, listeners)\n signal.addEventListener(\n 'abort',\n () => {\n for (let i = 0; i < listeners.length; i++) {\n listeners[i]()\n }\n },\n { once: true }\n )\n }\n })\n // We are fine if no one actually awaits this promise. We shouldn't consider this an unhandled rejection so\n // we attach a noop catch handler here to suppress this warning. If you actually await somewhere or construct\n // your own promise out of it you'll need to ensure you handle the error when it rejects.\n hangingPromise.catch(ignoreReject)\n return hangingPromise\n }\n}\n\nfunction ignoreReject() {}\n","export const METADATA_BOUNDARY_NAME = '__next_metadata_boundary__'\nexport const VIEWPORT_BOUNDARY_NAME = '__next_viewport_boundary__'\nexport const OUTLET_BOUNDARY_NAME = '__next_outlet_boundary__'\n","export type ScheduledFn<T = void> = () => T | PromiseLike<T>\nexport type SchedulerFn<T = void> = (cb: ScheduledFn<T>) => void\n\n/**\n * Schedules a function to be called on the next tick after the other promises\n * have been resolved.\n *\n * @param cb the function to schedule\n */\nexport const scheduleOnNextTick = <T = void>(cb: ScheduledFn<T>): void => {\n // We use Promise.resolve().then() here so that the operation is scheduled at\n // the end of the promise job queue, we then add it to the next process tick\n // to ensure it's evaluated afterwards.\n //\n // This was inspired by the implementation of the DataLoader interface: https://github.com/graphql/dataloader/blob/d336bd15282664e0be4b4a657cb796f09bafbc6b/src/index.js#L213-L255\n //\n Promise.resolve().then(() => {\n if (process.env.NEXT_RUNTIME === 'edge') {\n setTimeout(cb, 0)\n } else {\n process.nextTick(cb)\n }\n })\n}\n\n/**\n * Schedules a function to be called using `setImmediate` or `setTimeout` if\n * `setImmediate` is not available (like in the Edge runtime).\n *\n * @param cb the function to schedule\n */\nexport const scheduleImmediate = <T = void>(cb: ScheduledFn<T>): void => {\n if (process.env.NEXT_RUNTIME === 'edge') {\n setTimeout(cb, 0)\n } else {\n setImmediate(cb)\n }\n}\n\n/**\n * returns a promise than resolves in a future task. There is no guarantee that the task it resolves in\n * will be the next task but if you await it you can at least be sure that the current task is over and\n * most usefully that the entire microtask queue of the current task has been emptied.\n */\nexport function atLeastOneTask() {\n return new Promise<void>((resolve) => scheduleImmediate(resolve))\n}\n\n/**\n * This utility function is extracted to make it easier to find places where we are doing\n * specific timing tricks to try to schedule work after React has rendered. This is especially\n * important at the moment because Next.js uses the edge builds of React which use setTimeout to\n * schedule work when you might expect that something like setImmediate would do the trick.\n *\n * Long term we should switch to the node versions of React rendering when possible and then\n * update this to use setImmediate rather than setTimeout\n */\nexport function waitAtLeastOneReactRenderTask(): Promise<void> {\n if (process.env.NEXT_RUNTIME === 'edge') {\n return new Promise((r) => setTimeout(r, 0))\n } else {\n return new Promise((r) => setImmediate(r))\n }\n}\n","/**\n * The functions provided by this module are used to communicate certain properties\n * about the currently running code so that Next.js can make decisions on how to handle\n * the current execution in different rendering modes such as pre-rendering, resuming, and SSR.\n *\n * Today Next.js treats all code as potentially static. Certain APIs may only make sense when dynamically rendering.\n * Traditionally this meant deopting the entire render to dynamic however with PPR we can now deopt parts\n * of a React tree as dynamic while still keeping other parts static. There are really two different kinds of\n * Dynamic indications.\n *\n * The first is simply an intention to be dynamic. unstable_noStore is an example of this where\n * the currently executing code simply declares that the current scope is dynamic but if you use it\n * inside unstable_cache it can still be cached. This type of indication can be removed if we ever\n * make the default dynamic to begin with because the only way you would ever be static is inside\n * a cache scope which this indication does not affect.\n *\n * The second is an indication that a dynamic data source was read. This is a stronger form of dynamic\n * because it means that it is inappropriate to cache this at all. using a dynamic data source inside\n * unstable_cache should error. If you want to use some dynamic data inside unstable_cache you should\n * read that data outside the cache and pass it in as an argument to the cached function.\n */\n\nimport type { WorkStore } from '../app-render/work-async-storage.external'\nimport type {\n WorkUnitStore,\n RequestStore,\n PrerenderStoreLegacy,\n PrerenderStoreModern,\n} from '../app-render/work-unit-async-storage.external'\n\n// Once postpone is in stable we should switch to importing the postpone export directly\nimport React from 'react'\n\nimport { DynamicServerError } from '../../client/components/hooks-server-context'\nimport { StaticGenBailoutError } from '../../client/components/static-generation-bailout'\nimport { workUnitAsyncStorage } from './work-unit-async-storage.external'\nimport { workAsyncStorage } from '../app-render/work-async-storage.external'\nimport { makeHangingPromise } from '../dynamic-rendering-utils'\nimport {\n METADATA_BOUNDARY_NAME,\n VIEWPORT_BOUNDARY_NAME,\n OUTLET_BOUNDARY_NAME,\n} from '../../lib/metadata/metadata-constants'\nimport { scheduleOnNextTick } from '../../lib/scheduler'\n\nconst hasPostpone = typeof React.unstable_postpone === 'function'\n\nexport type DynamicAccess = {\n /**\n * If debugging, this will contain the stack trace of where the dynamic access\n * occurred. This is used to provide more information to the user about why\n * their page is being rendered dynamically.\n */\n stack?: string\n\n /**\n * The expression that was accessed dynamically.\n */\n expression: string\n}\n\n// Stores dynamic reasons used during an RSC render.\nexport type DynamicTrackingState = {\n /**\n * When true, stack information will also be tracked during dynamic access.\n */\n readonly isDebugDynamicAccesses: boolean | undefined\n\n /**\n * The dynamic accesses that occurred during the render.\n */\n readonly dynamicAccesses: Array<DynamicAccess>\n\n syncDynamicExpression: undefined | string\n syncDynamicErrorWithStack: null | Error\n // Dev only\n syncDynamicLogged?: boolean\n}\n\n// Stores dynamic reasons used during an SSR render.\nexport type DynamicValidationState = {\n hasSuspendedDynamic: boolean\n hasDynamicMetadata: boolean\n hasDynamicViewport: boolean\n hasSyncDynamicErrors: boolean\n dynamicErrors: Array<Error>\n}\n\nexport function createDynamicTrackingState(\n isDebugDynamicAccesses: boolean | undefined\n): DynamicTrackingState {\n return {\n isDebugDynamicAccesses,\n dynamicAccesses: [],\n syncDynamicExpression: undefined,\n syncDynamicErrorWithStack: null,\n }\n}\n\nexport function createDynamicValidationState(): DynamicValidationState {\n return {\n hasSuspendedDynamic: false,\n hasDynamicMetadata: false,\n hasDynamicViewport: false,\n hasSyncDynamicErrors: false,\n dynamicErrors: [],\n }\n}\n\nexport function getFirstDynamicReason(\n trackingState: DynamicTrackingState\n): undefined | string {\n return trackingState.dynamicAccesses[0]?.expression\n}\n\n/**\n * This function communicates that the current scope should be treated as dynamic.\n *\n * In most cases this function is a no-op but if called during\n * a PPR prerender it will postpone the current sub-tree and calling\n * it during a normal prerender will cause the entire prerender to abort\n */\nexport function markCurrentScopeAsDynamic(\n store: WorkStore,\n workUnitStore: undefined | Exclude<WorkUnitStore, PrerenderStoreModern>,\n expression: string\n): void {\n if (workUnitStore) {\n if (\n workUnitStore.type === 'cache' ||\n workUnitStore.type === 'unstable-cache'\n ) {\n // inside cache scopes marking a scope as dynamic has no effect because the outer cache scope\n // creates a cache boundary. This is subtly different from reading a dynamic data source which is\n // forbidden inside a cache scope.\n return\n }\n }\n\n // If we're forcing dynamic rendering or we're forcing static rendering, we\n // don't need to do anything here because the entire page is already dynamic\n // or it's static and it should not throw or postpone here.\n if (store.forceDynamic || store.forceStatic) return\n\n if (store.dynamicShouldError) {\n throw new StaticGenBailoutError(\n `Route ${store.route} with \\`dynamic = \"error\"\\` couldn't be rendered statically because it used \\`${expression}\\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`\n )\n }\n\n if (workUnitStore) {\n if (workUnitStore.type === 'prerender-ppr') {\n postponeWithTracking(\n store.route,\n expression,\n workUnitStore.dynamicTracking\n )\n } else if (workUnitStore.type === 'prerender-legacy') {\n workUnitStore.revalidate = 0\n\n // We aren't prerendering but we are generating a static page. We need to bail out of static generation\n const err = new DynamicServerError(\n `Route ${store.route} couldn't be rendered statically because it used ${expression}. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`\n )\n store.dynamicUsageDescription = expression\n store.dynamicUsageStack = err.stack\n\n throw err\n } else if (\n process.env.NODE_ENV === 'development' &&\n workUnitStore &&\n workUnitStore.type === 'request'\n ) {\n workUnitStore.usedDynamic = true\n }\n }\n}\n\n/**\n * This function communicates that some dynamic path parameter was read. This\n * differs from the more general `trackDynamicDataAccessed` in that it is will\n * not error when `dynamic = \"error\"` is set.\n *\n * @param store The static generation store\n * @param expression The expression that was accessed dynamically\n */\nexport function trackFallbackParamAccessed(\n store: WorkStore,\n expression: string\n): void {\n const prerenderStore = workUnitAsyncStorage.getStore()\n if (!prerenderStore || prerenderStore.type !== 'prerender-ppr') return\n\n postponeWithTracking(store.route, expression, prerenderStore.dynamicTracking)\n}\n\n/**\n * This function is meant to be used when prerendering without dynamicIO or PPR.\n * When called during a build it will cause Next.js to consider the route as dynamic.\n *\n * @internal\n */\nexport function throwToInterruptStaticGeneration(\n expression: string,\n store: WorkStore,\n prerenderStore: PrerenderStoreLegacy\n): never {\n // We aren't prerendering but we are generating a static page. We need to bail out of static generation\n const err = new DynamicServerError(\n `Route ${store.route} couldn't be rendered statically because it used \\`${expression}\\`. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`\n )\n\n prerenderStore.revalidate = 0\n\n store.dynamicUsageDescription = expression\n store.dynamicUsageStack = err.stack\n\n throw err\n}\n\n/**\n * This function should be used to track whether something dynamic happened even when\n * we are in a dynamic render. This is useful for Dev where all renders are dynamic but\n * we still track whether dynamic APIs were accessed for helpful messaging\n *\n * @internal\n */\nexport function trackDynamicDataInDynamicRender(\n _store: WorkStore,\n workUnitStore: void | WorkUnitStore\n) {\n if (workUnitStore) {\n if (\n workUnitStore.type === 'cache' ||\n workUnitStore.type === 'unstable-cache'\n ) {\n // inside cache scopes marking a scope as dynamic has no effect because the outer cache scope\n // creates a cache boundary. This is subtly different from reading a dynamic data source which is\n // forbidden inside a cache scope.\n return\n }\n if (\n workUnitStore.type === 'prerender' ||\n workUnitStore.type === 'prerender-legacy'\n ) {\n workUnitStore.revalidate = 0\n }\n if (\n process.env.NODE_ENV === 'development' &&\n workUnitStore.type === 'request'\n ) {\n workUnitStore.usedDynamic = true\n }\n }\n}\n\n// Despite it's name we don't actually abort unless we have a controller to call abort on\n// There are times when we let a prerender run long to discover caches where we want the semantics\n// of tracking dynamic access without terminating the prerender early\nfunction abortOnSynchronousDynamicDataAccess(\n route: string,\n expression: string,\n prerenderStore: PrerenderStoreModern\n): void {\n const reason = `Route ${route} needs to bail out of prerendering at this point because it used ${expression}.`\n\n const error = createPrerenderInterruptedError(reason)\n\n prerenderStore.controller.abort(error)\n\n const dynamicTracking = prerenderStore.dynamicTracking\n if (dynamicTracking) {\n dynamicTracking.dynamicAccesses.push({\n // When we aren't debugging, we don't need to create another error for the\n // stack trace.\n stack: dynamicTracking.isDebugDynamicAccesses\n ? new Error().stack\n : undefined,\n expression,\n })\n }\n}\n\nexport function abortOnSynchronousPlatformIOAccess(\n route: string,\n expression: string,\n errorWithStack: Error,\n prerenderStore: PrerenderStoreModern\n): void {\n const dynamicTracking = prerenderStore.dynamicTracking\n if (dynamicTracking) {\n if (dynamicTracking.syncDynamicErrorWithStack === null) {\n dynamicTracking.syncDynamicExpression = expression\n dynamicTracking.syncDynamicErrorWithStack = errorWithStack\n }\n }\n abortOnSynchronousDynamicDataAccess(route, expression, prerenderStore)\n}\n\nexport function trackSynchronousPlatformIOAccessInDev(\n requestStore: RequestStore\n): void {\n // We don't actually have a controller to abort but we do the semantic equivalent by\n // advancing the request store out of prerender mode\n requestStore.prerenderPhase = false\n}\n\n/**\n * use this function when prerendering with dynamicIO. If we are doing a\n * prospective prerender we don't actually abort because we want to discover\n * all caches for the shell. If this is the actual prerender we do abort.\n *\n * This function accepts a prerenderStore but the caller should ensure we're\n * actually running in dynamicIO mode.\n *\n * @internal\n */\nexport function abortAndThrowOnSynchronousRequestDataAccess(\n route: string,\n expression: string,\n errorWithStack: Error,\n prerenderStore: PrerenderStoreModern\n): never {\n const prerenderSignal = prerenderStore.controller.signal\n if (prerenderSignal.aborted === false) {\n // TODO it would be better to move this aborted check into the callsite so we can avoid making\n // the error object when it isn't relevant to the aborting of the prerender however\n // since we need the throw semantics regardless of whether we abort it is easier to land\n // this way. See how this was handled with `abortOnSynchronousPlatformIOAccess` for a closer\n // to ideal implementation\n const dynamicTracking = prerenderStore.dynamicTracking\n if (dynamicTracking) {\n if (dynamicTracking.syncDynamicErrorWithStack === null) {\n dynamicTracking.syncDynamicExpression = expression\n dynamicTracking.syncDynamicErrorWithStack = errorWithStack\n if (prerenderStore.validating === true) {\n // We always log Request Access in dev at the point of calling the function\n // So we mark the dynamic validation as not requiring it to be printed\n dynamicTracking.syncDynamicLogged = true\n }\n }\n }\n abortOnSynchronousDynamicDataAccess(route, expression, prerenderStore)\n }\n throw createPrerenderInterruptedError(\n `Route ${route} needs to bail out of prerendering at this point because it used ${expression}.`\n )\n}\n\n// For now these implementations are the same so we just reexport\nexport const trackSynchronousRequestDataAccessInDev =\n trackSynchronousPlatformIOAccessInDev\n\n/**\n * This component will call `React.postpone` that throws the postponed error.\n */\ntype PostponeProps = {\n reason: string\n route: string\n}\nexport function Postpone({ reason, route }: PostponeProps): never {\n const prerenderStore = workUnitAsyncStorage.getStore()\n const dynamicTracking =\n prerenderStore && prerenderStore.type === 'prerender-ppr'\n ? prerenderStore.dynamicTracking\n : null\n postponeWithTracking(route, reason, dynamicTracking)\n}\n\nexport function postponeWithTracking(\n route: string,\n expression: string,\n dynamicTracking: null | DynamicTrackingState\n): never {\n assertPostpone()\n if (dynamicTracking) {\n dynamicTracking.dynamicAccesses.push({\n // When we aren't debugging, we don't need to create another error for the\n // stack trace.\n stack: dynamicTracking.isDebugDynamicAccesses\n ? new Error().stack\n : undefined,\n expression,\n })\n }\n\n React.unstable_postpone(createPostponeReason(route, expression))\n}\n\nfunction createPostponeReason(route: string, expression: string) {\n return (\n `Route ${route} needs to bail out of prerendering at this point because it used ${expression}. ` +\n `React throws this special object to indicate where. It should not be caught by ` +\n `your own try/catch. Learn more: https://nextjs.org/docs/messages/ppr-caught-error`\n )\n}\n\nexport function isDynamicPostpone(err: unknown) {\n if (\n typeof err === 'object' &&\n err !== null &&\n typeof (err as any).message === 'string'\n ) {\n return isDynamicPostponeReason((err as any).message)\n }\n return false\n}\n\nfunction isDynamicPostponeReason(reason: string) {\n return (\n reason.includes(\n 'needs to bail out of prerendering at this point because it used'\n ) &&\n reason.includes(\n 'Learn more: https://nextjs.org/docs/messages/ppr-caught-error'\n )\n )\n}\n\nif (isDynamicPostponeReason(createPostponeReason('%%%', '^^^')) === false) {\n throw new Error(\n 'Invariant: isDynamicPostpone misidentified a postpone reason. This is a bug in Next.js'\n )\n}\n\nconst NEXT_PRERENDER_INTERRUPTED = 'NEXT_PRERENDER_INTERRUPTED'\n\nfunction createPrerenderInterruptedError(message: string): Error {\n const error = new Error(message)\n ;(error as any).digest = NEXT_PRERENDER_INTERRUPTED\n return error\n}\n\ntype DigestError = Error & {\n digest: string\n}\n\nexport function isPrerenderInterruptedError(\n error: unknown\n): error is DigestError {\n return (\n typeof error === 'object' &&\n error !== null &&\n (error as any).digest === NEXT_PRERENDER_INTERRUPTED &&\n 'name' in error &&\n 'message' in error &&\n error instanceof Error\n )\n}\n\nexport function accessedDynamicData(\n dynamicAccesses: Array<DynamicAccess>\n): boolean {\n return dynamicAccesses.length > 0\n}\n\nexport function consumeDynamicAccess(\n serverDynamic: DynamicTrackingState,\n clientDynamic: DynamicTrackingState\n): DynamicTrackingState['dynamicAccesses'] {\n // We mutate because we only call this once we are no longer writing\n // to the dynamicTrackingState and it's more efficient than creating a new\n // array.\n serverDynamic.dynamicAccesses.push(...clientDynamic.dynamicAccesses)\n return serverDynamic.dynamicAccesses\n}\n\nexport function formatDynamicAPIAccesses(\n dynamicAccesses: Array<DynamicAccess>\n): string[] {\n return dynamicAccesses\n .filter(\n (access): access is Required<DynamicAccess> =>\n typeof access.stack === 'string' && access.stack.length > 0\n )\n .map(({ expression, stack }) => {\n stack = stack\n .split('\\n')\n // Remove the \"Error: \" prefix from the first line of the stack trace as\n // well as the first 4 lines of the stack trace which is the distance\n // from the user code and the `new Error().stack` call.\n .slice(4)\n .filter((line) => {\n // Exclude Next.js internals from the stack trace.\n if (line.includes('node_modules/next/')) {\n return false\n }\n\n // Exclude anonymous functions from the stack trace.\n if (line.includes(' (<anonymous>)')) {\n return false\n }\n\n // Exclude Node.js internals from the stack trace.\n if (line.includes(' (node:')) {\n return false\n }\n\n return true\n })\n .join('\\n')\n return `Dynamic API Usage Debug - ${expression}:\\n${stack}`\n })\n}\n\nfunction assertPostpone() {\n if (!hasPostpone) {\n throw new Error(\n `Invariant: React.unstable_postpone is not defined. This suggests the wrong version of React was loaded. This is a bug in Next.js`\n )\n }\n}\n\n/**\n * This is a bit of a hack to allow us to abort a render using a Postpone instance instead of an Error which changes React's\n * abort semantics slightly.\n */\nexport function createPostponedAbortSignal(reason: string): AbortSignal {\n assertPostpone()\n const controller = new AbortController()\n // We get our hands on a postpone instance by calling postpone and catching the throw\n try {\n React.unstable_postpone(reason)\n } catch (x: unknown) {\n controller.abort(x)\n }\n return controller.signal\n}\n\n/**\n * In a prerender, we may end up with hanging Promises as inputs due them\n * stalling on connection() or because they're loading dynamic data. In that\n * case we need to abort the encoding of arguments since they'll never complete.\n */\nexport function createHangingInputAbortSignal(\n workUnitStore: PrerenderStoreModern\n): AbortSignal {\n const controller = new AbortController()\n\n if (workUnitStore.cacheSignal) {\n // If we have a cacheSignal it means we're in a prospective render. If the input\n // we're waiting on is coming from another cache, we do want to wait for it so that\n // we can resolve this cache entry too.\n workUnitStore.cacheSignal.inputReady().then(() => {\n controller.abort()\n })\n } else {\n // Otherwise we're in the final render and we should already have all our caches\n // filled. We might still be waiting on some microtasks so we wait one tick before\n // giving up. When we give up, we still want to render the content of this cache\n // as deeply as we can so that we can suspend as deeply as possible in the tree\n // or not at all if we don't end up waiting for the input.\n scheduleOnNextTick(() => controller.abort())\n }\n\n return controller.signal\n}\n\nexport function annotateDynamicAccess(\n expression: string,\n prerenderStore: PrerenderStoreModern\n) {\n const dynamicTracking = prerenderStore.dynamicTracking\n if (dynamicTracking) {\n dynamicTracking.dynamicAccesses.push({\n stack: dynamicTracking.isDebugDynamicAccesses\n ? new Error().stack\n : undefined,\n expression,\n })\n }\n}\n\nexport function useDynamicRouteParams(expression: string) {\n const workStore = workAsyncStorage.getStore()\n\n if (\n workStore &&\n workStore.isStaticGeneration &&\n workStore.fallbackRouteParams &&\n workStore.fallbackRouteParams.size > 0\n ) {\n // There are fallback route params, we should track these as dynamic\n // accesses.\n const workUnitStore = workUnitAsyncStorage.getStore()\n if (workUnitStore) {\n // We're prerendering with dynamicIO or PPR or both\n if (workUnitStore.type === 'prerender') {\n // We are in a prerender with dynamicIO semantics\n // We are going to hang here and never resolve. This will cause the currently\n // rendering component to effectively be a dynamic hole\n React.use(makeHangingPromise(workUnitStore.renderSignal, expression))\n } else if (workUnitStore.type === 'prerender-ppr') {\n // We're prerendering with PPR\n postponeWithTracking(\n workStore.route,\n expression,\n workUnitStore.dynamicTracking\n )\n } else if (workUnitStore.type === 'prerender-legacy') {\n throwToInterruptStaticGeneration(expression, workStore, workUnitStore)\n }\n }\n }\n}\n\nconst hasSuspenseRegex = /\\n\\s+at Suspense \\(<anonymous>\\)/\nconst hasMetadataRegex = new RegExp(\n `\\\\n\\\\s+at ${METADATA_BOUNDARY_NAME}[\\\\n\\\\s]`\n)\nconst hasViewportRegex = new RegExp(\n `\\\\n\\\\s+at ${VIEWPORT_BOUNDARY_NAME}[\\\\n\\\\s]`\n)\nconst hasOutletRegex = new RegExp(`\\\\n\\\\s+at ${OUTLET_BOUNDARY_NAME}[\\\\n\\\\s]`)\n\nexport function trackAllowedDynamicAccess(\n route: string,\n componentStack: string,\n dynamicValidation: DynamicValidationState,\n serverDynamic: DynamicTrackingState,\n clientDynamic: DynamicTrackingState\n) {\n if (hasOutletRegex.test(componentStack)) {\n // We don't need to track that this is dynamic. It is only so when something else is also dynamic.\n return\n } else if (hasMetadataRegex.test(componentStack)) {\n dynamicValidation.hasDynamicMetadata = true\n return\n } else if (hasViewportRegex.test(componentStack)) {\n dynamicValidation.hasDynamicViewport = true\n return\n } else if (hasSuspenseRegex.test(componentStack)) {\n dynamicValidation.hasSuspendedDynamic = true\n return\n } else if (\n serverDynamic.syncDynamicErrorWithStack ||\n clientDynamic.syncDynamicErrorWithStack\n ) {\n dynamicValidation.hasSyncDynamicErrors = true\n return\n } else {\n const message = `Route \"${route}\": A component accessed data, headers, params, searchParams, or a short-lived cache without a Suspense boundary nor a \"use cache\" above it. We don't have the exact line number added to error messages yet but you can see which component in the stack below. See more info: https://nextjs.org/docs/messages/next-prerender-missing-suspense`\n const error = createErrorWithComponentStack(message, componentStack)\n dynamicValidation.dynamicErrors.push(error)\n return\n }\n}\n\nfunction createErrorWithComponentStack(\n message: string,\n componentStack: string\n) {\n const error = new Error(message)\n error.stack = 'Error: ' + message + componentStack\n return error\n}\n\nexport function throwIfDisallowedDynamic(\n route: string,\n dynamicValidation: DynamicValidationState,\n serverDynamic: DynamicTrackingState,\n clientDynamic: DynamicTrackingState\n): void {\n let syncError: null | Error\n let syncExpression: undefined | string\n let syncLogged: boolean\n if (serverDynamic.syncDynamicErrorWithStack) {\n syncError = serverDynamic.syncDynamicErrorWithStack\n syncExpression = serverDynamic.syncDynamicExpression!\n syncLogged = serverDynamic.syncDynamicLogged === true\n } else if (clientDynamic.syncDynamicErrorWithStack) {\n syncError = clientDynamic.syncDynamicErrorWithStack\n syncExpression = clientDynamic.syncDynamicExpression!\n syncLogged = clientDynamic.syncDynamicLogged === true\n } else {\n syncError = null\n syncExpression = undefined\n syncLogged = false\n }\n\n if (dynamicValidation.hasSyncDynamicErrors && syncError) {\n if (!syncLogged) {\n // In dev we already log errors about sync dynamic access. But during builds we need to ensure\n // the offending sync error is logged before we exit the build\n console.error(syncError)\n }\n // The actual error should have been logged when the sync access ocurred\n throw new StaticGenBailoutError()\n }\n\n const dynamicErrors = dynamicValidation.dynamicErrors\n if (dynamicErrors.length) {\n for (let i = 0; i < dynamicErrors.length; i++) {\n console.error(dynamicErrors[i])\n }\n\n throw new StaticGenBailoutError()\n }\n\n if (!dynamicValidation.hasSuspendedDynamic) {\n if (dynamicValidation.hasDynamicMetadata) {\n if (syncError) {\n console.error(syncError)\n throw new StaticGenBailoutError(\n `Route \"${route}\" has a \\`generateMetadata\\` that could not finish rendering before ${syncExpression} was used. Follow the instructions in the error for this expression to resolve.`\n )\n }\n throw new StaticGenBailoutError(\n `Route \"${route}\" has a \\`generateMetadata\\` that depends on Request data (\\`cookies()\\`, etc...) or external data (\\`fetch(...)\\`, etc...) but the rest of the route was static or only used cached data (\\`\"use cache\"\\`). If you expected this route to be prerenderable update your \\`generateMetadata\\` to not use Request data and only use cached external data. Otherwise, add \\`await connection()\\` somewhere within this route to indicate explicitly it should not be prerendered.`\n )\n } else if (dynamicValidation.hasDynamicViewport) {\n if (syncError) {\n console.error(syncError)\n throw new StaticGenBailoutError(\n `Route \"${route}\" has a \\`generateViewport\\` that could not finish rendering before ${syncExpression} was used. Follow the instructions in the error for this expression to resolve.`\n )\n }\n throw new StaticGenBailoutError(\n `Route \"${route}\" has a \\`generateViewport\\` that depends on Request data (\\`cookies()\\`, etc...) or external data (\\`fetch(...)\\`, etc...) but the rest of the route was static or only used cached data (\\`\"use cache\"\\`). If you expected this route to be prerenderable update your \\`generateViewport\\` to not use Request data and only use cached external data. Otherwise, add \\`await connection()\\` somewhere within this route to indicate explicitly it should not be prerendered.`\n )\n }\n }\n}\n","import * as React from 'react'\n\nconst errorRef: { current: null | Error } = { current: null }\n\n// React.cache is currently only available in canary/experimental React channels.\nconst cache =\n typeof React.cache === 'function'\n ? React.cache\n : (fn: (key: unknown) => void) => fn\n\n// When Dynamic IO is enabled, we record these as errors so that they\n// are captured by the dev overlay as it's more critical to fix these\n// when enabled.\nconst logErrorOrWarn = process.env.__NEXT_DYNAMIC_IO\n ? console.error\n : console.warn\n\n// We don't want to dedupe across requests.\n// The developer might've just attempted to fix the warning so we should warn again if it still happens.\nconst flushCurrentErrorIfNew = cache(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars -- cache key\n (key: unknown) => {\n try {\n logErrorOrWarn(errorRef.current)\n } finally {\n errorRef.current = null\n }\n }\n)\n\n/**\n * Creates a function that logs an error message that is deduped by the userland\n * callsite.\n * This requires no indirection between the call of this function and the userland\n * callsite i.e. there's only a single library frame above this.\n * Do not use on the Client where sourcemaps and ignore listing might be enabled.\n * Only use that for warnings need a fix independent of the callstack.\n *\n * @param getMessage\n * @returns\n */\nexport function createDedupedByCallsiteServerErrorLoggerDev<Args extends any[]>(\n getMessage: (...args: Args) => Error\n) {\n return function logDedupedError(...args: Args) {\n const message = getMessage(...args)\n\n if (process.env.NODE_ENV !== 'production') {\n const callStackFrames = new Error().stack?.split('\\n')\n if (callStackFrames === undefined || callStackFrames.length < 4) {\n logErrorOrWarn(message)\n } else {\n // Error:\n // logDedupedError\n // asyncApiBeingAccessedSynchronously\n // <userland callsite>\n // TODO: This breaks if sourcemaps with ignore lists are enabled.\n const key = callStackFrames[4]\n errorRef.current = message\n flushCurrentErrorIfNew(key)\n }\n } else {\n logErrorOrWarn(message)\n }\n }\n}\n","import type { AfterTaskAsyncStorage } from './after-task-async-storage.external'\nimport { createAsyncLocalStorage } from './async-local-storage'\n\nexport const afterTaskAsyncStorageInstance: AfterTaskAsyncStorage =\n createAsyncLocalStorage()\n","import type { AsyncLocalStorage } from 'async_hooks'\n\n// Share the instance module in the next-shared layer\nimport { afterTaskAsyncStorageInstance as afterTaskAsyncStorage } from './after-task-async-storage-instance' with { 'turbopack-transition': 'next-shared' }\nimport type { WorkUnitStore } from './work-unit-async-storage.external'\n\nexport interface AfterTaskStore {\n /** The phase in which the topmost `after` was called.\n *\n * NOTE: Can be undefined when running `generateStaticParams`,\n * where we only have a `workStore`, no `workUnitStore`.\n */\n readonly rootTaskSpawnPhase: WorkUnitStore['phase'] | undefined\n}\n\nexport type AfterTaskAsyncStorage = AsyncLocalStorage<AfterTaskStore>\n\nexport { afterTaskAsyncStorage }\n","import { StaticGenBailoutError } from '../../client/components/static-generation-bailout'\nimport { afterTaskAsyncStorage } from '../app-render/after-task-async-storage.external'\nimport type { WorkStore } from '../app-render/work-async-storage.external'\n\nexport function throwWithStaticGenerationBailoutError(\n route: string,\n expression: string\n): never {\n throw new StaticGenBailoutError(\n `Route ${route} couldn't be rendered statically because it used ${expression}. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`\n )\n}\n\nexport function throwWithStaticGenerationBailoutErrorWithDynamicError(\n route: string,\n expression: string\n): never {\n throw new StaticGenBailoutError(\n `Route ${route} with \\`dynamic = \"error\"\\` couldn't be rendered statically because it used ${expression}. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`\n )\n}\n\nexport function throwForSearchParamsAccessInUseCache(\n workStore: WorkStore\n): never {\n const error = new Error(\n `Route ${workStore.route} used \"searchParams\" inside \"use cache\". Accessing Dynamic data sources inside a cache scope is not supported. If you need this data inside a cached function use \"searchParams\" outside of the cached function and pass the required dynamic data in as an argument. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`\n )\n\n workStore.invalidUsageError ??= error\n\n throw error\n}\n\nexport function isRequestAPICallableInsideAfter() {\n const afterTaskStore = afterTaskAsyncStorage.getStore()\n return afterTaskStore?.rootTaskSpawnPhase === 'action'\n}\n","import {\n type ReadonlyRequestCookies,\n type ResponseCookies,\n areCookiesMutableInCurrentPhase,\n RequestCookiesAdapter,\n} from '../web/spec-extension/adapters/request-cookies'\nimport { RequestCookies } from '../web/spec-extension/cookies'\nimport { workAsyncStorage } from '../app-render/work-async-storage.external'\nimport {\n workUnitAsyncStorage,\n type PrerenderStoreModern,\n} from '../app-render/work-unit-async-storage.external'\nimport {\n postponeWithTracking,\n abortAndThrowOnSynchronousRequestDataAccess,\n throwToInterruptStaticGeneration,\n trackDynamicDataInDynamicRender,\n trackSynchronousRequestDataAccessInDev,\n} from '../app-render/dynamic-rendering'\nimport { getExpectedRequestStore } from '../app-render/work-unit-async-storage.external'\nimport { StaticGenBailoutError } from '../../client/components/static-generation-bailout'\nimport { makeHangingPromise } from '../dynamic-rendering-utils'\nimport { createDedupedByCallsiteServerErrorLoggerDev } from '../create-deduped-by-callsite-server-error-logger'\nimport { scheduleImmediate } from '../../lib/scheduler'\nimport { isRequestAPICallableInsideAfter } from './utils'\n\n/**\n * In this version of Next.js `cookies()` returns a Promise however you can still reference the properties of the underlying cookies object\n * synchronously to facilitate migration. The `UnsafeUnwrappedCookies` type is added to your code by a codemod that attempts to automatically\n * updates callsites to reflect the new Promise return type. There are some cases where `cookies()` cannot be automatically converted, namely\n * when it is used inside a synchronous function and we can't be sure the function can be made async automatically. In these cases we add an\n * explicit type case to `UnsafeUnwrappedCookies` to enable typescript to allow for the synchronous usage only where it is actually necessary.\n *\n * You should should update these callsites to either be async functions where the `cookies()` value can be awaited or you should call `cookies()`\n * from outside and await the return value before passing it into this function.\n *\n * You can find instances that require manual migration by searching for `UnsafeUnwrappedCookies` in your codebase or by search for a comment that\n * starts with `@next-codemod-error`.\n *\n * In a future version of Next.js `cookies()` will only return a Promise and you will not be able to access the underlying cookies object directly\n * without awaiting the return value first. When this change happens the type `UnsafeUnwrappedCookies` will be updated to reflect that is it no longer\n * usable.\n *\n * This type is marked deprecated to help identify it as target for refactoring away.\n *\n * @deprecated\n */\nexport type UnsafeUnwrappedCookies = ReadonlyRequestCookies\n\nexport function cookies(): Promise<ReadonlyRequestCookies> {\n const callingExpression = 'cookies'\n const workStore = workAsyncStorage.getStore()\n const workUnitStore = workUnitAsyncStorage.getStore()\n\n if (workStore) {\n if (\n workUnitStore &&\n workUnitStore.phase === 'after' &&\n !isRequestAPICallableInsideAfter()\n ) {\n throw new Error(\n // TODO(after): clarify that this only applies to pages?\n `Route ${workStore.route} used \"cookies\" inside \"after(...)\". This is not supported. If you need this data inside an \"after\" callback, use \"cookies\" outside of the callback. See more info here: https://nextjs.org/docs/canary/app/api-reference/functions/after`\n )\n }\n\n if (workStore.forceStatic) {\n // When using forceStatic we override all other logic and always just return an empty\n // cookies object without tracking\n const underlyingCookies = createEmptyCookies()\n return makeUntrackedExoticCookies(underlyingCookies)\n }\n\n if (workUnitStore) {\n if (workUnitStore.type === 'cache') {\n throw new Error(\n `Route ${workStore.route} used \"cookies\" inside \"use cache\". Accessing Dynamic data sources inside a cache scope is not supported. If you need this data inside a cached function use \"cookies\" outside of the cached function and pass the required dynamic data in as an argument. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`\n )\n } else if (workUnitStore.type === 'unstable-cache') {\n throw new Error(\n `Route ${workStore.route} used \"cookies\" inside a function cached with \"unstable_cache(...)\". Accessing Dynamic data sources inside a cache scope is not supported. If you need this data inside a cached function use \"cookies\" outside of the cached function and pass the required dynamic data in as an argument. See more info here: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`\n )\n }\n }\n if (workStore.dynamicShouldError) {\n throw new StaticGenBailoutError(\n `Route ${workStore.route} with \\`dynamic = \"error\"\\` couldn't be rendered statically because it used \\`cookies\\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`\n )\n }\n\n if (workUnitStore) {\n if (workUnitStore.type === 'prerender') {\n // dynamicIO Prerender\n // We don't track dynamic access here because access will be tracked when you access\n // one of the properties of the cookies object.\n return makeDynamicallyTrackedExoticCookies(\n workStore.route,\n workUnitStore\n )\n } else if (workUnitStore.type === 'prerender-ppr') {\n // PPR Prerender (no dynamicIO)\n // We are prerendering with PPR. We need track dynamic access here eagerly\n // to keep continuity with how cookies has worked in PPR without dynamicIO.\n postponeWithTracking(\n workStore.route,\n callingExpression,\n workUnitStore.dynamicTracking\n )\n } else if (workUnitStore.type === 'prerender-legacy') {\n // Legacy Prerender\n // We track dynamic access here so we don't need to wrap the cookies in\n // individual property access tracking.\n throwToInterruptStaticGeneration(\n callingExpression,\n workStore,\n workUnitStore\n )\n }\n }\n // We fall through to the dynamic context below but we still track dynamic access\n // because in dev we can still error for things like using cookies inside a cache context\n trackDynamicDataInDynamicRender(workStore, workUnitStore)\n }\n\n // cookies is being called in a dynamic context\n\n const requestStore = getExpectedRequestStore(callingExpression)\n\n let underlyingCookies: ReadonlyRequestCookies\n\n if (areCookiesMutableInCurrentPhase(requestStore)) {\n // We can't conditionally return different types here based on the context.\n // To avoid confusion, we always return the readonly type here.\n underlyingCookies =\n requestStore.userspaceMutableCookies as unknown as ReadonlyRequestCookies\n } else {\n underlyingCookies = requestStore.cookies\n }\n\n if (process.env.NODE_ENV === 'development' && !workStore?.isPrefetchRequest) {\n return makeUntrackedExoticCookiesWithDevWarnings(\n underlyingCookies,\n workStore?.route\n )\n } else {\n return makeUntrackedExoticCookies(underlyingCookies)\n }\n}\n\nfunction createEmptyCookies(): ReadonlyRequestCookies {\n return RequestCookiesAdapter.seal(new RequestCookies(new Headers({})))\n}\n\ninterface CacheLifetime {}\nconst CachedCookies = new WeakMap<\n CacheLifetime,\n Promise<ReadonlyRequestCookies>\n>()\n\nfunction makeDynamicallyTrackedExoticCookies(\n route: string,\n prerenderStore: PrerenderStoreModern\n): Promise<ReadonlyRequestCookies> {\n const cachedPromise = CachedCookies.get(prerenderStore)\n if (cachedPromise) {\n return cachedPromise\n }\n\n const promise = makeHangingPromise<ReadonlyRequestCookies>(\n prerenderStore.renderSignal,\n '`cookies()`'\n )\n CachedCookies.set(prerenderStore, promise)\n\n Object.defineProperties(promise, {\n [Symbol.iterator]: {\n value: function () {\n const expression = '`cookies()[Symbol.iterator]()`'\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n size: {\n get() {\n const expression = '`cookies().size`'\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n get: {\n value: function get() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().get()`'\n } else {\n expression = `\\`cookies().get(${describeNameArg(arguments[0])})\\``\n }\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n getAll: {\n value: function getAll() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().getAll()`'\n } else {\n expression = `\\`cookies().getAll(${describeNameArg(arguments[0])})\\``\n }\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n has: {\n value: function has() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().has()`'\n } else {\n expression = `\\`cookies().has(${describeNameArg(arguments[0])})\\``\n }\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n set: {\n value: function set() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().set()`'\n } else {\n const arg = arguments[0]\n if (arg) {\n expression = `\\`cookies().set(${describeNameArg(arg)}, ...)\\``\n } else {\n expression = '`cookies().set(...)`'\n }\n }\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n delete: {\n value: function () {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().delete()`'\n } else if (arguments.length === 1) {\n expression = `\\`cookies().delete(${describeNameArg(arguments[0])})\\``\n } else {\n expression = `\\`cookies().delete(${describeNameArg(arguments[0])}, ...)\\``\n }\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n clear: {\n value: function clear() {\n const expression = '`cookies().clear()`'\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n toString: {\n value: function toString() {\n const expression = '`cookies().toString()`'\n const error = createCookiesAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n } satisfies CookieExtensions)\n\n return promise\n}\n\nfunction makeUntrackedExoticCookies(\n underlyingCookies: ReadonlyRequestCookies\n): Promise<ReadonlyRequestCookies> {\n const cachedCookies = CachedCookies.get(underlyingCookies)\n if (cachedCookies) {\n return cachedCookies\n }\n\n const promise = Promise.resolve(underlyingCookies)\n CachedCookies.set(underlyingCookies, promise)\n\n Object.defineProperties(promise, {\n [Symbol.iterator]: {\n value: underlyingCookies[Symbol.iterator]\n ? underlyingCookies[Symbol.iterator].bind(underlyingCookies)\n : // TODO this is a polyfill for when the underlying type is ResponseCookies\n // We should remove this and unify our cookies types. We could just let this continue to throw lazily\n // but that's already a hard thing to debug so we may as well implement it consistently. The biggest problem with\n // implementing this in this way is the underlying cookie type is a ResponseCookie and not a RequestCookie and so it\n // has extra properties not available on RequestCookie instances.\n polyfilledResponseCookiesIterator.bind(underlyingCookies),\n },\n size: {\n get(): number {\n return underlyingCookies.size\n },\n },\n get: {\n value: underlyingCookies.get.bind(underlyingCookies),\n },\n getAll: {\n value: underlyingCookies.getAll.bind(underlyingCookies),\n },\n has: {\n value: underlyingCookies.has.bind(underlyingCookies),\n },\n set: {\n value: underlyingCookies.set.bind(underlyingCookies),\n },\n delete: {\n value: underlyingCookies.delete.bind(underlyingCookies),\n },\n clear: {\n value:\n // @ts-expect-error clear is defined in RequestCookies implementation but not in the type\n typeof underlyingCookies.clear === 'function'\n ? // @ts-expect-error clear is defined in RequestCookies implementation but not in the type\n underlyingCookies.clear.bind(underlyingCookies)\n : // TODO this is a polyfill for when the underlying type is ResponseCookies\n // We should remove this and unify our cookies types. We could just let this continue to throw lazily\n // but that's already a hard thing to debug so we may as well implement it consistently. The biggest problem with\n // implementing this in this way is the underlying cookie type is a ResponseCookie and not a RequestCookie and so it\n // has extra properties not available on RequestCookie instances.\n polyfilledResponseCookiesClear.bind(underlyingCookies, promise),\n },\n toString: {\n value: underlyingCookies.toString.bind(underlyingCookies),\n },\n } satisfies CookieExtensions)\n\n return promise\n}\n\nfunction makeUntrackedExoticCookiesWithDevWarnings(\n underlyingCookies: ReadonlyRequestCookies,\n route?: string\n): Promise<ReadonlyRequestCookies> {\n const cachedCookies = CachedCookies.get(underlyingCookies)\n if (cachedCookies) {\n return cachedCookies\n }\n\n const promise = new Promise<ReadonlyRequestCookies>((resolve) =>\n scheduleImmediate(() => resolve(underlyingCookies))\n )\n CachedCookies.set(underlyingCookies, promise)\n\n Object.defineProperties(promise, {\n [Symbol.iterator]: {\n value: function () {\n const expression = '`...cookies()` or similar iteration'\n syncIODev(route, expression)\n return underlyingCookies[Symbol.iterator]\n ? underlyingCookies[Symbol.iterator].apply(\n underlyingCookies,\n arguments as any\n )\n : // TODO this is a polyfill for when the underlying type is ResponseCookies\n // We should remove this and unify our cookies types. We could just let this continue to throw lazily\n // but that's already a hard thing to debug so we may as well implement it consistently. The biggest problem with\n // implementing this in this way is the underlying cookie type is a ResponseCookie and not a RequestCookie and so it\n // has extra properties not available on RequestCookie instances.\n polyfilledResponseCookiesIterator.call(underlyingCookies)\n },\n writable: false,\n },\n size: {\n get(): number {\n const expression = '`cookies().size`'\n syncIODev(route, expression)\n return underlyingCookies.size\n },\n },\n get: {\n value: function get() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().get()`'\n } else {\n expression = `\\`cookies().get(${describeNameArg(arguments[0])})\\``\n }\n syncIODev(route, expression)\n return underlyingCookies.get.apply(underlyingCookies, arguments as any)\n },\n writable: false,\n },\n getAll: {\n value: function getAll() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().getAll()`'\n } else {\n expression = `\\`cookies().getAll(${describeNameArg(arguments[0])})\\``\n }\n syncIODev(route, expression)\n return underlyingCookies.getAll.apply(\n underlyingCookies,\n arguments as any\n )\n },\n writable: false,\n },\n has: {\n value: function get() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().has()`'\n } else {\n expression = `\\`cookies().has(${describeNameArg(arguments[0])})\\``\n }\n syncIODev(route, expression)\n return underlyingCookies.has.apply(underlyingCookies, arguments as any)\n },\n writable: false,\n },\n set: {\n value: function set() {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().set()`'\n } else {\n const arg = arguments[0]\n if (arg) {\n expression = `\\`cookies().set(${describeNameArg(arg)}, ...)\\``\n } else {\n expression = '`cookies().set(...)`'\n }\n }\n syncIODev(route, expression)\n return underlyingCookies.set.apply(underlyingCookies, arguments as any)\n },\n writable: false,\n },\n delete: {\n value: function () {\n let expression: string\n if (arguments.length === 0) {\n expression = '`cookies().delete()`'\n } else if (arguments.length === 1) {\n expression = `\\`cookies().delete(${describeNameArg(arguments[0])})\\``\n } else {\n expression = `\\`cookies().delete(${describeNameArg(arguments[0])}, ...)\\``\n }\n syncIODev(route, expression)\n return underlyingCookies.delete.apply(\n underlyingCookies,\n arguments as any\n )\n },\n writable: false,\n },\n clear: {\n value: function clear() {\n const expression = '`cookies().clear()`'\n syncIODev(route, expression)\n // @ts-ignore clear is defined in RequestCookies implementation but not in the type\n return typeof underlyingCookies.clear === 'function'\n ? // @ts-ignore clear is defined in RequestCookies implementation but not in the type\n underlyingCookies.clear.apply(underlyingCookies, arguments)\n : // TODO this is a polyfill for when the underlying type is ResponseCookies\n // We should remove this and unify our cookies types. We could just let this continue to throw lazily\n // but that's already a hard thing to debug so we may as well implement it consistently. The biggest problem with\n // implementing this in this way is the underlying cookie type is a ResponseCookie and not a RequestCookie and so it\n // has extra properties not available on RequestCookie instances.\n polyfilledResponseCookiesClear.call(underlyingCookies, promise)\n },\n writable: false,\n },\n toString: {\n value: function toString() {\n const expression = '`cookies().toString()` or implicit casting'\n syncIODev(route, expression)\n return underlyingCookies.toString.apply(\n underlyingCookies,\n arguments as any\n )\n },\n writable: false,\n },\n } satisfies CookieExtensions)\n\n return promise\n}\n\nfunction describeNameArg(arg: unknown) {\n return typeof arg === 'object' &&\n arg !== null &&\n typeof (arg as any).name === 'string'\n ? `'${(arg as any).name}'`\n : typeof arg === 'string'\n ? `'${arg}'`\n : '...'\n}\n\nfunction syncIODev(route: string | undefined, expression: string) {\n const workUnitStore = workUnitAsyncStorage.getStore()\n if (\n workUnitStore &&\n workUnitStore.type === 'request' &&\n workUnitStore.prerenderPhase === true\n ) {\n // When we're rendering dynamically in dev we need to advance out of the\n // Prerender environment when we read Request data synchronously\n const requestStore = workUnitStore\n trackSynchronousRequestDataAccessInDev(requestStore)\n }\n // In all cases we warn normally\n warnForSyncAccess(route, expression)\n}\n\nconst warnForSyncAccess = createDedupedByCallsiteServerErrorLoggerDev(\n createCookiesAccessError\n)\n\nfunction createCookiesAccessError(\n route: string | undefined,\n expression: string\n) {\n const prefix = route ? `Route \"${route}\" ` : 'This route '\n return new Error(\n `${prefix}used ${expression}. ` +\n `\\`cookies()\\` should be awaited before using its value. ` +\n `Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis`\n )\n}\n\nfunction polyfilledResponseCookiesIterator(\n this: ResponseCookies\n): ReturnType<ReadonlyRequestCookies[typeof Symbol.iterator]> {\n return this.getAll()\n .map((c) => [c.name, c] as [string, any])\n .values()\n}\n\nfunction polyfilledResponseCookiesClear(\n this: ResponseCookies,\n returnable: Promise<ReadonlyRequestCookies>\n): typeof returnable {\n for (const cookie of this.getAll()) {\n this.delete(cookie.name)\n }\n return returnable\n}\n\ntype CookieExtensions = {\n [K in keyof ReadonlyRequestCookies | 'clear']: unknown\n}\n","import type { IncomingHttpHeaders } from 'http'\n\nimport { ReflectAdapter } from './reflect'\n\n/**\n * @internal\n */\nexport class ReadonlyHeadersError extends Error {\n constructor() {\n super(\n 'Headers cannot be modified. Read more: https://nextjs.org/docs/app/api-reference/functions/headers'\n )\n }\n\n public static callable() {\n throw new ReadonlyHeadersError()\n }\n}\n\nexport type ReadonlyHeaders = Headers & {\n /** @deprecated Method unavailable on `ReadonlyHeaders`. Read more: https://nextjs.org/docs/app/api-reference/functions/headers */\n append(...args: any[]): void\n /** @deprecated Method unavailable on `ReadonlyHeaders`. Read more: https://nextjs.org/docs/app/api-reference/functions/headers */\n set(...args: any[]): void\n /** @deprecated Method unavailable on `ReadonlyHeaders`. Read more: https://nextjs.org/docs/app/api-reference/functions/headers */\n delete(...args: any[]): void\n}\nexport class HeadersAdapter extends Headers {\n private readonly headers: IncomingHttpHeaders\n\n constructor(headers: IncomingHttpHeaders) {\n // We've already overridden the methods that would be called, so we're just\n // calling the super constructor to ensure that the instanceof check works.\n super()\n\n this.headers = new Proxy(headers, {\n get(target, prop, receiver) {\n // Because this is just an object, we expect that all \"get\" operations\n // are for properties. If it's a \"get\" for a symbol, we'll just return\n // the symbol.\n if (typeof prop === 'symbol') {\n return ReflectAdapter.get(target, prop, receiver)\n }\n\n const lowercased = prop.toLowerCase()\n\n // Let's find the original casing of the key. This assumes that there is\n // no mixed case keys (e.g. \"Content-Type\" and \"content-type\") in the\n // headers object.\n const original = Object.keys(headers).find(\n (o) => o.toLowerCase() === lowercased\n )\n\n // If the original casing doesn't exist, return undefined.\n if (typeof original === 'undefined') return\n\n // If the original casing exists, return the value.\n return ReflectAdapter.get(target, original, receiver)\n },\n set(target, prop, value, receiver) {\n if (typeof prop === 'symbol') {\n return ReflectAdapter.set(target, prop, value, receiver)\n }\n\n const lowercased = prop.toLowerCase()\n\n // Let's find the original casing of the key. This assumes that there is\n // no mixed case keys (e.g. \"Content-Type\" and \"content-type\") in the\n // headers object.\n const original = Object.keys(headers).find(\n (o) => o.toLowerCase() === lowercased\n )\n\n // If the original casing doesn't exist, use the prop as the key.\n return ReflectAdapter.set(target, original ?? prop, value, receiver)\n },\n has(target, prop) {\n if (typeof prop === 'symbol') return ReflectAdapter.has(target, prop)\n\n const lowercased = prop.toLowerCase()\n\n // Let's find the original casing of the key. This assumes that there is\n // no mixed case keys (e.g. \"Content-Type\" and \"content-type\") in the\n // headers object.\n const original = Object.keys(headers).find(\n (o) => o.toLowerCase() === lowercased\n )\n\n // If the original casing doesn't exist, return false.\n if (typeof original === 'undefined') return false\n\n // If the original casing exists, return true.\n return ReflectAdapter.has(target, original)\n },\n deleteProperty(target, prop) {\n if (typeof prop === 'symbol')\n return ReflectAdapter.deleteProperty(target, prop)\n\n const lowercased = prop.toLowerCase()\n\n // Let's find the original casing of the key. This assumes that there is\n // no mixed case keys (e.g. \"Content-Type\" and \"content-type\") in the\n // headers object.\n const original = Object.keys(headers).find(\n (o) => o.toLowerCase() === lowercased\n )\n\n // If the original casing doesn't exist, return true.\n if (typeof original === 'undefined') return true\n\n // If the original casing exists, delete the property.\n return ReflectAdapter.deleteProperty(target, original)\n },\n })\n }\n\n /**\n * Seals a Headers instance to prevent modification by throwing an error when\n * any mutating method is called.\n */\n public static seal(headers: Headers): ReadonlyHeaders {\n return new Proxy<ReadonlyHeaders>(headers, {\n get(target, prop, receiver) {\n switch (prop) {\n case 'append':\n case 'delete':\n case 'set':\n return ReadonlyHeadersError.callable\n default:\n return ReflectAdapter.get(target, prop, receiver)\n }\n },\n })\n }\n\n /**\n * Merges a header value into a string. This stores multiple values as an\n * array, so we need to merge them into a string.\n *\n * @param value a header value\n * @returns a merged header value (a string)\n */\n private merge(value: string | string[]): string {\n if (Array.isArray(value)) return value.join(', ')\n\n return value\n }\n\n /**\n * Creates a Headers instance from a plain object or a Headers instance.\n *\n * @param headers a plain object or a Headers instance\n * @returns a headers instance\n */\n public static from(headers: IncomingHttpHeaders | Headers): Headers {\n if (headers instanceof Headers) return headers\n\n return new HeadersAdapter(headers)\n }\n\n public append(name: string, value: string): void {\n const existing = this.headers[name]\n if (typeof existing === 'string') {\n this.headers[name] = [existing, value]\n } else if (Array.isArray(existing)) {\n existing.push(value)\n } else {\n this.headers[name] = value\n }\n }\n\n public delete(name: string): void {\n delete this.headers[name]\n }\n\n public get(name: string): string | null {\n const value = this.headers[name]\n if (typeof value !== 'undefined') return this.merge(value)\n\n return null\n }\n\n public has(name: string): boolean {\n return typeof this.headers[name] !== 'undefined'\n }\n\n public set(name: string, value: string): void {\n this.headers[name] = value\n }\n\n public forEach(\n callbackfn: (value: string, name: string, parent: Headers) => void,\n thisArg?: any\n ): void {\n for (const [name, value] of this.entries()) {\n callbackfn.call(thisArg, value, name, this)\n }\n }\n\n public *entries(): HeadersIterator<[string, string]> {\n for (const key of Object.keys(this.headers)) {\n const name = key.toLowerCase()\n // We assert here that this is a string because we got it from the\n // Object.keys() call above.\n const value = this.get(name) as string\n\n yield [name, value] as [string, string]\n }\n }\n\n public *keys(): HeadersIterator<string> {\n for (const key of Object.keys(this.headers)) {\n const name = key.toLowerCase()\n yield name\n }\n }\n\n public *values(): HeadersIterator<string> {\n for (const key of Object.keys(this.headers)) {\n // We assert here that this is a string because we got it from the\n // Object.keys() call above.\n const value = this.get(key) as string\n\n yield value\n }\n }\n\n public [Symbol.iterator](): HeadersIterator<[string, string]> {\n return this.entries()\n }\n}\n","import {\n HeadersAdapter,\n type ReadonlyHeaders,\n} from '../web/spec-extension/adapters/headers'\nimport { workAsyncStorage } from '../app-render/work-async-storage.external'\nimport { getExpectedRequestStore } from '../app-render/work-unit-async-storage.external'\nimport {\n workUnitAsyncStorage,\n type PrerenderStoreModern,\n} from '../app-render/work-unit-async-storage.external'\nimport {\n postponeWithTracking,\n abortAndThrowOnSynchronousRequestDataAccess,\n throwToInterruptStaticGeneration,\n trackDynamicDataInDynamicRender,\n trackSynchronousRequestDataAccessInDev,\n} from '../app-render/dynamic-rendering'\nimport { StaticGenBailoutError } from '../../client/components/static-generation-bailout'\nimport { makeHangingPromise } from '../dynamic-rendering-utils'\nimport { createDedupedByCallsiteServerErrorLoggerDev } from '../create-deduped-by-callsite-server-error-logger'\nimport { scheduleImmediate } from '../../lib/scheduler'\nimport { isRequestAPICallableInsideAfter } from './utils'\n\n/**\n * In this version of Next.js `headers()` returns a Promise however you can still reference the properties of the underlying Headers instance\n * synchronously to facilitate migration. The `UnsafeUnwrappedHeaders` type is added to your code by a codemod that attempts to automatically\n * updates callsites to reflect the new Promise return type. There are some cases where `headers()` cannot be automatically converted, namely\n * when it is used inside a synchronous function and we can't be sure the function can be made async automatically. In these cases we add an\n * explicit type case to `UnsafeUnwrappedHeaders` to enable typescript to allow for the synchronous usage only where it is actually necessary.\n *\n * You should should update these callsites to either be async functions where the `headers()` value can be awaited or you should call `headers()`\n * from outside and await the return value before passing it into this function.\n *\n * You can find instances that require manual migration by searching for `UnsafeUnwrappedHeaders` in your codebase or by search for a comment that\n * starts with `@next-codemod-error`.\n *\n * In a future version of Next.js `headers()` will only return a Promise and you will not be able to access the underlying Headers instance\n * without awaiting the return value first. When this change happens the type `UnsafeUnwrappedHeaders` will be updated to reflect that is it no longer\n * usable.\n *\n * This type is marked deprecated to help identify it as target for refactoring away.\n *\n * @deprecated\n */\nexport type UnsafeUnwrappedHeaders = ReadonlyHeaders\n\n/**\n * This function allows you to read the HTTP incoming request headers in\n * [Server Components](https://nextjs.org/docs/app/building-your-application/rendering/server-components),\n * [Server Actions](https://nextjs.org/docs/app/building-your-application/data-fetching/server-actions-and-mutations),\n * [Route Handlers](https://nextjs.org/docs/app/building-your-application/routing/route-handlers) and\n * [Middleware](https://nextjs.org/docs/app/building-your-application/routing/middleware).\n *\n * Read more: [Next.js Docs: `headers`](https://nextjs.org/docs/app/api-reference/functions/headers)\n */\nexport function headers(): Promise<ReadonlyHeaders> {\n const workStore = workAsyncStorage.getStore()\n const workUnitStore = workUnitAsyncStorage.getStore()\n\n if (workStore) {\n if (\n workUnitStore &&\n workUnitStore.phase === 'after' &&\n !isRequestAPICallableInsideAfter()\n ) {\n throw new Error(\n `Route ${workStore.route} used \"headers\" inside \"after(...)\". This is not supported. If you need this data inside an \"after\" callback, use \"headers\" outside of the callback. See more info here: https://nextjs.org/docs/canary/app/api-reference/functions/after`\n )\n }\n\n if (workStore.forceStatic) {\n // When using forceStatic we override all other logic and always just return an empty\n // headers object without tracking\n const underlyingHeaders = HeadersAdapter.seal(new Headers({}))\n return makeUntrackedExoticHeaders(underlyingHeaders)\n }\n\n if (workUnitStore) {\n if (workUnitStore.type === 'cache') {\n throw new Error(\n `Route ${workStore.route} used \"headers\" inside \"use cache\". Accessing Dynamic data sources inside a cache scope is not supported. If you need this data inside a cached function use \"headers\" outside of the cached function and pass the required dynamic data in as an argument. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`\n )\n } else if (workUnitStore.type === 'unstable-cache') {\n throw new Error(\n `Route ${workStore.route} used \"headers\" inside a function cached with \"unstable_cache(...)\". Accessing Dynamic data sources inside a cache scope is not supported. If you need this data inside a cached function use \"headers\" outside of the cached function and pass the required dynamic data in as an argument. See more info here: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`\n )\n }\n }\n if (workStore.dynamicShouldError) {\n throw new StaticGenBailoutError(\n `Route ${workStore.route} with \\`dynamic = \"error\"\\` couldn't be rendered statically because it used \\`headers\\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`\n )\n }\n\n if (workUnitStore) {\n if (workUnitStore.type === 'prerender') {\n // dynamicIO Prerender\n // We don't track dynamic access here because access will be tracked when you access\n // one of the properties of the headers object.\n return makeDynamicallyTrackedExoticHeaders(\n workStore.route,\n workUnitStore\n )\n } else if (workUnitStore.type === 'prerender-ppr') {\n // PPR Prerender (no dynamicIO)\n // We are prerendering with PPR. We need track dynamic access here eagerly\n // to keep continuity with how headers has worked in PPR without dynamicIO.\n // TODO consider switching the semantic to throw on property access instead\n postponeWithTracking(\n workStore.route,\n 'headers',\n workUnitStore.dynamicTracking\n )\n } else if (workUnitStore.type === 'prerender-legacy') {\n // Legacy Prerender\n // We are in a legacy static generation mode while prerendering\n // We track dynamic access here so we don't need to wrap the headers in\n // individual property access tracking.\n throwToInterruptStaticGeneration('headers', workStore, workUnitStore)\n }\n }\n // We fall through to the dynamic context below but we still track dynamic access\n // because in dev we can still error for things like using headers inside a cache context\n trackDynamicDataInDynamicRender(workStore, workUnitStore)\n }\n\n const requestStore = getExpectedRequestStore('headers')\n if (process.env.NODE_ENV === 'development' && !workStore?.isPrefetchRequest) {\n return makeUntrackedExoticHeadersWithDevWarnings(\n requestStore.headers,\n workStore?.route\n )\n } else {\n return makeUntrackedExoticHeaders(requestStore.headers)\n }\n}\n\ninterface CacheLifetime {}\nconst CachedHeaders = new WeakMap<CacheLifetime, Promise<ReadonlyHeaders>>()\n\nfunction makeDynamicallyTrackedExoticHeaders(\n route: string,\n prerenderStore: PrerenderStoreModern\n): Promise<ReadonlyHeaders> {\n const cachedHeaders = CachedHeaders.get(prerenderStore)\n if (cachedHeaders) {\n return cachedHeaders\n }\n\n const promise = makeHangingPromise<ReadonlyHeaders>(\n prerenderStore.renderSignal,\n '`headers()`'\n )\n CachedHeaders.set(prerenderStore, promise)\n\n Object.defineProperties(promise, {\n append: {\n value: function append() {\n const expression = `\\`headers().append(${describeNameArg(arguments[0])}, ...)\\``\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n delete: {\n value: function _delete() {\n const expression = `\\`headers().delete(${describeNameArg(arguments[0])})\\``\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n get: {\n value: function get() {\n const expression = `\\`headers().get(${describeNameArg(arguments[0])})\\``\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n has: {\n value: function has() {\n const expression = `\\`headers().has(${describeNameArg(arguments[0])})\\``\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n set: {\n value: function set() {\n const expression = `\\`headers().set(${describeNameArg(arguments[0])}, ...)\\``\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n getSetCookie: {\n value: function getSetCookie() {\n const expression = '`headers().getSetCookie()`'\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n forEach: {\n value: function forEach() {\n const expression = '`headers().forEach(...)`'\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n keys: {\n value: function keys() {\n const expression = '`headers().keys()`'\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n values: {\n value: function values() {\n const expression = '`headers().values()`'\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n entries: {\n value: function entries() {\n const expression = '`headers().entries()`'\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n [Symbol.iterator]: {\n value: function () {\n const expression = '`headers()[Symbol.iterator]()`'\n const error = createHeadersAccessError(route, expression)\n abortAndThrowOnSynchronousRequestDataAccess(\n route,\n expression,\n error,\n prerenderStore\n )\n },\n },\n } satisfies HeadersExtensions)\n\n return promise\n}\n\nfunction makeUntrackedExoticHeaders(\n underlyingHeaders: ReadonlyHeaders\n): Promise<ReadonlyHeaders> {\n const cachedHeaders = CachedHeaders.get(underlyingHeaders)\n if (cachedHeaders) {\n return cachedHeaders\n }\n\n const promise = Promise.resolve(underlyingHeaders)\n CachedHeaders.set(underlyingHeaders, promise)\n\n Object.defineProperties(promise, {\n append: {\n value: underlyingHeaders.append.bind(underlyingHeaders),\n },\n delete: {\n value: underlyingHeaders.delete.bind(underlyingHeaders),\n },\n get: {\n value: underlyingHeaders.get.bind(underlyingHeaders),\n },\n has: {\n value: underlyingHeaders.has.bind(underlyingHeaders),\n },\n set: {\n value: underlyingHeaders.set.bind(underlyingHeaders),\n },\n getSetCookie: {\n value: underlyingHeaders.getSetCookie.bind(underlyingHeaders),\n },\n forEach: {\n value: underlyingHeaders.forEach.bind(underlyingHeaders),\n },\n keys: {\n value: underlyingHeaders.keys.bind(underlyingHeaders),\n },\n values: {\n value: underlyingHeaders.values.bind(underlyingHeaders),\n },\n entries: {\n value: underlyingHeaders.entries.bind(underlyingHeaders),\n },\n [Symbol.iterator]: {\n value: underlyingHeaders[Symbol.iterator].bind(underlyingHeaders),\n },\n } satisfies HeadersExtensions)\n\n return promise\n}\n\nfunction makeUntrackedExoticHeadersWithDevWarnings(\n underlyingHeaders: ReadonlyHeaders,\n route?: string\n): Promise<ReadonlyHeaders> {\n const cachedHeaders = CachedHeaders.get(underlyingHeaders)\n if (cachedHeaders) {\n return cachedHeaders\n }\n\n const promise = new Promise<ReadonlyHeaders>((resolve) =>\n scheduleImmediate(() => resolve(underlyingHeaders))\n )\n\n CachedHeaders.set(underlyingHeaders, promise)\n\n Object.defineProperties(promise, {\n append: {\n value: function append() {\n const expression = `\\`headers().append(${describeNameArg(arguments[0])}, ...)\\``\n syncIODev(route, expression)\n return underlyingHeaders.append.apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n delete: {\n value: function _delete() {\n const expression = `\\`headers().delete(${describeNameArg(arguments[0])})\\``\n syncIODev(route, expression)\n return underlyingHeaders.delete.apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n get: {\n value: function get() {\n const expression = `\\`headers().get(${describeNameArg(arguments[0])})\\``\n syncIODev(route, expression)\n return underlyingHeaders.get.apply(underlyingHeaders, arguments as any)\n },\n },\n has: {\n value: function has() {\n const expression = `\\`headers().has(${describeNameArg(arguments[0])})\\``\n syncIODev(route, expression)\n return underlyingHeaders.has.apply(underlyingHeaders, arguments as any)\n },\n },\n set: {\n value: function set() {\n const expression = `\\`headers().set(${describeNameArg(arguments[0])}, ...)\\``\n syncIODev(route, expression)\n return underlyingHeaders.set.apply(underlyingHeaders, arguments as any)\n },\n },\n getSetCookie: {\n value: function getSetCookie() {\n const expression = '`headers().getSetCookie()`'\n syncIODev(route, expression)\n return underlyingHeaders.getSetCookie.apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n forEach: {\n value: function forEach() {\n const expression = '`headers().forEach(...)`'\n syncIODev(route, expression)\n return underlyingHeaders.forEach.apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n keys: {\n value: function keys() {\n const expression = '`headers().keys()`'\n syncIODev(route, expression)\n return underlyingHeaders.keys.apply(underlyingHeaders, arguments as any)\n },\n },\n values: {\n value: function values() {\n const expression = '`headers().values()`'\n syncIODev(route, expression)\n return underlyingHeaders.values.apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n entries: {\n value: function entries() {\n const expression = '`headers().entries()`'\n syncIODev(route, expression)\n return underlyingHeaders.entries.apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n [Symbol.iterator]: {\n value: function () {\n const expression = '`...headers()` or similar iteration'\n syncIODev(route, expression)\n return underlyingHeaders[Symbol.iterator].apply(\n underlyingHeaders,\n arguments as any\n )\n },\n },\n } satisfies HeadersExtensions)\n\n return promise\n}\n\nfunction describeNameArg(arg: unknown) {\n return typeof arg === 'string' ? `'${arg}'` : '...'\n}\n\nfunction syncIODev(route: string | undefined, expression: string) {\n const workUnitStore = workUnitAsyncStorage.getStore()\n if (\n workUnitStore &&\n workUnitStore.type === 'request' &&\n workUnitStore.prerenderPhase === true\n ) {\n // When we're rendering dynamically in dev we need to advance out of the\n // Prerender environment when we read Request data synchronously\n const requestStore = workUnitStore\n trackSynchronousRequestDataAccessInDev(requestStore)\n }\n // In all cases we warn normally\n warnForSyncAccess(route, expression)\n}\n\nconst warnForSyncAccess = createDedupedByCallsiteServerErrorLoggerDev(\n createHeadersAccessError\n)\n\nfunction createHeadersAccessError(\n route: string | undefined,\n expression: string\n) {\n const prefix = route ? `Route \"${route}\" ` : 'This route '\n return new Error(\n `${prefix}used ${expression}. ` +\n `\\`headers()\\` should be awaited before using its value. ` +\n `Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis`\n )\n}\n\ntype HeadersExtensions = {\n [K in keyof ReadonlyHeaders]: unknown\n}\n","import {\n getDraftModeProviderForCacheScope,\n throwForMissingRequestStore,\n} from '../app-render/work-unit-async-storage.external'\n\nimport type { DraftModeProvider } from '../async-storage/draft-mode-provider'\n\nimport {\n workAsyncStorage,\n type WorkStore,\n} from '../app-render/work-async-storage.external'\nimport { workUnitAsyncStorage } from '../app-render/work-unit-async-storage.external'\nimport {\n abortAndThrowOnSynchronousRequestDataAccess,\n postponeWithTracking,\n trackSynchronousRequestDataAccessInDev,\n} from '../app-render/dynamic-rendering'\nimport { createDedupedByCallsiteServerErrorLoggerDev } from '../create-deduped-by-callsite-server-error-logger'\nimport { StaticGenBailoutError } from '../../client/components/static-generation-bailout'\nimport { DynamicServerError } from '../../client/components/hooks-server-context'\n\n/**\n * In this version of Next.js `draftMode()` returns a Promise however you can still reference the properties of the underlying draftMode object\n * synchronously to facilitate migration. The `UnsafeUnwrappedDraftMode` type is added to your code by a codemod that attempts to automatically\n * updates callsites to reflect the new Promise return type. There are some cases where `draftMode()` cannot be automatically converted, namely\n * when it is used inside a synchronous function and we can't be sure the function can be made async automatically. In these cases we add an\n * explicit type case to `UnsafeUnwrappedDraftMode` to enable typescript to allow for the synchronous usage only where it is actually necessary.\n *\n * You should should update these callsites to either be async functions where the `draftMode()` value can be awaited or you should call `draftMode()`\n * from outside and await the return value before passing it into this function.\n *\n * You can find instances that require manual migration by searching for `UnsafeUnwrappedDraftMode` in your codebase or by search for a comment that\n * starts with `@next-codemod-error`.\n *\n * In a future version of Next.js `draftMode()` will only return a Promise and you will not be able to access the underlying draftMode object directly\n * without awaiting the return value first. When this change happens the type `UnsafeUnwrappedDraftMode` will be updated to reflect that is it no longer\n * usable.\n *\n * This type is marked deprecated to help identify it as target for refactoring away.\n *\n * @deprecated\n */\nexport type UnsafeUnwrappedDraftMode = DraftMode\n\nexport function draftMode(): Promise<DraftMode> {\n const callingExpression = 'draftMode'\n const workStore = workAsyncStorage.getStore()\n const workUnitStore = workUnitAsyncStorage.getStore()\n\n if (!workStore || !workUnitStore) {\n throwForMissingRequestStore(callingExpression)\n }\n\n switch (workUnitStore.type) {\n case 'request':\n return createOrGetCachedExoticDraftMode(\n workUnitStore.draftMode,\n workStore\n )\n\n case 'cache':\n case 'unstable-cache':\n // Inside of `\"use cache\"` or `unstable_cache`, draft mode is available if\n // the outmost work unit store is a request store, and if draft mode is\n // enabled.\n const draftModeProvider = getDraftModeProviderForCacheScope(\n workStore,\n workUnitStore\n )\n\n if (draftModeProvider) {\n return createOrGetCachedExoticDraftMode(draftModeProvider, workStore)\n }\n\n // Otherwise, we fall through to providing an empty draft mode.\n // eslint-disable-next-line no-fallthrough\n case 'prerender':\n case 'prerender-ppr':\n case 'prerender-legacy':\n // Return empty draft mode\n if (\n process.env.NODE_ENV === 'development' &&\n !workStore?.isPrefetchRequest\n ) {\n const route = workStore?.route\n return createExoticDraftModeWithDevWarnings(null, route)\n } else {\n return createExoticDraftMode(null)\n }\n\n default:\n const _exhaustiveCheck: never = workUnitStore\n return _exhaustiveCheck\n }\n}\n\nfunction createOrGetCachedExoticDraftMode(\n draftModeProvider: DraftModeProvider,\n workStore: WorkStore | undefined\n): Promise<DraftMode> {\n const cachedDraftMode = CachedDraftModes.get(draftMode)\n\n if (cachedDraftMode) {\n return cachedDraftMode\n }\n\n let promise: Promise<DraftMode>\n\n if (process.env.NODE_ENV === 'development' && !workStore?.isPrefetchRequest) {\n const route = workStore?.route\n promise = createExoticDraftModeWithDevWarnings(draftModeProvider, route)\n } else {\n promise = createExoticDraftMode(draftModeProvider)\n }\n\n CachedDraftModes.set(draftModeProvider, promise)\n\n return promise\n}\n\ninterface CacheLifetime {}\nconst CachedDraftModes = new WeakMap<CacheLifetime, Promise<DraftMode>>()\n\nfunction createExoticDraftMode(\n underlyingProvider: null | DraftModeProvider\n): Promise<DraftMode> {\n const instance = new DraftMode(underlyingProvider)\n const promise = Promise.resolve(instance)\n\n Object.defineProperty(promise, 'isEnabled', {\n get() {\n return instance.isEnabled\n },\n set(newValue) {\n Object.defineProperty(promise, 'isEnabled', {\n value: newValue,\n writable: true,\n enumerable: true,\n })\n },\n enumerable: true,\n configurable: true,\n })\n ;(promise as any).enable = instance.enable.bind(instance)\n ;(promise as any).disable = instance.disable.bind(instance)\n\n return promise\n}\n\nfunction createExoticDraftModeWithDevWarnings(\n underlyingProvider: null | DraftModeProvider,\n route: undefined | string\n): Promise<DraftMode> {\n const instance = new DraftMode(underlyingProvider)\n const promise = Promise.resolve(instance)\n\n Object.defineProperty(promise, 'isEnabled', {\n get() {\n const expression = '`draftMode().isEnabled`'\n syncIODev(route, expression)\n return instance.isEnabled\n },\n set(newValue) {\n Object.defineProperty(promise, 'isEnabled', {\n value: newValue,\n writable: true,\n enumerable: true,\n })\n },\n enumerable: true,\n configurable: true,\n })\n\n Object.defineProperty(promise, 'enable', {\n value: function get() {\n const expression = '`draftMode().enable()`'\n syncIODev(route, expression)\n return instance.enable.apply(instance, arguments as any)\n },\n })\n\n Object.defineProperty(promise, 'disable', {\n value: function get() {\n const expression = '`draftMode().disable()`'\n syncIODev(route, expression)\n return instance.disable.apply(instance, arguments as any)\n },\n })\n\n return promise\n}\n\nclass DraftMode {\n /**\n * @internal - this declaration is stripped via `tsc --stripInternal`\n */\n private readonly _provider: null | DraftModeProvider\n\n constructor(provider: null | DraftModeProvider) {\n this._provider = provider\n }\n get isEnabled() {\n if (this._provider !== null) {\n return this._provider.isEnabled\n }\n return false\n }\n public enable() {\n // We have a store we want to track dynamic data access to ensure we\n // don't statically generate routes that manipulate draft mode.\n trackDynamicDraftMode('draftMode().enable()')\n if (this._provider !== null) {\n this._provider.enable()\n }\n }\n public disable() {\n trackDynamicDraftMode('draftMode().disable()')\n if (this._provider !== null) {\n this._provider.disable()\n }\n }\n}\n\nfunction syncIODev(route: string | undefined, expression: string) {\n const workUnitStore = workUnitAsyncStorage.getStore()\n if (\n workUnitStore &&\n workUnitStore.type === 'request' &&\n workUnitStore.prerenderPhase === true\n ) {\n // When we're rendering dynamically in dev we need to advance out of the\n // Prerender environment when we read Request data synchronously\n const requestStore = workUnitStore\n trackSynchronousRequestDataAccessInDev(requestStore)\n }\n // In all cases we warn normally\n warnForSyncAccess(route, expression)\n}\n\nconst warnForSyncAccess = createDedupedByCallsiteServerErrorLoggerDev(\n createDraftModeAccessError\n)\n\nfunction createDraftModeAccessError(\n route: string | undefined,\n expression: string\n) {\n const prefix = route ? `Route \"${route}\" ` : 'This route '\n return new Error(\n `${prefix}used ${expression}. ` +\n `\\`draftMode()\\` should be awaited before using its value. ` +\n `Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis`\n )\n}\n\nfunction trackDynamicDraftMode(expression: string) {\n const store = workAsyncStorage.getStore()\n const workUnitStore = workUnitAsyncStorage.getStore()\n if (store) {\n // We have a store we want to track dynamic data access to ensure we\n // don't statically generate routes that manipulate draft mode.\n if (workUnitStore) {\n if (workUnitStore.type === 'cache') {\n throw new Error(\n `Route ${store.route} used \"${expression}\" inside \"use cache\". The enabled status of draftMode can be read in caches but you must not enable or disable draftMode inside a cache. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`\n )\n } else if (workUnitStore.type === 'unstable-cache') {\n throw new Error(\n `Route ${store.route} used \"${expression}\" inside a function cached with \"unstable_cache(...)\". The enabled status of draftMode can be read in caches but you must not enable or disable draftMode inside a cache. See more info here: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`\n )\n } else if (workUnitStore.phase === 'after') {\n throw new Error(\n `Route ${store.route} used \"${expression}\" inside \\`after\\`. The enabled status of draftMode can be read inside \\`after\\` but you cannot enable or disable draftMode. See more info here: https://nextjs.org/docs/app/api-reference/functions/after`\n )\n }\n }\n\n if (store.dynamicShouldError) {\n throw new StaticGenBailoutError(\n `Route ${store.route} with \\`dynamic = \"error\"\\` couldn't be rendered statically because it used \\`${expression}\\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`\n )\n }\n\n if (workUnitStore) {\n if (workUnitStore.type === 'prerender') {\n // dynamicIO Prerender\n const error = new Error(\n `Route ${store.route} used ${expression} without first calling \\`await connection()\\`. See more info here: https://nextjs.org/docs/messages/next-prerender-sync-headers`\n )\n abortAndThrowOnSynchronousRequestDataAccess(\n store.route,\n expression,\n error,\n workUnitStore\n )\n } else if (workUnitStore.type === 'prerender-ppr') {\n // PPR Prerender\n postponeWithTracking(\n store.route,\n expression,\n workUnitStore.dynamicTracking\n )\n } else if (workUnitStore.type === 'prerender-legacy') {\n // legacy Prerender\n workUnitStore.revalidate = 0\n\n const err = new DynamicServerError(\n `Route ${store.route} couldn't be rendered statically because it used \\`${expression}\\`. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`\n )\n store.dynamicUsageDescription = expression\n store.dynamicUsageStack = err.stack\n\n throw err\n } else if (\n process.env.NODE_ENV === 'development' &&\n workUnitStore &&\n workUnitStore.type === 'request'\n ) {\n workUnitStore.usedDynamic = true\n }\n }\n }\n}\n","module.exports.cookies = require('./dist/server/request/cookies').cookies\nmodule.exports.headers = require('./dist/server/request/headers').headers\nmodule.exports.draftMode = require('./dist/server/request/draft-mode').draftMode\n","import { cookies } from 'next/headers';\n\n/**\n * 서버사이드용 쿠키함수\n */\nexport const cookieServer = {\n async getCookie(name: string): Promise<string> {\n const cookieStore = await cookies();\n\n return cookieStore.get(name)?.value || '';\n },\n\n async setCookie(name: string, value: string, options?: any): Promise<void> {\n const cookieStore = await cookies();\n cookieStore.set(name, value, options);\n },\n\n async deleteCookie(name: string): Promise<void> {\n const cookieStore = await cookies();\n cookieStore.delete(name);\n }\n};\n","import { headers } from 'next/headers';\n\nimport { AT, customHeaderNames, GetterAsync, SetterAsync } from './header.types';\n\n// =============================================================================\n// 비동기 버전 (서버 사이드용)\n// =============================================================================\n\nexport class HeaderManagerAsync {\n private getter: GetterAsync;\n private setter: SetterAsync;\n\n constructor(getter: GetterAsync, setter: SetterAsync) {\n this.getter = getter;\n this.setter = setter;\n }\n\n /**\n * 커스텀 헤더를 비동기적으로 설정합니다.\n */\n async setCustomHeaders(): Promise<void> {\n const headerPromises = customHeaderNames.map(async (headerName) => {\n const customHeaderKey = `X-Channel-${headerName}`;\n const headerValue = await Promise.resolve(this.getter(customHeaderKey));\n if (headerValue) {\n await Promise.resolve(this.setter(customHeaderKey, headerValue));\n }\n });\n await Promise.all(headerPromises);\n }\n\n /**\n * 인증 토큰을 비동기적으로 설정합니다.\n */\n async setAuthToken(): Promise<void> {\n const token = await Promise.resolve(this.getter(AT));\n if (token) {\n await Promise.resolve(this.setter('Authorization', `Bearer ${token}`));\n }\n }\n\n /**\n * 모든 헤더를 비동기적으로 설정합니다.\n */\n async setAllHeaders(): Promise<void> {\n await Promise.all([this.setCustomHeaders(), this.setAuthToken()]);\n }\n}\n\nexport const HeaderFunc = {\n async getHeader(name: string) {\n const headersList = await headers();\n\n return headersList.get(name);\n },\n\n async setHeader(name: string, value: string) {\n const headersList = await headers();\n\n headersList.set(name, value);\n }\n};\n","/**\n * @see https://loop.cloud.microsoft/p/eyJ3Ijp7InUiOiJodHRwczovL2hhbndoYWxpZmVtMzY1LnNoYXJlcG9pbnQuY29tLz9uYXY9Y3owbE1rWW1aRDFpSVVVd1FXdDJSbGhSV0VWUE1tUkNYMWhUZW5KWVVFdFBSVXByYWs1b1NrSlBjRk4wYm5wNmNsWmpMVUZ5YjI1UlJWOVdSREpUV25aeWVUUTJTV2swUlZrbVpqMHdNVk5OVGtkR1JsTkJXVE0xVVZaQ1ZrRkVRa1ZaVEVoRVNUSTBXRXhVVlZoV0ptTTlKbVpzZFdsa1BURSUzRCIsInIiOmZhbHNlfSwicCI6eyJ1IjoiaHR0cHM6Ly9oYW53aGFsaWZlbTM2NS5zaGFyZXBvaW50LmNvbS9jb250ZW50c3RvcmFnZS9DU1BfYmMyNDQwMTMtZDA1NS00MzVjLWI2NzQtMWZkNzRiM2FkNzNjLyVFQiVBQyVCOCVFQyU4NCU5QyUyMCVFQiU5RCVCQyVFQyU5RCVCNCVFQiVCOCU4QyVFQiU5RiVBQyVFQiVBNiVBQy9Mb29wQXBwRGF0YS8wOS0yLiUyMEJyaWRnZSUyMFNwZWMlMjAxLmxvb3A%2FbmF2PWN6MGxNa1pqYjI1MFpXNTBjM1J2Y21GblpTVXlSa05UVUY5aVl6STBOREF4TXkxa01EVTFMVFF6TldNdFlqWTNOQzB4Wm1RM05HSXpZV1EzTTJNbVpEMWlJVVV3UVd0MlJsaFJXRVZQTW1SQ1gxaFRlbkpZVUV0UFJVcHJhazVvU2tKUGNGTjBibnA2Y2xaakxVRnliMjVSUlY5V1JESlRXblp5ZVRRMlNXazBSVmttWmowd01WTk5Ua2RHUmxGRlYxTlFOelpMUWtsTFdrWkpXVUUzU1ZkWldGTklWa0ZUSm1NOUpUSkdKbVpzZFdsa1BURSUzRCIsInIiOmZhbHNlfSwiaSI6eyJpIjoiNTdkZmVhM2QtZDA2Yi00YWRlLWIxZjEtYjE4NDA4MmNlN2VjIn19\n */\nexport const customHeaderNames = [\n 'Accept-Language',\n 'DeviceId',\n 'LoginType',\n 'PlatformName',\n 'PlatformVersion',\n 'AppVersion',\n 'DeviceModel',\n 'FormFactor',\n 'LoginChannel'\n];\n\nexport const AT = 'AT';\nexport type GetterSync = (keyName: string) => string;\nexport type SetterSync = (keyName: string, value: string) => void;\n\nexport type GetterAsync = (keyName: string) => Promise<string> | string;\nexport type SetterAsync = (keyName: string, value: string) => Promise<void> | void;\n","/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport type { HttpClientConfig, Interceptor, RequestConfig } from './fetch.types';\n\n/**\n * HTTP 오류를 위한 사용자 정의 오류\n * 응답 객체를 포함\n * @todo CustomeError > 다이렉트 에러 참고하여 수정 필요\n */\nexport class HttpError extends Error {\n public response: Response;\n public data: any;\n\n constructor(response: Response, data: any) {\n super(`Request failed with status ${response.status} ${response.statusText}`);\n this.name = 'HttpError';\n this.response = response;\n this.data = data;\n }\n}\n\n/**\n * Axios와 유사하게 인터셉터 컬렉션을 관리합니다.\n */\nclass InterceptorManager<V> {\n private handlers: Array<Interceptor<V> | null> = [];\n\n /**\n * 체인에 새 인터셉터를 추가\n * @param onFulfilled - 프로미스가 이행되었을 때 호출할 함수\n * @param onRejected - 프로미스가 거부되었을 때 호출할 함수\n * @returns 인터셉터의 ID이며, 나중에 제거하는 데 사용\n */\n public use(onFulfilled?: (value: V) => V | Promise<V>, onRejected?: (error: any) => any): number {\n this.handlers.push({ onFulfilled, onRejected });\n\n return this.handlers.length - 1;\n }\n\n /**\n * ID를 사용하여 체인에서 인터셉터를 제거합니다.\n * @param id - 제거할 인터셉터의 ID입니다.\n */\n public eject(id: number): void {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * 주어진 프로미스에 대해 인터셉터 체인을 실행합니다.\n * @param promise - 체인을 시작할 초기 프로미스입니다.\n * @returns 전체 체인이 실행된 후 확인되는 새 프로미스입니다.\n */\n public executeChain(promise: Promise<V>): Promise<V> {\n let chain = promise;\n\n this.handlers.forEach((handler) => {\n if (handler) {\n chain = chain.then(handler.onFulfilled, handler.onRejected);\n }\n });\n\n return chain;\n }\n}\n\n/**\n * @description middleware.ts에서 사용하기 위한 용도로 작성\n */\nexport class FetchInstance {\n private defaults: HttpClientConfig;\n\n public interceptors: {\n request: InterceptorManager<RequestConfig>;\n response: InterceptorManager<Response>;\n };\n\n constructor(config: HttpClientConfig = {}) {\n this.defaults = config;\n this.interceptors = {\n request: new InterceptorManager<RequestConfig>(),\n response: new InterceptorManager<Response>()\n };\n }\n\n /**\n * 인터셉터를 적용하고 실제 fetch 호출을 수행\n * @param config - 요청 설정\n */\n public async request<T = any>(config: RequestConfig): Promise<{ data: T; response: Response }> {\n // --- 요청 인터셉터 체인 ---\n let requestConfig = { ...this.defaults, ...config };\n const requestChain = this.interceptors.request.executeChain(Promise.resolve(requestConfig));\n requestConfig = await requestChain;\n\n // --- fetch 준비 ---\n const { baseURL, params, data, ...fetchOptions } = requestConfig;\n const headers = new Headers({ ...this.defaults.headers, ...requestConfig.headers });\n\n // URL 빌드\n const url = new URL(requestConfig.url || '', baseURL);\n if (params) {\n Object.keys(params).forEach((key) => {\n const value = params[key];\n if (value !== undefined && value !== null) {\n url.searchParams.append(key, String(value));\n }\n });\n }\n\n // Body 준비\n let body: BodyInit | undefined = undefined;\n if (data) {\n if (typeof data === 'object' && !(data instanceof FormData) && !(data instanceof Blob)) {\n body = JSON.stringify(data);\n if (!headers.has('Content-Type')) {\n headers.set('Content-Type', 'application/json');\n }\n } else {\n body = data as BodyInit;\n }\n }\n\n // --- fetch 및 응답 인터셉터 체인 ---\n const fetchPromise = fetch(url.toString(), { ...fetchOptions, headers, body });\n\n const response = await this.interceptors.response.executeChain(fetchPromise);\n\n // --- 응답 처리 ---\n if (!response.ok) {\n let responseData: any = null;\n try {\n responseData = await response.clone().json();\n } catch {\n // 본문이 유효한 JSON이 아닌 경우 무시\n }\n throw new HttpError(response, responseData);\n }\n\n let responseData: T;\n try {\n responseData = await response.json();\n } catch {\n // 응답은 성공했지만 JSON 본문이 없는 경우 처리 (예: 204 No Content)\n responseData = null as T;\n }\n\n return { data: responseData, response };\n }\n\n // ===========================================================================\n // 메서드 (GET, POST, PUT, DELETE)\n // ===========================================================================\n\n public get<T = any>(\n url: string,\n config: Omit<RequestConfig, 'method'> = {}\n ): Promise<{ data: T; response: Response }> {\n return this.request<T>({ ...config, url, method: 'GET' });\n }\n\n public post<T = any>(\n url: string,\n data: any,\n config: Omit<RequestConfig, 'method' | 'data'> = {}\n ): Promise<{ data: T; response: Response }> {\n return this.request<T>({ ...config, url, method: 'POST', data });\n }\n\n public put<T = any>(\n url: string,\n data: any,\n config: Omit<RequestConfig, 'method' | 'data'> = {}\n ): Promise<{ data: T; response: Response }> {\n return this.request<T>({ ...config, url, method: 'PUT', data });\n }\n\n public delete<T = any>(\n url: string,\n config: Omit<RequestConfig, 'method'> = {}\n ): Promise<{ data: T; response: Response }> {\n return this.request<T>({ ...config, url, method: 'DELETE' });\n }\n}\n\n/**\n * axios의 핵심 기능을 모방하고 middleware.ts 환경에서도 fetch기본함수로 작성.\n\n 주요 특징:\n * 외부 라이브러리 의존성 없음 (웹 표준 fetch 기반)\n * axios와 유사한 인터셉터 (client.interceptors.request.use(...))\n * HTTP 4xx/5xx 에러 발생 시 response가 포함된 HttpError를 throw\n * baseURL, 기본 헤더, 요청 params 등 편의 기능 지원\n\n 기본 사용법 예시:\n\n import { HttpClientFetch, HttpError } from './http-client-fetch';\n \n // 1. 클라이언트 인스턴스 생성\n const client = new HttpClientFetch({\n baseURL: 'https://jsonplaceholder.typicode.com',\n headers: { 'Content-Type': 'application/json' }\n });\n \n // 2. 응답 인터셉터 사용 예시 (axios와 동일)\n client.interceptors.response.use(\n (response) => {\n // 응답 성공 시 처리\n console.log('응답을 받았습니다');\n return response;\n },\n (error) => {\n // 응답 에러 시 처리\n if (error instanceof HttpError) {\n console.error(`HTTP 오류: ${error.response.status}`);\n }\n return Promise.reject(error);\n }\n );\n \n // 3. API 호출\n async function getUser(id: number) {\n try {\n const { data, response } = await client.get(`/users/${id}`);\n console.log('사용자 데이터:', data);\n console.log('상태 코드:', response.status);\n } catch (error) {\n if (error instanceof HttpError) {\n // 404와 같은 에러는 여기서 잡힙니다.\n console.error(`사용자 정보를 가져오지 못했습니다. 상태: ${error.response.status}`);\n console.log('오류 응답 데이터:', error.data);\n } else {\n console.error('예상치 못한 오류가 발생했습니다:', error);\n }\n }\n }\n \n getUser(1); // 성공 예시\n getUser(999); // 404 에러 예시\n */\n","import { cookieServer } from '../cookie/cookie-server';\nimport { HeaderManagerAsync } from '../header/header-manager-async';\n\nimport { FetchInstance } from './fetch-instance';\n\nimport type { HttpClientConfig } from './fetch.types';\n\n/**\n * @description middleware에서 사용하는 용도.\n * 인증토큰 처리외에 용도는 없음.\n */\nexport class HttpClientFetch extends FetchInstance {\n headerManager: HeaderManagerAsync;\n headers: Record<string, string> = {};\n constructor(config?: HttpClientConfig) {\n super(config);\n\n /**\n * 헤더매니저 셋팅\n * 쿠키에 일단 저장하고 가져오는 방식으로 사용하는 경우에 사용.\n *\n */\n const getter: HeaderManagerAsync['getter'] = (key) => {\n return cookieServer.getCookie(key);\n };\n const setter: HeaderManagerAsync['setter'] = (key, value) => {\n if (config?.headers) {\n config.headers[key] = value;\n }\n };\n this.headerManager = new HeaderManagerAsync(getter, setter);\n\n this.interceptors.request.use((config) => {\n /**\n * AT토큰 주입\n * 헤더로 주입되는 AT 또는 임시토큰으로 발행한 AT를 쿠키에 저장해두고 사용(?)\n * @todo 여기서 한번에 일괄 처리하는게 더 좋을지?\n */\n // middleware에서 셋팅됩니다.\n /**\n * x-channel-[]\n * 커스텀헤더 주입\n */\n // this.headerManager.setCustomHeaders();\n // middleware에서 셋팅됩니다.\n\n /**\n *\n * this.headers설정된 값을 config headers에 주입\n */\n const headerEntries = Object.entries(this.headers);\n headerEntries.forEach(([key, value]) => {\n if (config?.headers) {\n config.headers = {\n ...config.headers,\n [key]: value\n };\n }\n });\n\n return config;\n });\n }\n}\n","import axios from 'axios';\nimport { AxiosError, AxiosResponse, AxiosInstance, AxiosRequestConfig } from 'axios';\n\n\n\n/**\n * 전자청약\n * SSR용 http-client 입니다.\n * cookie , redirect , token 처리 방식은 SSR 환경에 맞게 구현됩니다.\n */\nexport class HttpServerAxios {\n config: AxiosRequestConfig;\n\n /**\n * axios의 request interceptor 동작시, 헤더에 주입될 헤더의 key,value\n */\n headers: Record<string, string> = {};\n\n api: AxiosInstance;\n constructor(config: AxiosRequestConfig = {}) {\n this.config = config;\n /**\n * api수행객체 최초 생성,\n * 공통으로 적용할 설정값이 있는경우 셋팅\n */\n this.api = axios.create({\n withCredentials: false,\n ...config\n });\n\n /**\n * 인터셉터 요청 처리\n */\n this.api.interceptors.request.use(\n async (config) => {\n console.log('config url', config.url);\n /**\n * this.headers설정된 값을 config headers에 주입\n */\n const headerEntries = Object.entries(this.headers);\n headerEntries.forEach(([key, value]) => {\n if (config?.headers) {\n config.headers[key] = value;\n }\n });\n\n\n return config;\n },\n async (error) => {\n console.log('request error');\n\n return Promise.reject(error);\n }\n );\n\n /**\n * 인터셉터 응답 처리\n */\n this.api.interceptors.response.use(\n async (response: AxiosResponse) => {\n if (response.data.isSuccess === false) {\n /**\n * 200 응답이라도 , isSuccess === false인 경우 에러로 reject\n */\n const axiosError = new AxiosError();\n axiosError.response = response;\n axiosError.config = response.config;\n axiosError.message = response.data.message;\n axiosError.code = response.status.toString();\n axiosError.request = response.request;\n\n return Promise.reject(axiosError);\n }\n\n return response;\n },\n async (error: AxiosError) => {\n console.log('error');\n\n return Promise.reject(error);\n }\n );\n }\n\n setHeaders(headers: Record<string, string>) {\n this.headers = {\n ...this.headers,\n ...headers\n };\n }\n}\n"]}
|