vexip-ui
Version:
A Vue 3 UI library, Highly customizability, full TypeScript, performance pretty good
3 lines (2 loc) • 876 B
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../components/spin/index.cjs");const i=require("vue"),u=require("@vexip-ui/utils"),c=require("../../components/spin/spin.vue2.cjs");function s(e,t){const o=u.isObject(t.value)?{...t.value}:{active:t.value};o.inner=!0;const n=i.createVNode(c,o,null,0,Object.keys(o)),r=getComputedStyle(e).position;e.__loading={spin:n,props:o,originPosition:r},r==="static"&&(e.style.position="relative"),i.render(n,e)}const a={mounted(e,t){i.nextTick(()=>s(e,t))},updated(e,t){i.nextTick(()=>{if(!e.__loading){s(e,t);return}const o=u.isObject(t.value)?t.value:{active:t.value},n=e.__loading.spin.component;n&&(Object.keys(o).forEach(r=>{n.props[r]=o[r]}),n.props.inner=!0)})},beforeUnmount(e){e.__loading&&(i.render(null,e),delete e.__loading)}};exports.vLoading=a;
//# sourceMappingURL=index.cjs.map