mrsandip commited on
Commit
4b5f2a0
·
verified ·
1 Parent(s): 89edc25

Update (part 3)

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +2 -0
  2. e-commerce/.next/server/chunks/ssr/[root-of-the-server]__1tesa5bbyzv6u._.js.map +1 -0
  3. e-commerce/.next/server/chunks/ssr/[root-of-the-server]__1uyyd8v8upnf3._.js +0 -0
  4. e-commerce/.next/server/chunks/ssr/[root-of-the-server]__1uyyd8v8upnf3._.js.map +0 -0
  5. e-commerce/.next/server/chunks/ssr/[turbopack]_runtime.js +937 -0
  6. e-commerce/.next/server/chunks/ssr/[turbopack]_runtime.js.map +10 -0
  7. e-commerce/.next/server/chunks/ssr/_0lbshynybzfwm._.js +3 -0
  8. e-commerce/.next/server/chunks/ssr/_0lbshynybzfwm._.js.map +1 -0
  9. e-commerce/.next/server/chunks/ssr/_17ysuo3e-5t0j._.js +3 -0
  10. e-commerce/.next/server/chunks/ssr/_17ysuo3e-5t0j._.js.map +1 -0
  11. e-commerce/.next/server/chunks/ssr/_next-internal_server_app_[locale]_page_actions_0paeoq307w67j.js +3 -0
  12. e-commerce/.next/server/chunks/ssr/_next-internal_server_app_[locale]_page_actions_0paeoq307w67j.js.map +1 -0
  13. e-commerce/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0zi5s8-psc_d2.js +3 -0
  14. e-commerce/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0zi5s8-psc_d2.js.map +1 -0
  15. e-commerce/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0pt47yrisjoev.js +3 -0
  16. e-commerce/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0pt47yrisjoev.js.map +1 -0
  17. e-commerce/.next/server/chunks/ssr/_next-internal_server_app_page_actions_0hhsz1jew5ls7.js +3 -0
  18. e-commerce/.next/server/chunks/ssr/_next-internal_server_app_page_actions_0hhsz1jew5ls7.js.map +1 -0
  19. e-commerce/.next/server/chunks/ssr/app_[locale]_catalog_category_[slug]_page_tsx_0939vipbtohsa._.js +3 -0
  20. e-commerce/.next/server/chunks/ssr/app_[locale]_catalog_category_[slug]_page_tsx_0939vipbtohsa._.js.map +1 -0
  21. e-commerce/.next/server/chunks/ssr/app_[locale]_catalog_product_[slug]_page_tsx_05lombu12vunw._.js +3 -0
  22. e-commerce/.next/server/chunks/ssr/app_[locale]_catalog_product_[slug]_page_tsx_05lombu12vunw._.js.map +1 -0
  23. e-commerce/.next/server/chunks/ssr/messages_bn_json_[json]_cjs_03v7tempcl6vx._.js +3 -0
  24. e-commerce/.next/server/chunks/ssr/messages_bn_json_[json]_cjs_03v7tempcl6vx._.js.map +1 -0
  25. e-commerce/.next/server/chunks/ssr/messages_en_json_[json]_cjs_206072-e4clp3._.js +3 -0
  26. e-commerce/.next/server/chunks/ssr/messages_en_json_[json]_cjs_206072-e4clp3._.js.map +1 -0
  27. e-commerce/.next/server/chunks/ssr/node_modules_0dgn3fdparwxc._.js +3 -0
  28. e-commerce/.next/server/chunks/ssr/node_modules_0dgn3fdparwxc._.js.map +1 -0
  29. e-commerce/.next/server/chunks/ssr/node_modules_0gxlxpuufujz9._.js +33 -0
  30. e-commerce/.next/server/chunks/ssr/node_modules_0gxlxpuufujz9._.js.map +1 -0
  31. e-commerce/.next/server/chunks/ssr/node_modules_1tbb716ajz_8c._.js +3 -0
  32. e-commerce/.next/server/chunks/ssr/node_modules_1tbb716ajz_8c._.js.map +1 -0
  33. e-commerce/.next/server/chunks/ssr/node_modules_1u38ibo_vi4cw._.js +0 -0
  34. e-commerce/.next/server/chunks/ssr/node_modules_1u38ibo_vi4cw._.js.map +0 -0
  35. e-commerce/.next/server/chunks/ssr/node_modules_@swc_helpers_cjs__interop_require_default_cjs_1ztp13a5szri_._.js +3 -0
  36. e-commerce/.next/server/chunks/ssr/node_modules_@swc_helpers_cjs__interop_require_default_cjs_1ztp13a5szri_._.js.map +1 -0
  37. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js +6 -0
  38. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js.map +0 -0
  39. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_0z_oheoyvwq5g._.js +5 -0
  40. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_0z_oheoyvwq5g._.js.map +1 -0
  41. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_11nxe3qn_qnjh._.js +0 -0
  42. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_11nxe3qn_qnjh._.js.map +0 -0
  43. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_1c5t_vsn6u8fr._.js +3 -0
  44. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_1c5t_vsn6u8fr._.js.map +1 -0
  45. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_1et9oq9q9-y3v._.js +3 -0
  46. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_1et9oq9q9-y3v._.js.map +1 -0
  47. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_1put4abgz_pcl._.js +3 -0
  48. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_1put4abgz_pcl._.js.map +0 -0
  49. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_client_components_0wpq8j32_ibz4._.js +3 -0
  50. e-commerce/.next/server/chunks/ssr/node_modules_next_dist_client_components_0wpq8j32_ibz4._.js.map +1 -0
.gitattributes CHANGED
@@ -70,3 +70,5 @@ e-commerce/.next/dev/cache/turbopack/v16.4.0-e273d5b2/00000073.sst filter=lfs di
70
  e-commerce/.next/dev/cache/turbopack/v16.4.0-e273d5b2/00000090.sst filter=lfs diff=lfs merge=lfs -text
71
  e-commerce/.next/dev/cache/turbopack/v16.4.0-e273d5b2/00000091.sst filter=lfs diff=lfs merge=lfs -text
72
  e-commerce/.next/dev/cache/turbopack/v16.4.0-e273d5b2/00000092.meta filter=lfs diff=lfs merge=lfs -text
 
 
 
70
  e-commerce/.next/dev/cache/turbopack/v16.4.0-e273d5b2/00000090.sst filter=lfs diff=lfs merge=lfs -text
71
  e-commerce/.next/dev/cache/turbopack/v16.4.0-e273d5b2/00000091.sst filter=lfs diff=lfs merge=lfs -text
72
  e-commerce/.next/dev/cache/turbopack/v16.4.0-e273d5b2/00000092.meta filter=lfs diff=lfs merge=lfs -text
73
+ e-commerce/node_modules/.bin/esbuild filter=lfs diff=lfs merge=lfs -text
74
+ e-commerce/node_modules/@biomejs/cli-linux-x64/biome filter=lfs diff=lfs merge=lfs -text
e-commerce/.next/server/chunks/ssr/[root-of-the-server]__1tesa5bbyzv6u._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../app/favicon.ico.mjs%20%28structured%20image%20object%29","../../../../app/page.tsx","../../../../node_modules/next/src/client/image-component.tsx","../../../../node_modules/next/src/server/route-modules/app-page/vendored/rsc/react.ts","turbopack:///[project]/app/page.module.css [app-rsc] (css module)","../../../../node_modules/next/dist/client/image-component.js/__nextjs-internal-proxy.cjs%20%7B%20server%20%3D%3E%20%22%5Bproject%5D/node_modules/next/dist/client/image-component.js%22%20%7D","../../../../node_modules/next/dist/compiled/bytes/index.js"],"sourcesContent":["import src from \"IMAGE\";\nexport default { src, width: 48, height: 48 }\n","import Image from \"next/image\";\nimport styles from \"./page.module.css\";\n\nexport default function Home() {\n return (\n <div className={styles.page}>\n <main className={styles.main}>\n <Image\n className={styles.logo}\n src=\"/next.svg\"\n alt=\"Next.js logo\"\n width={100}\n height={20}\n priority\n />\n <div className={styles.intro}>\n <h1>\n To get started, edit the{\" \"}\n <code className={styles.code}>page.tsx</code> file.\n </h1>\n <p>\n Looking for a starting point or more instructions? Head over to{\" \"}\n <a\n href=\"https://vercel.com/templates?framework=next.js&utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n Templates\n </a>{\" \"}\n or the{\" \"}\n <a\n href=\"https://nextjs.org/learn?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n Learning\n </a>{\" \"}\n center.\n </p>\n </div>\n <div className={styles.ctas}>\n <a\n className={styles.primary}\n href=\"https://vercel.com/new?utm_source=create-next-app&utm_medium=appdir-template&utm_campaign=create-next-app\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <Image\n className={styles.logo}\n src=\"/vercel.svg\"\n alt=\"Vercel logomark\"\n width={16}\n height={14}\n />\n Deploy Now\n </a>\n <a\n className={styles.secondary}\n href=\"https://nextjs.org/docs?utm_source=create-next-app&utm_medium=appdir-template&utm_campaign=create-next-app\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n Documentation\n </a>\n </div>\n </main>\n </div>\n );\n}\n","'use client'\n\nimport React, {\n useRef,\n useEffect,\n useContext,\n useState,\n forwardRef,\n use,\n useLayoutEffect,\n} from 'react'\nimport ReactDOM from 'react-dom'\nimport Head from '../shared/lib/head'\nimport { getImgProps } from '../shared/lib/get-img-props'\nimport type {\n ImageProps,\n ImgProps,\n OnLoad,\n OnLoadingComplete,\n PlaceholderValue,\n} from '../shared/lib/get-img-props'\nimport type { ImageLoaderProps } from '../shared/lib/image-config'\nimport { RouterContext } from '../shared/lib/router-context.shared-runtime'\nimport { useImageConfig } from './use-image-config'\n\n// This is replaced by webpack alias\nimport defaultLoader from 'next/dist/shared/lib/image-loader'\nimport { useMergedRef } from './use-merged-ref'\n\nif (typeof window === 'undefined') {\n ;(globalThis as any).__NEXT_IMAGE_IMPORTED = true\n}\n\nexport type { ImageLoaderProps }\nexport type ImageLoader = (p: ImageLoaderProps) => string\n\ntype ImgElementWithDataProp = HTMLImageElement & {\n 'data-loaded-src'?: string | undefined\n}\n\ntype ImageElementProps = ImgProps & {\n unoptimized: boolean\n placeholder: PlaceholderValue\n onLoadRef: React.MutableRefObject<OnLoad | undefined>\n onLoadingCompleteRef: React.MutableRefObject<OnLoadingComplete | undefined>\n setBlurComplete: (b: boolean) => void\n setShowAltText: (b: boolean) => void\n sizesInput: string | undefined\n}\n\n// See https://stackoverflow.com/q/39777833/266535 for why we use this ref\n// handler instead of the img's onLoad attribute.\nfunction handleLoading(\n img: ImgElementWithDataProp,\n placeholder: PlaceholderValue,\n onLoadRef: React.MutableRefObject<OnLoad | undefined>,\n onLoadingCompleteRef: React.MutableRefObject<OnLoadingComplete | undefined>,\n setBlurComplete: (b: boolean) => void,\n unoptimized: boolean,\n sizesInput: string | undefined\n) {\n const src = img?.src\n if (!img || img['data-loaded-src'] === src) {\n return\n }\n img['data-loaded-src'] = src\n const p = 'decode' in img ? img.decode() : Promise.resolve()\n p.catch(() => {}).then(() => {\n if (!img.parentElement || !img.isConnected) {\n // Exit early in case of race condition:\n // - onload() is called\n // - decode() is called but incomplete\n // - unmount is called\n // - decode() completes\n return\n }\n if (placeholder !== 'empty') {\n setBlurComplete(true)\n }\n if (onLoadRef?.current) {\n // Since we don't have the SyntheticEvent here,\n // we must create one with the same shape.\n // See https://reactjs.org/docs/events.html\n const event = new Event('load')\n Object.defineProperty(event, 'target', { writable: false, value: img })\n let prevented = false\n let stopped = false\n onLoadRef.current({\n ...event,\n nativeEvent: event,\n currentTarget: img,\n target: img,\n isDefaultPrevented: () => prevented,\n isPropagationStopped: () => stopped,\n persist: () => {},\n preventDefault: () => {\n prevented = true\n event.preventDefault()\n },\n stopPropagation: () => {\n stopped = true\n event.stopPropagation()\n },\n })\n }\n if (onLoadingCompleteRef?.current) {\n onLoadingCompleteRef.current(img)\n }\n if (process.env.NODE_ENV !== 'production') {\n const { warnOnce } =\n require('../shared/lib/utils/warn-once') as typeof import('../shared/lib/utils/warn-once')\n const origSrc = new URL(src, 'http://n').searchParams.get('url') || src\n if (img.getAttribute('data-nimg') === 'fill') {\n if (!unoptimized && (!sizesInput || sizesInput === '100vw')) {\n let widthViewportRatio =\n img.getBoundingClientRect().width / window.innerWidth\n if (widthViewportRatio < 0.6) {\n if (sizesInput === '100vw') {\n warnOnce(\n `Image with src \"${origSrc}\" has \"fill\" prop and \"sizes\" prop of \"100vw\", but image is not rendered at full viewport width. Please adjust \"sizes\" to improve page performance. Read more: https://nextjs.org/docs/api-reference/next/image#sizes`\n )\n } else {\n warnOnce(\n `Image with src \"${origSrc}\" has \"fill\" but is missing \"sizes\" prop. Please add it to improve page performance. Read more: https://nextjs.org/docs/api-reference/next/image#sizes`\n )\n }\n }\n }\n if (img.parentElement) {\n const { position } = window.getComputedStyle(img.parentElement)\n const valid = ['absolute', 'fixed', 'relative']\n if (!valid.includes(position)) {\n warnOnce(\n `Image with src \"${origSrc}\" has \"fill\" and parent element with invalid \"position\". Provided \"${position}\" should be one of ${valid\n .map(String)\n .join(',')}.`\n )\n }\n }\n if (img.height === 0) {\n warnOnce(\n `Image with src \"${origSrc}\" has \"fill\" and a height value of 0. This is likely because the parent element of the image has not been styled to have a set height.`\n )\n }\n }\n\n const heightModified =\n img.height.toString() !== img.getAttribute('height')\n const widthModified = img.width.toString() !== img.getAttribute('width')\n if (\n (heightModified && !widthModified) ||\n (!heightModified && widthModified)\n ) {\n warnOnce(\n `Image with src \"${origSrc}\" has either width or height modified, but not the other. If you use CSS to change the size of your image, also include the styles 'width: \"auto\"' or 'height: \"auto\"' to maintain the aspect ratio.`\n )\n }\n }\n })\n}\n\nfunction getDynamicProps(\n fetchPriority?: string\n): Record<string, string | undefined> {\n if (Boolean(use)) {\n // In React 19.0.0 or newer, we must use camelCase\n // prop to avoid \"Warning: Invalid DOM property\".\n // See https://github.com/facebook/react/pull/25927\n return { fetchPriority }\n }\n // In React 18.2.0 or older, we must use lowercase prop\n // to avoid \"Warning: Invalid DOM property\".\n return { fetchpriority: fetchPriority }\n}\n\n/**\n * A version of useLayoutEffect that doesn't warn during SSR.\n * TODO: Just useLayoutEffect once support for React 18 is dropped.\n * Do not rename this to \"isomorphic layout effect\". There is no such thing as\n * an isomorphic Layout Effect since there is no Layout on the server\n */\nconst useNonWarningLayoutEffect =\n typeof window === 'undefined' ? useEffect : useLayoutEffect\n\nconst ImageElement = forwardRef<HTMLImageElement | null, ImageElementProps>(\n (\n {\n src,\n srcSet,\n sizes,\n height,\n width,\n decoding,\n className,\n style,\n fetchPriority,\n placeholder,\n loading,\n unoptimized,\n fill,\n onLoadRef,\n onLoadingCompleteRef,\n setBlurComplete,\n setShowAltText,\n sizesInput,\n onLoad,\n onError,\n ...rest\n },\n forwardedRef\n ) => {\n const didInsertRef = useRef(false)\n const insertedImgRef = useRef<HTMLImageElement>(null)\n\n useNonWarningLayoutEffect(() => {\n const { current: didInsert } = didInsertRef\n const { current: img } = insertedImgRef\n\n if (!didInsert && img !== null) {\n // Replay events from during hydration that React doesn't replay.\n if (onError) {\n // If the image has an error before react hydrates, then the error is lost.\n // The workaround is to wait until the image is mounted which is after hydration,\n // then we set the src again to trigger the error handler (if there was an error).\n // This doesn't just trigger the error handler but retries the whole request.\n // TODO: Consider dispatching a synthetic event instead.\n // eslint-disable-next-line no-self-assign\n img.src = img.src\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (!src) {\n console.error(`Image is missing required \"src\" property:`, img)\n }\n if (img.getAttribute('alt') === null) {\n console.error(\n `Image is missing required \"alt\" property. Please add Alternative Text to describe the image for screen readers and search engines.`\n )\n }\n }\n if (img.complete) {\n handleLoading(\n img,\n placeholder,\n onLoadRef,\n onLoadingCompleteRef,\n setBlurComplete,\n unoptimized,\n sizesInput\n )\n }\n didInsertRef.current = true\n }\n }, [\n src,\n placeholder,\n onLoadRef,\n onLoadingCompleteRef,\n onError,\n unoptimized,\n sizesInput,\n ])\n\n const ref = useMergedRef(forwardedRef, insertedImgRef)\n\n return (\n // If you move this element creation, also move the Layout Effect above\n // reading from the ref. Otherwise we might run the Layout Effect when\n // the current value isn't set to the HTMLImageElement instance.\n <img\n {...rest}\n {...getDynamicProps(fetchPriority)}\n // It's intended to keep `loading` before `src` because React updates\n // props in order which causes Safari/Firefox to not lazy load properly.\n // See https://github.com/facebook/react/issues/25883\n loading={loading}\n width={width}\n height={height}\n decoding={decoding}\n data-nimg={fill ? 'fill' : '1'}\n className={className}\n style={style}\n // It's intended to keep `src` the last attribute because React updates\n // attributes in order. If we keep `src` the first one, Safari will\n // immediately start to fetch `src`, before `sizes` and `srcSet` are even\n // updated by React. That causes multiple unnecessary requests if `srcSet`\n // and `sizes` are defined.\n // This bug cannot be reproduced in Chrome or Firefox.\n sizes={sizes}\n srcSet={srcSet}\n src={src}\n ref={ref}\n onLoad={(event) => {\n const currentImage = event.currentTarget\n handleLoading(\n currentImage,\n placeholder,\n onLoadRef,\n onLoadingCompleteRef,\n setBlurComplete,\n unoptimized,\n sizesInput\n )\n }}\n onError={(event) => {\n // if the real image fails to load, this will ensure \"alt\" is visible\n setShowAltText(true)\n if (placeholder !== 'empty') {\n // If the real image fails to load, this will still remove the placeholder.\n setBlurComplete(true)\n }\n if (onError) {\n onError(event)\n }\n }}\n />\n )\n }\n)\n\nfunction ImagePreload({\n isAppRouter,\n imgAttributes,\n}: {\n isAppRouter: boolean\n imgAttributes: ImgProps\n}) {\n const opts: ReactDOM.PreloadOptions = {\n as: 'image',\n imageSrcSet: imgAttributes.srcSet,\n imageSizes: imgAttributes.sizes,\n crossOrigin: imgAttributes.crossOrigin,\n referrerPolicy: imgAttributes.referrerPolicy,\n ...getDynamicProps(imgAttributes.fetchPriority),\n }\n\n if (isAppRouter && ReactDOM.preload) {\n ReactDOM.preload(imgAttributes.src, opts)\n return null\n }\n\n return (\n <Head>\n <link\n key={\n '__nimg-' +\n imgAttributes.src +\n imgAttributes.srcSet +\n imgAttributes.sizes\n }\n rel=\"preload\"\n // Note how we omit the `href` attribute, as it would only be relevant\n // for browsers that do not support `imagesrcset`, and in those cases\n // it would cause the incorrect image to be preloaded.\n //\n // https://html.spec.whatwg.org/multipage/semantics.html#attr-link-imagesrcset\n href={imgAttributes.srcSet ? undefined : imgAttributes.src}\n {...opts}\n />\n </Head>\n )\n}\n\n/**\n * The `Image` component is used to optimize images.\n *\n * Read more: [Next.js docs: `Image`](https://nextjs.org/docs/app/api-reference/components/image)\n */\nexport const Image = forwardRef<HTMLImageElement | null, ImageProps>(\n (props, forwardedRef) => {\n const pagesRouter = useContext(RouterContext)\n // We're in the app directory if there is no pages router.\n const isAppRouter = !pagesRouter\n\n const config = useImageConfig()\n\n const { onLoad, onLoadingComplete } = props\n const onLoadRef = useRef(onLoad)\n\n useEffect(() => {\n onLoadRef.current = onLoad\n }, [onLoad])\n\n const onLoadingCompleteRef = useRef(onLoadingComplete)\n\n useEffect(() => {\n onLoadingCompleteRef.current = onLoadingComplete\n }, [onLoadingComplete])\n\n const [blurComplete, setBlurComplete] = useState(false)\n const [showAltText, setShowAltText] = useState(false)\n const { props: imgAttributes, meta: imgMeta } = getImgProps(props, {\n defaultLoader,\n imgConf: config,\n blurComplete,\n showAltText,\n })\n\n return (\n <>\n {\n <ImageElement\n {...imgAttributes}\n unoptimized={imgMeta.unoptimized}\n placeholder={imgMeta.placeholder}\n fill={imgMeta.fill}\n onLoadRef={onLoadRef}\n onLoadingCompleteRef={onLoadingCompleteRef}\n setBlurComplete={setBlurComplete}\n setShowAltText={setShowAltText}\n sizesInput={props.sizes}\n ref={forwardedRef}\n />\n }\n {imgMeta.preload ? (\n <ImagePreload\n isAppRouter={isAppRouter}\n imgAttributes={imgAttributes}\n />\n ) : null}\n </>\n )\n }\n)\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-rsc']!.React\n","__turbopack_context__.v({\n \"code\": \"E0kJGG_code\",\n \"ctas\": \"E0kJGG_ctas\",\n \"intro\": \"E0kJGG_intro\",\n \"logo\": \"E0kJGG_logo\",\n \"main\": \"E0kJGG_main\",\n \"page\": \"E0kJGG_page\",\n \"primary\": \"E0kJGG_primary\",\n \"secondary\": \"E0kJGG_secondary\",\n});\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nconst { createClientModuleProxy } = require(\"react-server-dom-turbopack/server\");\n\n__turbopack_context__.n(createClientModuleProxy(\"[project]/node_modules/next/dist/client/image-component.js\"));\n","(()=>{\"use strict\";var e={86:e=>{\n/*!\n * bytes\n * Copyright(c) 2012-2014 TJ Holowaychuk\n * Copyright(c) 2015 Jed Watson\n * MIT Licensed\n */\ne.exports=bytes;e.exports.format=format;e.exports.parse=parse;var r=/\\B(?=(\\d{3})+(?!\\d))/g;var a=/(?:\\.0*|(\\.[^0]+)0+)$/;var t={b:1,kb:1<<10,mb:1<<20,gb:1<<30,tb:Math.pow(1024,4),pb:Math.pow(1024,5)};var i=/^((-|\\+)?(\\d+(?:\\.\\d+)?)) *(kb|mb|gb|tb|pb)$/i;function bytes(e,r){if(typeof e===\"string\"){return parse(e)}if(typeof e===\"number\"){return format(e,r)}return null}function format(e,i){if(!Number.isFinite(e)){return null}var n=Math.abs(e);var o=i&&i.thousandsSeparator||\"\";var s=i&&i.unitSeparator||\"\";var f=i&&i.decimalPlaces!==undefined?i.decimalPlaces:2;var u=Boolean(i&&i.fixedDecimals);var p=i&&i.unit||\"\";if(!p||!t[p.toLowerCase()]){if(n>=t.pb){p=\"PB\"}else if(n>=t.tb){p=\"TB\"}else if(n>=t.gb){p=\"GB\"}else if(n>=t.mb){p=\"MB\"}else if(n>=t.kb){p=\"KB\"}else{p=\"B\"}}var b=e/t[p.toLowerCase()];var l=b.toFixed(f);if(!u){l=l.replace(a,\"$1\")}if(o){l=l.split(\".\").map((function(e,a){return a===0?e.replace(r,o):e})).join(\".\")}return l+s+p}function parse(e){if(typeof e===\"number\"&&!isNaN(e)){return e}if(typeof e!==\"string\"){return null}var r=i.exec(e);var a;var n=\"b\";if(!r){a=parseInt(e,10);n=\"b\"}else{a=parseFloat(r[1]);n=r[4].toLowerCase()}return Math.floor(t[n]*a)}}};var r={};function __nccwpck_require__(a){var t=r[a];if(t!==undefined){return t.exports}var i=r[a]={exports:{}};var n=true;try{e[a](i,i.exports,__nccwpck_require__);n=false}finally{if(n)delete r[a]}return i.exports}if(typeof __nccwpck_require__!==\"undefined\")__nccwpck_require__.ab=__dirname+\"/\";var a=__nccwpck_require__(86);module.exports=a})();"],"names":["src","width","height","Image","window","globalThis","__NEXT_IMAGE_IMPORTED","handleLoading","img","placeholder","onLoadRef","onLoadingCompleteRef","setBlurComplete","unoptimized","sizesInput","p","decode","Promise","resolve","catch","then","parentElement","isConnected","current","event","Event","Object","defineProperty","writable","value","prevented","stopped","nativeEvent","currentTarget","target","isDefaultPrevented","isPropagationStopped","persist","preventDefault","stopPropagation","process","env","NODE_ENV","warnOnce","require","origSrc","URL","searchParams","get","getAttribute","widthViewportRatio","getBoundingClientRect","innerWidth","position","getComputedStyle","valid","includes","map","String","join","heightModified","toString","widthModified","getDynamicProps","fetchPriority","Boolean","use","fetchpriority","useNonWarningLayoutEffect","useEffect","useLayoutEffect","ImageElement","forwardRef","srcSet","sizes","decoding","className","style","loading","fill","setShowAltText","onLoad","onError","rest","forwardedRef","didInsertRef","useRef","insertedImgRef","didInsert","console","error","complete","ref","useMergedRef","data-nimg","currentImage","ImagePreload","isAppRouter","imgAttributes","opts","as","imageSrcSet","imageSizes","crossOrigin","referrerPolicy","ReactDOM","preload","Head","link","rel","href","undefined","props","pagesRouter","useContext","RouterContext","config","useImageConfig","onLoadingComplete","blurComplete","useState","showAltText","meta","imgMeta","getImgProps","defaultLoader","imgConf","module","exports","vendored","React","createClientModuleProxy","__turbopack_context__","n","e","bytes","format","parse","r","a","t","b","kb","mb","gb","tb","Math","pow","pb","i","Number","isFinite","abs","o","thousandsSeparator","s","unitSeparator","f","decimalPlaces","u","fixedDecimals","unit","toLowerCase","l","toFixed","replace","split","isNaN","exec","parseInt","parseFloat","floor","__nccwpck_require__","ab"],"mappings":"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","ignoreList":[3,5,6]}
e-commerce/.next/server/chunks/ssr/[root-of-the-server]__1uyyd8v8upnf3._.js ADDED
The diff for this file is too large to render. See raw diff
 
e-commerce/.next/server/chunks/ssr/[root-of-the-server]__1uyyd8v8upnf3._.js.map ADDED
The diff for this file is too large to render. See raw diff
 
e-commerce/.next/server/chunks/ssr/[turbopack]_runtime.js ADDED
@@ -0,0 +1,937 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ var RUNTIME_PUBLIC_PATH = "server/chunks/ssr/[turbopack]_runtime.js";
2
+ var RELATIVE_ROOT_PATH = "..";
3
+ var ASSET_PREFIX = "/_next/";
4
+ // Apply forwarded globals from workerData if running in a worker thread
5
+ if (typeof require !== 'undefined') {
6
+ try {
7
+ var { workerData } = require('worker_threads');
8
+ if (workerData?.__turbopack_globals__) {
9
+ Object.assign(globalThis, workerData.__turbopack_globals__);
10
+ // Remove internal data so it's not visible to user code
11
+ delete workerData.__turbopack_globals__;
12
+ }
13
+ } catch (_) {
14
+ // Not in a worker thread context, ignore
15
+ }
16
+ }
17
+ /**
18
+ * This file contains runtime types and functions that are shared between all
19
+ * TurboPack ECMAScript runtimes.
20
+ *
21
+ * It will be prepended to the runtime code of each runtime.
22
+ */ /* eslint-disable @typescript-eslint/no-unused-vars */ /// <reference path="./runtime-types.d.ts" />
23
+ /// <reference path="./async-module.ts" />
24
+ /**
25
+ * Describes why a module was instantiated.
26
+ * Shared between browser and Node.js runtimes.
27
+ */ var SourceType = /*#__PURE__*/ function(SourceType) {
28
+ /**
29
+ * The module was instantiated because it was included in an evaluated chunk's
30
+ * runtime.
31
+ * SourceData is a ChunkPath.
32
+ */ SourceType[SourceType["Runtime"] = 0] = "Runtime";
33
+ /**
34
+ * The module was instantiated because a parent module imported it.
35
+ * SourceData is a ModuleId.
36
+ */ SourceType[SourceType["Parent"] = 1] = "Parent";
37
+ /**
38
+ * The module was instantiated because it was included in a chunk's hot module
39
+ * update.
40
+ * SourceData is an array of ModuleIds or undefined.
41
+ */ SourceType[SourceType["Update"] = 2] = "Update";
42
+ return SourceType;
43
+ }(SourceType || {});
44
+ /**
45
+ * Flag indicating which module object type to create when a module is merged. Set to `true`
46
+ * by each runtime that uses ModuleWithDirection (browser dev-base.ts, nodejs dev-base.ts,
47
+ * nodejs build-base.ts). Browser production (build-base.ts) leaves it as `false` since it
48
+ * uses plain Module objects.
49
+ */ let createModuleWithDirectionFlag = false;
50
+ const REEXPORTED_OBJECTS = new WeakMap();
51
+ /**
52
+ * Constructs the `__turbopack_context__` object for a module.
53
+ */ function Context(module, exports) {
54
+ this.m = module;
55
+ // We need to store this here instead of accessing it from the module object to:
56
+ // 1. Make it available to factories directly, since we rewrite `this` to
57
+ // `__turbopack_context__.e` in CJS modules.
58
+ // 2. Support async modules which rewrite `module.exports` to a promise, so we
59
+ // can still access the original exports object from functions like
60
+ // `esmExport`
61
+ // Ideally we could find a new approach for async modules and drop this property altogether.
62
+ this.e = exports;
63
+ }
64
+ const contextPrototype = Context.prototype;
65
+ const hasOwnProperty = Object.prototype.hasOwnProperty;
66
+ const toStringTag = typeof Symbol !== 'undefined' && Symbol.toStringTag;
67
+ function defineProp(obj, name, options) {
68
+ if (!hasOwnProperty.call(obj, name)) Object.defineProperty(obj, name, options);
69
+ }
70
+ function getOverwrittenModule(moduleCache, id) {
71
+ let module = moduleCache.get(id);
72
+ if (module === undefined) {
73
+ if (createModuleWithDirectionFlag) {
74
+ // set in development modes for hmr support
75
+ module = createModuleWithDirection(id);
76
+ } else {
77
+ module = createModuleObject(id);
78
+ }
79
+ moduleCache.set(id, module);
80
+ }
81
+ return module;
82
+ }
83
+ /**
84
+ * Creates the module object. Only done here to ensure all module objects have the same shape.
85
+ */ function createModuleObject(id) {
86
+ return {
87
+ exports: {},
88
+ error: undefined,
89
+ id,
90
+ namespaceObject: undefined
91
+ };
92
+ }
93
+ function createModuleWithDirection(id) {
94
+ return {
95
+ exports: {},
96
+ error: undefined,
97
+ id,
98
+ namespaceObject: undefined,
99
+ parents: [],
100
+ children: []
101
+ };
102
+ }
103
+ const BindingTag_Value = 0;
104
+ /**
105
+ * Terminates a module's group of entries in an {@link EsmReexports} list.
106
+ */ const REEXPORT_GROUP_END = 0;
107
+ /**
108
+ * Adds the getters to the exports object.
109
+ */ function esm(exports, bindings, dynamic) {
110
+ defineProp(exports, '__esModule', {
111
+ value: true
112
+ });
113
+ if (toStringTag) defineProp(exports, toStringTag, {
114
+ value: 'Module'
115
+ });
116
+ let i = 0;
117
+ while(i < bindings.length){
118
+ const propName = bindings[i++];
119
+ const tagOrFunction = bindings[i++];
120
+ if (typeof tagOrFunction === 'number') {
121
+ if (tagOrFunction === BindingTag_Value) {
122
+ defineProp(exports, propName, {
123
+ value: bindings[i++],
124
+ enumerable: true,
125
+ writable: false
126
+ });
127
+ } else {
128
+ throw new Error(`unexpected tag: ${tagOrFunction}`);
129
+ }
130
+ } else {
131
+ const getterFn = tagOrFunction;
132
+ if (typeof bindings[i] === 'function') {
133
+ const setterFn = bindings[i++];
134
+ defineProp(exports, propName, {
135
+ get: getterFn,
136
+ set: setterFn,
137
+ enumerable: true
138
+ });
139
+ } else {
140
+ defineProp(exports, propName, {
141
+ get: getterFn,
142
+ enumerable: true
143
+ });
144
+ }
145
+ }
146
+ }
147
+ // The properties defined above are already non-configurable and
148
+ // non-writable, so the namespace's existing exports are effectively
149
+ // immutable. Sealing additionally makes the object non-extensible, matching
150
+ // real ESM-namespace semantics. Modules with dynamic re-exports
151
+ // (`export *` from a CommonJS module) must stay extensible so the dynamic
152
+ // export proxy can surface keys discovered at runtime, so skip the seal for
153
+ // them.
154
+ if (!dynamic) Object.seal(exports);
155
+ }
156
+ /**
157
+ * Makes the module an ESM with exports
158
+ */ function esmExport(bindings, id, dynamic) {
159
+ let module;
160
+ let exports;
161
+ if (id != null) {
162
+ module = getOverwrittenModule(this.c, id);
163
+ exports = module.exports;
164
+ } else {
165
+ module = this.m;
166
+ exports = this.e;
167
+ }
168
+ module.namespaceObject = exports;
169
+ esm(exports, bindings, dynamic);
170
+ }
171
+ contextPrototype.s = esmExport;
172
+ /**
173
+ * Registers re-exports that all forward to properties of other modules.
174
+ *
175
+ * This is a compact spelling of the pattern
176
+ *
177
+ * ```js
178
+ * var ns = context.i(moduleId)
179
+ * context.s([exportName, () => ns[importedName], ...])
180
+ * ```
181
+ *
182
+ * The list is a flat sequence of groups. Each group starts with the source the exports come from,
183
+ * followed by that group's entries, and is terminated by the `0` sentinel (or the end of the list).
184
+ *
185
+ * The group head is either a **module id**, which is instantiated here:
186
+ *
187
+ * ```js
188
+ * context.S([
189
+ * 76061, 'default', 'f', 'named', 'A', 0,
190
+ * 29842, 'otherModule', 'f',
191
+ * ])
192
+ * ```
193
+ *
194
+ * or the **namespace value** of a module that has already been imported, which is used directly:
195
+ *
196
+ * ```js
197
+ * var ns1 = context.i(76061)
198
+ * context.S([ns1, 'default', 'f', 'named', 'A'])
199
+ * ```
200
+ *
201
+ * The producer picks the namespace form when it has generated the import anyway -- because some
202
+ * later import must not be reordered past it -- so nothing is instantiated twice. The two are told
203
+ * apart by type: a module id is always a string or number. A CommonJS function export produces a
204
+ * callable namespace value, so namespace heads can be functions as well as objects.
205
+ *
206
+ * Entries are `exportName, importedName` pairs, except when a group holds exactly one string. That
207
+ * string is then a comma-joined list of the same pairs, which saves the repeated quoting:
208
+ *
209
+ * ```js
210
+ * context.S([
211
+ * 76061, 'default,f,named,A', 0,
212
+ * 29842, 'otherModule,f',
213
+ * ])
214
+ * ```
215
+ *
216
+ * The producer picks that spelling independently for each group whose names contain no commas,
217
+ * since that group's names are recovered by splitting on them.
218
+ *
219
+ * Groups whose head is a module id are instantiated in list order, at the point where the call
220
+ * appears, so the producer must not merge such a group across an import of another module. The
221
+ * destination reuses a source data value or getter descriptor when one exists, falling back to a
222
+ * wrapper getter for dynamic/proxy/inherited properties.
223
+ *
224
+ * `id` names the module the exports belong to when this module was merged into a scope-hoisting
225
+ * group, exactly as it does for {@link EsmExport}.
226
+ *
227
+ * Only the source descriptor's payload (value or getter) is reused. {@link esm} still defines a
228
+ * fresh enumerable, non-configurable destination property, and no source setter is ever forwarded.
229
+ */ function esmReexport(list, id) {
230
+ const bindings = [];
231
+ let i = 0;
232
+ while(i < list.length){
233
+ const head = list[i++];
234
+ const start = i;
235
+ while(i < list.length && list[i] !== REEXPORT_GROUP_END)i++;
236
+ const end = i;
237
+ // Skip the sentinel, if this group was terminated by one rather than by the end of the list.
238
+ i++;
239
+ // Module ids are always strings or numbers. Other values are already-imported namespaces;
240
+ // notably, interop with a CommonJS function export produces a callable namespace function.
241
+ // `esmImport` may return a promise for an async module, but re-exports of async modules keep
242
+ // going through `context.s`, so the producer never routes them here and this stays synchronous.
243
+ const namespace = typeof head === 'string' || typeof head === 'number' ? esmImport.call(this, head) : head;
244
+ if (end - start === 1) {
245
+ const pairs = list[start].split(',');
246
+ for(let j = 0; j < pairs.length; j += 2){
247
+ appendReexportBinding(bindings, pairs[j], namespace, pairs[j + 1]);
248
+ }
249
+ } else {
250
+ for(let j = start; j < end; j += 2){
251
+ appendReexportBinding(bindings, list[j], namespace, list[j + 1]);
252
+ }
253
+ }
254
+ }
255
+ esmExport.call(this, bindings, id);
256
+ }
257
+ contextPrototype.S = esmReexport;
258
+ function appendReexportBinding(bindings, exportedName, namespace, importedName) {
259
+ const descriptor = Reflect.getOwnPropertyDescriptor(namespace, importedName);
260
+ if (descriptor) {
261
+ if ('value' in descriptor) {
262
+ // Code generation only routes immutable imported bindings through this helper, so a data
263
+ // descriptor is a constant export and can be captured once.
264
+ bindings.push(exportedName, BindingTag_Value, descriptor.value);
265
+ return;
266
+ }
267
+ if (descriptor.get) {
268
+ // Accessors remain live by reusing the source getter. `esmReexport` is only called by
269
+ // generated code: every group head is either produced by
270
+ // `this.i` or is the namespace variable from a generated `this.i` call. Every getter on such
271
+ // a namespace is receiver-independent: ESM bindings are compiler-generated arrow functions,
272
+ // and the CommonJS/dynamic-namespace paths create arrows in `createGetter` and
273
+ // `getOwnPropertyDescriptor`. The destination can therefore reuse the exact function instead
274
+ // of allocating another wrapper getter.
275
+ bindings.push(exportedName, descriptor.get);
276
+ return;
277
+ }
278
+ }
279
+ // Dynamic/proxy/inherited CommonJS edge cases may not expose a usable own descriptor.
280
+ bindings.push(exportedName, ()=>namespace[importedName]);
281
+ }
282
+ function ensureDynamicExports(module, exports) {
283
+ let reexportedObjects = REEXPORTED_OBJECTS.get(module);
284
+ if (!reexportedObjects) {
285
+ REEXPORTED_OBJECTS.set(module, reexportedObjects = []);
286
+ // Returns the re-exported object that provides `prop` as an own property,
287
+ // or `undefined` if none does. The traps share this logic so they always
288
+ // agree on which keys are synthesized from `reexportedObjects`. `default`
289
+ // is never re-exported by `export *`, so it is never synthesized.
290
+ const reexportOwning = (prop)=>{
291
+ if (prop !== 'default') {
292
+ for (const obj of reexportedObjects){
293
+ if (hasOwnProperty.call(obj, prop)) return obj;
294
+ }
295
+ }
296
+ return undefined;
297
+ };
298
+ // Modules with dynamic re-exports are not sealed by `esm()`, so the
299
+ // target beneath the namespace stays extensible. That is what lets the
300
+ // `ownKeys` and `getOwnPropertyDescriptor` traps legally report keys that
301
+ // exist on `reexportedObjects` but not on the target itself.
302
+ module.exports = module.namespaceObject = new Proxy(exports, {
303
+ get (target, prop) {
304
+ if (hasOwnProperty.call(target, prop) || prop === 'default' || prop === '__esModule') {
305
+ return Reflect.get(target, prop);
306
+ }
307
+ const obj = reexportOwning(prop);
308
+ return obj && Reflect.get(obj, prop);
309
+ },
310
+ // The namespace is read-only, like a real esm namespace object. The
311
+ // re-exported modules can still mutate their own exports (exposed live
312
+ // via `get`), but mutating the namespace itself is rejected. Refusing
313
+ // here, rather than forwarding to the extensible target, also prevents an
314
+ // assignment/definition from shadowing a dynamic re-export. It also
315
+ // prevents delete from removing a static export.
316
+ set () {
317
+ return false;
318
+ },
319
+ defineProperty () {
320
+ return false;
321
+ },
322
+ deleteProperty () {
323
+ return false;
324
+ },
325
+ // The `has` trap ensures that `'exportName' in starImports` will reflect
326
+ // the truth of whether a key is exported.
327
+ has (target, prop) {
328
+ if (Reflect.has(target, prop)) return true;
329
+ if (prop === 'default' || prop === '__esModule') return false;
330
+ return reexportOwning(prop) !== undefined;
331
+ },
332
+ // ownKeys and getOwnPropertyDescriptor together make the keys enumerable.
333
+ // If a value is returned from `ownKeys` but its property descriptor is
334
+ // not enumerable, it will not be visible to iterator methods.
335
+ // Collectively, they allow code like the following:
336
+ //
337
+ // ```
338
+ // // module.js re-exports dynamic CJS exports
339
+ // export * from './legacyModule.cjs'
340
+ //
341
+ // // from another JS file, reference the re-exported dynamic values
342
+ // import * as Namespace from './module.js'
343
+ // Object.keys(Namespace)
344
+ // ```
345
+ ownKeys (target) {
346
+ const keys = Reflect.ownKeys(target);
347
+ for (const obj of reexportedObjects){
348
+ for (const key of Reflect.ownKeys(obj)){
349
+ if (key !== 'default' && !keys.includes(key)) keys.push(key);
350
+ }
351
+ }
352
+ return keys;
353
+ },
354
+ getOwnPropertyDescriptor (target, prop) {
355
+ const own = Reflect.getOwnPropertyDescriptor(target, prop);
356
+ if (own || prop === 'default' || prop === '__esModule') return own;
357
+ const obj = reexportOwning(prop);
358
+ if (obj) {
359
+ // Synthetic keys don't exist on the target, so they MUST be
360
+ // reported as configurable. However the set/delete traps above will
361
+ // prevent them from actually being changed
362
+ return {
363
+ enumerable: true,
364
+ configurable: true,
365
+ get: ()=>Reflect.get(obj, prop)
366
+ };
367
+ }
368
+ return undefined;
369
+ }
370
+ });
371
+ }
372
+ return reexportedObjects;
373
+ }
374
+ /**
375
+ * Dynamically exports properties from an object
376
+ */ function dynamicExport(object, id) {
377
+ let module;
378
+ let exports;
379
+ if (id != null) {
380
+ module = getOverwrittenModule(this.c, id);
381
+ exports = module.exports;
382
+ } else {
383
+ module = this.m;
384
+ exports = this.e;
385
+ }
386
+ const reexportedObjects = ensureDynamicExports(module, exports);
387
+ if (typeof object === 'object' && object !== null) {
388
+ reexportedObjects.push(object);
389
+ }
390
+ }
391
+ contextPrototype.j = dynamicExport;
392
+ function exportValue(value, id) {
393
+ let module;
394
+ if (id != null) {
395
+ module = getOverwrittenModule(this.c, id);
396
+ } else {
397
+ module = this.m;
398
+ }
399
+ module.exports = value;
400
+ }
401
+ contextPrototype.v = exportValue;
402
+ function exportNamespace(namespace, id) {
403
+ let module;
404
+ if (id != null) {
405
+ module = getOverwrittenModule(this.c, id);
406
+ } else {
407
+ module = this.m;
408
+ }
409
+ module.exports = module.namespaceObject = namespace;
410
+ }
411
+ contextPrototype.n = exportNamespace;
412
+ function createGetter(obj, key) {
413
+ return ()=>obj[key];
414
+ }
415
+ /**
416
+ * @returns prototype of the object
417
+ */ const getProto = Object.getPrototypeOf ? (obj)=>Object.getPrototypeOf(obj) : (obj)=>obj.__proto__;
418
+ /** Prototypes that are not expanded for exports */ const LEAF_PROTOTYPES = [
419
+ null,
420
+ getProto({}),
421
+ getProto([]),
422
+ getProto(getProto)
423
+ ];
424
+ /**
425
+ * @param raw
426
+ * @param ns
427
+ * @param allowExportDefault
428
+ * * `false`: will have the raw module as default export
429
+ * * `true`: will have the default property as default export
430
+ */ function interopEsm(raw, ns, allowExportDefault) {
431
+ const bindings = [];
432
+ let defaultLocation = -1;
433
+ for(let current = raw; (typeof current === 'object' || typeof current === 'function') && !LEAF_PROTOTYPES.includes(current); current = getProto(current)){
434
+ for (const key of Object.getOwnPropertyNames(current)){
435
+ bindings.push(key, createGetter(raw, key));
436
+ if (defaultLocation === -1 && key === 'default') {
437
+ defaultLocation = bindings.length - 1;
438
+ }
439
+ }
440
+ }
441
+ // this is not really correct
442
+ // we should set the `default` getter if the imported module is a `.cjs file`
443
+ if (!(allowExportDefault && defaultLocation >= 0)) {
444
+ // Replace the binding with one for the namespace itself in order to preserve iteration order.
445
+ if (defaultLocation >= 0) {
446
+ // Replace the getter with the value
447
+ bindings.splice(defaultLocation, 1, BindingTag_Value, raw);
448
+ } else {
449
+ bindings.push('default', BindingTag_Value, raw);
450
+ }
451
+ }
452
+ esm(ns, bindings);
453
+ return ns;
454
+ }
455
+ function createNS(raw) {
456
+ if (typeof raw === 'function') {
457
+ return function(...args) {
458
+ return raw.apply(this, args);
459
+ };
460
+ } else {
461
+ return Object.create(null);
462
+ }
463
+ }
464
+ function esmImport(id) {
465
+ const module = getOrInstantiateModuleFromParent(id, this.m);
466
+ // any ES module has to have `module.namespaceObject` defined.
467
+ if (module.namespaceObject) return module.namespaceObject;
468
+ // only ESM can be an async module, so we don't need to worry about exports being a promise here.
469
+ const raw = module.exports;
470
+ return module.namespaceObject = interopEsm(raw, createNS(raw), raw && raw.__esModule);
471
+ }
472
+ contextPrototype.i = esmImport;
473
+ function asyncLoader(moduleId) {
474
+ const loader = this.r(moduleId);
475
+ return loader(esmImport.bind(this));
476
+ }
477
+ contextPrototype.A = asyncLoader;
478
+ // Add a simple runtime require so that environments without one can still pass
479
+ // `typeof require` CommonJS checks so that exports are correctly registered.
480
+ const runtimeRequire = // @ts-ignore
481
+ typeof require === 'function' ? require : function require1() {
482
+ throw new Error('Unexpected use of runtime require');
483
+ };
484
+ contextPrototype.t = runtimeRequire;
485
+ function commonJsRequire(id) {
486
+ return getOrInstantiateModuleFromParent(id, this.m).exports;
487
+ }
488
+ contextPrototype.r = commonJsRequire;
489
+ /**
490
+ * Remove fragments and query parameters since they are never part of the context map keys
491
+ *
492
+ * This matches how we parse patterns at resolving time. Arguably we should only do this for
493
+ * strings passed to `import` but the resolve does it for `import` and `require` and so we do
494
+ * here as well.
495
+ */ function parseRequest(request) {
496
+ // Per the URI spec fragments can contain `?` characters, so we should trim it off first
497
+ // https://datatracker.ietf.org/doc/html/rfc3986#section-3.5
498
+ const hashIndex = request.indexOf('#');
499
+ if (hashIndex !== -1) {
500
+ request = request.substring(0, hashIndex);
501
+ }
502
+ const queryIndex = request.indexOf('?');
503
+ if (queryIndex !== -1) {
504
+ request = request.substring(0, queryIndex);
505
+ }
506
+ return request;
507
+ }
508
+ /**
509
+ * `require.context` and require/import expression runtime.
510
+ */ function moduleContext(map) {
511
+ function moduleContext(id) {
512
+ id = parseRequest(id);
513
+ if (hasOwnProperty.call(map, id)) {
514
+ return map[id].module();
515
+ }
516
+ const e = new Error(`Cannot find module '${id}'`);
517
+ e.code = 'MODULE_NOT_FOUND';
518
+ throw e;
519
+ }
520
+ moduleContext.keys = ()=>{
521
+ return Object.keys(map);
522
+ };
523
+ moduleContext.resolve = (id)=>{
524
+ id = parseRequest(id);
525
+ if (hasOwnProperty.call(map, id)) {
526
+ return map[id].id();
527
+ }
528
+ const e = new Error(`Cannot find module '${id}'`);
529
+ e.code = 'MODULE_NOT_FOUND';
530
+ throw e;
531
+ };
532
+ moduleContext.import = async (id)=>{
533
+ return await moduleContext(id);
534
+ };
535
+ return moduleContext;
536
+ }
537
+ contextPrototype.f = moduleContext;
538
+ /**
539
+ * Returns the path of a chunk defined by its data.
540
+ */ function getChunkPath(chunkData) {
541
+ return typeof chunkData === 'string' ? chunkData : chunkData.path;
542
+ }
543
+ // Load the CompressedModuleFactories of a chunk into the `moduleFactories` Map.
544
+ // The flat format alternates one or more module IDs with their factory function.
545
+ // Strict factories can be prepended as a nested array.
546
+ function installCompressedModuleFactories(chunkModules, offset, moduleFactories, newModuleId) {
547
+ let i = offset;
548
+ const strictFactories = chunkModules[i];
549
+ if (Array.isArray(strictFactories)) {
550
+ installCompressedModuleFactories(strictFactories, 0, moduleFactories, newModuleId);
551
+ i++;
552
+ }
553
+ while(i < chunkModules.length){
554
+ let end = i + 1;
555
+ // Find our factory function
556
+ while(end < chunkModules.length && typeof chunkModules[end] !== 'function'){
557
+ end++;
558
+ }
559
+ if (end === chunkModules.length) {
560
+ throw new Error('malformed chunk format, expected a factory function');
561
+ }
562
+ // Install the factory for each module ID that doesn't already have one.
563
+ // When some IDs in this group already have a factory, reuse that existing
564
+ // group factory for the missing IDs to keep all IDs in the group consistent.
565
+ // Otherwise, install the factory from this chunk.
566
+ const moduleFactoryFn = chunkModules[end];
567
+ let existingGroupFactory = undefined;
568
+ for(let j = i; j < end; j++){
569
+ const id = chunkModules[j];
570
+ const existingFactory = moduleFactories.get(id);
571
+ if (existingFactory) {
572
+ existingGroupFactory = existingFactory;
573
+ break;
574
+ }
575
+ }
576
+ const factoryToInstall = existingGroupFactory ?? moduleFactoryFn;
577
+ let didInstallFactory = false;
578
+ for(let j = i; j < end; j++){
579
+ const id = chunkModules[j];
580
+ if (!moduleFactories.has(id)) {
581
+ if (!didInstallFactory) {
582
+ if (factoryToInstall === moduleFactoryFn) {
583
+ applyModuleFactoryName(moduleFactoryFn);
584
+ }
585
+ didInstallFactory = true;
586
+ }
587
+ moduleFactories.set(id, factoryToInstall);
588
+ newModuleId?.(id);
589
+ }
590
+ }
591
+ i = end + 1;
592
+ }
593
+ }
594
+ /**
595
+ * A pseudo "fake" URL object to resolve to its relative path.
596
+ *
597
+ * When UrlRewriteBehavior is set to relative, calls to the `new URL()` will construct url without base using this
598
+ * runtime function to generate context-agnostic urls between different rendering context, i.e ssr / client to avoid
599
+ * hydration mismatch.
600
+ *
601
+ * This is based on webpack's existing implementation:
602
+ * https://github.com/webpack/webpack/blob/87660921808566ef3b8796f8df61bd79fc026108/lib/runtime/RelativeUrlRuntimeModule.js
603
+ */ const relativeURL = function relativeURL(inputUrl) {
604
+ const realUrl = new URL(inputUrl, 'x:/');
605
+ const values = {};
606
+ for(const key in realUrl)values[key] = realUrl[key];
607
+ values.href = inputUrl;
608
+ values.pathname = inputUrl.replace(/[?#].*/, '');
609
+ values.origin = values.protocol = '';
610
+ values.toString = values.toJSON = (..._args)=>inputUrl;
611
+ for(const key in values)Object.defineProperty(this, key, {
612
+ enumerable: true,
613
+ configurable: true,
614
+ value: values[key]
615
+ });
616
+ };
617
+ relativeURL.prototype = URL.prototype;
618
+ contextPrototype.U = relativeURL;
619
+ /**
620
+ * Utility function to ensure all variants of an enum are handled.
621
+ */ function invariant(never, computeMessage) {
622
+ throw new Error(`Invariant: ${computeMessage(never)}`);
623
+ }
624
+ /**
625
+ * Constructs an error message for when a module factory is not available.
626
+ */ function factoryNotAvailableMessage(moduleId, sourceType, sourceData) {
627
+ let instantiationReason;
628
+ switch(sourceType){
629
+ case 0:
630
+ instantiationReason = `as a runtime entry of chunk ${sourceData}`;
631
+ break;
632
+ case 1:
633
+ instantiationReason = `because it was required from module ${sourceData}`;
634
+ break;
635
+ case 2:
636
+ instantiationReason = 'because of an HMR update';
637
+ break;
638
+ default:
639
+ invariant(sourceType, (sourceType)=>`Unknown source type: ${sourceType}`);
640
+ }
641
+ return `Module ${moduleId} was instantiated ${instantiationReason}, but the module factory is not available.`;
642
+ }
643
+ /**
644
+ * Returns a `file://` URL under a synthetic directory named after `root`
645
+ * (`ROOT` for the project root), for when the real filesystem path is unknown.
646
+ * The root name and path segments are percent-encoded so the result is always
647
+ * a valid file URI.
648
+ */ function placeholderFileUrl(modulePath, root) {
649
+ return `file:///${encodeURIComponent(root ?? 'ROOT')}/${modulePath.split('/').map(encodeURIComponent).join('/')}`;
650
+ }
651
+ /**
652
+ * A stub function to make `require` available but non-functional in ESM.
653
+ */ function requireStub(_moduleId) {
654
+ throw new Error('dynamic usage of require is not supported');
655
+ }
656
+ contextPrototype.z = requireStub;
657
+ // Make `globalThis` available to the module in a way that cannot be shadowed by a local variable.
658
+ contextPrototype.g = globalThis;
659
+ function applyModuleFactoryName(factory) {
660
+ // Give the module factory a nice name to improve stack traces.
661
+ Object.defineProperty(factory, 'name', {
662
+ value: 'module evaluation'
663
+ });
664
+ }
665
+ /// <reference path="../shared/runtime/runtime-utils.ts" />
666
+ /// A 'base' utilities to support runtime can have externals.
667
+ /// Currently this is for node.js / edge runtime both.
668
+ /// If a fn requires node.js specific behavior, it should be placed in `node-external-utils` instead.
669
+ async function externalImport(id) {
670
+ let raw;
671
+ try {
672
+ raw = await import(id);
673
+ } catch (err) {
674
+ // TODO(alexkirsz) This can happen when a client-side module tries to load
675
+ // an external module we don't provide a shim for (e.g. querystring, url).
676
+ // For now, we fail semi-silently, but in the future this should be a
677
+ // compilation error.
678
+ throw new Error(`Failed to load external module ${id}: ${err}`);
679
+ }
680
+ if (raw && raw.__esModule && raw.default && 'default' in raw.default) {
681
+ return interopEsm(raw.default, createNS(raw), true);
682
+ }
683
+ return raw;
684
+ }
685
+ contextPrototype.y = externalImport;
686
+ function externalRequire(id, thunk, esm = false) {
687
+ let raw;
688
+ try {
689
+ raw = thunk();
690
+ } catch (err) {
691
+ // TODO(alexkirsz) This can happen when a client-side module tries to load
692
+ // an external module we don't provide a shim for (e.g. querystring, url).
693
+ // For now, we fail semi-silently, but in the future this should be a
694
+ // compilation error.
695
+ throw new Error(`Failed to load external module ${id}: ${err}`);
696
+ }
697
+ if (!esm || raw.__esModule) {
698
+ return raw;
699
+ }
700
+ return interopEsm(raw, createNS(raw), true);
701
+ }
702
+ externalRequire.resolve = (id, options)=>{
703
+ return require.resolve(id, options);
704
+ };
705
+ contextPrototype.x = externalRequire;
706
+ /* eslint-disable @typescript-eslint/no-unused-vars */ const path = require('path');
707
+ const relativePathToRuntimeRoot = path.relative(RUNTIME_PUBLIC_PATH, '.');
708
+ // Compute the relative path to the `distDir`.
709
+ const relativePathToDistRoot = path.join(relativePathToRuntimeRoot, RELATIVE_ROOT_PATH);
710
+ const RUNTIME_ROOT = path.resolve(__filename, relativePathToRuntimeRoot);
711
+ // Compute the absolute path to the root, by stripping distDir from the absolute path to this file.
712
+ const ABSOLUTE_ROOT = path.resolve(__filename, relativePathToDistRoot);
713
+ /**
714
+ * Returns an absolute path to the given module path.
715
+ * Module path should be relative, either path to a file or a directory.
716
+ *
717
+ * This fn allows to calculate an absolute path for some global static values, such as
718
+ * `__dirname` or `import.meta.url` that Turbopack will not embeds in compile time.
719
+ * See ImportMetaBinding::code_generation for the usage.
720
+ */ function resolveAbsolutePath(modulePath) {
721
+ if (modulePath) {
722
+ return path.join(ABSOLUTE_ROOT, modulePath);
723
+ }
724
+ return ABSOLUTE_ROOT;
725
+ }
726
+ Context.prototype.P = resolveAbsolutePath;
727
+ /**
728
+ * Returns an absolute `file://` URL for the given module path, which is
729
+ * relative to the project root or the named `root`.
730
+ *
731
+ * Uses `url.pathToFileURL` so that the resulting URL is a valid file URI on
732
+ * all platforms (forward slashes on Windows, drive letters handled
733
+ * correctly, path segments URL-encoded).
734
+ *
735
+ * The location of a named `root` isn't known at runtime (the output may have
736
+ * been moved away from the sources), so this returns a placeholder URL for it.
737
+ */ function resolveFileUrl(modulePath, root) {
738
+ if (root !== undefined) {
739
+ return placeholderFileUrl(modulePath, root);
740
+ }
741
+ return require('url').pathToFileURL(resolveAbsolutePath(modulePath)).href;
742
+ }
743
+ Context.prototype.F = resolveFileUrl;
744
+ /* eslint-disable @typescript-eslint/no-unused-vars */ /// <reference path="../../shared/runtime/runtime-utils.ts" />
745
+ /// <reference path="../../shared-node/base-externals-utils.ts" />
746
+ /// <reference path="../../shared-node/node-externals-utils.ts" />
747
+ /// <reference path="./nodejs-globals.d.ts" />
748
+ /**
749
+ * Base Node.js runtime shared between production and development.
750
+ * Contains chunk loading, module caching, and other non-HMR functionality.
751
+ */ process.env.TURBOPACK = '1';
752
+ const url = require('url');
753
+ const moduleFactories = new Map();
754
+ const moduleCache = new Map();
755
+ /**
756
+ * Returns an absolute path to the given module's id.
757
+ */ function resolvePathFromModule(moduleId) {
758
+ const exported = this.r(moduleId);
759
+ const exportedPath = exported?.default ?? exported;
760
+ if (typeof exportedPath !== 'string') {
761
+ return exported;
762
+ }
763
+ const strippedAssetPrefix = exportedPath.slice(ASSET_PREFIX.length);
764
+ const resolved = path.resolve(RUNTIME_ROOT, strippedAssetPrefix);
765
+ return url.pathToFileURL(resolved).href;
766
+ }
767
+ /**
768
+ * Exports a URL value. No suffix is added in Node.js runtime.
769
+ */ function exportUrl(urlValue, id) {
770
+ exportValue.call(this, urlValue, id);
771
+ }
772
+ function loadRuntimeChunk(sourcePath, chunkData) {
773
+ if (typeof chunkData === 'string') {
774
+ loadRuntimeChunkPath(sourcePath, chunkData);
775
+ } else {
776
+ loadRuntimeChunkPath(sourcePath, chunkData.path);
777
+ }
778
+ }
779
+ const loadedChunks = new Set();
780
+ const unsupportedLoadChunk = Promise.resolve(undefined);
781
+ const loadedChunk = Promise.resolve(undefined);
782
+ const chunkCache = new Map();
783
+ function clearChunkCache() {
784
+ chunkCache.clear();
785
+ loadedChunks.clear();
786
+ }
787
+ function loadRuntimeChunkPath(sourcePath, chunkPath) {
788
+ if (!isJs(chunkPath)) {
789
+ // We only support loading JS chunks in Node.js.
790
+ // This branch can be hit when trying to load a CSS chunk.
791
+ return;
792
+ }
793
+ if (loadedChunks.has(chunkPath)) {
794
+ return;
795
+ }
796
+ try {
797
+ const resolved = path.resolve(RUNTIME_ROOT, chunkPath);
798
+ const chunkModules = require(resolved);
799
+ installCompressedModuleFactories(chunkModules, 0, moduleFactories);
800
+ loadedChunks.add(chunkPath);
801
+ } catch (cause) {
802
+ let errorMessage = `Failed to load chunk ${chunkPath}`;
803
+ if (sourcePath) {
804
+ errorMessage += ` from runtime for chunk ${sourcePath}`;
805
+ }
806
+ const error = new Error(errorMessage, {
807
+ cause
808
+ });
809
+ error.name = 'ChunkLoadError';
810
+ throw error;
811
+ }
812
+ }
813
+ function loadChunkAsync(chunkData) {
814
+ const chunkPath = typeof chunkData === 'string' ? chunkData : chunkData.path;
815
+ if (!isJs(chunkPath)) {
816
+ // We only support loading JS chunks in Node.js.
817
+ // This branch can be hit when trying to load a CSS chunk.
818
+ return unsupportedLoadChunk;
819
+ }
820
+ let entry = chunkCache.get(chunkPath);
821
+ if (entry === undefined) {
822
+ try {
823
+ // resolve to an absolute path to simplify `require` handling
824
+ const resolved = path.resolve(RUNTIME_ROOT, chunkPath);
825
+ // TODO: consider switching to `import()` to enable concurrent chunk loading and async file io
826
+ // However this is incompatible with hot reloading (since `import` doesn't use the require cache)
827
+ const chunkModules = require(resolved);
828
+ installCompressedModuleFactories(chunkModules, 0, moduleFactories);
829
+ entry = loadedChunk;
830
+ } catch (cause) {
831
+ const errorMessage = `Failed to load chunk ${chunkPath} from module ${this.m.id}`;
832
+ const error = new Error(errorMessage, {
833
+ cause
834
+ });
835
+ error.name = 'ChunkLoadError';
836
+ // Cache the failure promise, future requests will also get this same rejection
837
+ entry = Promise.reject(error);
838
+ }
839
+ chunkCache.set(chunkPath, entry);
840
+ }
841
+ // TODO: Return an instrumented Promise that React can use instead of relying on referential equality.
842
+ return entry;
843
+ }
844
+ contextPrototype.l = loadChunkAsync;
845
+ function loadChunkAsyncByUrl(chunkUrl) {
846
+ const path1 = url.fileURLToPath(new URL(chunkUrl, RUNTIME_ROOT));
847
+ return loadChunkAsync.call(this, path1);
848
+ }
849
+ contextPrototype.L = loadChunkAsyncByUrl;
850
+ // Shared runtime primitive: the root that on-disk chunk paths are resolved
851
+ // against. Used by the bundled wasm helper (exposed as `__turbopack_runtime_root__`).
852
+ contextPrototype.w = RUNTIME_ROOT;
853
+ const regexJsUrl = /\.js(?:\?[^#]*)?(?:#.*)?$/;
854
+ /**
855
+ * Checks if a given path/URL ends with .js, optionally followed by ?query or #fragment.
856
+ */ function isJs(chunkUrlOrPath) {
857
+ return regexJsUrl.test(chunkUrlOrPath);
858
+ }
859
+ /* eslint-disable @typescript-eslint/no-unused-vars */ /// <reference path="./runtime-base.ts" />
860
+ /**
861
+ * Production Node.js runtime.
862
+ * Uses ModuleWithDirection and simple module instantiation without HMR support.
863
+ */ // moduleCache and moduleFactories are declared in runtime-base.ts
864
+ // this is read in runtime-utils.ts so it creates a module with direction for hmr
865
+ createModuleWithDirectionFlag = true;
866
+ const nodeContextPrototype = Context.prototype;
867
+ nodeContextPrototype.q = exportUrl;
868
+ nodeContextPrototype.M = moduleFactories;
869
+ // Cast moduleCache to ModuleWithDirection for production mode
870
+ nodeContextPrototype.c = moduleCache;
871
+ nodeContextPrototype.R = resolvePathFromModule;
872
+ nodeContextPrototype.C = clearChunkCache;
873
+ function instantiateModule(id, sourceType, sourceData) {
874
+ const moduleFactory = moduleFactories.get(id);
875
+ if (typeof moduleFactory !== 'function') {
876
+ // This can happen if modules incorrectly handle HMR disposes/updates,
877
+ // e.g. when they keep a `setTimeout` around which still executes old code
878
+ // and contains e.g. a `require("something")` call.
879
+ throw new Error(factoryNotAvailableMessage(id, sourceType, sourceData));
880
+ }
881
+ const module1 = createModuleWithDirection(id);
882
+ const exports = module1.exports;
883
+ moduleCache.set(id, module1);
884
+ const context = new Context(module1, exports);
885
+ // NOTE(alexkirsz) This can fail when the module encounters a runtime error.
886
+ try {
887
+ moduleFactory(context, module1, exports);
888
+ } catch (error) {
889
+ module1.error = error;
890
+ throw error;
891
+ }
892
+ ;
893
+ module1.loaded = true;
894
+ if (module1.namespaceObject && module1.exports !== module1.namespaceObject) {
895
+ // in case of a circular dependency: cjs1 -> esm2 -> cjs1
896
+ interopEsm(module1.exports, module1.namespaceObject);
897
+ }
898
+ return module1;
899
+ }
900
+ /**
901
+ * Retrieves a module from the cache, or instantiate it if it is not cached.
902
+ */ // @ts-ignore
903
+ function getOrInstantiateModuleFromParent(id, sourceModule) {
904
+ const module1 = moduleCache.get(id);
905
+ if (module1) {
906
+ if (module1.error) {
907
+ throw module1.error;
908
+ }
909
+ return module1;
910
+ }
911
+ return instantiateModule(id, SourceType.Parent, sourceModule.id);
912
+ }
913
+ /**
914
+ * Instantiates a runtime module.
915
+ */ function instantiateRuntimeModule(chunkPath, moduleId) {
916
+ return instantiateModule(moduleId, SourceType.Runtime, chunkPath);
917
+ }
918
+ /**
919
+ * Retrieves a module from the cache, or instantiate it as a runtime module if it is not cached.
920
+ */ // @ts-ignore TypeScript doesn't separate this module space from the browser runtime
921
+ function getOrInstantiateRuntimeModule(chunkPath, moduleId) {
922
+ const module1 = moduleCache.get(moduleId);
923
+ if (module1) {
924
+ if (module1.error) {
925
+ throw module1.error;
926
+ }
927
+ return module1;
928
+ }
929
+ return instantiateRuntimeModule(chunkPath, moduleId);
930
+ }
931
+ module.exports = (sourcePath)=>({
932
+ m: (id)=>getOrInstantiateRuntimeModule(sourcePath, id),
933
+ c: (chunkData)=>loadRuntimeChunk(sourcePath, chunkData)
934
+ });
935
+
936
+
937
+ //# sourceMappingURL=%5Bturbopack%5D_runtime.js.map
e-commerce/.next/server/chunks/ssr/[turbopack]_runtime.js.map ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sections": [
5
+ {"offset": {"line": 16, "column": 0}, "map": {"version":3,"sources":["turbopack:///[turbopack]/shared/runtime/runtime-utils.ts"],"sourcesContent":["/**\n * This file contains runtime types and functions that are shared between all\n * TurboPack ECMAScript runtimes.\n *\n * It will be prepended to the runtime code of each runtime.\n */\n\n/* eslint-disable @typescript-eslint/no-unused-vars */\n\n/// <reference path=\"./runtime-types.d.ts\" />\n/// <reference path=\"./async-module.ts\" />\n\ntype EsmNamespaceObject = Record<string, any>\n\n/**\n * Describes why a module was instantiated.\n * Shared between browser and Node.js runtimes.\n */\nenum SourceType {\n /**\n * The module was instantiated because it was included in an evaluated chunk's\n * runtime.\n * SourceData is a ChunkPath.\n */\n Runtime = 0,\n /**\n * The module was instantiated because a parent module imported it.\n * SourceData is a ModuleId.\n */\n Parent = 1,\n /**\n * The module was instantiated because it was included in a chunk's hot module\n * update.\n * SourceData is an array of ModuleIds or undefined.\n */\n Update = 2,\n}\n\ntype SourceData = ChunkPath | ModuleId | ModuleId[] | undefined\n\n// @ts-ignore Defined in `dev-base.ts`\ndeclare function getOrInstantiateModuleFromParent<M>(\n id: ModuleId,\n sourceModule: M\n): M\n\n/**\n * Flag indicating which module object type to create when a module is merged. Set to `true`\n * by each runtime that uses ModuleWithDirection (browser dev-base.ts, nodejs dev-base.ts,\n * nodejs build-base.ts). Browser production (build-base.ts) leaves it as `false` since it\n * uses plain Module objects.\n */\nlet createModuleWithDirectionFlag = false\n\nconst REEXPORTED_OBJECTS = new WeakMap<Module, ReexportedObjects>()\n\n/**\n * Constructs the `__turbopack_context__` object for a module.\n */\nfunction Context(\n this: TurbopackBaseContext<Module>,\n module: Module,\n exports: Exports\n) {\n this.m = module\n // We need to store this here instead of accessing it from the module object to:\n // 1. Make it available to factories directly, since we rewrite `this` to\n // `__turbopack_context__.e` in CJS modules.\n // 2. Support async modules which rewrite `module.exports` to a promise, so we\n // can still access the original exports object from functions like\n // `esmExport`\n // Ideally we could find a new approach for async modules and drop this property altogether.\n this.e = exports\n}\nconst contextPrototype = Context.prototype as TurbopackBaseContext<Module>\n\ntype ModuleContextMap = Record<ModuleId, ModuleContextEntry>\n\ninterface ModuleContextEntry {\n id: () => ModuleId\n module: () => any\n}\n\ninterface ModuleContext {\n // require call\n (moduleId: string): Exports | EsmNamespaceObject\n\n // async import call\n import(moduleId: string): Promise<Exports | EsmNamespaceObject>\n\n keys(): ModuleId[]\n\n resolve(moduleId: string): ModuleId\n}\n\ntype GetOrInstantiateModuleFromParent<M extends Module> = (\n moduleId: M['id'],\n parentModule: M\n) => M\n\ndeclare function getOrInstantiateRuntimeModule(\n chunkPath: ChunkPath,\n moduleId: ModuleId\n): Module\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty\nconst toStringTag = typeof Symbol !== 'undefined' && Symbol.toStringTag\n\nfunction defineProp(\n obj: any,\n name: PropertyKey,\n options: PropertyDescriptor & ThisType<any>\n) {\n if (!hasOwnProperty.call(obj, name)) Object.defineProperty(obj, name, options)\n}\n\nfunction getOverwrittenModule(\n moduleCache: ModuleCache<Module>,\n id: ModuleId\n): Module {\n let module = moduleCache.get(id)\n if (module === undefined) {\n if (createModuleWithDirectionFlag) {\n // set in development modes for hmr support\n module = createModuleWithDirection(id)\n } else {\n module = createModuleObject(id)\n }\n moduleCache.set(id, module)\n }\n return module\n}\n\n/**\n * Creates the module object. Only done here to ensure all module objects have the same shape.\n */\nfunction createModuleObject(id: ModuleId): Module {\n return {\n exports: {},\n error: undefined,\n id,\n namespaceObject: undefined,\n }\n}\n\nfunction createModuleWithDirection(id: ModuleId): ModuleWithDirection {\n return {\n exports: {},\n error: undefined,\n id,\n namespaceObject: undefined,\n parents: [],\n children: [],\n }\n}\n\ntype BindingTag = 0\nconst BindingTag_Value = 0 as BindingTag\n\n// an arbitrary sequence of bindings as\n// - a prop name\n// - BindingTag_Value, a value to be bound directly, or\n// - 1 or 2 functions to bind as getters and sdetters\ntype EsmBindings = Array<\n string | BindingTag | (() => unknown) | ((v: unknown) => void) | unknown\n>\n\n/**\n * Terminates a module's group of entries in an {@link EsmReexports} list.\n */\nconst REEXPORT_GROUP_END = 0\n\n/**\n * Adds the getters to the exports object.\n */\nfunction esm(exports: Exports, bindings: EsmBindings, dynamic?: boolean) {\n defineProp(exports, '__esModule', { value: true })\n if (toStringTag) defineProp(exports, toStringTag, { value: 'Module' })\n let i = 0\n while (i < bindings.length) {\n const propName = bindings[i++] as string\n const tagOrFunction = bindings[i++]\n if (typeof tagOrFunction === 'number') {\n if (tagOrFunction === BindingTag_Value) {\n defineProp(exports, propName, {\n value: bindings[i++],\n enumerable: true,\n writable: false,\n })\n } else {\n throw new Error(`unexpected tag: ${tagOrFunction}`)\n }\n } else {\n const getterFn = tagOrFunction as () => unknown\n if (typeof bindings[i] === 'function') {\n const setterFn = bindings[i++] as (v: unknown) => void\n defineProp(exports, propName, {\n get: getterFn,\n set: setterFn,\n enumerable: true,\n })\n } else {\n defineProp(exports, propName, {\n get: getterFn,\n enumerable: true,\n })\n }\n }\n }\n // The properties defined above are already non-configurable and\n // non-writable, so the namespace's existing exports are effectively\n // immutable. Sealing additionally makes the object non-extensible, matching\n // real ESM-namespace semantics. Modules with dynamic re-exports\n // (`export *` from a CommonJS module) must stay extensible so the dynamic\n // export proxy can surface keys discovered at runtime, so skip the seal for\n // them.\n if (!dynamic) Object.seal(exports)\n}\n\n/**\n * Makes the module an ESM with exports\n */\nfunction esmExport(\n this: TurbopackBaseContext<Module>,\n bindings: EsmBindings,\n id: ModuleId | undefined,\n dynamic?: boolean\n) {\n let module: Module\n let exports: Module['exports']\n if (id != null) {\n module = getOverwrittenModule(this.c, id)\n exports = module.exports\n } else {\n module = this.m\n exports = this.e\n }\n module.namespaceObject = exports\n esm(exports, bindings, dynamic)\n}\ncontextPrototype.s = esmExport\n\n/**\n * Registers re-exports that all forward to properties of other modules.\n *\n * This is a compact spelling of the pattern\n *\n * ```js\n * var ns = context.i(moduleId)\n * context.s([exportName, () => ns[importedName], ...])\n * ```\n *\n * The list is a flat sequence of groups. Each group starts with the source the exports come from,\n * followed by that group's entries, and is terminated by the `0` sentinel (or the end of the list).\n *\n * The group head is either a **module id**, which is instantiated here:\n *\n * ```js\n * context.S([\n * 76061, 'default', 'f', 'named', 'A', 0,\n * 29842, 'otherModule', 'f',\n * ])\n * ```\n *\n * or the **namespace value** of a module that has already been imported, which is used directly:\n *\n * ```js\n * var ns1 = context.i(76061)\n * context.S([ns1, 'default', 'f', 'named', 'A'])\n * ```\n *\n * The producer picks the namespace form when it has generated the import anyway -- because some\n * later import must not be reordered past it -- so nothing is instantiated twice. The two are told\n * apart by type: a module id is always a string or number. A CommonJS function export produces a\n * callable namespace value, so namespace heads can be functions as well as objects.\n *\n * Entries are `exportName, importedName` pairs, except when a group holds exactly one string. That\n * string is then a comma-joined list of the same pairs, which saves the repeated quoting:\n *\n * ```js\n * context.S([\n * 76061, 'default,f,named,A', 0,\n * 29842, 'otherModule,f',\n * ])\n * ```\n *\n * The producer picks that spelling independently for each group whose names contain no commas,\n * since that group's names are recovered by splitting on them.\n *\n * Groups whose head is a module id are instantiated in list order, at the point where the call\n * appears, so the producer must not merge such a group across an import of another module. The\n * destination reuses a source data value or getter descriptor when one exists, falling back to a\n * wrapper getter for dynamic/proxy/inherited properties.\n *\n * `id` names the module the exports belong to when this module was merged into a scope-hoisting\n * group, exactly as it does for {@link EsmExport}.\n *\n * Only the source descriptor's payload (value or getter) is reused. {@link esm} still defines a\n * fresh enumerable, non-configurable destination property, and no source setter is ever forwarded.\n */\nfunction esmReexport(\n this: TurbopackBaseContext<Module>,\n list: EsmReexports,\n id?: ModuleId\n): void {\n const bindings: EsmBindings = []\n let i = 0\n while (i < list.length) {\n const head = list[i++]\n const start = i\n while (i < list.length && list[i] !== REEXPORT_GROUP_END) i++\n const end = i\n // Skip the sentinel, if this group was terminated by one rather than by the end of the list.\n i++\n\n // Module ids are always strings or numbers. Other values are already-imported namespaces;\n // notably, interop with a CommonJS function export produces a callable namespace function.\n // `esmImport` may return a promise for an async module, but re-exports of async modules keep\n // going through `context.s`, so the producer never routes them here and this stays synchronous.\n const namespace = (\n typeof head === 'string' || typeof head === 'number'\n ? esmImport.call(this, head)\n : head\n ) as Record<string, unknown>\n if (end - start === 1) {\n const pairs = (list[start] as string).split(',')\n for (let j = 0; j < pairs.length; j += 2) {\n appendReexportBinding(bindings, pairs[j], namespace, pairs[j + 1])\n }\n } else {\n for (let j = start; j < end; j += 2) {\n appendReexportBinding(\n bindings,\n list[j] as string,\n namespace,\n list[j + 1] as string\n )\n }\n }\n }\n esmExport.call(this, bindings, id)\n}\ncontextPrototype.S = esmReexport\n\nfunction appendReexportBinding(\n bindings: EsmBindings,\n exportedName: string,\n namespace: Record<string, unknown>,\n importedName: string\n): void {\n const descriptor = Reflect.getOwnPropertyDescriptor(namespace, importedName)\n if (descriptor) {\n if ('value' in descriptor) {\n // Code generation only routes immutable imported bindings through this helper, so a data\n // descriptor is a constant export and can be captured once.\n bindings.push(exportedName, BindingTag_Value, descriptor.value)\n return\n }\n if (descriptor.get) {\n // Accessors remain live by reusing the source getter. `esmReexport` is only called by\n // generated code: every group head is either produced by\n // `this.i` or is the namespace variable from a generated `this.i` call. Every getter on such\n // a namespace is receiver-independent: ESM bindings are compiler-generated arrow functions,\n // and the CommonJS/dynamic-namespace paths create arrows in `createGetter` and\n // `getOwnPropertyDescriptor`. The destination can therefore reuse the exact function instead\n // of allocating another wrapper getter.\n bindings.push(exportedName, descriptor.get)\n return\n }\n }\n\n // Dynamic/proxy/inherited CommonJS edge cases may not expose a usable own descriptor.\n bindings.push(exportedName, () => namespace[importedName])\n}\n\ntype ReexportedObjects = Record<PropertyKey, unknown>[]\nfunction ensureDynamicExports(\n module: Module,\n exports: Exports\n): ReexportedObjects {\n let reexportedObjects: ReexportedObjects | undefined =\n REEXPORTED_OBJECTS.get(module)\n\n if (!reexportedObjects) {\n REEXPORTED_OBJECTS.set(module, (reexportedObjects = []))\n // Returns the re-exported object that provides `prop` as an own property,\n // or `undefined` if none does. The traps share this logic so they always\n // agree on which keys are synthesized from `reexportedObjects`. `default`\n // is never re-exported by `export *`, so it is never synthesized.\n const reexportOwning = (prop: PropertyKey) => {\n if (prop !== 'default') {\n for (const obj of reexportedObjects!) {\n if (hasOwnProperty.call(obj, prop)) return obj\n }\n }\n return undefined\n }\n // Modules with dynamic re-exports are not sealed by `esm()`, so the\n // target beneath the namespace stays extensible. That is what lets the\n // `ownKeys` and `getOwnPropertyDescriptor` traps legally report keys that\n // exist on `reexportedObjects` but not on the target itself.\n module.exports = module.namespaceObject = new Proxy(exports, {\n get(target, prop) {\n if (\n hasOwnProperty.call(target, prop) ||\n prop === 'default' ||\n prop === '__esModule'\n ) {\n return Reflect.get(target, prop)\n }\n const obj = reexportOwning(prop)\n return obj && Reflect.get(obj, prop)\n },\n // The namespace is read-only, like a real esm namespace object. The\n // re-exported modules can still mutate their own exports (exposed live\n // via `get`), but mutating the namespace itself is rejected. Refusing\n // here, rather than forwarding to the extensible target, also prevents an\n // assignment/definition from shadowing a dynamic re-export. It also\n // prevents delete from removing a static export.\n set() {\n return false\n },\n defineProperty() {\n return false\n },\n deleteProperty() {\n return false\n },\n // The `has` trap ensures that `'exportName' in starImports` will reflect\n // the truth of whether a key is exported.\n has(target, prop) {\n if (Reflect.has(target, prop)) return true\n if (prop === 'default' || prop === '__esModule') return false\n return reexportOwning(prop) !== undefined\n },\n // ownKeys and getOwnPropertyDescriptor together make the keys enumerable.\n // If a value is returned from `ownKeys` but its property descriptor is\n // not enumerable, it will not be visible to iterator methods.\n // Collectively, they allow code like the following:\n //\n // ```\n // // module.js re-exports dynamic CJS exports\n // export * from './legacyModule.cjs'\n //\n // // from another JS file, reference the re-exported dynamic values\n // import * as Namespace from './module.js'\n // Object.keys(Namespace)\n // ```\n ownKeys(target) {\n const keys = Reflect.ownKeys(target)\n for (const obj of reexportedObjects!) {\n for (const key of Reflect.ownKeys(obj)) {\n if (key !== 'default' && !keys.includes(key)) keys.push(key)\n }\n }\n return keys\n },\n getOwnPropertyDescriptor(target, prop) {\n const own = Reflect.getOwnPropertyDescriptor(target, prop)\n if (own || prop === 'default' || prop === '__esModule') return own\n const obj = reexportOwning(prop)\n if (obj) {\n // Synthetic keys don't exist on the target, so they MUST be\n // reported as configurable. However the set/delete traps above will\n // prevent them from actually being changed\n return {\n enumerable: true,\n configurable: true,\n get: () => Reflect.get(obj, prop),\n }\n }\n return undefined\n },\n })\n }\n return reexportedObjects\n}\n\n/**\n * Dynamically exports properties from an object\n */\nfunction dynamicExport(\n this: TurbopackBaseContext<Module>,\n object: Record<string, any>,\n id: ModuleId | undefined\n) {\n let module: Module\n let exports: Exports\n if (id != null) {\n module = getOverwrittenModule(this.c, id)\n exports = module.exports\n } else {\n module = this.m\n exports = this.e\n }\n const reexportedObjects = ensureDynamicExports(module, exports)\n\n if (typeof object === 'object' && object !== null) {\n reexportedObjects.push(object)\n }\n}\ncontextPrototype.j = dynamicExport\n\nfunction exportValue(\n this: TurbopackBaseContext<Module>,\n value: any,\n id: ModuleId | undefined\n) {\n let module: Module\n if (id != null) {\n module = getOverwrittenModule(this.c, id)\n } else {\n module = this.m\n }\n module.exports = value\n}\ncontextPrototype.v = exportValue\n\nfunction exportNamespace(\n this: TurbopackBaseContext<Module>,\n namespace: any,\n id: ModuleId | undefined\n) {\n let module: Module\n if (id != null) {\n module = getOverwrittenModule(this.c, id)\n } else {\n module = this.m\n }\n module.exports = module.namespaceObject = namespace\n}\ncontextPrototype.n = exportNamespace\n\nfunction createGetter(obj: Record<string | symbol, any>, key: string | symbol) {\n return () => obj[key]\n}\n\n/**\n * @returns prototype of the object\n */\nconst getProto: (obj: any) => any = Object.getPrototypeOf\n ? (obj) => Object.getPrototypeOf(obj)\n : (obj) => obj.__proto__\n\n/** Prototypes that are not expanded for exports */\nconst LEAF_PROTOTYPES = [null, getProto({}), getProto([]), getProto(getProto)]\n\n/**\n * @param raw\n * @param ns\n * @param allowExportDefault\n * * `false`: will have the raw module as default export\n * * `true`: will have the default property as default export\n */\nfunction interopEsm(\n raw: Exports,\n ns: EsmNamespaceObject,\n allowExportDefault?: boolean\n) {\n const bindings: EsmBindings = []\n let defaultLocation = -1\n for (\n let current = raw;\n (typeof current === 'object' || typeof current === 'function') &&\n !LEAF_PROTOTYPES.includes(current);\n current = getProto(current)\n ) {\n for (const key of Object.getOwnPropertyNames(current)) {\n bindings.push(key, createGetter(raw, key))\n if (defaultLocation === -1 && key === 'default') {\n defaultLocation = bindings.length - 1\n }\n }\n }\n\n // this is not really correct\n // we should set the `default` getter if the imported module is a `.cjs file`\n if (!(allowExportDefault && defaultLocation >= 0)) {\n // Replace the binding with one for the namespace itself in order to preserve iteration order.\n if (defaultLocation >= 0) {\n // Replace the getter with the value\n bindings.splice(defaultLocation, 1, BindingTag_Value, raw)\n } else {\n bindings.push('default', BindingTag_Value, raw)\n }\n }\n\n esm(ns, bindings)\n return ns\n}\n\nfunction createNS(raw: Module['exports']): EsmNamespaceObject {\n if (typeof raw === 'function') {\n return function (this: any, ...args: any[]) {\n return raw.apply(this, args)\n }\n } else {\n return Object.create(null)\n }\n}\n\nfunction esmImport(\n this: TurbopackBaseContext<Module>,\n id: ModuleId\n): Exclude<Module['namespaceObject'], undefined> {\n const module = getOrInstantiateModuleFromParent(id, this.m)\n\n // any ES module has to have `module.namespaceObject` defined.\n if (module.namespaceObject) return module.namespaceObject\n\n // only ESM can be an async module, so we don't need to worry about exports being a promise here.\n const raw = module.exports\n return (module.namespaceObject = interopEsm(\n raw,\n createNS(raw),\n raw && (raw as any).__esModule\n ))\n}\ncontextPrototype.i = esmImport\n\nfunction asyncLoader(\n this: TurbopackBaseContext<Module>,\n moduleId: ModuleId\n): Promise<Exports> {\n const loader = this.r(moduleId) as (\n importFunction: EsmImport\n ) => Promise<Exports>\n return loader(esmImport.bind(this))\n}\ncontextPrototype.A = asyncLoader\n\n// Add a simple runtime require so that environments without one can still pass\n// `typeof require` CommonJS checks so that exports are correctly registered.\nconst runtimeRequire =\n // @ts-ignore\n typeof require === 'function'\n ? // @ts-ignore\n require\n : function require() {\n throw new Error('Unexpected use of runtime require')\n }\ncontextPrototype.t = runtimeRequire\n\nfunction commonJsRequire(\n this: TurbopackBaseContext<Module>,\n id: ModuleId\n): Exports {\n return getOrInstantiateModuleFromParent(id, this.m).exports\n}\ncontextPrototype.r = commonJsRequire\n\n/**\n * Remove fragments and query parameters since they are never part of the context map keys\n *\n * This matches how we parse patterns at resolving time. Arguably we should only do this for\n * strings passed to `import` but the resolve does it for `import` and `require` and so we do\n * here as well.\n */\nfunction parseRequest(request: string): string {\n // Per the URI spec fragments can contain `?` characters, so we should trim it off first\n // https://datatracker.ietf.org/doc/html/rfc3986#section-3.5\n const hashIndex = request.indexOf('#')\n if (hashIndex !== -1) {\n request = request.substring(0, hashIndex)\n }\n\n const queryIndex = request.indexOf('?')\n if (queryIndex !== -1) {\n request = request.substring(0, queryIndex)\n }\n\n return request\n}\n/**\n * `require.context` and require/import expression runtime.\n */\nfunction moduleContext(map: ModuleContextMap): ModuleContext {\n function moduleContext(id: string): Exports {\n id = parseRequest(id)\n if (hasOwnProperty.call(map, id)) {\n return map[id].module()\n }\n\n const e = new Error(`Cannot find module '${id}'`)\n ;(e as any).code = 'MODULE_NOT_FOUND'\n throw e\n }\n\n moduleContext.keys = (): string[] => {\n return Object.keys(map)\n }\n\n moduleContext.resolve = (id: string): ModuleId => {\n id = parseRequest(id)\n if (hasOwnProperty.call(map, id)) {\n return map[id].id()\n }\n\n const e = new Error(`Cannot find module '${id}'`)\n ;(e as any).code = 'MODULE_NOT_FOUND'\n throw e\n }\n\n moduleContext.import = async (id: string) => {\n return await (moduleContext(id) as Promise<Exports>)\n }\n\n return moduleContext\n}\ncontextPrototype.f = moduleContext\n\n/**\n * Returns the path of a chunk defined by its data.\n */\nfunction getChunkPath(chunkData: ChunkData): ChunkPath {\n return typeof chunkData === 'string' ? chunkData : chunkData.path\n}\n\n// Load the CompressedModuleFactories of a chunk into the `moduleFactories` Map.\n// The flat format alternates one or more module IDs with their factory function.\n// Strict factories can be prepended as a nested array.\nfunction installCompressedModuleFactories(\n chunkModules: CompressedModuleFactories,\n offset: number,\n moduleFactories: ModuleFactories,\n newModuleId?: (id: ModuleId) => void\n) {\n let i = offset\n const strictFactories = chunkModules[i]\n if (Array.isArray(strictFactories)) {\n installCompressedModuleFactories(\n strictFactories,\n 0,\n moduleFactories,\n newModuleId\n )\n i++\n }\n while (i < chunkModules.length) {\n let end = i + 1\n // Find our factory function\n while (\n end < chunkModules.length &&\n typeof chunkModules[end] !== 'function'\n ) {\n end++\n }\n if (end === chunkModules.length) {\n throw new Error('malformed chunk format, expected a factory function')\n }\n\n // Install the factory for each module ID that doesn't already have one.\n // When some IDs in this group already have a factory, reuse that existing\n // group factory for the missing IDs to keep all IDs in the group consistent.\n // Otherwise, install the factory from this chunk.\n const moduleFactoryFn = chunkModules[end] as Function\n let existingGroupFactory: Function | undefined = undefined\n for (let j = i; j < end; j++) {\n const id = chunkModules[j] as ModuleId\n const existingFactory = moduleFactories.get(id)\n if (existingFactory) {\n existingGroupFactory = existingFactory\n break\n }\n }\n const factoryToInstall = existingGroupFactory ?? moduleFactoryFn\n\n let didInstallFactory = false\n for (let j = i; j < end; j++) {\n const id = chunkModules[j] as ModuleId\n if (!moduleFactories.has(id)) {\n if (!didInstallFactory) {\n if (factoryToInstall === moduleFactoryFn) {\n applyModuleFactoryName(moduleFactoryFn)\n }\n didInstallFactory = true\n }\n moduleFactories.set(id, factoryToInstall)\n newModuleId?.(id)\n }\n }\n i = end + 1\n }\n}\n\n/**\n * A pseudo \"fake\" URL object to resolve to its relative path.\n *\n * When UrlRewriteBehavior is set to relative, calls to the `new URL()` will construct url without base using this\n * runtime function to generate context-agnostic urls between different rendering context, i.e ssr / client to avoid\n * hydration mismatch.\n *\n * This is based on webpack's existing implementation:\n * https://github.com/webpack/webpack/blob/87660921808566ef3b8796f8df61bd79fc026108/lib/runtime/RelativeUrlRuntimeModule.js\n */\nconst relativeURL = function relativeURL(this: any, inputUrl: string) {\n const realUrl = new URL(inputUrl, 'x:/')\n const values: Record<string, any> = {}\n for (const key in realUrl) values[key] = (realUrl as any)[key]\n values.href = inputUrl\n values.pathname = inputUrl.replace(/[?#].*/, '')\n values.origin = values.protocol = ''\n values.toString = values.toJSON = (..._args: Array<any>) => inputUrl\n for (const key in values)\n Object.defineProperty(this, key, {\n enumerable: true,\n configurable: true,\n value: values[key],\n })\n}\nrelativeURL.prototype = URL.prototype\ncontextPrototype.U = relativeURL\n\n/**\n * Utility function to ensure all variants of an enum are handled.\n */\nfunction invariant(never: never, computeMessage: (arg: any) => string): never {\n throw new Error(`Invariant: ${computeMessage(never)}`)\n}\n\n/**\n * Constructs an error message for when a module factory is not available.\n */\nfunction factoryNotAvailableMessage(\n moduleId: ModuleId,\n sourceType: SourceType,\n sourceData: SourceData\n): string {\n let instantiationReason: string\n switch (sourceType) {\n case SourceType.Runtime:\n instantiationReason = `as a runtime entry of chunk ${sourceData}`\n break\n case SourceType.Parent:\n instantiationReason = `because it was required from module ${sourceData}`\n break\n case SourceType.Update:\n instantiationReason = 'because of an HMR update'\n break\n default:\n invariant(\n sourceType,\n (sourceType) => `Unknown source type: ${sourceType}`\n )\n }\n return `Module ${moduleId} was instantiated ${instantiationReason}, but the module factory is not available.`\n}\n\n/**\n * Returns a `file://` URL under a synthetic directory named after `root`\n * (`ROOT` for the project root), for when the real filesystem path is unknown.\n * The root name and path segments are percent-encoded so the result is always\n * a valid file URI.\n */\nfunction placeholderFileUrl(modulePath: string, root?: string): string {\n return `file:///${encodeURIComponent(root ?? 'ROOT')}/${modulePath\n .split('/')\n .map(encodeURIComponent)\n .join('/')}`\n}\n\n/**\n * A stub function to make `require` available but non-functional in ESM.\n */\nfunction requireStub(_moduleId: ModuleId): never {\n throw new Error('dynamic usage of require is not supported')\n}\ncontextPrototype.z = requireStub\n\n// Make `globalThis` available to the module in a way that cannot be shadowed by a local variable.\ncontextPrototype.g = globalThis\n\ntype ContextConstructor<M> = {\n new (module: Module, exports: Exports): TurbopackBaseContext<M>\n}\n\nfunction applyModuleFactoryName(factory: Function) {\n // Give the module factory a nice name to improve stack traces.\n Object.defineProperty(factory, 'name', {\n value: 'module evaluation',\n })\n}\n"],"names":["SourceType","createModuleWithDirectionFlag","REEXPORTED_OBJECTS","WeakMap","Context","module","exports","m","e","contextPrototype","prototype","hasOwnProperty","Object","toStringTag","Symbol","defineProp","obj","name","options","call","defineProperty","getOverwrittenModule","moduleCache","id","get","undefined","createModuleWithDirection","createModuleObject","set","error","namespaceObject","parents","children","BindingTag_Value","REEXPORT_GROUP_END","esm","bindings","dynamic","value","i","length","propName","tagOrFunction","enumerable","writable","Error","getterFn","setterFn","seal","esmExport","c","s","esmReexport","list","head","start","end","namespace","esmImport","pairs","split","j","appendReexportBinding","S","exportedName","importedName","descriptor","Reflect","getOwnPropertyDescriptor","push","ensureDynamicExports","reexportedObjects","reexportOwning","prop","Proxy","target","deleteProperty","has","ownKeys","keys","key","includes","own","configurable","dynamicExport","object","exportValue","v","exportNamespace","n","createGetter","getProto","getPrototypeOf","__proto__","LEAF_PROTOTYPES","interopEsm","raw","ns","allowExportDefault","defaultLocation","current","getOwnPropertyNames","splice","createNS","args","apply","create","getOrInstantiateModuleFromParent","__esModule","asyncLoader","moduleId","loader","r","bind","A","runtimeRequire","require","require1","t","commonJsRequire","parseRequest","request","hashIndex","indexOf","substring","queryIndex","moduleContext","map","code","resolve","import","f","getChunkPath","chunkData","path","installCompressedModuleFactories","chunkModules","offset","moduleFactories","newModuleId","strictFactories","Array","isArray","moduleFactoryFn","existingGroupFactory","existingFactory","factoryToInstall","didInstallFactory","applyModuleFactoryName","relativeURL","inputUrl","realUrl","URL","values","href","pathname","replace","origin","protocol","toString","toJSON","_args","U","invariant","never","computeMessage","factoryNotAvailableMessage","sourceType","sourceData","instantiationReason","placeholderFileUrl","modulePath","root","encodeURIComponent","join","requireStub","_moduleId","z","g","globalThis","factory"],"mappings":"AAAA;;;;;CAKC,GAED,oDAAoD,GAEpD,6CAA6C;AAC7C,0CAA0C;AAI1C;;;CAGC,GACD,IAAA,AAAKA,oCAAAA;IACH;;;;GAIC,sCACS;IACV;;;GAGC,qCACQ;IACT;;;;GAIC,qCACQ;WAjBNA;EAAAA;AA4BL;;;;;CAKC,GACD,IAAIC,gCAAgC;AAEpC,MAAMC,qBAAqB,IAAIC;AAE/B;;CAEC,GACD,SAASC,QAEPC,MAAc,EACdC,OAAgB;IAEhB,IAAI,CAACC,CAAC,GAAGF;IACT,gFAAgF;IAChF,yEAAyE;IACzE,+CAA+C;IAC/C,8EAA8E;IAC9E,sEAAsE;IACtE,iBAAiB;IACjB,4FAA4F;IAC5F,IAAI,CAACG,CAAC,GAAGF;AACX;AACA,MAAMG,mBAAmBL,QAAQM,SAAS;AA+B1C,MAAMC,iBAAiBC,OAAOF,SAAS,CAACC,cAAc;AACtD,MAAME,cAAc,OAAOC,WAAW,eAAeA,OAAOD,WAAW;AAEvE,SAASE,WACPC,GAAQ,EACRC,IAAiB,EACjBC,OAA2C;IAE3C,IAAI,CAACP,eAAeQ,IAAI,CAACH,KAAKC,OAAOL,OAAOQ,cAAc,CAACJ,KAAKC,MAAMC;AACxE;AAEA,SAASG,qBACPC,WAAgC,EAChCC,EAAY;IAEZ,IAAIlB,SAASiB,YAAYE,GAAG,CAACD;IAC7B,IAAIlB,WAAWoB,WAAW;QACxB,IAAIxB,+BAA+B;YACjC,2CAA2C;YAC3CI,SAASqB,0BAA0BH;QACrC,OAAO;YACLlB,SAASsB,mBAAmBJ;QAC9B;QACAD,YAAYM,GAAG,CAACL,IAAIlB;IACtB;IACA,OAAOA;AACT;AAEA;;CAEC,GACD,SAASsB,mBAAmBJ,EAAY;IACtC,OAAO;QACLjB,SAAS,CAAC;QACVuB,OAAOJ;QACPF;QACAO,iBAAiBL;IACnB;AACF;AAEA,SAASC,0BAA0BH,EAAY;IAC7C,OAAO;QACLjB,SAAS,CAAC;QACVuB,OAAOJ;QACPF;QACAO,iBAAiBL;QACjBM,SAAS,EAAE;QACXC,UAAU,EAAE;IACd;AACF;AAGA,MAAMC,mBAAmB;AAUzB;;CAEC,GACD,MAAMC,qBAAqB;AAE3B;;CAEC,GACD,SAASC,IAAI7B,OAAgB,EAAE8B,QAAqB,EAAEC,OAAiB;IACrEtB,WAAWT,SAAS,cAAc;QAAEgC,OAAO;IAAK;IAChD,IAAIzB,aAAaE,WAAWT,SAASO,aAAa;QAAEyB,OAAO;IAAS;IACpE,IAAIC,IAAI;IACR,MAAOA,IAAIH,SAASI,MAAM,CAAE;QAC1B,MAAMC,WAAWL,QAAQ,CAACG,IAAI;QAC9B,MAAMG,gBAAgBN,QAAQ,CAACG,IAAI;QACnC,IAAI,OAAOG,kBAAkB,UAAU;YACrC,IAAIA,kBAAkBT,kBAAkB;gBACtClB,WAAWT,SAASmC,UAAU;oBAC5BH,OAAOF,QAAQ,CAACG,IAAI;oBACpBI,YAAY;oBACZC,UAAU;gBACZ;YACF,OAAO;gBACL,MAAM,IAAIC,MAAM,CAAC,gBAAgB,EAAEH,eAAe;YACpD;QACF,OAAO;YACL,MAAMI,WAAWJ;YACjB,IAAI,OAAON,QAAQ,CAACG,EAAE,KAAK,YAAY;gBACrC,MAAMQ,WAAWX,QAAQ,CAACG,IAAI;gBAC9BxB,WAAWT,SAASmC,UAAU;oBAC5BjB,KAAKsB;oBACLlB,KAAKmB;oBACLJ,YAAY;gBACd;YACF,OAAO;gBACL5B,WAAWT,SAASmC,UAAU;oBAC5BjB,KAAKsB;oBACLH,YAAY;gBACd;YACF;QACF;IACF;IACA,gEAAgE;IAChE,oEAAoE;IACpE,4EAA4E;IAC5E,gEAAgE;IAChE,0EAA0E;IAC1E,4EAA4E;IAC5E,QAAQ;IACR,IAAI,CAACN,SAASzB,OAAOoC,IAAI,CAAC1C;AAC5B;AAEA;;CAEC,GACD,SAAS2C,UAEPb,QAAqB,EACrBb,EAAwB,EACxBc,OAAiB;IAEjB,IAAIhC;IACJ,IAAIC;IACJ,IAAIiB,MAAM,MAAM;QACdlB,SAASgB,qBAAqB,IAAI,CAAC6B,CAAC,EAAE3B;QACtCjB,UAAUD,OAAOC,OAAO;IAC1B,OAAO;QACLD,SAAS,IAAI,CAACE,CAAC;QACfD,UAAU,IAAI,CAACE,CAAC;IAClB;IACAH,OAAOyB,eAAe,GAAGxB;IACzB6B,IAAI7B,SAAS8B,UAAUC;AACzB;AACA5B,iBAAiB0C,CAAC,GAAGF;AAErB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDC,GACD,SAASG,YAEPC,IAAkB,EAClB9B,EAAa;IAEb,MAAMa,WAAwB,EAAE;IAChC,IAAIG,IAAI;IACR,MAAOA,IAAIc,KAAKb,MAAM,CAAE;QACtB,MAAMc,OAAOD,IAAI,CAACd,IAAI;QACtB,MAAMgB,QAAQhB;QACd,MAAOA,IAAIc,KAAKb,MAAM,IAAIa,IAAI,CAACd,EAAE,KAAKL,mBAAoBK;QAC1D,MAAMiB,MAAMjB;QACZ,6FAA6F;QAC7FA;QAEA,0FAA0F;QAC1F,2FAA2F;QAC3F,6FAA6F;QAC7F,gGAAgG;QAChG,MAAMkB,YACJ,OAAOH,SAAS,YAAY,OAAOA,SAAS,WACxCI,UAAUvC,IAAI,CAAC,IAAI,EAAEmC,QACrBA;QAEN,IAAIE,MAAMD,UAAU,GAAG;YACrB,MAAMI,QAAQ,AAACN,IAAI,CAACE,MAAM,CAAYK,KAAK,CAAC;YAC5C,IAAK,IAAIC,IAAI,GAAGA,IAAIF,MAAMnB,MAAM,EAAEqB,KAAK,EAAG;gBACxCC,sBAAsB1B,UAAUuB,KAAK,CAACE,EAAE,EAAEJ,WAAWE,KAAK,CAACE,IAAI,EAAE;YACnE;QACF,OAAO;YACL,IAAK,IAAIA,IAAIN,OAAOM,IAAIL,KAAKK,KAAK,EAAG;gBACnCC,sBACE1B,UACAiB,IAAI,CAACQ,EAAE,EACPJ,WACAJ,IAAI,CAACQ,IAAI,EAAE;YAEf;QACF;IACF;IACAZ,UAAU9B,IAAI,CAAC,IAAI,EAAEiB,UAAUb;AACjC;AACAd,iBAAiBsD,CAAC,GAAGX;AAErB,SAASU,sBACP1B,QAAqB,EACrB4B,YAAoB,EACpBP,SAAkC,EAClCQ,YAAoB;IAEpB,MAAMC,aAAaC,QAAQC,wBAAwB,CAACX,WAAWQ;IAC/D,IAAIC,YAAY;QACd,IAAI,WAAWA,YAAY;YACzB,yFAAyF;YACzF,4DAA4D;YAC5D9B,SAASiC,IAAI,CAACL,cAAc/B,kBAAkBiC,WAAW5B,KAAK;YAC9D;QACF;QACA,IAAI4B,WAAW1C,GAAG,EAAE;YAClB,sFAAsF;YACtF,yDAAyD;YACzD,6FAA6F;YAC7F,4FAA4F;YAC5F,+EAA+E;YAC/E,6FAA6F;YAC7F,wCAAwC;YACxCY,SAASiC,IAAI,CAACL,cAAcE,WAAW1C,GAAG;YAC1C;QACF;IACF;IAEA,sFAAsF;IACtFY,SAASiC,IAAI,CAACL,cAAc,IAAMP,SAAS,CAACQ,aAAa;AAC3D;AAGA,SAASK,qBACPjE,MAAc,EACdC,OAAgB;IAEhB,IAAIiE,oBACFrE,mBAAmBsB,GAAG,CAACnB;IAEzB,IAAI,CAACkE,mBAAmB;QACtBrE,mBAAmB0B,GAAG,CAACvB,QAASkE,oBAAoB,EAAE;QACtD,0EAA0E;QAC1E,yEAAyE;QACzE,0EAA0E;QAC1E,kEAAkE;QAClE,MAAMC,iBAAiB,CAACC;YACtB,IAAIA,SAAS,WAAW;gBACtB,KAAK,MAAMzD,OAAOuD,kBAAoB;oBACpC,IAAI5D,eAAeQ,IAAI,CAACH,KAAKyD,OAAO,OAAOzD;gBAC7C;YACF;YACA,OAAOS;QACT;QACA,oEAAoE;QACpE,uEAAuE;QACvE,0EAA0E;QAC1E,6DAA6D;QAC7DpB,OAAOC,OAAO,GAAGD,OAAOyB,eAAe,GAAG,IAAI4C,MAAMpE,SAAS;YAC3DkB,KAAImD,MAAM,EAAEF,IAAI;gBACd,IACE9D,eAAeQ,IAAI,CAACwD,QAAQF,SAC5BA,SAAS,aACTA,SAAS,cACT;oBACA,OAAON,QAAQ3C,GAAG,CAACmD,QAAQF;gBAC7B;gBACA,MAAMzD,MAAMwD,eAAeC;gBAC3B,OAAOzD,OAAOmD,QAAQ3C,GAAG,CAACR,KAAKyD;YACjC;YACA,oEAAoE;YACpE,uEAAuE;YACvE,sEAAsE;YACtE,0EAA0E;YAC1E,oEAAoE;YACpE,iDAAiD;YACjD7C;gBACE,OAAO;YACT;YACAR;gBACE,OAAO;YACT;YACAwD;gBACE,OAAO;YACT;YACA,yEAAyE;YACzE,0CAA0C;YAC1CC,KAAIF,MAAM,EAAEF,IAAI;gBACd,IAAIN,QAAQU,GAAG,CAACF,QAAQF,OAAO,OAAO;gBACtC,IAAIA,SAAS,aAAaA,SAAS,cAAc,OAAO;gBACxD,OAAOD,eAAeC,UAAUhD;YAClC;YACA,0EAA0E;YAC1E,uEAAuE;YACvE,8DAA8D;YAC9D,oDAAoD;YACpD,EAAE;YACF,MAAM;YACN,8CAA8C;YAC9C,qCAAqC;YACrC,EAAE;YACF,oEAAoE;YACpE,2CAA2C;YAC3C,yBAAyB;YACzB,MAAM;YACNqD,SAAQH,MAAM;gBACZ,MAAMI,OAAOZ,QAAQW,OAAO,CAACH;gBAC7B,KAAK,MAAM3D,OAAOuD,kBAAoB;oBACpC,KAAK,MAAMS,OAAOb,QAAQW,OAAO,CAAC9D,KAAM;wBACtC,IAAIgE,QAAQ,aAAa,CAACD,KAAKE,QAAQ,CAACD,MAAMD,KAAKV,IAAI,CAACW;oBAC1D;gBACF;gBACA,OAAOD;YACT;YACAX,0BAAyBO,MAAM,EAAEF,IAAI;gBACnC,MAAMS,MAAMf,QAAQC,wBAAwB,CAACO,QAAQF;gBACrD,IAAIS,OAAOT,SAAS,aAAaA,SAAS,cAAc,OAAOS;gBAC/D,MAAMlE,MAAMwD,eAAeC;gBAC3B,IAAIzD,KAAK;oBACP,4DAA4D;oBAC5D,oEAAoE;oBACpE,2CAA2C;oBAC3C,OAAO;wBACL2B,YAAY;wBACZwC,cAAc;wBACd3D,KAAK,IAAM2C,QAAQ3C,GAAG,CAACR,KAAKyD;oBAC9B;gBACF;gBACA,OAAOhD;YACT;QACF;IACF;IACA,OAAO8C;AACT;AAEA;;CAEC,GACD,SAASa,cAEPC,MAA2B,EAC3B9D,EAAwB;IAExB,IAAIlB;IACJ,IAAIC;IACJ,IAAIiB,MAAM,MAAM;QACdlB,SAASgB,qBAAqB,IAAI,CAAC6B,CAAC,EAAE3B;QACtCjB,UAAUD,OAAOC,OAAO;IAC1B,OAAO;QACLD,SAAS,IAAI,CAACE,CAAC;QACfD,UAAU,IAAI,CAACE,CAAC;IAClB;IACA,MAAM+D,oBAAoBD,qBAAqBjE,QAAQC;IAEvD,IAAI,OAAO+E,WAAW,YAAYA,WAAW,MAAM;QACjDd,kBAAkBF,IAAI,CAACgB;IACzB;AACF;AACA5E,iBAAiBoD,CAAC,GAAGuB;AAErB,SAASE,YAEPhD,KAAU,EACVf,EAAwB;IAExB,IAAIlB;IACJ,IAAIkB,MAAM,MAAM;QACdlB,SAASgB,qBAAqB,IAAI,CAAC6B,CAAC,EAAE3B;IACxC,OAAO;QACLlB,SAAS,IAAI,CAACE,CAAC;IACjB;IACAF,OAAOC,OAAO,GAAGgC;AACnB;AACA7B,iBAAiB8E,CAAC,GAAGD;AAErB,SAASE,gBAEP/B,SAAc,EACdlC,EAAwB;IAExB,IAAIlB;IACJ,IAAIkB,MAAM,MAAM;QACdlB,SAASgB,qBAAqB,IAAI,CAAC6B,CAAC,EAAE3B;IACxC,OAAO;QACLlB,SAAS,IAAI,CAACE,CAAC;IACjB;IACAF,OAAOC,OAAO,GAAGD,OAAOyB,eAAe,GAAG2B;AAC5C;AACAhD,iBAAiBgF,CAAC,GAAGD;AAErB,SAASE,aAAa1E,GAAiC,EAAEgE,GAAoB;IAC3E,OAAO,IAAMhE,GAAG,CAACgE,IAAI;AACvB;AAEA;;CAEC,GACD,MAAMW,WAA8B/E,OAAOgF,cAAc,GACrD,CAAC5E,MAAQJ,OAAOgF,cAAc,CAAC5E,OAC/B,CAACA,MAAQA,IAAI6E,SAAS;AAE1B,iDAAiD,GACjD,MAAMC,kBAAkB;IAAC;IAAMH,SAAS,CAAC;IAAIA,SAAS,EAAE;IAAGA,SAASA;CAAU;AAE9E;;;;;;CAMC,GACD,SAASI,WACPC,GAAY,EACZC,EAAsB,EACtBC,kBAA4B;IAE5B,MAAM9D,WAAwB,EAAE;IAChC,IAAI+D,kBAAkB,CAAC;IACvB,IACE,IAAIC,UAAUJ,KACd,CAAC,OAAOI,YAAY,YAAY,OAAOA,YAAY,UAAU,KAC7D,CAACN,gBAAgBb,QAAQ,CAACmB,UAC1BA,UAAUT,SAASS,SACnB;QACA,KAAK,MAAMpB,OAAOpE,OAAOyF,mBAAmB,CAACD,SAAU;YACrDhE,SAASiC,IAAI,CAACW,KAAKU,aAAaM,KAAKhB;YACrC,IAAImB,oBAAoB,CAAC,KAAKnB,QAAQ,WAAW;gBAC/CmB,kBAAkB/D,SAASI,MAAM,GAAG;YACtC;QACF;IACF;IAEA,6BAA6B;IAC7B,6EAA6E;IAC7E,IAAI,CAAC,CAAC0D,sBAAsBC,mBAAmB,CAAC,GAAG;QACjD,8FAA8F;QAC9F,IAAIA,mBAAmB,GAAG;YACxB,oCAAoC;YACpC/D,SAASkE,MAAM,CAACH,iBAAiB,GAAGlE,kBAAkB+D;QACxD,OAAO;YACL5D,SAASiC,IAAI,CAAC,WAAWpC,kBAAkB+D;QAC7C;IACF;IAEA7D,IAAI8D,IAAI7D;IACR,OAAO6D;AACT;AAEA,SAASM,SAASP,GAAsB;IACtC,IAAI,OAAOA,QAAQ,YAAY;QAC7B,OAAO,SAAqB,GAAGQ,IAAW;YACxC,OAAOR,IAAIS,KAAK,CAAC,IAAI,EAAED;QACzB;IACF,OAAO;QACL,OAAO5F,OAAO8F,MAAM,CAAC;IACvB;AACF;AAEA,SAAShD,UAEPnC,EAAY;IAEZ,MAAMlB,SAASsG,iCAAiCpF,IAAI,IAAI,CAAChB,CAAC;IAE1D,8DAA8D;IAC9D,IAAIF,OAAOyB,eAAe,EAAE,OAAOzB,OAAOyB,eAAe;IAEzD,iGAAiG;IACjG,MAAMkE,MAAM3F,OAAOC,OAAO;IAC1B,OAAQD,OAAOyB,eAAe,GAAGiE,WAC/BC,KACAO,SAASP,MACTA,OAAO,AAACA,IAAYY,UAAU;AAElC;AACAnG,iBAAiB8B,CAAC,GAAGmB;AAErB,SAASmD,YAEPC,QAAkB;IAElB,MAAMC,SAAS,IAAI,CAACC,CAAC,CAACF;IAGtB,OAAOC,OAAOrD,UAAUuD,IAAI,CAAC,IAAI;AACnC;AACAxG,iBAAiByG,CAAC,GAAGL;AAErB,+EAA+E;AAC/E,6EAA6E;AAC7E,MAAMM,iBACJ,aAAa;AACb,OAAOC,YAAY,aAEfA,UACA,SAASC;IACP,MAAM,IAAIxE,MAAM;AAClB;AACNpC,iBAAiB6G,CAAC,GAAGH;AAErB,SAASI,gBAEPhG,EAAY;IAEZ,OAAOoF,iCAAiCpF,IAAI,IAAI,CAAChB,CAAC,EAAED,OAAO;AAC7D;AACAG,iBAAiBuG,CAAC,GAAGO;AAErB;;;;;;CAMC,GACD,SAASC,aAAaC,OAAe;IACnC,wFAAwF;IACxF,4DAA4D;IAC5D,MAAMC,YAAYD,QAAQE,OAAO,CAAC;IAClC,IAAID,cAAc,CAAC,GAAG;QACpBD,UAAUA,QAAQG,SAAS,CAAC,GAAGF;IACjC;IAEA,MAAMG,aAAaJ,QAAQE,OAAO,CAAC;IACnC,IAAIE,eAAe,CAAC,GAAG;QACrBJ,UAAUA,QAAQG,SAAS,CAAC,GAAGC;IACjC;IAEA,OAAOJ;AACT;AACA;;CAEC,GACD,SAASK,cAAcC,GAAqB;IAC1C,SAASD,cAAcvG,EAAU;QAC/BA,KAAKiG,aAAajG;QAClB,IAAIZ,eAAeQ,IAAI,CAAC4G,KAAKxG,KAAK;YAChC,OAAOwG,GAAG,CAACxG,GAAG,CAAClB,MAAM;QACvB;QAEA,MAAMG,IAAI,IAAIqC,MAAM,CAAC,oBAAoB,EAAEtB,GAAG,CAAC,CAAC;QAC9Cf,EAAUwH,IAAI,GAAG;QACnB,MAAMxH;IACR;IAEAsH,cAAc/C,IAAI,GAAG;QACnB,OAAOnE,OAAOmE,IAAI,CAACgD;IACrB;IAEAD,cAAcG,OAAO,GAAG,CAAC1G;QACvBA,KAAKiG,aAAajG;QAClB,IAAIZ,eAAeQ,IAAI,CAAC4G,KAAKxG,KAAK;YAChC,OAAOwG,GAAG,CAACxG,GAAG,CAACA,EAAE;QACnB;QAEA,MAAMf,IAAI,IAAIqC,MAAM,CAAC,oBAAoB,EAAEtB,GAAG,CAAC,CAAC;QAC9Cf,EAAUwH,IAAI,GAAG;QACnB,MAAMxH;IACR;IAEAsH,cAAcI,MAAM,GAAG,OAAO3G;QAC5B,OAAO,MAAOuG,cAAcvG;IAC9B;IAEA,OAAOuG;AACT;AACArH,iBAAiB0H,CAAC,GAAGL;AAErB;;CAEC,GACD,SAASM,aAAaC,SAAoB;IACxC,OAAO,OAAOA,cAAc,WAAWA,YAAYA,UAAUC,IAAI;AACnE;AAEA,gFAAgF;AAChF,iFAAiF;AACjF,uDAAuD;AACvD,SAASC,iCACPC,YAAuC,EACvCC,MAAc,EACdC,eAAgC,EAChCC,WAAoC;IAEpC,IAAIpG,IAAIkG;IACR,MAAMG,kBAAkBJ,YAAY,CAACjG,EAAE;IACvC,IAAIsG,MAAMC,OAAO,CAACF,kBAAkB;QAClCL,iCACEK,iBACA,GACAF,iBACAC;QAEFpG;IACF;IACA,MAAOA,IAAIiG,aAAahG,MAAM,CAAE;QAC9B,IAAIgB,MAAMjB,IAAI;QACd,4BAA4B;QAC5B,MACEiB,MAAMgF,aAAahG,MAAM,IACzB,OAAOgG,YAAY,CAAChF,IAAI,KAAK,WAC7B;YACAA;QACF;QACA,IAAIA,QAAQgF,aAAahG,MAAM,EAAE;YAC/B,MAAM,IAAIK,MAAM;QAClB;QAEA,wEAAwE;QACxE,0EAA0E;QAC1E,6EAA6E;QAC7E,kDAAkD;QAClD,MAAMkG,kBAAkBP,YAAY,CAAChF,IAAI;QACzC,IAAIwF,uBAA6CvH;QACjD,IAAK,IAAIoC,IAAItB,GAAGsB,IAAIL,KAAKK,IAAK;YAC5B,MAAMtC,KAAKiH,YAAY,CAAC3E,EAAE;YAC1B,MAAMoF,kBAAkBP,gBAAgBlH,GAAG,CAACD;YAC5C,IAAI0H,iBAAiB;gBACnBD,uBAAuBC;gBACvB;YACF;QACF;QACA,MAAMC,mBAAmBF,wBAAwBD;QAEjD,IAAII,oBAAoB;QACxB,IAAK,IAAItF,IAAItB,GAAGsB,IAAIL,KAAKK,IAAK;YAC5B,MAAMtC,KAAKiH,YAAY,CAAC3E,EAAE;YAC1B,IAAI,CAAC6E,gBAAgB7D,GAAG,CAACtD,KAAK;gBAC5B,IAAI,CAAC4H,mBAAmB;oBACtB,IAAID,qBAAqBH,iBAAiB;wBACxCK,uBAAuBL;oBACzB;oBACAI,oBAAoB;gBACtB;gBACAT,gBAAgB9G,GAAG,CAACL,IAAI2H;gBACxBP,cAAcpH;YAChB;QACF;QACAgB,IAAIiB,MAAM;IACZ;AACF;AAEA;;;;;;;;;CASC,GACD,MAAM6F,cAAc,SAASA,YAAuBC,QAAgB;IAClE,MAAMC,UAAU,IAAIC,IAAIF,UAAU;IAClC,MAAMG,SAA8B,CAAC;IACrC,IAAK,MAAMzE,OAAOuE,QAASE,MAAM,CAACzE,IAAI,GAAG,AAACuE,OAAe,CAACvE,IAAI;IAC9DyE,OAAOC,IAAI,GAAGJ;IACdG,OAAOE,QAAQ,GAAGL,SAASM,OAAO,CAAC,UAAU;IAC7CH,OAAOI,MAAM,GAAGJ,OAAOK,QAAQ,GAAG;IAClCL,OAAOM,QAAQ,GAAGN,OAAOO,MAAM,GAAG,CAAC,GAAGC,QAAsBX;IAC5D,IAAK,MAAMtE,OAAOyE,OAChB7I,OAAOQ,cAAc,CAAC,IAAI,EAAE4D,KAAK;QAC/BrC,YAAY;QACZwC,cAAc;QACd7C,OAAOmH,MAAM,CAACzE,IAAI;IACpB;AACJ;AACAqE,YAAY3I,SAAS,GAAG8I,IAAI9I,SAAS;AACrCD,iBAAiByJ,CAAC,GAAGb;AAErB;;CAEC,GACD,SAASc,UAAUC,KAAY,EAAEC,cAAoC;IACnE,MAAM,IAAIxH,MAAM,CAAC,WAAW,EAAEwH,eAAeD,QAAQ;AACvD;AAEA;;CAEC,GACD,SAASE,2BACPxD,QAAkB,EAClByD,UAAsB,EACtBC,UAAsB;IAEtB,IAAIC;IACJ,OAAQF;QACN,KAtyBQ;YAuyBNE,sBAAsB,CAAC,4BAA4B,EAAED,YAAY;YACjE;QACF,KApyBO;YAqyBLC,sBAAsB,CAAC,oCAAoC,EAAED,YAAY;YACzE;QACF,KAjyBO;YAkyBLC,sBAAsB;YACtB;QACF;YACEN,UACEI,YACA,CAACA,aAAe,CAAC,qBAAqB,EAAEA,YAAY;IAE1D;IACA,OAAO,CAAC,OAAO,EAAEzD,SAAS,kBAAkB,EAAE2D,oBAAoB,0CAA0C,CAAC;AAC/G;AAEA;;;;;CAKC,GACD,SAASC,mBAAmBC,UAAkB,EAAEC,IAAa;IAC3D,OAAO,CAAC,QAAQ,EAAEC,mBAAmBD,QAAQ,QAAQ,CAAC,EAAED,WACrD/G,KAAK,CAAC,KACNmE,GAAG,CAAC8C,oBACJC,IAAI,CAAC,MAAM;AAChB;AAEA;;CAEC,GACD,SAASC,YAAYC,SAAmB;IACtC,MAAM,IAAInI,MAAM;AAClB;AACApC,iBAAiBwK,CAAC,GAAGF;AAErB,kGAAkG;AAClGtK,iBAAiByK,CAAC,GAAGC;AAMrB,SAAS/B,uBAAuBgC,OAAiB;IAC/C,+DAA+D;IAC/DxK,OAAOQ,cAAc,CAACgK,SAAS,QAAQ;QACrC9I,OAAO;IACT;AACF","ignoreList":[0]}},
6
+ {"offset": {"line": 664, "column": 0}, "map": {"version":3,"sources":["turbopack:///[turbopack]/shared-node/base-externals-utils.ts"],"sourcesContent":["/// <reference path=\"../shared/runtime/runtime-utils.ts\" />\n\n/// A 'base' utilities to support runtime can have externals.\n/// Currently this is for node.js / edge runtime both.\n/// If a fn requires node.js specific behavior, it should be placed in `node-external-utils` instead.\n\nasync function externalImport(id: DependencySpecifier) {\n let raw\n try {\n raw = await import(id)\n } catch (err) {\n // TODO(alexkirsz) This can happen when a client-side module tries to load\n // an external module we don't provide a shim for (e.g. querystring, url).\n // For now, we fail semi-silently, but in the future this should be a\n // compilation error.\n throw new Error(`Failed to load external module ${id}: ${err}`)\n }\n\n if (raw && raw.__esModule && raw.default && 'default' in raw.default) {\n return interopEsm(raw.default, createNS(raw), true)\n }\n\n return raw\n}\ncontextPrototype.y = externalImport\n\nfunction externalRequire(\n id: ModuleId,\n thunk: () => any,\n esm: boolean = false\n): Exports | EsmNamespaceObject {\n let raw\n try {\n raw = thunk()\n } catch (err) {\n // TODO(alexkirsz) This can happen when a client-side module tries to load\n // an external module we don't provide a shim for (e.g. querystring, url).\n // For now, we fail semi-silently, but in the future this should be a\n // compilation error.\n throw new Error(`Failed to load external module ${id}: ${err}`)\n }\n\n if (!esm || raw.__esModule) {\n return raw\n }\n\n return interopEsm(raw, createNS(raw), true)\n}\n\nexternalRequire.resolve = (\n id: string,\n options?: {\n paths?: string[]\n }\n) => {\n return require.resolve(id, options)\n}\ncontextPrototype.x = externalRequire\n"],"names":["externalImport","id","raw","err","Error","__esModule","default","interopEsm","createNS","contextPrototype","y","externalRequire","thunk","esm","resolve","options","require","x"],"mappings":"AAAA,2DAA2D;AAE3D,6DAA6D;AAC7D,sDAAsD;AACtD,qGAAqG;AAErG,eAAeA,eAAeC,EAAuB;IACnD,IAAIC;IACJ,IAAI;QACFA,MAAM,MAAM,MAAM,CAACD;IACrB,EAAE,OAAOE,KAAK;QACZ,0EAA0E;QAC1E,0EAA0E;QAC1E,qEAAqE;QACrE,qBAAqB;QACrB,MAAM,IAAIC,MAAM,CAAC,+BAA+B,EAAEH,GAAG,EAAE,EAAEE,KAAK;IAChE;IAEA,IAAID,OAAOA,IAAIG,UAAU,IAAIH,IAAII,OAAO,IAAI,aAAaJ,IAAII,OAAO,EAAE;QACpE,OAAOC,WAAWL,IAAII,OAAO,EAAEE,SAASN,MAAM;IAChD;IAEA,OAAOA;AACT;AACAO,iBAAiBC,CAAC,GAAGV;AAErB,SAASW,gBACPV,EAAY,EACZW,KAAgB,EAChBC,MAAe,KAAK;IAEpB,IAAIX;IACJ,IAAI;QACFA,MAAMU;IACR,EAAE,OAAOT,KAAK;QACZ,0EAA0E;QAC1E,0EAA0E;QAC1E,qEAAqE;QACrE,qBAAqB;QACrB,MAAM,IAAIC,MAAM,CAAC,+BAA+B,EAAEH,GAAG,EAAE,EAAEE,KAAK;IAChE;IAEA,IAAI,CAACU,OAAOX,IAAIG,UAAU,EAAE;QAC1B,OAAOH;IACT;IAEA,OAAOK,WAAWL,KAAKM,SAASN,MAAM;AACxC;AAEAS,gBAAgBG,OAAO,GAAG,CACxBb,IACAc;IAIA,OAAOC,QAAQF,OAAO,CAACb,IAAIc;AAC7B;AACAN,iBAAiBQ,CAAC,GAAGN","ignoreList":[0]}},
7
+ {"offset": {"line": 705, "column": 0}, "map": {"version":3,"sources":["turbopack:///[turbopack]/shared-node/node-externals-utils.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n\ndeclare var RUNTIME_PUBLIC_PATH: string\ndeclare var RELATIVE_ROOT_PATH: string\ndeclare var ASSET_PREFIX: string\n\nconst path = require('path')\n\nconst relativePathToRuntimeRoot = path.relative(RUNTIME_PUBLIC_PATH, '.')\n// Compute the relative path to the `distDir`.\nconst relativePathToDistRoot = path.join(\n relativePathToRuntimeRoot,\n RELATIVE_ROOT_PATH\n)\nconst RUNTIME_ROOT = path.resolve(__filename, relativePathToRuntimeRoot)\n// Compute the absolute path to the root, by stripping distDir from the absolute path to this file.\nconst ABSOLUTE_ROOT = path.resolve(__filename, relativePathToDistRoot)\n\n/**\n * Returns an absolute path to the given module path.\n * Module path should be relative, either path to a file or a directory.\n *\n * This fn allows to calculate an absolute path for some global static values, such as\n * `__dirname` or `import.meta.url` that Turbopack will not embeds in compile time.\n * See ImportMetaBinding::code_generation for the usage.\n */\nfunction resolveAbsolutePath(modulePath?: string): string {\n if (modulePath) {\n return path.join(ABSOLUTE_ROOT, modulePath)\n }\n return ABSOLUTE_ROOT\n}\nContext.prototype.P = resolveAbsolutePath\n\n/**\n * Returns an absolute `file://` URL for the given module path, which is\n * relative to the project root or the named `root`.\n *\n * Uses `url.pathToFileURL` so that the resulting URL is a valid file URI on\n * all platforms (forward slashes on Windows, drive letters handled\n * correctly, path segments URL-encoded).\n *\n * The location of a named `root` isn't known at runtime (the output may have\n * been moved away from the sources), so this returns a placeholder URL for it.\n */\nfunction resolveFileUrl(modulePath: string, root?: string): string {\n if (root !== undefined) {\n return placeholderFileUrl(modulePath, root)\n }\n return require('url').pathToFileURL(resolveAbsolutePath(modulePath)).href\n}\nContext.prototype.F = resolveFileUrl\n"],"names":["path","require","relativePathToRuntimeRoot","relative","RUNTIME_PUBLIC_PATH","relativePathToDistRoot","join","RELATIVE_ROOT_PATH","RUNTIME_ROOT","resolve","__filename","ABSOLUTE_ROOT","resolveAbsolutePath","modulePath","Context","prototype","P","resolveFileUrl","root","undefined","placeholderFileUrl","pathToFileURL","href","F"],"mappings":"AAAA,oDAAoD,GAMpD,MAAMA,OAAOC,QAAQ;AAErB,MAAMC,4BAA4BF,KAAKG,QAAQ,CAACC,qBAAqB;AACrE,8CAA8C;AAC9C,MAAMC,yBAAyBL,KAAKM,IAAI,CACtCJ,2BACAK;AAEF,MAAMC,eAAeR,KAAKS,OAAO,CAACC,YAAYR;AAC9C,mGAAmG;AACnG,MAAMS,gBAAgBX,KAAKS,OAAO,CAACC,YAAYL;AAE/C;;;;;;;CAOC,GACD,SAASO,oBAAoBC,UAAmB;IAC9C,IAAIA,YAAY;QACd,OAAOb,KAAKM,IAAI,CAACK,eAAeE;IAClC;IACA,OAAOF;AACT;AACAG,QAAQC,SAAS,CAACC,CAAC,GAAGJ;AAEtB;;;;;;;;;;CAUC,GACD,SAASK,eAAeJ,UAAkB,EAAEK,IAAa;IACvD,IAAIA,SAASC,WAAW;QACtB,OAAOC,mBAAmBP,YAAYK;IACxC;IACA,OAAOjB,QAAQ,OAAOoB,aAAa,CAACT,oBAAoBC,aAAaS,IAAI;AAC3E;AACAR,QAAQC,SAAS,CAACQ,CAAC,GAAGN","ignoreList":[0]}},
8
+ {"offset": {"line": 743, "column": 0}, "map": {"version":3,"sources":["turbopack:///[turbopack]/nodejs/runtime/runtime-base.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n\n/// <reference path=\"../../shared/runtime/runtime-utils.ts\" />\n/// <reference path=\"../../shared-node/base-externals-utils.ts\" />\n/// <reference path=\"../../shared-node/node-externals-utils.ts\" />\n/// <reference path=\"./nodejs-globals.d.ts\" />\n\n/**\n * Base Node.js runtime shared between production and development.\n * Contains chunk loading, module caching, and other non-HMR functionality.\n */\n\nprocess.env.TURBOPACK = '1'\n\nconst url = require('url') as typeof import('url')\n\nconst moduleFactories: ModuleFactories = new Map()\nconst moduleCache: ModuleCache<Module> = new Map()\n\n/**\n * Returns an absolute path to the given module's id.\n */\nfunction resolvePathFromModule(\n this: TurbopackBaseContext<Module>,\n moduleId: string\n): string {\n const exported = this.r(moduleId)\n const exportedPath = exported?.default ?? exported\n if (typeof exportedPath !== 'string') {\n return exported as any\n }\n\n const strippedAssetPrefix = exportedPath.slice(ASSET_PREFIX.length)\n const resolved = path.resolve(RUNTIME_ROOT, strippedAssetPrefix)\n\n return url.pathToFileURL(resolved).href\n}\n\n/**\n * Exports a URL value. No suffix is added in Node.js runtime.\n */\nfunction exportUrl(\n this: TurbopackBaseContext<Module>,\n urlValue: string,\n id: ModuleId | undefined\n) {\n exportValue.call(this, urlValue, id)\n}\n\nfunction loadRuntimeChunk(sourcePath: ChunkPath, chunkData: ChunkData): void {\n if (typeof chunkData === 'string') {\n loadRuntimeChunkPath(sourcePath, chunkData)\n } else {\n loadRuntimeChunkPath(sourcePath, chunkData.path)\n }\n}\n\nconst loadedChunks = new Set<ChunkPath>()\nconst unsupportedLoadChunk = Promise.resolve(undefined)\nconst loadedChunk: Promise<void> = Promise.resolve(undefined)\nconst chunkCache = new Map<ChunkPath, Promise<void>>()\n\nfunction clearChunkCache() {\n chunkCache.clear()\n loadedChunks.clear()\n}\n\nfunction loadRuntimeChunkPath(\n sourcePath: ChunkPath,\n chunkPath: ChunkPath\n): void {\n if (!isJs(chunkPath)) {\n // We only support loading JS chunks in Node.js.\n // This branch can be hit when trying to load a CSS chunk.\n return\n }\n\n if (loadedChunks.has(chunkPath)) {\n return\n }\n\n try {\n const resolved = path.resolve(RUNTIME_ROOT, chunkPath)\n const chunkModules: CompressedModuleFactories = require(resolved)\n installCompressedModuleFactories(chunkModules, 0, moduleFactories)\n loadedChunks.add(chunkPath)\n } catch (cause) {\n let errorMessage = `Failed to load chunk ${chunkPath}`\n\n if (sourcePath) {\n errorMessage += ` from runtime for chunk ${sourcePath}`\n }\n\n const error = new Error(errorMessage, { cause })\n error.name = 'ChunkLoadError'\n throw error\n }\n}\n\nfunction loadChunkAsync<TModule extends Module>(\n this: TurbopackBaseContext<TModule>,\n chunkData: ChunkData\n): Promise<void> {\n const chunkPath = typeof chunkData === 'string' ? chunkData : chunkData.path\n if (!isJs(chunkPath)) {\n // We only support loading JS chunks in Node.js.\n // This branch can be hit when trying to load a CSS chunk.\n return unsupportedLoadChunk\n }\n\n let entry = chunkCache.get(chunkPath)\n if (entry === undefined) {\n try {\n // resolve to an absolute path to simplify `require` handling\n const resolved = path.resolve(RUNTIME_ROOT, chunkPath)\n // TODO: consider switching to `import()` to enable concurrent chunk loading and async file io\n // However this is incompatible with hot reloading (since `import` doesn't use the require cache)\n const chunkModules: CompressedModuleFactories = require(resolved)\n installCompressedModuleFactories(chunkModules, 0, moduleFactories)\n entry = loadedChunk\n } catch (cause) {\n const errorMessage = `Failed to load chunk ${chunkPath} from module ${this.m.id}`\n const error = new Error(errorMessage, { cause })\n error.name = 'ChunkLoadError'\n\n // Cache the failure promise, future requests will also get this same rejection\n entry = Promise.reject(error)\n }\n chunkCache.set(chunkPath, entry)\n }\n // TODO: Return an instrumented Promise that React can use instead of relying on referential equality.\n return entry\n}\ncontextPrototype.l = loadChunkAsync\n\nfunction loadChunkAsyncByUrl<TModule extends Module>(\n this: TurbopackBaseContext<TModule>,\n chunkUrl: string\n) {\n const path = url.fileURLToPath(new URL(chunkUrl, RUNTIME_ROOT)) as ChunkPath\n return loadChunkAsync.call(this, path)\n}\ncontextPrototype.L = loadChunkAsyncByUrl\n\n// Shared runtime primitive: the root that on-disk chunk paths are resolved\n// against. Used by the bundled wasm helper (exposed as `__turbopack_runtime_root__`).\ncontextPrototype.w = RUNTIME_ROOT\n\nconst regexJsUrl = /\\.js(?:\\?[^#]*)?(?:#.*)?$/\n/**\n * Checks if a given path/URL ends with .js, optionally followed by ?query or #fragment.\n */\nfunction isJs(chunkUrlOrPath: ChunkUrl | ChunkPath): boolean {\n return regexJsUrl.test(chunkUrlOrPath)\n}\n"],"names":["process","env","TURBOPACK","url","require","moduleFactories","Map","moduleCache","resolvePathFromModule","moduleId","exported","r","exportedPath","default","strippedAssetPrefix","slice","ASSET_PREFIX","length","resolved","path","resolve","RUNTIME_ROOT","pathToFileURL","href","exportUrl","urlValue","id","exportValue","call","loadRuntimeChunk","sourcePath","chunkData","loadRuntimeChunkPath","loadedChunks","Set","unsupportedLoadChunk","Promise","undefined","loadedChunk","chunkCache","clearChunkCache","clear","chunkPath","isJs","has","chunkModules","installCompressedModuleFactories","add","cause","errorMessage","error","Error","name","loadChunkAsync","entry","get","m","reject","set","contextPrototype","l","loadChunkAsyncByUrl","chunkUrl","path1","fileURLToPath","URL","L","w","regexJsUrl","chunkUrlOrPath","test"],"mappings":"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","ignoreList":[0]}},
9
+ {"offset": {"line": 858, "column": 0}, "map": {"version":3,"sources":["turbopack:///[turbopack]/nodejs/runtime/build-base.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n\n/// <reference path=\"./runtime-base.ts\" />\n\n/**\n * Production Node.js runtime.\n * Uses ModuleWithDirection and simple module instantiation without HMR support.\n */\n\n// moduleCache and moduleFactories are declared in runtime-base.ts\n\n// this is read in runtime-utils.ts so it creates a module with direction for hmr\ncreateModuleWithDirectionFlag = true\n\ninterface TurbopackNodeBuildContext\n extends TurbopackBaseContext<ModuleWithDirection> {\n R: ResolvePathFromModule\n x: ExternalRequire\n y: ExternalImport\n C: typeof clearChunkCache\n}\n\nconst nodeContextPrototype = Context.prototype as TurbopackNodeBuildContext\n\nnodeContextPrototype.q = exportUrl\nnodeContextPrototype.M = moduleFactories\n// Cast moduleCache to ModuleWithDirection for production mode\nnodeContextPrototype.c = moduleCache as ModuleCache<ModuleWithDirection>\nnodeContextPrototype.R = resolvePathFromModule\nnodeContextPrototype.C = clearChunkCache\n\nfunction instantiateModule(\n id: ModuleId,\n sourceType: SourceType,\n sourceData: SourceData\n): ModuleWithDirection {\n const moduleFactory = moduleFactories.get(id)\n if (typeof moduleFactory !== 'function') {\n // This can happen if modules incorrectly handle HMR disposes/updates,\n // e.g. when they keep a `setTimeout` around which still executes old code\n // and contains e.g. a `require(\"something\")` call.\n throw new Error(factoryNotAvailableMessage(id, sourceType, sourceData))\n }\n\n const module: ModuleWithDirection = createModuleWithDirection(id)\n const exports = module.exports\n moduleCache.set(id, module)\n\n const context =\n new (Context as any as ContextConstructor<ModuleWithDirection>)(\n module,\n exports\n )\n // NOTE(alexkirsz) This can fail when the module encounters a runtime error.\n try {\n moduleFactory(context, module, exports)\n } catch (error) {\n module.error = error as any\n throw error\n }\n\n ;(module as any).loaded = true\n if (module.namespaceObject && module.exports !== module.namespaceObject) {\n // in case of a circular dependency: cjs1 -> esm2 -> cjs1\n interopEsm(module.exports, module.namespaceObject)\n }\n\n return module\n}\n\n/**\n * Retrieves a module from the cache, or instantiate it if it is not cached.\n */\n// @ts-ignore\nfunction getOrInstantiateModuleFromParent(\n id: ModuleId,\n sourceModule: ModuleWithDirection\n): ModuleWithDirection {\n const module = moduleCache.get(id) as ModuleWithDirection | undefined\n\n if (module) {\n if (module.error) {\n throw module.error\n }\n\n return module\n }\n\n return instantiateModule(id, SourceType.Parent, sourceModule.id)\n}\n\n/**\n * Instantiates a runtime module.\n */\nfunction instantiateRuntimeModule(\n chunkPath: ChunkPath,\n moduleId: ModuleId\n): ModuleWithDirection {\n return instantiateModule(moduleId, SourceType.Runtime, chunkPath)\n}\n\n/**\n * Retrieves a module from the cache, or instantiate it as a runtime module if it is not cached.\n */\n// @ts-ignore TypeScript doesn't separate this module space from the browser runtime\nfunction getOrInstantiateRuntimeModule(\n chunkPath: ChunkPath,\n moduleId: ModuleId\n): ModuleWithDirection {\n const module = moduleCache.get(moduleId) as ModuleWithDirection | undefined\n\n if (module) {\n if (module.error) {\n throw module.error\n }\n return module\n }\n\n return instantiateRuntimeModule(chunkPath, moduleId)\n}\n\nmodule.exports = (sourcePath: ChunkPath) => ({\n m: (id: ModuleId) => getOrInstantiateRuntimeModule(sourcePath, id),\n c: (chunkData: ChunkData) => loadRuntimeChunk(sourcePath, chunkData),\n})\n"],"names":["createModuleWithDirectionFlag","nodeContextPrototype","Context","prototype","q","exportUrl","M","moduleFactories","c","moduleCache","R","resolvePathFromModule","C","clearChunkCache","instantiateModule","id","sourceType","sourceData","moduleFactory","get","Error","factoryNotAvailableMessage","module1","createModuleWithDirection","exports","set","context","error","loaded","namespaceObject","interopEsm","getOrInstantiateModuleFromParent","sourceModule","SourceType","Parent","instantiateRuntimeModule","chunkPath","moduleId","Runtime","getOrInstantiateRuntimeModule","module","sourcePath","m","chunkData","loadRuntimeChunk"],"mappings":"AAAA,oDAAoD,GAEpD,0CAA0C;AAE1C;;;CAGC,GAED,kEAAkE;AAElE,iFAAiF;AACjFA,gCAAgC;AAUhC,MAAMC,uBAAuBC,QAAQC,SAAS;AAE9CF,qBAAqBG,CAAC,GAAGC;AACzBJ,qBAAqBK,CAAC,GAAGC;AACzB,8DAA8D;AAC9DN,qBAAqBO,CAAC,GAAGC;AACzBR,qBAAqBS,CAAC,GAAGC;AACzBV,qBAAqBW,CAAC,GAAGC;AAEzB,SAASC,kBACPC,EAAY,EACZC,UAAsB,EACtBC,UAAsB;IAEtB,MAAMC,gBAAgBX,gBAAgBY,GAAG,CAACJ;IAC1C,IAAI,OAAOG,kBAAkB,YAAY;QACvC,sEAAsE;QACtE,0EAA0E;QAC1E,mDAAmD;QACnD,MAAM,IAAIE,MAAMC,2BAA2BN,IAAIC,YAAYC;IAC7D;IAEA,MAAMK,UAA8BC,0BAA0BR;IAC9D,MAAMS,UAAUF,QAAOE,OAAO;IAC9Bf,YAAYgB,GAAG,CAACV,IAAIO;IAEpB,MAAMI,UACJ,IAAKxB,QACHoB,SACAE;IAEJ,4EAA4E;IAC5E,IAAI;QACFN,cAAcQ,SAASJ,SAAQE;IACjC,EAAE,OAAOG,OAAO;QACdL,QAAOK,KAAK,GAAGA;QACf,MAAMA;IACR;;IAEEL,QAAeM,MAAM,GAAG;IAC1B,IAAIN,QAAOO,eAAe,IAAIP,QAAOE,OAAO,KAAKF,QAAOO,eAAe,EAAE;QACvE,yDAAyD;QACzDC,WAAWR,QAAOE,OAAO,EAAEF,QAAOO,eAAe;IACnD;IAEA,OAAOP;AACT;AAEA;;CAEC,GACD,aAAa;AACb,SAASS,iCACPhB,EAAY,EACZiB,YAAiC;IAEjC,MAAMV,UAASb,YAAYU,GAAG,CAACJ;IAE/B,IAAIO,SAAQ;QACV,IAAIA,QAAOK,KAAK,EAAE;YAChB,MAAML,QAAOK,KAAK;QACpB;QAEA,OAAOL;IACT;IAEA,OAAOR,kBAAkBC,IAAIkB,WAAWC,MAAM,EAAEF,aAAajB,EAAE;AACjE;AAEA;;CAEC,GACD,SAASoB,yBACPC,SAAoB,EACpBC,QAAkB;IAElB,OAAOvB,kBAAkBuB,UAAUJ,WAAWK,OAAO,EAAEF;AACzD;AAEA;;CAEC,GACD,oFAAoF;AACpF,SAASG,8BACPH,SAAoB,EACpBC,QAAkB;IAElB,MAAMf,UAASb,YAAYU,GAAG,CAACkB;IAE/B,IAAIf,SAAQ;QACV,IAAIA,QAAOK,KAAK,EAAE;YAChB,MAAML,QAAOK,KAAK;QACpB;QACA,OAAOL;IACT;IAEA,OAAOa,yBAAyBC,WAAWC;AAC7C;AAEAG,OAAOhB,OAAO,GAAG,CAACiB,aAA0B,CAAC;QAC3CC,GAAG,CAAC3B,KAAiBwB,8BAA8BE,YAAY1B;QAC/DP,GAAG,CAACmC,YAAyBC,iBAAiBH,YAAYE;IAC5D,CAAC","ignoreList":[0]}}]
10
+ }
e-commerce/.next/server/chunks/ssr/_0lbshynybzfwm._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[[27641,a=>{var b=a.i(7997),c=a.i(717),d=a.i(67228);let e=(0,c.cache)(async function(a){return(await (0,d.f)(a)).now}),f=(0,c.cache)(async function(){return(await (0,d.f)()).formats});var g=a.i(30543);let h=(0,c.cache)(async function(a){return(await (0,d.f)(a)).timeZone});async function i(a){return h(a?.locale)}let j=(0,c.cache)(async function(a){var b=await (0,d.f)(a);if(!b.messages)throw Error("No messages found. Have you configured them correctly? See https://next-intl.dev/docs/configuration#messages");return b.messages});async function k(a){return j(a?.locale)}let l=(0,c.cache)(async function(){return(await (0,d.f)()).locale});async function m({formats:a,locale:c,messages:d,now:h,timeZone:j,...n}){return(0,b.jsx)(g.default,{formats:void 0===a?await f():a,locale:c??await l(),messages:void 0===d?await k():d,now:h??await e(),timeZone:j??await i(),...n})}var n=a.i(3109),o=c["use".trim()];function p(a){var b=(0,d.f)();try{return o(b)}catch(b){throw b instanceof TypeError&&b.message.includes("Cannot read properties of null (reading 'use')")?Error(`\`${a}\` is not callable within an async component. Please refer to https://next-intl.dev/docs/environments/server-client-components#async-components`,{cause:b}):b}}var q=a.i(30878),r=a.i(32776);a.i(70396);var s=a.i(73727),t=a.i(11884),u=a.i(13743),v=a.i(92737),w=a.i(43917);async function x(){return t.V.map(a=>({locale:a}))}async function y({params:a}){let{locale:b}=await a;(0,n.O)(t.V,b)||(0,s.notFound)();let c=await (0,r.f)({locale:b,namespace:"home"});return{title:c("title"),description:c("hero")}}async function z({children:a,params:c}){let{locale:d}=await c,e=null!=d&&""!==d&&(0,n.O)(t.V,d)?d:t.J,f=await k({locale:e}),g=await (0,r.f)({locale:e,namespace:"home"});return(0,b.jsx)(m,{locale:e,messages:f,children:(0,b.jsx)("html",{lang:e,suppressHydrationWarning:!0,children:(0,b.jsx)("body",{children:(0,b.jsxs)("div",{className:"flex flex-col min-h-screen",children:[(0,b.jsxs)("header",{className:"flex items-center justify-between p-4 border-b",children:[(0,b.jsx)("span",{className:"text-lg font-semibold",children:g("lang")}),(0,b.jsx)(A,{currentLocale:e})]}),(0,b.jsx)("main",{className:"flex-1 p-6 max-w-3xl mx-auto w-full",children:a}),(0,b.jsx)("footer",{className:"text-center p-4 text-sm text-muted-foreground border-t",children:"E-Commerce Store"})]})})})})}function A({currentLocale:a}){let c=p("useLocale").locale;return!function(...[a]){let b=p("useTranslations");(0,q.f)(b,a)}("home"),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(w.f,{variant:"en"===c?"default":"outline",size:"sm",asChild:!0,children:(0,b.jsxs)("a",{href:"/en",className:"flex items-center gap-1",children:[(0,b.jsx)(u.f,{className:"h-4 w-4"}),"EN"]})}),(0,b.jsx)(w.f,{variant:"bn"===c?"default":"outline",size:"sm",asChild:!0,children:(0,b.jsxs)("a",{href:"/bn",className:"flex items-center gap-1",children:["BN",(0,b.jsx)(v.f,{className:"h-4 w-4"})]})})]})}a.s(["default",0,z,"generateMetadata",0,y,"generateStaticParams",0,x],27641)},52265,a=>{let b=(0,a.i(11857).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/node_modules/next-intl/dist/esm/production/shared/NextIntlClientProvider.js from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/next-intl/dist/esm/production/shared/NextIntlClientProvider.js","default");a.s(["default",0,b])},30543,a=>{var b=a.i(52265);a.n(b)}],30419,function(a){a.n(a.i(27641))}];
2
+
3
+ //# sourceMappingURL=_0lbshynybzfwm._.js.map
e-commerce/.next/server/chunks/ssr/_0lbshynybzfwm._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../node_modules/next-intl/dist/esm/production/server/react-server/getConfigNow.js","../../../../node_modules/next-intl/dist/esm/production/server/react-server/getFormats.js","../../../../node_modules/next-intl/dist/esm/production/react-server/NextIntlClientProviderServer.js","../../../../node_modules/next-intl/dist/esm/production/server/react-server/getTimeZone.js","../../../../node_modules/next-intl/dist/esm/production/server/react-server/getMessages.js","../../../../node_modules/next-intl/dist/esm/production/server/react-server/getLocale.js","../../../../app/%5Blocale%5D/layout.tsx","../../../../node_modules/next-intl/dist/esm/production/shared/use.js","../../../../node_modules/next-intl/dist/esm/production/react-server/useConfig.js","../../../../node_modules/next-intl/dist/esm/production/react-server/useLocale.js","../../../../node_modules/next-intl/dist/esm/production/react-server/useTranslations.js","../../../../node_modules/next-intl/dist/esm/production/shared/NextIntlClientProvider.js/__nextjs-internal-proxy.mjs%20%7B%20server%20%3D%3E%20%22%5Bproject%5D/node_modules/next-intl/dist/esm/production/shared/NextIntlClientProvider.js%22%20%7D"],"sourcesContent":["import{cache as t}from\"react\";import o from\"./getConfig.js\";const r=t((async function(t){return(await o(t)).now}));export{r as default};\n","import{cache as t}from\"react\";import o from\"./getConfig.js\";const r=t((async function(){return(await o()).formats}));export{r as default};\n","import e from\"../server/react-server/getConfigNow.js\";import r from\"../server/react-server/getFormats.js\";import t from\"../shared/NextIntlClientProvider.js\";import{jsx as o}from\"react/jsx-runtime\";import s from\"../server/react-server/getTimeZone.js\";import a from\"../server/react-server/getMessages.js\";import m from\"../server/react-server/getLocale.js\";async function i({formats:i,locale:n,messages:v,now:f,timeZone:c,...g}){return o(t,{formats:void 0===i?await r():i,locale:n??await m(),messages:void 0===v?await a():v,now:f??await e(),timeZone:c??await s(),...g})}export{i as default};\n","import{cache as t}from\"react\";import n from\"./getConfig.js\";const o=t((async function(t){return(await n(t)).timeZone}));async function r(t){return o(t?.locale)}export{r as default};\n","import{cache as e}from\"react\";import t from\"./getConfig.js\";function o(e){if(!e.messages)throw new Error(\"No messages found. Have you configured them correctly? See https://next-intl.dev/docs/configuration#messages\");return e.messages}const n=e((async function(e){return o(await t(e))}));async function r(e){return n(e?.locale)}export{r as default,o as getMessagesFromConfig};\n","import{cache as t}from\"react\";import o from\"./getConfig.js\";const r=t((async function(){return(await o()).locale}));export{r as default};\n","import { NextIntlClientProvider, hasLocale, useLocale, useTranslations } from \"next-intl\";\nimport { getTranslations, getMessages } from \"next-intl/server\";\nimport { notFound } from \"next/navigation\";\nimport type { Locale } from \"../../i18n/routing\";\nimport { locales, defaultLocale } from \"../../i18n/routing\";\nimport { ArrowLeft, ArrowRight } from \"lucide-react\";\nimport { Button } from \"@/components/ui/button\";\nimport type { Metadata } from \"next\";\nimport \"../globals.css\";\n\ntype Props = {\n children: React.ReactNode;\n params: Promise<{ locale: string }>;\n};\n\nexport async function generateStaticParams() {\n return locales.map((locale) => ({ locale }));\n}\n\nexport async function generateMetadata({\n params,\n}: {\n params: Promise<{ locale: string }>;\n}): Promise<Metadata> {\n const { locale } = await params;\n if (!hasLocale(locales, locale)) notFound();\n const t = await getTranslations({ locale: locale as Locale, namespace: \"home\" });\n return {\n title: t(\"title\"),\n description: t(\"hero\"),\n };\n}\n\nexport default async function LocaleLayout({ children, params }: Props) {\n const { locale } = await params;\n // During Next.js instant / prefetch validation the segment can be rendered\n // without a resolved locale (params.locale may be undefined). In that case we\n // fall back to the default locale so the segment renders; an invalid locale\n // that is present but not in the list still 404s via generateMetadata.\n const resolvedLocale: Locale =\n locale != null && locale !== \"\" && hasLocale(locales, locale as Locale)\n ? (locale as Locale)\n : defaultLocale;\n\n const messages = await getMessages({ locale: resolvedLocale });\n const t = await getTranslations({ locale: resolvedLocale, namespace: \"home\" });\n\n // NOTE: NextIntlClientProvider is placed OUTSIDE <html>/<body> per the official\n // next-intl App Router guide. This is the documented safe position and lets the\n // server-side provider read the request locale directly from the request config\n // (which already received the explicit params.locale). We pass locale + messages\n // explicitly so the provider's server wrapper never falls back to getLocaleCached().\n return (\n <NextIntlClientProvider locale={resolvedLocale} messages={messages}>\n <html lang={resolvedLocale} suppressHydrationWarning>\n <body>\n <div className=\"flex flex-col min-h-screen\">\n <header className=\"flex items-center justify-between p-4 border-b\">\n <span className=\"text-lg font-semibold\">{t(\"lang\")}</span>\n <LocaleSwitcher currentLocale={resolvedLocale} />\n </header>\n <main className=\"flex-1 p-6 max-w-3xl mx-auto w-full\">{children}</main>\n <footer className=\"text-center p-4 text-sm text-muted-foreground border-t\">\n E-Commerce Store\n </footer>\n </div>\n </body>\n </html>\n </NextIntlClientProvider>\n );\n}\n\nfunction LocaleSwitcher({ currentLocale }: { currentLocale: Locale }) {\n const locale = useLocale();\n const t = useTranslations(\"home\");\n\n return (\n <div className=\"flex items-center gap-2\">\n <Button\n variant={locale === \"en\" ? \"default\" : \"outline\"}\n size=\"sm\"\n asChild\n >\n <a href=\"/en\" className=\"flex items-center gap-1\">\n <ArrowLeft className=\"h-4 w-4\" />\n EN\n </a>\n </Button>\n <Button\n variant={locale === \"bn\" ? \"default\" : \"outline\"}\n size=\"sm\"\n asChild\n >\n <a href=\"/bn\" className=\"flex items-center gap-1\">\n BN\n <ArrowRight className=\"h-4 w-4\" />\n </a>\n </Button>\n </div>\n );\n}\n","import*as r from\"react\";var a=r[\"use\".trim()];export{a as default};\n","import e from\"../server/react-server/getConfig.js\";import n from\"../shared/use.js\";function r(r){return function(e,r){try{return n(r)}catch(n){throw n instanceof TypeError&&n.message.includes(\"Cannot read properties of null (reading 'use')\")?new Error(`\\`${e}\\` is not callable within an async component. Please refer to https://next-intl.dev/docs/environments/server-client-components#async-components`,{cause:n}):n}}(r,e())}export{r as default};\n","import e from\"./useConfig.js\";function o(){return e(\"useLocale\").locale}export{o as default};\n","import r from\"../server/react-server/getServerTranslator.js\";import e from\"./useConfig.js\";function s(...[s]){const t=e(\"useTranslations\");return r(t,s)}export{s as default};\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nimport { registerClientReference } from \"react-server-dom-turbopack/server\";\nexport default registerClientReference(\n function() { throw new Error(\"Attempted to call the default export of [project]/node_modules/next-intl/dist/esm/production/shared/NextIntlClientProvider.js from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.\"); },\n \"[project]/node_modules/next-intl/dist/esm/production/shared/NextIntlClientProvider.js\",\n \"default\",\n);\n"],"names":["r","t","now","Error"],"mappings":"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","ignoreList":[0,1,2,3,4,5,7,8,9,10,11]}
e-commerce/.next/server/chunks/ssr/_17ysuo3e-5t0j._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[[86180,a=>{var b=a.i(7997),c=a.i(95936),d=a.i(32776),e=a.i(92737),f=a.i(43917);async function g({params:a}){let{locale:h}=await a,i=await (0,d.f)({locale:h,namespace:"home"}),j=`/${h}/category/men-tshirts`;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("h1",{className:"text-3xl font-bold tracking-tight",children:i("title")}),(0,b.jsx)("p",{className:"mt-3 text-muted-foreground text-lg",children:i("hero")}),(0,b.jsxs)("div",{className:"mt-6 flex gap-3",children:[(0,b.jsx)(c.default,{href:j,children:(0,b.jsxs)(f.f,{children:[i("catalog")," ",(0,b.jsx)(e.f,{className:"ml-2 h-4 w-4"})]})}),(0,b.jsx)(f.f,{variant:"outline",children:i("about")})]})]})}a.s(["default",0,g])},64240,(a,b,c)=>{function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},97647,a=>{var b=a.i(84707);a.n(b)},95936,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0});var d={default:function(){return i},useLinkStatus:function(){return h.useLinkStatus}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(64240),g=a.r(7997),h=f._(a.r(97647));function i(a){let b=a.legacyBehavior,c="string"==typeof a.children||"number"==typeof a.children||"string"==typeof a.children?.type,d=a.children?.type?.$$typeof===Symbol.for("react.client.reference");return!b||c||d||(a.children?.type?.$$typeof===Symbol.for("react.lazy")?console.error("Using a Lazy Component as a direct child of `<Link legacyBehavior>` from a Server Component is not supported. If you need legacyBehavior, wrap your Lazy Component in a Client Component that renders the Link's `<a>` tag."):console.error("Using a Server Component as a direct child of `<Link legacyBehavior>` is not supported. If you need legacyBehavior, wrap your Server Component in a Client Component that renders the Link's `<a>` tag.")),(0,g.jsx)(h.default,{...a})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)}],24980,function(a){a.n(a.i(86180))},84707,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(11857);a.n(d("[project]/node_modules/next/dist/client/app-dir/link.js"))}];
2
+
3
+ //# sourceMappingURL=_17ysuo3e-5t0j._.js.map
e-commerce/.next/server/chunks/ssr/_17ysuo3e-5t0j._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../app/%5Blocale%5D/page.tsx","../../../../node_modules/%40swc/helpers/cjs/_interop_require_wildcard.cjs","../../../../node_modules/next/src/client/app-dir/link.tsx","../../../../node_modules/next/src/client/app-dir/link.react-server.tsx","../../../../node_modules/next/dist/client/app-dir/link.js/__nextjs-internal-proxy.cjs%20%7B%20server%20%3D%3E%20%22%5Bproject%5D/node_modules/next/dist/client/app-dir/link.js%22%20%7D"],"sourcesContent":["import Link from \"next/link\";\nimport { getTranslations } from \"next-intl/server\";\nimport { ArrowRight } from \"lucide-react\";\nimport { Button } from \"@/components/ui/button\";\nimport type { Locale } from \"../../i18n/routing\";\n\nexport default async function HomePage({ params }: { params: Promise<{ locale: string }> }) {\n const { locale } = await params;\n const t = await getTranslations({ locale: locale as Locale, namespace: \"home\" });\n const catalogHref = `/${locale}/category/men-tshirts`;\n return (\n <>\n <h1 className=\"text-3xl font-bold tracking-tight\">{t(\"title\")}</h1>\n <p className=\"mt-3 text-muted-foreground text-lg\">{t(\"hero\")}</p>\n <div className=\"mt-6 flex gap-3\">\n <Link href={catalogHref}>\n <Button>{t(\"catalog\")} <ArrowRight className=\"ml-2 h-4 w-4\" /></Button>\n </Link>\n <Button variant=\"outline\">{t(\"about\")}</Button>\n </div>\n </>\n );\n}","\"use strict\";\n\nfunction _getRequireWildcardCache(nodeInterop) {\n if (typeof WeakMap !== \"function\") return null;\n\n var cacheBabelInterop = new WeakMap();\n var cacheNodeInterop = new WeakMap();\n\n return (_getRequireWildcardCache = function(nodeInterop) {\n return nodeInterop ? cacheNodeInterop : cacheBabelInterop;\n })(nodeInterop);\n}\nfunction _interop_require_wildcard(obj, nodeInterop) {\n if (!nodeInterop && obj && obj.__esModule) return obj;\n if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") return { default: obj };\n\n var cache = _getRequireWildcardCache(nodeInterop);\n\n if (cache && cache.has(obj)) return cache.get(obj);\n\n var newObj = { __proto__: null };\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n if (desc && (desc.get || desc.set)) Object.defineProperty(newObj, key, desc);\n else newObj[key] = obj[key];\n }\n }\n\n newObj.default = obj;\n\n if (cache) cache.set(obj, newObj);\n\n return newObj;\n}\nexports._ = _interop_require_wildcard;\n","'use client'\n\nimport React, { createContext, useContext, useOptimistic, useRef } from 'react'\nimport type { UrlObject } from 'url'\nimport { formatUrl } from '../../shared/lib/router/utils/format-url'\nimport { AppRouterContext } from '../../shared/lib/app-router-context.shared-runtime'\nimport { useMergedRef } from '../use-merged-ref'\nimport { isAbsoluteUrl } from '../../shared/lib/utils'\nimport { addBasePath } from '../add-base-path'\nimport { ScrollBehavior } from '../components/router-reducer/router-reducer-types'\nimport type { PENDING_LINK_STATUS } from '../components/links'\nimport {\n IDLE_LINK_STATUS,\n mountLinkInstance,\n onNavigationIntent,\n unmountLinkForCurrentNavigation,\n unmountPrefetchableInstance,\n type LinkInstance,\n} from '../components/links'\nimport { isLocalURL } from '../../shared/lib/router/utils/is-local-url'\nimport {\n FetchStrategy,\n type PrefetchTaskFetchStrategy,\n} from '../components/segment-cache/types'\nimport type { RouterTransitionPrefetchIntent } from '../router-transition-types'\n\ntype Url = string | UrlObject\ntype RequiredKeys<T> = {\n [K in keyof T]-?: {} extends Pick<T, K> ? never : K\n}[keyof T]\ntype OptionalKeys<T> = {\n [K in keyof T]-?: {} extends Pick<T, K> ? K : never\n}[keyof T]\n\ntype OnNavigateEventHandler = (event: { preventDefault: () => void }) => void\n\ntype InternalLinkProps = {\n /**\n * **Required**. The path or URL to navigate to. It can also be an object (similar to `URL`).\n *\n * @example\n * ```tsx\n * // Navigate to /dashboard:\n * <Link href=\"/dashboard\">Dashboard</Link>\n *\n * // Navigate to /about?name=test:\n * <Link href={{ pathname: '/about', query: { name: 'test' } }}>\n * About\n * </Link>\n * ```\n *\n * @remarks\n * - For external URLs, use a fully qualified URL such as `https://...`.\n * - In the App Router, dynamic routes must not include bracketed segments in `href`.\n */\n href: Url\n\n /**\n * @deprecated v10.0.0: `href` props pointing to a dynamic route are\n * automatically resolved and no longer require the `as` prop.\n */\n as?: Url\n\n /**\n * Replace the current `history` state instead of adding a new URL into the stack.\n *\n * @defaultValue `false`\n *\n * @example\n * ```tsx\n * <Link href=\"/about\" replace>\n * About (replaces the history state)\n * </Link>\n * ```\n */\n replace?: boolean\n\n /**\n * Whether to override the default scroll behavior. If `true`, Next.js attempts to maintain\n * the scroll position if the newly navigated page is still visible. If not, it scrolls to the top.\n *\n * If `false`, Next.js will not modify the scroll behavior at all.\n *\n * @defaultValue `true`\n *\n * @example\n * ```tsx\n * <Link href=\"/dashboard\" scroll={false}>\n * No auto scroll\n * </Link>\n * ```\n */\n scroll?: boolean\n\n /**\n * Update the path of the current page without rerunning data fetching methods\n * like `getStaticProps`, `getServerSideProps`, or `getInitialProps`.\n *\n * @remarks\n * `shallow` only applies to the Pages Router. For the App Router, see the\n * [following documentation](https://nextjs.org/docs/app/building-your-application/routing/linking-and-navigating#using-the-native-history-api).\n *\n * @defaultValue `false`\n *\n * @example\n * ```tsx\n * <Link href=\"/blog\" shallow>\n * Shallow navigation\n * </Link>\n * ```\n */\n shallow?: boolean\n\n /**\n * Forces `Link` to pass its `href` to the child component. Useful if the child is a custom\n * component that wraps an `<a>` tag, or if you're using certain styling libraries.\n *\n * @defaultValue `false`\n *\n * @example\n * ```tsx\n * <Link href=\"/dashboard\" passHref legacyBehavior>\n * <MyStyledAnchor>Dashboard</MyStyledAnchor>\n * </Link>\n * ```\n */\n passHref?: boolean\n\n /**\n * Prefetch the page in the background.\n * Any `<Link />` that is in the viewport (initially or through scroll) will be prefetched.\n * Prefetch can be disabled by passing `prefetch={false}`.\n *\n * @remarks\n * Prefetching is only enabled in production.\n *\n * - In the **App Router**:\n * - `\"auto\"`, `null`, `undefined` (default): Prefetch behavior depends on static vs dynamic routes:\n * - Static routes: fully prefetched\n * - Dynamic routes: partial prefetch to the nearest segment with a `loading.js`\n * - `true`: Always prefetch the full route and data.\n * - `false`: Disable prefetching on both viewport and hover.\n * - In the **Pages Router**:\n * - `true` (default): Prefetches the route and data in the background on viewport or hover.\n * - `false`: Prefetch only on hover, not on viewport.\n *\n * @defaultValue `true` (Pages Router) or `null` (App Router)\n *\n * @example\n * ```tsx\n * <Link href=\"/dashboard\" prefetch={false}>\n * Dashboard\n * </Link>\n * ```\n */\n prefetch?: boolean | 'auto' | null\n\n /**\n * (unstable) Switch to a full prefetch on hover. Effectively the same as\n * updating the prefetch prop to `true` in a mouse event.\n */\n unstable_dynamicOnHover?: boolean\n\n /**\n * The active locale is automatically prepended in the Pages Router. `locale` allows for providing\n * a different locale, or can be set to `false` to opt out of automatic locale behavior.\n *\n * @remarks\n * Note: locale only applies in the Pages Router and is ignored in the App Router.\n *\n * @example\n * ```tsx\n * // Use the 'fr' locale:\n * <Link href=\"/about\" locale=\"fr\">\n * About (French)\n * </Link>\n *\n * // Disable locale prefix:\n * <Link href=\"/about\" locale={false}>\n * About (no locale prefix)\n * </Link>\n * ```\n */\n locale?: string | false\n\n /**\n * Enable legacy link behavior.\n *\n * @deprecated This will be removed in a future version\n * @defaultValue `false`\n * @see https://github.com/vercel/next.js/commit/489e65ed98544e69b0afd7e0cfc3f9f6c2b803b7\n */\n legacyBehavior?: boolean\n\n /**\n * Optional event handler for when the mouse pointer is moved onto the `<Link>`.\n */\n onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement>\n\n /**\n * Optional event handler for when the `<Link>` is touched.\n */\n onTouchStart?: React.TouchEventHandler<HTMLAnchorElement>\n\n /**\n * Optional event handler for when the `<Link>` is clicked.\n */\n onClick?: React.MouseEventHandler<HTMLAnchorElement>\n\n /**\n * Optional event handler for when the `<Link>` is navigated.\n */\n onNavigate?: OnNavigateEventHandler\n\n /**\n * Transition types to apply when navigating. These types are passed to\n * [`React.addTransitionType`](https://react.dev/reference/react/addTransitionType)\n * inside the navigation transition, enabling\n * [`<ViewTransition>`](https://react.dev/reference/react/ViewTransition) components\n * to apply different animations based on the type of navigation.\n *\n * @example\n * ```tsx\n * <Link href=\"/about\" transitionTypes={['slide-in']}>About</Link>\n * ```\n */\n transitionTypes?: string[]\n}\n\n// TODO-APP: Include the full set of Anchor props\n// adding this to the publicly exported type currently breaks existing apps\n\n// `RouteInferType` is a stub here to avoid breaking `typedRoutes` when the type\n// isn't generated yet. It will be replaced when type generation runs.\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport type LinkProps<RouteInferType = any> = InternalLinkProps\ntype LinkPropsRequired = RequiredKeys<LinkProps>\ntype LinkPropsOptional = OptionalKeys<Omit<InternalLinkProps, 'locale'>>\n\nfunction isModifiedEvent(event: React.MouseEvent): boolean {\n const eventTarget = event.currentTarget as HTMLAnchorElement | SVGAElement\n const target = eventTarget.getAttribute('target')\n return (\n (target && target !== '_self') ||\n event.metaKey ||\n event.ctrlKey ||\n event.shiftKey ||\n event.altKey || // triggers resource download\n (event.nativeEvent && event.nativeEvent.which === 2)\n )\n}\n\nfunction linkClicked(\n e: React.MouseEvent,\n href: string,\n linkInstanceRef: React.RefObject<LinkInstance | null>,\n replace?: boolean,\n scroll?: boolean,\n onNavigate?: OnNavigateEventHandler,\n transitionTypes?: string[],\n prefetchIntent: RouterTransitionPrefetchIntent = 'none'\n): void {\n if (typeof window !== 'undefined') {\n const { nodeName } = e.currentTarget\n\n // anchors inside an svg have a lowercase nodeName\n const isAnchorNodeName = nodeName.toUpperCase() === 'A'\n if (\n (isAnchorNodeName && isModifiedEvent(e)) ||\n e.currentTarget.hasAttribute('download')\n ) {\n // ignore click for browser’s default behavior\n return\n }\n\n if (!isLocalURL(href)) {\n if (replace) {\n // browser default behavior does not replace the history state\n // so we need to do it manually\n e.preventDefault()\n location.replace(href)\n }\n\n // ignore click for browser’s default behavior\n return\n }\n\n e.preventDefault()\n\n if (onNavigate) {\n let isDefaultPrevented = false\n\n onNavigate({\n preventDefault: () => {\n isDefaultPrevented = true\n },\n })\n\n if (isDefaultPrevented) {\n return\n }\n }\n\n const { navigate } =\n // TODO(browser-variant): migrate to a .ts/.browser.ts split so the browser bundle drops the server branch; see scripts/generate-browser-variant-aliases.mjs\n // ast-grep-ignore: no-typeof-window-require-tsx\n require('../components/navigator') as typeof import('../components/navigator')\n\n navigate(\n href,\n replace ? 'replace' : 'push',\n scroll === false ? ScrollBehavior.NoScroll : ScrollBehavior.Default,\n linkInstanceRef.current,\n transitionTypes,\n prefetchIntent\n )\n }\n}\n\nfunction formatStringOrUrl(urlObjOrString: UrlObject | string): string {\n if (typeof urlObjOrString === 'string') {\n return urlObjOrString\n }\n\n return formatUrl(urlObjOrString)\n}\n\n/**\n * A React component that extends the HTML `<a>` element to provide\n * [prefetching](https://nextjs.org/docs/app/building-your-application/routing/linking-and-navigating#2-prefetching)\n * and client-side navigation. This is the primary way to navigate between routes in Next.js.\n *\n * @remarks\n * - Prefetching is only enabled in production.\n *\n * @see https://nextjs.org/docs/app/api-reference/components/link\n */\nexport default function LinkComponent(\n props: LinkProps & {\n children: React.ReactNode\n ref: React.Ref<HTMLAnchorElement>\n }\n) {\n const [linkStatus, setOptimisticLinkStatus] = useOptimistic(IDLE_LINK_STATUS)\n\n let children: React.ReactNode\n\n const linkInstanceRef = useRef<LinkInstance | null>(null)\n\n const {\n href: hrefProp,\n as: asProp,\n children: childrenProp,\n prefetch: prefetchProp = null,\n passHref,\n replace,\n shallow,\n scroll,\n onClick,\n onMouseEnter: onMouseEnterProp,\n onTouchStart: onTouchStartProp,\n legacyBehavior = false,\n onNavigate,\n transitionTypes,\n ref: forwardedRef,\n unstable_dynamicOnHover,\n ...restProps\n } = props\n\n children = childrenProp\n\n if (\n legacyBehavior &&\n (typeof children === 'string' || typeof children === 'number')\n ) {\n children = <a>{children}</a>\n }\n\n const router = React.useContext(AppRouterContext)\n\n const prefetchEnabled = prefetchProp !== false\n const prefetchIntent: RouterTransitionPrefetchIntent =\n prefetchProp === false ? 'none' : prefetchProp === true ? 'full' : 'auto'\n\n const fetchStrategy =\n prefetchIntent !== 'none'\n ? getFetchStrategyFromPrefetchIntent(prefetchIntent)\n : // TODO: it makes no sense to assign a fetchStrategy when prefetching is disabled.\n FetchStrategy.PPR\n\n if (process.env.NODE_ENV !== 'production') {\n function createPropError(args: {\n key: string\n expected: string\n actual: string\n }) {\n return new Error(\n `Failed prop type: The prop \\`${args.key}\\` expects a ${args.expected} in \\`<Link>\\`, but got \\`${args.actual}\\` instead.` +\n (typeof window !== 'undefined'\n ? \"\\nOpen your browser's console to view the Component stack trace.\"\n : '')\n )\n }\n\n // TypeScript trick for type-guarding:\n const requiredPropsGuard: Record<LinkPropsRequired, true> = {\n href: true,\n } as const\n const requiredProps: LinkPropsRequired[] = Object.keys(\n requiredPropsGuard\n ) as LinkPropsRequired[]\n requiredProps.forEach((key: LinkPropsRequired) => {\n if (key === 'href') {\n if (\n props[key] == null ||\n (typeof props[key] !== 'string' && typeof props[key] !== 'object')\n ) {\n throw createPropError({\n key,\n expected: '`string` or `object`',\n actual: props[key] === null ? 'null' : typeof props[key],\n })\n }\n } else {\n // TypeScript trick for type-guarding:\n const _: never = key\n }\n })\n\n // TypeScript trick for type-guarding:\n const optionalPropsGuard: Record<LinkPropsOptional, true> = {\n as: true,\n replace: true,\n scroll: true,\n shallow: true,\n passHref: true,\n prefetch: true,\n unstable_dynamicOnHover: true,\n onClick: true,\n onMouseEnter: true,\n onTouchStart: true,\n legacyBehavior: true,\n onNavigate: true,\n transitionTypes: true,\n } as const\n const optionalProps: LinkPropsOptional[] = Object.keys(\n optionalPropsGuard\n ) as LinkPropsOptional[]\n optionalProps.forEach((key: LinkPropsOptional) => {\n const valType = typeof props[key]\n\n if (key === 'as') {\n if (props[key] && valType !== 'string' && valType !== 'object') {\n throw createPropError({\n key,\n expected: '`string` or `object`',\n actual: valType,\n })\n }\n } else if (\n key === 'onClick' ||\n key === 'onMouseEnter' ||\n key === 'onTouchStart' ||\n key === 'onNavigate'\n ) {\n if (props[key] && valType !== 'function') {\n throw createPropError({\n key,\n expected: '`function`',\n actual: valType,\n })\n }\n } else if (\n key === 'replace' ||\n key === 'scroll' ||\n key === 'shallow' ||\n key === 'passHref' ||\n key === 'legacyBehavior' ||\n key === 'unstable_dynamicOnHover'\n ) {\n if (props[key] != null && valType !== 'boolean') {\n throw createPropError({\n key,\n expected: '`boolean`',\n actual: valType,\n })\n }\n } else if (key === 'prefetch') {\n if (\n props[key] != null &&\n valType !== 'boolean' &&\n props[key] !== 'auto'\n ) {\n throw createPropError({\n key,\n expected: '`boolean | \"auto\"`',\n actual: valType,\n })\n }\n } else if (key === 'transitionTypes') {\n if (props[key] != null && !Array.isArray(props[key])) {\n throw createPropError({\n key,\n expected: '`string[]`',\n actual: valType,\n })\n }\n } else {\n // TypeScript trick for type-guarding:\n const _: never = key\n }\n })\n }\n\n const resolvedHref = asProp || hrefProp\n const formattedHref = formatStringOrUrl(resolvedHref)\n\n if (process.env.NODE_ENV !== 'production') {\n const { warnOnce } =\n require('../../shared/lib/utils/warn-once') as typeof import('../../shared/lib/utils/warn-once')\n if (props.locale) {\n warnOnce(\n 'The `locale` prop is not supported in `next/link` while using the `app` router. Read more about app router internalization: https://nextjs.org/docs/app/building-your-application/routing/internationalization'\n )\n }\n if (!asProp) {\n let href: string | undefined\n if (typeof resolvedHref === 'string') {\n href = resolvedHref\n } else if (\n typeof resolvedHref === 'object' &&\n typeof resolvedHref.pathname === 'string'\n ) {\n href = resolvedHref.pathname\n }\n\n if (href) {\n const hasDynamicSegment = href\n .split('/')\n .some((segment) => segment.startsWith('[') && segment.endsWith(']'))\n\n if (hasDynamicSegment) {\n throw new Error(\n `Dynamic href \\`${href}\\` found in <Link> while using the \\`/app\\` router, this is not supported. Read more: https://nextjs.org/docs/messages/app-dir-dynamic-href`\n )\n }\n }\n }\n }\n\n // This will return the first child, if multiple are provided it will throw an error\n let child: any\n if (legacyBehavior) {\n if ((children as any)?.$$typeof === Symbol.for('react.lazy')) {\n throw new Error(\n `\\`<Link legacyBehavior>\\` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's \\`<a>\\` tag.`\n )\n }\n\n if (process.env.NODE_ENV === 'development') {\n if (onClick) {\n console.warn(\n `\"onClick\" was passed to <Link> with \\`href\\` of \\`${formattedHref}\\` but \"legacyBehavior\" was set. The legacy behavior requires onClick be set on the child of next/link`\n )\n }\n if (onMouseEnterProp) {\n console.warn(\n `\"onMouseEnter\" was passed to <Link> with \\`href\\` of \\`${formattedHref}\\` but \"legacyBehavior\" was set. The legacy behavior requires onMouseEnter be set on the child of next/link`\n )\n }\n try {\n child = React.Children.only(children)\n } catch (err) {\n if (!children) {\n throw new Error(\n `No children were passed to <Link> with \\`href\\` of \\`${formattedHref}\\` but one child is required https://nextjs.org/docs/messages/link-no-children`\n )\n }\n throw new Error(\n `Multiple children were passed to <Link> with \\`href\\` of \\`${formattedHref}\\` but only one child is supported https://nextjs.org/docs/messages/link-multiple-children` +\n (typeof window !== 'undefined'\n ? \" \\nOpen your browser's console to view the Component stack trace.\"\n : '')\n )\n }\n } else {\n child = React.Children.only(children)\n }\n } else {\n if (process.env.NODE_ENV === 'development') {\n if ((children as any)?.type === 'a') {\n throw new Error(\n 'Invalid <Link> with <a> child. Please remove <a> or use <Link legacyBehavior>.\\nLearn more: https://nextjs.org/docs/messages/invalid-new-link-with-extra-anchor'\n )\n }\n }\n }\n\n const childRef: any = legacyBehavior\n ? child && typeof child === 'object' && child.ref\n : forwardedRef\n\n // Capture the Owner Stack during render so dev-only warnings emitted later\n // at navigation time can be associated with the JSX that created\n // this <Link>.\n const ownerStack =\n process.env.NODE_ENV !== 'production' && process.env.__NEXT_CACHE_COMPONENTS\n ? // eslint-disable-next-line react-hooks/rules-of-hooks -- build time variables\n React.useMemo(() => {\n // Only capture when a warning might actually need it. Otherwise leave\n // it `undefined` so consumers can detect the opt-out and degrade\n // gracefully.\n if (fetchStrategy === FetchStrategy.Full) {\n return React.captureOwnerStack()\n }\n return undefined\n }, [fetchStrategy])\n : undefined\n\n // Use a callback ref to attach an IntersectionObserver to the anchor tag on\n // mount. In the future we will also use this to keep track of all the\n // currently mounted <Link> instances, e.g. so we can re-prefetch them after\n // a revalidation or refresh.\n const observeLinkVisibilityOnMount = React.useCallback(\n (element: HTMLAnchorElement | SVGAElement) => {\n if (router !== null) {\n linkInstanceRef.current = mountLinkInstance(\n element,\n formattedHref,\n router,\n fetchStrategy,\n prefetchEnabled,\n setOptimisticLinkStatus,\n ownerStack\n )\n }\n\n return () => {\n if (linkInstanceRef.current) {\n unmountLinkForCurrentNavigation(linkInstanceRef.current)\n linkInstanceRef.current = null\n }\n unmountPrefetchableInstance(element)\n }\n },\n [\n prefetchEnabled,\n formattedHref,\n router,\n fetchStrategy,\n setOptimisticLinkStatus,\n ownerStack,\n ]\n )\n\n const mergedRef = useMergedRef(observeLinkVisibilityOnMount, childRef)\n\n const childProps: {\n onTouchStart?: React.TouchEventHandler<HTMLAnchorElement>\n onMouseEnter: React.MouseEventHandler<HTMLAnchorElement>\n onClick: React.MouseEventHandler<HTMLAnchorElement>\n href?: string\n ref?: any\n } = {\n ref: mergedRef,\n onClick(e) {\n if (process.env.NODE_ENV !== 'production') {\n if (!e) {\n throw new Error(\n `Component rendered inside next/link has to pass click event to \"onClick\" prop.`\n )\n }\n }\n\n if (!legacyBehavior && typeof onClick === 'function') {\n onClick(e)\n }\n\n if (\n legacyBehavior &&\n child.props &&\n typeof child.props.onClick === 'function'\n ) {\n child.props.onClick(e)\n }\n\n if (!router) {\n return\n }\n if (e.defaultPrevented) {\n return\n }\n linkClicked(\n e,\n formattedHref,\n linkInstanceRef,\n replace,\n scroll,\n onNavigate,\n transitionTypes,\n prefetchIntent\n )\n },\n onMouseEnter(e) {\n if (!legacyBehavior && typeof onMouseEnterProp === 'function') {\n onMouseEnterProp(e)\n }\n\n if (\n legacyBehavior &&\n child.props &&\n typeof child.props.onMouseEnter === 'function'\n ) {\n child.props.onMouseEnter(e)\n }\n\n if (!router) {\n return\n }\n if (!prefetchEnabled || process.env.NODE_ENV === 'development') {\n return\n }\n\n const upgradeToDynamicPrefetch = unstable_dynamicOnHover === true\n onNavigationIntent(\n e.currentTarget as HTMLAnchorElement | SVGAElement,\n upgradeToDynamicPrefetch\n )\n },\n onTouchStart: process.env.__NEXT_LINK_NO_TOUCH_START\n ? undefined\n : function onTouchStart(e) {\n if (!legacyBehavior && typeof onTouchStartProp === 'function') {\n onTouchStartProp(e)\n }\n\n if (\n legacyBehavior &&\n child.props &&\n typeof child.props.onTouchStart === 'function'\n ) {\n child.props.onTouchStart(e)\n }\n\n if (!router) {\n return\n }\n if (!prefetchEnabled) {\n return\n }\n\n const upgradeToDynamicPrefetch = unstable_dynamicOnHover === true\n onNavigationIntent(\n e.currentTarget as HTMLAnchorElement | SVGAElement,\n upgradeToDynamicPrefetch\n )\n },\n }\n\n // If the url is absolute, we can bypass the logic to prepend the basePath.\n if (isAbsoluteUrl(formattedHref)) {\n childProps.href = formattedHref\n } else if (\n !legacyBehavior ||\n passHref ||\n (child.type === 'a' && !('href' in child.props))\n ) {\n childProps.href = addBasePath(formattedHref)\n }\n\n let link: React.ReactNode\n\n if (legacyBehavior) {\n if (process.env.NODE_ENV === 'development') {\n const { errorOnce } =\n require('../../shared/lib/utils/error-once') as typeof import('../../shared/lib/utils/error-once')\n errorOnce(\n '`legacyBehavior` is deprecated and will be removed in a future ' +\n 'release. A codemod is available to upgrade your components:\\n\\n' +\n 'npx @next/codemod@latest new-link .\\n\\n' +\n 'Learn more: https://nextjs.org/docs/app/building-your-application/upgrading/codemods#remove-a-tags-from-link-components'\n )\n }\n link = React.cloneElement(child, childProps)\n } else {\n link = (\n <a {...restProps} {...childProps}>\n {children}\n </a>\n )\n }\n\n return (\n <LinkStatusContext.Provider value={linkStatus}>\n {link}\n </LinkStatusContext.Provider>\n )\n}\n\nconst LinkStatusContext = createContext<\n typeof PENDING_LINK_STATUS | typeof IDLE_LINK_STATUS\n>(IDLE_LINK_STATUS)\n\nexport const useLinkStatus = () => {\n return useContext(LinkStatusContext)\n}\n\nfunction getFetchStrategyFromPrefetchIntent(\n prefetchIntent: Exclude<RouterTransitionPrefetchIntent, 'none'>\n): PrefetchTaskFetchStrategy {\n if (process.env.__NEXT_CACHE_COMPONENTS) {\n if (prefetchIntent === 'full') {\n return FetchStrategy.Full\n }\n\n // `\"auto\"`: the default mode, where we will prefetch partially if the link is in the viewport.\n prefetchIntent satisfies 'auto'\n return FetchStrategy.PPR\n } else {\n return prefetchIntent === 'auto'\n ? // We default to PPR, and we'll discover whether or not the route supports it with the initial prefetch.\n FetchStrategy.PPR\n : // In the old implementation without runtime prefetches, `prefetch={true}` (`'full'`) forces all dynamic\n // data to be prefetched, preserving backwards-compatibility.\n FetchStrategy.Full\n }\n}\n","import type { ComponentProps } from 'react'\nimport ClientLinkComponent, { type LinkProps, useLinkStatus } from './link'\n\nexport default function LinkComponent(\n props: ComponentProps<typeof ClientLinkComponent>\n) {\n const isLegacyBehavior = props.legacyBehavior\n const childIsHostComponent =\n typeof props.children === 'string' ||\n typeof props.children === 'number' ||\n typeof (props.children as any)?.type === 'string'\n const childIsClientComponent =\n (props.children as any)?.type?.$$typeof ===\n Symbol.for('react.client.reference')\n\n if (isLegacyBehavior && !childIsHostComponent && !childIsClientComponent) {\n if ((props.children as any)?.type?.$$typeof === Symbol.for('react.lazy')) {\n console.error(\n `Using a Lazy Component as a direct child of \\`<Link legacyBehavior>\\` from a Server Component is not supported. If you need legacyBehavior, wrap your Lazy Component in a Client Component that renders the Link's \\`<a>\\` tag.`\n )\n } else {\n console.error(\n `Using a Server Component as a direct child of \\`<Link legacyBehavior>\\` is not supported. If you need legacyBehavior, wrap your Server Component in a Client Component that renders the Link's \\`<a>\\` tag.`\n )\n }\n }\n\n return <ClientLinkComponent {...props} />\n}\n\nexport { type LinkProps, useLinkStatus }\n","// This file is generated by next-core EcmascriptClientReferenceModule.\nconst { createClientModuleProxy } = require(\"react-server-dom-turbopack/server\");\n\n__turbopack_context__.n(createClientModuleProxy(\"[project]/node_modules/next/dist/client/app-dir/link.js\"));\n"],"names":["HomePage","params","locale","t","namespace","catalogHref","className","href","variant","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_interop_require_wildcard","obj","__esModule","default","cache","has","get","newObj","__proto__","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","exports","_","LinkComponent","useLinkStatus","isModifiedEvent","event","eventTarget","currentTarget","target","getAttribute","metaKey","ctrlKey","shiftKey","altKey","nativeEvent","which","linkClicked","e","linkInstanceRef","replace","scroll","onNavigate","transitionTypes","prefetchIntent","window","nodeName","isAnchorNodeName","toUpperCase","hasAttribute","isLocalURL","preventDefault","location","isDefaultPrevented","navigate","require","ScrollBehavior","NoScroll","Default","current","formatStringOrUrl","urlObjOrString","formatUrl","props","linkStatus","setOptimisticLinkStatus","useOptimistic","IDLE_LINK_STATUS","children","useRef","hrefProp","as","asProp","childrenProp","prefetch","prefetchProp","passHref","shallow","onClick","onMouseEnter","onMouseEnterProp","onTouchStart","onTouchStartProp","legacyBehavior","ref","forwardedRef","unstable_dynamicOnHover","restProps","a","router","React","useContext","AppRouterContext","prefetchEnabled","fetchStrategy","getFetchStrategyFromPrefetchIntent","FetchStrategy","PPR","process","env","NODE_ENV","createPropError","args","Error","expected","actual","requiredPropsGuard","requiredProps","keys","forEach","optionalPropsGuard","optionalProps","valType","Array","isArray","resolvedHref","formattedHref","warnOnce","pathname","hasDynamicSegment","split","some","segment","startsWith","endsWith","child","$$typeof","Symbol","for","console","warn","Children","only","err","type","childRef","ownerStack","__NEXT_CACHE_COMPONENTS","useMemo","Full","captureOwnerStack","undefined","observeLinkVisibilityOnMount","useCallback","element","mountLinkInstance","unmountLinkForCurrentNavigation","unmountPrefetchableInstance","mergedRef","useMergedRef","childProps","defaultPrevented","upgradeToDynamicPrefetch","onNavigationIntent","__NEXT_LINK_NO_TOUCH_START","isAbsoluteUrl","addBasePath","link","errorOnce","cloneElement","LinkStatusContext","Provider","value","createContext","isLegacyBehavior","childIsHostComponent","childIsClientComponent","error","ClientLinkComponent","createClientModuleProxy","__turbopack_context__","n"],"mappings":"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","ignoreList":[1,3,4]}
e-commerce/.next/server/chunks/ssr/_next-internal_server_app_[locale]_page_actions_0paeoq307w67j.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[54710,(a,b,c)=>{}];
2
+
3
+ //# sourceMappingURL=_next-internal_server_app_%5Blocale%5D_page_actions_0paeoq307w67j.js.map
e-commerce/.next/server/chunks/ssr/_next-internal_server_app_[locale]_page_actions_0paeoq307w67j.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
e-commerce/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0zi5s8-psc_d2.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[51033,(a,b,c)=>{}];
2
+
3
+ //# sourceMappingURL=_next-internal_server_app__global-error_page_actions_0zi5s8-psc_d2.js.map
e-commerce/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0zi5s8-psc_d2.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
e-commerce/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0pt47yrisjoev.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[57665,(a,b,c)=>{}];
2
+
3
+ //# sourceMappingURL=_next-internal_server_app__not-found_page_actions_0pt47yrisjoev.js.map
e-commerce/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0pt47yrisjoev.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
e-commerce/.next/server/chunks/ssr/_next-internal_server_app_page_actions_0hhsz1jew5ls7.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[49901,(a,b,c)=>{}];
2
+
3
+ //# sourceMappingURL=_next-internal_server_app_page_actions_0hhsz1jew5ls7.js.map
e-commerce/.next/server/chunks/ssr/_next-internal_server_app_page_actions_0hhsz1jew5ls7.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
e-commerce/.next/server/chunks/ssr/app_[locale]_catalog_category_[slug]_page_tsx_0939vipbtohsa._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[82036,a=>{"use strict";var b=a.i(7997);a.i(70396);var c=a.i(73727),d=a.i(95936),e=a.i(32776),f=a.i(13743),g=a.i(43917),h=a.i(29171),i=a.i(40088),j=a.i(31778),k=a.i(15545),k=k,l=a.i(99749),m=a.i(20931),n=a.i(22886),o=a.i(93321),p=a.i(40110),q=a.i(11884);async function r(){return q.V.flatMap(a=>[{locale:a,slug:"men-tshirts"}])}async function s({params:a}){let{locale:b,slug:c}=await a,d=null!=b&&""!==b&&q.V.includes(b)?b:q.J,[f]=await j.f.select().from(k.categories).where((0,o.u)(k.categories.slug,c)).limit(1),g=f?"bn"===d?f.nameBn:f.nameEn:c,h=await (0,e.f)({locale:d,namespace:"catalog"});return{title:h("category.metaTitle",{title:g}),description:h("category.metaDescription")}}async function t({params:a}){let{locale:r,slug:s}=await a,u=null!=r&&""!==r&&q.V.includes(r)?r:q.J,v=await (0,e.f)({locale:u,namespace:"catalog"}),[w]=await j.f.select().from(k.categories).where((0,o.u)(k.categories.slug,s)).limit(1);w||(0,c.notFound)();let x="bn"===u?w.nameBn:w.nameEn,y=await j.f.select({product:l.f.products,variant:m.f.variants,inventory:n.f.inventory}).from(l.f.products).leftJoin(m.f.variants,(0,o.b)((0,o.u)(m.f.variants.productId,l.f.products.id),(0,o.u)(m.f.variants.isActive,!0))).leftJoin(n.f.inventory,(0,o.u)(n.f.inventory.variantId,m.f.variants.id)).where((0,o.b)((0,o.u)(l.f.products.status,"active"),(0,o.u)(l.f.products.categoryId,w.id))).limit(50),z=new Set;for(let a of y)a.variant&&a.inventory&&a.variant.isActive&&a.inventory.quantity-a.inventory.reserved>0&&z.add(a.product.id);let A=y.filter(a=>z.has(a.product.id)),B=new Map;for(let a of A)B.has(a.product.id)||B.set(a.product.id,{product:a.product,variant:a.variant,inventory:a.inventory});return(0,b.jsxs)("div",{className:"flex flex-col gap-6",children:[(0,b.jsx)("div",{className:"flex items-center gap-4 text-sm text-muted-foreground",children:(0,b.jsxs)(d.default,{href:`/${u}`,className:"inline-flex items-center gap-1",children:[(0,b.jsx)(f.f,{className:"h-4 w-4"}),v("back")]})}),(0,b.jsxs)("div",{className:"space-y-4",children:[" ",(0,b.jsx)("h1",{className:"text-3xl font-bold tracking-tight",children:x}),(0,b.jsx)("p",{className:"text-muted-foreground",children:v("category.hero")})]}),0===B.size?(0,b.jsx)("div",{className:"text-muted-foreground",children:v("category.empty")}):(0,b.jsx)("div",{className:"grid gap-4 sm:grid-cols-2",children:Array.from(B.values()).map(({product:a,variant:c,inventory:e})=>{let f="bn"===u?a.titleBn:a.titleEn,j=e?e.quantity-e.reserved:0;return(0,b.jsxs)(h.N,{children:[(0,b.jsxs)(h.Y,{children:[(0,b.jsx)(h.v,{className:"text-lg",children:f}),a.hsn&&(0,b.jsx)(h.u,{className:"flex items-center gap-2",children:(0,b.jsxs)(i.f,{variant:"secondary",children:["HSN ",a.hsn]})})]}),(0,b.jsxs)(h.O,{className:"space-y-3",children:[(0,b.jsx)("div",{className:"text-xl font-semibold",children:(0,p.f)(a.basePriceRupees,"bn"===u?"bn":"en",{showSymbol:!0})}),(0,b.jsx)("div",{className:"text-sm text-muted-foreground",children:j>0?`${j} ${v("units")}`:v("outOfStock")}),(0,b.jsx)(d.default,{href:`/${u}/products/${a.slug}`,className:"block",children:(0,b.jsx)(g.f,{className:"w-full",children:v("product.view")})})]})]},a.id)})}),(0,b.jsx)("div",{className:"text-sm text-muted-foreground text-center",children:v("category.footer")})]})}a.s(["default",0,t,"generateMetadata",0,s,"generateStaticParams",0,r],82036)},2781,function(a){a.n(a.i(82036))}];
2
+
3
+ //# sourceMappingURL=app_%5Blocale%5D_catalog_category_%5Bslug%5D_page_tsx_0939vipbtohsa._.js.map
e-commerce/.next/server/chunks/ssr/app_[locale]_catalog_category_[slug]_page_tsx_0939vipbtohsa._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../app/%5Blocale%5D/catalog/category/%5Bslug%5D/page.tsx"],"sourcesContent":["import { notFound } from \"next/navigation\";\nimport Link from \"next/link\";\nimport { getTranslations } from \"next-intl/server\";\nimport { ArrowLeft } from \"lucide-react\";\nimport { Button } from \"@/components/ui/button\";\nimport { Card, CardContent, CardDescription, CardHeader, CardTitle } from \"@/components/ui/card\";\nimport { Badge } from \"@/components/ui/badge\";\nimport type { Metadata } from \"next\";\nimport { db, schema } from \"@/db\";\nimport { eq, and, gt, isNull } from \"drizzle-orm\";\nimport { formatINR } from \"@/lib/format-inr\";\nimport { rupees } from \"@/lib/money\";\nimport type { Locale } from \"@/i18n/routing\";\nimport { locales, defaultLocale } from \"@/i18n/routing\";\n\ntype Props = {\n params: Promise<{ locale: string; slug: string }>;\n};\n\nexport async function generateStaticParams() {\n return locales.flatMap((locale) => [\n { locale, slug: \"men-tshirts\" },\n ]);\n}\n\nexport async function generateMetadata({ params }: { params: Promise<{ locale: string; slug: string }> }): Promise<Metadata> {\n const { locale, slug } = await params;\n const resolvedLocale: Locale =\n locale != null && locale !== \"\" && locales.includes(locale as Locale)\n ? (locale as Locale)\n : defaultLocale;\n const [categoryMeta] = await db\n .select()\n .from(schema.categories)\n .where(eq(schema.categories.slug, slug))\n .limit(1);\n const metaCategoryName = categoryMeta ? (resolvedLocale === \"bn\" ? categoryMeta.nameBn : categoryMeta.nameEn) : slug;\n const t = await getTranslations({ locale: resolvedLocale, namespace: \"catalog\" });\n return {\n title: t(\"category.metaTitle\", { title: metaCategoryName }),\n description: t(\"category.metaDescription\"),\n };\n}\n\nexport default async function CategoryPage({ params }: Props) {\n const { locale, slug } = await params;\n const resolvedLocale: Locale =\n locale != null && locale !== \"\" && locales.includes(locale as Locale)\n ? (locale as Locale)\n : defaultLocale;\n\n const t = await getTranslations({ locale: resolvedLocale, namespace: \"catalog\" });\n\n const [category] = await db\n .select()\n .from(schema.categories)\n .where(eq(schema.categories.slug, slug))\n .limit(1);\n\n if (!category) {\n notFound();\n }\n\n const categoryName = resolvedLocale === \"bn\" ? category.nameBn : category.nameEn;\n\n // Active products: status='active' and at least one active variant with stock.\n const products = await db\n .select({\n product: schema.products,\n variant: schema.variants,\n inventory: schema.inventory,\n })\n .from(schema.products)\n .leftJoin(schema.variants, and(eq(schema.variants.productId, schema.products.id), eq(schema.variants.isActive, true)))\n .leftJoin(schema.inventory, eq(schema.inventory.variantId, schema.variants.id))\n .where(\n and(\n eq(schema.products.status, \"active\"),\n eq(schema.products.categoryId, category.id)\n )\n )\n .limit(50);\n\n // Filter to products that have at least one active variant with stock.\n const inStockProductIds = new Set<string>();\n for (const row of products) {\n if (row.variant && row.inventory && row.variant.isActive && row.inventory.quantity - row.inventory.reserved > 0) {\n inStockProductIds.add(row.product.id);\n }\n }\n\n const listedProducts = products.filter((row) => inStockProductIds.has(row.product.id));\n\n // Build a unique product list with a representative variant price/stock.\n const productMap = new Map<string, { product: typeof products[0][\"product\"]; variant: typeof products[0][\"variant\"]; inventory: typeof products[0][\"inventory\"] }>();\n for (const row of listedProducts) {\n if (!productMap.has(row.product.id)) {\n productMap.set(row.product.id, { product: row.product, variant: row.variant, inventory: row.inventory });\n }\n }\n\n return (\n <div className=\"flex flex-col gap-6\">\n <div className=\"flex items-center gap-4 text-sm text-muted-foreground\">\n <Link href={`/${resolvedLocale}`} className=\"inline-flex items-center gap-1\">\n <ArrowLeft className=\"h-4 w-4\" />\n {t(\"back\")}\n </Link>\n </div>\n\n <div className=\"space-y-4\"> <h1 className=\"text-3xl font-bold tracking-tight\">{categoryName}</h1>\n\n\n\n <p className=\"text-muted-foreground\">{t(\"category.hero\")}</p>\n </div>\n\n {productMap.size === 0 ? (\n <div className=\"text-muted-foreground\">{t(\"category.empty\")}</div>\n ) : (\n <div className=\"grid gap-4 sm:grid-cols-2\">\n {Array.from(productMap.values()).map(({ product, variant, inventory }) => {\n const title = resolvedLocale === \"bn\" ? product.titleBn : product.titleEn;\n const available = inventory ? inventory.quantity - inventory.reserved : 0;\n return (\n <Card key={product.id}>\n <CardHeader>\n <CardTitle className=\"text-lg\">{title}</CardTitle>\n {product.hsn && (\n <CardDescription className=\"flex items-center gap-2\">\n <Badge variant=\"secondary\">HSN {product.hsn}</Badge>\n </CardDescription>\n )}\n </CardHeader>\n <CardContent className=\"space-y-3\">\n <div className=\"text-xl font-semibold\">{formatINR(product.basePriceRupees, resolvedLocale === \"bn\" ? \"bn\" : \"en\", { showSymbol: true })}</div>\n <div className=\"text-sm text-muted-foreground\">\n {available > 0 ? `${available} ${t(\"units\")}` : t(\"outOfStock\")}\n </div>\n <Link href={`/${resolvedLocale}/products/${product.slug}`} className=\"block\">\n <Button className=\"w-full\">{t(\"product.view\")}</Button>\n </Link>\n </CardContent>\n </Card>\n );\n })}\n </div>\n )}\n\n <div className=\"text-sm text-muted-foreground text-center\">\n {t(\"category.footer\")}\n </div>\n </div>\n );\n}\n"],"names":[],"mappings":"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"}
e-commerce/.next/server/chunks/ssr/app_[locale]_catalog_product_[slug]_page_tsx_05lombu12vunw._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[33644,a=>{"use strict";var b=a.i(7997);a.i(70396);var c=a.i(73727),d=a.i(95936),e=a.i(32776),f=a.i(13743),g=a.i(43917),h=a.i(29171),i=a.i(40088),j=a.i(31778),k=a.i(99749),l=a.i(20931),m=a.i(22886),n=a.i(93321),o=a.i(40110),p=a.i(11884);async function q(){let a=["classic-crew-neck-tshirt"];return p.V.flatMap(b=>a.map(a=>({locale:b,slug:a})))}async function r({params:a}){let{locale:b,slug:c}=await a,d=null!=b&&""!==b&&p.V.includes(b)?b:p.J,f=await (0,e.f)({locale:d,namespace:"catalog"});return{title:f("product.metaTitle",{title:c}),description:f("product.metaDescription")}}async function s({params:a}){let{locale:q,slug:r}=await a,t=null!=q&&""!==q&&p.V.includes(q)?q:p.J,u=await (0,e.f)({locale:t,namespace:"catalog"}),[v]=await j.f.select().from(k.f.products).where((0,n.u)(k.f.products.slug,r)).limit(1);v&&"active"===v.status||(0,c.notFound)();let w="bn"===t?v.titleBn:v.titleEn,x=v.description??"",y=await j.f.select({variant:l.f.variants,inventory:m.f.inventory}).from(l.f.variants).innerJoin(m.f.inventory,(0,n.u)(m.f.inventory.variantId,l.f.variants.id)).where((0,n.u)(l.f.variants.productId,v.id)),z=y.filter(a=>a.variant.isActive&&a.inventory.quantity-a.inventory.reserved>0),A=y.filter(a=>a.variant.isActive&&a.inventory.quantity-a.inventory.reserved<=0),B=y.reduce((a,b)=>a+b.inventory.quantity,0),C=y.reduce((a,b)=>a+b.inventory.reserved,0);return(0,b.jsxs)("div",{className:"flex flex-col gap-6",children:[(0,b.jsx)("div",{className:"flex items-center gap-4 text-sm text-muted-foreground",children:(0,b.jsxs)(d.default,{href:`/${t}/category/${(v.categoryId,"")}`,className:"inline-flex items-center gap-1",children:[(0,b.jsx)(f.f,{className:"h-4 w-4"}),u("back")]})}),(0,b.jsxs)("div",{className:"grid gap-6 md:grid-cols-2",children:[(0,b.jsxs)("div",{className:"space-y-6",children:[(0,b.jsxs)(h.N,{children:[(0,b.jsxs)(h.Y,{children:[(0,b.jsx)(h.v,{className:"text-2xl",children:w}),v.hsn&&(0,b.jsxs)(h.u,{className:"flex items-center gap-2",children:[(0,b.jsxs)(i.f,{variant:"secondary",children:["HSN ",v.hsn]}),u("hsn")]})]}),(0,b.jsxs)(h.O,{className:"space-y-4",children:[x&&(0,b.jsx)("p",{className:"text-muted-foreground",children:x}),(0,b.jsx)("div",{className:"text-2xl font-semibold",children:(0,o.f)(v.basePriceRupees,"bn"===t?"bn":"en",{showSymbol:!0})}),(0,b.jsxs)("div",{className:"text-sm text-muted-foreground",children:[u("available"),": ",B-C," ",u("units")]})]})]}),z.length>0&&(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsx)("h2",{className:"text-lg font-semibold",children:u("variants")}),(0,b.jsx)("div",{className:"flex flex-wrap gap-2",children:z.map(a=>{let c="bn"===t?a.variant.titleBn:a.variant.titleEn,d=a.inventory.quantity-a.inventory.reserved;return(0,b.jsxs)(i.f,{variant:"outline",className:"price-badge",children:[c," — ",(0,o.f)(a.variant.priceRupees,"bn"===t?"bn":"en",{showSymbol:!0})," · ",d>0?`${d} ${u("units")}`:u("outOfStock")]},a.variant.id)})})]})," ",A.length>0&&(0,b.jsx)("div",{className:"text-sm text-muted-foreground",children:u("variantsCount",{count:A.length})})]}),(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsx)(d.default,{href:`/${t}`,children:(0,b.jsx)(g.f,{variant:"outline",className:"w-full",children:u("buyNow")})}),(0,b.jsx)("p",{className:"text-sm text-muted-foreground text-center",children:u("shipping")})]})]})]})}a.s(["default",0,s,"dynamic",0,"force-dynamic","generateMetadata",0,r,"generateStaticParams",0,q])},2776,function(a){a.n(a.i(33644))}];
2
+
3
+ //# sourceMappingURL=app_%5Blocale%5D_catalog_product_%5Bslug%5D_page_tsx_05lombu12vunw._.js.map
e-commerce/.next/server/chunks/ssr/app_[locale]_catalog_product_[slug]_page_tsx_05lombu12vunw._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../app/%5Blocale%5D/catalog/product/%5Bslug%5D/page.tsx"],"sourcesContent":["import { notFound } from \"next/navigation\";\nimport Link from \"next/link\";\nimport { getTranslations } from \"next-intl/server\";\nimport { ArrowLeft } from \"lucide-react\";\nimport { Button } from \"@/components/ui/button\";\nimport { Card, CardContent, CardDescription, CardHeader, CardTitle } from \"@/components/ui/card\";\nimport { Badge } from \"@/components/ui/badge\";\nimport type { Metadata } from \"next\";\nimport { db, schema } from \"@/db\";\nimport { eq } from \"drizzle-orm\";\nimport { formatINR } from \"@/lib/format-inr\";\nimport { rupees } from \"@/lib/money\";\nimport type { Locale } from \"@/i18n/routing\";\nimport { locales, defaultLocale } from \"@/i18n/routing\";\n\n// Dynamic per-request product page. We use a per-segment `dynamic` here because\n// product slugs aren't enumerated at build time (and we don't want to hard-code\n// a product list in generateStaticParams). NOTE: `cacheComponents: true` in\n// next.config.ts is INCOMPATIBLE with per-segment `dynamic`, so the production\n// build needs cacheComponents OFF for this page to build. See the note in\n// next.config.ts. For dev, keep both on; for prod builds, drop cacheComponents\n// (or move this page to static via generateStaticParams over seeded slugs).\nexport const dynamic = \"force-dynamic\";\n\n\n\ntype Props = {\n params: Promise<{ locale: string; slug: string }>;\n};\n\nexport async function generateStaticParams() {\n // Static for seeded slugs only. When we add products dynamically we revisit\n // per-segment `dynamic` vs cacheComponents (see PROJECT_MEMORY §8 Phase 1 note).\n const seedSlugs = [\"classic-crew-neck-tshirt\"];\n return locales.flatMap((locale) =>\n seedSlugs.map((slug) => ({ locale, slug }))\n );\n}\n\nexport async function generateMetadata({ params }: { params: Promise<{ locale: string; slug: string }> }): Promise<Metadata> {\n const { locale, slug } = await params;\n const resolvedLocale: Locale =\n locale != null && locale !== \"\" && locales.includes(locale as Locale)\n ? (locale as Locale)\n : defaultLocale;\n const t = await getTranslations({ locale: resolvedLocale, namespace: \"catalog\" });\n return {\n title: t(\"product.metaTitle\", { title: slug }),\n description: t(\"product.metaDescription\"),\n };\n}\n\nexport default async function ProductPage({ params }: Props) {\n const { locale, slug } = await params;\n const resolvedLocale: Locale =\n locale != null && locale !== \"\" && locales.includes(locale as Locale)\n ? (locale as Locale)\n : defaultLocale;\n\n const t = await getTranslations({ locale: resolvedLocale, namespace: \"catalog\" });\n\n const [product] = await db\n .select()\n .from(schema.products)\n .where(eq(schema.products.slug, slug))\n .limit(1);\n\n if (!product || product.status !== \"active\") {\n notFound();\n }\n\n const title = resolvedLocale === \"bn\" ? product.titleBn : product.titleEn;\n const description = product.description ?? \"\";\n\n // Active variants with inventory\n const variants = await db\n .select({\n variant: schema.variants,\n inventory: schema.inventory,\n })\n .from(schema.variants)\n .innerJoin(schema.inventory, eq(schema.inventory.variantId, schema.variants.id))\n .where(eq(schema.variants.productId, product.id));\n\n const activeVariants = variants.filter(\n (row) => row.variant.isActive && row.inventory.quantity - row.inventory.reserved > 0\n );\n const outOfStockVariants = variants.filter(\n (row) => row.variant.isActive && row.inventory.quantity - row.inventory.reserved <= 0\n );\n\n const stockTotal = variants.reduce((sum, row) => sum + row.inventory.quantity, 0);\n const reservedTotal = variants.reduce((sum, row) => sum + row.inventory.reserved, 0);\n const availableCount = stockTotal - reservedTotal;\n\n return (\n <div className=\"flex flex-col gap-6\">\n <div className=\"flex items-center gap-4 text-sm text-muted-foreground\">\n <Link href={`/${resolvedLocale}/category/${product.categoryId ? \"\" : \"\"}`} className=\"inline-flex items-center gap-1\">\n <ArrowLeft className=\"h-4 w-4\" />\n {t(\"back\")}\n </Link>\n </div>\n\n <div className=\"grid gap-6 md:grid-cols-2\">\n <div className=\"space-y-6\">\n <Card>\n <CardHeader>\n <CardTitle className=\"text-2xl\">{title}</CardTitle>\n {product.hsn && (\n <CardDescription className=\"flex items-center gap-2\">\n <Badge variant=\"secondary\">HSN {product.hsn}</Badge>\n {t(\"hsn\")}\n </CardDescription>\n )}\n </CardHeader>\n <CardContent className=\"space-y-4\">\n {description && <p className=\"text-muted-foreground\">{description}</p>}\n\n <div className=\"text-2xl font-semibold\">{formatINR(product.basePriceRupees, resolvedLocale === \"bn\" ? \"bn\" : \"en\", { showSymbol: true })}</div>\n\n <div className=\"text-sm text-muted-foreground\">{t(\"available\")}: {availableCount} {t(\"units\")}</div>\n </CardContent>\n </Card>\n\n {activeVariants.length > 0 && (\n <div className=\"space-y-3\">\n <h2 className=\"text-lg font-semibold\">{t(\"variants\")}</h2>\n <div className=\"flex flex-wrap gap-2\">\n {activeVariants.map((row) => {\n const variantTitle =\n resolvedLocale === \"bn\" ? row.variant.titleBn : row.variant.titleEn;\n const inStock = row.inventory.quantity - row.inventory.reserved;\n return (\n <Badge key={row.variant.id} variant=\"outline\" className=\"price-badge\">\n {variantTitle}\n {\" — \"}\n {formatINR(row.variant.priceRupees, resolvedLocale === \"bn\" ? \"bn\" : \"en\", { showSymbol: true })}\n {\" · \"}\n {inStock > 0 ? `${inStock} ${t(\"units\")}` : t(\"outOfStock\")}\n </Badge>\n );\n })}\n </div>\n </div>\n )} {outOfStockVariants.length > 0 && (\n <div className=\"text-sm text-muted-foreground\">\n {t(\"variantsCount\", { count: outOfStockVariants.length })}\n </div>\n )}\n </div>\n\n <div className=\"space-y-4\">\n <Link href={`/${resolvedLocale}`}>\n <Button variant=\"outline\" className=\"w-full\">\n {t(\"buyNow\")}\n </Button>\n </Link>\n <p className=\"text-sm text-muted-foreground text-center\">\n {t(\"shipping\")}\n </p>\n </div>\n </div>\n </div>\n );\n}\n"],"names":["dynamic","generateStaticParams","seedSlugs","flatMap","locale","map","slug","generateMetadata","params","resolvedLocale","includes","t","namespace","title","description","ProductPage","product","select","from","products","where","limit","status","titleBn","titleEn","variants","variant","inventory","innerJoin","variantId","id","productId","activeVariants","filter","row","isActive","quantity","reserved","outOfStockVariants","stockTotal","reduce","sum","reservedTotal","availableCount","className","href","categoryId","hsn","basePriceRupees","showSymbol","length","variantTitle","inStock","priceRupees","count"],"mappings":"uDAAA,EAAA,CAAA,CAAA,OAAA,IAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAEA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OAAA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OACA,EAAA,EAAA,CAAA,CAAA,OAGA,EAAA,EAAA,CAAA,CAAA,OAiBO,eAAeC,IAGpB,IAAMC,EAAY,CAAC,2BAA2B,CAC9C,OAAO,EAAA,CAAO,CAACC,OAAO,CAAEC,AAAD,GACrBF,EAAUG,GAAG,CAAC,AAACC,IAAU,GAAD,KAAGF,OAAQE,EAAK,CAAC,EAE7C,CAEO,eAAeC,EAAiB,QAAEC,CAAM,CAAyD,EACtG,GAAM,QAAEJ,CAAM,MAAEE,CAAI,CAAE,CAAG,MAAME,EACzBC,EACM,MAAVL,GAA6B,KAAXA,GAAiB,EAAA,CAAO,CAACM,QAAQ,CAACN,GAC/CA,EACD,EAAA,CAAa,CACbO,EAAI,MAAM,CAAA,EAAA,EAAA,CAAA,AAAe,EAAC,CAAEP,OAAQK,EAAgBG,UAAW,SAAU,GAC/E,MAAO,CACLC,MAAOF,EAAE,oBAAqB,CAAEE,MAAOP,CAAK,GAC5CQ,YAAaH,EAAE,0BACjB,CACF,CAEe,eAAeI,EAAY,QAAEP,CAAM,CAAS,EACzD,GAAM,QAAEJ,CAAM,MAAEE,CAAI,CAAE,CAAG,MAAME,EACzBC,EACM,MAAVL,GAAkBA,AAAW,QAAM,EAAA,CAAO,CAACM,QAAQ,CAACN,GAC/CA,EACD,EAAA,CAAa,CAEbO,EAAI,MAAM,CAAA,EAAA,EAAA,CAAA,AAAe,EAAC,CAAEP,OAAQK,EAAgBG,UAAW,SAAU,GAEzE,CAACI,EAAQ,CAAG,MAAM,EAAA,CAAE,CACvBC,MAAM,GACNC,IAAI,CAAC,EAAA,CAAM,CAACC,QAAQ,EACpBC,KAAK,CAAC,CAAA,EAAA,EAAA,CAAA,AAAE,EAAC,EAAA,CAAM,CAACD,QAAQ,CAACb,IAAI,CAAEA,IAC/Be,KAAK,CAAC,EAEL,CAACL,GAA8B,UAAU,CAA7BA,EAAQM,MAAM,EAC5B,CAAA,EAAA,EAAA,QAAA,AAAQ,IAGV,IAAMT,EAAQJ,AAAmB,SAAOO,EAAQO,OAAO,CAAGP,EAAQQ,OAAO,CACnEV,EAAcE,EAAQF,WAAW,EAAI,GAGrCW,EAAW,MAAM,EAAA,CAAE,CACtBR,MAAM,CAAC,CACNS,QAAS,EAAA,CAAM,CAACD,QAAQ,CACxBE,UAAW,EAAA,CAAM,CAACA,SAAS,AAC7B,GACCT,IAAI,CAAC,EAAA,CAAM,CAACO,QAAQ,EACpBG,SAAS,CAAC,EAAA,CAAM,CAACD,SAAS,CAAE,CAAA,EAAA,EAAA,CAAA,AAAE,EAAC,EAAA,CAAM,CAACA,SAAS,CAACE,SAAS,CAAE,EAAA,CAAM,CAACJ,QAAQ,CAACK,EAAE,GAC7EV,KAAK,CAAC,CAAA,EAAA,EAAA,CAAE,AAAF,EAAG,EAAA,CAAM,CAACK,QAAQ,CAACM,SAAS,CAAEf,EAAQc,EAAE,GAE3CE,EAAiBP,EAASQ,MAAM,CACpC,AAACC,GAAQA,EAAIR,OAAO,CAACS,QAAQ,EAAID,EAAIP,SAAS,CAACS,QAAQ,CAAGF,EAAIP,SAAS,CAACU,QAAQ,CAAG,GAE/EC,EAAqBb,EAASQ,MAAM,CACxC,AAACC,GAAQA,EAAIR,OAAO,CAACS,QAAQ,EAAID,EAAIP,SAAS,CAACS,QAAQ,CAAGF,EAAIP,SAAS,CAACU,QAAQ,EAAI,GAGhFE,EAAad,EAASe,MAAM,CAAC,CAACC,EAAKP,IAAQO,EAAMP,EAAIP,SAAS,CAACS,QAAQ,CAAE,GACzEM,EAAgBjB,EAASe,MAAM,CAAC,CAACC,EAAKP,IAAQO,EAAMP,EAAIP,SAAS,CAACU,QAAQ,CAAE,GAGlF,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAIO,UAAU,gCACb,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAIA,UAAU,iEACb,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,OAAI,CAAA,CAACC,KAAM,CAAC,CAAC,EAAEpC,EAAe,UAAU,GAAEO,EAAQ8B,UAAU,CAAG,IAAK,CAAI,AAAJ,CAAMF,UAAU,2CACnF,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAS,CAAA,CAACA,UAAU,YACpBjC,EAAE,aAIP,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAIiC,UAAU,sCACb,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAIA,UAAU,sBACb,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,CAAI,CAAA,WACH,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,CAAU,CAAA,WACT,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAS,CAAA,CAACA,UAAU,oBAAY/B,IAChCG,EAAQ+B,GAAG,EACV,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,CAAe,CAAA,CAACH,UAAU,oCACzB,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,CAAK,CAAA,CAAClB,QAAQ,sBAAY,OAAKV,EAAQ+B,GAAG,IAC1CpC,EAAE,aAIT,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,CAAW,CAAA,CAACiC,UAAU,sBACpB9B,GAAe,CAAA,EAAA,EAAA,GAAA,EAAC,IAAA,CAAE8B,UAAU,iCAAyB9B,IAEtD,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAI8B,UAAU,kCAA0B,CAAA,EAAA,EAAA,CAAA,AAAS,EAAC5B,EAAQgC,eAAe,CAAqB,OAAnBvC,EAA0B,KAAO,KAAM,CAAEwC,YAAY,CAAK,KAEtI,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAIL,UAAU,0CAAiCjC,EAAE,aAAa,KA5BpD4B,EAAaG,EA4ByD,IAAE/B,EAAE,kBAIxFqB,EAAekB,MAAM,CAAG,GACvB,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAIN,UAAU,sBACb,CAAA,EAAA,EAAA,GAAA,EAAC,KAAA,CAAGA,UAAU,iCAAyBjC,EAAE,cACzC,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAIiC,UAAU,gCACZZ,EAAe3B,GAAG,CAAE6B,AAAD,IAClB,IAAMiB,EACe,OAAnB1C,EAA0ByB,EAAIR,OAAO,CAACH,OAAO,CAAGW,EAAIR,OAAO,CAACF,OAAO,CAC/D4B,EAAUlB,EAAIP,SAAS,CAACS,QAAQ,CAAGF,EAAIP,SAAS,CAACU,QAAQ,CAC/D,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,EAAA,CAAK,CAAA,CAAsBX,QAAQ,UAAUkB,UAAU,wBACrDO,EACA,MACA,CAAA,EAAA,EAAA,CAAA,AAAS,EAACjB,EAAIR,OAAO,CAAC2B,WAAW,CAAqB,OAAnB5C,EAA0B,KAAO,KAAM,CAAEwC,WAAY,EAAK,GAC7F,MACAG,EAAU,EAAI,CAAA,EAAGA,EAAQ,CAAC,EAAEzC,EAAE,SAAA,CAAU,CAAGA,EAAE,gBALpCuB,EAAIR,OAAO,CAACI,EAAE,CAQ9B,QAGJ,iBAAeQ,EAAmBY,MAAM,CAAG,GAC3C,CAAA,EAAA,EAAA,GAAA,EAAC,MAAA,CAAIN,UAAU,yCACZjC,EAAE,gBAAiB,CAAE2C,MAAOhB,EAAmBY,MAAM,AAAC,QAK7D,CAAA,EAAA,EAAA,IAAA,EAAC,MAAA,CAAIN,UAAU,sBACb,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,OAAI,CAAA,CAACC,KAAM,CAAC,CAAC,EAAEpC,EAAAA,CAAgB,UAC9B,CAAA,EAAA,EAAA,GAAA,EAAC,EAAA,CAAM,CAAA,CAACiB,QAAQ,UAAUkB,UAAU,kBACjCjC,EAAE,cAGP,CAAA,EAAA,EAAA,GAAA,EAAC,IAAA,CAAEiC,UAAU,qDACVjC,EAAE,sBAMf,gCA/IuB"}
e-commerce/.next/server/chunks/ssr/messages_bn_json_[json]_cjs_03v7tempcl6vx._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[13234,(a,b,c)=>{b.exports={home:{title:"ই-কমার্স স্টোর",hero:"ভারত জুড়ে ডেলিভারি",lang:"বাংলা",catalog:"ক্যাটালগ",about:"সম্পর্কে"},catalog:{back:"পিছনে",hsn:"এইচএসএন",available:"উপলব্ধ",units:"টুকরো",variants:"ভেরিয়েন্ট",variantsCount:"{{count}} ভেরিয়েন্ট(গুলো)",buyNow:"এখন কিনুন",shipping:"৯৯৯ টাকার উপরে বিনামূল্য ডেলিভারি। বিকাশে পেমেন্ট সম্ভব।",product:{view:"পণ্য দেখুন",metaTitle:"{{title}} — ই-কমার্স স্টোর",metaDescription:"ভারত জুড়ে বিকাশে পেমেন্ট দিয়ে {{title}} অনলাইনে কিনুন।"},category:{view:"বিভাগ দেখুন",metaTitle:"{{title}} — ই-কমার্স স্টোর",metaDescription:"ভারত জুড়ে বিকাশে পেমেন্ট দিয়ে {{title}} এর পণ্য দেখুন।",hero:"বিভাগ অনুযায়ী দেখুন",footer:"স্টকে থাকা পণ্য দেখানো হচ্ছে। ভারত জুড়ে বিকাশে পেমেন্ট সম্ভব।",empty:"এই বিভাগে এখন কোনো পণ্য নেই।"},outOfStock:"স্টক নেই"}}}];
2
+
3
+ //# sourceMappingURL=messages_bn_json_%5Bjson%5D_cjs_03v7tempcl6vx._.js.map
e-commerce/.next/server/chunks/ssr/messages_bn_json_[json]_cjs_03v7tempcl6vx._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../messages/bn.json.%5Bjson%5D.cjs/turbopack%3A///messages/bn.json"],"sourcesContent":["{\"home\":{\"title\":\"ই-কমার্স স্টোর\",\"hero\":\"ভারত জুড়ে ডেলিভারি\",\"lang\":\"বাংলা\",\"catalog\":\"ক্যাটালগ\",\"about\":\"সম্পর্কে\"},\"catalog\":{\"back\":\"পিছনে\",\"hsn\":\"এইচএসএন\",\"available\":\"উপলব্ধ\",\"units\":\"টুকরো\",\"variants\":\"ভেরিয়েন্ট\",\"variantsCount\":\"{{count}} ভেরিয়েন্ট(গুলো)\",\"buyNow\":\"এখন কিনুন\",\"shipping\":\"৯৯৯ টাকার উপরে বিনামূল্য ডেলিভারি। বিকাশে পেমেন্ট সম্ভব।\",\"product\":{\"view\":\"পণ্য দেখুন\",\"metaTitle\":\"{{title}} — ই-কমার্স স্টোর\",\"metaDescription\":\"ভারত জুড়ে বিকাশে পেমেন্ট দিয়ে {{title}} অনলাইনে কিনুন।\"},\"category\":{\"view\":\"বিভাগ দেখুন\",\"metaTitle\":\"{{title}} — ই-কমার্স স্টোর\",\"metaDescription\":\"ভারত জুড়ে বিকাশে পেমেন্ট দিয়ে {{title}} এর পণ্য দেখুন।\",\"hero\":\"বিভাগ অনুযায়ী দেখুন\",\"footer\":\"স্টকে থাকা পণ্য দেখানো হচ্ছে। ভারত জুড়ে বিকাশে পেমেন্ট সম্ভব।\",\"empty\":\"এই বিভাগে এখন কোনো পণ্য নেই।\"},\"outOfStock\":\"স্টক নেই\"}}"],"names":[],"mappings":""}
e-commerce/.next/server/chunks/ssr/messages_en_json_[json]_cjs_206072-e4clp3._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[45983,(a,b,c)=>{b.exports={home:{title:"E-Commerce Store",hero:"Domestic shipping across India",lang:"English",catalog:"Catalog",about:"About"},catalog:{back:"Back",hsn:"HSN",available:"Available",units:"units",variants:"Variants",variantsCount:"{{count}} variant(s)",buyNow:"Buy now",shipping:"Free shipping above ₹999. COD available.",product:{view:"View product",metaTitle:"{{title}} — E-Commerce Store",metaDescription:"Shop {{title}} online with cash on delivery across India."},category:{view:"View category",metaTitle:"{{title}} — E-Commerce Store",metaDescription:"Browse {{title}} products with cash on delivery across India.",hero:"Shop by category",footer:"Showing products in stock. COD available across India.",empty:"No products in this category right now."},outOfStock:"Out of stock"}}}];
2
+
3
+ //# sourceMappingURL=messages_en_json_%5Bjson%5D_cjs_206072-e4clp3._.js.map
e-commerce/.next/server/chunks/ssr/messages_en_json_[json]_cjs_206072-e4clp3._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../messages/en.json.%5Bjson%5D.cjs/turbopack%3A///messages/en.json"],"sourcesContent":["{\"home\":{\"title\":\"E-Commerce Store\",\"hero\":\"Domestic shipping across India\",\"lang\":\"English\",\"catalog\":\"Catalog\",\"about\":\"About\"},\"catalog\":{\"back\":\"Back\",\"hsn\":\"HSN\",\"available\":\"Available\",\"units\":\"units\",\"variants\":\"Variants\",\"variantsCount\":\"{{count}} variant(s)\",\"buyNow\":\"Buy now\",\"shipping\":\"Free shipping above ₹999. COD available.\",\"product\":{\"view\":\"View product\",\"metaTitle\":\"{{title}} — E-Commerce Store\",\"metaDescription\":\"Shop {{title}} online with cash on delivery across India.\"},\"category\":{\"view\":\"View category\",\"metaTitle\":\"{{title}} — E-Commerce Store\",\"metaDescription\":\"Browse {{title}} products with cash on delivery across India.\",\"hero\":\"Shop by category\",\"footer\":\"Showing products in stock. COD available across India.\",\"empty\":\"No products in this category right now.\"},\"outOfStock\":\"Out of stock\"}}"],"names":[],"mappings":""}
e-commerce/.next/server/chunks/ssr/node_modules_0dgn3fdparwxc._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ (()=>{"use strict";module.exports=[46058,(a,b,c)=>{function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},8591,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"useMergedRef",{enumerable:!0,get:function(){return e}});let d=a.r(72131);function e(a,b){let c=(0,d.useRef)(null),e=(0,d.useRef)(null);return(0,d.useCallback)(d=>{if(null===d){let a=c.current;a&&(c.current=null,a());let b=e.current;b&&(e.current=null,b())}else a&&(c.current=f(a,d)),b&&(e.current=f(b,d))},[a,b])}function f(a,b){if("function"!=typeof a)return a.current=b,()=>{a.current=null};{let c=a(b);return"function"==typeof c?c:()=>a(null)}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},68063,(a,b,c)=>{let d;Object.defineProperty(c,"__esModule",{value:!0});var e={getAssetToken:function(){return i},getAssetTokenQuery:function(){return j},getDeploymentId:function(){return g},getDeploymentIdQuery:function(){return h}};for(var f in e)Object.defineProperty(c,f,{enumerable:!0,get:e[f]});function g(){return d}function h(a=!1){return d?`${a?"&":"?"}dpl=${d}`:""}function i(){return!1}function j(a=!1){return""}d=void 0}]})();
2
+
3
+ //# sourceMappingURL=node_modules_0dgn3fdparwxc._.js.map
e-commerce/.next/server/chunks/ssr/node_modules_0dgn3fdparwxc._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../node_modules/%40swc/helpers/cjs/_interop_require_wildcard.cjs","../../../../node_modules/next/src/client/use-merged-ref.ts","../../../../node_modules/next/src/shared/lib/deployment-id.ts"],"sourcesContent":["\"use strict\";\n\nfunction _getRequireWildcardCache(nodeInterop) {\n if (typeof WeakMap !== \"function\") return null;\n\n var cacheBabelInterop = new WeakMap();\n var cacheNodeInterop = new WeakMap();\n\n return (_getRequireWildcardCache = function(nodeInterop) {\n return nodeInterop ? cacheNodeInterop : cacheBabelInterop;\n })(nodeInterop);\n}\nfunction _interop_require_wildcard(obj, nodeInterop) {\n if (!nodeInterop && obj && obj.__esModule) return obj;\n if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") return { default: obj };\n\n var cache = _getRequireWildcardCache(nodeInterop);\n\n if (cache && cache.has(obj)) return cache.get(obj);\n\n var newObj = { __proto__: null };\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n if (desc && (desc.get || desc.set)) Object.defineProperty(newObj, key, desc);\n else newObj[key] = obj[key];\n }\n }\n\n newObj.default = obj;\n\n if (cache) cache.set(obj, newObj);\n\n return newObj;\n}\nexports._ = _interop_require_wildcard;\n","import { useCallback, useRef, type Ref } from 'react'\n\n// This is a compatibility hook to support React 18 and 19 refs.\n// In 19, a cleanup function from refs may be returned.\n// In 18, returning a cleanup function creates a warning.\n// Since we take userspace refs, we don't know ahead of time if a cleanup function will be returned.\n// This implements cleanup functions with the old behavior in 18.\n// We know refs are always called alternating with `null` and then `T`.\n// So a call with `null` means we need to call the previous cleanup functions.\nexport function useMergedRef<TElement>(\n refA: Ref<TElement>,\n refB: Ref<TElement>\n): Ref<TElement> {\n const cleanupA = useRef<(() => void) | null>(null)\n const cleanupB = useRef<(() => void) | null>(null)\n\n // NOTE: In theory, we could skip the wrapping if only one of the refs is non-null.\n // (this happens often if the user doesn't pass a ref to Link/Form/Image)\n // But this can cause us to leak a cleanup-ref into user code (previously via `<Link legacyBehavior>`),\n // and the user might pass that ref into ref-merging library that doesn't support cleanup refs\n // (because it hasn't been updated for React 19)\n // which can then cause things to blow up, because a cleanup-returning ref gets called with `null`.\n // So in practice, it's safer to be defensive and always wrap the ref, even on React 19.\n return useCallback(\n (current: TElement | null): void => {\n if (current === null) {\n const cleanupFnA = cleanupA.current\n if (cleanupFnA) {\n cleanupA.current = null\n cleanupFnA()\n }\n const cleanupFnB = cleanupB.current\n if (cleanupFnB) {\n cleanupB.current = null\n cleanupFnB()\n }\n } else {\n if (refA) {\n cleanupA.current = applyRef(refA, current)\n }\n if (refB) {\n cleanupB.current = applyRef(refB, current)\n }\n }\n },\n [refA, refB]\n )\n}\n\nfunction applyRef<TElement>(\n refA: NonNullable<Ref<TElement>>,\n current: TElement\n) {\n if (typeof refA === 'function') {\n const cleanup = refA(current)\n if (typeof cleanup === 'function') {\n return cleanup\n } else {\n return () => refA(null)\n }\n } else {\n refA.current = current\n return () => {\n refA.current = null\n }\n }\n}\n","let deploymentId: string | undefined\n\nif (typeof window !== 'undefined') {\n deploymentId = document.documentElement.dataset.dplId\n // Immediately remove the attribute to prevent hydration errors (the dplId was inserted into the\n // HTML only), React isn't aware of it at all.\n document.documentElement.removeAttribute('data-dpl-id')\n} else {\n // Client side: replaced with globalThis.NEXT_DEPLOYMENT_ID\n // Server side: left as is or replaced with a string or replaced with false\n deploymentId = process.env.NEXT_DEPLOYMENT_ID || undefined\n}\n\nexport function getDeploymentId(): string | undefined {\n return deploymentId\n}\n\nexport function getDeploymentIdQuery(ampersand = false): string {\n let id = getDeploymentId()\n if (id) {\n return `${ampersand ? '&' : '?'}dpl=${id}`\n }\n return ''\n}\n\nexport function getAssetToken(): string | undefined {\n return process.env.NEXT_SUPPORTS_IMMUTABLE_ASSETS\n ? undefined\n : process.env.NEXT_DEPLOYMENT_ID\n}\n\nexport function getAssetTokenQuery(ampersand = false): string {\n let id = getAssetToken()\n if (id) {\n return `${ampersand ? '&' : '?'}dpl=${id}`\n }\n return ''\n}\n"],"names":["_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_interop_require_wildcard","obj","__esModule","default","cache","has","get","newObj","__proto__","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","exports","_","useMergedRef","refA","refB","cleanupA","useRef","cleanupB","useCallback","current","cleanupFnA","cleanupFnB","applyRef","cleanup","getAssetToken","getAssetTokenQuery","getDeploymentId","getDeploymentIdQuery","deploymentId","window","document","documentElement","dataset","dplId","removeAttribute","process","env","NEXT_DEPLOYMENT_ID","undefined","ampersand","id","NEXT_SUPPORTS_IMMUTABLE_ASSETS"],"mappings":"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","ignoreList":[0,1,2]}
e-commerce/.next/server/chunks/ssr/node_modules_0gxlxpuufujz9._.js ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ module.exports=[[71029,(a,b,c)=>{c._=function(a){return a&&a.__esModule?a:{default:a}}},25556,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return f}}),a.r(71029);let d=a.r(7997);a.r(717);let e=a.r(98860),f=function(){return(0,d.jsxs)("html",{id:"__next_error__",children:[(0,d.jsxs)("head",{children:[(0,d.jsx)("title",{children:"500: This page couldn’t load"}),(0,d.jsx)("style",{dangerouslySetInnerHTML:{__html:e.errorThemeCss}})]}),(0,d.jsx)("body",{children:(0,d.jsx)("div",{style:e.errorStyles.container,children:(0,d.jsxs)("div",{style:e.errorStyles.card,children:[(0,d.jsx)(e.WarningIcon,{}),(0,d.jsx)("h1",{style:e.errorStyles.title,children:"This page couldn’t load"}),(0,d.jsx)("p",{style:e.errorStyles.message,children:"A server error occurred. Reload to try again."}),(0,d.jsx)("form",{style:e.errorStyles.form,children:(0,d.jsx)("button",{type:"submit",style:e.errorStyles.button,children:"Reload"})})]})})})]})};("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},98860,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0});var d={WarningIcon:function(){return i},errorStyles:function(){return g},errorThemeCss:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});a.r(71029);let f=a.r(7997);a.r(717);let g={container:{fontFamily:'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',height:"100vh",display:"flex",alignItems:"center",justifyContent:"center"},card:{marginTop:"-32px",maxWidth:"325px",padding:"32px 28px",textAlign:"left"},icon:{marginBottom:"24px"},title:{fontSize:"24px",fontWeight:500,letterSpacing:"-0.02em",lineHeight:"32px",margin:"0 0 12px 0",color:"var(--next-error-title)"},message:{fontSize:"14px",fontWeight:400,lineHeight:"21px",margin:"0 0 20px 0",color:"var(--next-error-message)"},form:{margin:0},buttonGroup:{display:"flex",gap:"8px",alignItems:"center"},button:{display:"inline-flex",alignItems:"center",justifyContent:"center",height:"32px",padding:"0 12px",fontSize:"14px",fontWeight:500,lineHeight:"20px",borderRadius:"6px",cursor:"pointer",color:"var(--next-error-btn-text)",background:"var(--next-error-btn-bg)",border:"var(--next-error-btn-border)"},buttonSecondary:{display:"inline-flex",alignItems:"center",justifyContent:"center",height:"32px",padding:"0 12px",fontSize:"14px",fontWeight:500,lineHeight:"20px",borderRadius:"6px",cursor:"pointer",color:"var(--next-error-btn-secondary-text)",background:"var(--next-error-btn-secondary-bg)",border:"var(--next-error-btn-secondary-border)"},digestFooter:{position:"fixed",bottom:"32px",left:"0",right:"0",textAlign:"center",fontFamily:'ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace',fontSize:"12px",lineHeight:"18px",fontWeight:400,margin:"0",color:"var(--next-error-digest)"}},h=`
2
+ :root {
3
+ --next-error-bg: #fff;
4
+ --next-error-text: #171717;
5
+ --next-error-title: #171717;
6
+ --next-error-message: #171717;
7
+ --next-error-digest: #666666;
8
+ --next-error-btn-text: #fff;
9
+ --next-error-btn-bg: #171717;
10
+ --next-error-btn-border: none;
11
+ --next-error-btn-secondary-text: #171717;
12
+ --next-error-btn-secondary-bg: transparent;
13
+ --next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);
14
+ }
15
+ @media (prefers-color-scheme: dark) {
16
+ :root {
17
+ --next-error-bg: #0a0a0a;
18
+ --next-error-text: #ededed;
19
+ --next-error-title: #ededed;
20
+ --next-error-message: #ededed;
21
+ --next-error-digest: #a0a0a0;
22
+ --next-error-btn-text: #0a0a0a;
23
+ --next-error-btn-bg: #ededed;
24
+ --next-error-btn-border: none;
25
+ --next-error-btn-secondary-text: #ededed;
26
+ --next-error-btn-secondary-bg: transparent;
27
+ --next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);
28
+ }
29
+ }
30
+ body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }
31
+ `.replace(/\n\s*/g,"");function i(){return(0,f.jsx)("svg",{width:"32",height:"32",viewBox:"-0.2 -1.5 32 32",fill:"none",style:g.icon,children:(0,f.jsx)("path",{d:"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z",fill:"var(--next-error-title)"})})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)}],79835,function(a){a.n(a.i(25556))}];
32
+
33
+ //# sourceMappingURL=node_modules_0gxlxpuufujz9._.js.map
e-commerce/.next/server/chunks/ssr/node_modules_0gxlxpuufujz9._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../node_modules/%40swc/helpers/cjs/_interop_require_default.cjs","../../../../node_modules/next/src/client/components/builtin/app-error.tsx","../../../../node_modules/next/src/client/components/builtin/error-styles.tsx"],"sourcesContent":["\"use strict\";\n\nfunction _interop_require_default(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nexports._ = _interop_require_default;\n","import React from 'react'\nimport { errorStyles, errorThemeCss, WarningIcon } from './error-styles'\n\n// This is the static 500.html page for App Router apps.\n// Always a server error, rendered at build time.\nfunction AppError() {\n return (\n <html id=\"__next_error__\">\n <head>\n <title>500: This page couldn&#x2019;t load</title>\n <style dangerouslySetInnerHTML={{ __html: errorThemeCss }} />\n </head>\n <body>\n <div style={errorStyles.container}>\n <div style={errorStyles.card}>\n <WarningIcon />\n <h1 style={errorStyles.title}>This page couldn&#x2019;t load</h1>\n <p style={errorStyles.message}>\n A server error occurred. Reload to try again.\n </p>\n <form style={errorStyles.form}>\n <button type=\"submit\" style={errorStyles.button}>\n Reload\n </button>\n </form>\n </div>\n </div>\n </body>\n </html>\n )\n}\n\nexport default AppError\n","import React from 'react'\n\nexport const errorStyles = {\n container: {\n fontFamily:\n 'system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"',\n height: '100vh',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n card: {\n marginTop: '-32px',\n maxWidth: '325px',\n padding: '32px 28px',\n textAlign: 'left' as const,\n },\n icon: {\n marginBottom: '24px',\n },\n title: {\n fontSize: '24px',\n fontWeight: 500,\n letterSpacing: '-0.02em',\n lineHeight: '32px',\n margin: '0 0 12px 0',\n color: 'var(--next-error-title)',\n },\n message: {\n fontSize: '14px',\n fontWeight: 400,\n lineHeight: '21px',\n margin: '0 0 20px 0',\n color: 'var(--next-error-message)',\n },\n form: {\n margin: 0,\n },\n buttonGroup: {\n display: 'flex',\n gap: '8px',\n alignItems: 'center',\n },\n button: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n height: '32px',\n padding: '0 12px',\n fontSize: '14px',\n fontWeight: 500,\n lineHeight: '20px',\n borderRadius: '6px',\n cursor: 'pointer',\n color: 'var(--next-error-btn-text)',\n background: 'var(--next-error-btn-bg)',\n border: 'var(--next-error-btn-border)',\n },\n buttonSecondary: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n height: '32px',\n padding: '0 12px',\n fontSize: '14px',\n fontWeight: 500,\n lineHeight: '20px',\n borderRadius: '6px',\n cursor: 'pointer',\n color: 'var(--next-error-btn-secondary-text)',\n background: 'var(--next-error-btn-secondary-bg)',\n border: 'var(--next-error-btn-secondary-border)',\n },\n digestFooter: {\n position: 'fixed' as const,\n bottom: '32px',\n left: '0',\n right: '0',\n textAlign: 'center' as const,\n fontFamily:\n 'ui-monospace,SFMono-Regular,\"SF Mono\",Menlo,Consolas,monospace',\n fontSize: '12px',\n lineHeight: '18px',\n fontWeight: 400,\n margin: '0',\n color: 'var(--next-error-digest)',\n },\n} as const\n\nexport const errorThemeCss = `\n:root {\n --next-error-bg: #fff;\n --next-error-text: #171717;\n --next-error-title: #171717;\n --next-error-message: #171717;\n --next-error-digest: #666666;\n --next-error-btn-text: #fff;\n --next-error-btn-bg: #171717;\n --next-error-btn-border: none;\n --next-error-btn-secondary-text: #171717;\n --next-error-btn-secondary-bg: transparent;\n --next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);\n}\n@media (prefers-color-scheme: dark) {\n :root {\n --next-error-bg: #0a0a0a;\n --next-error-text: #ededed;\n --next-error-title: #ededed;\n --next-error-message: #ededed;\n --next-error-digest: #a0a0a0;\n --next-error-btn-text: #0a0a0a;\n --next-error-btn-bg: #ededed;\n --next-error-btn-border: none;\n --next-error-btn-secondary-text: #ededed;\n --next-error-btn-secondary-bg: transparent;\n --next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);\n }\n}\nbody { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\n`.replace(/\\n\\s*/g, '')\n\nexport function WarningIcon() {\n return (\n <svg\n width=\"32\"\n height=\"32\"\n viewBox=\"-0.2 -1.5 32 32\"\n fill=\"none\"\n style={errorStyles.icon}\n >\n <path\n d=\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\"\n fill=\"var(--next-error-title)\"\n />\n </svg>\n )\n}\n"],"names":["_interop_require_default","obj","__esModule","default","exports","_","AppError","html","id","head","title","style","dangerouslySetInnerHTML","__html","errorThemeCss","body","div","errorStyles","container","card","WarningIcon","h1","p","message","form","button","type","fontFamily","height","display","alignItems","justifyContent","marginTop","maxWidth","padding","textAlign","icon","marginBottom","fontSize","fontWeight","letterSpacing","lineHeight","margin","color","buttonGroup","gap","borderRadius","cursor","background","border","buttonSecondary","digestFooter","position","bottom","left","right","replace","svg","width","viewBox","fill","path","d"],"mappings":"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","ignoreList":[0,1,2]}
e-commerce/.next/server/chunks/ssr/node_modules_1tbb716ajz_8c._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ (()=>{"use strict";module.exports=[33354,(a,b,c)=>{c._=function(a){return a&&a.__esModule?a:{default:a}}},46058,(a,b,c)=>{function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},8591,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"useMergedRef",{enumerable:!0,get:function(){return e}});let d=a.r(72131);function e(a,b){let c=(0,d.useRef)(null),e=(0,d.useRef)(null);return(0,d.useCallback)(d=>{if(null===d){let a=c.current;a&&(c.current=null,a());let b=e.current;b&&(e.current=null,b())}else a&&(c.current=f(a,d)),b&&(e.current=f(b,d))},[a,b])}function f(a,b){if("function"!=typeof a)return a.current=b,()=>{a.current=null};{let c=a(b);return"function"==typeof c?c:()=>a(null)}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},68063,(a,b,c)=>{let d;Object.defineProperty(c,"__esModule",{value:!0});var e={getAssetToken:function(){return i},getAssetTokenQuery:function(){return j},getDeploymentId:function(){return g},getDeploymentIdQuery:function(){return h}};for(var f in e)Object.defineProperty(c,f,{enumerable:!0,get:e[f]});function g(){return d}function h(a=!1){return d?`${a?"&":"?"}dpl=${d}`:""}function i(){return!1}function j(a=!1){return""}d=void 0}]})();
2
+
3
+ //# sourceMappingURL=node_modules_1tbb716ajz_8c._.js.map
e-commerce/.next/server/chunks/ssr/node_modules_1tbb716ajz_8c._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../node_modules/%40swc/helpers/cjs/_interop_require_default.cjs","../../../../node_modules/%40swc/helpers/cjs/_interop_require_wildcard.cjs","../../../../node_modules/next/src/client/use-merged-ref.ts","../../../../node_modules/next/src/shared/lib/deployment-id.ts"],"sourcesContent":["\"use strict\";\n\nfunction _interop_require_default(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nexports._ = _interop_require_default;\n","\"use strict\";\n\nfunction _getRequireWildcardCache(nodeInterop) {\n if (typeof WeakMap !== \"function\") return null;\n\n var cacheBabelInterop = new WeakMap();\n var cacheNodeInterop = new WeakMap();\n\n return (_getRequireWildcardCache = function(nodeInterop) {\n return nodeInterop ? cacheNodeInterop : cacheBabelInterop;\n })(nodeInterop);\n}\nfunction _interop_require_wildcard(obj, nodeInterop) {\n if (!nodeInterop && obj && obj.__esModule) return obj;\n if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") return { default: obj };\n\n var cache = _getRequireWildcardCache(nodeInterop);\n\n if (cache && cache.has(obj)) return cache.get(obj);\n\n var newObj = { __proto__: null };\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n if (desc && (desc.get || desc.set)) Object.defineProperty(newObj, key, desc);\n else newObj[key] = obj[key];\n }\n }\n\n newObj.default = obj;\n\n if (cache) cache.set(obj, newObj);\n\n return newObj;\n}\nexports._ = _interop_require_wildcard;\n","import { useCallback, useRef, type Ref } from 'react'\n\n// This is a compatibility hook to support React 18 and 19 refs.\n// In 19, a cleanup function from refs may be returned.\n// In 18, returning a cleanup function creates a warning.\n// Since we take userspace refs, we don't know ahead of time if a cleanup function will be returned.\n// This implements cleanup functions with the old behavior in 18.\n// We know refs are always called alternating with `null` and then `T`.\n// So a call with `null` means we need to call the previous cleanup functions.\nexport function useMergedRef<TElement>(\n refA: Ref<TElement>,\n refB: Ref<TElement>\n): Ref<TElement> {\n const cleanupA = useRef<(() => void) | null>(null)\n const cleanupB = useRef<(() => void) | null>(null)\n\n // NOTE: In theory, we could skip the wrapping if only one of the refs is non-null.\n // (this happens often if the user doesn't pass a ref to Link/Form/Image)\n // But this can cause us to leak a cleanup-ref into user code (previously via `<Link legacyBehavior>`),\n // and the user might pass that ref into ref-merging library that doesn't support cleanup refs\n // (because it hasn't been updated for React 19)\n // which can then cause things to blow up, because a cleanup-returning ref gets called with `null`.\n // So in practice, it's safer to be defensive and always wrap the ref, even on React 19.\n return useCallback(\n (current: TElement | null): void => {\n if (current === null) {\n const cleanupFnA = cleanupA.current\n if (cleanupFnA) {\n cleanupA.current = null\n cleanupFnA()\n }\n const cleanupFnB = cleanupB.current\n if (cleanupFnB) {\n cleanupB.current = null\n cleanupFnB()\n }\n } else {\n if (refA) {\n cleanupA.current = applyRef(refA, current)\n }\n if (refB) {\n cleanupB.current = applyRef(refB, current)\n }\n }\n },\n [refA, refB]\n )\n}\n\nfunction applyRef<TElement>(\n refA: NonNullable<Ref<TElement>>,\n current: TElement\n) {\n if (typeof refA === 'function') {\n const cleanup = refA(current)\n if (typeof cleanup === 'function') {\n return cleanup\n } else {\n return () => refA(null)\n }\n } else {\n refA.current = current\n return () => {\n refA.current = null\n }\n }\n}\n","let deploymentId: string | undefined\n\nif (typeof window !== 'undefined') {\n deploymentId = document.documentElement.dataset.dplId\n // Immediately remove the attribute to prevent hydration errors (the dplId was inserted into the\n // HTML only), React isn't aware of it at all.\n document.documentElement.removeAttribute('data-dpl-id')\n} else {\n // Client side: replaced with globalThis.NEXT_DEPLOYMENT_ID\n // Server side: left as is or replaced with a string or replaced with false\n deploymentId = process.env.NEXT_DEPLOYMENT_ID || undefined\n}\n\nexport function getDeploymentId(): string | undefined {\n return deploymentId\n}\n\nexport function getDeploymentIdQuery(ampersand = false): string {\n let id = getDeploymentId()\n if (id) {\n return `${ampersand ? '&' : '?'}dpl=${id}`\n }\n return ''\n}\n\nexport function getAssetToken(): string | undefined {\n return process.env.NEXT_SUPPORTS_IMMUTABLE_ASSETS\n ? undefined\n : process.env.NEXT_DEPLOYMENT_ID\n}\n\nexport function getAssetTokenQuery(ampersand = false): string {\n let id = getAssetToken()\n if (id) {\n return `${ampersand ? '&' : '?'}dpl=${id}`\n }\n return ''\n}\n"],"names":["_interop_require_default","obj","__esModule","default","exports","_","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_interop_require_wildcard","cache","has","get","newObj","__proto__","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","useMergedRef","refA","refB","cleanupA","useRef","cleanupB","useCallback","current","cleanupFnA","cleanupFnB","applyRef","cleanup","getAssetToken","getAssetTokenQuery","getDeploymentId","getDeploymentIdQuery","deploymentId","window","document","documentElement","dataset","dplId","removeAttribute","process","env","NEXT_DEPLOYMENT_ID","undefined","ampersand","id","NEXT_SUPPORTS_IMMUTABLE_ASSETS"],"mappings":"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","ignoreList":[0,1,2,3]}
e-commerce/.next/server/chunks/ssr/node_modules_1u38ibo_vi4cw._.js ADDED
The diff for this file is too large to render. See raw diff
 
e-commerce/.next/server/chunks/ssr/node_modules_1u38ibo_vi4cw._.js.map ADDED
The diff for this file is too large to render. See raw diff
 
e-commerce/.next/server/chunks/ssr/node_modules_@swc_helpers_cjs__interop_require_default_cjs_1ztp13a5szri_._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[33354,(a,b,c)=>{"use strict";c._=function(a){return a&&a.__esModule?a:{default:a}}}];
2
+
3
+ //# sourceMappingURL=node_modules_%40swc_helpers_cjs__interop_require_default_cjs_1ztp13a5szri_._.js.map
e-commerce/.next/server/chunks/ssr/node_modules_@swc_helpers_cjs__interop_require_default_cjs_1ztp13a5szri_._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../node_modules/%40swc/helpers/cjs/_interop_require_default.cjs"],"sourcesContent":["\"use strict\";\n\nfunction _interop_require_default(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nexports._ = _interop_require_default;\n"],"names":["_interop_require_default","obj","__esModule","default","exports","_"],"mappings":"6CAKAI,EAAQC,CAAC,CAHT,EAGYL,OAHHA,AAAyBC,CAAG,EACjC,OAAOA,GAAOA,EAAIC,UAAU,CAAGD,EAAM,CAAEE,QAASF,CAAI,CACxD","ignoreList":[0]}
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ module.exports=[67436,a=>{"use strict";var b=a.i(71306),c=a.i(88604),d=a.i(79847),e=a.i(9185),f=a.i(72842),g=a.i(54897),h=a.i(56157),i=a.i(15988),j=a.i(1268),k=a.i(25766),l=a.i(90833),m=a.i(21626),n=a.i(89257),o=a.i(5785),p=a.i(74793),q=a.i(85826),r=a.i(21565),s=a.i(110),t=a.i(65911),u=a.i(25128),v=a.i(40781);a.i(69411);var w=a.i(63081),x=a.i(62837),y=a.i(34607),z=a.i(96338),A=a.i(50642),B=a.i(88530),C=a.i(93695),D=a.i(22980),E=a.i(8583),F=a.i(38534),G=a.i(5672);a.i(70408);var H=a.i(22922),I=a.i(78294),J=a.i(16625),K=a.i(88648),L=a.i(25466);a.s(["f",0,function({tree:M,page:N,pathname:O,require:P,loadChunk:Q,interopDefault:R}){let S={require:P,loadChunk:Q},T=new b.AppPageRouteModule({definition:{kind:d.RouteKind.APP_PAGE,page:N,pathname:O,bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:M},distDir:".next",relativeProjectDir:""}),U=N;U=U.replace(/\/index$/,"")||"/";let V=(0,r.normalizeAppPath)(U),W=(0,s.parseNormalizedAppRoute)(V).dynamicSegments.map(a=>a.param.paramName);async function X(b,r,s){var N,O,P,Q,Y,Z;s.requestMeta&&(0,g.setRequestMeta)(b,s.requestMeta),T.isDev&&(0,g.addRequestMeta)(b,"devRequestTimingInternalsEnd",process.hrtime.bigint());let $=!!(0,g.getRequestMeta)(b,"minimalMode"),_=b.url,aa=await T.prepare(b,r,{srcPage:U,multiZoneDraftMode:!1});if(!aa)return r.statusCode=400,r.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:ab,query:ac,params:ad,pageIsDynamic:ae,buildManifest:af,nextFontManifest:ag,reactLoadableManifest:ah,serverActionsManifest:ai,clientReferenceManifest:aj,subresourceIntegrityManifest:ak,prerenderManifest:al,prefetchHintsManifest:am,isDraftMode:an,resolvedPathname:ao,revalidateOnlyGenerated:ap,routerServerContext:aq,nextConfig:ar,parsedUrl:as,interceptionRoutePatterns:at,deploymentId:au,clientAssetToken:av,previewProps:aw}=aa,{isOnDemandRevalidate:ax}=aa,ay=T.match(ao,al),az=(null==ay?void 0:ay.route)??null,aA=T.isDev||(0,D.isRouteCacheOwner)(ao,T.cacheOwner,al.routes[ao])?al.routes[ao]:void 0,aB=!!aA,aC=b.headers["user-agent"]||"",aD=(0,v.getBotType)(aC),aE=(0,g.getRequestMeta)(b,"isPrefetchRSCRequest")??"1"===b.headers[u.NEXT_ROUTER_PREFETCH_HEADER],aF=(0,g.getRequestMeta)(b,"isRSCRequest")??(0,l.isRSCRequestHeader)(b.headers[u.RSC_HEADER]),aG=(0,t.getIsPossibleServerAction)(b);if(V===n.UNDERSCORE_NOT_FOUND_ROUTE&&("GET"===b.method||"HEAD"===b.method)&&!aF&&(0,m.isNonHtmlSecFetchDest)(b.headers["sec-fetch-dest"]))return r.statusCode=404,r.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),r.setHeader("Content-Type","text/plain; charset=utf-8"),r.end("Not Found"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let aH=!!ar.cacheComponents,aI=b.headers[z.NEXT_RESUME_STATE_LENGTH_HEADER];if(!(0,g.getRequestMeta)(b,"postponed")&&$&&aH&&aG&&aI&&"string"==typeof aI){let c=parseInt(aI,10),{maxPostponedStateSize:d,maxPostponedStateSizeBytes:e}=(0,F.getMaxPostponedStateSize)(ar.experimental.maxPostponedStateSize);if(!isNaN(c)&&c>0){if(c>e)return r.statusCode=413,r.end((0,F.getPostponedStateExceededErrorMessage)(d)),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let f="1 MB",h=(null==(Z=ar.experimental.serverActions)?void 0:Z.bodySizeLimit)??f,i=c+(h!==f?a.r(14465).parse(h):1048576),j=await (0,F.readBodyWithSizeLimit)(b,i);if(null===j)return r.statusCode=413,r.end("Request body exceeded limit. To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;if(j.length>=c){let a=j.subarray(0,c).toString("utf8");(0,g.addRequestMeta)(b,"postponed",a);let d=j.subarray(c);(0,g.addRequestMeta)(b,"actionBody",d)}else throw Error(`invariant: expected ${c} bytes of postponed state but only received ${j.length} bytes`)}}if("string"!=typeof(0,g.getRequestMeta)(b,"postponed")&&aH&&"1"===b.headers[z.NEXT_RESUME_HEADER]&&"POST"===b.method){let{maxPostponedStateSize:a,maxPostponedStateSizeBytes:c}=(0,F.getMaxPostponedStateSize)(ar.experimental.maxPostponedStateSize),d=await (0,F.readBodyWithSizeLimit)(b,c);if(null===d)return r.statusCode=413,r.end((0,F.getPostponedStateExceededErrorMessage)(a)),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let e=d.toString("utf8");(0,g.addRequestMeta)(b,"postponed",e)}let aJ=!0===ar.cacheComponents&&(!0===T.isDev||!0===ar.experimental.exposeTestingApiInProductionBuild),aK=aJ&&"string"==typeof b.headers.cookie&&b.headers.cookie.includes(u.NEXT_INSTANT_TEST_COOKIE+"=")&&(!(0,l.isRSCRequestHeader)(b.headers[u.RSC_HEADER])||"1"===b.headers[u.NEXT_ROUTER_PREFETCH_HEADER]),aL=aH&&((null==(N=al.routes[V]??al.dynamicRoutes[V])?void 0:N.renderingMode)==="PARTIALLY_STATIC"||aK&&(aJ||(null==aq?void 0:aq.experimentalTestProxy)===!0)),aM=aK&&aL,aN=aM&&!0===T.isDev,aO=!1,aP=aM||aN||aO,aQ=aL?(0,g.getRequestMeta)(b,"postponed"):void 0,aR="string"==typeof aQ,aS=null==aA?void 0:aA.prefetchDataRoute,aT=(null==az?void 0:az._isEnsureStaticPage)===!0,aU=aL&&aF&&!aE&&!aS&&!aT;$&&(aU=aU&&aR);let aV=b.headers[u.NEXT_ROUTER_SEGMENT_PREFETCH_HEADER],aW=(0,g.getRequestMeta)(b,"segmentPrefetchRSCRequest")??(aE?"string"==typeof aV?aV:Array.isArray(aV)?aV[0]:void 0:void 0),aX=!aC||(0,q.shouldServeStreamingMetadata)(aC,ar.htmlLimitedBots),aY=aL&&!aX,aZ=!!((az||aB||al.routes[V])&&!aY),a$=aL&&!0===ar.cacheComponents,a_=!0===T.isDev||an||!aZ||aR||(a$&&(0,g.getRequestMeta)(b,"onCacheEntryV2")?aU&&!$:aU),a0=(null==az?void 0:az.remainingPrerenderableParams)??[],a1=ar.cacheComponents?(null==az||null==(O=az.fallbackRouteParams)?void 0:O.filter(a=>!a0.some(b=>b.paramName===a.paramName)))??[]:[],a2=aB&&a0.some(a=>{let b=null==ad?void 0:ad[a.paramName];return null==b||Array.isArray(b)&&0===b.length}),a3=(null==az?void 0:az.fallback)===null&&((null==(P=az.fallbackRootParams)?void 0:P.length)??0)>0,a4=ay?"string"==typeof(null==az?void 0:az.fallback)?az.fallback:ay.source:null,a5=null;if(ar.cacheComponents&&(null==az?void 0:az.fallback)!==!1&&(ar.partialPrefetching||a1.length>0)&&a4&&(null==az||null==(Q=az.fallbackRouteParams)?void 0:Q.length)&&!a2){let a,b=(a=new Map(a0.map(a=>[a.paramName,a])),a4.split("/").map(b=>{let c=(0,L.getSegmentParam)(b);if(!c)return b;let d=a.get(c.paramName);if(!d)return b;let e=null==ad?void 0:ad[d.paramName];if(!e)return b;let f=Array.isArray(e)?e.map(a=>encodeURIComponent(a)).join("/"):encodeURIComponent(e);return b.replace((0,o.buildDynamicSegmentPlaceholder)(d),f)}).join("/")||"/");(b!==a4||a1.length>0)&&(a5=b)}let a6=null,a7=!1;an||!aZ||a_||aG||aR||aU||(null!==a5?(a5!==a4||ax)&&(a6=a5,a7=!0):a6=ao);let a8=a6;!a8&&(T.isDev||aZ&&ae&&(null==az||null==(Y=az.fallbackRouteParams)?void 0:Y.length)&&!aG)&&(a8=ao),T.isDev||an||!aZ||!aF||aU||(0,i.stripFlightHeaders)(b.headers);let a9={...H,tree:M,handler:X,routeModule:T,__next_app__:S};ai&&aj&&(0,p.setManifestsSingleton)({page:U,clientReferenceManifest:aj,serverActionsManifest:ai});let ba=b.method||"GET",bb=(0,f.getTracer)(),bc=bb.getActiveScopeSpan(),bd=!!(null==aq?void 0:aq.isWrappedByNextServer),be=async()=>((null==aq?void 0:aq.render404)?await aq.render404(b,r,as,!1):(r.statusCode=404,r.end("This page could not be found")),null);try{let a,i=T.getVaryHeader(ao,at);r.setHeader("Vary",i);let l=async(c,d,e)=>{let g=new k.NodeNextRequest(b),i=new k.NodeNextResponse(r);return("prerender"===e?T.prerender(g,i,d):T.render(g,i,d)).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":r.statusCode,"next.rsc":aF}),r.statusCode&&r.statusCode>=500&&(c.setStatus({code:f.SpanStatusCode.ERROR}),c.setAttribute("error.type",r.statusCode.toString()));let b=bb.getRootSpanAttributes();if(!b)return;if(b.get("next.span_type")!==h.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${b.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=b.get("next.route")||V,e=aF?`RSC ${ba} ${d}`:`${ba} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":e}),c.updateName(e),a&&a!==c&&(a.setAttribute("http.route",d),a.updateName(e))})},m=(0,g.getRequestMeta)(b,"incrementalCache")||await T.getIncrementalCache(b,ar,aw,al,$);null==m||m.resetRequestCache(),globalThis.__incrementalCache=m;let n=async({span:a,postponed:d,fallbackRouteParams:e,renderOperation:f,allowEmptyStaticShell:h})=>{var i,k;let n={query:ac,params:ad,page:V,routeMatch:{resolvedPathname:ao},parsedRequestHeaders:(0,j.parseRequestHeaders)(b.headers,{isRoutePPREnabled:aL,previewModeId:null==aw?void 0:aw.previewModeId}),sharedContext:{buildId:ab,deploymentId:au,clientAssetToken:av},dev:(0,c.createDevRenderContext)(b),fallbackRouteParams:e,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:a9,Component:R(a9),params:ad,routeModule:T,page:U,postponed:d,allowEmptyStaticShell:h,serveStreamingMetadata:aX,supportsDynamicResponse:"render"===f&&("string"==typeof d||a_),buildManifest:af,nextFontManifest:ag,reactLoadableManifest:ah,subresourceIntegrityManifest:ak,setCacheStatus:null==aq?void 0:aq.setCacheStatus,setIsrStatus:null==aq?void 0:aq.setIsrStatus,setReactDebugChannel:null==aq?void 0:aq.setReactDebugChannel,sendErrorsToBrowser:null==aq?void 0:aq.sendErrorsToBrowser,dir:require("path").join(process.cwd(),T.relativeProjectDir),isDraftMode:an,botType:aD,isOnDemandRevalidate:ax,isPossibleServerAction:aG,assetPrefix:T.getAssetPrefixForRender(aq,ar.assetPrefix),nextConfigOutput:ar.output,crossOrigin:ar.crossOrigin,trailingSlash:ar.trailingSlash,images:ar.images,previewProps:aw,enableTainting:ar.experimental.taint,reactMaxHeadersLength:ar.reactMaxHeadersLength,multiZoneDraftMode:!1,prefetchHints:am,notFoundParams:(T.isDev?(0,g.getRequestMeta)(b,"devNotFoundParams"):void 0)??(null==(i=al.dynamicRoutes[V])?void 0:i.notFoundParams)??((null==(k=al.dynamicRoutes[V])?void 0:k.fallback)===!1?W:void 0),incrementalCache:m,cacheLifeProfiles:ar.cacheLife,staticPageGenerationTimeout:ar.staticPageGenerationTimeout,basePath:ar.basePath,serverActions:ar.experimental.serverActions,logServerFunctions:"object"==typeof ar.logging&&!!ar.logging.serverFunctions,...aM||aN||aO?{isBuildTimePrerendering:!0,isDebugDynamicAccesses:aN}:{},cacheComponents:!!ar.cacheComponents,partialPrefetching:ar.partialPrefetching,isFallbackUpgradeable:!!ar.partialPrefetching&&a0.length>0,validationLevel:ar.experimental.instantInsights.validationLevel,experimental:{isRoutePPREnabled:aL,expireTime:ar.expireTime,staleTimes:ar.experimental.staleTimes,dynamicOnHover:!!ar.experimental.dynamicOnHover,optimisticRouting:!!ar.experimental.optimisticRouting,parallelRouteMetadata:!!ar.experimental.parallelRouteMetadata,inlineCss:!!ar.experimental.inlineCss,prefetchInlining:ar.experimental.prefetchInlining??!1,authInterrupts:!!ar.experimental.authInterrupts,reactBrowserBailout:!!ar.experimental.reactBrowserBailout,serverComponentsHmrCancellation:!!ar.experimental.serverComponentsHmrCancellation,useCacheTimeout:ar.experimental.useCacheTimeout,durableUseCacheEntries:!!ar.experimental.durableUseCacheEntries,cachedNavigations:ar.experimental.cachedNavigations??!1,clientTraceMetadata:ar.experimental.clientTraceMetadata||[],clientParamParsingOrigins:ar.experimental.clientParamParsingOrigins,maxPostponedStateSizeBytes:(0,E.parseMaxPostponedStateSize)(ar.experimental.maxPostponedStateSize),disableResumeDataCacheCompression:ar.experimental.disableResumeDataCacheCompression??!1,exposeTestingApi:aJ},waitUntil:s.waitUntil,onClose:a=>{r.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(a,c,d)=>T.onRequestError(b,a,c,d,aq),err:(0,g.getRequestMeta)(b,"invokeError")}},o=await l(a,n,f);if("error"in o)return b.fetchMetrics=o.result.metadata.fetchMetrics,o;let{metadata:p}=o,{cacheControl:q,headers:t={},fetchTags:u,fetchMetrics:v}=p;if(q&&!1!==q.revalidate&&q.revalidate>0&&void 0===q.expire&&(q.expire=ar.expireTime),u&&(t[z.NEXT_CACHE_TAGS_HEADER]=u),b.fetchMetrics=v,aZ&&(null==q?void 0:q.revalidate)===0&&!T.isDev&&!aL){let a=p.staticBailoutInfo,b=Error(`Page changed from static to dynamic at runtime ${ao}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
2
+ see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`);if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:w.CachedRouteKind.APP_PAGE,html:o,headers:t,rscData:p.flightData,postponed:p.postponed,status:p.statusCode,segmentData:p.segmentData},cacheControl:q}},p=async({hasResolved:a,previousCacheEntry:c,isRevalidating:f,span:h,forceStaticRender:i=!1})=>{let j=!1===T.isDev,k=a||r.writableEnded,l=a=>T.onRequestError(b,a,{routerKind:"App Router",routePath:U,routeType:"render",revalidateReason:(0,e.getRevalidateReason)({isStaticGeneration:aZ,isOnDemandRevalidate:ax})},!1,aq);try{var q;let e;if(ax&&ap&&!c&&!$)return(null==aq?void 0:aq.render404)?await aq.render404(b,r):(r.statusCode=404,r.end("This page could not be found")),null;if(az&&(e=(0,x.parseFallbackField)(az.fallback)),e===x.FallbackMode.NOT_FOUND&&aB&&(e=x.FallbackMode.BLOCKING_STATIC_RENDER),!ar.partialPrefetching||(null==az?void 0:az.fallback)!==null||aT||az.isExplicitlyBlocking||a2||a3||!(a0.length>0)||(e=x.FallbackMode.PRERENDER),e!==x.FallbackMode.PRERENDER||(aL?aX:!aD)||(e=x.FallbackMode.BLOCKING_STATIC_RENDER),(null==c?void 0:c.isStale)===-1&&(ax=!0),ax&&e!==x.FallbackMode.NOT_FOUND&&(e=x.FallbackMode.BLOCKING_STATIC_RENDER),(j||i||aP)&&!$&&e!==x.FallbackMode.BLOCKING_STATIC_RENDER&&a8&&!k&&!an&&ae&&(j||!aB)&&aL&&(ar.cacheComponents?!aU:!aF)){let c,e=j&&"string"==typeof(null==az?void 0:az.fallback)?az.fallback:V;c=j?(null==az?void 0:az.fallbackRouteParams)?(0,o.createOpaqueFallbackRouteParams)(az.fallbackRouteParams):aO?(0,o.getFallbackRouteParams)(V,T):null:aO?(0,o.getFallbackRouteParams)(V,T):aM?(0,g.getRequestMeta)(b,"fallbackRouteParams")??null:null,aM&&(0,g.addRequestMeta)(b,"stagedFallbackParams",c);let f=await T.handleResponse({cacheKey:e,req:b,nextConfig:ar,routeKind:d.RouteKind.APP_PAGE,isFallback:!0,previewProps:aw,prerenderManifest:al,isRoutePPREnabled:aL,responseGenerator:async()=>n({span:h,postponed:void 0,fallbackRouteParams:c,renderOperation:"prerender",allowEmptyStaticShell:aK||void 0}),waitUntil:s.waitUntil,isMinimalMode:$});if(null===f||"error"in f)return f;if(f)return!$&&aL&&ar.partialPrefetching&&a0.length>0&&a6&&m&&!ax&&!aO&&!aJ&&!aK&&(0,K.scheduleOnNextTick)(async()=>{let c=T.getResponseCache(b);try{let b=await c.revalidate(a6,m,aL,!1,a=>n({span:a.span,postponed:void 0,fallbackRouteParams:a1.length>0?(0,o.createOpaqueFallbackRouteParams)(a1):null,renderOperation:"prerender"}),null,a,s.waitUntil);if(null!==b&&"error"in b)throw b.error}catch(a){console.error("Error revalidating the page in the background",a)}}),delete f.cacheControl,f}let t=ax||f||!aQ?void 0:aQ,v=!1;if(a$&&!$&&m&&(aU||aG)&&!i){let c=a5??ao,d=await m.get(c,{kind:w.IncrementalCacheKind.APP_PAGE,route:T.cacheOwner,isRoutePPREnabled:!0,isFallback:!1});d&&d.value&&d.value.kind===w.CachedRouteKind.APP_PAGE&&(t=d.value.postponed,v=void 0===t,d&&(-1===d.isStale||!0===d.isStale)&&(0,K.scheduleOnNextTick)(async()=>{let d=T.getResponseCache(b);try{let b=await d.revalidate(c,m,aL,!1,a=>p({...a,forceStaticRender:!0}),null,a,s.waitUntil);if(null!==b&&"error"in b)throw b.error}catch(a){console.error("Error revalidating the page in the background",a)}}))}if((aM||aN)&&void 0!==t)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:w.CachedRouteKind.APP_PAGE,html:y.default.fromStatic("",aF?u.RSC_CONTENT_TYPE_HEADER:z.HTML_CONTENT_TYPE_HEADER),rscData:void 0,postponed:t,segmentData:void 0,headers:void 0,status:void 0}};let A=!T.isDev&&ae&&(null==az?void 0:az.fallbackRouteParams)?(0,o.getPlaceholderFallbackRouteParams)(ad,az.fallbackRouteParams):null,B=A&&A.length>0?A:null==az?void 0:az.fallbackRouteParams,C=null!=A&&A.length>0,D=null;if(ar.cacheComponents&&(null==az?void 0:az.fallbackRouteParams)){let a=(0,g.getRequestMeta)(b,"resolvedRouteParamKeys");a&&a.size>0&&(D=az.fallbackRouteParams.filter(b=>!a.has(b.paramName)))}let E=(j&&(0,g.getRequestMeta)(b,"renderFallbackShell")||C||aM&&!aB)&&B?(0,o.createOpaqueFallbackRouteParams)(B):D&&D.length>0&&D.length<((null==az||null==(q=az.fallbackRouteParams)?void 0:q.length)??0)?(0,o.createOpaqueFallbackRouteParams)(D):!$&&(a7||i&&null!==a5)&&a1.length>0?(0,o.createOpaqueFallbackRouteParams)(a1):aO?(0,o.getFallbackRouteParams)(V,T):null;if((j||aM)&&ar.cacheComponents){let a;a=C?(0,o.createOpaqueFallbackRouteParams)(A):aM?E:v||aB?null:t&&(null==az?void 0:az.fallbackRouteParams)?(0,o.createOpaqueFallbackRouteParams)(az.fallbackRouteParams):az?(0,o.getStagedFallbackParams)(az):null,(0,g.addRequestMeta)(b,"stagedFallbackParams",a)}let F=!i&&!aP&&(a_||aG),G=await n({span:h,postponed:t,fallbackRouteParams:E,renderOperation:F?"render":"prerender",allowEmptyStaticShell:aK||void 0});return"error"in G&&a&&await l(G.error),G}catch(b){throw a&&await l(b),b}},q=a=>{var c;let d=a$?(0,g.getRequestMeta)(b,"onCacheEntryV2")??(0,g.getRequestMeta)(b,"onCacheEntry"):(0,g.getRequestMeta)(b,"onCacheEntry");if(!d)return!1;let e=(0,g.getRequestMeta)(b,"initURL")??b.url;return d(a,{url:e?(null==(c=(0,G.parseUrl)(e))?void 0:c.pathname)??e:void 0})},t=(a,c,d)=>{let e=new TransformStream;a.push(e.readable),ar.cacheComponents&&(null==az?void 0:az.fallbackRouteParams)&&(0,g.addRequestMeta)(b,"stagedFallbackParams",(0,o.createOpaqueFallbackRouteParams)(az.fallbackRouteParams)),n({span:d,postponed:c,fallbackRouteParams:null,renderOperation:"render"}).then(async a=>{var b,c;if(!a)throw Error("Invariant: expected a result to be returned");if("error"in a)throw a.error;if((null==(b=a.value)?void 0:b.kind)!==w.CachedRouteKind.APP_PAGE)throw Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`);await a.value.html.pipeTo(e.writable)}).catch(a=>{e.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})})},v=async a=>{var c,h,i,j;let k,l=T.isDev&&!aP&&(0,g.getRequestMeta)(b,"devParamMatchingRejected");if(!$&&!an&&!aG&&ae&&(l||(null==az?void 0:az.fallback)===!1&&!aB)){if(ar.adapterPath)return await be();throw new C.NoFallbackError}let m=await T.handleResponse({cacheKey:a6,responseGenerator:b=>p({span:a,...b}),routeKind:d.RouteKind.APP_PAGE,isOnDemandRevalidate:ax,isRoutePPREnabled:aL,req:b,nextConfig:ar,previewProps:aw,prerenderManifest:al,waitUntil:s.waitUntil,isMinimalMode:$});if(null!==m&&"error"in m){if(r.headersSent||r.writableEnded)throw m.error;let c=()=>{let a=T.onRequestError(b,m.error,{routerKind:"App Router",routePath:U,routeType:"render",revalidateReason:(0,e.getRevalidateReason)({isStaticGeneration:aZ,isOnDemandRevalidate:ax})},!1,aq).catch(a=>{console.error(a)});null==s.waitUntil||s.waitUntil.call(s,a)},{result:d}=m;for(let[a,b]of Object.entries(d.metadata.headers??{}))void 0!==b&&r.appendHeader(a,"number"==typeof b?b.toString():b);r.statusCode=500,null==a||a.setAttributes({"http.status_code":500,"next.rsc":aF,"error.type":"500"}),null==a||a.setStatus({code:f.SpanStatusCode.ERROR}),r.removeHeader("x-nextjs-cache"),r.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=d;if(aF)g=y.default.fromStatic("",u.RSC_CONTENT_TYPE_HEADER);else if("string"==typeof d.metadata.postponed){if(await q({value:{kind:w.CachedRouteKind.APP_PAGE,html:d,rscData:d.metadata.flightData,postponed:d.metadata.postponed,status:500,headers:void 0,segmentData:void 0},cacheControl:{revalidate:0,expire:void 0}}))return c(),null;if($)throw m.error;t(g=y.default.fromStatic(d.toUnchunkedString(),z.HTML_CONTENT_TYPE_HEADER),d.metadata.postponed,a)}return c(),(0,B.sendRenderResult)({req:b,res:r,result:g,generateEtags:!1,poweredByHeader:ar.poweredByHeader,cacheControl:void 0})}if(an&&r.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),T.isDev&&r.setHeader("Cache-Control","no-store"),!m){if(a6)throw Error("invariant: cache entry required but not generated");return null}if((null==(c=m.value)?void 0:c.kind)!==w.CachedRouteKind.APP_PAGE)throw Error(`Invariant app-page handler received invalid cache entry ${null==(i=m.value)?void 0:i.kind}`);let n="string"==typeof m.value.postponed;aF&&!aG&&au&&r.setHeader(z.NEXT_NAV_DEPLOYMENT_ID_HEADER,au),aZ&&!aU&&(!n||aE)&&($||r.setHeader("x-nextjs-cache",ax?"REVALIDATED":m.isMiss?"MISS":m.isStale?"STALE":"HIT"),r.setHeader(u.NEXT_IS_PRERENDER_HEADER,"1"));let{value:o}=m;if(aR)k={revalidate:0,expire:void 0};else if(aU)k={revalidate:0,expire:void 0};else if(!T.isDev)if(an)k={revalidate:0,expire:void 0};else if(aZ){if(m.cacheControl)if("number"==typeof m.cacheControl.revalidate){if(m.cacheControl.revalidate<1)throw Error(`Invalid revalidate configuration provided: ${m.cacheControl.revalidate} < 1`);k={revalidate:m.cacheControl.revalidate,expire:m.cacheControl.expire}}else k={revalidate:z.CACHE_ONE_YEAR_SECONDS,expire:void 0}}else r.getHeader("Cache-Control")||(k={revalidate:0,expire:void 0});if(m.cacheControl=k,"string"==typeof aW&&(null==o?void 0:o.kind)===w.CachedRouteKind.APP_PAGE&&o.segmentData){r.setHeader(u.NEXT_DID_POSTPONE_HEADER,"2");let a=null==(j=o.headers)?void 0:j[z.NEXT_CACHE_TAGS_HEADER];$&&aZ&&a&&"string"==typeof a&&r.setHeader(z.NEXT_CACHE_TAGS_HEADER,a);let c=o.segmentData.get(aW);return void 0!==c?(0,B.sendRenderResult)({req:b,res:r,generateEtags:ar.generateEtags,poweredByHeader:ar.poweredByHeader,result:y.default.fromStatic(c,u.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl}):(r.statusCode=404,(0,B.sendRenderResult)({req:b,res:r,generateEtags:ar.generateEtags,poweredByHeader:ar.poweredByHeader,result:y.default.EMPTY,cacheControl:m.cacheControl}))}if(!aM&&await q(m))return null;if(o.headers){let a={...o.headers};for(let[b,c]of($&&aZ||delete a[z.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==c)if(Array.isArray(c))for(let a of c)r.appendHeader(b,a);else"number"==typeof c&&(c=c.toString()),r.appendHeader(b,c)}let v=null==(h=o.headers)?void 0:h[z.NEXT_CACHE_TAGS_HEADER];if($&&aZ&&v&&"string"==typeof v&&r.setHeader(z.NEXT_CACHE_TAGS_HEADER,v),!o.status||aF&&aL||(r.statusCode=o.status),!$&&o.status&&I.RedirectStatusCode[o.status]&&aF&&(r.statusCode=200),n&&!aU&&r.setHeader(u.NEXT_DID_POSTPONE_HEADER,"1"),aF&&!an){if(void 0===o.rscData){if(o.html.contentType!==u.RSC_CONTENT_TYPE_HEADER)if(ar.cacheComponents)return r.statusCode=404,(0,B.sendRenderResult)({req:b,res:r,generateEtags:ar.generateEtags,poweredByHeader:ar.poweredByHeader,result:y.default.EMPTY,cacheControl:m.cacheControl});else throw new J.InvariantError(`Expected RSC response, got ${o.html.contentType}`);return(0,B.sendRenderResult)({req:b,res:r,generateEtags:ar.generateEtags,poweredByHeader:ar.poweredByHeader,result:o.html,cacheControl:m.cacheControl})}return(0,B.sendRenderResult)({req:b,res:r,generateEtags:ar.generateEtags,poweredByHeader:ar.poweredByHeader,result:y.default.fromStatic(o.rscData,u.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl})}let x=o.html;if(aK&&aM){if("string"==typeof o.postponed&&H.isEmptyHTMLPrelude(o.postponed)){if(!0===T.isDev)throw Error(`The Navigation Inspector was active, but you attempted to load a blocking route. Reload the page to reset the inspector.
3
+
4
+ To identify why this route is blocking, refer to the Instant Navigation docs: https://preview.nextjs.org/docs/app/guides/instant-navigation`);let a=`<!DOCTYPE html><html><head><meta charSet="utf-8"/></head><body><script>document.cookie="${u.NEXT_INSTANT_TEST_COOKIE}=; Path=/; Max-Age=0"</script><p>The Navigation Inspector was active, but you attempted to load a blocking route. Reload the page to reset the inspector.</p><p>To identify why this route is blocking, refer to the <a href="https://preview.nextjs.org/docs/app/guides/instant-navigation">Instant Navigation docs</a>.</p></body></html>`;return(0,B.sendRenderResult)({req:b,res:r,generateEtags:ar.generateEtags,poweredByHeader:ar.poweredByHeader,result:y.default.fromStatic(a,z.HTML_CONTENT_TYPE_HEADER),cacheControl:{revalidate:0,expire:void 0}})}return x.push(new ReadableStream({start(a){a.enqueue(A.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,B.sendRenderResult)({req:b,res:r,generateEtags:ar.generateEtags,poweredByHeader:ar.poweredByHeader,result:x,cacheControl:{revalidate:0,expire:void 0}})}return!n||$||aF?(0,B.sendRenderResult)({req:b,res:r,generateEtags:ar.generateEtags,poweredByHeader:ar.poweredByHeader,result:x,cacheControl:m.cacheControl}):(aM||aN?x.push(new ReadableStream({start(a){a.enqueue(A.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})):t(x,o.postponed,a),(0,B.sendRenderResult)({req:b,res:r,generateEtags:ar.generateEtags,poweredByHeader:ar.poweredByHeader,result:x,cacheControl:{revalidate:0,expire:void 0}}))};if(!bd||!bc)return a=bb.getActiveScopeSpan(),await bb.withPropagatedContext(b.headers,()=>bb.trace(h.BaseServerSpan.handleRequest,{spanName:`${ba} ${U}`,kind:f.SpanKind.SERVER,attributes:{"http.method":ba,"http.target":_}},v),void 0,!bd);await v(bc)}catch(a){throw aK&&!r.headersSent&&r.setHeader("Set-Cookie",`${u.NEXT_INSTANT_TEST_COOKIE}=; Path=/; Max-Age=0`),a instanceof C.NoFallbackError||await T.onRequestError(b,a,{routerKind:"App Router",routePath:U,routeType:"render",revalidateReason:(0,e.getRevalidateReason)({isStaticGeneration:aZ,isOnDemandRevalidate:ax})},!1,aq),a}}return{__next_app__:S,routeModule:T,handler:X}}])},25128,function(a){a.n(a.i(91562))},78294,function(a){a.n(a.i(71717))},96338,function(a){a.n(a.i(21751))},62837,function(a){a.n(a.i(40795))},88648,function(a){a.n(a.i(68113))},5672,function(a){a.n(a.i(42440))},22922,function(a){a.n(a.i(96772))},70408,function(a){a.n(a.i(9095))},94331,function(a){a.n(a.i(60644))},74793,function(a){a.n(a.i(33169))},15988,function(a){a.n(a.i(56952))},25766,function(a){a.n(a.i(77341))},9185,function(a){a.n(a.i(29432))},21626,function(a){a.n(a.i(975))},90833,function(a){a.n(a.i(46994))},38534,function(a){a.n(a.i(98175))},22980,function(a){a.n(a.i(96195))},65911,function(a){a.n(a.i(8950))},85826,function(a){a.n(a.i(37111))},56157,function(a){a.n(a.i(18970))},72842,function(a){a.n(a.i(75164))},34607,function(a){a.n(a.i(11614))},54897,function(a){a.n(a.i(30106))},5785,function(a){a.n(a.i(90588))},69411,function(a){a.n(a.i(75700))},63081,function(a){a.n(a.i(276))},79847,function(a){a.n(a.i(3343))},88604,function(a){a.n(a.i(9210))},71306,(a,b,c)=>{b.exports=a.r(18622)},1268,function(a){a.n(a.i(91315))},88530,function(a){a.n(a.i(10531))},50642,function(a){a.n(a.i(12213))},89257,function(a){a.n(a.i(58579))},16625,function(a){a.n(a.i(85034))},110,function(a){a.n(a.i(8770))},21565,function(a){a.n(a.i(41763))},25466,function(a){a.n(a.i(91505))},40781,function(a){a.n(a.i(49670))},8583,function(a){a.n(a.i(1082))},12948,(a,b,c)=>{"use strict";function d(a){return a}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"instrumentModuleGetter",{enumerable:!0,get:function(){return d}})}];
5
+
6
+ //# sourceMappingURL=node_modules_next_dist_0janj0i6dqko7._.js.map
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js.map ADDED
The diff for this file is too large to render. See raw diff
 
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_0z_oheoyvwq5g._.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ (()=>{"use strict";module.exports=[67161,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"Image",{enumerable:!0,get:function(){return t}});let d=a.r(33354),e=a.r(46058),f=a.r(87924),g=e._(a.r(72131)),h=d._(a.r(35112)),i=d._(a.r(58018)),j=a.r(94915),k=a.r(53773),l=a.r(26239),m=d._(a.r(2305)),n=a.r(8591);function o(a,b,c,d,e,f,g){let h=a?.src;a&&a["data-loaded-src"]!==h&&(a["data-loaded-src"]=h,("decode"in a?a.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(a.parentElement&&a.isConnected){if("empty"!==b&&e(!0),c?.current){let b=new Event("load");Object.defineProperty(b,"target",{writable:!1,value:a});let d=!1,e=!1;c.current({...b,nativeEvent:b,currentTarget:a,target:a,isDefaultPrevented:()=>d,isPropagationStopped:()=>e,persist:()=>{},preventDefault:()=>{d=!0,b.preventDefault()},stopPropagation:()=>{e=!0,b.stopPropagation()}})}d?.current&&d.current(a)}}))}function p(a){return g.use?{fetchPriority:a}:{fetchpriority:a}}globalThis.__NEXT_IMAGE_IMPORTED=!0;let q=g.useEffect,r=(0,g.forwardRef)(({src:a,srcSet:b,sizes:c,height:d,width:e,decoding:h,className:i,style:j,fetchPriority:k,placeholder:l,loading:m,unoptimized:r,fill:s,onLoadRef:t,onLoadingCompleteRef:u,setBlurComplete:v,setShowAltText:w,sizesInput:x,onLoad:y,onError:z,...A},B)=>{let C=(0,g.useRef)(!1),D=(0,g.useRef)(null);q(()=>{let{current:a}=C,{current:b}=D;a||null===b||(z&&(b.src=b.src),b.complete&&o(b,l,t,u,v,r,x),C.current=!0)},[a,l,t,u,z,r,x]);let E=(0,n.useMergedRef)(B,D);return(0,f.jsx)("img",{...A,...p(k),loading:m,width:e,height:d,decoding:h,"data-nimg":s?"fill":"1",className:i,style:j,sizes:c,srcSet:b,src:a,ref:E,onLoad:a=>{o(a.currentTarget,l,t,u,v,r,x)},onError:a=>{w(!0),"empty"!==l&&v(!0),z&&z(a)}})});function s({isAppRouter:a,imgAttributes:b}){let c={as:"image",imageSrcSet:b.srcSet,imageSizes:b.sizes,crossOrigin:b.crossOrigin,referrerPolicy:b.referrerPolicy,...p(b.fetchPriority)};return a&&h.default.preload?(h.default.preload(b.src,c),null):(0,f.jsx)(i.default,{children:(0,f.jsx)("link",{rel:"preload",href:b.srcSet?void 0:b.src,...c},"__nimg-"+b.src+b.srcSet+b.sizes)})}let t=(0,g.forwardRef)((a,b)=>{let c=(0,g.useContext)(k.RouterContext),d=(0,l.useImageConfig)(),{onLoad:e,onLoadingComplete:h}=a,i=(0,g.useRef)(e);(0,g.useEffect)(()=>{i.current=e},[e]);let n=(0,g.useRef)(h);(0,g.useEffect)(()=>{n.current=h},[h]);let[o,p]=(0,g.useState)(!1),[q,t]=(0,g.useState)(!1),{props:u,meta:v}=(0,j.getImgProps)(a,{defaultLoader:m.default,imgConf:d,blurComplete:o,showAltText:q});return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(r,{...u,unoptimized:v.unoptimized,placeholder:v.placeholder,fill:v.fill,onLoadRef:i,onLoadingCompleteRef:n,setBlurComplete:p,setShowAltText:t,sizesInput:a.sizes,ref:b}),v.preload?(0,f.jsx)(s,{isAppRouter:!c,imgAttributes:u}):null]})});("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},26239,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"useImageConfig",{enumerable:!0,get:function(){return h}});let d=a.r(72131),e=a.r(345),f=a.r(4486),g={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1};function h(){let a=(0,d.useContext)(f.ImageConfigContext);return(0,e.prepareImageConfig)(g,a)}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},92966,(a,b,c)=>{b.exports=a.r(42602).vendored.contexts.HeadManagerContext},4486,(a,b,c)=>{b.exports=a.r(42602).vendored.contexts.ImageConfigContext},53773,(a,b,c)=>{b.exports=a.r(42602).vendored.contexts.RouterContext},35444,(a,b,c)=>{function d(a,b){let c=a||75;return b?.qualities?.length?b.qualities.reduce((a,b)=>Math.abs(b-c)<Math.abs(a-c)?b:a,b.qualities[0]):c}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"findClosestQuality",{enumerable:!0,get:function(){return d}})},94915,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"getImgProps",{enumerable:!0,get:function(){return i}});let d=a.r(68063),e=a.r(4987),f=["-moz-initial","fill","none","scale-down",void 0];function g(a){return void 0!==a.default}function h(a){return void 0===a?a:"number"==typeof a?Number.isFinite(a)?a:0/0:"string"==typeof a&&/^[0-9]+$/.test(a)?parseInt(a,10):0/0}function i({src:a,sizes:b,unoptimized:c=!1,priority:j=!1,preload:k=!1,loading:l,className:m,quality:n,width:o,height:p,fill:q=!1,style:r,overrideSrc:s,onLoad:t,onLoadingComplete:u,placeholder:v="empty",blurDataURL:w,fetchPriority:x,decoding:y="async",layout:z,objectFit:A,objectPosition:B,lazyBoundary:C,lazyRoot:D,...E},F){var G;let H,I,{imgConf:J,showAltText:K,blurComplete:L,defaultLoader:M}=F;if(void 0===M)throw Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config");let N=E.loader||M;delete E.loader,delete E.srcSet;let O="__next_img_default"in N;if(O){if("custom"===J.loader)throw Error(`Image with src "${a}" is missing "loader" prop.
2
+ Read more: https://nextjs.org/docs/messages/next-image-missing-loader`)}else{let a=N;N=b=>{let{config:c,...d}=b;return a(d)}}if(z){"fill"===z&&(q=!0);let a={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[z];a&&(r={...r,...a});let c={responsive:"100vw",fill:"100vw"}[z];c&&!b&&(b=c)}let P="",Q=h(o),R=h(p);if((G=a)&&"object"==typeof G&&(g(G)||void 0!==G.src)){let b=g(a)?a.default:a;if(!b.src)throw Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(b)}`);if(!b.height||!b.width)throw Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(b)}`);if(H=b.blurWidth,I=b.blurHeight,w=w||b.blurDataURL,P=b.src,!q)if(Q||R){if(Q&&!R){let a=Q/b.width;R=Math.round(b.height*a)}else if(!Q&&R){let a=R/b.height;Q=Math.round(b.width*a)}}else Q=b.width,R=b.height}let S=!j&&!k&&("lazy"===l||void 0===l);(!(a="string"==typeof a?a:P)||a.startsWith("data:")||a.startsWith("blob:"))&&(c=!0,S=!1),J.unoptimized&&(c=!0),O&&!J.dangerouslyAllowSVG&&a.split("?",1)[0].endsWith(".svg")&&(c=!0);let T=h(n),U=Object.assign(q?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:A,objectPosition:B}:{},K?{}:{color:"transparent"},r),V=L||"empty"===v?null:"blur"===v?`url("data:image/svg+xml;charset=utf-8,${(0,e.getImageBlurSvg)({widthInt:Q,heightInt:R,blurWidth:H,blurHeight:I,blurDataURL:w||"",objectFit:U.objectFit})}")`:`url("${v}")`,W=f.includes(U.objectFit)?"fill"===U.objectFit?"100% 100%":"cover":U.objectFit,X=V?{backgroundSize:W,backgroundPosition:U.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:V}:{},Y=function({config:a,src:b,unoptimized:c,width:e,quality:f,sizes:g,loader:h}){if(c){if(b.startsWith("/")&&!b.startsWith("//")){let a=(0,d.getDeploymentId)();if(b.includes("/_next/static/immutable")&&!(0,d.getAssetToken)())a=void 0;else if(a){let c=b.indexOf("?");if(-1!==c){let d=new URLSearchParams(b.slice(c+1));d.get("dpl")||(d.append("dpl",a),b=b.slice(0,c)+"?"+d.toString())}else b+=`?dpl=${a}`}}return{src:b,srcSet:void 0,sizes:void 0}}let{widths:i,kind:j}=function({deviceSizes:a,allSizes:b},c,d){if(d){let c=/(^|\s)(1?\d?\d)vw/g,e=[];for(let a;a=c.exec(d);)e.push(parseInt(a[2]));if(e.length){let c=.01*Math.min(...e);return{widths:b.filter(b=>b>=a[0]*c),kind:"w"}}return{widths:b,kind:"w"}}return"number"!=typeof c?{widths:a,kind:"w"}:{widths:[...new Set([c,2*c].map(a=>b.find(b=>b>=a)||b[b.length-1]))],kind:"x"}}(a,e,g),k=i.length-1;return{sizes:g||"w"!==j?g:"100vw",srcSet:i.map((c,d)=>`${h({config:a,src:b,quality:f,width:c})} ${"w"===j?c:d+1}${j}`).join(", "),src:h({config:a,src:b,quality:f,width:i[k]})}}({config:J,src:a,unoptimized:c,width:Q,quality:T,sizes:b,loader:N}),Z=S?"lazy":l;return{props:{...E,loading:Z,fetchPriority:x,width:Q,height:R,decoding:y,className:m,style:{...U,...X},sizes:Y.sizes,srcSet:Y.srcSet,src:s||Y.src},meta:{unoptimized:c,preload:k||j,placeholder:v,fill:q}}}},58018,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0});var d={default:function(){return p},defaultHead:function(){return l}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(33354),g=a.r(46058),h=a.r(87924),i=g._(a.r(72131)),j=f._(a.r(94613)),k=a.r(92966);function l(){return[(0,h.jsx)("meta",{charSet:"utf-8"},"charset"),(0,h.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function m(a,b){return"string"==typeof b||"number"==typeof b?a:b.type===i.default.Fragment?a.concat(i.default.Children.toArray(b.props.children).reduce((a,b)=>"string"==typeof b||"number"==typeof b?a:a.concat(b),[])):a.concat(b)}let n=["name","httpEquiv","charSet","itemProp"];function o(a){let b,c,d,e;return a.reduce(m,[]).reverse().concat(l().reverse()).filter((b=new Set,c=new Set,d=new Set,e={},a=>{let f=!0,g=!1;if(a.key&&"number"!=typeof a.key&&a.key.indexOf("$")>0){g=!0;let c=a.key.slice(a.key.indexOf("$")+1);b.has(c)?f=!1:b.add(c)}switch(a.type){case"title":case"base":c.has(a.type)?f=!1:c.add(a.type);break;case"meta":for(let b=0,c=n.length;b<c;b++){let c=n[b];if(a.props.hasOwnProperty(c))if("charSet"===c)d.has(c)?f=!1:d.add(c);else{let b=a.props[c],d=e[c]||new Set;("name"!==c||!g)&&d.has(b)?f=!1:(d.add(b),e[c]=d)}}}return f})).reverse().map((a,b)=>{let c=a.key||b;return i.default.cloneElement(a,{key:c})})}let p=function({children:a}){let b=(0,i.useContext)(k.HeadManagerContext);return(0,h.jsx)(j.default,{reduceComponentsToState:o,headManager:b,children:a})};("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},4987,(a,b,c)=>{function d({widthInt:a,heightInt:b,blurWidth:c,blurHeight:e,blurDataURL:f,objectFit:g}){let h=c?40*c:a,i=e?40*e:b,j=h&&i?`viewBox='0 0 ${h} ${i}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${j}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${j?"none":"contain"===g?"xMidYMid":"cover"===g?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${f}'/%3E%3C/svg%3E`}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"getImageBlurSvg",{enumerable:!0,get:function(){return d}})},345,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0});var d={VALID_LOADERS:function(){return f},imageConfigDefault:function(){return j},prepareImageConfig:function(){return i}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=["default","imgix","cloudinary","akamai","custom"],g={},h=new WeakMap;function i(a,b){let c=a??g,d=b??g,e=h.get(c);if(e){let a=e.get(d);if(a)return a}let f=a||b||j,i=[...f.deviceSizes].sort((a,b)=>a-b),k=[...f.imageSizes],l={deviceSizes:i,imageSizes:k,allSizes:[...i,...k].sort((a,b)=>a-b),qualities:void 0===f.qualities?void 0:[...f.qualities].sort((a,b)=>a-b),path:f.path,loader:f.loader,dangerouslyAllowSVG:f.dangerouslyAllowSVG,unoptimized:f.unoptimized,domains:f.domains,remotePatterns:f.remotePatterns,localPatterns:void 0!==b?b.localPatterns:f.localPatterns,output:f.output};return e||(e=new WeakMap,h.set(c,e)),e.set(d,l),l}let j={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumDiskCacheSize:void 0,maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1,customCacheHandler:!1}},2305,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return g}});let d=a.r(35444),e=a.r(68063);function f({config:a,src:b,width:c,quality:g}){let h=(0,e.getDeploymentId)();if(b.startsWith("/")&&!b.startsWith("//"))if(b.includes("/_next/static/immutable")&&!(0,e.getAssetToken)())h=void 0;else{let a=b.indexOf("?");if(-1!==a){let c=new URLSearchParams(b.slice(a+1)),d=c.get("dpl");if(d){h=d,c.delete("dpl");let e=c.toString();b=b.slice(0,a)+(e?"?"+e:"")}}}if(b.startsWith("/")&&b.includes("?")&&a.localPatterns?.length===1&&"**"===a.localPatterns[0].pathname&&""===a.localPatterns[0].search)throw Error(`Image with src "${b}" is using a query string which is not configured in images.localPatterns.
3
+ Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`);let i=(0,d.findClosestQuality)(g,a);return`${a.path}?url=${encodeURIComponent(b)}&w=${c}&q=${i}${b.startsWith("/")&&h?`&dpl=${h}`:""}`}f.__next_img_default=!0;let g=f},94613,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return f}});let d=a.r(72131),e=()=>{};function f(a){let{headManager:b,reduceComponentsToState:c}=a;return b?.mountedInstances?.add(a.children),function(){if(b&&b.mountedInstances){let a=d.Children.toArray(Array.from(b.mountedInstances).filter(Boolean));b.updateHead(c(a))}}(),e(),e(),null}}]})();
4
+
5
+ //# sourceMappingURL=node_modules_next_dist_0z_oheoyvwq5g._.js.map
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_0z_oheoyvwq5g._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../node_modules/next/src/client/image-component.tsx","../../../../node_modules/next/src/client/use-image-config.ts","../../../../node_modules/next/src/server/route-modules/app-page/vendored/contexts/head-manager-context.ts","../../../../node_modules/next/src/server/route-modules/app-page/vendored/contexts/image-config-context.ts","../../../../node_modules/next/src/server/route-modules/app-page/vendored/contexts/router-context.ts","../../../../node_modules/next/src/shared/lib/find-closest-quality.ts","../../../../node_modules/next/src/shared/lib/get-img-props.ts","../../../../node_modules/next/src/shared/lib/head.tsx","../../../../node_modules/next/src/shared/lib/image-blur-svg.ts","../../../../node_modules/next/src/shared/lib/image-config.ts","../../../../node_modules/next/src/shared/lib/image-loader.ts","../../../../node_modules/next/src/shared/lib/side-effect.tsx"],"sourcesContent":["'use client'\n\nimport React, {\n useRef,\n useEffect,\n useContext,\n useState,\n forwardRef,\n use,\n useLayoutEffect,\n} from 'react'\nimport ReactDOM from 'react-dom'\nimport Head from '../shared/lib/head'\nimport { getImgProps } from '../shared/lib/get-img-props'\nimport type {\n ImageProps,\n ImgProps,\n OnLoad,\n OnLoadingComplete,\n PlaceholderValue,\n} from '../shared/lib/get-img-props'\nimport type { ImageLoaderProps } from '../shared/lib/image-config'\nimport { RouterContext } from '../shared/lib/router-context.shared-runtime'\nimport { useImageConfig } from './use-image-config'\n\n// This is replaced by webpack alias\nimport defaultLoader from 'next/dist/shared/lib/image-loader'\nimport { useMergedRef } from './use-merged-ref'\n\nif (typeof window === 'undefined') {\n ;(globalThis as any).__NEXT_IMAGE_IMPORTED = true\n}\n\nexport type { ImageLoaderProps }\nexport type ImageLoader = (p: ImageLoaderProps) => string\n\ntype ImgElementWithDataProp = HTMLImageElement & {\n 'data-loaded-src'?: string | undefined\n}\n\ntype ImageElementProps = ImgProps & {\n unoptimized: boolean\n placeholder: PlaceholderValue\n onLoadRef: React.MutableRefObject<OnLoad | undefined>\n onLoadingCompleteRef: React.MutableRefObject<OnLoadingComplete | undefined>\n setBlurComplete: (b: boolean) => void\n setShowAltText: (b: boolean) => void\n sizesInput: string | undefined\n}\n\n// See https://stackoverflow.com/q/39777833/266535 for why we use this ref\n// handler instead of the img's onLoad attribute.\nfunction handleLoading(\n img: ImgElementWithDataProp,\n placeholder: PlaceholderValue,\n onLoadRef: React.MutableRefObject<OnLoad | undefined>,\n onLoadingCompleteRef: React.MutableRefObject<OnLoadingComplete | undefined>,\n setBlurComplete: (b: boolean) => void,\n unoptimized: boolean,\n sizesInput: string | undefined\n) {\n const src = img?.src\n if (!img || img['data-loaded-src'] === src) {\n return\n }\n img['data-loaded-src'] = src\n const p = 'decode' in img ? img.decode() : Promise.resolve()\n p.catch(() => {}).then(() => {\n if (!img.parentElement || !img.isConnected) {\n // Exit early in case of race condition:\n // - onload() is called\n // - decode() is called but incomplete\n // - unmount is called\n // - decode() completes\n return\n }\n if (placeholder !== 'empty') {\n setBlurComplete(true)\n }\n if (onLoadRef?.current) {\n // Since we don't have the SyntheticEvent here,\n // we must create one with the same shape.\n // See https://reactjs.org/docs/events.html\n const event = new Event('load')\n Object.defineProperty(event, 'target', { writable: false, value: img })\n let prevented = false\n let stopped = false\n onLoadRef.current({\n ...event,\n nativeEvent: event,\n currentTarget: img,\n target: img,\n isDefaultPrevented: () => prevented,\n isPropagationStopped: () => stopped,\n persist: () => {},\n preventDefault: () => {\n prevented = true\n event.preventDefault()\n },\n stopPropagation: () => {\n stopped = true\n event.stopPropagation()\n },\n })\n }\n if (onLoadingCompleteRef?.current) {\n onLoadingCompleteRef.current(img)\n }\n if (process.env.NODE_ENV !== 'production') {\n const { warnOnce } =\n require('../shared/lib/utils/warn-once') as typeof import('../shared/lib/utils/warn-once')\n const origSrc = new URL(src, 'http://n').searchParams.get('url') || src\n if (img.getAttribute('data-nimg') === 'fill') {\n if (!unoptimized && (!sizesInput || sizesInput === '100vw')) {\n let widthViewportRatio =\n img.getBoundingClientRect().width / window.innerWidth\n if (widthViewportRatio < 0.6) {\n if (sizesInput === '100vw') {\n warnOnce(\n `Image with src \"${origSrc}\" has \"fill\" prop and \"sizes\" prop of \"100vw\", but image is not rendered at full viewport width. Please adjust \"sizes\" to improve page performance. Read more: https://nextjs.org/docs/api-reference/next/image#sizes`\n )\n } else {\n warnOnce(\n `Image with src \"${origSrc}\" has \"fill\" but is missing \"sizes\" prop. Please add it to improve page performance. Read more: https://nextjs.org/docs/api-reference/next/image#sizes`\n )\n }\n }\n }\n if (img.parentElement) {\n const { position } = window.getComputedStyle(img.parentElement)\n const valid = ['absolute', 'fixed', 'relative']\n if (!valid.includes(position)) {\n warnOnce(\n `Image with src \"${origSrc}\" has \"fill\" and parent element with invalid \"position\". Provided \"${position}\" should be one of ${valid\n .map(String)\n .join(',')}.`\n )\n }\n }\n if (img.height === 0) {\n warnOnce(\n `Image with src \"${origSrc}\" has \"fill\" and a height value of 0. This is likely because the parent element of the image has not been styled to have a set height.`\n )\n }\n }\n\n const heightModified =\n img.height.toString() !== img.getAttribute('height')\n const widthModified = img.width.toString() !== img.getAttribute('width')\n if (\n (heightModified && !widthModified) ||\n (!heightModified && widthModified)\n ) {\n warnOnce(\n `Image with src \"${origSrc}\" has either width or height modified, but not the other. If you use CSS to change the size of your image, also include the styles 'width: \"auto\"' or 'height: \"auto\"' to maintain the aspect ratio.`\n )\n }\n }\n })\n}\n\nfunction getDynamicProps(\n fetchPriority?: string\n): Record<string, string | undefined> {\n if (Boolean(use)) {\n // In React 19.0.0 or newer, we must use camelCase\n // prop to avoid \"Warning: Invalid DOM property\".\n // See https://github.com/facebook/react/pull/25927\n return { fetchPriority }\n }\n // In React 18.2.0 or older, we must use lowercase prop\n // to avoid \"Warning: Invalid DOM property\".\n return { fetchpriority: fetchPriority }\n}\n\n/**\n * A version of useLayoutEffect that doesn't warn during SSR.\n * TODO: Just useLayoutEffect once support for React 18 is dropped.\n * Do not rename this to \"isomorphic layout effect\". There is no such thing as\n * an isomorphic Layout Effect since there is no Layout on the server\n */\nconst useNonWarningLayoutEffect =\n typeof window === 'undefined' ? useEffect : useLayoutEffect\n\nconst ImageElement = forwardRef<HTMLImageElement | null, ImageElementProps>(\n (\n {\n src,\n srcSet,\n sizes,\n height,\n width,\n decoding,\n className,\n style,\n fetchPriority,\n placeholder,\n loading,\n unoptimized,\n fill,\n onLoadRef,\n onLoadingCompleteRef,\n setBlurComplete,\n setShowAltText,\n sizesInput,\n onLoad,\n onError,\n ...rest\n },\n forwardedRef\n ) => {\n const didInsertRef = useRef(false)\n const insertedImgRef = useRef<HTMLImageElement>(null)\n\n useNonWarningLayoutEffect(() => {\n const { current: didInsert } = didInsertRef\n const { current: img } = insertedImgRef\n\n if (!didInsert && img !== null) {\n // Replay events from during hydration that React doesn't replay.\n if (onError) {\n // If the image has an error before react hydrates, then the error is lost.\n // The workaround is to wait until the image is mounted which is after hydration,\n // then we set the src again to trigger the error handler (if there was an error).\n // This doesn't just trigger the error handler but retries the whole request.\n // TODO: Consider dispatching a synthetic event instead.\n // eslint-disable-next-line no-self-assign\n img.src = img.src\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (!src) {\n console.error(`Image is missing required \"src\" property:`, img)\n }\n if (img.getAttribute('alt') === null) {\n console.error(\n `Image is missing required \"alt\" property. Please add Alternative Text to describe the image for screen readers and search engines.`\n )\n }\n }\n if (img.complete) {\n handleLoading(\n img,\n placeholder,\n onLoadRef,\n onLoadingCompleteRef,\n setBlurComplete,\n unoptimized,\n sizesInput\n )\n }\n didInsertRef.current = true\n }\n }, [\n src,\n placeholder,\n onLoadRef,\n onLoadingCompleteRef,\n onError,\n unoptimized,\n sizesInput,\n ])\n\n const ref = useMergedRef(forwardedRef, insertedImgRef)\n\n return (\n // If you move this element creation, also move the Layout Effect above\n // reading from the ref. Otherwise we might run the Layout Effect when\n // the current value isn't set to the HTMLImageElement instance.\n <img\n {...rest}\n {...getDynamicProps(fetchPriority)}\n // It's intended to keep `loading` before `src` because React updates\n // props in order which causes Safari/Firefox to not lazy load properly.\n // See https://github.com/facebook/react/issues/25883\n loading={loading}\n width={width}\n height={height}\n decoding={decoding}\n data-nimg={fill ? 'fill' : '1'}\n className={className}\n style={style}\n // It's intended to keep `src` the last attribute because React updates\n // attributes in order. If we keep `src` the first one, Safari will\n // immediately start to fetch `src`, before `sizes` and `srcSet` are even\n // updated by React. That causes multiple unnecessary requests if `srcSet`\n // and `sizes` are defined.\n // This bug cannot be reproduced in Chrome or Firefox.\n sizes={sizes}\n srcSet={srcSet}\n src={src}\n ref={ref}\n onLoad={(event) => {\n const currentImage = event.currentTarget\n handleLoading(\n currentImage,\n placeholder,\n onLoadRef,\n onLoadingCompleteRef,\n setBlurComplete,\n unoptimized,\n sizesInput\n )\n }}\n onError={(event) => {\n // if the real image fails to load, this will ensure \"alt\" is visible\n setShowAltText(true)\n if (placeholder !== 'empty') {\n // If the real image fails to load, this will still remove the placeholder.\n setBlurComplete(true)\n }\n if (onError) {\n onError(event)\n }\n }}\n />\n )\n }\n)\n\nfunction ImagePreload({\n isAppRouter,\n imgAttributes,\n}: {\n isAppRouter: boolean\n imgAttributes: ImgProps\n}) {\n const opts: ReactDOM.PreloadOptions = {\n as: 'image',\n imageSrcSet: imgAttributes.srcSet,\n imageSizes: imgAttributes.sizes,\n crossOrigin: imgAttributes.crossOrigin,\n referrerPolicy: imgAttributes.referrerPolicy,\n ...getDynamicProps(imgAttributes.fetchPriority),\n }\n\n if (isAppRouter && ReactDOM.preload) {\n ReactDOM.preload(imgAttributes.src, opts)\n return null\n }\n\n return (\n <Head>\n <link\n key={\n '__nimg-' +\n imgAttributes.src +\n imgAttributes.srcSet +\n imgAttributes.sizes\n }\n rel=\"preload\"\n // Note how we omit the `href` attribute, as it would only be relevant\n // for browsers that do not support `imagesrcset`, and in those cases\n // it would cause the incorrect image to be preloaded.\n //\n // https://html.spec.whatwg.org/multipage/semantics.html#attr-link-imagesrcset\n href={imgAttributes.srcSet ? undefined : imgAttributes.src}\n {...opts}\n />\n </Head>\n )\n}\n\n/**\n * The `Image` component is used to optimize images.\n *\n * Read more: [Next.js docs: `Image`](https://nextjs.org/docs/app/api-reference/components/image)\n */\nexport const Image = forwardRef<HTMLImageElement | null, ImageProps>(\n (props, forwardedRef) => {\n const pagesRouter = useContext(RouterContext)\n // We're in the app directory if there is no pages router.\n const isAppRouter = !pagesRouter\n\n const config = useImageConfig()\n\n const { onLoad, onLoadingComplete } = props\n const onLoadRef = useRef(onLoad)\n\n useEffect(() => {\n onLoadRef.current = onLoad\n }, [onLoad])\n\n const onLoadingCompleteRef = useRef(onLoadingComplete)\n\n useEffect(() => {\n onLoadingCompleteRef.current = onLoadingComplete\n }, [onLoadingComplete])\n\n const [blurComplete, setBlurComplete] = useState(false)\n const [showAltText, setShowAltText] = useState(false)\n const { props: imgAttributes, meta: imgMeta } = getImgProps(props, {\n defaultLoader,\n imgConf: config,\n blurComplete,\n showAltText,\n })\n\n return (\n <>\n {\n <ImageElement\n {...imgAttributes}\n unoptimized={imgMeta.unoptimized}\n placeholder={imgMeta.placeholder}\n fill={imgMeta.fill}\n onLoadRef={onLoadRef}\n onLoadingCompleteRef={onLoadingCompleteRef}\n setBlurComplete={setBlurComplete}\n setShowAltText={setShowAltText}\n sizesInput={props.sizes}\n ref={forwardedRef}\n />\n }\n {imgMeta.preload ? (\n <ImagePreload\n isAppRouter={isAppRouter}\n imgAttributes={imgAttributes}\n />\n ) : null}\n </>\n )\n }\n)\n","'use client'\n\nimport { useContext } from 'react'\nimport {\n prepareImageConfig,\n type ImageConfigForRendering,\n} from '../shared/lib/image-config'\nimport { ImageConfigContext } from '../shared/lib/image-config-context.shared-runtime'\n\n// This is replaced by the bundler define plugin.\nconst configEnv = process.env.__NEXT_IMAGE_OPTS as any as\n | ImageConfigForRendering\n | undefined\n\nexport function useImageConfig() {\n const configContext = useContext(ImageConfigContext)\n return prepareImageConfig(configEnv, configContext)\n}\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['contexts'].HeadManagerContext\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['contexts'].ImageConfigContext\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['contexts'].RouterContext\n","import type { NextConfig } from '../../server/config-shared'\n\n/**\n * Find the closest matching `quality` in the list of `config.qualities`\n * @param quality the quality prop passed to the image component\n * @param config the \"images\" configuration from next.config.js\n * @returns the closest matching quality value\n */\nexport function findClosestQuality(\n quality: number | undefined,\n config: NextConfig['images'] | undefined\n): number {\n const q = quality || 75\n if (!config?.qualities?.length) {\n return q\n }\n return config.qualities.reduce(\n (prev, cur) => (Math.abs(cur - q) < Math.abs(prev - q) ? cur : prev),\n config.qualities[0]\n )\n}\n","import { getAssetToken, getDeploymentId } from './deployment-id'\nimport { getImageBlurSvg } from './image-blur-svg'\nimport type {\n ImageLoaderProps,\n ImageLoaderPropsWithConfig,\n PreparedImageConfig,\n} from './image-config'\n\nimport type { CSSProperties, JSX } from 'react'\n\nexport interface StaticImageData {\n src: string\n height: number\n width: number\n blurDataURL?: string\n blurWidth?: number\n blurHeight?: number\n}\n\nexport interface StaticRequire {\n default: StaticImageData\n}\n\nexport type StaticImport = StaticRequire | StaticImageData\n\nexport type ImageProps = Omit<\n JSX.IntrinsicElements['img'],\n 'src' | 'srcSet' | 'ref' | 'alt' | 'width' | 'height' | 'loading'\n> & {\n src: string | StaticImport\n alt: string\n width?: number | `${number}`\n height?: number | `${number}`\n fill?: boolean\n loader?: ImageLoader\n quality?: number | `${number}`\n preload?: boolean\n /**\n * @deprecated Use `preload` prop instead.\n * See https://nextjs.org/docs/app/api-reference/components/image#preload\n */\n priority?: boolean\n loading?: LoadingValue\n placeholder?: PlaceholderValue\n blurDataURL?: string\n unoptimized?: boolean\n overrideSrc?: string\n /**\n * @deprecated Use `onLoad` instead.\n * @see https://nextjs.org/docs/app/api-reference/components/image#onload\n */\n onLoadingComplete?: OnLoadingComplete\n /**\n * @deprecated Use `fill` prop instead of `layout=\"fill\"` or change import to `next/legacy/image`.\n * @see https://nextjs.org/docs/api-reference/next/legacy/image\n */\n layout?: string\n /**\n * @deprecated Use `style` prop instead.\n */\n objectFit?: string\n /**\n * @deprecated Use `style` prop instead.\n */\n objectPosition?: string\n /**\n * @deprecated This prop does not do anything.\n */\n lazyBoundary?: string\n /**\n * @deprecated This prop does not do anything.\n */\n lazyRoot?: string\n}\n\nexport type ImgProps = Omit<ImageProps, 'src' | 'loader'> & {\n loading: LoadingValue\n width: number | undefined\n height: number | undefined\n style: NonNullable<JSX.IntrinsicElements['img']['style']>\n sizes: string | undefined\n srcSet: string | undefined\n src: string\n}\n\nconst VALID_LOADING_VALUES = ['lazy', 'eager', undefined] as const\n\n// Object-fit values that are not valid background-size values\nconst INVALID_BACKGROUND_SIZE_VALUES = [\n '-moz-initial',\n 'fill',\n 'none',\n 'scale-down',\n undefined,\n]\ntype LoadingValue = (typeof VALID_LOADING_VALUES)[number]\ntype ImageConfig = PreparedImageConfig\n\nexport type ImageLoader = (p: ImageLoaderProps) => string\n\n// Do not export - this is an internal type only\n// because `next.config.js` is only meant for the\n// built-in loaders, not for a custom loader() prop.\ntype ImageLoaderWithConfig = (p: ImageLoaderPropsWithConfig) => string\n\nexport type PlaceholderValue = 'blur' | 'empty' | `data:image/${string}`\nexport type OnLoad = React.ReactEventHandler<HTMLImageElement> | undefined\nexport type OnLoadingComplete = (img: HTMLImageElement) => void\n\nexport type PlaceholderStyle = Partial<\n Pick<\n CSSProperties,\n | 'backgroundSize'\n | 'backgroundPosition'\n | 'backgroundRepeat'\n | 'backgroundImage'\n >\n>\n\nfunction isStaticRequire(\n src: StaticRequire | StaticImageData\n): src is StaticRequire {\n return (src as StaticRequire).default !== undefined\n}\n\nfunction isStaticImageData(\n src: StaticRequire | StaticImageData\n): src is StaticImageData {\n return (src as StaticImageData).src !== undefined\n}\n\nfunction isStaticImport(src: string | StaticImport): src is StaticImport {\n return (\n !!src &&\n typeof src === 'object' &&\n (isStaticRequire(src as StaticImport) ||\n isStaticImageData(src as StaticImport))\n )\n}\n\nconst allImgs = new Map<\n string,\n { src: string; loading: LoadingValue; placeholder: PlaceholderValue }\n>()\nlet perfObserver: PerformanceObserver | undefined\n\nfunction getInt(x: unknown): number | undefined {\n if (typeof x === 'undefined') {\n return x\n }\n if (typeof x === 'number') {\n return Number.isFinite(x) ? x : NaN\n }\n if (typeof x === 'string' && /^[0-9]+$/.test(x)) {\n return parseInt(x, 10)\n }\n return NaN\n}\n\nfunction getWidths(\n { deviceSizes, allSizes }: ImageConfig,\n width: number | undefined,\n sizes: string | undefined\n): { widths: number[]; kind: 'w' | 'x' } {\n if (sizes) {\n // Find all the \"vw\" percent sizes used in the sizes prop\n const viewportWidthRe = /(^|\\s)(1?\\d?\\d)vw/g\n const percentSizes = []\n for (let match; (match = viewportWidthRe.exec(sizes)); match) {\n percentSizes.push(parseInt(match[2]))\n }\n if (percentSizes.length) {\n const smallestRatio = Math.min(...percentSizes) * 0.01\n return {\n widths: allSizes.filter((s) => s >= deviceSizes[0] * smallestRatio),\n kind: 'w',\n }\n }\n return { widths: allSizes, kind: 'w' }\n }\n if (typeof width !== 'number') {\n return { widths: deviceSizes, kind: 'w' }\n }\n\n const widths = [\n ...new Set(\n // > This means that most OLED screens that say they are 3x resolution,\n // > are actually 3x in the green color, but only 1.5x in the red and\n // > blue colors. Showing a 3x resolution image in the app vs a 2x\n // > resolution image will be visually the same, though the 3x image\n // > takes significantly more data. Even true 3x resolution screens are\n // > wasteful as the human eye cannot see that level of detail without\n // > something like a magnifying glass.\n // https://blog.twitter.com/engineering/en_us/topics/infrastructure/2019/capping-image-fidelity-on-ultra-high-resolution-devices.html\n [width, width * 2 /*, width * 3*/].map(\n (w) => allSizes.find((p) => p >= w) || allSizes[allSizes.length - 1]\n )\n ),\n ]\n return { widths, kind: 'x' }\n}\n\ntype GenImgAttrsData = {\n config: ImageConfig\n src: string\n unoptimized: boolean\n loader: ImageLoaderWithConfig\n width?: number\n quality?: number\n sizes?: string\n}\n\ntype GenImgAttrsResult = {\n src: string\n srcSet: string | undefined\n sizes: string | undefined\n}\n\nfunction generateImgAttrs({\n config,\n src,\n unoptimized,\n width,\n quality,\n sizes,\n loader,\n}: GenImgAttrsData): GenImgAttrsResult {\n if (unoptimized) {\n if (src.startsWith('/') && !src.startsWith('//')) {\n let deploymentId = getDeploymentId()\n if (src.includes('/_next/static/immutable') && !getAssetToken()) {\n // immutable static asset and supported by platform, don't add `?dpl=`\n deploymentId = undefined\n } else if (deploymentId) {\n // We unfortunately can't easily use `new URL()` here, because it normalizes the URL which causes\n // double-encoding with the `encodeURIComponent(src)` below\n const qIndex = src.indexOf('?')\n if (qIndex !== -1) {\n const params = new URLSearchParams(src.slice(qIndex + 1))\n const srcDpl = params.get('dpl')\n if (!srcDpl) {\n // src is missing the dpl parameter, but we have a deploymentId, so add it to the src URL\n params.append('dpl', deploymentId)\n src = src.slice(0, qIndex) + '?' + params.toString()\n }\n } else {\n // src is missing the dpl parameter, but we have a deploymentId, so add it to the src URL\n src = src + `?dpl=${deploymentId}`\n }\n }\n }\n return { src, srcSet: undefined, sizes: undefined }\n }\n\n const { widths, kind } = getWidths(config, width, sizes)\n const last = widths.length - 1\n\n return {\n sizes: !sizes && kind === 'w' ? '100vw' : sizes,\n srcSet: widths\n .map(\n (w, i) =>\n `${loader({ config, src, quality, width: w })} ${\n kind === 'w' ? w : i + 1\n }${kind}`\n )\n .join(', '),\n\n // It's intended to keep `src` the last attribute because React updates\n // attributes in order. If we keep `src` the first one, Safari will\n // immediately start to fetch `src`, before `sizes` and `srcSet` are even\n // updated by React. That causes multiple unnecessary requests if `srcSet`\n // and `sizes` are defined.\n // This bug cannot be reproduced in Chrome or Firefox.\n src: loader({ config, src, quality, width: widths[last] }),\n }\n}\n\n/**\n * A shared function, used on both client and server, to generate the props for <img>.\n */\nexport function getImgProps(\n {\n src,\n sizes,\n unoptimized = false,\n priority = false,\n preload = false,\n loading,\n className,\n quality,\n width,\n height,\n fill = false,\n style,\n overrideSrc,\n onLoad,\n onLoadingComplete,\n placeholder = 'empty',\n blurDataURL,\n fetchPriority,\n decoding = 'async',\n layout,\n objectFit,\n objectPosition,\n lazyBoundary,\n lazyRoot,\n ...rest\n }: ImageProps,\n _state: {\n defaultLoader: ImageLoaderWithConfig\n imgConf: ImageConfig\n showAltText?: boolean\n blurComplete?: boolean\n }\n): {\n props: ImgProps\n meta: {\n unoptimized: boolean\n preload: boolean\n placeholder: NonNullable<ImageProps['placeholder']>\n fill: boolean\n }\n} {\n const { imgConf: config, showAltText, blurComplete, defaultLoader } = _state\n\n if (typeof defaultLoader === 'undefined') {\n throw new Error(\n 'images.loaderFile detected but the file is missing default export.\\nRead more: https://nextjs.org/docs/messages/invalid-images-config'\n )\n }\n let loader: ImageLoaderWithConfig = rest.loader || defaultLoader\n\n // Remove property so it's not spread on <img> element\n delete rest.loader\n delete (rest as any).srcSet\n\n // This special value indicates that the user\n // didn't define a \"loader\" prop or \"loader\" config.\n const isDefaultLoader = '__next_img_default' in loader\n\n if (isDefaultLoader) {\n if (config.loader === 'custom') {\n throw new Error(\n `Image with src \"${src}\" is missing \"loader\" prop.` +\n `\\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader`\n )\n }\n } else {\n // The user defined a \"loader\" prop or config.\n // Since the config object is internal only, we\n // must not pass it to the user-defined \"loader\".\n const customImageLoader = loader as ImageLoader\n loader = (obj) => {\n const { config: _, ...opts } = obj\n return customImageLoader(opts)\n }\n }\n\n if (layout) {\n if (layout === 'fill') {\n fill = true\n }\n const layoutToStyle: Record<string, Record<string, string> | undefined> = {\n intrinsic: { maxWidth: '100%', height: 'auto' },\n responsive: { width: '100%', height: 'auto' },\n }\n const layoutToSizes: Record<string, string | undefined> = {\n responsive: '100vw',\n fill: '100vw',\n }\n const layoutStyle = layoutToStyle[layout]\n if (layoutStyle) {\n style = { ...style, ...layoutStyle }\n }\n const layoutSizes = layoutToSizes[layout]\n if (layoutSizes && !sizes) {\n sizes = layoutSizes\n }\n }\n\n let staticSrc = ''\n let widthInt = getInt(width)\n let heightInt = getInt(height)\n let blurWidth: number | undefined\n let blurHeight: number | undefined\n if (isStaticImport(src)) {\n const staticImageData = isStaticRequire(src) ? src.default : src\n\n if (!staticImageData.src) {\n throw new Error(\n `An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(\n staticImageData\n )}`\n )\n }\n if (!staticImageData.height || !staticImageData.width) {\n throw new Error(\n `An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(\n staticImageData\n )}`\n )\n }\n\n blurWidth = staticImageData.blurWidth\n blurHeight = staticImageData.blurHeight\n blurDataURL = blurDataURL || staticImageData.blurDataURL\n staticSrc = staticImageData.src\n\n if (!fill) {\n if (!widthInt && !heightInt) {\n widthInt = staticImageData.width\n heightInt = staticImageData.height\n } else if (widthInt && !heightInt) {\n const ratio = widthInt / staticImageData.width\n heightInt = Math.round(staticImageData.height * ratio)\n } else if (!widthInt && heightInt) {\n const ratio = heightInt / staticImageData.height\n widthInt = Math.round(staticImageData.width * ratio)\n }\n }\n }\n src = typeof src === 'string' ? src : staticSrc\n\n let isLazy =\n !priority &&\n !preload &&\n (loading === 'lazy' || typeof loading === 'undefined')\n if (!src || src.startsWith('data:') || src.startsWith('blob:')) {\n // https://developer.mozilla.org/docs/Web/HTTP/Basics_of_HTTP/Data_URIs\n unoptimized = true\n isLazy = false\n }\n if (config.unoptimized) {\n unoptimized = true\n }\n if (\n isDefaultLoader &&\n !config.dangerouslyAllowSVG &&\n src.split('?', 1)[0].endsWith('.svg')\n ) {\n // Special case to make svg serve as-is to avoid proxying\n // through the built-in Image Optimization API.\n unoptimized = true\n }\n\n const qualityInt = getInt(quality)\n\n if (process.env.NODE_ENV !== 'production') {\n const { warnOnce } =\n require('./utils/warn-once') as typeof import('./utils/warn-once')\n if (config.output === 'export' && isDefaultLoader && !unoptimized) {\n throw new Error(\n `Image Optimization using the default loader is not compatible with \\`{ output: 'export' }\\`.\n Possible solutions:\n - Remove \\`{ output: 'export' }\\` and run \"next start\" to run server mode including the Image Optimization API.\n - Configure \\`{ images: { unoptimized: true } }\\` in \\`next.config.js\\` to disable the Image Optimization API.\n Read more: https://nextjs.org/docs/messages/export-image-api`\n )\n }\n if (!src) {\n // React doesn't show the stack trace and there's\n // no `src` to help identify which image, so we\n // instead console.error(ref) during mount.\n unoptimized = true\n } else {\n if (fill) {\n if (width) {\n throw new Error(\n `Image with src \"${src}\" has both \"width\" and \"fill\" properties. Only one should be used.`\n )\n }\n if (height) {\n throw new Error(\n `Image with src \"${src}\" has both \"height\" and \"fill\" properties. Only one should be used.`\n )\n }\n if (style?.position && style.position !== 'absolute') {\n throw new Error(\n `Image with src \"${src}\" has both \"fill\" and \"style.position\" properties. Images with \"fill\" always use position absolute - it cannot be modified.`\n )\n }\n if (style?.width && style.width !== '100%') {\n throw new Error(\n `Image with src \"${src}\" has both \"fill\" and \"style.width\" properties. Images with \"fill\" always use width 100% - it cannot be modified.`\n )\n }\n if (style?.height && style.height !== '100%') {\n throw new Error(\n `Image with src \"${src}\" has both \"fill\" and \"style.height\" properties. Images with \"fill\" always use height 100% - it cannot be modified.`\n )\n }\n } else {\n if (typeof widthInt === 'undefined') {\n throw new Error(\n `Image with src \"${src}\" is missing required \"width\" property.`\n )\n } else if (isNaN(widthInt)) {\n throw new Error(\n `Image with src \"${src}\" has invalid \"width\" property. Expected a numeric value in pixels but received \"${width}\".`\n )\n }\n if (typeof heightInt === 'undefined') {\n throw new Error(\n `Image with src \"${src}\" is missing required \"height\" property.`\n )\n } else if (isNaN(heightInt)) {\n throw new Error(\n `Image with src \"${src}\" has invalid \"height\" property. Expected a numeric value in pixels but received \"${height}\".`\n )\n }\n // eslint-disable-next-line no-control-regex\n if (/^[\\x00-\\x20]/.test(src)) {\n throw new Error(\n `Image with src \"${src}\" cannot start with a space or control character. Use src.trimStart() to remove it or encodeURIComponent(src) to keep it.`\n )\n }\n // eslint-disable-next-line no-control-regex\n if (/[\\x00-\\x20]$/.test(src)) {\n throw new Error(\n `Image with src \"${src}\" cannot end with a space or control character. Use src.trimEnd() to remove it or encodeURIComponent(src) to keep it.`\n )\n }\n }\n }\n if (!VALID_LOADING_VALUES.includes(loading)) {\n throw new Error(\n `Image with src \"${src}\" has invalid \"loading\" property. Provided \"${loading}\" should be one of ${VALID_LOADING_VALUES.map(\n String\n ).join(',')}.`\n )\n }\n if (priority && loading === 'lazy') {\n throw new Error(\n `Image with src \"${src}\" has both \"priority\" and \"loading='lazy'\" properties. Only one should be used.`\n )\n }\n if (preload && loading === 'lazy') {\n throw new Error(\n `Image with src \"${src}\" has both \"preload\" and \"loading='lazy'\" properties. Only one should be used.`\n )\n }\n if (preload && priority) {\n throw new Error(\n `Image with src \"${src}\" has both \"preload\" and \"priority\" properties. Only \"preload\" should be used.`\n )\n }\n if (\n placeholder !== 'empty' &&\n placeholder !== 'blur' &&\n !placeholder.startsWith('data:image/')\n ) {\n throw new Error(\n `Image with src \"${src}\" has invalid \"placeholder\" property \"${placeholder}\".`\n )\n }\n if (placeholder !== 'empty') {\n if (widthInt && heightInt && widthInt * heightInt < 1600) {\n warnOnce(\n `Image with src \"${src}\" is smaller than 40x40. Consider removing the \"placeholder\" property to improve performance.`\n )\n }\n }\n if (\n qualityInt &&\n config.qualities &&\n !config.qualities.includes(qualityInt)\n ) {\n warnOnce(\n `Image with src \"${src}\" is using quality \"${qualityInt}\" which is not configured in images.qualities [${config.qualities.join(', ')}]. Please update your config to [${[...config.qualities, qualityInt].sort().join(', ')}].` +\n `\\nRead more: https://nextjs.org/docs/messages/next-image-unconfigured-qualities`\n )\n }\n if (placeholder === 'blur' && !blurDataURL) {\n const VALID_BLUR_EXT = ['jpeg', 'png', 'webp', 'avif'] // should match next-image-loader\n\n throw new Error(\n `Image with src \"${src}\" has \"placeholder='blur'\" property but is missing the \"blurDataURL\" property.\n Possible solutions:\n - Add a \"blurDataURL\" property, the contents should be a small Data URL to represent the image\n - Change the \"src\" property to a static import with one of the supported file types: ${VALID_BLUR_EXT.join(\n ','\n )} (animated images not supported)\n - Remove the \"placeholder\" property, effectively no blur effect\n Read more: https://nextjs.org/docs/messages/placeholder-blur-data-url`\n )\n }\n if ('ref' in rest) {\n warnOnce(\n `Image with src \"${src}\" is using unsupported \"ref\" property. Consider using the \"onLoad\" property instead.`\n )\n }\n\n if (!unoptimized && !isDefaultLoader) {\n const urlStr = loader({\n config,\n src,\n width: widthInt || 400,\n quality: qualityInt || 75,\n })\n let url: URL | undefined\n try {\n url = new URL(urlStr)\n } catch (err) {}\n if (urlStr === src || (url && url.pathname === src && !url.search)) {\n warnOnce(\n `Image with src \"${src}\" has a \"loader\" property that does not implement width. Please implement it or use the \"unoptimized\" property instead.` +\n `\\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader-width`\n )\n }\n }\n\n if (onLoadingComplete) {\n warnOnce(\n `Image with src \"${src}\" is using deprecated \"onLoadingComplete\" property. Please use the \"onLoad\" property instead.`\n )\n }\n\n for (const [legacyKey, legacyValue] of Object.entries({\n layout,\n objectFit,\n objectPosition,\n lazyBoundary,\n lazyRoot,\n })) {\n if (legacyValue) {\n warnOnce(\n `Image with src \"${src}\" has legacy prop \"${legacyKey}\". Did you forget to run the codemod?` +\n `\\nRead more: https://nextjs.org/docs/messages/next-image-upgrade-to-13`\n )\n }\n }\n\n if (\n typeof window !== 'undefined' &&\n !perfObserver &&\n window.PerformanceObserver\n ) {\n perfObserver = new PerformanceObserver((entryList) => {\n for (const entry of entryList.getEntries()) {\n // @ts-ignore - missing \"LargestContentfulPaint\" class with \"element\" prop\n const imgSrc = entry?.element?.src || ''\n const lcpImage = allImgs.get(imgSrc)\n if (\n lcpImage &&\n lcpImage.loading === 'lazy' &&\n lcpImage.placeholder === 'empty' &&\n !lcpImage.src.startsWith('data:') &&\n !lcpImage.src.startsWith('blob:')\n ) {\n // https://web.dev/lcp/#measure-lcp-in-javascript\n warnOnce(\n `Image with src \"${lcpImage.src}\" was detected as the Largest Contentful Paint (LCP). Please add the \\`loading=\"eager\"\\` property if this image is above the fold.` +\n `\\nRead more: https://nextjs.org/docs/app/api-reference/components/image#loading`\n )\n }\n }\n })\n try {\n perfObserver.observe({\n type: 'largest-contentful-paint',\n buffered: true,\n })\n } catch (err) {\n // Log error but don't crash the app\n console.error(err)\n }\n }\n }\n const imgStyle = Object.assign(\n fill\n ? {\n position: 'absolute',\n height: '100%',\n width: '100%',\n left: 0,\n top: 0,\n right: 0,\n bottom: 0,\n objectFit,\n objectPosition,\n }\n : {},\n showAltText ? {} : { color: 'transparent' },\n style\n )\n\n const backgroundImage =\n !blurComplete && placeholder !== 'empty'\n ? placeholder === 'blur'\n ? `url(\"data:image/svg+xml;charset=utf-8,${getImageBlurSvg({\n widthInt,\n heightInt,\n blurWidth,\n blurHeight,\n blurDataURL: blurDataURL || '', // assume not undefined\n objectFit: imgStyle.objectFit,\n })}\")`\n : `url(\"${placeholder}\")` // assume `data:image/`\n : null\n\n const backgroundSize = !INVALID_BACKGROUND_SIZE_VALUES.includes(\n imgStyle.objectFit\n )\n ? imgStyle.objectFit\n : imgStyle.objectFit === 'fill'\n ? '100% 100%' // the background-size equivalent of `fill`\n : 'cover'\n\n let placeholderStyle: PlaceholderStyle = backgroundImage\n ? {\n backgroundSize,\n backgroundPosition: imgStyle.objectPosition || '50% 50%',\n backgroundRepeat: 'no-repeat',\n backgroundImage,\n }\n : {}\n\n if (process.env.NODE_ENV === 'development') {\n if (\n placeholderStyle.backgroundImage &&\n placeholder === 'blur' &&\n blurDataURL?.startsWith('/')\n ) {\n // During `next dev`, we don't want to generate blur placeholders with webpack\n // because it can delay starting the dev server. Instead, `next-image-loader.js`\n // will inline a special url to lazily generate the blur placeholder at request time.\n placeholderStyle.backgroundImage = `url(\"${blurDataURL}\")`\n }\n }\n\n const imgAttributes = generateImgAttrs({\n config,\n src,\n unoptimized,\n width: widthInt,\n quality: qualityInt,\n sizes,\n loader,\n })\n\n const loadingFinal = isLazy ? 'lazy' : loading\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof window !== 'undefined') {\n let fullUrl: URL\n try {\n fullUrl = new URL(imgAttributes.src)\n } catch (e) {\n fullUrl = new URL(imgAttributes.src, window.location.href)\n }\n allImgs.set(fullUrl.href, { src, loading: loadingFinal, placeholder })\n }\n }\n\n const props: ImgProps = {\n ...rest,\n loading: loadingFinal,\n fetchPriority,\n width: widthInt,\n height: heightInt,\n decoding,\n className,\n style: { ...imgStyle, ...placeholderStyle },\n sizes: imgAttributes.sizes,\n srcSet: imgAttributes.srcSet,\n src: overrideSrc || imgAttributes.src,\n }\n const meta = { unoptimized, preload: preload || priority, placeholder, fill }\n return { props, meta }\n}\n","'use client'\n\nimport React, { useContext, type JSX } from 'react'\nimport Effect from './side-effect'\nimport { HeadManagerContext } from './head-manager-context.shared-runtime'\n\nexport function defaultHead(): JSX.Element[] {\n const head = [\n <meta charSet=\"utf-8\" key=\"charset\" />,\n <meta name=\"viewport\" content=\"width=device-width\" key=\"viewport\" />,\n ]\n return head\n}\n\nfunction onlyReactElement(\n list: Array<React.ReactElement<any>>,\n child: React.ReactElement | number | string\n): Array<React.ReactElement<any>> {\n // React children can be \"string\" or \"number\" in this case we ignore them for backwards compat\n if (typeof child === 'string' || typeof child === 'number') {\n return list\n }\n // Adds support for React.Fragment\n if (child.type === React.Fragment) {\n return list.concat(\n // @ts-expect-error @types/react does not remove fragments but this could also return ReactPortal[]\n React.Children.toArray(child.props.children).reduce(\n // @ts-expect-error @types/react does not remove fragments but this could also return ReactPortal[]\n (\n fragmentList: Array<React.ReactElement<any>>,\n fragmentChild: React.ReactElement | number | string\n ): Array<React.ReactElement<any>> => {\n if (\n typeof fragmentChild === 'string' ||\n typeof fragmentChild === 'number'\n ) {\n return fragmentList\n }\n return fragmentList.concat(fragmentChild)\n },\n []\n )\n )\n }\n return list.concat(child)\n}\n\nconst METATYPES = ['name', 'httpEquiv', 'charSet', 'itemProp']\n\n/*\n returns a function for filtering head child elements\n which shouldn't be duplicated, like <title/>\n Also adds support for deduplicated `key` properties\n*/\nfunction unique() {\n const keys = new Set()\n const tags = new Set()\n const metaTypes = new Set()\n const metaCategories: { [metatype: string]: Set<string> } = {}\n\n return (h: React.ReactElement<any>) => {\n let isUnique = true\n let hasKey = false\n\n if (h.key && typeof h.key !== 'number' && h.key.indexOf('$') > 0) {\n hasKey = true\n const key = h.key.slice(h.key.indexOf('$') + 1)\n if (keys.has(key)) {\n isUnique = false\n } else {\n keys.add(key)\n }\n }\n\n switch (h.type) {\n case 'title':\n case 'base':\n if (tags.has(h.type)) {\n isUnique = false\n } else {\n tags.add(h.type)\n }\n break\n case 'meta':\n for (let i = 0, len = METATYPES.length; i < len; i++) {\n const metatype = METATYPES[i]\n if (!h.props.hasOwnProperty(metatype)) continue\n\n if (metatype === 'charSet') {\n if (metaTypes.has(metatype)) {\n isUnique = false\n } else {\n metaTypes.add(metatype)\n }\n } else {\n const category = h.props[metatype]\n const categories = metaCategories[metatype] || new Set()\n if ((metatype !== 'name' || !hasKey) && categories.has(category)) {\n isUnique = false\n } else {\n categories.add(category)\n metaCategories[metatype] = categories\n }\n }\n }\n break\n default:\n break\n }\n\n return isUnique\n }\n}\n\n/**\n *\n * @param headChildrenElements List of children of <Head>\n */\nfunction reduceComponents(\n headChildrenElements: Array<React.ReactElement<any>>\n) {\n return headChildrenElements\n .reduce(onlyReactElement, [])\n .reverse()\n .concat(defaultHead().reverse())\n .filter(unique())\n .reverse()\n .map((c: React.ReactElement<any>, i: number) => {\n const key = c.key || i\n if (process.env.NODE_ENV === 'development') {\n const { warnOnce } =\n require('./utils/warn-once') as typeof import('./utils/warn-once')\n // omit JSON-LD structured data snippets from the warning\n if (c.type === 'script' && c.props['type'] !== 'application/ld+json') {\n const srcMessage = c.props['src']\n ? `<script> tag with src=\"${c.props['src']}\"`\n : `inline <script>`\n warnOnce(\n `Do not add <script> tags using next/head (see ${srcMessage}). Use next/script instead. \\nSee more info here: https://nextjs.org/docs/messages/no-script-tags-in-head-component`\n )\n } else if (c.type === 'link' && c.props['rel'] === 'stylesheet') {\n warnOnce(\n `Do not add stylesheets using next/head (see <link rel=\"stylesheet\"> tag with href=\"${c.props['href']}\"). Use Document instead. \\nSee more info here: https://nextjs.org/docs/messages/no-stylesheets-in-head-component`\n )\n }\n }\n return React.cloneElement(c, { key })\n })\n}\n\n/**\n * This component injects elements to `<head>` of your page.\n * To avoid duplicated `tags` in `<head>` you can use the `key` property, which will make sure every tag is only rendered once.\n */\nfunction Head({ children }: { children: React.ReactNode }) {\n const headManager = useContext(HeadManagerContext)\n return (\n <Effect\n reduceComponentsToState={reduceComponents}\n headManager={headManager}\n >\n {children}\n </Effect>\n )\n}\n\nexport default Head\n","/**\n * A shared function, used on both client and server, to generate a SVG blur placeholder.\n */\nexport function getImageBlurSvg({\n widthInt,\n heightInt,\n blurWidth,\n blurHeight,\n blurDataURL,\n objectFit,\n}: {\n widthInt?: number\n heightInt?: number\n blurWidth?: number\n blurHeight?: number\n blurDataURL: string\n objectFit?: string\n}): string {\n const std = 20\n const svgWidth = blurWidth ? blurWidth * 40 : widthInt\n const svgHeight = blurHeight ? blurHeight * 40 : heightInt\n\n const viewBox =\n svgWidth && svgHeight ? `viewBox='0 0 ${svgWidth} ${svgHeight}'` : ''\n const preserveAspectRatio = viewBox\n ? 'none'\n : objectFit === 'contain'\n ? 'xMidYMid'\n : objectFit === 'cover'\n ? 'xMidYMid slice'\n : 'none'\n\n return `%3Csvg xmlns='http://www.w3.org/2000/svg' ${viewBox}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='${std}'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='${std}'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${preserveAspectRatio}' style='filter: url(%23b);' href='${blurDataURL}'/%3E%3C/svg%3E`\n}\n","export const VALID_LOADERS = [\n 'default',\n 'imgix',\n 'cloudinary',\n 'akamai',\n 'custom',\n] as const\n\nexport type LoaderValue = (typeof VALID_LOADERS)[number]\n\nexport type ImageLoaderProps = {\n src: string\n width: number\n quality?: number\n}\n\nexport type ImageLoaderPropsWithConfig = ImageLoaderProps & {\n config: Readonly<ImageConfig>\n}\n\nexport type LocalPattern = {\n /**\n * Can be literal or wildcard.\n * Single `*` matches a single path segment.\n * Double `**` matches any number of path segments.\n */\n pathname?: string\n\n /**\n * Can be literal query string such as `?v=1` or\n * empty string meaning no query string.\n */\n search?: string\n}\n\nexport type RemotePattern = {\n /**\n * Must be `http` or `https`.\n */\n protocol?: 'http' | 'https'\n\n /**\n * Can be literal or wildcard.\n * Single `*` matches a single subdomain.\n * Double `**` matches any number of subdomains.\n */\n hostname: string\n\n /**\n * Can be literal port such as `8080` or empty string\n * meaning no port.\n */\n port?: string\n\n /**\n * Can be literal or wildcard.\n * Single `*` matches a single path segment.\n * Double `**` matches any number of path segments.\n */\n pathname?: string\n\n /**\n * Can be literal query string such as `?v=1` or\n * empty string meaning no query string.\n */\n search?: string\n}\n\ntype ImageFormat = 'image/avif' | 'image/webp'\n\n/**\n * Image configurations\n *\n * @see [Image configuration options](https://nextjs.org/docs/api-reference/next/image#configuration-options)\n */\nexport type ImageConfigComplete = {\n /** @see [Device sizes documentation](https://nextjs.org/docs/api-reference/next/image#device-sizes) */\n deviceSizes: number[]\n\n /** @see [Image sizing documentation](https://nextjs.org/docs/app/building-your-application/optimizing/images#image-sizing) */\n imageSizes: number[]\n\n /** @see [Image loaders configuration](https://nextjs.org/docs/api-reference/next/legacy/image#loader) */\n loader: LoaderValue\n\n /** @see [Image loader configuration](https://nextjs.org/docs/app/api-reference/components/image#path) */\n path: string\n\n /** @see [Image loader configuration](https://nextjs.org/docs/api-reference/next/image#loader-configuration) */\n loaderFile: string\n\n /**\n * @deprecated Use `remotePatterns` instead.\n */\n domains: string[]\n\n /** @see [Disable static image import configuration](https://nextjs.org/docs/api-reference/next/image#disable-static-imports) */\n disableStaticImages: boolean\n\n /** @see [Cache behavior](https://nextjs.org/docs/api-reference/next/image#caching-behavior) */\n minimumCacheTTL: number\n\n /** @see [Acceptable formats](https://nextjs.org/docs/api-reference/next/image#acceptable-formats) */\n formats: ImageFormat[]\n\n /** @see [Maximum Disk Cache Size (in bytes)](https://nextjs.org/docs/api-reference/next/image#maximumdiskcachesize) */\n maximumDiskCacheSize: number | undefined\n\n /** @see [Maximum Redirects](https://nextjs.org/docs/api-reference/next/image#maximumredirects) */\n maximumRedirects: number\n\n /** @see [Maximum Response Body](https://nextjs.org/docs/api-reference/next/image#maximumresponsebody) */\n maximumResponseBody: number\n\n /** @see [Dangerously Allow Local IP](https://nextjs.org/docs/api-reference/next/image#dangerously-allow-local-ip) */\n dangerouslyAllowLocalIP: boolean\n\n /** @see [Dangerously Allow SVG](https://nextjs.org/docs/api-reference/next/image#dangerously-allow-svg) */\n dangerouslyAllowSVG: boolean\n\n /** @see [Content Security Policy](https://nextjs.org/docs/api-reference/next/image#contentsecuritypolicy) */\n contentSecurityPolicy: string\n\n /** @see [Content Disposition Type](https://nextjs.org/docs/api-reference/next/image#contentdispositiontype) */\n contentDispositionType: 'inline' | 'attachment'\n\n /** @see [Remote Patterns](https://nextjs.org/docs/api-reference/next/image#remotepatterns) */\n remotePatterns: Array<URL | RemotePattern>\n\n /** @see [Local Patterns](https://nextjs.org/docs/api-reference/next/image#localPatterns) */\n localPatterns: LocalPattern[] | undefined\n\n /** @see [Qualities](https://nextjs.org/docs/api-reference/next/image#qualities) */\n qualities: number[] | undefined\n\n /** @see [Unoptimized](https://nextjs.org/docs/api-reference/next/image#unoptimized) */\n unoptimized: boolean\n\n /**\n * When true, the `cacheHandler` configured in next.config.js will also be used\n * for caching optimized images. When false, images use the default filesystem cache.\n * @see [Image Optimization Caching](https://nextjs.org/docs/app/api-reference/config/next-config-js/cacheHandler#image-optimization-caching)\n */\n customCacheHandler: boolean\n}\n\nexport type ImageConfig = Partial<ImageConfigComplete>\n\ntype RequiredImageConfigForRendering = Pick<\n ImageConfigComplete,\n | 'deviceSizes'\n | 'imageSizes'\n | 'loader'\n | 'path'\n | 'dangerouslyAllowSVG'\n | 'unoptimized'\n>\n\nexport type ImageConfigForRendering = RequiredImageConfigForRendering &\n Partial<\n Pick<\n ImageConfigComplete,\n 'qualities' | 'domains' | 'remotePatterns' | 'localPatterns'\n >\n > & {\n output?: 'standalone' | 'export'\n }\n\nexport type PreparedImageConfig = RequiredImageConfigForRendering & {\n allSizes: number[]\n qualities: ImageConfigComplete['qualities']\n domains: ImageConfigComplete['domains'] | undefined\n remotePatterns: ImageConfigComplete['remotePatterns'] | undefined\n localPatterns: ImageConfigComplete['localPatterns']\n output: 'standalone' | 'export' | undefined\n}\n\nconst missingImageConfig = {}\nconst preparedImageConfigs = new WeakMap<\n object,\n WeakMap<object, PreparedImageConfig>\n>()\n\n/**\n * Prepare owned, sorted image options once for each env/context pair.\n * Changed options require new objects because results are cached by identity.\n */\nexport function prepareImageConfig(\n envConfig?: ImageConfigForRendering,\n contextConfig?: ImageConfigComplete\n): PreparedImageConfig {\n const envKey = envConfig ?? missingImageConfig\n const contextKey = contextConfig ?? missingImageConfig\n let preparedByContext = preparedImageConfigs.get(envKey)\n if (preparedByContext) {\n const cached = preparedByContext.get(contextKey)\n if (cached) {\n return cached\n }\n }\n\n const source: ImageConfigForRendering =\n envConfig || contextConfig || imageConfigDefault\n const deviceSizes = [...source.deviceSizes].sort((a, b) => a - b)\n const imageSizes = [...source.imageSizes]\n const prepared: PreparedImageConfig = {\n deviceSizes,\n imageSizes,\n allSizes: [...deviceSizes, ...imageSizes].sort((a, b) => a - b),\n qualities:\n source.qualities === undefined\n ? undefined\n : [...source.qualities].sort((a, b) => a - b),\n path: source.path,\n loader: source.loader,\n dangerouslyAllowSVG: source.dangerouslyAllowSVG,\n unoptimized: source.unoptimized,\n domains: source.domains,\n remotePatterns: source.remotePatterns,\n // The inlined browser options supply their own patterns. During SSR the\n // context supplies security-sensitive patterns omitted from the inline data.\n localPatterns:\n typeof window === 'undefined' && contextConfig !== undefined\n ? contextConfig.localPatterns\n : source.localPatterns,\n output: source.output,\n }\n\n if (!preparedByContext) {\n preparedByContext = new WeakMap()\n preparedImageConfigs.set(envKey, preparedByContext)\n }\n preparedByContext.set(contextKey, prepared)\n return prepared\n}\n\nexport const imageConfigDefault: ImageConfigComplete = {\n deviceSizes: [640, 750, 828, 1080, 1200, 1920, 2048, 3840],\n imageSizes: [32, 48, 64, 96, 128, 256, 384],\n path: '/_next/image',\n loader: 'default',\n loaderFile: '',\n /**\n * @deprecated Use `remotePatterns` instead to protect your application from malicious users.\n */\n domains: [],\n disableStaticImages: false,\n minimumCacheTTL: 14400, // 4 hours\n formats: ['image/webp'],\n maximumDiskCacheSize: undefined, // auto-detect by default\n maximumRedirects: 3,\n maximumResponseBody: 50_000_000, // 50 MB\n dangerouslyAllowLocalIP: false,\n dangerouslyAllowSVG: false,\n contentSecurityPolicy: `script-src 'none'; frame-src 'none'; sandbox;`,\n contentDispositionType: 'attachment',\n localPatterns: undefined, // default: allow all local images\n remotePatterns: [], // default: allow no remote images\n qualities: [75],\n unoptimized: false,\n customCacheHandler: false,\n}\n","import type { ImageLoaderPropsWithConfig } from './image-config'\nimport { findClosestQuality } from './find-closest-quality'\nimport { getAssetToken, getDeploymentId } from './deployment-id'\n\nfunction defaultLoader({\n config,\n src,\n width,\n quality,\n}: ImageLoaderPropsWithConfig): string {\n if (process.env.NODE_ENV !== 'production') {\n const missingValues = []\n\n // these should always be provided but make sure they are\n if (!src) missingValues.push('src')\n if (!width) missingValues.push('width')\n\n if (missingValues.length > 0) {\n throw new Error(\n `Next Image Optimization requires ${missingValues.join(\n ', '\n )} to be provided. Make sure you pass them as props to the \\`next/image\\` component. Received: ${JSON.stringify(\n { src, width, quality }\n )}`\n )\n }\n }\n\n // Extract dpl parameter early so validation uses the clean URL.\n // If a immutable asset token should be used, it was already added as a query parameter and will\n // be extracted and reused here.\n let deploymentId = getDeploymentId()\n if (src.startsWith('/') && !src.startsWith('//')) {\n if (src.includes('/_next/static/immutable') && !getAssetToken()) {\n // immutable static asset and supported by platform, don't add `?dpl=`\n deploymentId = undefined\n } else {\n // We unfortunately can't easily use `new URL()` here, because it normalizes the URL which causes\n // double-encoding with the `encodeURIComponent(src)` below\n const qIndex = src.indexOf('?')\n if (qIndex !== -1) {\n const params = new URLSearchParams(src.slice(qIndex + 1))\n const srcDpl = params.get('dpl')\n if (srcDpl) {\n deploymentId = srcDpl\n params.delete('dpl')\n const remaining = params.toString()\n src = src.slice(0, qIndex) + (remaining ? '?' + remaining : '')\n }\n }\n }\n }\n\n if (\n src.startsWith('/') &&\n src.includes('?') &&\n config.localPatterns?.length === 1 &&\n config.localPatterns[0].pathname === '**' &&\n config.localPatterns[0].search === ''\n ) {\n throw new Error(\n `Image with src \"${src}\" is using a query string which is not configured in images.localPatterns.` +\n `\\nRead more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`\n )\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (src.startsWith('//')) {\n throw new Error(\n `Failed to parse src \"${src}\" on \\`next/image\\`, protocol-relative URL (//) must be changed to an absolute URL (http:// or https://)`\n )\n }\n\n if (src.startsWith('/') && config.localPatterns) {\n if (\n process.env.NODE_ENV !== 'test' &&\n // micromatch isn't compatible with edge runtime\n process.env.NEXT_RUNTIME !== 'edge'\n ) {\n // We use dynamic require because this should only error in development\n const { hasLocalMatch } =\n require('./match-local-pattern') as typeof import('./match-local-pattern')\n if (!hasLocalMatch(config.localPatterns, src)) {\n throw new Error(\n `Invalid src prop (${src}) on \\`next/image\\` does not match \\`images.localPatterns\\` configured in your \\`next.config.js\\`\\n` +\n `See more info: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`\n )\n }\n }\n }\n\n if (!src.startsWith('/') && (config.domains || config.remotePatterns)) {\n let parsedSrc: URL\n try {\n parsedSrc = new URL(src)\n } catch (err) {\n console.error(err)\n throw new Error(\n `Failed to parse src \"${src}\" on \\`next/image\\`, if using relative image it must start with a leading slash \"/\" or be an absolute URL (http:// or https://)`\n )\n }\n\n if (\n process.env.NODE_ENV !== 'test' &&\n // micromatch isn't compatible with edge runtime\n process.env.NEXT_RUNTIME !== 'edge'\n ) {\n // We use dynamic require because this should only error in development\n const { hasRemoteMatch } =\n require('./match-remote-pattern') as typeof import('./match-remote-pattern')\n if (\n !hasRemoteMatch(config.domains!, config.remotePatterns!, parsedSrc)\n ) {\n throw new Error(\n `Invalid src prop (${src}) on \\`next/image\\`, hostname \"${parsedSrc.hostname}\" is not configured under images in your \\`next.config.js\\`\\n` +\n `See more info: https://nextjs.org/docs/messages/next-image-unconfigured-host`\n )\n }\n }\n }\n }\n\n const q = findClosestQuality(quality, config)\n\n return `${config.path}?url=${encodeURIComponent(src)}&w=${width}&q=${q}${\n src.startsWith('/') && deploymentId ? `&dpl=${deploymentId}` : ''\n }`\n}\n\n// We use this to determine if the import is the default loader\n// or a custom loader defined by the user in next.config.js\ndefaultLoader.__next_img_default = true\n\nexport default defaultLoader\n","import type React from 'react'\nimport { Children, useEffect, useLayoutEffect, type JSX } from 'react'\n\ntype State = JSX.Element[] | undefined\n\nexport type SideEffectProps = {\n reduceComponentsToState: (components: Array<React.ReactElement<any>>) => State\n handleStateChange?: (state: State) => void\n headManager: any\n children: React.ReactNode\n}\n\nconst isServer = typeof window === 'undefined'\nconst useClientOnlyLayoutEffect = isServer ? () => {} : useLayoutEffect\nconst useClientOnlyEffect = isServer ? () => {} : useEffect\n\nexport default function SideEffect(props: SideEffectProps) {\n const { headManager, reduceComponentsToState } = props\n\n function emitChange() {\n if (headManager && headManager.mountedInstances) {\n const headElements = Children.toArray(\n Array.from(headManager.mountedInstances as Set<React.ReactNode>).filter(\n Boolean\n )\n ) as React.ReactElement[]\n headManager.updateHead(reduceComponentsToState(headElements))\n }\n }\n\n if (isServer) {\n headManager?.mountedInstances?.add(props.children)\n emitChange()\n }\n\n useClientOnlyLayoutEffect(() => {\n headManager?.mountedInstances?.add(props.children)\n return () => {\n headManager?.mountedInstances?.delete(props.children)\n }\n })\n\n // We need to call `updateHead` method whenever the `SideEffect` is trigger in all\n // life-cycles: mount, update, unmount. However, if there are multiple `SideEffect`s\n // being rendered, we only trigger the method from the last one.\n // This is ensured by keeping the last unflushed `updateHead` in the `_pendingUpdate`\n // singleton in the layout effect pass, and actually trigger it in the effect pass.\n useClientOnlyLayoutEffect(() => {\n if (headManager) {\n headManager._pendingUpdate = emitChange\n }\n return () => {\n if (headManager) {\n headManager._pendingUpdate = emitChange\n }\n }\n })\n\n useClientOnlyEffect(() => {\n if (headManager && headManager._pendingUpdate) {\n headManager._pendingUpdate()\n headManager._pendingUpdate = null\n }\n return () => {\n if (headManager && headManager._pendingUpdate) {\n headManager._pendingUpdate()\n headManager._pendingUpdate = null\n }\n }\n })\n\n return null\n}\n"],"names":["Image","window","globalThis","__NEXT_IMAGE_IMPORTED","handleLoading","img","placeholder","onLoadRef","onLoadingCompleteRef","setBlurComplete","unoptimized","sizesInput","src","p","decode","Promise","resolve","catch","then","parentElement","isConnected","current","event","Event","Object","defineProperty","writable","value","prevented","stopped","nativeEvent","currentTarget","target","isDefaultPrevented","isPropagationStopped","persist","preventDefault","stopPropagation","process","env","NODE_ENV","warnOnce","require","origSrc","URL","searchParams","get","getAttribute","widthViewportRatio","getBoundingClientRect","width","innerWidth","position","getComputedStyle","valid","includes","map","String","join","height","heightModified","toString","widthModified","getDynamicProps","fetchPriority","Boolean","use","fetchpriority","useNonWarningLayoutEffect","useEffect","useLayoutEffect","ImageElement","forwardRef","srcSet","sizes","decoding","className","style","loading","fill","setShowAltText","onLoad","onError","rest","forwardedRef","didInsertRef","useRef","insertedImgRef","didInsert","console","error","complete","ref","useMergedRef","data-nimg","currentImage","ImagePreload","isAppRouter","imgAttributes","opts","as","imageSrcSet","imageSizes","crossOrigin","referrerPolicy","ReactDOM","preload","Head","link","rel","href","undefined","props","pagesRouter","useContext","RouterContext","config","useImageConfig","onLoadingComplete","blurComplete","useState","showAltText","meta","imgMeta","getImgProps","defaultLoader","imgConf","configEnv","__NEXT_IMAGE_OPTS","configContext","ImageConfigContext","prepareImageConfig","module","exports","vendored","HeadManagerContext","findClosestQuality","quality","q","qualities","length","reduce","prev","cur","Math","abs","VALID_LOADING_VALUES","INVALID_BACKGROUND_SIZE_VALUES","isStaticRequire","default","isStaticImageData","isStaticImport","allImgs","Map","perfObserver","getInt","x","Number","isFinite","NaN","test","parseInt","getWidths","deviceSizes","allSizes","viewportWidthRe","percentSizes","match","exec","push","smallestRatio","min","widths","filter","s","kind","Set","w","find","generateImgAttrs","loader","startsWith","deploymentId","getDeploymentId","getAssetToken","qIndex","indexOf","params","URLSearchParams","slice","srcDpl","append","last","i","priority","overrideSrc","blurDataURL","layout","objectFit","objectPosition","lazyBoundary","lazyRoot","_state","Error","isDefaultLoader","customImageLoader","obj","_","layoutToStyle","intrinsic","maxWidth","responsive","layoutToSizes","layoutStyle","layoutSizes","staticSrc","widthInt","heightInt","blurWidth","blurHeight","staticImageData","JSON","stringify","ratio","round","isLazy","dangerouslyAllowSVG","split","endsWith","qualityInt","output","isNaN","sort","VALID_BLUR_EXT","urlStr","url","err","pathname","search","legacyKey","legacyValue","entries","PerformanceObserver","entryList","entry","getEntries","imgSrc","element","lcpImage","observe","type","buffered","imgStyle","assign","left","top","right","bottom","color","backgroundImage","getImageBlurSvg","backgroundSize","placeholderStyle","backgroundPosition","backgroundRepeat","loadingFinal","fullUrl","e","location","set","defaultHead","head","charSet","name","content","onlyReactElement","list","child","React","Fragment","concat","Children","toArray","children","fragmentList","fragmentChild","METATYPES","unique","keys","tags","metaTypes","metaCategories","h","isUnique","hasKey","key","has","add","len","metatype","hasOwnProperty","category","categories","reduceComponents","headChildrenElements","reverse","c","srcMessage","cloneElement","headManager","Effect","reduceComponentsToState","std","svgWidth","svgHeight","viewBox","preserveAspectRatio","VALID_LOADERS","imageConfigDefault","missingImageConfig","preparedImageConfigs","WeakMap","envConfig","contextConfig","envKey","contextKey","preparedByContext","cached","source","a","b","prepared","path","domains","remotePatterns","localPatterns","loaderFile","disableStaticImages","minimumCacheTTL","formats","maximumDiskCacheSize","maximumRedirects","maximumResponseBody","dangerouslyAllowLocalIP","contentSecurityPolicy","contentDispositionType","customCacheHandler","missingValues","delete","remaining","NEXT_RUNTIME","hasLocalMatch","parsedSrc","hasRemoteMatch","hostname","encodeURIComponent","__next_img_default","SideEffect","isServer","useClientOnlyLayoutEffect","useClientOnlyEffect","emitChange","mountedInstances","headElements","Array","from","updateHead","_pendingUpdate"],"mappings":"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","ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11]}
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_11nxe3qn_qnjh._.js ADDED
The diff for this file is too large to render. See raw diff
 
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_11nxe3qn_qnjh._.js.map ADDED
The diff for this file is too large to render. See raw diff
 
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_1c5t_vsn6u8fr._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[82509,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(11857);a.n(d("[project]/node_modules/next/dist/client/components/builtin/global-error.js"))},66114,a=>{"use strict";var b=a.i(82509);a.n(b)},62212,function(a){a.n(a.i(66114))},11857,(a,b,c)=>{"use strict";b.exports=a.r(24951).vendored["react-rsc"].ReactServerDOMTurbopackServer}];
2
+
3
+ //# sourceMappingURL=node_modules_next_dist_1c5t_vsn6u8fr._.js.map
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_1c5t_vsn6u8fr._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../node_modules/next/dist/client/components/builtin/global-error.js/__nextjs-internal-proxy.cjs%20%7B%20server%20%3D%3E%20%22%5Bproject%5D/node_modules/next/dist/client/components/builtin/global-error.js%22%20%7D","../../../../node_modules/next/src/client/components/builtin/global-error.tsx","../../../../node_modules/next/src/server/route-modules/app-page/vendored/rsc/react-server-dom-turbopack-server.ts"],"sourcesContent":["// This file is generated by next-core EcmascriptClientReferenceModule.\nconst { createClientModuleProxy } = require(\"react-server-dom-turbopack/server\");\n\n__turbopack_context__.n(createClientModuleProxy(\"[project]/node_modules/next/dist/client/components/builtin/global-error.js\"));\n","'use client'\n\nimport React from 'react'\nimport { handleISRError } from '../handle-isr-error'\nimport { errorStyles, errorThemeCss, WarningIcon } from './error-styles'\n\nexport type GlobalErrorComponent = React.ComponentType<{\n error: any\n reset: () => void\n retry: () => void\n}>\n\nfunction DefaultGlobalError({ error }: { error: any }) {\n const digest: string | undefined = error?.digest\n const isServerError = !!digest\n\n const message = isServerError\n ? 'A server error occurred. Reload to try again.'\n : 'Reload to try again, or go back.'\n\n handleISRError({ error })\n\n return (\n <html id=\"__next_error__\">\n <head>\n <style dangerouslySetInnerHTML={{ __html: errorThemeCss }} />\n </head>\n <body>\n <div style={errorStyles.container}>\n <div style={errorStyles.card}>\n <WarningIcon />\n <h1 style={errorStyles.title}>This page couldn&#x2019;t load</h1>\n <p style={errorStyles.message}>{message}</p>\n <div style={errorStyles.buttonGroup}>\n <form style={errorStyles.form}>\n <button type=\"submit\" style={errorStyles.button}>\n Reload\n </button>\n </form>\n {!isServerError && (\n <button\n type=\"button\"\n style={errorStyles.buttonSecondary}\n onClick={() => {\n if (window.history.length > 1) {\n window.history.back()\n } else {\n window.location.href = '/'\n }\n }}\n >\n Back\n </button>\n )}\n </div>\n </div>\n </div>\n {digest && <p style={errorStyles.digestFooter}>ERROR {digest}</p>}\n </body>\n </html>\n )\n}\n\n// Exported so that the import signature in the loaders can be identical to user\n// supplied custom global error signatures.\nexport default DefaultGlobalError\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-rsc']!.ReactServerDOMTurbopackServer\n"],"names":["createClientModuleProxy","__turbopack_context__","n","DefaultGlobalError","error","digest","isServerError","message","handleISRError","html","id","head","style","dangerouslySetInnerHTML","__html","errorThemeCss","body","div","errorStyles","container","card","WarningIcon","h1","title","p","buttonGroup","form","button","type","buttonSecondary","onClick","window","history","length","back","location","href","digestFooter","module","exports","require","vendored","ReactServerDOMTurbopackServer"],"mappings":"gCACA,GAAM,yBAAEA,CAAuB,CAAE,CAAA,EAAA,CAAA,CAAA,OAEjCC,EAAsBC,CAAC,CAACF,EAAwB,gMEHhDsC,EAAOC,OAAO,CACZC,EAAQ,CAAA,CAAA,IAAA,GACRC,QAAQ,CAAC,YAAY,CAAEC,6BAA6B","ignoreList":[0,2]}
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_1et9oq9q9-y3v._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ (()=>{"use strict";module.exports=[70396,13743,a=>{a.i(73727),a.s([],70396);let b=(0,a.i(1269).f)("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["f",0,b],13743)},34557,(a,b,c)=>{function d(){throw Error("`forbidden()` is experimental and only allowed to be enabled when `experimental.authInterrupts` is enabled.")}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"forbidden",{enumerable:!0,get:function(){return d}}),a.r(89798).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},89798,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0});var d={HTTPAccessErrorStatus:function(){return f},HTTP_ERROR_FALLBACK_ERROR_CODE:function(){return h},getAccessFallbackErrorTypeByStatus:function(){return k},getAccessFallbackHTTPStatus:function(){return j},isHTTPAccessFallbackError:function(){return i}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f={NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401},g=new Set(Object.values(f)),h="NEXT_HTTP_ERROR_FALLBACK";function i(a){if("object"!=typeof a||null===a||!("digest"in a)||"string"!=typeof a.digest)return!1;let[b,c]=a.digest.split(";");return b===h&&g.has(Number(c))}function j(a){return Number(a.digest.split(";")[1])}function k(a){switch(a){case 401:return"unauthorized";case 403:return"forbidden";case 404:return"not-found";default:return}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},1567,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"isNextRouterError",{enumerable:!0,get:function(){return f}});let d=a.r(89798),e=a.r(28859);function f(a){return(0,e.isRedirectError)(a)||(0,d.isHTTPAccessFallbackError)(a)}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},73727,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0});var d={ReadonlyURLSearchParams:function(){return f.ReadonlyURLSearchParams},RedirectType:function(){return m},forbidden:function(){return i.forbidden},notFound:function(){return h.notFound},permanentRedirect:function(){return g.permanentRedirect},redirect:function(){return g.redirect},unauthorized:function(){return j.unauthorized},unstable_isUnrecognizedActionError:function(){return l},unstable_rethrow:function(){return k.unstable_rethrow}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(20916),g=a.r(44868),h=a.r(16155),i=a.r(34557),j=a.r(93845),k=a.r(60968);function l(){throw Error("`unstable_isUnrecognizedActionError` can only be used on the client.")}let m={push:"push",replace:"replace"};("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},16155,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"notFound",{enumerable:!0,get:function(){return f}});let d=a.r(89798),e=`${d.HTTP_ERROR_FALLBACK_ERROR_CODE};404`;function f(){let a=Error(e);throw a.digest=e,a}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},20916,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ReadonlyURLSearchParams",{enumerable:!0,get:function(){return e}});class d extends Error{constructor(){super("Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams")}}class e extends URLSearchParams{append(){throw new d}delete(){throw new d}set(){throw new d}sort(){throw new d}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},28859,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0});var d={REDIRECT_ERROR_CODE:function(){return g},isRedirectError:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(21170),g="NEXT_REDIRECT";function h(a){if("object"!=typeof a||null===a||!("digest"in a)||"string"!=typeof a.digest)return!1;let b=a.digest.split(";"),[c,d]=b,e=b.slice(2,-2).join(";"),h=Number(b.at(-2));return c===g&&("replace"===d||"push"===d)&&"string"==typeof e&&!isNaN(h)&&h in f.RedirectStatusCode}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},21170,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"RedirectStatusCode",{enumerable:!0,get:function(){return e}});var d,e=((d={})[d.SeeOther=303]="SeeOther",d[d.TemporaryRedirect=307]="TemporaryRedirect",d[d.PermanentRedirect=308]="PermanentRedirect",d);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},44868,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0});var d={getRedirectError:function(){return i},getRedirectStatusCodeFromError:function(){return n},getRedirectTypeFromError:function(){return m},getURLFromRedirectError:function(){return l},permanentRedirect:function(){return k},redirect:function(){return j}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(21170),g=a.r(28859),h=a.r(92473);function i(a,b,c=f.RedirectStatusCode.TemporaryRedirect){let d=Error(g.REDIRECT_ERROR_CODE);return d.digest=`${g.REDIRECT_ERROR_CODE};${b};${a};${c};`,d}function j(a,b){throw i(a,b??=h.actionAsyncStorage?.getStore()?.isAction?"push":"replace",f.RedirectStatusCode.TemporaryRedirect)}function k(a,b="replace"){throw i(a,b,f.RedirectStatusCode.PermanentRedirect)}function l(a){return(0,g.isRedirectError)(a)?a.digest.split(";").slice(2,-2).join(";"):null}function m(a){if(!(0,g.isRedirectError)(a))throw Error("Not a redirect error");return a.digest.split(";",2)[1]}function n(a){if(!(0,g.isRedirectError)(a))throw Error("Not a redirect error");return Number(a.digest.split(";").at(-2))}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},92473,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0});var d={actionAsyncStorage:function(){return f.actionAsyncStorage},workAsyncStorage:function(){return g.workAsyncStorage},workUnitAsyncStorage:function(){return h.workUnitAsyncStorage}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(20635),g=a.r(56704),h=a.r(32319);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},93845,(a,b,c)=>{function d(){throw Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled.")}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"unauthorized",{enumerable:!0,get:function(){return d}}),a.r(89798).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},60968,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"unstable_rethrow",{enumerable:!0,get:function(){return function a(b){if((0,f.isNextRouterError)(b)||(0,e.isBailoutToCSRError)(b)||(0,h.isDynamicServerError)(b)||(0,d.isHangingPromiseRejectionError)(b)||(0,g.isPrerenderInterruptedError)(b))throw b;b instanceof Error&&"cause"in b&&a(b.cause)}}});let d=a.r(13091),e=a.r(49640),f=a.r(1567),g=a.r(60384),h=a.r(96556);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},49640,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0});var d={BailoutToCSRError:function(){return g},isBailoutToCSRError:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f="BAILOUT_TO_CLIENT_SIDE_RENDERING";class g extends Error{constructor(a){super(`Bail out to client-side rendering: ${a}`),this.reason=a,this.digest=f}}function h(a){return"object"==typeof a&&null!==a&&"digest"in a&&a.digest===f}}]})();
2
+
3
+ //# sourceMappingURL=node_modules_next_dist_1et9oq9q9-y3v._.js.map
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_1et9oq9q9-y3v._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../node_modules/next/dist/api/navigation.react-server.js","../../../../node_modules/lucide-react/src/icons/arrow-left.ts","../../../../node_modules/next/src/client/components/forbidden.ts","../../../../node_modules/next/src/client/components/http-access-fallback/http-access-fallback.ts","../../../../node_modules/next/src/client/components/is-next-router-error.ts","../../../../node_modules/next/src/client/components/navigation.react-server.ts","../../../../node_modules/next/src/client/components/not-found.ts","../../../../node_modules/next/src/client/components/readonly-url-search-params.ts","../../../../node_modules/next/src/client/components/redirect-error.ts","../../../../node_modules/next/src/client/components/redirect-status-code.ts","../../../../node_modules/next/src/client/components/redirect.ts","../../../../node_modules/next/src/client/components/server-async-storage.ts","../../../../node_modules/next/src/client/components/unauthorized.ts","../../../../node_modules/next/src/client/components/unstable-rethrow.ts","../../../../node_modules/next/src/shared/lib/lazy-dynamic/bailout-to-csr.ts"],"sourcesContent":["export * from '../client/components/navigation.react-server';\n\n//# sourceMappingURL=navigation.react-server.js.map","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name ArrowLeft\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMTIgMTktNy03IDctNyIgLz4KICA8cGF0aCBkPSJNMTkgMTJINSIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/arrow-left\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst ArrowLeft = createLucideIcon('ArrowLeft', [\n ['path', { d: 'm12 19-7-7 7-7', key: '1l729n' }],\n ['path', { d: 'M19 12H5', key: 'x3x0zl' }],\n]);\n\nexport default ArrowLeft;\n","import {\n HTTP_ERROR_FALLBACK_ERROR_CODE,\n type HTTPAccessFallbackError,\n} from './http-access-fallback/http-access-fallback'\n\n// TODO: Add `forbidden` docs\n/**\n * @experimental\n * This function allows you to render the [forbidden.js file](https://nextjs.org/docs/app/api-reference/file-conventions/forbidden)\n * within a route segment as well as inject a tag.\n *\n * `forbidden()` can be used in\n * [Server Components](https://nextjs.org/docs/app/building-your-application/rendering/server-components),\n * [Route Handlers](https://nextjs.org/docs/app/building-your-application/routing/route-handlers), and\n * [Server Actions](https://nextjs.org/docs/app/building-your-application/data-fetching/server-actions-and-mutations).\n *\n * Read more: [Next.js Docs: `forbidden`](https://nextjs.org/docs/app/api-reference/functions/forbidden)\n */\n\nconst DIGEST = `${HTTP_ERROR_FALLBACK_ERROR_CODE};403`\n\nexport function forbidden(): never {\n if (!process.env.__NEXT_EXPERIMENTAL_AUTH_INTERRUPTS) {\n throw new Error(\n `\\`forbidden()\\` is experimental and only allowed to be enabled when \\`experimental.authInterrupts\\` is enabled.`\n )\n }\n\n const error = new Error(DIGEST) as HTTPAccessFallbackError\n ;(error as HTTPAccessFallbackError).digest = DIGEST\n throw error\n}\n","export const HTTPAccessErrorStatus = {\n NOT_FOUND: 404,\n FORBIDDEN: 403,\n UNAUTHORIZED: 401,\n}\n\nconst ALLOWED_CODES = new Set(Object.values(HTTPAccessErrorStatus))\n\nexport const HTTP_ERROR_FALLBACK_ERROR_CODE = 'NEXT_HTTP_ERROR_FALLBACK'\n\nexport type HTTPAccessFallbackError = Error & {\n digest: `${typeof HTTP_ERROR_FALLBACK_ERROR_CODE};${string}`\n}\n\n/**\n * Checks an error to determine if it's an error generated by\n * the HTTP navigation APIs `notFound()`, `forbidden()` or `unauthorized()`.\n *\n * @param error the error that may reference a HTTP access error\n * @returns true if the error is a HTTP access error\n */\nexport function isHTTPAccessFallbackError(\n error: unknown\n): error is HTTPAccessFallbackError {\n if (\n typeof error !== 'object' ||\n error === null ||\n !('digest' in error) ||\n typeof error.digest !== 'string'\n ) {\n return false\n }\n const [prefix, httpStatus] = error.digest.split(';')\n\n return (\n prefix === HTTP_ERROR_FALLBACK_ERROR_CODE &&\n ALLOWED_CODES.has(Number(httpStatus))\n )\n}\n\nexport function getAccessFallbackHTTPStatus(\n error: HTTPAccessFallbackError\n): number {\n const httpStatus = error.digest.split(';')[1]\n return Number(httpStatus)\n}\n\nexport function getAccessFallbackErrorTypeByStatus(\n status: number\n): 'not-found' | 'forbidden' | 'unauthorized' | undefined {\n switch (status) {\n case 401:\n return 'unauthorized'\n case 403:\n return 'forbidden'\n case 404:\n return 'not-found'\n default:\n return\n }\n}\n","import {\n isHTTPAccessFallbackError,\n type HTTPAccessFallbackError,\n} from './http-access-fallback/http-access-fallback'\nimport { isRedirectError, type RedirectError } from './redirect-error'\n\n/**\n * Returns true if the error is a navigation signal error. These errors are\n * thrown by user code to perform navigation operations and interrupt the React\n * render.\n */\nexport function isNextRouterError(\n error: unknown\n): error is RedirectError | HTTPAccessFallbackError {\n return isRedirectError(error) || isHTTPAccessFallbackError(error)\n}\n","import { ReadonlyURLSearchParams } from './readonly-url-search-params'\n\nexport function unstable_isUnrecognizedActionError(): boolean {\n throw new Error(\n '`unstable_isUnrecognizedActionError` can only be used on the client.'\n )\n}\n\nexport { redirect, permanentRedirect } from './redirect'\nexport { notFound } from './not-found'\nexport { forbidden } from './forbidden'\nexport { unauthorized } from './unauthorized'\nexport { unstable_rethrow } from './unstable-rethrow'\nexport { ReadonlyURLSearchParams }\n\nexport const RedirectType = {\n push: 'push',\n replace: 'replace',\n} as const\n","import {\n HTTP_ERROR_FALLBACK_ERROR_CODE,\n type HTTPAccessFallbackError,\n} from './http-access-fallback/http-access-fallback'\n\n/**\n * This function allows you to render the [not-found.js file](https://nextjs.org/docs/app/api-reference/file-conventions/not-found)\n * within a route segment as well as inject a tag.\n *\n * `notFound()` can be used in\n * [Server Components](https://nextjs.org/docs/app/building-your-application/rendering/server-components),\n * [Route Handlers](https://nextjs.org/docs/app/building-your-application/routing/route-handlers), and\n * [Server Actions](https://nextjs.org/docs/app/building-your-application/data-fetching/server-actions-and-mutations).\n *\n * - In a Server Component, this will insert a `<meta name=\"robots\" content=\"noindex\" />` meta tag and set the status code to 404.\n * - In a Route Handler or Server Action, it will serve a 404 to the caller.\n *\n * Read more: [Next.js Docs: `notFound`](https://nextjs.org/docs/app/api-reference/functions/not-found)\n */\n\nconst DIGEST = `${HTTP_ERROR_FALLBACK_ERROR_CODE};404`\n\nexport function notFound(): never {\n const error = new Error(DIGEST) as HTTPAccessFallbackError\n ;(error as HTTPAccessFallbackError).digest = DIGEST\n\n throw error\n}\n","/**\n * ReadonlyURLSearchParams implementation shared between client and server.\n * This file is intentionally not marked as 'use client' or 'use server'\n * so it can be imported by both environments.\n */\n\n/** @internal */\nclass ReadonlyURLSearchParamsError extends Error {\n constructor() {\n super(\n 'Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams'\n )\n }\n}\n\n/**\n * A read-only version of URLSearchParams that throws errors when mutation methods are called.\n * This ensures that the URLSearchParams returned by useSearchParams() cannot be mutated.\n */\nexport class ReadonlyURLSearchParams extends URLSearchParams {\n /** @deprecated Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams */\n append() {\n throw new ReadonlyURLSearchParamsError()\n }\n /** @deprecated Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams */\n delete() {\n throw new ReadonlyURLSearchParamsError()\n }\n /** @deprecated Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams */\n set() {\n throw new ReadonlyURLSearchParamsError()\n }\n /** @deprecated Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams */\n sort() {\n throw new ReadonlyURLSearchParamsError()\n }\n}\n","import { RedirectStatusCode } from './redirect-status-code'\n\nexport const REDIRECT_ERROR_CODE = 'NEXT_REDIRECT'\n\nexport type RedirectType = 'push' | 'replace'\n\nexport type RedirectError = Error & {\n digest: `${typeof REDIRECT_ERROR_CODE};${RedirectType};${string};${RedirectStatusCode};`\n}\n\n/**\n * Checks an error to determine if it's an error generated by the\n * `redirect(url)` helper.\n *\n * @param error the error that may reference a redirect error\n * @returns true if the error is a redirect error\n */\nexport function isRedirectError(error: unknown): error is RedirectError {\n if (\n typeof error !== 'object' ||\n error === null ||\n !('digest' in error) ||\n typeof error.digest !== 'string'\n ) {\n return false\n }\n\n const digest = error.digest.split(';')\n const [errorCode, type] = digest\n const destination = digest.slice(2, -2).join(';')\n const status = digest.at(-2)\n\n const statusCode = Number(status)\n\n return (\n errorCode === REDIRECT_ERROR_CODE &&\n (type === 'replace' || type === 'push') &&\n typeof destination === 'string' &&\n !isNaN(statusCode) &&\n statusCode in RedirectStatusCode\n )\n}\n","export enum RedirectStatusCode {\n SeeOther = 303,\n TemporaryRedirect = 307,\n PermanentRedirect = 308,\n}\n","import { RedirectStatusCode } from './redirect-status-code'\nimport {\n type RedirectType,\n type RedirectError,\n isRedirectError,\n REDIRECT_ERROR_CODE,\n} from './redirect-error'\nimport { actionAsyncStorage } from './server-async-storage'\n\nexport function getRedirectError(\n url: string,\n type: RedirectType,\n statusCode: RedirectStatusCode = RedirectStatusCode.TemporaryRedirect\n): RedirectError {\n const error = new Error(REDIRECT_ERROR_CODE) as RedirectError\n error.digest = `${REDIRECT_ERROR_CODE};${type};${url};${statusCode};`\n return error\n}\n\n/**\n * This function allows you to redirect the user to another URL. It can be used in\n * [Server Components](https://nextjs.org/docs/app/building-your-application/rendering/server-components),\n * [Route Handlers](https://nextjs.org/docs/app/building-your-application/routing/route-handlers), and\n * [Server Actions](https://nextjs.org/docs/app/building-your-application/data-fetching/server-actions-and-mutations).\n *\n * - In a Server Component, this will insert a meta tag to redirect the user to the target page.\n * - In a Route Handler, it will serve a 307 to the caller.\n * - In a Server Action, it will perform a client-side navigation when JavaScript is available or serve a 303 for a progressive enhancement form submission.\n * - In a Server Action, type defaults to 'push' and 'replace' elsewhere.\n *\n * Read more: [Next.js Docs: `redirect`](https://nextjs.org/docs/app/api-reference/functions/redirect)\n */\nexport function redirect(\n /** The URL to redirect to */\n url: string,\n type?: RedirectType\n): never {\n type ??= actionAsyncStorage?.getStore()?.isAction ? 'push' : 'replace'\n\n throw getRedirectError(url, type, RedirectStatusCode.TemporaryRedirect)\n}\n\n/**\n * This function allows you to redirect the user to another URL. It can be used in\n * [Server Components](https://nextjs.org/docs/app/building-your-application/rendering/server-components),\n * [Route Handlers](https://nextjs.org/docs/app/building-your-application/routing/route-handlers), and\n * [Server Actions](https://nextjs.org/docs/app/building-your-application/data-fetching/server-actions-and-mutations).\n *\n * - In a Server Component, this will insert a meta tag to redirect the user to the target page.\n * - In a Route Handler, it will serve a 308 to the caller.\n * - In a Server Action, it will perform a client-side navigation when JavaScript is available or serve a 303 for a progressive enhancement form submission.\n *\n * Read more: [Next.js Docs: `redirect`](https://nextjs.org/docs/app/api-reference/functions/redirect)\n */\nexport function permanentRedirect(\n /** The URL to redirect to */\n url: string,\n type: RedirectType = 'replace'\n): never {\n throw getRedirectError(url, type, RedirectStatusCode.PermanentRedirect)\n}\n\n/**\n * Returns the encoded URL from the error if it's a RedirectError, null\n * otherwise. Note that this does not validate the URL returned.\n *\n * @param error the error that may be a redirect error\n * @return the url if the error was a redirect error\n */\nexport function getURLFromRedirectError(error: RedirectError): string\nexport function getURLFromRedirectError(error: unknown): string | null {\n if (!isRedirectError(error)) return null\n\n // Slices off the beginning of the digest that contains the code and the\n // separating ';'.\n return error.digest.split(';').slice(2, -2).join(';')\n}\n\nexport function getRedirectTypeFromError(error: RedirectError): RedirectType {\n if (!isRedirectError(error)) {\n throw new Error('Not a redirect error')\n }\n\n return error.digest.split(';', 2)[1] as RedirectType\n}\n\nexport function getRedirectStatusCodeFromError(error: RedirectError): number {\n if (!isRedirectError(error)) {\n throw new Error('Not a redirect error')\n }\n\n return Number(error.digest.split(';').at(-2))\n}\n","// Client-safe access to the server-only async-storage singletons. On the\n// server these re-export the real storages; in the browser bundle this module\n// is aliased to `./server-async-storage.browser` (see\n// scripts/generate-browser-variant-aliases.mjs), which exports `undefined`\n// stubs so the AsyncLocalStorage modules are never bundled into the client.\n// Consumers must guard usage so the stubs are not dereferenced in the browser.\nexport { actionAsyncStorage } from '../../server/app-render/action-async-storage.external'\nexport { workAsyncStorage } from '../../server/app-render/work-async-storage.external'\nexport { workUnitAsyncStorage } from '../../server/app-render/work-unit-async-storage.external'\n","import {\n HTTP_ERROR_FALLBACK_ERROR_CODE,\n type HTTPAccessFallbackError,\n} from './http-access-fallback/http-access-fallback'\n\n// TODO: Add `unauthorized` docs\n/**\n * @experimental\n * This function allows you to render the [unauthorized.js file](https://nextjs.org/docs/app/api-reference/file-conventions/unauthorized)\n * within a route segment as well as inject a tag.\n *\n * `unauthorized()` can be used in\n * [Server Components](https://nextjs.org/docs/app/building-your-application/rendering/server-components),\n * [Route Handlers](https://nextjs.org/docs/app/building-your-application/routing/route-handlers), and\n * [Server Actions](https://nextjs.org/docs/app/building-your-application/data-fetching/server-actions-and-mutations).\n *\n *\n * Read more: [Next.js Docs: `unauthorized`](https://nextjs.org/docs/app/api-reference/functions/unauthorized)\n */\n\nconst DIGEST = `${HTTP_ERROR_FALLBACK_ERROR_CODE};401`\n\nexport function unauthorized(): never {\n if (!process.env.__NEXT_EXPERIMENTAL_AUTH_INTERRUPTS) {\n throw new Error(\n `\\`unauthorized()\\` is experimental and only allowed to be used when \\`experimental.authInterrupts\\` is enabled.`\n )\n }\n\n const error = new Error(DIGEST) as HTTPAccessFallbackError\n ;(error as HTTPAccessFallbackError).digest = DIGEST\n throw error\n}\n","import { isHangingPromiseRejectionError } from '../../server/dynamic-rendering-utils'\nimport { isBailoutToCSRError } from '../../shared/lib/lazy-dynamic/bailout-to-csr'\nimport { isNextRouterError } from './is-next-router-error'\nimport { isPrerenderInterruptedError } from '../../server/app-render/dynamic-rendering'\nimport { isDynamicServerError } from './hooks-server-context'\n\n/**\n * This function should be used to rethrow internal Next.js errors so that they can be handled by the framework.\n * When wrapping an API that uses errors to interrupt control flow, you should use this function before you do any error handling.\n * This function will rethrow the error if it is a Next.js error so it can be handled, otherwise it will do nothing.\n *\n * In the browser bundle this module is aliased to `./unstable-rethrow.browser`, which performs a\n * subset of these checks (the server-only ones can never occur in the browser). This default\n * module holds the full server logic and is used on every server runtime (Node, edge) and in any\n * context where the alias does not apply.\n *\n * Read more: [Next.js Docs: `unstable_rethrow`](https://nextjs.org/docs/app/api-reference/functions/unstable_rethrow)\n */\nexport function unstable_rethrow(error: unknown): void {\n if (\n isNextRouterError(error) ||\n isBailoutToCSRError(error) ||\n isDynamicServerError(error) ||\n isHangingPromiseRejectionError(error) ||\n isPrerenderInterruptedError(error)\n ) {\n throw error\n }\n\n if (error instanceof Error && 'cause' in error) {\n unstable_rethrow(error.cause)\n }\n}\n","// This has to be a shared module which is shared between client component error boundary and dynamic component\nconst BAILOUT_TO_CSR = 'BAILOUT_TO_CLIENT_SIDE_RENDERING'\n\n/** An error that should be thrown when we want to bail out to client-side rendering. */\nexport class BailoutToCSRError extends Error {\n public readonly digest = BAILOUT_TO_CSR\n\n constructor(public readonly reason: string) {\n super(`Bail out to client-side rendering: ${reason}`)\n }\n}\n\n/** Checks if a passed argument is an error that is thrown if we want to bail out to client-side rendering. */\nexport function isBailoutToCSRError(err: unknown): err is BailoutToCSRError {\n if (typeof err !== 'object' || err === null || !('digest' in err)) {\n return false\n }\n\n return err.digest === BAILOUT_TO_CSR\n}\n"],"names":["forbidden","DIGEST","HTTP_ERROR_FALLBACK_ERROR_CODE","process","env","__NEXT_EXPERIMENTAL_AUTH_INTERRUPTS","Error","error","digest","HTTPAccessErrorStatus","getAccessFallbackErrorTypeByStatus","getAccessFallbackHTTPStatus","isHTTPAccessFallbackError","NOT_FOUND","FORBIDDEN","UNAUTHORIZED","ALLOWED_CODES","Set","Object","values","prefix","httpStatus","split","has","Number","status","isNextRouterError","isRedirectError","ReadonlyURLSearchParams","RedirectType","notFound","permanentRedirect","redirect","unauthorized","unstable_isUnrecognizedActionError","unstable_rethrow","push","replace","ReadonlyURLSearchParamsError","constructor","URLSearchParams","append","delete","set","sort","REDIRECT_ERROR_CODE","errorCode","type","destination","slice","join","at","statusCode","isNaN","RedirectStatusCode","getRedirectError","getRedirectStatusCodeFromError","getRedirectTypeFromError","getURLFromRedirectError","url","TemporaryRedirect","actionAsyncStorage","getStore","isAction","PermanentRedirect","workAsyncStorage","workUnitAsyncStorage","isBailoutToCSRError","isDynamicServerError","isHangingPromiseRejectionError","isPrerenderInterruptedError","cause","BailoutToCSRError","BAILOUT_TO_CSR","reason","err"],"mappings":"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","ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]}
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_1put4abgz_pcl._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ (()=>{"use strict";module.exports=[87598,(a,b,c)=>{var d=Object.defineProperty,e=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyNames,g=Object.prototype.hasOwnProperty,h={},i={RequestCookies:()=>p,ResponseCookies:()=>q,parseCookie:()=>l,parseSetCookie:()=>m,stringifyCookie:()=>k};for(var j in i)d(h,j,{get:i[j],enumerable:!0});function k(a){var b;let c=["path"in a&&a.path&&`Path=${a.path}`,"expires"in a&&(a.expires||0===a.expires)&&`Expires=${("number"==typeof a.expires?new Date(a.expires):a.expires).toUTCString()}`,"maxAge"in a&&"number"==typeof a.maxAge&&`Max-Age=${a.maxAge}`,"domain"in a&&a.domain&&`Domain=${a.domain}`,"secure"in a&&a.secure&&"Secure","httpOnly"in a&&a.httpOnly&&"HttpOnly","sameSite"in a&&a.sameSite&&`SameSite=${a.sameSite}`,"partitioned"in a&&a.partitioned&&"Partitioned","priority"in a&&a.priority&&`Priority=${a.priority}`].filter(Boolean),d=`${a.name}=${encodeURIComponent(null!=(b=a.value)?b:"")}`;return 0===c.length?d:`${d}; ${c.join("; ")}`}function l(a){let b=new Map;for(let c of a.split(/; */)){if(!c)continue;let a=c.indexOf("=");if(-1===a){b.set(c,"true");continue}let[d,e]=[c.slice(0,a),c.slice(a+1)];try{b.set(d,decodeURIComponent(null!=e?e:"true"))}catch{}}return b}function m(a){if(!a)return;let[[b,c],...d]=l(a),{domain:e,expires:f,httponly:g,maxage:h,path:i,samesite:j,secure:k,partitioned:m,priority:p}=Object.fromEntries(d.map(([a,b])=>[a.toLowerCase().replace(/-/g,""),b]));{var q,r,s={name:b,value:decodeURIComponent(c),domain:e,...f&&{expires:new Date(f)},...g&&{httpOnly:!0},..."string"==typeof h&&{maxAge:Number(h)},path:i,...j&&{sameSite:n.includes(q=(q=j).toLowerCase())?q:void 0},...k&&{secure:!0},...p&&{priority:o.includes(r=(r=p).toLowerCase())?r:void 0},...m&&{partitioned:!0}};let a={};for(let b in s)s[b]&&(a[b]=s[b]);return a}}b.exports=((a,b,c)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let h of f(b))g.call(a,h)||void 0===h||d(a,h,{get:()=>b[h],enumerable:!(c=e(b,h))||c.enumerable});return a})(d({},"__esModule",{value:!0}),h);var n=["strict","lax","none"],o=["low","medium","high"],p=class{constructor(a){this._parsed=new Map,this._headers=a;let b=a.get("cookie");if(b)for(let[a,c]of l(b))this._parsed.set(a,{name:a,value:c})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...a){let b="string"==typeof a[0]?a[0]:a[0].name;return this._parsed.get(b)}getAll(...a){var b;let c=Array.from(this._parsed);if(!a.length)return c.map(([a,b])=>b);let d="string"==typeof a[0]?a[0]:null==(b=a[0])?void 0:b.name;return c.filter(([a])=>a===d).map(([a,b])=>b)}has(a){return this._parsed.has(a)}set(...a){let[b,c]=1===a.length?[a[0].name,a[0].value]:a,d=this._parsed;return d.set(b,{name:b,value:c}),this._headers.set("cookie",Array.from(d).map(([a,b])=>k(b)).join("; ")),this}delete(a){let b=this._parsed,c=Array.isArray(a)?a.map(a=>b.delete(a)):b.delete(a);return this._headers.set("cookie",Array.from(b).map(([a,b])=>k(b)).join("; ")),c}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(a=>`${a.name}=${encodeURIComponent(a.value)}`).join("; ")}},q=class{constructor(a){var b,c,d;this._parsed=new Map,this._headers=a;let e=null!=(d=null!=(c=null==(b=a.getSetCookie)?void 0:b.call(a))?c:a.get("set-cookie"))?d:[];for(let a of Array.isArray(e)?e:function(a){if(!a)return[];var b,c,d,e,f,g=[],h=0;function i(){for(;h<a.length&&/\s/.test(a.charAt(h));)h+=1;return h<a.length}for(;h<a.length;){for(b=h,f=!1;i();)if(","===(c=a.charAt(h))){for(d=h,h+=1,i(),e=h;h<a.length&&"="!==(c=a.charAt(h))&&";"!==c&&","!==c;)h+=1;h<a.length&&"="===a.charAt(h)?(f=!0,h=e,g.push(a.substring(b,d)),b=h):h=d+1}else h+=1;(!f||h>=a.length)&&g.push(a.substring(b,a.length))}return g}(e)){let b=m(a);b&&this._parsed.set(b.name,b)}}get(...a){let b="string"==typeof a[0]?a[0]:a[0].name;return this._parsed.get(b)}getAll(...a){var b;let c=Array.from(this._parsed.values());if(!a.length)return c;let d="string"==typeof a[0]?a[0]:null==(b=a[0])?void 0:b.name;return c.filter(a=>a.name===d)}has(a){return this._parsed.has(a)}set(...a){let[b,c,d]=1===a.length?[a[0].name,a[0].value,a[0]]:a,e=this._parsed;return e.set(b,function(a={name:"",value:""}){return"number"==typeof a.expires&&(a.expires=new Date(a.expires)),a.maxAge&&(a.expires=new Date(Date.now()+1e3*a.maxAge)),(null===a.path||void 0===a.path)&&(a.path="/"),a}({name:b,value:c,...d})),function(a,b){for(let[,c]of(b.delete("set-cookie"),a)){let a=k(c);b.append("set-cookie",a)}}(e,this._headers),this}delete(...a){let[b,c]="string"==typeof a[0]?[a[0]]:[a[0].name,a[0]];return this.set({...c,name:b,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(k).join("; ")}}},61551,61737,82040,a=>{var b=a.i(56704),c=a.i(32319);class d{add(a){this._done||this._seen.has(a)||(this._seen.add(a),null!==this._resolve?(this._resolve({value:a,done:!1}),this._resolve=null):this._buffer.push(a))}close(){this._done||(this._done=!0,null!==this._resolve&&(this._resolve({value:void 0,done:!0}),this._resolve=null))}[Symbol.asyncIterator](){return{next:()=>this._buffer.length>0?Promise.resolve({value:this._buffer.shift(),done:!1}):this._done?Promise.resolve({value:void 0,done:!0}):new Promise(a=>{this._resolve=a})}}constructor(){this._resolve=null,this._done=!1,this._buffer=[],this._seen=new Set}}function e(a,b,c){if(null!==c)return new Proxy(b,{get:(b,d,e)=>("string"==typeof d&&(d===c||Object.prototype.hasOwnProperty.call(b,d))&&a.add(d),Reflect.get(b,d,e)),has:(b,d)=>(d===c&&a.add(c),Reflect.has(b,d)),ownKeys:b=>(a.add(c),Reflect.ownKeys(b))});let d={};for(let c in b)Object.defineProperty(d,c,{get:()=>(a.add(c),b[c]),enumerable:!0});return d}new d().close();var f=a.i(19107),g=a.i(28535);a.i(69825);var h=a.i(92307),i=a.i(72131);let j={current:null},k="function"==typeof i.cache?i.cache:a=>a,l=console.warn;function m(a){return function(...b){l(a(...b))}}k(a=>{try{l(j.current)}finally{j.current=null}});var n=a.i(43285);function o(b,c,d){let{createExhaustiveParamsProxy:e}=a.r(47395);return Promise.resolve(e(b,new Set(Object.keys((null==d?void 0:d.params)??{})),c.route))}let p=new WeakMap,q={get:function(a,b,d){if("then"===b||"catch"===b||"finally"===b){let e=f.f.get(a,b,d);return({[b]:(...b)=>{let d=c.workUnitAsyncStorage.getStore();return void 0!==d&&(0,h.F)(d,"`params`"),(0,n.abortOnDynamicAccess)("fallback-params",Error("Accessed fallback `params` during prerendering.")),new Proxy(e.apply(a,b),q)}})[b]}return f.f.get(a,b,d)}};function r(a,b,c){let d=p.get(a);if(d)return d;let e=new Proxy((0,h.E)(c.renderSignal,b.route,"`params`",null),q);return p.set(a,e),e}function s(a){let b=p.get(a);if(b)return b;let c=Promise.resolve(a);return p.set(a,c),c}m(function(a,b){let c=a?`Route "${a}" `:"This route ";return Error(`${c}used ${b}. \`params\` is a Promise and must be unwrapped with \`await\` or \`React.use()\` before accessing its properties. Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis`)});var t=a.i(24970);class u extends Error{constructor(...a){super(...a),this.code="NEXT_STATIC_GEN_BAILOUT"}}a.i(20635),a.i(24725);let v=new WeakMap;function w(a){let b=v.get(a);if(b)return b;let c=Promise.resolve(a);return v.set(a,c),c}new WeakMap,m(function(a,b){let c=a?`Route "${a}" `:"This route ";return Error(`${c}used ${b}. \`searchParams\` is a Promise and must be unwrapped with \`await\` or \`React.use()\` before accessing its properties. Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis`)}),a.s(["f",0,function(d){let e=b.workAsyncStorage.getStore();if(!e)throw new g.f("Expected workStore to be initialized");let i=c.workUnitAsyncStorage.getStore();if(i)switch(i.type){case"prerender":case"prerender-client":case"prerender-legacy":return function(a,b){if(a.forceStatic)return Promise.resolve({});switch(b.type){case"prerender":case"prerender-client":return function(a,b){let d=v.get(b);if(d)return d;let e=(0,h.S)(b.renderSignal,a.route,"`searchParams`",null),g=()=>{let a=c.workUnitAsyncStorage.getStore();(0,h.p)(a??b,"`searchParams`")},i={get(a,c,d){if(Object.hasOwn(a,c))return f.f.get(a,c,d);switch(c){case"then":case"catch":case"finally":{let e=f.f.get(a,c,d);return({[c]:(...c)=>(g(),(0,t.D)("`await searchParams`, `searchParams.then`, or similar",b),(0,n.abortOnDynamicAccess)("runtime",Error("Accessed `searchParams` during prerendering.")),new Proxy(e.apply(a,c),i))})[c]}case"status":return g(),(0,t.D)("`use(searchParams)`, `searchParams.status`, or similar",b),f.f.get(a,c,d);default:return f.f.get(a,c,d)}}},j=new Proxy(e,i);return v.set(b,j),j}(a,b);case"prerender-legacy":var d=a,e=b;let g=v.get(d);if(g)return g;let i=Promise.resolve({}),j=new Proxy(i,{get(a,b,c){if(Object.hasOwn(i,b))return f.f.get(a,b,c);if("string"==typeof b&&"then"===b){let a="`await searchParams`, `searchParams.then`, or similar";if(d.dynamicShouldError){var g=d.route;throw new u(`Route ${g} with \`dynamic = "error"\` couldn't be rendered statically because it used ${a}. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`)}(0,t.L)(a,d,e)}return f.f.get(a,b,c)}});return v.set(d,j),j;default:return b}}(e,i);case"prerender-runtime":throw new g.f("createSearchParamsFromClient should not be called in a runtime prerender.");case"cache":case"private-cache":case"unstable-cache":throw new g.f("createSearchParamsFromClient should not be called in cache contexts.");case"build-time-generator":throw new g.f(`createSearchParamsFromClient should not be called inside ${i.functionName}.`);case"validation-client":if(i.validationSamples)return function(b,c,d){var e;let{createExhaustiveSearchParamsProxy:f}=a.r(47395);return Promise.resolve(b=f(b,new Set(Object.keys((null==(e=d.validationSamples)?void 0:e.searchParams)??{})),c.route))}(d,e,i);return w(d);case"request":return function(b,c,d){let{asyncApiPromises:e,validationSamples:f}=d;if(e){var g,i;let d,j=b;return f&&(j=function(b,c,d){let{createExhaustiveSearchParamsProxy:e}=a.r(47395);return e(d,new Set(Object.keys(c.searchParams??{})),b.route)}(c,f,b)),g=e,i=j,d=g.sharedSearchParamsParent,(0,h.o)(d,i)}return c.forceStatic?Promise.resolve({}):w(b)}(d,e,i)}(0,c.throwInvariantForMissingStore)()}],61737),a.s([],61551),a.s(["f",0,function(a){let d=b.workAsyncStorage.getStore();if(!d)throw new g.f("Expected workStore to be initialized");let e=c.workUnitAsyncStorage.getStore();if(e)switch(e.type){case"prerender":case"prerender-client":case"prerender-legacy":return function(a,b,c){switch(c.type){case"prerender":{let d=a;if(function(a){for(let b in a)return!1;return!0}(a))return s(d);if(function(a,b){if(b){for(let c in a)if(b.has(c))return!0}return!1}(a,c.fallbackRouteParams))return r(a,b,c);let{stagedRendering:e}=c;if(e&&!function(a,b){for(let c in a)if(!Object.hasOwn(b,c))return!1;return!0}(a,c.rootParams)){let a=h.Y.staticUrlData.static;return e.delayUntilStage(a,"params",d)}return s(d)}case"prerender-client":{let d=c.fallbackRouteParams;if(d){for(let e in a)if(d.has(e))return r(a,b,c)}}}let d=a;return s(d)}(a,d,e);case"cache":case"private-cache":case"unstable-cache":throw new g.f("createParamsFromClient should not be called in cache contexts.");case"prerender-runtime":throw new g.f("createParamsFromClient should not be called in a runtime prerender.");case"build-time-generator":throw new g.f(`createParamsFromClient should not be called inside ${e.functionName}.`);case"validation-client":case"request":if(e.validationSamples)return o(a,d,e.validationSamples);return s(a)}(0,c.throwInvariantForMissingStore)()}],82040)},77682,a=>{var b=a.i(87924),c=a.i(9270),d=a.i(72131),e=a.i(60805),f=a.i(36313);a.i(61551);var g=a.i(82040),h=a.i(61737),h=h;a.s(["ClientPageRoot",0,function({Component:a,serverProvidedParams:i}){let j,k;if(null!==i)j=i.searchParams,k=i.params;else{let a=(0,d.use)(c.LayoutRouterContext);k=null!==a?a.parentParams:{},j=(0,e.Q)((0,d.use)(f.SearchParamsContext))}let l=(0,h.f)(j),m=(0,g.f)(k);return(0,b.jsx)(a,{params:m,searchParams:l})}],77682)},97296,a=>{var b=a.i(87924),c=a.i(9270),d=a.i(72131);a.i(61551);var e=a.i(82040);a.s(["ClientSegmentRoot",0,function({Component:a,slots:f,serverProvidedParams:g}){let h;if(null!==g)h=g.params;else{let a=(0,d.use)(c.LayoutRouterContext);h=null!==a?a.parentParams:{}}let i=(0,e.f)(h);return(0,b.jsx)(a,{...f,params:i})}])},61660,36673,14290,57516,a=>{var b=a.i(87924),c=a.i(72131),d=a.i(36313);a.i(20635),a.i(56704);var e=a.i(32319);function f(){return!function(){{let a=e.workUnitAsyncStorage.getStore();if(!a)return!1;switch(a.type){case"prerender":case"prerender-client":case"validation-client":let b=a.fallbackRouteParams;return!!b&&b.size>0}return!1}}()?(0,c.useContext)(d.PathnameContext):null}a.s([],36673),a.s(["f",0,f],14290);let g={NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401},h=new Set(Object.values(g));function i(a){if("object"!=typeof a||null===a||!("digest"in a)||"string"!=typeof a.digest)return!1;let[b,c]=a.digest.split(";");return"NEXT_HTTP_ERROR_FALLBACK"===b&&h.has(Number(c))}function j(a){return Number(a.digest.split(";")[1])}a.s(["X",0,g,"V",0,function(a){switch(a){case 401:return"unauthorized";case 403:return"forbidden";case 404:return"not-found";default:return}},"k",0,j,"v",0,i],57516);var k=a.i(9270);class l extends c.default.Component{constructor(a){super(a),this.state={triggeredStatus:void 0,previousPathname:a.pathname}}componentDidCatch(){}static getDerivedStateFromError(a){if(i(a))return{triggeredStatus:j(a)};throw a}static getDerivedStateFromProps(a,b){return a.pathname!==b.previousPathname&&b.triggeredStatus?{triggeredStatus:void 0,previousPathname:a.pathname}:{triggeredStatus:b.triggeredStatus,previousPathname:a.pathname}}render(){let{notFound:a,forbidden:c,unauthorized:d,children:e}=this.props,{triggeredStatus:f}=this.state,h={[g.NOT_FOUND]:a,[g.FORBIDDEN]:c,[g.UNAUTHORIZED]:d};if(f){let i=f===g.NOT_FOUND&&a,j=f===g.FORBIDDEN&&c,k=f===g.UNAUTHORIZED&&d;return i||j||k?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("meta",{name:"robots",content:"noindex"}),!1,h[f]]}):e}return e}}a.s(["HTTPAccessFallbackBoundary",0,function({notFound:a,forbidden:d,unauthorized:e,children:g}){let h=f(),i=(0,c.useContext)(k.MissingSlotContext);return a||d||e?(0,b.jsx)(l,{pathname:h,notFound:a,forbidden:d,unauthorized:e,missingSlots:i,children:g}):(0,b.jsx)(b.Fragment,{children:g})}],61660)},2420,a=>{var b,c=a.i(87924),d=a.i(72131),e=a.i(9270);let f={then:()=>{}};var g=d,h=a.i(14290),i=a.i(57516),j=((b={})[b.SeeOther=303]="SeeOther",b[b.TemporaryRedirect=307]="TemporaryRedirect",b[b.PermanentRedirect=308]="PermanentRedirect",b);function k(a){if("object"!=typeof a||null===a||!("digest"in a)||"string"!=typeof a.digest)return!1;let b=a.digest.split(";"),[c,d]=b,e=b.slice(2,-2).join(";"),f=Number(b.at(-2));return"NEXT_REDIRECT"===c&&("replace"===d||"push"===d)&&"string"==typeof e&&!isNaN(f)&&f in j}a.i(36673);var l=a.i(32319);/[\w-]+-Google|Google-[\w-]+|Chrome-Lighthouse|Slurp|DuckDuckBot|baiduspider|yandex|sogou|bitlybot|tumblr|vkShare|quora link preview|redditbot|ia_archiver|Bingbot|BingPreview|applebot|facebookexternalhit|facebookcatalog|Twitterbot|LinkedInBot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|Yeti|googleweblight/i.source;class m extends g.default.Component{static{this.contextType=e.AppRouterContext}constructor(a){super(a),this.reset=()=>{this.setState({error:null})},this.retry=()=>{(0,g.startTransition)(()=>{this.context?.refresh(),this.reset()})},this.state={error:null,previousPathname:this.props.pathname}}static getDerivedStateFromError(a){if(k(a)||(0,i.v)(a))throw a;return{error:{thrownValue:a}}}static getDerivedStateFromProps(a,b){let{error:c}=b;return a.pathname!==b.previousPathname&&b.error?{error:null,previousPathname:a.pathname}:{error:b.error,previousPathname:a.pathname}}render(){if(this.state.error&&1){let a=this.state.error.thrownValue;return!function({error:a}){if(!l.workUnitAsyncStorage)return;let b=l.workUnitAsyncStorage.getStore();switch(b?.type){case"prerender":case"prerender-client":case"prerender-legacy":throw a&&console.error(a),a;case"request":case"prerender-runtime":case"validation-client":case"cache":case"private-cache":case"unstable-cache":case"build-time-generator":case void 0:return}}({error:a}),(0,c.jsxs)(c.Fragment,{children:[this.props.errorStyles,this.props.errorScripts,(0,c.jsx)(this.props.errorComponent,{error:a,reset:this.reset,retry:this.retry})]})}return this.props.children}}function n({errorComponent:a,errorStyles:b,errorScripts:d,children:e}){let f=(0,h.f)();return a?(0,c.jsx)(m,{pathname:f,errorComponent:a,errorStyles:b,errorScripts:d,children:e}):(0,c.jsx)(c.Fragment,{children:e})}var o=d,p=a.i(36313);a.i(35112),a.i(56704),a.i(92307);let q=Symbol.for("next.browser-bailout-reason");(function(a){return{$$typeof:q,reason:a}}).bind(null,"useSearchParams()"),a.i(18341);URLSearchParams,a.i(24970);let{instrumentParamsForClientValidation:r,instrumentSearchParamsForClientValidation:s,expectCompleteParamsInClientValidation:t}={};function u(){let a=(0,d.useContext)(e.AppRouterContext);if(null===a)throw Error("invariant expected app router to be mounted");let b=(0,d.useContext)(e.LayoutRouterContext),c=b?.parentRenderTree.data.bfcacheId??0;return(0,d.useMemo)(()=>({back:a.back,forward:a.forward,refresh:a.refresh,hmrRefresh:a.hmrRefresh,push:a.push,replace:a.replace,prefetch:a.prefetch,experimental_gesturePush:a.experimental_gesturePush,bfcacheId:"_b_"+c+"_"}),[a,c])}function v({redirect:a,reset:b,redirectType:c}){let d=u();return(0,o.useEffect)(()=>{o.default.startTransition(()=>{"push"===c?d.push(a,{}):d.replace(a,{}),b()})},[a,c,b,d]),null}class w extends o.default.Component{constructor(a){super(a),this.state={redirect:null,redirectType:null}}static getDerivedStateFromError(a){if(k(a)){let b=k(a)?a.digest.split(";").slice(2,-2).join(";"):null,c=function(a){if(!k(a))throw Error("Not a redirect error");return a.digest.split(";",2)[1]}(a);return"handled"in a?{redirect:null,redirectType:null}:{redirect:b,redirectType:c}}throw a}render(){let{redirect:a,redirectType:b}=this.state;return null!==a&&null!==b?(0,c.jsx)(v,{redirect:a,redirectType:b,reset:()=>this.setState({redirect:null})}):this.props.children}}function x({children:a}){let b=u();return(0,c.jsx)(w,{router:b,children:a})}var y=a.i(61660),z=a.i(91419);a.i(28535),z.c,z.c.slice(0);var A=a.i(60805),B=a.i(68503);function C(a,b,c){let d=a.getClientRects();if(0===d.length)return 0;let e=1/0;for(let a=0;a<d.length;a++){let b=d[a];b.top<e&&(e=b.top)}return e>=c()&&e<=b?1:2}function D(a){let b=d.default.useRef(null);return(0,d.useLayoutEffect)(()=>{let{scrollRef:c,renderTree:d}=a,e=c.forceScroll?c.scrollRef:d.data.scrollRef;if(null===e||!e.current)return;let f=null,g=c.hashFragment;if(g){if(null===(f="top"===g?document.body:document.getElementById(g)??document.getElementsByName(g)[0]??null)){e.current=!1,c.onlyHashChange=!1,c.hashFragment=null;return}}else f=b.current;if(null===f)return;let h=!1;!function(a,b={}){if(b.onlyHashChange)return a();let c=document.documentElement;if("smooth"!==c.dataset.scrollBehavior)return a();let d=c.style.scrollBehavior;c.style.scrollBehavior="auto",b.dontForceLayout||c.getClientRects(),a(),c.style.scrollBehavior=d}(()=>{let a=document.documentElement,b=null,c=null,d=null,i=()=>{var c;let e,f;return null===d&&(c=b,d=!Number.isFinite(f=Number.parseFloat(e=getComputedStyle(a).scrollPaddingTop))||f<0?0:e.endsWith("px")?f:e.endsWith("%")?f/100*c:0),d};(g||(b=a.clientHeight,0!==(c=C(f,b,i))))&&((h=!0,e.current=!1,g)?f.scrollIntoView():1!==c&&(a.scrollTop=0,2===C(f,b,i)&&f.scrollIntoView()))},{dontForceLayout:!0,onlyHashChange:c.onlyHashChange}),h&&(c.onlyHashChange=!1,c.hashFragment=null)},void 0),(0,c.jsx)(d.Fragment,{ref:b,children:a.children})}function E({children:a,renderTree:b}){let f=(0,d.useContext)(e.GlobalLayoutRouterContext);if(!f)throw Error("invariant global layout router not mounted");return(0,c.jsx)(D,{scrollRef:f.scrollRef,renderTree:b,children:a})}function F({tree:a,segmentPath:b,debugNameContext:g,renderTree:h,params:i,url:j,isActive:k}){let l,m=(0,d.useContext)(e.GlobalLayoutRouterContext);if((0,d.useContext)(p.NavigationPromisesContext),!m)throw Error("invariant global layout router not mounted");let n=null!==h.data.prefetchRsc?h.data.prefetchRsc:h.data.rsc,o=(0,d.useDeferredValue)(h.data.rsc,n);if((0,B.f)(o)){let a=(0,d.use)(o);null===a&&(0,d.use)(f),l=a}else null===o&&(0,d.use)(f),l=o;let q=l;return(0,c.jsx)(e.LayoutRouterContext.Provider,{value:{parentTree:a,parentRenderTree:h,parentSegmentPath:b,parentParams:i,parentLoadingData:null,debugNameContext:g,url:j,isActive:k},children:q})}function G({name:a,loading:b,children:e}){if(null!==b){let f=b[0],g=b[1],h=b[2];return(0,c.jsx)(d.Suspense,{name:a,fallback:(0,c.jsxs)(c.Fragment,{children:[g,h,f]}),children:e})}return(0,c.jsx)(c.Fragment,{children:e})}a.s(["LoadingBoundaryProvider",0,function({loading:a,children:b}){let f=(0,d.use)(e.LayoutRouterContext);return null===f?b:(0,c.jsx)(e.LayoutRouterContext.Provider,{value:{parentTree:f.parentTree,parentRenderTree:f.parentRenderTree,parentSegmentPath:f.parentSegmentPath,parentParams:f.parentParams,parentLoadingData:a,debugNameContext:f.debugNameContext,url:f.url,isActive:f.isActive},children:b})},"default",0,function({parallelRouterKey:a,error:b,errorStyles:g,errorScripts:h,templateStyles:i,templateScripts:j,template:k,notFound:l,forbidden:m,unauthorized:o,segmentViewBoundaries:p}){let q=(0,d.useContext)(e.LayoutRouterContext);if(!q)throw Error("invariant expected layout router to be mounted");let{parentTree:r,parentRenderTree:s,parentSegmentPath:t,parentParams:u,parentLoadingData:v,url:w,isActive:z,debugNameContext:B}=q,C=r[0],D=null===t?[a]:t.concat([C,a]),H=r[1][a],I=s.slots?.get(a);(void 0===H||void 0===I)&&(0,d.use)(f);let J=function(a){return Array.isArray(a)?`${a[0]}|${a[2]}`:Array.isArray(a)?`${a[0]}|${a[1]}|${a[2]}`:a}(H[0]),K=function(a,b,c){let[e,f]=(0,d.useState)(()=>({tree:a,renderTree:b,stateKey:c,next:null}));if(e.tree===a)return e;let g={tree:a,renderTree:b,stateKey:c,next:null},h=1,i=e,j=g;for(;null!==i&&h<1;){if(i.stateKey===c){j.next=i.next;break}{h++;let a={tree:i.tree,renderTree:i.renderTree,stateKey:i.stateKey,next:null};j.next=a,j=a}i=i.next}return f(g),g}(H,I,J),L=[];do{let a=K.tree,d=K.renderTree,f=K.stateKey,p=a[0],q=u;if(Array.isArray(p)){let a=p[0],b=p[1],c=p[2],d=(0,A.v)(b,c);null!==d&&(q={...u,[a]:d})}let r=function(a){if("/"===a)return"/";if("string"==typeof a)if("(__SLOT__)"===a)return;else return a+"/";return a[1]+"/"}(p),s=r??B,t=void 0===r?void 0:B,C=(0,c.jsxs)(E,{renderTree:d,children:[(0,c.jsx)(n,{errorComponent:b,errorStyles:g,errorScripts:h,children:(0,c.jsx)(G,{name:t,loading:v,children:(0,c.jsx)(y.HTTPAccessFallbackBoundary,{notFound:l,forbidden:m,unauthorized:o,children:(0,c.jsxs)(x,{children:[(0,c.jsx)(F,{url:w,tree:a,params:q,renderTree:d,segmentPath:D,debugNameContext:s,isActive:z&&f===J}),null]})})})}),null]}),H=(0,c.jsxs)(e.TemplateContext.Provider,{value:C,children:[i,j,k]},f);L.push(H),K=K.next}while(null!==K)return L}],2420)},24017,a=>{var b=a.i(87924),c=a.i(72131),d=a.i(9270);a.s(["default",0,function(){let a=(0,c.useContext)(d.TemplateContext);return(0,b.jsx)(b.Fragment,{children:a})}])},68503,a=>{a.s(["f",()=>G],68503),a.s(["beginLockedNavigation",()=>x,"beginNavigationLockPrefetch",()=>s,"getCurrentNavigationGate",()=>D,"getNavigationLockSegmentCacheMap",()=>t,"getPreLockFetch",()=>r,"isNavigationLocked",()=>C,"resetNavigationLockToPending",()=>y,"resolveNavigationLockPrefetch",()=>u,"shouldRestrictNavigationToShell",()=>E,"startListeningForInstantNavigationCookie",()=>A,"updateCapturedSPAToTree",()=>B],96659);var b,c,d,e,f=a.i(38783),g=((c={})[c.SubtreeHasPartialPrefetching=2]="SubtreeHasPartialPrefetching",c[c.SegmentHasLoadingBoundary=4]="SegmentHasLoadingBoundary",c[c.SubtreeHasLoadingBoundary=8]="SubtreeHasLoadingBoundary",c[c.IsRootLayoutOrAbove=16]="IsRootLayoutOrAbove",c[c.ParentInlinedIntoSelf=32]="ParentInlinedIntoSelf",c[c.InlinedIntoChild=64]="InlinedIntoChild",c[c.HeadInlinedIntoSelf=128]="HeadInlinedIntoSelf",c[c.HeadOutlined=256]="HeadOutlined",c[c.InliningHintsStale=512]="InliningHintsStale",c[c.PrefetchDisabled=1024]="PrefetchDisabled",c[c.SubtreeHasInstantFalse=8192]="SubtreeHasInstantFalse",c[c.ShouldAttemptStaticShell=16384]="ShouldAttemptStaticShell",c[c.ShouldAttemptStaticPrefetch=32768]="ShouldAttemptStaticPrefetch",c[c.IsClosedParam=65536]="IsClosedParam",c[c.SubtreeHasClosedParams=131072]="SubtreeHasClosedParams",c),h=a.i(51040);a.i(72131);var i=((d={})[d.Intent=2]="Intent",d[d.Default=1]="Default",d[d.Background=0]="Background",d),j=((e={})[e.LoadingBoundary=0]="LoadingBoundary",e[e.StaticShell=1]="StaticShell",e[e.RuntimeShell=2]="RuntimeShell",e[e.PPR=3]="PPR",e[e.PPRRuntime=4]="PPRRuntime",e[e.Full=5]="Full",e);function k(){return{parent:null,key:null,value:null,map:null,prev:null,next:null,size:0}}a.i(60805),a.i(76784),a.i(27062);let l="function"==typeof WeakMap?new WeakMap:new Map,m=new Set;"function"==typeof IntersectionObserver&&new IntersectionObserver(function(a){for(let b=a.length-1;b>=0;b--){let c=a[b],d=c.intersectionRatio>0;!function(a,b){let c=l.get(a);void 0!==c&&(c.isVisible=b,b?m.add(c):m.delete(c),i.Default)}(c.target,d)}},{rootMargin:"200px"}),k(),a.i(28535),Symbol(),b=Number("300"),a.i(92397);let n={shared:"shared",reactServerComponents:"rsc",serverSideRendering:"ssr",actionBrowser:"action-browser",apiNode:"api-node",apiEdge:"api-edge",middleware:"middleware",instrument:"instrument",edgeAsset:"edge-asset",appPagesBrowser:"app-pages-browser",pagesDirBrowser:"pages-dir-browser",pagesDirEdge:"pages-dir-edge",pagesDirNode:"pages-dir-node"};function o(a){if(""===a)return"empty";try{let b=JSON.parse(a);if(Array.isArray(b)&&b.length>=3){let a=b[2];return null===a?"mpa":"spa"}}catch{}return"pending"}function p(a){if("u"<typeof cookieStore)return;let b=q;cookieStore.get(h.f).then(c=>{c&&q===b&&null!==b&&function(a,b){if("u"<typeof document)return;let c=`${h.f}=${JSON.stringify(a)}; Path=${b.path??"/"}`;b.domain&&(c+=`; Domain=${b.domain}`),document.cookie=c}(a,c)})}({...n,GROUP:{builtinReact:[n.reactServerComponents,n.actionBrowser],serverOnly:[n.reactServerComponents,n.actionBrowser,n.instrument,n.middleware],neutralTarget:[n.apiNode,n.apiEdge],clientOnly:[n.serverSideRendering,n.appPagesBrowser],bundled:[n.reactServerComponents,n.actionBrowser,n.serverSideRendering,n.appPagesBrowser,n.shared,n.instrument,n.middleware],appPages:[n.reactServerComponents,n.serverSideRendering,n.appPagesBrowser,n.actionBrowser]}}),k(),k(),"function"==typeof queueMicrotask&&queueMicrotask;let q=null;function r(){return null!==q?q.fetch:null}function s(){if(null!==q){let a,b={promise:new Promise(b=>{a=b}),resolve:a};return q.activePrefetches.add(b),b}return null}function t(){return null!==q?q.segmentCacheMap:null}function u(a){null!==q&&q.activePrefetches.delete(a),a.resolve()}function v(){let a,b;if(null!==q)return;let c=new Promise(b=>{a=b}),d=new Promise(a=>{b=a});q={released:c,resolveReleased:a,fetch:window.fetch,activePrefetches:new Set,segmentCacheMap:k(),currentNavigation:d,resolveCurrentNavigation:b},window.fetch=z}function w(){if(null===q)return;window.fetch=q.fetch;let{resolveReleased:a,activePrefetches:b,resolveCurrentNavigation:c}=q;for(let a of(q=null,b))a.resolve();c(),a()}function x(){let a;if(null===q)return null;q.resolveCurrentNavigation();let b=new Promise(b=>{a=b});return q.currentNavigation=b,q.resolveCurrentNavigation=a,b}function y(){null!==q&&"u">typeof document&&(w(),v(),p([0,`c${Math.random()}`]))}function z(a,b){if(null===q)return fetch(a,b);let c=q;return c.released.then(()=>(0,c.fetch)(a,b))}function A(){self.__next_instant_test&&("u">typeof cookieStore&&cookieStore.get(h.f).then(a=>{a||window.location.reload()}),v(),p([1,`c${Math.random()}`,null])),"u">typeof cookieStore&&cookieStore.addEventListener("change",a=>{for(let b of a.changed)if(b.name===h.f){if("pending"===o(b.value??"")){if(null!==q)return;v()}return}for(let b of a.deleted)if(b.name===h.f){if(null===q)return;w(),"u">typeof document&&(document.cookie=`${h.f}=; Path=/; Max-Age=0`);return}})}function B(a,b){p([1,`c${Math.random()}`,{from:a,to:b}])}function C(){if(null!==q)return!0;if("u"<typeof document)return!1;let a=document.cookie;if(!a.includes(h.f))return!1;let b=h.f+"=";for(let c of a.split(";")){let a=c.trim();if(a.startsWith(b)&&"pending"===o(a.slice(b.length)))return v(),!0}return!1}function D(){return null!==q?q.currentNavigation:null}function E(a,b){return C()&&(a&g.SubtreeHasPartialPrefetching)!=0&&(a&g.SubtreeHasPartialPrefetching)!=0&&b!==j.Full}new TextEncoder,f.createFromReadableStream,f.createFromFetch;let F=Symbol();function G(a){return a&&"object"==typeof a&&a.tag===F}},60805,27062,76784,51040,a=>{let b="__PAGE__",c="__DEFAULT__";a.s(["F",0,c,"z",0,b],27062);let d=/^[a-zA-Z0-9\-_@]+$/;function e(a){return d.test(a)?a:"!"+btoa(a).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}a.s(["x",0,"/_head","z",0,"","S",0,function(a,b,c){return a+"/"+("children"===b?c:`@${e(b)}/${c}`)},"C",0,function(a){if("string"==typeof a)return"/_not-found"===a?"_not-found":e(a);let b=a[0];return"$"+a[2]+"$"+e(b)}],76784);let f="_rsc",g="x-nextjs-rewritten-path",h="x-nextjs-rewritten-query";a.s(["G",0,"x-nextjs-postponed","f",0,"next-instant-navigation-testing","n",0,g,"L",0,h,"q",0,"next-router-prefetch","a",0,"next-router-segment-prefetch","r",0,"x-nextjs-stale-time","I",0,"next-router-state-tree","o",0,f,"S",0,"next-url","N",0,"text/x-component","s",0,"rsc"],51040);var i=a.i(29649);function j(a){let b=m(new URLSearchParams(a));return(0,i.S)(b)}function k(a){try{return encodeURIComponent(decodeURIComponent(a))}catch{return a}}function l(a){let b=new URL(a);return b.searchParams.delete(f),b}function m(a){let b={};for(let[c,d]of a.entries())void 0===b[c]?b[c]=d:Array.isArray(b[c])?b[c].push(d):b[c]=[b[c],d];return b}a.s(["A",0,k,"$",0,function(a){return!(""===a||a===b||"("===a[0]&&a.endsWith(")"))&&a!==c&&"/_not-found"!==a},"j",0,function(a){return"string"==typeof a?a:null===a?"":a.join("/")},"v",0,function(a,b){return"c"===b||"oc"===b?a.split("/"):a},"y",0,function(a){let b=a.headers.get(g);if(null!==b)return b;let c=l(new URL(a.url)).pathname;return!function(a){let b,c,d;if("string"!=typeof a)return;let{pathname:e}=(b=a.indexOf("#"),(d=(c=a.indexOf("?"))>-1&&(b<0||c<b))||b>-1?{pathname:a.substring(0,d?c:b),query:d?a.substring(c,b>-1?b:void 0):"",hash:b>-1?a.slice(b):""}:{pathname:a,query:"",hash:""});""===e||e.startsWith("/")}(c),c},"S",0,function(a){let b=a.headers.get(h);return null!==b?j(b):j(l(new URL(a.url)).search)},"p",0,j,"P",0,function(a,b,c){switch(a){case"c":return c<b.length?b.slice(c).map(a=>k(a)):[];case"ci(..)(..)":case"ci(.)":case"ci(..)":case"ci(...)":{let d=a.length-2;return c<b.length?b.slice(c).map((a,b)=>0===b?k(a.slice(d)):k(a)):[]}case"oc":return c<b.length?b.slice(c).map(a=>k(a)):null;case"d":if(c>=b.length)return"";return k(b[c]);case"di(..)(..)":case"di(.)":case"di(..)":case"di(...)":{let d=a.length-2;if(c>=b.length)return"";return k(b[c].slice(d))}default:return""}},"Q",0,m],60805)},90574,a=>{var b=a.i(27325);let c={[b.M]:function({children:a}){return a},[b.c]:function({children:a}){return a},[b.W]:function({children:a}){return a},[b.h]:function({children:a}){return a}},d=c[b.M.slice(0)],e=c[b.c.slice(0)],f=c[b.W.slice(0)],g=c[b.h.slice(0)];a.s(["MetadataBoundary",0,d,"OutletBoundary",0,f,"RootLayoutBoundary",0,g,"ViewportBoundary",0,e])},27325,a=>{a.s(["M",0,"__next_metadata_boundary__","W",0,"__next_outlet_boundary__","h",0,"__next_root_layout_boundary__","c",0,"__next_viewport_boundary__"])},60704,a=>{var b=a.i(87924);a.s(["IconMark",0,()=>(0,b.jsx)("meta",{name:"«nxt-icon»"})])},47395,a=>{var b=a.i(87598),c=a.i(19107);a.i(56704);class d extends Error{constructor(){super("Cookies can only be modified in a Server Action or Route Handler. Read more: https://nextjs.org/docs/app/api-reference/functions/cookies#options")}static callable(){throw new d}}class e{static seal(a){return new Proxy(a,{get(a,b,e){switch(b){case"clear":case"delete":case"set":return d.callable;default:return c.f.get(a,b,e)}}})}static fresh(a){return new Proxy(a,{get:(a,b,d)=>c.f.get(a,b,d)})}}Symbol.for("next.mutated.cookies");class f extends Error{constructor(){super("Headers cannot be modified. Read more: https://nextjs.org/docs/app/api-reference/functions/headers")}static callable(){throw new f}}class g extends Headers{constructor(a){super(),this.headers=new Proxy(a,{get(b,d,e){if("symbol"==typeof d)return c.f.get(b,d,e);let f=d.toLowerCase(),g=Object.keys(a).find(a=>a.toLowerCase()===f);if(void 0!==g)return c.f.get(b,g,e)},set(b,d,e,f){if("symbol"==typeof d)return c.f.set(b,d,e,f);let g=d.toLowerCase(),h=Object.keys(a).find(a=>a.toLowerCase()===g);return c.f.set(b,h??d,e,f)},has(b,d){if("symbol"==typeof d)return c.f.has(b,d);let e=d.toLowerCase(),f=Object.keys(a).find(a=>a.toLowerCase()===e);return void 0!==f&&c.f.has(b,f)},deleteProperty(b,d){if("symbol"==typeof d)return c.f.deleteProperty(b,d);let e=d.toLowerCase(),f=Object.keys(a).find(a=>a.toLowerCase()===e);return void 0===f||c.f.deleteProperty(b,f)}})}static seal(a,b){let d,e=b&&b.size>0?a=>b.has(a.toLowerCase()):null,g=new Proxy(a,{get(a,b,e){switch(b){case"append":case"delete":case"set":return f.callable;case Symbol.iterator:return d[Symbol.iterator];case"get":case"has":case"getSetCookie":case"keys":case"values":case"entries":case"forEach":return d[b];default:return c.f.get(a,b,e)}}});return d=e?function(a,b,c){function*d(){for(let b of a.entries())c(b[0])||(yield b)}return{entries:d,[Symbol.iterator]:d,get:b=>c(b)?null:a.get(b),has:b=>!c(b)&&a.has(b),getSetCookie:()=>c("set-cookie")?[]:a.getSetCookie(),*keys(){for(let b of a.keys())c(b)||(yield b)},*values(){for(let[,a]of d())yield a},forEach(a,c){for(let[e,f]of d())a.call(c,f,e,b)}}}(a,g,e):{get:a.get.bind(a),has:a.has.bind(a),getSetCookie:a.getSetCookie.bind(a),keys:a.keys.bind(a),values:a.values.bind(a),entries:a.entries.bind(a),[Symbol.iterator]:a[Symbol.iterator].bind(a),forEach(b,c){for(let[d,e]of a.entries())b.call(c,e,d,g)}},g}static fresh(a){return new Proxy(a,{get:(a,b,d)=>c.f.get(a,b,d)})}merge(a){return Array.isArray(a)?a.join(", "):a}static from(a){return a instanceof Headers?a:new g(a)}append(a,b){let c=this.headers[a];"string"==typeof c?this.headers[a]=[c,b]:Array.isArray(c)?c.push(b):this.headers[a]=b}delete(a){delete this.headers[a]}get(a){let b=this.headers[a];return void 0!==b?this.merge(b):null}has(a){return void 0!==this.headers[a]}set(a,b){this.headers[a]=b}forEach(a,b){for(let[c,d]of this.entries())a.call(b,d,c,this)}*entries(){for(let a of Object.keys(this.headers)){let b=a.toLowerCase(),c=this.get(b);yield[b,c]}}*keys(){for(let a of Object.keys(this.headers)){let b=a.toLowerCase();yield b}}*values(){for(let a of Object.keys(this.headers)){let b=this.get(a);yield b}}[Symbol.iterator](){return this.entries()}}let h=["(..)(..)","(.)","(..)","(...)"];var i=a.i(29649),j=a.i(28535);class k extends Error{constructor(...a){super(...a),this.digest="INSTANT_VALIDATION_ERROR"}}var l=a.i(32319),m=a.i(69825);function n(a){(function(){let a=null,b=l.workUnitAsyncStorage.getStore();if(b)switch(b.type){case"request":case"validation-client":a=b.validationSampleTracking??null}if(!a)throw new j.f("Expected to have a workUnitStore that provides validationSampleTracking");return a})().missingSampleErrors.push(a)}function o(a){throw n(a),a}function p(a,b){return new k(`Route "${a}" accessed cookie "${b}" which is not defined in the \`unstable_samples\` of \`instant\`. Add it to the sample's \`cookies\` array, or \`{ name: "${b}", value: null }\` if it should be absent.`)}function q(a,b){return new k(`Route "${a}" accessed searchParam "${b}" which is not defined in the \`unstable_samples\` of \`instant\`. Add it to the sample's \`searchParams\` object, or \`{ "${b}": null }\` if it should be absent.`)}a.s(["assertRootParamInSamples",0,function(a,b,c){if(b&&c in b);else{let b=a.route;o(new k(`Route "${b}" accessed root param "${c}" which is not defined in the \`unstable_samples\` of \`instant\`. Add it to the sample's \`params\` object.`))}},"createCookiesFromSample",0,function(a,c){let d=new Set,f=new b.RequestCookies(new Headers);if(a)for(let b of a)d.add(b.name),null!==b.value&&f.set(b.name,b.value);return new Proxy(e.seal(f),{get(a,b,e){if("has"===b){let f=Reflect.get(a,b,e);return function(b){return d.has(b)||o(p(c,b)),f.call(a,b)}}if("get"===b){let f=Reflect.get(a,b,e);return function(b){let e;if("string"==typeof b)e=b;else{if(!b||"object"!=typeof b||"string"!=typeof b.name)return f.call(a,b);e=b.name}return d.has(e)||o(p(c,e)),f.call(a,e)}}return Reflect.get(a,b,e)}})},"createDraftModeForValidation",0,function(){return{get isEnabled(){return!1},enable(){throw Error("Draft mode cannot be enabled during build-time instant validation.")},disable(){throw Error("Draft mode cannot be disabled during build-time instant validation.")}}},"createExhaustiveParamsProxy",0,function(a,b,c){return new Proxy(a,{get:(d,e,f)=>("string"==typeof e&&!m.A.has(e)&&e in a&&!b.has(e)&&o(new k(`Route "${c}" accessed param "${e}" which is not defined in the \`unstable_samples\` of \`instant\`. Add it to the sample's \`params\` object.`)),Reflect.get(d,e,f))})},"createExhaustiveSearchParamsProxy",0,function(a,b,c){return new Proxy(a,{get:(a,d,e)=>("string"!=typeof d||m.A.has(d)||b.has(d)||o(q(c,d)),Reflect.get(a,d,e)),has:(a,d)=>("string"!=typeof d||m.A.has(d)||b.has(d)||o(q(c,d)),Reflect.has(a,d))})},"createExhaustiveURLSearchParamsProxy",0,function(a,b,c){return new Proxy(a,{get(a,d,e){if("get"===d||"getAll"===d||"has"===d){let f=Reflect.get(a,d,e);return d=>("string"!=typeof d||b.has(d)||o(q(c,d)),f.call(a,d))}let f=Reflect.get(a,d,e);return"function"!=typeof f||Object.hasOwn(a,d)?f:f.bind(a)}})},"createHeadersFromSample",0,function(a,b,c){let d=a?[...a]:[];if(d.find(([a])=>"cookie"===a.toLowerCase()))throw new k('Invalid sample: Defining cookies via a "cookie" header is not supported. Use `cookies: [{ name: ..., value: ... }]` instead.');if(b){let a=b.toString();d.push(["cookie",""!==a?a:null])}let e=new Set,f={};for(let[a,b]of d)e.add(a.toLowerCase()),null!==b&&(f[a.toLowerCase()]=b);return new Proxy(g.seal(g.from(f)),{get(a,b,d){if("get"===b||"has"===b){let f=Reflect.get(a,b,d);return function(b){let d=b.toLowerCase();return e.has(d)||o(new k(`Route "${c}" accessed header "${d}" which is not defined in the \`unstable_samples\` of \`instant\`. Add it to the sample's \`headers\` array, or \`["${d}", null]\` if it should be absent.`)),f.call(a,d)}}return Reflect.get(a,b,d)}})},"createRelativeURLFromSamples",0,function(a,b,c){let d=function(a,b){let c=[];for(let d of a.split("/")){let a=function(a){let b=h.find(b=>a.startsWith(b));return(b&&(a=a.slice(b.length)),a.startsWith("[[...")&&a.endsWith("]]"))?{paramType:"optional-catchall",paramName:a.slice(5,-2)}:a.startsWith("[...")&&a.endsWith("]")?{paramType:b?`catchall-intercepted-${b}`:"catchall",paramName:a.slice(4,-1)}:a.startsWith("[")&&a.endsWith("]")?{paramType:b?`dynamic-intercepted-${b}`:"dynamic",paramName:a.slice(1,-1)}:null}(d);if(a)switch(a.paramType){case"catchall":case"optional-catchall":{let e=b[a.paramName];if(void 0===e)e=[d];else if(!Array.isArray(e))throw new k(`Expected sample param value for segment '${d}' to be an array of strings, got ${typeof e}`);c.push(...e.map(a=>encodeURIComponent(a)));break}case"dynamic":{let e=b[a.paramName];if(void 0===e)e=d;else if("string"!=typeof e)throw new k(`Expected sample param value for segment '${d}' to be a string, got ${typeof e}`);c.push(encodeURIComponent(e));break}case"catchall-intercepted-(..)(..)":case"catchall-intercepted-(.)":case"catchall-intercepted-(..)":case"catchall-intercepted-(...)":case"dynamic-intercepted-(..)(..)":case"dynamic-intercepted-(.)":case"dynamic-intercepted-(..)":case"dynamic-intercepted-(...)":throw new j.f("Not implemented: Validation of interception routes");default:a.paramType}else c.push(d)}return c.join("/")}(a,b??{}),e="";if(c){let a=(function(a){let b=new URLSearchParams;if(a){for(let[c,d]of Object.entries(a))if(null!=d)if(Array.isArray(d))for(let a of d)b.append(c,a);else b.set(c,d)}return b})(c).toString();a&&(e="?"+a)}return function(a,b,c=!0){let d=new URL("http://n"),e=b?new URL(b,d):a.startsWith(".")?new URL("http://n"):d,{pathname:f,searchParams:g,search:h,hash:j,href:k,origin:l}=a.startsWith("/")?new URL(`${e.protocol}//${e.host}${a}`):new URL(a,e);if(l!==d.origin)throw Error(`invariant: invalid relative URL, router received ${a}`);return{auth:null,host:null,hostname:null,pathname:f,port:null,protocol:null,query:c?(0,i.g)(g):void 0,search:h,hash:j,href:k.slice(l.length),slashes:null}}(d+e,void 0,!0)},"createValidationSampleTracking",0,function(){return{missingSampleErrors:[]}},"trackMissingSampleError",0,n,"trackMissingSampleErrorAndThrow",0,o],47395)},92307,91419,24970,a=>{var b,c,d,e=a.i(28535),f=((b={})[b.None=0]="None",b[b.Shell=1]="Shell",b[b.Prefetch=2]="Prefetch",b[b.Navigation=3]="Navigation",b),g=((c=g||{})[c.LessConstrained=1]="LessConstrained",c[c.Compatible=2]="Compatible",c[c.MoreConstrained=3]="MoreConstrained",c[c.Incompatible=4]="Incompatible",c);a.i(92397);var h=((d={})[d.Before=1]="Before",d[d.ShellStatic=10]="ShellStatic",d[d.PrefetchStatic_prefetchApi=11]="PrefetchStatic_prefetchApi",d[d.PrefetchStatic=12]="PrefetchStatic",d[d.NavigationStatic=13]="NavigationStatic",d[d.Static=14]="Static",d[d.ShellRuntime=20]="ShellRuntime",d[d.PrefetchRuntime_prefetchApi=21]="PrefetchRuntime_prefetchApi",d[d.PrefetchRuntime=22]="PrefetchRuntime",d[d.NavigationRuntime=23]="NavigationRuntime",d[d.Dynamic=30]="Dynamic",d[d.Abandoned=40]="Abandoned",d),i=a.i(56704);a.i(32319),a.i(59043);class j extends Error{constructor(a,b){super(`During prerendering, ${b} rejects when the prerender is complete. Typically these errors are handled by React but if you move ${b} to a different context by using \`setTimeout\`, \`after\`, or similar functions you may observe this error and you should handle it in that context. This occurred at route "${a}".`),this.route=a,this.expression=b,this.digest="HANGING_PROMISE_REJECTION"}}let k=new WeakMap;function l(a,b){n(a,2,b)}function m(a,b){n(a,3,b)}function n(a,b,c){if("prerender"===a.type){let{prerenderDataTracking:d,stagedRendering:g}=a;if(!d||!g)return;let{currentStage:i}=g;if(i===h.Before)return void console.error(new e.f("Unexpected trackRuntimeDataAccessed in the Before stage."));if(i>=h.NavigationStatic)return;let j=a.ensureStaticLevel??f.None;switch(b){case 1:{let a=null;i<=h.ShellStatic&&j<f.Shell&&(d.shouldAttemptStaticShell=!1,a??=h.ShellStatic,null==p||p(c,"shell")),i<=h.PrefetchStatic&&j<f.Prefetch&&(d.shouldAttemptStaticPrefetch=!1,a??=h.PrefetchStatic,null==p||p(c,"prefetch")),null!==a&&o(d,g,a);break}case 3:if(a.isFallbackUpgradeable){j<f.Prefetch&&(o(d,g,h.PrefetchStatic),null==q||q());break}case 2:i<=h.PrefetchStatic&&j<f.Prefetch&&(d.shouldAttemptStaticPrefetch=!1,null==p||p(c,"prefetch"),o(d,g,h.PrefetchStatic))}}}function o(a,b,c){let{runtimeDataAccessed:d}=a;b.currentStage>=c?d.resolve(!0):b.onStage(c,d.resolve.bind(null,!0))}let p=process.env.NEXT_PRIVATE_DEBUG_RUNTIME_DATA?(a,b)=>{let{route:c}=i.workAsyncStorage.getStore();console.log(`Route '${c}': deopting to a runtime ${b} because it used ${a}`)}:void 0,q=process.env.NEXT_PRIVATE_DEBUG_RUNTIME_DATA?()=>{let{route:a}=i.workAsyncStorage.getStore();console.log(`Route '${a}': marking upgradeable fallback as runtime prefetchable`)}:void 0;function r(a,b){if(a.aborted)return Promise.reject(b);{let c=new Promise((c,d)=>{let e=d.bind(null,b),f=k.get(a);if(f)f.push(e);else{let b=[e];k.set(a,b),a.addEventListener("abort",()=>{for(let a=0;a<b.length;a++)b[a]()},{once:!0})}});return c.catch(s),c}}function s(){}class t extends Promise{#a;static get[Symbol.species](){return Promise}static from(a,b){let c=new t(a.then.bind(a));return c.#a=b,Promise.prototype.then.call(c,void 0,s),c}then(a,b){let c=this.#a;if(c)try{c()}catch(a){console.error(a)}return Promise.prototype.then.call(this,a,b)}constructor(...a){super(...a),this.#a=null}}let u={sessionData:h.ShellRuntime,staticUrlData:{prefetchApi:{static:h.PrefetchStatic_prefetchApi,runtime:h.PrefetchRuntime_prefetchApi},static:h.PrefetchStatic,runtime:h.PrefetchRuntime},runtimeUrlData:h.PrefetchRuntime};a.s(["Y",0,u,"n",0,function(a,b,c){return b.stagedRendering?b.stagedRendering.delayUntilStage(c,void 0,a):new Promise(b=>{setTimeout(()=>{b(a)},0)})},"E",0,function(a,b,c,d){var e,f;let g=r(a,new j(b,c));return null===d?g:(e=g,f=m.bind(null,d,c),t.from(e,f))},"o",0,function(a,b){let c=a.then(()=>b);return c.catch(s),c},"S",0,function(a,b,c,d){var e,f;let g=r(a,new j(b,c));return null===d?g:(e=g,f=l.bind(null,d,c),t.from(e,f))},"F",0,m,"p",0,l],92307),a.i(72131);class v extends Error{constructor(a){super(`Dynamic server usage: ${a}`),this.description=a,this.digest="DYNAMIC_SERVER_USAGE"}}var w=a.i(27325);let x="__next_instant_validation_boundary__",y="__next_instant_slot_";a.s(["S",0,y,"X",0,"__","c",0,x],91419),RegExp(`\\n\\s+at Suspense \\(<anonymous>\\)(?:(?!\\n\\s+at (?:body|div|main|section|article|aside|header|footer|nav|form|p|span|h1|h2|h3|h4|h5|h6) \\(<anonymous>\\))[\\s\\S])*?\\n\\s+at ${w.h} \\([^\\n]*\\)`),RegExp(`\\n\\s+at ${w.M}[\\n\\s]`),RegExp(`\\n\\s+at ${w.c}[\\n\\s]`),RegExp(`\\n\\s+at ${w.W}[\\n\\s]`),RegExp(`\\n\\s+at ${x}[\\n\\s]`),RegExp(`\\n\\s+at ${y}(\\d+)__[\\n\\s]`),a.s(["D",0,function(a,b){let c=b.dynamicTracking;c&&c.dynamicAccesses.push({stack:c.isDebugDynamicAccesses?Error().stack:void 0,expression:a})},"L",0,function(a,b,c){let d=new v(`Route ${b.route} couldn't be rendered statically because it used \`${a}\`. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`);throw c.revalidate=0,b.dynamicUsageDescription=a,b.dynamicUsageStack=d.stack,d}],24970)},19107,69825,a=>{a.s(["f",0,class{static get(a,b,c){let d=Reflect.get(a,b,c);return"function"==typeof d?d.bind(a):d}static set(a,b,c,d){return Reflect.set(a,b,c,d)}static has(a,b){return Reflect.has(a,b)}static deleteProperty(a,b){return Reflect.deleteProperty(a,b)}}],19107);let b=/^[A-Za-z_$][A-Za-z0-9_$]*$/,c=new Set(["hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toString","valueOf","toLocaleString","then","catch","finally","status","displayName","_debugInfo","toJSON","$$typeof","__esModule","@@iterator"]);a.s(["L",0,function(a,b){let c=JSON.stringify(b);return`\`Reflect.has(${a}, ${c})\`, \`${c} in ${a}\`, or similar`},"r",0,function(a,c){return b.test(c)?`\`${a}.${c}\``:`\`${a}[${JSON.stringify(c)}]\``},"A",0,c],69825)},28535,a=>{a.s(["f",0,class extends Error{constructor(a,b){super(`Invariant: ${a.endsWith(".")?a:a+"."} This is a bug in Next.js.`,b),this.name="InvariantError"}}])},92397,a=>{a.s(["f",0,function(){let a,b,c=new Promise((c,d)=>{a=c,b=d});return{resolve:a,reject:b,promise:c}}])},29649,a=>{a.s(["S",0,function(a){let b=[];for(let c in a){let d=a[c];if(null!=d)if(Array.isArray(d))for(let a of d)b.push(`${encodeURIComponent(c)}=${encodeURIComponent(String(a))}`);else b.push(`${encodeURIComponent(c)}=${encodeURIComponent(String(d))}`)}return 0===b.length?"":"?"+b.join("&")},"g",0,function(a){let b={};for(let[c,d]of a.entries()){let a=b[c];void 0===a?b[c]=d:Array.isArray(a)?a.push(d):b[c]=[a,d]}return b}])},36313,(a,b,c)=>{b.exports=a.r(42602).vendored.contexts.HooksClientContext},18341,(a,b,c)=>{b.exports=a.r(42602).vendored.contexts.ServerInsertedHtml}]})();
2
+
3
+ //# sourceMappingURL=node_modules_next_dist_1put4abgz_pcl._.js.map
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_1put4abgz_pcl._.js.map ADDED
The diff for this file is too large to render. See raw diff
 
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_client_components_0wpq8j32_ibz4._.js ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ module.exports=[[79962,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return f}});let d=a.r(7997),e=a.r(72421);function f(){return(0,d.jsx)(e.HTTPAccessErrorFallback,{status:404,message:"This page could not be found."})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},72421,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"HTTPAccessErrorFallback",{enumerable:!0,get:function(){return f}});let d=a.r(7997),e=a.r(53686);function f({status:a,message:b}){return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("title",{children:`${a}: ${b}`}),(0,d.jsx)("div",{style:e.styles.error,children:(0,d.jsxs)("div",{children:[(0,d.jsx)("style",{dangerouslySetInnerHTML:{__html:"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}),(0,d.jsx)("h1",{className:"next-error-h1",style:e.styles.h1,children:a}),(0,d.jsx)("div",{style:e.styles.desc,children:(0,d.jsx)("h2",{style:e.styles.h2,children:b})})]})})]})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},53686,(a,b,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"styles",{enumerable:!0,get:function(){return d}});let d={error:{fontFamily:'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',height:"100vh",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},desc:{display:"inline-block"},h1:{display:"inline-block",margin:"0 20px 0 0",padding:"0 23px 0 0",fontSize:24,fontWeight:500,verticalAlign:"top",lineHeight:"49px"},h2:{fontSize:14,fontWeight:400,lineHeight:"49px",margin:0}};("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)}],43619,function(a){a.n(a.i(79962))}];
2
+
3
+ //# sourceMappingURL=node_modules_next_dist_client_components_0wpq8j32_ibz4._.js.map
e-commerce/.next/server/chunks/ssr/node_modules_next_dist_client_components_0wpq8j32_ibz4._.js.map ADDED
@@ -0,0 +1 @@
 
 
1
+ {"version":3,"sources":["../../../../node_modules/next/src/client/components/builtin/not-found.tsx","../../../../node_modules/next/src/client/components/http-access-fallback/error-fallback.tsx","../../../../node_modules/next/src/client/components/styles/access-error-styles.ts"],"sourcesContent":["import { HTTPAccessErrorFallback } from '../http-access-fallback/error-fallback'\n\nexport default function NotFound() {\n return (\n <HTTPAccessErrorFallback\n status={404}\n message=\"This page could not be found.\"\n />\n )\n}\n","import { styles } from '../styles/access-error-styles'\n\nexport function HTTPAccessErrorFallback({\n status,\n message,\n}: {\n status: number\n message: string\n}) {\n return (\n <>\n {/* <head> */}\n <title>{`${status}: ${message}`}</title>\n {/* </head> */}\n <div style={styles.error}>\n <div>\n <style\n dangerouslySetInnerHTML={{\n /* Minified CSS from\n body { margin: 0; color: #000; background: #fff; }\n .next-error-h1 {\n border-right: 1px solid rgba(0, 0, 0, .3);\n }\n\n @media (prefers-color-scheme: dark) {\n body { color: #fff; background: #000; }\n .next-error-h1 {\n border-right: 1px solid rgba(255, 255, 255, .3);\n }\n }\n */\n __html: `body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}`,\n }}\n />\n <h1 className=\"next-error-h1\" style={styles.h1}>\n {status}\n </h1>\n <div style={styles.desc}>\n <h2 style={styles.h2}>{message}</h2>\n </div>\n </div>\n </div>\n </>\n )\n}\n","export const styles: Record<string, React.CSSProperties> = {\n error: {\n // https://github.com/sindresorhus/modern-normalize/blob/main/modern-normalize.css#L38-L52\n fontFamily:\n 'system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"',\n height: '100vh',\n textAlign: 'center',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n },\n\n desc: {\n display: 'inline-block',\n },\n\n h1: {\n display: 'inline-block',\n margin: '0 20px 0 0',\n padding: '0 23px 0 0',\n fontSize: 24,\n fontWeight: 500,\n verticalAlign: 'top',\n lineHeight: '49px',\n },\n\n h2: {\n fontSize: 14,\n fontWeight: 400,\n lineHeight: '49px',\n margin: 0,\n },\n}\n"],"names":["NotFound","HTTPAccessErrorFallback","status","message","title","div","style","styles","error","dangerouslySetInnerHTML","__html","h1","className","desc","h2","fontFamily","height","textAlign","display","flexDirection","alignItems","justifyContent","margin","padding","fontSize","fontWeight","verticalAlign","lineHeight"],"mappings":"0GAEA,UAAA,qCAAwBA,yBAFgB,CAAA,CAAA,IAAA,GAEzB,SAASA,IACtB,MACE,CADF,EACE,EAAA,GAAA,EAACC,EAAAA,AADH,uBAC0B,CAAA,CACtBC,OAAQ,IACRC,QAAQ,iCAGd,kTCPgBF,0BAAAA,qCAAAA,yBAFO,CAAA,CAAA,IAAA,GAEhB,SAASA,EAAwB,QACtCC,CAAM,SACNC,CAAO,CAIR,EACC,MACE,CADF,AACE,EAAA,EAAA,IAAA,EAAA,CADF,CACE,QAAA,CAAA,WAEE,CAAA,EAAA,EAAA,GAAA,EAACC,QAAAA,UAAO,CAAA,EAAGF,EAAO,EAAE,EAAEC,EAAAA,CAAS,GAE/B,CAAA,EAAA,EAAA,GAAA,EAACE,MAAAA,CAAIC,MAAOC,EAAAA,MAAM,CAACC,KAAK,UACtB,CAAA,EAAA,EAAA,IAAA,EAACH,CAAD,KAACA,WACC,CAAA,EAAA,EAAA,GAAA,EAACC,QAAAA,CACCG,wBAAyB,CAcvBC,OAAQ,CAAC,6NAA6N,CAAC,AACzO,IAEF,CAAA,EAAA,EAAA,GAAA,EAACC,KAAAA,CAAGC,UAAU,gBAAgBN,MAAOC,EAAAA,MAAM,CAACI,EAAE,UAC3CT,IAEH,CAAA,EAAA,EAAA,GAAA,EAACG,MAAAA,CAAIC,MAAOC,EAAAA,MAAM,CAACM,IAAI,UACrB,CAAA,EAAA,EAAA,GAAA,EAACC,EAAD,GAACA,CAAGR,MAAOC,EAAAA,MAAM,CAACO,EAAE,UAAGX,aAMnC,kTC5CaI,SAAAA,qCAAAA,KAAN,IAAMA,EAA8C,CACzDC,MAAO,CAELO,WACE,8FACFC,OAAQ,QACRC,UAAW,SACXC,QAAS,OACTC,cAAe,SACfC,WAAY,SACZC,eAAgB,QAClB,EAEAR,KAAM,CACJK,QAAS,cACX,EAEAP,GAAI,CACFO,QAAS,eACTI,OAAQ,aACRC,QAAS,aACTC,SAAU,GACVC,WAAY,IACZC,cAAe,MACfC,WAAY,MACd,EAEAb,GAAI,CACFU,SAAU,GACVC,WAAY,IACZE,WAAY,OACZL,OAAQ,CACV,CACF","ignoreList":[0,1,2]}