2 lines
1.8 KiB
JavaScript
2 lines
1.8 KiB
JavaScript
import{b,g as S,_ as h,u as N,aX as P,f as $,v as E,d as I,l as T}from"./base-C_0HtztH.js";import{A as p,j as u,o as i,c as w,l as B,C as t,n as m,X as k,g as C,i as V,L as j,Z as L,B as _,F as f,a3 as g,p as O,O as y,af as z}from"./vendor-vue-Da_zwKNU.js";const F=b({animated:Boolean,count:{type:Number,default:1},rows:{type:Number,default:3},loading:{type:Boolean,default:!0},throttle:{type:S([Number,Object])}}),R=b({variant:{type:String,values:["circle","rect","h1","h3","text","caption","p","image","button"],default:"text"}}),X=p({name:"ElSkeletonItem"}),A=p({...X,props:R,setup(l){const e=N("skeleton");return(r,s)=>(i(),u("div",{class:m([t(e).e("item"),t(e).e(r.variant)])},[r.variant==="image"?(i(),w(t(P),{key:0})):B("v-if",!0)],2))}});var c=h(A,[["__file","skeleton-item.vue"]]);const H=(l,e=0)=>{if(e===0)return l;const r=k(e)&&!!e.initVal,s=C(r);let o=null;const a=n=>{if(E(n)){s.value=l.value;return}o&&clearTimeout(o),o=setTimeout(()=>{s.value=l.value},n)},d=n=>{n==="leading"?$(e)?a(e):a(e.leading):k(e)?a(e.trailing):s.value=!1};return V(()=>d("leading")),j(()=>l.value,n=>{d(n?"leading":"trailing")}),s},M=p({name:"ElSkeleton"}),U=p({...M,props:F,setup(l,{expose:e}){const r=l,s=N("skeleton"),o=H(L(r,"loading"),r.throttle);return e({uiLoading:o}),(a,d)=>t(o)?(i(),u("div",y({key:0,class:[t(s).b(),t(s).is("animated",a.animated)]},a.$attrs),[(i(!0),u(f,null,g(a.count,n=>(i(),u(f,{key:n},[t(o)?_(a.$slots,"template",{key:n},()=>[O(c,{class:m(t(s).is("first")),variant:"p"},null,8,["class"]),(i(!0),u(f,null,g(a.rows,v=>(i(),w(c,{key:v,class:m([t(s).e("paragraph"),t(s).is("last",v===a.rows&&a.rows>1)]),variant:"p"},null,8,["class"]))),128))]):B("v-if",!0)],64))),128))],16)):_(a.$slots,"default",z(y({key:1},a.$attrs)))}});var Z=h(U,[["__file","skeleton.vue"]]);const G=I(Z,{SkeletonItem:c});T(c);export{G as E};
|