| 1 |
- import{a1 as U,c as E,aw as W,aj as w,i as te,aP as ae,p as le,d as D,a6 as ne,s as ue,j as re,aX as oe,a as se,e as ie}from"./index-Bwyyoo5R.js";import{d as G,D as V,u as q,j as I,i as ce,e as b,w as H,L as K,v as de,r as ve,x as Y,g as fe,y as me,k as he,p as ge,s as L,o as F,A as N,$ as T,C as X,c as pe,F as be,Z as ye,m as Ce,n as _e,b as ke}from"./vue-vendor-BdC0yijC.js";var Z=G({name:"IconCheck",render(){return V("svg",{"aria-hidden":"true",focusable:"false",viewBox:"0 0 1024 1024",width:"200",height:"200",fill:"currentColor"},[V("path",{d:"M877.44815445 206.10060629a64.72691371 64.72691371 0 0 0-95.14856334 4.01306852L380.73381888 685.46812814 235.22771741 533.48933518a64.72691371 64.72691371 0 0 0-92.43003222-1.03563036l-45.82665557 45.82665443a64.72691371 64.72691371 0 0 0-0.90617629 90.61767965l239.61903446 250.10479331a64.72691371 64.72691371 0 0 0 71.19960405 15.14609778 64.33855261 64.33855261 0 0 0 35.08198741-21.23042702l36.24707186-42.71976334 40.5190474-40.77795556-3.36579926-3.49525333 411.40426297-486.74638962a64.72691371 64.72691371 0 0 0-3.88361443-87.64024149l-45.3088404-45.43829334z","p-id":"840"},null)])}});const ee=Symbol("ArcoCheckboxGroup");var R=G({name:"Checkbox",components:{IconCheck:Z,IconHover:U},props:{modelValue:{type:[Boolean,Array],default:void 0},defaultChecked:{type:Boolean,default:!1},value:{type:[String,Number,Boolean]},disabled:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},uninjectGroupContext:{type:Boolean,default:!1}},emits:{"update:modelValue":e=>!0,change:(e,u)=>!0},setup(e,{emit:u,slots:l}){const{disabled:x,modelValue:_}=q(e),f=E("checkbox"),o=I(),a=e.uninjectGroupContext?void 0:ce(ee,void 0),s=(a==null?void 0:a.name)==="ArcoCheckboxGroup",{mergedDisabled:y,eventHandlers:i}=W({disabled:x}),S=I(e.defaultChecked),k=b(()=>{var r;return s?a==null?void 0:a.computedValue:(r=e.modelValue)!=null?r:S.value}),h=b(()=>{var r;return w(k.value)?k.value.includes((r=e.value)!=null?r:!0):k.value}),n=b(()=>(a==null?void 0:a.disabled)||(y==null?void 0:y.value)||!h.value&&(a==null?void 0:a.isMaxed)),g=r=>{r.stopPropagation()},z=r=>{var v,c,t,p;const{checked:m}=r.target;let d=m;if(w(k.value)){const C=new Set(k.value);m?C.add((v=e.value)!=null?v:!0):C.delete((c=e.value)!=null?c:!0),d=Array.from(C)}S.value=m,s&&w(d)?a==null||a.handleChange(d,r):(u("update:modelValue",d),u("change",d,r),(p=(t=i.value)==null?void 0:t.onChange)==null||p.call(t,r)),K(()=>{o.value&&o.value.checked!==h.value&&(o.value.checked=h.value)})},P=b(()=>[f,{[`${f}-checked`]:h.value,[`${f}-indeterminate`]:e.indeterminate,[`${f}-disabled`]:n.value}]),B=r=>{var v,c;(c=(v=i.value)==null?void 0:v.onFocus)==null||c.call(v,r)},$=r=>{var v,c;(c=(v=i.value)==null?void 0:v.onBlur)==null||c.call(v,r)};return H(_,r=>{(te(r)||ae(r))&&(S.value=!1)}),H(k,r=>{var v;let c;w(r)?c=r.includes((v=e.value)!=null?v:!0):c=r,S.value!==c&&(S.value=c),o.value&&o.value.checked!==c&&(o.value.checked=c)}),()=>{var r,v,c,t;return V("label",{"aria-disabled":n.value,class:P.value},[V("input",{ref:o,type:"checkbox",checked:h.value,value:e.value,class:`${f}-target`,disabled:n.value,onClick:g,onChange:z,onFocus:B,onBlur:$},null),(t=(c=(v=l.checkbox)!=null?v:(r=a==null?void 0:a.slots)==null?void 0:r.checkbox)==null?void 0:c({checked:h.value,disabled:n.value}))!=null?t:V(U,{class:`${f}-icon-hover`,disabled:n.value||h.value},{default:()=>[V("div",{class:`${f}-icon`},[h.value&&V(Z,{class:`${f}-icon-check`},null)])]}),l.default&&V("span",{class:`${f}-label`},[l.default()])])}}}),M=G({name:"CheckboxGroup",props:{modelValue:{type:Array,default:void 0},defaultValue:{type:Array,default:()=>[]},max:{type:Number},options:{type:Array},direction:{type:String,default:"horizontal"},disabled:{type:Boolean,default:!1}},emits:{"update:modelValue":e=>!0,change:(e,u)=>!0},setup(e,{emit:u,slots:l}){const{disabled:x}=q(e),_=E("checkbox-group"),{mergedDisabled:f,eventHandlers:o}=W({disabled:x}),a=I(e.defaultValue),s=b(()=>w(e.modelValue)?e.modelValue:a.value),y=b(()=>e.max===void 0?!1:s.value.length>=e.max),i=b(()=>{var n;return((n=e.options)!=null?n:[]).map(g=>le(g)||D(g)?{label:g,value:g}:g)});de(ee,ve({name:"ArcoCheckboxGroup",computedValue:s,disabled:f,isMaxed:y,slots:l,handleChange:(n,g)=>{var z,P;a.value=n,u("update:modelValue",n),u("change",n,g),(P=(z=o.value)==null?void 0:z.onChange)==null||P.call(z,g)}}));const k=b(()=>[_,`${_}-direction-${e.direction}`]);H(()=>e.modelValue,n=>{w(n)?a.value=[...n]:a.value=[]});const h=()=>i.value.map(n=>{const g=s.value.includes(n.value);return V(R,{key:n.value,value:n.value,disabled:n.disabled||!g&&y.value,indeterminate:n.indeterminate,modelValue:g},{default:()=>[l.label?l.label({data:n}):ne(n.label)?n.label():n.label]})});return()=>{var n;return V("span",{class:k.value},[i.value.length>0?h():(n=l.default)==null?void 0:n.call(l)])}}});const je=Object.assign(R,{Group:M,install:(e,u)=>{ue(e,u);const l=re(u);e.component(l+R.name,R),e.component(l+M.name,M)}}),Se=({dataKeys:e,contentRef:u,fixedSize:l,estimatedSize:x,buffer:_})=>{const f=I(0),o=new Map,a=b(()=>e.value.length),s=I(0),y=b(()=>{const t=s.value+_.value*3;return t>a.value?a.value:t}),i=b(()=>{const t=a.value-_.value*3;return t<0?0:t}),S=t=>{t<0?s.value=0:t>i.value?s.value=i.value:s.value=t},k=I(l.value),h=b(()=>x.value!==30?x.value:f.value||x.value),n=(t,p)=>{o.set(t,p)},g=t=>{var p;if(k.value)return h.value;const m=e.value[t];return(p=o.get(m))!=null?p:h.value},z=t=>o.has(t);Y(()=>{const t=Array.from(o.values()).reduce((p,m)=>p+m,0);t>0&&(f.value=t/o.size)});const P=t=>k.value?h.value*t:B(0,t),B=(t,p)=>{let m=0;for(let d=t;d<p;d++)m+=g(d);return m},$=b(()=>k.value?h.value*s.value:B(0,s.value)),r=t=>{const p=t>=$.value;let m=Math.abs(t-$.value);const d=p?s.value:s.value-1;let C=0;for(;m>0;)m-=g(d+C),p?C++:C--;return C},v=t=>{const p=r(t),m=s.value+p-_.value;return m<0?0:m>i.value?i.value:m},c=b(()=>k.value?h.value*(a.value-y.value):B(y.value,a.value));return{frontPadding:$,behindPadding:c,start:s,end:y,getStartByScroll:v,setItemSize:n,hasItemSize:z,setStart:S,getScrollOffset:P}};var xe=G({name:"VirtualListItem",props:{hasItemSize:{type:Function,required:!0},setItemSize:{type:Function,required:!0}},setup(e,{slots:u}){var l;const x=(l=fe())==null?void 0:l.vnode.key,_=I(),f=()=>{var o,a,s,y;const i=(a=(o=_.value)==null?void 0:o.$el)!=null?a:_.value,S=(y=(s=i==null?void 0:i.getBoundingClientRect)==null?void 0:s.call(i).height)!=null?y:i==null?void 0:i.offsetHeight;S&&e.setItemSize(x,S)};return Y(()=>f()),me(()=>f()),()=>{var o;const a=oe((o=u.default)==null?void 0:o.call(u));return a?he(a,{ref:_},!0):null}}}),ze=Object.defineProperty,J=Object.getOwnPropertySymbols,Ve=Object.prototype.hasOwnProperty,Ie=Object.prototype.propertyIsEnumerable,Q=(e,u,l)=>u in e?ze(e,u,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[u]=l,Pe=(e,u)=>{for(var l in u||(u={}))Ve.call(u,l)&&Q(e,l,u[l]);if(J)for(var l of J(u))Ie.call(u,l)&&Q(e,l,u[l]);return e};const Be=G({name:"VirtualList",components:{VirtualListItem:xe},props:{height:{type:[Number,String],default:200},data:{type:Array,default:()=>[]},threshold:{type:Number,default:0},itemKey:{type:String,default:"key"},fixedSize:{type:Boolean,default:!1},estimatedSize:{type:Number,default:30},buffer:{type:Number,default:10},component:{type:[String,Object],default:"div"},listAttrs:{type:Object},contentAttrs:{type:Object},paddingPosition:{type:String,default:"content"}},emits:{scroll:e=>!0,reachBottom:e=>!0},setup(e,{emit:u}){const{data:l,itemKey:x,fixedSize:_,estimatedSize:f,buffer:o,height:a}=q(e),s=E("virtual-list"),y=b(()=>ie(e.component)?Pe({container:"div",list:"div",content:"div"},e.component):{container:e.component,list:"div",content:"div"}),i=I(),S=I(),k=b(()=>({height:D(a.value)?`${a.value}px`:a.value,overflow:"auto"})),h=b(()=>l.value.map((d,C)=>{var O;return(O=d[x.value])!=null?O:C})),{frontPadding:n,behindPadding:g,start:z,end:P,getStartByScroll:B,setItemSize:$,hasItemSize:r,setStart:v,getScrollOffset:c}=Se({dataKeys:h,contentRef:S,fixedSize:_,estimatedSize:f,buffer:o}),t=b(()=>e.threshold&&l.value.length<=e.threshold?l.value:l.value.slice(z.value,P.value)),p=d=>{const{scrollTop:C,scrollHeight:O,offsetHeight:A}=d.target,j=B(C);j!==z.value&&(v(j),K(()=>{m(C)})),u("scroll",d),Math.floor(O-(C+A))<=0&&u("reachBottom",d)},m=d=>{var C,O;if(i.value)if(D(d))i.value.scrollTop=d;else{const A=(O=d.index)!=null?O:h.value.indexOf((C=d.key)!=null?C:"");v(A-o.value),i.value.scrollTop=c(A),K(()=>{if(i.value){const j=c(A);j!==i.value.scrollTop&&(i.value.scrollTop=j)}})}};return{prefixCls:s,containerRef:i,contentRef:S,frontPadding:n,currentList:t,behindPadding:g,onScroll:p,setItemSize:$,hasItemSize:r,start:z,scrollTo:m,style:k,mergedComponent:y}}});function $e(e,u,l,x,_,f){const o=ge("VirtualListItem");return F(),L(T(e.mergedComponent.container),{ref:"containerRef",class:ke(e.prefixCls),style:_e(e.style),onScroll:e.onScroll},{default:N(()=>[(F(),L(T(e.mergedComponent.list),X(e.listAttrs,{style:e.paddingPosition==="list"?{paddingTop:`${e.frontPadding}px`,paddingBottom:`${e.behindPadding}px`}:{}}),{default:N(()=>[(F(),L(T(e.mergedComponent.content),X({ref:"contentRef"},e.contentAttrs,{style:e.paddingPosition==="content"?{paddingTop:`${e.frontPadding}px`,paddingBottom:`${e.behindPadding}px`}:{}}),{default:N(()=>[(F(!0),pe(be,null,ye(e.currentList,(a,s)=>{var y;return F(),L(o,{key:(y=a[e.itemKey])!=null?y:e.start+s,"has-item-size":e.hasItemSize,"set-item-size":e.setItemSize},{default:N(()=>[Ce(e.$slots,"item",{item:a,index:e.start+s})]),_:2},1032,["has-item-size","set-item-size"])}),128))]),_:3},16,["style"]))]),_:3},16,["style"]))]),_:3},8,["class","style","onScroll"])}var Fe=se(Be,[["render",$e]]);export{je as C,Fe as V,M as a};
|