{"version":3,"file":"static/chunks/5675-5d3b8ba752c9bf0d.js","mappings":"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","sources":["webpack://_N_E/./node_modules/next/dist/client/image-component.js","webpack://_N_E/./node_modules/next/dist/shared/lib/get-img-props.js","webpack://_N_E/./node_modules/next/dist/shared/lib/image-blur-svg.js","webpack://_N_E/./node_modules/next/dist/shared/lib/image-external.js","webpack://_N_E/./node_modules/next/dist/shared/lib/image-loader.js","webpack://_N_E/./node_modules/next/image.js","webpack://_N_E/<anon>"],"sourcesContent":["\"use client\";\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\nObject.defineProperty(exports, \"Image\", {\n    enumerable: true,\n    get: function() {\n        return Image;\n    }\n});\nconst _interop_require_default = require(\"@swc/helpers/_/_interop_require_default\");\nconst _interop_require_wildcard = require(\"@swc/helpers/_/_interop_require_wildcard\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(require(\"react\"));\nconst _reactdom = /*#__PURE__*/ _interop_require_default._(require(\"react-dom\"));\nconst _head = /*#__PURE__*/ _interop_require_default._(require(\"../shared/lib/head\"));\nconst _getimgprops = require(\"../shared/lib/get-img-props\");\nconst _imageconfig = require(\"../shared/lib/image-config\");\nconst _imageconfigcontextsharedruntime = require(\"../shared/lib/image-config-context.shared-runtime\");\nconst _warnonce = require(\"../shared/lib/utils/warn-once\");\nconst _routercontextsharedruntime = require(\"../shared/lib/router-context.shared-runtime\");\nconst _imageloader = /*#__PURE__*/ _interop_require_default._(require(\"next/dist/shared/lib/image-loader\"));\n// This is replaced by webpack define plugin\nconst configEnv = process.env.__NEXT_IMAGE_OPTS;\nif (typeof window === \"undefined\") {\n    globalThis.__NEXT_IMAGE_IMPORTED = true;\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(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized) {\n    const src = img == null ? void 0 : 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 == null ? void 0 : 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\", {\n                writable: false,\n                value: img\n            });\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 == null ? void 0 : onLoadingCompleteRef.current) {\n            onLoadingCompleteRef.current(img);\n        }\n        if (process.env.NODE_ENV !== \"production\") {\n            const origSrc = new URL(src, \"http://n\").searchParams.get(\"url\") || src;\n            if (img.getAttribute(\"data-nimg\") === \"fill\") {\n                if (!unoptimized && (!img.getAttribute(\"sizes\") || img.getAttribute(\"sizes\") === \"100vw\")) {\n                    let widthViewportRatio = img.getBoundingClientRect().width / window.innerWidth;\n                    if (widthViewportRatio < 0.6) {\n                        (0, _warnonce.warnOnce)('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                if (img.parentElement) {\n                    const { position } = window.getComputedStyle(img.parentElement);\n                    const valid = [\n                        \"absolute\",\n                        \"fixed\",\n                        \"relative\"\n                    ];\n                    if (!valid.includes(position)) {\n                        (0, _warnonce.warnOnce)('Image with src \"' + origSrc + '\" has \"fill\" and parent element with invalid \"position\". Provided \"' + position + '\" should be one of ' + valid.map(String).join(\",\") + \".\");\n                    }\n                }\n                if (img.height === 0) {\n                    (0, _warnonce.warnOnce)('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            const heightModified = img.height.toString() !== img.getAttribute(\"height\");\n            const widthModified = img.width.toString() !== img.getAttribute(\"width\");\n            if (heightModified && !widthModified || !heightModified && widthModified) {\n                (0, _warnonce.warnOnce)('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}\nfunction getDynamicProps(fetchPriority) {\n    const [majorStr, minorStr] = _react.version.split(\".\");\n    const major = parseInt(majorStr, 10);\n    const minor = parseInt(minorStr, 10);\n    if (major > 18 || major === 18 && minor >= 3) {\n        // In React 18.3.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 {\n            fetchPriority\n        };\n    }\n    // In React 18.2.0 or older, we must use lowercase prop\n    // to avoid \"Warning: Invalid DOM property\".\n    return {\n        fetchpriority: fetchPriority\n    };\n}\nconst ImageElement = /*#__PURE__*/ (0, _react.forwardRef)((param, forwardedRef)=>{\n    let { src, srcSet, sizes, height, width, decoding, className, style, fetchPriority, placeholder, loading, unoptimized, fill, onLoadRef, onLoadingCompleteRef, setBlurComplete, setShowAltText, onLoad, onError, ...rest } = param;\n    return /*#__PURE__*/ _react.default.createElement(\"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: (0, _react.useCallback)((img)=>{\n            if (forwardedRef) {\n                if (typeof forwardedRef === \"function\") forwardedRef(img);\n                else if (typeof forwardedRef === \"object\") {\n                    // @ts-ignore - .current is read only it's usually assigned by react internally\n                    forwardedRef.current = img;\n                }\n            }\n            if (!img) {\n                return;\n            }\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                // eslint-disable-next-line no-self-assign\n                img.src = img.src;\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('Image is missing required \"alt\" property. Please add Alternative Text to describe the image for screen readers and search engines.');\n                }\n            }\n            if (img.complete) {\n                handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized);\n            }\n        }, [\n            src,\n            placeholder,\n            onLoadRef,\n            onLoadingCompleteRef,\n            setBlurComplete,\n            onError,\n            unoptimized,\n            forwardedRef\n        ]),\n        onLoad: (event)=>{\n            const img = event.currentTarget;\n            handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized);\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});\nfunction ImagePreload(param) {\n    let { isAppRouter, imgAttributes } = param;\n    const opts = {\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    if (isAppRouter && _reactdom.default.preload) {\n        // See https://github.com/facebook/react/pull/26940\n        _reactdom.default.preload(imgAttributes.src, // @ts-expect-error TODO: upgrade to `@types/react-dom@18.3.x`\n        opts);\n        return null;\n    }\n    return /*#__PURE__*/ _react.default.createElement(_head.default, null, /*#__PURE__*/ _react.default.createElement(\"link\", {\n        key: \"__nimg-\" + imgAttributes.src + imgAttributes.srcSet + imgAttributes.sizes,\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}\nconst Image = /*#__PURE__*/ (0, _react.forwardRef)((props, forwardedRef)=>{\n    const pagesRouter = (0, _react.useContext)(_routercontextsharedruntime.RouterContext);\n    // We're in the app directory if there is no pages router.\n    const isAppRouter = !pagesRouter;\n    const configContext = (0, _react.useContext)(_imageconfigcontextsharedruntime.ImageConfigContext);\n    const config = (0, _react.useMemo)(()=>{\n        const c = configEnv || configContext || _imageconfig.imageConfigDefault;\n        const allSizes = [\n            ...c.deviceSizes,\n            ...c.imageSizes\n        ].sort((a, b)=>a - b);\n        const deviceSizes = c.deviceSizes.sort((a, b)=>a - b);\n        return {\n            ...c,\n            allSizes,\n            deviceSizes\n        };\n    }, [\n        configContext\n    ]);\n    const { onLoad, onLoadingComplete } = props;\n    const onLoadRef = (0, _react.useRef)(onLoad);\n    (0, _react.useEffect)(()=>{\n        onLoadRef.current = onLoad;\n    }, [\n        onLoad\n    ]);\n    const onLoadingCompleteRef = (0, _react.useRef)(onLoadingComplete);\n    (0, _react.useEffect)(()=>{\n        onLoadingCompleteRef.current = onLoadingComplete;\n    }, [\n        onLoadingComplete\n    ]);\n    const [blurComplete, setBlurComplete] = (0, _react.useState)(false);\n    const [showAltText, setShowAltText] = (0, _react.useState)(false);\n    const { props: imgAttributes, meta: imgMeta } = (0, _getimgprops.getImgProps)(props, {\n        defaultLoader: _imageloader.default,\n        imgConf: config,\n        blurComplete,\n        showAltText\n    });\n    return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement(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        ref: forwardedRef\n    }), imgMeta.priority ? /*#__PURE__*/ _react.default.createElement(ImagePreload, {\n        isAppRouter: isAppRouter,\n        imgAttributes: imgAttributes\n    }) : null);\n});\n\nif ((typeof exports.default === 'function' || (typeof exports.default === 'object' && exports.default !== null)) && typeof exports.default.__esModule === 'undefined') {\n  Object.defineProperty(exports.default, '__esModule', { value: true });\n  Object.assign(exports.default, exports);\n  module.exports = exports.default;\n}\n\n//# sourceMappingURL=image-component.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\nObject.defineProperty(exports, \"getImgProps\", {\n    enumerable: true,\n    get: function() {\n        return getImgProps;\n    }\n});\nconst _warnonce = require(\"./utils/warn-once\");\nconst _imageblursvg = require(\"./image-blur-svg\");\nconst _imageconfig = require(\"./image-config\");\nconst VALID_LOADING_VALUES = [\n    \"lazy\",\n    \"eager\",\n    undefined\n];\nfunction isStaticRequire(src) {\n    return src.default !== undefined;\n}\nfunction isStaticImageData(src) {\n    return src.src !== undefined;\n}\nfunction isStaticImport(src) {\n    return typeof src === \"object\" && (isStaticRequire(src) || isStaticImageData(src));\n}\nconst allImgs = new Map();\nlet perfObserver;\nfunction getInt(x) {\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}\nfunction getWidths(param, width, sizes) {\n    let { deviceSizes, allSizes } = param;\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 {\n            widths: allSizes,\n            kind: \"w\"\n        };\n    }\n    if (typeof width !== \"number\") {\n        return {\n            widths: deviceSizes,\n            kind: \"w\"\n        };\n    }\n    const widths = [\n        ...new Set(// > 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        [\n            width,\n            width * 2 /*, width * 3*/ \n        ].map((w)=>allSizes.find((p)=>p >= w) || allSizes[allSizes.length - 1]))\n    ];\n    return {\n        widths,\n        kind: \"x\"\n    };\n}\nfunction generateImgAttrs(param) {\n    let { config, src, unoptimized, width, quality, sizes, loader } = param;\n    if (unoptimized) {\n        return {\n            src,\n            srcSet: undefined,\n            sizes: undefined\n        };\n    }\n    const { widths, kind } = getWidths(config, width, sizes);\n    const last = widths.length - 1;\n    return {\n        sizes: !sizes && kind === \"w\" ? \"100vw\" : sizes,\n        srcSet: widths.map((w, i)=>loader({\n                config,\n                src,\n                quality,\n                width: w\n            }) + \" \" + (kind === \"w\" ? w : i + 1) + kind).join(\", \"),\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({\n            config,\n            src,\n            quality,\n            width: widths[last]\n        })\n    };\n}\nfunction getImgProps(param, _state) {\n    let { src, sizes, unoptimized = false, priority = false, loading, className, quality, width, height, fill = false, style, onLoad, onLoadingComplete, placeholder = \"empty\", blurDataURL, fetchPriority, layout, objectFit, objectPosition, lazyBoundary, lazyRoot, ...rest } = param;\n    const { imgConf, showAltText, blurComplete, defaultLoader } = _state;\n    let config;\n    let c = imgConf || _imageconfig.imageConfigDefault;\n    if (\"allSizes\" in c) {\n        config = c;\n    } else {\n        const allSizes = [\n            ...c.deviceSizes,\n            ...c.imageSizes\n        ].sort((a, b)=>a - b);\n        const deviceSizes = c.deviceSizes.sort((a, b)=>a - b);\n        config = {\n            ...c,\n            allSizes,\n            deviceSizes\n        };\n    }\n    let loader = rest.loader || defaultLoader;\n    // Remove property so it's not spread on <img> element\n    delete rest.loader;\n    delete rest.srcSet;\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    if (isDefaultLoader) {\n        if (config.loader === \"custom\") {\n            throw new Error('Image with src \"' + src + '\" is missing \"loader\" prop.' + \"\\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader\");\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;\n        loader = (obj)=>{\n            const { config: _, ...opts } = obj;\n            return customImageLoader(opts);\n        };\n    }\n    if (layout) {\n        if (layout === \"fill\") {\n            fill = true;\n        }\n        const layoutToStyle = {\n            intrinsic: {\n                maxWidth: \"100%\",\n                height: \"auto\"\n            },\n            responsive: {\n                width: \"100%\",\n                height: \"auto\"\n            }\n        };\n        const layoutToSizes = {\n            responsive: \"100vw\",\n            fill: \"100vw\"\n        };\n        const layoutStyle = layoutToStyle[layout];\n        if (layoutStyle) {\n            style = {\n                ...style,\n                ...layoutStyle\n            };\n        }\n        const layoutSizes = layoutToSizes[layout];\n        if (layoutSizes && !sizes) {\n            sizes = layoutSizes;\n        }\n    }\n    let staticSrc = \"\";\n    let widthInt = getInt(width);\n    let heightInt = getInt(height);\n    let blurWidth;\n    let blurHeight;\n    if (isStaticImport(src)) {\n        const staticImageData = isStaticRequire(src) ? src.default : src;\n        if (!staticImageData.src) {\n            throw new 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(staticImageData));\n        }\n        if (!staticImageData.height || !staticImageData.width) {\n            throw new 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(staticImageData));\n        }\n        blurWidth = staticImageData.blurWidth;\n        blurHeight = staticImageData.blurHeight;\n        blurDataURL = blurDataURL || staticImageData.blurDataURL;\n        staticSrc = staticImageData.src;\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    let isLazy = !priority && (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 (isDefaultLoader && src.endsWith(\".svg\") && !config.dangerouslyAllowSVG) {\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    if (priority) {\n        fetchPriority = \"high\";\n    }\n    const qualityInt = getInt(quality);\n    if (process.env.NODE_ENV !== \"production\") {\n        if (config.output === \"export\" && isDefaultLoader && !unoptimized) {\n            throw new Error(\"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        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('Image with src \"' + src + '\" has both \"width\" and \"fill\" properties. Only one should be used.');\n                }\n                if (height) {\n                    throw new Error('Image with src \"' + src + '\" has both \"height\" and \"fill\" properties. Only one should be used.');\n                }\n                if ((style == null ? void 0 : style.position) && style.position !== \"absolute\") {\n                    throw new Error('Image with src \"' + src + '\" has both \"fill\" and \"style.position\" properties. Images with \"fill\" always use position absolute - it cannot be modified.');\n                }\n                if ((style == null ? void 0 : style.width) && style.width !== \"100%\") {\n                    throw new Error('Image with src \"' + src + '\" has both \"fill\" and \"style.width\" properties. Images with \"fill\" always use width 100% - it cannot be modified.');\n                }\n                if ((style == null ? void 0 : style.height) && style.height !== \"100%\") {\n                    throw new Error('Image with src \"' + src + '\" has both \"fill\" and \"style.height\" properties. Images with \"fill\" always use height 100% - it cannot be modified.');\n                }\n            } else {\n                if (typeof widthInt === \"undefined\") {\n                    throw new Error('Image with src \"' + src + '\" is missing required \"width\" property.');\n                } else if (isNaN(widthInt)) {\n                    throw new Error('Image with src \"' + src + '\" has invalid \"width\" property. Expected a numeric value in pixels but received \"' + width + '\".');\n                }\n                if (typeof heightInt === \"undefined\") {\n                    throw new Error('Image with src \"' + src + '\" is missing required \"height\" property.');\n                } else if (isNaN(heightInt)) {\n                    throw new Error('Image with src \"' + src + '\" has invalid \"height\" property. Expected a numeric value in pixels but received \"' + height + '\".');\n                }\n            }\n        }\n        if (!VALID_LOADING_VALUES.includes(loading)) {\n            throw new Error('Image with src \"' + src + '\" has invalid \"loading\" property. Provided \"' + loading + '\" should be one of ' + VALID_LOADING_VALUES.map(String).join(\",\") + \".\");\n        }\n        if (priority && loading === \"lazy\") {\n            throw new Error('Image with src \"' + src + '\" has both \"priority\" and \"loading=\\'lazy\\'\" properties. Only one should be used.');\n        }\n        if (placeholder !== \"empty\" && placeholder !== \"blur\" && !placeholder.startsWith(\"data:image/\")) {\n            throw new Error('Image with src \"' + src + '\" has invalid \"placeholder\" property \"' + placeholder + '\".');\n        }\n        if (placeholder !== \"empty\") {\n            if (widthInt && heightInt && widthInt * heightInt < 1600) {\n                (0, _warnonce.warnOnce)('Image with src \"' + src + '\" is smaller than 40x40. Consider removing the \"placeholder\" property to improve performance.');\n            }\n        }\n        if (placeholder === \"blur\" && !blurDataURL) {\n            const VALID_BLUR_EXT = [\n                \"jpeg\",\n                \"png\",\n                \"webp\",\n                \"avif\"\n            ] // should match next-image-loader\n            ;\n            throw new Error('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(\",\") + ' (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        if (\"ref\" in rest) {\n            (0, _warnonce.warnOnce)('Image with src \"' + src + '\" is using unsupported \"ref\" property. Consider using the \"onLoadingComplete\" property instead.');\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;\n            try {\n                url = new URL(urlStr);\n            } catch (err) {}\n            if (urlStr === src || url && url.pathname === src && !url.search) {\n                (0, _warnonce.warnOnce)('Image with src \"' + src + '\" has a \"loader\" property that does not implement width. Please implement it or use the \"unoptimized\" property instead.' + \"\\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader-width\");\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                (0, _warnonce.warnOnce)('Image with src \"' + src + '\" has legacy prop \"' + legacyKey + '\". Did you forget to run the codemod?' + \"\\nRead more: https://nextjs.org/docs/messages/next-image-upgrade-to-13\");\n            }\n        }\n        if (typeof window !== \"undefined\" && !perfObserver && window.PerformanceObserver) {\n            perfObserver = new PerformanceObserver((entryList)=>{\n                for (const entry of entryList.getEntries()){\n                    var _entry_element;\n                    // @ts-ignore - missing \"LargestContentfulPaint\" class with \"element\" prop\n                    const imgSrc = (entry == null ? void 0 : (_entry_element = entry.element) == null ? void 0 : _entry_element.src) || \"\";\n                    const lcpImage = allImgs.get(imgSrc);\n                    if (lcpImage && !lcpImage.priority && lcpImage.placeholder === \"empty\" && !lcpImage.src.startsWith(\"data:\") && !lcpImage.src.startsWith(\"blob:\")) {\n                        // https://web.dev/lcp/#measure-lcp-in-javascript\n                        (0, _warnonce.warnOnce)('Image with src \"' + lcpImage.src + '\" was detected as the Largest Contentful Paint (LCP). Please add the \"priority\" property if this image is above the fold.' + \"\\nRead more: https://nextjs.org/docs/api-reference/next/image#priority\");\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(fill ? {\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    } : {}, showAltText ? {} : {\n        color: \"transparent\"\n    }, style);\n    const backgroundImage = !blurComplete && placeholder !== \"empty\" ? placeholder === \"blur\" ? 'url(\"data:image/svg+xml;charset=utf-8,' + (0, _imageblursvg.getImageBlurSvg)({\n        widthInt,\n        heightInt,\n        blurWidth,\n        blurHeight,\n        blurDataURL: blurDataURL || \"\",\n        objectFit: imgStyle.objectFit\n    }) + '\")' : 'url(\"' + placeholder + '\")' // assume `data:image/`\n     : null;\n    let placeholderStyle = backgroundImage ? {\n        backgroundSize: imgStyle.objectFit || \"cover\",\n        backgroundPosition: imgStyle.objectPosition || \"50% 50%\",\n        backgroundRepeat: \"no-repeat\",\n        backgroundImage\n    } : {};\n    if (process.env.NODE_ENV === \"development\") {\n        if (placeholderStyle.backgroundImage && placeholder === \"blur\" && (blurDataURL == null ? void 0 : blurDataURL.startsWith(\"/\"))) {\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    const imgAttributes = generateImgAttrs({\n        config,\n        src,\n        unoptimized,\n        width: widthInt,\n        quality: qualityInt,\n        sizes,\n        loader\n    });\n    if (process.env.NODE_ENV !== \"production\") {\n        if (typeof window !== \"undefined\") {\n            let fullUrl;\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, {\n                src,\n                priority,\n                placeholder\n            });\n        }\n    }\n    const props = {\n        ...rest,\n        loading: isLazy ? \"lazy\" : loading,\n        fetchPriority,\n        width: widthInt,\n        height: heightInt,\n        decoding: \"async\",\n        className,\n        style: {\n            ...imgStyle,\n            ...placeholderStyle\n        },\n        sizes: imgAttributes.sizes,\n        srcSet: imgAttributes.srcSet,\n        src: imgAttributes.src\n    };\n    const meta = {\n        unoptimized,\n        priority,\n        placeholder,\n        fill\n    };\n    return {\n        props,\n        meta\n    };\n}\n\n//# sourceMappingURL=get-img-props.js.map","/**\n * A shared function, used on both client and server, to generate a SVG blur placeholder.\n */ \"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\nObject.defineProperty(exports, \"getImageBlurSvg\", {\n    enumerable: true,\n    get: function() {\n        return getImageBlurSvg;\n    }\n});\nfunction getImageBlurSvg(param) {\n    let { widthInt, heightInt, blurWidth, blurHeight, blurDataURL, objectFit } = param;\n    const std = 20;\n    const svgWidth = blurWidth ? blurWidth * 40 : widthInt;\n    const svgHeight = blurHeight ? blurHeight * 40 : heightInt;\n    const viewBox = svgWidth && svgHeight ? \"viewBox='0 0 \" + svgWidth + \" \" + svgHeight + \"'\" : \"\";\n    const preserveAspectRatio = viewBox ? \"none\" : objectFit === \"contain\" ? \"xMidYMid\" : objectFit === \"cover\" ? \"xMidYMid slice\" : \"none\";\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\n//# sourceMappingURL=image-blur-svg.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\n0 && (module.exports = {\n    unstable_getImgProps: null,\n    default: null\n});\nfunction _export(target, all) {\n    for(var name in all)Object.defineProperty(target, name, {\n        enumerable: true,\n        get: all[name]\n    });\n}\n_export(exports, {\n    unstable_getImgProps: function() {\n        return unstable_getImgProps;\n    },\n    default: function() {\n        return _default;\n    }\n});\nconst _interop_require_default = require(\"@swc/helpers/_/_interop_require_default\");\nconst _getimgprops = require(\"./get-img-props\");\nconst _warnonce = require(\"./utils/warn-once\");\nconst _imagecomponent = require(\"../../client/image-component\");\nconst _imageloader = /*#__PURE__*/ _interop_require_default._(require(\"next/dist/shared/lib/image-loader\"));\nconst unstable_getImgProps = (imgProps)=>{\n    (0, _warnonce.warnOnce)(\"Warning: unstable_getImgProps() is experimental and may change or be removed at any time. Use at your own risk.\");\n    const { props } = (0, _getimgprops.getImgProps)(imgProps, {\n        defaultLoader: _imageloader.default,\n        // This is replaced by webpack define plugin\n        imgConf: process.env.__NEXT_IMAGE_OPTS\n    });\n    for (const [key, value] of Object.entries(props)){\n        if (value === undefined) {\n            delete props[key];\n        }\n    }\n    return {\n        props\n    };\n};\nconst _default = _imagecomponent.Image;\n\n//# sourceMappingURL=image-external.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n    value: true\n});\nObject.defineProperty(exports, \"default\", {\n    enumerable: true,\n    get: function() {\n        return _default;\n    }\n});\nfunction defaultLoader(param) {\n    let { config, src, width, quality } = param;\n    if (process.env.NODE_ENV !== \"production\") {\n        const missingValues = [];\n        // these should always be provided but make sure they are\n        if (!src) missingValues.push(\"src\");\n        if (!width) missingValues.push(\"width\");\n        if (missingValues.length > 0) {\n            throw new Error(\"Next Image Optimization requires \" + missingValues.join(\", \") + \" to be provided. Make sure you pass them as props to the `next/image` component. Received: \" + JSON.stringify({\n                src,\n                width,\n                quality\n            }));\n        }\n        if (src.startsWith(\"//\")) {\n            throw new Error('Failed to parse src \"' + src + '\" on `next/image`, protocol-relative URL (//) must be changed to an absolute URL (http:// or https://)');\n        }\n        if (!src.startsWith(\"/\") && (config.domains || config.remotePatterns)) {\n            let parsedSrc;\n            try {\n                parsedSrc = new URL(src);\n            } catch (err) {\n                console.error(err);\n                throw new Error('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            if (process.env.NODE_ENV !== \"test\" && // micromatch isn't compatible with edge runtime\n            process.env.NEXT_RUNTIME !== \"edge\") {\n                // We use dynamic require because this should only error in development\n                const { hasMatch } = require(\"./match-remote-pattern\");\n                if (!hasMatch(config.domains, config.remotePatterns, parsedSrc)) {\n                    throw new Error(\"Invalid src prop (\" + src + ') on `next/image`, hostname \"' + parsedSrc.hostname + '\" is not configured under images in your `next.config.js`\\n' + \"See more info: https://nextjs.org/docs/messages/next-image-unconfigured-host\");\n                }\n            }\n        }\n    }\n    return config.path + \"?url=\" + encodeURIComponent(src) + \"&w=\" + width + \"&q=\" + (quality || 75) + (process.env.NEXT_DEPLOYMENT_ID ? \"&dpl=\" + process.env.NEXT_DEPLOYMENT_ID : \"\");\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;\nconst _default = defaultLoader;\n\n//# sourceMappingURL=image-loader.js.map","module.exports = require('./dist/shared/lib/image-external')\n"],"names":["Object","value","enumerable","get","Image","_interop_require_default","require","_interop_require_wildcard","_react","_","_reactdom","_head","_getimgprops","_imageconfig","_imageconfigcontextsharedruntime","_routercontextsharedruntime","_imageloader","configEnv","process","handleLoading","img","placeholder","onLoadRef","onLoadingCompleteRef","setBlurComplete","unoptimized","src","p","decode","Promise","resolve","catch","then","parentElement","isConnected","current","event","Event","defineProperty","writable","prevented","stopped","nativeEvent","currentTarget","target","isDefaultPrevented","isPropagationStopped","persist","preventDefault","stopPropagation","getDynamicProps","fetchPriority","majorStr","minorStr","version","split","major","parseInt","minor","fetchpriority","ImageElement","forwardRef","param","forwardedRef","srcSet","sizes","height","width","decoding","className","style","loading","fill","setShowAltText","onLoad","onError","rest","default","createElement","ref","useCallback","complete","ImagePreload","isAppRouter","imgAttributes","opts","as","imageSrcSet","imageSizes","crossOrigin","referrerPolicy","preload","key","rel","href","undefined","props","pagesRouter","useContext","RouterContext","configContext","ImageConfigContext","config","useMemo","c","imageConfigDefault","allSizes","deviceSizes","sort","a","b","onLoadingComplete","useRef","useEffect","blurComplete","useState","showAltText","meta","imgMeta","getImgProps","defaultLoader","imgConf","Fragment","priority","exports","__esModule","assign","module","_imageblursvg","isStaticRequire","getInt","x","Number","isFinite","NaN","test","_state","blurWidth","blurHeight","quality","blurDataURL","layout","objectFit","objectPosition","lazyBoundary","lazyRoot","loader","isDefaultLoader","customImageLoader","obj","layoutStyle","layoutToStyle","intrinsic","maxWidth","responsive","layoutSizes","layoutToSizes","staticSrc","widthInt","heightInt","staticImageData","JSON","stringify","ratio","Math","round","isLazy","startsWith","endsWith","dangerouslyAllowSVG","qualityInt","imgStyle","position","left","top","right","bottom","color","backgroundImage","getImageBlurSvg","placeholderStyle","backgroundSize","backgroundPosition","backgroundRepeat","generateImgAttrs","widths","kind","getWidths","viewportWidthRe","percentSizes","match","exec","push","length","smallestRatio","min","filter","s","Set","map","find","w","last","i","join","svgWidth","svgHeight","viewBox","_export","all","name","unstable_getImgProps","_default","_warnonce","_imagecomponent","warnOnce","imgProps","entries","path","encodeURIComponent","__next_img_default","__webpack_require__"],"sourceRoot":""}