{"version":3,"file":"static/chunks/3738-e81755895704f75c.js","mappings":"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","sources":["webpack://_N_E/./node_modules/imgix-url-builder/dist/index.mjs","webpack://_N_E/./node_modules/@prismicio/next/dist/imgixLoader.js","webpack://_N_E/./node_modules/@prismicio/next/dist/PrismicNextImage.js","webpack://_N_E/./node_modules/@prismicio/next/dist/_node_modules/@prismicio/client/dist/helpers/isFilled.js","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"],"sourcesContent":["const camelCaseToParamCase = (input) => {\n return input.replace(/[A-Z]/g, (match) => {\n return `-${match.toLowerCase()}`;\n });\n};\nconst buildURL = (url, params) => {\n const instance = new URL(url);\n for (const camelCasedParamKey in params) {\n const paramKey = camelCaseToParamCase(camelCasedParamKey);\n const paramValue = params[camelCasedParamKey];\n if (paramValue === void 0) {\n instance.searchParams.delete(paramKey);\n } else if (Array.isArray(paramValue)) {\n instance.searchParams.set(paramKey, paramValue.join(\",\"));\n } else {\n instance.searchParams.set(paramKey, `${paramValue}`);\n }\n }\n const s = instance.searchParams.get(\"s\");\n if (s) {\n instance.searchParams.delete(\"s\");\n instance.searchParams.append(\"s\", s);\n }\n return instance.toString();\n};\n\nconst buildPixelDensitySrcSet = (url, { pixelDensities, ...params }) => {\n return pixelDensities.map((dpr) => {\n return `${buildURL(url, { ...params, dpr })} ${dpr}x`;\n }).join(\", \");\n};\n\nconst buildWidthSrcSet = (url, { widths, ...params }) => {\n return widths.map((width) => {\n return `${buildURL(url, { ...params, w: void 0, width })} ${width}w`;\n }).join(\", \");\n};\n\nclass Client {\n /**\n * Creates a new `Client` instance for an Imgix domain.\n *\n * @param options - Options to instantiate a new client.\n *\n * @returns A `Client` instance for the given Imgix domain.\n */\n constructor(options) {\n this.baseURL = options.baseURL;\n }\n /**\n * Builds a URL to an Imgix image with Imgix URL API parameters for the\n * client's base URL.\n *\n * @example\n *\n * ```ts\n * const client = new Client({ baseURL: \"https://example.imgix.net\" });\n * const url = client.buildURLForPath(\"/image.png\", { width: 400 });\n * // => https://example.imgix.net/image.png?width=400\n * ```\n *\n * @example\n *\n * ```ts\n * const client = new Client({\n * \tbaseURL: \"https://example.imgix.net/folder\",\n * });\n * const url = client.buildURLForPath(\"./image.png\", { width: 400 });\n * // => https://example.imgix.net/folder/image.png?width=400\n * ```\n *\n * @param path - Path to the image relative to the client's base URL.\n * @param params - An object of Imgix URL API parameters.\n *\n * @returns The full absolute URL to the image with the given Imgix URL API\n * parameters applied.\n */\n buildURLForPath(path, params = {}) {\n return buildURL(`${new URL(path, this.baseURL)}`, params);\n }\n /**\n * Builds an `` `srcset` attribute value for a given set of widths for\n * the client's base URL. It can also optinally apply Imgix URL API parameters\n * to the URLs.\n *\n * The `width` URL parameter will be applied for each `srcset` entry. If a\n * `width` or `w` parameter is provided to the `params` parameter, it will be\n * ignored.\n *\n * @example\n *\n * ```ts\n * const client = new Client({ baseURL: \"https://example.imgix.net\" });\n * const srcset = client.buildWidthSrcSetForPath(\"/image.png\", {\n * \twidths: [400, 800, 1600],\n * });\n * // => https://example.imgix.net/image.png?width=400 400w,\n * // https://example.imgix.net/image.png?width=800 800w,\n * // https://example.imgix.net/image.png?width=1600 1600w\n * ```\n *\n * @example\n *\n * ```ts\n * const client = new Client({\n * \tbaseURL: \"https://example.imgix.net\",\n * });\n * const srcset = client.buildWidthSrcSetForPath(\"/image.png\", {\n * \twidths: [400, 800, 1600],\n * \tsat: -100,\n * });\n * // => https://example.imgix.net/image.png?width=400&sat=-100 400w,\n * // https://example.imgix.net/image.png?width=800&sat=-100 800w,\n * // https://example.imgix.net/image.png?width=1600&sat=-100 1600w\n * ```\n *\n * @param path - Path to the image relative to the client's base URL.\n * @param params - An object of Imgix URL API parameters. The `widths`\n * parameter defines the resulting `srcset` widths.\n *\n * @returns A `srcset` attribute value for `url` with the given Imgix URL API\n * parameters applied.\n */\n buildWidthSrcSetForPath(path, params) {\n return buildWidthSrcSet(`${new URL(path, this.baseURL)}`, params);\n }\n /**\n * Builds an `` `srcset` attribute value for a given set of pixel\n * densities for the client's base URL. It can also optinally apply Imgix URL\n * API parameters to the URLs.\n *\n * The `dpr` URL parameter will be applied for each `srcset` entry. If a `dpr`\n * parameter is provided to the `params` parameter, it will be ignored.\n *\n * @example\n *\n * ```ts\n * const client = new Client({ baseURL: \"https://example.imgix.net\" });\n * const srcset = client.buildPixelDensitySrcSetForPath(\"/image.png\", {\n * \tpixelDensities: [1, 2, 3],\n * });\n * // => https://example.imgix.net/image.png?dpr=1 1x,\n * // https://example.imgix.net/image.png?dpr=2 2x,\n * // https://example.imgix.net/image.png?dpr=3 3x\n * ```\n *\n * @example\n *\n * ```ts\n * const client = new Client({ baseURL: \"https://example.imgix.net\" });\n * const srcset = client.buildPixelDensitySrcSetForPath(\"/image.png\", {\n * \tpixelDensities: [1, 2, 3],\n * \tsat: -100,\n * });\n * // => https://example.imgix.net/image.png?dpr=1&sat=-100 1x,\n * // https://example.imgix.net/image.png?dpr=2&sat=-100 2x,\n * // https://example.imgix.net/image.png?dpr=3&sat=-100 3x\n * ```\n *\n * @param path - Path to the image relative to the client's base URL.\n * @param params - An object of Imgix URL API parameters. The `pixelDensities`\n * parameter defines the resulting `srcset` widths.\n *\n * @returns A `srcset` attribute value for `url` with the given Imgix URL API\n * parameters applied.\n */\n buildPixelDensitySrcSetForPath(path, params) {\n return buildPixelDensitySrcSet(`${new URL(path, this.baseURL)}`, params);\n }\n}\n\nexport { Client, buildPixelDensitySrcSet, buildURL, buildWidthSrcSet };\n//# sourceMappingURL=index.mjs.map\n","import { buildURL } from \"imgix-url-builder\";\nconst imgixLoader = (args) => {\n const url = new URL(args.src);\n const params = {\n fit: url.searchParams.get(\"fit\") || \"max\",\n w: args.width,\n h: void 0\n };\n if (args.quality) {\n params.q = args.quality;\n }\n return buildURL(args.src, params);\n};\nexport {\n imgixLoader\n};\n//# sourceMappingURL=imgixLoader.js.map\n","'use client';\n'use client';\nimport { jsx, Fragment } from \"react/jsx-runtime\";\nimport Image from \"next/image\";\nimport { buildURL } from \"imgix-url-builder\";\nimport { devMsg } from \"./lib/devMsg.js\";\nimport { imgixLoader } from \"./imgixLoader.js\";\nimport { imageThumbnail } from './_node_modules/@prismicio/client/dist/helpers/isFilled.js';\nconst castInt = (input) => {\n if (typeof input === \"number\" || typeof input === \"undefined\") {\n return input;\n } else {\n const parsed = Number.parseInt(input);\n if (Number.isNaN(parsed)) {\n return void 0;\n } else {\n return parsed;\n }\n }\n};\nconst PrismicNextImage = ({ field, imgixParams = {}, alt, fallbackAlt, fill, width, height, fallback = null, ...restProps }) => {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof alt === \"string\" && alt !== \"\") {\n console.warn(`[PrismicNextImage] The \"alt\" prop can only be used to declare an image as decorative by passing an empty string (alt=\"\") but was provided a non-empty string. You can resolve this warning by removing the \"alt\" prop or changing it to alt=\"\". For more details, see ${devMsg(\"alt-must-be-an-empty-string\")}`);\n }\n if (typeof fallbackAlt === \"string\" && fallbackAlt !== \"\") {\n console.warn(`[PrismicNextImage] The \"fallbackAlt\" prop can only be used to declare an image as decorative by passing an empty string (fallbackAlt=\"\") but was provided a non-empty string. You can resolve this warning by removing the \"fallbackAlt\" prop or changing it to fallbackAlt=\"\". For more details, see ${devMsg(\"alt-must-be-an-empty-string\")}`);\n }\n }\n if (imageThumbnail(field)) {\n const resolvedImgixParams = imgixParams;\n for (const x in imgixParams) {\n if (resolvedImgixParams[x] === null) {\n resolvedImgixParams[x] = void 0;\n }\n }\n const src = buildURL(field.url, imgixParams);\n const ar = field.dimensions.width / field.dimensions.height;\n const castedWidth = castInt(width);\n const castedHeight = castInt(height);\n let resolvedWidth = castedWidth ?? field.dimensions.width;\n let resolvedHeight = castedHeight ?? field.dimensions.height;\n if (castedWidth != null && castedHeight == null) {\n resolvedHeight = castedWidth / ar;\n } else if (castedWidth == null && castedHeight != null) {\n resolvedWidth = castedHeight * ar;\n }\n const resolvedAlt = alt ?? (field.alt || fallbackAlt);\n if (process.env.NODE_ENV !== \"production\" && typeof resolvedAlt !== \"string\") {\n console.error(`[PrismicNextImage] The following image is missing an \"alt\" property. Please add Alternative Text to the image in Prismic. To mark the image as decorative instead, add one of \\`alt=\"\"\\` or \\`fallbackAlt=\"\"\\`.`, src);\n }\n let ResolvedImage = Image;\n if (\"default\" in ResolvedImage) {\n ResolvedImage = ResolvedImage.default;\n }\n return jsx(ResolvedImage, { src, width: fill ? void 0 : resolvedWidth, height: fill ? void 0 : resolvedHeight, alt: resolvedAlt, fill, loader: imgixLoader, ...restProps });\n } else {\n return jsx(Fragment, { children: fallback });\n }\n};\nexport {\n PrismicNextImage\n};\n//# sourceMappingURL=PrismicNextImage.js.map\n","const isNonNullish = (input) => {\n return input != null;\n};\nconst imageThumbnail = (thumbnail) => {\n return isNonNullish(thumbnail) && !!thumbnail.url;\n};\nconst link = (field) => {\n return isNonNullish(field) && (\"id\" in field || \"url\" in field);\n};\nexport {\n imageThumbnail,\n link\n};\n//# sourceMappingURL=isFilled.js.map\n","\"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 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":["buildURL","url","params","instance","URL","camelCasedParamKey","paramKey","replace","match","toLowerCase","paramValue","searchParams","delete","Array","isArray","set","join","s","get","append","toString","imgixLoader","args","fit","src","w","width","h","quality","q","castInt","input","parsed","Number","parseInt","isNaN","PrismicNextImage","field","imgixParams","alt","fallbackAlt","fill","height","fallback","restProps","resolvedImgixParams","x","ar","dimensions","castedWidth","castedHeight","resolvedWidth","resolvedHeight","resolvedAlt","ResolvedImage","default","jsx","loader","Fragment","children","isNonNullish","imageThumbnail","thumbnail","link","Object","defineProperty","exports","value","enumerable","Image","_interop_require_default","require","_react","_","_reactdom","_head","_getimgprops","_imageconfig","_imageconfigcontextsharedruntime","_routercontextsharedruntime","_imageloader","configEnv","process","handleLoading","img","placeholder","onLoadRef","onLoadingCompleteRef","setBlurComplete","unoptimized","decode","Promise","resolve","catch","then","parentElement","isConnected","current","event","Event","writable","prevented","stopped","nativeEvent","currentTarget","target","isDefaultPrevented","isPropagationStopped","persist","preventDefault","stopPropagation","getDynamicProps","fetchPriority","majorStr","minorStr","version","split","major","minor","fetchpriority","ImageElement","forwardRef","param","forwardedRef","srcSet","sizes","decoding","className","style","loading","setShowAltText","onLoad","onError","rest","createElement","ref","useCallback","complete","ImagePreload","isAppRouter","imgAttributes","opts","as","imageSrcSet","imageSizes","crossOrigin","referrerPolicy","preload","key","rel","href","undefined","props","useContext","RouterContext","configContext","ImageConfigContext","config","useMemo","c","imageConfigDefault","allSizes","deviceSizes","sort","a","b","onLoadingComplete","useRef","useEffect","blurComplete","useState","showAltText","meta","imgMeta","getImgProps","defaultLoader","imgConf","priority","__esModule","assign","module","_imageblursvg","isStaticRequire","Map","getInt","isFinite","NaN","test","generateImgAttrs","widths","kind","viewportWidthRe","percentSizes","exec","push","length","smallestRatio","Math","min","filter","Set","map","find","p","getWidths","last","i","_state","blurDataURL","layout","objectFit","objectPosition","lazyBoundary","lazyRoot","isDefaultLoader","Error","customImageLoader","obj","layoutToSizes","responsive","layoutStyle","intrinsic","maxWidth","layoutSizes","blurWidth","blurHeight","staticSrc","widthInt","heightInt","isStaticImageData","isStaticImport","staticImageData","JSON","stringify","ratio","round","isLazy","startsWith","endsWith","dangerouslyAllowSVG","qualityInt","imgStyle","position","left","top","right","bottom","color","backgroundImage","getImageBlurSvg","placeholderStyle","backgroundSize","backgroundPosition","backgroundRepeat","svgWidth","svgHeight","viewBox","all","name","_export","unstable_getImgProps","_default","_warnonce","_imagecomponent","imgProps","warnOnce","entries","path","encodeURIComponent","__next_img_default"],"sourceRoot":""}