*/var Wn=/["'&<>]/,Hn=Fn;function Fn(e){var t=""+e,l=Wn.exec(t);if(!l)return t;var n,r="",a=0,u=0;for(a=l.index;a<t.length;a++){switch(t.charCodeAt(a)){case 34:n=""";break;case 38:n="&";break;case 39:n="'";break;case 60:n="<";break;case 62:n=">";break;default:continue}u!==a&&(r+=t.substring(u,a)),u=a+1,r+=n}return u!==a?r+t.substring(u,a):r}const qe=function(e){var t;return(t=e.target)==null?void 0:t.closest("td")},wt=function(e){return e!==null&&typeof e=="object"},kn=function(e,t,l,n,r){if(!t&&!n&&(!r||Array.isArray(r)&&!r.length))return e;typeof l=="string"?l=l==="descending"?-1:1:l=l&&l<0?-1:1;const a=n?null:function(s,o){return r?(Array.isArray(r)||(r=[r]),r.map(i=>typeof i=="string"?Ue(s,i):i(s,o,e))):(t!=="$key"&&wt(s)&&"$value"in s&&(s=s.$value),[wt(s)?Ue(s,t):s])},u=function(s,o){if(n)return n(s.value,o.value);for(let i=0,c=s.key.length;i<c;i++){if(s.key[i]<o.key[i])return-1;if(s.key[i]>o.key[i])return 1}return 0};return e.map((s,o)=>({value:s,index:o,key:a?a(s,o):null})).sort((s,o)=>{let i=u(s,o);return i||(i=s.index-o.index),i*+l}).map(s=>s.value)},Gt=function(e,t){let l=null;return e.columns.forEach(n=>{n.id===t&&(l=n)}),l},Tn=function(e,t){let l=null;for(let n=0;n<e.columns.length;n++){const r=e.columns[n];if(r.columnKey===t){l=r;break}}return l||Ml("ElTable",`No column matching with column-key: ${t}`),l},St=function(e,t,l){const n=(t.className||"").match(new RegExp(`${l}-table_[^\\s]+`,"gm"));return n?Gt(e,n[0]):null},q=(e,t)=>{if(!e)throw new Error("Row is required when get row identity");if(typeof t=="string"){if(!t.includes("."))return`${e[t]}`;const l=t.split(".");let n=e;for(const r of l)n=n[r];return`${n}`}else if(typeof t=="function")return t.call(null,e)},be=function(e,t){const l={};return(e||[]).forEach((n,r)=>{l[q(n,t)]={row:n,index:r}}),l};function On(e,t){const l={};let n;for(n in e)l[n]=e[n];for(n in t)if(ke(t,n)){const r=t[n];typeof r<"u"&&(l[n]=r)}return l}function at(e){return e===""||e!==void 0&&(e=Number.parseInt(e,10),Number.isNaN(e)&&(e="")),e}function Qt(e){return e===""||e!==void 0&&(e=at(e),Number.isNaN(e)&&(e=80)),e}function $n(e){return typeof e=="number"?e:typeof e=="string"?/^\d+(?:px)?$/.test(e)?Number.parseInt(e,10):e:null}function Pn(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,l)=>(...n)=>t(l(...n)))}function He(e,t,l){let n=!1;const r=e.indexOf(t),a=r!==-1,u=s=>{s==="add"?e.push(t):e.splice(r,1),n=!0,Fl(t.children)&&t.children.forEach(o=>{He(e,o,l??!a)})};return Al(l)?l&&!a?u("add"):!l&&a&&u("remove"):u(a?"remove":"add"),n}function Kn(e,t,l="children",n="hasChildren"){const r=u=>!(Array.isArray(u)&&u.length);function a(u,s,o){t(u,s,o),s.forEach(i=>{if(i[n]){t(i,null,o+1);return}const c=i[l];r(c)||a(i,c,o+1)})}e.forEach(u=>{if(u[n]){t(u,null,0);return}const s=u[l];r(s)||a(u,s,0)})}let he;function Bn(e,t,l,n,r){const{nextZIndex:a}=Wl(),u=e==null?void 0:e.dataset.prefix,s=e==null?void 0:e.querySelector(`.${u}-scrollbar__wrap`);function o(){const g=r==="light",w=document.createElement("div");return w.className=`${u}-popper ${g?"is-light":"is-dark"}`,l=Hn(l),w.innerHTML=l,w.style.zIndex=String(a()),e==null||e.appendChild(w),w}function i(){const g=document.createElement("div");return g.className=`${u}-popper__arrow`,g}function c(){h&&h.update()}he==null||he(),he=()=>{try{h&&h.destroy(),f&&(e==null||e.removeChild(f)),t.removeEventListener("mouseenter",c),t.removeEventListener("mouseleave",he),s==null||s.removeEventListener("scroll",he),he=void 0}catch{}};let h=null;const f=o(),y=i();return f.appendChild(y),h=Hl(t,f,{strategy:"absolute",modifiers:[{name:"offset",options:{offset:[0,8]}},{name:"arrow",options:{element:y,padding:10}}],...n}),t.addEventListener("mouseenter",c),t.addEventListener("mouseleave",he),s==null||s.addEventListener("scroll",he),h}function Zt(e){return e.children?Sn(e.children,Zt):[e]}function Et(e,t){return e+t.colSpan}const Jt=(e,t,l,n)=>{let r=0,a=e;const u=l.states.columns.value;if(n){const o=Zt(n[e]);r=u.slice(0,u.indexOf(o[0])).reduce(Et,0),a=r+o.reduce(Et,0)-1}else r=e;let s;switch(t){case"left":a<l.states.fixedLeafColumnsLength.value&&(s="left");break;case"right":r>=u.length-l.states.rightFixedLeafColumnsLength.value&&(s="right");break;default:a<l.states.fixedLeafColumnsLength.value?s="left":r>=u.length-l.states.rightFixedLeafColumnsLength.value&&(s="right")}return s?{direction:s,start:r,after:a}:{}},it=(e,t,l,n,r,a=0)=>{const u=[],{direction:s,start:o,after:i}=Jt(t,l,n,r);if(s){const c=s==="left";u.push(`${e}-fixed-column--${s}`),c&&i+a===n.states.fixedLeafColumnsLength.value-1?u.push("is-last-column"):!c&&o-a===n.states.columns.value.length-n.states.rightFixedLeafColumnsLength.value&&u.push("is-first-column")}return u};function xt(e,t){return e+(t.realWidth===null||Number.isNaN(t.realWidth)?Number(t.width):t.realWidth)}const ut=(e,t,l,n)=>{const{direction:r,start:a=0,after:u=0}=Jt(e,t,l,n);if(!r)return;const s={},o=r==="left",i=l.states.columns.value;return o?s.left=i.slice(0,a).reduce(xt,0):s.right=i.slice(u+1).reverse().reduce(xt,0),s},Ne=(e,t)=>{e&&(Number.isNaN(e[t])||(e[t]=`${e[t]}px`))};function zn(e){const t=te(),l=x(!1),n=x([]);return{updateExpandRows:()=>{const o=e.data.value||[],i=e.rowKey.value;if(l.value)n.value=o.slice();else if(i){const c=be(n.value,i);n.value=o.reduce((h,f)=>{const y=q(f,i);return c[y]&&h.push(f),h},[])}else n.value=[]},toggleRowExpansion:(o,i)=>{He(n.value,o,i)&&t.emit("expand-change",o,n.value.slice())},setExpandRowKeys:o=>{t.store.assertRowKey();const i=e.data.value||[],c=e.rowKey.value,h=be(i,c);n.value=o.reduce((f,y)=>{const g=h[y];return g&&f.push(g.row),f},[])},isRowExpanded:o=>{const i=e.rowKey.value;return i?!!be(n.value,i)[q(o,i)]:n.value.includes(o)},states:{expandRows:n,defaultExpandAll:l}}}function Dn(e){const t=te(),l=x(null),n=x(null),r=i=>{t.store.assertRowKey(),l.value=i,u(i)},a=()=>{l.value=null},u=i=>{const{data:c,rowKey:h}=e;let f=null;h.value&&(f=(J(c)||[]).find(y=>q(y,h.value)===i)),n.value=f,t.emit("current-change",n.value,null)};return{setCurrentRowKey:r,restoreCurrentRowKey:a,setCurrentRowByKey:u,updateCurrentRow:i=>{const c=n.value;if(i&&i!==c){n.value=i,t.emit("current-change",n.value,c);return}!i&&c&&(n.value=null,t.emit("current-change",null,c))},updateCurrentRowData:()=>{const i=e.rowKey.value,c=e.data.value||[],h=n.value;if(!c.includes(h)&&h){if(i){const f=q(h,i);u(f)}else n.value=null;n.value===null&&t.emit("current-change",null,h)}else l.value&&(u(l.value),a())},states:{_currentRowKey:l,currentRow:n}}}function In(e){const t=x([]),l=x({}),n=x(16),r=x(!1),a=x({}),u=x("hasChildren"),s=x("children"),o=te(),i=$(()=>{if(!e.rowKey.value)return{};const S=e.data.value||[];return h(S)}),c=$(()=>{const S=e.rowKey.value,p=Object.keys(a.value),d={};return p.length&&p.forEach(v=>{if(a.value[v].length){const C={children:[]};a.value[v].forEach(N=>{const E=q(N,S);C.children.push(E),N[u.value]&&!d[E]&&(d[E]={children:[]})}),d[v]=C}}),d}),h=S=>{const p=e.rowKey.value,d={};return Kn(S,(v,C,N)=>{const E=q(v,p);Array.isArray(C)?d[E]={children:C.map(M=>q(M,p)),level:N}:r.value&&(d[E]={children:[],lazy:!0,level:N})},s.value,u.value),d},f=(S=!1,p=(d=>(d=o.store)==null?void 0:d.states.defaultExpandAll.value)())=>{var d;const v=i.value,C=c.value,N=Object.keys(v),E={};if(N.length){const M=J(l),A=[],K=(T,I)=>{if(S)return t.value?p||t.value.includes(I):!!(p||T!=null&&T.expanded);{const z=p||t.value&&t.value.includes(I);return!!(T!=null&&T.expanded||z)}};N.forEach(T=>{const I=M[T],z={...v[T]};if(z.expanded=K(I,T),z.lazy){const{loaded:U=!1,loading:_=!1}=I||{};z.loaded=!!U,z.loading=!!_,A.push(T)}E[T]=z});const D=Object.keys(C);r.value&&D.length&&A.length&&D.forEach(T=>{const I=M[T],z=C[T].children;if(A.includes(T)){if(E[T].children.length!==0)throw new Error("[ElTable]children must be an empty array.");E[T].children=z}else{const{loaded:U=!1,loading:_=!1}=I||{};E[T]={lazy:!0,loaded:!!U,loading:!!_,expanded:K(I,T),children:z,level:""}}})}l.value=E,(d=o.store)==null||d.updateTableScrollY()};ue(()=>t.value,()=>{f(!0)}),ue(()=>i.value,()=>{f()}),ue(()=>c.value,()=>{f()});const y=S=>{t.value=S,f()},g=(S,p)=>{o.store.assertRowKey();const d=e.rowKey.value,v=q(S,d),C=v&&l.value[v];if(v&&C&&"expanded"in C){const N=C.expanded;p=typeof p>"u"?!C.expanded:p,l.value[v].expanded=p,N!==p&&o.emit("expand-change",S,p),o.store.updateTableScrollY()}},w=S=>{o.store.assertRowKey();const p=e.rowKey.value,d=q(S,p),v=l.value[d];r.value&&v&&"loaded"in v&&!v.loaded?m(S,d,v):g(S,void 0)},m=(S,p,d)=>{const{load:v}=o.props;v&&!l.value[p].loaded&&(l.value[p].loading=!0,v(S,d,C=>{if(!Array.isArray(C))throw new TypeError("[ElTable] data must be an array");l.value[p].loading=!1,l.value[p].loaded=!0,l.value[p].expanded=!0,C.length&&(a.value[p]=C),o.emit("expand-change",S,!0)}))};return{loadData:m,loadOrToggle:w,toggleTreeExpansion:g,updateTreeExpandKeys:y,updateTreeData:f,normalize:h,states:{expandRowKeys:t,treeData:l,indent:n,lazy:r,lazyTreeNodeMap:a,lazyColumnIdentifier:u,childrenColumnName:s}}}const Vn=(e,t)=>{const l=t.sortingColumn;return!l||typeof l.sortable=="string"?e:kn(e,t.sortProp,t.sortOrder,l.sortMethod,l.sortBy)},De=e=>{const t=[];return e.forEach(l=>{l.children?t.push.apply(t,De(l.children)):t.push(l)}),t};function jn(){var e;const t=te(),{size:l}=kl((e=t.proxy)==null?void 0:e.$props),n=x(null),r=x([]),a=x([]),u=x(!1),s=x([]),o=x([]),i=x([]),c=x([]),h=x([]),f=x([]),y=x([]),g=x([]),w=x(0),m=x(0),S=x(0),p=x(!1),d=x([]),v=x(!1),C=x(!1),N=x(null),E=x({}),M=x(null),A=x(null),K=x(null),D=x(null),T=x(null);ue(r,()=>t.state&&_(!1),{deep:!0});const I=()=>{if(!n.value)throw new Error("[ElTable] prop row-key is required")},z=L=>{var W;(W=L.children)==null||W.forEach(O=>{O.fixed=L.fixed,z(O)})},U=()=>{s.value.forEach(P=>{z(P)}),c.value=s.value.filter(P=>P.fixed===!0||P.fixed==="left"),h.value=s.value.filter(P=>P.fixed==="right"),c.value.length>0&&s.value[0]&&s.value[0].type==="selection"&&!s.value[0].fixed&&(s.value[0].fixed=!0,c.value.unshift(s.value[0]));const L=s.value.filter(P=>!P.fixed);o.value=[].concat(c.value).concat(L).concat(h.value);const W=De(L),O=De(c.value),F=De(h.value);w.value=W.length,m.value=O.length,S.value=F.length,i.value=[].concat(O).concat(W).concat(F),u.value=c.value.length>0||h.value.length>0},_=(L,W=!1)=>{L&&U(),W?t.state.doLayout():t.state.debouncedUpdateLayout()},Ce=L=>d.value.includes(L),R=()=>{p.value=!1,d.value.length&&(d.value=[],t.emit("selection-change",[]))},b=()=>{let L;if(n.value){L=[];const W=be(d.value,n.value),O=be(r.value,n.value);for(const F in W)ke(W,F)&&!O[F]&&L.push(W[F].row)}else L=d.value.filter(W=>!r.value.includes(W));if(L.length){const W=d.value.filter(O=>!L.includes(O));d.value=W,t.emit("selection-change",W.slice())}},H=()=>(d.value||[]).slice(),B=(L,W=void 0,O=!0)=>{if(He(d.value,L,W)){const P=(d.value||[]).slice();O&&t.emit("select",P,L),t.emit("selection-change",P)}},V=()=>{var L,W;const O=C.value?!p.value:!(p.value||d.value.length);p.value=O;let F=!1,P=0;const Z=(W=(L=t==null?void 0:t.store)==null?void 0:L.states)==null?void 0:W.rowKey.value;r.value.forEach((le,we)=>{const fe=we+P;N.value?N.value.call(null,le,fe)&&He(d.value,le,O)&&(F=!0):He(d.value,le,O)&&(F=!0),P+=G(q(le,Z))}),F&&t.emit("selection-change",d.value?d.value.slice():[]),t.emit("select-all",d.value)},Y=()=>{const L=be(d.value,n.value);r.value.forEach(W=>{const O=q(W,n.value),F=L[O];F&&(d.value[F.index]=W)})},re=()=>{var L,W,O;if(((L=r.value)==null?void 0:L.length)===0){p.value=!1;return}let F;n.value&&(F=be(d.value,n.value));const P=function(fe){return F?!!F[q(fe,n.value)]:d.value.includes(fe)};let Z=!0,le=0,we=0;for(let fe=0,wl=(r.value||[]).length;fe<wl;fe++){const Sl=(O=(W=t==null?void 0:t.store)==null?void 0:W.states)==null?void 0:O.rowKey.value,El=fe+we,Ye=r.value[fe],xl=N.value&&N.value.call(null,Ye,El);if(P(Ye))le++;else if(!N.value||xl){Z=!1;break}we+=G(q(Ye,Sl))}le===0&&(Z=!1),p.value=Z},G=L=>{var W;if(!t||!t.store)return 0;const{treeData:O}=t.store.states;let F=0;const P=(W=O.value[L])==null?void 0:W.children;return P&&(F+=P.length,P.forEach(Z=>{F+=G(Z)})),F},ae=(L,W)=>{Array.isArray(L)||(L=[L]);const O={};return L.forEach(F=>{E.value[F.id]=W,O[F.columnKey||F.id]=W}),O},ie=(L,W,O)=>{A.value&&A.value!==L&&(A.value.order=null),A.value=L,K.value=W,D.value=O},Q=()=>{let L=J(a);Object.keys(E.value).forEach(W=>{const O=E.value[W];if(!O||O.length===0)return;const F=Gt({columns:i.value},W);F&&F.filterMethod&&(L=L.filter(P=>O.some(Z=>F.filterMethod.call(null,Z,P,F))))}),M.value=L},ge=()=>{r.value=Vn(M.value,{sortingColumn:A.value,sortProp:K.value,sortOrder:D.value})},je=(L=void 0)=>{L&&L.filter||Q(),ge()},rl=L=>{const{tableHeaderRef:W}=t.refs;if(!W)return;const O=Object.assign({},W.filterPanels),F=Object.keys(O);if(F.length)if(typeof L=="string"&&(L=[L]),Array.isArray(L)){const P=L.map(Z=>Tn({columns:i.value},Z));F.forEach(Z=>{const le=P.find(we=>we.id===Z);le&&(le.filteredValue=[])}),t.store.commit("filterChange",{column:P,values:[],silent:!0,multi:!0})}else F.forEach(P=>{const Z=i.value.find(le=>le.id===P);Z&&(Z.filteredValue=[])}),E.value={},t.store.commit("filterChange",{column:{},values:[],silent:!0})},al=()=>{A.value&&(ie(null,null,null),t.store.commit("changeSortCondition",{silent:!0}))},{setExpandRowKeys:il,toggleRowExpansion:dt,updateExpandRows:ul,states:cl,isRowExpanded:dl}=zn({data:r,rowKey:n}),{updateTreeExpandKeys:fl,toggleTreeExpansion:hl,updateTreeData:vl,loadOrToggle:pl,states:gl}=In({data:r,rowKey:n}),{updateCurrentRowData:ml,updateCurrentRow:yl,setCurrentRowKey:bl,states:Cl}=Dn({data:r,rowKey:n});return{assertRowKey:I,updateColumns:U,scheduleLayout:_,isSelected:Ce,clearSelection:R,cleanSelection:b,getSelectionRows:H,toggleRowSelection:B,_toggleAllSelection:V,toggleAllSelection:null,updateSelectionByRowKey:Y,updateAllSelected:re,updateFilters:ae,updateCurrentRow:yl,updateSort:ie,execFilter:Q,execSort:ge,execQuery:je,clearFilter:rl,clearSort:al,toggleRowExpansion:dt,setExpandRowKeysAdapter:L=>{il(L),fl(L)},setCurrentRowKey:bl,toggleRowExpansionAdapter:(L,W)=>{i.value.some(({type:F})=>F==="expand")?dt(L,W):hl(L,W)},isRowExpanded:dl,updateExpandRows:ul,updateCurrentRowData:ml,loadOrToggle:pl,updateTreeData:vl,states:{tableSize:l,rowKey:n,data:r,_data:a,isComplex:u,_columns:s,originColumns:o,columns:i,fixedColumns:c,rightFixedColumns:h,leafColumns:f,fixedLeafColumns:y,rightFixedLeafColumns:g,leafColumnsLength:w,fixedLeafColumnsLength:m,rightFixedLeafColumnsLength:S,isAllSelected:p,selection:d,reserveSelection:v,selectOnIndeterminate:C,selectable:N,filters:E,filteredData:M,sortingColumn:A,sortProp:K,sortOrder:D,hoverRow:T,...cl,...gl,...Cl}}}function ot(e,t){return e.map(l=>{var n;return l.id===t.id?t:((n=l.children)!=null&&n.length&&(l.children=ot(l.children,t)),l)})}function el(e){e.forEach(t=>{var l,n;t.no=(l=t.getColumnIndex)==null?void 0:l.call(t),(n=t.children)!=null&&n.length&&el(t.children)}),e.sort((t,l)=>t.no-l.no)}function Yn(){const e=te(),t=jn();return{ns:ce("table"),...t,mutations:{setData(u,s){const o=J(u._data)!==s;u.data.value=s,u._data.value=s,e.store.execQuery(),e.store.updateCurrentRowData(),e.store.updateExpandRows(),e.store.updateTreeData(e.store.states.defaultExpandAll.value),J(u.reserveSelection)?(e.store.assertRowKey(),e.store.updateSelectionByRowKey()):o?e.store.clearSelection():e.store.cleanSelection(),e.store.updateAllSelected(),e.$ready&&e.store.scheduleLayout()},insertColumn(u,s,o){const i=J(u._columns);let c=[];o?(o&&!o.children&&(o.children=[]),o.children.push(s),c=ot(i,o)):(i.push(s),c=i),el(c),u._columns.value=c,s.type==="selection"&&(u.selectable.value=s.selectable,u.reserveSelection.value=s.reserveSelection),e.$ready&&(e.store.updateColumns(),e.store.scheduleLayout())},removeColumn(u,s,o){const i=J(u._columns)||[];if(o)o.children.splice(o.children.findIndex(c=>c.id===s.id),1),Re(()=>{var c;((c=o.children)==null?void 0:c.length)===0&&delete o.children}),u._columns.value=ot(i,o);else{const c=i.indexOf(s);c>-1&&(i.splice(c,1),u._columns.value=i)}e.$ready&&(e.store.updateColumns(),e.store.scheduleLayout())},sort(u,s){const{prop:o,order:i,init:c}=s;if(o){const h=J(u.columns).find(f=>f.property===o);h&&(h.order=i,e.store.updateSort(h,o,i),e.store.commit("changeSortCondition",{init:c}))}},changeSortCondition(u,s){const{sortingColumn:o,sortProp:i,sortOrder:c}=u,h=J(o),f=J(i),y=J(c);y===null&&(u.sortingColumn.value=null,u.sortProp.value=null);const g={filter:!0};e.store.execQuery(g),(!s||!(s.silent||s.init))&&e.emit("sort-change",{column:h,prop:f,order:y}),e.store.updateTableScrollY()},filterChange(u,s){const{column:o,values:i,silent:c}=s,h=e.store.updateFilters(o,i);e.store.execQuery(),c||e.emit("filter-change",h),e.store.updateTableScrollY()},toggleAllSelection(){e.store.toggleAllSelection()},rowSelectedChanged(u,s){e.store.toggleRowSelection(s),e.store.updateAllSelected()},setHoverRow(u,s){u.hoverRow.value=s},setCurrentRow(u,s){e.store.updateCurrentRow(s)}},commit:function(u,...s){const o=e.store.mutations;if(o[u])o[u].apply(e,[e.store.states].concat(s));else throw new Error(`Action not found: ${u}`)},updateTableScrollY:function(){Re(()=>e.layout.updateScrollY.apply(e.layout))}}}const Fe={rowKey:"rowKey",defaultExpandAll:"defaultExpandAll",selectOnIndeterminate:"selectOnIndeterminate",indent:"indent",lazy:"lazy",data:"data",["treeProps.hasChildren"]:{key:"lazyColumnIdentifier",default:"hasChildren"},["treeProps.children"]:{key:"childrenColumnName",default:"children"}};function Xn(e,t){if(!e)throw new Error("Table is required.");const l=Yn();return l.toggleAllSelection=Ie(l._toggleAllSelection,10),Object.keys(Fe).forEach(n=>{tl(ll(t,n),n,l)}),qn(l,t),l}function qn(e,t){Object.keys(Fe).forEach(l=>{ue(()=>ll(t,l),n=>{tl(n,l,e)})})}function tl(e,t,l){let n=e,r=Fe[t];typeof Fe[t]=="object"&&(r=r.key,n=n||Fe[t].default),l.states[r].value=n}function ll(e,t){if(t.includes(".")){const l=t.split(".");let n=e;return l.forEach(r=>{n=n[r]}),n}else return e[t]}class Un{constructor(t){this.observers=[],this.table=null,this.store=null,this.columns=[],this.fit=!0,this.showHeader=!0,this.height=x(null),this.scrollX=x(!1),this.scrollY=x(!1),this.bodyWidth=x(null),this.fixedWidth=x(null),this.rightFixedWidth=x(null),this.gutterWidth=0;for(const l in t)ke(t,l)&&(Tl(this[l])?this[l].value=t[l]:this[l]=t[l]);if(!this.table)throw new Error("Table is required for Table Layout");if(!this.store)throw new Error("Store is required for Table Layout")}updateScrollY(){if(this.height.value===null)return!1;const l=this.table.refs.scrollBarRef;if(this.table.vnode.el&&l){let n=!0;const r=this.scrollY.value;return n=l.wrapRef.scrollHeight>l.wrapRef.clientHeight,this.scrollY.value=n,r!==n}return!1}setHeight(t,l="height"){if(!Te)return;const n=this.table.vnode.el;if(t=$n(t),this.height.value=Number(t),!n&&(t||t===0))return Re(()=>this.setHeight(t,l));typeof t=="number"?(n.style[l]=`${t}px`,this.updateElsHeight()):typeof t=="string"&&(n.style[l]=t,this.updateElsHeight())}setMaxHeight(t){this.setHeight(t,"max-height")}getFlattenColumns(){const t=[];return this.table.store.states.columns.value.forEach(n=>{n.isColumnGroup?t.push.apply(t,n.columns):t.push(n)}),t}updateElsHeight(){this.updateScrollY(),this.notifyObservers("scrollable")}headerDisplayNone(t){if(!t)return!0;let l=t;for(;l.tagName!=="DIV";){if(getComputedStyle(l).display==="none")return!0;l=l.parentElement}return!1}updateColumnsWidth(){if(!Te)return;const t=this.fit,l=this.table.vnode.el.clientWidth;let n=0;const r=this.getFlattenColumns(),a=r.filter(o=>typeof o.width!="number");if(r.forEach(o=>{typeof o.width=="number"&&o.realWidth&&(o.realWidth=null)}),a.length>0&&t){if(r.forEach(o=>{n+=Number(o.width||o.minWidth||80)}),n<=l){this.scrollX.value=!1;const o=l-n;if(a.length===1)a[0].realWidth=Number(a[0].minWidth||80)+o;else{const i=a.reduce((f,y)=>f+Number(y.minWidth||80),0),c=o/i;let h=0;a.forEach((f,y)=>{if(y===0)return;const g=Math.floor(Number(f.minWidth||80)*c);h+=g,f.realWidth=Number(f.minWidth||80)+g}),a[0].realWidth=Number(a[0].minWidth||80)+o-h}}else this.scrollX.value=!0,a.forEach(o=>{o.realWidth=Number(o.minWidth)});this.bodyWidth.value=Math.max(n,l),this.table.state.resizeState.value.width=this.bodyWidth.value}else r.forEach(o=>{!o.width&&!o.minWidth?o.realWidth=80:o.realWidth=Number(o.width||o.minWidth),n+=o.realWidth}),this.scrollX.value=n>l,this.bodyWidth.value=n;const u=this.store.states.fixedColumns.value;if(u.length>0){let o=0;u.forEach(i=>{o+=Number(i.realWidth||i.width)}),this.fixedWidth.value=o}const s=this.store.states.rightFixedColumns.value;if(s.length>0){let o=0;s.forEach(i=>{o+=Number(i.realWidth||i.width)}),this.rightFixedWidth.value=o}this.notifyObservers("columns")}addObserver(t){this.observers.push(t)}removeObserver(t){const l=this.observers.indexOf(t);l!==-1&&this.observers.splice(l,1)}notifyObservers(t){this.observers.forEach(n=>{var r,a;switch(t){case"columns":(r=n.state)==null||r.onColumnsChange(this);break;case"scrollable":(a=n.state)==null||a.onScrollableChange(this);break;default:throw new Error(`Table Layout don't have event ${t}.`)}})}}const{CheckboxGroup:_n}=Le,Gn=Me({name:"ElTableFilterPanel",components:{ElCheckbox:Le,ElCheckboxGroup:_n,ElScrollbar:At,ElTooltip:Ol,ElIcon:rt,ArrowDown:$l,ArrowUp:Pl},directives:{ClickOutside:Kl},props:{placement:{type:String,default:"bottom-start"},store:{type:Object},column:{type:Object},upDataColumn:{type:Function}},setup(e){const t=te(),{t:l}=Wt(),n=ce("table-filter"),r=t==null?void 0:t.parent;r.filterPanels.value[e.column.id]||(r.filterPanels.value[e.column.id]=t);const a=x(!1),u=x(null),s=$(()=>e.column&&e.column.filters),o=$({get:()=>{var v;return(((v=e.column)==null?void 0:v.filteredValue)||[])[0]},set:v=>{i.value&&(typeof v<"u"&&v!==null?i.value.splice(0,1,v):i.value.splice(0,1))}}),i=$({get(){return e.column?e.column.filteredValue||[]:[]},set(v){e.column&&e.upDataColumn("filteredValue",v)}}),c=$(()=>e.column?e.column.filterMultiple:!0),h=v=>v.value===o.value,f=()=>{a.value=!1},y=v=>{v.stopPropagation(),a.value=!a.value},g=()=>{a.value=!1},w=()=>{p(i.value),f()},m=()=>{i.value=[],p(i.value),f()},S=v=>{o.value=v,p(typeof v<"u"&&v!==null?i.value:[]),f()},p=v=>{e.store.commit("filterChange",{column:e.column,values:v}),e.store.updateAllSelected()};ue(a,v=>{e.column&&e.upDataColumn("filterOpened",v)},{immediate:!0});const d=$(()=>{var v,C;return(C=(v=u.value)==null?void 0:v.popperRef)==null?void 0:C.contentRef});return{tooltipVisible:a,multiple:c,filteredValue:i,filterValue:o,filters:s,handleConfirm:w,handleReset:m,handleSelect:S,isActive:h,t:l,ns:n,showFilterPanel:y,hideFilterPanel:g,popperPaneRef:d,tooltip:u}}}),Qn={key:0},Zn=["disabled"],Jn=["label","onClick"];function es(e,t,l,n,r,a){const u=ne("el-checkbox"),s=ne("el-checkbox-group"),o=ne("el-scrollbar"),i=ne("arrow-up"),c=ne("arrow-down"),h=ne("el-icon"),f=ne("el-tooltip"),y=Ft("click-outside");return X(),Ae(f,{ref:"tooltip",visible:e.tooltipVisible,offset:0,placement:e.placement,"show-arrow":!1,"stop-popper-mouse-event":!1,teleported:"",effect:"light",pure:"","popper-class":e.ns.b(),persistent:""},{content:me(()=>[e.multiple?(X(),oe("div",Qn,[se("div",{class:j(e.ns.e("content"))},[ve(o,{"wrap-class":e.ns.e("wrap")},{default:me(()=>[ve(s,{modelValue:e.filteredValue,"onUpdate:modelValue":t[0]||(t[0]=g=>e.filteredValue=g),class:j(e.ns.e("checkbox-group"))},{default:me(()=>[(X(!0),oe(_e,null,ft(e.filters,g=>(X(),Ae(u,{key:g.value,label:g.value},{default:me(()=>[kt(xe(g.text),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","class"])]),_:1},8,["wrap-class"])],2),se("div",{class:j(e.ns.e("bottom"))},[se("button",{class:j({[e.ns.is("disabled")]:e.filteredValue.length===0}),disabled:e.filteredValue.length===0,type:"button",onClick:t[1]||(t[1]=(...g)=>e.handleConfirm&&e.handleConfirm(...g))},xe(e.t("el.table.confirmFilter")),11,Zn),se("button",{type:"button",onClick:t[2]||(t[2]=(...g)=>e.handleReset&&e.handleReset(...g))},xe(e.t("el.table.resetFilter")),1)],2)])):(X(),oe("ul",{key:1,class:j(e.ns.e("list"))},[se("li",{class:j([e.ns.e("list-item"),{[e.ns.is("active")]:e.filterValue===void 0||e.filterValue===null}]),onClick:t[3]||(t[3]=g=>e.handleSelect(null))},xe(e.t("el.table.clearFilter")),3),(X(!0),oe(_e,null,ft(e.filters,g=>(X(),oe("li",{key:g.value,class:j([e.ns.e("list-item"),e.ns.is("active",e.isActive(g))]),label:g.value,onClick:w=>e.handleSelect(g.value)},xe(g.text),11,Jn))),128))],2))]),default:me(()=>[$e((X(),oe("span",{class:j([`${e.ns.namespace.value}-table__column-filter-trigger`,`${e.ns.namespace.value}-none-outline`]),onClick:t[4]||(t[4]=(...g)=>e.showFilterPanel&&e.showFilterPanel(...g))},[ve(h,null,{default:me(()=>[e.column.filterOpened?(X(),Ae(i,{key:0})):(X(),Ae(c,{key:1}))]),_:1})],2)),[[y,e.hideFilterPanel,e.popperPaneRef]])]),_:1},8,["visible","placement","popper-class"])}var ts=Ht(Gn,[["render",es],["__file","/home/runner/work/element-plus/element-plus/packages/components/table/src/filter-panel.vue"]]);function nl(e){const t=te();Tt(()=>{l.value.addObserver(t)}),Ve(()=>{n(l.value),r(l.value)}),Bl(()=>{n(l.value),r(l.value)}),Ot(()=>{l.value.removeObserver(t)});const l=$(()=>{const a=e.layout;if(!a)throw new Error("Can not find table layout.");return a}),n=a=>{var u;const s=((u=e.vnode.el)==null?void 0:u.querySelectorAll("colgroup > col"))||[];if(!s.length)return;const o=a.getFlattenColumns(),i={};o.forEach(c=>{i[c.id]=c});for(let c=0,h=s.length;c<h;c++){const f=s[c],y=f.getAttribute("name"),g=i[y];g&&f.setAttribute("width",g.realWidth||g.width)}},r=a=>{var u,s;const o=((u=e.vnode.el)==null?void 0:u.querySelectorAll("colgroup > col[name=gutter]"))||[];for(let c=0,h=o.length;c<h;c++)o[c].setAttribute("width",a.scrollY.value?a.gutterWidth:"0");const i=((s=e.vnode.el)==null?void 0:s.querySelectorAll("th.gutter"))||[];for(let c=0,h=i.length;c<h;c++){const f=i[c];f.style.width=a.scrollY.value?`${a.gutterWidth}px`:"0",f.style.display=a.scrollY.value?"":"none"}};return{tableLayout:l.value,onColumnsChange:n,onScrollableChange:r}}const de=Symbol("ElTable");function ls(e,t){const l=te(),n=pe(de),r=w=>{w.stopPropagation()},a=(w,m)=>{!m.filters&&m.sortable?g(w,m,!1):m.filterable&&!m.sortable&&r(w),n==null||n.emit("header-click",m,w)},u=(w,m)=>{n==null||n.emit("header-contextmenu",m,w)},s=x(null),o=x(!1),i=x({}),c=(w,m)=>{if(Te&&!(m.children&&m.children.length>0)&&s.value&&e.border){o.value=!0;const S=n;t("set-drag-visible",!0);const d=(S==null?void 0:S.vnode.el).getBoundingClientRect().left,v=l.vnode.el.querySelector(`th.${m.id}`),C=v.getBoundingClientRect(),N=C.left-d+30;$t(v,"noclick"),i.value={startMouseLeft:w.clientX,startLeft:C.right-d,startColumnLeft:C.left-d,tableLeft:d};const E=S==null?void 0:S.refs.resizeProxy;E.style.left=`${i.value.startLeft}px`,document.onselectstart=function(){return!1},document.ondragstart=function(){return!1};const M=K=>{const D=K.clientX-i.value.startMouseLeft,T=i.value.startLeft+D;E.style.left=`${Math.max(N,T)}px`},A=()=>{if(o.value){const{startColumnLeft:K,startLeft:D}=i.value,I=Number.parseInt(E.style.left,10)-K;m.width=m.realWidth=I,S==null||S.emit("header-dragend",m.width,D-K,m,w),requestAnimationFrame(()=>{e.store.scheduleLayout(!1,!0)}),document.body.style.cursor="",o.value=!1,s.value=null,i.value={},t("set-drag-visible",!1)}document.removeEventListener("mousemove",M),document.removeEventListener("mouseup",A),document.onselectstart=null,document.ondragstart=null,setTimeout(()=>{Ge(v,"noclick")},0)};document.addEventListener("mousemove",M),document.addEventListener("mouseup",A)}},h=(w,m)=>{var S;if(m.children&&m.children.length>0)return;const p=(S=w.target)==null?void 0:S.closest("th");if(!(!m||!m.resizable)&&!o.value&&e.border){const d=p.getBoundingClientRect(),v=document.body.style;d.width>12&&d.right-w.pageX<8?(v.cursor="col-resize",Pe(p,"is-sortable")&&(p.style.cursor="col-resize"),s.value=m):o.value||(v.cursor="",Pe(p,"is-sortable")&&(p.style.cursor="pointer"),s.value=null)}},f=()=>{Te&&(document.body.style.cursor="")},y=({order:w,sortOrders:m})=>{if(w==="")return m[0];const S=m.indexOf(w||null);return m[S>m.length-2?0:S+1]},g=(w,m,S)=>{var p;w.stopPropagation();const d=m.order===S?null:S||y(m),v=(p=w.target)==null?void 0:p.closest("th");if(v&&Pe(v,"noclick")){Ge(v,"noclick");return}if(!m.sortable)return;const C=e.store.states;let N=C.sortProp.value,E;const M=C.sortingColumn.value;(M!==m||M===m&&M.order===null)&&(M&&(M.order=null),C.sortingColumn.value=m,N=m.property),d?E=m.order=d:E=m.order=null,C.sortProp.value=N,C.sortOrder.value=E,n==null||n.store.commit("changeSortCondition")};return{handleHeaderClick:a,handleHeaderContextMenu:u,handleMouseDown:c,handleMouseMove:h,handleMouseOut:f,handleSortClick:g,handleFilterClick:r}}function ns(e){const t=pe(de),l=ce("table");return{getHeaderRowStyle:s=>{const o=t==null?void 0:t.props.headerRowStyle;return typeof o=="function"?o.call(null,{rowIndex:s}):o},getHeaderRowClass:s=>{const o=[],i=t==null?void 0:t.props.headerRowClassName;return typeof i=="string"?o.push(i):typeof i=="function"&&o.push(i.call(null,{rowIndex:s})),o.join(" ")},getHeaderCellStyle:(s,o,i,c)=>{var h;let f=(h=t==null?void 0:t.props.headerCellStyle)!=null?h:{};typeof f=="function"&&(f=f.call(null,{rowIndex:s,columnIndex:o,row:i,column:c}));const y=ut(o,c.fixed,e.store,i);return Ne(y,"left"),Ne(y,"right"),Object.assign({},f,y)},getHeaderCellClass:(s,o,i,c)=>{const h=it(l.b(),o,c.fixed,e.store,i),f=[c.id,c.order,c.headerAlign,c.className,c.labelClassName,...h];c.children||f.push("is-leaf"),c.sortable&&f.push("is-sortable");const y=t==null?void 0:t.props.headerCellClassName;return typeof y=="string"?f.push(y):typeof y=="function"&&f.push(y.call(null,{rowIndex:s,columnIndex:o,row:i,column:c})),f.push(l.e("cell")),f.filter(g=>!!g).join(" ")}}}const sl=e=>{const t=[];return e.forEach(l=>{l.children?(t.push(l),t.push.apply(t,sl(l.children))):t.push(l)}),t},ss=e=>{let t=1;const l=(a,u)=>{if(u&&(a.level=u.level+1,t<a.level&&(t=a.level)),a.children){let s=0;a.children.forEach(o=>{l(o,a),s+=o.colSpan}),a.colSpan=s}else a.colSpan=1};e.forEach(a=>{a.level=1,l(a,void 0)});const n=[];for(let a=0;a<t;a++)n.push([]);return sl(e).forEach(a=>{a.children?(a.rowSpan=1,a.children.forEach(u=>u.isSubColumn=!0)):a.rowSpan=t-a.level+1,n[a.level-1].push(a)}),n};function os(e){const t=pe(de),l=$(()=>ss(e.store.states.originColumns.value));return{isGroup:$(()=>{const a=l.value.length>1;return a&&t&&(t.state.isGroup.value=!0),a}),toggleAllSelection:a=>{a.stopPropagation(),t==null||t.store.commit("toggleAllSelection")},columnRows:l}}var rs=Me({name:"ElTableHeader",components:{ElCheckbox:Le},props:{fixed:{type:String,default:""},store:{required:!0,type:Object},border:Boolean,defaultSort:{type:Object,default:()=>({prop:"",order:""})}},setup(e,{emit:t}){const l=te(),n=pe(de),r=ce("table"),a=x({}),{onColumnsChange:u,onScrollableChange:s}=nl(n);Ve(async()=>{await Re(),await Re();const{prop:N,order:E}=e.defaultSort;n==null||n.store.commit("sort",{prop:N,order:E,init:!0})});const{handleHeaderClick:o,handleHeaderContextMenu:i,handleMouseDown:c,handleMouseMove:h,handleMouseOut:f,handleSortClick:y,handleFilterClick:g}=ls(e,t),{getHeaderRowStyle:w,getHeaderRowClass:m,getHeaderCellStyle:S,getHeaderCellClass:p}=ns(e),{isGroup:d,toggleAllSelection:v,columnRows:C}=os(e);return l.state={onColumnsChange:u,onScrollableChange:s},l.filterPanels=a,{ns:r,filterPanels:a,onColumnsChange:u,onScrollableChange:s,columnRows:C,getHeaderRowClass:m,getHeaderRowStyle:w,getHeaderCellClass:p,getHeaderCellStyle:S,handleHeaderClick:o,handleHeaderContextMenu:i,handleMouseDown:c,handleMouseMove:h,handleMouseOut:f,handleSortClick:y,handleFilterClick:g,isGroup:d,toggleAllSelection:v}},render(){const{ns:e,isGroup:t,columnRows:l,getHeaderCellStyle:n,getHeaderCellClass:r,getHeaderRowClass:a,getHeaderRowStyle:u,handleHeaderClick:s,handleHeaderContextMenu:o,handleMouseDown:i,handleMouseMove:c,handleSortClick:h,handleMouseOut:f,store:y,$parent:g}=this;let w=1;return k("thead",{class:{[e.is("group")]:t}},l.map((m,S)=>k("tr",{class:a(S),key:S,style:u(S)},m.map((p,d)=>(p.rowSpan>w&&(w=p.rowSpan),k("th",{class:r(S,d,m,p),colspan:p.colSpan,key:`${p.id}-thead`,rowspan:p.rowSpan,style:n(S,d,m,p),onClick:v=>s(v,p),onContextmenu:v=>o(v,p),onMousedown:v=>i(v,p),onMousemove:v=>c(v,p),onMouseout:f},[k("div",{class:["cell",p.filteredValue&&p.filteredValue.length>0?"highlight":""]},[p.renderHeader?p.renderHeader({column:p,$index:d,store:y,_self:g}):p.label,p.sortable&&k("span",{onClick:v=>h(v,p),class:"caret-wrapper"},[k("i",{onClick:v=>h(v,p,"ascending"),class:"sort-caret ascending"}),k("i",{onClick:v=>h(v,p,"descending"),class:"sort-caret descending"})]),p.filterable&&k(ts,{store:y,placement:p.filterPlacement||"bottom-start",column:p,upDataColumn:(v,C)=>{p[v]=C}})])]))))))}});function as(e){const t=pe(de),l=x(""),n=x(k("div")),r=(f,y,g)=>{var w;const m=t,S=qe(f);let p;const d=(w=m==null?void 0:m.vnode.el)==null?void 0:w.dataset.prefix;S&&(p=St({columns:e.store.states.columns.value},S,d),p&&(m==null||m.emit(`cell-${g}`,y,p,S,f))),m==null||m.emit(`row-${g}`,y,p,f)},a=(f,y)=>{r(f,y,"dblclick")},u=(f,y)=>{e.store.commit("setCurrentRow",y),r(f,y,"click")},s=(f,y)=>{r(f,y,"contextmenu")},o=Ie(f=>{e.store.commit("setHoverRow",f)},30),i=Ie(()=>{e.store.commit("setHoverRow",null)},30);return{handleDoubleClick:a,handleClick:u,handleContextMenu:s,handleMouseEnter:o,handleMouseLeave:i,handleCellMouseEnter:(f,y,g)=>{var w;const m=t,S=qe(f),p=(w=m==null?void 0:m.vnode.el)==null?void 0:w.dataset.prefix;if(S){const E=St({columns:e.store.states.columns.value},S,p),M=m.hoverState={cell:S,column:E,row:y};m==null||m.emit("cell-mouse-enter",M.row,M.column,M.cell,f)}const d=f.target.querySelector(".cell");if(!(Pe(d,`${p}-tooltip`)&&d.childNodes.length))return;const v=document.createRange();v.setStart(d,0),v.setEnd(d,d.childNodes.length);const C=Math.round(v.getBoundingClientRect().width),N=(Number.parseInt(ht(d,"paddingLeft"),10)||0)+(Number.parseInt(ht(d,"paddingRight"),10)||0);(C+N>d.offsetWidth||d.scrollWidth>d.offsetWidth)&&Bn(t==null?void 0:t.refs.tableWrapper,S,S.innerText||S.textContent,{placement:"top",strategy:"fixed"},g)},handleCellMouseLeave:f=>{if(!qe(f))return;const g=t==null?void 0:t.hoverState;t==null||t.emit("cell-mouse-leave",g==null?void 0:g.row,g==null?void 0:g.column,g==null?void 0:g.cell,f)},tooltipContent:l,tooltipTrigger:n}}function is(e){const t=pe(de),l=ce("table");return{getRowStyle:(i,c)=>{const h=t==null?void 0:t.props.rowStyle;return typeof h=="function"?h.call(null,{row:i,rowIndex:c}):h||null},getRowClass:(i,c)=>{const h=[l.e("row")];t!=null&&t.props.highlightCurrentRow&&i===e.store.states.currentRow.value&&h.push("current-row"),e.stripe&&c%2===1&&h.push(l.em("row","striped"));const f=t==null?void 0:t.props.rowClassName;return typeof f=="string"?h.push(f):typeof f=="function"&&h.push(f.call(null,{row:i,rowIndex:c})),h},getCellStyle:(i,c,h,f)=>{const y=t==null?void 0:t.props.cellStyle;let g=y??{};typeof y=="function"&&(g=y.call(null,{rowIndex:i,columnIndex:c,row:h,column:f}));const w=ut(c,e==null?void 0:e.fixed,e.store);return Ne(w,"left"),Ne(w,"right"),Object.assign({},g,w)},getCellClass:(i,c,h,f,y)=>{const g=it(l.b(),c,e==null?void 0:e.fixed,e.store,void 0,y),w=[f.id,f.align,f.className,...g],m=t==null?void 0:t.props.cellClassName;return typeof m=="string"?w.push(m):typeof m=="function"&&w.push(m.call(null,{rowIndex:i,columnIndex:c,row:h,column:f})),w.push(l.e("cell")),w.filter(S=>!!S).join(" ")},getSpan:(i,c,h,f)=>{let y=1,g=1;const w=t==null?void 0:t.props.spanMethod;if(typeof w=="function"){const m=w({row:i,column:c,rowIndex:h,columnIndex:f});Array.isArray(m)?(y=m[0],g=m[1]):typeof m=="object"&&(y=m.rowspan,g=m.colspan)}return{rowspan:y,colspan:g}},getColspanRealWidth:(i,c,h)=>{if(c<1)return i[h].realWidth;const f=i.map(({realWidth:y,width:g})=>y||g).slice(h,h+c);return Number(f.reduce((y,g)=>Number(y)+Number(g),-1))}}}function us(e){const t=pe(de),l=ce("table"),{handleDoubleClick:n,handleClick:r,handleContextMenu:a,handleMouseEnter:u,handleMouseLeave:s,handleCellMouseEnter:o,handleCellMouseLeave:i,tooltipContent:c,tooltipTrigger:h}=as(e),{getRowStyle:f,getRowClass:y,getCellStyle:g,getCellClass:w,getSpan:m,getColspanRealWidth:S}=is(e),p=$(()=>e.store.states.columns.value.findIndex(({type:E})=>E==="default")),d=(E,M)=>{const A=t.props.rowKey;return A?q(E,A):M},v=(E,M,A,K=!1)=>{const{tooltipEffect:D,store:T}=e,{indent:I,columns:z}=T.states,U=y(E,M);let _=!0;return A&&(U.push(l.em("row",`level-${A.level}`)),_=A.display),k("tr",{style:[_?null:{display:"none"},f(E,M)],class:U,key:d(E,M),onDblclick:R=>n(R,E),onClick:R=>r(R,E),onContextmenu:R=>a(R,E),onMouseenter:()=>u(M),onMouseleave:s},z.value.map((R,b)=>{const{rowspan:H,colspan:B}=m(E,R,M,b);if(!H||!B)return null;const V={...R};V.realWidth=S(z.value,B,b);const Y={store:e.store,_self:e.context||t,column:V,row:E,$index:M,cellIndex:b,expanded:K};b===p.value&&A&&(Y.treeNode={indent:A.level*I.value,level:A.level},typeof A.expanded=="boolean"&&(Y.treeNode.expanded=A.expanded,"loading"in A&&(Y.treeNode.loading=A.loading),"noLazyChildren"in A&&(Y.treeNode.noLazyChildren=A.noLazyChildren)));const re=`${M},${b}`,G=V.columnKey||V.rawColumnKey||"",ae=C(b,R,Y);return k("td",{style:g(M,b,E,R),class:w(M,b,E,R,B-1),key:`${G}${re}`,rowspan:H,colspan:B,onMouseenter:ie=>o(ie,E,D),onMouseleave:i},[ae])}))},C=(E,M,A)=>M.renderCell(A);return{wrappedRowRender:(E,M)=>{const A=e.store,{isRowExpanded:K,assertRowKey:D}=A,{treeData:T,lazyTreeNodeMap:I,childrenColumnName:z,rowKey:U}=A.states,_=A.states.columns.value;if(_.some(({type:R})=>R==="expand")){const R=K(E),b=v(E,M,void 0,R),H=t.renderExpanded;return R?H?[[b,k("tr",{key:`expanded-row__${b.key}`},[k("td",{colspan:_.length,class:`${l.e("cell")} ${l.e("expanded-cell")}`},[H({row:E,$index:M,store:A,expanded:R})])])]]:(console.error("[Element Error]renderExpanded is required."),b):[[b]]}else if(Object.keys(T.value).length){D();const R=q(E,U.value);let b=T.value[R],H=null;b&&(H={expanded:b.expanded,level:b.level,display:!0},typeof b.lazy=="boolean"&&(typeof b.loaded=="boolean"&&b.loaded&&(H.noLazyChildren=!(b.children&&b.children.length)),H.loading=b.loading));const B=[v(E,M,H)];if(b){let V=0;const Y=(G,ae)=>{G&&G.length&&ae&&G.forEach(ie=>{const Q={display:ae.display&&ae.expanded,level:ae.level+1,expanded:!1,noLazyChildren:!1,loading:!1},ge=q(ie,U.value);if(ge==null)throw new Error("For nested data item, row-key is required.");if(b={...T.value[ge]},b&&(Q.expanded=b.expanded,b.level=b.level||Q.level,b.display=!!(b.expanded&&Q.display),typeof b.lazy=="boolean"&&(typeof b.loaded=="boolean"&&b.loaded&&(Q.noLazyChildren=!(b.children&&b.children.length)),Q.loading=b.loading)),V++,B.push(v(ie,M+V,Q)),b){const je=I.value[ge]||ie[z.value];Y(je,b)}})};b.display=!0;const re=I.value[R]||E[z.value];Y(re,b)}return B}else return v(E,M,void 0)},tooltipContent:c,tooltipTrigger:h}}const cs={store:{required:!0,type:Object},stripe:Boolean,tooltipEffect:String,context:{default:()=>({}),type:Object},rowClassName:[String,Function],rowStyle:[Object,Function],fixed:{type:String,default:""},highlight:Boolean};var ds=Me({name:"ElTableBody",props:cs,setup(e){const t=te(),l=pe(de),n=ce("table"),{wrappedRowRender:r,tooltipContent:a,tooltipTrigger:u}=us(e),{onColumnsChange:s,onScrollableChange:o}=nl(l);return ue(e.store.states.hoverRow,(i,c)=>{if(!e.store.states.isComplex.value||!Te)return;let h=window.requestAnimationFrame;h||(h=f=>window.setTimeout(f,16)),h(()=>{const f=t==null?void 0:t.vnode.el,y=Array.from((f==null?void 0:f.children)||[]).filter(m=>m==null?void 0:m.classList.contains(`${n.e("row")}`)),g=y[c],w=y[i];g&&Ge(g,"hover-row"),w&&$t(w,"hover-row")})}),Ot(()=>{var i;(i=he)==null||i()}),{ns:n,onColumnsChange:s,onScrollableChange:o,wrappedRowRender:r,tooltipContent:a,tooltipTrigger:u}},render(){const{wrappedRowRender:e,store:t}=this,l=t.states.data.value||[];return k("tbody",{},[l.reduce((n,r)=>n.concat(e(r,n.length)),[])])}});function ct(e){const t=e.tableLayout==="auto";let l=e.columns||[];t&&l.every(r=>r.width===void 0)&&(l=[]);const n=r=>{const a={key:`${e.tableLayout}_${r.id}`,style:{},name:void 0};return t?a.style={width:`${r.width}px`}:a.name=r.id,a};return k("colgroup",{},l.map(r=>k("col",n(r))))}ct.props=["columns","tableLayout"];function fs(){const e=pe(de),t=e==null?void 0:e.store,l=$(()=>t.states.fixedLeafColumnsLength.value),n=$(()=>t.states.rightFixedColumns.value.length),r=$(()=>t.states.columns.value.length),a=$(()=>t.states.fixedColumns.value.length),u=$(()=>t.states.rightFixedColumns.value.length);return{leftFixedLeafCount:l,rightFixedLeafCount:n,columnsCount:r,leftFixedCount:a,rightFixedCount:u,columns:t.states.columns}}function hs(e){const{columns:t}=fs(),l=ce("table");return{getCellClasses:(a,u)=>{const s=a[u],o=[l.e("cell"),s.id,s.align,s.labelClassName,...it(l.b(),u,s.fixed,e.store)];return s.className&&o.push(s.className),s.children||o.push(l.is("leaf")),o},getCellStyles:(a,u)=>{const s=ut(u,a.fixed,e.store);return Ne(s,"left"),Ne(s,"right"),s},columns:t}}var vs=Me({name:"ElTableFooter",props:{fixed:{type:String,default:""},store:{required:!0,type:Object},summaryMethod:Function,sumText:String,border:Boolean,defaultSort:{type:Object,default:()=>({prop:"",order:""})}},setup(e){const{getCellClasses:t,getCellStyles:l,columns:n}=hs(e);return{ns:ce("table"),getCellClasses:t,getCellStyles:l,columns:n}},render(){const{columns:e,getCellStyles:t,getCellClasses:l,summaryMethod:n,sumText:r,ns:a}=this,u=this.store.states.data.value;let s=[];return n?s=n({columns:e,data:u}):e.forEach((o,i)=>{if(i===0){s[i]=r;return}const c=u.map(g=>Number(g[o.property])),h=[];let f=!0;c.forEach(g=>{if(!Number.isNaN(+g)){f=!1;const w=`${g}`.split(".")[1];h.push(w?w.length:0)}});const y=Math.max.apply(null,h);f?s[i]="":s[i]=c.reduce((g,w)=>{const m=Number(w);return Number.isNaN(+m)?g:Number.parseFloat((g+w).toFixed(Math.min(y,20)))},0)}),k("table",{class:a.e("footer"),cellspacing:"0",cellpadding:"0",border:"0"},[ct({columns:e}),k("tbody",[k("tr",{},[...e.map((o,i)=>k("td",{key:i,colspan:o.colSpan,rowspan:o.rowSpan,class:l(e,i),style:t(o,i)},[k("div",{class:["cell",o.labelClassName]},[s[i]])]))])])])}});function ps(e){return{setCurrentRow:c=>{e.commit("setCurrentRow",c)},getSelectionRows:()=>e.getSelectionRows(),toggleRowSelection:(c,h)=>{e.toggleRowSelection(c,h,!1),e.updateAllSelected()},clearSelection:()=>{e.clearSelection()},clearFilter:c=>{e.clearFilter(c)},toggleAllSelection:()=>{e.commit("toggleAllSelection")},toggleRowExpansion:(c,h)=>{e.toggleRowExpansionAdapter(c,h)},clearSort:()=>{e.clearSort()},sort:(c,h)=>{e.commit("sort",{prop:c,order:h})}}}function gs(e,t,l,n){const r=x(!1),a=x(null),u=x(!1),s=R=>{u.value=R},o=x({width:null,height:null,headerHeight:null}),i=x(!1),c={display:"inline-block",verticalAlign:"middle"},h=x(),f=x(0),y=x(0),g=x(0),w=x(0);We(()=>{t.setHeight(e.height)}),We(()=>{t.setMaxHeight(e.maxHeight)}),ue(()=>[e.currentRowKey,l.states.rowKey],([R,b])=>{!J(b)||!J(R)||l.setCurrentRowKey(`${R}`)},{immediate:!0}),ue(()=>e.data,R=>{n.store.commit("setData",R)},{immediate:!0,deep:!0}),We(()=>{e.expandRowKeys&&l.setExpandRowKeysAdapter(e.expandRowKeys)});const m=()=>{n.store.commit("setHoverRow",null),n.hoverState&&(n.hoverState=null)},S=(R,b)=>{const{pixelX:H,pixelY:B}=b;Math.abs(H)>=Math.abs(B)&&(n.refs.bodyWrapper.scrollLeft+=b.pixelX/5)},p=$(()=>e.height||e.maxHeight||l.states.fixedColumns.value.length>0||l.states.rightFixedColumns.value.length>0),d=$(()=>({width:t.bodyWidth.value?`${t.bodyWidth.value}px`:""})),v=()=>{p.value&&t.updateElsHeight(),t.updateColumnsWidth(),requestAnimationFrame(M)};Ve(async()=>{await Re(),l.updateColumns(),A(),requestAnimationFrame(v);const R=n.vnode.el,b=n.refs.headerWrapper;e.flexible&&R&&R.parentElement&&(R.parentElement.style.minWidth="0"),o.value={width:h.value=R.offsetWidth,height:R.offsetHeight,headerHeight:e.showHeader&&b?b.offsetHeight:null},l.states.columns.value.forEach(H=>{H.filteredValue&&H.filteredValue.length&&n.store.commit("filterChange",{column:H,values:H.filteredValue,silent:!0})}),n.$ready=!0});const C=(R,b)=>{if(!R)return;const H=Array.from(R.classList).filter(B=>!B.startsWith("is-scrolling-"));H.push(t.scrollX.value?b:"is-scrolling-none"),R.className=H.join(" ")},N=R=>{const{tableWrapper:b}=n.refs;C(b,R)},E=R=>{const{tableWrapper:b}=n.refs;return!!(b&&b.classList.contains(R))},M=function(){if(!n.refs.scrollBarRef)return;if(!t.scrollX.value){const G="is-scrolling-none";E(G)||N(G);return}const R=n.refs.scrollBarRef.wrapRef;if(!R)return;const{scrollLeft:b,offsetWidth:H,scrollWidth:B}=R,{headerWrapper:V,footerWrapper:Y}=n.refs;V&&(V.scrollLeft=b),Y&&(Y.scrollLeft=b);const re=B-H-1;b>=re?N("is-scrolling-right"):N(b===0?"is-scrolling-left":"is-scrolling-middle")},A=()=>{n.refs.scrollBarRef&&(n.refs.scrollBarRef.wrapRef&&vt(n.refs.scrollBarRef.wrapRef,"scroll",M,{passive:!0}),e.fit?pt(n.vnode.el,K):vt(window,"resize",K),pt(n.refs.bodyWrapper,()=>{var R,b;K(),(b=(R=n.refs)==null?void 0:R.scrollBarRef)==null||b.update()}))},K=()=>{var R,b,H;const B=n.vnode.el;if(!n.$ready||!B)return;let V=!1;const{width:Y,height:re,headerHeight:G}=o.value,ae=h.value=B.offsetWidth;Y!==ae&&(V=!0);const ie=B.offsetHeight;(e.height||p.value)&&re!==ie&&(V=!0);const Q=e.tableLayout==="fixed"?n.refs.headerWrapper:(R=n.refs.tableHeaderRef)==null?void 0:R.$el;e.showHeader&&(Q==null?void 0:Q.offsetHeight)!==G&&(V=!0),f.value=((b=n.refs.tableWrapper)==null?void 0:b.scrollHeight)||0,g.value=(Q==null?void 0:Q.scrollHeight)||0,w.value=((H=n.refs.footerWrapper)==null?void 0:H.offsetHeight)||0,y.value=f.value-g.value-w.value,V&&(o.value={width:ae,height:ie,headerHeight:e.showHeader&&(Q==null?void 0:Q.offsetHeight)||0},v())},D=zl(),T=$(()=>{const{bodyWidth:R,scrollY:b,gutterWidth:H}=t;return R.value?`${R.value-(b.value?H:0)}px`:""}),I=$(()=>e.maxHeight?"fixed":e.tableLayout),z=$(()=>{if(e.data&&e.data.length)return null;let R="100%";e.height&&y.value&&(R=`${y.value}px`);const b=h.value;return{width:b?`${b}px`:"",height:R}}),U=$(()=>e.height?{height:Number.isNaN(Number(e.height))?e.height:`${e.height}px`}:e.maxHeight?{maxHeight:Number.isNaN(Number(e.maxHeight))?e.maxHeight:`${e.maxHeight}px`}:{}),_=$(()=>{if(e.height)return{height:"100%"};if(e.maxHeight){if(Number.isNaN(Number(e.maxHeight)))return{maxHeight:`calc(${e.maxHeight} - ${g.value+w.value}px)`};{const R=e.maxHeight;if(f.value>=Number(R))return{maxHeight:`${f.value-g.value-w.value}px`}}}return{}});return{isHidden:r,renderExpanded:a,setDragVisible:s,isGroup:i,handleMouseLeave:m,handleHeaderFooterMousewheel:S,tableSize:D,emptyBlockStyle:z,handleFixedMousewheel:(R,b)=>{const H=n.refs.bodyWrapper;if(Math.abs(b.spinY)>0){const B=H.scrollTop;b.pixelY<0&&B!==0&&R.preventDefault(),b.pixelY>0&&H.scrollHeight-H.clientHeight>B&&R.preventDefault(),H.scrollTop+=Math.ceil(b.pixelY/5)}else H.scrollLeft+=Math.ceil(b.pixelX/5)},resizeProxyVisible:u,bodyWidth:T,resizeState:o,doLayout:v,tableBodyStyles:d,tableLayout:I,scrollbarViewStyle:c,tableInnerStyle:U,scrollbarStyle:_}}var ms={data:{type:Array,default:()=>[]},size:String,width:[String,Number],height:[String,Number],maxHeight:[String,Number],fit:{type:Boolean,default:!0},stripe:Boolean,border:Boolean,rowKey:[String,Function],showHeader:{type:Boolean,default:!0},showSummary:Boolean,sumText:String,summaryMethod:Function,rowClassName:[String,Function],rowStyle:[Object,Function],cellClassName:[String,Function],cellStyle:[Object,Function],headerRowClassName:[String,Function],headerRowStyle:[Object,Function],headerCellClassName:[String,Function],headerCellStyle:[Object,Function],highlightCurrentRow:Boolean,currentRowKey:[String,Number],emptyText:String,expandRowKeys:Array,defaultExpandAll:Boolean,defaultSort:Object,tooltipEffect:String,spanMethod:Function,selectOnIndeterminate:{type:Boolean,default:!0},indent:{type:Number,default:16},treeProps:{type:Object,default:()=>({hasChildren:"hasChildren",children:"children"})},lazy:Boolean,load:Function,style:{type:Object,default:()=>({})},className:{type:String,default:""},tableLayout:{type:String,default:"fixed"},scrollbarAlwaysOn:{type:Boolean,default:!1},flexible:Boolean};const ys=()=>{const e=x(),t=(a,u)=>{const s=e.value;s&&s.scrollTo(a,u)},l=(a,u)=>{const s=e.value;s&&Dl(u)&&["Top","Left"].includes(a)&&s[`setScroll${a}`](u)};return{scrollBarRef:e,scrollTo:t,setScrollTop:a=>l("Top",a),setScrollLeft:a=>l("Left",a)}};let bs=1;const Cs=Me({name:"ElTable",directives:{Mousewheel:An},components:{TableHeader:rs,TableBody:ds,TableFooter:vs,ElScrollbar:At,hColgroup:ct},props:ms,emits:["select","select-all","selection-change","cell-mouse-enter","cell-mouse-leave","cell-contextmenu","cell-click","cell-dblclick","row-click","row-contextmenu","row-dblclick","header-click","header-contextmenu","sort-change","filter-change","current-change","header-dragend","expand-change"],setup(e){const{t}=Wt(),l=ce("table"),n=te();Il(de,n);const r=Xn(n,e);n.store=r;const a=new Un({store:n.store,table:n,fit:e.fit,showHeader:e.showHeader});n.layout=a;const u=$(()=>(r.states.data.value||[]).length===0),{setCurrentRow:s,getSelectionRows:o,toggleRowSelection:i,clearSelection:c,clearFilter:h,toggleAllSelection:f,toggleRowExpansion:y,clearSort:g,sort:w}=ps(r),{isHidden:m,renderExpanded:S,setDragVisible:p,isGroup:d,handleMouseLeave:v,handleHeaderFooterMousewheel:C,tableSize:N,emptyBlockStyle:E,handleFixedMousewheel:M,resizeProxyVisible:A,bodyWidth:K,resizeState:D,doLayout:T,tableBodyStyles:I,tableLayout:z,scrollbarViewStyle:U,tableInnerStyle:_,scrollbarStyle:Ce}=gs(e,a,r,n),{scrollBarRef:R,scrollTo:b,setScrollLeft:H,setScrollTop:B}=ys(),V=Ie(T,50),Y=`${l.namespace.value}-table_${bs++}`;n.tableId=Y,n.state={isGroup:d,resizeState:D,doLayout:T,debouncedUpdateLayout:V};const re=$(()=>e.sumText||t("el.table.sumText")),G=$(()=>e.emptyText||t("el.table.emptyText"));return{ns:l,layout:a,store:r,handleHeaderFooterMousewheel:C,handleMouseLeave:v,tableId:Y,tableSize:N,isHidden:m,isEmpty:u,renderExpanded:S,resizeProxyVisible:A,resizeState:D,isGroup:d,bodyWidth:K,tableBodyStyles:I,emptyBlockStyle:E,debouncedUpdateLayout:V,handleFixedMousewheel:M,setCurrentRow:s,getSelectionRows:o,toggleRowSelection:i,clearSelection:c,clearFilter:h,toggleAllSelection:f,toggleRowExpansion:y,clearSort:g,doLayout:T,sort:w,t,setDragVisible:p,context:n,computedSumText:re,computedEmptyText:G,tableLayout:z,scrollbarViewStyle:U,tableInnerStyle:_,scrollbarStyle:Ce,scrollBarRef:R,scrollTo:b,setScrollLeft:H,setScrollTop:B}}}),ws=["data-prefix"],Ss={ref:"hiddenColumns",class:"hidden-columns"};function Es(e,t,l,n,r,a){const u=ne("hColgroup"),s=ne("table-header"),o=ne("table-body"),i=ne("el-scrollbar"),c=ne("table-footer"),h=Ft("mousewheel");return X(),oe("div",{ref:"tableWrapper",class:j([{[e.ns.m("fit")]:e.fit,[e.ns.m("striped")]:e.stripe,[e.ns.m("border")]:e.border||e.isGroup,[e.ns.m("hidden")]:e.isHidden,[e.ns.m("group")]:e.isGroup,[e.ns.m("fluid-height")]:e.maxHeight,[e.ns.m("scrollable-x")]:e.layout.scrollX.value,[e.ns.m("scrollable-y")]:e.layout.scrollY.value,[e.ns.m("enable-row-hover")]:!e.store.states.isComplex.value,[e.ns.m("enable-row-transition")]:(e.store.states.data.value||[]).length!==0&&(e.store.states.data.value||[]).length<100,"has-footer":e.showSummary},e.ns.m(e.tableSize),e.className,e.ns.b(),e.ns.m(`layout-${e.tableLayout}`)]),style:Se(e.style),"data-prefix":e.ns.namespace.value,onMouseleave:t[0]||(t[0]=f=>e.handleMouseLeave())},[se("div",{class:j(e.ns.e("inner-wrapper")),style:Se(e.tableInnerStyle)},[se("div",Ss,[Xe(e.$slots,"default")],512),e.showHeader&&e.tableLayout==="fixed"?$e((X(),oe("div",{key:0,ref:"headerWrapper",class:j(e.ns.e("header-wrapper"))},[se("table",{ref:"tableHeader",class:j(e.ns.e("header")),style:Se(e.tableBodyStyles),border:"0",cellpadding:"0",cellspacing:"0"},[ve(u,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),ve(s,{ref:"tableHeaderRef",border:e.border,"default-sort":e.defaultSort,store:e.store,onSetDragVisible:e.setDragVisible},null,8,["border","default-sort","store","onSetDragVisible"])],6)],2)),[[h,e.handleHeaderFooterMousewheel]]):Ee("v-if",!0),se("div",{ref:"bodyWrapper",class:j(e.ns.e("body-wrapper"))},[ve(i,{ref:"scrollBarRef","view-style":e.scrollbarViewStyle,"wrap-style":e.scrollbarStyle,always:e.scrollbarAlwaysOn},{default:me(()=>[se("table",{ref:"tableBody",class:j(e.ns.e("body")),cellspacing:"0",cellpadding:"0",border:"0",style:Se({width:e.bodyWidth,tableLayout:e.tableLayout})},[ve(u,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),e.showHeader&&e.tableLayout==="auto"?(X(),Ae(s,{key:0,ref:"tableHeaderRef",border:e.border,"default-sort":e.defaultSort,store:e.store,onSetDragVisible:e.setDragVisible},null,8,["border","default-sort","store","onSetDragVisible"])):Ee("v-if",!0),ve(o,{context:e.context,highlight:e.highlightCurrentRow,"row-class-name":e.rowClassName,"tooltip-effect":e.tooltipEffect,"row-style":e.rowStyle,store:e.store,stripe:e.stripe},null,8,["context","highlight","row-class-name","tooltip-effect","row-style","store","stripe"])],6),e.isEmpty?(X(),oe("div",{key:0,ref:"emptyBlock",style:Se(e.emptyBlockStyle),class:j(e.ns.e("empty-block"))},[se("span",{class:j(e.ns.e("empty-text"))},[Xe(e.$slots,"empty",{},()=>[kt(xe(e.computedEmptyText),1)])],2)],6)):Ee("v-if",!0),e.$slots.append?(X(),oe("div",{key:1,ref:"appendWrapper",class:j(e.ns.e("append-wrapper"))},[Xe(e.$slots,"append")],2)):Ee("v-if",!0)]),_:3},8,["view-style","wrap-style","always"])],2),e.showSummary?$e((X(),oe("div",{key:1,ref:"footerWrapper",class:j(e.ns.e("footer-wrapper"))},[ve(c,{border:e.border,"default-sort":e.defaultSort,store:e.store,style:Se(e.tableBodyStyles),"sum-text":e.computedSumText,"summary-method":e.summaryMethod},null,8,["border","default-sort","store","style","sum-text","summary-method"])],2)),[[gt,!e.isEmpty],[h,e.handleHeaderFooterMousewheel]]):Ee("v-if",!0),e.border||e.isGroup?(X(),oe("div",{key:2,class:j(e.ns.e("border-left-patch"))},null,2)):Ee("v-if",!0)],6),$e(se("div",{ref:"resizeProxy",class:j(e.ns.e("column-resize-proxy"))},null,2),[[gt,e.resizeProxyVisible]])],46,ws)}var xs=Ht(Cs,[["render",Es],["__file","/home/runner/work/element-plus/element-plus/packages/components/table/src/table.vue"]]);const Rs={selection:"table-column--selection",expand:"table__expand-column"},Ls={default:{order:""},selection:{width:48,minWidth:48,realWidth:48,order:""},expand:{width:48,minWidth:48,realWidth:48,order:""},index:{width:48,minWidth:48,realWidth:48,order:""}},Ns=e=>Rs[e]||"",Ms={selection:{renderHeader({store:e}){function t(){return e.states.data.value&&e.states.data.value.length===0}return k(Le,{disabled:t(),size:e.states.tableSize.value,indeterminate:e.states.selection.value.length>0&&!e.states.isAllSelected.value,"onUpdate:modelValue":e.toggleAllSelection,modelValue:e.states.isAllSelected.value})},renderCell({row:e,column:t,store:l,$index:n}){return k(Le,{disabled:t.selectable?!t.selectable.call(null,e,n):!1,size:l.states.tableSize.value,onChange:()=>{l.commit("rowSelectedChanged",e)},onClick:r=>r.stopPropagation(),modelValue:l.isSelected(e)})},sortable:!1,resizable:!1},index:{renderHeader({column:e}){return e.label||"#"},renderCell({column:e,$index:t}){let l=t+1;const n=e.index;return typeof n=="number"?l=t+n:typeof n=="function"&&(l=n(t)),k("div",{},[l])},sortable:!1},expand:{renderHeader({column:e}){return e.label||""},renderCell({row:e,store:t,expanded:l}){const{ns:n}=t,r=[n.e("expand-icon")];return l&&r.push(n.em("expand-icon","expanded")),k("div",{class:r,onClick:function(u){u.stopPropagation(),t.toggleRowExpansion(e)}},{default:()=>[k(rt,null,{default:()=>[k(Pt)]})]})},sortable:!1,resizable:!1}};function As({row:e,column:t,$index:l}){var n;const r=t.property,a=r&&Vl(e,r).value;return t&&t.formatter?t.formatter(e,t,a,l):((n=a==null?void 0:a.toString)==null?void 0:n.call(a))||""}function Ws({row:e,treeNode:t,store:l},n=!1){const{ns:r}=l;if(!t)return n?[k("span",{class:r.e("placeholder")})]:null;const a=[],u=function(s){s.stopPropagation(),!t.loading&&l.loadOrToggle(e)};if(t.indent&&a.push(k("span",{class:r.e("indent"),style:{"padding-left":`${t.indent}px`}})),typeof t.expanded=="boolean"&&!t.noLazyChildren){const s=[r.e("expand-icon"),t.expanded?r.em("expand-icon","expanded"):""];let o=Pt;t.loading&&(o=jl),a.push(k("div",{class:s,onClick:u},{default:()=>[k(rt,{class:{[r.is("loading")]:t.loading}},{default:()=>[k(o)]})]}))}else a.push(k("span",{class:r.e("placeholder")}));return a}function Rt(e,t){return e.reduce((l,n)=>(l[n]=n,l),t)}function Hs(e,t){const l=te();return{registerComplexWatchers:()=>{const a=["fixed"],u={realWidth:"width",realMinWidth:"minWidth"},s=Rt(a,u);Object.keys(s).forEach(o=>{const i=u[o];ke(t,i)&&ue(()=>t[i],c=>{let h=c;i==="width"&&o==="realWidth"&&(h=at(c)),i==="minWidth"&&o==="realMinWidth"&&(h=Qt(c)),l.columnConfig.value[i]=h,l.columnConfig.value[o]=h;const f=i==="fixed";e.value.store.scheduleLayout(f)})})},registerNormalWatchers:()=>{const a=["label","filters","filterMultiple","sortable","index","formatter","className","labelClassName","showOverflowTooltip"],u={property:"prop",align:"realAlign",headerAlign:"realHeaderAlign"},s=Rt(a,u);Object.keys(s).forEach(o=>{const i=u[o];ke(t,i)&&ue(()=>t[i],c=>{l.columnConfig.value[o]=c})})}}}function Fs(e,t,l){const n=te(),r=x(""),a=x(!1),u=x(),s=x(),o=ce("table");We(()=>{u.value=e.align?`is-${e.align}`:null,u.value}),We(()=>{s.value=e.headerAlign?`is-${e.headerAlign}`:u.value,s.value});const i=$(()=>{let d=n.vnode.vParent||n.parent;for(;d&&!d.tableId&&!d.columnId;)d=d.vnode.vParent||d.parent;return d}),c=$(()=>{const{store:d}=n.parent;if(!d)return!1;const{treeData:v}=d.states,C=v.value;return C&&Object.keys(C).length>0}),h=x(at(e.width)),f=x(Qt(e.minWidth)),y=d=>(h.value&&(d.width=h.value),f.value&&(d.minWidth=f.value),!h.value&&f.value&&(d.width=void 0),d.minWidth||(d.minWidth=80),d.realWidth=Number(d.width===void 0?d.minWidth:d.width),d),g=d=>{const v=d.type,C=Ms[v]||{};Object.keys(C).forEach(E=>{const M=C[E];E!=="className"&&M!==void 0&&(d[E]=M)});const N=Ns(v);if(N){const E=`${J(o.namespace)}-${N}`;d.className=d.className?`${d.className} ${E}`:E}return d},w=d=>{Array.isArray(d)?d.forEach(C=>v(C)):v(d);function v(C){var N;((N=C==null?void 0:C.type)==null?void 0:N.name)==="ElTableColumn"&&(C.vParent=n)}};return{columnId:r,realAlign:u,isSubColumn:a,realHeaderAlign:s,columnOrTableParent:i,setColumnWidth:y,setColumnForcedProps:g,setColumnRenders:d=>{e.renderHeader||d.type!=="selection"&&(d.renderHeader=C=>{n.columnConfig.value.label;const N=t.header;return N?N(C):d.label});let v=d.renderCell;return d.type==="expand"?(d.renderCell=C=>k("div",{class:"cell"},[v(C)]),l.value.renderExpanded=C=>t.default?t.default(C):t.default):(v=v||As,d.renderCell=C=>{let N=null;if(t.default){const K=t.default(C);N=K.some(D=>D.type!==Yl)?K:v(C)}else N=v(C);const E=c.value&&C.cellIndex===0&&C.column.type!=="selection",M=Ws(C,E),A={class:"cell",style:{}};return d.showOverflowTooltip&&(A.class=`${A.class} ${J(o.namespace)}-tooltip`,A.style={width:`${(C.column.realWidth||Number(C.column.width))-1}px`}),w(N),k("div",A,[M,N])}),d},getPropsData:(...d)=>d.reduce((v,C)=>(Array.isArray(C)&&C.forEach(N=>{v[N]=e[N]}),v),{}),getColumnElIndex:(d,v)=>Array.prototype.indexOf.call(d,v)}}var ks={type:{type:String,default:"default"},label:String,className:String,labelClassName:String,property:String,prop:String,width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:""},renderHeader:Function,sortable:{type:[Boolean,String],default:!1},sortMethod:Function,sortBy:[String,Function,Array],resizable:{type:Boolean,default:!0},columnKey:String,align:String,headerAlign:String,showTooltipWhenOverflow:Boolean,showOverflowTooltip:Boolean,fixed:[Boolean,String],formatter:Function,selectable:Function,reserveSelection:Boolean,filterMethod:Function,filteredValue:Array,filters:Array,filterPlacement:String,filterMultiple:{type:Boolean,default:!0},index:[Number,Function],sortOrders:{type:Array,default:()=>["ascending","descending",null],validator:e=>e.every(t=>["ascending","descending",null].includes(t))}};let Ts=1;var ol=Me({name:"ElTableColumn",components:{ElCheckbox:Le},props:ks,setup(e,{slots:t}){const l=te(),n=x({}),r=$(()=>{let p=l.parent;for(;p&&!p.tableId;)p=p.parent;return p}),{registerNormalWatchers:a,registerComplexWatchers:u}=Hs(r,e),{columnId:s,isSubColumn:o,realHeaderAlign:i,columnOrTableParent:c,setColumnWidth:h,setColumnForcedProps:f,setColumnRenders:y,getPropsData:g,getColumnElIndex:w,realAlign:m}=Fs(e,t,r),S=c.value;s.value=`${S.tableId||S.columnId}_column_${Ts++}`,Tt(()=>{o.value=r.value!==S;const p=e.type||"default",d=e.sortable===""?!0:e.sortable,v={...Ls[p],id:s.value,type:p,property:e.prop||e.property,align:m,headerAlign:i,showOverflowTooltip:e.showOverflowTooltip||e.showTooltipWhenOverflow,filterable:e.filters||e.filterMethod,filteredValue:[],filterPlacement:"",isColumnGroup:!1,isSubColumn:!1,filterOpened:!1,sortable:d,index:e.index,rawColumnKey:l.vnode.key};let A=g(["columnKey","label","className","labelClassName","type","renderHeader","formatter","fixed","resizable"],["sortMethod","sortBy","sortOrders"],["selectable","reserveSelection"],["filterMethod","filters","filterMultiple","filterOpened","filteredValue","filterPlacement"]);A=On(v,A),A=Pn(y,h,f)(A),n.value=A,a(),u()}),Ve(()=>{var p;const d=c.value,v=o.value?d.vnode.el.children:(p=d.refs.hiddenColumns)==null?void 0:p.children,C=()=>w(v||[],l.vnode.el);n.value.getColumnIndex=C,C()>-1&&r.value.store.commit("insertColumn",n.value,o.value?d.columnConfig.value:null)}),Xl(()=>{r.value.store.commit("removeColumn",n.value,o.value?S.columnConfig.value:null)}),l.columnId=s.value,l.columnConfig=n},render(){var e,t,l;try{const n=(t=(e=this.$slots).default)==null?void 0:t.call(e,{row:{},column:{},$index:-1}),r=[];if(Array.isArray(n))for(const u of n)((l=u.type)==null?void 0:l.name)==="ElTableColumn"||u.shapeFlag&2?r.push(u):u.type===_e&&Array.isArray(u.children)&&u.children.forEach(s=>{(s==null?void 0:s.patchFlag)!==1024&&!ql(s==null?void 0:s.children)&&r.push(s)});return k("div",r)}catch{return k("div",[])}}});const Ds=Ul(xs,{TableColumn:ol}),Is=_l(ol);export{Is as E,Ds as a};
|