var De=Object.defineProperty,Ee=Object.defineProperties;var qe=Object.getOwnPropertyDescriptors;var ve=Object.getOwnPropertySymbols;var ze=Object.prototype.hasOwnProperty,Me=Object.prototype.propertyIsEnumerable;var ke=(g,d,p)=>d in g?De(g,d,{enumerable:!0,configurable:!0,writable:!0,value:p}):g[d]=p,G=(g,d)=>{for(var p in d||(d={}))ze.call(d,p)&&ke(g,p,d[p]);if(ve)for(var p of ve(d))Me.call(d,p)&&ke(g,p,d[p]);return g},U=(g,d)=>Ee(g,qe(d));import{b as Se,a9 as Ve,c as v,m as T,a as me,ai as C,bw as ge,bj as Oe,d as $e,r as w,w as Y,ab as Pe,f as $,o as y,j as Ke,n as N,a2 as R,g as f,J as Q,h as k,aj as He,bx as Ne,G as fe,I as ye,by as Re,H as pe,L as E,M as q,bz as S,b9 as Te,bA as be,bf as _e,al as X,q as Ae,a3 as We,ac as je,e as J,ae as Ie,af as Ge,ag as Ue,aq as Je,bB as Ye,k as Ce,F as le,_ as we,a5 as Qe,i as Xe,an as de}from"./index-CZIX6ZiI.js";const Ze=U(G({},Se),{loading:v(!1),loadingColor:T("#4D80F0"),columnsHeight:me(217),valueKey:T("value"),labelKey:T("label"),immediateChange:v(!1),modelValue:{type:[String,Number,Boolean,Array,Array,Array],default:"",required:!0},columns:Ve(),columnChange:Function});function ae(g,d,p){let r=C(g)?g:[g];const t=new Set(g.map(ge));if(t.size!==1&&t.has("object"))throw Error("The columns are correct");return C(g[0])||(r=[r]),r.map(h=>h.map(n=>{if(!Oe(n))return{[d]:n,[p]:n};if(!n.hasOwnProperty(d)&&!n.hasOwnProperty(p))throw Error("Can't find valueKey and labelKey in columns");return n.hasOwnProperty(p)||(n[p]=n[d]),n.hasOwnProperty(d)||(n[d]=n[p]),n}))}const xe={name:"wd-picker-view",options:{virtualHost:!0,addGlobalClass:!0,styleIsolation:"shared"}},el=$e(U(G({},xe),{props:Ze,emits:["change","pickstart","pickend","update:modelValue"],setup(g,{expose:d,emit:p}){const r=g,t=p,i=w([]),h=w(35),n=w([]);Y([()=>r.modelValue,()=>r.columns],(l,a)=>{_e(a[1],l[1])||(C(l[1])&&l[1].length>0?i.value=ae(l[1],r.valueKey,r.labelKey):(i.value=[],n.value=[])),X(l[0])&&A(l[0])},{deep:!0,immediate:!0});const{proxy:z}=Pe();function A(l){if(i.value.length===0){n.value=[];return}(l===""||!X(l)||C(l)&&l.length===0)&&(l=i.value.map(s=>s[0][r.valueKey])),ge(l),l=C(l)?l:[l],l=l.slice(0,i.value.length);let a=S(n.value);l.forEach((s,o)=>{let m=i.value[o].findIndex(_=>_[r.valueKey].toString()===s.toString());m=m===-1?0:m,a=b(o,m,a)}),n.value=a.slice(0,l.length)}function K(l){let a=S(l);return l.forEach((s,o)=>{s=be(s,0,i.value[o].length-1),a=b(o,s,a)}),a}function b(l,a,s){const o=i.value[l];if(!o||!o[a])throw Error(`The value to select with Col:${l} Row:${a} is incorrect`);const m=S(s);if(m[l]=a,o[a].disabled){const _=o.slice(0,a).reverse().findIndex(B=>!B.disabled),V=o.slice(a+1).findIndex(B=>!B.disabled);_!==-1?m[l]=a-1-_:V!==-1?m[l]=a+1+V:m[l]===void 0&&(m[l]=0)}return m}function M({detail:{value:l}}){l=l.map(s=>Number(s||0));const a=W(l);n.value=S(l),Te(()=>{n.value=K(l),r.columnChange?r.columnChange.length<4?(r.columnChange(z.$.exposed,F(),a||0,()=>{}),D(a||0)):r.columnChange(z.$.exposed,F(),a||0,()=>{D(a||0)}):D(a||0)})}function L(l,a){return!l||!a?-1:l.findIndex((o,m)=>o!==a[m])}function W(l){l=l.slice(0,i.value.length);const a=S(n.value);let s=S(n.value);l.forEach((_,V)=>{_=be(_,0,i.value[V].length-1),_!==a[V]&&(s=b(V,_,s))});const o=L(s,a);if(o===-1)return;const m=s[o];return s.length===1?m:o}function D(l){const a=P();_e(a,r.modelValue)||(t("update:modelValue",a),setTimeout(()=>{t("change",{picker:z.$.exposed,value:a,index:l})},0))}function F(){const l=n.value.map((a,s)=>i.value[s][a]);return l.length===1?l[0]:l}function P(){const{valueKey:l}=r,a=n.value.map((s,o)=>i.value[o][s][l]);return a.length===1?a[0]:a}function Z(){const{labelKey:l}=r;return n.value.map((a,s)=>i.value[s][a][l])}function te(l){return n.value[l]}function se(l){return i.value[l]}function O(l,a,s=0){i.value[l]=ae(a,r.valueKey,r.labelKey).reduce((o,m)=>o.concat(m),[]),n.value=b(l,s,n.value)}function ne(){return S(i.value)}function oe(){return n.value}function ie(l){C(l)&&l.length&&(i.value=ae(l,r.valueKey,r.labelKey))}function x(){t("pickstart")}function j(){t("pickend")}return d({getSelects:F,getValues:P,setColumnData:O,getColumnsData:ne,getColumnData:se,getColumnIndex:te,getLabels:Z,getSelectedIndex:oe,resetColumns:ie}),(l,a)=>{const s=Ke,o=Re,m=Ne;return y(),$(s,{class:R(`wd-picker-view ${l.customClass}`),style:N(l.customStyle)},{default:f(()=>[l.loading?(y(),$(s,{key:0,class:"wd-picker-view__loading"},{default:f(()=>[k(He,{color:l.loadingColor},null,8,["color"])]),_:1})):Q("",!0),k(s,{style:N(`height: ${l.columnsHeight-20}px;`)},{default:f(()=>[k(m,{"mask-class":"wd-picker-view__mask","indicator-class":"wd-picker-view__roller","indicator-style":`height: ${h.value}px;`,style:N(`height: ${l.columnsHeight-20}px;`),value:n.value,"immediate-change":l.immediateChange,onChange:M,onPickstart:x,onPickend:j},{default:f(()=>[(y(!0),fe(pe,null,ye(i.value,(_,V)=>(y(),$(o,{key:V,class:"wd-picker-view-column"},{default:f(()=>[(y(!0),fe(pe,null,ye(_,(B,I)=>(y(),$(s,{key:I,class:R(`wd-picker-view-column__item ${B.disabled?"wd-picker-view-column__item--disabled":""} ${n.value[V]==I?"wd-picker-view-column__item--active":""}`),style:N(`line-height: ${h.value}px;`)},{default:f(()=>[E(q(B[l.labelKey]),1)]),_:2},1032,["class","style"]))),128))]),_:2},1024))),128))]),_:1},8,["indicator-style","style","value","immediate-change"])]),_:1},8,["style"])]),_:1},8,["class","style"])}}})),ll=Ae(el,[["__scopeId","data-v-e413638e"]]),al=U(G({},Se),{customLabelClass:T(""),customValueClass:T(""),customViewClass:T(""),label:String,placeholder:String,disabled:v(!1),readonly:v(!1),loading:v(!1),loadingColor:T("#4D80F0"),title:String,cancelButtonText:String,confirmButtonText:String,required:v(!1),size:String,labelWidth:String,useDefaultSlot:v(!1),useLabelSlot:v(!1),error:v(!1),alignRight:v(!1),beforeConfirm:Function,closeOnClickModal:v(!0),safeAreaInsetBottom:v(!0),ellipsis:v(!1),columnsHeight:me(217),valueKey:T("value"),labelKey:T("label"),modelValue:{type:[String,Number,Array],default:""},columns:{type:Array,default:()=>[]},columnChange:Function,displayFormat:Function,zIndex:me(15),prop:String,rules:Ve(),immediateChange:v(!1),clearable:v(!1)}),tl={name:"wd-picker",options:{virtualHost:!0,addGlobalClass:!0,styleIsolation:"shared"}},sl=$e(U(G({},tl),{props:al,emits:["confirm","open","cancel","clear","update:modelValue"],setup(g,{expose:d,emit:p}){const{translate:r}=We("picker"),t=g,i=p,h=w(null),n=je(),z=w(!1),A=w(!1),K=w(""),b=w(""),M=w([]),L=w([]),W=w(!1),D=w(!1),F=J(()=>t.loading||z.value);Y(()=>t.displayFormat,e=>{e&&de(e),h.value&&h.value.getSelectedIndex().length!==0&&O(t.modelValue)},{immediate:!0,deep:!0}),Y(()=>t.modelValue,e=>{b.value=e,O(e)},{deep:!0,immediate:!0}),Y(()=>t.columns,e=>{M.value=S(e),L.value=S(e),e.length===0?(b.value=C(t.modelValue)?[]:"",K.value=""):O(t.modelValue)},{deep:!0,immediate:!0}),Y(()=>t.columnChange,e=>{e&&de(e)},{deep:!0,immediate:!0});const{parent:P}=Ie(Ge),Z=J(()=>P&&t.prop&&P.errorMessages&&P.errorMessages[t.prop]?P.errorMessages[t.prop]:""),te=J(()=>{let e=!1;if(P&&P.props.rules){const c=P.props.rules;for(const u in c)Object.prototype.hasOwnProperty.call(c,u)&&u===t.prop&&Array.isArray(c[u])&&(e=c[u].some(H=>H.required))}return t.required||t.rules.some(c=>c.required)||e}),{proxy:se}=Pe();Ue(()=>{O(t.modelValue)}),Je(()=>{M.value=S(t.columns),L.value=S(t.columns)});function O(e){C(e)&&e.length>0||X(e)&&!C(e)&&e!==""?h.value?Te(()=>{o(h.value.getSelects())}):o(ne(e)):K.value=""}function ne(e){const c=ae(t.columns,t.valueKey,t.labelKey);if(t.columns.length===0||e===""||!X(e)||C(e)&&e.length===0)return;const u=ge(e);if(["string","number","boolean","array"].indexOf(u)===-1)return[];e=C(e)?e:[e],e=e.slice(0,c.length),e.length===0&&(e=c.map(()=>0));let he=[];e.forEach((ue,ce)=>{let ee=c[ce].findIndex(Le=>Le[t.valueKey].toString()===ue.toString());ee=ee===-1?0:ee,he.push(ee)});const re=he.map((ue,ce)=>c[ce][ue]);return re.length===1?re[0]:re}function oe(){x()}function ie(){j()}function x(){t.disabled||t.readonly||(i("open"),A.value=!0,b.value=t.modelValue,M.value=L.value)}function j(){A.value=!1,i("cancel");let e=setTimeout(()=>{clearTimeout(e),X(h.value)&&h.value.resetColumns(L.value)},300)}function l(){if(F.value)return;if(W.value){D.value=!0;return}const{beforeConfirm:e}=t;e&&de(e)?e(b.value,c=>{c&&a()},se.$.exposed):a()}function a(){if(F.value||t.disabled){A.value=!1;return}const e=h.value.getSelects(),c=h.value.getValues(),u=h.value.getColumnsData();A.value=!1,L.value=S(u),i("update:modelValue",c),o(e),i("confirm",{value:c,selectedItems:e})}function s({value:e}){b.value=e}function o(e){if(C(e)&&!e.length||!e)return;const{valueKey:c,labelKey:u}=t;K.value=(t.displayFormat||Ye)(e,{valueKey:c,labelKey:u})}function m(){}function _(){W.value=!0}function V(){W.value=!1,D.value&&(D.value=!1,l())}function B(e){z.value=e}const I=J(()=>t.clearable&&!t.disabled&&!t.readonly&&K.value.length);function Fe(){const e=C(b.value)?[]:"";i("update:modelValue",e),i("clear")}const Be=J(()=>!t.disabled&&!t.readonly&&!I.value);return d({close:ie,open:oe,setLoading:B}),(e,c)=>{const u=Ke;return y(),$(u,{class:R(`wd-picker ${e.disabled?"is-disabled":""} ${e.size?"is-"+e.size:""} ${le(n).border.value?"is-border":""} ${e.alignRight?"is-align-right":""} ${e.error?"is-error":""} ${e.customClass}`),style:N(e.customStyle)},{default:f(()=>[k(u,{class:"wd-picker__field",onClick:x},{default:f(()=>[e.useDefaultSlot?Ce(e.$slots,"default",{key:0},void 0,!0):(y(),$(u,{key:1,class:"wd-picker__cell"},{default:f(()=>[e.label||e.useLabelSlot?(y(),$(u,{key:0,class:R(`wd-picker__label ${e.customLabelClass} ${te.value?"is-required":""}`),style:N(e.labelWidth?"min-width:"+e.labelWidth+";max-width:"+e.labelWidth+";":"")},{default:f(()=>[e.label?(y(),fe(pe,{key:0},[E(q(e.label),1)],64)):Ce(e.$slots,"label",{key:1},void 0,!0)]),_:3},8,["class","style"])):Q("",!0),k(u,{class:"wd-picker__body"},{default:f(()=>[k(u,{class:"wd-picker__value-wraper"},{default:f(()=>[k(u,{class:R(`wd-picker__value ${e.ellipsis&&"is-ellipsis"} ${e.customValueClass} ${K.value?"":"wd-picker__placeholder"}`)},{default:f(()=>[E(q(K.value?K.value:e.placeholder||le(r)("placeholder")),1)]),_:1},8,["class"]),Be.value?(y(),$(we,{key:0,"custom-class":"wd-picker__arrow",name:"arrow-right"})):I.value?(y(),$(u,{key:1,onClick:Qe(Fe,["stop"])},{default:f(()=>[k(we,{"custom-class":"wd-picker__clear",name:"error-fill"})]),_:1})):Q("",!0)]),_:1}),Z.value?(y(),$(u,{key:0,class:"wd-picker__error-message"},{default:f(()=>[E(q(Z.value),1)]),_:1})):Q("",!0)]),_:1})]),_:3}))]),_:3}),k(Xe,{modelValue:A.value,"onUpdate:modelValue":c[1]||(c[1]=H=>A.value=H),position:"bottom","hide-when-close":!1,"close-on-click-modal":e.closeOnClickModal,"z-index":e.zIndex,"safe-area-inset-bottom":e.safeAreaInsetBottom,onClose:j,"custom-class":"wd-picker__popup"},{default:f(()=>[k(u,{class:"wd-picker__wraper"},{default:f(()=>[k(u,{class:"wd-picker__toolbar",onTouchmove:m},{default:f(()=>[k(u,{class:"wd-picker__action wd-picker__action--cancel",onClick:j},{default:f(()=>[E(q(e.cancelButtonText||le(r)("cancel")),1)]),_:1}),e.title?(y(),$(u,{key:0,class:"wd-picker__title"},{default:f(()=>[E(q(e.title),1)]),_:1})):Q("",!0),k(u,{class:R(`wd-picker__action ${F.value?"is-loading":""}`),onClick:l},{default:f(()=>[E(q(e.confirmButtonText||le(r)("done")),1)]),_:1},8,["class"])]),_:1}),k(ll,{ref_key:"pickerViewWd",ref:h,"custom-class":e.customViewClass,modelValue:b.value,"onUpdate:modelValue":c[0]||(c[0]=H=>b.value=H),columns:M.value,loading:F.value,"loading-color":e.loadingColor,"columns-height":e.columnsHeight,"value-key":e.valueKey,"label-key":e.labelKey,"immediate-change":e.immediateChange,onChange:s,onPickstart:_,onPickend:V,"column-change":e.columnChange},null,8,["custom-class","modelValue","columns","loading","loading-color","columns-height","value-key","label-key","immediate-change","column-change"])]),_:1})]),_:1},8,["modelValue","close-on-click-modal","z-index","safe-area-inset-bottom"])]),_:3},8,["class","style"])}}})),il=Ae(sl,[["__scopeId","data-v-d4c54cb0"]]);export{il as _};