"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("vue"),w=require("@antsoo-lib/icons"),P=require("../_util/classNames.js"),m=require("../_util/transition.js"),N=require("../config-provider/hooks/useConfigInject.js"),q=require("../locale/en_US.js"),i=require("../vc-image/src/Image.js"),s=require("./PreviewGroup.js"),I=require("./style/index.js"),r=n.defineComponent({name:"AImage",inheritAttrs:!1,props:i.imageProps(),setup(e,{slots:u,attrs:v}){const{prefixCls:o,rootPrefixCls:l,configProvider:f}=N.default("image",e),[d,g]=I.default(o),p=n.computed(()=>{const{preview:t}=e;if(t===!1)return t;const a=typeof t=="object"?t:{};return{icons:s.icons,...a,transitionName:m.getTransitionName(l.value,"zoom",a.transitionName),maskTransitionName:m.getTransitionName(l.value,"fade",a.maskTransitionName)}});return()=>{const t=f.locale?.value?.Image||q.default.Image,a=()=>n.createVNode("div",{class:`${o.value}-mask-info`},[n.createVNode(w.EyeOutlined,null,null),t?.preview]),{previewMask:c=u.previewMask||a}=e;return d(n.createVNode(i.default,{...v,...e,prefixCls:o.value,preview:p.value,rootClassName:P.default(e.rootClassName,g.value)},{...u,previewMask:typeof c=="function"?c:null}))}}});r.PreviewGroup=s.default;r.install=function(e){return e.component(r.name,r),e.component(r.PreviewGroup.name,r.PreviewGroup),e};exports.imageProps=i.imageProps;exports.ImagePreviewGroup=s.default;exports.default=r;
