ode-explorer 1.0.0-dev.202306151715 → 1.0.0-develop-b2school.202306201556
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/Card.js +1 -1
- package/dist/DeleteModal.js +1 -1
- package/dist/EditFolderModal.js +1 -1
- package/dist/EditResourceModal.js +1 -1
- package/dist/EmptyScreenApp.js +1 -1
- package/dist/FoldersList.js +1 -1
- package/dist/ImagePicker.js +1 -1
- package/dist/Library.js +1 -1
- package/dist/MoveModal.js +1 -1
- package/dist/PublishModal.js +1 -1
- package/dist/ResourcesList.js +1 -1
- package/dist/ShareResourceModal.js +1 -1
- package/dist/index.js +12 -12
- package/dist/usePopper.js +1 -1
- package/dist/version.txt +1 -1
- package/package.json +5 -5
package/dist/Card.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as E,e as a,c as e,
|
|
1
|
+
import{r as E,e as a,c as e,t as F,ab as U,ac as q,ad as G,ae as D,af as H,I as J,a5 as K,q as M,ag as Q}from"./index.js";import{T as n}from"./Tooltip.js";const d=E.forwardRef(({app:t,className:h,creatorName:r="tom.mate",isAnimated:x=!1,isFolder:l=!1,isLoading:s=!1,isSelected:m=!1,isShared:p=!1,isPublic:j=!1,name:g="Resource",resourceSrc:i="",updatedAt:v="2 days ago",userSrc:o="",onOpen:u,onSelect:c,messagePublic:N,messageShared:b,...f},$)=>{const{getIconCode:w}=D(),C=a("card",{"placeholder-glow":s,"is-selected":m,"is-animated":x},h),y=a("card-title body text-break text-truncate text-truncate--2 pe-16",{placeholder:s}),I=a("card-text small",{placeholder:s}),O=a("small text-truncate",{placeholder:s}),T=a("d-inline-flex align-items-center gap-8 text-truncate",{placeholder:s}),z=t?w(t):"placeholder",P=a(`color-app-${z}`,{placeholder:s});function k(B){B.stopPropagation(),c==null||c()}const A=l?e.jsx(H,{width:"48",height:"48",className:P}):i?e.jsx("div",{className:"card-image",children:e.jsx(J,{alt:"",src:i,width:"80",height:"80",objectFit:"cover",className:"h-full"})}):e.jsx(K,{app:t,iconFit:"ratio",size:"80",variant:"rounded"}),R=o?e.jsx(M,{alt:r,size:"xs",src:o,variant:"circle",width:"24",height:"24"}):e.jsx(Q,{});return e.jsxs("div",{ref:$,className:C,...f,children:[!s&&e.jsx(F,{"aria-label":"Open Action Bar",className:"z-3",color:"secondary",icon:e.jsx(U,{}),onClick:k,variant:"ghost"}),e.jsx("button",{onClick:u,className:"position-absolute bottom-0 end-0 top-0 start-0 opacity-0 z-1 w-100","aria-label":"Open resource"}),e.jsxs("div",{className:"card-body",children:[A,e.jsxs("div",{children:[e.jsx("h3",{className:y,children:e.jsx("strong",{children:g})}),l?null:e.jsx("p",{className:"card-text small",children:e.jsx("em",{className:I,children:v})})]})]}),l?null:e.jsxs("div",{className:"card-footer gap-16",children:[e.jsxs("div",{className:T,children:[R,e.jsx("p",{className:O,children:r})]}),e.jsxs("div",{className:"d-inline-flex align-items-center gap-8",children:[j&&e.jsx(n,{message:N,placement:"top",children:e.jsx(q,{width:16,height:16})}),p&&e.jsx(n,{message:b,placement:"top",children:e.jsx(G,{width:16,height:16})})]})]})]})});d.displayName="Card";const W=d;export{W as C};
|
package/dist/DeleteModal.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as u,
|
|
1
|
+
import{f as u,z as h,C as x,D as p,m,p as f,u as j,a as y,j as e,M as n,B as i}from"./index.js";function D({onSuccess:s}){const{i18n:l}=u(),o=h(),t=x(),r=p(),{hotToast:a}=m(f);async function d(){try{r?(await o.mutate(),a.success(l("explorer.removed.from.trash"))):(await t.mutate(),a.success(l("explorer.trash.title"))),s==null||s()}catch(c){console.error(c)}}return{isTrashFolder:r,onDelete:d}}function T({isOpen:s,onSuccess:l=()=>({}),onCancel:o=()=>({})}){const{i18n:t}=j(),{isTrashFolder:r,onDelete:a}=D({onSuccess:l});return y.createPortal(e.jsxs(n,{isOpen:s,onModalClose:o,id:"deleteModal",children:[e.jsx(n.Header,{onModalClose:o,children:t(r?"explorer.delete.title":"explorer.trash.title")}),e.jsx(n.Body,{children:e.jsx("p",{className:"body",children:t(r?"explorer.delete.subtitle":"explorer.trash.subtitle")})}),e.jsxs(n.Footer,{children:[e.jsx(i,{color:"tertiary",onClick:o,type:"button",variant:"ghost",children:t("explorer.cancel")}),e.jsx(i,{color:"primary",onClick:a,type:"button",variant:"filled",children:t(r?"explorer.delete":"explorer.trash")})]})]}),document.getElementById("portal"))}export{T as default};
|
package/dist/EditFolderModal.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{G as v,N as B,O as q,P as L,r as I,Q as R,f as U,a as w,j as r,M as s,F as P,U as V,y as _,B as b}from"./index.js";import{u as k}from"./index.esm.js";function z({edit:a,onSuccess:e,onClose:i}){var F;const n=v(),t=B(),m=q(),c=L(),u=a?(F=n[0])==null?void 0:F.name:void 0,{reset:o,register:f,handleSubmit:d,setFocus:p,formState:{errors:x,isSubmitting:h,isDirty:C,isValid:E}}=k({mode:"onChange",values:{name:u||""}}),g=I.useId(),M=async function({name:j}){var y;try{if(a){const l=(y=n[0])==null?void 0:y.parentId,D=n[0].id;await c.mutate({folderId:D,parentId:l,name:j}),o(),e==null||e()}else{const l=(t==null?void 0:t.id)||R.DEFAULT;await m.mutate({name:j,parentId:l}),o(),e==null||e()}}catch(l){console.error(l)}};function $(){o(),i()}return{formId:`createModal_${g}`,errors:x,isSubmitting:h,isDirty:C,isValid:E,register:f,setFocus:p,handleSubmit:d,onCancel:$,onSubmit:M}}function Q({isOpen:a,edit:e,onSuccess:i,onCancel:n}){const{i18n:t}=U(),{isDirty:m,isValid:c,isSubmitting:u,formId:o,onSubmit:f,onCancel:d,handleSubmit:p,register:x,setFocus:h}=z({edit:e,onSuccess:i,onClose:n});return I.useEffect(()=>{a&&h("name")},[a]),w.createPortal(r.jsxs(s,{isOpen:a,onModalClose:d,id:"modal_"+o,children:[r.jsx(s.Header,{onModalClose:d,children:t(e?"explorer.rename.folder":"explorer.create.folder")}),r.jsx(s.Body,{children:r.jsx("form",{id:o,onSubmit:p(f),children:r.jsxs(P,{id:"nameFolder",isRequired:!0,children:[r.jsx(V,{children:t("explorer.create.folder.name")}),r.jsx(_,{type:"text",...x("name",{required:!0}),placeholder:t("explorer.create.folder.name"),size:"md","aria-required":!0})]})})}),r.jsxs(s.Footer,{children:[r.jsx(b,{color:"tertiary",onClick:d,type:"button",variant:"ghost",children:t("explorer.cancel")}),r.jsx(b,{form:o,type:"submit",color:"primary",variant:"filled",disabled:!m||!c||u,children:t(e?"explorer.rename":"explorer.create")})]})]}),document.getElementById("portal"))}export{Q as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as
|
|
1
|
+
import{f as J,k as K,i as z,r as c,m as Q,j as e,p as D,u as Y,a as Z,M as y,H as _,F as d,U as E,y as P,W as ee,B,X as se}from"./index.js";import{I as le}from"./ImagePicker.js";import{u as te}from"./index.esm.js";function re({resource:p,onSuccess:a,onCancel:v}){const{i18n:r}=J(),s=K(),u=z(),{reset:C,register:F,handleSubmit:t,setFocus:w,formState:{errors:m,isSubmitting:I,isValid:$}}=te({mode:"onChange"}),i=c.useId(),[M,x]=c.useState(new Date().getTime()),[n,k]=c.useState(!p.public),[g,h]=c.useState(p.slug||""),[N,b]=c.useState(!1),{hotToast:f}=Q(D),[R,j]=c.useState({name:"",image:u[0].thumbnail}),T=l=>{j(l)},o=()=>{j({name:"",image:""})};function L(l){k(!l),l||(h(""),x(new Date().getTime()))}function U(l){if(!l)return"";const S="àáäâãåăæçèéëêǵḧìíïîḿńǹñòóöôœøṕŕßśșțùúüûǘẃẍÿź·/_,:;",O="aaaaaaaaceeeeghiiiimnnnooooooprssstuuuuuwxyz------",W=new RegExp(S.split("").join("|"),"g"),X=l.toString().toLowerCase().replace(/\s+/g,"-").replace(W,G=>O.charAt(S.indexOf(G))).replace(/&/g,"-and-").replace(/[^\w\\-]+/g,"").replace(/\\-\\-+/g,"-").replace(/^-+/,"").replace(/-+$/,"");h(X)}const V=async function(l){try{await s.mutateAsync({description:l.description,entId:u[0].assetId,name:l.title,public:l.enablePublic,slug:l.safeSlug,trashed:u[0].trashed,thumbnail:R.image}),b(!1),f.success(e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:r("explorer.resource.updated")}),e.jsxs("p",{children:["Titre: ",l.title]}),e.jsxs("p",{children:["Description: ",l.description]}),e.jsxs("p",{children:["Public:"," ",l.enablePublic?r("explorer.enable.public.yes"):r("explorer.enable.public.no")]})]})),a==null||a()}catch(S){b(!0),console.error(S)}};function q(){navigator.clipboard.writeText(`${window.location.origin}/${g}`),f.success(r("explorer.copy.clipboard"))}function A(){C(),v()}const H=`resource_edit_modal_${i}`;return{slug:g,disableSlug:n,formId:H,errors:m,isSubmitting:I,isValid:$,versionSlug:M,correctSlug:N,onPublicChange:L,onSlugChange:U,register:F,setFocus:w,handleSubmit:t,onFormCancel:A,onSubmit:V,handleUploadImage:T,handleDeleteImage:o,onCopyToClipBoard:q}}function ne({isOpen:p,edit:a,onSuccess:v,onCancel:r}){const{i18n:s,appCode:u,currentApp:C}=Y(),t=z()[0],{slug:w,formId:m,isValid:I,isSubmitting:$,disableSlug:i,versionSlug:M,correctSlug:x,register:n,handleSubmit:k,onSubmit:g,handleUploadImage:h,handleDeleteImage:N,onCopyToClipBoard:b,onSlugChange:f,onPublicChange:R}=re({resource:t,onSuccess:v,onCancel:r}),j=`${new Date().getTime()}_${i}`,T=`${M}_slug`;return Z.createPortal(e.jsxs(y,{id:"resource_edit_modal",size:"lg",isOpen:p,onModalClose:r,children:[e.jsx(y.Header,{onModalClose:r,children:s(a?"explorer.resource.editModal.header.edit":"explorer.resource.editModal.header.create")}),e.jsxs(y.Body,{children:[e.jsx(_,{headingStyle:"h4",level:"h3",className:"mb-16",children:s("explorer.resource.editModal.heading.general")}),e.jsxs("form",{id:m,onSubmit:k(g),children:[e.jsxs("div",{className:"d-flex flex-column flex-md-row gap-16 mb-24",children:[e.jsx(le,{app:C,src:t==null?void 0:t.thumbnail,label:s("explorer.imagepicker.label"),addButtonLabel:s("explorer.imagepicker.button.add"),deleteButtonLabel:s("explorer.imagepicker.button.delete"),onUploadImage:h,onDeleteImage:N,className:"align-self-center"}),e.jsxs("div",{className:"col",children:[e.jsxs(d,{id:"title",className:"mb-16",isRequired:!0,children:[e.jsx(E,{children:s("title")}),e.jsx(P,{type:"text",defaultValue:a?t==null?void 0:t.name:"",...n("title",{required:!0}),placeholder:s("explorer.resource.editModal.title.placeholder"),size:"md","aria-required":!0})]}),e.jsxs(d,{id:"description",isOptional:!0,children:[e.jsx(E,{children:s("description")}),e.jsx(P,{type:"text",defaultValue:a?t==null?void 0:t.description:"",...n("description"),placeholder:s("explorer.resource.editModal.description.placeholder"),size:"md"})]})]})]}),e.jsxs(_,{headingStyle:"h4",level:"h3",className:"mb-16",children:[s("explorer.resource.editModal.heading.access"),u]}),e.jsx(D,{type:"info",children:s("explorer.resource.editModal.access.alert")}),e.jsxs(d,{id:"flexSwitchCheckDefault",className:"form-switch d-flex gap-8 mt-16 mb-8",children:[e.jsx(d.Input,{type:"checkbox",role:"switch",...n("enablePublic",{value:t.public,onChange:o=>R(o.target.checked)}),className:"form-check-input mt-0",size:"md"},j),e.jsx(d.Label,{className:"form-check-label mb-0",children:s("explorer.resource.editModal.access.flexSwitchCheckDefault.label")})]}),e.jsx(d,{id:"slug",status:x?"invalid":void 0,children:e.jsxs("div",{className:"d-flex flex-wrap align-items-center gap-4",children:[e.jsxs("div",{children:[window.location.origin,"/"]}),e.jsxs("div",{className:"flex-fill",children:[e.jsx(P,{type:"text",...n("safeSlug",{validate:{required:o=>!o&&!i?s("explorer.slug.name.mandatory"):!0},disabled:i,value:w,onChange:o=>f(o.target.value)}),size:"md",placeholder:s("explorer.resource.editModal.access.url.extension")},T),x&&e.jsx("div",{className:"position-absolute",children:e.jsx(ee,{children:s("explorer.slug.name.error")})})]}),e.jsx(B,{color:"primary",disabled:i,onClick:()=>{b(t.slug)},type:"button",leftIcon:e.jsx(se,{}),variant:"ghost",className:"text-nowrap",children:s("explorer.resource.editModal.access.url.button")})]})})]})]}),e.jsxs(y.Footer,{children:[e.jsx(B,{color:"tertiary",onClick:r,type:"button",variant:"ghost",children:s("explorer.cancel")}),e.jsx(B,{form:m,type:"submit",color:"primary",variant:"filled",disabled:!I||$,children:s(a?"save":"explorer.create")})]})]}),document.getElementById("portal"))}export{ne as default};
|
package/dist/EmptyScreenApp.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{u as s,
|
|
1
|
+
import{u as s,a6 as n,j as a}from"./index.js";import{E as c}from"./EmptyScreen.js";function d(){const{i18n:r,appCode:o,theme:e}=s(),{data:l}=n(),t=l==null?void 0:l.find(i=>i.id==="create"),p=()=>t!=null&&t.available&&(e!=null&&e.is1d)?r("explorer.emptyScreen.blog.txt1d.create"):t!=null&&t.available&&!(e!=null&&e.is1d)?r("explorer.emptyScreen.blog.txt2d.create"):!(t!=null&&t.available)&&(e!=null&&e.is1d)?r("explorer.emptyScreen.blog.txt1d.consultation"):r("explorer.emptyScreen.blog.txt2d.consultation");return a.jsx(c,{imageSrc:`${e==null?void 0:e.bootstrapPath}/images/emptyscreen/illu-${o}.svg`,imageAlt:r("explorer.emptyScreen.app.alt"),title:`${t!=null&&t.available?r("explorer.emptyScreen.blog.title.create"):r("explorer.emptyScreen.blog.title.consultation")}`,text:p()})}export{d as default};
|
package/dist/FoldersList.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{u as S,
|
|
1
|
+
import{u as S,a7 as h,G as j,a8 as f,b as y,a9 as C,j as o,Z as a}from"./index.js";import{C as I}from"./Card.js";import"./Tooltip.js";import"./usePopper.js";const O=()=>{var c,d;const{currentApp:p}=S(),{data:e,isFetching:u}=h(),n=j(),i=f(),{setSelectedFolders:l,setFolderIds:r,openFolder:m}=y();function g(s){i.includes(s.id)?(r(i.filter(t=>t!==s.id)),l(n.filter(t=>t.id!==s.id))):(r([...i,s.id]),l([...n,s]))}const F=C({from:{opacity:0},to:{opacity:1}});return(c=e==null?void 0:e.pages[0])!=null&&c.folders.length?o.jsx(a.ul,{className:"grid ps-0 list-unstyled mb-24",children:(d=e==null?void 0:e.pages[0])==null?void 0:d.folders.map(s=>{const{id:t,name:x}=s;return o.jsx(a.li,{className:"g-col-4",style:{...F},children:o.jsx(I,{app:p,name:x,isFolder:!0,isLoading:u,isSelected:i.includes(s.id),onOpen:()=>m({folder:s,folderId:s.id}),onSelect:()=>g(s)})},t)})}):null};export{O as default};
|
package/dist/ImagePicker.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as s,e as R,c as a,F as d,
|
|
1
|
+
import{r as s,e as R,c as a,F as d,t as p,a3 as L,a4 as E,y as N,q as S,a5 as z}from"./index.js";const u=s.forwardRef(({label:h,addButtonLabel:x="Add image",deleteButtonLabel:v="Delete image",src:j,className:f,app:D,onUploadImage:C,onDeleteImage:I},P)=>{const r=s.useRef(null),[n,o]=s.useState({name:"",image:j||""}),[,c]=s.useState(!1),l=e=>{o({...n,name:"",image:""});const t=e==null?void 0:e[0];if(!t)return;const i={...n,name:t.name,image:URL.createObjectURL(t)};o(i),C(i)},$=()=>{var e;(e=r.current)==null||e.click()},b=()=>{r.current&&(r.current.value="");const e={...n,name:"",image:""};o(e),I()},k=e=>{l(e.target.files)},g=e=>{e.preventDefault(),e.stopPropagation(),c(!0)},m=e=>{e.preventDefault(),e.stopPropagation(),c(!1)},w=e=>{var i;m(e);const t=(i=e.dataTransfer)==null?void 0:i.files;l(t),r.current&&t&&(r.current.files=t)},y=R("image-input",f);return a.jsxs(d,{id:"image-input",className:y,onDragEnter:g,onDragOver:g,onDragLeave:m,onDrop:w,ref:P,children:[a.jsxs("div",{className:"image-input-actions gap-8",children:[a.jsx(p,{"aria-label":x,color:"tertiary",icon:a.jsx(L,{}),onClick:$,type:"button",variant:"ghost"}),a.jsx(p,{"aria-label":v,color:"danger",disabled:!n.image,icon:a.jsx(E,{width:"20",height:"20"}),onClick:b,type:"button",variant:"ghost"})]}),a.jsxs(d.Label,{children:[a.jsx("span",{className:"visually-hidden",children:h}),a.jsx(N,{accept:"image/*",hidden:!0,onChange:k,ref:r,size:"sm",type:"file"}),n.image?a.jsx(S,{alt:n.name,src:n.image,size:"xl"}):a.jsx(z,{app:D,iconFit:"ratio",size:"160",variant:"rounded"})]})]})});u.displayName="ImagePicker";const F=u;export{F as I};
|
package/dist/Library.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as
|
|
1
|
+
import{r as n,c as r,I as x,B as c,d,u as m,j as p}from"./index.js";const t=n.forwardRef(({text:e,textButton:a,src:s,alt:i,url:l},o)=>r.jsx(r.Fragment,{children:r.jsxs("div",{ref:o,className:"p-16",children:[r.jsx(x,{width:"270",height:"140",loading:"lazy",className:"rounded",src:s,alt:i}),r.jsx("p",{className:"m-8",children:e}),r.jsx("a",{href:l,target:"_blank",rel:"noreferrer",children:r.jsx(c,{rightIcon:r.jsx(d,{}),className:"py-0 px-8",variant:"ghost",color:"primary",children:a})})]})}));t.displayName="Library";const g=t,y=({url:e})=>{const{i18n:a,theme:s}=m();return p.jsx(g,{src:`${s==null?void 0:s.bootstrapPath}/images/image-library.svg`,url:e,alt:a("explorer.libray.img.alt"),text:a("explorer.libray.title"),textButton:a("explorer.libray.btn")})};export{y as default};
|
package/dist/MoveModal.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as p,
|
|
1
|
+
import{r as p,E as v,G as I,i as M,b as T,J as y,u as b,K as j,a as F,j as t,M as n,T as S,B as x}from"./index.js";function w({onSuccess:s}){const[a,r]=p.useState(),l=v(),d=I(),c=M(),{foldTreeItem:i,unfoldTreeItem:m}=T(),u=y();async function f(){try{if(!a)throw new Error("explorer.move.selection.empty");await l.mutate(a),await(s==null?void 0:s())}catch(e){console.error(e)}}const h=e=>{for(const o of d)if(e===o.id||e===o.parentId)return!1;for(const o of c)if(e===((o==null?void 0:o.folderIds)&&o.folderIds[0]))return!1;return!0};return{disableSubmit:!a,handleTreeItemSelect:e=>{h(e)?r(e):r(void 0)},handleTreeItemFold:i,handleTreeItemUnfold:async e=>await m(e,u),onMove:()=>{f()}}}function B({isOpen:s,onSuccess:a,onCancel:r}){const{i18n:l}=b(),{handleTreeItemFold:d,handleTreeItemSelect:c,handleTreeItemUnfold:i,onMove:m,disableSubmit:u}=w({onSuccess:a}),f=j();return F.createPortal(t.jsxs(n,{isOpen:s,onModalClose:r,id:"moveModal",children:[t.jsx(n.Header,{onModalClose:r,children:l("explorer.move.title")}),t.jsx(n.Subtitle,{children:l("explorer.move.subtitle")}),t.jsx(n.Body,{children:t.jsx(S,{data:f,onTreeItemSelect:c,onTreeItemFold:d,onTreeItemUnfold:i})}),t.jsxs(n.Footer,{children:[t.jsx(x,{color:"tertiary",onClick:r,type:"button",variant:"ghost",children:l("explorer.cancel")}),t.jsx(x,{color:"primary",onClick:m,type:"button",variant:"filled",disabled:u,children:l("explorer.move")})]})]}),document.getElementById("portal"))}export{B as default};
|
package/dist/PublishModal.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as g,Z as Q,R as X,c as l,_ as ee,e as D,$ as re,a0 as ae,a1 as te,u as M,n as se,k as W,a2 as le,b as ie,a3 as ce,j as r,q as P,f as oe,a as ne,M as w,H as C,F as A,W as F,z as $,B}from"./index.js";import{u as ue}from"./usePopper.js";import{S as U}from"./SelectList.js";import{I as be}from"./ImagePicker.js";import{u as pe}from"./index.esm.js";const Z=({trigger:e,content:t})=>{const[s,a]=g.useState(null),[c,i]=g.useState(null),{styles:n,attributes:m}=ue(s,c,{placement:"bottom-start",modifiers:[{name:"offset",options:{offset:[0,12]}}]}),[h,j]=g.useState(!1),u=Q(h,{from:{opacity:0,y:10},enter:{opacity:1,y:0},leave:{opacity:0,y:10}}),b=()=>{j(o=>!o)},y=X.cloneElement(e,{ref:a,onClick:b,state:h?"selected":"default"});return g.useEffect(()=>{const o=v=>{c&&!c.contains(v.target)&&s&&!s.contains(v.target)&&j(!1)};return document.addEventListener("mousedown",o,!0),document.addEventListener("touchstart",o,!0),()=>{document.removeEventListener("mousedown",o,!0),document.removeEventListener("touchstart",o,!0)}},[c,s]),l.jsxs(l.Fragment,{children:[y,u((o,v)=>l.jsx(l.Fragment,{children:v&&l.jsx(ee.div,{className:D("bg-white shadow rounded-4 d-block show py-12 px-8","bs-tooltip-auto"),ref:i,style:{...n.popper,...o},...m.popper,children:t})}))]})};Z.displayName="Dropdown";const V=Z,J=g.forwardRef(({title:e="",state:t,variant:s,icon:a,size:c="lg",grow:i=!1,badgeContent:n,...m},h)=>{const j=D("dropdown-trigger",t,c,s,i&&"flex-grow-1 justify-content-between");return l.jsxs("button",{ref:h,className:j,...m,type:"button",children:[a&&l.jsx("div",{className:"dropdown-trigger-icon",children:a}),l.jsx("div",{children:e}),n?l.jsx("div",{children:l.jsx("span",{className:"badge text-bg-secondary rounded-pill",children:n})}):l.jsx("div",{className:"dropdown-trigger-carret-icon",children:l.jsx(re,{width:16,height:16})})]})});J.displayName="DropdownTrigger";const H=J,Y=g.forwardRef(({options:e,model:t,disabled:s=!1,placeholderOption:a=!1,...c},i)=>{const{isRequired:n,status:m}=ae(),h=g.useId(),j={...c,id:h,disabled:s,ref:i,className:D(c.className,"form-select c-pointer",{"is-invalid":m==="invalid","is-valid":m==="valid"})};return l.jsx(l.Fragment,{children:l.jsxs("select",{...j,required:n,children:[a&&l.jsx("option",{disabled:!0,selected:t===void 0,children:a}),e==null?void 0:e.map(u=>{const b=typeof u=="object"?u.value:u,y=typeof u=="object"?u.label:u;return l.jsx("option",{value:b,selected:t===b,children:y},b)})]})})});Y.displayName="Select";const L=Y,{http:_}=te.instance();function de({onSuccess:e}){const{user:t,currentApp:s}=M(),[a,c]=g.useState({name:"",image:""}),{hotToast:i}=se(P),n=W(),m=le(),{publishApi:h}=ie(),{register:j,handleSubmit:u,formState:{errors:b,isSubmitting:y,isDirty:o,isValid:v}}=pe({mode:"onChange"}),[S,E]=g.useState([]),[T,q]=g.useState([]);function O(p){c(p)}const f=t?t==null?void 0:t.userId:"";return{selectedResources:n,register:j,handleSubmit:u,formState:{errors:b,isSubmitting:y,isDirty:o,isValid:v},publish:async p=>{try{let x=new Blob;a.image?x=await _.get(a.image,{responseType:"blob"}):n[0].thumbnail&&(x=await _.get(n[0].thumbnail,{responseType:"blob"}));const R=await _.get(`/userbook/avatar/${f}?thumbnail=48x48`,{responseType:"blob"}),d=await _.get(`/directory/user/${f}/attachment-school`,{responseType:"json"}),N={activityType:S,age:[p.ageMin,p.ageMax],application:(s==null?void 0:s.displayName)||"",cover:x,description:p.description,keyWords:p.keyWords,language:p.language,licence:"CC-BY",resourceId:m[0],resourceEntId:n[0].assetId,subjectArea:T,teacherAvatar:R,title:p.title,userId:f,userStructureName:d.name||(t==null?void 0:t.structureNames[0])},K=[ce.BLOG][0],z=await h(K,N);z.success?i.success(r.jsx(he,{result:z}),{duration:1/0}):i.error(r.jsx(G,{}),{duration:1/0}),e==null||e()}catch{i.error(r.jsx(G,{}),{duration:1/0})}},handleDeleteImage:()=>{c({name:"",image:""})},handleUploadImage:O,selectedActivities:S,setSelectedActivities:E,selectedSubjectAreas:T,setSelectedSubjectAreas:q}}function me(){const{i18n:e}=oe(),t=[{value:"bpr.activityType.classroomActivity",label:e("bpr.activityType.classroomActivity")},{value:"bpr.activityType.groupActivity",label:e("bpr.activityType.groupActivity")},{value:"bpr.activityType.personalActivity",label:e("bpr.activityType.personalActivity")},{value:"bpr.activityType.homework",label:e("bpr.activityType.homework")},{value:"bpr.activityType.exercize",label:e("bpr.activityType.exercize")},{value:"bpr.activityType.learningPath",label:e("bpr.activityType.learningPath")},{value:"bpr.activityType.courseElement",label:e("bpr.activityType.courseElement")},{value:"bpr.other",label:e("bpr.other")}],s=[{value:"bpr.subjectArea.artActivity",label:e("bpr.subjectArea.artActivity")},{value:"bpr.subjectArea.readLearning",label:e("bpr.subjectArea.readLearning")},{value:"bpr.subjectArea.chemistry",label:e("bpr.subjectArea.chemistry")},{value:"bpr.subjectArea.law",label:e("bpr.subjectArea.law")},{value:"bpr.subjectArea.worldDiscovery",label:e("bpr.subjectArea.worldDiscovery")},{value:"bpr.subjectArea.economy",label:e("bpr.subjectArea.economy")},{value:"bpr.subjectArea.mediaEducation",label:e("bpr.subjectArea.mediaEducation")},{value:"bpr.subjectArea.musicEducation",label:e("bpr.subjectArea.musicEducation")},{value:"bpr.subjectArea.sportEducation",label:e("bpr.subjectArea.sportEducation")},{value:"bpr.subjectArea.citizenshipEducation",label:e("bpr.subjectArea.citizenshipEducation")},{value:"bpr.subjectArea.geography",label:e("bpr.subjectArea.geography")},{value:"bpr.subjectArea.history",label:e("bpr.subjectArea.history")},{value:"bpr.subjectArea.artHistory",label:e("bpr.subjectArea.artHistory")},{value:"bpr.subjectArea.ComputerScience",label:e("bpr.subjectArea.ComputerScience")},{value:"bpr.subjectArea.languages",label:e("bpr.subjectArea.languages")},{value:"bpr.subjectArea.italian",label:e("bpr.subjectArea.italian")},{value:"bpr.subjectArea.spanish",label:e("bpr.subjectArea.spanish")},{value:"bpr.subjectArea.french",label:e("bpr.subjectArea.french")},{value:"bpr.subjectArea.german",label:e("bpr.subjectArea.german")},{value:"bpr.subjectArea.english",label:e("bpr.subjectArea.english")},{value:"bpr.subjectArea.ancientLanguages",label:e("bpr.subjectArea.ancientLanguages")},{value:"bpr.subjectArea.literature",label:e("bpr.subjectArea.literature")},{value:"bpr.subjectArea.mathematics",label:e("bpr.subjectArea.mathematics")},{value:"bpr.subjectArea.vocationalGuidance",label:e("bpr.subjectArea.vocationalGuidance")},{value:"bpr.subjectArea.philosohppy",label:e("bpr.subjectArea.philosohppy")},{value:"bpr.subjectArea.physics",label:e("bpr.subjectArea.physics")},{value:"bpr.subjectArea.politicalSscience",label:e("bpr.subjectArea.politicalSscience")},{value:"bpr.subjectArea.sociology",label:e("bpr.subjectArea.sociology")},{value:"bpr.subjectArea.biology",label:e("bpr.subjectArea.biology")},{value:"bpr.subjectArea.geology",label:e("bpr.subjectArea.geology")},{value:"bpr.subjectArea.technology",label:e("bpr.subjectArea.technology")},{value:"bpr.other",label:e("bpr.other")}],a=[{value:"de_DE",label:e("de_DE")},{value:"en_EN",label:e("en_EN")},{value:"ar_DZ",label:e("ar_DZ")},{value:"es_ES",label:e("es_ES")},{value:"fr_FR",label:e("fr_FR")},{value:"it_IT",label:e("it_IT")},{value:"ja_JP",label:e("ja_JP")},{value:"zh_CN",label:e("zh_CN")},{value:"pt_PT",label:e("pt_PT")},{value:"ru_RU",label:e("ru_RU")},{value:"bpr.other",label:e("bpr.other")}];return{activityTypeOptions:t,subjectAreaOptions:s,languageOptions:a,ageOptions:["3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18"]}}function fe({isOpen:e,onSuccess:t,onCancel:s}){var x,R;const{i18n:a,currentApp:c}=M(),{register:i,handleSubmit:n,publish:m,formState:{isDirty:h,isValid:j},handleUploadImage:u,selectedActivities:b,setSelectedActivities:y,selectedSubjectAreas:o,setSelectedSubjectAreas:v,handleDeleteImage:S}=de({onSuccess:t}),E=W(),{activityTypeOptions:T,subjectAreaOptions:q,languageOptions:O,ageOptions:f}=me(),I=a("bpr.form.publication.language"),k=a("bpr.form.publication.age.min"),p=a("bpr.form.publication.age.max");return ne.createPortal(r.jsxs(w,{isOpen:e,onModalClose:s,id:"libraryModal",size:"lg",children:[r.jsx(w.Header,{onModalClose:s,children:a("bpr.publish")}),r.jsx(w.Subtitle,{children:a("bpr.form.tip")}),r.jsxs(w.Body,{children:[r.jsx(C,{headingStyle:"h4",level:"h3",className:"mb-16",children:a("bpr.form.publication.heading.general")}),r.jsxs("form",{id:"libraryModalForm",onSubmit:n(m),children:[r.jsxs(A,{id:"title",className:"mb-16",isRequired:!0,children:[r.jsx(F,{requiredText:"",children:a("bpr.form.publication.title")}),r.jsx($,{type:"text",defaultValue:(x=E[0])==null?void 0:x.name,...i("title",{required:!0}),placeholder:a("bpr.form.publication.title.placeholder"),size:"md","aria-required":!0})]}),r.jsxs("div",{className:"mb-24",children:[r.jsx("div",{className:"form-label",children:a("bpr.form.publication.cover.title")}),r.jsx(be,{app:c,src:(R=E[0])==null?void 0:R.thumbnail,label:a("bpr.form.publication.cover.upload.label"),addButtonLabel:a("bpr.form.publication.cover.upload.add"),deleteButtonLabel:a("bpr.form.publication.cover.upload.remove"),onUploadImage:u,onDeleteImage:S,className:"align-self-center"})]}),r.jsxs(A,{id:"description",isRequired:!0,children:[r.jsx(F,{requiredText:"",children:a("bpr.form.publication.description")}),r.jsx($,{type:"text",...i("description",{required:!0}),placeholder:a("bpr.form.publication.description.placeholder"),size:"md","aria-required":!0})]}),r.jsx("hr",{}),r.jsx(C,{headingStyle:"h4",level:"h3",className:"mb-16",children:a("bpr.form.publication.heading.infos")}),r.jsxs("div",{className:"d-flex flex-column flex-md-row gap-16 row mb-24",children:[r.jsx("div",{className:"col d-flex",children:r.jsx(V,{trigger:r.jsx(H,{title:a("bpr.form.publication.type"),size:"md",grow:!0}),content:r.jsx(U,{options:T,model:b,onChange:d=>y(d)})})}),r.jsx("div",{className:"col d-flex",children:r.jsx(V,{trigger:r.jsx(H,{title:a("bpr.form.publication.discipline"),size:"md",grow:!0}),content:r.jsx(U,{options:q,model:o,onChange:d=>v(d)})})}),r.jsx("div",{className:"col",children:r.jsx(A,{id:"language",isRequired:!0,children:r.jsx(L,{...i("language",{required:!0,validate:d=>d!==I}),options:O,placeholderOption:I,defaultValue:I,"aria-required":!0})})})]}),r.jsxs("div",{className:"mb-24",children:[r.jsx("label",{htmlFor:"",className:"form-label",children:a("bpr.form.publication.age")}),r.jsxs("div",{className:"d-flex",children:[r.jsx("div",{className:"me-16",children:r.jsx(A,{id:"ageMin",isRequired:!0,children:r.jsx(L,{...i("ageMin",{required:!0,validate:(d,N)=>parseInt(d)<=parseInt(N.ageMax)}),options:f,placeholderOption:k,defaultValue:k,"aria-required":!0})})}),r.jsx("div",{children:r.jsx(A,{id:"ageMax",isRequired:!0,children:r.jsx(L,{...i("ageMax",{required:!0,validate:(d,N)=>parseInt(d)>=parseInt(N.ageMin)}),options:f,placeholderOption:p,defaultValue:p,"aria-required":!0})})})]})]}),r.jsx("div",{className:"mb-24",children:r.jsxs(A,{id:"keywords",isOptional:!0,children:[r.jsx(F,{children:a("bpr.form.publication.keywords")}),r.jsx($,{type:"text",...i("keyWords"),size:"md",placeholder:a("bpr.form.publication.keywords.placeholder")})]})}),r.jsx("hr",{}),r.jsx(C,{headingStyle:"h4",level:"h3",className:"mb-16",children:a("bpr.form.publication.licence.text")}),r.jsxs("ul",{className:"mb-12",children:[r.jsxs("li",{children:[a("bpr.form.publication.licence.text.1"),r.jsx("img",{className:"ms-8 d-inline-block",src:"/assets/themes/entcore-css-lib/images/cc-by-nc-sa.svg",alt:`Icone licence Creative
|
|
1
|
+
import{r as g,Y as Q,R as X,c as l,Z as ee,e as D,_ as re,$ as ae,a0 as te,u as M,m as se,i as W,a1 as le,b as ie,a2 as ce,j as r,p as P,f as oe,a as ne,M as w,H as k,F as A,U as F,y as $,B}from"./index.js";import{u as ue}from"./usePopper.js";import{S as U}from"./SelectList.js";import{I as be}from"./ImagePicker.js";import{u as pe}from"./index.esm.js";const Z=({trigger:e,content:t})=>{const[s,a]=g.useState(null),[c,i]=g.useState(null),{styles:n,attributes:m}=ue(s,c,{placement:"bottom-start",modifiers:[{name:"offset",options:{offset:[0,12]}}]}),[h,j]=g.useState(!1),u=Q(h,{from:{opacity:0,y:10},enter:{opacity:1,y:0},leave:{opacity:0,y:10}}),b=()=>{j(o=>!o)},y=X.cloneElement(e,{ref:a,onClick:b,state:h?"selected":"default"});return g.useEffect(()=>{const o=v=>{c&&!c.contains(v.target)&&s&&!s.contains(v.target)&&j(!1)};return document.addEventListener("mousedown",o,!0),document.addEventListener("touchstart",o,!0),()=>{document.removeEventListener("mousedown",o,!0),document.removeEventListener("touchstart",o,!0)}},[c,s]),l.jsxs(l.Fragment,{children:[y,u((o,v)=>l.jsx(l.Fragment,{children:v&&l.jsx(ee.div,{className:D("bg-white shadow rounded-4 d-block show py-12 px-8","bs-tooltip-auto"),ref:i,style:{...n.popper,...o},...m.popper,children:t})}))]})};Z.displayName="Dropdown";const V=Z,J=g.forwardRef(({title:e="",state:t,variant:s,icon:a,size:c="lg",grow:i=!1,badgeContent:n,...m},h)=>{const j=D("dropdown-trigger",t,c,s,i&&"flex-grow-1 justify-content-between");return l.jsxs("button",{ref:h,className:j,...m,type:"button",children:[a&&l.jsx("div",{className:"dropdown-trigger-icon",children:a}),l.jsx("div",{children:e}),n?l.jsx("div",{children:l.jsx("span",{className:"badge text-bg-secondary rounded-pill",children:n})}):l.jsx("div",{className:"dropdown-trigger-carret-icon",children:l.jsx(re,{width:16,height:16})})]})});J.displayName="DropdownTrigger";const H=J,Y=g.forwardRef(({options:e,model:t,disabled:s=!1,placeholderOption:a=!1,...c},i)=>{const{isRequired:n,status:m}=ae(),h=g.useId(),j={...c,id:h,disabled:s,ref:i,className:D(c.className,"form-select c-pointer",{"is-invalid":m==="invalid","is-valid":m==="valid"})};return l.jsx(l.Fragment,{children:l.jsxs("select",{...j,required:n,children:[a&&l.jsx("option",{disabled:!0,selected:t===void 0,children:a}),e==null?void 0:e.map(u=>{const b=typeof u=="object"?u.value:u,y=typeof u=="object"?u.label:u;return l.jsx("option",{value:b,selected:t===b,children:y},b)})]})})});Y.displayName="Select";const L=Y,{http:_}=te.instance();function de({onSuccess:e}){const{user:t,currentApp:s}=M(),[a,c]=g.useState({name:"",image:""}),{hotToast:i}=se(P),n=W(),m=le(),{publishApi:h}=ie(),{register:j,handleSubmit:u,formState:{errors:b,isSubmitting:y,isDirty:o,isValid:v}}=pe({mode:"onChange"}),[S,E]=g.useState([]),[T,O]=g.useState([]);function q(p){c(p)}const f=t?t==null?void 0:t.userId:"";return{selectedResources:n,register:j,handleSubmit:u,formState:{errors:b,isSubmitting:y,isDirty:o,isValid:v},publish:async p=>{try{let x=new Blob;a.image?x=await _.get(a.image,{responseType:"blob"}):n[0].thumbnail&&(x=await _.get(n[0].thumbnail,{responseType:"blob"}));const R=await _.get(`/userbook/avatar/${f}?thumbnail=48x48`,{responseType:"blob"}),d=await _.get(`/directory/user/${f}/attachment-school`,{responseType:"json"}),N={activityType:S,age:[p.ageMin,p.ageMax],application:(s==null?void 0:s.displayName)||"",cover:x,description:p.description,keyWords:p.keyWords,language:p.language,licence:"CC-BY",resourceId:m[0],resourceEntId:n[0].assetId,subjectArea:T,teacherAvatar:R,title:p.title,userId:f,userStructureName:d.name||(t==null?void 0:t.structureNames[0])},K=[ce.BLOG][0],z=await h(K,N);z.success?i.success(r.jsx(he,{result:z}),{duration:1/0}):i.error(r.jsx(G,{}),{duration:1/0}),e==null||e()}catch{i.error(r.jsx(G,{}),{duration:1/0})}},handleDeleteImage:()=>{c({name:"",image:""})},handleUploadImage:q,selectedActivities:S,setSelectedActivities:E,selectedSubjectAreas:T,setSelectedSubjectAreas:O}}function me(){const{i18n:e}=oe(),t=[{value:"bpr.activityType.classroomActivity",label:e("bpr.activityType.classroomActivity")},{value:"bpr.activityType.groupActivity",label:e("bpr.activityType.groupActivity")},{value:"bpr.activityType.personalActivity",label:e("bpr.activityType.personalActivity")},{value:"bpr.activityType.homework",label:e("bpr.activityType.homework")},{value:"bpr.activityType.exercize",label:e("bpr.activityType.exercize")},{value:"bpr.activityType.learningPath",label:e("bpr.activityType.learningPath")},{value:"bpr.activityType.courseElement",label:e("bpr.activityType.courseElement")},{value:"bpr.other",label:e("bpr.other")}],s=[{value:"bpr.subjectArea.artActivity",label:e("bpr.subjectArea.artActivity")},{value:"bpr.subjectArea.readLearning",label:e("bpr.subjectArea.readLearning")},{value:"bpr.subjectArea.chemistry",label:e("bpr.subjectArea.chemistry")},{value:"bpr.subjectArea.law",label:e("bpr.subjectArea.law")},{value:"bpr.subjectArea.worldDiscovery",label:e("bpr.subjectArea.worldDiscovery")},{value:"bpr.subjectArea.economy",label:e("bpr.subjectArea.economy")},{value:"bpr.subjectArea.mediaEducation",label:e("bpr.subjectArea.mediaEducation")},{value:"bpr.subjectArea.musicEducation",label:e("bpr.subjectArea.musicEducation")},{value:"bpr.subjectArea.sportEducation",label:e("bpr.subjectArea.sportEducation")},{value:"bpr.subjectArea.citizenshipEducation",label:e("bpr.subjectArea.citizenshipEducation")},{value:"bpr.subjectArea.geography",label:e("bpr.subjectArea.geography")},{value:"bpr.subjectArea.history",label:e("bpr.subjectArea.history")},{value:"bpr.subjectArea.artHistory",label:e("bpr.subjectArea.artHistory")},{value:"bpr.subjectArea.ComputerScience",label:e("bpr.subjectArea.ComputerScience")},{value:"bpr.subjectArea.languages",label:e("bpr.subjectArea.languages")},{value:"bpr.subjectArea.italian",label:e("bpr.subjectArea.italian")},{value:"bpr.subjectArea.spanish",label:e("bpr.subjectArea.spanish")},{value:"bpr.subjectArea.french",label:e("bpr.subjectArea.french")},{value:"bpr.subjectArea.german",label:e("bpr.subjectArea.german")},{value:"bpr.subjectArea.english",label:e("bpr.subjectArea.english")},{value:"bpr.subjectArea.ancientLanguages",label:e("bpr.subjectArea.ancientLanguages")},{value:"bpr.subjectArea.literature",label:e("bpr.subjectArea.literature")},{value:"bpr.subjectArea.mathematics",label:e("bpr.subjectArea.mathematics")},{value:"bpr.subjectArea.vocationalGuidance",label:e("bpr.subjectArea.vocationalGuidance")},{value:"bpr.subjectArea.philosohppy",label:e("bpr.subjectArea.philosohppy")},{value:"bpr.subjectArea.physics",label:e("bpr.subjectArea.physics")},{value:"bpr.subjectArea.politicalSscience",label:e("bpr.subjectArea.politicalSscience")},{value:"bpr.subjectArea.sociology",label:e("bpr.subjectArea.sociology")},{value:"bpr.subjectArea.biology",label:e("bpr.subjectArea.biology")},{value:"bpr.subjectArea.geology",label:e("bpr.subjectArea.geology")},{value:"bpr.subjectArea.technology",label:e("bpr.subjectArea.technology")},{value:"bpr.other",label:e("bpr.other")}],a=[{value:"de_DE",label:e("de_DE")},{value:"en_EN",label:e("en_EN")},{value:"ar_DZ",label:e("ar_DZ")},{value:"es_ES",label:e("es_ES")},{value:"fr_FR",label:e("fr_FR")},{value:"it_IT",label:e("it_IT")},{value:"ja_JP",label:e("ja_JP")},{value:"zh_CN",label:e("zh_CN")},{value:"pt_PT",label:e("pt_PT")},{value:"ru_RU",label:e("ru_RU")},{value:"bpr.other",label:e("bpr.other")}];return{activityTypeOptions:t,subjectAreaOptions:s,languageOptions:a,ageOptions:["3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18"]}}function fe({isOpen:e,onSuccess:t,onCancel:s}){var x,R;const{i18n:a,currentApp:c}=M(),{register:i,handleSubmit:n,publish:m,formState:{isDirty:h,isValid:j},handleUploadImage:u,selectedActivities:b,setSelectedActivities:y,selectedSubjectAreas:o,setSelectedSubjectAreas:v,handleDeleteImage:S}=de({onSuccess:t}),E=W(),{activityTypeOptions:T,subjectAreaOptions:O,languageOptions:q,ageOptions:f}=me(),I=a("bpr.form.publication.language"),C=a("bpr.form.publication.age.min"),p=a("bpr.form.publication.age.max");return ne.createPortal(r.jsxs(w,{isOpen:e,onModalClose:s,id:"libraryModal",size:"lg",children:[r.jsx(w.Header,{onModalClose:s,children:a("bpr.publish")}),r.jsx(w.Subtitle,{children:a("bpr.form.tip")}),r.jsxs(w.Body,{children:[r.jsx(k,{headingStyle:"h4",level:"h3",className:"mb-16",children:a("bpr.form.publication.heading.general")}),r.jsxs("form",{id:"libraryModalForm",onSubmit:n(m),children:[r.jsxs(A,{id:"title",className:"mb-16",isRequired:!0,children:[r.jsx(F,{requiredText:"",children:a("bpr.form.publication.title")}),r.jsx($,{type:"text",defaultValue:(x=E[0])==null?void 0:x.name,...i("title",{required:!0}),placeholder:a("bpr.form.publication.title.placeholder"),size:"md","aria-required":!0})]}),r.jsxs("div",{className:"mb-24",children:[r.jsx("div",{className:"form-label",children:a("bpr.form.publication.cover.title")}),r.jsx(be,{app:c,src:(R=E[0])==null?void 0:R.thumbnail,label:a("bpr.form.publication.cover.upload.label"),addButtonLabel:a("bpr.form.publication.cover.upload.add"),deleteButtonLabel:a("bpr.form.publication.cover.upload.remove"),onUploadImage:u,onDeleteImage:S,className:"align-self-center"})]}),r.jsxs(A,{id:"description",isRequired:!0,children:[r.jsx(F,{requiredText:"",children:a("bpr.form.publication.description")}),r.jsx($,{type:"text",...i("description",{required:!0}),placeholder:a("bpr.form.publication.description.placeholder"),size:"md","aria-required":!0})]}),r.jsx("hr",{}),r.jsx(k,{headingStyle:"h4",level:"h3",className:"mb-16",children:a("bpr.form.publication.heading.infos")}),r.jsxs("div",{className:"d-flex flex-column flex-md-row gap-16 row mb-24",children:[r.jsx("div",{className:"col d-flex",children:r.jsx(V,{trigger:r.jsx(H,{title:a("bpr.form.publication.type"),size:"md",grow:!0}),content:r.jsx(U,{options:T,model:b,onChange:d=>y(d)})})}),r.jsx("div",{className:"col d-flex",children:r.jsx(V,{trigger:r.jsx(H,{title:a("bpr.form.publication.discipline"),size:"md",grow:!0}),content:r.jsx(U,{options:O,model:o,onChange:d=>v(d)})})}),r.jsx("div",{className:"col",children:r.jsx(A,{id:"language",isRequired:!0,children:r.jsx(L,{...i("language",{required:!0,validate:d=>d!==I}),options:q,placeholderOption:I,defaultValue:I,"aria-required":!0})})})]}),r.jsxs("div",{className:"mb-24",children:[r.jsx("label",{htmlFor:"",className:"form-label",children:a("bpr.form.publication.age")}),r.jsxs("div",{className:"d-flex",children:[r.jsx("div",{className:"me-16",children:r.jsx(A,{id:"ageMin",isRequired:!0,children:r.jsx(L,{...i("ageMin",{required:!0,validate:(d,N)=>parseInt(d)<=parseInt(N.ageMax)}),options:f,placeholderOption:C,defaultValue:C,"aria-required":!0})})}),r.jsx("div",{children:r.jsx(A,{id:"ageMax",isRequired:!0,children:r.jsx(L,{...i("ageMax",{required:!0,validate:(d,N)=>parseInt(d)>=parseInt(N.ageMin)}),options:f,placeholderOption:p,defaultValue:p,"aria-required":!0})})})]})]}),r.jsx("div",{className:"mb-24",children:r.jsxs(A,{id:"keywords",isOptional:!0,children:[r.jsx(F,{children:a("bpr.form.publication.keywords")}),r.jsx($,{type:"text",...i("keyWords"),size:"md",placeholder:a("bpr.form.publication.keywords.placeholder")})]})}),r.jsx("hr",{}),r.jsx(k,{headingStyle:"h4",level:"h3",className:"mb-16",children:a("bpr.form.publication.licence.text")}),r.jsxs("ul",{className:"mb-12",children:[r.jsxs("li",{children:[a("bpr.form.publication.licence.text.1"),r.jsx("img",{className:"ms-8 d-inline-block",src:"/assets/themes/entcore-css-lib/images/cc-by-nc-sa.svg",alt:`Icone licence Creative
|
|
2
2
|
Commons`})]}),r.jsx("li",{children:a("bpr.form.publication.licence.text.2")})]}),r.jsx(P,{type:"info",className:"mb-12",children:a("bpr.form.publication.licence.text.3")}),r.jsx(P,{type:"warning",children:a("bpr.form.publication.licence.text.4")})]})]}),r.jsxs(w.Footer,{children:[r.jsx(B,{color:"tertiary",onClick:s,type:"button",variant:"ghost",children:a("cancel")}),r.jsx(B,{form:"libraryModalForm",type:"submit",color:"primary",variant:"filled",disabled:!h||!j||(b==null?void 0:b.length)===0||(o==null?void 0:o.length)===0,children:a("bpr.form.submit")})]})]}),document.getElementById("portal"))}function he({result:e}){const{i18n:t}=M();return r.jsxs(r.Fragment,{children:[r.jsx("h3",{className:"pt-24",children:t("bpr.form.publication.response.success.title")}),r.jsx("p",{className:"pt-24",children:t("bpr.form.publication.response.success.content.1")}),r.jsx("p",{className:"pt-24",children:t("bpr.form.publication.response.success.content.2")}),e.details.front_url&&r.jsx("p",{className:"pt-24 pb-24",children:r.jsx("a",{className:"button right-magnet",href:e.details.front_url,target:"_blank",rel:"noreferrer",children:t("bpr.form.publication.response.success.button")})})]})}function G(){const{i18n:e}=M();return r.jsxs(r.Fragment,{children:[r.jsx("h3",{className:"pt-24",children:e("bpr.form.publication.response.error.title")}),r.jsx("p",{className:"pt-24 pb-24",children:r.jsx("strong",{children:e("bpr.form.publication.response.error.content")})})]})}export{G as PublishModalError,he as PublishModalSuccess,fe as default};
|
package/dist/ResourcesList.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{u as
|
|
1
|
+
import{u as T,a7 as $,g as B,a1 as E,i as w,b as z,D,a9 as J,r as Z,e as q,j as s,R as g,Z as h,aa as G,B as H}from"./index.js";import{C as K}from"./Card.js";import"./Tooltip.js";import"./usePopper.js";function Q(o){const{rights:n,creatorId:a}=o;return n.filter(l=>!l.includes(a)).length>=1}const _=()=>{const{currentApp:o,currentLanguage:n,i18n:a}=T(),{data:i,isFetching:l,fetchNextPage:x}=$(),d=B(),r=E(),m=w(),{setSelectedResources:u,setResourceIds:p,openResource:f,setResourceIsTrash:R}=z(),S=D(),I=J({from:{opacity:0},to:{opacity:1}}),j=d.pagination.startIdx+d.pagination.pageSize-1<(d.pagination.maxIdx||0),b=Z.useCallback(()=>{x()},[]),y=e=>{S?(R(!0),p([e.id]),u([e])):f(e)};function N(e){r.includes(e.id)?(p(r.filter(c=>c!==e.id)),u(m.filter(c=>c.id!==e.id))):(p([...r,e.id]),u([...m,e]))}const C=q("grid ps-0 list-unstyled");return s.jsxs(g.Fragment,{children:[s.jsx(h.ul,{className:C,children:i==null?void 0:i.pages.map((e,c)=>s.jsx(g.Fragment,{children:e.resources.map(t=>{const{id:P,creatorName:k,creatorId:A,name:F,thumbnail:v,updatedAt:L}=t,M=Q(t),O=G(L).locale(n).fromNow();return s.jsx(h.li,{className:"g-col-4",style:{...I},children:s.jsx(K,{app:o,className:"c-pointer",creatorName:k,isPublic:t.public,isSelected:r.includes(t.id),isLoading:l,isShared:M,messagePublic:a("tooltip.public"),messageShared:a("tooltip.shared"),name:F,onOpen:()=>y(t),onSelect:()=>N(t),resourceSrc:v,updatedAt:O,userSrc:`/userbook/avatar/${A}`})},P)})},c))}),j&&s.jsx("div",{className:"d-grid gap-2 col-4 mx-auto my-24",children:s.jsx(H,{type:"button",color:"secondary",variant:"filled",onClick:b,children:a("explorer.see.more")})})]})};export{_ as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r,o as F,e as W,c as C,f as fe,j as e,H as se,h as je,A as ye,u as ce,i as ve,k as de,l as Se,m as Ne,n as we,p as ae,q as Ie,a as Be,M as G,V as Z,s as oe,B as V,t as ie,v as Ae,w as Ce,F as ee,x as Me,y as Re,z as Ee,L as $e}from"./index.js";import{S as Te}from"./SelectList.js";import{T as Fe}from"./Tooltip.js";import"./usePopper.js";function Ue(l,d){const[n,u]=r.useState(l);return r.useEffect(()=>{const h=setTimeout(()=>{u(l)},d||500);return()=>{clearTimeout(h)}},[l,d]),n}function De(){const[l,d]=r.useState(!1);r.useEffect(()=>{n()},[]);const n=r.useCallback(async()=>{const u=await F.session().isAdml();d(u)},[]);return{isAdml:l}}const he=r.forwardRef(({label:l,disabled:d=!1,checked:n=!1,indeterminate:u=!1,...h},S)=>{const b=r.useRef(null);r.useImperativeHandle(S,()=>({...b.current})),r.useEffect(()=>{b.current.indeterminate=u},[b,u]);const j=r.useMemo(()=>h.id?h.id:(Math.floor(Math.random()*999999999999)+1e12).toString(),[h.id]),m={...h,type:"checkbox",checked:n,disabled:d,ref:b,className:W(h.className,"form-check-input c-pointer"),id:j};return C.jsxs("div",{className:"position-relative d-inline-block",children:[C.jsx("input",{...m}),l&&C.jsx("label",{className:"ms-8 form-check-label",htmlFor:m.id,children:l})]})});he.displayName="Checkbox";const ne=he,ue=r.forwardRef(({model:l,icon:d,label:n=!1,disabled:u=!1,...h},S)=>{const b=r.useMemo(()=>h.id?h.id:(Math.floor(Math.random()*999999999999)+1e12).toString(),[h.id]),j={...h,type:"radio",checked:l===h.value,disabled:u,ref:S,className:W(h.className,"form-check-input c-pointer",d&&"d-none"),id:b};return C.jsxs("div",{className:W("position-relative form-check",d&&"ps-0"),children:[C.jsx("input",{...j}),d&&C.jsx("label",{htmlFor:j.id,className:W("c-pointer",l!==h.value&&"text-muted"),children:d}),!d&&n&&C.jsx("label",{className:"form-check-label",htmlFor:j.id,children:n})]})});ue.displayName="Radio";const le=ue;function Pe({radioPublicationValue:l,onRadioPublicationChange:d}){const{i18n:n}=fe();return e.jsxs(e.Fragment,{children:[e.jsx("hr",{}),e.jsx(se,{headingStyle:"h4",level:"h3",className:"mb-16",children:n("explorer.publication.steps")}),e.jsx(le,{label:n("explorer.immediat.publication"),id:"publication-now",name:"publication",value:"IMMEDIATE",model:l,onChange:u=>d(u.target.value)}),e.jsx(le,{label:n("explorer.validate.publication"),id:"publication-validate",name:"publication",value:"RESTRAINT",model:l,onChange:u=>d(u.target.value)})]})}function Le({radioPublicationValue:l,onRadioPublicationChange:d}){const{app:n}=je();return n===ye.BLOG?e.jsx(Pe,{radioPublicationValue:l,onRadioPublicationChange:d}):e.jsx(e.Fragment,{})}function ze({onSuccess:l,payloadUpdatePublishType:d}){const{appCode:n,i18n:u}=ce(),{user:h,avatar:S}=ve(),[b,j]=r.useState(r.useId()),[m,k]=r.useState({rights:[],visibleBookmarks:[],visibleGroups:[],visibleUsers:[]}),[y,N]=r.useState([]),[U,H]=r.useState(""),[w,q]=r.useState(!1),[M,_]=r.useState(""),I=Ue(M,500),[J,K]=r.useState([]),[R,D]=r.useState([]),[P,Q]=r.useState(!1),[E,O]=r.useState(!1),{isAdml:B}=De(),A=de(),X=Se();r.useEffect(()=>{Y()},[]),r.useEffect(()=>{be(I)},[I]);const Y=r.useCallback(async()=>{var a;const t=await F.share().getActionsForApp(n);N(t);const c=await F.share().getRightsForResource(n,(a=A[0])==null?void 0:a.assetId);k(c)},[]),p=(t,c)=>{k(({rights:a,...g})=>{var te,re;const s=[...a],i=s.findIndex(x=>x.id===t.id),$=y.filter(x=>x.id===c)[0];if(s[i].actions.findIndex(x=>x.id===c)>-1){let x=s[i].actions.filter(f=>f.id!==c);const v=y.filter(f=>{var T;return(T=f.requires)==null?void 0:T.includes(c)});x=x.filter(f=>!v.find(T=>T.id===f.id)),s[i]={...s[i],actions:x}}else{const x=y.filter(v=>{var f;return((f=$.requires)==null?void 0:f.includes(v.id))&&!s[i].actions.find(T=>T.id===v.id)});s[i]={...s[i],actions:[...s[i].actions,$,...x]}}return t.type==="sharebookmark"&&((te=s[i].users)==null||te.forEach(x=>{const v=s.findIndex(f=>f.id===x.id);s[v]={...s[v],actions:s[i].actions}}),(re=s[i].groups)==null||re.forEach(x=>{const v=s.findIndex(f=>f.id===x.id);s[v]={...s[v],actions:s[i].actions}})),{rights:s,...g}})},L=Ne(),{hotToast:o}=we(Ie),z=async()=>{var t;try{await L.mutate({entId:(t=A[0])==null?void 0:t.assetId,shares:m.rights}),await X.mutate(d),o.success(u("explorer.shared.status.saved")),l==null||l()}catch(c){console.error("Failed to save share",c),o.error(u("explorer.shared.status.error"))}},me=t=>{k(c=>({...c,rights:m.rights.filter(a=>{var g,s;return a.id!==t.id&&!((g=t.users)!=null&&g.find(i=>i.id===a.id))&&!((s=t.groups)!=null&&s.find(i=>i.id===a.id))})}))},pe=t=>{_(t.target.value)},xe=()=>!E&&!B&&I.length>0&&R.length===0||!E&&B&&I.length>3&&R.length===0,ke=()=>B&&M.length<3,ge=()=>E&&M.length>0,be=async t=>{var c;if(O(!0),!B&&t.length>=1||B&&t.length>=3){const a=await F.share().searchShareSubjects(n,(c=A[0])==null?void 0:c.assetId,t);K(a);const g=a.filter(s=>!m.rights.find(i=>i.id===s.id)).filter(s=>!(s.type==="user"&&s.id===A[0].creatorId)).map(s=>({value:s.id,label:s.displayName,icon:s.type==="sharebookmark"?ae:null}));D(g)}else D([]),Promise.resolve();O(!1)};return{currentIsAuthor:()=>{for(const t of A)if(t.creatorId!==(h==null?void 0:h.userId))return!1;return!0},idBookmark:b,myAvatar:S,shareRights:m,shareRightActions:y,showBookmarkInput:w,searchInputValue:M,searchResults:R,bookmarkName:U,showBookmarkMembers:P,debouncedSearchInputValue:I,searchPending:E,setBookmarkName:H,saveBookmark:async t=>{try{const c=await F.directory().saveBookmarks(t,{users:m.rights.filter(a=>a.type==="user").map(a=>a.id),groups:m.rights.filter(a=>a.type==="group").map(a=>a.id),bookmarks:m.rights.filter(a=>a.type==="sharebookmark").map(a=>a.id)});o.success(u("explorer.bookmarked.status.saved")),k(a=>({...a,visibleBookmarks:[...a.visibleBookmarks,{displayName:t,id:c.id}]})),j(b+new Date().getTime().toString()),q(!1)}catch(c){console.error("Failed to save bookmark",c),o.error(u("explorer.bookmarked.status.error"))}},canSave:()=>!0,toggleBookmarkInput:q,handleActionCheckbox:p,handleShare:z,handleDeleteRow:me,handleSearchInputChange:pe,handleSearchResultsChange:async t=>{const c=J.find(g=>g.id===t[0]),a=[{id:"read",displayName:"read"},{id:"comment",displayName:"comment"}];if(c){let g=[];if(c.type==="sharebookmark"){const s=await F.directory().getBookMarkById(c.id);g.push({...s,type:"sharebookmark",avatarUrl:"",directoryUrl:"",actions:a}),s==null||s.users.filter(i=>!m.rights.find($=>$.id===i.id)).forEach(i=>{g.push({...i,type:"user",avatarUrl:"",directoryUrl:"",actions:a,isBookmarkMember:!0})}),s.groups.filter(i=>!m.rights.find($=>$.id===i.id)).forEach(i=>{g.push({...i,type:"group",avatarUrl:"",directoryUrl:"",actions:a,isBookmarkMember:!0})})}else g=[{...c,actions:[{id:"read",displayName:"read"},{id:"comment",displayName:"comment"}]}];k({...m,rights:[...m.rights,...g]}),D(R.filter(s=>s.value!==t[0]))}},showSearchNoResults:xe,showSearchAdmlHint:ke,showSearchLoading:ge,handleBookmarkMembersToggle:()=>{Q(!P)},hasRight:(t,c)=>t.actions.filter(a=>c.id===a.id).length>0,showShareRightLine:t=>t.isBookmarkMember&&P||!t.isBookmarkMember}}function Ve(){const l=de(),{assetId:d,description:n,thumbnail:u,name:h,public:S,trashed:b,slug:j,"publish-type":m}=l[0],[k,y]=r.useState(m||"IMMEDIATE"),[N,U]=r.useState({description:n,entId:d,name:h,public:!!S,slug:j||"",thumbnail:u,trashed:b,"publish-type":m});return r.useEffect(()=>{k&&U(w=>({...w,"publish-type":k}))},[k]),{radioPublicationValue:k,payloadUpdatePublishType:N,handleRadioPublicationChange:async w=>{y(w)}}}function es({isOpen:l,onSuccess:d,onCancel:n}){const{payloadUpdatePublishType:u,radioPublicationValue:h,handleRadioPublicationChange:S}=Ve(),{myAvatar:b,idBookmark:j,shareRights:m,shareRightActions:k,showBookmarkInput:y,searchResults:N,bookmarkName:U,showBookmarkMembers:H,searchPending:w,currentIsAuthor:q,setBookmarkName:M,saveBookmark:_,canSave:I,toggleBookmarkInput:J,handleActionCheckbox:K,handleShare:R,handleDeleteRow:D,handleSearchInputChange:P,handleSearchResultsChange:Q,showSearchNoResults:E,showSearchAdmlHint:O,showSearchLoading:B,handleBookmarkMembersToggle:A,hasRight:X,showShareRightLine:Y}=ze({payloadUpdatePublishType:u,onSuccess:d,onCancel:n}),{i18n:p}=ce(),L=r.useRef(null);return Be.createPortal(e.jsxs(G,{id:"share_modal",size:"lg",isOpen:l,onModalClose:n,children:[e.jsx(G.Header,{onModalClose:n,children:p("share.title")}),e.jsxs(G.Body,{children:[e.jsx(se,{headingStyle:"h4",level:"h3",className:"mb-16",children:p("explorer.modal.share.usersWithAccess")}),e.jsx("div",{className:"table-responsive",children:e.jsxs("table",{className:"table border align-middle mb-0",children:[e.jsx("thead",{className:"bg-secondary text-white",children:e.jsxs("tr",{children:[e.jsx("th",{scope:"col",className:"w-32",children:e.jsx(Z,{children:p("explorer.modal.share.avatar.shared.alt")})}),e.jsx("th",{scope:"col",children:e.jsx(Z,{children:p("explorer.modal.share.search.placeholder")})}),k.map(o=>e.jsx("th",{scope:"col",className:"text-center",children:p(o.displayName)},o.displayName)),e.jsx("th",{scope:"col",children:e.jsx(Z,{children:p("close")})})]})}),e.jsxs("tbody",{children:[q()&&e.jsxs("tr",{children:[e.jsx("th",{scope:"row",children:e.jsx(oe,{alt:p("explorer.modal.share.avatar.me.alt"),size:"xs",src:b,variant:"circle"})}),e.jsx("td",{children:p("share.me")}),k.map(o=>e.jsx("td",{style:{width:"80px"},className:"text-center",children:e.jsx(ne,{checked:!0,disabled:!0})},o.displayName)),e.jsx("td",{})]}),m==null?void 0:m.rights.map(o=>Y(o)&&e.jsxs("tr",{className:o.isBookmarkMember?"bg-light":"",children:[e.jsxs("td",{children:[o.type!=="sharebookmark"&&e.jsx(oe,{alt:p("explorer.modal.share.avatar.shared.alt"),size:"xs",src:o.avatarUrl,variant:"circle"}),o.type==="sharebookmark"&&e.jsx(ae,{})]}),e.jsx("td",{children:e.jsxs("div",{className:"d-flex",children:[o.type==="sharebookmark"&&e.jsx(V,{color:"tertiary",rightIcon:e.jsx(ie,{title:"Show",className:"w-16 min-w-0",style:{transition:"rotate 0.2s ease-out",rotate:H?"-180deg":"0deg"}}),type:"button",variant:"ghost",className:"fw-normal ps-0",onClick:A,children:o.displayName}),o.type!=="sharebookmark"&&o.displayName]})}),k.map(z=>e.jsx("td",{style:{width:"80px"},className:"text-center",children:e.jsx(ne,{checked:X(o,z),onChange:()=>K(o,z.id)})},z.displayName)),e.jsx("td",{children:!o.isBookmarkMember&&e.jsx(Ae,{"aria-label":"Delete",color:"tertiary",icon:e.jsx(Ce,{}),type:"button",variant:"ghost",title:"Delete",onClick:()=>D(o)})})]},o.id))]})]})}),e.jsxs("div",{className:"mt-16",children:[e.jsx(V,{color:"tertiary",leftIcon:e.jsx(ae,{}),rightIcon:e.jsx(ie,{title:"Show",className:"w-16 min-w-0",style:{transition:"rotate 0.2s ease-out",rotate:y?"-180deg":"0deg"}}),type:"button",variant:"ghost",className:"fw-normal",onClick:()=>J(!y),children:p("share.save.sharebookmark")}),y&&e.jsx("div",{className:"mt-16",children:e.jsxs(ee,{id:"bookmarkName",className:"d-flex flex-wrap align-items-center gap-16",children:[e.jsx("div",{className:"flex-fill",children:e.jsx(ee.Input,{ref:L,onChange:()=>{M(()=>{var o;return((o=L.current)==null?void 0:o.value)||""})},placeholder:p("explorer.modal.share.sharebookmark.placeholder"),size:"sm",type:"text"},j)}),e.jsx(V,{type:"button",color:"primary",variant:"ghost",disabled:U.length===0,leftIcon:e.jsx(Me,{}),onClick:()=>{_(L.current.value)},className:"text-nowrap",children:p("explorer.modal.share.sharebookmark.save")})]})})]}),e.jsx("hr",{}),e.jsxs(se,{headingStyle:"h4",level:"h3",className:"mb-16 d-flex align-items-center",children:[e.jsx("div",{className:"me-8",children:p("explorer.modal.share.search")}),e.jsx(Fe,{message:"Vos favoris de partage s’affichent en priorité dans votre liste lorsque vous recherchez un groupe ou une personne, vous pouvez les retrouver dans l’annuaire.",placement:"top",children:e.jsx(Re,{className:"c-pointer",height:"18"})})]}),e.jsxs(ee,{className:"d-flex align-items-center",id:"search",children:[e.jsx(Ee,{className:"max-w-512",noValidationIcon:!0,placeholder:O()?p("explorer.search.adml.hint"):p("explorer.modal.share.search.placeholder"),size:"md",type:"search",onChange:P}),B()&&e.jsxs("div",{className:"d-flex align-items-center p-4",children:[e.jsx($e,{isLoading:w}),e.jsx("span",{className:"ps-4",children:p("explorer.search.pending")})]}),E()&&e.jsx("div",{className:"p-4",children:p("portal.no.result")})]}),(N==null?void 0:N.length)>0&&e.jsx("div",{className:"position-absolute w-100 max-w-512 z-1 bg-white shadow rounded-4 d-block show py-12 px-8",children:e.jsx(Te,{options:N,hideCheckbox:!0,isMonoSelection:!0,onChange:Q})}),e.jsx(Le,{radioPublicationValue:h,onRadioPublicationChange:S})]}),e.jsxs(G.Footer,{children:[e.jsx(V,{type:"button",color:"tertiary",variant:"ghost",onClick:n,children:p("explorer.cancel")}),e.jsx(V,{type:"button",color:"primary",variant:"filled",onClick:R,disabled:!I(),children:p("share")})]})]}),document.getElementById("portal"))}export{es as default};
|
|
1
|
+
import{r,o as F,e as W,c as C,f as fe,j as e,H as se,g as je,A as ye,u as ce,h as ve,i as de,k as Se,l as Ne,m as we,n as ae,p as Ie,a as Be,M as G,V as Z,q as oe,B as z,s as ie,t as Ae,v as Ce,F as ee,w as Me,x as Re,y as Ee,L as $e}from"./index.js";import{S as Te}from"./SelectList.js";import{T as Fe}from"./Tooltip.js";import"./usePopper.js";function Ue(l,d){const[n,u]=r.useState(l);return r.useEffect(()=>{const h=setTimeout(()=>{u(l)},d||500);return()=>{clearTimeout(h)}},[l,d]),n}function De(){const[l,d]=r.useState(!1);r.useEffect(()=>{n()},[]);const n=r.useCallback(async()=>{const u=await F.session().isAdml();d(u)},[]);return{isAdml:l}}const he=r.forwardRef(({label:l,disabled:d=!1,checked:n=!1,indeterminate:u=!1,...h},S)=>{const b=r.useRef(null);r.useImperativeHandle(S,()=>({...b.current})),r.useEffect(()=>{b.current.indeterminate=u},[b,u]);const j=r.useMemo(()=>h.id?h.id:(Math.floor(Math.random()*999999999999)+1e12).toString(),[h.id]),m={...h,type:"checkbox",checked:n,disabled:d,ref:b,className:W(h.className,"form-check-input c-pointer"),id:j};return C.jsxs("div",{className:"position-relative d-inline-block",children:[C.jsx("input",{...m}),l&&C.jsx("label",{className:"ms-8 form-check-label",htmlFor:m.id,children:l})]})});he.displayName="Checkbox";const ne=he,ue=r.forwardRef(({model:l,icon:d,label:n=!1,disabled:u=!1,...h},S)=>{const b=r.useMemo(()=>h.id?h.id:(Math.floor(Math.random()*999999999999)+1e12).toString(),[h.id]),j={...h,type:"radio",checked:l===h.value,disabled:u,ref:S,className:W(h.className,"form-check-input c-pointer",d&&"d-none"),id:b};return C.jsxs("div",{className:W("position-relative form-check",d&&"ps-0"),children:[C.jsx("input",{...j}),d&&C.jsx("label",{htmlFor:j.id,className:W("c-pointer",l!==h.value&&"text-muted"),children:d}),!d&&n&&C.jsx("label",{className:"form-check-label",htmlFor:j.id,children:n})]})});ue.displayName="Radio";const le=ue;function Pe({radioPublicationValue:l,onRadioPublicationChange:d}){const{i18n:n}=fe();return e.jsxs(e.Fragment,{children:[e.jsx("hr",{}),e.jsx(se,{headingStyle:"h4",level:"h3",className:"mb-16",children:n("explorer.publication.steps")}),e.jsx(le,{label:n("explorer.immediat.publication"),id:"publication-now",name:"publication",value:"IMMEDIATE",model:l,onChange:u=>d(u.target.value)}),e.jsx(le,{label:n("explorer.validate.publication"),id:"publication-validate",name:"publication",value:"RESTRAINT",model:l,onChange:u=>d(u.target.value)})]})}function Le({radioPublicationValue:l,onRadioPublicationChange:d}){const{app:n}=je();return n===ye.BLOG?e.jsx(Pe,{radioPublicationValue:l,onRadioPublicationChange:d}):e.jsx(e.Fragment,{})}function Ve({onSuccess:l,payloadUpdatePublishType:d}){const{appCode:n,i18n:u}=ce(),{user:h,avatar:S}=ve(),[b,j]=r.useState(r.useId()),[m,k]=r.useState({rights:[],visibleBookmarks:[],visibleGroups:[],visibleUsers:[]}),[y,N]=r.useState([]),[U,H]=r.useState(""),[w,q]=r.useState(!1),[M,_]=r.useState(""),I=Ue(M,500),[J,K]=r.useState([]),[R,D]=r.useState([]),[P,Q]=r.useState(!1),[E,O]=r.useState(!1),{isAdml:B}=De(),A=de(),X=Se();r.useEffect(()=>{Y()},[]),r.useEffect(()=>{be(I)},[I]);const Y=r.useCallback(async()=>{var a;const t=await F.share().getActionsForApp(n);N(t);const c=await F.share().getRightsForResource(n,(a=A[0])==null?void 0:a.assetId);k(c)},[]),p=(t,c)=>{k(({rights:a,...g})=>{var te,re;const s=[...a],i=s.findIndex(x=>x.id===t.id),$=y.filter(x=>x.id===c)[0];if(s[i].actions.findIndex(x=>x.id===c)>-1){let x=s[i].actions.filter(f=>f.id!==c);const v=y.filter(f=>{var T;return(T=f.requires)==null?void 0:T.includes(c)});x=x.filter(f=>!v.find(T=>T.id===f.id)),s[i]={...s[i],actions:x}}else{const x=y.filter(v=>{var f;return((f=$.requires)==null?void 0:f.includes(v.id))&&!s[i].actions.find(T=>T.id===v.id)});s[i]={...s[i],actions:[...s[i].actions,$,...x]}}return t.type==="sharebookmark"&&((te=s[i].users)==null||te.forEach(x=>{const v=s.findIndex(f=>f.id===x.id);s[v]={...s[v],actions:s[i].actions}}),(re=s[i].groups)==null||re.forEach(x=>{const v=s.findIndex(f=>f.id===x.id);s[v]={...s[v],actions:s[i].actions}})),{rights:s,...g}})},L=Ne(),{hotToast:o}=we(Ie),V=async()=>{var t;try{await L.mutate({entId:(t=A[0])==null?void 0:t.assetId,shares:m.rights}),await X.mutate(d),o.success(u("explorer.shared.status.saved")),l==null||l()}catch(c){console.error("Failed to save share",c),o.error(u("explorer.shared.status.error"))}},me=t=>{k(c=>({...c,rights:m.rights.filter(a=>{var g,s;return a.id!==t.id&&!((g=t.users)!=null&&g.find(i=>i.id===a.id))&&!((s=t.groups)!=null&&s.find(i=>i.id===a.id))})}))},pe=t=>{_(t.target.value)},xe=()=>!E&&!B&&I.length>0&&R.length===0||!E&&B&&I.length>3&&R.length===0,ke=()=>B&&M.length<3,ge=()=>E&&M.length>0,be=async t=>{var c;if(O(!0),!B&&t.length>=1||B&&t.length>=3){const a=await F.share().searchShareSubjects(n,(c=A[0])==null?void 0:c.assetId,t);K(a);const g=a.filter(s=>!m.rights.find(i=>i.id===s.id)).filter(s=>!(s.type==="user"&&s.id===A[0].creatorId)).map(s=>({value:s.id,label:s.displayName,icon:s.type==="sharebookmark"?ae:null}));D(g)}else D([]),Promise.resolve();O(!1)};return{currentIsAuthor:()=>{for(const t of A)if(t.creatorId!==(h==null?void 0:h.userId))return!1;return!0},idBookmark:b,myAvatar:S,shareRights:m,shareRightActions:y,showBookmarkInput:w,searchInputValue:M,searchResults:R,bookmarkName:U,showBookmarkMembers:P,debouncedSearchInputValue:I,searchPending:E,setBookmarkName:H,saveBookmark:async t=>{try{const c=await F.directory().saveBookmarks(t,{users:m.rights.filter(a=>a.type==="user").map(a=>a.id),groups:m.rights.filter(a=>a.type==="group").map(a=>a.id),bookmarks:m.rights.filter(a=>a.type==="sharebookmark").map(a=>a.id)});o.success(u("explorer.bookmarked.status.saved")),k(a=>({...a,visibleBookmarks:[...a.visibleBookmarks,{displayName:t,id:c.id}]})),j(b+new Date().getTime().toString()),q(!1)}catch(c){console.error("Failed to save bookmark",c),o.error(u("explorer.bookmarked.status.error"))}},canSave:()=>!0,toggleBookmarkInput:q,handleActionCheckbox:p,handleShare:V,handleDeleteRow:me,handleSearchInputChange:pe,handleSearchResultsChange:async t=>{const c=J.find(g=>g.id===t[0]),a=[{id:"read",displayName:"read"},{id:"comment",displayName:"comment"}];if(c){let g=[];if(c.type==="sharebookmark"){const s=await F.directory().getBookMarkById(c.id);g.push({...s,type:"sharebookmark",avatarUrl:"",directoryUrl:"",actions:a}),s==null||s.users.filter(i=>!m.rights.find($=>$.id===i.id)).forEach(i=>{g.push({...i,type:"user",avatarUrl:"",directoryUrl:"",actions:a,isBookmarkMember:!0})}),s.groups.filter(i=>!m.rights.find($=>$.id===i.id)).forEach(i=>{g.push({...i,type:"group",avatarUrl:"",directoryUrl:"",actions:a,isBookmarkMember:!0})})}else g=[{...c,actions:[{id:"read",displayName:"read"},{id:"comment",displayName:"comment"}]}];k({...m,rights:[...m.rights,...g]}),D(R.filter(s=>s.value!==t[0]))}},showSearchNoResults:xe,showSearchAdmlHint:ke,showSearchLoading:ge,handleBookmarkMembersToggle:()=>{Q(!P)},hasRight:(t,c)=>t.actions.filter(a=>c.id===a.id).length>0,showShareRightLine:t=>t.isBookmarkMember&&P||!t.isBookmarkMember}}function ze(){const l=de(),{assetId:d,description:n,thumbnail:u,name:h,public:S,trashed:b,slug:j,"publish-type":m}=l[0],[k,y]=r.useState(m||"IMMEDIATE"),[N,U]=r.useState({description:n,entId:d,name:h,public:!!S,slug:j||"",thumbnail:u,trashed:b,"publish-type":m});return r.useEffect(()=>{k&&U(w=>({...w,"publish-type":k}))},[k]),{radioPublicationValue:k,payloadUpdatePublishType:N,handleRadioPublicationChange:async w=>{y(w)}}}function es({isOpen:l,onSuccess:d,onCancel:n}){const{payloadUpdatePublishType:u,radioPublicationValue:h,handleRadioPublicationChange:S}=ze(),{myAvatar:b,idBookmark:j,shareRights:m,shareRightActions:k,showBookmarkInput:y,searchResults:N,bookmarkName:U,showBookmarkMembers:H,searchPending:w,currentIsAuthor:q,setBookmarkName:M,saveBookmark:_,canSave:I,toggleBookmarkInput:J,handleActionCheckbox:K,handleShare:R,handleDeleteRow:D,handleSearchInputChange:P,handleSearchResultsChange:Q,showSearchNoResults:E,showSearchAdmlHint:O,showSearchLoading:B,handleBookmarkMembersToggle:A,hasRight:X,showShareRightLine:Y}=Ve({payloadUpdatePublishType:u,onSuccess:d,onCancel:n}),{i18n:p}=ce(),L=r.useRef(null);return Be.createPortal(e.jsxs(G,{id:"share_modal",size:"lg",isOpen:l,onModalClose:n,children:[e.jsx(G.Header,{onModalClose:n,children:p("share.title")}),e.jsxs(G.Body,{children:[e.jsx(se,{headingStyle:"h4",level:"h3",className:"mb-16",children:p("explorer.modal.share.usersWithAccess")}),e.jsx("div",{className:"table-responsive",children:e.jsxs("table",{className:"table border align-middle mb-0",children:[e.jsx("thead",{className:"bg-secondary text-white",children:e.jsxs("tr",{children:[e.jsx("th",{scope:"col",className:"w-32",children:e.jsx(Z,{children:p("explorer.modal.share.avatar.shared.alt")})}),e.jsx("th",{scope:"col",children:e.jsx(Z,{children:p("explorer.modal.share.search.placeholder")})}),k.map(o=>e.jsx("th",{scope:"col",className:"text-center",children:p(o.displayName)},o.displayName)),e.jsx("th",{scope:"col",children:e.jsx(Z,{children:p("close")})})]})}),e.jsxs("tbody",{children:[q()&&e.jsxs("tr",{children:[e.jsx("th",{scope:"row",children:e.jsx(oe,{alt:p("explorer.modal.share.avatar.me.alt"),size:"xs",src:b,variant:"circle"})}),e.jsx("td",{children:p("share.me")}),k.map(o=>e.jsx("td",{style:{width:"80px"},className:"text-center",children:e.jsx(ne,{checked:!0,disabled:!0})},o.displayName)),e.jsx("td",{})]}),m==null?void 0:m.rights.map(o=>Y(o)&&e.jsxs("tr",{className:o.isBookmarkMember?"bg-light":"",children:[e.jsxs("td",{children:[o.type!=="sharebookmark"&&e.jsx(oe,{alt:p("explorer.modal.share.avatar.shared.alt"),size:"xs",src:o.avatarUrl,variant:"circle"}),o.type==="sharebookmark"&&e.jsx(ae,{})]}),e.jsx("td",{children:e.jsxs("div",{className:"d-flex",children:[o.type==="sharebookmark"&&e.jsx(z,{color:"tertiary",rightIcon:e.jsx(ie,{title:"Show",className:"w-16 min-w-0",style:{transition:"rotate 0.2s ease-out",rotate:H?"-180deg":"0deg"}}),type:"button",variant:"ghost",className:"fw-normal ps-0",onClick:A,children:o.displayName}),o.type!=="sharebookmark"&&o.displayName]})}),k.map(V=>e.jsx("td",{style:{width:"80px"},className:"text-center",children:e.jsx(ne,{checked:X(o,V),onChange:()=>K(o,V.id)})},V.displayName)),e.jsx("td",{children:!o.isBookmarkMember&&e.jsx(Ae,{"aria-label":"Delete",color:"tertiary",icon:e.jsx(Ce,{}),type:"button",variant:"ghost",title:"Delete",onClick:()=>D(o)})})]},o.id))]})]})}),e.jsxs("div",{className:"mt-16",children:[e.jsx(z,{color:"tertiary",leftIcon:e.jsx(ae,{}),rightIcon:e.jsx(ie,{title:"Show",className:"w-16 min-w-0",style:{transition:"rotate 0.2s ease-out",rotate:y?"-180deg":"0deg"}}),type:"button",variant:"ghost",className:"fw-normal",onClick:()=>J(!y),children:p("share.save.sharebookmark")}),y&&e.jsx("div",{className:"mt-16",children:e.jsxs(ee,{id:"bookmarkName",className:"d-flex flex-wrap align-items-center gap-16",children:[e.jsx("div",{className:"flex-fill",children:e.jsx(ee.Input,{ref:L,onChange:()=>{M(()=>{var o;return((o=L.current)==null?void 0:o.value)||""})},placeholder:p("explorer.modal.share.sharebookmark.placeholder"),size:"sm",type:"text"},j)}),e.jsx(z,{type:"button",color:"primary",variant:"ghost",disabled:U.length===0,leftIcon:e.jsx(Me,{}),onClick:()=>{_(L.current.value)},className:"text-nowrap",children:p("explorer.modal.share.sharebookmark.save")})]})})]}),e.jsx("hr",{}),e.jsxs(se,{headingStyle:"h4",level:"h3",className:"mb-16 d-flex align-items-center",children:[e.jsx("div",{className:"me-8",children:p("explorer.modal.share.search")}),e.jsx(Fe,{message:"Vos favoris de partage s’affichent en priorité dans votre liste lorsque vous recherchez un groupe ou une personne, vous pouvez les retrouver dans l’annuaire.",placement:"top",children:e.jsx(Re,{className:"c-pointer",height:"18"})})]}),e.jsxs(ee,{className:"d-flex align-items-center",id:"search",children:[e.jsx(Ee,{className:"max-w-512",noValidationIcon:!0,placeholder:O()?p("explorer.search.adml.hint"):p("explorer.modal.share.search.placeholder"),size:"md",type:"search",onChange:P}),B()&&e.jsxs("div",{className:"d-flex align-items-center p-4",children:[e.jsx($e,{isLoading:w}),e.jsx("span",{className:"ps-4",children:p("explorer.search.pending")})]}),E()&&e.jsx("div",{className:"p-4",children:p("portal.no.result")})]}),(N==null?void 0:N.length)>0&&e.jsx("div",{className:"position-absolute w-100 max-w-512 z-1 bg-white shadow rounded-4 d-block show py-12 px-8",children:e.jsx(Te,{options:N,hideCheckbox:!0,isMonoSelection:!0,onChange:Q})}),e.jsx(Le,{radioPublicationValue:h,onRadioPublicationChange:S})]}),e.jsxs(G.Footer,{children:[e.jsx(z,{type:"button",color:"tertiary",variant:"ghost",onClick:n,children:p("explorer.cancel")}),e.jsx(z,{type:"button",color:"primary",variant:"filled",onClick:R,disabled:!I(),children:p("share")})]})]}),document.getElementById("portal"))}export{es as default};
|