import{ah as j,ai as E,ab as _,ac as q,aj as O,ak as x,al as B,a3 as M,ad as D,f as v,q as H,am as L,r as z,l as U,c as R,D as C,an as $,h as b,ao as F,o as T}from"#entry";async function V(e,t){return await G(t).catch(i=>(console.error("Failed to get image meta for "+t,i+""),{width:0,height:0,ratio:0}))}async function G(e){if(typeof Image>"u")throw new TypeError("Image not supported");return new Promise((t,r)=>{const i=new Image;i.onload=()=>{const s={width:i.width,height:i.height,ratio:i.width/i.height};t(s)},i.onerror=s=>r(s),i.src=e})}function I(e){return t=>t?e[t]||t:e.missingValue}function J({formatter:e,keyMap:t,joinWith:r="/",valueMap:i}={}){e||(e=(n,o)=>`${n}=${o}`),t&&typeof t!="function"&&(t=I(t));const s=i||{};return Object.keys(s).forEach(n=>{typeof s[n]!="function"&&(s[n]=I(s[n]))}),(n={})=>Object.entries(n).filter(([a,l])=>typeof l<"u").map(([a,l])=>{const c=s[a];return typeof c=="function"&&(l=c(n[a])),a=typeof t=="function"?t(a):a,e(a,l)}).join(r)}function h(e=""){if(typeof e=="number")return e;if(typeof e=="string"&&e.replace("px","").match(/^\d+$/g))return Number.parseInt(e,10)}function Q(e=""){if(e===void 0||!e.length)return[];const t=new Set;for(const r of e.split(" ")){const i=Number.parseInt(r.replace("x",""));i&&t.add(i)}return Array.from(t)}function X(e){if(e.length===0)throw new Error("`densities` must not be empty, configure to `1` to render regular size only (DPR 1.0)")}function Y(e){const t={};if(typeof e=="string")for(const r of e.split(/[\s,]+/).filter(i=>i)){const i=r.split(":");i.length!==2?t["1px"]=i[0].trim():t[i[0].trim()]=i[1].trim()}else Object.assign(t,e);return t}function Z(e){const t={options:e},r=(s,n={})=>k(t,s,n),i=(s,n={},o={})=>r(s,{...o,modifiers:j(n,o.modifiers||{})}).url;for(const s in e.presets)i[s]=(n,o,a)=>i(n,o,{...e.presets[s],...a});return i.options=e,i.getImage=r,i.getMeta=(s,n)=>K(t,s,n),i.getSizes=(s,n)=>re(t,s,n),t.$img=i,i}async function K(e,t,r){const i=k(e,t,{...r});return typeof i.getMeta=="function"?await i.getMeta():await V(e,i.url)}function k(e,t,r){if(t&&typeof t!="string")throw new TypeError(`input must be a string (received ${typeof t}: ${JSON.stringify(t)})`);if(!t||t.startsWith("data:"))return{url:t};const{provider:i,defaults:s}=ee(e,r.provider||e.options.provider),n=te(e,r.preset);if(t=_(t)?t:E(t),!i.supportsAlias){for(const c in e.options.alias)if(t.startsWith(c)){const f=e.options.alias[c];f&&(t=q(f,t.slice(c.length)))}}if(i.validateDomains&&_(t)){const c=O(t).host;if(!e.options.domains.find(f=>f===c))return{url:t}}const o=j(r,n,s);o.modifiers={...o.modifiers};const a=o.modifiers.format;o.modifiers?.width&&(o.modifiers.width=h(o.modifiers.width)),o.modifiers?.height&&(o.modifiers.height=h(o.modifiers.height));const l=i.getImage(t,o,e);return l.format=l.format||a||"",l}function ee(e,t){const r=e.options.providers[t];if(!r)throw new Error("Unknown provider: "+t);return r}function te(e,t){if(!t)return{};if(!e.options.presets[t])throw new Error("Unknown preset: "+t);return e.options.presets[t]}function re(e,t,r){const i=h(r.modifiers?.width),s=h(r.modifiers?.height),n=Y(r.sizes),o=r.densities?.trim()?Q(r.densities.trim()):e.options.densities;X(o);const a=i&&s?s/i:0,l=[],c=[];if(Object.keys(n).length>=1){for(const u in n){const g=W(u,String(n[u]),s,a,e);if(g!==void 0){l.push({size:g.size,screenMaxWidth:g.screenMaxWidth,media:`(max-width: ${g.screenMaxWidth}px)`});for(const p of o)c.push({width:g._cWidth*p,src:A(e,t,r,g,p)})}}ie(l)}else for(const u of o){const g=Object.keys(n)[0];let p=g?W(g,String(n[g]),s,a,e):void 0;p===void 0&&(p={size:"",screenMaxWidth:0,_cWidth:r.modifiers?.width,_cHeight:r.modifiers?.height}),c.push({width:u,src:A(e,t,r,p,u)})}se(c);const f=c[c.length-1],w=l.length?l.map(u=>`${u.media?u.media+" ":""}${u.size}`).join(", "):void 0,y=w?"w":"x",S=c.map(u=>`${u.src} ${u.width}${y}`).join(", ");return{sizes:w,srcset:S,src:f?.src}}function W(e,t,r,i,s){const n=s.options.screens&&s.options.screens[e]||Number.parseInt(e),o=t.endsWith("vw");if(!o&&/^\d+$/.test(t)&&(t=t+"px"),!o&&!t.endsWith("px"))return;let a=Number.parseInt(t);if(!n||!a)return;o&&(a=Math.round(a/100*n));const l=i?Math.round(a*i):r;return{size:t,screenMaxWidth:n,_cWidth:a,_cHeight:l}}function A(e,t,r,i,s){return e.$img(t,{...r.modifiers,width:i._cWidth?i._cWidth*s:void 0,height:i._cHeight?i._cHeight*s:void 0},r)}function ie(e){e.sort((r,i)=>r.screenMaxWidth-i.screenMaxWidth);let t=null;for(let r=e.length-1;r>=0;r--){const i=e[r];i.media===t&&e.splice(r,1),t=i.media}for(let r=0;r<e.length;r++)e[r].media=e[r+1]?.media||""}function se(e){e.sort((r,i)=>r.width-i.width);let t=null;for(let r=e.length-1;r>=0;r--){const i=e[r];i.width===t&&e.splice(r,1),t=i.width}}const ne=J({keyMap:{format:"f",fit:"fit",width:"w",height:"h",resize:"s",quality:"q",background:"b"},joinWith:"&",formatter:(e,t)=>x(e)+"_"+x(t)}),oe=(e,{modifiers:t={},baseURL:r}={},i)=>{t.width&&t.height&&(t.resize=`${t.width}x${t.height}`,delete t.width,delete t.height);const s=ne(t)||"_";return r||(r=q(i.options.nuxt.baseURL,"/_ipx")),{url:q(r,s,B(e))}},ae=!0,de=!0,ce=Object.freeze(Object.defineProperty({__proto__:null,getImage:oe,supportsAlias:de,validateDomains:ae},Symbol.toStringTag,{value:"Module"})),P={screens:{xs:320,sm:640,md:768,lg:1024,xl:1280,xxl:1536,"2xl":1536},presets:{},provider:"ipx",domains:[],alias:{},densities:[1,2],format:["webp"]};P.providers={ipx:{provider:ce,defaults:{}}};const N=()=>{const e=D(),t=M();return t.$img||t._img||(t._img=Z({...P,nuxt:{baseURL:e.app.baseURL},runtimeConfig:e}))};function le(e){performance?.mark?.("mark_feature_usage",{detail:{feature:e}})}const ue={src:{type:String,required:!1},format:{type:String,required:!1},quality:{type:[Number,String],required:!1},background:{type:String,required:!1},fit:{type:String,required:!1},modifiers:{type:Object,required:!1},preset:{type:String,required:!1},provider:{type:String,required:!1},sizes:{type:[Object,String],required:!1},densities:{type:String,required:!1},preload:{type:[Boolean,Object],required:!1},width:{type:[String,Number],required:!1},height:{type:[String,Number],required:!1},alt:{type:String,required:!1},referrerpolicy:{type:String,required:!1},usemap:{type:String,required:!1},longdesc:{type:String,required:!1},ismap:{type:Boolean,required:!1},loading:{type:String,required:!1,validator:e=>["lazy","eager"].includes(e)},crossorigin:{type:[Boolean,String],required:!1,validator:e=>["anonymous","use-credentials","",!0,!1].includes(e)},decoding:{type:String,required:!1,validator:e=>["async","auto","sync"].includes(e)},nonce:{type:[String],required:!1}},fe=e=>{const t=v(()=>({provider:e.provider,preset:e.preset})),r=v(()=>({width:h(e.width),height:h(e.height),alt:e.alt,referrerpolicy:e.referrerpolicy,usemap:e.usemap,longdesc:e.longdesc,ismap:e.ismap,crossorigin:e.crossorigin===!0?"anonymous":e.crossorigin||void 0,loading:e.loading,decoding:e.decoding,nonce:e.nonce})),i=N(),s=v(()=>({...e.modifiers,width:h(e.width),height:h(e.height),format:e.format,quality:e.quality||i.options.quality,background:e.background,fit:e.fit}));return{options:t,attrs:r,modifiers:s}},ge={...ue,placeholder:{type:[Boolean,String,Number,Array],required:!1},placeholderClass:{type:String,required:!1},custom:{type:Boolean,required:!1}},he=["src"],pe=H({__name:"NuxtImg",props:ge,emits:["load","error"],setup(e,{emit:t}){const r=e,i=L(),s=t,n=!1,o=N(),a=fe(r),l=z(!1),c=z(),f=v(()=>o.getSizes(r.src,{...a.options.value,sizes:r.sizes,densities:r.densities,modifiers:{...a.modifiers.value,width:h(r.width),height:h(r.height)}})),w=v(()=>{const d={...a.attrs.value,"data-nuxt-img":""};return(!r.placeholder||l.value)&&(d.sizes=f.value.sizes,d.srcset=f.value.srcset),d}),y=v(()=>{let d=r.placeholder;if(d===""&&(d=!0),!d||l.value)return!1;if(typeof d=="string")return d;const m=Array.isArray(d)?d:typeof d=="number"?[d,d]:[10,10];return o(r.src,{...a.modifiers.value,width:m[0],height:m[1],quality:m[2]||50,blur:m[3]||3},a.options.value)}),S=v(()=>r.sizes?f.value.src:o(r.src,a.modifiers.value,a.options.value)),u=v(()=>y.value?y.value:S.value),p=M().isHydrating;return U(()=>{if(y.value||r.custom){const d=new Image;S.value&&(d.src=S.value),r.sizes&&(d.sizes=f.value.sizes||"",d.srcset=f.value.srcset),d.onload=m=>{l.value=!0,s("load",m)},d.onerror=m=>{s("error",m)},le("nuxt-image");return}c.value&&(c.value.complete&&p&&(c.value.getAttribute("data-error")?s("error",new Event("error")):s("load",new Event("load"))),c.value.onload=d=>{s("load",d)},c.value.onerror=d=>{s("error",d)})}),(d,m)=>d.custom?C(d.$slots,"default",F($({key:1},{...b(n)?{onerror:"this.setAttribute('data-error', 1)"}:{},imgAttrs:{...w.value,...b(i)},isLoaded:l.value,src:u.value}))):(T(),R("img",$({key:0,ref_key:"imgEl",ref:c,class:y.value&&!l.value?d.placeholderClass:void 0},{...b(n)?{onerror:"this.setAttribute('data-error', 1)"}:{},...w.value,...b(i)},{src:u.value}),null,16,he))}});export{pe as _,ge as i};
