{"version":3,"file":"static/chunks/8421-3a5c8e312133bf3a.js","mappings":"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","sources":["webpack://_N_E/../../node_modules/next/dist/client/legacy/image.js","webpack://_N_E/../../node_modules/next/legacy/image.js","webpack://_N_E/"],"sourcesContent":["\"use client\";\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = Image;\nvar _extends = require(\"@swc/helpers/lib/_extends.js\").default;\nvar _interop_require_default = require(\"@swc/helpers/lib/_interop_require_default.js\").default;\nvar _interop_require_wildcard = require(\"@swc/helpers/lib/_interop_require_wildcard.js\").default;\nvar _object_without_properties_loose = require(\"@swc/helpers/lib/_object_without_properties_loose.js\").default;\nvar _react = _interop_require_wildcard(require(\"react\"));\nvar _head = _interop_require_default(require(\"../../shared/lib/head\"));\nvar _imageConfig = require(\"../../shared/lib/image-config\");\nvar _useIntersection = require(\"../use-intersection\");\nvar _imageConfigContext = require(\"../../shared/lib/image-config-context\");\nvar _warnOnce = require(\"../../shared/lib/utils/warn-once\");\nvar _normalizeTrailingSlash = require(\"../normalize-trailing-slash\");\nfunction Image(_param) {\n var { src , sizes , unoptimized =false , priority =false , loading , lazyRoot =null , lazyBoundary , className , quality , width , height , style , objectFit , objectPosition , onLoadingComplete , placeholder ='empty' , blurDataURL } = _param, all = _object_without_properties_loose(_param, [\n \"src\",\n \"sizes\",\n \"unoptimized\",\n \"priority\",\n \"loading\",\n \"lazyRoot\",\n \"lazyBoundary\",\n \"className\",\n \"quality\",\n \"width\",\n \"height\",\n \"style\",\n \"objectFit\",\n \"objectPosition\",\n \"onLoadingComplete\",\n \"placeholder\",\n \"blurDataURL\"\n ]);\n const configContext = (0, _react).useContext(_imageConfigContext.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 _extends({}, c, {\n allSizes,\n deviceSizes\n });\n }, [\n configContext\n ]);\n let rest = all;\n let layout = sizes ? 'responsive' : 'intrinsic';\n if ('layout' in rest) {\n // Override default layout if the user specified one:\n if (rest.layout) layout = rest.layout;\n // Remove property so it's not spread on :\n delete rest.layout;\n }\n let loader = defaultImageLoader;\n if ('loader' in rest) {\n if (rest.loader) {\n const customImageLoader = rest.loader;\n var _tmp;\n _tmp = (obj)=>{\n const { config: _ } = obj, opts = _object_without_properties_loose(obj, [\n \"config\"\n ]);\n // The config object is internal only so we must\n // not pass it to the user-defined loader()\n return customImageLoader(opts);\n }, loader = _tmp, _tmp;\n }\n // Remove property so it's not spread on \n delete rest.loader;\n }\n let staticSrc = '';\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 blurDataURL = blurDataURL || staticImageData.blurDataURL;\n staticSrc = staticImageData.src;\n if (!layout || layout !== 'fill') {\n height = height || staticImageData.height;\n width = width || staticImageData.width;\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 }\n }\n src = typeof src === 'string' ? src : staticSrc;\n let isLazy = !priority && (loading === 'lazy' || typeof loading === 'undefined');\n if (src.startsWith('data:') || src.startsWith('blob:')) {\n // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs\n unoptimized = true;\n isLazy = false;\n }\n if (typeof window !== 'undefined' && loadedImageURLs.has(src)) {\n isLazy = false;\n }\n if (config.unoptimized) {\n unoptimized = true;\n }\n const [blurComplete, setBlurComplete] = (0, _react).useState(false);\n const [setIntersection, isIntersected, resetIntersected] = (0, _useIntersection).useIntersection({\n rootRef: lazyRoot,\n rootMargin: lazyBoundary || '200px',\n disabled: !isLazy\n });\n const isVisible = !isLazy || isIntersected;\n const wrapperStyle = {\n boxSizing: 'border-box',\n display: 'block',\n overflow: 'hidden',\n width: 'initial',\n height: 'initial',\n background: 'none',\n opacity: 1,\n border: 0,\n margin: 0,\n padding: 0\n };\n const sizerStyle = {\n boxSizing: 'border-box',\n display: 'block',\n width: 'initial',\n height: 'initial',\n background: 'none',\n opacity: 1,\n border: 0,\n margin: 0,\n padding: 0\n };\n let hasSizer = false;\n let sizerSvgUrl;\n const layoutStyle = {\n position: 'absolute',\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n boxSizing: 'border-box',\n padding: 0,\n border: 'none',\n margin: 'auto',\n display: 'block',\n width: 0,\n height: 0,\n minWidth: '100%',\n maxWidth: '100%',\n minHeight: '100%',\n maxHeight: '100%',\n objectFit,\n objectPosition\n };\n let widthInt = getInt(width);\n let heightInt = getInt(height);\n const qualityInt = getInt(quality);\n if (process.env.NODE_ENV !== 'production') {\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 widthInt = widthInt || 1;\n heightInt = heightInt || 1;\n unoptimized = true;\n } else {\n if (!VALID_LAYOUT_VALUES.includes(layout)) {\n throw new Error(`Image with src \"${src}\" has invalid \"layout\" property. Provided \"${layout}\" should be one of ${VALID_LAYOUT_VALUES.map(String).join(',')}.`);\n }\n if (typeof widthInt !== 'undefined' && isNaN(widthInt) || typeof heightInt !== 'undefined' && isNaN(heightInt)) {\n throw new Error(`Image with src \"${src}\" has invalid \"width\" or \"height\" property. These should be numeric values.`);\n }\n if (layout === 'fill' && (width || height)) {\n (0, _warnOnce).warnOnce(`Image with src \"${src}\" and \"layout='fill'\" has unused properties assigned. Please remove \"width\" and \"height\".`);\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 (sizes && layout !== 'fill' && layout !== 'responsive') {\n (0, _warnOnce).warnOnce(`Image with src \"${src}\" has \"sizes\" property but it will be ignored. Only use \"sizes\" with \"layout='fill'\" or \"layout='responsive'\"`);\n }\n if (placeholder === 'blur') {\n if (layout !== 'fill' && (widthInt || 0) * (heightInt || 0) < 1600) {\n (0, _warnOnce).warnOnce(`Image with src \"${src}\" is smaller than 40x40. Consider removing the \"placeholder='blur'\" property to improve performance.`);\n }\n if (!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(',')}\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 (0, _warnOnce).warnOnce(`Image with src \"${src}\" is using unsupported \"ref\" property. Consider using the \"onLoadingComplete\" property instead.`);\n }\n if (!unoptimized && loader !== defaultImageLoader) {\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 if (style) {\n let overwrittenStyles = Object.keys(style).filter((key)=>key in layoutStyle);\n if (overwrittenStyles.length) {\n (0, _warnOnce).warnOnce(`Image with src ${src} is assigned the following styles, which are overwritten by automatically-generated styles: ${overwrittenStyles.join(', ')}`);\n }\n }\n if (typeof window !== 'undefined' && !perfObserver && window.PerformanceObserver) {\n perfObserver = new PerformanceObserver((entryList)=>{\n for (const entry of entryList.getEntries()){\n var ref;\n // @ts-ignore - missing \"LargestContentfulPaint\" class with \"element\" prop\n const imgSrc = (entry == null ? void 0 : (ref = entry.element) == null ? void 0 : ref.src) || '';\n const lcpImage = allImgs.get(imgSrc);\n if (lcpImage && !lcpImage.priority && lcpImage.placeholder !== 'blur' && !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/legacy/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 }\n const imgStyle = Object.assign({}, style, layoutStyle);\n const blurStyle = placeholder === 'blur' && !blurComplete ? {\n backgroundSize: objectFit || 'cover',\n backgroundPosition: objectPosition || '0% 0%',\n filter: 'blur(20px)',\n backgroundImage: `url(\"${blurDataURL}\")`\n } : {};\n if (layout === 'fill') {\n // \n wrapperStyle.display = 'block';\n wrapperStyle.position = 'absolute';\n wrapperStyle.top = 0;\n wrapperStyle.left = 0;\n wrapperStyle.bottom = 0;\n wrapperStyle.right = 0;\n } else if (typeof widthInt !== 'undefined' && typeof heightInt !== 'undefined') {\n // \n const quotient = heightInt / widthInt;\n const paddingTop = isNaN(quotient) ? '100%' : `${quotient * 100}%`;\n if (layout === 'responsive') {\n // \n wrapperStyle.display = 'block';\n wrapperStyle.position = 'relative';\n hasSizer = true;\n sizerStyle.paddingTop = paddingTop;\n } else if (layout === 'intrinsic') {\n // \n wrapperStyle.display = 'inline-block';\n wrapperStyle.position = 'relative';\n wrapperStyle.maxWidth = '100%';\n hasSizer = true;\n sizerStyle.maxWidth = '100%';\n sizerSvgUrl = `data:image/svg+xml,%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20version=%271.1%27%20width=%27${widthInt}%27%20height=%27${heightInt}%27/%3e`;\n } else if (layout === 'fixed') {\n // \n wrapperStyle.display = 'inline-block';\n wrapperStyle.position = 'relative';\n wrapperStyle.width = widthInt;\n wrapperStyle.height = heightInt;\n }\n } else {\n // \n if (process.env.NODE_ENV !== 'production') {\n throw new Error(`Image with src \"${src}\" must use \"width\" and \"height\" properties or \"layout='fill'\" property.`);\n }\n }\n let imgAttributes = {\n src: emptyDataURL,\n srcSet: undefined,\n sizes: undefined\n };\n if (isVisible) {\n imgAttributes = generateImgAttrs({\n config,\n src,\n unoptimized,\n layout,\n width: widthInt,\n quality: qualityInt,\n sizes,\n loader\n });\n }\n let srcString = src;\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 linkProps = {\n // @ts-expect-error upgrade react types to react 18\n imageSrcSet: imgAttributes.srcSet,\n imageSizes: imgAttributes.sizes,\n crossOrigin: rest.crossOrigin\n };\n const useLayoutEffect = typeof window === 'undefined' ? _react.default.useEffect : _react.default.useLayoutEffect;\n const onLoadingCompleteRef = (0, _react).useRef(onLoadingComplete);\n const previousImageSrc = (0, _react).useRef(src);\n (0, _react).useEffect(()=>{\n onLoadingCompleteRef.current = onLoadingComplete;\n }, [\n onLoadingComplete\n ]);\n useLayoutEffect(()=>{\n if (previousImageSrc.current !== src) {\n resetIntersected();\n previousImageSrc.current = src;\n }\n }, [\n resetIntersected,\n src\n ]);\n const imgElementArgs = _extends({\n isLazy,\n imgAttributes,\n heightInt,\n widthInt,\n qualityInt,\n layout,\n className,\n imgStyle,\n blurStyle,\n loading,\n config,\n unoptimized,\n placeholder,\n loader,\n srcString,\n onLoadingCompleteRef,\n setBlurComplete,\n setIntersection,\n isVisible,\n noscriptSizes: sizes\n }, rest);\n return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement(\"span\", {\n style: wrapperStyle\n }, hasSizer ? /*#__PURE__*/ _react.default.createElement(\"span\", {\n style: sizerStyle\n }, sizerSvgUrl ? /*#__PURE__*/ _react.default.createElement(\"img\", {\n style: {\n display: 'block',\n maxWidth: '100%',\n width: 'initial',\n height: 'initial',\n background: 'none',\n opacity: 1,\n border: 0,\n margin: 0,\n padding: 0\n },\n alt: \"\",\n \"aria-hidden\": true,\n src: sizerSvgUrl\n }) : null) : null, /*#__PURE__*/ _react.default.createElement(ImageElement, Object.assign({}, imgElementArgs))), priority ? // 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 likely cause the incorrect image to be preloaded.\n //\n // https://html.spec.whatwg.org/multipage/semantics.html#attr-link-imagesrcset\n /*#__PURE__*/ _react.default.createElement(_head.default, null, /*#__PURE__*/ _react.default.createElement(\"link\", Object.assign({\n key: '__nimg-' + imgAttributes.src + imgAttributes.srcSet + imgAttributes.sizes,\n rel: \"preload\",\n as: \"image\",\n href: imgAttributes.srcSet ? undefined : imgAttributes.src\n }, linkProps))) : null);\n}\n\nfunction normalizeSrc(src) {\n return src[0] === '/' ? src.slice(1) : src;\n}\nconst configEnv = process.env.__NEXT_IMAGE_OPTS;\nconst loadedImageURLs = new Set();\nconst allImgs = new Map();\nlet perfObserver;\nconst emptyDataURL = 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7';\nif (typeof window === 'undefined') {\n globalThis.__NEXT_IMAGE_IMPORTED = true;\n}\nconst VALID_LOADING_VALUES = [\n 'lazy',\n 'eager',\n undefined\n];\nfunction imgixLoader({ config , src , width , quality }) {\n // Demo: https://static.imgix.net/daisy.png?auto=format&fit=max&w=300\n const url = new URL(`${config.path}${normalizeSrc(src)}`);\n const params = url.searchParams;\n // auto params can be combined with comma separation, or reiteration\n params.set('auto', params.getAll('auto').join(',') || 'format');\n params.set('fit', params.get('fit') || 'max');\n params.set('w', params.get('w') || width.toString());\n if (quality) {\n params.set('q', quality.toString());\n }\n return url.href;\n}\nfunction akamaiLoader({ config , src , width }) {\n return `${config.path}${normalizeSrc(src)}?imwidth=${width}`;\n}\nfunction cloudinaryLoader({ config , src , width , quality }) {\n // Demo: https://res.cloudinary.com/demo/image/upload/w_300,c_limit,q_auto/turtles.jpg\n const params = [\n 'f_auto',\n 'c_limit',\n 'w_' + width,\n 'q_' + (quality || 'auto')\n ];\n const paramsString = params.join(',') + '/';\n return `${config.path}${paramsString}${normalizeSrc(src)}`;\n}\nfunction customLoader({ src }) {\n throw new Error(`Image with src \"${src}\" is missing \"loader\" prop.` + `\\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader`);\n}\nfunction defaultLoader({ config , src , width , quality }) {\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') {\n // We use dynamic require because this should only error in development\n const { hasMatch } = require('../../shared/lib/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 if (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 return src;\n }\n return `${(0, _normalizeTrailingSlash).normalizePathTrailingSlash(config.path)}?url=${encodeURIComponent(src)}&w=${width}&q=${quality || 75}`;\n}\nconst loaders = new Map([\n [\n 'default',\n defaultLoader\n ],\n [\n 'imgix',\n imgixLoader\n ],\n [\n 'cloudinary',\n cloudinaryLoader\n ],\n [\n 'akamai',\n akamaiLoader\n ],\n [\n 'custom',\n customLoader\n ], \n]);\nconst VALID_LAYOUT_VALUES = [\n 'fill',\n 'fixed',\n 'intrinsic',\n 'responsive',\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}\nfunction getWidths({ deviceSizes , allSizes }, width, layout, sizes) {\n if (sizes && (layout === 'fill' || layout === 'responsive')) {\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' || layout === 'fill' || layout === 'responsive') {\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({ config , src , unoptimized , layout , width , quality , sizes , loader }) {\n if (unoptimized) {\n return {\n src,\n srcSet: undefined,\n sizes: undefined\n };\n }\n const { widths , kind } = getWidths(config, width, layout, 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 getInt(x) {\n if (typeof x === 'number') {\n return x;\n }\n if (typeof x === 'string') {\n return parseInt(x, 10);\n }\n return undefined;\n}\nfunction defaultImageLoader(loaderProps) {\n var ref;\n const loaderKey = ((ref = loaderProps.config) == null ? void 0 : ref.loader) || 'default';\n const load = loaders.get(loaderKey);\n if (load) {\n return load(loaderProps);\n }\n throw new Error(`Unknown \"loader\" found in \"next.config.js\". Expected: ${_imageConfig.VALID_LOADERS.join(', ')}. Received: ${loaderKey}`);\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, src, layout, placeholder, onLoadingCompleteRef, setBlurComplete) {\n if (!img || img.src === emptyDataURL || 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.parentNode) {\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 loadedImageURLs.add(src);\n if (placeholder === 'blur') {\n setBlurComplete(true);\n }\n if (onLoadingCompleteRef == null ? void 0 : onLoadingCompleteRef.current) {\n const { naturalWidth , naturalHeight } = img;\n // Pass back read-only primitive values but not the\n // underlying DOM element because it could be misused.\n onLoadingCompleteRef.current({\n naturalWidth,\n naturalHeight\n });\n }\n if (process.env.NODE_ENV !== 'production') {\n var ref;\n if ((ref = img.parentElement) == null ? void 0 : ref.parentElement) {\n const parent = getComputedStyle(img.parentElement.parentElement);\n if (!parent.position) {\n // The parent has not been rendered to the dom yet and therefore it has no position. Skip the warnings for such cases.\n } else if (layout === 'responsive' && parent.display === 'flex') {\n (0, _warnOnce).warnOnce(`Image with src \"${src}\" may not render properly as a child of a flex container. Consider wrapping the image with a div to configure the width.`);\n } else if (layout === 'fill' && parent.position !== 'relative' && parent.position !== 'fixed' && parent.position !== 'absolute') {\n (0, _warnOnce).warnOnce(`Image with src \"${src}\" may not render properly with a parent using position:\"${parent.position}\". Consider changing the parent style to position:\"relative\" with a width and height.`);\n }\n }\n }\n });\n}\nconst ImageElement = (_param)=>{\n var { imgAttributes , heightInt , widthInt , qualityInt , layout , className , imgStyle , blurStyle , isLazy , placeholder , loading , srcString , config , unoptimized , loader , onLoadingCompleteRef , setBlurComplete , setIntersection , onLoad , onError , isVisible , noscriptSizes } = _param, rest = _object_without_properties_loose(_param, [\n \"imgAttributes\",\n \"heightInt\",\n \"widthInt\",\n \"qualityInt\",\n \"layout\",\n \"className\",\n \"imgStyle\",\n \"blurStyle\",\n \"isLazy\",\n \"placeholder\",\n \"loading\",\n \"srcString\",\n \"config\",\n \"unoptimized\",\n \"loader\",\n \"onLoadingCompleteRef\",\n \"setBlurComplete\",\n \"setIntersection\",\n \"onLoad\",\n \"onError\",\n \"isVisible\",\n \"noscriptSizes\"\n ]);\n loading = isLazy ? 'lazy' : loading;\n return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement(\"img\", Object.assign({}, rest, imgAttributes, {\n decoding: \"async\",\n \"data-nimg\": layout,\n className: className,\n style: _extends({}, imgStyle, blurStyle),\n ref: (0, _react).useCallback((img)=>{\n if (process.env.NODE_ENV !== 'production') {\n if (img && !srcString) {\n console.error(`Image is missing required \"src\" property:`, img);\n }\n }\n setIntersection(img);\n if (img == null ? void 0 : img.complete) {\n handleLoading(img, srcString, layout, placeholder, onLoadingCompleteRef, setBlurComplete);\n }\n }, [\n setIntersection,\n srcString,\n layout,\n placeholder,\n onLoadingCompleteRef,\n setBlurComplete, \n ]),\n onLoad: (event)=>{\n const img = event.currentTarget;\n handleLoading(img, srcString, layout, placeholder, onLoadingCompleteRef, setBlurComplete);\n if (onLoad) {\n onLoad(event);\n }\n },\n onError: (event)=>{\n if (placeholder === 'blur') {\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 })), (isLazy || placeholder === 'blur') && /*#__PURE__*/ _react.default.createElement(\"noscript\", null, /*#__PURE__*/ _react.default.createElement(\"img\", Object.assign({}, rest, generateImgAttrs({\n config,\n src: srcString,\n unoptimized,\n layout,\n width: widthInt,\n quality: qualityInt,\n sizes: noscriptSizes,\n loader\n }), {\n decoding: \"async\",\n \"data-nimg\": layout,\n style: imgStyle,\n className: className,\n // @ts-ignore - TODO: upgrade to `@types/react@17`\n loading: loading\n }))));\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.js.map","module.exports = require('../dist/client/legacy/image')\n"],"names":["Object","value","exports","_param","src","sizerSvgUrl","sizes","unoptimized","_param_unoptimized","_param_priority","priority","loading","lazyRoot","lazyBoundary","className","quality","width","height","style","objectFit","objectPosition","onLoadingComplete","placeholder","_param_placeholder","blurDataURL","all","_object_without_properties_loose","configContext","useContext","_imageConfigContext","ImageConfigContext","config","useMemo","c","configEnv","_imageConfig","imageConfigDefault","allSizes","_toConsumableArray","deviceSizes","concat","imageSizes","sort","a","b","_extends","rest","layout","loader","defaultImageLoader","customImageLoader","obj","staticSrc","isStaticRequire","undefined","staticImageData","default","JSON","stringify","isLazy","startsWith","loadedImageURLs","has","_useState","_slicedToArray","useState","blurComplete","setBlurComplete","_useIntersection1","useIntersection","rootRef","_param_lazyRoot","rootMargin","disabled","setIntersection","isIntersected","resetIntersected","isVisible","wrapperStyle","boxSizing","display","overflow","background","opacity","border","margin","padding","sizerStyle","hasSizer","widthInt","getInt","heightInt","qualityInt","imgStyle","assign","position","top","left","bottom","right","minWidth","maxWidth","minHeight","maxHeight","blurStyle","backgroundSize","backgroundPosition","filter","backgroundImage","quotient","paddingTop","isNaN","imgAttributes","emptyDataURL","srcSet","generateImgAttrs","srcString","linkProps","imageSrcSet","crossOrigin","useLayoutEffect","_react","onLoadingCompleteRef","useRef","previousImageSrc","useEffect","current","imgElementArgs","noscriptSizes","createElement","Fragment","alt","ImageElement","_head","key","rel","as","href","require","_interop_require_default","_interop_require_wildcard","_useIntersection","_normalizeTrailingSlash","normalizeSrc","slice","process","Set","loaders","Map","param","endsWith","dangerouslyAllowSVG","encodeURIComponent","normalizePathTrailingSlash","path","url","URL","params","searchParams","set","getAll","join","get","toString","paramsString","getWidths","viewportWidthRe","percentSizes","match","exec","push","parseInt","length","Math","smallestRatio","min","widths","s","kind","map","w","find","p","last","i","x","loaderProps","ref","loaderKey","load","VALID_LOADERS","handleLoading","img","decode","Promise","resolve","catch","then","parentNode","add","naturalWidth","naturalHeight","onLoad","onError","decoding","useCallback","complete","event","currentTarget","__esModule","defineProperty","module","__webpack_require__"],"sourceRoot":""}