{"version":3,"file":"MediaImage.c64a1445.js","sources":["../../../../../../node_modules/@nuxt/image-edge/dist/runtime/composables.mjs","../../../../../../node_modules/@nuxt/image-edge/dist/runtime/components/_base.mjs","../../../../../../node_modules/@nuxt/image-edge/dist/runtime/components/nuxt-img.mjs","../../../../storyblok/Media/MediaImage.vue"],"sourcesContent":["import { useNuxtApp } from \"#imports\";\nexport const useImage = () => {\n return useNuxtApp().$img;\n};\n","import { computed } from \"vue\";\nimport { parseSize } from \"../utils/index.mjs\";\nexport const baseImageProps = {\n src: { type: String, required: true },\n format: { type: String, default: void 0 },\n quality: { type: [Number, String], default: void 0 },\n background: { type: String, default: void 0 },\n fit: { type: String, default: void 0 },\n modifiers: { type: Object, default: void 0 },\n preset: { type: String, default: void 0 },\n provider: { type: String, default: void 0 },\n sizes: { type: [Object, String], default: void 0 },\n preload: { type: Boolean, default: void 0 },\n width: { type: [String, Number], default: void 0 },\n height: { type: [String, Number], default: void 0 },\n alt: { type: String, default: void 0 },\n referrerpolicy: { type: String, default: void 0 },\n usemap: { type: String, default: void 0 },\n longdesc: { type: String, default: void 0 },\n ismap: { type: Boolean, default: void 0 },\n loading: { type: String, default: void 0 },\n crossorigin: {\n type: [Boolean, String],\n default: void 0,\n validator: (val) => [\"anonymous\", \"use-credentials\", \"\", true, false].includes(val)\n },\n decoding: {\n type: String,\n default: void 0,\n validator: (val) => [\"async\", \"auto\", \"sync\"].includes(val)\n }\n};\nexport const useBaseImage = (props) => {\n const options = computed(() => {\n return {\n provider: props.provider,\n preset: props.preset\n };\n });\n const attrs = computed(() => {\n return {\n width: parseSize(props.width),\n height: parseSize(props.height),\n alt: props.alt,\n referrerpolicy: props.referrerpolicy,\n usemap: props.usemap,\n longdesc: props.longdesc,\n ismap: props.ismap,\n crossorigin: props.crossorigin === true ? \"anonymous\" : props.crossorigin || void 0,\n loading: props.loading,\n decoding: props.decoding\n };\n });\n const modifiers = computed(() => {\n return {\n ...props.modifiers,\n width: parseSize(props.width),\n height: parseSize(props.height),\n format: props.format,\n quality: props.quality,\n background: props.background,\n fit: props.fit\n };\n });\n return {\n options,\n attrs,\n modifiers\n };\n};\n","import { h, defineComponent, ref, computed, onMounted } from \"vue\";\nimport { useImage } from \"../composables.mjs\";\nimport { parseSize } from \"../utils/index.mjs\";\nimport { prerenderStaticImages } from \"../utils/prerender.mjs\";\nimport { baseImageProps, useBaseImage } from \"./_base.mjs\";\nimport { useHead } from \"#imports\";\nexport const imgProps = {\n ...baseImageProps,\n placeholder: { type: [Boolean, String, Number, Array], default: void 0 }\n};\nexport default defineComponent({\n name: \"NuxtImg\",\n props: imgProps,\n emits: [\"load\"],\n setup: (props, ctx) => {\n const $img = useImage();\n const _base = useBaseImage(props);\n const placeholderLoaded = ref(false);\n const sizes = computed(() => $img.getSizes(props.src, {\n ..._base.options.value,\n sizes: props.sizes,\n modifiers: {\n ..._base.modifiers.value,\n width: parseSize(props.width),\n height: parseSize(props.height)\n }\n }));\n const attrs = computed(() => {\n const attrs2 = _base.attrs.value;\n if (props.sizes) {\n attrs2.sizes = sizes.value.sizes;\n attrs2.srcset = sizes.value.srcset;\n }\n return attrs2;\n });\n const placeholder = computed(() => {\n let placeholder2 = props.placeholder;\n if (placeholder2 === \"\") {\n placeholder2 = true;\n }\n if (!placeholder2 || placeholderLoaded.value) {\n return false;\n }\n if (typeof placeholder2 === \"string\") {\n return placeholder2;\n }\n const size = Array.isArray(placeholder2) ? placeholder2 : typeof placeholder2 === \"number\" ? [placeholder2, placeholder2] : [10, 10];\n return $img(props.src, {\n ..._base.modifiers.value,\n width: size[0],\n height: size[1],\n quality: size[2] || 50\n }, _base.options.value);\n });\n const mainSrc = computed(\n () => props.sizes ? sizes.value.src : $img(props.src, _base.modifiers.value, _base.options.value)\n );\n const src = computed(() => placeholder.value ? placeholder.value : mainSrc.value);\n if (props.preload) {\n const isResponsive = Object.values(sizes.value).every((v) => v);\n useHead({\n link: [{\n rel: \"preload\",\n as: \"image\",\n ...!isResponsive ? { href: src.value } : {\n href: sizes.value.src,\n imagesizes: sizes.value.sizes,\n imagesrcset: sizes.value.srcset\n }\n }]\n });\n }\n if (process.server && process.env.prerender) {\n prerenderStaticImages(src.value, sizes.value.srcset);\n }\n const imgEl = ref();\n onMounted(() => {\n if (placeholder.value) {\n const img = new Image();\n img.src = mainSrc.value;\n img.onload = (event) => {\n imgEl.value.src = mainSrc.value;\n placeholderLoaded.value = true;\n ctx.emit(\"load\", event);\n };\n } else {\n imgEl.value.onload = (event) => {\n ctx.emit(\"load\", event);\n };\n }\n });\n return () => h(\"img\", {\n ref: imgEl,\n key: src.value,\n src: src.value,\n ...attrs.value,\n ...ctx.attrs\n });\n }\n});\n","\n\n\n\n\n"],"names":["useImage","useNuxtApp","baseImageProps","val","useBaseImage","props","options","computed","attrs","parseSize","modifiers","imgProps","__nuxt_component_0","defineComponent","ctx","$img","_base","placeholderLoaded","ref","sizes","attrs2","placeholder","placeholder2","size","mainSrc","src","isResponsive","v","useHead","imgEl","onMounted","img","event","h","aspectClass","filterOptions","_b","_a"],"mappings":"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"}