import{_ as S}from"./DeleteModal-C98s5Bmc.js";import{_ as V}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{ak as $,r as p,a2 as j,T as M,c as a,a6 as z,o,d as E,f,w as n,e as U,t as q,k as t,h as s,v as G,af as H,i as k,F as J}from"./index-B2QMYzLh.js";const K={__name:"TreeParts",props:{title:String,showLock:{type:Boolean,default:!1},treeData:{type:Array,default:()=>[]},permission:{type:Object,default:()=>{}},fieldNames:{type:Object,default:()=>({label:"label",key:"id",children:"children"})}},emits:["nodeClick","addBtnClick","drop","deleteBtnClick"],setup(u,{emit:b}){const _=u,{treeData:g,title:v}=$(_),{permission:{add_permission:h,edit_permission:Q,delete_permission:D}}=_,c=b,y=p(null),C=p({}),r=p(!1);let l=p(!1);const B=()=>{l.value=!l.value},x=e=>{c("nodeClick",e)},I=e=>{c("addBtnClick",e)},N=({dragNode:e,dropNode:i,dropPosition:m})=>{c("drop",{dragNode:e,dropNode:i,dropPosition:m})},w=e=>{C.value=e,r.value=!0},T=()=>{c("deleteBtnClick",C.value),r.value=!1};return j(()=>_.treeData,e=>{e.length>0&&M(()=>{y.value.expandAll()})}),(e,i)=>{const m=a("a-button"),A=a("a-tooltip"),F=a("IconPlus"),O=a("IconDelete"),P=a("a-tree"),L=a("a-card"),R=z("has-permi");return o(),E(J,null,[f(L,{title:t(v),bordered:!1,"header-style":{textAlign:"left"},class:"tree-card"},{title:n(()=>[U("span",null,q(t(v)),1),u.showLock?(o(),s(A,{key:0,content:"点击后可通过拖拽更改结构,再次点击来关闭","background-color":"#165DFF"},{default:n(()=>[G((o(),s(m,{type:t(l)?"secondary":"outline",style:{float:"right"},onClick:B},{default:n(()=>[(o(),s(H(t(l)?"IconUnlock":"IconLock")))]),_:1},8,["type"])),[[R,"/base/syorganization!update"]])]),_:1})):k("",!0)]),default:n(()=>[f(P,{draggable:t(l),blockNode:"",data:t(g),"show-line":!0,ref_key:"treeRef",ref:y,fieldNames:u.fieldNames,onDrop:N,onSelect:x},{extra:n(d=>[t(h)?(o(),s(F,{key:0,class:"icon-plus",onClick:()=>I(d)},null,8,["onClick"])):k("",!0),t(D)&&d.parentId?(o(),s(O,{key:1,onClick:W=>w(d),class:"icon-delete"},null,8,["onClick"])):k("",!0)]),_:1},8,["draggable","data","fieldNames"])]),_:1},8,["title"]),f(S,{visible:r.value,onOk:T,onCancel:i[0]||(i[0]=d=>r.value=!1)},null,8,["visible"])],64)}}},ee=V(K,[["__scopeId","data-v-2a118ac7"]]);export{ee as T};