import{dC as $a,d as pe,ao as ue,cj as Sa,aq as Ee,U as fe,e4 as Ye,dP as Qe,dz as Ta,aa as ea,c as m,S as j,o as f,a as I,G,B as F,R as ve,w as D,b as ie,m as J,D as T,F as re,b9 as aa,bj as ta,aI as _a,r as S,e as me,p as Va,t as le,af as Pa,eu as De,aC as Oe,ab as La,eI as Ke,as as na,at as oe,e7 as Da,eJ as Ia,a6 as Ce,b5 as Ne,au as Ma,j as qe,O as se,cF as Fa,k as sa,N as ce,dD as la,dY as za,dX as A,eK as ye,eL as oa,ax as ia,a4 as Ba,d$ as xa,dZ as Ha,e0 as Aa,a9 as Oa,bz as Ka,ad as qa,dT as Ra,dR as Ua,ak as ja,ae as Wa,dG as Za,eM as Ga,aH as Ja,z as ke,f as r,ar as Xa,E as Ya,d_ as Qa,dH as et,$ as Re,n as at,dg as tt,dJ as nt,I as st,a1 as Ue,a3 as lt,eN as ot}from"./index-CGub03FT.js";import{E as it}from"./el-checkbox-DPTWUty2.js";import{E as ct}from"./index-BWjyYuP5.js";import{i as ge}from"./isEqual-BjNIK6f1.js";import{u as je,c as We}from"./arrays-6TrVLtTe.js";import{c as ca}from"./cloneDeep-B3sFPNz9.js";import{t as Ze,E as Ge}from"./index-VnZzjdgn.js";var rt=1/0;function ut(e){var t=e==null?0:e.length;return t?$a(e,rt):[]}var dt=pe({name:"NodeContent",setup(){return{ns:ue("cascader-node")}},render(){const{ns:e}=this,{node:t,panel:s}=this.$parent,{data:n,label:o}=t,{renderLabelFn:p}=s;return Sa("span",{class:e.e("label")},p?p({node:t,data:n}):o)}});const Me=Symbol(),pt=pe({name:"ElCascaderNode",components:{ElCheckbox:it,ElRadio:ct,NodeContent:dt,ElIcon:fe,Check:Ye,Loading:Qe,ArrowRight:Ta},props:{node:{type:Object,required:!0},menuId:String},emits:["expand"],setup(e,{emit:t}){const s=ea(Me),n=ue("cascader-node"),o=m(()=>s.isHoverMenu),p=m(()=>s.config.multiple),u=m(()=>s.config.checkStrictly),g=m(()=>{var y;return(y=s.checkedNodes[0])==null?void 0:y.uid}),d=m(()=>e.node.isDisabled),k=m(()=>e.node.isLeaf),C=m(()=>u.value&&!k.value||!d.value),V=m(()=>te(s.expandingNode)),P=m(()=>u.value&&s.checkedNodes.some(te)),te=y=>{var $;const{level:R,uid:ne}=e.node;return(($=y==null?void 0:y.pathNodes[R-1])==null?void 0:$.uid)===ne},q=()=>{V.value||s.expandNode(e.node)},B=y=>{const{node:$}=e;y!==$.checked&&s.handleCheckChange($,y)},z=()=>{s.lazyLoad(e.node,()=>{k.value||q()})},x=y=>{o.value&&(W(),!k.value&&t("expand",y))},W=()=>{const{node:y}=e;!C.value||y.loading||(y.loaded?q():z())},L=()=>{o.value&&!k.value||(k.value&&!d.value&&!u.value&&!p.value?_(!0):W())},Z=y=>{u.value?(B(y),e.node.loaded&&q()):_(y)},_=y=>{e.node.loaded?(B(y),!u.value&&q()):z()};return{panel:s,isHoverMenu:o,multiple:p,checkStrictly:u,checkedNodeId:g,isDisabled:d,isLeaf:k,expandable:C,inExpandingPath:V,inCheckedPath:P,ns:n,handleHoverExpand:x,handleExpand:W,handleClick:L,handleCheck:_,handleSelectCheck:Z}}});function ht(e,t,s,n,o,p){const u=j("el-checkbox"),g=j("el-radio"),d=j("check"),k=j("el-icon"),C=j("node-content"),V=j("loading"),P=j("arrow-right");return f(),I("li",{id:`${e.menuId}-${e.node.uid}`,role:"menuitem","aria-haspopup":!e.isLeaf,"aria-owns":e.isLeaf?null:e.menuId,"aria-expanded":e.inExpandingPath,tabindex:e.expandable?-1:void 0,class:T([e.ns.b(),e.ns.is("selectable",e.checkStrictly),e.ns.is("active",e.node.checked),e.ns.is("disabled",!e.expandable),e.inExpandingPath&&"in-active-path",e.inCheckedPath&&"in-checked-path"]),onMouseenter:e.handleHoverExpand,onFocus:e.handleHoverExpand,onClick:e.handleClick},[G(" prefix "),e.multiple?(f(),F(u,{key:0,"model-value":e.node.checked,indeterminate:e.node.indeterminate,disabled:e.isDisabled,onClick:ve(()=>{},["stop"]),"onUpdate:modelValue":e.handleSelectCheck},null,8,["model-value","indeterminate","disabled","onClick","onUpdate:modelValue"])):e.checkStrictly?(f(),F(g,{key:1,"model-value":e.checkedNodeId,label:e.node.uid,disabled:e.isDisabled,"onUpdate:modelValue":e.handleSelectCheck,onClick:ve(()=>{},["stop"])},{default:D(()=>[G(` Add an empty element to avoid render label, do not use empty fragment here for https://github.com/vuejs/vue-next/pull/2485 `),ie("span")]),_:1},8,["model-value","label","disabled","onUpdate:modelValue","onClick"])):e.isLeaf&&e.node.checked?(f(),F(k,{key:2,class:T(e.ns.e("prefix"))},{default:D(()=>[J(d)]),_:1},8,["class"])):G("v-if",!0),G(" content "),J(C),G(" postfix "),e.isLeaf?G("v-if",!0):(f(),I(re,{key:3},[e.node.loading?(f(),F(k,{key:0,class:T([e.ns.is("loading"),e.ns.e("postfix")])},{default:D(()=>[J(V)]),_:1},8,["class"])):(f(),F(k,{key:1,class:T(["arrow-right",e.ns.e("postfix")])},{default:D(()=>[J(P)]),_:1},8,["class"]))],64))],42,["id","aria-haspopup","aria-owns","aria-expanded","tabindex","onMouseenter","onFocus","onClick"])}var ft=Ee(pt,[["render",ht],["__file","node.vue"]]);const vt=pe({name:"ElCascaderMenu",components:{Loading:Qe,ElIcon:fe,ElScrollbar:aa,ElCascaderNode:ft},props:{nodes:{type:Array,required:!0},index:{type:Number,required:!0}},setup(e){const t=Pa(),s=ue("cascader-menu"),{t:n}=ta(),o=_a();let p=null,u=null;const g=ea(Me),d=S(null),k=m(()=>!e.nodes.length),C=m(()=>!g.initialLoaded),V=m(()=>`${o.value}-${e.index}`),P=z=>{p=z.target},te=z=>{if(!(!g.isHoverMenu||!p||!d.value))if(p.contains(z.target)){q();const x=t.vnode.el,{left:W}=x.getBoundingClientRect(),{offsetWidth:L,offsetHeight:Z}=x,_=z.clientX-W,y=p.offsetTop,$=y+p.offsetHeight;d.value.innerHTML=` `}else u||(u=window.setTimeout(B,g.config.hoverThreshold))},q=()=>{u&&(clearTimeout(u),u=null)},B=()=>{d.value&&(d.value.innerHTML="",q())};return{ns:s,panel:g,hoverZone:d,isEmpty:k,isLoading:C,menuId:V,t:n,handleExpand:P,handleMouseMove:te,clearHoverZone:B}}});function mt(e,t,s,n,o,p){const u=j("el-cascader-node"),g=j("loading"),d=j("el-icon"),k=j("el-scrollbar");return f(),F(k,{key:e.menuId,tag:"ul",role:"menu",class:T(e.ns.b()),"wrap-class":e.ns.e("wrap"),"view-class":[e.ns.e("list"),e.ns.is("empty",e.isEmpty)],onMousemove:e.handleMouseMove,onMouseleave:e.clearHoverZone},{default:D(()=>{var C;return[(f(!0),I(re,null,me(e.nodes,V=>(f(),F(u,{key:V.uid,node:V,"menu-id":e.menuId,onExpand:e.handleExpand},null,8,["node","menu-id","onExpand"]))),128)),e.isLoading?(f(),I("div",{key:0,class:T(e.ns.e("empty-text"))},[J(d,{size:"14",class:T(e.ns.is("loading"))},{default:D(()=>[J(g)]),_:1},8,["class"]),Va(" "+le(e.t("el.cascader.loading")),1)],2)):e.isEmpty?(f(),I("div",{key:1,class:T(e.ns.e("empty-text"))},le(e.t("el.cascader.noData")),3)):(C=e.panel)!=null&&C.isHoverMenu?(f(),I("svg",{key:2,ref:"hoverZone",class:T(e.ns.e("hover-zone"))},null,2)):G("v-if",!0)]}),_:1},8,["class","wrap-class","view-class","onMousemove","onMouseleave"])}var gt=Ee(vt,[["render",mt],["__file","menu.vue"]]);let bt=0;const kt=e=>{const t=[e];let{parent:s}=e;for(;s;)t.unshift(s),s=s.parent;return t};class de{constructor(t,s,n,o=!1){this.data=t,this.config=s,this.parent=n,this.root=o,this.uid=bt++,this.checked=!1,this.indeterminate=!1,this.loading=!1;const{value:p,label:u,children:g}=s,d=t[g],k=kt(this);this.level=o?0:n?n.level+1:1,this.value=t[p],this.label=t[u],this.pathNodes=k,this.pathValues=k.map(C=>C.value),this.pathLabels=k.map(C=>C.label),this.childrenData=d,this.children=(d||[]).map(C=>new de(C,s,this)),this.loaded=!s.lazy||this.isLeaf||!De(d)}get isDisabled(){const{data:t,parent:s,config:n}=this,{disabled:o,checkStrictly:p}=n;return(Oe(o)?o(t,this):!!t[o])||!p&&(s==null?void 0:s.isDisabled)}get isLeaf(){const{data:t,config:s,childrenData:n,loaded:o}=this,{lazy:p,leaf:u}=s,g=Oe(u)?u(t,this):t[u];return La(g)?p&&!o?!1:!(Array.isArray(n)&&n.length):!!g}get valueByOption(){return this.config.emitPath?this.pathValues:this.value}appendChild(t){const{childrenData:s,children:n}=this,o=new de(t,this.config,this);return Array.isArray(s)?s.push(t):this.childrenData=[t],n.push(o),o}calcText(t,s){const n=t?this.pathLabels.join(s):this.label;return this.text=n,n}broadcast(t,...s){const n=`onParent${Ke(t)}`;this.children.forEach(o=>{o&&(o.broadcast(t,...s),o[n]&&o[n](...s))})}emit(t,...s){const{parent:n}=this,o=`onChild${Ke(t)}`;n&&(n[o]&&n[o](...s),n.emit(t,...s))}onParentCheck(t){this.isDisabled||this.setCheckState(t)}onChildCheck(){const{children:t}=this,s=t.filter(o=>!o.isDisabled),n=s.length?s.every(o=>o.checked):!1;this.setCheckState(n)}setCheckState(t){const s=this.children.length,n=this.children.reduce((o,p)=>{const u=p.checked?1:p.indeterminate?.5:0;return o+u},0);this.checked=this.loaded&&this.children.filter(o=>!o.isDisabled).every(o=>o.loaded&&o.checked)&&t,this.indeterminate=this.loaded&&n!==s&&n>0}doCheck(t){if(this.checked===t)return;const{checkStrictly:s,multiple:n}=this.config;s||!n?this.checked=t:(this.broadcast("check",t),this.setCheckState(t),this.emit("check"))}}const Ie=(e,t)=>e.reduce((s,n)=>(n.isLeaf?s.push(n):(!t&&s.push(n),s=s.concat(Ie(n.children,t))),s),[]);class Je{constructor(t,s){this.config=s;const n=(t||[]).map(o=>new de(o,this.config));this.nodes=n,this.allNodes=Ie(n,!1),this.leafNodes=Ie(n,!0)}getNodes(){return this.nodes}getFlattedNodes(t){return t?this.leafNodes:this.allNodes}appendNode(t,s){const n=s?s.appendChild(t):new de(t,this.config);s||this.nodes.push(n),this.allNodes.push(n),n.isLeaf&&this.leafNodes.push(n)}appendNodes(t,s){t.forEach(n=>this.appendNode(n,s))}getNodeByValue(t,s=!1){return!t&&t!==0?null:this.getFlattedNodes(s).find(o=>ge(o.value,t)||ge(o.pathValues,t))||null}getSameNode(t){return t&&this.getFlattedNodes(!1).find(({value:n,level:o})=>ge(t.value,n)&&t.level===o)||null}}const ra=na({modelValue:{type:oe([Number,String,Array])},options:{type:oe(Array),default:()=>[]},props:{type:oe(Object),default:()=>({})}}),yt={expandTrigger:"click",multiple:!1,checkStrictly:!1,emitPath:!0,lazy:!1,lazyLoad:Da,value:"value",label:"label",children:"children",leaf:"leaf",disabled:"disabled",hoverThreshold:500},Ct=e=>m(()=>({...yt,...e.props})),Xe=e=>{if(!e)return 0;const t=e.id.split("-");return Number(t[t.length-2])},Nt=e=>{if(!e)return;const t=e.querySelector("input");t?t.click():Ia(e)&&e.click()},Et=(e,t)=>{const s=t.slice(0),n=s.map(p=>p.uid),o=e.reduce((p,u)=>{const g=n.indexOf(u.uid);return g>-1&&(p.push(u),s.splice(g,1),n.splice(g,1)),p},[]);return o.push(...s),o},wt=pe({name:"ElCascaderPanel",components:{ElCascaderMenu:gt},props:{...ra,border:{type:Boolean,default:!0},renderLabel:Function},emits:[Ce,Ne,"close","expand-change"],setup(e,{emit:t,slots:s}){let n=!1;const o=ue("cascader"),p=Ct(e);let u=null;const g=S(!0),d=S([]),k=S(null),C=S([]),V=S(null),P=S([]),te=m(()=>p.value.expandTrigger==="hover"),q=m(()=>e.renderLabel||s.default),B=()=>{const{options:c}=e,h=p.value;n=!1,u=new Je(c,h),C.value=[u.getNodes()],h.lazy&&De(e.options)?(g.value=!1,z(void 0,b=>{b&&(u=new Je(b,h),C.value=[u.getNodes()]),g.value=!0,R(!1,!0)})):R(!1,!0)},z=(c,h)=>{const b=p.value;c=c||new de({},b,void 0,!0),c.loading=!0;const v=N=>{const w=c,H=w.root?null:w;N&&(u==null||u.appendNodes(N,H)),w.loading=!1,w.loaded=!0,w.childrenData=w.childrenData||[],h&&h(N)};b.lazyLoad(c,v)},x=(c,h)=>{var b;const{level:v}=c,N=C.value.slice(0,v);let w;c.isLeaf?w=c.pathNodes[v-2]:(w=c,N.push(c.children)),((b=V.value)==null?void 0:b.uid)!==(w==null?void 0:w.uid)&&(V.value=c,C.value=N,!h&&t("expand-change",(c==null?void 0:c.pathValues)||[]))},W=(c,h,b=!0)=>{const{checkStrictly:v,multiple:N}=p.value,w=P.value[0];n=!0,!N&&(w==null||w.doCheck(!1)),c.doCheck(h),$(),b&&!N&&!v&&t("close"),!b&&!N&&!v&&L(c)},L=c=>{c&&(c=c.parent,L(c),c&&x(c))},Z=c=>u==null?void 0:u.getFlattedNodes(c),_=c=>{var h;return(h=Z(c))==null?void 0:h.filter(b=>b.checked!==!1)},y=()=>{P.value.forEach(c=>c.doCheck(!1)),$(),C.value=C.value.slice(0,1),V.value=null,t("expand-change",[])},$=()=>{var c;const{checkStrictly:h,multiple:b}=p.value,v=P.value,N=_(!h),w=Et(v,N),H=w.map(M=>M.valueByOption);P.value=w,k.value=b?H:(c=H[0])!=null?c:null},R=(c=!1,h=!1)=>{const{modelValue:b}=e,{lazy:v,multiple:N,checkStrictly:w}=p.value,H=!w;if(!(!g.value||n||!h&&ge(b,k.value)))if(v&&!c){const O=je(ut(We(b))).map(U=>u==null?void 0:u.getNodeByValue(U)).filter(U=>!!U&&!U.loaded&&!U.loading);O.length?O.forEach(U=>{z(U,()=>R(!1,h))}):R(!0,h)}else{const M=N?We(b):[b],O=je(M.map(U=>u==null?void 0:u.getNodeByValue(U,H)));ne(O,h),k.value=ca(b)}},ne=(c,h=!0)=>{const{checkStrictly:b}=p.value,v=P.value,N=c.filter(M=>!!M&&(b||M.isLeaf)),w=u==null?void 0:u.getSameNode(V.value),H=h&&w||N[0];H?H.pathNodes.forEach(M=>x(M,!0)):V.value=null,v.forEach(M=>M.doCheck(!1)),qe(N).forEach(M=>M.doCheck(!0)),P.value=N,ce(X)},X=()=>{la&&d.value.forEach(c=>{const h=c==null?void 0:c.$el;if(h){const b=h.querySelector(`.${o.namespace.value}-scrollbar__wrap`),v=h.querySelector(`.${o.b("node")}.${o.is("active")}`)||h.querySelector(`.${o.b("node")}.in-active-path`);za(b,v)}})},Q=c=>{const h=c.target,{code:b}=c;switch(b){case A.up:case A.down:{c.preventDefault();const v=b===A.up?-1:1;ye(oa(h,v,`.${o.b("node")}[tabindex="-1"]`));break}case A.left:{c.preventDefault();const v=d.value[Xe(h)-1],N=v==null?void 0:v.$el.querySelector(`.${o.b("node")}[aria-expanded="true"]`);ye(N);break}case A.right:{c.preventDefault();const v=d.value[Xe(h)+1],N=v==null?void 0:v.$el.querySelector(`.${o.b("node")}[tabindex="-1"]`);ye(N);break}case A.enter:Nt(h);break}};return Ma(Me,qe({config:p,expandingNode:V,checkedNodes:P,isHoverMenu:te,initialLoaded:g,renderLabelFn:q,lazyLoad:z,expandNode:x,handleCheckChange:W})),se([p,()=>e.options],B,{deep:!0,immediate:!0}),se(()=>e.modelValue,()=>{n=!1,R()},{deep:!0}),se(()=>k.value,c=>{ge(c,e.modelValue)||(t(Ce,c),t(Ne,c))}),Fa(()=>d.value=[]),sa(()=>!De(e.modelValue)&&R()),{ns:o,menuList:d,menus:C,checkedNodes:P,handleKeyDown:Q,handleCheckChange:W,getFlattedNodes:Z,getCheckedNodes:_,clearCheckedNodes:y,calculateCheckedValue:$,scrollToExpandingNode:X}}});function $t(e,t,s,n,o,p){const u=j("el-cascader-menu");return f(),I("div",{class:T([e.ns.b("panel"),e.ns.is("bordered",e.border)]),onKeydown:e.handleKeyDown},[(f(!0),I(re,null,me(e.menus,(g,d)=>(f(),F(u,{key:d,ref_for:!0,ref:k=>e.menuList[d]=k,index:d,nodes:[...g]},null,8,["index","nodes"]))),128))],42,["onKeydown"])}var St=Ee(wt,[["render",$t],["__file","index.vue"]]);const Tt=ia(St),_t=na({...ra,size:Ba,placeholder:String,disabled:Boolean,clearable:Boolean,filterable:Boolean,filterMethod:{type:oe(Function),default:(e,t)=>e.text.includes(t)},separator:{type:String,default:" / "},showAllLevels:{type:Boolean,default:!0},collapseTags:Boolean,maxCollapseTags:{type:Number,default:1},collapseTagsTooltip:{type:Boolean,default:!1},debounce:{type:Number,default:300},beforeFilter:{type:oe(Function),default:()=>!0},placement:{type:oe(String),values:xa,default:"bottom-start"},fallbackPlacements:{type:oe(Array),default:["bottom-start","bottom","top-start","top","right","left"]},popperClass:{type:String,default:""},teleported:Ha.teleported,tagType:{...Ze.type,default:"info"},tagEffect:{...Ze.effect,default:"light"},validateEvent:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},...Aa}),Vt={[Ce]:e=>!0,[Ne]:e=>!0,focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,visibleChange:e=>Oa(e),expandChange:e=>!!e,removeTag:e=>!!e},Pt="ElCascader",Lt=pe({name:Pt}),Dt=pe({...Lt,props:_t,emits:Vt,setup(e,{expose:t,emit:s}){const n=e,o={modifiers:[{name:"arrowPosition",enabled:!0,phase:"main",fn:({state:a})=>{const{modifiersData:l,placement:i}=a;["right","left","bottom","top"].includes(i)||(l.arrow.x=35)},requires:["arrow"]}]},p=Ka();let u=0,g=0;const d=ue("cascader"),k=ue("input"),{t:C}=ta(),{form:V,formItem:P}=qa(),{valueOnClear:te}=Ra(n),{isComposing:q,handleComposition:B}=Ua({afterComposition(a){var l;const i=(l=a.target)==null?void 0:l.value;Le(i)}}),z=S(null),x=S(null),W=S(null),L=S(null),Z=S(null),_=S(!1),y=S(!1),$=S(!1),R=S(!1),ne=S(""),X=S(""),Q=S([]),c=S([]),h=S([]),b=m(()=>p.style),v=m(()=>n.disabled||(V==null?void 0:V.disabled)),N=m(()=>n.placeholder||C("el.cascader.placeholder")),w=m(()=>X.value||Q.value.length>0||q.value?"":N.value),H=ja(),M=m(()=>["small"].includes(H.value)?"small":"default"),O=m(()=>!!n.props.multiple),U=m(()=>!n.filterable||O.value),Fe=m(()=>O.value?X.value:ne.value),be=m(()=>{var a;return((a=L.value)==null?void 0:a.checkedNodes)||[]}),ua=m(()=>!n.clearable||v.value||$.value||!y.value?!1:!!be.value.length),we=m(()=>{const{showAllLevels:a,separator:l}=n,i=be.value;return i.length?O.value?"":i[0].calcText(a,l):""}),da=m(()=>(P==null?void 0:P.validateState)||""),$e=m({get(){return ca(n.modelValue)},set(a){const l=a??te.value;s(Ce,l),s(Ne,l),n.validateEvent&&(P==null||P.validate("change").catch(i=>Wa()))}}),pa=m(()=>[d.b(),d.m(H.value),d.is("disabled",v.value),p.class]),ha=m(()=>[k.e("icon"),"icon-arrow-down",d.is("reverse",_.value)]),fa=m(()=>d.is("focus",_.value||R.value)),ze=m(()=>{var a,l;return(l=(a=z.value)==null?void 0:a.popperRef)==null?void 0:l.contentRef}),K=a=>{var l,i,E;v.value||(a=a??!_.value,a!==_.value&&(_.value=a,(i=(l=x.value)==null?void 0:l.input)==null||i.setAttribute("aria-expanded",`${a}`),a?(he(),ce((E=L.value)==null?void 0:E.scrollToExpandingNode)):n.filterable&&Pe(),s("visibleChange",a)))},he=()=>{ce(()=>{var a;(a=z.value)==null||a.updatePopper()})},Se=()=>{$.value=!1},Te=a=>{const{showAllLevels:l,separator:i}=n;return{node:a,key:a.uid,text:a.calcText(l,i),hitState:!1,closable:!v.value&&!a.isDisabled,isCollapseTag:!1}},_e=a=>{var l;const i=a.node;i.doCheck(!1),(l=L.value)==null||l.calculateCheckedValue(),s("removeTag",i.valueByOption)},va=()=>{if(!O.value)return;const a=be.value,l=[],i=[];if(a.forEach(E=>i.push(Te(E))),c.value=i,a.length){a.slice(0,n.maxCollapseTags).forEach(Y=>l.push(Te(Y)));const E=a.slice(n.maxCollapseTags),ee=E.length;ee&&(n.collapseTags?l.push({key:-1,text:`+ ${ee}`,closable:!1,isCollapseTag:!0}):E.forEach(Y=>l.push(Te(Y))))}Q.value=l},Be=()=>{var a,l;const{filterMethod:i,showAllLevels:E,separator:ee}=n,Y=(l=(a=L.value)==null?void 0:a.getFlattedNodes(!n.props.checkStrictly))==null?void 0:l.filter(ae=>ae.isDisabled?!1:(ae.calcText(E,ee),i(ae,Fe.value)));O.value&&(Q.value.forEach(ae=>{ae.hitState=!1}),c.value.forEach(ae=>{ae.hitState=!1})),$.value=!0,h.value=Y,he()},ma=()=>{var a;let l;$.value&&Z.value?l=Z.value.$el.querySelector(`.${d.e("suggestion-item")}`):l=(a=L.value)==null?void 0:a.$el.querySelector(`.${d.b("node")}[tabindex="-1"]`),l&&(l.focus(),!$.value&&l.click())},Ve=()=>{var a,l;const i=(a=x.value)==null?void 0:a.input,E=W.value,ee=(l=Z.value)==null?void 0:l.$el;if(!(!la||!i)){if(ee){const Y=ee.querySelector(`.${d.e("suggestion-list")}`);Y.style.minWidth=`${i.offsetWidth}px`}if(E){const{offsetHeight:Y}=E,ae=Q.value.length>0?`${Math.max(Y+6,u)}px`:`${u}px`;i.style.height=ae,he()}}},ga=a=>{var l;return(l=L.value)==null?void 0:l.getCheckedNodes(a)},ba=a=>{he(),s("expandChange",a)},ka=a=>{if(!q.value)switch(a.code){case A.enter:K();break;case A.down:K(!0),ce(ma),a.preventDefault();break;case A.esc:_.value===!0&&(a.preventDefault(),a.stopPropagation(),K(!1));break;case A.tab:K(!1);break}},ya=()=>{var a;(a=L.value)==null||a.clearCheckedNodes(),!_.value&&n.filterable&&Pe(),K(!1),s("clear")},Pe=()=>{const{value:a}=we;ne.value=a,X.value=a},Ca=a=>{var l,i;const{checked:E}=a;O.value?(l=L.value)==null||l.handleCheckChange(a,!E,!1):(!E&&((i=L.value)==null||i.handleCheckChange(a,!0,!1)),K(!1))},Na=a=>{const l=a.target,{code:i}=a;switch(i){case A.up:case A.down:{const E=i===A.up?-1:1;ye(oa(l,E,`.${d.e("suggestion-item")}[tabindex="-1"]`));break}case A.enter:l.click();break}},Ea=()=>{const a=Q.value,l=a[a.length-1];g=X.value?0:g+1,!(!l||!g||n.collapseTags&&a.length>1)&&(l.hitState?_e(l):l.hitState=!0)},xe=a=>{const l=a.target,i=d.e("search-input");l.className===i&&(R.value=!0),s("focus",a)},He=a=>{R.value=!1,s("blur",a)},wa=Za(()=>{const{value:a}=Fe;if(!a)return;const l=n.beforeFilter(a);Ga(l)?l.then(Be).catch(()=>{}):l!==!1?Be():Se()},n.debounce),Le=(a,l)=>{!_.value&&K(!0),!(l!=null&&l.isComposing)&&(a?wa():Se())},Ae=a=>Number.parseFloat(ot(k.cssVarName("input-height"),a).value)-2;return se($,he),se([be,v,()=>n.collapseTags],va),se(Q,()=>{ce(()=>Ve())}),se(H,async()=>{await ce();const a=x.value.input;u=Ae(a)||u,Ve()}),se(we,Pe,{immediate:!0}),sa(()=>{const a=x.value.input,l=Ae(a);u=a.offsetHeight||l,Ja(a,Ve)}),t({getCheckedNodes:ga,cascaderPanelRef:L,togglePopperVisible:K,contentRef:ze}),(a,l)=>(f(),F(r(Re),{ref_key:"tooltipRef",ref:z,visible:_.value,teleported:a.teleported,"popper-class":[r(d).e("dropdown"),a.popperClass],"popper-options":o,"fallback-placements":a.fallbackPlacements,"stop-popper-mouse-event":!1,"gpu-acceleration":!1,placement:a.placement,transition:`${r(d).namespace.value}-zoom-in-top`,effect:"light",pure:"",persistent:a.persistent,onHide:Se},{default:D(()=>[ke((f(),I("div",{class:T(r(pa)),style:Xa(r(b)),onClick:()=>K(r(U)?void 0:!0),onKeydown:ka,onMouseenter:i=>y.value=!0,onMouseleave:i=>y.value=!1},[J(r(Ya),{ref_key:"input",ref:x,modelValue:ne.value,"onUpdate:modelValue":i=>ne.value=i,placeholder:r(w),readonly:r(U),disabled:r(v),"validate-event":!1,size:r(H),class:T(r(fa)),tabindex:r(O)&&a.filterable&&!r(v)?-1:void 0,onCompositionstart:r(B),onCompositionupdate:r(B),onCompositionend:r(B),onFocus:xe,onBlur:He,onInput:Le},{suffix:D(()=>[r(ua)?(f(),F(r(fe),{key:"clear",class:T([r(k).e("icon"),"icon-circle-close"]),onClick:ve(ya,["stop"])},{default:D(()=>[J(r(Qa))]),_:1},8,["class","onClick"])):(f(),F(r(fe),{key:"arrow-down",class:T(r(ha)),onClick:ve(i=>K(),["stop"])},{default:D(()=>[J(r(et))]),_:1},8,["class","onClick"]))]),_:1},8,["modelValue","onUpdate:modelValue","placeholder","readonly","disabled","size","class","tabindex","onCompositionstart","onCompositionupdate","onCompositionend"]),r(O)?(f(),I("div",{key:0,ref_key:"tagWrapper",ref:W,class:T([r(d).e("tags"),r(d).is("validate",!!r(da))])},[(f(!0),I(re,null,me(Q.value,i=>(f(),F(r(Ge),{key:i.key,type:a.tagType,size:r(M),effect:a.tagEffect,hit:i.hitState,closable:i.closable,"disable-transitions":"",onClose:E=>_e(i)},{default:D(()=>[i.isCollapseTag===!1?(f(),I("span",{key:0},le(i.text),1)):(f(),F(r(Re),{key:1,disabled:_.value||!a.collapseTagsTooltip,"fallback-placements":["bottom","top","right","left"],placement:"bottom",effect:"light"},{default:D(()=>[ie("span",null,le(i.text),1)]),content:D(()=>[ie("div",{class:T(r(d).e("collapse-tags"))},[(f(!0),I(re,null,me(c.value.slice(a.maxCollapseTags),(E,ee)=>(f(),I("div",{key:ee,class:T(r(d).e("collapse-tag"))},[(f(),F(r(Ge),{key:E.key,class:"in-tooltip",type:a.tagType,size:r(M),effect:a.tagEffect,hit:E.hitState,closable:E.closable,"disable-transitions":"",onClose:Y=>_e(E)},{default:D(()=>[ie("span",null,le(E.text),1)]),_:2},1032,["type","size","effect","hit","closable","onClose"]))],2))),128))],2)]),_:2},1032,["disabled"]))]),_:2},1032,["type","size","effect","hit","closable","onClose"]))),128)),a.filterable&&!r(v)?ke((f(),I("input",{key:0,"onUpdate:modelValue":i=>X.value=i,type:"text",class:T(r(d).e("search-input")),placeholder:r(we)?"":r(N),onInput:i=>Le(X.value,i),onClick:ve(i=>K(!0),["stop"]),onKeydown:at(Ea,["delete"]),onCompositionstart:r(B),onCompositionupdate:r(B),onCompositionend:r(B),onFocus:xe,onBlur:He},null,42,["onUpdate:modelValue","placeholder","onInput","onClick","onKeydown","onCompositionstart","onCompositionupdate","onCompositionend"])),[[tt,X.value]]):G("v-if",!0)],2)):G("v-if",!0)],46,["onClick","onMouseenter","onMouseleave"])),[[r(nt),()=>K(!1),r(ze)]])]),content:D(()=>[ke(J(r(Tt),{ref_key:"cascaderPanelRef",ref:L,modelValue:r($e),"onUpdate:modelValue":i=>st($e)?$e.value=i:null,options:a.options,props:n.props,border:!1,"render-label":a.$slots.default,onExpandChange:ba,onClose:i=>a.$nextTick(()=>K(!1))},null,8,["modelValue","onUpdate:modelValue","options","props","render-label","onClose"]),[[Ue,!$.value]]),a.filterable?ke((f(),F(r(aa),{key:0,ref_key:"suggestionPanel",ref:Z,tag:"ul",class:T(r(d).e("suggestion-panel")),"view-class":r(d).e("suggestion-list"),onKeydown:Na},{default:D(()=>[h.value.length?(f(!0),I(re,{key:0},me(h.value,i=>(f(),I("li",{key:i.uid,class:T([r(d).e("suggestion-item"),r(d).is("checked",i.checked)]),tabindex:-1,onClick:E=>Ca(i)},[ie("span",null,le(i.text),1),i.checked?(f(),F(r(fe),{key:0},{default:D(()=>[J(r(Ye))]),_:1})):G("v-if",!0)],10,["onClick"]))),128)):lt(a.$slots,"empty",{key:1},()=>[ie("li",{class:T(r(d).e("empty-text"))},le(r(C)("el.cascader.noMatch")),3)])]),_:3},8,["class","view-class"])),[[Ue,$.value]]):G("v-if",!0)]),_:3},8,["visible","teleported","popper-class","fallback-placements","placement","transition","persistent"]))}});var It=Ee(Dt,[["__file","cascader.vue"]]);const Ot=ia(It);export{Ot as E};