import{e as de,C as Ee,R as oe,U as X,f as J,T as xe,k as ge,V as nt,W as Je,l as Ue,X as at,Y as st,E as we,d as Xe,G as Oe,Z as rt,$ as Ye,w as Be,a0 as ie,O as ut,a1 as Z,a2 as me,a3 as it,a4 as dt,P as pt,a5 as ct,i as ye,a6 as ft,a7 as mt,a8 as vt,a9 as bt,aa as gt,ab as De,ac as yt,ad as _t,ae as Vt,af as Nt,ag as ht,c as Ze,b as Qe,ah as Ke,ai as H,z as Ie,_ as Et}from"./index.1762932289438.js";import{E as wt}from"./overlay.1762932289438.js";import{E as St,a as Ct}from"./form-item.1762932289438.js";/* empty css */import{u as j,d as $t,E as Fe,r as kt,a as _e}from"./popper.1762932289438.js";import{E as It,a as Tt}from"./table-column.1762932289438.js";import{d as At,a as Ve,N as Ot,k as Y,c as L,B as Pt,r as $,O as et,s as Se,G as K,o as y,H as r,q as V,u as e,M as We,E as Q,J as s,n as Pe,a9 as le,K as be,aj as tt,m as z,l as R,F as ve,ab as Me,V as F,L as Ne,b as Te,i as Mt,p as ze,R as lt,t as he,U as Ut,P as qe,D as x,z as Bt,A as Ge,e as Ft}from"./vue.1762932289438.js";import"./tag.1762932289438.js";import"./select.1762932289438.js";import"./text.1762932289438.js";import{E as Rt}from"./tree-select.1762932289438.js";import{E as Lt,a as Dt}from"./radio.1762932289438.js";import{l as Kt,a as Wt,u as zt,d as qt}from"./menu.17629322894382.js";import{v as He}from"./index.17629322894389.js";import"./echarts.1762932289438.js";const Gt=de({...xe,valueKey:{type:String,default:"value"},modelValue:{type:[String,Number],default:""},debounce:{type:Number,default:300},placement:{type:J(String),values:["top","top-start","top-end","bottom","bottom-start","bottom-end"],default:"bottom-start"},fetchSuggestions:{type:J([Function,Array]),default:Ot},popperClass:{type:String,default:""},triggerOnFocus:{type:Boolean,default:!0},selectWhenUnmatched:Boolean,hideLoading:Boolean,teleported:j.teleported,appendTo:j.appendTo,highlightFirstItem:Boolean,fitInputWidth:Boolean}),Ht={[X]:u=>Ve(u),[oe]:u=>Ve(u),[Ee]:u=>Ve(u),focus:u=>u instanceof FocusEvent,blur:u=>u instanceof FocusEvent,clear:()=>!0,select:u=>At(u)},ot="ElAutocomplete",jt=Y({name:ot,inheritAttrs:!1}),xt=Y({...jt,props:Gt,emits:Ht,setup(u,{expose:h,emit:p}){const o=u,S=L(()=>nt(o,Object.keys(xe))),n=Pt(),v=Je(),c=Ue("autocomplete"),g=$(),B=$(),O=$(),C=$();let q=!1,_=!1;const f=$([]),d=$(-1),t=$(""),w=$(!1),P=$(!1),M=$(!1),G=at(),N=L(()=>n.style),k=L(()=>(f.value.length>0||M.value)&&w.value),A=L(()=>!o.hideLoading&&M.value),pe=L(()=>g.value?Array.from(g.value.$el.querySelectorAll("input")):[]),ee=()=>{k.value&&(t.value=`${g.value.$el.offsetWidth}px`)},ce=()=>{d.value=-1},ne=async a=>{if(P.value)return;const T=W=>{M.value=!1,!P.value&&(Te(W)?(f.value=W,d.value=o.highlightFirstItem?0:-1):Ye(ot,"autocomplete suggestions must be an array"))};if(M.value=!0,Te(o.fetchSuggestions))T(o.fetchSuggestions);else{const W=await o.fetchSuggestions(a,T);Te(W)&&T(W)}},ae=$t(ne,o.debounce),fe=a=>{const T=!!a;if(p(oe,a),p(X,a),P.value=!1,w.value||(w.value=T),!o.triggerOnFocus&&!a){P.value=!0,f.value=[];return}ae(a)},te=a=>{var T;v.value||(((T=a.target)==null?void 0:T.tagName)!=="INPUT"||pe.value.includes(document.activeElement))&&(w.value=!0)},b=a=>{p(Ee,a)},l=a=>{var T;if(_)_=!1;else{w.value=!0,p("focus",a);const W=(T=o.modelValue)!=null?T:"";o.triggerOnFocus&&!q&&ae(String(W))}},i=a=>{setTimeout(()=>{var T;if((T=O.value)!=null&&T.isFocusInsideContent()){_=!0;return}w.value&&D(),p("blur",a)})},m=()=>{w.value=!1,p(X,""),p("clear")},E=async()=>{k.value&&d.value>=0&&d.value{k.value&&(a.preventDefault(),a.stopPropagation(),D())},D=()=>{w.value=!1},se=()=>{var a;(a=g.value)==null||a.focus()},re=()=>{var a;(a=g.value)==null||a.blur()},U=async a=>{p(oe,a[o.valueKey]),p(X,a[o.valueKey]),p("select",a),f.value=[],d.value=-1},Ce=a=>{if(!k.value||M.value)return;if(a<0){d.value=-1;return}a>=f.value.length&&(a=f.value.length-1);const T=B.value.querySelector(`.${c.be("suggestion","wrap")}`),ue=T.querySelectorAll(`.${c.be("suggestion","list")} li`)[a],$e=T.scrollTop,{offsetTop:Le,scrollHeight:ke}=ue;Le+ke>$e+T.clientHeight&&(T.scrollTop+=ke),Le<$e&&(T.scrollTop-=ke),d.value=a,g.value.ref.setAttribute("aria-activedescendant",`${G.value}-item-${d.value}`)},Re=st(C,()=>{var a;(a=O.value)!=null&&a.isFocusInsideContent()||k.value&&D()});return et(()=>{Re==null||Re()}),Se(()=>{g.value.ref.setAttribute("role","textbox"),g.value.ref.setAttribute("aria-autocomplete","list"),g.value.ref.setAttribute("aria-controls","id"),g.value.ref.setAttribute("aria-activedescendant",`${G.value}-item-${d.value}`),q=g.value.ref.hasAttribute("readonly")}),h({highlightedIndex:d,activated:w,loading:M,inputRef:g,popperRef:O,suggestions:f,handleSelect:U,handleKeyEnter:E,focus:se,blur:re,close:D,highlight:Ce,getData:ne}),(a,T)=>(y(),K(e(Fe),{ref_key:"popperRef",ref:O,visible:e(k),placement:a.placement,"fallback-placements":["bottom-start","top-start"],"popper-class":[e(c).e("popper"),a.popperClass],teleported:a.teleported,"append-to":a.appendTo,"gpu-acceleration":!1,pure:"","manual-mode":"",effect:"light",trigger:"click",transition:`${e(c).namespace.value}-zoom-in-top`,persistent:"",role:"listbox",onBeforeShow:ee,onHide:ce},{content:r(()=>[V("div",{ref_key:"regionRef",ref:B,class:Q([e(c).b("suggestion"),e(c).is("loading",e(A))]),style:We({[a.fitInputWidth?"width":"minWidth"]:t.value,outline:"none"}),role:"region"},[s(e(Xe),{id:e(G),tag:"ul","wrap-class":e(c).be("suggestion","wrap"),"view-class":e(c).be("suggestion","list"),role:"listbox"},{default:r(()=>[e(A)?(y(),R("li",{key:0},[z(a.$slots,"loading",{},()=>[s(e(Oe),{class:Q(e(c).is("loading"))},{default:r(()=>[s(e(rt))]),_:1},8,["class"])])])):(y(!0),R(ve,{key:1},Me(f.value,(W,ue)=>(y(),R("li",{id:`${e(G)}-item-${ue}`,key:ue,class:Q({highlighted:d.value===ue}),role:"option","aria-selected":d.value===ue,onClick:$e=>U(W)},[z(a.$slots,"default",{item:W},()=>[F(Ne(W[a.valueKey]),1)])],10,["id","aria-selected","onClick"]))),128))]),_:3},8,["id","wrap-class","view-class"])],6)]),default:r(()=>[V("div",{ref_key:"listboxRef",ref:C,class:Q([e(c).b(),a.$attrs.class]),style:We(e(N)),role:"combobox","aria-haspopup":"listbox","aria-expanded":e(k),"aria-owns":e(G)},[s(e(we),Pe({ref_key:"inputRef",ref:g},Pe(e(S),a.$attrs),{"model-value":a.modelValue,disabled:e(v),onInput:fe,onChange:b,onFocus:l,onBlur:i,onClear:m,onKeydown:[le(be(W=>Ce(d.value-1),["prevent"]),["up"]),le(be(W=>Ce(d.value+1),["prevent"]),["down"]),le(E,["enter"]),le(D,["tab"]),le(I,["esc"])],onMousedown:te}),tt({_:2},[a.$slots.prepend?{name:"prepend",fn:r(()=>[z(a.$slots,"prepend")])}:void 0,a.$slots.append?{name:"append",fn:r(()=>[z(a.$slots,"append")])}:void 0,a.$slots.prefix?{name:"prefix",fn:r(()=>[z(a.$slots,"prefix")])}:void 0,a.$slots.suffix?{name:"suffix",fn:r(()=>[z(a.$slots,"suffix")])}:void 0]),1040,["model-value","disabled","onKeydown"])],14,["aria-expanded","aria-owns"])]),_:3},8,["visible","placement","popper-class","teleported","append-to","transition"]))}});var Jt=ge(xt,[["__file","autocomplete.vue"]]);const Xt=Be(Jt),Yt=Y({inheritAttrs:!1});function Zt(u,h,p,o,S,n){return z(u.$slots,"default")}var Qt=ge(Yt,[["render",Zt],["__file","collection.vue"]]);const el=Y({name:"ElCollectionItem",inheritAttrs:!1});function tl(u,h,p,o,S,n){return z(u.$slots,"default")}var ll=ge(el,[["render",tl],["__file","collection-item.vue"]]);const ol="data-el-collection-item",nl=u=>{const h=`El${u}Collection`,p=`${h}Item`,o=Symbol(h),S=Symbol(p),n={...Qt,name:h,setup(){const c=$(),g=new Map;ze(o,{itemMap:g,getItems:()=>{const O=e(c);if(!O)return[];const C=Array.from(O.querySelectorAll(`[${ol}]`));return[...g.values()].sort((_,f)=>C.indexOf(_.ref)-C.indexOf(f.ref))},collectionRef:c})}},v={...ll,name:p,setup(c,{attrs:g}){const B=$(),O=Mt(o,void 0);ze(S,{collectionItemRef:B}),Se(()=>{const C=e(B);C&&O.itemMap.set(C,{ref:C,...g})}),et(()=>{const C=e(B);O.itemMap.delete(C)})}};return{COLLECTION_INJECTION_KEY:o,COLLECTION_ITEM_INJECTION_KEY:S,ElCollection:n,ElCollectionItem:v}},Ae=de({trigger:_e.trigger,triggerKeys:{type:J(Array),default:()=>[ie.enter,ie.numpadEnter,ie.space,ie.down]},effect:{...j.effect,default:"light"},type:{type:J(String)},placement:{type:J(String),default:"bottom"},popperOptions:{type:J(Object),default:()=>({})},id:String,size:{type:String,default:""},splitButton:Boolean,hideOnClick:{type:Boolean,default:!0},loop:{type:Boolean,default:!0},showTimeout:{type:Number,default:150},hideTimeout:{type:Number,default:150},tabindex:{type:J([Number,String]),default:0},maxHeight:{type:J([Number,String]),default:""},popperClass:{type:String,default:""},disabled:Boolean,role:{type:String,values:kt,default:"menu"},buttonProps:{type:J(Object)},teleported:j.teleported,persistent:{type:Boolean,default:!0}});de({command:{type:[Object,String,Number],default:()=>({})},disabled:Boolean,divided:Boolean,textValue:String,icon:{type:ut}});de({onKeydown:{type:J(Function)}});nl("Dropdown");const al=de({id:{type:String,default:void 0},step:{type:Number,default:1},stepStrictly:Boolean,max:{type:Number,default:Number.MAX_SAFE_INTEGER},min:{type:Number,default:Number.MIN_SAFE_INTEGER},modelValue:{type:[Number,null]},readonly:Boolean,disabled:Boolean,size:dt,controls:{type:Boolean,default:!0},controlsPosition:{type:String,default:"",values:["","right"]},valueOnClear:{type:[String,Number,null],validator:u=>u===null||Z(u)||["min","max"].includes(u),default:null},name:String,placeholder:String,precision:{type:Number,validator:u=>u>=0&&u===Number.parseInt(`${u}`,10)},validateEvent:{type:Boolean,default:!0},...it(["ariaLabel"]),inputmode:{type:J(String),default:void 0},align:{type:J(String),default:"center"},disabledScientific:Boolean}),sl={[Ee]:(u,h)=>h!==u,blur:u=>u instanceof FocusEvent,focus:u=>u instanceof FocusEvent,[oe]:u=>Z(u)||me(u),[X]:u=>Z(u)||me(u)},rl=Y({name:"ElInputNumber"}),ul=Y({...rl,props:al,emits:sl,setup(u,{expose:h,emit:p}){const o=u,{t:S}=pt(),n=Ue("input-number"),v=$(),c=lt({currentValue:o.modelValue,userInput:null}),{formItem:g}=ct(),B=L(()=>Z(o.modelValue)&&o.modelValue<=o.min),O=L(()=>Z(o.modelValue)&&o.modelValue>=o.max),C=L(()=>{const l=w(o.step);return ye(o.precision)?Math.max(w(o.modelValue),l):(l>o.precision,o.precision)}),q=L(()=>o.controls&&o.controlsPosition==="right"),_=ft(),f=Je(),d=L(()=>{if(c.userInput!==null)return c.userInput;let l=c.currentValue;if(me(l))return"";if(Z(l)){if(Number.isNaN(l))return"";ye(o.precision)||(l=l.toFixed(o.precision))}return l}),t=(l,i)=>{if(ye(i)&&(i=C.value),i===0)return Math.round(l);let m=String(l);const E=m.indexOf(".");if(E===-1||!m.replace(".","").split("")[E+i])return l;const se=m.length;return m.charAt(se-1)==="5"&&(m=`${m.slice(0,Math.max(0,se-1))}6`),Number.parseFloat(Number(m).toFixed(i))},w=l=>{if(me(l))return 0;const i=l.toString(),m=i.indexOf(".");let E=0;return m!==-1&&(E=i.length-m-1),E},P=(l,i=1)=>Z(l)?l>=Number.MAX_SAFE_INTEGER&&i===1||l<=Number.MIN_SAFE_INTEGER&&i===-1?l:t(l+o.step*i):c.currentValue,M=l=>{var i;const m=l;if(o.disabledScientific&&["e","E"].includes(m.key)){m.preventDefault();return}const E={[ie.up]:()=>{m.preventDefault(),G()},[ie.down]:()=>{m.preventDefault(),N()}};(i=E[m.key])==null||i.call(E)},G=()=>{if(o.readonly||f.value||O.value)return;const l=Number(d.value)||0,i=P(l);A(i),p(oe,c.currentValue),te()},N=()=>{if(o.readonly||f.value||B.value)return;const l=Number(d.value)||0,i=P(l,-1);A(i),p(oe,c.currentValue),te()},k=(l,i)=>{const{max:m,min:E,step:I,precision:D,stepStrictly:se,valueOnClear:re}=o;mm||Um?m:E,i&&p(X,U)),U},A=(l,i=!0)=>{var m;const E=c.currentValue,I=k(l);if(!i){p(X,I);return}E===I&&l||(c.userInput=null,p(X,I),E!==I&&p(Ee,I,E),o.validateEvent&&((m=g==null?void 0:g.validate)==null||m.call(g,"change").catch(D=>De())),c.currentValue=I)},pe=l=>{c.userInput=l;const i=l===""?null:Number(l);p(oe,i),A(i,!1)},ee=l=>{const i=l!==""?Number(l):"";(Z(i)&&!Number.isNaN(i)||l==="")&&A(i),te(),c.userInput=null},ce=()=>{var l,i;(i=(l=v.value)==null?void 0:l.focus)==null||i.call(l)},ne=()=>{var l,i;(i=(l=v.value)==null?void 0:l.blur)==null||i.call(l)},ae=l=>{p("focus",l)},fe=l=>{var i,m;c.userInput=null,c.currentValue===null&&((i=v.value)!=null&&i.input)&&(v.value.input.value=""),p("blur",l),o.validateEvent&&((m=g==null?void 0:g.validate)==null||m.call(g,"blur").catch(E=>De()))},te=()=>{c.currentValue!==o.modelValue&&(c.currentValue=o.modelValue)},b=l=>{document.activeElement===l.target&&l.preventDefault()};return he(()=>o.modelValue,(l,i)=>{const m=k(l,!0);c.userInput===null&&m!==i&&(c.currentValue=m)},{immediate:!0}),he(()=>o.precision,()=>{c.currentValue=k(o.modelValue)}),Se(()=>{var l;const{min:i,max:m,modelValue:E}=o,I=(l=v.value)==null?void 0:l.input;if(I.setAttribute("role","spinbutton"),Number.isFinite(m)?I.setAttribute("aria-valuemax",String(m)):I.removeAttribute("aria-valuemax"),Number.isFinite(i)?I.setAttribute("aria-valuemin",String(i)):I.removeAttribute("aria-valuemin"),I.setAttribute("aria-valuenow",c.currentValue||c.currentValue===0?String(c.currentValue):""),I.setAttribute("aria-disabled",String(f.value)),!Z(E)&&E!=null){let D=Number(E);Number.isNaN(D)&&(D=null),p(X,D)}I.addEventListener("wheel",b,{passive:!1})}),Ut(()=>{var l,i;const m=(l=v.value)==null?void 0:l.input;m==null||m.setAttribute("aria-valuenow",`${(i=c.currentValue)!=null?i:""}`)}),h({focus:ce,blur:ne}),(l,i)=>(y(),R("div",{class:Q([e(n).b(),e(n).m(e(_)),e(n).is("disabled",e(f)),e(n).is("without-controls",!l.controls),e(n).is("controls-right",e(q)),e(n).is(l.align,!!l.align)]),onDragstart:be(()=>{},["prevent"])},[l.controls?qe((y(),R("span",{key:0,role:"button","aria-label":e(S)("el.inputNumber.decrease"),class:Q([e(n).e("decrease"),e(n).is("disabled",e(B))]),onKeydown:le(N,["enter"])},[z(l.$slots,"decrease-icon",{},()=>[s(e(Oe),null,{default:r(()=>[e(q)?(y(),K(e(mt),{key:0})):(y(),K(e(vt),{key:1}))]),_:1})])],42,["aria-label","onKeydown"])),[[e(He),N]]):x("v-if",!0),l.controls?qe((y(),R("span",{key:1,role:"button","aria-label":e(S)("el.inputNumber.increase"),class:Q([e(n).e("increase"),e(n).is("disabled",e(O))]),onKeydown:le(G,["enter"])},[z(l.$slots,"increase-icon",{},()=>[s(e(Oe),null,{default:r(()=>[e(q)?(y(),K(e(bt),{key:0})):(y(),K(e(gt),{key:1}))]),_:1})])],42,["aria-label","onKeydown"])),[[e(He),G]]):x("v-if",!0),s(e(we),{id:l.id,ref_key:"input",ref:v,type:"number",step:l.step,"model-value":e(d),placeholder:l.placeholder,readonly:l.readonly,disabled:e(f),size:e(_),max:l.max,min:l.min,name:l.name,"aria-label":l.ariaLabel,"validate-event":!1,inputmode:l.inputmode,onKeydown:M,onBlur:fe,onFocus:ae,onInput:pe,onChange:ee},tt({_:2},[l.$slots.prefix?{name:"prefix",fn:r(()=>[z(l.$slots,"prefix")])}:void 0,l.$slots.suffix?{name:"suffix",fn:r(()=>[z(l.$slots,"suffix")])}:void 0]),1032,["id","step","model-value","placeholder","readonly","disabled","size","max","min","name","aria-label","inputmode"])],42,["onDragstart"]))}});var il=ge(ul,[["__file","input-number.vue"]]);const dl=Be(il),pl=de({trigger:_e.trigger,triggerKeys:_e.triggerKeys,placement:Ae.placement,disabled:_e.disabled,visible:j.visible,transition:j.transition,popperOptions:Ae.popperOptions,tabindex:Ae.tabindex,content:j.content,popperStyle:j.popperStyle,popperClass:j.popperClass,enterable:{...j.enterable,default:!0},effect:{...j.effect,default:"light"},teleported:j.teleported,appendTo:j.appendTo,title:String,width:{type:[String,Number],default:150},offset:{type:Number,default:void 0},showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0},showArrow:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},"onUpdate:visible":{type:Function}}),cl={"update:visible":u=>yt(u),"before-enter":()=>!0,"before-leave":()=>!0,"after-enter":()=>!0,"after-leave":()=>!0},fl="onUpdate:visible",ml=Y({name:"ElPopover"}),vl=Y({...ml,props:pl,emits:cl,setup(u,{expose:h,emit:p}){const o=u,S=L(()=>o[fl]),n=Ue("popover"),v=$(),c=L(()=>{var t;return(t=e(v))==null?void 0:t.popperRef}),g=L(()=>[{width:_t(o.width)},o.popperStyle]),B=L(()=>[n.b(),o.popperClass,{[n.m("plain")]:!!o.content}]),O=L(()=>o.transition===`${n.namespace.value}-fade-in-linear`),C=()=>{var t;(t=v.value)==null||t.hide()},q=()=>{p("before-enter")},_=()=>{p("before-leave")},f=()=>{p("after-enter")},d=()=>{p("update:visible",!1),p("after-leave")};return h({popperRef:c,hide:C}),(t,w)=>(y(),K(e(Fe),Pe({ref_key:"tooltipRef",ref:v},t.$attrs,{trigger:t.trigger,"trigger-keys":t.triggerKeys,placement:t.placement,disabled:t.disabled,visible:t.visible,transition:t.transition,"popper-options":t.popperOptions,tabindex:t.tabindex,content:t.content,offset:t.offset,"show-after":t.showAfter,"hide-after":t.hideAfter,"auto-close":t.autoClose,"show-arrow":t.showArrow,"aria-label":t.title,effect:t.effect,enterable:t.enterable,"popper-class":e(B),"popper-style":e(g),teleported:t.teleported,"append-to":t.appendTo,persistent:t.persistent,"gpu-acceleration":e(O),"onUpdate:visible":e(S),onBeforeShow:q,onBeforeHide:_,onShow:f,onHide:d}),{content:r(()=>[t.title?(y(),R("div",{key:0,class:Q(e(n).e("title")),role:"title"},Ne(t.title),3)):x("v-if",!0),z(t.$slots,"default",{},()=>[F(Ne(t.content),1)])]),default:r(()=>[t.$slots.reference?z(t.$slots,"reference",{key:0}):x("v-if",!0)]),_:3},16,["trigger","trigger-keys","placement","disabled","visible","transition","popper-options","tabindex","content","offset","show-after","hide-after","auto-close","show-arrow","aria-label","effect","enterable","popper-class","popper-style","teleported","append-to","persistent","gpu-acceleration","onUpdate:visible"]))}});var bl=ge(vl,[["__file","popover.vue"]]);const je=(u,h)=>{const p=h.arg||h.value,o=p==null?void 0:p.popperRef;o&&(o.triggerRef=u)};var gl={mounted(u,h){je(u,h)},updated(u,h){je(u,h)}};const yl="popover",_l=Vt(gl,yl),Vl=Be(bl,{directive:_l}),Nl={class:"icon-select"},hl={class:"flex between"},El=["onClick"],wl={class:"h-280"},Sl={class:"flex flex-wrap"},Cl={key:0,class:"flex items-center"},$l=Y({__name:"picker",props:{modelValue:{default:""},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(u,{emit:h}){const p=h,o=$(0),S=[{name:"element图标",icons:Nt()},{name:"本地图标",icons:ht()}],n=Bt(),v=lt({inputValue:"",popoverVisible:!1,popoverWidth:0,mouseoverSelect:!1,inputFocus:!1}),c=()=>{v.inputFocus=v.popoverVisible=!0},g=()=>{v.inputFocus=!1,v.popoverVisible=v.mouseoverSelect},B=_=>{v.mouseoverSelect=v.popoverVisible=!1,p("update:modelValue",_),p("change",_)},O=()=>{p("update:modelValue",""),p("change","")},C=L(()=>{var d;const _=((d=S[o.value])==null?void 0:d.icons)??[];if(!v.inputValue)return _;const f=v.inputValue.toLowerCase();return _.filter(t=>{if(t.toLowerCase().indexOf(f)!==-1)return t})}),q=()=>{Ge(()=>{var f;const _=(f=n.value)==null?void 0:f.$el.offsetWidth;v.popoverWidth=_<300?300:_})};return he(()=>v.popoverVisible,async _=>{var f,d;await Ge(),_?(f=n.value)==null||f.focus():(d=n.value)==null||d.blur()}),Se(()=>{q()}),(_,f)=>{const d=Qe,t=Ze,w=Xe,P=Fe,M=we,G=Vl;return y(),R("div",Nl,[s(G,{trigger:"contextmenu",visible:e(v).popoverVisible,"onUpdate:visible":f[3]||(f[3]=N=>e(v).popoverVisible=N),width:e(v).popoverWidth},{reference:r(()=>[s(M,{ref_key:"inputRef",ref:n,modelValue:e(v).inputValue,"onUpdate:modelValue":f[2]||(f[2]=N=>e(v).inputValue=N),modelModifiers:{trim:!0},placeholder:"搜索图标",autofocus:!1,disabled:_.disabled,onFocus:c,onBlur:g,clearable:""},{prepend:r(()=>[_.modelValue?(y(),R("div",Cl,[s(P,{class:"flex-1 w-20",content:_.modelValue,placement:"top"},{default:r(()=>[(y(),K(d,{class:"mr-1",key:_.modelValue,name:_.modelValue,size:16},null,8,["name"]))]),_:1},8,["content"])])):(y(),R(ve,{key:1},[F("无")],64))]),append:r(()=>[s(t,null,{default:r(()=>[s(d,{name:"el-icon-Close",size:18,onClick:O})]),_:1})]),_:1},8,["modelValue","disabled"])]),default:r(()=>[V("div",{onMouseover:f[0]||(f[0]=be(N=>e(v).mouseoverSelect=!0,["stop"])),onMouseout:f[1]||(f[1]=be(N=>e(v).mouseoverSelect=!1,["stop"]))},[V("div",null,[V("div",hl,[f[4]||(f[4]=V("div",{class:"mb-3"},"请选择图标",-1)),V("div",null,[(y(),R(ve,null,Me(S,(N,k)=>V("span",{key:k,class:Q(["cursor-pointer text-sm ml-2",{"text-primary":k==e(o)}]),onClick:A=>o.value=k},Ne(N.name),11,El)),64))])]),V("div",wl,[s(w,null,{default:r(()=>[V("div",Sl,[(y(!0),R(ve,null,Me(e(C),N=>(y(),R("div",{key:N,class:"m-1"},[s(t,{onClick:k=>B(N)},{default:r(()=>[s(d,{name:N,size:18},null,8,["name"])]),_:2},1032,["onClick"])]))),128))])]),_:1})])])],32)]),_:1},8,["visible","width"])])}}}),kl={class:"container"},Il={class:"flex between mb-20"},Tl={class:"table-container"},Al={key:0,class:"flex v-center gap-4"},Ol={key:1,class:"flex v-center gap-4"},Pl={key:2,class:"flex v-center gap-4"},Ml={class:"flex-1"},Ul={class:"flex-1"},Bl={class:"flex end"},Fl=Y({__name:"Menu",setup(u){const h=$([]),p=$([{id:Ke,menuName:"顶级",children:[]}]);function o(){Kt().then(d=>{h.value=d,p.value[0].children.length||(p.value[0].children=d)})}o();const S=$(!1),n=$({openNewPage:!1,isShow:1,isCache:1}),v=$(),c=(d,t)=>{const w=d?h.value.filter(P=>P.menuName.toLowerCase().includes(d.toLowerCase())):[];t(w.map(P=>({value:P})))},g=$("add");he(g,d=>{d==="add"&&B()});function B(){n.value={openNewPage:!1,isShow:1,isCache:1}}function O(){S.value=!0,g.value="add"}const C=$(!1);async function q(){await v.value.validate(),C.value=!0;try{g.value==="add"?(await Wt(n.value),B()):await zt(n.value)}catch(d){console.error(d),C.value=!1;return}C.value=!1,S.value=!1,o(),Ie.msgSuccess("操作成功")}function _(d){S.value=!0,g.value="edit",n.value={...d}}const f=async d=>{await Ie.confirm(`确定要删除 ${d.menuName}?`),await qt(d.id),Ie.msgSuccess("删除成功"),o()};return(d,t)=>{const w=Qe,P=Ze,M=It,G=Tt,N=Dt,k=Lt,A=Ct,pe=Rt,ee=we,ce=$l,ne=Xt,ae=dl,fe=St,te=wt;return y(),R(ve,null,[V("div",kl,[V("header",Il,[V("div",null,[s(P,{type:"primary",onClick:O},{icon:r(()=>[s(w,{name:"el-icon-Plus"})]),default:r(()=>[t[13]||(t[13]=F(" 新增",-1))]),_:1,__:[13]})]),t[14]||(t[14]=V("div",null,null,-1))]),V("div",Tl,[s(G,{data:e(h),"row-key":"id"},{default:r(()=>[s(M,{label:"菜单名称",prop:"menuName"}),s(M,{label:"类型"},{default:r(({row:b})=>[b.menuType===e(H).CATALOGUE?(y(),R("div",Al,[s(w,{name:"el-icon-Folder"}),t[15]||(t[15]=V("span",null,"目录",-1))])):b.menuType===e(H).MENU?(y(),R("div",Ol,[s(w,{name:"local-icon-menu"}),t[16]||(t[16]=V("span",null,"菜单",-1))])):b.menuType===e(H).BUTTON?(y(),R("div",Pl,[s(w,{name:"el-icon-SwitchButton"}),t[17]||(t[17]=V("span",null,"按钮",-1))])):x("",!0)]),_:1}),s(M,{label:"图标"},{default:r(({row:b})=>[b.icon?(y(),K(w,{key:0,name:b.icon,size:16},null,8,["name"])):x("",!0)]),_:1}),s(M,{label:"权限标识",prop:"perms"}),s(M,{label:"排序",prop:"menuSort"}),s(M,{label:"最后更新时间",prop:"updateTime"}),s(M,{label:"操作"},{default:r(({row:b})=>[s(P,{type:"primary",link:"",onClick:l=>_(b)},{default:r(()=>t[18]||(t[18]=[F("编辑",-1)])),_:2,__:[18]},1032,["onClick"]),s(P,{type:"danger",link:"",onClick:l=>f(b)},{default:r(()=>t[19]||(t[19]=[F("删除",-1)])),_:2,__:[19]},1032,["onClick"])]),_:1})]),_:1},8,["data"])])]),s(te,{modelValue:e(S),"onUpdate:modelValue":t[12]||(t[12]=b=>Ft(S)?S.value=b:null),title:e(g)==="add"?"新增菜单":"编辑菜单",width:"600"},{default:r(()=>[s(fe,{"label-width":"120",ref_key:"formRef",ref:v,model:e(n)},{default:r(()=>[s(A,{label:"菜单类型",prop:"menuType",rules:{required:!0,message:"请选择菜单类型",trigger:["blur"]}},{default:r(()=>[s(k,{modelValue:e(n).menuType,"onUpdate:modelValue":t[0]||(t[0]=b=>e(n).menuType=b)},{default:r(()=>[s(N,{label:e(H).CATALOGUE},{default:r(()=>t[20]||(t[20]=[F("目录",-1)])),_:1,__:[20]},8,["label"]),s(N,{label:e(H).MENU},{default:r(()=>t[21]||(t[21]=[F("菜单",-1)])),_:1,__:[21]},8,["label"]),s(N,{label:e(H).BUTTON},{default:r(()=>t[22]||(t[22]=[F("按钮",-1)])),_:1,__:[22]},8,["label"])]),_:1},8,["modelValue"])]),_:1}),s(A,{label:"父级菜单",prop:"menuType",rules:{required:!0,message:"请选择父级菜单",trigger:["blur"]}},{default:r(()=>[s(pe,{class:"flex-1",modelValue:e(n).pid,"onUpdate:modelValue":t[1]||(t[1]=b=>e(n).pid=b),data:e(p),clearable:"","node-key":"id",props:{label:"menuName"},"default-expanded-keys":[e(Ke)],placeholder:"请选择父级菜单","check-strictly":""},null,8,["modelValue","data","default-expanded-keys"])]),_:1}),s(A,{label:"菜单名称",prop:"menuName",rules:{required:!0,message:"请输入菜单名称",trigger:["blur"]}},{default:r(()=>[s(ee,{modelValue:e(n).menuName,"onUpdate:modelValue":t[2]||(t[2]=b=>e(n).menuName=b),placeholder:"请输入菜单名称",clearable:""},null,8,["modelValue"])]),_:1}),e(n).menuType===e(H).CATALOGUE?(y(),K(A,{key:0,label:"菜单图标",rules:{required:!0,message:"请选择图标"},prop:"icon"},{default:r(()=>[s(ce,{class:"flex-1",modelValue:e(n).icon,"onUpdate:modelValue":t[3]||(t[3]=b=>e(n).icon=b)},null,8,["modelValue"])]),_:1})):x("",!0),e(n).menuType===e(H).MENU?(y(),K(A,{key:1,label:"菜单路径",rules:{required:!0,message:"请输入菜单路径",trigger:["blur"]}},{default:r(()=>[s(ee,{modelValue:e(n).paths,"onUpdate:modelValue":t[4]||(t[4]=b=>e(n).paths=b),placeholder:"请输入路由路径",clearable:""},null,8,["modelValue"])]),_:1})):x("",!0),e(n).menuType==e(H).MENU?(y(),K(A,{key:2,label:"组件路径",prop:"component"},{default:r(()=>[V("div",Ml,[s(ne,{class:"w-full",modelValue:e(n).component,"onUpdate:modelValue":t[5]||(t[5]=b=>e(n).component=b),"fetch-suggestions":c,clearable:"",placeholder:"请输入组件路径"},null,8,["modelValue"]),t[23]||(t[23]=V("div",{class:"form-tips"}," 访问的组件路径,如:`permission/admin/index`,默认在`views`目录下 ",-1))])]),_:1})):x("",!0),e(n).menuType!=e(H).CATALOGUE?(y(),K(A,{key:3,label:"权限字符",prop:"perms"},{default:r(()=>[V("div",Ul,[s(ee,{modelValue:e(n).perms,"onUpdate:modelValue":t[6]||(t[6]=b=>e(n).perms=b),placeholder:"请输入权限字符",clearable:""},null,8,["modelValue"]),t[24]||(t[24]=V("div",{class:"form-tips"}," 将作为server端API验权使用,如`system:admin:list`,请谨慎修改 ",-1))])]),_:1})):x("",!0),e(n).menuType===e(H).MENU?(y(),K(A,{key:4,label:"打开新页面",prop:"openNewPage",rules:{required:!0,message:"请选择是否打开新页面",trigger:["blur"]}},{default:r(()=>[s(k,{modelValue:e(n).openNewPage,"onUpdate:modelValue":t[7]||(t[7]=b=>e(n).openNewPage=b)},{default:r(()=>[s(N,{value:!1},{default:r(()=>t[25]||(t[25]=[F("否",-1)])),_:1,__:[25]}),s(N,{value:!0},{default:r(()=>t[26]||(t[26]=[F("是",-1)])),_:1,__:[26]})]),_:1},8,["modelValue"])]),_:1})):x("",!0),e(n).menuType==e(H).MENU?(y(),K(A,{key:5,label:"是否缓存",prop:"isCache",required:""},{default:r(()=>[V("div",null,[s(k,{modelValue:e(n).isCache,"onUpdate:modelValue":t[8]||(t[8]=b=>e(n).isCache=b)},{default:r(()=>[s(N,{label:1},{default:r(()=>t[27]||(t[27]=[F("缓存",-1)])),_:1,__:[27]}),s(N,{label:0},{default:r(()=>t[28]||(t[28]=[F("不缓存",-1)])),_:1,__:[28]})]),_:1},8,["modelValue"]),t[29]||(t[29]=V("div",{class:"form-tips"},"选择缓存则会被`keep-alive`缓存",-1))])]),_:1})):x("",!0),e(n).menuType!=e(H).BUTTON?(y(),K(A,{key:6,label:"是否显示",prop:"isShow",rules:{required:!0,message:"请选择是否显示",trigger:["blur"]}},{default:r(()=>[V("div",null,[s(k,{modelValue:e(n).isShow,"onUpdate:modelValue":t[9]||(t[9]=b=>e(n).isShow=b)},{default:r(()=>[s(N,{label:1},{default:r(()=>t[30]||(t[30]=[F("显示",-1)])),_:1,__:[30]}),s(N,{label:0},{default:r(()=>t[31]||(t[31]=[F("隐藏",-1)])),_:1,__:[31]})]),_:1},8,["modelValue"]),t[32]||(t[32]=V("div",{class:"form-tips"}," 选择隐藏则路由将不会出现在侧边栏,但仍然可以访问 ",-1))])]),_:1})):x("",!0),s(A,{label:"菜单排序",prop:"menuSort"},{default:r(()=>[V("div",null,[s(ae,{modelValue:e(n).menuSort,"onUpdate:modelValue":t[10]||(t[10]=b=>e(n).menuSort=b),max:9999},null,8,["modelValue"]),t[33]||(t[33]=V("div",{class:"form-tips"},"数值越小越排前",-1))])]),_:1})]),_:1},8,["model"]),V("footer",Bl,[s(P,{onClick:t[11]||(t[11]=b=>S.value=!1)},{default:r(()=>t[34]||(t[34]=[F("取消",-1)])),_:1,__:[34]}),s(P,{type:"primary",onClick:q,disabled:e(C)},{default:r(()=>t[35]||(t[35]=[F("确定",-1)])),_:1,__:[35]},8,["disabled"])])]),_:1},8,["modelValue","title"])],64)}}}),Ql=Et(Fl,[["__scopeId","data-v-eeb7f2b3"]]);export{Ql as default};