1import{ex as Be,aO as Ae,aP as mt,aQ as te,ba as ue,b7 as Ue,bm as oe,by as Ve,a_ as O,bc as G,eE as Me,be as ht,c9 as vt,aR as ie,b0 as He,aT as Ke,bo as yt,aV as x,aW as z,b1 as g,b2 as P,b3 as m,b4 as kt,ck as le,aZ as de,aY as C,b5 as bt,bh as X,bg as l,bb as Fe,gh as gt,bp as Et,eu as Ct,aS as Nt,aX as Tt,b6 as J,a$ as $e,bY as xt,b8 as Dt,cB as ze,bq as be,en as ge,cl as je,hI as _e,hJ as fe,hK as ae,cn as _t,cH as wt,cd as Re,ce as ne,br as At,cf as Kt,ci as Ie,bR as V,cL as We,cM as Ye,ch as Rt,cr as It,bt as ke,c1 as we,ge as Lt}from"./c-index-D0PNHfG-.js";import{e as Ee,d as qe,c as Ge,h as Xe,i as Je,l as St,k as Ot}from"./c-el-form-item-DpapBxAI.js";import{s as Qe,S as Pt}from"./c-StandardAddOrEditMixin-gmCKtXC_.js";import{U as Vt}from"./c-UserFormCreateOrUpdate-Crb0uATC.js";import{E as Ze,b as $t}from"./c-index-MsKR8JGb.js";import{E as et}from"./c-index-C3rzOKvV.js";/* empty css */import{E as Bt}from"./c-index-Dyba1pkL.js";import{E as Ut}from"./c-index-B2MHE_Vs.js";import{a as Mt,P as Ht}from"./c-ParentTreeSelect-DEBH1iKH.js";import{H as Ft}from"./c-HelperTool-CefELQuQ.js";import{F as zt}from"./c-el-virtual-list-uNff9pdM.js";/* empty css */import"./e-front-DVf7xbkB.js";import"./c-FormGroupWrapper-tsj3-qm5.js";import"./c-index-BK4XP-j-.js";import"./c-debounce-B_JBmozd.js";/* empty css */const Le=Symbol(),jt={key:-1,level:-1,data:{}},tt={type:Number,default:26},Wt=Ae({data:{type:te(Array),default:()=>ue([])},emptyText:{type:String},height:{type:Number,default:200},props:{type:te(Object),default:()=>ue({children:"children",label:"label",disabled:"disabled",value:"id",class:""})},highlightCurrent:Boolean,showCheckbox:Boolean,defaultCheckedKeys:{type:te(Array),default:()=>ue([])},checkStrictly:Boolean,defaultExpandedKeys:{type:te(Array),default:()=>ue([])},indent:{type:Number,default:16},itemSize:tt,icon:{type:mt},expandOnClickNode:{type:Boolean,default:!0},checkOnClickNode:Boolean,checkOnClickLeaf:{type:Boolean,default:!0},currentNodeKey:{type:te([String,Number])},accordion:Boolean,filterMethod:{type:te(Function)},perfMode:{type:Boolean,default:!0},scrollbarAlwaysOn:Boolean}),Yt=Ae({node:{type:te(Object),default:()=>ue(jt)},expanded:Boolean,checked:Boolean,indeterminate:Boolean,showCheckbox:Boolean,disabled:Boolean,current:Boolean,hiddenExpandIcon:Boolean,itemSize:tt}),qt=Ae({node:{type:te(Object),required:!0}}),nt="node-click",ot="node-drop",st="node-expand",lt="node-collapse",at="current-change",dt="check",it="check-change",ct="node-contextmenu",Gt={[nt]:(e,t,i)=>e&&t&&i,[ot]:(e,t,i)=>e&&t&&i,[st]:(e,t)=>e&&t,[lt]:(e,t)=>e&&t,[at]:(e,t)=>e&&t,[dt]:(e,t)=>e&&t,[it]:(e,t)=>e&&Be(t),[ct]:(e,t,i)=>e&&t&&i},Xt={click:(e,t)=>!!(e&&t),drop:(e,t)=>!!(e&&t),toggle:e=>!!e,check:(e,t)=>e&&Be(t)};function Jt(e,t){const i=O(new Set),a=O(new Set),{emit:d}=Ue();oe([()=>t.value,()=>e.defaultCheckedKeys],()=>Ve(()=>{_(e.defaultCheckedKeys)}),{immediate:!0});const k=(u=!1)=>{if(!t.value||!e.showCheckbox||e.checkStrictly&&!u)return;const{levelTreeNodeMap:D,maxLevel:K}=t.value,s=i.value,T=new Set;for(let y=K;y>=1;--y){const H=D.get(y);H&&H.forEach(S=>{const $=S.children;let Q=!S.isLeaf||S.disabled||s.has(S.key);if($){let j=!0,B=!1;for(const ee of $){const se=ee.key;if(ee.isEffectivelyChecked||(Q=!1),s.has(se))B=!0;else if(T.has(se)){j=!1,B=!0;break}else j=!1}j?s.add(S.key):B?(T.add(S.key),s.delete(S.key)):(s.delete(S.key),T.delete(S.key))}S.isEffectivelyChecked=Q})}a.value=T},N=u=>i.value.has(u.key),v=u=>a.value.has(u.key),E=(u,D,K=!0,s=!0,T=!1)=>{const y=i.value,H=u.children;(!e.checkStrictly||T)&&K&&(H!=null&&H.length)&&(D=H.some($=>!$.isEffectivelyChecked));const S=($,Q)=>{y[Q?"add":"delete"]($.key);const j=$.children;(!e.checkStrictly||T)&&j&&j.forEach(B=>{(!B.disabled||B.children)&&S(B,Q)})};S(u,D),s&&k(),K&&w(u,D)},w=(u,D)=>{const{checkedNodes:K,checkedKeys:s}=p(),{halfCheckedNodes:T,halfCheckedKeys:y}=o();d(dt,u.data,{checkedKeys:s,checkedNodes:K,halfCheckedKeys:y,halfCheckedNodes:T}),d(it,u.data,D)};function A(u=!1){return p(u).checkedKeys}function I(u=!1){return p(u).checkedNodes}function c(){return o().halfCheckedKeys}function b(){return o().halfCheckedNodes}function p(u=!1){const D=[],K=[];if(t!=null&&t.value&&e.showCheckbox){const{treeNodeMap:s}=t.value;i.value.forEach(T=>{const y=s.get(T);y&&(!u||u&&y.isLeaf)&&(K.push(T),D.push(y.data))})}return{checkedKeys:K,checkedNodes:D}}function o(){const u=[],D=[];if(t!=null&&t.value&&e.showCheckbox){const{treeNodeMap:K}=t.value;a.value.forEach(s=>{const T=K.get(s);T&&(D.push(s),u.push(T.data))})}return{halfCheckedNodes:u,halfCheckedKeys:D}}function r(u){i.value.clear(),a.value.clear(),Ve(()=>{_(u)})}function f(u,D,K){if(t!=null&&t.value&&e.showCheckbox){const s=t.value.treeNodeMap.get(u);s&&E(s,D,!1,void 0,K)}}function _(u){if(t!=null&&t.value){const{treeNodeMap:D}=t.value;if(e.showCheckbox&&D&&(u==null?void 0:u.length)>0){for(const K of u){const s=D.get(K);s&&!N(s)&&E(s,!0,!1,!1)}k()}}}return{updateCheckedKeys:k,toggleCheckbox:E,isChecked:N,isIndeterminate:v,getCheckedKeys:A,getCheckedNodes:I,getHalfCheckedKeys:c,getHalfCheckedNodes:b,setChecked:f,setCheckedKeys:r}}function Qt(e,t){const i=O(new Set([])),a=O(new Set([])),d=G(()=>Me(e.filterMethod));function k(v){var o;if(!d.value)return;const E=new Set,w=a.value,A=i.value,I=[],c=((o=t.value)==null?void 0:o.treeNodes)||[],b=e.filterMethod;A.clear();function p(r){r.forEach(f=>{I.push(f),b!=null&&b(v,f.data,f)?I.forEach(u=>{E.add(u.key),u.expanded=!0}):(f.expanded=!1,f.isLeaf&&A.add(f.key));const _=f.children;if(_&&p(_),!f.isLeaf){if(!E.has(f.key))A.add(f.key);else if(_){let u=!0;for(const D of _)if(!A.has(D.key)){u=!1;break}u?w.add(f.key):w.delete(f.key)}}I.pop()})}return p(c),E}function N(v){return a.value.has(v.key)}return{hiddenExpandIconKeySet:a,hiddenNodeKeySet:i,doFilter:k,isForceHiddenExpandIcon:N}}function Zt(e,t){const i=O(new Set),a=O(),d=vt(),k=O(),{isIndeterminate:N,isChecked:v,toggleCheckbox:E,getCheckedKeys:w,getCheckedNodes:A,getHalfCheckedKeys:I,getHalfCheckedNodes:c,setChecked:b,setCheckedKeys:p}
1=Jt(e,d),{doFilter:o,hiddenNodeKeySet:r,isForceHiddenExpandIcon:f}=Qt(e,d),_=G(()=>{var n;return((n=e.props)==null?void 0:n.value)||"id"}),u=G(()=>{var n;return((n=e.props)==null?void 0:n.children)||"children"}),D=G(()=>{var n;return((n=e.props)==null?void 0:n.disabled)||"disabled"}),K=G(()=>{var n;return((n=e.props)==null?void 0:n.label)||"label"}),s=G(()=>{var Z;const n=i.value,h=r.value,R=[],U=((Z=d.value)==null?void 0:Z.treeNodes)||[],L=[];for(let M=U.length-1;M>=0;--M)L.push(U[M]);for(;L.length;){const M=L.pop();if(!h.has(M.key)&&(R.push(M),M.children&&n.has(M.key)))for(let F=M.children.length-1;F>=0;--F)L.push(M.children[F])}return R}),T=G(()=>s.value.length>0);function y(n){const h=new Map,R=new Map;let U=1;function L(M,F=1,pt=void 0){var Pe;const Oe=[];for(const ce of M){const De=$(ce),q={level:F,key:De,data:ce};q.label=j(ce),q.parent=pt;const re=S(ce);q.disabled=Q(ce),q.isLeaf=!re||re.length===0,q.expanded=i.value.has(De),re&&re.length&&(q.children=L(re,F+1,q)),Oe.push(q),h.set(De,q),R.has(F)||R.set(F,[]),(Pe=R.get(F))==null||Pe.push(q)}return F>U&&(U=F),Oe}const Z=L(n);return{treeNodeMap:h,levelTreeNodeMap:R,maxLevel:U,treeNodes:Z}}function H(n){const h=o(n);h&&(i.value=h)}function S(n){return n[u.value]}function $(n){return n?n[_.value]:""}function Q(n){return n[D.value]}function j(n){return n[K.value]}function B(n){i.value.has(n.key)?me(n):pe(n)}function ee(n){const h=new Set,R=d.value.treeNodeMap;i.value.forEach(U=>{const L=R.get(U);L&&(L.expanded=!1)}),n.forEach(U=>{let L=R.get(U);for(;L&&!h.has(L.key);)h.add(L.key),L.expanded=!0,L=L.parent}),i.value=h}function se(n,h){Ne(n),t(nt,n.data,n,h),e.expandOnClickNode&&B(n),e.showCheckbox&&(e.checkOnClickNode||n.isLeaf&&e.checkOnClickLeaf)&&!n.disabled&&E(n,!v(n),!0)}function Ce(n,h){t(ot,n.data,n,h)}function Ne(n){he(n)||(a.value=n.key,t(at,n.data,n))}function Te(n,h){E(n,h)}function pe(n){const h=i.value;if(d.value&&e.accordion){const{treeNodeMap:U}=d.value;h.forEach(L=>{const Z=U.get(L);n&&n.level===(Z==null?void 0:Z.level)&&(h.delete(L),Z.expanded=!1)})}h.add(n.key);const R=ye(n.key);R&&(R.expanded=!0,t(st,R.data,R))}function me(n){i.value.delete(n.key);const h=ye(n.key);h&&(h.expanded=!1,t(lt,h.data,h))}function xe(n){return!!n.disabled}function he(n){const h=a.value;return h!==void 0&&h===n.key}function Se(){var n,h;if(a.value!==void 0)return(h=(n=d.value)==null?void 0:n.treeNodeMap.get(a.value))==null?void 0:h.data}function W(){return a.value}function Y(n){a.value=n}function ve(n){d.value=y(n)}function ye(n){var R;const h=ht(n)?$(n):n;return(R=d.value)==null?void 0:R.treeNodeMap.get(h)}function ut(n,h="auto"){const R=ye(n);R&&k.value&&k.value.scrollToItem(s.value.indexOf(R),h)}function ft(n){var h;(h=k.value)==null||h.scrollTo(n)}return oe(()=>e.currentNodeKey,n=>{a.value=n},{immediate:!0}),oe(()=>e.defaultExpandedKeys,n=>{ee(n||[])}),oe(()=>e.data,n=>{ve(n),ee(e.defaultExpandedKeys||[])},{immediate:!0}),{tree:d,flattenTree:s,isNotEmpty:T,listRef:k,getKey:$,getChildren:S,toggleExpand:B,toggleCheckbox:E,isChecked:v,isIndeterminate:N,isDisabled:xe,isCurrent:he,isForceHiddenExpandIcon:f,handleNodeClick:se,handleNodeDrop:Ce,handleNodeCheck:Te,getCurrentNode:Se,getCurrentKey:W,setCurrentKey:Y,getCheckedKeys:w,getCheckedNodes:A,getHalfCheckedKeys:I,getHalfCheckedNodes:c,setChecked:b,setCheckedKeys:p,filter:H,setData:ve,getNode:ye,expandNode:pe,collapseNode:me,setExpandedKeys:ee,scrollToNode:ut,scrollTo:ft}}var en=ie({name:"ElTreeNodeContent",props:qt,setup(e){const t=He(Le),i=Ke("tree");return()=>{const a=e.node,{data:d}=a;return t!=null&&t.ctx.slots.default?t.ctx.slots.default({node:a,data:d}):yt(Mt,{tag:"span",truncated:!0,class:i.be("node","label")},()=>[a==null?void 0:a.label])}}});const tn=["aria-expanded","aria-disabled","aria-checked","data-key"];var nn=ie({name:"ElTreeNode",__name:"tree-node",props:Yt,emits:Xt,setup(e,{emit:t}){const i=e,a=t,d=He(Le),k=Ke("tree"),N=G(()=>(d==null?void 0:d.props.indent)??16),v=G(()=>(d==null?void 0:d.props.icon)??gt),E=p=>{var f;const o=(f=d==null?void 0:d.props.props)==null?void 0:f.class;if(!o)return{};let r;if(Me(o)){const{data:_}=p;r=o(_,p)}else r=o;return Et(r)?{[r]:!0}:r},w=p=>{a("click",i.node,p)},A=p=>{a("drop",i.node,p)},I=()=>{a("toggle",i.node)},c=p=>{a("check",i.node,p)},b=p=>{var o,r,f,_;(f=(r=(o=d==null?void 0:d.instance)==null?void 0:o.vnode)==null?void 0:r.props)!=null&&f.onNodeContextmenu&&(p.stopPropagation(),p.preventDefault()),d==null||d.ctx.emit(ct,p,(_=i.node)==null?void 0:_.data,i.node)};return(p,o)=>{var r,f,_;return x(),z("div",{ref:"node$",class:de([C(k).b("node"),C(k).is("expanded",e.expanded),C(k).is("current",e.current),C(k).is("focusable",!e.disabled),C(k).is("checked",!e.disabled&&e.checked),E(e.node)
1]),role:"treeitem",tabindex:"-1","aria-expanded":e.expanded,"aria-disabled":e.disabled,"aria-checked":e.checked,"data-key":(r=e.node)==null?void 0:r.key,onClick:le(w,["stop"]),onContextmenu:b,onDragover:o[1]||(o[1]=le(()=>{},["prevent"])),onDragenter:o[2]||(o[2]=le(()=>{},["prevent"])),onDrop:le(A,["stop"])},[g("div",{class:de(C(k).be("node","content")),style:Fe({paddingLeft:`${(e.node.level-1)*N.value}px`,height:e.itemSize+"px"})},[v.value?(x(),P(C(bt),{key:0,class:de([C(k).is("leaf",!!((f=e.node)!=null&&f.isLeaf)),C(k).is("hidden",e.hiddenExpandIcon),{expanded:!((_=e.node)!=null&&_.isLeaf)&&e.expanded},C(k).be("node","expand-icon")]),onClick:le(I,["stop"])},{default:m(()=>[(x(),P(kt(v.value)))]),_:1},8,["class"])):X("v-if",!0),e.showCheckbox?(x(),P(C(Ze),{key:1,"model-value":e.checked,indeterminate:e.indeterminate,disabled:e.disabled,onChange:c,onClick:o[0]||(o[0]=le(()=>{},["stop"]))},null,8,["model-value","indeterminate","disabled"])):X("v-if",!0),l(C(en),{node:{...e.node,expanded:e.expanded}},null,8,["node"])],6)],42,tn)}}}),on=nn,sn=ie({name:"ElTreeV2",__name:"tree",props:Wt,emits:Gt,setup(e,{expose:t,emit:i}){const a=e,d=i,k=Ct(),N=G(()=>a.itemSize);$e(Le,{ctx:{emit:d,slots:k},props:a,instance:Ue()}),$e(xt,void 0);const{t:v}=Nt(),E=Ke("tree"),{flattenTree:w,isNotEmpty:A,listRef:I,toggleExpand:c,isIndeterminate:b,isChecked:p,isDisabled:o,isCurrent:r,isForceHiddenExpandIcon:f,handleNodeClick:_,handleNodeDrop:u,handleNodeCheck:D,toggleCheckbox:K,getCurrentNode:s,getCurrentKey:T,setCurrentKey:y,getCheckedKeys:H,getCheckedNodes:S,getHalfCheckedKeys:$,getHalfCheckedNodes:Q,setChecked:j,setCheckedKeys:B,filter:ee,setData:se,getNode:Ce,expandNode:Ne,collapseNode:Te,setExpandedKeys:pe,scrollToNode:me,scrollTo:xe}=Zt(a,d);return t({toggleCheckbox:K,getCurrentNode:s,getCurrentKey:T,setCurrentKey:y,getCheckedKeys:H,getCheckedNodes:S,getHalfCheckedKeys:$,getHalfCheckedNodes:Q,setChecked:j,setCheckedKeys:B,filter:ee,setData:se,getNode:Ce,expandNode:Ne,collapseNode:Te,setExpandedKeys:pe,scrollToNode:me,scrollTo:xe}),(he,Se)=>(x(),z("div",{class:de([C(E).b(),{[C(E).m("highlight-current")]:e.highlightCurrent}]),role:"tree"},[C(A)?(x(),P(C(zt),{key:0,ref_key:"listRef",ref:I,"class-name":C(E).b("virtual-list"),data:C(w),total:C(w).length,height:e.height,"item-size":N.value,"perf-mode":e.perfMode,"scrollbar-always-on":e.scrollbarAlwaysOn},{default:m(({data:W,index:Y,style:ve})=>[(x(),P(on,{key:W[Y].key,style:Fe(ve),node:W[Y],expanded:W[Y].expanded,"show-checkbox":e.showCheckbox,checked:C(p)(W[Y]),indeterminate:C(b)(W[Y]),"item-size":N.value,disabled:C(o)(W[Y]),current:C(r)(W[Y]),"hidden-expand-icon":C(f)(W[Y]),onClick:C(_),onToggle:C(c),onCheck:C(D),onDrop:C(u)},null,8,["style","node","expanded","show-checkbox","checked","indeterminate","item-size","disabled","current","hidden-expand-icon","onClick","onToggle","onCheck","onDrop"]))]),_:1},8,["class-name","data","total","height","item-size","perf-mode","scrollbar-always-on"])):(x(),z("div",{key:1,class:de(C(E).e("empty-block"))},[Tt(he.$slots,"empty",{},()=>[g("span",{class:de(C(E).e("empty-text"))},J(e.emptyText??C(v)("el.tree.emptyText")),3)])],2))],2))}}),ln=sn;const rt=Dt(ln),an=ie({components:{ElTreeV2:rt,ElCard:Ee,ElInput:je,ElTag:ge,ElTooltip:be,FontAwesomeIcon:ze},props:{permissions:{type:Object,required:!0}},setup(e){const t={children:"childrens",label:"title"},i=O(0),a=O(),d=O(""),k=O([]),N=O([]),v=O(!0);oe(d,o=>{a.value.filter(o)});const E=async()=>{v.value=!0;try{const{data:o}=await _t.post("admin/content-v2/get-content-map-with-permissions",{permissions:e.permissions});k.value=o,i.value++}catch{wt.error("ÐÑибка пÑи загÑÑзке даннÑÑ
. ÐопÑобÑйÑе Ñнова.")}v.value=!1};oe(()=>e.permissions,async(o,r)=>{await E()},{immediate:!0,deep:!0});const w=(o,r)=>{var f;return o?((f=r.title)==null?void 0:f.includes(o))??!1:!0},A=(o,r)=>{const f=r.key;N.value.includes(f)||N.value.push(f)},I=(o,r)=>{const f=r.key;N.value=N.value.filter(_=>_!==f)},c=()=>{if(!a.value)return;const o=p(k.value);N.value=o.map(r=>r.id),i.value++},b=()=>{a.value&&(N.value=[],i.value++)},p=o=>{let r=[];return o.forEach(f=>{r.push(f),f.childrens&&f.childrens.length>0&&(r=r.concat(p(f.childrens)))}),r};return{defaultProps:t,handleNodeExpand:A,handleNodeCollapse:I,filterNode:w,items:k,loading:v,filterText:d,treeRef:a,loadKeyIteration:i,exp
1andedKeys:N,expandAll:c,collapseAll:b,RulePolicyEnum:ae,ActionRuleEnum:fe,AccessRuleEnum:_e}}}),dn={class:"clearfix"},cn={class:"flex justify-between"},rn={class:"flex items-center"},un={class:"flex items-center"},fn={class:"whitespace-nowrap overflow-hidden text-ellipsis flex-1 max-w-sm"},pn={class:"flex gap-1 text-right justify-end"},mn={class:"text-right"};function hn(e,t,i,a,d,k){const N=je,v=Ie,E=ne("FontAwesomeIcon"),w=be,A=ge,I=rt,c=Ee,b=Kt;return At((x(),P(c,{shadow:"never"},{header:m(()=>[g("div",dn,[g("div",cn,[g("div",rn,[l(N,{modelValue:e.filterText,"onUpdate:modelValue":t[0]||(t[0]=p=>e.filterText=p),placeholder:"ÐÑÑилÑÑÑоваÑÑ"},null,8,["modelValue"])])])])]),default:m(()=>[g("div",un,[e.expandedKeys.length===0?(x(),P(v,{key:0,type:"text",onClick:e.expandAll,class:"ml-2"},{default:m(()=>[...t[1]||(t[1]=[V("РаÑкÑÑÑÑ Ð²Ñе",-1)])]),_:1},8,["onClick"])):(x(),P(v,{key:1,type:"text",onClick:e.collapseAll},{default:m(()=>[...t[2]||(t[2]=[V("СвеÑнÑÑÑ Ð²Ñе",-1)])]),_:1},8,["onClick"]))]),(x(),P(I,{class:"permissions-tree",ref:"treeRef",key:e.loadKeyIteration,data:e.items,props:e.defaultProps,height:400,"default-expanded-keys":e.expandedKeys,"filter-method":e.filterNode,onNodeExpand:e.handleNodeExpand,onNodeCollapse:e.handleNodeCollapse},{default:m(({node:p,data:o})=>[g("div",null,[g("div",fn,J(o.title),1),g("div",pn,[o.canAdd?(x(),P(w,{key:0,content:"ÐÐ¾Ð¶ÐµÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÑÑÑ",placement:"top"},{default:m(()=>[l(E,{icon:"plus",class:"text-green-500"})]),_:1})):X("",!0),o.canEdit?(x(),P(w,{key:1,content:"ÐÐ¾Ð¶ÐµÑ ÑедакÑиÑоваÑÑ",placement:"top"},{default:m(()=>[l(E,{icon:"edit",class:"text-blue-500"})]),_:1})):X("",!0),o.canDelete?(x(),P(w,{key:2,content:"ÐÐ¾Ð¶ÐµÑ ÑдалÑÑÑ",placement:"top"},{default:m(()=>[l(E,{icon:"trash",class:"text-red-500"})]),_:1})):X("",!0),l(A,{type:o.isAllowed?"success":"danger",class:"mr-2"},{default:m(()=>[V(J(o.isAllowed?"ÐоÑÑÑпен":"ÐапÑеÑен"),1)]),_:2},1032,["type"]),o.canAdd?(x(),P(w,{key:3,content:o.ruleId?`ÐÑименено пÑавило #${o.ruleId}`:"ÐÑавило по ÑмолÑаниÑ"},{default:m(()=>[l(A,{type:o.ruleId?"primary":"info",class:"mr-2"},{default:m(()=>[V(J(o.ruleId?"#"+o.ruleId:" - "),1)]),_:2},1032,["type"])]),_:2},1032,["content"])):X("",!0)]),g("div",mn,"ID: "+J(o.id),1)])]),_:1},8,["data","props","default-expanded-keys","filter-method","onNodeExpand","onNodeCollapse"]))]),_:1})),[[b,e.loading]])}const vn=Re(an,[["render",hn]]),yn=ie({components:{...Qe,ElDatePicker:Bt,ElCheckbox:Ze,ElSelect:Ye,ElOption:We,ElTooltip:be,ElInputNumber:Ut,ParentTreeSelect:Ht,FontAwesomeIcon:ze,ElRadioButton:Ge,ElRadioGroup:qe,HelperTool:Ft,PermissionsTree:vn,ElTag:ge,ElPopover:et},props:{modelValue:{type:Object,required:!0}},emits:{"update:modelValue":e=>!0},setup(e,{emit:t}){const i=Rt(),a=O(),d=O({});oe(()=>e.modelValue,c=>{a.value={...c,permissions:(c==null?void 0:c.permissions)||{contentLimitedAccessEnabled:!1,contentAccessRules:[]}}},{immediate:!0,deep:!0});const k=()=>(a.value.permissions.contentAccessRules.push({id:null,rule:_e.ONLY_EDIT_THIS_AND_CHILDREN,actions:[fe.ADD,fe.EDIT,fe.DELETE],policy:ae.ALLOW,childLevel:1,active:!0}),!0),N=()=>{if(a.value.permissions.contentLimitedAccessEnabled)return a.value.permissions.contentAccessRules.length===0&&k(),!0},v=()=>{t("update:modelValue",a.value)};return{authStore:i,editableData:a,addFirstRuleIfNeeded:N,updateParent:v,addRule:k,ActionRuleEnum:fe,AccessRuleEnum:_e,RulePolicyEnum:ae,toggleAction:(c,b,p)=>{if(p)c.actions.push(b);else{const o=c.actions.filter(r=>r!==b);c.actions=o}v()},togglePolicy:c=>{c.policy===ae.ALLOW?c.policy=ae.DENY:c.policy=ae.ALLOW,v()},moveRuleUp:c=>{if(c>0){const b=a.value.permissions.contentAccessRules,p=b[c];b[c]=b[c-1],b[c-1]=p,v(),d.value[c]=!1}},moveRuleDown:c=>{const b=a.value.permissions.contentAccessRules;if(c<b.length-1){const p=b[c];b[c]=b[c+1],b[c+1]=p,v(),d.value[c]=!1}},popoverVisible:d}}}),kn={class:"permissions-tab"},bn={class:"form-group"},gn={class:"flex gap-2 justify-between"},En={key:0,class:"mt-4 grid grid-cols-[1fr,2fr,2fr,auto,auto,auto,auto] gap-4 overflow-x-auto"},Cn={class:"text-center text-sm"},Nn={class:"text-center text-sm"},Tn={class:"flex items-center w-full text-center"},xn={class:"flex flex-col gap-2"},Dn={class:"flex items-center gap-2"},_n={class:"flex items-center w-full text-center"},wn={class:"flex items-center w-[180px]"},An={class:"flex justify-center items-center"},Kn={class:"flex gap-0 items-center justify-center"},Rn={class:"flex gap-0 items-center justify-center"},In={class:"flex items-center w-fit"};function Ln(e,t,i,a,d,k){var K;const N=It,v=ne("FontAwesomeIcon"),E=Ie,w=ne("HelperTool"),A=ge,I=et,c=ne("ParentTreeSelect"),b=We,p=Ye,o=Ge,r=be,f=qe,_=$t,u=ne("PermissionsTree"),D=Ee;return x(),z("div",kn,[(K=e.editableData)!=null&&K.permissions?(x(),P(D,{key:0,class:"mt-2",shadow:"never"},{default:m(()=>[g("div",bn,[t[4]||(t[4]=g("label",null,"ÐклÑÑиÑÑ Ð¾Ð³ÑаниÑеннÑй доÑÑÑп ÑедакÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¼Ð°ÑеÑиалов",-1)),t[5]||(t[5]=V(" ÐÑи вклÑÑении полÑзоваÑÐµÐ»Ñ ÑÐ¼Ð¾Ð¶ÐµÑ ÑпÑавлÑÑÑ ÑолÑко маÑеÑиалами ÑказаннÑми в ÑпиÑке ниже, еÑли не ÑказаÑÑ Ð¿Ñавил Ñо полÑзоваÑÐµÐ»Ñ Ð½Ðµ ÑÐ¼Ð¾Ð¶ÐµÑ ÑпÑавлÑÑÑ Ð½Ð¸Ñем ",-1)),g("div",gn,[l(N,{modelValue:e.editableData.permissions.contentLimitedAccessEnabled,"onUpdate:modelValue":t[0]||(t[0]=s=>e.editableData.permissions.contentLimitedAccessEnabled=s),onChange:t[1]||(t[1]=()=>e.addFirstRuleIfNeeded()&&e.updateParent())},null,8,["modelValue"]),l(E,{disabled:!e.editableData.permissions.contentLimitedAccessEnabled||e.editableData.permissions.contentAccessRules.length>5,onClick:t[2]||(t[2]=()=>e.addRule()&&e.updateParent())},{default:m(()=>[l(v,{icon:"plus",class:"mr-2"}),t[3]||(t[3]=V("ÐобавиÑÑ Ð¿Ñавило ",-1))]),_:1},8,["disabled"])])]),e.editableData.permissions.contentAccessRules&&e.editableData.permissions.contentAccessRules.length?(x(),z("div",En,[t[10]||(t[10]=g("div",{class:"text-sm"},"ID",-1)),g("div",Cn,[t[6]||(t[6]=V(" ÐаÑеÑиал ",-1)),l(w,{content:"ÐÑÑавÑÑе пÑÑÑÑм еÑли Ñ
оÑиÑе ÑÑо-Ð±Ñ Ð¿Ñавило дейÑÑвовало на вÑе маÑеÑиалÑ"})]),t[11]||(t[11]=g("div",{class:"text-center text-sm"},"РаÑпÑоÑÑÑанÑеÑÑÑ Ð½Ð°",-1)),g("div",Nn,[t[7]||(t[7]=V(" УÑÐ¾Ð²ÐµÐ½Ñ ",-1)),l(w,{content:"Ðа ÑколÑко ÑÑовней доÑеÑниÑ
маÑеÑиалов ÑаÑпÑоÑÑÑанÑеÑÑÑ Ð¿Ñавило"})]),t[12]||(t[12]=g("div",{class:"text-center text-sm"},"ÐолиÑика",-1)),t[13]||(t[13]=g("div",{class:"text-center text-sm"},"ÐейÑÑвиÑ",-1)),t[14]||(t[14]=g("div",{class:"text-center text-sm"},null,-1)),(x(!0),z(ke,null,we(e.editableData.permissions.contentAccessRules,(s,T)=>(x(),z(ke,{key:s.id},[g("div",Tn,[l(I,{placement:"right",width:40,trigger:"click",visible:e.popoverVisible[T],"onUpdate:visible":y=>e.popoverVisible[T]=y},{reference:m(()=>[l(A,{type:"info",class:"mr-2 cursor-pointer"},{default:m(()=>[V("#"+J(T+1),1)]),_:2},1024)]),default:m(()=>[g("div",xn,[g("div",null,[l(E,{class:"w-full",disabled:T===0,onClick:()=>e.moveRuleUp(T),size:"small"},{default:m(()=>[l(v,{icon:"arrow-up",class:"mr-2"}),t[8]||(t[8]=V(" ÐвеÑÑ
",-1))]),_:1},8,["disabled","onClick"])]),g("div",null,[l(E,{class:"w-full",disabled:T===e.editableData.permissions.contentAccessRules.length-1,onClick:()=>e.moveRuleDown(T),size:"small"},{default:m(()=>[l(v,{icon:"arrow-down",class:"mr-2"}),t[9]||(t[9]=V(" Ðниз ",-1))]),_:1},8,["disabled","onClick"])]),g("div",Dn,[l(N,{modelValue:s.active,"onUpdate:modelValue":y=>s.active=y,onChange:e.updateParent,size:"small"},null,8,["modelValue","onUpdate:modelValue","onChange"]),V(" "+J(s.active?"ÐклÑÑено":"ÐÑклÑÑено"),1)])])]),_:2},1032,["visible","onUpdate:visible"])]),g("div",_n,[l(c,{class:"min-w-[200px] w-full",modelValue:s.id,"onUpdate:modelValue":y=>s.id=y,placeholder:"ÐÑбеÑиÑе маÑеÑиал",disabled:!s.active},null,8,["modelValue","onUpdate:modelValue","disabled"])]),g("div",wn,[l(p,{modelValue:s.rule,"onUpdate:modelValue":y=>s.rule=y,disabled:!s.active},{default:m(()=>[l(b,{value:e.AccessRuleEnum.ONLY_EDIT_THIS_AND_CHILDREN,label:"ÐÑбÑаннÑй и доÑеÑние маÑеÑиалÑ"},null,8,["value"]),l(b,{value:e.AccessRuleEnum.ONLY_EDIT_CHILDREN,label:"ÐоÑеÑние маÑеÑиалÑ"},null,8,["value"])]),_:1},8,["modelValue","onUpdate:modelValue","disabled"])]),g("div",An,[l(p,{modelValue:s.childLevel,"onUpdate:modelValue":y=>s.childLevel=y,class:"w-[80px]",disabled:!s.active},{default:m(()=>[(x(),z(ke,null,we([0,1,2,3,4,5,6,7,8,9,10],y=>l(b,{key:y,value:y,label:y},null,8,["value","label"])),64))]),_:1},8,["modelValue","onUpdate:modelValue","disabled"])]),g("div",Kn,[l(f,{modelValue:s.policy,class:"w-[100px]",type:"warning","onUpdate:modelValue":y=>e.togglePolicy(s),disabled:!s.active},{default:m(()=>[l(r,{content:"РазÑеÑиÑÑ",placement:"top"},{default:m(()=>[l(o,{value:e.RulePolicyEnum.ALLOW,button:""},{default:m(()=>[l(v,{icon:"check"})]),_:1},8,["value"])]),_:1}),l(r,{content:"ÐапÑеÑиÑÑ",placement:"top"},{default:m(()=>[l(o,{value:e.RulePolicyEnum.DENY,button:""},{default:m(()=>[l(v,{icon:"xmark"})]),_:1},8,["value"])]),_:1})]),_:1},8,["modelValue","onUpdate:modelValue","disabled"])]),g("div",Rn,[l(r,{content:`${s.policy===e.RulePolicyEnum.ALLOW?"ÐожеÑ":"Ðе можеÑ"} добавлÑÑÑ`,placement:"top"},{default:m(()=>[l(_,{checked:s.actions.includes(e.ActionRuleEnum.ADD),onChange:y=>e.toggleAction(s,e.ActionRuleEnum.ADD,y),button:"",disabled:!s.active},{default:m(()=>[l(v,{icon:"plus"})]),_:1},8,["checked","onChange","disabled"])]),_:2},1032,["content"]),l(r,{content:`${s.policy===e.RulePolicyEnum.ALLOW?"ÐожеÑ":"Ðе можеÑ"} ÑедакÑиÑоваÑÑ`,placement:"top"},{default:m(()=>[l(_,{checked:s.actions.includes(e.ActionRuleEnum.EDIT),onChange:y=>e.toggleAction(s,e.ActionRuleEnum.EDIT,y),button:"",disabled:!s.active},{default:m(()=>[l(v,{icon:"edit"})]),_:1},8,["checked","onChange","disabled"])]),_:2},1032,["content"]),l(r,{content:`${s.policy===e.RulePolicyEnum.ALLOW?"ÐожеÑ":"Ðе можеÑ"} ÑдалÑÑÑ`,placement:"top"},{default:m(()=>[l(_,{checked:s.actions.includes(e.ActionRuleEnum.DELETE),onChange:y=>e.toggleAction(s,e.ActionRuleEnum.DELETE,y),button:"",disabled:!s.active},{default:m(()=>[l(v,{icon:"trash"})]),_:1},8,["checked","onChange","disabled"])]),_:2},1032,["content"])]),g("div",In,[l(E,{type:"danger",onClick:()=>e.editableData.permissions.contentAccessRules.splice(T,1)&&e.updateParent()},{default:m(()=>[l(v,{icon:"trash"})]),_:1},8,["onClick"])])],64))),128))])):X("",!0),e.editableData?(x(),P(u,{key:1,permissions:e.editableData.permissions,class:"mt-4"},null,8,["permissions"])):X("",!0)]),_:1})):X("",!0)])}const Sn=Re(yn,[["render",Ln]]),On=ie({components:{...Qe,UserFormCreateOrUpdate:Vt,ElCollapse:Je,ElCollapseItem:Xe,EditPermissionsTab:Sn},props:{...Lt},setup(e,{emit:t}){const i="admin/user-v2",a="ModeratorUserEdit",d=O("user"),k=O({first_name:"",last_name:"",email:"",roles:[],password:"",active:!0,resetTOTP:!1,isTOTP:!1,sites:[],permissions:{contentLimitedAccessEnabled:!1,contentAccessRules:[]}});return{editableData:k,activeTab:d,...Pt({props:e,editableData:k,apiUrl:i,goToComponentWhenItemCreate:a,emit:t})}}}),Pn={key:0,class:"form-group"},Vn={class:"form-group"},$n={class:"form-group"};function Bn(e,t,i,a,d,k){const N=ne("UserFormCreateOrUpdate"),v=ne("router-link"),E=Xe,w=Je,A=Ot,I=St,c=ne("FormErrors"),b=Ie,p=Ee;return x(),P(p,{class:"card-header"},{default:m(()=>[l(I,{modelValue:e.activeTab,"onUpdate:modelValue":t[1]||(t[1]=o=>e.activeTab=o)},{default:m(()=>[l(A,{name:"user",label:"ÐбÑее"},{default:m(()=>[l(N,{modelValue:e.editableData,"onUpdate:modelValue":t[0]||(t[0]=o=>e.editableData=o),mode:e.mode,multiple:!0},null,8,["modelValue","mode"]),e.editableData.sites&&e.editableData.sites.length?(x(),z("div",Pn,[l(w,null,{default:m(()=>[l(E,{title:"УпÑавлÑÐµÑ ÑайÑами ("+e.editableData.sites.length+")",name:"1"},{default:m(()=>[g("ul",null,[(x(!0),z(ke,null,we(e.editableData.sites,o=>(x(),z("li",{key:o.id},[l(v,{to:{name:"ModeratorSiteEdit",params:{id:o.id}}},{default:m(()=>{var r;return[V(J(((r=o.domain)==null?void 0:r.url)||"без адÑеÑа")+" - "+J(o.name),1)]}),_:2},1032,["to"])]))),128))])]),_:1},8,["title"])]),_:1})])):X("",!0)]),_:1})]),_:1},8,["modelValue"]),g("div",Vn,[l(c,{"model-value":e.errors}
1,null,8,["model-value"])]),g("div",$n,[l(b,{loading:e.saving,onClick:e.saveHandler,type:"primary"},{default:m(()=>[V(J(e.cpSaveButtonTitle)+" запиÑÑ",1)]),_:1},8,["loading","onClick"])])]),_:1})}const so=Re(On,[["render",Bn]]);export{so as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.