ode-explorer 1.0.0-develop-pedago.202309261221 → 1.0.0-develop-pedago.202309261237

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -231,4 +231,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
231
231
  *
232
232
  * This source code is licensed under the MIT license found in the
233
233
  * LICENSE file in the root directory of this source tree.
234
- */var yl=b,B8=a0;function U8(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var V8=typeof Object.is=="function"?Object.is:U8,H8=B8.useSyncExternalStore,q8=yl.useRef,Q8=yl.useEffect,W8=yl.useMemo,K8=yl.useDebugValue;Oy.useSyncExternalStoreWithSelector=function(e,t,n,r,i){var s=q8(null);if(s.current===null){var o={hasValue:!1,value:null};s.current=o}else o=s.current;s=W8(function(){function l(p){if(!u){if(u=!0,c=p,p=r(p),i!==void 0&&o.hasValue){var m=o.value;if(i(m,p))return d=m}return d=p}if(m=d,V8(c,p))return m;var y=r(p);return i!==void 0&&i(m,y)?m:(c=p,d=y)}var u=!1,c,d,h=n===void 0?null:n;return[function(){return l(t())},h===null?void 0:function(){return l(h())}]},[t,n,r,i]);var a=H8(e,s[0],s[1]);return Q8(function(){o.hasValue=!0,o.value=a},[a]),K8(a),a};ky.exports=Oy;var Z8=ky.exports;const X8=Ns(Z8),{useSyncExternalStoreWithSelector:G8}=X8;function Y8(e,t=e.getState,n){const r=G8(e.subscribe,e.getState,e.getServerState||e.getState,t,n);return b.useDebugValue(r),r}const bm=e=>{const t=typeof e=="function"?z8(e):e,n=(r,i)=>Y8(t,r,i);return Object.assign(n,t),n},J8=e=>e?bm(e):bm,Ry=async e=>{const t=await G.resource(e.app).searchContext(e);return{...t,folders:t.folders.filter(n=>!n.trashed)}},e6=async({searchParams:e,name:t,parentId:n})=>{const r={name:t,parentId:n,app:e.app,type:e.types[0]};return await G.resource(e.app).createFolder(r)},t6=async({folderId:e,searchParams:t,parentId:n,name:r})=>{const i={folderId:e,name:r,parentId:n,app:t.app,type:t.types[0]};return await G.resource(t.app).updateFolder(i)},n6=async({searchParams:e,resourceIds:t,useAssetIds:n,folderIds:r})=>{const i={application:e.app,resourceType:e.types[0],resourceIds:t,folderIds:r};return await G.resource(e.app).trashAll(i,n)},r6=async({searchParams:e,resourceIds:t,useAssetIds:n,folderIds:r})=>{const i={application:e.app,resourceType:e.types[0],resourceIds:t,folderIds:r};return await G.resource(e.app).deleteAll(i,n)},i6=async({searchParams:e,resourceIds:t,folderIds:n,useAssetIds:r})=>{const i={application:e.app,resourceType:e.types[0],resourceIds:t,folderIds:n};return await G.resource(e.app).restoreAll(i,r)},s6=async({searchParams:e,resourceIds:t,folderId:n,folderIds:r,useAssetIds:i})=>{const s={application:e.app,folderId:n,resourceIds:t,folderIds:r};return await G.resource(e.app).moveToFolder(s,i)},o6=async({searchParams:e,entId:t,shares:n})=>await G.share().saveRights(e.app,t,n),a6=async({searchParams:e,params:t})=>await G.resource(e.app).update(t),l6=async e=>await G.rights().sessionHasWorkflowRights(e),u6=({searchParams:e,assetId:t})=>G.resource(e.app).gotoView(t),c6=({searchParams:e,params:t})=>{const n=G.resource(e.app).create(t);return console.log({result:n}),n},d6=({searchParams:e,assetId:t})=>{const n=G.resource(e.app).gotoPrint(t);return console.log({result:n}),n},f6=async({searchParams:e,params:t})=>await G.resource(e.app).publish(t),h6=async()=>await G.conf().getPreference("showOnboardingTrash"),p6=async({onSuccess:e})=>{const t=await G.conf().savePreference("showOnboardingTrash",JSON.stringify({showOnboardingTrash:!1}));return e==null||e(),t};function Ef(e){return e.filter((t,n)=>e.indexOf(t)===n)}function Ps(e,t){var r,i;let n;return(t==null?void 0:t.id)===e?t:((r=t==null?void 0:t.children)!=null&&r.length&&((i=t==null?void 0:t.children)==null||i.every(s=>(n=Ps(e,s),n===void 0))),n)}function m6(e,t){var r;const n=Ps(e,t);return(r=n==null?void 0:n.folder)!=null&&r.ancestors?[...(n==null?void 0:n.folder.ancestors)||[],e]:e===Je.BIN?[Je.BIN]:[Je.DEFAULT]}function Py(e,t){return t.id===e&&t.children?t.children.length>0:t.children?t.children.some(n=>Py(t.id,n)):!1}function qs(e,t){return Ny(e,t)||e}function Ny(e,t,n){var i;const r=t(e,n);if((i=r==null?void 0:r.children)!=null&&i.length){const s=[];for(const o of(r==null?void 0:r.children)||[]){const a=Ny(o,t,r);a&&s.push(a)}return{...r,children:s}}return r}class wl{constructor(t){hr(this,"id");hr(this,"name");hr(this,"childNumber");hr(this,"section",!1);hr(this,"children",[]);this.folder=t,this.id=t.id,this.name=t.name,this.childNumber=t.childNumber}}const jy=(e,t,n)=>qs(e,r=>(r.id===n&&(r.children=t==null?void 0:t.map(i=>new wl(i))),r)),{app:g6,types:v6,filters:y6,orders:w6}=Hs(),lt=J8()((e,t)=>({filters:y6,orders:w6,searchParams:{app:g6,types:v6,filters:{folder:"default",owner:void 0,shared:void 0,public:void 0},orders:{updatedAt:"desc"},pagination:{startIdx:0,pageSize:48,maxIdx:0},trashed:!1},treeData:{id:Je.DEFAULT,name:Kt("explorer.filters.mine"),section:!0,children:[]},selectedNodesIds:["default"],currentFolder:{id:"default"},selectedFolders:[],selectedResources:[],folderIds:[],resourceIds:[],resourceIsTrash:!1,resourceActionDisable:!1,updaters:{setTreeData:n=>e(()=>({treeData:n})),setSearchParams:n=>e(({searchParams:r})=>({searchParams:{...r,...n}})),setSelectedFolders:n=>e(()=>({selectedFolders:n})),setSelectedResources:n=>e(()=>({selectedResources:n})),setFolderIds:n=>e(()=>({folderIds:n})),setResourceIds:n=>e(()=>({resourceIds:n})),setResourceIsTrash:n=>e(()=>({resourceIsTrash:n})),setResourceActionDisable:n=>e(()=>({resourceActionDisable:n})),setCurrentFolder:n=>e(()=>({currentFolder:n})),clearSelectedItems:()=>e(()=>({selectedFolders:[],selectedResources:[]})),clearSelectedIds:()=>e(()=>({resourceIds:[],folderIds:[]})),openResource:n=>{try{const{searchParams:r}=t();u6({searchParams:r,assetId:n.assetId})}catch(r){console.error("explorer open failed: ",r)}},printSelectedResource:()=>{try{const{searchParams:n,selectedResources:r,resourceIds:i}=t();if(r.length!==1)throw new Error("Cannot open more than 1 resource");const s=r.find(o=>o.id===i[0]);d6({searchParams:n,assetId:s.assetId})}catch(n){console.error("explorer print failed: ",n)}},publishApi:async(n,r)=>{const{searchParams:i}=t();return await f6({searchParams:i,params:r})},openFolder:({folderId:n,folder:r})=>{const{searchParams:i,treeData:s}=t(),o=i.filters.folder,a=m6(n,s),l=Ef([...a,n]);o!==n&&e(u=>({...u,folderIds:[],resourceIds:[],selectedNodesIds:l,currentFolder:r||{id:n},searchParams:{...i,filters:{...i.filters,folder:n},trashed:n===Je.BIN}}))},foldTreeItem:()=>e(n=>({...n,status:"fold"})),unfoldTreeItem:async(n,r)=>{const{treeData:i,searchParams:s}=t();if(e(o=>({...o,status:"unfold"})),!Py(n,i)){await r.prefetchInfiniteQuery({queryKey:["prefetchContext",{folderId:n,trashed:!1}],queryFn:async()=>await Ry({...s,filters:{...s.filters,folder:n}})});const o=r.getQueryData(["prefetchContext",{folderId:n,trashed:!1}]);e(a=>{var l;return{...a,treeData:jy(i,(l=o==null?void 0:o.pages[0])==null?void 0:l.folders,n||Je.DEFAULT)}})}},selectTreeItem:n=>{const{treeData:r}=t(),{openFolder:i}=t().updaters,s=Ps(n,r);J4()(),e(a=>({...a,selectedResources:[]})),i({folder:s,folderId:n})},gotoPreviousFolder:()=>{const{selectedNodesIds:n,treeData:r}=t(),{openFolder:i}=t().updaters,s=n.length;if(s<2)return;const o=Ps(n[s-2],r);i({folder:o,folderId:(o==null?void 0:o.id)||Je.DEFAULT})},goToTrash:()=>e(n=>({...n,selectedNodesIds:[],selectedResources:[],resourceIds:[],folderIds:[],searchParams:{...n.searchParams,filters:{folder:Je.BIN},trashed:!0},currentFolder:{id:Je.BIN}}))}})),Zt=()=>lt(e=>e.searchParams),Cf=()=>lt(e=>e.selectedNodesIds),si=()=>lt(e=>e.treeData),x6=()=>lt(e=>e.selectedFolders),S6=()=>lt(e=>e.selectedResources),Qs=()=>lt(e=>e.folderIds),Ws=()=>lt(e=>e.resourceIds),xl=()=>lt(e=>e.selectedResources.map(t=>t.assetId)),Sl=()=>lt(e=>e.selectedResources.filter(t=>t.assetId===t.id)),oi=()=>lt(e=>e.currentFolder),Me=()=>lt(e=>e.updaters),ai=()=>{const e=oi();return(e==null?void 0:e.id)===Je.BIN},Ty=()=>lt(e=>e.resourceIsTrash),b6=()=>lt(e=>e.resourceActionDisable),E6=()=>{const e=oi();return(e==null?void 0:e.id)==="default"},C6=()=>Cf().length>1;function k6(){const{appCode:e}=_t(),{t}=we(["common",e]),n=Cf(),r=ai(),i=oi(),{gotoPreviousFolder:s}=Me(),o=t("explorer.tree.trash"),a=t("explorer.filters.mine",{ns:e}),l=(i==null?void 0:i.name)||a;return f.jsx("div",{className:"py-16",children:n.length>1&&!r?f.jsxs("div",{className:"d-flex align-items-center gap-8",children:[f.jsx(zd,{icon:f.jsx(i3,{}),variant:"ghost",color:"tertiary","aria-label":t("back"),className:"ms-n16",onClick:s}),f.jsx("p",{className:"body py-8 text-truncate",children:f.jsx("strong",{children:l})})]}):f.jsx("h2",{className:"body py-8 fw-bold",children:r?o:a})})}function O6(e,{parentId:t,newFolder:n}){return qs(e,r=>{var i;if(r.id===t){const s=[...((i=r.folder)==null?void 0:i.ancestors)||[]],o=Ef([...s,r.id]);return{...r,children:[...r.children||[],new wl({...n,ancestors:o})]}}else return r})}function R6(e,{folders:t}){return qs(e,n=>{if(!t.includes(n.id))return n})}function P6(e,t){return t=t.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[.,\\/#!$%\\^&\\*;:{}=\-_`~()]/g,""),e=e.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[.,\\/#!$%\\^&\\*;:{}=\-_`~()]/g,""),e.includes(t)}function N6(e,{destinationId:t,folders:n}){return qs(e,(r,i)=>{var s,o;if(t===r.id){const a=[...((s=r.folder)==null?void 0:s.ancestors)||[]],l=Ef([...a,r.id]),u=[...r.children||[]],c=((o=r.children)==null?void 0:o.map(h=>h.id))||[];for(const h of n)if(!c.includes(h)){const p=Ps(h,e);p&&u.push({...p,folder:{...p==null?void 0:p.folder,ancestors:l}})}return{...r,children:u}}else return n.includes(r.id)&&t!==(i==null?void 0:i.id)?void 0:r})}function j6(e,{folderId:t,newFolder:n}){return qs(e,r=>r.id===t?new wl(n):r)}const{actions:Em,app:T6}=Hs(),_y=()=>Dd({queryKey:["actions"],queryFn:async()=>{const e=Em.map(n=>n.workflow);return await l6(e)},select:e=>Em.map(t=>({...t,available:e[t.workflow]}))}),_6=()=>{const{hotToast:e}=At(It),{appCode:t}=_t(),{t:n}=we(),r=at(),i=Zt(),s=oi(),o=si(),{setTreeData:a,setSearchParams:l}=Me(),{filters:u,trashed:c,search:d}=i,h=["context",{folderId:u.folder,filters:u,trashed:c,search:d}];return ZS({queryKey:h,queryFn:async({pageParam:p=0})=>await Ry({...i,pagination:{...i.pagination,startIdx:p}}),onError(p){typeof p=="string"&&e.error(n(p))},onSuccess:async p=>{var y,x,g;await r.cancelQueries({queryKey:h});const m=[...((y=p==null?void 0:p.pages[0])==null?void 0:y.folders)??[]];(x=p==null?void 0:p.pages[0])!=null&&x.folders&&(p.pages[0].folders=p.pages[0].folders.filter(v=>i.search?P6(v.name,i.search.toString()):!0)),(s==null?void 0:s.id)==="default"?a({id:Je.DEFAULT,section:!0,children:m.map(v=>new wl(v)),name:n("explorer.filters.mine",{ns:t})}):a(jy(o,m,i.filters.folder||Je.DEFAULT)),l({...i,pagination:(g=p==null?void 0:p.pages[(p==null?void 0:p.pages.length)-1])==null?void 0:g.pagination})},retry:!1,getNextPageParam:p=>p.pagination.startIdx+p.pagination.pageSize})},jk=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),r=si(),i=Qs(),s=xl(),o=Ws(),a=Sl().length>0,l=a?s:o,{clearSelectedItems:u,clearSelectedIds:c,setTreeData:d,setSearchParams:h}=Me(),{filters:p,trashed:m}=n,y=["context",{folderId:p.folder,filters:p,trashed:m}];return fn({mutationFn:async()=>await n6({searchParams:n,folderIds:i,resourceIds:l,useAssetIds:a}),onError(x){typeof x=="string"&&e.error(Kt(x))},onSuccess:async x=>{if(await t.cancelQueries({queryKey:y}),t.getQueryData(y))return t.setQueryData(y,v=>{var w;if(v){const S={...v,pages:v==null?void 0:v.pages.map(k=>{var O;return{...k,folders:k.folders.filter(R=>!i.includes(R.id)),pagination:{...k.pagination,maxIdx:((O=k==null?void 0:k.pagination)==null?void 0:O.maxIdx)-x.resources.length},resources:k.resources.filter(R=>a?!s.includes(R.assetId):!l.includes(R.id))}})},C=R6(r,{folders:i});return d(C),h({...n,pagination:{...n.pagination,maxIdx:((w=n.pagination)==null?void 0:w.maxIdx)-x.resources.length}}),S}})},onSettled:()=>{u(),c()}})},A6=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),r=Qs(),i=xl(),s=Ws(),o=Sl().length>0,a=o?i:s,{setFolderIds:l,setResourceIds:u,setSelectedResources:c,setSelectedFolders:d}=Me(),{filters:h,trashed:p}=n,m=["context",{folderId:h.folder,filters:h,trashed:p}];return fn({mutationFn:async()=>await i6({searchParams:n,folderIds:r,resourceIds:a,useAssetIds:o}),onError(y){typeof y=="string"&&e.error(Kt(y))},onSuccess:async()=>{if(await t.cancelQueries({queryKey:m}),t.getQueryData(m))return t.setQueryData(m,x=>{if(x)return{...x,pages:x==null?void 0:x.pages.map(g=>({...g,folders:g.folders.filter(v=>!r.includes(v.id)),resources:g.resources.filter(v=>o?!i.includes(v.assetId):!a.includes(v.id))}))}})},onSettled:()=>{u([]),c([]),l([]),d([])}})},Tk=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),r=Qs(),i=xl(),s=Ws(),o=Sl().length>0,a=o?i:s,{clearSelectedItems:l,clearSelectedIds:u}=Me(),{filters:c,trashed:d}=n,h=["context",{folderId:c.folder,filters:c,trashed:d}];return fn({mutationFn:async()=>await r6({searchParams:n,folderIds:r,resourceIds:a,useAssetIds:o}),onError(p){typeof p=="string"&&e.error(Kt(p))},onSuccess:async()=>{if(await t.cancelQueries({queryKey:h}),t.getQueryData(h))return t.setQueryData(h,m=>{if(m)return{...m,pages:m==null?void 0:m.pages.map(x=>({...x,folders:x.folders.filter(g=>!r.includes(g.id)),resources:x.resources.filter(g=>o?!i.includes(g.assetId):!a.includes(g.id))}))}})},onSettled:()=>{l(),u()}})},_k=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),r=si(),i=Qs(),s=xl(),o=Ws(),a=Sl().length>0,l=a?s:o,{clearSelectedIds:u,clearSelectedItems:c,setTreeData:d,setSearchParams:h}=Me(),{filters:p,trashed:m}=n,y=["context",{folderId:p.folder,filters:p,trashed:m}];return fn({mutationFn:async x=>await s6({searchParams:n,folderId:x,folderIds:i,resourceIds:l,useAssetIds:a}),onError(x){typeof x=="string"&&e.error(Kt(x))},onSuccess:async(x,g)=>{if(t.getQueryData(y))return t.setQueryData(y,w=>{var S;if(w){const C=N6(r,{destinationId:g,folders:i}),k={...w,pages:w==null?void 0:w.pages.map(O=>{var R;return{...O,folders:O.folders.filter(A=>!i.includes(A.id)),pagination:{...O.pagination,maxIdx:((R=O.pagination)==null?void 0:R.maxIdx)-x.resources.length},resources:O.resources.filter(A=>a?!s.includes(A.assetId):!l.includes(A.id))}})};return d(C),h({...n,pagination:{...n.pagination,maxIdx:((S=n.pagination)==null?void 0:S.maxIdx)-x.resources.length}}),k}})},onSettled:()=>{c(),u()}})},Ak=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),r=si(),{setTreeData:i}=Me(),{filters:s,trashed:o}=n,a=["context",{folderId:s.folder,filters:s,trashed:o}];return fn({mutationFn:async({name:l,parentId:u})=>await e6({searchParams:n,name:l,parentId:u}),onError(l){typeof l=="string"&&e.error(Kt(l))},onSuccess:async(l,u)=>{await t.cancelQueries({queryKey:a});const c=t.getQueryData(a),d={...l,parentId:u.parentId,children:[],rights:[`creator:${l==null?void 0:l.creator_id}`]};if(c)return t.setQueryData(a,h=>{if(h){const p={...h,pages:h==null?void 0:h.pages.map(y=>({...y,folders:[...y.folders,d]}))},m=O6(r,{parentId:u.parentId,newFolder:d});return i(m),p}})}})},Ik=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),r=si(),{setFolderIds:i,setSelectedFolders:s,setTreeData:o}=Me(),{filters:a,trashed:l}=n,u=["context",{folderId:a.folder,filters:a,trashed:l}];return fn({mutationFn:async({folderId:c,name:d,parentId:h})=>await t6({searchParams:n,folderId:c,parentId:h,name:d}),onError(c){typeof c=="string"&&e.error(Kt(c))},onSuccess:async(c,d)=>{if(await t.cancelQueries({queryKey:u}),t.getQueryData(u))return t.setQueryData(u,p=>{if(p){const m={...p,pages:p==null?void 0:p.pages.map(x=>({...x,folders:x.folders.map(g=>g.id===c.id?{...c,parentId:d.parentId,rights:g.rights}:g)}))},y=j6(r,{folderId:d.folderId,newFolder:c});return o(y),m}})},onSettled:()=>{i([]),s([])}})},Lk=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),{setResourceIds:r,setSelectedResources:i}=Me(),{filters:s,trashed:o}=n,a=["context",{folderId:s.folder,filters:s,trashed:o}];return fn({mutationFn:async({entId:l,shares:u})=>await o6({searchParams:n,entId:l,shares:u}),onError(l){typeof l=="string"&&e.error(Kt(l))},onSuccess:async(l,u)=>{if(await t.cancelQueries({queryKey:a}),t.getQueryData(a))return t.setQueryData(a,d=>{if(d)return{...d,pages:d==null?void 0:d.pages.map(h=>({...h,resources:h.resources.map(p=>{if(p.assetId===(u==null?void 0:u.entId)){let m=[`creator:${p.creatorId}`];return(u==null?void 0:u.shares.length)>=1&&(m=[...m,...u.shares.flatMap(y=>y.actions.map(x=>`${y.type}:${y.id}:${x.id}`))]),{...p,rights:m}}else return p})}))}})},onSettled:()=>{r([]),i([])}})},Mk=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),{filters:r,trashed:i}=n,s=["context",{folderId:r.folder,filters:r,trashed:i}];return fn({mutationFn:async o=>await a6({searchParams:n,params:o}),onError(o){typeof o=="string"&&e.error(Kt(o))},onSuccess:async(o,a)=>{if(await t.cancelQueries({queryKey:s}),t.getQueryData(s))return t.setQueryData(s,u=>{if(u)return{...u,pages:u==null?void 0:u.pages.map(c=>({...c,resources:c.resources.map(d=>{if(d.assetId===(a==null?void 0:a.entId)){const{name:h,thumbnail:p,public:m,description:y,slug:x,...g}=a;return{...d,...g,name:h,thumbnail:p,public:m,description:y,slug:x}}else return d})}))}})}})},Dk=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),{user:r}=$d(),i=["context",{folderId:n.filters.folder,trashed:n.trashed}];return fn({mutationFn:async s=>await c6({searchParams:n,params:s}),onError(s){typeof s=="string"&&e.error(Kt(s))},onSuccess:async(s,o)=>{var u,c,d;await t.cancelQueries({queryKey:i});const a=t.getQueryData(i);console.log({data:s,variables:o});const l={...o,thumbnail:o.thumbnail,application:T6,assetId:s._id||s.entId||"",id:s._id||s.entId||"",creatorId:r==null?void 0:r.userId,creatorName:r==null?void 0:r.username,createdAt:Date.now(),modifiedAt:((u=s.modified)==null?void 0:u.$date)||"",modifierId:((c=s.author)==null?void 0:c.userId)||"",modifierName:((d=s.author)==null?void 0:d.username)||"",updatedAt:Date.now(),trashed:!1,rights:[`creator:${r==null?void 0:r.userId}`]};if(a)return t.setQueryData(i,h=>{if(h)return{...h,pages:h==null?void 0:h.pages.map(p=>({...p,resources:[l,...p.resources]}))}})}})},{trashActions:I6}=Hs();function Ay(){const[e,t]=b.useState(!1),[n,r]=b.useState("void"),[i,s]=b.useState(),{t:o}=we(),{hotToast:a}=At(It),l=oi(),u=Ws(),c=S6(),d=x6(),h=Qs(),p=ai(),m=A6(),y=Ty(),{openResource:x,printSelectedResource:g,openFolder:v,clearSelectedItems:w,clearSelectedIds:S}=Me(),{data:C}=_y();b.useEffect(()=>{if(u.length===0&&h.length===0){t(!1);return}if(y){t(!1);return}t(!0)},[u,h]);async function k(K){var ie;switch((ie=document.getElementById("root"))==null||ie.setAttribute("aria-hidden","true"),s(K),K.id){case Fe.OPEN:return u.length>0?x(c[0]):v({folder:d[0],folderId:d[0].id});case Fe.MOVE:return r("move");case Fe.PRINT:return g();case Fe.DELETE:return r("delete");case Fe.RESTORE:return await A();case Fe.PUBLISH:return r("publish");case Fe.UPD_PROPS:case"edit":return he();case Fe.SHARE:return r("share");default:throw Error(`Unknown action: ${K.id}`)}}function O(K){const ie=u.length+h.length,ge=u.length===1||h.length===1,De=ie===1,Lt=h.length===0;switch(K.id){case Fe.OPEN:return De;case Fe.MANAGE:return ge;case Fe.PUBLISH:return ge&&Lt;case Fe.UPD_PROPS:return ge&&Lt;case Fe.SHARE:return Lt&&ge;case Fe.PRINT:return ge&&Lt;case"edit":return De;default:return!0}}function R(){return!0}async function A(){try{if(p)await m.mutate(),a.success(o("explorer.trash.toast"));else throw new Error("Cannot restore untrashed resources");I()}catch(K){console.error(K)}}function I(){var K;r("void"),i!=null&&i.id&&((K=document.getElementById(i==null?void 0:i.id))==null||K.focus())}const M=K=>()=>{n===K&&(I(),w(),S())},z=M("move"),B=M("move"),E=M("delete"),P=M("delete"),L=M("publish"),F=M("publish"),N=M("edit_folder"),j=M("edit_folder"),$=M("edit_resource"),W=M("edit_resource"),H=M("share"),Ge=M("share");function he(){u&&u.length>0?r("edit_resource"):r("edit_folder")}function J(K){return K.id==="edit"&&h.length>0?"explorer.rename":`explorer.actions.${K.id}`}return{onRestore:A,actions:p?I6:C,selectedElement:[...c,...d],currentFolderId:l==null?void 0:l.id,overrideLabel:J,handleClick:k,isActivable:p?R:O,isActionBarOpen:e,isMoveModalOpen:n==="move",onMoveCancel:z,onMoveSuccess:B,isDeleteModalOpen:n==="delete",onDeleteCancel:P,onDeleteSuccess:E,isPublishModalOpen:n==="publish",onPublishCancel:F,onPublishSuccess:L,isEditFolderOpen:n==="edit_folder",onEditFolderCancel:j,onEditFolderSuccess:N,isEditResourceOpen:n==="edit_resource",onEditResourceCancel:W,onEditResourceSuccess:$,isShareResourceOpen:n==="share",onShareResourceCancel:Ge,onShareResourceSuccess:H,onClearActionBar:I}}function L6({roles:e,rights:t,action:n}){const[r,i]=b.useState(!1),{user:s}=$d(),o=ai();b.useEffect(()=>{u()},[e,t]);const a=async function(c){const d=c instanceof Array?c:[c];if(e instanceof Array){const h=await G.rights().sessionHasAtLeastOneResourceRight(e,d);i(h)}else{const h=await G.rights().sessionHasResourceRight(e,d);i(h)}},l=async function(c){if(e instanceof Array){const d=await G.rights().sessionHasAtLeastOneResourceRightForEachList(e,c);i(d)}else{const d=await G.rights().sessionHasResourceRightForEachList(e,c);i(d)}},u=async function(){var c,d,h;if(e===void 0){i(!0);return}if(o&&((d=(c=t[0])==null?void 0:c.trashedBy)!=null&&d.includes(s==null?void 0:s.userId))&&n==="restore"&&!((h=t[0])!=null&&h.trashed)){i(!0);return}if(t instanceof Array)if(t.length>0)if(typeof t[0]=="string")await a(t);else{const p=t.map(m=>m.rights);await l(p)}else i(!1);else typeof t=="string"?await a(t):await a(t.rights)};return{visible:r,refreshState:u}}function M6({resourceRights:e,roleExpected:t,action:n,children:r,renderWhenForbidden:i}){const{t:s}=we(),{overrideLabel:o}=Ay(),{visible:a}=L6({roles:t,rights:e,action:n==null?void 0:n.id}),{setResourceActionDisable:l}=Me(),u=ai();return a?f.jsx(f.Fragment,{children:r}):i?i():u&&!a?f.jsx(ri,{type:"button",color:"primary",variant:"filled",onClick:()=>{l(!0)},children:s(o(n))}):f.jsx(f.Fragment,{})}const D6=b.lazy(async()=>await Ce(()=>import("./ShareResourceModal.js"),["ShareResourceModal.js","Heading.js","Tooltip.js"])),F6=b.lazy(async()=>await Ce(()=>import("./DeleteModal.js"),[])),$6=b.lazy(async()=>await Ce(()=>import("./MoveModal.js"),[])),z6=b.lazy(async()=>await Ce(()=>import("./EditFolderModal.js"),["EditFolderModal.js","index.esm.js"])),B6=b.lazy(async()=>await Ce(()=>import("./EditResourceModal.js"),["EditResourceModal.js","Heading.js","index.esm.js","TextArea.js"])),U6=b.lazy(async()=>await Ce(()=>import("./PublishModal.js"),["PublishModal.js","index.esm.js","Heading.js","TextArea.js"]));function V6(){const{t:e}=we(),{actions:t,selectedElement:n,isMoveModalOpen:r,isDeleteModalOpen:i,isPublishModalOpen:s,isActionBarOpen:o,isEditFolderOpen:a,overrideLabel:l,onEditFolderCancel:u,onEditFolderSuccess:c,isEditResourceOpen:d,onEditResourceCancel:h,onEditResourceSuccess:p,isShareResourceOpen:m,onShareResourceCancel:y,onShareResourceSuccess:x,onMoveCancel:g,onMoveSuccess:v,onDeleteCancel:w,onDeleteSuccess:S,onPublishCancel:C,onPublishSuccess:k,isActivable:O,handleClick:R}=Ay(),A=ul(o,{from:{opacity:0,transform:"translateY(100%)"},enter:{opacity:1,transform:"translateY(0)"},leave:{opacity:0,transform:"translateY(100%)"}});return f.jsxs(f.Fragment,{children:[A((I,M)=>M&&f.jsx(Rs.div,{className:"position-fixed bottom-0 start-0 end-0 z-3",style:I,children:f.jsx(e3,{children:t==null?void 0:t.filter(z=>z.available&&z.target==="actionbar").map(z=>O(z)&&f.jsx(M6,{resourceRights:n,roleExpected:z.right,action:z,children:f.jsx(ri,{id:z.id,type:"button",color:"primary",variant:"filled",onClick:()=>{R(z)},children:e(l(z))},z.id)},z.id))})})),f.jsxs(b.Suspense,{fallback:f.jsx(Ue,{}),children:[r&&f.jsx($6,{isOpen:r,onCancel:g,onSuccess:v}),i&&f.jsx(F6,{isOpen:i,onCancel:w,onSuccess:S}),s&&f.jsx(U6,{isOpen:s,onCancel:C,onSuccess:k}),a&&f.jsx(z6,{edit:!0,isOpen:a,onCancel:u,onSuccess:c}),d&&f.jsx(B6,{edit:!0,isOpen:d,onCancel:h,onSuccess:p}),m&&f.jsx(D6,{isOpen:m,onCancel:y,onSuccess:x})]})]})}function H6(e){return e.charAt(0).toUpperCase()+e.slice(1)}const q6=()=>{var a;const{user:e}=_t(),t=H6(Hs().app),n=(a=e.apps.find(l=>l.isExternal&&l.address.includes("library")&&l.name.includes("library")))==null?void 0:a.address.split("?"),r=n==null?void 0:n[0],i=n==null?void 0:n[1],s=`application%5B0%5D=${t}&page=1&sort_field=views&sort_order=desc`;return{libraryUrl:`${r}search/?${i}&${s}`}},Q6=b.lazy(async()=>await Ce(()=>import("./EmptyScreenApp.js"),["EmptyScreenApp.js","EmptyScreen.js","Heading.js"])),W6=b.lazy(async()=>await Ce(()=>import("./EmptyScreenError.js"),["EmptyScreenError.js","EmptyScreen.js","Heading.js"])),K6=b.lazy(async()=>await Ce(()=>import("./EmptyScreenNoContentInFolder.js"),["EmptyScreenNoContentInFolder.js","EmptyScreen.js","Heading.js"])),Z6=b.lazy(async()=>await Ce(()=>import("./EmptyScreenTrash.js"),["EmptyScreenTrash.js","EmptyScreen.js","Heading.js"])),X6=b.lazy(async()=>await Ce(()=>import("./FoldersList.js"),["FoldersList.js","Card.js","Tooltip.js"])),G6=b.lazy(async()=>await Ce(()=>import("./ResourcesList.js"),["ResourcesList.js","Card.js","Tooltip.js"])),Y6=()=>{const e=E6(),t=ai(),n=C6(),{data:r,isError:i,isLoading:s,isFetching:o,fetchNextPage:a}=_6(),l=(r==null?void 0:r.pages[0].folders.length)===0,u=(r==null?void 0:r.pages[0].resources.length)===0,c=l&&u;return i?f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(W6,{})}):f.jsxs(b.Suspense,{fallback:f.jsx(Ue,{}),children:[!c&&!s&&f.jsxs(b.Suspense,{fallback:f.jsx(Ue,{}),children:[f.jsx(X6,{data:r,isFetching:o}),f.jsx(G6,{data:r,isFetching:o,fetchNextPage:a})]}),e&&c&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(Q6,{})}),n&&c&&!t&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(K6,{})}),t&&(r==null?void 0:r.pages[0].resources.length)===0&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(Z6,{})})]})};function J6({isOpen:e,onCancel:t=()=>({})}){const{t:n}=we();return Ms.createPortal(f.jsxs(kn,{isOpen:e,onModalClose:t,id:"trash_action_disable_resource",children:[f.jsx(kn.Header,{onModalClose:()=>t(),children:n("explorer.trash.action.modal.title")}),f.jsx(kn.Body,{children:f.jsx("p",{className:"body",children:n("explorer.trash.action.modal.text")})}),f.jsx(kn.Footer,{children:f.jsx(ri,{color:"primary",onClick:t,type:"button",variant:"outline",children:n("close")})})]}),document.getElementById("portal"))}const ek=({options:e})=>{const[t,n]=b.useState([]),[r,i]=b.useState(""),s=b.useDeferredValue(r),o=G4(r,500),{t:a}=we(),{appCode:l}=_t(),u=oi(),{setSearchParams:c}=Me(),d=m=>{const y=m.target.value;i(y)},h=m=>{(m.key==="Enter"||m.key==="Return")&&(c({search:o||void 0}),m.preventDefault())},p=m=>{c({search:o||void 0}),m.preventDefault()};return b.useEffect(()=>{const m=()=>t.includes(1)?!0:void 0,y=()=>t.includes(2)?!0:void 0,x=()=>t.includes(7)?!0:void 0,v=o.length==0||o.length>=3?{search:o||void 0}:{};c({...v,filters:{owner:m(),public:x(),shared:y(),folder:u?u.id:"default"}})},[o,t,u,c]),f.jsxs("form",{noValidate:!0,className:"bg-light p-16 ps-24 ms-n16 ms-lg-n24 me-n16 position-relative z-3 d-flex gap-8",children:[f.jsxs(Mc,{id:"search",className:"input-group",children:[f.jsx(Iv,{type:"search",placeholder:a("explorer.label.search",{ns:l}),size:"lg",noValidationIcon:!0,value:s,onChange:d,onKeyDown:h}),f.jsx(F0,{type:"submit","aria-label":a("explorer.label.search",{ns:l}),onClick:p})]}),f.jsx(QE,{content:f.jsx(KE,{model:t,onChange:m=>{n(m)},options:e}),trigger:f.jsx(WE,{icon:f.jsx(y3,{width:20}),title:a("Filtres "),variant:"ghost"})})]})},tk=({id:e,selected:t,onSelect:n})=>{const{t:r}=we();return f.jsx("div",{className:"treeview",children:f.jsx("ul",{role:"tree",className:"m-0 p-0",children:f.jsx("li",{id:e,role:"treeitem","aria-selected":t,children:f.jsx("div",{children:f.jsx("div",{className:"action-container",children:f.jsx("div",{onClick:n,role:"button",tabIndex:0,children:f.jsxs("div",{className:"d-flex align-items-center gap-8 py-8 ps-24",children:[f.jsx(f3,{width:"20",height:"20"}),f.jsx("span",{children:r("explorer.tree.trash")})]})})})})})})})},nk=b.lazy(async()=>await Ce(()=>import("./EditFolderModal.js"),["EditFolderModal.js","index.esm.js"])),rk=()=>{const e=at(),{t}=we(),[n,r]=X4(),i=si(),s=ai(),o=Cf(),{goToTrash:a,selectTreeItem:l,unfoldTreeItem:u,foldTreeItem:c}=Me(),d=async h=>{await u(h,e)};return i?f.jsxs(f.Fragment,{children:[f.jsx(aC,{data:i,selectedNodesIds:o,onTreeItemSelect:l,onTreeItemFold:c,onTreeItemUnfold:d}),f.jsx(tk,{id:Je.BIN,selected:s,onSelect:a}),f.jsx("div",{className:"d-grid my-16",children:f.jsx(ri,{disabled:s,type:"button",color:"primary",variant:"outline",leftIcon:f.jsx(P3,{}),onClick:r,children:t("explorer.folder.new")})}),f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:n&&f.jsx(nk,{edit:!1,isOpen:n,onSuccess:r,onCancel:r})})]}):null},ik=()=>{const e=b6(),{clearSelectedIds:t,setResourceActionDisable:n,clearSelectedItems:r}=Me();return{isActionDisableModalOpen:e,onActionDisableCancel:()=>{t(),r(),n(!1)}}},sk=()=>{const[e,t]=b.useState(!1),[n,r]=b.useState(!0);return b.useEffect(()=>{(async()=>{const s=await h6();if(s){t(JSON.parse(s==null?void 0:s.showOnboardingTrash));return}t(!0)})()},[]),{isOnboardingTrash:e,isOpen:n,handleSavePreference:async()=>{await p6({onSuccess:()=>r(!1)})},setIsOpen:r}},ok=()=>{const e=Ty(),{clearSelectedIds:t,setResourceIsTrash:n,clearSelectedItems:r}=Me();return{isTrashedModalOpen:e,onTrashedCancel:()=>{t(),r(),n(!1)}}},ak=({workflow:e,actions:t})=>{const n=t==null?void 0:t.filter(r=>r.id===e&&r.available);return n&&n.length>0},lk=b.lazy(async()=>await Ce(()=>import("./OnboardingTrash.js"),[])),uk=b.lazy(async()=>await Ce(()=>import("./AppAction.js"),[])),ck=b.lazy(async()=>await Ce(()=>import("./Library.js"),[])),dk=b.lazy(async()=>await Ce(()=>import("./TrashedResourceModal.js"),[]));function fk(){const{currentApp:e,appCode:t}=_t(),{isOnboardingTrash:n,isOpen:r,setIsOpen:i,handleSavePreference:s}=sk(),{data:o}=_y(),{isTrashedModalOpen:a,onTrashedCancel:l}=ok(),{isActionDisableModalOpen:u,onActionDisableCancel:c}=ik();n4();const d=o==null?void 0:o.find(y=>y.id==="publish"),{libraryUrl:h}=q6(),{t:p}=we(),m=[{label:p("explorer.filter.owner",{ns:t}),value:1},{label:p("explorer.filter.shared",{ns:t}),value:2},...(e==null?void 0:e.displayName)==Eo.EXERCIZER?[{label:"Exercices interactifs",value:3}]:[],...(e==null?void 0:e.displayName)==Eo.EXERCIZER?[{label:"Exercices à rendre",value:4}]:[],...(e==null?void 0:e.displayName)=="pages"?[{label:"Projets publics",value:5}]:[],...(e==null?void 0:e.displayName)=="pages"?[{label:"Projets internes",value:6}]:[],...(e==null?void 0:e.displayName)==Eo.BLOG?[{label:p("explorer.filter.public",{ns:t}),value:7}]:[]];return f.jsxs(f.Fragment,{children:[f.jsx(B3,{render:()=>ak({workflow:"create",actions:o})?f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(uk,{})}):null,children:f.jsx(q3,{app:e})}),f.jsxs(Wi,{className:"flex-grow-1",children:[f.jsxs(Wi.Col,{sm:"3",lg:"2",xl:"3",className:"border-end pt-16 pe-16 d-none d-lg-block",as:"aside",children:[f.jsx(rk,{}),(d==null?void 0:d.available)&&h&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(ck,{url:h})})]}),f.jsxs(Wi.Col,{sm:"4",md:"8",lg:"6",xl:"9",children:[f.jsx(ek,{options:m}),f.jsx(k6,{}),f.jsx(Y6,{})]}),f.jsx(V6,{}),n&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(lk,{isOpen:r,setIsOpen:i,handleSavePreference:s})}),a&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(dk,{isOpen:a,onCancel:l})}),u&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(J6,{isOpen:u,onCancel:c})})]})]})}function hk(){const{init:e}=_t();return e?e?f.jsx(F8,{children:f.jsx(fk,{})}):null:f.jsx(Ue,{position:!1})}const pk=document.getElementById("root"),mk=new ww({queryCache:new Ym({onError:e=>{e==="0090"&&window.location.replace("/auth/login")}}),defaultOptions:{queries:{retry:!1,refetchOnWindowFocus:!1}}});Cy(pk).render(f.jsx(b.StrictMode,{children:f.jsxs(MS,{client:mk,children:[f.jsx(GS,{params:Hs(),children:f.jsx(t4,{children:f.jsx(hk,{})})}),f.jsx($8,{initialIsOpen:!1})]})}));export{_y as $,It as A,ri as B,KE as C,Tk as D,jk as E,Mc as F,ai as G,_k as H,R0 as I,x6 as J,Me as K,Ue as L,kn as M,at as N,si as O,oi as P,Ak as Q,Am as R,P3 as S,aC as T,Ik as U,Ni as V,XE as W,ZE as X,bk as Y,Dk as Z,Ce as _,Ms as a,ak as a0,cf as a1,H6 as a2,Hs as a3,QE as a4,WE as a5,Ek as a6,f3 as a7,xc as a8,Qs as a9,Nk as aa,J4 as ab,Rs as ac,Ve as ad,Ns as ae,Ws as af,Ck as ag,kk as ah,Pk as ai,l5 as aj,Ok as ak,v0 as al,Ob as am,Ya as b,X4 as c,_t as d,wk as e,Fd as f,Z as g,Zt as h,$d as i,f as j,G4 as k,S6 as l,Mk as m,Lk as n,At as o,xk as p,wp as q,b as r,wc as s,zd as t,we as u,Sk as v,Rk as w,E3 as x,Iv as y,H3 as z};
234
+ */var yl=b,B8=a0;function U8(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var V8=typeof Object.is=="function"?Object.is:U8,H8=B8.useSyncExternalStore,q8=yl.useRef,Q8=yl.useEffect,W8=yl.useMemo,K8=yl.useDebugValue;Oy.useSyncExternalStoreWithSelector=function(e,t,n,r,i){var s=q8(null);if(s.current===null){var o={hasValue:!1,value:null};s.current=o}else o=s.current;s=W8(function(){function l(p){if(!u){if(u=!0,c=p,p=r(p),i!==void 0&&o.hasValue){var m=o.value;if(i(m,p))return d=m}return d=p}if(m=d,V8(c,p))return m;var y=r(p);return i!==void 0&&i(m,y)?m:(c=p,d=y)}var u=!1,c,d,h=n===void 0?null:n;return[function(){return l(t())},h===null?void 0:function(){return l(h())}]},[t,n,r,i]);var a=H8(e,s[0],s[1]);return Q8(function(){o.hasValue=!0,o.value=a},[a]),K8(a),a};ky.exports=Oy;var Z8=ky.exports;const X8=Ns(Z8),{useSyncExternalStoreWithSelector:G8}=X8;function Y8(e,t=e.getState,n){const r=G8(e.subscribe,e.getState,e.getServerState||e.getState,t,n);return b.useDebugValue(r),r}const bm=e=>{const t=typeof e=="function"?z8(e):e,n=(r,i)=>Y8(t,r,i);return Object.assign(n,t),n},J8=e=>e?bm(e):bm,Ry=async e=>{const t=await G.resource(e.app).searchContext(e);return{...t,folders:t.folders.filter(n=>!n.trashed)}},e6=async({searchParams:e,name:t,parentId:n})=>{const r={name:t,parentId:n,app:e.app,type:e.types[0]};return await G.resource(e.app).createFolder(r)},t6=async({folderId:e,searchParams:t,parentId:n,name:r})=>{const i={folderId:e,name:r,parentId:n,app:t.app,type:t.types[0]};return await G.resource(t.app).updateFolder(i)},n6=async({searchParams:e,resourceIds:t,useAssetIds:n,folderIds:r})=>{const i={application:e.app,resourceType:e.types[0],resourceIds:t,folderIds:r};return await G.resource(e.app).trashAll(i,n)},r6=async({searchParams:e,resourceIds:t,useAssetIds:n,folderIds:r})=>{const i={application:e.app,resourceType:e.types[0],resourceIds:t,folderIds:r};return await G.resource(e.app).deleteAll(i,n)},i6=async({searchParams:e,resourceIds:t,folderIds:n,useAssetIds:r})=>{const i={application:e.app,resourceType:e.types[0],resourceIds:t,folderIds:n};return await G.resource(e.app).restoreAll(i,r)},s6=async({searchParams:e,resourceIds:t,folderId:n,folderIds:r,useAssetIds:i})=>{const s={application:e.app,folderId:n,resourceIds:t,folderIds:r};return await G.resource(e.app).moveToFolder(s,i)},o6=async({searchParams:e,entId:t,shares:n})=>await G.share().saveRights(e.app,t,n),a6=async({searchParams:e,params:t})=>await G.resource(e.app).update(t),l6=async e=>await G.rights().sessionHasWorkflowRights(e),u6=({searchParams:e,assetId:t})=>G.resource(e.app).gotoView(t),c6=({searchParams:e,params:t})=>{const n=G.resource(e.app).create(t);return console.log({result:n}),n},d6=({searchParams:e,assetId:t})=>{const n=G.resource(e.app).gotoPrint(t);return console.log({result:n}),n},f6=async({searchParams:e,params:t})=>await G.resource(e.app).publish(t),h6=async()=>await G.conf().getPreference("showOnboardingTrash"),p6=async({onSuccess:e})=>{const t=await G.conf().savePreference("showOnboardingTrash",JSON.stringify({showOnboardingTrash:!1}));return e==null||e(),t};function Ef(e){return e.filter((t,n)=>e.indexOf(t)===n)}function Ps(e,t){var r,i;let n;return(t==null?void 0:t.id)===e?t:((r=t==null?void 0:t.children)!=null&&r.length&&((i=t==null?void 0:t.children)==null||i.every(s=>(n=Ps(e,s),n===void 0))),n)}function m6(e,t){var r;const n=Ps(e,t);return(r=n==null?void 0:n.folder)!=null&&r.ancestors?[...(n==null?void 0:n.folder.ancestors)||[],e]:e===Je.BIN?[Je.BIN]:[Je.DEFAULT]}function Py(e,t){return t.id===e&&t.children?t.children.length>0:t.children?t.children.some(n=>Py(t.id,n)):!1}function qs(e,t){return Ny(e,t)||e}function Ny(e,t,n){var i;const r=t(e,n);if((i=r==null?void 0:r.children)!=null&&i.length){const s=[];for(const o of(r==null?void 0:r.children)||[]){const a=Ny(o,t,r);a&&s.push(a)}return{...r,children:s}}return r}class wl{constructor(t){hr(this,"id");hr(this,"name");hr(this,"childNumber");hr(this,"section",!1);hr(this,"children",[]);this.folder=t,this.id=t.id,this.name=t.name,this.childNumber=t.childNumber}}const jy=(e,t,n)=>qs(e,r=>(r.id===n&&(r.children=t==null?void 0:t.map(i=>new wl(i))),r)),{app:g6,types:v6,filters:y6,orders:w6}=Hs(),lt=J8()((e,t)=>({filters:y6,orders:w6,searchParams:{app:g6,types:v6,filters:{folder:"default",owner:void 0,shared:void 0,public:void 0},orders:{updatedAt:"desc"},pagination:{startIdx:0,pageSize:48,maxIdx:0},trashed:!1},treeData:{id:Je.DEFAULT,name:Kt("explorer.filters.mine"),section:!0,children:[]},selectedNodesIds:["default"],currentFolder:{id:"default"},selectedFolders:[],selectedResources:[],folderIds:[],resourceIds:[],resourceIsTrash:!1,resourceActionDisable:!1,updaters:{setTreeData:n=>e(()=>({treeData:n})),setSearchParams:n=>e(({searchParams:r})=>({searchParams:{...r,...n}})),setSelectedFolders:n=>e(()=>({selectedFolders:n})),setSelectedResources:n=>e(()=>({selectedResources:n})),setFolderIds:n=>e(()=>({folderIds:n})),setResourceIds:n=>e(()=>({resourceIds:n})),setResourceIsTrash:n=>e(()=>({resourceIsTrash:n})),setResourceActionDisable:n=>e(()=>({resourceActionDisable:n})),setCurrentFolder:n=>e(()=>({currentFolder:n})),clearSelectedItems:()=>e(()=>({selectedFolders:[],selectedResources:[]})),clearSelectedIds:()=>e(()=>({resourceIds:[],folderIds:[]})),openResource:n=>{try{const{searchParams:r}=t();u6({searchParams:r,assetId:n.assetId})}catch(r){console.error("explorer open failed: ",r)}},printSelectedResource:()=>{try{const{searchParams:n,selectedResources:r,resourceIds:i}=t();if(r.length!==1)throw new Error("Cannot open more than 1 resource");const s=r.find(o=>o.id===i[0]);d6({searchParams:n,assetId:s.assetId})}catch(n){console.error("explorer print failed: ",n)}},publishApi:async(n,r)=>{const{searchParams:i}=t();return await f6({searchParams:i,params:r})},openFolder:({folderId:n,folder:r})=>{const{searchParams:i,treeData:s}=t(),o=i.filters.folder,a=m6(n,s),l=Ef([...a,n]);o!==n&&e(u=>({...u,folderIds:[],resourceIds:[],selectedNodesIds:l,currentFolder:r||{id:n},searchParams:{...i,filters:{...i.filters,folder:n},trashed:n===Je.BIN}}))},foldTreeItem:()=>e(n=>({...n,status:"fold"})),unfoldTreeItem:async(n,r)=>{const{treeData:i,searchParams:s}=t();if(e(o=>({...o,status:"unfold"})),!Py(n,i)){await r.prefetchInfiniteQuery({queryKey:["prefetchContext",{folderId:n,trashed:!1}],queryFn:async()=>await Ry({...s,filters:{...s.filters,folder:n}})});const o=r.getQueryData(["prefetchContext",{folderId:n,trashed:!1}]);e(a=>{var l;return{...a,treeData:jy(i,(l=o==null?void 0:o.pages[0])==null?void 0:l.folders,n||Je.DEFAULT)}})}},selectTreeItem:n=>{const{treeData:r}=t(),{openFolder:i}=t().updaters,s=Ps(n,r);J4()(),e(a=>({...a,selectedResources:[]})),i({folder:s,folderId:n})},gotoPreviousFolder:()=>{const{selectedNodesIds:n,treeData:r}=t(),{openFolder:i}=t().updaters,s=n.length;if(s<2)return;const o=Ps(n[s-2],r);i({folder:o,folderId:(o==null?void 0:o.id)||Je.DEFAULT})},goToTrash:()=>e(n=>({...n,selectedNodesIds:[],selectedResources:[],resourceIds:[],folderIds:[],searchParams:{...n.searchParams,filters:{folder:Je.BIN},trashed:!0},currentFolder:{id:Je.BIN}}))}})),Zt=()=>lt(e=>e.searchParams),Cf=()=>lt(e=>e.selectedNodesIds),si=()=>lt(e=>e.treeData),x6=()=>lt(e=>e.selectedFolders),S6=()=>lt(e=>e.selectedResources),Qs=()=>lt(e=>e.folderIds),Ws=()=>lt(e=>e.resourceIds),xl=()=>lt(e=>e.selectedResources.map(t=>t.assetId)),Sl=()=>lt(e=>e.selectedResources.filter(t=>t.assetId===t.id)),oi=()=>lt(e=>e.currentFolder),Me=()=>lt(e=>e.updaters),ai=()=>{const e=oi();return(e==null?void 0:e.id)===Je.BIN},Ty=()=>lt(e=>e.resourceIsTrash),b6=()=>lt(e=>e.resourceActionDisable),E6=()=>{const e=oi();return(e==null?void 0:e.id)==="default"},C6=()=>Cf().length>1;function k6(){const{appCode:e}=_t(),{t}=we(["common",e]),n=Cf(),r=ai(),i=oi(),{gotoPreviousFolder:s}=Me(),o=t("explorer.tree.trash"),a=t("explorer.filters.mine",{ns:e}),l=(i==null?void 0:i.name)||a;return f.jsx("div",{className:"py-16",children:n.length>1&&!r?f.jsxs("div",{className:"d-flex align-items-center gap-8",children:[f.jsx(zd,{icon:f.jsx(i3,{}),variant:"ghost",color:"tertiary","aria-label":t("back"),className:"ms-n16",onClick:s}),f.jsx("p",{className:"body py-8 text-truncate",children:f.jsx("strong",{children:l})})]}):f.jsx("h2",{className:"body py-8 fw-bold",children:r?o:a})})}function O6(e,{parentId:t,newFolder:n}){return qs(e,r=>{var i;if(r.id===t){const s=[...((i=r.folder)==null?void 0:i.ancestors)||[]],o=Ef([...s,r.id]);return{...r,children:[...r.children||[],new wl({...n,ancestors:o})]}}else return r})}function R6(e,{folders:t}){return qs(e,n=>{if(!t.includes(n.id))return n})}function P6(e,t){return t=t.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[.,\\/#!$%\\^&\\*;:{}=\-_`~()]/g,""),e=e.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[.,\\/#!$%\\^&\\*;:{}=\-_`~()]/g,""),e.includes(t)}function N6(e,{destinationId:t,folders:n}){return qs(e,(r,i)=>{var s,o;if(t===r.id){const a=[...((s=r.folder)==null?void 0:s.ancestors)||[]],l=Ef([...a,r.id]),u=[...r.children||[]],c=((o=r.children)==null?void 0:o.map(h=>h.id))||[];for(const h of n)if(!c.includes(h)){const p=Ps(h,e);p&&u.push({...p,folder:{...p==null?void 0:p.folder,ancestors:l}})}return{...r,children:u}}else return n.includes(r.id)&&t!==(i==null?void 0:i.id)?void 0:r})}function j6(e,{folderId:t,newFolder:n}){return qs(e,r=>r.id===t?new wl(n):r)}const{actions:Em,app:T6}=Hs(),_y=()=>Dd({queryKey:["actions"],queryFn:async()=>{const e=Em.map(n=>n.workflow);return await l6(e)},select:e=>Em.map(t=>({...t,available:e[t.workflow]}))}),_6=()=>{const{hotToast:e}=At(It),{appCode:t}=_t(),{t:n}=we(),r=at(),i=Zt(),s=oi(),o=si(),{setTreeData:a,setSearchParams:l}=Me(),{filters:u,trashed:c,search:d}=i,h=["context",{folderId:u.folder,filters:u,trashed:c,search:d}];return ZS({queryKey:h,queryFn:async({pageParam:p=0})=>await Ry({...i,pagination:{...i.pagination,startIdx:p}}),onError(p){typeof p=="string"&&e.error(n(p))},onSuccess:async p=>{var y,x,g;await r.cancelQueries({queryKey:h});const m=[...((y=p==null?void 0:p.pages[0])==null?void 0:y.folders)??[]];(x=p==null?void 0:p.pages[0])!=null&&x.folders&&(p.pages[0].folders=p.pages[0].folders.filter(v=>i.search?P6(v.name,i.search.toString()):!0)),(s==null?void 0:s.id)==="default"?a({id:Je.DEFAULT,section:!0,children:m.map(v=>new wl(v)),name:n("explorer.filters.mine",{ns:t})}):a(jy(o,m,i.filters.folder||Je.DEFAULT)),l({...i,pagination:(g=p==null?void 0:p.pages[(p==null?void 0:p.pages.length)-1])==null?void 0:g.pagination})},retry:!1,getNextPageParam:p=>p.pagination.startIdx+p.pagination.pageSize})},jk=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),r=si(),i=Qs(),s=xl(),o=Ws(),a=Sl().length>0,l=a?s:o,{clearSelectedItems:u,clearSelectedIds:c,setTreeData:d,setSearchParams:h}=Me(),{filters:p,trashed:m}=n,y=["context",{folderId:p.folder,filters:p,trashed:m}];return fn({mutationFn:async()=>await n6({searchParams:n,folderIds:i,resourceIds:l,useAssetIds:a}),onError(x){typeof x=="string"&&e.error(Kt(x))},onSuccess:async x=>{if(await t.cancelQueries({queryKey:y}),t.getQueryData(y))return t.setQueryData(y,v=>{var w;if(v){const S={...v,pages:v==null?void 0:v.pages.map(k=>{var O;return{...k,folders:k.folders.filter(R=>!i.includes(R.id)),pagination:{...k.pagination,maxIdx:((O=k==null?void 0:k.pagination)==null?void 0:O.maxIdx)-x.resources.length},resources:k.resources.filter(R=>a?!s.includes(R.assetId):!l.includes(R.id))}})},C=R6(r,{folders:i});return d(C),h({...n,pagination:{...n.pagination,maxIdx:((w=n.pagination)==null?void 0:w.maxIdx)-x.resources.length}}),S}})},onSettled:()=>{u(),c()}})},A6=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),r=Qs(),i=xl(),s=Ws(),o=Sl().length>0,a=o?i:s,{setFolderIds:l,setResourceIds:u,setSelectedResources:c,setSelectedFolders:d}=Me(),{filters:h,trashed:p}=n,m=["context",{folderId:h.folder,filters:h,trashed:p}];return fn({mutationFn:async()=>await i6({searchParams:n,folderIds:r,resourceIds:a,useAssetIds:o}),onError(y){typeof y=="string"&&e.error(Kt(y))},onSuccess:async()=>{if(await t.cancelQueries({queryKey:m}),t.getQueryData(m))return t.setQueryData(m,x=>{if(x)return{...x,pages:x==null?void 0:x.pages.map(g=>({...g,folders:g.folders.filter(v=>!r.includes(v.id)),resources:g.resources.filter(v=>o?!i.includes(v.assetId):!a.includes(v.id))}))}})},onSettled:()=>{u([]),c([]),l([]),d([])}})},Tk=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),r=Qs(),i=xl(),s=Ws(),o=Sl().length>0,a=o?i:s,{clearSelectedItems:l,clearSelectedIds:u}=Me(),{filters:c,trashed:d}=n,h=["context",{folderId:c.folder,filters:c,trashed:d}];return fn({mutationFn:async()=>await r6({searchParams:n,folderIds:r,resourceIds:a,useAssetIds:o}),onError(p){typeof p=="string"&&e.error(Kt(p))},onSuccess:async()=>{if(await t.cancelQueries({queryKey:h}),t.getQueryData(h))return t.setQueryData(h,m=>{if(m)return{...m,pages:m==null?void 0:m.pages.map(x=>({...x,folders:x.folders.filter(g=>!r.includes(g.id)),resources:x.resources.filter(g=>o?!i.includes(g.assetId):!a.includes(g.id))}))}})},onSettled:()=>{l(),u()}})},_k=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),r=si(),i=Qs(),s=xl(),o=Ws(),a=Sl().length>0,l=a?s:o,{clearSelectedIds:u,clearSelectedItems:c,setTreeData:d,setSearchParams:h}=Me(),{filters:p,trashed:m}=n,y=["context",{folderId:p.folder,filters:p,trashed:m}];return fn({mutationFn:async x=>await s6({searchParams:n,folderId:x,folderIds:i,resourceIds:l,useAssetIds:a}),onError(x){typeof x=="string"&&e.error(Kt(x))},onSuccess:async(x,g)=>{if(t.getQueryData(y))return t.setQueryData(y,w=>{var S;if(w){const C=N6(r,{destinationId:g,folders:i}),k={...w,pages:w==null?void 0:w.pages.map(O=>{var R;return{...O,folders:O.folders.filter(A=>!i.includes(A.id)),pagination:{...O.pagination,maxIdx:((R=O.pagination)==null?void 0:R.maxIdx)-x.resources.length},resources:O.resources.filter(A=>a?!s.includes(A.assetId):!l.includes(A.id))}})};return d(C),h({...n,pagination:{...n.pagination,maxIdx:((S=n.pagination)==null?void 0:S.maxIdx)-x.resources.length}}),k}})},onSettled:()=>{c(),u()}})},Ak=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),r=si(),{setTreeData:i}=Me(),{filters:s,trashed:o}=n,a=["context",{folderId:s.folder,filters:s,trashed:o}];return fn({mutationFn:async({name:l,parentId:u})=>await e6({searchParams:n,name:l,parentId:u}),onError(l){typeof l=="string"&&e.error(Kt(l))},onSuccess:async(l,u)=>{await t.cancelQueries({queryKey:a});const c=t.getQueryData(a),d={...l,parentId:u.parentId,children:[],rights:[`creator:${l==null?void 0:l.creator_id}`]};if(c)return t.setQueryData(a,h=>{if(h){const p={...h,pages:h==null?void 0:h.pages.map(y=>({...y,folders:[...y.folders,d]}))},m=O6(r,{parentId:u.parentId,newFolder:d});return i(m),p}})}})},Ik=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),r=si(),{setFolderIds:i,setSelectedFolders:s,setTreeData:o}=Me(),{filters:a,trashed:l}=n,u=["context",{folderId:a.folder,filters:a,trashed:l}];return fn({mutationFn:async({folderId:c,name:d,parentId:h})=>await t6({searchParams:n,folderId:c,parentId:h,name:d}),onError(c){typeof c=="string"&&e.error(Kt(c))},onSuccess:async(c,d)=>{if(await t.cancelQueries({queryKey:u}),t.getQueryData(u))return t.setQueryData(u,p=>{if(p){const m={...p,pages:p==null?void 0:p.pages.map(x=>({...x,folders:x.folders.map(g=>g.id===c.id?{...c,parentId:d.parentId,rights:g.rights}:g)}))},y=j6(r,{folderId:d.folderId,newFolder:c});return o(y),m}})},onSettled:()=>{i([]),s([])}})},Lk=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),{setResourceIds:r,setSelectedResources:i}=Me(),{filters:s,trashed:o}=n,a=["context",{folderId:s.folder,filters:s,trashed:o}];return fn({mutationFn:async({entId:l,shares:u})=>await o6({searchParams:n,entId:l,shares:u}),onError(l){typeof l=="string"&&e.error(Kt(l))},onSuccess:async(l,u)=>{if(await t.cancelQueries({queryKey:a}),t.getQueryData(a))return t.setQueryData(a,d=>{if(d)return{...d,pages:d==null?void 0:d.pages.map(h=>({...h,resources:h.resources.map(p=>{if(p.assetId===(u==null?void 0:u.entId)){let m=[`creator:${p.creatorId}`];return(u==null?void 0:u.shares.length)>=1&&(m=[...m,...u.shares.flatMap(y=>y.actions.map(x=>`${y.type}:${y.id}:${x.id}`))]),{...p,rights:m}}else return p})}))}})},onSettled:()=>{r([]),i([])}})},Mk=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),{filters:r,trashed:i}=n,s=["context",{folderId:r.folder,filters:r,trashed:i}];return fn({mutationFn:async o=>await a6({searchParams:n,params:o}),onError(o){typeof o=="string"&&e.error(Kt(o))},onSuccess:async(o,a)=>{if(await t.cancelQueries({queryKey:s}),t.getQueryData(s))return t.setQueryData(s,u=>{if(u)return{...u,pages:u==null?void 0:u.pages.map(c=>({...c,resources:c.resources.map(d=>{if(d.assetId===(a==null?void 0:a.entId)){const{name:h,thumbnail:p,public:m,description:y,slug:x,...g}=a;return{...d,...g,name:h,thumbnail:p,public:m,description:y,slug:x}}else return d})}))}})}})},Dk=()=>{const{hotToast:e}=At(It),t=at(),n=Zt(),{user:r}=$d(),i=["context",{folderId:n.filters.folder,trashed:n.trashed}];return fn({mutationFn:async s=>await c6({searchParams:n,params:s}),onError(s){typeof s=="string"&&e.error(Kt(s))},onSuccess:async(s,o)=>{var u,c,d;await t.cancelQueries({queryKey:i});const a=t.getQueryData(i);console.log({data:s,variables:o});const l={...o,thumbnail:o.thumbnail,application:T6,assetId:s._id||s.entId||"",id:s._id||s.entId||"",creatorId:r==null?void 0:r.userId,creatorName:r==null?void 0:r.username,createdAt:Date.now(),modifiedAt:((u=s.modified)==null?void 0:u.$date)||"",modifierId:((c=s.author)==null?void 0:c.userId)||"",modifierName:((d=s.author)==null?void 0:d.username)||"",updatedAt:Date.now(),trashed:!1,rights:[`creator:${r==null?void 0:r.userId}`]};if(a)return t.setQueryData(i,h=>{if(h)return{...h,pages:h==null?void 0:h.pages.map(p=>({...p,resources:[l,...p.resources]}))}})}})},{trashActions:I6}=Hs();function Ay(){const[e,t]=b.useState(!1),[n,r]=b.useState("void"),[i,s]=b.useState(),{t:o}=we(),{hotToast:a}=At(It),l=oi(),u=Ws(),c=S6(),d=x6(),h=Qs(),p=ai(),m=A6(),y=Ty(),{openResource:x,printSelectedResource:g,openFolder:v,clearSelectedItems:w,clearSelectedIds:S}=Me(),{data:C}=_y();b.useEffect(()=>{if(u.length===0&&h.length===0){t(!1);return}if(y){t(!1);return}t(!0)},[u,h]);async function k(K){var ie;switch((ie=document.getElementById("root"))==null||ie.setAttribute("aria-hidden","true"),s(K),K.id){case Fe.OPEN:return u.length>0?x(c[0]):v({folder:d[0],folderId:d[0].id});case Fe.MOVE:return r("move");case Fe.PRINT:return g();case Fe.DELETE:return r("delete");case Fe.RESTORE:return await A();case Fe.PUBLISH:return r("publish");case Fe.UPD_PROPS:case"edit":return he();case Fe.SHARE:return r("share");default:throw Error(`Unknown action: ${K.id}`)}}function O(K){const ie=u.length+h.length,ge=u.length===1||h.length===1,De=ie===1,Lt=h.length===0;switch(K.id){case Fe.OPEN:return De;case Fe.MANAGE:return ge;case Fe.PUBLISH:return ge&&Lt;case Fe.UPD_PROPS:return ge&&Lt;case Fe.SHARE:return Lt&&ge;case Fe.PRINT:return ge&&Lt;case"edit":return De;default:return!0}}function R(){return!0}async function A(){try{if(p)await m.mutate(),a.success(o("explorer.trash.toast"));else throw new Error("Cannot restore untrashed resources");I()}catch(K){console.error(K)}}function I(){var K;r("void"),i!=null&&i.id&&((K=document.getElementById(i==null?void 0:i.id))==null||K.focus())}const M=K=>()=>{n===K&&(I(),w(),S())},z=M("move"),B=M("move"),E=M("delete"),P=M("delete"),L=M("publish"),F=M("publish"),N=M("edit_folder"),j=M("edit_folder"),$=M("edit_resource"),W=M("edit_resource"),H=M("share"),Ge=M("share");function he(){u&&u.length>0?r("edit_resource"):r("edit_folder")}function J(K){return K.id==="edit"&&h.length>0?"explorer.rename":`explorer.actions.${K.id}`}return{onRestore:A,actions:p?I6:C,selectedElement:[...c,...d],currentFolderId:l==null?void 0:l.id,overrideLabel:J,handleClick:k,isActivable:p?R:O,isActionBarOpen:e,isMoveModalOpen:n==="move",onMoveCancel:z,onMoveSuccess:B,isDeleteModalOpen:n==="delete",onDeleteCancel:P,onDeleteSuccess:E,isPublishModalOpen:n==="publish",onPublishCancel:F,onPublishSuccess:L,isEditFolderOpen:n==="edit_folder",onEditFolderCancel:j,onEditFolderSuccess:N,isEditResourceOpen:n==="edit_resource",onEditResourceCancel:W,onEditResourceSuccess:$,isShareResourceOpen:n==="share",onShareResourceCancel:Ge,onShareResourceSuccess:H,onClearActionBar:I}}function L6({roles:e,rights:t,action:n}){const[r,i]=b.useState(!1),{user:s}=$d(),o=ai();b.useEffect(()=>{u()},[e,t]);const a=async function(c){const d=c instanceof Array?c:[c];if(e instanceof Array){const h=await G.rights().sessionHasAtLeastOneResourceRight(e,d);i(h)}else{const h=await G.rights().sessionHasResourceRight(e,d);i(h)}},l=async function(c){if(e instanceof Array){const d=await G.rights().sessionHasAtLeastOneResourceRightForEachList(e,c);i(d)}else{const d=await G.rights().sessionHasResourceRightForEachList(e,c);i(d)}},u=async function(){var c,d,h;if(e===void 0){i(!0);return}if(o&&((d=(c=t[0])==null?void 0:c.trashedBy)!=null&&d.includes(s==null?void 0:s.userId))&&n==="restore"&&!((h=t[0])!=null&&h.trashed)){i(!0);return}if(t instanceof Array)if(t.length>0)if(typeof t[0]=="string")await a(t);else{const p=t.map(m=>m.rights);await l(p)}else i(!1);else typeof t=="string"?await a(t):await a(t.rights)};return{visible:r,refreshState:u}}function M6({resourceRights:e,roleExpected:t,action:n,children:r,renderWhenForbidden:i}){const{t:s}=we(),{overrideLabel:o}=Ay(),{visible:a}=L6({roles:t,rights:e,action:n==null?void 0:n.id}),{setResourceActionDisable:l}=Me(),u=ai();return a?f.jsx(f.Fragment,{children:r}):i?i():u&&!a?f.jsx(ri,{type:"button",color:"primary",variant:"filled",onClick:()=>{l(!0)},children:s(o(n))}):f.jsx(f.Fragment,{})}const D6=b.lazy(async()=>await Ce(()=>import("./ShareResourceModal.js"),["ShareResourceModal.js","Heading.js","Tooltip.js"])),F6=b.lazy(async()=>await Ce(()=>import("./DeleteModal.js"),[])),$6=b.lazy(async()=>await Ce(()=>import("./MoveModal.js"),[])),z6=b.lazy(async()=>await Ce(()=>import("./EditFolderModal.js"),["EditFolderModal.js","index.esm.js"])),B6=b.lazy(async()=>await Ce(()=>import("./EditResourceModal.js"),["EditResourceModal.js","Heading.js","index.esm.js","TextArea.js"])),U6=b.lazy(async()=>await Ce(()=>import("./PublishModal.js"),["PublishModal.js","index.esm.js","Heading.js","TextArea.js"]));function V6(){const{t:e}=we(),{actions:t,selectedElement:n,isMoveModalOpen:r,isDeleteModalOpen:i,isPublishModalOpen:s,isActionBarOpen:o,isEditFolderOpen:a,overrideLabel:l,onEditFolderCancel:u,onEditFolderSuccess:c,isEditResourceOpen:d,onEditResourceCancel:h,onEditResourceSuccess:p,isShareResourceOpen:m,onShareResourceCancel:y,onShareResourceSuccess:x,onMoveCancel:g,onMoveSuccess:v,onDeleteCancel:w,onDeleteSuccess:S,onPublishCancel:C,onPublishSuccess:k,isActivable:O,handleClick:R}=Ay(),A=ul(o,{from:{opacity:0,transform:"translateY(100%)"},enter:{opacity:1,transform:"translateY(0)"},leave:{opacity:0,transform:"translateY(100%)"}});return f.jsxs(f.Fragment,{children:[A((I,M)=>M&&f.jsx(Rs.div,{className:"position-fixed bottom-0 start-0 end-0 z-3",style:I,children:f.jsx(e3,{children:t==null?void 0:t.filter(z=>z.available&&z.target==="actionbar").map(z=>O(z)&&f.jsx(M6,{resourceRights:n,roleExpected:z.right,action:z,children:f.jsx(ri,{id:z.id,type:"button",color:"primary",variant:"filled",onClick:()=>{R(z)},children:e(l(z))},z.id)},z.id))})})),f.jsxs(b.Suspense,{fallback:f.jsx(Ue,{}),children:[r&&f.jsx($6,{isOpen:r,onCancel:g,onSuccess:v}),i&&f.jsx(F6,{isOpen:i,onCancel:w,onSuccess:S}),s&&f.jsx(U6,{isOpen:s,onCancel:C,onSuccess:k}),a&&f.jsx(z6,{edit:!0,isOpen:a,onCancel:u,onSuccess:c}),d&&f.jsx(B6,{edit:!0,isOpen:d,onCancel:h,onSuccess:p}),m&&f.jsx(D6,{isOpen:m,onCancel:y,onSuccess:x})]})]})}function H6(e){return e.charAt(0).toUpperCase()+e.slice(1)}const q6=()=>{var a;const{user:e}=_t(),t=H6(Hs().app),n=(a=e.apps.find(l=>l.isExternal&&l.address.includes("library")&&l.name.includes("library")))==null?void 0:a.address.split("?");let r=n==null?void 0:n[0];r!=null&&r.endsWith("/")||(r=`${r}/`);const i=n==null?void 0:n[1],s=`application%5B0%5D=${t}&page=1&sort_field=views&sort_order=desc`;return{libraryUrl:`${r}search/?${i}&${s}`}},Q6=b.lazy(async()=>await Ce(()=>import("./EmptyScreenApp.js"),["EmptyScreenApp.js","EmptyScreen.js","Heading.js"])),W6=b.lazy(async()=>await Ce(()=>import("./EmptyScreenError.js"),["EmptyScreenError.js","EmptyScreen.js","Heading.js"])),K6=b.lazy(async()=>await Ce(()=>import("./EmptyScreenNoContentInFolder.js"),["EmptyScreenNoContentInFolder.js","EmptyScreen.js","Heading.js"])),Z6=b.lazy(async()=>await Ce(()=>import("./EmptyScreenTrash.js"),["EmptyScreenTrash.js","EmptyScreen.js","Heading.js"])),X6=b.lazy(async()=>await Ce(()=>import("./FoldersList.js"),["FoldersList.js","Card.js","Tooltip.js"])),G6=b.lazy(async()=>await Ce(()=>import("./ResourcesList.js"),["ResourcesList.js","Card.js","Tooltip.js"])),Y6=()=>{const e=E6(),t=ai(),n=C6(),{data:r,isError:i,isLoading:s,isFetching:o,fetchNextPage:a}=_6(),l=(r==null?void 0:r.pages[0].folders.length)===0,u=(r==null?void 0:r.pages[0].resources.length)===0,c=l&&u;return i?f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(W6,{})}):f.jsxs(b.Suspense,{fallback:f.jsx(Ue,{}),children:[!c&&!s&&f.jsxs(b.Suspense,{fallback:f.jsx(Ue,{}),children:[f.jsx(X6,{data:r,isFetching:o}),f.jsx(G6,{data:r,isFetching:o,fetchNextPage:a})]}),e&&c&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(Q6,{})}),n&&c&&!t&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(K6,{})}),t&&(r==null?void 0:r.pages[0].resources.length)===0&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(Z6,{})})]})};function J6({isOpen:e,onCancel:t=()=>({})}){const{t:n}=we();return Ms.createPortal(f.jsxs(kn,{isOpen:e,onModalClose:t,id:"trash_action_disable_resource",children:[f.jsx(kn.Header,{onModalClose:()=>t(),children:n("explorer.trash.action.modal.title")}),f.jsx(kn.Body,{children:f.jsx("p",{className:"body",children:n("explorer.trash.action.modal.text")})}),f.jsx(kn.Footer,{children:f.jsx(ri,{color:"primary",onClick:t,type:"button",variant:"outline",children:n("close")})})]}),document.getElementById("portal"))}const ek=({options:e})=>{const[t,n]=b.useState([]),[r,i]=b.useState(""),s=b.useDeferredValue(r),o=G4(r,500),{t:a}=we(),{appCode:l}=_t(),u=oi(),{setSearchParams:c}=Me(),d=m=>{const y=m.target.value;i(y)},h=m=>{(m.key==="Enter"||m.key==="Return")&&(c({search:o||void 0}),m.preventDefault())},p=m=>{c({search:o||void 0}),m.preventDefault()};return b.useEffect(()=>{const m=()=>t.includes(1)?!0:void 0,y=()=>t.includes(2)?!0:void 0,x=()=>t.includes(7)?!0:void 0,v=o.length==0||o.length>=3?{search:o||void 0}:{};c({...v,filters:{owner:m(),public:x(),shared:y(),folder:u?u.id:"default"}})},[o,t,u,c]),f.jsxs("form",{noValidate:!0,className:"bg-light p-16 ps-24 ms-n16 ms-lg-n24 me-n16 position-relative z-3 d-flex gap-8",children:[f.jsxs(Mc,{id:"search",className:"input-group",children:[f.jsx(Iv,{type:"search",placeholder:a("explorer.label.search",{ns:l}),size:"lg",noValidationIcon:!0,value:s,onChange:d,onKeyDown:h}),f.jsx(F0,{type:"submit","aria-label":a("explorer.label.search",{ns:l}),onClick:p})]}),f.jsx(QE,{content:f.jsx(KE,{model:t,onChange:m=>{n(m)},options:e}),trigger:f.jsx(WE,{icon:f.jsx(y3,{width:20}),title:a("Filtres "),variant:"ghost"})})]})},tk=({id:e,selected:t,onSelect:n})=>{const{t:r}=we();return f.jsx("div",{className:"treeview",children:f.jsx("ul",{role:"tree",className:"m-0 p-0",children:f.jsx("li",{id:e,role:"treeitem","aria-selected":t,children:f.jsx("div",{children:f.jsx("div",{className:"action-container",children:f.jsx("div",{onClick:n,role:"button",tabIndex:0,children:f.jsxs("div",{className:"d-flex align-items-center gap-8 py-8 ps-24",children:[f.jsx(f3,{width:"20",height:"20"}),f.jsx("span",{children:r("explorer.tree.trash")})]})})})})})})})},nk=b.lazy(async()=>await Ce(()=>import("./EditFolderModal.js"),["EditFolderModal.js","index.esm.js"])),rk=()=>{const e=at(),{t}=we(),[n,r]=X4(),i=si(),s=ai(),o=Cf(),{goToTrash:a,selectTreeItem:l,unfoldTreeItem:u,foldTreeItem:c}=Me(),d=async h=>{await u(h,e)};return i?f.jsxs(f.Fragment,{children:[f.jsx(aC,{data:i,selectedNodesIds:o,onTreeItemSelect:l,onTreeItemFold:c,onTreeItemUnfold:d}),f.jsx(tk,{id:Je.BIN,selected:s,onSelect:a}),f.jsx("div",{className:"d-grid my-16",children:f.jsx(ri,{disabled:s,type:"button",color:"primary",variant:"outline",leftIcon:f.jsx(P3,{}),onClick:r,children:t("explorer.folder.new")})}),f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:n&&f.jsx(nk,{edit:!1,isOpen:n,onSuccess:r,onCancel:r})})]}):null},ik=()=>{const e=b6(),{clearSelectedIds:t,setResourceActionDisable:n,clearSelectedItems:r}=Me();return{isActionDisableModalOpen:e,onActionDisableCancel:()=>{t(),r(),n(!1)}}},sk=()=>{const[e,t]=b.useState(!1),[n,r]=b.useState(!0);return b.useEffect(()=>{(async()=>{const s=await h6();if(s){t(JSON.parse(s==null?void 0:s.showOnboardingTrash));return}t(!0)})()},[]),{isOnboardingTrash:e,isOpen:n,handleSavePreference:async()=>{await p6({onSuccess:()=>r(!1)})},setIsOpen:r}},ok=()=>{const e=Ty(),{clearSelectedIds:t,setResourceIsTrash:n,clearSelectedItems:r}=Me();return{isTrashedModalOpen:e,onTrashedCancel:()=>{t(),r(),n(!1)}}},ak=({workflow:e,actions:t})=>{const n=t==null?void 0:t.filter(r=>r.id===e&&r.available);return n&&n.length>0},lk=b.lazy(async()=>await Ce(()=>import("./OnboardingTrash.js"),[])),uk=b.lazy(async()=>await Ce(()=>import("./AppAction.js"),[])),ck=b.lazy(async()=>await Ce(()=>import("./Library.js"),[])),dk=b.lazy(async()=>await Ce(()=>import("./TrashedResourceModal.js"),[]));function fk(){const{currentApp:e,appCode:t}=_t(),{isOnboardingTrash:n,isOpen:r,setIsOpen:i,handleSavePreference:s}=sk(),{data:o}=_y(),{isTrashedModalOpen:a,onTrashedCancel:l}=ok(),{isActionDisableModalOpen:u,onActionDisableCancel:c}=ik();n4();const d=o==null?void 0:o.find(y=>y.id==="publish"),{libraryUrl:h}=q6(),{t:p}=we(),m=[{label:p("explorer.filter.owner",{ns:t}),value:1},{label:p("explorer.filter.shared",{ns:t}),value:2},...(e==null?void 0:e.displayName)==Eo.EXERCIZER?[{label:"Exercices interactifs",value:3}]:[],...(e==null?void 0:e.displayName)==Eo.EXERCIZER?[{label:"Exercices à rendre",value:4}]:[],...(e==null?void 0:e.displayName)=="pages"?[{label:"Projets publics",value:5}]:[],...(e==null?void 0:e.displayName)=="pages"?[{label:"Projets internes",value:6}]:[],...(e==null?void 0:e.displayName)==Eo.BLOG?[{label:p("explorer.filter.public",{ns:t}),value:7}]:[]];return f.jsxs(f.Fragment,{children:[f.jsx(B3,{render:()=>ak({workflow:"create",actions:o})?f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(uk,{})}):null,children:f.jsx(q3,{app:e})}),f.jsxs(Wi,{className:"flex-grow-1",children:[f.jsxs(Wi.Col,{sm:"3",lg:"2",xl:"3",className:"border-end pt-16 pe-16 d-none d-lg-block",as:"aside",children:[f.jsx(rk,{}),(d==null?void 0:d.available)&&h&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(ck,{url:h})})]}),f.jsxs(Wi.Col,{sm:"4",md:"8",lg:"6",xl:"9",children:[f.jsx(ek,{options:m}),f.jsx(k6,{}),f.jsx(Y6,{})]}),f.jsx(V6,{}),n&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(lk,{isOpen:r,setIsOpen:i,handleSavePreference:s})}),a&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(dk,{isOpen:a,onCancel:l})}),u&&f.jsx(b.Suspense,{fallback:f.jsx(Ue,{}),children:f.jsx(J6,{isOpen:u,onCancel:c})})]})]})}function hk(){const{init:e}=_t();return e?e?f.jsx(F8,{children:f.jsx(fk,{})}):null:f.jsx(Ue,{position:!1})}const pk=document.getElementById("root"),mk=new ww({queryCache:new Ym({onError:e=>{e==="0090"&&window.location.replace("/auth/login")}}),defaultOptions:{queries:{retry:!1,refetchOnWindowFocus:!1}}});Cy(pk).render(f.jsx(b.StrictMode,{children:f.jsxs(MS,{client:mk,children:[f.jsx(GS,{params:Hs(),children:f.jsx(t4,{children:f.jsx(hk,{})})}),f.jsx($8,{initialIsOpen:!1})]})}));export{_y as $,It as A,ri as B,KE as C,Tk as D,jk as E,Mc as F,ai as G,_k as H,R0 as I,x6 as J,Me as K,Ue as L,kn as M,at as N,si as O,oi as P,Ak as Q,Am as R,P3 as S,aC as T,Ik as U,Ni as V,XE as W,ZE as X,bk as Y,Dk as Z,Ce as _,Ms as a,ak as a0,cf as a1,H6 as a2,Hs as a3,QE as a4,WE as a5,Ek as a6,f3 as a7,xc as a8,Qs as a9,Nk as aa,J4 as ab,Rs as ac,Ve as ad,Ns as ae,Ws as af,Ck as ag,kk as ah,Pk as ai,l5 as aj,Ok as ak,v0 as al,Ob as am,Ya as b,X4 as c,_t as d,wk as e,Fd as f,Z as g,Zt as h,$d as i,f as j,G4 as k,S6 as l,Mk as m,Lk as n,At as o,xk as p,wp as q,b as r,wc as s,zd as t,we as u,Sk as v,Rk as w,E3 as x,Iv as y,H3 as z};
package/dist/version.txt CHANGED
@@ -1 +1 @@
1
- ode-explorer=1.0-feat-explorer-SNAPSHOT 26/09/2023 12:22:41
1
+ ode-explorer=1.0-develop-pedago-SNAPSHOT 26/09/2023 12:37:54
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ode-explorer",
3
- "version": "1.0.0-develop-pedago.202309261221",
3
+ "version": "1.0.0-develop-pedago.202309261237",
4
4
  "description": "Open Digital Education Explorer",
5
5
  "homepage": "https://github.com/opendigitaleducation/explorer#readme",
6
6
  "bugs": {