efficient-shell 8.35.0 → 8.35.1

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 (45) hide show
  1. package/dist/{Browser-ERZNOFN7.js → Browser-F67PEY2U.js} +14 -14
  2. package/dist/Calculator-6ZU5MKTQ.js +29 -0
  3. package/dist/CurrencyConverter-Z6L7QAZU.js +21 -0
  4. package/dist/{Documents-POWS4L44.js → Documents-MQDSI27F.js} +25 -25
  5. package/dist/{Files-O44UH6ZF.js → Files-DEC4KVQM.js} +17 -17
  6. package/dist/Notepad-2IRVJ7MB.js +25 -0
  7. package/dist/{PomodoroTimer-GLYNCO4H.js → PomodoroTimer-TRGMI4YT.js} +31 -31
  8. package/dist/{Preview-WZDFVBNJ.js → Preview-PXOEKXSR.js} +26 -26
  9. package/dist/{Spreadsheet-OYAVNRCT.js → Spreadsheet-WROI4P6D.js} +13 -13
  10. package/dist/Stock-SUDCDSUL.js +16 -0
  11. package/dist/{Weather-UKLNJ3VF.js → Weather-WQE4ZQAL.js} +18 -18
  12. package/dist/{WorldClock-OZ3I7D2M.js → WorldClock-2AGEYLZP.js} +6 -6
  13. package/dist/apps/index.js +1 -1
  14. package/dist/bin/media-host-check.js +1 -1
  15. package/dist/bin/ui-check.js +1 -1
  16. package/dist/{chunk-CAMLFCGY.js → chunk-2EOQDYGM.js} +22 -22
  17. package/dist/{chunk-SWHRP52Y.js → chunk-3RPIPYLU.js} +1 -1
  18. package/dist/chunk-4AJRHTTB.js +1 -0
  19. package/dist/chunk-F2AEP37B.js +4 -0
  20. package/dist/{chunk-4RNF6MNW.js → chunk-G2V2ADJQ.js} +1 -1
  21. package/dist/chunk-JE6TBZGY.js +8 -0
  22. package/dist/{chunk-2WL3Q7VW.js → chunk-MOD4PGVF.js} +10 -10
  23. package/dist/{chunk-2AHHM4SK.js → chunk-PAB2ZU4F.js} +33 -33
  24. package/dist/{chunk-5OX6KXWY.js → chunk-RJZYORCR.js} +1 -1
  25. package/dist/chunk-WAZTGEMG.js +1 -0
  26. package/dist/{chunk-S4IW5OL3.js → chunk-XNJMLHGK.js} +1 -1
  27. package/dist/forms/MediaLibrary.js +1 -1
  28. package/dist/index.js +60 -60
  29. package/dist/page-tabs/index.js +5 -5
  30. package/dist/shell/ConfirmDialog.js +1 -1
  31. package/dist/shell/Dialog.d.ts +2 -2
  32. package/dist/shell/Dialog.js +1 -1
  33. package/dist/shell/Drawer.d.ts +2 -2
  34. package/dist/shell/Drawer.js +1 -1
  35. package/dist/telemetry/index.js +1 -1
  36. package/dist/ui/index.js +1 -1
  37. package/dist/version.js +1 -1
  38. package/package.json +1 -1
  39. package/dist/Calculator-NXIOZMML.js +0 -29
  40. package/dist/CurrencyConverter-57WUTV4H.js +0 -21
  41. package/dist/Notepad-66ZCGUHC.js +0 -25
  42. package/dist/Stock-CIHUZOQS.js +0 -16
  43. package/dist/chunk-BZMZTPS6.js +0 -1
  44. package/dist/chunk-QPWD5CCS.js +0 -8
  45. package/dist/chunk-TW6WYYBC.js +0 -3
@@ -1,29 +1,29 @@
1
- import{Tree as e,TreeRow as l,TreeGroup as n}from"./chunk-2U2GJCSP.js";import{MarqueeBox as a}from"./chunk-IC72MGON.js";import{EmptyState as r}from"./chunk-M2KV4WKR.js";import{ImageLightbox as i}from"./chunk-O2YAB6WK.js";import{DescriptionList as t}from"./chunk-SACUSHVN.js";import{Drawer as o}from"./chunk-QPWD5CCS.js";import{Breadcrumbs as d}from"./chunk-EBC4XFL2.js";import{ROOT_KEY as s,mediaLibraryMenu as c}from"./chunk-2F7ZOMKK.js";import{useMediaMoveItems as m}from"./chunk-DFDDRKIJ.js";import{copyToClipboard as u}from"./chunk-5PY4H4ZJ.js";import{DropdownMenu as h}from"./chunk-5FCEBKT2.js";import{MediaUploadGrid as p}from"./chunk-WKRFD4E4.js";import{MediaUsedInList as f}from"./chunk-GK3QH63P.js";import{NativeSelect as g}from"./chunk-2PWZNFFP.js";import{Segmented as v}from"./chunk-N6DTTOB6.js";import{useFileIntake as y,FileIntakeAlert as k}from"./chunk-YDYDR72S.js";import{useGridSelection as b}from"./chunk-VLKDWKVR.js";import{useMarquee as w}from"./chunk-OLFYNMTD.js";import{Checkbox_default as x}from"./chunk-CGZBDI6C.js";import{useContextMenu as C,ContextMenu as N}from"./chunk-JDKRQG7X.js";import{Banner as I}from"./chunk-MY755PTJ.js";import{Input_default as D}from"./chunk-GX2GSDJP.js";import{IconButton_default as S}from"./chunk-4CANQ3B3.js";import{ColoredBadge as j}from"./chunk-4GVH4ZUH.js";import{Button_default as z}from"./chunk-4IU5BSVE.js";import{buttonClasses as F}from"./chunk-K7U4RWXJ.js";import{Icon as T}from"./chunk-2SHYR3RA.js";import{Tooltip as P}from"./chunk-22S6LG6D.js";import{usePlotWidth as O}from"./chunk-MAFUXCPZ.js";import{useShellStrings as E}from"./chunk-E6UCGCOC.js";import{useRef as K,useMemo as L,useCallback as A,useState as M,useEffect as R}from"react";import{jsxs as U,Fragment as B,jsx as G}from"react/jsx-runtime";var W="application/x-efficient-media-files",H="application/x-efficient-media-folder",J={type:"all",use:"any",sort:"newest"},V={lock:/* @__PURE__ */G(T,{name:"lock","aria-hidden":"true",className:"h-4 w-4"}),folder:/* @__PURE__ */G(T,{name:"folder","aria-hidden":"true",className:"h-4 w-4"}),folderOpen:/* @__PURE__ */G(T,{name:"folder-open","aria-hidden":"true",className:"h-4 w-4"}),folderPlus:/* @__PURE__ */G(T,{name:"folder-plus","aria-hidden":"true",className:"h-4 w-4"}),trash:/* @__PURE__ */G(T,{name:"trash","aria-hidden":"true",className:"h-4 w-4"}),upload:/* @__PURE__ */G(T,{name:"upload","aria-hidden":"true",className:"h-4 w-4"}),search:/* @__PURE__ */G(T,{name:"search","aria-hidden":"true",className:"h-4 w-4"}),grid:/* @__PURE__ */G(T,{name:"grid","aria-hidden":"true",className:"h-4 w-4"}),list:/* @__PURE__ */G(T,{name:"list","aria-hidden":"true",className:"h-4 w-4"}),more:/* @__PURE__ */G(T,{name:"more","aria-hidden":"true",className:"h-4 w-4"}),copy:/* @__PURE__ */G(T,{name:"copy","aria-hidden":"true",className:"h-4 w-4"}),edit:/* @__PURE__ */G(T,{name:"edit","aria-hidden":"true",className:"h-4 w-4"}),swap:/* @__PURE__ */G(T,{name:"swap","aria-hidden":"true",className:"h-4 w-4"}),crop:/* @__PURE__ */G(T,{name:"crop","aria-hidden":"true",className:"h-4 w-4"}),external:/* @__PURE__ */G(T,{name:"external","aria-hidden":"true",className:"h-4 w-4"}),undo:/* @__PURE__ */G(T,{name:"undo","aria-hidden":"true",className:"h-4 w-4"})},Y={link:/* @__PURE__ */G(T,{name:"link","aria-hidden":"true",className:"h-3 w-3"}),email:/* @__PURE__ */G(T,{name:"email","aria-hidden":"true",className:"h-3 w-3"}),lock:/* @__PURE__ */G(T,{name:"lock","aria-hidden":"true",className:"h-3 w-3"}),clock:/* @__PURE__ */G(T,{name:"clock","aria-hidden":"true",className:"h-3 w-3"})};function $({value:e,label:l,onDone:n}){const[a,r]=M(e),i=K(!1),t=e=>{i.current||(i.current=!0,n(e))};/* @__PURE__ */
2
- return G(D,{size:"sm",autoFocus:!0,"aria-label":l,value:a,onChange:e=>r(e.target.value),onFocus:e=>e.currentTarget.select(),onKeyDown:l=>{l.stopPropagation(),"Enter"===l.key?(l.preventDefault(),t(a.trim()||e)):"Escape"===l.key&&(l.preventDefault(),t(null))},onBlur:()=>t(a.trim()||e),onClick:e=>e.stopPropagation()})}function Z(T){const{mode:Z="manage",layout:Q="auto",location:X,onLocationChange:q,folders:_,products:ee,allFilesCount:le,trashCount:ne,files:ae,query:re,onQueryChange:ie,filters:te=J,onFiltersChange:oe,extraFilters:de,view:se="grid",onViewChange:ce,selectedIds:me,onSelectionChange:ue,usedIn:he,denied:pe={},accept:fe="image/*,video/*",maxSizeBytes:ge,busy:ve,progress:ye,onUpload:ke,onNewFolder:be,onRename:we,onMove:xe,onTrash:Ce,onDeleteFolder:Ne,onRestore:Ie,onDeleteForever:De,onEmptyTrash:Se,onReplace:je,onCropEdit:ze,onOpenInDesign:Fe,onChoose:Te,onCancel:Pe,pickNote:Oe,className:Ee=""}=T,Ke=E().mediaLibrary,Le=E().media,Ae="pick"===Z,Me=!Ae,Re=K(null),Ue=O(Re,"phone"===Q?343:1200),Be="phone"===Q||"auto"===Q&&Ue<640,Ge=L(()=>function(e=[]){const l=/* @__PURE__ */new Map,n=(e,a)=>{for(const r of e){const e=[...a,r];l.set(r.id,{node:r,path:e}),r.children&&n(r.children,e)}};return n(e,[]),l}(ee),[ee]),We=L(()=>new Map(_.map(e=>[e.id,e])),[_]),He=L(()=>{const e=/* @__PURE__ */new Map;for(const l of _){const n=l.parentId&&We.has(l.parentId)?l.parentId:null;e.set(n,[...e.get(n)??[],l])}return e},[_,We]),Je=A(e=>{const l=[];for(let n=e?We.get(e):void 0;n&&(l.unshift(n),!(l.length>_.length));n=n.parentId?We.get(n.parentId):void 0);return l},[We,_.length]),Ve=A((e,l)=>Je(e).some(e=>e.id===l),[Je]),[Ye,$e]=M(()=>/* @__PURE__ */new Set(["@files"])),Ze=e=>$e(l=>{const n=new Set(l);return n.has(e)?n.delete(e):n.add(e),n}),Qe=A(e=>{$e(l=>e.every(e=>l.has(e))?l:/* @__PURE__ */new Set([...l,...e]))},[]),Xe="files"===(qe=X).place?`files:${qe.folderId??""}`:"products"===qe.place?`products:${qe.nodeId??""}`:"trash";var qe;R(()=>{if("files"===X.place)Qe(["@files",...Je(X.folderId).slice(0,-1).map(e=>e.id)]);else if("products"===X.place){const e=X.nodeId?Ge.get(X.nodeId)?.path??[]:[];Qe(["@products",...e.slice(0,-1).map(e=>`p:${e.id}`)])}},[Xe]);const _e="products"===X.place,el="trash"===X.place,ll="files"===X.place,nl=ll?X.folderId:null,al=_e&&X.nodeId?Ge.get(X.nodeId)?.path[0]:void 0,rl=e=>e?.sharedFrom?`${Ke.readOnly} ${Ke.editedAtHq(e.sharedFrom)}`:Ke.readOnly,il=L(()=>ae.map(e=>e.id),[ae]),tl=L(()=>new Map(ae.map(e=>[e.id,e])),[ae]),ol=b(il),dl=L(()=>il.filter(e=>ol.selected.has(e)),[il,ol.selected]),sl=1===dl.length?tl.get(dl[0]):void 0,cl=K(!0);R(()=>{cl.current?cl.current=!1:ol.clear()},[Xe]);const ml=me?.join("\0");R(()=>{me&&ol.setSelection(me)},[ml]);const ul=K(ml??""),hl=dl.join("\0");R(()=>{ul.current!==hl&&(ul.current=hl,ue?.(dl))},[hl]);const pl=(e,l={})=>{Ae?ol.select(e):ol.select(e,{ctrl:!(!l.ctrlKey&&!l.metaKey),shift:!!l.shiftKey})},[fl,gl]=M(null),vl=e=>{const l=fl;if(gl(null),!l||null==e)return;e!==("folder"===l.kind?We.get(l.id)?.name:tl.get(l.id)?.name)&&we?.(l,e)},yl=async e=>{if(!be)return;const l=await be(e);Qe(["@files",...e?[e]:[]]),"string"==typeof l&&gl({kind:"folder",id:l})},kl=A(e=>{const l=[],n=l=>{if("files"===e.kind)return l===nl&&ll?Ke.alreadyHere:void 0;const n=We.get(e.id);return l===e.id||l&&Ve(l,e.id)?Ke.notIntoItself:(n?.parentId??null)===l?Ke.folderAlreadyHere:void 0};l.push({key:s,label:Ke.allFiles,disabledReason:n(null)});const a=(e,r)=>{for(const i of He.get(e)??[])l.push({key:i.id,label:i.name,depth:r,disabledReason:n(i.id)}),a(i.id,r+1)};return a(null,1),l},[He,We,ll,Ve,nl,Ke]),bl=A(e=>{const l=new Set(e.map(e=>tl.get(e)?.kind??"image"));return 1===l.size?[...l][0]:"file"},[tl]),[wl,xl]=M(null),Cl={words:Ke,media:Le,denied:pe,moveTargets:kl,kindOf:bl,urlOf:e=>tl.get(e)?.url,newSubfolder:be&&Me?e=>{yl(e)}:void 0,rename:we&&Me?e=>{"file"!==e.kind||ol.isSelected(e.id)||ol.select(e.id),gl(e)}:void 0,move:xe&&Me?xe:void 0,trash:Ce&&Me?Ce:void 0,deleteFolder:Ne&&Me?Ne:void 0,folderNotEmpty:e=>!!We.get(e)?.notEmpty,replace:je&&Me?je:void 0,copyUrl:e=>{const l=tl.get(e)?.url;l&&u(Ke.urlLabel,l)},openInDesign:Fe,restore:Ie,deleteForever:De},Nl=e=>c(e,Cl),Il=C(),Dl=(e,l)=>{Ae||(ol.isSelected(e)||ol.select(e),Il.open(l,(e=>{const l=ol.isSelected(e)?dl:[e];return _e?{kind:"render",id:e}:el?{kind:"trashed",ids:l}:{kind:"files",ids:l}})(e)))},[Sl,jl]=M(null),[zl,Fl]=M(null),[Tl,Pl]=M(null);R(()=>{if(!zl&&!Sl)return;const e=()=>{Fl(null),jl(null)};return window.addEventListener("dragend",e),window.addEventListener("drop",e),()=>{window.removeEventListener("dragend",e),window.removeEventListener("drop",e)}},[zl,Sl]);const Ol=(e,l)=>Array.from(e.dataTransfer?.types??[]).includes(l),El=(e,l)=>!(!xe||pe.move||Ae)&&(!!Ol(e,W)||!(!Ol(e,H)||!Tl)&&(l!==Tl&&!(l&&Ve(l,Tl)))),Kl=(e,l)=>({onDragEnter:n=>{El(n,l)&&(n.preventDefault(),jl(e))},onDragOver:n=>{El(n,l)&&(n.preventDefault(),n.dataTransfer.dropEffect="move",Sl!==e&&jl(e))},onDragLeave:l=>{const n=l.relatedTarget;n&&l.currentTarget.contains(n)||jl(l=>l===e?null:l)},onDrop:e=>{if(El(e,l))if(e.preventDefault(),jl(null),Ol(e,W)){let n;try{n=JSON.parse(e.dataTransfer.getData(W))}catch{n=null}Array.isArray(n)&&n.length&&xe({kind:"files",ids:n.map(String)},l)}else Tl&&(xe({kind:"folder",id:Tl},l),Pl(null))}}),Ll=e=>{const l=e=>Ol(e,W)||Ol(e,H)||Ol(e,"Files");return{onDragEnter:n=>{l(n)&&Fl(e)},onDragOver:n=>{l(n)&&zl!==e&&Fl(e)},onDragLeave:l=>{const n=l.relatedTarget;n&&l.currentTarget.contains(n)||Fl(l=>l===e?null:l)}}},Al=(e,l,n)=>/* @__PURE__ */G(P,{side:"right",content:zl===e?Ke.noDropProducts:rl(n),open:zl===e||!zl&&void 0,children:/* @__PURE__ */G("span",{children:l})}),Ml=e=>({onContextMenu:l=>{Il.open(l,e)}}),Rl=(e,a,r)=>e.map(e=>{const i=`p:${e.id}`,t=r??e,o=Ye.has(i),d=e.children?.length?e.children:null;/* @__PURE__ */
3
- return U("div",{role:"none",className:"contents",children:[
4
- /* @__PURE__ */G(l,{label:Al(i,e.name,t),level:a,icon:d&&o?V.folderOpen:V.folder,badge:null!=e.count?e.count:void 0,selected:_e&&X.nodeId===e.id,expanded:d?o:void 0,onToggle:d?()=>Ze(i):void 0,onSelect:()=>q({place:"products",nodeId:e.id}),rowProps:{"data-media-row":i,...Ll(i),...Me?Ml({kind:"product-node",id:e.id}):{}}}),d&&o&&/* @__PURE__ */G(n,{children:Rl(d,a+1,t)})]},e.id)}),Ul=(e,a)=>(He.get(e)??[]).map(e=>{const r=He.get(e.id),i=Ye.has(e.id),t="folder"===fl?.kind&&fl.id===e.id,o=Nl({kind:"folder",id:e.id});/* @__PURE__ */
5
- return U("div",{role:"none",className:"contents",children:[
6
- /* @__PURE__ */G(l,{label:e.name,level:a,icon:r&&i?V.folderOpen:V.folder,badge:null!=e.count?e.count:void 0,selected:t||ll&&X.folderId===e.id,expanded:r?i:void 0,onToggle:r?()=>Ze(e.id):void 0,onSelect:()=>q({place:"files",folderId:e.id}),drop:Sl===e.id?"into":void 0,dragging:Tl===e.id,draggable:Me&&!!xe&&!pe.move,rename:t?/* @__PURE__ */G($,{value:e.name,label:Ke.folderName,onDone:vl}):void 0,actions:Me&&o.length?/* @__PURE__ */G(h,{align:"end","aria-label":Ke.folderActions,trigger:V.more,items:o}):void 0,rowProps:{"data-media-row":e.id,...Kl(e.id,e.id),...Me?Ml({kind:"folder",id:e.id}):{},...Me&&xe&&!pe.move?{draggable:!0,onDragStart:l=>{l.dataTransfer.effectAllowed="move",l.dataTransfer.setData(H,e.id),Pl(e.id)},onDragEnd:()=>{Pl(null),jl(null)}}:{}}}),r&&i&&/* @__PURE__ */G(n,{children:Ul(e.id,a+1)})]},e.id)}),Bl=Ye.has("@files"),Gl=Ye.has("@products"),Wl=/* @__PURE__ */U(e,{"aria-label":Ke.folders,children:[ee&&/* @__PURE__ */U(B,{children:[
7
- /* @__PURE__ */G(l,{label:Al("@products",Ke.products),level:1,icon:V.lock,badge:{label:Ke.readOnlyBadge,tone:"neutral"},expanded:ee.length?Gl:void 0,onToggle:()=>Ze("@products"),selected:_e&&null==X.nodeId,onSelect:()=>q({place:"products",nodeId:null}),rowProps:{"data-media-row":"@products",...Ll("@products")}}),Gl&&ee.length>0&&/* @__PURE__ */G(n,{children:Rl(ee,2)})]}),
8
- /* @__PURE__ */G(l,{label:Ke.allFiles,level:1,icon:Bl?V.folderOpen:V.folder,badge:null!=le?le:void 0,expanded:He.get(null)?.length?Bl:void 0,onToggle:()=>Ze("@files"),selected:ll&&null==X.folderId,onSelect:()=>q({place:"files",folderId:null}),drop:"@files"===Sl?"into":void 0,rowProps:{"data-media-row":"@files",...Kl("@files",null)}}),Bl&&(He.get(null)?.length??0)>0&&/* @__PURE__ */G(n,{children:Ul(null,2)}),Me&&/* @__PURE__ */G(l,{label:Ke.trash,level:1,icon:V.trash,badge:null!=ne?ne:void 0,selected:el,onSelect:()=>q({place:"trash"}),rowProps:{"data-media-row":"@trash"}})]}),Hl=(()=>{if(el)return[{label:Ke.trash}];if(_e){const e=X.nodeId?Ge.get(X.nodeId)?.path??[]:[];return[{label:Ke.products,onClick:e.length?()=>q({place:"products",nodeId:null}):void 0},...e.map((l,n)=>({label:l.name,onClick:n<e.length-1?()=>q({place:"products",nodeId:l.id}):void 0}))]}const e=Je(nl);return[{label:Ke.allFiles,onClick:e.length?()=>q({place:"files",folderId:null}):void 0},...e.map((l,n)=>({label:l.name,onClick:n<e.length-1?()=>q({place:"files",folderId:l.id}):void 0}))]})(),Jl=_e?Ke.readOnly:pe.upload,Vl=!!ke&&!el&&!Jl,Yl=y({accept:fe,maxSizeBytes:ge,multiple:!0,disabled:!Vl,onAccept:e=>ke?.(e,nl)}),$l=_e?Ke.noProductFolder:pe.newFolder,Zl=e=>e?{"aria-disabled":!0,disabledReason:e}:{},Ql=/* @__PURE__ */U("div",{className:"flex flex-wrap items-center gap-2",children:[Me&&be&&!el&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.folderPlus,onClick:()=>{yl(nl)},...Zl($l),children:Ke.newFolder}),ke&&!el&&/* @__PURE__ */G(z,{variant:"primary",size:"sm",leftIcon:V.upload,onClick:()=>Yl.open(),...Zl(Jl),children:Ke.upload}),Me&&el&&Se&&ae.length>0&&/* @__PURE__ */G(z,{variant:"danger",size:"sm",onClick:Se,...Zl(pe.deleteForever),children:Ke.emptyTrash})]}),Xl=(e,l,n,a,r)=>/* @__PURE__ */G("div",{style:{width:Be?void 0:r,flex:Be?"1 1 120px":"0 0 auto",minWidth:0},children:/* @__PURE__ */G(g,{size:"sm","aria-label":e,value:l,onChange:a,options:n})},e),ql=e=>l=>oe?.({...te,[e]:l}),_l=/* @__PURE__ */U("div",{className:"flex flex-wrap items-center gap-2",children:[ie&&/* @__PURE__ */G("div",{style:{flex:"1 1 200px",minWidth:0},children:/* @__PURE__ */G(D,{size:"sm",type:"search",leftIcon:V.search,placeholder:_e?Ke.searchProducts:Ke.search,"aria-label":_e?Ke.searchProducts:Ke.search,value:re??"",onChange:e=>ie(e.target.value)})}),oe&&Xl(Ke.mediaType,te.type,[{value:"all",label:Ke.allTypes},{value:"image",label:Ke.images},{value:"video",label:Ke.videos},{value:"svg",label:"SVG"},{value:"gif",label:"GIF"}],ql("type"),130),oe&&!_e&&!el&&Xl(Ke.use,te.use,[{value:"any",label:Ke.anyUse},{value:"email",label:Ke.emailOnly},{value:"website",label:Ke.websiteOnly},{value:"unused",label:Ke.notUsed}],ql("use"),130),oe&&Me&&Xl(Ke.sort,te.sort,[{value:"newest",label:Ke.newest},{value:"name",label:Ke.byName},{value:"size",label:Ke.bySize}],ql("sort"),110),de?.map(e=>Xl(e.label,e.value,e.options,e.onChange,120)),ce&&/* @__PURE__ */G(v,{size:"sm",label:Ke.view,value:se,onChange:ce,options:[{value:"grid",label:Ke.grid,icon:V.grid},{value:"list",label:Ke.list,icon:V.list}]})]}),en=e=>{const l=[];return null!=e.trashedDaysAgo&&l.push({key:"t",label:Ke.daysAgo(e.trashedDaysAgo),count:e.trashedDaysAgo,icon:Y.clock,tone:"neutral"}),e.usedCount&&l.push({key:"u",label:Ke.used(e.usedCount),count:e.usedCount,icon:Y.link,tone:"active"}),e.email&&l.push({key:"e",label:Ke.email,icon:Y.email,tone:"queued"}),e.private&&l.push({key:"p",label:Ke.private,icon:Y.lock,tone:"neutral"}),l},ln=e=>en(e).map(e=>/* @__PURE__ */G(j,{tone:e.tone,size:"xs",children:e.label},e.key)),nn=Me&&ll&&!!xe&&!pe.move,an=ae.map(e=>({id:e.id,url:e.thumbUrl??e.url,name:e.name,kind:e.kind,caption:e.name,badges:en(e),dragData:nn?JSON.stringify(ol.isSelected(e.id)?dl:[e.id]):void 0})),rn=Be?Math.max(72,Math.floor((Ue-24-16-1)/3)):112,tn=K(null),on=w({containerRef:tn,enabled:Me&&!Be&&ae.length>0,selected:ol.selected,setSelection:e=>ol.setSelection(e),clearSelection:ol.clear}),dn=e=>{if(Ae){const l=tl.get(e);return void(!l||l.private||l.pickDisabledReason||Te?.(l))}const l=il.indexOf(e);l>=0&&xl(l)},sn=ae.length?null:re?/* @__PURE__ */G(r,{variant:"dashed",title:Ke.noMatches}):_e?/* @__PURE__ */G(r,{variant:"dashed",title:Ke.emptyProducts,description:rl(al)}):el?/* @__PURE__ */G(r,{variant:"dashed",title:Ke.trashEmpty}):!Vl||Ae?/* @__PURE__ */G(r,{variant:"dashed",title:Ke.emptyFolder}):null,cn="list"===se&&ae.length>0,mn=sn??(cn?/* @__PURE__ */G("ul",{role:"listbox","aria-multiselectable":Me||void 0,"aria-label":Ke.folders,className:"flex flex-col gap-1",children:ae.map(e=>/* @__PURE__ */U("li",{role:"option","aria-selected":ol.isSelected(e.id),tabIndex:0,"data-grid-item":"","data-grid-id":e.id,onClick:l=>pl(e.id,l),onDoubleClick:()=>dn(e.id),onContextMenu:l=>Dl(e.id,l),onKeyDown:l=>{"Enter"!==l.key&&" "!==l.key||(l.preventDefault(),pl(e.id,l))},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)] "+(ol.isSelected(e.id)?"bg-blue-50 text-blue-700":"text-gray-700 hover:bg-gray-100"),children:[
1
+ import{Tree as e,TreeRow as l,TreeGroup as n}from"./chunk-2U2GJCSP.js";import{MarqueeBox as a}from"./chunk-IC72MGON.js";import{EmptyState as r}from"./chunk-M2KV4WKR.js";import{ImageLightbox as i}from"./chunk-O2YAB6WK.js";import{DescriptionList as t}from"./chunk-SACUSHVN.js";import{Drawer as o}from"./chunk-JE6TBZGY.js";import{Breadcrumbs as d}from"./chunk-EBC4XFL2.js";import{ROOT_KEY as s,mediaLibraryMenu as c}from"./chunk-2F7ZOMKK.js";import{useMediaMoveItems as m}from"./chunk-DFDDRKIJ.js";import{copyToClipboard as u}from"./chunk-5PY4H4ZJ.js";import{DropdownMenu as h}from"./chunk-5FCEBKT2.js";import{MediaUploadGrid as p}from"./chunk-WKRFD4E4.js";import{MediaUsedInList as f}from"./chunk-GK3QH63P.js";import{NativeSelect as g}from"./chunk-2PWZNFFP.js";import{Segmented as v}from"./chunk-N6DTTOB6.js";import{useFileIntake as y,FileIntakeAlert as k}from"./chunk-YDYDR72S.js";import{useGridSelection as b}from"./chunk-VLKDWKVR.js";import{useMarquee as w}from"./chunk-OLFYNMTD.js";import{Checkbox_default as x}from"./chunk-CGZBDI6C.js";import{useContextMenu as C,ContextMenu as N}from"./chunk-JDKRQG7X.js";import{Banner as I}from"./chunk-MY755PTJ.js";import{Input_default as D}from"./chunk-GX2GSDJP.js";import{IconButton_default as S}from"./chunk-4CANQ3B3.js";import{ColoredBadge as j}from"./chunk-4GVH4ZUH.js";import{Button_default as z}from"./chunk-4IU5BSVE.js";import{buttonClasses as F}from"./chunk-K7U4RWXJ.js";import{Icon as T}from"./chunk-2SHYR3RA.js";import{Tooltip as O}from"./chunk-22S6LG6D.js";import{usePlotWidth as P}from"./chunk-MAFUXCPZ.js";import{useShellStrings as E}from"./chunk-E6UCGCOC.js";import{useRef as K,useMemo as L,useCallback as A,useState as M,useEffect as R}from"react";import{jsxs as B,Fragment as U,jsx as G}from"react/jsx-runtime";var J="application/x-efficient-media-files",H="application/x-efficient-media-folder",W={type:"all",use:"any",sort:"newest"},V={lock:/* @__PURE__ */G(T,{name:"lock","aria-hidden":"true",className:"h-4 w-4"}),folder:/* @__PURE__ */G(T,{name:"folder","aria-hidden":"true",className:"h-4 w-4"}),folderOpen:/* @__PURE__ */G(T,{name:"folder-open","aria-hidden":"true",className:"h-4 w-4"}),folderPlus:/* @__PURE__ */G(T,{name:"folder-plus","aria-hidden":"true",className:"h-4 w-4"}),trash:/* @__PURE__ */G(T,{name:"trash","aria-hidden":"true",className:"h-4 w-4"}),upload:/* @__PURE__ */G(T,{name:"upload","aria-hidden":"true",className:"h-4 w-4"}),search:/* @__PURE__ */G(T,{name:"search","aria-hidden":"true",className:"h-4 w-4"}),grid:/* @__PURE__ */G(T,{name:"grid","aria-hidden":"true",className:"h-4 w-4"}),list:/* @__PURE__ */G(T,{name:"list","aria-hidden":"true",className:"h-4 w-4"}),more:/* @__PURE__ */G(T,{name:"more","aria-hidden":"true",className:"h-4 w-4"}),copy:/* @__PURE__ */G(T,{name:"copy","aria-hidden":"true",className:"h-4 w-4"}),edit:/* @__PURE__ */G(T,{name:"edit","aria-hidden":"true",className:"h-4 w-4"}),swap:/* @__PURE__ */G(T,{name:"swap","aria-hidden":"true",className:"h-4 w-4"}),crop:/* @__PURE__ */G(T,{name:"crop","aria-hidden":"true",className:"h-4 w-4"}),external:/* @__PURE__ */G(T,{name:"external","aria-hidden":"true",className:"h-4 w-4"}),undo:/* @__PURE__ */G(T,{name:"undo","aria-hidden":"true",className:"h-4 w-4"})},Y={link:/* @__PURE__ */G(T,{name:"link","aria-hidden":"true",className:"h-3 w-3"}),email:/* @__PURE__ */G(T,{name:"email","aria-hidden":"true",className:"h-3 w-3"}),lock:/* @__PURE__ */G(T,{name:"lock","aria-hidden":"true",className:"h-3 w-3"}),clock:/* @__PURE__ */G(T,{name:"clock","aria-hidden":"true",className:"h-3 w-3"})};function Z({value:e,label:l,onDone:n}){const[a,r]=M(e),i=K(!1),t=e=>{i.current||(i.current=!0,n(e))};/* @__PURE__ */
2
+ return G(D,{size:"sm",autoFocus:!0,"aria-label":l,value:a,onChange:e=>r(e.target.value),onFocus:e=>e.currentTarget.select(),onKeyDown:l=>{l.stopPropagation(),"Enter"===l.key?(l.preventDefault(),t(a.trim()||e)):"Escape"===l.key&&(l.preventDefault(),t(null))},onBlur:()=>t(a.trim()||e),onClick:e=>e.stopPropagation()})}function $(T){const{mode:$="manage",layout:X="auto",location:q,onLocationChange:Q,folders:_,products:ee,allFilesCount:le,trashCount:ne,files:ae,query:re,onQueryChange:ie,filters:te=W,onFiltersChange:oe,extraFilters:de,view:se="grid",onViewChange:ce,selectedIds:me,onSelectionChange:ue,usedIn:he,denied:pe={},accept:fe="image/*,video/*",maxSizeBytes:ge,busy:ve,progress:ye,onUpload:ke,onNewFolder:be,onRename:we,onMove:xe,onTrash:Ce,onDeleteFolder:Ne,onRestore:Ie,onDeleteForever:De,onEmptyTrash:Se,onReplace:je,onCropEdit:ze,onOpenInDesign:Fe,onChoose:Te,onCancel:Oe,pickNote:Pe,className:Ee=""}=T,Ke=E().mediaLibrary,Le=E().media,Ae="pick"===$,Me=!Ae,Re=K(null),Be=P(Re,"phone"===X?343:1200),Ue="phone"===X||"auto"===X&&Be<640,Ge=L(()=>function(e=[]){const l=/* @__PURE__ */new Map,n=(e,a)=>{for(const r of e){const e=[...a,r];l.set(r.id,{node:r,path:e}),r.children&&n(r.children,e)}};return n(e,[]),l}(ee),[ee]),Je=L(()=>new Map(_.map(e=>[e.id,e])),[_]),He=L(()=>{const e=/* @__PURE__ */new Map;for(const l of _){const n=l.parentId&&Je.has(l.parentId)?l.parentId:null;e.set(n,[...e.get(n)??[],l])}return e},[_,Je]),We=A(e=>{const l=[];for(let n=e?Je.get(e):void 0;n&&(l.unshift(n),!(l.length>_.length));n=n.parentId?Je.get(n.parentId):void 0);return l},[Je,_.length]),Ve=A((e,l)=>We(e).some(e=>e.id===l),[We]),[Ye,Ze]=M(()=>/* @__PURE__ */new Set(["@files"])),$e=e=>Ze(l=>{const n=new Set(l);return n.has(e)?n.delete(e):n.add(e),n}),Xe=A(e=>{Ze(l=>e.every(e=>l.has(e))?l:/* @__PURE__ */new Set([...l,...e]))},[]),qe="files"===(Qe=q).place?`files:${Qe.folderId??""}`:"products"===Qe.place?`products:${Qe.nodeId??""}`:"trash";var Qe;R(()=>{if("files"===q.place)Xe(["@files",...We(q.folderId).slice(0,-1).map(e=>e.id)]);else if("products"===q.place){const e=q.nodeId?Ge.get(q.nodeId)?.path??[]:[];Xe(["@products",...e.slice(0,-1).map(e=>`p:${e.id}`)])}},[qe]);const _e="products"===q.place,el="trash"===q.place,ll="files"===q.place,nl=ll?q.folderId:null,al=_e&&q.nodeId?Ge.get(q.nodeId)?.path[0]:void 0,rl=e=>e?.sharedFrom?`${Ke.readOnly} ${Ke.editedAtHq(e.sharedFrom)}`:Ke.readOnly,il=L(()=>ae.map(e=>e.id),[ae]),tl=L(()=>new Map(ae.map(e=>[e.id,e])),[ae]),ol=b(il),dl=L(()=>il.filter(e=>ol.selected.has(e)),[il,ol.selected]),sl=1===dl.length?tl.get(dl[0]):void 0,cl=K(!0);R(()=>{cl.current?cl.current=!1:ol.clear()},[qe]);const ml=me?.join("\0");R(()=>{me&&ol.setSelection(me)},[ml]);const ul=K(ml??""),hl=dl.join("\0");R(()=>{ul.current!==hl&&(ul.current=hl,ue?.(dl))},[hl]);const pl=(e,l={})=>{Ae?ol.select(e):ol.select(e,{ctrl:!(!l.ctrlKey&&!l.metaKey),shift:!!l.shiftKey})},[fl,gl]=M(null),vl=e=>{const l=fl;if(gl(null),!l||null==e)return;e!==("folder"===l.kind?Je.get(l.id)?.name:tl.get(l.id)?.name)&&we?.(l,e)},yl=async e=>{if(!be)return;const l=await be(e);Xe(["@files",...e?[e]:[]]),"string"==typeof l&&gl({kind:"folder",id:l})},kl=A(e=>{const l=[],n=l=>{if("files"===e.kind)return l===nl&&ll?Ke.alreadyHere:void 0;const n=Je.get(e.id);return l===e.id||l&&Ve(l,e.id)?Ke.notIntoItself:(n?.parentId??null)===l?Ke.folderAlreadyHere:void 0};l.push({key:s,label:Ke.allFiles,disabledReason:n(null)});const a=(e,r)=>{for(const i of He.get(e)??[])l.push({key:i.id,label:i.name,depth:r,disabledReason:n(i.id)}),a(i.id,r+1)};return a(null,1),l},[He,Je,ll,Ve,nl,Ke]),bl=A(e=>{const l=new Set(e.map(e=>tl.get(e)?.kind??"image"));return 1===l.size?[...l][0]:"file"},[tl]),[wl,xl]=M(null),Cl={words:Ke,media:Le,denied:pe,moveTargets:kl,kindOf:bl,urlOf:e=>tl.get(e)?.url,newSubfolder:be&&Me?e=>{yl(e)}:void 0,rename:we&&Me?e=>{"file"!==e.kind||ol.isSelected(e.id)||ol.select(e.id),gl(e)}:void 0,move:xe&&Me?xe:void 0,trash:Ce&&Me?Ce:void 0,deleteFolder:Ne&&Me?Ne:void 0,folderNotEmpty:e=>!!Je.get(e)?.notEmpty,replace:je&&Me?je:void 0,copyUrl:e=>{const l=tl.get(e)?.url;l&&u(Ke.urlLabel,l)},openInDesign:Fe,restore:Ie,deleteForever:De},Nl=e=>c(e,Cl),Il=C(),Dl=(e,l)=>{Ae||(ol.isSelected(e)||ol.select(e),Il.open(l,(e=>{const l=ol.isSelected(e)?dl:[e];return _e?{kind:"render",id:e}:el?{kind:"trashed",ids:l}:{kind:"files",ids:l}})(e)))},[Sl,jl]=M(null),[zl,Fl]=M(null),[Tl,Ol]=M(null);R(()=>{if(!zl&&!Sl)return;const e=()=>{Fl(null),jl(null)};return window.addEventListener("dragend",e),window.addEventListener("drop",e),()=>{window.removeEventListener("dragend",e),window.removeEventListener("drop",e)}},[zl,Sl]);const Pl=(e,l)=>Array.from(e.dataTransfer?.types??[]).includes(l),El=(e,l)=>!(!xe||pe.move||Ae)&&(!!Pl(e,J)||!(!Pl(e,H)||!Tl)&&(l!==Tl&&!(l&&Ve(l,Tl)))),Kl=(e,l)=>({onDragEnter:n=>{El(n,l)&&(n.preventDefault(),jl(e))},onDragOver:n=>{El(n,l)&&(n.preventDefault(),n.dataTransfer.dropEffect="move",Sl!==e&&jl(e))},onDragLeave:l=>{const n=l.relatedTarget;n&&l.currentTarget.contains(n)||jl(l=>l===e?null:l)},onDrop:e=>{if(El(e,l))if(e.preventDefault(),jl(null),Pl(e,J)){let n;try{n=JSON.parse(e.dataTransfer.getData(J))}catch{n=null}Array.isArray(n)&&n.length&&xe({kind:"files",ids:n.map(String)},l)}else Tl&&(xe({kind:"folder",id:Tl},l),Ol(null))}}),Ll=e=>{const l=e=>Pl(e,J)||Pl(e,H)||Pl(e,"Files");return{onDragEnter:n=>{l(n)&&Fl(e)},onDragOver:n=>{l(n)&&zl!==e&&Fl(e)},onDragLeave:l=>{const n=l.relatedTarget;n&&l.currentTarget.contains(n)||Fl(l=>l===e?null:l)}}},Al=(e,l,n)=>/* @__PURE__ */G(O,{side:"right",content:zl===e?Ke.noDropProducts:rl(n),open:zl===e||!zl&&void 0,children:/* @__PURE__ */G("span",{children:l})}),Ml=e=>({onContextMenu:l=>{Il.open(l,e)}}),Rl=(e,a,r)=>e.map(e=>{const i=`p:${e.id}`,t=r??e,o=Ye.has(i),d=e.children?.length?e.children:null;/* @__PURE__ */
3
+ return B("div",{role:"none",className:"contents",children:[
4
+ /* @__PURE__ */G(l,{label:Al(i,e.name,t),level:a,icon:d&&o?V.folderOpen:V.folder,badge:null!=e.count?e.count:void 0,selected:_e&&q.nodeId===e.id,expanded:d?o:void 0,onToggle:d?()=>$e(i):void 0,onSelect:()=>Q({place:"products",nodeId:e.id}),rowProps:{"data-media-row":i,...Ll(i),...Me?Ml({kind:"product-node",id:e.id}):{}}}),d&&o&&/* @__PURE__ */G(n,{children:Rl(d,a+1,t)})]},e.id)}),Bl=(e,a)=>(He.get(e)??[]).map(e=>{const r=He.get(e.id),i=Ye.has(e.id),t="folder"===fl?.kind&&fl.id===e.id,o=Nl({kind:"folder",id:e.id});/* @__PURE__ */
5
+ return B("div",{role:"none",className:"contents",children:[
6
+ /* @__PURE__ */G(l,{label:e.name,level:a,icon:r&&i?V.folderOpen:V.folder,badge:null!=e.count?e.count:void 0,selected:t||ll&&q.folderId===e.id,expanded:r?i:void 0,onToggle:r?()=>$e(e.id):void 0,onSelect:()=>Q({place:"files",folderId:e.id}),drop:Sl===e.id?"into":void 0,dragging:Tl===e.id,draggable:Me&&!!xe&&!pe.move,rename:t?/* @__PURE__ */G(Z,{value:e.name,label:Ke.folderName,onDone:vl}):void 0,actions:Me&&o.length?/* @__PURE__ */G(h,{align:"end","aria-label":Ke.folderActions,trigger:V.more,items:o}):void 0,rowProps:{"data-media-row":e.id,...Kl(e.id,e.id),...Me?Ml({kind:"folder",id:e.id}):{},...Me&&xe&&!pe.move?{draggable:!0,onDragStart:l=>{l.dataTransfer.effectAllowed="move",l.dataTransfer.setData(H,e.id),Ol(e.id)},onDragEnd:()=>{Ol(null),jl(null)}}:{}}}),r&&i&&/* @__PURE__ */G(n,{children:Bl(e.id,a+1)})]},e.id)}),Ul=Ye.has("@files"),Gl=Ye.has("@products"),Jl=/* @__PURE__ */B(e,{"aria-label":Ke.folders,children:[ee&&/* @__PURE__ */B(U,{children:[
7
+ /* @__PURE__ */G(l,{label:Al("@products",Ke.products),level:1,icon:V.lock,badge:{label:Ke.readOnlyBadge,tone:"neutral"},expanded:ee.length?Gl:void 0,onToggle:()=>$e("@products"),selected:_e&&null==q.nodeId,onSelect:()=>Q({place:"products",nodeId:null}),rowProps:{"data-media-row":"@products",...Ll("@products")}}),Gl&&ee.length>0&&/* @__PURE__ */G(n,{children:Rl(ee,2)})]}),
8
+ /* @__PURE__ */G(l,{label:Ke.allFiles,level:1,icon:Ul?V.folderOpen:V.folder,badge:null!=le?le:void 0,expanded:He.get(null)?.length?Ul:void 0,onToggle:()=>$e("@files"),selected:ll&&null==q.folderId,onSelect:()=>Q({place:"files",folderId:null}),drop:"@files"===Sl?"into":void 0,rowProps:{"data-media-row":"@files",...Kl("@files",null)}}),Ul&&(He.get(null)?.length??0)>0&&/* @__PURE__ */G(n,{children:Bl(null,2)}),Me&&/* @__PURE__ */G(l,{label:Ke.trash,level:1,icon:V.trash,badge:null!=ne?ne:void 0,selected:el,onSelect:()=>Q({place:"trash"}),rowProps:{"data-media-row":"@trash"}})]}),Hl=(()=>{if(el)return[{label:Ke.trash}];if(_e){const e=q.nodeId?Ge.get(q.nodeId)?.path??[]:[];return[{label:Ke.products,onClick:e.length?()=>Q({place:"products",nodeId:null}):void 0},...e.map((l,n)=>({label:l.name,onClick:n<e.length-1?()=>Q({place:"products",nodeId:l.id}):void 0}))]}const e=We(nl);return[{label:Ke.allFiles,onClick:e.length?()=>Q({place:"files",folderId:null}):void 0},...e.map((l,n)=>({label:l.name,onClick:n<e.length-1?()=>Q({place:"files",folderId:l.id}):void 0}))]})(),Wl=_e?Ke.readOnly:pe.upload,Vl=!!ke&&!el&&!Wl,Yl=y({accept:fe,maxSizeBytes:ge,multiple:!0,disabled:!Vl,onAccept:e=>ke?.(e,nl)}),Zl=_e?Ke.noProductFolder:pe.newFolder,$l=e=>e?{"aria-disabled":!0,disabledReason:e}:{},Xl=/* @__PURE__ */B("div",{className:"flex flex-wrap items-center gap-2",children:[Me&&be&&!el&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.folderPlus,onClick:()=>{yl(nl)},...$l(Zl),children:Ke.newFolder}),ke&&!el&&/* @__PURE__ */G(z,{variant:"primary",size:"sm",leftIcon:V.upload,onClick:()=>Yl.open(),...$l(Wl),children:Ke.upload}),Me&&el&&Se&&ae.length>0&&/* @__PURE__ */G(z,{variant:"danger",size:"sm",onClick:Se,...$l(pe.deleteForever),children:Ke.emptyTrash})]}),ql=(e,l,n,a,r)=>/* @__PURE__ */G("div",{style:{width:Ue?void 0:r,flex:Ue?"1 1 120px":"0 0 auto",minWidth:0},children:/* @__PURE__ */G(g,{size:"sm","aria-label":e,value:l,onChange:a,options:n})},e),Ql=e=>l=>oe?.({...te,[e]:l}),_l=/* @__PURE__ */B("div",{className:"flex flex-wrap items-center gap-2",children:[ie&&/* @__PURE__ */G("div",{style:{flex:"1 1 200px",minWidth:0},children:/* @__PURE__ */G(D,{size:"sm",type:"search",leftIcon:V.search,placeholder:_e?Ke.searchProducts:Ke.search,"aria-label":_e?Ke.searchProducts:Ke.search,value:re??"",onChange:e=>ie(e.target.value)})}),oe&&ql(Ke.mediaType,te.type,[{value:"all",label:Ke.allTypes},{value:"image",label:Ke.images},{value:"video",label:Ke.videos},{value:"svg",label:"SVG"},{value:"gif",label:"GIF"}],Ql("type"),130),oe&&!_e&&!el&&ql(Ke.use,te.use,[{value:"any",label:Ke.anyUse},{value:"email",label:Ke.emailOnly},{value:"website",label:Ke.websiteOnly},{value:"unused",label:Ke.notUsed}],Ql("use"),130),oe&&Me&&ql(Ke.sort,te.sort,[{value:"newest",label:Ke.newest},{value:"name",label:Ke.byName},{value:"size",label:Ke.bySize}],Ql("sort"),110),de?.map(e=>ql(e.label,e.value,e.options,e.onChange,120)),ce&&/* @__PURE__ */G(v,{size:"sm",label:Ke.view,value:se,onChange:ce,options:[{value:"grid",label:Ke.grid,icon:V.grid},{value:"list",label:Ke.list,icon:V.list}]})]}),en=e=>{const l=[];return null!=e.trashedDaysAgo&&l.push({key:"t",label:Ke.daysAgo(e.trashedDaysAgo),count:e.trashedDaysAgo,icon:Y.clock,tone:"neutral"}),e.usedCount&&l.push({key:"u",label:Ke.used(e.usedCount),count:e.usedCount,icon:Y.link,tone:"active"}),e.email&&l.push({key:"e",label:Ke.email,icon:Y.email,tone:"queued"}),e.private&&l.push({key:"p",label:Ke.private,icon:Y.lock,tone:"neutral"}),l},ln=e=>en(e).map(e=>/* @__PURE__ */G(j,{tone:e.tone,size:"xs",children:e.label},e.key)),nn=Me&&ll&&!!xe&&!pe.move,an=ae.map(e=>({id:e.id,url:e.thumbUrl??e.url,name:e.name,kind:e.kind,caption:e.name,badges:en(e),dragData:nn?JSON.stringify(ol.isSelected(e.id)?dl:[e.id]):void 0})),rn=Ue?Math.max(72,Math.floor((Be-24-16-1)/3)):112,tn=K(null),on=w({containerRef:tn,enabled:Me&&!Ue&&ae.length>0,selected:ol.selected,setSelection:e=>ol.setSelection(e),clearSelection:ol.clear}),dn=e=>{if(Ae){const l=tl.get(e);return void(!l||l.private||l.pickDisabledReason||Te?.(l))}const l=il.indexOf(e);l>=0&&xl(l)},sn=ae.length?null:re?/* @__PURE__ */G(r,{variant:"dashed",title:Ke.noMatches}):_e?/* @__PURE__ */G(r,{variant:"dashed",title:Ke.emptyProducts,description:rl(al)}):el?/* @__PURE__ */G(r,{variant:"dashed",title:Ke.trashEmpty}):!Vl||Ae?/* @__PURE__ */G(r,{variant:"dashed",title:Ke.emptyFolder}):null,cn="list"===se&&ae.length>0,mn=sn??(cn?/* @__PURE__ */G("ul",{role:"listbox","aria-multiselectable":Me||void 0,"aria-label":Ke.folders,className:"flex flex-col gap-1",children:ae.map(e=>/* @__PURE__ */B("li",{role:"option","aria-selected":ol.isSelected(e.id),tabIndex:0,"data-grid-item":"","data-grid-id":e.id,onClick:l=>pl(e.id,l),onDoubleClick:()=>dn(e.id),onContextMenu:l=>Dl(e.id,l),onKeyDown:l=>{"Enter"!==l.key&&" "!==l.key||(l.preventDefault(),pl(e.id,l))},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)] "+(ol.isSelected(e.id)?"bg-blue-50 text-blue-700":"text-gray-700 hover:bg-gray-100"),children:[
9
9
  /* @__PURE__ */G("img",{src:e.thumbUrl??e.url,alt:"",className:"h-10 w-10 shrink-0 rounded bg-gray-100 object-contain"}),
10
10
  /* @__PURE__ */G("span",{className:"min-w-0 flex-1 truncate",children:e.name}),
11
- /* @__PURE__ */G("span",{className:"flex shrink-0 items-center gap-1",children:ln(e)}),e.sizeLabel&&/* @__PURE__ */G("span",{className:"w-16 shrink-0 text-right text-xs text-gray-500",children:e.sizeLabel})]},e.id))}):/* @__PURE__ */G(p,{items:an,readOnly:!Vl||Ae,onFiles:Vl&&!Ae?e=>ke(e,nl):void 0,accept:fe,maxSizeBytes:ge,busy:ve,progress:ye,fit:"contain",thumbSize:rn,dragType:nn?W:void 0,selected:ol.selected,onItemClick:pl,onItemDoubleClick:dn,onItemContextMenu:Me?Dl:void 0,menuOnMedia:Me})),un=m({count:dl.length,kind:bl(dl),targets:kl({kind:"files",ids:dl}),onPick:e=>xe?.({kind:"files",ids:dl},e.key===s?null:e.key)}),hn=F({variant:"secondary",size:"sm"}),pn=/* @__PURE__ */G(h,{align:"start",triggerClassName:hn,trigger:/* @__PURE__ */U(B,{children:[V.folder,Ke.moveTo]}),items:un,disabled:!!pe.move}),fn=Me&&dl.length>1&&!_e?/* @__PURE__ */U("div",{"data-media-bulk":"",className:"flex flex-wrap items-center gap-2 rounded-lg border border-gray-200 px-3 py-2",children:[
12
- /* @__PURE__ */G(x,{checked:dl.length===ae.length,indeterminate:dl.length<ae.length,onChange:e=>e?ol.selectAll():ol.clear(),label:Ke.selected(dl.length)}),/* @__PURE__ */U(B,el?{children:[Ie&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.undo,onClick:()=>Ie(dl),...Zl(pe.restore),children:Ke.restore}),De&&/* @__PURE__ */G(z,{variant:"secondary-danger",size:"sm",onClick:()=>De(dl),...Zl(pe.deleteForever),children:Ke.deleteForever})]}:{children:[xe&&pn,we&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.edit,disabled:!0,children:Ke.rename}),Ce&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.trash,onClick:()=>Ce({kind:"files",ids:dl}),...Zl(pe.trash),children:Ke.moveFilesToTrash(dl.length)})]}),
13
- /* @__PURE__ */G(z,{variant:"ghost",size:"sm",onClick:ol.clear,children:Ke.clearSelection})]}):null,gn=e=>{const l=[],n=(e,n,a)=>{null!=a&&""!==a&&l.push({key:e,label:n,value:a})},a="file"===fl?.kind&&fl.id===e.id;n("name",Ke.name,a?/* @__PURE__ */G($,{value:e.name,label:Ke.fileName,onDone:vl}):e.name),n("type",Ke.type,e.typeLabel),n("size",Ke.size,e.sizeLabel),n("resolution",Ke.resolution,e.resolution),_e?(n("design",Ke.design,e.design),n("finish",Ke.finish,e.finish),n("angle",Ke.angleLug,e.angleLug),n("owner",Ke.owner,e.owner)):(n("added",Ke.addedBy,e.addedBy),n("folder",Ke.folder,e.folderPath)),n("used",Ke.usedIn,null!=e.usedCount?Ke.places(e.usedCount):void 0);const r=c({kind:"files",ids:[e.id]},Cl).find(e=>"submenu"===e.type);/* @__PURE__ */
14
- return U("div",{"data-media-details":"",className:"flex flex-col gap-3",children:[
11
+ /* @__PURE__ */G("span",{className:"flex shrink-0 items-center gap-1",children:ln(e)}),e.sizeLabel&&/* @__PURE__ */G("span",{className:"w-16 shrink-0 text-right text-xs text-gray-500",children:e.sizeLabel})]},e.id))}):/* @__PURE__ */G(p,{items:an,readOnly:!Vl||Ae,onFiles:Vl&&!Ae?e=>ke(e,nl):void 0,accept:fe,maxSizeBytes:ge,busy:ve,progress:ye,fit:"contain",thumbSize:rn,dragType:nn?J:void 0,selected:ol.selected,onItemClick:pl,onItemDoubleClick:dn,onItemContextMenu:Me?Dl:void 0,menuOnMedia:Me})),un=m({count:dl.length,kind:bl(dl),targets:kl({kind:"files",ids:dl}),onPick:e=>xe?.({kind:"files",ids:dl},e.key===s?null:e.key)}),hn=F({variant:"secondary",size:"sm"}),pn=/* @__PURE__ */G(h,{align:"start",triggerClassName:hn,trigger:/* @__PURE__ */B(U,{children:[V.folder,Ke.moveTo]}),items:un,disabled:!!pe.move}),fn=Me&&dl.length>1&&!_e?/* @__PURE__ */B("div",{"data-media-bulk":"",className:"flex flex-wrap items-center gap-2 rounded-lg border border-gray-200 px-3 py-2",children:[
12
+ /* @__PURE__ */G(x,{checked:dl.length===ae.length,indeterminate:dl.length<ae.length,onChange:e=>e?ol.selectAll():ol.clear(),label:Ke.selected(dl.length)}),/* @__PURE__ */B(U,el?{children:[Ie&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.undo,onClick:()=>Ie(dl),...$l(pe.restore),children:Ke.restore}),De&&/* @__PURE__ */G(z,{variant:"secondary-danger",size:"sm",onClick:()=>De(dl),...$l(pe.deleteForever),children:Ke.deleteForever})]}:{children:[xe&&pn,we&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.edit,disabled:!0,children:Ke.rename}),Ce&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.trash,onClick:()=>Ce({kind:"files",ids:dl}),...$l(pe.trash),children:Ke.moveFilesToTrash(dl.length)})]}),
13
+ /* @__PURE__ */G(z,{variant:"ghost",size:"sm",onClick:ol.clear,children:Ke.clearSelection})]}):null,gn=e=>{const l=[],n=(e,n,a)=>{null!=a&&""!==a&&l.push({key:e,label:n,value:a})},a="file"===fl?.kind&&fl.id===e.id;n("name",Ke.name,a?/* @__PURE__ */G(Z,{value:e.name,label:Ke.fileName,onDone:vl}):e.name),n("type",Ke.type,e.typeLabel),n("size",Ke.size,e.sizeLabel),n("resolution",Ke.resolution,e.resolution),_e?(n("design",Ke.design,e.design),n("finish",Ke.finish,e.finish),n("angle",Ke.angleLug,e.angleLug),n("owner",Ke.owner,e.owner)):(n("added",Ke.addedBy,e.addedBy),n("folder",Ke.folder,e.folderPath)),n("used",Ke.usedIn,null!=e.usedCount?Ke.places(e.usedCount):void 0);const r=c({kind:"files",ids:[e.id]},Cl).find(e=>"submenu"===e.type);/* @__PURE__ */
14
+ return B("div",{"data-media-details":"",className:"flex flex-col gap-3",children:[
15
15
  /* @__PURE__ */G("img",{src:e.url,alt:e.name,className:"aspect-square w-full rounded-lg bg-gray-100 object-contain"}),_e&&/* @__PURE__ */G(I,{tone:"neutral",title:Ke.readOnlyBadge,children:rl(al)}),
16
- /* @__PURE__ */G(t,{size:"sm",columns:1,items:l}),!el&&/* @__PURE__ */U("div",{className:"flex gap-2",children:[
16
+ /* @__PURE__ */G(t,{size:"sm",columns:1,items:l}),!el&&/* @__PURE__ */B("div",{className:"flex gap-2",children:[
17
17
  /* @__PURE__ */G("div",{style:{flex:"1 1 0",minWidth:0},children:/* @__PURE__ */G(D,{size:"sm",readOnly:!0,value:e.url,"aria-label":Ke.fileUrl,onFocus:e=>e.currentTarget.select()})}),
18
- /* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.copy,onClick:()=>Cl.copyUrl(e.id),children:Ke.copyUrl})]}),ll&&Me&&/* @__PURE__ */U("div",{className:"flex flex-wrap gap-2",children:[je&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.swap,onClick:()=>je(e.id),...Zl(pe.replace),children:Ke.replace}),ze&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.crop,onClick:()=>ze(e.id),children:Ke.cropEdit}),xe&&"submenu"===r?.type&&/* @__PURE__ */G(h,{align:"start",triggerClassName:hn,trigger:/* @__PURE__ */U(B,{children:[V.folder,Ke.moveTo]}),items:r.items,disabled:!!pe.move}),we&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.edit,onClick:()=>gl({kind:"file",id:e.id}),...Zl(pe.rename),children:Ke.rename}),Ce&&/* @__PURE__ */G(S,{"aria-label":Ke.moveToTrash,size:"sm",onClick:()=>Ce({kind:"files",ids:[e.id]}),disabledReason:pe.trash,"aria-disabled":!!pe.trash||void 0,children:V.trash})]}),el&&Me&&/* @__PURE__ */U("div",{className:"flex flex-wrap gap-2",children:[Ie&&/* @__PURE__ */G(z,{variant:"primary",size:"sm",leftIcon:V.undo,onClick:()=>Ie([e.id]),...Zl(pe.restore),children:Ke.restore}),De&&/* @__PURE__ */G(z,{variant:"danger",size:"sm",onClick:()=>De([e.id]),...Zl(pe.deleteForever),children:Ke.deleteForever})]}),_e&&Fe&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.external,onClick:()=>Fe({kind:"render",id:e.id}),children:Ke.openInDesign}),he&&/* @__PURE__ */G(f,{items:he})]})},vn=sl?sl.private?Ke.privateNoPick:sl.pickDisabledReason:void 0,yn=Ae?/* @__PURE__ */U("div",{"data-media-picker-footer":"",className:"flex flex-wrap items-center justify-between gap-2 border-t border-gray-200 px-3 py-2",children:[
18
+ /* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.copy,onClick:()=>Cl.copyUrl(e.id),children:Ke.copyUrl})]}),ll&&Me&&/* @__PURE__ */B("div",{className:"flex flex-wrap gap-2",children:[je&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.swap,onClick:()=>je(e.id),...$l(pe.replace),children:Ke.replace}),ze&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.crop,onClick:()=>ze(e.id),children:Ke.cropEdit}),xe&&"submenu"===r?.type&&/* @__PURE__ */G(h,{align:"start",triggerClassName:hn,trigger:/* @__PURE__ */B(U,{children:[V.folder,Ke.moveTo]}),items:r.items,disabled:!!pe.move}),we&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.edit,onClick:()=>gl({kind:"file",id:e.id}),...$l(pe.rename),children:Ke.rename}),Ce&&/* @__PURE__ */G(S,{"aria-label":Ke.moveToTrash,size:"sm",onClick:()=>Ce({kind:"files",ids:[e.id]}),disabledReason:pe.trash,"aria-disabled":!!pe.trash||void 0,children:V.trash})]}),el&&Me&&/* @__PURE__ */B("div",{className:"flex flex-wrap gap-2",children:[Ie&&/* @__PURE__ */G(z,{variant:"primary",size:"sm",leftIcon:V.undo,onClick:()=>Ie([e.id]),...$l(pe.restore),children:Ke.restore}),De&&/* @__PURE__ */G(z,{variant:"danger",size:"sm",onClick:()=>De([e.id]),...$l(pe.deleteForever),children:Ke.deleteForever})]}),_e&&Fe&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",leftIcon:V.external,onClick:()=>Fe({kind:"render",id:e.id}),children:Ke.openInDesign}),he&&/* @__PURE__ */G(f,{items:he})]})},vn=sl?sl.private?Ke.privateNoPick:sl.pickDisabledReason:void 0,yn=Ae?/* @__PURE__ */B("div",{"data-media-picker-footer":"",className:"flex flex-wrap items-center justify-between gap-2 border-t border-gray-200 px-3 py-2",children:[
19
19
  /* @__PURE__ */G("span",{className:"min-w-0 truncate text-sm text-gray-500",children:sl?Ke.oneChosen(sl.name):Ke.noneChosen}),
20
- /* @__PURE__ */U("div",{className:"flex gap-2",children:[Pe&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",onClick:Pe,children:Ke.cancel}),
21
- /* @__PURE__ */G(z,{variant:"primary",size:"sm",disabled:!sl,...Zl(vn),onClick:()=>{sl&&!vn&&Te?.(sl)},children:Ke.chooseImage})]})]}):null,kn=Me&&!!sl,bn=/* @__PURE__ */U("div",{className:"flex min-w-0 flex-col gap-3",children:[Oe&&/* @__PURE__ */G(I,{tone:"neutral",children:Oe}),
22
- /* @__PURE__ */U("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[
23
- /* @__PURE__ */G(d,{items:Hl}),Ql]}),_l,fn,
24
- /* @__PURE__ */U("div",{ref:tn,className:"relative",onPointerDown:on.onPointerDown,onKeyDown:e=>{Me&&(e.ctrlKey||e.metaKey)&&"a"===e.key.toLowerCase()?(e.preventDefault(),ol.selectAll()):"Escape"===e.key&&ol.size&&ol.clear()},children:[mn,
20
+ /* @__PURE__ */B("div",{className:"flex gap-2",children:[Oe&&/* @__PURE__ */G(z,{variant:"secondary",size:"sm",onClick:Oe,children:Ke.cancel}),
21
+ /* @__PURE__ */G(z,{variant:"primary",size:"sm",disabled:!sl,...$l(vn),onClick:()=>{sl&&!vn&&Te?.(sl)},children:Ke.chooseImage})]})]}):null,kn=Me&&!!sl,bn=/* @__PURE__ */B("div",{className:"flex min-w-0 flex-col gap-3",children:[Pe&&/* @__PURE__ */G(I,{tone:"neutral",children:Pe}),
22
+ /* @__PURE__ */B("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[
23
+ /* @__PURE__ */G(d,{items:Hl}),Xl]}),_l,fn,
24
+ /* @__PURE__ */B("div",{ref:tn,className:"relative",onPointerDown:on.onPointerDown,onKeyDown:e=>{Me&&(e.ctrlKey||e.metaKey)&&"a"===e.key.toLowerCase()?(e.preventDefault(),ol.selectAll()):"Escape"===e.key&&ol.size&&ol.clear()},children:[mn,
25
25
  /* @__PURE__ */G(a,{rect:on.rect})]}),Vl&&/* @__PURE__ */G("input",{...Yl.inputProps}),
26
26
  /* @__PURE__ */G(k,{rejections:Yl.rejections})]});/* @__PURE__ */
27
- return U("div",{ref:Re,"data-media-library":"","data-layout":Be?"phone":"wide",className:`flex h-full min-h-0 min-w-0 flex-col ${Ee}`.trim(),children:[/* @__PURE__ */U("div",Be?{className:"flex flex-col gap-3 p-3",children:[Wl,bn]}:{className:"flex min-h-0 min-w-0 flex-1",children:[
28
- /* @__PURE__ */G("div",{className:"shrink-0 overflow-y-auto border-r border-gray-200 p-3",style:{width:280,"--rosh-tree-ground":"var(--surface)"},children:Wl}),
29
- /* @__PURE__ */G("div",{className:"min-w-0 flex-1 overflow-y-auto p-3",children:bn}),kn&&/* @__PURE__ */G("div",{className:"shrink-0 overflow-y-auto border-l border-gray-200 p-3",style:{width:300},children:gn(sl)})]}),yn,Be&&/* @__PURE__ */G(o,{open:kn,onClose:ol.clear,side:"bottom",title:sl?.name,children:sl&&gn(sl)}),Il.state&&/* @__PURE__ */G(N,{...Il.props,items:Nl(Il.state.data)}),null!=wl&&ae.length>0&&/* @__PURE__ */G(i,{images:ae.map(e=>({url:e.url,caption:e.name})),startIndex:Math.min(wl,ae.length-1),onClose:()=>xl(null)})]})}export{W as MEDIA_FILES_DRAG_TYPE,H as MEDIA_FOLDER_DRAG_TYPE,Z as MediaLibrary};
27
+ return B("div",{ref:Re,"data-media-library":"","data-layout":Ue?"phone":"wide",className:`flex h-full min-h-0 min-w-0 flex-col ${Ee}`.trim(),children:[/* @__PURE__ */B("div",Ue?{className:"flex flex-col gap-3 p-3",children:[Jl,bn]}:{className:"flex min-h-0 min-w-0 flex-1",children:[
28
+ /* @__PURE__ */G("div",{className:"shrink-0 overflow-y-auto border-r border-gray-200 p-3",style:{width:280,"--rosh-tree-ground":"var(--surface)"},children:Jl}),
29
+ /* @__PURE__ */G("div",{className:"min-w-0 flex-1 overflow-y-auto p-3",children:bn}),kn&&/* @__PURE__ */G("div",{className:"shrink-0 overflow-y-auto border-l border-gray-200 p-3",style:{width:300},children:gn(sl)})]}),yn,Ue&&/* @__PURE__ */G(o,{open:kn,onClose:ol.clear,side:"bottom",title:sl?.name,children:sl&&gn(sl)}),Il.state&&/* @__PURE__ */G(N,{...Il.props,items:Nl(Il.state.data)}),null!=wl&&ae.length>0&&/* @__PURE__ */G(i,{images:ae.map(e=>({url:e.url,caption:e.name})),startIndex:Math.min(wl,ae.length-1),onClose:()=>xl(null)})]})}export{J as MEDIA_FILES_DRAG_TYPE,H as MEDIA_FOLDER_DRAG_TYPE,$ as MediaLibrary};
@@ -1 +1 @@
1
- import{setBoundaryErrorReporter as e}from"./chunk-KNUR2UEG.js";import{VERSION as t}from"./chunk-BZMZTPS6.js";var n=-1,i=()=>n,a=e=>{addEventListener("pageshow",t=>{t.persisted&&(n=t.timeStamp,e(t))},!0)},r=(e,t,n,i)=>{let a,r;return o=>{var s,c;t.value>=0&&(o||i)&&(r=t.value-(a??0),(r||void 0===a)&&(a=t.value,t.delta=r,t.rating=(s=t.value)>(c=n)[1]?"poor":s>c[0]?"needs-improvement":"good",e(t)))}},o=e=>{requestAnimationFrame(()=>requestAnimationFrame(()=>e()))},s=()=>{const e=performance.getEntriesByType("navigation")[0];if(e&&e.responseStart>0&&e.responseStart<performance.now())return e},c=()=>s()?.activationStart??0,d=-1,l=/* @__PURE__ */new Set,u=()=>"hidden"!==document.visibilityState||document.prerendering?1/0:0,f=e=>{if("hidden"===document.visibilityState){if("visibilitychange"===e.type)for(const e of l)e();isFinite(d)||(d="visibilitychange"===e.type?e.timeStamp:0,removeEventListener("prerenderingchange",f,!0))}},h=(e=!1)=>{if(e&&(d=1/0),d<0){const e=c(),t=document.prerendering?void 0:globalThis.performance.getEntriesByType("visibility-state").find(t=>"hidden"===t.name&&t.startTime>=e)?.startTime;d=t??u(),addEventListener("visibilitychange",f,!0),addEventListener("prerenderingchange",f,!0),a(()=>{setTimeout(()=>{d=u()})})}return{get firstHiddenTime(){return d},onHidden(e){l.add(e)}}},g=(e,t=-1,n,a=0,r,o,d)=>{const l=s(),u=l?.navigationId||0;let f="navigate";return n?f=n:i()>=0?f="back-forward-cache":l&&(document.prerendering||c()>0?f="prerender":document.wasDiscarded?f="restore":l.type&&(f=l.type.replace(/_/g,"-"))),{name:e,value:t,rating:"good",delta:0,entries:[],id:`v6-${Date.now()}-${Math.floor(8999999999999*Math.random())+1e12}`,navigationType:f,navigationId:a||u,navigationInteractionId:r,navigationURL:o||l?.name,navigationStartTime:d||0}},v=/* @__PURE__ */new WeakMap;function p(e,t){let n=v.get(t);return n||(n=/* @__PURE__ */new WeakMap,v.set(t,n)),n.get(e)||n.set(e,new t),n.get(e)}var m,y=class{t;i=0;o=[];h(e){if(e.hadRecentInput)return;const t=this.o[0],n=this.o.at(-1);this.i&&t&&n&&e.startTime-n.startTime<1e3&&e.startTime-t.startTime<5e3?(this.i+=e.value,this.o.push(e)):(this.i=e.value,this.o=[e]),this.t?.(e)}},T=(e,t,n={})=>{try{const i=e.filter(e=>PerformanceObserver.supportedEntryTypes.includes(e));if(i.length>0){const e=new PerformanceObserver(e=>{queueMicrotask(()=>{const n=e.getEntries();i.length>1&&n.sort((e,t)=>e.startTime+e.duration-(t.startTime+t.duration)),t(n)})});for(const t of i)e.observe({type:t,buffered:!0,...n});return e}}catch{}},w=e=>globalThis.PerformanceObserver?.supportedEntryTypes?.includes("soft-navigation")&&"function"==typeof globalThis.PerformanceSoftNavigation?.prototype?.getLargestInteractionContentfulPaint&&e&&e.reportSoftNavs,I=(e,t)=>{if(e.set(t.navigationId,t),e.size>2){const t=e.keys().next().value;void 0!==t&&e.delete(t)}},b=e=>{let t=!1;return()=>{t||(e(),t=!0)}},C=class{l},E=e=>{document.prerendering?addEventListener("prerenderingchange",e,!0):e()},L=[1800,3e3],P=(e,t={})=>{const n=w(t);E(()=>{const s=p(t,C),d=h();let l,u=g("FCP");const f=T(["paint"],e=>{for(const t of e)"first-contentful-paint"===t.name&&(f.disconnect(),t.startTime<d.firstHiddenTime&&(u.value=Math.max(t.startTime-c(),0),u.entries.push(t),u.navigationId=t.navigationId||u.navigationId,l(!0)))});f&&(l=r(e,u,L,t.reportAllChanges),a(n=>{u=g("FCP",-1,"back-forward-cache",u.navigationId,u.navigationInteractionId,u.navigationURL,i()),l=r(e,u,L,t.reportAllChanges),o(()=>{u.value=performance.now()-n.timeStamp,l(!0)})})),n&&T(["soft-navigation"],n=>{n.forEach(n=>{s.l&&n.navigationId&&I(s.l,n);const i=Math.max((n.presentationTime||n.paintTime||0)-n.startTime,0);u=g("FCP",i,"soft-navigation",n.navigationId,n.interactionId,n.name,n.startTime),l=r(e,u,L,t.reportAllChanges),l(!0)})},t)})},A=[.1,.25],k=0,S=1/0,z=0,M=e=>{for(const t of e)t.interactionId&&(S=Math.min(S,t.interactionId),z=Math.max(z,t.interactionId),k=z?(z-S)/7+1:0)},$=()=>m?k:performance.interactionCount??0,Z=class{u=0;v=[];m=/* @__PURE__ */new Map;p;T;_(){return $()-this.u}M(){this.u=$(),this.v.length=0,this.m.clear()}L(e){const t=this._(),n=Math.min(this.v.length-1,Math.floor(t/50));return!t||-1!==n||"soft-navigation"!==e&&"back-forward-cache"!==e?this.v[n]:{P:8,id:-1,entries:[]}}h(e){if(this.p?.(e),!e.interactionId)return;const t=this.v.at(-1);let n=this.m.get(e.interactionId);if(n||this.v.length<10||e.duration>t.P){if(n?e.duration>n.P?(n.entries=[e],n.P=e.duration):e.duration===n.P&&e.startTime===n.entries[0].startTime&&n.entries.push(e):(n={id:e.interactionId,entries:[e],P:e.duration},this.m.set(n.id,n),this.v.push(n)),this.v.sort((e,t)=>t.P-e.P),this.v.length>10){const e=this.v.splice(10);for(const t of e)this.m.delete(t.id)}this.T?.(n)}}},_=e=>{const t="requestIdleCallback"in globalThis?1e3:0,n=globalThis.requestIdleCallback||setTimeout,i=globalThis.cancelIdleCallback||clearTimeout;if("hidden"===document.visibilityState)e();else{const a=b(e);let r=-1;const o=()=>{i(r),a()};addEventListener("visibilitychange",o,{once:!0,capture:!0}),r=n(()=>{removeEventListener("visibilitychange",o,{capture:!0}),a()},{timeout:t})}},F=[200,500],R=(e,t={})=>{if(!globalThis.PerformanceEventTiming||!("interactionId"in PerformanceEventTiming.prototype))return;const n=h();E(()=>{"interactionCount"in performance||m||(m=T(["event"],M,{durationThreshold:0}));let o,s=g("INP");const c=p(t,Z),d=(n,i,a,d,l)=>{c.M(),s=g("INP",-1,n,i,a,d,l),o=r(e,s,F,t.reportAllChanges)},l=()=>{const e=c.L(s.navigationType);e&&e.P!==s.value&&(s.value=e.P,s.entries=e.entries,o())},u=e=>{l(),o(!0),d("soft-navigation",e.navigationId,e.interactionId,e.name,e.startTime)},f=(e,t=!1)=>{_(()=>{for(const t of e)"soft-navigation"!==t.entryType?c.h(t):u(t);l(),t&&o(!0)})},h=["event","first-input"];w(t)&&h.push("soft-navigation");const v=T(h,f,{...t,durationThreshold:t.durationThreshold??40});o=r(e,s,F,t.reportAllChanges),v&&(n.onHidden(()=>{f(v.takeRecords(),!0)}),a(()=>{d("back-forward-cache",s.navigationId,s.navigationInteractionId,s.navigationURL,i())}))})},j=class{p;l;h(e){this.p?.(e)}},x=[2500,4e3],B=[800,1800],N=e=>{document.prerendering?E(()=>N(e)):"complete"!==document.readyState?addEventListener("load",()=>N(e),!0):setTimeout(e)};var U=/^[A-Za-z0-9/_:.\-[\]{}*@~]+$/,O=/^[A-Za-z_$][A-Za-z0-9_$.]*$/,H=/^[A-Za-z0-9][A-Za-z0-9.+_-]*$/;var q=class{constructor(e){this.head=e}head;events=[];waiting=/* @__PURE__ */new Map;seen=/* @__PURE__ */new Set;get size(){return this.events.length}addVital(e){this.events.push(e)}addError(e){const t=function(e){return e.frames.length?`${e.name}|${e.frames.join("|")}`:`${e.name}|${e.message.replace(/\d/g,"0")}`}(e),n=this.waiting.get(t);return n?(n.count=Math.min(1e3,n.count+e.count),!0):!(this.seen.has(t)||this.seen.size>=20)&&(this.seen.add(t),this.waiting.set(t,e),this.events.push(e),!0)}drain(){const e=this.events;this.events=[],this.waiting.clear();const t=[],n=JSON.stringify({...this.head,events:[]}).length;let i=[],a=n;for(const r of e){const e=JSON.stringify(r).length+1;n+e>30720||((50===i.length||a+e>30720)&&(t.push({...this.head,events:i}),i=[],a=n),i.push(r),a+=e)}return i.length&&t.push({...this.head,events:i}),t}},J=/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}/g,K=/\beyJ[A-Za-z0-9_-]{8,}\.[A-Za-z0-9_-]{8,}(?:\.[A-Za-z0-9_-]*)?|\b[Bb]earer\s+[A-Za-z0-9._~+/=-]{8,}/g,V=/\b[a-z][a-z0-9+.-]*:\/\/\S+/gi,W=/\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi,D=/\d{4,}/g,G=/(^|[/:])(?:\d+|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|[0-9a-f]{16,})(?=$|[/:])/gi,Q=/^[a-z][a-z0-9+.-]*:\/\/[^/]*/i,X=/(?:\(|@|\bat\s+)?((?:[a-z][a-z0-9+.-]*:\/\/|\/)[^\s()@]*?):(\d+):(\d+)\)?\s*$/i;function Y(e,t,n){const i=e.replace(Q,"").split(/[?#]/,1)[0];return i?`${i}:${t}:${n}`.slice(0,256):null}function ee(e){if("string"!=typeof e)return[];const t=[];for(const n of e.split("\n")){const e=X.exec(n.trim()),i=e&&Y(e[1],e[2],e[3]);if(i&&t.push(i),5===t.length)break}return t}function te(e){const t=e instanceof Error?e.name:void 0;return"string"==typeof t&&t.length<=64&&O.test(t)?t:"Error"}function ne(e){if("string"!=typeof e)return"unknown";const t=e.trim().replace(Q,"").split(/[?#]/,1)[0].replace(G,(e,t)=>":"===t?":id":`${t}:id`);return t&&t.length<=128&&!t.includes("//")&&U.test(t)?t:"unknown"}var ie={flush(){},reportError(){},stop(){}},ae=null,re=/* @__PURE__ */new Set(["LCP","FCP","TTFB"]);function oe(e,t,n){const i=function(e){if(e.anonymous)return{credentials:"omit",headers:{"Content-Type":"application/json"}};const t=e.getAccessToken();return t?{credentials:"same-origin",headers:{"Content-Type":"application/json",Authorization:`Bearer ${t}`}}:null}(t);if(!i)return;const a=t.anonymous?"/api/storefront-analytics/web-vitals/":"/api/client-telemetry/web-batches/";n(t.endpoint??a,{...i,method:"POST",keepalive:!0,body:JSON.stringify(e)}).catch(e=>{console.debug("[efficient-shell] client telemetry batch dropped:",e)})}function se(e){((e,t={})=>{let n=!1;const s=w(t);E(()=>{let d,l=h(),u=g("LCP");const f=p(t,j),v=(i,a,o,s,c)=>{u=g("LCP",-1,i,a,o,s,c),d=r(e,u,x,t.reportAllChanges),n=!1,"soft-navigation"===i&&(l=h(!0))},m=e=>{f.l&&e.navigationId&&I(f.l,e),n||d(!0),v("soft-navigation",e.navigationId,e.interactionId,e.name,e.startTime);const t=e.getLargestInteractionContentfulPaint?.();t&&y([t])},y=e=>{t.reportAllChanges||s||(e=e.slice(-1));for(const t of e){if(!t)continue;if("soft-navigation"===t.entryType){m(t);continue}let e=0,n=[],i=t.startTime;if("largest-contentful-paint"===t.entryType)e=Math.max(t.startTime-c(),0),f.h(t),n=[t];else if("interaction-contentful-paint"===t.entryType){const a=t;if(!u.navigationId)continue;if("interactionId"in a&&a.interactionId!=u.navigationInteractionId)continue;i=a.largestContentfulPaint?.renderTime||0,e=Math.max(i-t.startTime,0),a.largestContentfulPaint&&(f.h(a.largestContentfulPaint),n=[a.largestContentfulPaint])}i<l.firstHiddenTime&&(u.value=e,u.entries=n,d())}},w=["largest-contentful-paint"];s&&w.push("interaction-contentful-paint","soft-navigation");const b=T(w,y);if(b){d=r(e,u,x,t.reportAllChanges);const c=["keydown","click","visibilitychange"],l=e=>{if(e.isTrusted&&!n){const e=u.id;_(()=>{if(!n){if(!s){b.disconnect();for(const e of c)removeEventListener(e,l,{capture:!0})}e===u.id&&(n=!0,d(!0))}})}};for(const e of c)addEventListener(e,l,{capture:!0});a(a=>{v("back-forward-cache",u.navigationId,u.navigationInteractionId,u.navigationURL,i()),d=r(e,u,x,t.reportAllChanges),o(()=>{u.value=performance.now()-a.timeStamp,n=!0,d(!0)})})}})})(e),R(e),((e,t={})=>{const n=h();P(b(()=>{let s,c=g("CLS",0);const d=p(t,y),l=(n,i,a,o,l)=>{c=g("CLS",0,n,i,a,o,l),d.i=0,s=r(e,c,A,t.reportAllChanges)},u=(e=!1)=>{d.i>c.value&&(c.value=d.i,c.entries=d.o),s(e)},f=e=>{u(!0),l("soft-navigation",e.navigationId,e.interactionId,e.name,e.startTime)},h=e=>{for(const t of e)"soft-navigation"!==t.entryType?d.h(t):f(t);u()},v=["layout-shift"];w(t)&&v.push("soft-navigation");const m=T(v,h);m&&(s=r(e,c,A,t.reportAllChanges),n.onHidden(()=>{h(m.takeRecords()),s(!0)}),a(()=>{l("back-forward-cache",c.navigationId,c.navigationInteractionId,c.navigationURL,i()),o(s)}),setTimeout(s))}))})(e),P(e),((e,t={})=>{const n=w(t);let o=g("TTFB"),d=r(e,o,B,t.reportAllChanges);N(()=>{const l=s();if(l){const s=l.responseStart;o.value=Math.max(s-c(),0),o.entries=[l],d(!0),a(()=>{o=g("TTFB",0,"back-forward-cache",o.navigationId,o.navigationInteractionId,o.navigationURL,i()),d=r(e,o,B,t.reportAllChanges),d(!0)}),n&&T(["soft-navigation"],n=>{n.forEach(n=>{n.navigationId&&(o=g("TTFB",0,"soft-navigation",n.navigationId,n.interactionId,n.name,n.startTime),o.entries=[n],d=r(e,o,B,t.reportAllChanges),d(!0))})},t)}})})(e)}function ce(n){if(ae?.stop(),ae=null,!1===n.enabled||"undefined"==typeof window||"undefined"==typeof document)return ie;if(!function(e){const t="string"==typeof e.app&&H.test(e.app),n="string"==typeof e.release&&H.test(e.release);return t&&n||console.warn("[efficient-shell] client telemetry not started: `app` and `release` must be version-like strings."),t&&n}(n))return ie;const i=function(e){const t=e.vitalsSampleRate??1;return t>0&&(t>=1||(e.random??Math.random)()<t)}(n);if(n.anonymous&&!i)return ie;const a=n.fetch??window.fetch.bind(window),r=new q({app:n.app,release:n.release,shell_version:H.test(t)?t:""}),o=ne(n.routeKey()),s=function(e=("undefined"==typeof window?void 0:window)){if(!e)return"desktop";const t="function"==typeof e.matchMedia&&e.matchMedia("(pointer: coarse)").matches,n=e.innerWidth;return n<600?"mobile":t&&n<1280?"tablet":"desktop"}(window);let c=!1;const d=()=>{for(const e of r.drain())oe(e,n,a)},l=e=>{c||n.anonymous||(r.addError(e),r.size>=50&&d())},u=(e,t)=>{return{type:"error",source:t,name:te(e),message:(a=e,i=a instanceof Error?a.message:"string"==typeof a?a:a&&"object"==typeof a&&"string"==typeof a.message?a.message:"",i.slice(0,640).replace(J,"[redacted]").replace(K,"[redacted]").replace(V,"[url]").replace(W,"[id]").replace(D,"[n]").replace(/\s+/g," ").trim().slice(0,160)),frames:ee(e instanceof Error?e.stack:void 0),route:ne(n.routeKey()),count:1};var i,a};i&&(n.observeVitals??se)(e=>{c||(r.addVital(function(e,t,n,i){return{type:"vital",name:e.name,value:e.value,route:re.has(e.name)?t:n(),navigation:e.navigationType??"navigate",device:i}}(e,o,()=>ne(n.routeKey()),s)),r.size>=50&&d())});const f=n.anonymous?()=>{}:function(t,n){const i=e=>{const{error:i,message:a,filename:r,lineno:o,colno:s}=e;if(null!=i)return void t(n(i,"onerror"));const c=r?ee(`at ${r}:${o??0}:${s??0}`):[];t({...n(a??"","onerror"),frames:c})},a=e=>t(n(e.reason,"unhandledrejection"));window.addEventListener("error",i),window.addEventListener("unhandledrejection",a);const r=e(e=>t(n(e,"boundary")));return()=>{window.removeEventListener("error",i),window.removeEventListener("unhandledrejection",a),r()}}(l,u),h=()=>{"hidden"===document.visibilityState&&d()};document.addEventListener("visibilitychange",h),window.addEventListener("pagehide",d);const g=window.setInterval(d,n.flushIntervalMs??6e4),v={flush:d,reportError:e=>l(u(e,"boundary")),stop(){c||(d(),c=!0,f(),document.removeEventListener("visibilitychange",h),window.removeEventListener("pagehide",d),window.clearInterval(g),ae===v&&(ae=null))}};return ae=v,v}export{ce as startClientTelemetry};
1
+ import{setBoundaryErrorReporter as e}from"./chunk-KNUR2UEG.js";import{VERSION as t}from"./chunk-WAZTGEMG.js";var n=-1,i=()=>n,a=e=>{addEventListener("pageshow",t=>{t.persisted&&(n=t.timeStamp,e(t))},!0)},r=(e,t,n,i)=>{let a,r;return o=>{var s,c;t.value>=0&&(o||i)&&(r=t.value-(a??0),(r||void 0===a)&&(a=t.value,t.delta=r,t.rating=(s=t.value)>(c=n)[1]?"poor":s>c[0]?"needs-improvement":"good",e(t)))}},o=e=>{requestAnimationFrame(()=>requestAnimationFrame(()=>e()))},s=()=>{const e=performance.getEntriesByType("navigation")[0];if(e&&e.responseStart>0&&e.responseStart<performance.now())return e},c=()=>s()?.activationStart??0,d=-1,l=/* @__PURE__ */new Set,u=()=>"hidden"!==document.visibilityState||document.prerendering?1/0:0,f=e=>{if("hidden"===document.visibilityState){if("visibilitychange"===e.type)for(const e of l)e();isFinite(d)||(d="visibilitychange"===e.type?e.timeStamp:0,removeEventListener("prerenderingchange",f,!0))}},h=(e=!1)=>{if(e&&(d=1/0),d<0){const e=c(),t=document.prerendering?void 0:globalThis.performance.getEntriesByType("visibility-state").find(t=>"hidden"===t.name&&t.startTime>=e)?.startTime;d=t??u(),addEventListener("visibilitychange",f,!0),addEventListener("prerenderingchange",f,!0),a(()=>{setTimeout(()=>{d=u()})})}return{get firstHiddenTime(){return d},onHidden(e){l.add(e)}}},g=(e,t=-1,n,a=0,r,o,d)=>{const l=s(),u=l?.navigationId||0;let f="navigate";return n?f=n:i()>=0?f="back-forward-cache":l&&(document.prerendering||c()>0?f="prerender":document.wasDiscarded?f="restore":l.type&&(f=l.type.replace(/_/g,"-"))),{name:e,value:t,rating:"good",delta:0,entries:[],id:`v6-${Date.now()}-${Math.floor(8999999999999*Math.random())+1e12}`,navigationType:f,navigationId:a||u,navigationInteractionId:r,navigationURL:o||l?.name,navigationStartTime:d||0}},v=/* @__PURE__ */new WeakMap;function p(e,t){let n=v.get(t);return n||(n=/* @__PURE__ */new WeakMap,v.set(t,n)),n.get(e)||n.set(e,new t),n.get(e)}var m,y=class{t;i=0;o=[];h(e){if(e.hadRecentInput)return;const t=this.o[0],n=this.o.at(-1);this.i&&t&&n&&e.startTime-n.startTime<1e3&&e.startTime-t.startTime<5e3?(this.i+=e.value,this.o.push(e)):(this.i=e.value,this.o=[e]),this.t?.(e)}},T=(e,t,n={})=>{try{const i=e.filter(e=>PerformanceObserver.supportedEntryTypes.includes(e));if(i.length>0){const e=new PerformanceObserver(e=>{queueMicrotask(()=>{const n=e.getEntries();i.length>1&&n.sort((e,t)=>e.startTime+e.duration-(t.startTime+t.duration)),t(n)})});for(const t of i)e.observe({type:t,buffered:!0,...n});return e}}catch{}},w=e=>globalThis.PerformanceObserver?.supportedEntryTypes?.includes("soft-navigation")&&"function"==typeof globalThis.PerformanceSoftNavigation?.prototype?.getLargestInteractionContentfulPaint&&e&&e.reportSoftNavs,I=(e,t)=>{if(e.set(t.navigationId,t),e.size>2){const t=e.keys().next().value;void 0!==t&&e.delete(t)}},b=e=>{let t=!1;return()=>{t||(e(),t=!0)}},E=class{l},C=e=>{document.prerendering?addEventListener("prerenderingchange",e,!0):e()},L=[1800,3e3],P=(e,t={})=>{const n=w(t);C(()=>{const s=p(t,E),d=h();let l,u=g("FCP");const f=T(["paint"],e=>{for(const t of e)"first-contentful-paint"===t.name&&(f.disconnect(),t.startTime<d.firstHiddenTime&&(u.value=Math.max(t.startTime-c(),0),u.entries.push(t),u.navigationId=t.navigationId||u.navigationId,l(!0)))});f&&(l=r(e,u,L,t.reportAllChanges),a(n=>{u=g("FCP",-1,"back-forward-cache",u.navigationId,u.navigationInteractionId,u.navigationURL,i()),l=r(e,u,L,t.reportAllChanges),o(()=>{u.value=performance.now()-n.timeStamp,l(!0)})})),n&&T(["soft-navigation"],n=>{n.forEach(n=>{s.l&&n.navigationId&&I(s.l,n);const i=Math.max((n.presentationTime||n.paintTime||0)-n.startTime,0);u=g("FCP",i,"soft-navigation",n.navigationId,n.interactionId,n.name,n.startTime),l=r(e,u,L,t.reportAllChanges),l(!0)})},t)})},A=[.1,.25],k=0,S=1/0,z=0,M=e=>{for(const t of e)t.interactionId&&(S=Math.min(S,t.interactionId),z=Math.max(z,t.interactionId),k=z?(z-S)/7+1:0)},$=()=>m?k:performance.interactionCount??0,Z=class{u=0;v=[];m=/* @__PURE__ */new Map;p;T;_(){return $()-this.u}M(){this.u=$(),this.v.length=0,this.m.clear()}L(e){const t=this._(),n=Math.min(this.v.length-1,Math.floor(t/50));return!t||-1!==n||"soft-navigation"!==e&&"back-forward-cache"!==e?this.v[n]:{P:8,id:-1,entries:[]}}h(e){if(this.p?.(e),!e.interactionId)return;const t=this.v.at(-1);let n=this.m.get(e.interactionId);if(n||this.v.length<10||e.duration>t.P){if(n?e.duration>n.P?(n.entries=[e],n.P=e.duration):e.duration===n.P&&e.startTime===n.entries[0].startTime&&n.entries.push(e):(n={id:e.interactionId,entries:[e],P:e.duration},this.m.set(n.id,n),this.v.push(n)),this.v.sort((e,t)=>t.P-e.P),this.v.length>10){const e=this.v.splice(10);for(const t of e)this.m.delete(t.id)}this.T?.(n)}}},_=e=>{const t="requestIdleCallback"in globalThis?1e3:0,n=globalThis.requestIdleCallback||setTimeout,i=globalThis.cancelIdleCallback||clearTimeout;if("hidden"===document.visibilityState)e();else{const a=b(e);let r=-1;const o=()=>{i(r),a()};addEventListener("visibilitychange",o,{once:!0,capture:!0}),r=n(()=>{removeEventListener("visibilitychange",o,{capture:!0}),a()},{timeout:t})}},F=[200,500],R=(e,t={})=>{if(!globalThis.PerformanceEventTiming||!("interactionId"in PerformanceEventTiming.prototype))return;const n=h();C(()=>{"interactionCount"in performance||m||(m=T(["event"],M,{durationThreshold:0}));let o,s=g("INP");const c=p(t,Z),d=(n,i,a,d,l)=>{c.M(),s=g("INP",-1,n,i,a,d,l),o=r(e,s,F,t.reportAllChanges)},l=()=>{const e=c.L(s.navigationType);e&&e.P!==s.value&&(s.value=e.P,s.entries=e.entries,o())},u=e=>{l(),o(!0),d("soft-navigation",e.navigationId,e.interactionId,e.name,e.startTime)},f=(e,t=!1)=>{_(()=>{for(const t of e)"soft-navigation"!==t.entryType?c.h(t):u(t);l(),t&&o(!0)})},h=["event","first-input"];w(t)&&h.push("soft-navigation");const v=T(h,f,{...t,durationThreshold:t.durationThreshold??40});o=r(e,s,F,t.reportAllChanges),v&&(n.onHidden(()=>{f(v.takeRecords(),!0)}),a(()=>{d("back-forward-cache",s.navigationId,s.navigationInteractionId,s.navigationURL,i())}))})},j=class{p;l;h(e){this.p?.(e)}},x=[2500,4e3],B=[800,1800],N=e=>{document.prerendering?C(()=>N(e)):"complete"!==document.readyState?addEventListener("load",()=>N(e),!0):setTimeout(e)};var U=/^[A-Za-z0-9/_:.\-[\]{}*@~]+$/,O=/^[A-Za-z_$][A-Za-z0-9_$.]*$/,H=/^[A-Za-z0-9][A-Za-z0-9.+_-]*$/;var q=class{constructor(e){this.head=e}head;events=[];waiting=/* @__PURE__ */new Map;seen=/* @__PURE__ */new Set;get size(){return this.events.length}addVital(e){this.events.push(e)}addError(e){const t=function(e){return e.frames.length?`${e.name}|${e.frames.join("|")}`:`${e.name}|${e.message.replace(/\d/g,"0")}`}(e),n=this.waiting.get(t);return n?(n.count=Math.min(1e3,n.count+e.count),!0):!(this.seen.has(t)||this.seen.size>=20)&&(this.seen.add(t),this.waiting.set(t,e),this.events.push(e),!0)}drain(){const e=this.events;this.events=[],this.waiting.clear();const t=[],n=JSON.stringify({...this.head,events:[]}).length;let i=[],a=n;for(const r of e){const e=JSON.stringify(r).length+1;n+e>30720||((50===i.length||a+e>30720)&&(t.push({...this.head,events:i}),i=[],a=n),i.push(r),a+=e)}return i.length&&t.push({...this.head,events:i}),t}},J=/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}/g,K=/\beyJ[A-Za-z0-9_-]{8,}\.[A-Za-z0-9_-]{8,}(?:\.[A-Za-z0-9_-]*)?|\b[Bb]earer\s+[A-Za-z0-9._~+/=-]{8,}/g,W=/\b[a-z][a-z0-9+.-]*:\/\/\S+/gi,G=/\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi,V=/\d{4,}/g,D=/(^|[/:])(?:\d+|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|[0-9a-f]{16,})(?=$|[/:])/gi,Q=/^[a-z][a-z0-9+.-]*:\/\/[^/]*/i,X=/(?:\(|@|\bat\s+)?((?:[a-z][a-z0-9+.-]*:\/\/|\/)[^\s()@]*?):(\d+):(\d+)\)?\s*$/i;function Y(e,t,n){const i=e.replace(Q,"").split(/[?#]/,1)[0];return i?`${i}:${t}:${n}`.slice(0,256):null}function ee(e){if("string"!=typeof e)return[];const t=[];for(const n of e.split("\n")){const e=X.exec(n.trim()),i=e&&Y(e[1],e[2],e[3]);if(i&&t.push(i),5===t.length)break}return t}function te(e){const t=e instanceof Error?e.name:void 0;return"string"==typeof t&&t.length<=64&&O.test(t)?t:"Error"}function ne(e){if("string"!=typeof e)return"unknown";const t=e.trim().replace(Q,"").split(/[?#]/,1)[0].replace(D,(e,t)=>":"===t?":id":`${t}:id`);return t&&t.length<=128&&!t.includes("//")&&U.test(t)?t:"unknown"}var ie={flush(){},reportError(){},stop(){}},ae=null,re=/* @__PURE__ */new Set(["LCP","FCP","TTFB"]);function oe(e,t,n){const i=function(e){if(e.anonymous)return{credentials:"omit",headers:{"Content-Type":"application/json"}};const t=e.getAccessToken();return t?{credentials:"same-origin",headers:{"Content-Type":"application/json",Authorization:`Bearer ${t}`}}:null}(t);if(!i)return;const a=t.anonymous?"/api/storefront-analytics/web-vitals/":"/api/client-telemetry/web-batches/";n(t.endpoint??a,{...i,method:"POST",keepalive:!0,body:JSON.stringify(e)}).catch(e=>{console.debug("[efficient-shell] client telemetry batch dropped:",e)})}function se(e){((e,t={})=>{let n=!1;const s=w(t);C(()=>{let d,l=h(),u=g("LCP");const f=p(t,j),v=(i,a,o,s,c)=>{u=g("LCP",-1,i,a,o,s,c),d=r(e,u,x,t.reportAllChanges),n=!1,"soft-navigation"===i&&(l=h(!0))},m=e=>{f.l&&e.navigationId&&I(f.l,e),n||d(!0),v("soft-navigation",e.navigationId,e.interactionId,e.name,e.startTime);const t=e.getLargestInteractionContentfulPaint?.();t&&y([t])},y=e=>{t.reportAllChanges||s||(e=e.slice(-1));for(const t of e){if(!t)continue;if("soft-navigation"===t.entryType){m(t);continue}let e=0,n=[],i=t.startTime;if("largest-contentful-paint"===t.entryType)e=Math.max(t.startTime-c(),0),f.h(t),n=[t];else if("interaction-contentful-paint"===t.entryType){const a=t;if(!u.navigationId)continue;if("interactionId"in a&&a.interactionId!=u.navigationInteractionId)continue;i=a.largestContentfulPaint?.renderTime||0,e=Math.max(i-t.startTime,0),a.largestContentfulPaint&&(f.h(a.largestContentfulPaint),n=[a.largestContentfulPaint])}i<l.firstHiddenTime&&(u.value=e,u.entries=n,d())}},w=["largest-contentful-paint"];s&&w.push("interaction-contentful-paint","soft-navigation");const b=T(w,y);if(b){d=r(e,u,x,t.reportAllChanges);const c=["keydown","click","visibilitychange"],l=e=>{if(e.isTrusted&&!n){const e=u.id;_(()=>{if(!n){if(!s){b.disconnect();for(const e of c)removeEventListener(e,l,{capture:!0})}e===u.id&&(n=!0,d(!0))}})}};for(const e of c)addEventListener(e,l,{capture:!0});a(a=>{v("back-forward-cache",u.navigationId,u.navigationInteractionId,u.navigationURL,i()),d=r(e,u,x,t.reportAllChanges),o(()=>{u.value=performance.now()-a.timeStamp,n=!0,d(!0)})})}})})(e),R(e),((e,t={})=>{const n=h();P(b(()=>{let s,c=g("CLS",0);const d=p(t,y),l=(n,i,a,o,l)=>{c=g("CLS",0,n,i,a,o,l),d.i=0,s=r(e,c,A,t.reportAllChanges)},u=(e=!1)=>{d.i>c.value&&(c.value=d.i,c.entries=d.o),s(e)},f=e=>{u(!0),l("soft-navigation",e.navigationId,e.interactionId,e.name,e.startTime)},h=e=>{for(const t of e)"soft-navigation"!==t.entryType?d.h(t):f(t);u()},v=["layout-shift"];w(t)&&v.push("soft-navigation");const m=T(v,h);m&&(s=r(e,c,A,t.reportAllChanges),n.onHidden(()=>{h(m.takeRecords()),s(!0)}),a(()=>{l("back-forward-cache",c.navigationId,c.navigationInteractionId,c.navigationURL,i()),o(s)}),setTimeout(s))}))})(e),P(e),((e,t={})=>{const n=w(t);let o=g("TTFB"),d=r(e,o,B,t.reportAllChanges);N(()=>{const l=s();if(l){const s=l.responseStart;o.value=Math.max(s-c(),0),o.entries=[l],d(!0),a(()=>{o=g("TTFB",0,"back-forward-cache",o.navigationId,o.navigationInteractionId,o.navigationURL,i()),d=r(e,o,B,t.reportAllChanges),d(!0)}),n&&T(["soft-navigation"],n=>{n.forEach(n=>{n.navigationId&&(o=g("TTFB",0,"soft-navigation",n.navigationId,n.interactionId,n.name,n.startTime),o.entries=[n],d=r(e,o,B,t.reportAllChanges),d(!0))})},t)}})})(e)}function ce(n){if(ae?.stop(),ae=null,!1===n.enabled||"undefined"==typeof window||"undefined"==typeof document)return ie;if(!function(e){const t="string"==typeof e.app&&H.test(e.app),n="string"==typeof e.release&&H.test(e.release);return t&&n||console.warn("[efficient-shell] client telemetry not started: `app` and `release` must be version-like strings."),t&&n}(n))return ie;const i=function(e){const t=e.vitalsSampleRate??1;return t>0&&(t>=1||(e.random??Math.random)()<t)}(n);if(n.anonymous&&!i)return ie;const a=n.fetch??window.fetch.bind(window),r=new q({app:n.app,release:n.release,shell_version:H.test(t)?t:""}),o=ne(n.routeKey()),s=function(e=("undefined"==typeof window?void 0:window)){if(!e)return"desktop";const t="function"==typeof e.matchMedia&&e.matchMedia("(pointer: coarse)").matches,n=e.innerWidth;return n<600?"mobile":t&&n<1280?"tablet":"desktop"}(window);let c=!1;const d=()=>{for(const e of r.drain())oe(e,n,a)},l=e=>{c||n.anonymous||(r.addError(e),r.size>=50&&d())},u=(e,t)=>{return{type:"error",source:t,name:te(e),message:(a=e,i=a instanceof Error?a.message:"string"==typeof a?a:a&&"object"==typeof a&&"string"==typeof a.message?a.message:"",i.slice(0,640).replace(J,"[redacted]").replace(K,"[redacted]").replace(W,"[url]").replace(G,"[id]").replace(V,"[n]").replace(/\s+/g," ").trim().slice(0,160)),frames:ee(e instanceof Error?e.stack:void 0),route:ne(n.routeKey()),count:1};var i,a};i&&(n.observeVitals??se)(e=>{c||(r.addVital(function(e,t,n,i){return{type:"vital",name:e.name,value:e.value,route:re.has(e.name)?t:n(),navigation:e.navigationType??"navigate",device:i}}(e,o,()=>ne(n.routeKey()),s)),r.size>=50&&d())});const f=n.anonymous?()=>{}:function(t,n){const i=e=>{const{error:i,message:a,filename:r,lineno:o,colno:s}=e;if(null!=i)return void t(n(i,"onerror"));const c=r?ee(`at ${r}:${o??0}:${s??0}`):[];t({...n(a??"","onerror"),frames:c})},a=e=>t(n(e.reason,"unhandledrejection"));window.addEventListener("error",i),window.addEventListener("unhandledrejection",a);const r=e(e=>t(n(e,"boundary")));return()=>{window.removeEventListener("error",i),window.removeEventListener("unhandledrejection",a),r()}}(l,u),h=()=>{"hidden"===document.visibilityState&&d()};document.addEventListener("visibilitychange",h),window.addEventListener("pagehide",d);const g=window.setInterval(d,n.flushIntervalMs??6e4),v={flush:d,reportError:e=>l(u(e,"boundary")),stop(){c||(d(),c=!0,f(),document.removeEventListener("visibilitychange",h),window.removeEventListener("pagehide",d),window.clearInterval(g),ae===v&&(ae=null))}};return ae=v,v}export{ce as startClientTelemetry};
@@ -0,0 +1 @@
1
+ import{createContext as o,useContext as r}from"react";var t=o(void 0),n=t.Provider;function d(o){const n=r(t);return o?void 0===n?document.body:n:null}export{n as OverlayLayerProvider,d as useOverlayTarget};
@@ -0,0 +1,4 @@
1
+ import{useOverlayTarget as e,OverlayLayerProvider as r}from"./chunk-4AJRHTTB.js";import{dialogA11y as i}from"./chunk-VWGWZY7A.js";import{useDismissPopupsOnOpen as t}from"./chunk-PKXQDCNR.js";import{useFocusTrap as l,useScrollLock as o}from"./chunk-CDAJKLGL.js";import{Icon as a}from"./chunk-2SHYR3RA.js";import{Z_LAYERS as s}from"./chunk-62LW225J.js";import{useHydrated as n}from"./chunk-D65T4H6J.js";import{registerModalEscapeInterceptor as c}from"./chunk-TWVUQUUD.js";import{useShellStrings as d}from"./chunk-E6UCGCOC.js";import{useRef as m,useId as u,useState as f,useEffect as h}from"react";import{createPortal as p}from"react-dom";import{jsx as x,jsxs as b}from"react/jsx-runtime";var g={sm:"max-w-sm",md:"max-w-md",lg:"max-w-lg",xl:"max-w-4xl"};function v({open:v,onClose:y,title:k,description:j,role:N="dialog",children:w,footer:C,blocking:T=!1,size:W="md",initialFocus:A,"aria-label":D,"aria-labelledby":J,"aria-describedby":L,className:R=""}){const U=m(null),G=u(),H=u(),z=!T,B=u(),I=d().dialog,K=e(n()),[Q,V]=f(null);return t(v),l(U,v&&null!==K,A),o(v),h(()=>{if(v)return c(()=>(T||y(),!0),()=>U.current)},[v,T,y]),v&&K?p(
2
+ /* @__PURE__ */x(r,{value:Q,children:/* @__PURE__ */b("div",{ref:V,className:"fixed inset-0",style:{zIndex:s.overlay},role:"presentation",children:[
3
+ /* @__PURE__ */x("div",{className:"fixed inset-0 bg-black/30","aria-hidden":"true"}),
4
+ /* @__PURE__ */x("div",{className:"fixed inset-0 flex items-center justify-center p-4",onClick:T?void 0:e=>{e.target===e.currentTarget&&y()},children:/* @__PURE__ */b("div",{ref:U,...i({role:N,modal:!0,titleId:k?B:void 0,labelledBy:J,label:D}),"aria-describedby":L??(j?H:w?G:void 0),className:`relative max-h-full w-full ${g[W]} overflow-y-auto overscroll-contain rounded-(--radius-card) bg-white p-6 shadow-xl ${R}`.trim(),children:[k&&/* @__PURE__ */x("h2",{id:B,className:(z?"pr-8 ":"")+"text-base font-semibold text-gray-900",children:k}),j&&/* @__PURE__ */x("p",{id:H,className:((k?"mt-1":z?"pr-8":"")+" text-sm text-gray-500").trim(),children:j}),w&&/* @__PURE__ */x("div",{id:G,className:"mt-2 text-sm text-gray-600",children:w}),C&&/* @__PURE__ */x("div",{className:"mt-6 flex flex-wrap justify-end gap-3",children:C}),z&&/* @__PURE__ */x("button",{type:"button",onClick:y,"aria-label":I.close,className:"absolute right-3 top-3 rounded-(--radius-control) p-1 text-gray-400 hover:bg-gray-100 hover:text-gray-600 rosh-focus-ring focus-visible:ring-2 focus-visible:ring-[color:var(--rosh-focus-ring-solid)]",children:/* @__PURE__ */x(a,{name:"close",className:"h-5 w-5",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true"})})]})})]})}),K):null}export{v as Dialog};
@@ -1,4 +1,4 @@
1
- import{useWindowMenuItem as e,Modal as t}from"./chunk-2AHHM4SK.js";import{navIcons as r}from"./chunk-CY5N5OA3.js";import{VERSION as s}from"./chunk-BZMZTPS6.js";import{Icon as o}from"./chunk-2SHYR3RA.js";import{DEFAULT_SHELL_STRINGS as n,useShellStrings as i,splitAround as a}from"./chunk-E6UCGCOC.js";import{useState as m,useCallback as c,isValidElement as l,cloneElement as d}from"react";import{jsx as p,jsxs as h}from"react/jsx-runtime";var u=n.aboutApp,f={spreadsheet:{name:"Spreadsheets",version:"1.2.0",route:"/spreadsheet",description:u.spreadsheet},notepad:{name:"Notepad",version:"1.0.2",route:"/notepad",description:u.notepad},documents:{name:"Documents",version:"1.1.1",route:"/documents",description:u.documents},preview:{name:"Preview",version:"1.4.3",route:"/preview",description:u.preview},files:{name:"Files",version:"1.1.3",route:"/files",description:u.files},browser:{name:"Browser",version:"1.0.2",route:"/browser",description:u.browser}},x=/* @__PURE__ */p(o,{name:"info",className:"h-4 w-4",strokeWidth:1.5}),v=/* @__PURE__ */p(o,{name:"window",className:"h-9 w-9",strokeWidth:1.5});function w({app:o}){const n=f[o],[u,w]=m(!1),N=c(()=>w(!0),[]),g=i().aboutApp,b=g.title(n.name);if(e(b,N,x),!u)return null;const y=r[n.route],k=l(y)?d(y,{className:"h-9 w-9"}):v,[j,A]=a(g.partOf);/* @__PURE__ */
1
+ import{useWindowMenuItem as e,Modal as t}from"./chunk-PAB2ZU4F.js";import{navIcons as r}from"./chunk-CY5N5OA3.js";import{VERSION as s}from"./chunk-WAZTGEMG.js";import{Icon as o}from"./chunk-2SHYR3RA.js";import{DEFAULT_SHELL_STRINGS as n,useShellStrings as i,splitAround as a}from"./chunk-E6UCGCOC.js";import{useState as m,useCallback as c,isValidElement as l,cloneElement as d}from"react";import{jsx as p,jsxs as h}from"react/jsx-runtime";var u=n.aboutApp,f={spreadsheet:{name:"Spreadsheets",version:"1.2.0",route:"/spreadsheet",description:u.spreadsheet},notepad:{name:"Notepad",version:"1.0.2",route:"/notepad",description:u.notepad},documents:{name:"Documents",version:"1.1.1",route:"/documents",description:u.documents},preview:{name:"Preview",version:"1.4.3",route:"/preview",description:u.preview},files:{name:"Files",version:"1.1.3",route:"/files",description:u.files},browser:{name:"Browser",version:"1.0.2",route:"/browser",description:u.browser}},x=/* @__PURE__ */p(o,{name:"info",className:"h-4 w-4",strokeWidth:1.5}),v=/* @__PURE__ */p(o,{name:"window",className:"h-9 w-9",strokeWidth:1.5});function w({app:o}){const n=f[o],[u,w]=m(!1),N=c(()=>w(!0),[]),g=i().aboutApp,b=g.title(n.name);if(e(b,N,x),!u)return null;const y=r[n.route],k=l(y)?d(y,{className:"h-9 w-9"}):v,[j,A]=a(g.partOf);/* @__PURE__ */
2
2
  return p(t,{open:!0,onClose:()=>w(!1),title:b,size:"sm",compact:!0,bodyScroll:!1,autoHeight:!0,dimensions:[320,320],children:/* @__PURE__ */h("div",{className:"flex flex-col items-center text-center px-5 pt-5 pb-4",children:[
3
3
  /* @__PURE__ */p("div",{className:"flex h-16 w-16 items-center justify-center rounded-2xl bg-gray-100 text-gray-600 shrink-0",children:k}),
4
4
  /* @__PURE__ */p("h2",{className:"mt-3 text-lg font-bold text-gray-900",children:n.name}),
@@ -0,0 +1,8 @@
1
+ import{useOverlayTarget as e,OverlayLayerProvider as r}from"./chunk-4AJRHTTB.js";import{dialogA11y as i}from"./chunk-VWGWZY7A.js";import{useDismissPopupsOnOpen as o}from"./chunk-PKXQDCNR.js";import{useFocusTrap as t,useScrollLock as l}from"./chunk-CDAJKLGL.js";import{Icon as s}from"./chunk-2SHYR3RA.js";import{Z_LAYERS as a}from"./chunk-62LW225J.js";import{useHydrated as n}from"./chunk-D65T4H6J.js";import{registerModalEscapeInterceptor as d}from"./chunk-TWVUQUUD.js";import{useShellStrings as c}from"./chunk-E6UCGCOC.js";import{useRef as m,useId as h,useState as u,useEffect as f}from"react";import{createPortal as p}from"react-dom";import{jsx as b,jsxs as x}from"react/jsx-runtime";var g={sm:"sm:w-[320px]",md:"sm:w-[448px]",lg:"sm:w-[640px]"},y={right:"inset-y-0 right-0",left:"inset-y-0 left-0",bottom:"inset-x-0 bottom-0"};function v({onClose:e}){const r=c().dialog;/* @__PURE__ */
2
+ return b("button",{type:"button",onClick:e,"aria-label":r.close,className:"rounded-(--radius-control) p-1 text-gray-400 hover:bg-gray-100 hover:text-gray-600 rosh-focus-ring focus-visible:ring-2 focus-visible:ring-[color:var(--rosh-focus-ring-solid)]",children:/* @__PURE__ */b(s,{name:"close",className:"h-5 w-5",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true"})})}function k({open:s,onClose:c,side:k="right",size:N="md",title:j,description:w,footer:C,children:W,blocking:A=!1,initialFocus:D,"aria-label":H,"aria-labelledby":J,"aria-describedby":L,className:R=""}){const T=m(null),U=h(),z=h(),B=h(),G=e(n()),[I,K]=u(null);if(o(s),t(T,s&&null!==G,D),l(s),f(()=>{if(s)return d(()=>(A||c(),!0),()=>T.current)},[s,A,c]),!s||!G)return null;const Q="bottom"===k,V=Q?{maxHeight:"85vh"}:void 0;return p(
3
+ /* @__PURE__ */b(r,{value:I,children:/* @__PURE__ */x("div",{ref:K,className:"fixed inset-0",style:{zIndex:a.overlay},role:"presentation",children:[
4
+ /* @__PURE__ */b("div",{className:"fixed inset-0 bg-black/30",onClick:A?void 0:c,"aria-hidden":"true"}),
5
+ /* @__PURE__ */x("div",{ref:T,...i({modal:!0,titleId:j?B:void 0,labelledBy:J,label:H}),"aria-describedby":L??(w?z:W?U:void 0),"data-drawer-side":k,style:V,className:["fixed flex flex-col bg-white shadow-xl",Q?"":`w-full max-w-full ${g[N]}`,y[k],Q?"rounded-t-xl":"",R].filter(Boolean).join(" "),children:[j?/* @__PURE__ */x("div",{className:"flex shrink-0 items-center justify-between gap-4 border-b border-gray-100 px-4 py-3",children:[
6
+ /* @__PURE__ */x("div",{className:"min-w-0",children:[
7
+ /* @__PURE__ */b("h2",{id:B,className:"text-base font-semibold text-gray-900",children:j}),w&&/* @__PURE__ */b("p",{id:z,className:"mt-0.5 text-sm text-gray-500",children:w})]}),!A&&/* @__PURE__ */b(v,{onClose:c})]}):!A&&/* @__PURE__ */b("div",{className:"absolute right-2 top-2 z-10",children:/* @__PURE__ */b(v,{onClose:c})}),
8
+ /* @__PURE__ */x("div",{id:U,className:"min-h-0 flex-1 overflow-y-auto px-4 py-4",children:[w&&!j&&/* @__PURE__ */b("p",{id:z,className:("mb-3 text-sm text-gray-500 "+(A?"":"pr-8")).trim(),children:w}),W]}),C&&/* @__PURE__ */b("div",{className:"flex shrink-0 justify-end gap-3 border-t border-gray-100 px-4 py-3",children:C})]})]})}),G)}export{k as Drawer};
@@ -1,15 +1,15 @@
1
- import{Dialog as e}from"./chunk-TW6WYYBC.js";import{buttonClasses as t}from"./chunk-K7U4RWXJ.js";import{Icon as r}from"./chunk-2SHYR3RA.js";import{useShellStrings as n,splitAround as o}from"./chunk-E6UCGCOC.js";import{createContext as l,useContext as a,useState as i,useRef as s,useCallback as c,useEffect as u}from"react";import{jsxs as d,jsx as m,Fragment as h}from"react/jsx-runtime";var b=l(()=>Promise.resolve(!1)),f=()=>a(b),g=()=>Promise.resolve(!1),p=e=>g(e),y=()=>Promise.resolve(!1),v=e=>y(e),x=()=>Promise.resolve(null),N=e=>x(e),k={danger:{icon:"text-red-600 bg-red-100",button:t({variant:"danger"})},warning:{icon:"text-yellow-600 bg-yellow-100",button:t({variant:"warning"})},info:{icon:"text-blue-600 bg-blue-100",button:t({variant:"primary"})}},w=t({variant:"secondary"}),C=t({variant:"primary"}),L="w-full rounded-md border border-gray-300 h-8 px-3 text-sm";function P(){/* @__PURE__ */
1
+ import{Dialog as e}from"./chunk-F2AEP37B.js";import{buttonClasses as t}from"./chunk-K7U4RWXJ.js";import{Icon as r}from"./chunk-2SHYR3RA.js";import{useShellStrings as n,splitAround as o}from"./chunk-E6UCGCOC.js";import{createContext as l,useContext as a,useState as i,useRef as s,useCallback as c,useEffect as u}from"react";import{jsxs as d,jsx as m,Fragment as h}from"react/jsx-runtime";var b=l(()=>Promise.resolve(!1)),f=()=>a(b),g=()=>Promise.resolve(!1),p=e=>g(e),y=()=>Promise.resolve(!1),v=e=>y(e),x=()=>Promise.resolve(null),N=e=>x(e),k={danger:{icon:"text-red-600 bg-red-100",button:t({variant:"danger"})},warning:{icon:"text-yellow-600 bg-yellow-100",button:t({variant:"warning"})},info:{icon:"text-blue-600 bg-blue-100",button:t({variant:"primary"})}},w=t({variant:"secondary"}),C=t({variant:"primary"}),L="w-full rounded-md border border-gray-300 h-8 px-3 text-sm";function P(){/* @__PURE__ */
2
2
  return m(r,{name:"warning",className:"h-5 w-5",strokeWidth:1.5,"aria-hidden":"true"})}function j(){/* @__PURE__ */
3
- return m(r,{name:"close",className:"h-5 w-5",strokeWidth:1.5,"aria-hidden":"true"})}function E({children:t}){const[r,l]=i(!1),[a,f]=i({message:""}),[p,v]=i(0),N=s(),E=s(null),W=s(0),F=s([]),T=s(null),$=s(null),K=c(e=>{E.current=e.id,N.current=e.resolve,v(e.id),f(e.options),l(!0)},[]),R=c(e=>{const t="string"==typeof e?{message:e}:e;return new Promise(e=>{const r={id:++W.current,options:t,resolve:e};null===E.current?K(r):F.current.push(r)})},[K]),[Y,D]=i(!1),[U,A]=i({message:""}),[B,G]=i(""),H=s(),J=c(e=>(A(e),G(""),D(!0),new Promise(e=>{H.current=e})),[]),[O,S]=i(!1),[V,X]=i({}),[q,z]=i(""),I=s(),M=c(e=>{const t="string"==typeof e?{message:e}:e;return X(t),z(t.defaultValue??""),S(!0),new Promise(e=>{I.current=e})},[]);u(()=>{g=R,y=J,x=M},[R,J,M]);const Q=(e,t)=>{if(E.current!==e)return;const r=N.current,n=F.current.shift();n?K(n):(E.current=null,N.current=void 0,l(!1)),r?.(t)},Z=e=>{D(!1),G(""),H.current?.(e)},_=e=>{if(e){const e=q.trim();if(!e&&!V.allowEmpty)return S(!1),void I.current?.(null);S(!1),I.current?.(e)}else S(!1),I.current?.(null)},ee=a.variant||(a.confirmLabel?.toLowerCase().includes("delete")||a.message.toLowerCase().includes("delete")?"danger":"info"),te=k[ee],re=k["warning"===U.variant?"warning":"danger"],ne=U.confirmWord,oe=null==ne||B===ne,le=n().dialog,[ae,ie]=o(le.typeToConfirm);/* @__PURE__ */
3
+ return m(r,{name:"close",className:"h-5 w-5",strokeWidth:1.5,"aria-hidden":"true"})}function E({children:t}){const[r,l]=i(!1),[a,f]=i({message:""}),[p,v]=i(0),N=s(),E=s(null),F=s(0),T=s([]),W=s(null),$=s(null),K=c(e=>{E.current=e.id,N.current=e.resolve,v(e.id),f(e.options),l(!0)},[]),R=c(e=>{const t="string"==typeof e?{message:e}:e;return new Promise(e=>{const r={id:++F.current,options:t,resolve:e};null===E.current?K(r):T.current.push(r)})},[K]),[A,D]=i(!1),[U,B]=i({message:""}),[G,H]=i(""),J=s(),O=c(e=>(B(e),H(""),D(!0),new Promise(e=>{J.current=e})),[]),[S,V]=i(!1),[X,Y]=i({}),[q,z]=i(""),I=s(),M=c(e=>{const t="string"==typeof e?{message:e}:e;return Y(t),z(t.defaultValue??""),V(!0),new Promise(e=>{I.current=e})},[]);u(()=>{g=R,y=O,x=M},[R,O,M]);const Q=(e,t)=>{if(E.current!==e)return;const r=N.current,n=T.current.shift();n?K(n):(E.current=null,N.current=void 0,l(!1)),r?.(t)},Z=e=>{D(!1),H(""),J.current?.(e)},_=e=>{if(e){const e=q.trim();if(!e&&!X.allowEmpty)return V(!1),void I.current?.(null);V(!1),I.current?.(e)}else V(!1),I.current?.(null)},ee=a.variant||(a.confirmLabel?.toLowerCase().includes("delete")||a.message.toLowerCase().includes("delete")?"danger":"info"),te=k[ee],re=k["warning"===U.variant?"warning":"danger"],ne=U.confirmWord,oe=null==ne||G===ne,le=n().dialog,[ae,ie]=o(le.typeToConfirm);/* @__PURE__ */
4
4
  return d(b.Provider,{value:R,children:[t,
5
- /* @__PURE__ */m(e,{open:r,onClose:()=>Q(p,!1),initialFocus:T,footer:/* @__PURE__ */d(h,{children:[
6
- /* @__PURE__ */m("button",{ref:T,type:"button",onClick:()=>Q(p,!1),className:w,children:a.cancelLabel||le.cancel}),
5
+ /* @__PURE__ */m(e,{open:r,onClose:()=>Q(p,!1),initialFocus:W,footer:/* @__PURE__ */d(h,{children:[
6
+ /* @__PURE__ */m("button",{ref:W,type:"button",onClick:()=>Q(p,!1),className:w,children:a.cancelLabel||le.cancel}),
7
7
  /* @__PURE__ */m("button",{type:"button",onClick:()=>Q(p,!0),className:te.button,children:a.confirmLabel||le.ok})]}),children:/* @__PURE__ */d("div",{className:"flex gap-4",children:[
8
8
  /* @__PURE__ */m("div",{className:`shrink-0 w-10 h-10 rounded-full flex items-center justify-center ${te.icon}`,children:/* @__PURE__ */m(P,{})}),
9
9
  /* @__PURE__ */d("div",{className:"flex-1",children:[
10
10
  /* @__PURE__ */m("h2",{className:"text-base font-semibold text-gray-900",children:a.title||le.confirmTitle}),
11
11
  /* @__PURE__ */m("p",{className:"mt-2 text-sm text-gray-600",children:a.message})]})]})}),
12
- /* @__PURE__ */d(e,{open:Y,onClose:()=>Z(!1),initialFocus:null!=ne?void 0:$,footer:/* @__PURE__ */d(h,{children:[
12
+ /* @__PURE__ */d(e,{open:A,onClose:()=>Z(!1),initialFocus:null!=ne?void 0:$,footer:/* @__PURE__ */d(h,{children:[
13
13
  /* @__PURE__ */m("button",{ref:$,type:"button",onClick:()=>Z(!1),className:w,children:U.cancelLabel||le.destructiveCancel}),
14
14
  /* @__PURE__ */m("button",{type:"button",onClick:()=>Z(!0),disabled:!oe,className:re.button,children:ne??U.confirmLabel??le.destructiveConfirm})]}),children:[
15
15
  /* @__PURE__ */m("button",{type:"button",onClick:()=>Z(!1),"aria-label":le.close,className:"absolute right-4 top-4 rounded-md p-1 text-gray-400 hover:bg-gray-100 hover:text-gray-600",children:/* @__PURE__ */m(j,{})}),
@@ -20,8 +20,8 @@ return d(b.Provider,{value:R,children:[t,
20
20
  /* @__PURE__ */m("p",{className:"mt-2 text-sm text-gray-600",children:U.message}),null!=ne&&/* @__PURE__ */d(h,{children:[
21
21
  /* @__PURE__ */d("p",{className:"mt-3 text-sm text-gray-700",children:[ae,
22
22
  /* @__PURE__ */m("kbd",{className:"rounded border border-gray-300 bg-gray-50 px-2 py-0.5 text-xs font-bold text-red-600 font-mono",children:ne}),ie]}),
23
- /* @__PURE__ */m("input",{autoFocus:!0,type:"text",value:B,onChange:e=>G(e.target.value),onKeyDown:e=>{"Enter"===e.key&&B===ne&&Z(!0)},placeholder:ne,className:`mt-2 ${L} focus:border-red-500`})]})]})]})]}),
24
- /* @__PURE__ */d(e,{open:O,onClose:()=>_(!1),title:V.title||le.promptTitle,footer:/* @__PURE__ */d(h,{children:[
25
- /* @__PURE__ */m("button",{type:"button",onClick:()=>_(!1),className:w,children:V.cancelLabel||le.cancel}),
26
- /* @__PURE__ */m("button",{type:"button",onClick:()=>_(!0),disabled:!V.allowEmpty&&!q.trim(),className:C,children:V.confirmLabel||le.ok})]}),children:[V.message&&/* @__PURE__ */m("p",{className:"text-sm text-gray-600",children:V.message}),
27
- /* @__PURE__ */m("input",{autoFocus:!0,type:"text",value:q,onChange:e=>z(e.target.value),onKeyDown:e=>{"Enter"===e.key?_(!0):"Escape"===e.key&&_(!1)},onFocus:e=>e.target.select(),placeholder:V.placeholder,className:`mt-3 ${L} focus:border-blue-500 rosh-focus-ring focus-visible:ring-1 focus-visible:ring-[color:var(--rosh-focus-ring-accent)]`})]})]})}export{E as ConfirmProvider,p as confirm,v as confirmDestructive,N as prompt,f as useConfirm};
23
+ /* @__PURE__ */m("input",{autoFocus:!0,type:"text",value:G,onChange:e=>H(e.target.value),onKeyDown:e=>{"Enter"===e.key&&G===ne&&Z(!0)},placeholder:ne,className:`mt-2 ${L} focus:border-red-500`})]})]})]})]}),
24
+ /* @__PURE__ */d(e,{open:S,onClose:()=>_(!1),title:X.title||le.promptTitle,footer:/* @__PURE__ */d(h,{children:[
25
+ /* @__PURE__ */m("button",{type:"button",onClick:()=>_(!1),className:w,children:X.cancelLabel||le.cancel}),
26
+ /* @__PURE__ */m("button",{type:"button",onClick:()=>_(!0),disabled:!X.allowEmpty&&!q.trim(),className:C,children:X.confirmLabel||le.ok})]}),children:[X.message&&/* @__PURE__ */m("p",{className:"text-sm text-gray-600",children:X.message}),
27
+ /* @__PURE__ */m("input",{autoFocus:!0,type:"text",value:q,onChange:e=>z(e.target.value),onKeyDown:e=>{"Enter"===e.key?_(!0):"Escape"===e.key&&_(!1)},onFocus:e=>e.target.select(),placeholder:X.placeholder,className:`mt-3 ${L} focus:border-blue-500 rosh-focus-ring focus-visible:ring-1 focus-visible:ring-[color:var(--rosh-focus-ring-accent)]`})]})]})}export{E as ConfirmProvider,p as confirm,v as confirmDestructive,N as prompt,f as useConfirm};