{"version":3,"file":"static/chunks/934-4423861eaa05c932.js","mappings":"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","sources":["webpack://_N_E/./node_modules/cookie/index.js","webpack://_N_E/./node_modules/next/dist/api/app-dynamic.js","webpack://_N_E/./node_modules/next/dist/api/image.js","webpack://_N_E/../../../src/shared/lib/app-dynamic.tsx","webpack://_N_E/../../../src/shared/lib/image-external.tsx","webpack://_N_E/../../../../src/shared/lib/lazy-dynamic/dynamic-bailout-to-csr.tsx","webpack://_N_E/../../../../src/shared/lib/lazy-dynamic/loadable.tsx","webpack://_N_E/../../../../src/shared/lib/lazy-dynamic/preload-chunks.tsx","webpack://_N_E/./node_modules/nookies/dist/index.js","webpack://_N_E/./node_modules/nookies/dist/utils.js","webpack://_N_E/./node_modules/set-cookie-parser/lib/set-cookie.js"],"sourcesContent":["/*!\n * cookie\n * Copyright(c) 2012-2014 Roman Shtylman\n * Copyright(c) 2015 Douglas Christopher Wilson\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module exports.\n * @public\n */\n\nexports.parse = parse;\nexports.serialize = serialize;\n\n/**\n * Module variables.\n * @private\n */\n\nvar decode = decodeURIComponent;\nvar encode = encodeURIComponent;\n\n/**\n * RegExp to match field-content in RFC 7230 sec 3.2\n *\n * field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ]\n * field-vchar = VCHAR / obs-text\n * obs-text = %x80-FF\n */\n\nvar fieldContentRegExp = /^[\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+$/;\n\n/**\n * Parse a cookie header.\n *\n * Parse the given cookie header string into an object\n * The object has the various cookies as keys(names) => values\n *\n * @param {string} str\n * @param {object} [options]\n * @return {object}\n * @public\n */\n\nfunction parse(str, options) {\n if (typeof str !== 'string') {\n throw new TypeError('argument str must be a string');\n }\n\n var obj = {}\n var opt = options || {};\n var pairs = str.split(';')\n var dec = opt.decode || decode;\n\n for (var i = 0; i < pairs.length; i++) {\n var pair = pairs[i];\n var index = pair.indexOf('=')\n\n // skip things that don't look like key=value\n if (index < 0) {\n continue;\n }\n\n var key = pair.substring(0, index).trim()\n\n // only assign once\n if (undefined == obj[key]) {\n var val = pair.substring(index + 1, pair.length).trim()\n\n // quoted values\n if (val[0] === '\"') {\n val = val.slice(1, -1)\n }\n\n obj[key] = tryDecode(val, dec);\n }\n }\n\n return obj;\n}\n\n/**\n * Serialize data into a cookie header.\n *\n * Serialize the a name value pair into a cookie string suitable for\n * http headers. An optional options object specified cookie parameters.\n *\n * serialize('foo', 'bar', { httpOnly: true })\n * => \"foo=bar; httpOnly\"\n *\n * @param {string} name\n * @param {string} val\n * @param {object} [options]\n * @return {string}\n * @public\n */\n\nfunction serialize(name, val, options) {\n var opt = options || {};\n var enc = opt.encode || encode;\n\n if (typeof enc !== 'function') {\n throw new TypeError('option encode is invalid');\n }\n\n if (!fieldContentRegExp.test(name)) {\n throw new TypeError('argument name is invalid');\n }\n\n var value = enc(val);\n\n if (value && !fieldContentRegExp.test(value)) {\n throw new TypeError('argument val is invalid');\n }\n\n var str = name + '=' + value;\n\n if (null != opt.maxAge) {\n var maxAge = opt.maxAge - 0;\n\n if (isNaN(maxAge) || !isFinite(maxAge)) {\n throw new TypeError('option maxAge is invalid')\n }\n\n str += '; Max-Age=' + Math.floor(maxAge);\n }\n\n if (opt.domain) {\n if (!fieldContentRegExp.test(opt.domain)) {\n throw new TypeError('option domain is invalid');\n }\n\n str += '; Domain=' + opt.domain;\n }\n\n if (opt.path) {\n if (!fieldContentRegExp.test(opt.path)) {\n throw new TypeError('option path is invalid');\n }\n\n str += '; Path=' + opt.path;\n }\n\n if (opt.expires) {\n if (typeof opt.expires.toUTCString !== 'function') {\n throw new TypeError('option expires is invalid');\n }\n\n str += '; Expires=' + opt.expires.toUTCString();\n }\n\n if (opt.httpOnly) {\n str += '; HttpOnly';\n }\n\n if (opt.secure) {\n str += '; Secure';\n }\n\n if (opt.sameSite) {\n var sameSite = typeof opt.sameSite === 'string'\n ? opt.sameSite.toLowerCase() : opt.sameSite;\n\n switch (sameSite) {\n case true:\n str += '; SameSite=Strict';\n break;\n case 'lax':\n str += '; SameSite=Lax';\n break;\n case 'strict':\n str += '; SameSite=Strict';\n break;\n case 'none':\n str += '; SameSite=None';\n break;\n default:\n throw new TypeError('option sameSite is invalid');\n }\n }\n\n return str;\n}\n\n/**\n * Try decoding a string using a decoding function.\n *\n * @param {string} str\n * @param {function} decode\n * @private\n */\n\nfunction tryDecode(str, decode) {\n try {\n return decode(str);\n } catch (e) {\n return str;\n }\n}\n","export * from '../shared/lib/app-dynamic';\nexport { default } from '../shared/lib/app-dynamic';\n\n//# sourceMappingURL=app-dynamic.js.map","export { default } from '../shared/lib/image-external';\nexport * from '../shared/lib/image-external';\n\n//# sourceMappingURL=image.js.map","import type React from 'react'\nimport type { JSX } from 'react'\nimport Loadable from './lazy-dynamic/loadable'\n\nimport type {\n LoadableGeneratedOptions,\n DynamicOptionsLoadingProps,\n Loader,\n LoaderComponent,\n} from './lazy-dynamic/types'\n\nexport {\n type LoadableGeneratedOptions,\n type DynamicOptionsLoadingProps,\n type Loader,\n type LoaderComponent,\n}\n\nexport type DynamicOptions

= LoadableGeneratedOptions & {\n loading?: () => JSX.Element | null\n loader?: Loader

\n loadableGenerated?: LoadableGeneratedOptions\n modules?: string[]\n ssr?: boolean\n}\n\nexport type LoadableOptions

= DynamicOptions

\n\nexport type LoadableFn

= (\n opts: LoadableOptions

\n) => React.ComponentType

\n\nexport type LoadableComponent

= React.ComponentType

\n\nexport default function dynamic

(\n dynamicOptions: DynamicOptions

| Loader

,\n options?: DynamicOptions

\n): React.ComponentType

{\n const loadableOptions: LoadableOptions

= {}\n\n if (typeof dynamicOptions === 'function') {\n loadableOptions.loader = dynamicOptions\n }\n\n const mergedOptions = {\n ...loadableOptions,\n ...options,\n }\n\n return Loadable({\n ...mergedOptions,\n modules: mergedOptions.loadableGenerated?.modules,\n })\n}\n","import type { ImageConfigComplete, ImageLoaderProps } from './image-config'\nimport type { ImageProps, ImageLoader, StaticImageData } from './get-img-props'\n\nimport { getImgProps } from './get-img-props'\nimport { Image } from '../../client/image-component'\n\n// @ts-ignore - This is replaced by webpack alias\nimport defaultLoader from 'next/dist/shared/lib/image-loader'\n\n/**\n * For more advanced use cases, you can call `getImageProps()`\n * to get the props that would be passed to the underlying `` element,\n * and instead pass to them to another component, style, canvas, etc.\n *\n * Read more: [Next.js docs: `getImageProps`](https://nextjs.org/docs/app/api-reference/components/image#getimageprops)\n */\nexport function getImageProps(imgProps: ImageProps) {\n const { props } = getImgProps(imgProps, {\n defaultLoader,\n // This is replaced by webpack define plugin\n imgConf: process.env.__NEXT_IMAGE_OPTS as any as ImageConfigComplete,\n })\n // Normally we don't care about undefined props because we pass to JSX,\n // but this exported function could be used by the end user for anything\n // so we delete undefined props to clean it up a little.\n for (const [key, value] of Object.entries(props)) {\n if (value === undefined) {\n delete props[key as keyof typeof props]\n }\n }\n return { props }\n}\n\nexport default Image\n\nexport type { ImageProps, ImageLoaderProps, ImageLoader, StaticImageData }\n","'use client'\n\nimport type { ReactElement } from 'react'\nimport { BailoutToCSRError } from './bailout-to-csr'\n\ninterface BailoutToCSRProps {\n reason: string\n children: ReactElement\n}\n\n/**\n * If rendered on the server, this component throws an error\n * to signal Next.js that it should bail out to client-side rendering instead.\n */\nexport function BailoutToCSR({ reason, children }: BailoutToCSRProps) {\n if (typeof window === 'undefined') {\n throw new BailoutToCSRError(reason)\n }\n\n return children\n}\n","import { Suspense, Fragment, lazy } from 'react'\nimport { BailoutToCSR } from './dynamic-bailout-to-csr'\nimport type { ComponentModule } from './types'\nimport { PreloadChunks } from './preload-chunks'\n\n// Normalize loader to return the module as form { default: Component } for `React.lazy`.\n// Also for backward compatible since next/dynamic allows to resolve a component directly with loader\n// Client component reference proxy need to be converted to a module.\nfunction convertModule

(\n mod: React.ComponentType

| ComponentModule

| undefined\n): {\n default: React.ComponentType

\n} {\n // Check \"default\" prop before accessing it, as it could be client reference proxy that could break it reference.\n // Cases:\n // mod: { default: Component }\n // mod: Component\n // mod: { default: proxy(Component) }\n // mod: proxy(Component)\n const hasDefault = mod && 'default' in mod\n return {\n default: hasDefault\n ? (mod as ComponentModule

).default\n : (mod as React.ComponentType

),\n }\n}\n\nconst defaultOptions = {\n loader: () => Promise.resolve(convertModule(() => null)),\n loading: null,\n ssr: true,\n}\n\ninterface LoadableOptions {\n loader?: () => Promise | ComponentModule>\n loading?: React.ComponentType | null\n ssr?: boolean\n modules?: string[]\n}\n\nfunction Loadable(options: LoadableOptions) {\n const opts = { ...defaultOptions, ...options }\n const Lazy = lazy(() => opts.loader().then(convertModule))\n const Loading = opts.loading\n\n function LoadableComponent(props: any) {\n const fallbackElement = Loading ? (\n \n ) : null\n\n // If it's non-SSR or provided a loading component, wrap it in a suspense boundary\n const hasSuspenseBoundary = !opts.ssr || !!opts.loading\n const Wrap = hasSuspenseBoundary ? Suspense : Fragment\n const wrapProps = hasSuspenseBoundary ? { fallback: fallbackElement } : {}\n const children = opts.ssr ? (\n <>\n {/* During SSR, we need to preload the CSS from the dynamic component to avoid flash of unstyled content */}\n {typeof window === 'undefined' ? (\n \n ) : null}\n \n \n ) : (\n \n \n \n )\n\n return {children}\n }\n\n LoadableComponent.displayName = 'LoadableComponent'\n\n return LoadableComponent\n}\n\nexport default Loadable\n","'use client'\n\nimport { preload } from 'react-dom'\n\nimport { workAsyncStorage } from '../../../server/app-render/work-async-storage.external'\nimport { encodeURIPath } from '../encode-uri-path'\n\nexport function PreloadChunks({\n moduleIds,\n}: {\n moduleIds: string[] | undefined\n}) {\n // Early return in client compilation and only load requestStore on server side\n if (typeof window !== 'undefined') {\n return null\n }\n\n const workStore = workAsyncStorage.getStore()\n if (workStore === undefined) {\n return null\n }\n\n const allFiles = []\n\n // Search the current dynamic call unique key id in react loadable manifest,\n // and find the corresponding CSS files to preload\n if (workStore.reactLoadableManifest && moduleIds) {\n const manifest = workStore.reactLoadableManifest\n for (const key of moduleIds) {\n if (!manifest[key]) continue\n const chunks = manifest[key].files\n allFiles.push(...chunks)\n }\n }\n\n if (allFiles.length === 0) {\n return null\n }\n\n return (\n <>\n {allFiles.map((chunk) => {\n const href = `${workStore.assetPrefix}/_next/${encodeURIPath(chunk)}`\n const isCss = chunk.endsWith('.css')\n // If it's stylesheet we use `precedence` o help hoist with React Float.\n // For stylesheets we actually need to render the CSS because nothing else is going to do it so it needs to be part of the component tree.\n // The `preload` for stylesheet is not optional.\n if (isCss) {\n return (\n \n )\n } else {\n // If it's script we use ReactDOM.preload to preload the resources\n preload(href, {\n as: 'script',\n fetchPriority: 'low',\n })\n return null\n }\n })}\n \n )\n}\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.destroyCookie = exports.setCookie = exports.parseCookies = void 0;\nvar cookie = require(\"cookie\");\nvar setCookieParser = require(\"set-cookie-parser\");\nvar utils_1 = require(\"./utils\");\n/**\n * Parses cookies.\n *\n * @param ctx NextJS page or API context, express context, null or undefined.\n * @param options Options that we pass down to `cookie` library.\n */\nfunction parseCookies(ctx, options) {\n var _a, _b;\n if ((_b = (_a = ctx === null || ctx === void 0 ? void 0 : ctx.req) === null || _a === void 0 ? void 0 : _a.headers) === null || _b === void 0 ? void 0 : _b.cookie) {\n return cookie.parse(ctx.req.headers.cookie, options);\n }\n if (utils_1.isBrowser()) {\n return cookie.parse(document.cookie, options);\n }\n return {};\n}\nexports.parseCookies = parseCookies;\n/**\n * Sets a cookie.\n *\n * @param ctx NextJS page or API context, express context, null or undefined.\n * @param name The name of your cookie.\n * @param value The value of your cookie.\n * @param options Options that we pass down to `cookie` library.\n */\nfunction setCookie(ctx, name, value, options) {\n var _a, _b;\n if (options === void 0) { options = {}; }\n // SSR\n if (((_a = ctx === null || ctx === void 0 ? void 0 : ctx.res) === null || _a === void 0 ? void 0 : _a.getHeader) && ctx.res.setHeader) {\n // Check if response has finished and warn about it.\n if ((_b = ctx === null || ctx === void 0 ? void 0 : ctx.res) === null || _b === void 0 ? void 0 : _b.finished) {\n console.warn(\"Not setting \\\"\" + name + \"\\\" cookie. Response has finished.\");\n console.warn(\"You should set cookie before res.send()\");\n return {};\n }\n /**\n * Load existing cookies from the header and parse them.\n */\n var cookies = ctx.res.getHeader('Set-Cookie') || [];\n if (typeof cookies === 'string')\n cookies = [cookies];\n if (typeof cookies === 'number')\n cookies = [];\n /**\n * Parse cookies but ignore values - we've already encoded\n * them in the previous call.\n */\n var parsedCookies = setCookieParser.parse(cookies, {\n decodeValues: false,\n });\n /**\n * We create the new cookie and make sure that none of\n * the existing cookies match it.\n */\n var newCookie_1 = utils_1.createCookie(name, value, options);\n var cookiesToSet_1 = [];\n parsedCookies.forEach(function (parsedCookie) {\n if (!utils_1.areCookiesEqual(parsedCookie, newCookie_1)) {\n /**\n * We serialize the cookie back to the original format\n * if it isn't the same as the new one.\n */\n var serializedCookie = cookie.serialize(parsedCookie.name, parsedCookie.value, __assign({ \n // we prevent reencoding by default, but you might override it\n encode: function (val) { return val; } }, parsedCookie));\n cookiesToSet_1.push(serializedCookie);\n }\n });\n cookiesToSet_1.push(cookie.serialize(name, value, options));\n // Update the header.\n ctx.res.setHeader('Set-Cookie', cookiesToSet_1);\n }\n // Browser\n if (utils_1.isBrowser()) {\n if (options && options.httpOnly) {\n throw new Error('Can not set a httpOnly cookie in the browser.');\n }\n document.cookie = cookie.serialize(name, value, options);\n }\n return {};\n}\nexports.setCookie = setCookie;\n/**\n * Destroys a cookie with a particular name.\n *\n * @param ctx NextJS page or API context, express context, null or undefined.\n * @param name Cookie name.\n * @param options Options that we pass down to `cookie` library.\n */\nfunction destroyCookie(ctx, name, options) {\n /**\n * We forward the request destroy to setCookie function\n * as it is the same function with modified maxAge value.\n */\n return setCookie(ctx, name, '', __assign(__assign({}, (options || {})), { maxAge: -1 }));\n}\nexports.destroyCookie = destroyCookie;\n/* Utility Exports */\nexports.default = {\n set: setCookie,\n get: parseCookies,\n destroy: destroyCookie,\n};\n//# sourceMappingURL=index.js.map","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.areCookiesEqual = exports.hasSameProperties = exports.createCookie = exports.isBrowser = void 0;\n/**\n * Tells whether we are in a browser or server.\n */\nfunction isBrowser() {\n return typeof window !== 'undefined';\n}\nexports.isBrowser = isBrowser;\n/**\n * Create an instance of the Cookie interface\n */\nfunction createCookie(name, value, options) {\n var sameSite = options.sameSite;\n if (sameSite === true) {\n sameSite = 'strict';\n }\n if (sameSite === undefined || sameSite === false) {\n sameSite = 'lax';\n }\n var cookieToSet = __assign(__assign({}, options), { sameSite: sameSite });\n delete cookieToSet.encode;\n return __assign({ name: name, value: value }, cookieToSet);\n}\nexports.createCookie = createCookie;\n/**\n * Tells whether given objects have the same properties.\n */\nfunction hasSameProperties(a, b) {\n var aProps = Object.getOwnPropertyNames(a);\n var bProps = Object.getOwnPropertyNames(b);\n if (aProps.length !== bProps.length) {\n return false;\n }\n for (var i = 0; i < aProps.length; i++) {\n var propName = aProps[i];\n if (a[propName] !== b[propName]) {\n return false;\n }\n }\n return true;\n}\nexports.hasSameProperties = hasSameProperties;\n/**\n * Compare the cookie and return true if the cookies have equivalent\n * options and the cookies would be overwritten in the browser storage.\n *\n * @param a first Cookie for comparison\n * @param b second Cookie for comparison\n */\nfunction areCookiesEqual(a, b) {\n var sameSiteSame = a.sameSite === b.sameSite;\n if (typeof a.sameSite === 'string' && typeof b.sameSite === 'string') {\n sameSiteSame = a.sameSite.toLowerCase() === b.sameSite.toLowerCase();\n }\n return (hasSameProperties(__assign(__assign({}, a), { sameSite: undefined }), __assign(__assign({}, b), { sameSite: undefined })) && sameSiteSame);\n}\nexports.areCookiesEqual = areCookiesEqual;\n/* Functions */\n//# sourceMappingURL=utils.js.map","\"use strict\";\n\nvar defaultParseOptions = {\n decodeValues: true,\n map: false,\n silent: false,\n};\n\nfunction isNonEmptyString(str) {\n return typeof str === \"string\" && !!str.trim();\n}\n\nfunction parseString(setCookieValue, options) {\n var parts = setCookieValue.split(\";\").filter(isNonEmptyString);\n\n var nameValuePairStr = parts.shift();\n var parsed = parseNameValuePair(nameValuePairStr);\n var name = parsed.name;\n var value = parsed.value;\n\n options = options\n ? Object.assign({}, defaultParseOptions, options)\n : defaultParseOptions;\n\n try {\n value = options.decodeValues ? decodeURIComponent(value) : value; // decode cookie value\n } catch (e) {\n console.error(\n \"set-cookie-parser encountered an error while decoding a cookie with value '\" +\n value +\n \"'. Set options.decodeValues to false to disable this feature.\",\n e\n );\n }\n\n var cookie = {\n name: name,\n value: value,\n };\n\n parts.forEach(function (part) {\n var sides = part.split(\"=\");\n var key = sides.shift().trimLeft().toLowerCase();\n var value = sides.join(\"=\");\n if (key === \"expires\") {\n cookie.expires = new Date(value);\n } else if (key === \"max-age\") {\n cookie.maxAge = parseInt(value, 10);\n } else if (key === \"secure\") {\n cookie.secure = true;\n } else if (key === \"httponly\") {\n cookie.httpOnly = true;\n } else if (key === \"samesite\") {\n cookie.sameSite = value;\n } else if (key === \"partitioned\") {\n cookie.partitioned = true;\n } else {\n cookie[key] = value;\n }\n });\n\n return cookie;\n}\n\nfunction parseNameValuePair(nameValuePairStr) {\n // Parses name-value-pair according to rfc6265bis draft\n\n var name = \"\";\n var value = \"\";\n var nameValueArr = nameValuePairStr.split(\"=\");\n if (nameValueArr.length > 1) {\n name = nameValueArr.shift();\n value = nameValueArr.join(\"=\"); // everything after the first =, joined by a \"=\" if there was more than one part\n } else {\n value = nameValuePairStr;\n }\n\n return { name: name, value: value };\n}\n\nfunction parse(input, options) {\n options = options\n ? Object.assign({}, defaultParseOptions, options)\n : defaultParseOptions;\n\n if (!input) {\n if (!options.map) {\n return [];\n } else {\n return {};\n }\n }\n\n if (input.headers) {\n if (typeof input.headers.getSetCookie === \"function\") {\n // for fetch responses - they combine headers of the same type in the headers array,\n // but getSetCookie returns an uncombined array\n input = input.headers.getSetCookie();\n } else if (input.headers[\"set-cookie\"]) {\n // fast-path for node.js (which automatically normalizes header names to lower-case\n input = input.headers[\"set-cookie\"];\n } else {\n // slow-path for other environments - see #25\n var sch =\n input.headers[\n Object.keys(input.headers).find(function (key) {\n return key.toLowerCase() === \"set-cookie\";\n })\n ];\n // warn if called on a request-like object with a cookie header rather than a set-cookie header - see #34, 36\n if (!sch && input.headers.cookie && !options.silent) {\n console.warn(\n \"Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning.\"\n );\n }\n input = sch;\n }\n }\n if (!Array.isArray(input)) {\n input = [input];\n }\n\n if (!options.map) {\n return input.filter(isNonEmptyString).map(function (str) {\n return parseString(str, options);\n });\n } else {\n var cookies = {};\n return input.filter(isNonEmptyString).reduce(function (cookies, str) {\n var cookie = parseString(str, options);\n cookies[cookie.name] = cookie;\n return cookies;\n }, cookies);\n }\n}\n\n/*\n Set-Cookie header field-values are sometimes comma joined in one string. This splits them without choking on commas\n that are within a single set-cookie field-value, such as in the Expires portion.\n\n This is uncommon, but explicitly allowed - see https://tools.ietf.org/html/rfc2616#section-4.2\n Node.js does this for every header *except* set-cookie - see https://github.com/nodejs/node/blob/d5e363b77ebaf1caf67cd7528224b651c86815c1/lib/_http_incoming.js#L128\n React Native's fetch does this for *every* header, including set-cookie.\n\n Based on: https://github.com/google/j2objc/commit/16820fdbc8f76ca0c33472810ce0cb03d20efe25\n Credits to: https://github.com/tomball for original and https://github.com/chrusart for JavaScript implementation\n*/\nfunction splitCookiesString(cookiesString) {\n if (Array.isArray(cookiesString)) {\n return cookiesString;\n }\n if (typeof cookiesString !== \"string\") {\n return [];\n }\n\n var cookiesStrings = [];\n var pos = 0;\n var start;\n var ch;\n var lastComma;\n var nextStart;\n var cookiesSeparatorFound;\n\n function skipWhitespace() {\n while (pos < cookiesString.length && /\\s/.test(cookiesString.charAt(pos))) {\n pos += 1;\n }\n return pos < cookiesString.length;\n }\n\n function notSpecialChar() {\n ch = cookiesString.charAt(pos);\n\n return ch !== \"=\" && ch !== \";\" && ch !== \",\";\n }\n\n while (pos < cookiesString.length) {\n start = pos;\n cookiesSeparatorFound = false;\n\n while (skipWhitespace()) {\n ch = cookiesString.charAt(pos);\n if (ch === \",\") {\n // ',' is a cookie separator if we have later first '=', not ';' or ','\n lastComma = pos;\n pos += 1;\n\n skipWhitespace();\n nextStart = pos;\n\n while (pos < cookiesString.length && notSpecialChar()) {\n pos += 1;\n }\n\n // currently special character\n if (pos < cookiesString.length && cookiesString.charAt(pos) === \"=\") {\n // we found cookies separator\n cookiesSeparatorFound = true;\n // pos is inside the next cookie, so back up and return it.\n pos = nextStart;\n cookiesStrings.push(cookiesString.substring(start, lastComma));\n start = pos;\n } else {\n // in param ',' or param separator ';',\n // we continue from that comma\n pos = lastComma + 1;\n }\n } else {\n pos += 1;\n }\n }\n\n if (!cookiesSeparatorFound || pos >= cookiesString.length) {\n cookiesStrings.push(cookiesString.substring(start, cookiesString.length));\n }\n }\n\n return cookiesStrings;\n}\n\nmodule.exports = parse;\nmodule.exports.parse = parse;\nmodule.exports.parseString = parseString;\nmodule.exports.splitCookiesString = splitCookiesString;\n"],"names":["dynamic","dynamicOptions","options","mergedOptions","loadableOptions","loader","Loadable","modules","loadableGenerated","getImageProps","imgProps","props","getImgProps","defaultLoader","imgConf","process","key","value","Object","entries","undefined","Image","BailoutToCSR","reason","children","window","BailoutToCSRError","convertModule","mod","default","defaultOptions","Promise","resolve","loading","ssr","opts","Lazy","lazy","then","Loading","LoadableComponent","fallbackElement","isLoading","pastDelay","error","hasSuspenseBoundary","Wrap","Suspense","Fragment","PreloadChunks","moduleIds","fallback","wrapProps","displayName","workStore","workAsyncStorage","getStore","allFiles","reactLoadableManifest","manifest","chunks","files","push","length","map","chunk","href","assetPrefix","encodeURIPath","endsWith","isCss","link","precedence","rel","as","preload","fetchPriority"],"sourceRoot":"","ignoreList":[0,1,2,8,9,10]}