Files
qhmes/web-dist/js/PackPermissionDrawer-CRWHnGsf.js
2026-06-16 18:19:57 +08:00

2 lines
5.5 KiB
Java

var D=(P,I,y)=>new Promise((g,f)=>{var r=i=>{try{m(y.next(i))}catch(u){f(u)}},k=i=>{try{m(y.throw(i))}catch(u){f(u)}},m=i=>i.done?g(i.value):Promise.resolve(i.value).then(r,k);m((y=y.apply(P,I)).next())});import{B as G}from"./index-D9GWo192.js";import{B as H}from"./index-Bzmv9Ie7.js";import{e as q,x as Q}from"./tenant.api-CINwvO59.js";import{aR as U,aS as Y,f3 as S,ad as W,au as X}from"./index-X7Y8jykP.js";import{u as Z}from"./useDrawer-BDPywy9W.js";import"./index-CfNJyBRj.js";import{D as ee}from"./dropdown-jkliuVyN.js";import{e as te,y as h,z as E,A as s,B as oe,u as v,K as O,f as n,r as c,E as a,H as le,G as se,Q as L}from"./vue-vendor-DNhG1Cve.js";import"./index-BzChaRPg.js";import"./ArrowLeftOutlined-B3JgaWh-.js";import"./index-ByCwbQDV.js";import"./index-Upeu4GGa.js";import"./index-C4wWpZeQ.js";import"./emoji-mart-vue-fast-R0uJEDq-.js";import"./useTimeout-D5AmIBZw.js";import"./index-M9QP6cvf.js";import"./Skeleton-CimgOdM7.js";import"./useScrollTo-0FPEw5-K.js";import"./useIntersectionObserver-BGOgyKyu.js";import"./index-DZJwICFr.js";import"./isNumeric-DjvBa-1E.js";import"./bem-CTsBfXqP.js";import"./props-Cc-8EPhZ.js";import"./fromPairs-Dx9PT-t0.js";import"./useContextMenu-BncvQCmV.js";import"./index-saD4h7VJ.js";import"./difference-CGvbIcA7.js";import"./index-C7ckZv9Z.js";import"./DirectoryTree-nk_YTTIy.js";import"./FolderOpenOutlined-SzIPA7z0.js";import"./index-Cl-8Hzo4.js";import"./useMaxLevel-DE205ncc.js";import"./eagerComputed-BTlOruLW.js";import"./index-BuONesFs.js";const ne=te({__name:"PackPermissionDrawer",emits:["register","success"],setup(P,{emit:I}){const y=I,g=c([]),f=c([]),r=c([]),k=c([]),m=c(""),i=c(null),u=c(!1),w=c([]),K=c(!1),[V,{setDrawerProps:N,closeDrawer:B}]=Z(t=>D(null,null,function*(){yield J(),N({confirmLoading:!1,loading:!0}),m.value=t.packId;const e=yield Q();g.value=b(e.treeList),f.value=e.ids;const l=localStorage.getItem(S);if(l){const o=JSON.parse(l);o.level&&A({key:o.level}),o.expand&&A({key:o.expand})}else w.value=e.ids;t.permissionIds&&(r.value=t.permissionIds.split(",")),N({loading:!1})}));function b(t){return t!=null&&t.length&&t.forEach(e=>{var l;if(e.slotTitle){const{t:o}=W();e.slotTitle.includes("t('")&&o&&(e.slotTitle=new Function("t",`return ${e.slotTitle}`)(o))}(l=e.children)!=null&&l.length&&b(e.children)}),t}function $(t,e){if(K.value)r.value=t.checked?t.checked:t;else{const l=F(e.node,"children","key");if(e.checked)r.value=[...new Set([...r.value,...l])];else{const o=j(r.value,l);r.value=o}}}function j(t,e){const l={};for(const o of e)l[o]=!0;return t.filter(o=>!l[o])}function F(t,e,l){var _;const o=[];o.push(t[l]);const p=T=>{T.forEach(d=>{var C;o.push(d[l]),(C=d[e])!=null&&C.length&&p(d[e])})};return(_=t[e])!=null&&_.length&&p(t[e]),o}function J(){g.value=[],f.value=[],r.value=[],k.value=[],m.value=""}function M(){const t=v(i);if(!t)throw new Error("tree is null!");return t}function R(t){return D(this,null,function*(){var l;let e={id:v(m),permissionIds:v((l=M())==null?void 0:l.getCheckedKeys()).join(",")};u.value===!1&&(yield z(e)),t&&B()})}function z(t){return D(this,null,function*(){u.value=!0;try{yield q(t),y("success")}catch(e){u.value=!1}setTimeout(()=>{u.value=!1},500)})}function A({key:t}){t==="checkAll"?r.value=f.value:t==="cancelCheck"?r.value=[]:t==="openAll"?(w.value=f.value,x("expand","openAll")):t==="closeAll"?(w.value=[],x("expand","closeAll")):t==="relation"?(K.value=!1,x("level","relation")):(K.value=!0,x("level","standAlone"))}const x=(t,e)=>{const l=localStorage.getItem(S),o=l?JSON.parse(l):{};o[t]=e,localStorage.setItem(S,JSON.stringify(o))};return(t,e)=>{const l=O("Icon"),o=O("a-button"),p=Y,_=U,T=ee;return E(),h(v(G),oe(t.$attrs,{onRegister:v(V),width:"650px",destroyOnClose:"",showFooter:""}),{title:s(()=>[e[11]||(e[11]=a(" 权限配置 ",-1)),n(T,null,{overlay:s(()=>[n(_,{onClick:A},{default:s(()=>[n(p,{key:"checkAll"},{default:s(()=>[...e[3]||(e[3]=[a("选择全部",-1)])]),_:1}),n(p,{key:"cancelCheck"},{default:s(()=>[...e[4]||(e[4]=[a("取消选择",-1)])]),_:1}),e[9]||(e[9]=L("div",{class:"line"},null,-1)),n(p,{key:"openAll"},{default:s(()=>[...e[5]||(e[5]=[a("展开全部",-1)])]),_:1}),n(p,{key:"closeAll"},{default:s(()=>[...e[6]||(e[6]=[a("折叠全部",-1)])]),_:1}),e[10]||(e[10]=L("div",{class:"line"},null,-1)),n(p,{key:"relation"},{default:s(()=>[...e[7]||(e[7]=[a("层级关联",-1)])]),_:1}),n(p,{key:"standAlone"},{default:s(()=>[...e[8]||(e[8]=[a("层级独立",-1)])]),_:1})]),_:1})]),default:s(()=>[n(o,{class:"more-icon"},{default:s(()=>[e[2]||(e[2]=a(" 更多操作 ",-1)),n(l,{icon:"ant-design:down-outlined",size:"14px",style:{position:"relative",top:"1px",right:"5px"}})]),_:1})]),_:1})]),footer:s(()=>[n(o,{onClick:v(B)},{default:s(()=>[...e[12]||(e[12]=[a("取消",-1)])]),_:1},8,["onClick"]),n(o,{onClick:e[0]||(e[0]=d=>R(!1)),type:"primary",loading:u.value,ghost:"",style:{"margin-right":"0.8rem"}},{default:s(()=>[...e[13]||(e[13]=[a("仅保存",-1)])]),_:1},8,["loading"]),n(o,{onClick:e[1]||(e[1]=d=>R(!0)),type:"primary",loading:u.value},{default:s(()=>[...e[14]||(e[14]=[a("保存并关闭",-1)])]),_:1},8,["loading"])]),default:s(()=>[n(v(H),{ref_key:"treeRef",ref:i,checkable:"",treeData:g.value,checkedKeys:r.value,expandedKeys:w.value,selectedKeys:k.value,clickRowToExpand:!1,checkStrictly:!0,title:"所拥有的的权限",onCheck:$},{title:s(({slotTitle:d,ruleFlag:C})=>[a(se(d)+" ",1),C?(E(),h(l,{key:0,icon:"ant-design:align-left-outlined",style:{"margin-left":"5px",color:"red"}})):le("",!0)]),_:1},8,["treeData","checkedKeys","expandedKeys","selectedKeys"])]),_:1},16,["onRegister"])}}}),Fe=X(ne,[["__scopeId","data-v-84a257e9"]]);export{Fe as default};