import{o as e}from"./chunk-jRWAZmH_.js";import{n as t,t as n}from"./jsx-runtime-CEixWuwE.js";import{In as r,Ln as i,jt as a,n as o,r as s}from"./axios-BDcMaxoP.js";import{t as c}from"./index.esm-D4i6w2dF.js";import{t as l}from"./input-C55Uc3oN.js";import{t as u}from"./button-xukQsL9n.js";import{t as d}from"./tree-Df2nuFCU.js";import{t as f}from"./queryOptions-Cg9orY1Y.js";import{t as p}from"./LeftSquareOutlined-DRQwPml3.js";import{t as m}from"./Loader-BvAKWCqv.js";import{Z as h,d as g,f as _,u as v}from"./index-Ky01UDho.js";import{t as y}from"./SaveButton-rPIuhlcV.js";import{n as b}from"./userUtils-BZ5R4HOy.js";var x={icon:{tag:`svg`,attrs:{viewBox:`64 64 896 896`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M484 443.1V528h-84.5c-4.1 0-7.5 3.1-7.5 7v42c0 3.8 3.4 7 7.5 7H484v84.9c0 3.9 3.2 7.1 7 7.1h42c3.9 0 7-3.2 7-7.1V584h84.5c4.1 0 7.5-3.2 7.5-7v-42c0-3.9-3.4-7-7.5-7H540v-84.9c0-3.9-3.1-7.1-7-7.1h-42c-3.8 0-7 3.2-7 7.1zm396-144.7H521L403.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-add`,theme:`outlined`};i();var S=e(t()),C=S.forwardRef(function(e,t){return S.createElement(a,r(r({},e),{},{ref:t,icon:x}))}),w={all:[`favorites`],list:()=>[...w.all,`list`]},T=()=>f({queryKey:w.list(),queryFn:_}),E=()=>s(T()),D=e(o()),O=n(),k=({text:e,nodeKey:t,setLabel:n,onEditingChange:r})=>{let[i,a]=(0,S.useState)(e),[o,s]=(0,S.useState)(!1),[c,u]=(0,S.useState)(!1),d=(0,S.useRef)();(0,S.useEffect)(()=>{c&&d.current.focus()},[c]);let f=e=>{a(e.target.value)},p=()=>{s(!o)};return(0,O.jsx)(`div`,{className:`editable-title`,onMouseEnter:p,onMouseLeave:p,children:c?(0,O.jsx)(l,{ref:d,draggable:!1,style:{marginLeft:`6px`,width:`50%`},value:i,onChange:f,onBlur:e=>{u(!1),r(!1),n(t,i)}}):(0,O.jsx)(O.Fragment,{children:(0,O.jsx)(`div`,{className:`editable-label`,onClick:()=>{let e=!c;u(e),r(e)},children:i})})})};k.propTypes={text:D.default.string,nodeKey:D.default.string,setLabel:D.default.func,onEditingChange:D.default.func.isRequired};var{DirectoryTree:A}=d,j=()=>{let e=E(),t=g();e.data;let[n,r]=(0,S.useState)([]),[i,a]=(0,S.useState)(!1),[o,s]=(0,S.useState)([]),[l,d]=(0,S.useState)([]),[f,_]=(0,S.useState)([]),[x,w]=(0,S.useState)([]),[T,D]=(0,S.useState)([]),[j,M]=(0,S.useState)(!1);(0,S.useEffect)(()=>{let t=e.data;t?.myFavorites&&r(N(t.myFavorites,``,!0)),t?.allViews&&s(N(t.allViews))},[e.data]);function N(e,t=``,n=!1){let r=[];return Object.values(e).forEach((e,i)=>{let a=(t===``?``:t+`_`)+i,o={...e,key:a,isLeaf:!0,title:e.label,editable:n};delete o.icon,e.children&&(o.children=N(e.children,a,n),o.isLeaf=!1,o.checkable=!1),r.push(o)}),r}function P(e,t){let i=n.map(e=>({...e}));I(i,e,(e,n,r)=>{e.label=t}),r(i)}function F(e,t=``){let n=[];return e.forEach((e,r)=>{let i=(t===``?``:t+`_`)+r+e.name;e.key=i,e.children&&(e.children=F(e.children,i),e.isLeaf=!1),n.push(e)}),n}function I(e,t,n){for(let r=0;r{a(!0);let e={name:`Nouveau dossier`,label:`Nouveau dossier`,editable:!0,key:(n.length+1).toString(),view:``,isLeaf:!1,children:[]};r(F([...n,e]))},R=(e,t)=>{if(t.checked)D([...T,...t.checkedNodes]);else{let e=T.findIndex(e=>e.key===t.node.key),n=[...T];n.splice(e,1),D(n)}d(e)},z=(e,t)=>{if(t.checked)w([...x,t.node]);else{let e=x.findIndex(e=>e.key===t.node.key),n=[...x];n.splice(e,1),w(n)}_(e)},B=()=>{a(!0);let e=N(x,``,!0);r(F([...n,...e])),w([]),_([])},V=()=>{a(!0);let e=n.map(e=>({...e}));T.forEach(t=>{I(e,t.key,(e,t,n)=>{n.splice(t,1)})});let t=F(e);D([]),d([]),r(t)},H=({event:e,node:t,dragNode:i,dropPosition:o,dropToGap:s})=>{a(!0);let c=n.map(e=>({...e})),l=t.key,u=i.key;if(!s)I(c,l,e=>{if(!e.isLeaf){let t;I(c,u,(e,n,r)=>{t={...e},r.splice(n,1)}),e.children=e.children||[],e.children.push(t)}});else if((t.children||[]).length>0&&t.expanded&&o===1){let e;I(c,u,(t,n,r)=>{e={...t},r.splice(n,1)}),I(c,l,t=>{t.children=t.children||[],t.children.unshift(e)})}else{let e;I(c,u,(t,n,r)=>{e={...t},r.splice(n,1)});let t,n;I(c,l,(e,r,i)=>{t=i,n=r}),o===-1?t.splice(n,0,e):t.splice(n+1,0,e)}r(c)},U=()=>{let e=v({sendFavorites:{XMLType:`MYFAVORITES`,children:b(n)}},!0);t.mutate({myFavorites:e})},W=e=>e?.map(e=>({...e,title:e.editable?(0,O.jsx)(k,{text:e.label,nodeKey:e.key,setLabel:P,onEditingChange:M}):e.label,children:e.children?W(e.children):null})),G=W(n);return(0,O.jsxs)(O.Fragment,{children:[(0,O.jsx)(c,{children:(0,O.jsx)(`title`,{children:`iCTI | Gestion des favoris`})}),(0,O.jsxs)(`div`,{className:`component-header`,children:[(0,O.jsx)(`h1`,{className:`header-title`,children:`Organisation de mes favoris`}),(0,O.jsx)(`div`,{className:`favorites-actions`,children:(0,O.jsx)(y,{onClick:U,disabled:!i||t.isPending,loading:t.isPending,toolTipTitle:`Enregistrer`})})]}),(0,O.jsx)(`div`,{className:`component-content`,children:(0,O.jsxs)(`div`,{className:`favorites-editor`,children:[(0,O.jsxs)(`div`,{className:`favorites-editor-items`,children:[(0,O.jsxs)(`div`,{className:`tree-header`,children:[(0,O.jsx)(`h2`,{children:`Mes Favoris`}),(0,O.jsxs)(`div`,{className:`header-actions`,children:[(0,O.jsx)(u,{type:`link`,onClick:L,children:(0,O.jsx)(C,{})}),(0,O.jsx)(u,{type:`link`,onClick:V,children:(0,O.jsx)(h,{})})]})]}),e.isFetching?null:(0,O.jsx)(A,{checkable:!0,treeData:G,draggable:!j,blockNode:!0,onDrop:H,checkedKeys:l,onCheck:R})]}),(0,O.jsx)(`div`,{className:`transfer-actions`,children:(0,O.jsx)(u,{type:`link`,onClick:B,children:(0,O.jsx)(p,{})})}),(0,O.jsxs)(`div`,{className:`favorites-editor-menu`,children:[(0,O.jsx)(`h2`,{className:`tree-header`,children:`Vues disponibles`}),e.isFetching?(0,O.jsx)(`div`,{className:`favorites-loader`,children:(0,O.jsx)(m,{size:`small`})}):(0,O.jsx)(A,{checkable:!0,treeData:o,checkedKeys:f,onCheck:z})]})]})})]})};export{j as default};