import{ae as W,aq as N,af as S,ar as R,as as O,at as M,au as D,u as P,v as U,H as v,d as L,r as I,D as B,o as F,M as G}from"./DEDOUQvL.js";async function T(e,t){return await C(t).catch(i=>(console.error("Failed to get image meta for "+t,i+""),{width:0,height:0,ratio:0}))}async function C(e){if(typeof Image>"u")throw new TypeError("Image not supported");return new Promise((t,r)=>{const i=new Image;i.onload=()=>{const n={width:i.width,height:i.height,ratio:i.width/i.height};t(n)},i.onerror=n=>r(n),i.src=e})}function b(e){return t=>t?e[t]||t:e.missingValue}function q({formatter:e,keyMap:t,joinWith:r="/",valueMap:i}={}){e||(e=(o,s)=>`${o}=${s}`),t&&typeof t!="function"&&(t=b(t));const n=i||{};return Object.keys(n).forEach(o=>{typeof n[o]!="function"&&(n[o]=b(n[o]))}),(o={})=>Object.entries(o).filter(([a,c])=>typeof c<"u").map(([a,c])=>{const u=n[a];return typeof u=="function"&&(c=u(o[a])),a=typeof t=="function"?t(a):a,e(a,c)}).join(r)}function h(e=""){if(typeof e=="number")return e;if(typeof e=="string"&&e.replace("px","").match(/^\d+$/g))return parseInt(e,10)}function V(e=""){if(e===void 0||!e.length)return[];const t=new Set;for(const r of e.split(" ")){const i=parseInt(r.replace("x",""));i&&t.add(i)}return Array.from(t)}function J(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 Q(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 X(e){const t={options:e},r=(n,o={})=>E(t,n,o),i=(n,o={},s={})=>r(n,{...s,modifiers:O(o,s.modifiers||{})}).url;for(const n in e.presets)i[n]=(o,s,a)=>i(o,s,{...e.presets[n],...a});return i.options=e,i.getImage=r,i.getMeta=(n,o)=>Y(t,n,o),i.getSizes=(n,o)=>ee(t,n,o),t.$img=i,i}async function Y(e,t,r){const i=E(e,t,{...r});return typeof i.getMeta=="function"?await i.getMeta():await T(e,i.url)}function E(e,t,r){var u,f;if(typeof t!="string"||t==="")throw new TypeError(`input must be a string (received ${typeof t}: ${JSON.stringify(t)})`);if(t.startsWith("data:"))return{url:t};const{provider:i,defaults:n}=Z(e,r.provider||e.options.provider),o=K(e,r.preset);if(t=W(t)?t:N(t),!i.supportsAlias)for(const m in e.options.alias)t.startsWith(m)&&(t=S(e.options.alias[m],t.substr(m.length)));if(i.validateDomains&&W(t)){const m=R(t).host;if(!e.options.domains.find(w=>w===m))return{url:t}}const s=O(r,o,n);s.modifiers={...s.modifiers};const a=s.modifiers.format;(u=s.modifiers)!=null&&u.width&&(s.modifiers.width=h(s.modifiers.width)),(f=s.modifiers)!=null&&f.height&&(s.modifiers.height=h(s.modifiers.height));const c=i.getImage(t,s,e);return c.format=c.format||a||"",c}function Z(e,t){const r=e.options.providers[t];if(!r)throw new Error("Unknown provider: "+t);return r}function K(e,t){if(!t)return{};if(!e.options.presets[t])throw new Error("Unknown preset: "+t);return e.options.presets[t]}function ee(e,t,r){var g,x,_,z,$;const i=h((g=r.modifiers)==null?void 0:g.width),n=h((x=r.modifiers)==null?void 0:x.height),o=Q(r.sizes),s=(_=r.densities)!=null&&_.trim()?V(r.densities.trim()):e.options.densities;J(s);const a=i&&n?n/i:0,c=[],u=[];if(Object.keys(o).length>=1){for(const l in o){const p=j(l,String(o[l]),n,a,e);if(p!==void 0){c.push({size:p.size,screenMaxWidth:p.screenMaxWidth,media:`(max-width: ${p.screenMaxWidth}px)`});for(const y of s)u.push({width:p._cWidth*y,src:A(e,t,r,p,y)})}}te(c)}else for(const l of s){const p=Object.keys(o)[0];let y=j(p,String(o[p]),n,a,e);y===void 0&&(y={size:"",screenMaxWidth:0,_cWidth:(z=r.modifiers)==null?void 0:z.width,_cHeight:($=r.modifiers)==null?void 0:$.height}),u.push({width:l,src:A(e,t,r,y,l)})}ie(u);const f=u[u.length-1],m=c.length?c.map(l=>`${l.media?l.media+" ":""}${l.size}`).join(", "):void 0,w=m?"w":"x",d=u.map(l=>`${l.src} ${l.width}${w}`).join(", ");return{sizes:m,srcset:d,src:f==null?void 0:f.src}}function j(e,t,r,i,n){const o=n.options.screens&&n.options.screens[e]||parseInt(e),s=t.endsWith("vw");if(!s&&/^\d+$/.test(t)&&(t=t+"px"),!s&&!t.endsWith("px"))return;let a=parseInt(t);if(!o||!a)return;s&&(a=Math.round(a/100*o));const c=i?Math.round(a*i):r;return{size:t,screenMaxWidth:o,_cWidth:a,_cHeight:c}}function A(e,t,r,i,n){return e.$img(t,{...r.modifiers,width:i._cWidth?i._cWidth*n:void 0,height:i._cHeight?i._cHeight*n:void 0},r)}function te(e){var r;e.sort((i,n)=>i.screenMaxWidth-n.screenMaxWidth);let t=null;for(let i=e.length-1;i>=0;i--){const n=e[i];n.media===t&&e.splice(i,1),t=n.media}for(let i=0;ir.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 re=b({fill:"resize",inside:"contain",outside:"contain",cover:"cover",contain:"inside",missingValue:"cover"}),ne=q({keyMap:{format:"output",quality:"quality",background:"background",focus:"focus",zoom:"zoom"},valueMap:{format(e){return e==="jpg"?"jpeg":e},background(e){return e.startsWith("#")?e.replace("#",""):e},focus:{auto:"auto",faces:"faces",north:"50px0p",northEast:"100px0p",northWest:"0px0p",west:"0px50p",southWest:"100px100p",south:"50px100p",southEast:"0px100p",east:"100px50p",center:"50px50p"}},joinWith:"/",formatter:(e,t)=>`${e}=${t}`}),oe=(e,{modifiers:t={},baseURL:r="/"}={})=>{const{width:i,height:n,fit:o,...s}=t;let a=i,c=n;(i||n)&&(o&&o==="outside"&&(a=Math.max(i||0,n||0),c=Math.max(i||0,n||0)),s[re(o)]=`${a||"-"}x${c||"-"}`);const u=ne(s);return{url:S(r,e+(u?"?twic=v1/"+u:""))}},se=Object.freeze(Object.defineProperty({__proto__:null,getImage:oe},Symbol.toStringTag,{value:"Module"})),ae=q({keyMap:{format:"f",fit:"fit",width:"w",height:"h",resize:"s",quality:"q",background:"b"},joinWith:"&",formatter:(e,t)=>M(e)+"_"+M(t)}),de=(e,{modifiers:t={},baseURL:r}={},i)=>{t.width&&t.height&&(t.resize=`${t.width}x${t.height}`,delete t.width,delete t.height);const n=ae(t)||"_";return r||(r=S(i.options.nuxt.baseURL,"/_ipx")),{url:S(r,n,D(e))}},ce=!0,ue=!0,fe=Object.freeze(Object.defineProperty({__proto__:null,getImage:de,supportsAlias:ue,validateDomains:ce},Symbol.toStringTag,{value:"Module"})),k={screens:{xs:320,sm:640,md:768,lg:1024,xl:1280,xxl:1536,"2xl":1536},presets:{},provider:"ipxStatic",domains:[],alias:{},densities:[1,2],format:["webp"]};k.providers={twicpics:{provider:se,defaults:{}},ipxStatic:{provider:fe,defaults:{}}};const H=()=>{const e=U(),t=P();return t.$img||t._img||(t._img=X({...k,nuxt:{baseURL:e.app.baseURL}}))};function le(e){var t;(t=performance==null?void 0:performance.mark)==null||t.call(performance,"mark_feature_usage",{detail:{feature:e}})}const ge={src:{type:String,required:!0},format:{type:String,default:void 0},quality:{type:[Number,String],default:void 0},background:{type:String,default:void 0},fit:{type:String,default:void 0},modifiers:{type:Object,default:void 0},preset:{type:String,default:void 0},provider:{type:String,default:void 0},sizes:{type:[Object,String],default:void 0},densities:{type:String,default:void 0},preload:{type:Boolean,default:void 0},width:{type:[String,Number],default:void 0},height:{type:[String,Number],default:void 0},alt:{type:String,default:void 0},referrerpolicy:{type:String,default:void 0},usemap:{type:String,default:void 0},longdesc:{type:String,default:void 0},ismap:{type:Boolean,default:void 0},loading:{type:String,default:void 0,validator:e=>["lazy","eager"].includes(e)},crossorigin:{type:[Boolean,String],default:void 0,validator:e=>["anonymous","use-credentials","",!0,!1].includes(e)},decoding:{type:String,default:void 0,validator:e=>["async","auto","sync"].includes(e)},nonce:{type:[String],default:void 0}},he=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=H(),n=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:n}},me={...ge,placeholder:{type:[Boolean,String,Number,Array],default:void 0}},ve=L({name:"NuxtImg",props:me,emits:["load","error"],setup:(e,t)=>{const r=H(),i=he(e),n=I(!1),o=v(()=>r.getSizes(e.src,{...i.options.value,sizes:e.sizes,densities:e.densities,modifiers:{...i.modifiers.value,width:h(e.width),height:h(e.height)}})),s=v(()=>{const d={...i.attrs.value,"data-nuxt-img":""};return(!e.placeholder||n.value)&&(d.sizes=o.value.sizes,d.srcset=o.value.srcset),d}),a=v(()=>{let d=e.placeholder;if(d===""&&(d=!0),!d||n.value)return!1;if(typeof d=="string")return d;const g=Array.isArray(d)?d:typeof d=="number"?[d,d]:[10,10];return r(e.src,{...i.modifiers.value,width:g[0],height:g[1],quality:g[2]||50,blur:g[3]||3},i.options.value)}),c=v(()=>e.sizes?o.value.src:r(e.src,i.modifiers.value,i.options.value)),u=v(()=>a.value?a.value:c.value);if(e.preload){const d=Object.values(o.value).every(g=>g);B({link:[{rel:"preload",as:"image",nonce:e.nonce,...d?{href:o.value.src,imagesizes:o.value.sizes,imagesrcset:o.value.srcset}:{href:u.value}}]})}const f=I(),w=P().isHydrating;return F(()=>{if(a.value){const d=new Image;d.src=c.value,e.sizes&&(d.sizes=o.value.sizes||"",d.srcset=o.value.srcset),d.onload=g=>{n.value=!0,t.emit("load",g)},le("nuxt-image");return}f.value&&(f.value.complete&&w&&(f.value.getAttribute("data-error")?t.emit("error",new Event("error")):t.emit("load",new Event("load"))),f.value.onload=d=>{t.emit("load",d)},f.value.onerror=d=>{t.emit("error",d)})}),()=>G("img",{ref:f,src:u.value,...s.value,...t.attrs})}});export{ve as _};