ll-package
Version:
2 lines (1 loc) • 1.14 kB
JavaScript
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue"),n=require("../../../@ant-design/icons-vue/es/icons/LoadingOutlined.js");require("../_util/transition.js");const o=e=>{e&&(e.style.width="0px",e.style.opacity="0",e.style.transform="scale(0)")},i=e=>{t.nextTick(()=>{e&&(e.style.width=`${e.scrollWidth}px`,e.style.opacity="1",e.style.transform="scale(1)")})},s=e=>{e&&e.style&&(e.style.width=null,e.style.opacity=null,e.style.transform=null)},f=t.defineComponent({compatConfig:{MODE:3},name:"LoadingIcon",props:{prefixCls:String,loading:[Boolean,Object],existIcon:Boolean},setup(e){return()=>{const{existIcon:a,prefixCls:l,loading:r}=e;if(a)return t.createVNode("span",{class:`${l}-loading-icon`},[t.createVNode(n.default,null,null)]);const c=!!r;return t.createVNode(t.Transition,{name:`${l}-loading-icon-motion`,onBeforeEnter:o,onEnter:i,onAfterEnter:s,onBeforeLeave:i,onLeave:u=>{setTimeout(()=>{o(u)})},onAfterLeave:s},{default:()=>[c?t.createVNode("span",{class:`${l}-loading-icon`},[t.createVNode(n.default,null,null)]):null]})}}});exports.default=f;
;