import{ah as V,ai as k,b8 as X,ac as ee,au as ae,ab as le,cy as se,cz as ie,ae as p,cA as te,af as oe,cB as ne,cC as re,ad as T,cD as ce,cE as ue,aK as de}from"./index-CKIhG1T4.js";import{C as _,a6 as ve,f as n,a as u,w as fe,v as pe,D as r,E as d,Q as z,F as $,_ as ye,u as a,W as E,K as j,R as D,Y as y,T as me,U as ge,n as we,z as he}from"./spreadSheetsDesignerVue-MRUT1X_l.js";const be=V({hideOnClickModal:Boolean,src:{type:String,default:""},fit:{type:String,values:["","contain","cover","fill","none","scale-down"],default:""},loading:{type:String,values:["eager","lazy"]},lazy:Boolean,scrollContainer:{type:k([String,Object])},previewSrcList:{type:k(Array),default:()=>X([])},previewTeleported:Boolean,zIndex:{type:Number},initialIndex:{type:Number,default:0},infinite:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},zoomRate:{type:Number,default:1.2},minScale:{type:Number,default:.2},maxScale:{type:Number,default:7},crossorigin:{type:k(String)}}),xe={load:t=>t instanceof Event,error:t=>t instanceof Event,switch:t=>ee(t),close:()=>!0,show:()=>!0},Se=_({name:"ElImage",inheritAttrs:!1}),ke=de(oe(_({...Se,props:be,emits:xe,setup(t,{emit:v}){const l=t;let C="";const{t:M}=ae(),o=le("image"),R=ve(),L=n(()=>se(Object.entries(R).filter(([e])=>/^(data-|on[A-Z])/i.test(e)||["id","style"].includes(e)))),Y=ie({excludeListeners:!0,excludeKeys:n(()=>Object.keys(L.value))}),g=u(),f=u(!1),c=u(!0),w=u(!1),m=u(),i=u(),F=p&&"loading"in HTMLImageElement.prototype;let h,b;const P=n(()=>[o.e("inner"),x.value&&o.e("preview"),c.value&&o.is("loading")]),q=n(()=>{const{fit:e}=l;return p&&e?{objectFit:e}:{}}),x=n(()=>{const{previewSrcList:e}=l;return Array.isArray(e)&&e.length>0}),H=n(()=>{const{previewSrcList:e,initialIndex:s}=l;let N=s;return s>e.length-1&&(N=0),N}),O=n(()=>l.loading!=="eager"&&(!F&&l.loading==="lazy"||l.lazy)),S=()=>{p&&(c.value=!0,f.value=!1,g.value=l.src)};function Q(e){c.value=!1,f.value=!1,v("load",e)}function U(e){c.value=!1,f.value=!0,v("error",e)}function A(){ce(m.value,i.value)&&(S(),K())}const B=ue(A,200,!0);async function I(){var e;if(!p)return;await we();const{scrollContainer:s}=l;ne(s)?i.value=s:he(s)&&s!==""?i.value=(e=document.querySelector(s))!=null?e:void 0:m.value&&(i.value=re(m.value)),i.value&&(h=T(i,"scroll",B),setTimeout(()=>A(),100))}function K(){p&&i.value&&B&&(h==null||h(),i.value=void 0)}function W(e){if(e.ctrlKey)return e.deltaY<0||e.deltaY>0?(e.preventDefault(),!1):void 0}function Z(){x.value&&(b=T("wheel",W,{passive:!1}),C=document.body.style.overflow,document.body.style.overflow="hidden",w.value=!0,v("show"))}function G(){b==null||b(),document.body.style.overflow=C,w.value=!1,v("close")}function J(e){v("switch",e)}return fe(()=>l.src,()=>{O.value?(c.value=!0,f.value=!1,K(),I()):S()}),pe(()=>{O.value?I():S()}),(e,s)=>(r(),d("div",D({ref_key:"container",ref:m},a(L),{class:[a(o).b(),e.$attrs.class]}),[f.value?z(e.$slots,"error",{key:0},()=>[$("div",{class:E(a(o).e("error"))},ye(a(M)("el.image.error")),3)]):(r(),d(j,{key:1},[g.value!==void 0?(r(),d("img",D({key:0},a(Y),{src:g.value,loading:e.loading,style:a(q),class:a(P),crossorigin:e.crossorigin,onClick:Z,onLoad:Q,onError:U}),null,16,["src","loading","crossorigin"])):y("v-if",!0),c.value?(r(),d("div",{key:1,class:E(a(o).e("wrapper"))},[z(e.$slots,"placeholder",{},()=>[$("div",{class:E(a(o).e("placeholder"))},null,2)])],2)):y("v-if",!0)],64)),a(x)?(r(),d(j,{key:2},[w.value?(r(),me(a(te),{key:0,"z-index":e.zIndex,"initial-index":a(H),infinite:e.infinite,"zoom-rate":e.zoomRate,"min-scale":e.minScale,"max-scale":e.maxScale,"url-list":e.previewSrcList,crossorigin:e.crossorigin,"hide-on-click-modal":e.hideOnClickModal,teleported:e.previewTeleported,"close-on-press-escape":e.closeOnPressEscape,onClose:G,onSwitch:J},{default:ge(()=>[e.$slots.viewer?(r(),d("div",{key:0},[z(e.$slots,"viewer")])):y("v-if",!0)]),_:3},8,["z-index","initial-index","infinite","zoom-rate","min-scale","max-scale","url-list","crossorigin","hide-on-click-modal","teleported","close-on-press-escape"])):y("v-if",!0)],64)):y("v-if",!0)],16))}}),[["__file","image.vue"]]));export{ke as E};