efficient-shell 11.4.0 → 11.5.0

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.
Files changed (33) hide show
  1. package/README.md +5 -0
  2. package/dist/{Browser-XMJFN62W.js → Browser-URFWAJYZ.js} +14 -14
  3. package/dist/{Documents-763OJV7I.js → Documents-Y62EQJWN.js} +10 -10
  4. package/dist/{Files-LOJ6PPTE.js → Files-NXY7XRZD.js} +17 -17
  5. package/dist/{Notepad-ZAOFX5GU.js → Notepad-LYK7OAGU.js} +9 -9
  6. package/dist/{Preview-BYFMM2S5.js → Preview-ZKPVPYYL.js} +25 -25
  7. package/dist/{Spreadsheet-CQ5FWKAQ.js → Spreadsheet-BPW2TLVQ.js} +12 -12
  8. package/dist/apps/index.js +1 -1
  9. package/dist/bin/media-host-check.js +1 -1
  10. package/dist/bin/ui-check.js +1 -1
  11. package/dist/{chunk-M4IASUEE.js → chunk-2PGR2276.js} +1 -1
  12. package/dist/{chunk-QGWKM7C3.js → chunk-EVX7AZII.js} +2 -2
  13. package/dist/chunk-GBATZZX7.js +1 -0
  14. package/dist/chunk-LDZQJLMC.js +3 -0
  15. package/dist/chunk-M66ACZXQ.js +5 -0
  16. package/dist/{chunk-O7RR2ZZ2.js → chunk-OA54HARK.js} +6 -6
  17. package/dist/{chunk-5SBCAYBH.js → chunk-QALPUJR2.js} +1 -1
  18. package/dist/{chunk-KC4NOKZ6.js → chunk-XKGEI6NL.js} +2 -2
  19. package/dist/forms/BorderInput.d.ts +2 -2
  20. package/dist/forms/BorderInput.js +1 -1
  21. package/dist/forms/BrandAssetEditor.js +1 -1
  22. package/dist/forms/IconPicker.d.ts +18 -1
  23. package/dist/forms/IconPicker.js +1 -1
  24. package/dist/forms/MediaLibrary.js +1 -1
  25. package/dist/forms/MediaUploadField.js +1 -1
  26. package/dist/index.js +77 -77
  27. package/dist/telemetry/index.js +1 -1
  28. package/dist/ui/index.js +1 -1
  29. package/dist/version.js +1 -1
  30. package/package.json +1 -1
  31. package/dist/chunk-ALTBTO3Z.js +0 -4
  32. package/dist/chunk-T3DN2QBM.js +0 -1
  33. package/dist/chunk-WL4U4MTQ.js +0 -4
@@ -1,10 +1,10 @@
1
- import{Tree as e,TreeRow as n,TreeGroup as l}from"./chunk-NRALUW6P.js";import{ImageLightbox as a}from"./chunk-P7H2DXJB.js";import{MarqueeBox as i}from"./chunk-IC72MGON.js";import{Drawer as r}from"./chunk-V6Y4OC6K.js";import{EmptyState as t}from"./chunk-QVZKRROQ.js";import{DescriptionList as o}from"./chunk-SACUSHVN.js";import{Breadcrumbs as d}from"./chunk-XYECIBVX.js";import{ROOT_KEY as s,mediaLibraryMenu as c}from"./chunk-MS5APD3V.js";import{useMediaMoveItems as u}from"./chunk-OPN4I565.js";import{MediaUploadGrid as m}from"./chunk-E3EJWNNK.js";import{MediaUsedInList as h}from"./chunk-NZ34BQKH.js";import{RenameField as p}from"./chunk-WPCNJ4UL.js";import{NativeSelect as f}from"./chunk-XFH64VIG.js";import{useGridSelection as g}from"./chunk-VLKDWKVR.js";import{useMarquee as v}from"./chunk-OLFYNMTD.js";import{Segmented as k}from"./chunk-S4FPYCUU.js";import{copyToClipboard as y}from"./chunk-TMMNCXQT.js";import{Checkbox_default as b}from"./chunk-CGZBDI6C.js";import{useContextMenu as w,ContextMenu as N}from"./chunk-AIJ6OR6X.js";import{Banner as x}from"./chunk-ZGOHRLXG.js";import{Input_default as C}from"./chunk-HNUKXGYP.js";import{DropdownMenu as I}from"./chunk-NZISMTQE.js";import{IconButton_default as D}from"./chunk-LE5LWALR.js";import{useFileIntake as j,FileIntakeAlert as S}from"./chunk-JTMEFXRL.js";import{ColoredBadge as z}from"./chunk-OKHKY3ZZ.js";import{Button_default as O}from"./chunk-EOVXFXVV.js";import{buttonClasses as T}from"./chunk-UQYNPYF4.js";import{Icon as F}from"./chunk-2UO47XB4.js";import{Tooltip as L}from"./chunk-NJN5IKWO.js";import{usePlotWidth as P}from"./chunk-MAFUXCPZ.js";import{useShellStrings as E}from"./chunk-GDQJBQ5B.js";import{useRef as A,useMemo as M,useCallback as R,useState as U,useEffect as K}from"react";import{jsxs as B,Fragment as V,jsx as X}from"react/jsx-runtime";var J="application/x-efficient-media-files",H="application/x-efficient-media-folder",G="application/x-efficient-media-file";function Q(e){if(!e||!Array.from(e.types).includes(G))return null;try{const n=JSON.parse(e.getData(G));if(n&&"string"==typeof n.id&&"string"==typeof n.url&&"string"==typeof n.name&&("image"===n.kind||"video"===n.kind))return{id:n.id,url:n.url,kind:n.kind,name:n.name}}catch{}return null}var W={type:"all",use:"any",sort:"newest"},Y={lock:/* @__PURE__ */X(F,{name:"lock","aria-hidden":"true",className:"h-4 w-4"}),folder:/* @__PURE__ */X(F,{name:"folder","aria-hidden":"true",className:"h-4 w-4"}),folderOpen:/* @__PURE__ */X(F,{name:"folder-open","aria-hidden":"true",className:"h-4 w-4"}),folderPlus:/* @__PURE__ */X(F,{name:"folder-plus","aria-hidden":"true",className:"h-4 w-4"}),trash:/* @__PURE__ */X(F,{name:"trash","aria-hidden":"true",className:"h-4 w-4"}),upload:/* @__PURE__ */X(F,{name:"upload","aria-hidden":"true",className:"h-4 w-4"}),search:/* @__PURE__ */X(F,{name:"search","aria-hidden":"true",className:"h-4 w-4"}),grid:/* @__PURE__ */X(F,{name:"grid","aria-hidden":"true",className:"h-4 w-4"}),list:/* @__PURE__ */X(F,{name:"list","aria-hidden":"true",className:"h-4 w-4"}),more:/* @__PURE__ */X(F,{name:"more","aria-hidden":"true",className:"h-4 w-4"}),copy:/* @__PURE__ */X(F,{name:"copy","aria-hidden":"true",className:"h-4 w-4"}),edit:/* @__PURE__ */X(F,{name:"edit","aria-hidden":"true",className:"h-4 w-4"}),swap:/* @__PURE__ */X(F,{name:"swap","aria-hidden":"true",className:"h-4 w-4"}),crop:/* @__PURE__ */X(F,{name:"crop","aria-hidden":"true",className:"h-4 w-4"}),external:/* @__PURE__ */X(F,{name:"external","aria-hidden":"true",className:"h-4 w-4"}),undo:/* @__PURE__ */X(F,{name:"undo","aria-hidden":"true",className:"h-4 w-4"})},Z={link:/* @__PURE__ */X(F,{name:"link","aria-hidden":"true",className:"h-3 w-3"}),email:/* @__PURE__ */X(F,{name:"email","aria-hidden":"true",className:"h-3 w-3"}),lock:/* @__PURE__ */X(F,{name:"lock","aria-hidden":"true",className:"h-3 w-3"}),clock:/* @__PURE__ */X(F,{name:"clock","aria-hidden":"true",className:"h-3 w-3"})};function $(F){const{mode:Q="manage",layout:$="auto",location:q,onLocationChange:_,folders:ee,products:ne,allFilesCount:le,trashCount:ae,files:ie,query:re,onQueryChange:te,filters:oe=W,onFiltersChange:de,extraFilters:se,view:ce="grid",onViewChange:ue,selectedIds:me,onSelectionChange:he,usedIn:pe,denied:fe={},accept:ge="image/*,video/*",maxSizeBytes:ve,busy:ke,progress:ye,onUpload:be,onNewFolder:we,onRename:Ne,onMove:xe,onTrash:Ce,onDeleteFolder:Ie,onRestore:De,onDeleteForever:je,onEmptyTrash:Se,onReplace:ze,onCropEdit:Oe,onOpenInDesign:Te,onChoose:Fe,onCancel:Le,pickNote:Pe,onDragOut:Ee,className:Ae=""}=F,Me=E().mediaLibrary,Re=E().media,Ue="pick"===Q,Ke=!Ue,Be=A(null),Ve=P(Be,"phone"===$?343:1200),Xe="phone"===$||"auto"===$&&Ve<640,Je=M(()=>function(e=[]){const n=/* @__PURE__ */new Map,l=(e,a)=>{for(const i of e){const e=[...a,i];n.set(i.id,{node:i,path:e}),i.children&&l(i.children,e)}};return l(e,[]),n}(ne),[ne]),He=M(()=>new Map(ee.map(e=>[e.id,e])),[ee]),Ge=M(()=>{const e=/* @__PURE__ */new Map;for(const n of ee){const l=n.parentId&&He.has(n.parentId)?n.parentId:null;e.set(l,[...e.get(l)??[],n])}return e},[ee,He]),Qe=R(e=>{const n=[];for(let l=e?He.get(e):void 0;l&&(n.unshift(l),!(n.length>ee.length));l=l.parentId?He.get(l.parentId):void 0);return n},[He,ee.length]),We=R((e,n)=>Qe(e).some(e=>e.id===n),[Qe]),[Ye,Ze]=U(()=>/* @__PURE__ */new Set(["@files"])),$e=e=>Ze(n=>{const l=new Set(n);return l.has(e)?l.delete(e):l.add(e),l}),qe=R(e=>{Ze(n=>e.every(e=>n.has(e))?n:/* @__PURE__ */new Set([...n,...e]))},[]),_e="files"===(en=q).place?`files:${en.folderId??""}`:"products"===en.place?`products:${en.nodeId??""}`:"trash";var en;K(()=>{if("files"===q.place)qe(["@files",...Qe(q.folderId).slice(0,-1).map(e=>e.id)]);else if("products"===q.place){const e=q.nodeId?Je.get(q.nodeId)?.path??[]:[];qe(["@products",...e.slice(0,-1).map(e=>`p:${e.id}`)])}},[_e]);const nn="products"===q.place,ln="trash"===q.place,an="files"===q.place,rn=an?q.folderId:null,tn=nn&&q.nodeId?Je.get(q.nodeId)?.path[0]:void 0,on=e=>e?.sharedFrom?`${Me.readOnly} ${Me.editedAtHq(e.sharedFrom)}`:Me.readOnly,dn=M(()=>ie.map(e=>e.id),[ie]),sn=M(()=>new Map(ie.map(e=>[e.id,e])),[ie]),cn=g(dn),un=M(()=>dn.filter(e=>cn.selected.has(e)),[dn,cn.selected]),mn=1===un.length?sn.get(un[0]):void 0,hn=A(!0);K(()=>{hn.current?hn.current=!1:cn.clear()},[_e]);const pn=me?.join("\0");K(()=>{me&&cn.setSelection(me)},[pn]);const fn=A(pn??""),gn=un.join("\0");K(()=>{fn.current!==gn&&(fn.current=gn,he?.(un))},[gn]);const vn=(e,n={})=>{Ue?cn.select(e):cn.select(e,{ctrl:!(!n.ctrlKey&&!n.metaKey),shift:!!n.shiftKey})},[kn,yn]=U(null),bn=e=>{const n=kn;if(yn(null),!n||null==e)return;e!==("folder"===n.kind?He.get(n.id)?.name:sn.get(n.id)?.name)&&Ne?.(n,e)},wn=async e=>{if(!we)return;const n=await we(e);qe(["@files",...e?[e]:[]]),"string"==typeof n&&yn({kind:"folder",id:n})},Nn=R(e=>{const n=[],l=n=>{if("files"===e.kind)return n===rn&&an?Me.alreadyHere:void 0;const l=He.get(e.id);return n===e.id||n&&We(n,e.id)?Me.notIntoItself:(l?.parentId??null)===n?Me.folderAlreadyHere:void 0};n.push({key:s,label:Me.allFiles,disabledReason:l(null)});const a=(e,i)=>{for(const r of Ge.get(e)??[])n.push({key:r.id,label:r.name,depth:i,disabledReason:l(r.id)}),a(r.id,i+1)};return a(null,1),n},[Ge,He,an,We,rn,Me]),xn=R(e=>{const n=new Set(e.map(e=>sn.get(e)?.kind??"image"));return 1===n.size?[...n][0]:"file"},[sn]),[Cn,In]=U(null),Dn={words:Me,media:Re,denied:fe,moveTargets:Nn,kindOf:xn,urlOf:e=>sn.get(e)?.url,newSubfolder:we&&Ke?e=>{wn(e)}:void 0,rename:Ne&&Ke?e=>{"file"!==e.kind||cn.isSelected(e.id)||cn.select(e.id),yn(e)}:void 0,move:xe&&Ke?xe:void 0,trash:Ce&&Ke?Ce:void 0,deleteFolder:Ie&&Ke?Ie:void 0,folderNotEmpty:e=>!!He.get(e)?.notEmpty,replace:ze&&Ke?ze:void 0,copyUrl:e=>{const n=sn.get(e)?.url;n&&y(Me.urlLabel,n)},openInDesign:Te,restore:De,deleteForever:je},jn=e=>c(e,Dn),Sn=w(),zn=(e,n)=>{Ue||(cn.isSelected(e)||cn.select(e),Sn.open(n,(e=>{const n=cn.isSelected(e)?un:[e];return nn?{kind:"render",id:e}:ln?{kind:"trashed",ids:n}:{kind:"files",ids:n}})(e)))},[On,Tn]=U(null),[Fn,Ln]=U(null),[Pn,En]=U(null);K(()=>{if(!Fn&&!On)return;const e=()=>{Ln(null),Tn(null)};return window.addEventListener("dragend",e),window.addEventListener("drop",e),()=>{window.removeEventListener("dragend",e),window.removeEventListener("drop",e)}},[Fn,On]);const An=(e,n)=>Array.from(e.dataTransfer?.types??[]).includes(n),Mn=(e,n)=>!(!xe||fe.move||Ue)&&(!!An(e,J)||!(!An(e,H)||!Pn)&&(n!==Pn&&!(n&&We(n,Pn)))),Rn=(e,n)=>({onDragEnter:l=>{Mn(l,n)&&(l.preventDefault(),Tn(e))},onDragOver:l=>{Mn(l,n)&&(l.preventDefault(),l.dataTransfer.dropEffect="move",On!==e&&Tn(e))},onDragLeave:n=>{const l=n.relatedTarget;l&&n.currentTarget.contains(l)||Tn(n=>n===e?null:n)},onDrop:e=>{if(Mn(e,n))if(e.preventDefault(),Tn(null),An(e,J)){let l;try{l=JSON.parse(e.dataTransfer.getData(J))}catch{l=null}Array.isArray(l)&&l.length&&xe({kind:"files",ids:l.map(String)},n)}else Pn&&(xe({kind:"folder",id:Pn},n),En(null))}}),Un=e=>{const n=e=>An(e,J)||An(e,H)||An(e,"Files");return{onDragEnter:l=>{n(l)&&Ln(e)},onDragOver:l=>{n(l)&&Fn!==e&&Ln(e)},onDragLeave:n=>{const l=n.relatedTarget;l&&n.currentTarget.contains(l)||Ln(n=>n===e?null:n)}}},Kn=(e,n,l)=>/* @__PURE__ */X(L,{side:"right",content:Fn===e?Me.noDropProducts:on(l),open:Fn===e||!Fn&&void 0,children:/* @__PURE__ */X("span",{children:n})}),Bn=e=>({onContextMenu:n=>{Sn.open(n,e)}}),Vn=(e,a,i)=>e.map(e=>{const r=`p:${e.id}`,t=i??e,o=Ye.has(r),d=e.children?.length?e.children:null;/* @__PURE__ */
1
+ import{Tree as e,TreeRow as n,TreeGroup as l}from"./chunk-NRALUW6P.js";import{ImageLightbox as a}from"./chunk-P7H2DXJB.js";import{MarqueeBox as i}from"./chunk-IC72MGON.js";import{Drawer as r}from"./chunk-V6Y4OC6K.js";import{EmptyState as t}from"./chunk-QVZKRROQ.js";import{DescriptionList as o}from"./chunk-SACUSHVN.js";import{Breadcrumbs as d}from"./chunk-XYECIBVX.js";import{ROOT_KEY as s,mediaLibraryMenu as c}from"./chunk-MS5APD3V.js";import{useMediaMoveItems as u}from"./chunk-OPN4I565.js";import{MediaUploadGrid as m}from"./chunk-E3EJWNNK.js";import{MediaUsedInList as h}from"./chunk-NZ34BQKH.js";import{RenameField as p}from"./chunk-WPCNJ4UL.js";import{NativeSelect as f}from"./chunk-XFH64VIG.js";import{Segmented as g}from"./chunk-S4FPYCUU.js";import{useGridSelection as v}from"./chunk-VLKDWKVR.js";import{useMarquee as k}from"./chunk-OLFYNMTD.js";import{copyToClipboard as y}from"./chunk-TMMNCXQT.js";import{Checkbox_default as b}from"./chunk-CGZBDI6C.js";import{useContextMenu as w,ContextMenu as N}from"./chunk-AIJ6OR6X.js";import{Banner as x}from"./chunk-ZGOHRLXG.js";import{Input_default as C}from"./chunk-HNUKXGYP.js";import{DropdownMenu as I}from"./chunk-NZISMTQE.js";import{IconButton_default as D}from"./chunk-LE5LWALR.js";import{useFileIntake as j,FileIntakeAlert as S}from"./chunk-JTMEFXRL.js";import{ColoredBadge as z}from"./chunk-OKHKY3ZZ.js";import{Button_default as O}from"./chunk-EOVXFXVV.js";import{buttonClasses as T}from"./chunk-UQYNPYF4.js";import{Icon as F}from"./chunk-2UO47XB4.js";import{Tooltip as L}from"./chunk-NJN5IKWO.js";import{usePlotWidth as P}from"./chunk-MAFUXCPZ.js";import{useShellStrings as E}from"./chunk-GDQJBQ5B.js";import{useRef as A,useMemo as M,useCallback as R,useState as U,useEffect as K}from"react";import{jsxs as B,Fragment as V,jsx as X}from"react/jsx-runtime";var J="application/x-efficient-media-files",H="application/x-efficient-media-folder",G="application/x-efficient-media-file";function Q(e){if(!e||!Array.from(e.types).includes(G))return null;try{const n=JSON.parse(e.getData(G));if(n&&"string"==typeof n.id&&"string"==typeof n.url&&"string"==typeof n.name&&("image"===n.kind||"video"===n.kind))return{id:n.id,url:n.url,kind:n.kind,name:n.name}}catch{}return null}var W={type:"all",use:"any",sort:"newest"},Y={lock:/* @__PURE__ */X(F,{name:"lock","aria-hidden":"true",className:"h-4 w-4"}),folder:/* @__PURE__ */X(F,{name:"folder","aria-hidden":"true",className:"h-4 w-4"}),folderOpen:/* @__PURE__ */X(F,{name:"folder-open","aria-hidden":"true",className:"h-4 w-4"}),folderPlus:/* @__PURE__ */X(F,{name:"folder-plus","aria-hidden":"true",className:"h-4 w-4"}),trash:/* @__PURE__ */X(F,{name:"trash","aria-hidden":"true",className:"h-4 w-4"}),upload:/* @__PURE__ */X(F,{name:"upload","aria-hidden":"true",className:"h-4 w-4"}),search:/* @__PURE__ */X(F,{name:"search","aria-hidden":"true",className:"h-4 w-4"}),grid:/* @__PURE__ */X(F,{name:"grid","aria-hidden":"true",className:"h-4 w-4"}),list:/* @__PURE__ */X(F,{name:"list","aria-hidden":"true",className:"h-4 w-4"}),more:/* @__PURE__ */X(F,{name:"more","aria-hidden":"true",className:"h-4 w-4"}),copy:/* @__PURE__ */X(F,{name:"copy","aria-hidden":"true",className:"h-4 w-4"}),edit:/* @__PURE__ */X(F,{name:"edit","aria-hidden":"true",className:"h-4 w-4"}),swap:/* @__PURE__ */X(F,{name:"swap","aria-hidden":"true",className:"h-4 w-4"}),crop:/* @__PURE__ */X(F,{name:"crop","aria-hidden":"true",className:"h-4 w-4"}),external:/* @__PURE__ */X(F,{name:"external","aria-hidden":"true",className:"h-4 w-4"}),undo:/* @__PURE__ */X(F,{name:"undo","aria-hidden":"true",className:"h-4 w-4"})},Z={link:/* @__PURE__ */X(F,{name:"link","aria-hidden":"true",className:"h-3 w-3"}),email:/* @__PURE__ */X(F,{name:"email","aria-hidden":"true",className:"h-3 w-3"}),lock:/* @__PURE__ */X(F,{name:"lock","aria-hidden":"true",className:"h-3 w-3"}),clock:/* @__PURE__ */X(F,{name:"clock","aria-hidden":"true",className:"h-3 w-3"})};function $(F){const{mode:Q="manage",layout:$="auto",location:q,onLocationChange:_,folders:ee,products:ne,allFilesCount:le,trashCount:ae,files:ie,query:re,onQueryChange:te,filters:oe=W,onFiltersChange:de,extraFilters:se,view:ce="grid",onViewChange:ue,selectedIds:me,onSelectionChange:he,usedIn:pe,denied:fe={},accept:ge="image/*,video/*",maxSizeBytes:ve,busy:ke,progress:ye,onUpload:be,onNewFolder:we,onRename:Ne,onMove:xe,onTrash:Ce,onDeleteFolder:Ie,onRestore:De,onDeleteForever:je,onEmptyTrash:Se,onReplace:ze,onCropEdit:Oe,onOpenInDesign:Te,onChoose:Fe,onCancel:Le,pickNote:Pe,onDragOut:Ee,className:Ae=""}=F,Me=E().mediaLibrary,Re=E().media,Ue="pick"===Q,Ke=!Ue,Be=A(null),Ve=P(Be,"phone"===$?343:1200),Xe="phone"===$||"auto"===$&&Ve<640,Je=M(()=>function(e=[]){const n=/* @__PURE__ */new Map,l=(e,a)=>{for(const i of e){const e=[...a,i];n.set(i.id,{node:i,path:e}),i.children&&l(i.children,e)}};return l(e,[]),n}(ne),[ne]),He=M(()=>new Map(ee.map(e=>[e.id,e])),[ee]),Ge=M(()=>{const e=/* @__PURE__ */new Map;for(const n of ee){const l=n.parentId&&He.has(n.parentId)?n.parentId:null;e.set(l,[...e.get(l)??[],n])}return e},[ee,He]),Qe=R(e=>{const n=[];for(let l=e?He.get(e):void 0;l&&(n.unshift(l),!(n.length>ee.length));l=l.parentId?He.get(l.parentId):void 0);return n},[He,ee.length]),We=R((e,n)=>Qe(e).some(e=>e.id===n),[Qe]),[Ye,Ze]=U(()=>/* @__PURE__ */new Set(["@files"])),$e=e=>Ze(n=>{const l=new Set(n);return l.has(e)?l.delete(e):l.add(e),l}),qe=R(e=>{Ze(n=>e.every(e=>n.has(e))?n:/* @__PURE__ */new Set([...n,...e]))},[]),_e="files"===(en=q).place?`files:${en.folderId??""}`:"products"===en.place?`products:${en.nodeId??""}`:"trash";var en;K(()=>{if("files"===q.place)qe(["@files",...Qe(q.folderId).slice(0,-1).map(e=>e.id)]);else if("products"===q.place){const e=q.nodeId?Je.get(q.nodeId)?.path??[]:[];qe(["@products",...e.slice(0,-1).map(e=>`p:${e.id}`)])}},[_e]);const nn="products"===q.place,ln="trash"===q.place,an="files"===q.place,rn=an?q.folderId:null,tn=nn&&q.nodeId?Je.get(q.nodeId)?.path[0]:void 0,on=e=>e?.sharedFrom?`${Me.readOnly} ${Me.editedAtHq(e.sharedFrom)}`:Me.readOnly,dn=M(()=>ie.map(e=>e.id),[ie]),sn=M(()=>new Map(ie.map(e=>[e.id,e])),[ie]),cn=v(dn),un=M(()=>dn.filter(e=>cn.selected.has(e)),[dn,cn.selected]),mn=1===un.length?sn.get(un[0]):void 0,hn=A(!0);K(()=>{hn.current?hn.current=!1:cn.clear()},[_e]);const pn=me?.join("\0");K(()=>{me&&cn.setSelection(me)},[pn]);const fn=A(pn??""),gn=un.join("\0");K(()=>{fn.current!==gn&&(fn.current=gn,he?.(un))},[gn]);const vn=(e,n={})=>{Ue?cn.select(e):cn.select(e,{ctrl:!(!n.ctrlKey&&!n.metaKey),shift:!!n.shiftKey})},[kn,yn]=U(null),bn=e=>{const n=kn;if(yn(null),!n||null==e)return;e!==("folder"===n.kind?He.get(n.id)?.name:sn.get(n.id)?.name)&&Ne?.(n,e)},wn=async e=>{if(!we)return;const n=await we(e);qe(["@files",...e?[e]:[]]),"string"==typeof n&&yn({kind:"folder",id:n})},Nn=R(e=>{const n=[],l=n=>{if("files"===e.kind)return n===rn&&an?Me.alreadyHere:void 0;const l=He.get(e.id);return n===e.id||n&&We(n,e.id)?Me.notIntoItself:(l?.parentId??null)===n?Me.folderAlreadyHere:void 0};n.push({key:s,label:Me.allFiles,disabledReason:l(null)});const a=(e,i)=>{for(const r of Ge.get(e)??[])n.push({key:r.id,label:r.name,depth:i,disabledReason:l(r.id)}),a(r.id,i+1)};return a(null,1),n},[Ge,He,an,We,rn,Me]),xn=R(e=>{const n=new Set(e.map(e=>sn.get(e)?.kind??"image"));return 1===n.size?[...n][0]:"file"},[sn]),[Cn,In]=U(null),Dn={words:Me,media:Re,denied:fe,moveTargets:Nn,kindOf:xn,urlOf:e=>sn.get(e)?.url,newSubfolder:we&&Ke?e=>{wn(e)}:void 0,rename:Ne&&Ke?e=>{"file"!==e.kind||cn.isSelected(e.id)||cn.select(e.id),yn(e)}:void 0,move:xe&&Ke?xe:void 0,trash:Ce&&Ke?Ce:void 0,deleteFolder:Ie&&Ke?Ie:void 0,folderNotEmpty:e=>!!He.get(e)?.notEmpty,replace:ze&&Ke?ze:void 0,copyUrl:e=>{const n=sn.get(e)?.url;n&&y(Me.urlLabel,n)},openInDesign:Te,restore:De,deleteForever:je},jn=e=>c(e,Dn),Sn=w(),zn=(e,n)=>{Ue||(cn.isSelected(e)||cn.select(e),Sn.open(n,(e=>{const n=cn.isSelected(e)?un:[e];return nn?{kind:"render",id:e}:ln?{kind:"trashed",ids:n}:{kind:"files",ids:n}})(e)))},[On,Tn]=U(null),[Fn,Ln]=U(null),[Pn,En]=U(null);K(()=>{if(!Fn&&!On)return;const e=()=>{Ln(null),Tn(null)};return window.addEventListener("dragend",e),window.addEventListener("drop",e),()=>{window.removeEventListener("dragend",e),window.removeEventListener("drop",e)}},[Fn,On]);const An=(e,n)=>Array.from(e.dataTransfer?.types??[]).includes(n),Mn=(e,n)=>!(!xe||fe.move||Ue)&&(!!An(e,J)||!(!An(e,H)||!Pn)&&(n!==Pn&&!(n&&We(n,Pn)))),Rn=(e,n)=>({onDragEnter:l=>{Mn(l,n)&&(l.preventDefault(),Tn(e))},onDragOver:l=>{Mn(l,n)&&(l.preventDefault(),l.dataTransfer.dropEffect="move",On!==e&&Tn(e))},onDragLeave:n=>{const l=n.relatedTarget;l&&n.currentTarget.contains(l)||Tn(n=>n===e?null:n)},onDrop:e=>{if(Mn(e,n))if(e.preventDefault(),Tn(null),An(e,J)){let l;try{l=JSON.parse(e.dataTransfer.getData(J))}catch{l=null}Array.isArray(l)&&l.length&&xe({kind:"files",ids:l.map(String)},n)}else Pn&&(xe({kind:"folder",id:Pn},n),En(null))}}),Un=e=>{const n=e=>An(e,J)||An(e,H)||An(e,"Files");return{onDragEnter:l=>{n(l)&&Ln(e)},onDragOver:l=>{n(l)&&Fn!==e&&Ln(e)},onDragLeave:n=>{const l=n.relatedTarget;l&&n.currentTarget.contains(l)||Ln(n=>n===e?null:n)}}},Kn=(e,n,l)=>/* @__PURE__ */X(L,{side:"right",content:Fn===e?Me.noDropProducts:on(l),open:Fn===e||!Fn&&void 0,children:/* @__PURE__ */X("span",{children:n})}),Bn=e=>({onContextMenu:n=>{Sn.open(n,e)}}),Vn=(e,a,i)=>e.map(e=>{const r=`p:${e.id}`,t=i??e,o=Ye.has(r),d=e.children?.length?e.children:null;/* @__PURE__ */
2
2
  return B("div",{role:"none",className:"contents",children:[
3
3
  /* @__PURE__ */X(n,{label:Kn(r,e.name,t),level:a,icon:d&&o?Y.folderOpen:Y.folder,count:e.count,countLabel:null!=e.count?e.countLabel??Me.fileCount(e.count):void 0,selected:nn&&q.nodeId===e.id,expanded:d?o:void 0,onToggle:d?()=>$e(r):void 0,onSelect:()=>_({place:"products",nodeId:e.id}),rowProps:{"data-media-row":r,...Un(r),...Ke?Bn({kind:"product-node",id:e.id}):{}}}),d&&o&&/* @__PURE__ */X(l,{children:Vn(d,a+1,t)})]},e.id)}),Xn=(e,a)=>(Ge.get(e)??[]).map(e=>{const i=Ge.get(e.id),r=Ye.has(e.id),t="folder"===kn?.kind&&kn.id===e.id,o=jn({kind:"folder",id:e.id});/* @__PURE__ */
4
4
  return B("div",{role:"none",className:"contents",children:[
5
5
  /* @__PURE__ */X(n,{label:e.name,level:a,icon:i&&r?Y.folderOpen:Y.folder,count:e.count,countLabel:null!=e.count?e.countLabel??Me.fileCount(e.count):void 0,selected:t||an&&q.folderId===e.id,expanded:i?r:void 0,onToggle:i?()=>$e(e.id):void 0,onSelect:()=>_({place:"files",folderId:e.id}),drop:On===e.id?"into":void 0,dragging:Pn===e.id,draggable:Ke&&!!xe&&!fe.move,rename:t?/* @__PURE__ */X(p,{value:e.name,label:Me.folderName,onDone:bn}):void 0,actions:Ke&&o.length?/* @__PURE__ */X(I,{align:"end","aria-label":Me.folderActions,trigger:Y.more,items:o}):void 0,rowProps:{"data-media-row":e.id,...Rn(e.id,e.id),...Ke?Bn({kind:"folder",id:e.id}):{},...Ke&&xe&&!fe.move?{draggable:!0,onDragStart:n=>{n.dataTransfer.effectAllowed="move",n.dataTransfer.setData(H,e.id),En(e.id)},onDragEnd:()=>{En(null),Tn(null)}}:{}}}),i&&r&&/* @__PURE__ */X(l,{children:Xn(e.id,a+1)})]},e.id)}),Jn=Ye.has("@files"),Hn=Ye.has("@products"),Gn=/* @__PURE__ */B(e,{"aria-label":Me.folders,children:[ne&&/* @__PURE__ */B(V,{children:[
6
6
  /* @__PURE__ */X(n,{label:Kn("@products",Me.products),level:1,icon:Y.lock,badge:{label:Me.readOnlyBadge,tone:"neutral"},expanded:ne.length?Hn:void 0,onToggle:()=>$e("@products"),selected:nn&&null==q.nodeId,onSelect:()=>_({place:"products",nodeId:null}),rowProps:{"data-media-row":"@products",...Un("@products")}}),Hn&&ne.length>0&&/* @__PURE__ */X(l,{children:Vn(ne,2)})]}),
7
- /* @__PURE__ */X(n,{label:Me.allFiles,level:1,icon:Jn?Y.folderOpen:Y.folder,count:le,countLabel:null!=le?Me.fileCount(le):void 0,expanded:Ge.get(null)?.length?Jn:void 0,onToggle:()=>$e("@files"),selected:an&&null==q.folderId,onSelect:()=>_({place:"files",folderId:null}),drop:"@files"===On?"into":void 0,rowProps:{"data-media-row":"@files",...Rn("@files",null)}}),Jn&&(Ge.get(null)?.length??0)>0&&/* @__PURE__ */X(l,{children:Xn(null,2)}),Ke&&/* @__PURE__ */X(n,{label:Me.trash,level:1,icon:Y.trash,count:ae,countLabel:null!=ae?Me.fileCount(ae):void 0,selected:ln,onSelect:()=>_({place:"trash"}),rowProps:{"data-media-row":"@trash"}})]}),Qn=(()=>{if(ln)return[{label:Me.trash}];if(nn){const e=q.nodeId?Je.get(q.nodeId)?.path??[]:[];return[{label:Me.products,onClick:e.length?()=>_({place:"products",nodeId:null}):void 0},...e.map((n,l)=>({label:n.name,onClick:l<e.length-1?()=>_({place:"products",nodeId:n.id}):void 0}))]}const e=Qe(rn);return[{label:Me.allFiles,onClick:e.length?()=>_({place:"files",folderId:null}):void 0},...e.map((n,l)=>({label:n.name,onClick:l<e.length-1?()=>_({place:"files",folderId:n.id}):void 0}))]})(),Wn=nn?Me.readOnly:fe.upload,Yn=!!be&&!ln&&!Wn,Zn=j({accept:ge,maxSizeBytes:ve,multiple:!0,disabled:!Yn,onAccept:e=>be?.(e,rn)}),$n=nn?Me.noProductFolder:fe.newFolder,qn=e=>e?{"aria-disabled":!0,disabledReason:e}:{},_n=/* @__PURE__ */B("div",{className:"flex flex-wrap items-center gap-2",children:[Ke&&we&&!ln&&/* @__PURE__ */X(O,{variant:"secondary",size:"sm",leftIcon:Y.folderPlus,onClick:()=>{wn(rn)},...qn($n),children:Me.newFolder}),be&&!ln&&/* @__PURE__ */X(O,{variant:"primary",size:"sm",leftIcon:Y.upload,onClick:()=>Zn.open(),...qn(Wn),children:Me.upload}),Ke&&ln&&Se&&ie.length>0&&/* @__PURE__ */X(O,{variant:"danger",size:"sm",onClick:Se,...qn(fe.deleteForever),children:Me.emptyTrash})]}),el=(e,n,l,a,i)=>/* @__PURE__ */X("div",{style:{width:Xe?void 0:i,flex:Xe?"1 1 120px":"0 0 auto",minWidth:0},children:/* @__PURE__ */X(f,{size:"sm","aria-label":e,value:n,onChange:a,options:l})},e),nl=e=>n=>de?.({...oe,[e]:n}),ll=/* @__PURE__ */B("div",{className:"flex flex-wrap items-center gap-2",children:[te&&/* @__PURE__ */X("div",{style:{flex:"1 1 200px",minWidth:0},children:/* @__PURE__ */X(C,{size:"sm",type:"search",leftIcon:Y.search,placeholder:nn?Me.searchProducts:Me.search,"aria-label":nn?Me.searchProducts:Me.search,value:re??"",onChange:e=>te(e.target.value)})}),de&&el(Me.mediaType,oe.type,[{value:"all",label:Me.allTypes},{value:"image",label:Me.images},{value:"video",label:Me.videos},{value:"svg",label:"SVG"},{value:"gif",label:"GIF"}],nl("type"),130),de&&!nn&&!ln&&el(Me.use,oe.use,[{value:"any",label:Me.anyUse},{value:"email",label:Me.emailOnly},{value:"website",label:Me.websiteOnly},{value:"unused",label:Me.notUsed}],nl("use"),130),de&&Ke&&el(Me.sort,oe.sort,[{value:"newest",label:Me.newest},{value:"name",label:Me.byName},{value:"size",label:Me.bySize}],nl("sort"),110),se?.map(e=>el(e.label,e.value,e.options,e.onChange,120)),ue&&/* @__PURE__ */X(k,{size:"sm",label:Me.view,value:ce,onChange:ue,options:[{value:"grid",label:Me.grid,icon:Y.grid},{value:"list",label:Me.list,icon:Y.list}]})]}),al=e=>{const n=[];return null!=e.trashedDaysAgo&&n.push({key:"t",label:Me.daysAgo(e.trashedDaysAgo),count:e.trashedDaysAgo,icon:Z.clock,tone:"neutral"}),e.usedCount&&n.push({key:"u",label:Me.used(e.usedCount),count:e.usedCount,icon:Z.link,tone:"active"}),e.email&&n.push({key:"e",label:Me.email,icon:Z.email,tone:"queued"}),e.private&&n.push({key:"p",label:Me.private,icon:Z.lock,tone:"neutral"}),n},il=e=>al(e).map(e=>/* @__PURE__ */X(z,{tone:e.tone,size:"xs",children:e.label},e.key)),rl=Ke&&an&&!!xe&&!fe.move,tl=!!Ee&&!ln,ol=e=>!tl||e.private||e.pickDisabledReason?void 0:JSON.stringify({id:e.id,url:e.url,kind:"video"===e.kind?"video":"image",name:e.name}),dl=ie.map(e=>({id:e.id,url:e.thumbUrl??e.url,name:e.name,kind:e.kind,caption:e.name,badges:al(e),dragData:rl?JSON.stringify(cn.isSelected(e.id)?un:[e.id]):ol(e),...rl&&ol(e)?{dragAlso:{[G]:ol(e)}}:{}})),sl=Xe?Math.max(72,Math.floor((Ve-24-16-1)/3)):112,cl=A(null),ul=v({containerRef:cl,enabled:Ke&&!Xe&&ie.length>0,selected:cn.selected,setSelection:e=>cn.setSelection(e),clearSelection:cn.clear}),ml=e=>{if(Ue){const n=sn.get(e);return void(!n||n.private||n.pickDisabledReason||Fe?.(n))}const n=dn.indexOf(e);n>=0&&In(n)},hl=ie.length?null:re?/* @__PURE__ */X(t,{variant:"dashed",title:Me.noMatches}):nn?/* @__PURE__ */X(t,{variant:"dashed",title:Me.emptyProducts,description:on(tn)}):ln?/* @__PURE__ */X(t,{variant:"dashed",title:Me.trashEmpty}):!Yn||Ue?/* @__PURE__ */X(t,{variant:"dashed",title:Me.emptyFolder}):null,pl="list"===ce&&ie.length>0,fl=hl??(pl?/* @__PURE__ */X("ul",{role:"listbox","aria-multiselectable":Ke||void 0,"aria-label":Me.folders,className:"flex flex-col gap-1",children:ie.map(e=>/* @__PURE__ */B("li",{role:"option","aria-selected":cn.isSelected(e.id),tabIndex:0,"data-grid-item":"","data-grid-id":e.id,onClick:n=>vn(e.id,n),onDoubleClick:()=>ml(e.id),onContextMenu:n=>zn(e.id,n),draggable:!!ol(e)||void 0,onDragStart:ol(e)?n=>{n.dataTransfer.effectAllowed="link",n.dataTransfer.setData(G,ol(e)),Ee("start")}:void 0,onDragEnd:ol(e)?e=>Ee("none"===e.dataTransfer.dropEffect?"cancelled":"dropped"):void 0,onKeyDown:n=>{"Enter"!==n.key&&" "!==n.key||(n.preventDefault(),vn(e.id,n))},className:"flex h-12 cursor-pointer items-center gap-3 rounded-md px-2 text-sm rosh-focus-ring focus-visible:ring-2 focus-visible:ring-[color:var(--rosh-focus-ring-solid)] "+(cn.isSelected(e.id)?"bg-accent-tint text-blue-700":"text-ink hover:bg-gray-100"),children:[
7
+ /* @__PURE__ */X(n,{label:Me.allFiles,level:1,icon:Jn?Y.folderOpen:Y.folder,count:le,countLabel:null!=le?Me.fileCount(le):void 0,expanded:Ge.get(null)?.length?Jn:void 0,onToggle:()=>$e("@files"),selected:an&&null==q.folderId,onSelect:()=>_({place:"files",folderId:null}),drop:"@files"===On?"into":void 0,rowProps:{"data-media-row":"@files",...Rn("@files",null)}}),Jn&&(Ge.get(null)?.length??0)>0&&/* @__PURE__ */X(l,{children:Xn(null,2)}),Ke&&/* @__PURE__ */X(n,{label:Me.trash,level:1,icon:Y.trash,count:ae,countLabel:null!=ae?Me.fileCount(ae):void 0,selected:ln,onSelect:()=>_({place:"trash"}),rowProps:{"data-media-row":"@trash"}})]}),Qn=(()=>{if(ln)return[{label:Me.trash}];if(nn){const e=q.nodeId?Je.get(q.nodeId)?.path??[]:[];return[{label:Me.products,onClick:e.length?()=>_({place:"products",nodeId:null}):void 0},...e.map((n,l)=>({label:n.name,onClick:l<e.length-1?()=>_({place:"products",nodeId:n.id}):void 0}))]}const e=Qe(rn);return[{label:Me.allFiles,onClick:e.length?()=>_({place:"files",folderId:null}):void 0},...e.map((n,l)=>({label:n.name,onClick:l<e.length-1?()=>_({place:"files",folderId:n.id}):void 0}))]})(),Wn=nn?Me.readOnly:fe.upload,Yn=!!be&&!ln&&!Wn,Zn=j({accept:ge,maxSizeBytes:ve,multiple:!0,disabled:!Yn,onAccept:e=>be?.(e,rn)}),$n=nn?Me.noProductFolder:fe.newFolder,qn=e=>e?{"aria-disabled":!0,disabledReason:e}:{},_n=/* @__PURE__ */B("div",{className:"flex flex-wrap items-center gap-2",children:[Ke&&we&&!ln&&/* @__PURE__ */X(O,{variant:"secondary",size:"sm",leftIcon:Y.folderPlus,onClick:()=>{wn(rn)},...qn($n),children:Me.newFolder}),be&&!ln&&/* @__PURE__ */X(O,{variant:"primary",size:"sm",leftIcon:Y.upload,onClick:()=>Zn.open(),...qn(Wn),children:Me.upload}),Ke&&ln&&Se&&ie.length>0&&/* @__PURE__ */X(O,{variant:"danger",size:"sm",onClick:Se,...qn(fe.deleteForever),children:Me.emptyTrash})]}),el=(e,n,l,a,i)=>/* @__PURE__ */X("div",{style:{width:Xe?void 0:i,flex:Xe?"1 1 120px":"0 0 auto",minWidth:0},children:/* @__PURE__ */X(f,{size:"sm","aria-label":e,value:n,onChange:a,options:l})},e),nl=e=>n=>de?.({...oe,[e]:n}),ll=/* @__PURE__ */B("div",{className:"flex flex-wrap items-center gap-2",children:[te&&/* @__PURE__ */X("div",{style:{flex:"1 1 200px",minWidth:0},children:/* @__PURE__ */X(C,{size:"sm",type:"search",leftIcon:Y.search,placeholder:nn?Me.searchProducts:Me.search,"aria-label":nn?Me.searchProducts:Me.search,value:re??"",onChange:e=>te(e.target.value)})}),de&&el(Me.mediaType,oe.type,[{value:"all",label:Me.allTypes},{value:"image",label:Me.images},{value:"video",label:Me.videos},{value:"svg",label:"SVG"},{value:"gif",label:"GIF"}],nl("type"),130),de&&!nn&&!ln&&el(Me.use,oe.use,[{value:"any",label:Me.anyUse},{value:"email",label:Me.emailOnly},{value:"website",label:Me.websiteOnly},{value:"unused",label:Me.notUsed}],nl("use"),130),de&&Ke&&el(Me.sort,oe.sort,[{value:"newest",label:Me.newest},{value:"name",label:Me.byName},{value:"size",label:Me.bySize}],nl("sort"),110),se?.map(e=>el(e.label,e.value,e.options,e.onChange,120)),ue&&/* @__PURE__ */X(g,{size:"sm",label:Me.view,value:ce,onChange:ue,options:[{value:"grid",label:Me.grid,icon:Y.grid},{value:"list",label:Me.list,icon:Y.list}]})]}),al=e=>{const n=[];return null!=e.trashedDaysAgo&&n.push({key:"t",label:Me.daysAgo(e.trashedDaysAgo),count:e.trashedDaysAgo,icon:Z.clock,tone:"neutral"}),e.usedCount&&n.push({key:"u",label:Me.used(e.usedCount),count:e.usedCount,icon:Z.link,tone:"active"}),e.email&&n.push({key:"e",label:Me.email,icon:Z.email,tone:"queued"}),e.private&&n.push({key:"p",label:Me.private,icon:Z.lock,tone:"neutral"}),n},il=e=>al(e).map(e=>/* @__PURE__ */X(z,{tone:e.tone,size:"xs",children:e.label},e.key)),rl=Ke&&an&&!!xe&&!fe.move,tl=!!Ee&&!ln,ol=e=>!tl||e.private||e.pickDisabledReason?void 0:JSON.stringify({id:e.id,url:e.url,kind:"video"===e.kind?"video":"image",name:e.name}),dl=ie.map(e=>({id:e.id,url:e.thumbUrl??e.url,name:e.name,kind:e.kind,caption:e.name,badges:al(e),dragData:rl?JSON.stringify(cn.isSelected(e.id)?un:[e.id]):ol(e),...rl&&ol(e)?{dragAlso:{[G]:ol(e)}}:{}})),sl=Xe?Math.max(72,Math.floor((Ve-24-16-1)/3)):112,cl=A(null),ul=k({containerRef:cl,enabled:Ke&&!Xe&&ie.length>0,selected:cn.selected,setSelection:e=>cn.setSelection(e),clearSelection:cn.clear}),ml=e=>{if(Ue){const n=sn.get(e);return void(!n||n.private||n.pickDisabledReason||Fe?.(n))}const n=dn.indexOf(e);n>=0&&In(n)},hl=ie.length?null:re?/* @__PURE__ */X(t,{variant:"dashed",title:Me.noMatches}):nn?/* @__PURE__ */X(t,{variant:"dashed",title:Me.emptyProducts,description:on(tn)}):ln?/* @__PURE__ */X(t,{variant:"dashed",title:Me.trashEmpty}):!Yn||Ue?/* @__PURE__ */X(t,{variant:"dashed",title:Me.emptyFolder}):null,pl="list"===ce&&ie.length>0,fl=hl??(pl?/* @__PURE__ */X("ul",{role:"listbox","aria-multiselectable":Ke||void 0,"aria-label":Me.folders,className:"flex flex-col gap-1",children:ie.map(e=>/* @__PURE__ */B("li",{role:"option","aria-selected":cn.isSelected(e.id),tabIndex:0,"data-grid-item":"","data-grid-id":e.id,onClick:n=>vn(e.id,n),onDoubleClick:()=>ml(e.id),onContextMenu:n=>zn(e.id,n),draggable:!!ol(e)||void 0,onDragStart:ol(e)?n=>{n.dataTransfer.effectAllowed="link",n.dataTransfer.setData(G,ol(e)),Ee("start")}:void 0,onDragEnd:ol(e)?e=>Ee("none"===e.dataTransfer.dropEffect?"cancelled":"dropped"):void 0,onKeyDown:n=>{"Enter"!==n.key&&" "!==n.key||(n.preventDefault(),vn(e.id,n))},className:"flex h-12 cursor-pointer items-center gap-3 rounded-md px-2 text-sm rosh-focus-ring focus-visible:ring-2 focus-visible:ring-[color:var(--rosh-focus-ring-solid)] "+(cn.isSelected(e.id)?"bg-accent-tint text-blue-700":"text-ink hover:bg-gray-100"),children:[
8
8
  /* @__PURE__ */X("img",{src:e.thumbUrl??e.url,alt:"",className:"h-10 w-10 shrink-0 rounded bg-gray-100 object-contain"}),
9
9
  /* @__PURE__ */X("span",{className:"min-w-0 flex-1 truncate",children:e.name}),
10
10
  /* @__PURE__ */X("span",{className:"flex shrink-0 items-center gap-1",children:il(e)}),e.sizeLabel&&/* @__PURE__ */X("span",{className:"w-16 shrink-0 text-right text-xs text-ink-faint",children:e.sizeLabel})]},e.id))}):/* @__PURE__ */X(m,{items:dl,readOnly:!Yn||Ue,onFiles:Yn&&!Ue?e=>be(e,rn):void 0,accept:ge,maxSizeBytes:ve,busy:ke,progress:ye,fit:"contain",thumbSize:sl,dragType:rl?J:tl?G:void 0,onDragOutChange:tl?e=>Ee(e):void 0,selected:cn.selected,onItemClick:vn,onItemDoubleClick:ml,onItemContextMenu:Ke?zn:void 0,menuOnMedia:Ke})),gl=u({count:un.length,kind:xn(un),targets:Nn({kind:"files",ids:un}),onPick:e=>xe?.({kind:"files",ids:un},e.key===s?null:e.key)}),vl=T({variant:"secondary",size:"sm"}),kl=/* @__PURE__ */X(I,{align:"start",triggerClassName:vl,trigger:/* @__PURE__ */B(V,{children:[Y.folder,Me.moveTo]}),items:gl,disabled:!!fe.move}),yl=Ke&&un.length>1&&!nn?/* @__PURE__ */B("div",{"data-media-bulk":"",className:"flex flex-wrap items-center gap-2 rounded-lg border border-line px-3 py-2",children:[
@@ -44,7 +44,7 @@ interface BorderInputProps {
44
44
  /** The one width box ("Border width"). */
45
45
  width: string;
46
46
  sides: Record<Side, string>;
47
- /** The style strip's name ("Border style") and each option's word. */
47
+ /** The style picker's name ("Border style") and each option's word. */
48
48
  style: string;
49
49
  styles: Record<BorderLineStyle, string>;
50
50
  /** The colour swatch's name ("Border color"). */
@@ -53,7 +53,7 @@ interface BorderInputProps {
53
53
  };
54
54
  /** Draw the width box(es). Off: the email Button's border colour. */
55
55
  widths?: boolean;
56
- /** Draw the Solid / Dashed / Dotted strip. Off: a Badge (answer 3). */
56
+ /** Draw the Solid / Dashed / Dotted picker. Off: a Badge (answer 3). */
57
57
  styles?: boolean;
58
58
  /** px; the website's maximum is 20 (answer 4). */
59
59
  min?: number;
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{BORDER_LINE_STYLES,borderSides,borderStartEach,BorderInput as default}from"../chunk-ALTBTO3Z.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-BUO7XCYR.js";import"../chunk-7JGR7WPD.js";import"../chunk-QRU55BUS.js";import"../chunk-2NMW66P5.js";import"../chunk-S6OB6HJB.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-CDAJKLGL.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{BORDER_LINE_STYLES,borderSides,borderStartEach,BorderInput as default}from"../chunk-LDZQJLMC.js";import"../chunk-M66ACZXQ.js";import"../chunk-BUO7XCYR.js";import"../chunk-7JGR7WPD.js";import"../chunk-QRU55BUS.js";import"../chunk-2NMW66P5.js";import"../chunk-S6OB6HJB.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-CDAJKLGL.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{BrandAssetEditor as default}from"../chunk-O7RR2ZZ2.js";import"../chunk-QGWKM7C3.js";import"../chunk-XQZL6JDD.js";import"../chunk-6KBDNYRW.js";import"../chunk-MI67DI3H.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-25RR3GQW.js";import"../chunk-H5NIW2KS.js";import"../chunk-TDAI4J27.js";import"../chunk-JTMEFXRL.js";import"../chunk-FZM3ZPW3.js";import"../chunk-EOVXFXVV.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{BrandAssetEditor as default}from"../chunk-OA54HARK.js";import"../chunk-EVX7AZII.js";import"../chunk-XQZL6JDD.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-6KBDNYRW.js";import"../chunk-MI67DI3H.js";import"../chunk-25RR3GQW.js";import"../chunk-H5NIW2KS.js";import"../chunk-TDAI4J27.js";import"../chunk-JTMEFXRL.js";import"../chunk-FZM3ZPW3.js";import"../chunk-EOVXFXVV.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -21,9 +21,26 @@ interface IconPickerProps<T extends string = string> {
21
21
  emptyValue?: T;
22
22
  /** Cells per row. 5 keeps 15 cells in three rows inside a 220px panel. */
23
23
  columns?: number;
24
+ /**
25
+ * The size of each cell, as two CSS lengths, for an option whose `icon` is a picture larger than a glyph.
26
+ * Absent: the 2rem square, and an svg in it held to 16px. Given: it sizes the cells and the grid's columns,
27
+ * and the picture sizes itself (an svg is not clamped in a cell). The closed button keeps its size: it shows
28
+ * the chosen picture beside the chevron and still holds an svg to 16px.
29
+ */
30
+ cell?: {
31
+ width: string;
32
+ height: string;
33
+ };
34
+ /**
35
+ * Drawn in the popup above the grid: a filter for a long list of pictures. A function gets `close`.
36
+ * It is not part of the listbox, and focus still starts on the chosen cell.
37
+ */
38
+ header?: ReactNode | ((api: {
39
+ close: () => void;
40
+ }) => ReactNode);
24
41
  disabled?: boolean;
25
42
  className?: string;
26
43
  }
27
- declare function IconPicker<T extends string = string>({ value, onChange, options, label, emptyValue, columns, disabled, className, }: IconPickerProps<T>): react_jsx_runtime.JSX.Element;
44
+ declare function IconPicker<T extends string = string>({ value, onChange, options, label, emptyValue, columns, cell, header, disabled, className, }: IconPickerProps<T>): react_jsx_runtime.JSX.Element;
28
45
 
29
46
  export { type IconPickerOption, type IconPickerProps, IconPicker as default };
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{IconPicker as default}from"../chunk-WL4U4MTQ.js";import"../chunk-7JGR7WPD.js";import"../chunk-LE5LWALR.js";import"../chunk-CDAJKLGL.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{IconPicker as default}from"../chunk-M66ACZXQ.js";import"../chunk-7JGR7WPD.js";import"../chunk-LE5LWALR.js";import"../chunk-CDAJKLGL.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{MEDIA_FILES_DRAG_TYPE,MEDIA_FILE_DRAG_TYPE,MEDIA_FOLDER_DRAG_TYPE,MediaLibrary as default,readMediaFileDrag}from"../chunk-KC4NOKZ6.js";import"../chunk-NRALUW6P.js";import"../chunk-7JVGF555.js";import"../chunk-P7H2DXJB.js";import"../chunk-CGUMJZUB.js";import"../chunk-IC72MGON.js";import"../chunk-V6Y4OC6K.js";import"../chunk-QVZKRROQ.js";import"../chunk-SACUSHVN.js";import"../chunk-XYECIBVX.js";import"../chunk-MS5APD3V.js";import"../chunk-OPN4I565.js";import"../chunk-E3EJWNNK.js";import"../chunk-NZ34BQKH.js";import"../chunk-WPCNJ4UL.js";import"../chunk-XFH64VIG.js";import"../chunk-EO5RLFRX.js";import"../chunk-LJN77RG6.js";import"../chunk-6KBDNYRW.js";import"../chunk-VLKDWKVR.js";import"../chunk-OLFYNMTD.js";import"../chunk-LACL4MAR.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-2NMW66P5.js";import"../chunk-TMMNCXQT.js";import"../chunk-CGZBDI6C.js";import"../chunk-AIJ6OR6X.js";import"../chunk-ZGOHRLXG.js";import"../chunk-HNUKXGYP.js";import"../chunk-NZISMTQE.js";import"../chunk-4DDL6NXB.js";import"../chunk-H5NIW2KS.js";import"../chunk-TDAI4J27.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-JTMEFXRL.js";import"../chunk-55AEZX6K.js";import"../chunk-3DVNXNTF.js";import"../chunk-ECJKIPWU.js";import"../chunk-VWGWZY7A.js";import"../chunk-7QSDPSXP.js";import"../chunk-OKHKY3ZZ.js";import"../chunk-7ELJQL7J.js";import"../chunk-UGTRSRIW.js";import"../chunk-FZM3ZPW3.js";import"../chunk-CDAJKLGL.js";import"../chunk-6KGIHI6X.js";import"../chunk-URHGHXDN.js";import"../chunk-5QFPTDQF.js";import"../chunk-EOVXFXVV.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-MAFUXCPZ.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{MEDIA_FILES_DRAG_TYPE,MEDIA_FILE_DRAG_TYPE,MEDIA_FOLDER_DRAG_TYPE,MediaLibrary as default,readMediaFileDrag}from"../chunk-XKGEI6NL.js";import"../chunk-NRALUW6P.js";import"../chunk-7JVGF555.js";import"../chunk-P7H2DXJB.js";import"../chunk-CGUMJZUB.js";import"../chunk-IC72MGON.js";import"../chunk-V6Y4OC6K.js";import"../chunk-QVZKRROQ.js";import"../chunk-SACUSHVN.js";import"../chunk-XYECIBVX.js";import"../chunk-MS5APD3V.js";import"../chunk-OPN4I565.js";import"../chunk-E3EJWNNK.js";import"../chunk-NZ34BQKH.js";import"../chunk-WPCNJ4UL.js";import"../chunk-XFH64VIG.js";import"../chunk-EO5RLFRX.js";import"../chunk-LJN77RG6.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-6KBDNYRW.js";import"../chunk-VLKDWKVR.js";import"../chunk-OLFYNMTD.js";import"../chunk-LACL4MAR.js";import"../chunk-2NMW66P5.js";import"../chunk-TMMNCXQT.js";import"../chunk-CGZBDI6C.js";import"../chunk-AIJ6OR6X.js";import"../chunk-ZGOHRLXG.js";import"../chunk-HNUKXGYP.js";import"../chunk-NZISMTQE.js";import"../chunk-4DDL6NXB.js";import"../chunk-H5NIW2KS.js";import"../chunk-TDAI4J27.js";import"../chunk-AYZY3YNC.js";import"../chunk-LE5LWALR.js";import"../chunk-JTMEFXRL.js";import"../chunk-55AEZX6K.js";import"../chunk-3DVNXNTF.js";import"../chunk-ECJKIPWU.js";import"../chunk-VWGWZY7A.js";import"../chunk-7QSDPSXP.js";import"../chunk-OKHKY3ZZ.js";import"../chunk-7ELJQL7J.js";import"../chunk-UGTRSRIW.js";import"../chunk-FZM3ZPW3.js";import"../chunk-CDAJKLGL.js";import"../chunk-6KGIHI6X.js";import"../chunk-URHGHXDN.js";import"../chunk-5QFPTDQF.js";import"../chunk-EOVXFXVV.js";import"../chunk-UQYNPYF4.js";import"../chunk-TE6R53YD.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-MAFUXCPZ.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{MediaUploadField as default}from"../chunk-QGWKM7C3.js";import"../chunk-XQZL6JDD.js";import"../chunk-6KBDNYRW.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-25RR3GQW.js";export{mediaFileName}from"../chunk-H5NIW2KS.js";import"../chunk-TDAI4J27.js";import"../chunk-JTMEFXRL.js";import"../chunk-FZM3ZPW3.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";
2
+ export{MediaUploadField as default}from"../chunk-EVX7AZII.js";import"../chunk-XQZL6JDD.js";import"../chunk-S4FPYCUU.js";import"../chunk-JDQGHQ2C.js";import"../chunk-6KBDNYRW.js";import"../chunk-25RR3GQW.js";export{mediaFileName}from"../chunk-H5NIW2KS.js";import"../chunk-TDAI4J27.js";import"../chunk-JTMEFXRL.js";import"../chunk-FZM3ZPW3.js";import"../chunk-2UO47XB4.js";import"../chunk-J75ZT2JQ.js";import"../chunk-R2VKEMZH.js";import"../chunk-MRJKZWWV.js";import"../chunk-WGLHB6WE.js";import"../chunk-NJN5IKWO.js";import"../chunk-PGN5ME7B.js";import"../chunk-62LW225J.js";import"../chunk-GLUJS42B.js";import"../chunk-D65T4H6J.js";import"../chunk-5FYDNH4Y.js";import"../chunk-LNXBTK7Q.js";import"../chunk-TWVUQUUD.js";import"../chunk-GDQJBQ5B.js";import"../chunk-C3QOHMR6.js";