2 lines
8.5 KiB
Java
2 lines
8.5 KiB
Java
import{j as X,gg as oe,f as Y,a as m,c8 as ce,fb as V,h as D,k as Z,dn as F,P as W,c5 as b,fT as de,dp as w,fU as z,c7 as se,cq as re,a4 as ie}from"./index-X7Y8jykP.js";import{F as ue}from"./FolderOpenOutlined-SzIPA7z0.js";import{f as E,e as ee,c as h,r as O,w as fe,h as B,aa as ve,n as ye}from"./vue-vendor-DNhG1Cve.js";import{u as pe,T as he,r as Ke,t as xe,F as be}from"./index-Cl-8Hzo4.js";import{c as G,a as me,b as ke,f as ge}from"./useMaxLevel-DE205ncc.js";const J=4;function Ee(e){const{dropPosition:c,dropLevelOffset:o,prefixCls:a,indent:n,direction:u="ltr"}=e,s=u==="ltr"?"left":"right",r=u==="ltr"?"right":"left",v={[s]:`${-o*n+J}px`,[r]:0};switch(c){case-1:v.top="-3px";break;case 1:v.bottom="-3px";break;default:v.bottom="-3px",v[s]=`${n+J}px`;break}return E("div",{style:v,class:`${a}-drop-indicator`},null)}const te=()=>{const e=xe();return m(m({},e),{showLine:z([Boolean,Object]),multiple:b(),autoExpandParent:b(),checkStrictly:b(),checkable:b(),disabled:b(),defaultExpandAll:b(),defaultExpandParent:b(),defaultExpandedKeys:w(),expandedKeys:w(),checkedKeys:z([Array,Object]),defaultCheckedKeys:w(),selectedKeys:w(),defaultSelectedKeys:w(),selectable:b(),loadedKeys:w(),draggable:b(),showIcon:b(),icon:F(),switcherIcon:W.any,prefixCls:String,replaceFields:de(),blockNode:b(),openAnimation:W.any,onDoubleclick:e.onDblclick,"onUpdate:selectedKeys":F(),"onUpdate:checkedKeys":F(),"onUpdate:expandedKeys":F()})},Oe=ee({compatConfig:{MODE:3},name:"ATree",inheritAttrs:!1,props:X(te(),{checkable:!1,selectable:!0,showIcon:!1,blockNode:!1}),slots:Object,setup(e,c){let{attrs:o,expose:a,emit:n,slots:u}=c;oe(!(e.treeData===void 0&&u.default));const{prefixCls:s,direction:r,virtual:v}=Y("tree",e),[y,g]=pe(s),i=O();a({treeRef:i,onNodeExpand:function(){var l;(l=i.value)===null||l===void 0||l.onNodeExpand(...arguments)},scrollTo:l=>{var f;(f=i.value)===null||f===void 0||f.scrollTo(l)},selectedKeys:h(()=>{var l;return(l=i.value)===null||l===void 0?void 0:l.selectedKeys}),checkedKeys:h(()=>{var l;return(l=i.value)===null||l===void 0?void 0:l.checkedKeys}),halfCheckedKeys:h(()=>{var l;return(l=i.value)===null||l===void 0?void 0:l.halfCheckedKeys}),loadedKeys:h(()=>{var l;return(l=i.value)===null||l===void 0?void 0:l.loadedKeys}),loadingKeys:h(()=>{var l;return(l=i.value)===null||l===void 0?void 0:l.loadingKeys}),expandedKeys:h(()=>{var l;return(l=i.value)===null||l===void 0?void 0:l.expandedKeys})}),fe(()=>{se(e.replaceFields===void 0,"Tree","`replaceFields` is deprecated, please use fieldNames instead")});const $=(l,f)=>{n("update:checkedKeys",l),n("check",l,f)},S=(l,f)=>{n("update:expandedKeys",l),n("expand",l,f)},_=(l,f)=>{n("update:selectedKeys",l),n("select",l,f)};return()=>{const{showIcon:l,showLine:f,switcherIcon:j=u.switcherIcon,icon:A=u.icon,blockNode:U,checkable:L,selectable:C,fieldNames:T=e.replaceFields,motion:H=e.openAnimation,itemHeight:t=28,onDoubleclick:d,onDblclick:p}=e,P=m(m(m({},o),ce(e,["onUpdate:checkedKeys","onUpdate:expandedKeys","onUpdate:selectedKeys","onDoubleclick"])),{showLine:!!f,dropIndicatorRender:Ee,fieldNames:T,icon:A,itemHeight:t}),K=u.default?V(u.default()):void 0;return y(E(he,D(D({},P),{},{virtual:v.value,motion:H,ref:i,prefixCls:s.value,class:Z({[`${s.value}-icon-hide`]:!l,[`${s.value}-block-node`]:U,[`${s.value}-unselectable`]:!C,[`${s.value}-rtl`]:r.value==="rtl"},o.class,g.value),direction:r.value,checkable:L,selectable:C,switcherIcon:N=>Ke(s.value,j,N,u.leafIcon,f),onCheck:$,onExpand:S,onSelect:_,onDblclick:p||d,children:K}),m(m({},u),{checkable:()=>E("span",{class:`${s.value}-checkbox-inner`},null)})))}}});var _e={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z"}}]},name:"folder",theme:"outlined"};function Q(e){for(var c=1;c<arguments.length;c++){var o=arguments[c]!=null?Object(arguments[c]):{},a=Object.keys(o);typeof Object.getOwnPropertySymbols=="function"&&(a=a.concat(Object.getOwnPropertySymbols(o).filter(function(n){return Object.getOwnPropertyDescriptor(o,n).enumerable}))),a.forEach(function(n){Ne(e,n,o[n])})}return e}function Ne(e,c,o){return c in e?Object.defineProperty(e,c,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[c]=o,e}var q=function(c,o){var a=Q({},c,o.attrs);return E(re,Q({},a,{icon:_e}),null)};q.displayName="FolderOutlined";q.inheritAttrs=!1;var k;(function(e){e[e.None=0]="None",e[e.Start=1]="Start",e[e.End=2]="End"})(k||(k={}));function R(e,c,o){function a(n){const u=n[c.key],s=n[c.children];o(u,n)!==!1&&R(s||[],c,o)}e.forEach(a)}function we(e){let{treeData:c,expandedKeys:o,startKey:a,endKey:n,fieldNames:u={title:"title",key:"key",children:"children"}}=e;const s=[];let r=k.None;if(a&&a===n)return[a];if(!a||!n)return[];function v(y){return y===a||y===n}return R(c,u,y=>{if(r===k.End)return!1;if(v(y)){if(s.push(y),r===k.None)r=k.Start;else if(r===k.Start)return r=k.End,!1}else r===k.Start&&s.push(y);return o.includes(y)}),s}function M(e,c,o){const a=[...c],n=[];return R(e,o,(u,s)=>{const r=a.indexOf(u);return r!==-1&&(n.push(s),a.splice(r,1)),!!a.length}),n}var Se=function(e,c){var o={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&c.indexOf(a)<0&&(o[a]=e[a]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,a=Object.getOwnPropertySymbols(e);n<a.length;n++)c.indexOf(a[n])<0&&Object.prototype.propertyIsEnumerable.call(e,a[n])&&(o[a[n]]=e[a[n]]);return o};const Te=()=>m(m({},te()),{expandAction:z([Boolean,String])});function Pe(e){const{isLeaf:c,expanded:o}=e;return c?E(be,null,null):o?E(ue,null,null):E(q,null,null)}const je=ee({compatConfig:{MODE:3},name:"ADirectoryTree",inheritAttrs:!1,props:X(Te(),{showIcon:!0,expandAction:"click"}),slots:Object,setup(e,c){let{attrs:o,slots:a,emit:n,expose:u}=c;var s;const r=O(e.treeData||G(V((s=a.default)===null||s===void 0?void 0:s.call(a))));B(()=>e.treeData,()=>{r.value=e.treeData}),ve(()=>{ye(()=>{var t;e.treeData===void 0&&a.default&&(r.value=G(V((t=a.default)===null||t===void 0?void 0:t.call(a))))})});const v=O(),y=O(),g=h(()=>ge(e.fieldNames)),i=O();u({scrollTo:t=>{var d;(d=i.value)===null||d===void 0||d.scrollTo(t)},selectedKeys:h(()=>{var t;return(t=i.value)===null||t===void 0?void 0:t.selectedKeys}),checkedKeys:h(()=>{var t;return(t=i.value)===null||t===void 0?void 0:t.checkedKeys}),halfCheckedKeys:h(()=>{var t;return(t=i.value)===null||t===void 0?void 0:t.halfCheckedKeys}),loadedKeys:h(()=>{var t;return(t=i.value)===null||t===void 0?void 0:t.loadedKeys}),loadingKeys:h(()=>{var t;return(t=i.value)===null||t===void 0?void 0:t.loadingKeys}),expandedKeys:h(()=>{var t;return(t=i.value)===null||t===void 0?void 0:t.expandedKeys})});const $=()=>{const{keyEntities:t}=me(r.value,{fieldNames:g.value});let d;return e.defaultExpandAll?d=Object.keys(t):e.defaultExpandParent?d=ke(e.expandedKeys||e.defaultExpandedKeys||[],t):d=e.expandedKeys||e.defaultExpandedKeys,d},S=O(e.selectedKeys||e.defaultSelectedKeys||[]),_=O($());B(()=>e.selectedKeys,()=>{e.selectedKeys!==void 0&&(S.value=e.selectedKeys)},{immediate:!0}),B(()=>e.expandedKeys,()=>{e.expandedKeys!==void 0&&(_.value=e.expandedKeys)},{immediate:!0});const f=ie((t,d)=>{const{isLeaf:p}=d;p||t.shiftKey||t.metaKey||t.ctrlKey||i.value.onNodeExpand(t,d)},200,{leading:!0}),j=(t,d)=>{e.expandedKeys===void 0&&(_.value=t),n("update:expandedKeys",t),n("expand",t,d)},A=(t,d)=>{const{expandAction:p}=e;p==="click"&&f(t,d),n("click",t,d)},U=(t,d)=>{const{expandAction:p}=e;(p==="dblclick"||p==="doubleclick")&&f(t,d),n("doubleclick",t,d),n("dblclick",t,d)},L=(t,d)=>{const{multiple:p}=e,{node:P,nativeEvent:K}=d,N=P[g.value.key],I=m(m({},d),{selected:!0}),le=(K==null?void 0:K.ctrlKey)||(K==null?void 0:K.metaKey),ae=K==null?void 0:K.shiftKey;let x;p&&le?(x=t,v.value=N,y.value=x,I.selectedNodes=M(r.value,x,g.value)):p&&ae?(x=Array.from(new Set([...y.value||[],...we({treeData:r.value,expandedKeys:_.value,startKey:N,endKey:v.value,fieldNames:g.value})])),I.selectedNodes=M(r.value,x,g.value)):(x=[N],v.value=N,y.value=x,I.selectedNodes=M(r.value,x,g.value)),n("update:selectedKeys",x),n("select",x,I),e.selectedKeys===void 0&&(S.value=x)},C=(t,d)=>{n("update:checkedKeys",t),n("check",t,d)},{prefixCls:T,direction:H}=Y("tree",e);return()=>{const t=Z(`${T.value}-directory`,{[`${T.value}-directory-rtl`]:H.value==="rtl"},o.class),{icon:d=a.icon,blockNode:p=!0}=e,P=Se(e,["icon","blockNode"]);return E(Oe,D(D(D({},o),{},{icon:d||Pe,ref:i,blockNode:p},P),{},{prefixCls:T.value,class:t,expandedKeys:_.value,selectedKeys:S.value,onSelect:L,onClick:A,onDblclick:U,onExpand:j,onCheck:C}),a)}}});export{q as F,Oe as T,je as _};
|