| 1 |
- import{c as b,e as v,y as p,n as y,o as r,f as w,w as B,r as $,a as L,a6 as N,I as U,D as q}from"./index-dc0dbd8c.js";import{c as t,d as z,a as O}from"./index-87a02203.js";const[A,s]=b("loading"),E=Array(12).fill(null).map((e,o)=>t("i",{class:s("line",String(o+1))},null)),V=t("svg",{class:s("circular"),viewBox:"25 25 50 50"},[t("circle",{cx:"50",cy:"50",r:"20",fill:"none"},null)]),j={size:y,type:r("circular"),color:String,vertical:Boolean,textSize:y,textColor:String};var F=z({name:A,props:j,setup(e,{slots:o}){const a=O(()=>v({color:e.color},p(e.size))),u=()=>{const i=e.type==="spinner"?E:V;return t("span",{class:s("spinner",e.type),style:a.value},[o.icon?o.icon():i])},g=()=>{var i;if(o.default)return t("span",{class:s("text"),style:{fontSize:w(e.textSize),color:(i=e.textColor)!=null?i:e.color}},[o.default()])};return()=>{const{type:i,vertical:f}=e;return t("div",{class:s([i,{vertical:f}]),"aria-live":"polite","aria-busy":!0},[u(),g()])}}});const G=B(F),[H,c]=b("button"),J=v({},$,{tag:r("button"),text:String,icon:String,type:r("default"),size:r("normal"),color:String,block:Boolean,plain:Boolean,round:Boolean,square:Boolean,loading:Boolean,hairline:Boolean,disabled:Boolean,iconPrefix:String,nativeType:r("button"),loadingSize:y,loadingText:String,loadingType:String,iconPosition:r("left")});var K=z({name:H,props:J,emits:["click"],setup(e,{emit:o,slots:a}){const u=L(),g=()=>a.loading?a.loading():t(G,{size:e.loadingSize,type:e.loadingType,class:c("loading")},null),i=()=>{if(e.loading)return g();if(a.icon)return t("div",{class:c("icon")},[a.icon()]);if(e.icon)return t(U,{name:e.icon,class:c("icon"),classPrefix:e.iconPrefix},null)},f=()=>{let n;if(e.loading?n=e.loadingText:n=a.default?a.default():e.text,n)return t("span",{class:c("text")},[n])},P=()=>{const{color:n,plain:d}=e;if(n){const l={color:d?n:"white"};return d||(l.background=n),n.includes("gradient")?l.border=0:l.borderColor=n,l}},I=n=>{e.loading?q(n):e.disabled||(o("click",n),u())};return()=>{const{tag:n,type:d,size:l,block:k,round:T,plain:C,square:h,loading:D,disabled:x,hairline:S,nativeType:R,iconPosition:m}=e,_=[c([d,l,{plain:C,block:k,round:T,square:h,loading:D,disabled:x,hairline:S}]),{[N]:S}];return t(n,{type:R,class:_,style:P(),disabled:x,onClick:I},{default:()=>[t("div",{class:c("content")},[m==="left"&&i(),f(),m==="right"&&i()])]})}}});const W=B(K);export{W as B,G as L};
|