efficient-shell 7.36.0 → 7.38.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/README.md +48 -2
  2. package/dist/{Browser-GL5LSI47.js → Browser-B2FN5CW3.js} +13 -13
  3. package/dist/{Calculator-HQNPFH7T.js → Calculator-ABEYFTWE.js} +22 -22
  4. package/dist/{CurrencyConverter-HOHIYM4N.js → CurrencyConverter-CZKVL73H.js} +5 -5
  5. package/dist/{Documents-U6ZBCYXP.js → Documents-BXSLON5K.js} +3 -3
  6. package/dist/Files-BJGOJJZI.js +87 -0
  7. package/dist/{Notepad-5CO7KAHW.js → Notepad-ULQRZ6ZR.js} +10 -10
  8. package/dist/{PomodoroTimer-JQNFGA3S.js → PomodoroTimer-LJVH3GLO.js} +9 -9
  9. package/dist/{Preview-WUJSCN5P.js → Preview-OH32MRJQ.js} +26 -26
  10. package/dist/{Sidebar-ON4DBXVI.js → Sidebar-U34BBJFZ.js} +23 -23
  11. package/dist/{Spreadsheet-32KRT3LH.js → Spreadsheet-7B27ZGVM.js} +13 -13
  12. package/dist/{Stock-EUD5OG3O.js → Stock-7BEWCZCA.js} +3 -3
  13. package/dist/{Weather-GA2K5LGB.js → Weather-O4XOPB7T.js} +13 -13
  14. package/dist/{WorldClock-THKDQYUL.js → WorldClock-B3YYXJF7.js} +6 -6
  15. package/dist/apps/index.js +1 -1
  16. package/dist/bin/ui-check.js +1 -1
  17. package/dist/brand.css +1 -1
  18. package/dist/{chunk-LF7FHR6U.js → chunk-CQ4YXW4Y.js} +60 -60
  19. package/dist/{chunk-2CTK44IB.js → chunk-EH46USL7.js} +8 -8
  20. package/dist/{chunk-YXNO6PLF.js → chunk-ENOIIZYT.js} +1 -1
  21. package/dist/chunk-G25GLRSP.js +1 -0
  22. package/dist/chunk-I7YEIAJ5.js +1 -0
  23. package/dist/{chunk-B527AYLS.js → chunk-J7JAYQSK.js} +1 -1
  24. package/dist/{chunk-UBRW43AM.js → chunk-OGB77LUT.js} +3 -3
  25. package/dist/{chunk-XEHXBWEP.js → chunk-RMEUWIEO.js} +1 -1
  26. package/dist/{chunk-I2BPCXPL.js → chunk-SBVD2F3P.js} +2 -2
  27. package/dist/chunk-UPVVIK3X.js +1038 -0
  28. package/dist/{chunk-OKHHHI4N.js → chunk-ZLG2NT3S.js} +1 -1
  29. package/dist/icons/efficient-looks.js +14 -4
  30. package/dist/icons/efficient.d.ts +11 -1
  31. package/dist/icons/efficient.js +252 -237
  32. package/dist/icons/iconoir.js +7 -1
  33. package/dist/icons/index.d.ts +1 -1
  34. package/dist/icons/index.js +1 -1
  35. package/dist/icons/lucide.js +17 -2
  36. package/dist/icons/phosphor.js +13 -9
  37. package/dist/icons/tabler.js +20 -2
  38. package/dist/{index-9qfNoZ-O.d.ts → index-DkrMePmf.d.ts} +186 -126
  39. package/dist/index.d.ts +2 -2
  40. package/dist/index.js +189 -189
  41. package/dist/page-tabs/index.js +5 -5
  42. package/dist/telemetry/index.js +1 -1
  43. package/dist/ui/index.d.ts +1 -1
  44. package/dist/ui/index.js +1 -1
  45. package/package.json +1 -1
  46. package/dist/Files-YSWLVOAC.js +0 -87
  47. package/dist/chunk-7ZKLBRHL.js +0 -1
  48. package/dist/chunk-KLGZ3O7B.js +0 -1035
  49. package/dist/chunk-PUCDNUFR.js +0 -1
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import{TabStrip as e}from"../chunk-2CTK44IB.js";import{useShellLanguage as t}from"../chunk-XUHJRDNO.js";import"../chunk-K6VLDHTD.js";import{confirm as n}from"../chunk-K3LAW5NH.js";import"../chunk-UBRW43AM.js";import"../chunk-UVBK6YSR.js";import"../chunk-7IQ3B77H.js";import"../chunk-FIEA5CGB.js";import"../chunk-K7PQXJO7.js";import{useBrowserLayoutEffect as r}from"../chunk-D65T4H6J.js";import"../chunk-6OXNDFJE.js";import{useShellStrings as i}from"../chunk-DJ3Z66LK.js";import"../chunk-C3QOHMR6.js";import*as l from"react";import{createContext as c,memo as a,useRef as s,useEffect as o,useMemo as u,useId as y,useCallback as d,useReducer as f,useState as p,useContext as k}from"react";import{useLocation as m,useNavigate as b}from"react-router-dom";import{jsx as v,Fragment as h,jsxs as g}from"react/jsx-runtime";var K=c(null),F=c(null),N=12;var T=(e,t)=>e.filter(e=>e!==t);function A(e,t){return[...t.map(t=>e.find(e=>e.key===t)).filter(e=>Boolean(e)),...e.filter(e=>!t.includes(e.key))]}function I(e,t,n=12){const r=e.clock+1;let i;i=e.tabs.find(e=>e.key===t.key)?e.tabs.map(e=>e.key===t.key?{...e,path:t.path,title:"page"===e.titleFrom?e.title:t.title||e.title,lastActive:r}:e):[...e.tabs,{key:t.key,path:t.path,title:t.title,titleFrom:"route",pinned:!1,lastActive:r}];let l={...e,tabs:i,activeKey:t.key,mounted:(c=e.mounted,a=t.key,c.includes(a)?c:[...c,a]),clock:r};var c,a;return l.closing&&l.closing!==t.key?l=w(l,l.closing):l.closing===t.key&&(l={...l,closing:null}),function(e,t){let n=e;for(;n.tabs.length>t;){const e=n.tabs.filter(e=>!e.pinned&&e.key!==n.activeKey&&!n.dirty.includes(e.key)&&e.key!==n.closing).sort((e,t)=>e.lastActive-t.lastActive);if(0===e.length)break;n=w(n,e[0].key)}return n}(l,n)}function j(e){let t={...e,activeKey:null};return t.closing&&(t=w(t,t.closing)),t}function w(e,t){return{...e,tabs:e.tabs.filter(e=>e.key!==t),mounted:T(e.mounted,t),dirty:T(e.dirty,t),activeKey:e.activeKey===t?null:e.activeKey,closing:e.closing===t?null:e.closing}}function C(e,t){switch(t.type){case"visit":return I(e,t.entry,t.maxTabs);case"transient":return j(e);case"close":{let n=e;for(const e of t.keys)n=w(n,e);return t.closing?function(e,t){return{...e,closing:t}}(n,t.closing):n}case"title":return function(e,t,n){const r=e.tabs.find(e=>e.key===t);return!r||!n||r.title===n&&"page"===r.titleFrom?e:{...e,tabs:e.tabs.map(e=>e.key===t?{...e,title:n,titleFrom:"page"}:e)}}(e,t.key,t.title);case"dirty":return function(e,t,n){return n===e.dirty.includes(t)?e:{...e,dirty:n?[...e.dirty,t]:T(e.dirty,t)}}(e,t.key,t.dirty)}}var M=e=>`${e.pathname}${e.search}`;function O(e){const t=e.indexOf("#"),n=t>=0?e.slice(t):"",r=t>=0?e.slice(0,t):e,i=r.indexOf("?");return{pathname:i>=0?r.slice(0,i):r,search:i>=0?r.slice(i):"",hash:n}}function L({children:e,resolve:l,pinned:c=[],storageKey:a,maxTabs:k=12,enabled:h=!0,confirmDiscard:g}){const F=m(),N=b(),T=i().pageTabs,w=y(),L=s(l);L.current=l;const x=d(e=>{const t=L.current(e);return t?{key:t.key??e.pathname,path:M(e),title:t.title}:null},[]),{language:D}=t(),[B,R]=f(C,void 0,()=>{const e=function(e,t,n){if(!e)return[];let r;try{r=JSON.parse(e)}catch{return[]}const i=r;if(!i||1!==i.v||!Array.isArray(i.tabs))return[];const l=Boolean(n&&"string"==typeof i.lang&&i.lang!==n),c=[];for(const e of i.tabs){if(!e||"string"!=typeof e.path||!e.path.startsWith("/")||e.path.startsWith("//"))continue;const n=e.path.indexOf("#"),r=n>=0?e.path.slice(0,n):e.path,i=t(r);if(!i||c.some(e=>e.key===i.key))continue;const a=!l&&"page"===e.titleFrom&&"string"==typeof e.title&&e.title;c.push({key:i.key,path:r,title:a||i.title,titleFrom:a?"page":"route",pinned:!1,lastActive:0})}return c}(function(e){if(!e)return null;try{return localStorage.getItem(e)}catch{return null}}(a),e=>x(O(e)),D);let t=function(e,t){const n=t.map(e=>e.key);let r=e.tabs.map(e=>({...e,pinned:n.includes(e.key)}));for(const e of t)r.some(t=>t.key===e.key)||(r=[...r,{key:e.key,path:e.path,title:e.title,titleFrom:"route",pinned:!0,lastActive:0}]);return{...e,tabs:A(r,n)}}({tabs:[],activeKey:null,mounted:[],dirty:[],closing:null,clock:0,tabs:e},c.map(e=>x(O(e))).filter(e=>Boolean(e)));const n=h?x(F):null;return t=n?I(t,n,k):j(t),t}),E=s(B);E.current=B;const J=s(/* @__PURE__ */new Map),S=h?x(F):null,$=S?.key??null;r(()=>{if(!h)return;const e=x(F);e?(J.current.set(e.key,F),R({type:"visit",entry:e,maxTabs:k})):R({type:"transient"})},[F,h,k,x]),o(()=>{const e=new Set(B.tabs.map(e=>e.key));for(const t of J.current.keys())e.has(t)||J.current.delete(t)},[B.tabs]);const H=u(()=>function(e,t){const n={v:1,...t?{lang:t}:{},tabs:e.tabs.filter(t=>t.key!==e.closing).map(({key:e,path:t,title:n,titleFrom:r})=>({key:e,path:t,title:n,titleFrom:r}))};return JSON.stringify(n)}(B,D),[B,D]);o(()=>{if(a)try{localStorage.setItem(a,H)}catch{}},[H,a]);const W=B.dirty.length>0;o(()=>{if(!W)return;const e=e=>{e.preventDefault(),e.returnValue=""};return window.addEventListener("beforeunload",e),()=>window.removeEventListener("beforeunload",e)},[W]);const P=s(/* @__PURE__ */new Map),Q=d((e,t)=>{let n=P.current.get(e);return void 0===n&&(n=P.current.size,P.current.set(e,n)),`${w}-page-${t}-${n}`},[w]),U=d(e=>g?g(e):n({title:T.discardTitle,message:1===e.length?T.discardOne:T.discardCount?.(e.length)??`${e.length} ${T.discardMany}`,confirmLabel:T.discardConfirm,cancelLabel:T.keepEditing,variant:"warning"}),[g,T]),V=d(()=>{const e=E.current;return e.tabs.find(e=>e.pinned)?.path??"/"},[]),X=d((e,t,n)=>{const r=E.current,i=r.activeKey;if(!i||!e.includes(i))return void R({type:"close",keys:e,closing:null});let l=t;if(!l){const t={...r,tabs:r.tabs.filter(t=>t.key===i||!e.includes(t.key))},c=n?r.tabs.find(t=>t.key===n&&!e.includes(t.key)):void 0;l=(c??function(e,t){const n=e.tabs.filter(n=>n.key!==e.closing||n.key===t),r=n.findIndex(e=>e.key===t);return r<0?null:n[r+1]??n[r-1]??null}(t,i))?.path??V()}R({type:"close",keys:e.filter(e=>e!==i),closing:i}),N(l)},[N,V]),z=d(async(e,t={})=>{const n=E.current.tabs.find(t=>t.key===e);return!n||n.pinned?(t.to&&N(t.to),!1):!(!t.force&&E.current.dirty.includes(e)&&!await U([n]))&&(!!E.current.tabs.some(t=>t.key===e)&&(X([e],t.to),!0))},[U,X,N]),G=d(async(e,t)=>{let n=function(e,t,n){const r=e.tabs.filter(e=>!e.pinned);if("all"===t)return r.map(e=>e.key);if("others"===t)return r.filter(e=>e.key!==n).map(e=>e.key);const i=e.tabs.findIndex(e=>e.key===n);return i<0?[]:e.tabs.slice(i+1).filter(e=>!e.pinned).map(e=>e.key)}(E.current,e,t);const r=E.current.tabs.filter(e=>n.includes(e.key)&&E.current.dirty.includes(e.key));r.length&&!await U(r)&&(n=n.filter(e=>!r.some(t=>t.key===e)));const i=new Set(E.current.tabs.map(e=>e.key));n=n.filter(e=>i.has(e)),n.length&&X(n,void 0,"all"===e?null:t)},[U,X]),Y=d(e=>{const t=E.current.tabs.find(t=>t.key===e);t&&e!==E.current.activeKey&&N(t.path)},[N]),Z=d((e,t)=>R({type:"title",key:e,title:t}),[]),q=d((e,t)=>R({type:"dirty",key:e,dirty:t}),[]),[_,ee]=p({}),te=d((e,t)=>{ee(n=>{if((n[e]??null)===t)return n;const r={...n};return t?r[e]=t:delete r[e],r})},[]),ne=d(e=>x(e)?.key??null,[x]),re=d(e=>J.current.get(e),[]),ie=u(()=>h?B.tabs.filter(e=>e.key!==B.closing):[],[h,B.tabs,B.closing]),le=u(()=>({enabled:h,state:B,currentKey:$,resolve:l,keyFor:ne,locationFor:re,idFor:Q,activate:Y,close:z,closeMany:G,setTitle:Z,setDirty:q,copies:_,setCopy:te,visibleTabs:ie}),[h,B,$,l,ne,re,Q,Y,z,G,Z,q,_,te,ie]);/* @__PURE__ */
3
- return v(K.Provider,{value:le,children:e})}var x=l.Activity,D=Boolean(x);function B({active:e,children:t}){return x?/* @__PURE__ */v(x,{mode:e?"visible":"hidden",children:t}):/* @__PURE__ */v(h,{children:t})}var R=a(function({tabKey:e,active:t,location:n,render:i,className:l,panelId:c,tabId:a}){const y=s(null),d=s(t),f=s(/* @__PURE__ */new Map);r(()=>{const e=d.current;if(d.current=t,t&&!e)for(const[e,[t,n]]of f.current)e.isConnected?(e.scrollTop=t,e.scrollLeft=n):f.current.delete(e)},[t]),o(()=>{const e=y.current;if(!e)return;const t=e=>{if(!d.current)return;const t=e.target;t&&"number"==typeof t.scrollTop&&f.current.set(t,[t.scrollTop,t.scrollLeft])};return e.addEventListener("scroll",t,!0),()=>e.removeEventListener("scroll",t,!0)},[]);const p=u(()=>({key:e,activeRef:d}),[e]);/* @__PURE__ */
4
- return v("div",{ref:y,role:c?"tabpanel":void 0,id:c,"aria-labelledby":a,hidden:!t,style:t?void 0:{display:"none"},className:l,"data-page-tab":e,children:/* @__PURE__ */v(F.Provider,{value:p,children:/* @__PURE__ */v(B,{active:t,children:i(n)})})})},(e,t)=>e.active===t.active&&e.location===t.location&&e.className===t.className&&e.panelId===t.panelId&&e.tabId===t.tabId&&(!t.active||e.render===t.render)),E="\0transient";function J({children:e,frameClassName:t}){const n=k(K),r=m();if(!n||!n.enabled)/* @__PURE__ */
5
- return v("div",{className:t,children:e(r)},E);const{state:i,currentKey:l,locationFor:c,idFor:a}=n,s=i.tabs.filter(e=>i.mounted.includes(e.key)).map(e=>e.key);return l&&!s.includes(l)&&s.push(l),/* @__PURE__ */g(h,{children:[s.map(n=>{const i=n===l,s=i?r:c(n);return s?/* @__PURE__ */v(R,{tabKey:n,active:i,location:s,render:e,className:t,panelId:a(n,"panel"),tabId:a(n,"tab")},n):null}),!l&&/* @__PURE__ */v(R,{tabKey:E,active:!0,location:r,render:e,className:t},E)]})}function S({className:t,activeClassName:n,end:r}){const l=k(K),c=i().pageTabs;if(!l||!l.enabled)return null;const{visibleTabs:a,state:s,idFor:o,activate:u,close:y,closeMany:d,resolve:f}=l;/* @__PURE__ */
6
- return v(e,{tabs:a.map(e=>({key:e.key,title:e.title,pinned:e.pinned,dirty:s.dirty.includes(e.key),copy:l.copies[e.key],icon:f(O(e.path))?.icon})),activeKey:l.currentKey??null,idFor:o,panelMounted:e=>s.mounted.includes(e),onActivate:u,onClose:e=>{y(e)},onCloseMany:(e,t)=>{d(e,t)},label:c.label,className:t,activeClassName:n,end:r})}var $={enabled:!1,tabs:[],activeKey:null,activate:()=>{},close:async()=>!1,closeOthers:async()=>{},closeRight:async()=>{},closeAll:async()=>{}};function H(){const e=k(K);return e&&e.enabled?{enabled:!0,tabs:e.visibleTabs,activeKey:e.currentKey,activate:e.activate,close:e.close,closeOthers:t=>e.closeMany("others",t),closeRight:t=>e.closeMany("right",t),closeAll:()=>e.closeMany("all",null)}:$}function W(){const e=k(K),t=k(F),n=b();return{key:e?.enabled&&t?t.key:null,close:d(async(r={})=>e?.enabled&&t&&e.state.tabs.some(e=>e.key===t.key)?e.close(t.key,r):(r.to&&n(r.to),!1),[e,t,n])}}function P(e){const t=k(K),n=k(F),r=t?.enabled?t.setTitle:void 0,i=n?.key;o(()=>{r&&i&&e&&r(i,e)},[r,i,e])}function Q(e){const t=k(K),n=k(F),r=t?.enabled?t.setCopy:void 0,i=n?.key;o(()=>{if(r&&i)return r(i,e||null),()=>r(i,null)},[r,i,e])}function U(e){const t=k(K),n=k(F),r=t?.enabled?t.setDirty:void 0;o(()=>{if(r&&n)return r(n.key,e),()=>{n.activeRef.current&&r(n.key,!1)}},[r,n,e])}export{N as DEFAULT_MAX_TABS,D as PAGE_TABS_PAUSE_HIDDEN,S as PageTabBar,J as PageTabsOutlet,L as PageTabsProvider,O as parseTabPath,W as usePageTab,Q as usePageTabCopy,U as usePageTabDirty,P as usePageTabTitle,H as usePageTabs};
2
+ import{TabStrip as e}from"../chunk-EH46USL7.js";import{useShellLanguage as t}from"../chunk-XUHJRDNO.js";import"../chunk-K6VLDHTD.js";import{confirm as n}from"../chunk-K3LAW5NH.js";import"../chunk-OGB77LUT.js";import"../chunk-UVBK6YSR.js";import"../chunk-7IQ3B77H.js";import"../chunk-FIEA5CGB.js";import"../chunk-K7PQXJO7.js";import{useBrowserLayoutEffect as r}from"../chunk-D65T4H6J.js";import"../chunk-6OXNDFJE.js";import{useShellStrings as i}from"../chunk-DJ3Z66LK.js";import"../chunk-C3QOHMR6.js";import*as l from"react";import{createContext as c,memo as a,useRef as s,useEffect as o,useMemo as u,useId as y,useCallback as d,useReducer as f,useState as p,useContext as k}from"react";import{useLocation as m,useNavigate as b}from"react-router-dom";import{jsx as v,Fragment as h,jsxs as g}from"react/jsx-runtime";var K=c(null),F=c(null),N=12;var T=(e,t)=>e.filter(e=>e!==t);function j(e,t){return[...t.map(t=>e.find(e=>e.key===t)).filter(e=>Boolean(e)),...e.filter(e=>!t.includes(e.key))]}function A(e,t,n=12){const r=e.clock+1;let i;i=e.tabs.find(e=>e.key===t.key)?e.tabs.map(e=>e.key===t.key?{...e,path:t.path,title:"page"===e.titleFrom?e.title:t.title||e.title,lastActive:r}:e):[...e.tabs,{key:t.key,path:t.path,title:t.title,titleFrom:"route",pinned:!1,lastActive:r}];let l={...e,tabs:i,activeKey:t.key,mounted:(c=e.mounted,a=t.key,c.includes(a)?c:[...c,a]),clock:r};var c,a;return l.closing&&l.closing!==t.key?l=w(l,l.closing):l.closing===t.key&&(l={...l,closing:null}),function(e,t){let n=e;for(;n.tabs.length>t;){const e=n.tabs.filter(e=>!e.pinned&&e.key!==n.activeKey&&!n.dirty.includes(e.key)&&e.key!==n.closing).sort((e,t)=>e.lastActive-t.lastActive);if(0===e.length)break;n=w(n,e[0].key)}return n}(l,n)}function I(e){let t={...e,activeKey:null};return t.closing&&(t=w(t,t.closing)),t}function w(e,t){return{...e,tabs:e.tabs.filter(e=>e.key!==t),mounted:T(e.mounted,t),dirty:T(e.dirty,t),activeKey:e.activeKey===t?null:e.activeKey,closing:e.closing===t?null:e.closing}}function L(e,t){switch(t.type){case"visit":return A(e,t.entry,t.maxTabs);case"transient":return I(e);case"close":{let n=e;for(const e of t.keys)n=w(n,e);return t.closing?function(e,t){return{...e,closing:t}}(n,t.closing):n}case"title":return function(e,t,n){const r=e.tabs.find(e=>e.key===t);return!r||!n||r.title===n&&"page"===r.titleFrom?e:{...e,tabs:e.tabs.map(e=>e.key===t?{...e,title:n,titleFrom:"page"}:e)}}(e,t.key,t.title);case"dirty":return function(e,t,n){return n===e.dirty.includes(t)?e:{...e,dirty:n?[...e.dirty,t]:T(e.dirty,t)}}(e,t.key,t.dirty)}}var O=e=>`${e.pathname}${e.search}`;function C(e){const t=e.indexOf("#"),n=t>=0?e.slice(t):"",r=t>=0?e.slice(0,t):e,i=r.indexOf("?");return{pathname:i>=0?r.slice(0,i):r,search:i>=0?r.slice(i):"",hash:n}}function M({children:e,resolve:l,pinned:c=[],storageKey:a,maxTabs:k=12,enabled:h=!0,confirmDiscard:g}){const F=m(),N=b(),T=i().pageTabs,w=y(),M=s(l);M.current=l;const x=d(e=>{const t=M.current(e);return t?{key:t.key??e.pathname,path:O(e),title:t.title}:null},[]),{language:D}=t(),[B,E]=f(L,void 0,()=>{const e=function(e,t,n){if(!e)return[];let r;try{r=JSON.parse(e)}catch{return[]}const i=r;if(!i||1!==i.v||!Array.isArray(i.tabs))return[];const l=Boolean(n&&"string"==typeof i.lang&&i.lang!==n),c=[];for(const e of i.tabs){if(!e||"string"!=typeof e.path||!e.path.startsWith("/")||e.path.startsWith("//"))continue;const n=e.path.indexOf("#"),r=n>=0?e.path.slice(0,n):e.path,i=t(r);if(!i||c.some(e=>e.key===i.key))continue;const a=!l&&"page"===e.titleFrom&&"string"==typeof e.title&&e.title;c.push({key:i.key,path:r,title:a||i.title,titleFrom:a?"page":"route",pinned:!1,lastActive:0})}return c}(function(e){if(!e)return null;try{return localStorage.getItem(e)}catch{return null}}(a),e=>x(C(e)),D);let t=function(e,t){const n=t.map(e=>e.key);let r=e.tabs.map(e=>({...e,pinned:n.includes(e.key)}));for(const e of t)r.some(t=>t.key===e.key)||(r=[...r,{key:e.key,path:e.path,title:e.title,titleFrom:"route",pinned:!0,lastActive:0}]);return{...e,tabs:j(r,n)}}({tabs:[],activeKey:null,mounted:[],dirty:[],closing:null,clock:0,tabs:e},c.map(e=>x(C(e))).filter(e=>Boolean(e)));const n=h?x(F):null;return t=n?A(t,n,k):I(t),t}),S=s(B);S.current=B;const H=s(/* @__PURE__ */new Map),J=h?x(F):null,R=J?.key??null;r(()=>{if(!h)return;const e=x(F);e?(H.current.set(e.key,F),E({type:"visit",entry:e,maxTabs:k})):E({type:"transient"})},[F,h,k,x]),o(()=>{const e=new Set(B.tabs.map(e=>e.key));for(const t of H.current.keys())e.has(t)||H.current.delete(t)},[B.tabs]);const $=u(()=>function(e,t){const n={v:1,...t?{lang:t}:{},tabs:e.tabs.filter(t=>t.key!==e.closing).map(({key:e,path:t,title:n,titleFrom:r})=>({key:e,path:t,title:n,titleFrom:r}))};return JSON.stringify(n)}(B,D),[B,D]);o(()=>{if(a)try{localStorage.setItem(a,$)}catch{}},[$,a]);const U=B.dirty.length>0;o(()=>{if(!U)return;const e=e=>{e.preventDefault(),e.returnValue=""};return window.addEventListener("beforeunload",e),()=>window.removeEventListener("beforeunload",e)},[U]);const P=s(/* @__PURE__ */new Map),Q=d((e,t)=>{let n=P.current.get(e);return void 0===n&&(n=P.current.size,P.current.set(e,n)),`${w}-page-${t}-${n}`},[w]),V=d(e=>g?g(e):n({title:T.discardTitle,message:1===e.length?T.discardOne:T.discardCount?.(e.length)??`${e.length} ${T.discardMany}`,confirmLabel:T.discardConfirm,cancelLabel:T.keepEditing,variant:"warning"}),[g,T]),W=d(()=>{const e=S.current;return e.tabs.find(e=>e.pinned)?.path??"/"},[]),X=d((e,t,n)=>{const r=S.current,i=r.activeKey;if(!i||!e.includes(i))return void E({type:"close",keys:e,closing:null});let l=t;if(!l){const t={...r,tabs:r.tabs.filter(t=>t.key===i||!e.includes(t.key))},c=n?r.tabs.find(t=>t.key===n&&!e.includes(t.key)):void 0;l=(c??function(e,t){const n=e.tabs.filter(n=>n.key!==e.closing||n.key===t),r=n.findIndex(e=>e.key===t);return r<0?null:n[r+1]??n[r-1]??null}(t,i))?.path??W()}E({type:"close",keys:e.filter(e=>e!==i),closing:i}),N(l)},[N,W]),G=d(async(e,t={})=>{const n=S.current.tabs.find(t=>t.key===e);return!n||n.pinned?(t.to&&N(t.to),!1):!(!t.force&&S.current.dirty.includes(e)&&!await V([n]))&&(!!S.current.tabs.some(t=>t.key===e)&&(X([e],t.to),!0))},[V,X,N]),z=d(async(e,t)=>{let n=function(e,t,n){const r=e.tabs.filter(e=>!e.pinned);if("all"===t)return r.map(e=>e.key);if("others"===t)return r.filter(e=>e.key!==n).map(e=>e.key);const i=e.tabs.findIndex(e=>e.key===n);return i<0?[]:e.tabs.slice(i+1).filter(e=>!e.pinned).map(e=>e.key)}(S.current,e,t);const r=S.current.tabs.filter(e=>n.includes(e.key)&&S.current.dirty.includes(e.key));r.length&&!await V(r)&&(n=n.filter(e=>!r.some(t=>t.key===e)));const i=new Set(S.current.tabs.map(e=>e.key));n=n.filter(e=>i.has(e)),n.length&&X(n,void 0,"all"===e?null:t)},[V,X]),Y=d(e=>{const t=S.current.tabs.find(t=>t.key===e);t&&e!==S.current.activeKey&&N(t.path)},[N]),Z=d((e,t)=>E({type:"title",key:e,title:t}),[]),q=d((e,t)=>E({type:"dirty",key:e,dirty:t}),[]),[_,ee]=p({}),te=d((e,t)=>{ee(n=>{if((n[e]??null)===t)return n;const r={...n};return t?r[e]=t:delete r[e],r})},[]),ne=d(e=>x(e)?.key??null,[x]),re=d(e=>H.current.get(e),[]),ie=u(()=>h?B.tabs.filter(e=>e.key!==B.closing):[],[h,B.tabs,B.closing]),le=u(()=>({enabled:h,state:B,currentKey:R,resolve:l,keyFor:ne,locationFor:re,idFor:Q,activate:Y,close:G,closeMany:z,setTitle:Z,setDirty:q,copies:_,setCopy:te,visibleTabs:ie}),[h,B,R,l,ne,re,Q,Y,G,z,Z,q,_,te,ie]);/* @__PURE__ */
3
+ return v(K.Provider,{value:le,children:e})}var x=l.Activity,D=Boolean(x);function B({active:e,children:t}){return x?/* @__PURE__ */v(x,{mode:e?"visible":"hidden",children:t}):/* @__PURE__ */v(h,{children:t})}var E=a(function({tabKey:e,active:t,location:n,render:i,className:l,panelId:c,tabId:a}){const y=s(null),d=s(t),f=s(/* @__PURE__ */new Map);r(()=>{const e=d.current;if(d.current=t,t&&!e)for(const[e,[t,n]]of f.current)e.isConnected?(e.scrollTop=t,e.scrollLeft=n):f.current.delete(e)},[t]),o(()=>{const e=y.current;if(!e)return;const t=e=>{if(!d.current)return;const t=e.target;t&&"number"==typeof t.scrollTop&&f.current.set(t,[t.scrollTop,t.scrollLeft])};return e.addEventListener("scroll",t,!0),()=>e.removeEventListener("scroll",t,!0)},[]);const p=u(()=>({key:e,activeRef:d}),[e]);/* @__PURE__ */
4
+ return v("div",{ref:y,role:c?"tabpanel":void 0,id:c,"aria-labelledby":a,hidden:!t,style:t?void 0:{display:"none"},className:l,"data-page-tab":e,children:/* @__PURE__ */v(F.Provider,{value:p,children:/* @__PURE__ */v(B,{active:t,children:i(n)})})})},(e,t)=>e.active===t.active&&e.location===t.location&&e.className===t.className&&e.panelId===t.panelId&&e.tabId===t.tabId&&(!t.active||e.render===t.render)),S="\0transient";function H({children:e,frameClassName:t}){const n=k(K),r=m();if(!n||!n.enabled)/* @__PURE__ */
5
+ return v("div",{className:t,children:e(r)},S);const{state:i,currentKey:l,locationFor:c,idFor:a}=n,s=i.tabs.filter(e=>i.mounted.includes(e.key)).map(e=>e.key);return l&&!s.includes(l)&&s.push(l),/* @__PURE__ */g(h,{children:[s.map(n=>{const i=n===l,s=i?r:c(n);return s?/* @__PURE__ */v(E,{tabKey:n,active:i,location:s,render:e,className:t,panelId:a(n,"panel"),tabId:a(n,"tab")},n):null}),!l&&/* @__PURE__ */v(E,{tabKey:S,active:!0,location:r,render:e,className:t},S)]})}function J({className:t,activeClassName:n,end:r}){const l=k(K),c=i().pageTabs;if(!l||!l.enabled)return null;const{visibleTabs:a,state:s,idFor:o,activate:u,close:y,closeMany:d,resolve:f}=l;/* @__PURE__ */
6
+ return v(e,{tabs:a.map(e=>({key:e.key,title:e.title,pinned:e.pinned,dirty:s.dirty.includes(e.key),copy:l.copies[e.key],icon:f(C(e.path))?.icon})),activeKey:l.currentKey??null,idFor:o,panelMounted:e=>s.mounted.includes(e),onActivate:u,onClose:e=>{y(e)},onCloseMany:(e,t)=>{d(e,t)},label:c.label,className:t,activeClassName:n,end:r})}var R={enabled:!1,tabs:[],activeKey:null,activate:()=>{},close:async()=>!1,closeOthers:async()=>{},closeRight:async()=>{},closeAll:async()=>{}};function $(){const e=k(K);return e&&e.enabled?{enabled:!0,tabs:e.visibleTabs,activeKey:e.currentKey,activate:e.activate,close:e.close,closeOthers:t=>e.closeMany("others",t),closeRight:t=>e.closeMany("right",t),closeAll:()=>e.closeMany("all",null)}:R}function U(){const e=k(K),t=k(F),n=b();return{key:e?.enabled&&t?t.key:null,close:d(async(r={})=>e?.enabled&&t&&e.state.tabs.some(e=>e.key===t.key)?e.close(t.key,r):(r.to&&n(r.to),!1),[e,t,n])}}function P(e){const t=k(K),n=k(F),r=t?.enabled?t.setTitle:void 0,i=n?.key;o(()=>{r&&i&&e&&r(i,e)},[r,i,e])}function Q(e){const t=k(K),n=k(F),r=t?.enabled?t.setCopy:void 0,i=n?.key;o(()=>{if(r&&i)return r(i,e||null),()=>r(i,null)},[r,i,e])}function V(e){const t=k(K),n=k(F),r=t?.enabled?t.setDirty:void 0;o(()=>{if(r&&n)return r(n.key,e),()=>{n.activeRef.current&&r(n.key,!1)}},[r,n,e])}export{N as DEFAULT_MAX_TABS,D as PAGE_TABS_PAUSE_HIDDEN,J as PageTabBar,H as PageTabsOutlet,M as PageTabsProvider,C as parseTabPath,U as usePageTab,Q as usePageTabCopy,V as usePageTabDirty,P as usePageTabTitle,$ as usePageTabs};
@@ -1 +1 @@
1
- export{startClientTelemetry}from"../chunk-YXNO6PLF.js";import"../chunk-PUCDNUFR.js";import"../chunk-KNUR2UEG.js";
1
+ export{startClientTelemetry}from"../chunk-ENOIIZYT.js";import"../chunk-I7YEIAJ5.js";import"../chunk-KNUR2UEG.js";
@@ -1,4 +1,4 @@
1
- export { A as ALT, b as ALT_SHIFT_D, c as ALT_SHIFT_E, d as ALT_SHIFT_N, e as APP_UPDATE_POLL_MS, f as Accordion, g as AccordionItem, h as AccordionProps, i as Align, j as AlignmentGrid, k as AlignmentGridProps, l as AlignmentPoint, m as AngleScale, n as AppUpdateBanner, o as AppUpdateBannerProps, p as AttachButton, q as AttachButtonProps, r as AttachmentDropZone, s as AttachmentDropZoneProps, t as AttachmentList, u as AttachmentListProps, v as AuthScreen, w as AuthScreenProps, x as Avatar, y as AvatarGroup, z as AvatarGroupProps, B as AvatarProps, D as AvatarSize, E as AvatarStatus, F as BORDER_WIDTHS, G as BackgroundVariant, H as BandScale, I as Banner, J as BannerEmphasis, K as BannerProps, L as BannerTone, M as BorderRole, N as BoxPlotBox, O as BoxPlotChart, Q as BoxPlotChartProps, R as BrandAssetEditor, T as BrandAssetEditorProps, U as BrandAssetPreview, V as BrandMark, W as BrandMarkProps, X as BrandMarkSlot, Y as BrandMarkSurface, Z as BrandMarkTreatment, _ as BreadcrumbItem, $ as Breadcrumbs, a0 as BreadcrumbsProps, a1 as BudgetBar, a2 as BudgetBarProps, a3 as BudgetState, a4 as Button, a5 as ButtonClassesOptions, a6 as ButtonProps, a7 as ButtonSize, a8 as ButtonVariant, a9 as CHART_INK, aa as CMD_A, ab as CMD_DOT, ac as CMD_ENTER, ad as CMD_K, ae as CMD_S, af as COLUMN_COUNT_MAX, ag as COLUMN_COUNT_WIDTHS, ah as COLUMN_SHARES_EQUAL, ai as COLUMN_SHARE_MIN, aj as CONTROL_HEIGHTS, ak as CORNERS, al as CORNERS_FOR_THEME, am as Calendar, an as CalendarMode, ao as CalendarProps, ap as Candle, aq as CandlestickChart, ar as CandlestickChartProps, as as Card, at as CardPadding, au as CardProps, av as CardTone, aw as CartesianPlot, ax as CartesianPlotProps, ay as CellStyle, az as ChartBackgroundVariant, aA as ChartBrush, aB as ChartBrushProps, aC as ChartCurve, aD as ChartDefs, aE as ChartDefsProps, aF as ChartDot, aG as ChartDotProps, aH as ChartDotVariant, aI as ChartFillVariant, aJ as ChartFrame, aK as ChartFrameProps, aL as ChartHighlightProvider, aM as ChartLegendEntry, aN as ChartLegendSwatch, aO as ChartRange, aP as ChartReferenceLine, aQ as ChartRevealDirection, aR as ChartSkeleton, aS as ChartSkeletonProps, aT as ChartStatusTone, aU as ChartStrokeVariant, aV as ChartTooltip, aW as ChartTooltipProps, aX as ChartTooltipRow, aY as ChatTemplate, aZ as Checkbox, a_ as CheckboxProps, a$ as CheckoutTemplate, b0 as ChordChart, b1 as ChordChartProps, b2 as ColorPicker, b3 as ColorPickerPanel, b4 as ColorPickerPanelProps, b5 as ColorPickerProps, b6 as ColorPreset, b7 as ColorSwatch, b8 as ColorSwatchProps, b9 as ColorSwatchSize, ba as ColoredBadge, bb as ColoredBadgeProps, bc as ColumnChart, bd as ColumnChartProps, C as ColumnDef, be as ColumnSeries, bf as ColumnShares, bg as ComposerAttachments, bh as ComposerAttachmentsProps, bi as ConfirmProvider, bj as ContainerFillChart, bk as ContainerFillChartProps, bl as ContainerFillItem, bm as ContextMenu, bn as ContextMenuPoint, bo as ContextMenuProps, bp as ContextMenuState, bq as ControlSize, br as CornerOption, bs as Corners, bt as CornersInput, bu as CornersInputProps, bv as CountBadge, bw as CountBadgeProps, bx as CountBadgeTone, by as Curve, bz as DAY_MS, bA as DashboardTemplate, bB as DataTable, bC as DataTableColumn, bD as DataTableColumnGroup, bE as DataTableHeader, bF as DataTablePage, bG as DataTableProps, bH as DataTableRowLink, bI as DataTableRowProps, bJ as DatePicker, bK as DatePickerProps, bL as DateRangePicker, bM as DateRangePickerProps, bN as DateTimePicker, bO as DateTimePickerProps, bP as DescriptionColumns, bQ as DescriptionItem, bR as DescriptionList, bS as DescriptionListProps, bT as Dialog, bU as DialogProps, bV as DialogSize, bW as DisplayChipItem, bX as DisplayChips, bY as DisplayChipsProps, bZ as Divider, b_ as DividerProps, b$ as DividerSpacing, c0 as Drawer, c1 as DrawerProps, c2 as DrawerSide, c3 as DrawerSize, c4 as DropdownMenu, c5 as DropdownMenuAlign, c6 as DropdownMenuCheckboxItem, c7 as DropdownMenuDividerItem, c8 as DropdownMenuEntry, c9 as DropdownMenuItem, ca as DropdownMenuLabelItem, cb as DropdownMenuLinkItem, cc as DropdownMenuProps, cd as DropdownMenuRadioItem, ce as DropdownMenuSide, cf as DropdownPositionOptions, cg as ELEVATION_LEVELS, ch as ENGLISH, ci as ENTER, cj as EditableGrid, ck as EditableGridProps, cl as ElevationLevel, cm as EmailTemplate, cn as EmptyState, co as EmptyStateProps, cp as EmptyValue, cq as EmptyValueProps, cr as ErrorBoundary, cs as ErrorBoundaryProps, ct as ErrorPage, cu as ErrorPageProps, cv as FONT_WEIGHTS, cw as FileIntake, cx as FilePicker, cy as FilePickerProps, cz as FillVariant, cA as FloatingBar, cB as FloatingBarAlign, cC as FloatingBarProps, cD as FloatingBarSide, cE as FontWeightRole, cF as FormError, cG as FormErrorSummary, cH as FormErrorSummaryProps, cI as FormField, cJ as FormFieldProps, cK as FormLayoutPage, cL as FunnelChart, cM as FunnelChartProps, cN as FunnelStage, cO as GLASS_DIVIDER, cQ as GROUP_COLORS, cR as GROUP_COLORS_SOLID, cS as GalleryTemplate, cT as Gap, cU as GlassOptions, cV as GlobalSearch, cW as GlobalSearchProps, cX as Grid, cY as GridCols, cZ as GridColumn, c_ as GridProps, c$ as HeatmapChart, d0 as HeatmapChartProps, d1 as HelpCenter, d2 as HelpCenterDoc, d3 as HelpCenterProps, d4 as HexInput, d5 as HistogramBin, d6 as HistogramChart, d7 as HistogramChartProps, d8 as Hsv, d9 as INPUT_BASE, da as INPUT_SIZES, db as IconButton, dc as IconButtonClassesOptions, dd as IconButtonProps, de as IconPicker, df as IconPickerOption, dg as IconPickerProps, dh as IconRail, di as IconRailButton, dj as IconRailButtonProps, dk as IconRailLabels, dl as IconRailLabelsShown, dm as IconRailOrientation, dn as IconRailProps, dp as ImageFocusPoint, dq as ImageFocusPointProps, dr as Inline, ds as InlineProps, dt as Input, du as InputNumber, dv as InputNumberProps, dw as InputProps, dx as InputSize, dy as Justify, dz as Kanban, dA as KanbanColumn, dB as KanbanProps, dC as Kbd, dD as KbdProps, dE as KbdSize, dF as KbdTone, dG as Label, dH as LabelClassesOptions, dI as LabelProps, dJ as LadderScale, dK as LanguagePanel, dL as LanguagePanelProps, dM as LanguageSelect, dN as LanguageSelectProps, dO as LinearScale, dP as LinkFilter, dQ as LinkFilterField, dR as LinkKindChoice, dS as LinkOption, dT as LinkOptionGroup, dU as LinkPicker, dV as LinkPickerFieldProps, dW as LinkPickerProps, dX as LinkPickerWindowProps, dY as LinkRules, dZ as LinkTarget, d_ as ListDrop, d$ as ListFooter, e0 as ListLoadError, e1 as ListLoadErrorProps, e2 as ListMove, e3 as ListRow, e4 as ListRowProps, e5 as LoadingSpinner, e6 as LoadingSpinnerProps, e7 as MAX_FRACTION_DIGITS, e8 as MENU_MAX_HEIGHT, e9 as MOD, ea as MOTION, eb as MOTION_DURATIONS, ec as Markdown, ec as MarkdownLite, ed as MarkdownLiteProps, ed as MarkdownProps, ee as MediaUploadField, ef as MediaUploadFieldProps, eg as MediaUploadGrid, eh as MediaUploadGridItem, ei as MediaUploadGridProps, ej as MenuPos, ek as Meter, el as MeterProps, em as MetricBar, en as MetricBarProps, eo as Milestone, ep as MilestoneKind, eq as MilestoneTimeline, er as MilestoneTimelineProps, es as MotionSpeed, eu as NEXT_CHUNK_PATH_PREFIX, ev as NativeSelect, ew as NiceAxis, ex as NumericKeypad, ey as NumericKeypadProps, ez as OVERLAY_OPEN_EVENT, eA as PLACEHOLDER_INK, eB as POPUP_MAX_WIDTH, eC as POST_PRODUCTION_STATUSES, eD as PageHeader, eE as PageHeaderProps, P as PaginatedResponse, eF as Pagination, eG as PaginationProps, eH as PaperclipGlyph, eI as Paragraph, eJ as ParagraphProps, eK as PieChart, eL as PieChartProps, eM as PieSegment, eN as PlotGeometry, eO as Point, eP as Popover, eQ as PopoverAlign, eR as PopoverProps, eS as PopoverRenderProps, eT as PopoverSide, eU as PopupMenu, eV as PopupMenuDivider, eW as PopupMenuItem, eX as PopupMenuItemProps, eY as PopupMenuLabel, eZ as PopupMenuProps, e_ as PopupSubmenu, e$ as PopupSubmenuProps, f0 as PortalBrandingContextValue, f1 as PortalBrandingProvider, f2 as PortalBrandingProviderProps, f3 as ProductionTimeline, f4 as ProductionTimelineProps, f5 as ProductionTimelineSnapshot, f6 as ProgressItem, f7 as PublicPortal, f8 as PublicPortalBranding, f9 as RADAR_SERIES_CAP, fa as RADIUS_ROLES, fb as ROW_HEIGHTS, fc as RadarAxis, fd as RadarChart, fe as RadarChartProps, ff as RadarSeries, fg as RadialBarChart, fh as RadialBarChartProps, fi as RadialBarRow, fj as Radio, fk as RadioGroup, fl as RadioGroupOption, fm as RadioGroupOrientation, fn as RadioGroupProps, fo as RadioProps, fp as RadiusRole, fq as Range, fr as RangeChart, fs as RangeChartProps, ft as RangeRow, fu as RankedBars, fv as RankedBarsProps, fw as RankedBarsRow, fx as ResizeHandle, fy as ResizeHandleOrientation, fz as ResizeHandleProps, fA as ResizeHandleSide, fB as ResizeHandleStackSide, fC as ResolvedPortalBrandAsset, fD as Result, fE as ResultProps, fF as ResultStatus, fG as RevealDirection, fH as SCATTER_SERIES_CAP, fI as SERIES_SLOT_COUNT, fJ as SERIES_VARS, fK as SHELL_LANGUAGE_STORAGE_KEY, fL as SHIFT, fM as SPACING_ROLES, fN as SPACING_SCALE, fO as STAGES, fP as STALE_CHUNK_RELOAD_COOLDOWN_MS, fQ as STALE_CHUNK_RELOAD_KEY, fR as STATUS_VARS, fS as SankeyChart, fT as SankeyChartProps, fU as SankeyLink, fV as SankeyNode, fW as ScatterChart, fX as ScatterChartProps, fY as ScatterPoint, fZ as ScatterSeries, S as SearchConfig, f_ as SearchListRoute, f$ as SearchProvider, g0 as SearchQuickAction, g1 as SearchResponse, g2 as SearchResult, g3 as SearchableItem, g4 as SearchableOption, g5 as SearchableOptionGroup, g6 as SearchableSelect, g7 as SearchableSelectBaseProps, g8 as SearchableSelectMultipleProps, g9 as SearchableSelectProps, ga as Segmented, gb as SegmentedOption, gc as SegmentedProps, gd as SegmentedSize, ge as Select, gf as SelectBaseProps, gg as SelectItem, gh as SelectMultipleProps, gi as SelectOption, gj as SelectOptionGroup, gk as SelectProps, gl as SemanticGroup, gm as SeriesSlots, gn as SettingRow, go as SettingRowProps, gp as SeverityTone, gs as ShellLanguage, gt as ShellLanguageProvider, gu as ShellLanguageState, gv as ShellPrefsAdapter, gw as ShellPrefsProvider, gx as SidebarActionButton, gy as SidebarActionButtonProps, gz as SidebarGroupLabel, gA as SidebarGroupLabelProps, gB as SidebarLayout, gC as SidebarLayoutProps, gD as SidebarNavGroup, gE as SidebarNavGroupProps, gF as SidebarNavItem, gG as SidebarNavItemProps, gH as Skeleton, gI as SkeletonProps, gJ as SkeletonVariant, gK as Slider, gL as SliderGroup, gM as SliderProps, gN as SliderSize, gO as Snippet, gP as SnippetProps, gQ as SnippetSize, gR as SnippetVariant, a as SortState, gS as SortableList, gT as SortableListProps, gU as SortableListSpacing, gV as SpacingRole, gW as SpacingStep, gX as Sparkline, gY as SparklineProps, gZ as SpinnerRing, g_ as SpinnerRingProps, g$ as Stack, h0 as StackProps, h1 as StaleChunkReloadOptions, h2 as StatCard, h3 as StatCardProps, h4 as StatTile, h5 as StatTileProps, h6 as Statistic, h7 as StatisticProps, h8 as StatisticSize, h9 as StatisticTone, ha as StatusBadge, hb as StatusBadgeProvider, hc as StatusEmphasis, hd as StepItem, he as Stepper, hf as StepperProps, hg as StrokeVariant, hh as SunburstChart, hi as SunburstChartProps, hj as SunburstNode, hk as Switch, hl as SwitchProps, hm as SwitchSize, hn as TYPE_SCALE, ho as TabItem, hp as Tabs, hq as TabsProps, hr as TagInput, hs as TagInputOption, ht as TagInputProps, hu as TagInputTone, hv as Text, hw as TextLinkField, hx as TextLinkFieldProps, hy as TextProps, hz as TextSize, hA as TextTone, hB as TextToolbar, hC as TextToolbarAlign, hD as TextToolbarCase, hE as TextToolbarMark, hF as TextToolbarProps, hG as TextWeight, hH as Textarea, hI as TextareaProps, hJ as Theme, hK as TileButton, hL as TileButtonProps, hM as TileSize, hN as TimeAgo, hO as TimeAgoProps, hP as TimePicker, hQ as TimePickerProps, hR as TimeSeriesChart, hS as TimeSeriesChartProps, hT as TimeSeriesSeries, hU as TimelineMarker, hV as TimelineMarkerKind, hW as TimelineReport, hX as TimelineScrubProgress, hY as TimelineTrack, hZ as TimelineTrackItem, h_ as TimelineTrackKind, h$ as TimelineTrackPending, i0 as TimelineTrackPhase, i1 as TimelineTrackPlayback, i2 as TimelineTrackProps, i3 as TimelineTrackThumb, i4 as Title, i5 as TitleLevel, i6 as TitleProps, i7 as ToastAction, i8 as ToastCloseReason, i9 as ToastOptions, ia as ToastPlacement, ib as ToastUndoableOptions, ic as Tooltip, id as TooltipProps, ie as TopNav, ig as TopNavItem, ih as TopNavProps, ii as TransferProgress, ij as TransferProgressProps, ik as TransferProgressState, il as Tree, im as TreeDrop, io as TreeEmptySlot, ip as TreeEmptySlotProps, iq as TreeGroup, ir as TreeGroupLabel, is as TreeGroupLabelProps, it as TreeGroupProps, iu as TreeMove, iv as TreeProps, iw as TreeRow, ix as TreeRowProps, iy as TreeSeam, iz as TreeSeamProps, iA as TreemapChart, iB as TreemapChartProps, iC as TreemapItem, iD as TreemapTile, iE as TypeStep, iF as UNDOABLE_MS, iG as UseAppUpdateOptions, iH as UseContextMenu, iI as UseProductionTimelineOpts, iJ as VERSION, iK as VITE_PRELOAD_ERROR_EVENT, iL as WaterfallChart, iM as WaterfallChartProps, iN as WaterfallStep, iO as WidthsBar, iP as WidthsBarProps, iQ as ZLayer, iR as Z_LAYERS, iS as angleScale, iT as appendKey, iU as applyCorners, iV as applyIconSet, iW as applyThemePrefs, iX as arcPath, iY as areaBetween, iZ as areaFrom, i_ as assignSeriesSlots, i$ as autoHighlightIndex, j0 as backspace, j1 as bandScale, j2 as binValues, j3 as budgetState, j4 as bumpPath, j5 as buttonClasses, j6 as calcOverall, j7 as calcReportOverall, j8 as colorFill, j9 as colorSwatchClasses, ja as columnSharesWidths, jb as confirm, jc as confirmDestructive, jd as cornersFor, je as curvePath, jf as dashFor, jh as dismissPopups, ji as fillFor, jj as fillId, jk as fmtSliderDate, jl as fromDateKey, jm as glassStyle, jn as glowId, jo as groundId, jp as groupColors, jq as hexToHsv, jr as highlightOpacity, js as hsvToHex, jt as iconButtonClasses, ju as inputClasses, jv as installStaleChunkReload, jw as isMac, jx as isSeverityTone, jy as isSpacingStep, jz as isStaleChunkError, jB as labelClasses, jC as ladderScale, jD as languageSelectWidth, jE as leavesContextMenuAlone, jF as linearPath, jG as linearScale, jH as logScale, jI as maskId, jJ as matchShellLanguage, jK as mediaFileName, jL as monotonePath, jM as niceAxis, jN as niceMax, jO as openGlobalSearch, jP as parseHexColor, jQ as polygonPoints, jR as popupBounds, jS as prompt, jT as pushRecentSearch, jU as radiusScale, jV as readSavedShellLanguage, jW as registerModalEscapeInterceptor, jX as resolveBrandMarkTreatment, jY as resolveColumnShares, jZ as resolveColumnWidths, j_ as resolveCorners, j$ as resolvePortalBrandAsset, k0 as resolveSeriesColor, k1 as resolveSeriesColorWithin, k2 as resolveShellLanguage, k3 as resolveTheme, k4 as sanitizeRecentSearches, k5 as saveShellLanguage, k6 as seriesColor, k7 as severityOf, k8 as solidSurfaceStyle, k9 as splinePath, ka as squarify, kb as stagger, kc as stepPath, kd as tabButtonId, ke as tabPanelId, kf as textToolbarRows, kg as textToolbarWindowColumns, kh as toDateKey, ki as toDayMs, kj as toISODate, kk as toast, kl as toggleSeriesSlot, km as useAppUpdate, kn as useClickOutside, ko as useConfirm, kp as useContextMenu, kq as useDebouncedValue, kr as useDropdownPosition, ks as useFocusTrap, kt as useHighlight, ku as useIsMobile, kv as useLocalStoragePrefs, kw as usePlotWidth, kx as usePortalBranding, ky as useProductionTimeline, kz as useScrollLock, kA as useShellLanguage, kB as useShellPrefs, kC as useStatusLabel, kD as useTheme, kE as useTransferProgress } from '../index-9qfNoZ-O.js';
1
+ export { A as ALT, b as ALT_SHIFT_D, c as ALT_SHIFT_E, d as ALT_SHIFT_N, e as APP_UPDATE_POLL_MS, f as Accordion, g as AccordionItem, h as AccordionProps, i as Align, j as AlignmentGrid, k as AlignmentGridProps, l as AlignmentPoint, m as AngleScale, n as AppUpdateBanner, o as AppUpdateBannerProps, p as AttachButton, q as AttachButtonProps, r as AttachmentDropZone, s as AttachmentDropZoneProps, t as AttachmentList, u as AttachmentListProps, v as AuthScreen, w as AuthScreenProps, x as Avatar, y as AvatarGroup, z as AvatarGroupProps, B as AvatarProps, D as AvatarSize, E as AvatarStatus, F as BORDER_WIDTHS, G as BackgroundVariant, H as BandScale, I as Banner, J as BannerEmphasis, K as BannerProps, L as BannerTone, M as BorderRole, N as BoxPlotBox, O as BoxPlotChart, Q as BoxPlotChartProps, R as BrandAssetEditor, T as BrandAssetEditorProps, U as BrandAssetPreview, V as BrandMark, W as BrandMarkProps, X as BrandMarkSlot, Y as BrandMarkSurface, Z as BrandMarkTreatment, _ as BreadcrumbItem, $ as Breadcrumbs, a0 as BreadcrumbsProps, a1 as BudgetBar, a2 as BudgetBarProps, a3 as BudgetState, a4 as Button, a5 as ButtonClassesOptions, a6 as ButtonProps, a7 as ButtonSize, a8 as ButtonVariant, a9 as CHART_INK, aa as CMD_A, ab as CMD_DOT, ac as CMD_ENTER, ad as CMD_K, ae as CMD_S, af as COLUMN_COUNT_MAX, ag as COLUMN_COUNT_WIDTHS, ah as COLUMN_SHARES_EQUAL, ai as COLUMN_SHARE_MIN, aj as CONTROL_HEIGHTS, ak as CORNERS, al as CORNERS_FOR_THEME, am as Calendar, an as CalendarMode, ao as CalendarProps, ap as Candle, aq as CandlestickChart, ar as CandlestickChartProps, as as Card, at as CardPadding, au as CardProps, av as CardTone, aw as CartesianPlot, ax as CartesianPlotProps, ay as CellStyle, az as ChartBackgroundVariant, aA as ChartBrush, aB as ChartBrushProps, aC as ChartCurve, aD as ChartDefs, aE as ChartDefsProps, aF as ChartDot, aG as ChartDotProps, aH as ChartDotVariant, aI as ChartFillVariant, aJ as ChartFrame, aK as ChartFrameProps, aL as ChartHighlightProvider, aM as ChartLegendEntry, aN as ChartLegendSwatch, aO as ChartRange, aP as ChartReferenceLine, aQ as ChartRevealDirection, aR as ChartSkeleton, aS as ChartSkeletonProps, aT as ChartStatusTone, aU as ChartStrokeVariant, aV as ChartTooltip, aW as ChartTooltipProps, aX as ChartTooltipRow, aY as ChatTemplate, aZ as Checkbox, a_ as CheckboxProps, a$ as CheckoutTemplate, b0 as ChordChart, b1 as ChordChartProps, b2 as ColorPicker, b3 as ColorPickerPanel, b4 as ColorPickerPanelProps, b5 as ColorPickerProps, b6 as ColorPreset, b7 as ColorSwatch, b8 as ColorSwatchProps, b9 as ColorSwatchSize, ba as ColoredBadge, bb as ColoredBadgeProps, bc as ColumnChart, bd as ColumnChartProps, C as ColumnDef, be as ColumnSeries, bf as ColumnShares, bg as ComposerAttachments, bh as ComposerAttachmentsProps, bi as ConfirmProvider, bj as ContainerFillChart, bk as ContainerFillChartProps, bl as ContainerFillItem, bm as ContextMenu, bn as ContextMenuPoint, bo as ContextMenuProps, bp as ContextMenuState, bq as ControlSize, br as CornerOption, bs as Corners, bt as CornersInput, bu as CornersInputProps, bv as CountBadge, bw as CountBadgeProps, bx as CountBadgeTone, by as Curve, bz as DAY_MS, bA as DashboardTemplate, bB as DataTable, bC as DataTableColumn, bD as DataTableColumnGroup, bE as DataTableHeader, bF as DataTablePage, bG as DataTableProps, bH as DataTableRowLink, bI as DataTableRowProps, bJ as DatePicker, bK as DatePickerProps, bL as DateRangePicker, bM as DateRangePickerProps, bN as DateTimePicker, bO as DateTimePickerProps, bP as DescriptionColumns, bQ as DescriptionItem, bR as DescriptionList, bS as DescriptionListProps, bT as Dialog, bU as DialogProps, bV as DialogSize, bW as DisplayChipItem, bX as DisplayChips, bY as DisplayChipsProps, bZ as Divider, b_ as DividerProps, b$ as DividerSpacing, c0 as Drawer, c1 as DrawerProps, c2 as DrawerSide, c3 as DrawerSize, c4 as DropdownMenu, c5 as DropdownMenuAlign, c6 as DropdownMenuCheckboxItem, c7 as DropdownMenuDividerItem, c8 as DropdownMenuEntry, c9 as DropdownMenuItem, ca as DropdownMenuLabelItem, cb as DropdownMenuLinkItem, cc as DropdownMenuProps, cd as DropdownMenuRadioItem, ce as DropdownMenuSide, cf as DropdownMenuStatusItem, cg as DropdownPositionOptions, ch as ELEVATION_LEVELS, ci as ENGLISH, cj as ENTER, ck as EditableGrid, cl as EditableGridProps, cm as ElevationLevel, cn as EmailTemplate, co as EmptyState, cp as EmptyStateProps, cq as EmptyValue, cr as EmptyValueProps, cs as ErrorBoundary, ct as ErrorBoundaryProps, cu as ErrorPage, cv as ErrorPageProps, cw as FONT_WEIGHTS, cx as FileIntake, cy as FilePicker, cz as FilePickerProps, cA as FillVariant, cB as FloatingBar, cC as FloatingBarAlign, cD as FloatingBarProps, cE as FloatingBarSide, cF as FontWeightRole, cG as FormError, cH as FormErrorSummary, cI as FormErrorSummaryProps, cJ as FormField, cK as FormFieldProps, cL as FormLayoutPage, cM as FunnelChart, cN as FunnelChartProps, cO as FunnelStage, cP as GLASS_DIVIDER, cR as GROUP_COLORS, cS as GROUP_COLORS_SOLID, cT as GalleryTemplate, cU as Gap, cV as GlassOptions, cW as GlobalSearch, cX as GlobalSearchProps, cY as Grid, cZ as GridCols, c_ as GridColumn, c$ as GridProps, d0 as HeatmapChart, d1 as HeatmapChartProps, d2 as HelpCenter, d3 as HelpCenterDoc, d4 as HelpCenterProps, d5 as HexInput, d6 as HistogramBin, d7 as HistogramChart, d8 as HistogramChartProps, d9 as Hsv, da as INPUT_BASE, db as INPUT_SIZES, dc as IconButton, dd as IconButtonClassesOptions, de as IconButtonProps, df as IconPicker, dg as IconPickerOption, dh as IconPickerProps, di as IconRail, dj as IconRailButton, dk as IconRailButtonProps, dl as IconRailLabels, dm as IconRailLabelsShown, dn as IconRailOrientation, dp as IconRailProps, dq as ImageFocusPoint, dr as ImageFocusPointProps, ds as Inline, dt as InlineProps, du as Input, dv as InputNumber, dw as InputNumberProps, dx as InputProps, dy as InputSize, dz as Justify, dA as Kanban, dB as KanbanColumn, dC as KanbanProps, dD as Kbd, dE as KbdProps, dF as KbdSize, dG as KbdTone, dH as Label, dI as LabelClassesOptions, dJ as LabelProps, dK as LadderScale, dL as LanguagePanel, dM as LanguagePanelProps, dN as LanguageSelect, dO as LanguageSelectProps, dP as LinearScale, dQ as LinkFilter, dR as LinkFilterField, dS as LinkKindChoice, dT as LinkOption, dU as LinkOptionGroup, dV as LinkPicker, dW as LinkPickerFieldProps, dX as LinkPickerProps, dY as LinkPickerWindowProps, dZ as LinkRules, d_ as LinkTarget, d$ as ListDrop, e0 as ListFooter, e1 as ListLoadError, e2 as ListLoadErrorProps, e3 as ListMove, e4 as ListRow, e5 as ListRowProps, e6 as LoadingSpinner, e7 as LoadingSpinnerProps, e8 as MAX_FRACTION_DIGITS, e9 as MENU_MAX_HEIGHT, ea as MOD, eb as MOTION, ec as MOTION_DURATIONS, ed as Markdown, ed as MarkdownLite, ee as MarkdownLiteProps, ee as MarkdownProps, ef as MediaUploadField, eg as MediaUploadFieldProps, eh as MediaUploadGrid, ei as MediaUploadGridItem, ej as MediaUploadGridProps, ek as MenuPos, el as Meter, em as MeterProps, en as MetricBar, eo as MetricBarProps, ep as Milestone, eq as MilestoneKind, er as MilestoneTimeline, es as MilestoneTimelineProps, et as MotionSpeed, ev as NEXT_CHUNK_PATH_PREFIX, ew as NativeSelect, ex as NiceAxis, ey as NumericKeypad, ez as NumericKeypadProps, eA as OVERLAY_OPEN_EVENT, eB as PLACEHOLDER_INK, eC as POPUP_MAX_WIDTH, eD as POST_PRODUCTION_STATUSES, eE as PageHeader, eF as PageHeaderProps, P as PaginatedResponse, eG as Pagination, eH as PaginationProps, eI as PaperclipGlyph, eJ as Paragraph, eK as ParagraphProps, eL as PieChart, eM as PieChartProps, eN as PieSegment, eO as PlotGeometry, eP as Point, eQ as Popover, eR as PopoverAlign, eS as PopoverProps, eT as PopoverRenderProps, eU as PopoverSide, eV as PopupMenu, eW as PopupMenuDivider, eX as PopupMenuItem, eY as PopupMenuItemProps, eZ as PopupMenuLabel, e_ as PopupMenuProps, e$ as PopupSubmenu, f0 as PopupSubmenuProps, f1 as PortalBrandingContextValue, f2 as PortalBrandingProvider, f3 as PortalBrandingProviderProps, f4 as ProductionTimeline, f5 as ProductionTimelineProps, f6 as ProductionTimelineSnapshot, f7 as ProgressItem, f8 as PublicPortal, f9 as PublicPortalBranding, fa as RADAR_SERIES_CAP, fb as RADIUS_ROLES, fc as ROW_HEIGHTS, fd as RadarAxis, fe as RadarChart, ff as RadarChartProps, fg as RadarSeries, fh as RadialBarChart, fi as RadialBarChartProps, fj as RadialBarRow, fk as Radio, fl as RadioGroup, fm as RadioGroupOption, fn as RadioGroupOrientation, fo as RadioGroupProps, fp as RadioProps, fq as RadiusRole, fr as Range, fs as RangeChart, ft as RangeChartProps, fu as RangeRow, fv as RankedBars, fw as RankedBarsProps, fx as RankedBarsRow, fy as ResizeHandle, fz as ResizeHandleOrientation, fA as ResizeHandleProps, fB as ResizeHandleSide, fC as ResizeHandleStackSide, fD as ResolvedPortalBrandAsset, fE as Result, fF as ResultProps, fG as ResultStatus, fH as RevealDirection, fI as SCATTER_SERIES_CAP, fJ as SERIES_SLOT_COUNT, fK as SERIES_VARS, fL as SHELL_LANGUAGE_STORAGE_KEY, fM as SHIFT, fN as SPACING_ROLES, fO as SPACING_SCALE, fP as STAGES, fQ as STALE_CHUNK_RELOAD_COOLDOWN_MS, fR as STALE_CHUNK_RELOAD_KEY, fS as STATUS_VARS, fT as SankeyChart, fU as SankeyChartProps, fV as SankeyLink, fW as SankeyNode, fX as ScatterChart, fY as ScatterChartProps, fZ as ScatterPoint, f_ as ScatterSeries, S as SearchConfig, f$ as SearchListRoute, g0 as SearchProvider, g1 as SearchQuickAction, g2 as SearchResponse, g3 as SearchResult, g4 as SearchableItem, g5 as SearchableOption, g6 as SearchableOptionGroup, g7 as SearchableSelect, g8 as SearchableSelectBaseProps, g9 as SearchableSelectMultipleProps, ga as SearchableSelectProps, gb as Segmented, gc as SegmentedOption, gd as SegmentedProps, ge as SegmentedSize, gf as Select, gg as SelectBaseProps, gh as SelectItem, gi as SelectMultipleProps, gj as SelectOption, gk as SelectOptionGroup, gl as SelectProps, gm as SemanticGroup, gn as SeriesSlots, go as SettingRow, gp as SettingRowProps, gq as SeverityTone, gt as ShellLanguage, gu as ShellLanguageProvider, gv as ShellLanguageState, gw as ShellPrefsAdapter, gx as ShellPrefsProvider, gy as SidebarActionButton, gz as SidebarActionButtonProps, gA as SidebarGroupLabel, gB as SidebarGroupLabelProps, gC as SidebarLayout, gD as SidebarLayoutProps, gE as SidebarNavGroup, gF as SidebarNavGroupProps, gG as SidebarNavItem, gH as SidebarNavItemProps, gI as Skeleton, gJ as SkeletonProps, gK as SkeletonVariant, gL as Slider, gM as SliderGroup, gN as SliderProps, gO as SliderSize, gP as Snippet, gQ as SnippetProps, gR as SnippetSize, gS as SnippetVariant, a as SortState, gT as SortableList, gU as SortableListProps, gV as SortableListSpacing, gW as SpacingRole, gX as SpacingStep, gY as Sparkline, gZ as SparklineProps, g_ as SpinnerRing, g$ as SpinnerRingProps, h0 as SplitButton, h1 as SplitButtonProps, h2 as SplitButtonVariant, h3 as Stack, h4 as StackProps, h5 as StaleChunkReloadOptions, h6 as StatCard, h7 as StatCardProps, h8 as StatTile, h9 as StatTileProps, ha as Statistic, hb as StatisticProps, hc as StatisticSize, hd as StatisticTone, he as StatusBadge, hf as StatusBadgeProvider, hg as StatusEmphasis, hh as StepItem, hi as Stepper, hj as StepperProps, hk as StrokeVariant, hl as SunburstChart, hm as SunburstChartProps, hn as SunburstNode, ho as Switch, hp as SwitchProps, hq as SwitchSize, hr as TYPE_SCALE, hs as TabItem, ht as Tabs, hu as TabsProps, hv as TagInput, hw as TagInputOption, hx as TagInputProps, hy as TagInputTone, hz as Text, hA as TextLinkField, hB as TextLinkFieldProps, hC as TextProps, hD as TextSize, hE as TextTone, hF as TextToolbar, hG as TextToolbarAlign, hH as TextToolbarCase, hI as TextToolbarMark, hJ as TextToolbarProps, hK as TextWeight, hL as Textarea, hM as TextareaProps, hN as Theme, hO as TileButton, hP as TileButtonProps, hQ as TileSize, hR as TimeAgo, hS as TimeAgoProps, hT as TimePicker, hU as TimePickerProps, hV as TimeSeriesChart, hW as TimeSeriesChartProps, hX as TimeSeriesSeries, hY as TimelineMarker, hZ as TimelineMarkerKind, h_ as TimelineReport, h$ as TimelineScrubProgress, i0 as TimelineTrack, i1 as TimelineTrackItem, i2 as TimelineTrackKind, i3 as TimelineTrackPending, i4 as TimelineTrackPhase, i5 as TimelineTrackPlayback, i6 as TimelineTrackProps, i7 as TimelineTrackThumb, i8 as Title, i9 as TitleLevel, ia as TitleProps, ib as ToastAction, ic as ToastCloseReason, id as ToastOptions, ie as ToastPlacement, ig as ToastUndoableOptions, ih as Tooltip, ii as TooltipProps, ij as TopNav, ik as TopNavItem, il as TopNavProps, im as TransferProgress, io as TransferProgressProps, ip as TransferProgressState, iq as Tree, ir as TreeDrop, is as TreeEmptySlot, it as TreeEmptySlotProps, iu as TreeGroup, iv as TreeGroupLabel, iw as TreeGroupLabelProps, ix as TreeGroupProps, iy as TreeMove, iz as TreeProps, iA as TreeRow, iB as TreeRowProps, iC as TreeSeam, iD as TreeSeamProps, iE as TreemapChart, iF as TreemapChartProps, iG as TreemapItem, iH as TreemapTile, iI as TypeStep, iJ as UNDOABLE_MS, iK as UseAppUpdateOptions, iL as UseContextMenu, iM as UseProductionTimelineOpts, iN as VERSION, iO as VITE_PRELOAD_ERROR_EVENT, iP as WaterfallChart, iQ as WaterfallChartProps, iR as WaterfallStep, iS as WidthsBar, iT as WidthsBarProps, iU as ZLayer, iV as Z_LAYERS, iW as angleScale, iX as appendKey, iY as applyCorners, iZ as applyIconSet, i_ as applyThemePrefs, i$ as arcPath, j0 as areaBetween, j1 as areaFrom, j2 as assignSeriesSlots, j3 as autoHighlightIndex, j4 as backspace, j5 as bandScale, j6 as binValues, j7 as budgetState, j8 as bumpPath, j9 as buttonClasses, ja as calcOverall, jb as calcReportOverall, jc as colorFill, jd as colorSwatchClasses, je as columnSharesWidths, jf as confirm, jg as confirmDestructive, jh as cornersFor, ji as curvePath, jj as dashFor, jl as dismissPopups, jm as fillFor, jn as fillId, jo as fmtSliderDate, jp as fromDateKey, jq as glassStyle, jr as glowId, js as groundId, jt as groupColors, ju as hexToHsv, jv as highlightOpacity, jw as hsvToHex, jx as iconButtonClasses, jy as inputClasses, jz as installStaleChunkReload, jA as isMac, jB as isSeverityTone, jC as isSpacingStep, jD as isStaleChunkError, jF as labelClasses, jG as ladderScale, jH as languageSelectWidth, jI as leavesContextMenuAlone, jJ as linearPath, jK as linearScale, jL as logScale, jM as maskId, jN as matchShellLanguage, jO as mediaFileName, jP as monotonePath, jQ as niceAxis, jR as niceMax, jS as openGlobalSearch, jT as parseHexColor, jU as polygonPoints, jV as popupBounds, jW as prompt, jX as pushRecentSearch, jY as radiusScale, jZ as readSavedShellLanguage, j_ as registerModalEscapeInterceptor, j$ as resolveBrandMarkTreatment, k0 as resolveColumnShares, k1 as resolveColumnWidths, k2 as resolveCorners, k3 as resolvePortalBrandAsset, k4 as resolveSeriesColor, k5 as resolveSeriesColorWithin, k6 as resolveShellLanguage, k7 as resolveTheme, k8 as sanitizeRecentSearches, k9 as saveShellLanguage, ka as seriesColor, kb as severityOf, kc as solidSurfaceStyle, kd as splinePath, ke as squarify, kf as stagger, kg as stepPath, kh as tabButtonId, ki as tabPanelId, kj as textToolbarRows, kk as textToolbarWindowColumns, kl as toDateKey, km as toDayMs, kn as toISODate, ko as toast, kp as toggleSeriesSlot, kq as useAppUpdate, kr as useClickOutside, ks as useConfirm, kt as useContextMenu, ku as useDebouncedValue, kv as useDropdownPosition, kw as useFocusTrap, kx as useHighlight, ky as useIsMobile, kz as useLocalStoragePrefs, kA as usePlotWidth, kB as usePortalBranding, kC as useProductionTimeline, kD as useScrollLock, kE as useShellLanguage, kF as useShellPrefs, kG as useStatusLabel, kH as useTheme, kI as useTransferProgress } from '../index-DkrMePmf.js';
2
2
  export { C as CurrencyFormat, D as DATE_FORMAT_OPTIONS, a as DateFormatKey, E as EMPTY_VALUE, F as FOCAL_DEFAULT, b as FOCAL_NUDGE_COARSE, c as FOCAL_NUDGE_STEP, d as FocalPoint, e as FormatDateOptions, f as FormatMoneyOptions, T as TZ_AUTO, g as TimeAgoOptions, h as currencyDecimals, i as currencySymbol, j as firstDayOfWeek, k as focalFromRect, l as formatBytes, m as formatDate, n as formatDateTime, o as formatFocal, p as formatMoney, q as formatTime, r as getUserDateFormat, s as getUserTimezone, t as nudgeFocal, u as parseFocal, v as setCurrencyFormats, w as setUserDateFormat, x as setUserTimezone, y as syncTimezoneFromProfile, z as timeAgo } from '../index-CHufemKB.js';
3
3
  export { isSafeLinkHref } from '../markup/index.js';
4
4
  export { FileIntakeAlert, FileIntakeLimits, FileIntakeOptions, FileRejection, FileRejectionReason, acceptsFile, useFileIntake } from '../file-intake/index.js';
package/dist/ui/index.js CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{APP_UPDATE_POLL_MS,Accordion,AlignmentGrid,AppUpdateBanner,AttachButton,AttachmentDropZone,AttachmentList,AuthScreen,Avatar,AvatarGroup,BORDER_WIDTHS,Banner,BoxPlotChart,BrandAssetEditor,BudgetBar,CHART_INK,COLUMN_COUNT_MAX,COLUMN_COUNT_WIDTHS,COLUMN_SHARES_EQUAL,COLUMN_SHARE_MIN,CONTROL_HEIGHTS,CORNERS,CORNERS_FOR_THEME,Calendar,CandlestickChart,Card,CartesianPlot,ChartBrush,ChartDefs,ChartDot,ChartFrame,ChartHighlightProvider,ChartSkeleton,ChartTooltip,ChatTemplate,Checkbox_default as Checkbox,CheckoutTemplate,ChordChart,ColorPicker,ColorPickerPanel,ColorSwatch,ColoredBadge,ColumnChart,ComposerAttachments,ContainerFillChart,ContextMenu,CornersInput,CountBadge,DAY_MS,DashboardTemplate,DataTable,DataTablePage,DatePicker_default as DatePicker,DateRangePicker,DateTimePicker_default as DateTimePicker,DescriptionList,DisplayChips,Divider,Drawer,DropdownMenu,ELEVATION_LEVELS,EmailTemplate,EmptyState,EmptyValue,ErrorBoundary,ErrorPage,FONT_WEIGHTS,FilePicker_default as FilePicker,FloatingBar,FormErrorSummary,FormField,FormLayoutPage,FunnelChart,GROUP_COLORS,GROUP_COLORS_SOLID,GalleryTemplate,Grid,HeatmapChart,HelpCenter,HexInput,HistogramChart,IconPicker,IconRail,IconRailButton,ImageFocusPoint,Inline,Input_default as Input,InputNumber_default as InputNumber,Kanban,Label,LanguagePanel,LanguageSelect,LinkPicker,ListFooter,ListLoadError,ListRow,MAX_FRACTION_DIGITS,MOTION,MOTION_DURATIONS,Markdown,Markdown as MarkdownLite,MediaUploadField,MediaUploadGrid,Meter,MetricBar,MilestoneTimeline,NativeSelect,NumericKeypad,POST_PRODUCTION_STATUSES,PageHeader,Pagination,PaperclipGlyph,Paragraph,PieChart,Popover,PortalBrandingProvider,ProductionTimeline,RADAR_SERIES_CAP,RADIUS_ROLES,ROW_HEIGHTS,RadarChart,RadialBarChart,Radio_default as Radio,RadioGroup,RangeChart,RankedBars,SCATTER_SERIES_CAP,SERIES_SLOT_COUNT,SERIES_VARS,SPACING_ROLES,SPACING_SCALE,STAGES,STATUS_VARS,SankeyChart,ScatterChart,SearchableSelect,Segmented,Select_default as Select,SettingRow,SidebarActionButton,SidebarGroupLabel,SidebarNavGroup,SidebarNavItem,Skeleton,Slider,SliderGroup,Snippet,SortableList,Sparkline,Stack,StatCard,StatTile,Statistic,StatusBadge,StatusBadgeProvider,Stepper,SunburstChart,Switch_default as Switch,TYPE_SCALE,Tabs,TagInput,Text,TextLinkField,TextToolbar,Textarea_default as Textarea,TileButton_default as TileButton,TimeAgo,TimePicker_default as TimePicker,TimeSeriesChart,TimelineTrack,Title,TopNav,TransferProgress,Tree,TreeEmptySlot,TreeGroup,TreeGroupLabel,TreeRow,TreeSeam,TreemapChart,WaterfallChart,WidthsBar,angleScale,appendKey,applyCorners,applyIconSet,applyThemePrefs,arcPath,areaBetween,areaFrom,assignSeriesSlots,autoHighlightIndex,backspace,bandScale,binValues,budgetState,bumpPath,calcOverall,calcReportOverall,colorFill,colorSwatchClasses,columnSharesWidths,cornersFor,curvePath,dashFor,fillFor,fillId,fmtSliderDate,fromKey as fromDateKey,glowId,groundId,groupColors,hexToHsv,highlightOpacity,hsvToHex,isSeverityTone,isSpacingStep,labelClasses,ladderScale,languageSelectWidth,linearPath,linearScale,logScale,maskId,mediaFileName,monotonePath,niceAxis,niceMax,parseHexColor,polygonPoints,radiusScale,resolveColumnShares,resolveColumnWidths,resolveCorners,resolvePortalBrandAsset,resolveSeriesColor,resolveSeriesColorWithin,resolveTheme,seriesColor,severityOf,splinePath,squarify,stagger,stepPath,tabButtonId,tabPanelId,textToolbarRows,textToolbarWindowColumns,toKey as toDateKey,toDayMs,toISODate,toggleSeriesSlot,useAppUpdate,useClickOutside,useContextMenu,useDebouncedValue,useHighlight,usePlotWidth,usePortalBranding,useProductionTimeline,useStatusLabel,useTheme,useTransferProgress}from"../chunk-KLGZ3O7B.js";export{Breadcrumbs}from"../chunk-PMUU2VHD.js";export{EditableGrid}from"../chunk-CMUDEROF.js";import"../chunk-BR22X7E5.js";import"../chunk-AHN2BTZR.js";export{INPUT_BASE,INPUT_SIZES,PLACEHOLDER_INK,inputClasses}from"../chunk-HJQAE6SP.js";export{ResizeHandle,SidebarLayout}from"../chunk-YIEGC2CL.js";export{isSafeLinkHref}from"../chunk-PJPK2ADX.js";export{BrandMark,GlobalSearch,IconButton_default as IconButton,openGlobalSearch,pushRecent as pushRecentSearch,resolveBrandMarkTreatment,sanitizeRecent as sanitizeRecentSearches}from"../chunk-I2BPCXPL.js";export{ICON_NAMES,ICON_SET_FOR_THEME,THEME_ICON_SETS,iconSetFor,isIconName,loadIconSet}from"../chunk-7ZKLBRHL.js";export{ENGLISH,SHELL_LANGUAGE_STORAGE_KEY,ShellLanguageProvider,matchShellLanguage,readSavedShellLanguage,resolveShellLanguage,saveShellLanguage,useShellLanguage}from"../chunk-XUHJRDNO.js";export{UNDOABLE_MS,toast_default as toast}from"../chunk-PYNMOS2E.js";export{VERSION}from"../chunk-PUCDNUFR.js";export{ALT,ALT_SHIFT_D,ALT_SHIFT_E,ALT_SHIFT_N,CMD_A,CMD_DOT,CMD_ENTER,CMD_K,CMD_S,ENTER,Kbd,MOD,NEXT_CHUNK_PATH_PREFIX,Result,SHIFT,STALE_CHUNK_RELOAD_COOLDOWN_MS,STALE_CHUNK_RELOAD_KEY,ShellPrefsProvider,VITE_PRELOAD_ERROR_EVENT,installStaleChunkReload,isMac,isStaleChunkError,useIsMobile,useLocalStoragePrefs,useShellPrefs}from"../chunk-WCGEABUZ.js";import"../chunk-KNUR2UEG.js";import"../chunk-5A7MWTXX.js";export{Button_default as Button}from"../chunk-G5GERM76.js";export{MENU_MAX_HEIGHT,POPUP_MAX_WIDTH,Tooltip,popupBounds,useDropdownPosition}from"../chunk-3E27HV76.js";export{ConfirmProvider,Dialog,confirm,confirmDestructive,prompt,useConfirm,useFocusTrap,useScrollLock}from"../chunk-K3LAW5NH.js";export{PopupMenu,PopupMenuDivider,PopupMenuItem,PopupMenuLabel,PopupSubmenu,leavesContextMenuAlone}from"../chunk-UBRW43AM.js";import"../chunk-UVBK6YSR.js";export{GLASS_DIVIDER,glassStyle,solidSurfaceStyle}from"../chunk-7IQ3B77H.js";export{OVERLAY_OPEN_EVENT,Z_LAYERS,dismissPopups,registerModalEscapeInterceptor}from"../chunk-FIEA5CGB.js";export{buttonClasses,iconButtonClasses}from"../chunk-K7PQXJO7.js";import"../chunk-D65T4H6J.js";export{Icon,activeIconSet,iconSets,iconsVersion,registerIconSet,registerIcons,resolveIcon,setDefaultIconSet,setIconSet,subscribeIcons}from"../chunk-6OXNDFJE.js";export{FileIntakeAlert,acceptsFile,useFileIntake}from"../chunk-GKI4SVYL.js";export{DEFAULT_SHELL_STRINGS,ShellStringsProvider,useShellLocale,useShellStrings}from"../chunk-DJ3Z66LK.js";import"../chunk-C3QOHMR6.js";export{FOCAL_DEFAULT,FOCAL_NUDGE_COARSE,FOCAL_NUDGE_STEP,focalFromRect,formatFocal,nudgeFocal,parseFocal}from"../chunk-AP2QEJXQ.js";export{DATE_FORMAT_OPTIONS,EMPTY_VALUE,TZ_AUTO,currencyDecimals,currencySymbol,firstDayOfWeek,formatBytes,formatDate,formatDateTime,formatMoney,formatTime,getUserDateFormat,getUserTimezone,setCurrencyFormats,setUserDateFormat,setUserTimezone,syncTimezoneFromProfile,timeAgo}from"../chunk-W32SKK3D.js";export{LoadingSpinner,SpinnerRing}from"../chunk-2J6F4EE7.js";
2
+ export{APP_UPDATE_POLL_MS,Accordion,AlignmentGrid,AppUpdateBanner,AttachButton,AttachmentDropZone,AttachmentList,AuthScreen,Avatar,AvatarGroup,BORDER_WIDTHS,Banner,BoxPlotChart,BrandAssetEditor,BudgetBar,CHART_INK,COLUMN_COUNT_MAX,COLUMN_COUNT_WIDTHS,COLUMN_SHARES_EQUAL,COLUMN_SHARE_MIN,CONTROL_HEIGHTS,CORNERS,CORNERS_FOR_THEME,Calendar,CandlestickChart,Card,CartesianPlot,ChartBrush,ChartDefs,ChartDot,ChartFrame,ChartHighlightProvider,ChartSkeleton,ChartTooltip,ChatTemplate,Checkbox_default as Checkbox,CheckoutTemplate,ChordChart,ColorPicker,ColorPickerPanel,ColorSwatch,ColoredBadge,ColumnChart,ComposerAttachments,ContainerFillChart,ContextMenu,CornersInput,CountBadge,DAY_MS,DashboardTemplate,DataTable,DataTablePage,DatePicker_default as DatePicker,DateRangePicker,DateTimePicker_default as DateTimePicker,DescriptionList,DisplayChips,Divider,Drawer,DropdownMenu,ELEVATION_LEVELS,EmailTemplate,EmptyState,EmptyValue,ErrorBoundary,ErrorPage,FONT_WEIGHTS,FilePicker_default as FilePicker,FloatingBar,FormErrorSummary,FormField,FormLayoutPage,FunnelChart,GROUP_COLORS,GROUP_COLORS_SOLID,GalleryTemplate,Grid,HeatmapChart,HelpCenter,HexInput,HistogramChart,IconPicker,IconRail,IconRailButton,ImageFocusPoint,Inline,Input_default as Input,InputNumber_default as InputNumber,Kanban,Label,LanguagePanel,LanguageSelect,LinkPicker,ListFooter,ListLoadError,ListRow,MAX_FRACTION_DIGITS,MOTION,MOTION_DURATIONS,Markdown,Markdown as MarkdownLite,MediaUploadField,MediaUploadGrid,Meter,MetricBar,MilestoneTimeline,NativeSelect,NumericKeypad,POST_PRODUCTION_STATUSES,PageHeader,Pagination,PaperclipGlyph,Paragraph,PieChart,Popover,PortalBrandingProvider,ProductionTimeline,RADAR_SERIES_CAP,RADIUS_ROLES,ROW_HEIGHTS,RadarChart,RadialBarChart,Radio_default as Radio,RadioGroup,RangeChart,RankedBars,SCATTER_SERIES_CAP,SERIES_SLOT_COUNT,SERIES_VARS,SPACING_ROLES,SPACING_SCALE,STAGES,STATUS_VARS,SankeyChart,ScatterChart,SearchableSelect,Segmented,Select_default as Select,SettingRow,SidebarActionButton,SidebarGroupLabel,SidebarNavGroup,SidebarNavItem,Skeleton,Slider,SliderGroup,Snippet,SortableList,Sparkline,SplitButton_default as SplitButton,Stack,StatCard,StatTile,Statistic,StatusBadge,StatusBadgeProvider,Stepper,SunburstChart,Switch_default as Switch,TYPE_SCALE,Tabs,TagInput,Text,TextLinkField,TextToolbar,Textarea_default as Textarea,TileButton_default as TileButton,TimeAgo,TimePicker_default as TimePicker,TimeSeriesChart,TimelineTrack,Title,TopNav,TransferProgress,Tree,TreeEmptySlot,TreeGroup,TreeGroupLabel,TreeRow,TreeSeam,TreemapChart,WaterfallChart,WidthsBar,angleScale,appendKey,applyCorners,applyIconSet,applyThemePrefs,arcPath,areaBetween,areaFrom,assignSeriesSlots,autoHighlightIndex,backspace,bandScale,binValues,budgetState,bumpPath,calcOverall,calcReportOverall,colorFill,colorSwatchClasses,columnSharesWidths,cornersFor,curvePath,dashFor,fillFor,fillId,fmtSliderDate,fromKey as fromDateKey,glowId,groundId,groupColors,hexToHsv,highlightOpacity,hsvToHex,isSeverityTone,isSpacingStep,labelClasses,ladderScale,languageSelectWidth,linearPath,linearScale,logScale,maskId,mediaFileName,monotonePath,niceAxis,niceMax,parseHexColor,polygonPoints,radiusScale,resolveColumnShares,resolveColumnWidths,resolveCorners,resolvePortalBrandAsset,resolveSeriesColor,resolveSeriesColorWithin,resolveTheme,seriesColor,severityOf,splinePath,squarify,stagger,stepPath,tabButtonId,tabPanelId,textToolbarRows,textToolbarWindowColumns,toKey as toDateKey,toDayMs,toISODate,toggleSeriesSlot,useAppUpdate,useClickOutside,useContextMenu,useDebouncedValue,useHighlight,usePlotWidth,usePortalBranding,useProductionTimeline,useStatusLabel,useTheme,useTransferProgress}from"../chunk-UPVVIK3X.js";export{Breadcrumbs}from"../chunk-PMUU2VHD.js";export{EditableGrid}from"../chunk-CMUDEROF.js";import"../chunk-BR22X7E5.js";import"../chunk-AHN2BTZR.js";export{INPUT_BASE,INPUT_SIZES,PLACEHOLDER_INK,inputClasses}from"../chunk-HJQAE6SP.js";export{ResizeHandle,SidebarLayout}from"../chunk-YIEGC2CL.js";export{ENGLISH,SHELL_LANGUAGE_STORAGE_KEY,ShellLanguageProvider,matchShellLanguage,readSavedShellLanguage,resolveShellLanguage,saveShellLanguage,useShellLanguage}from"../chunk-XUHJRDNO.js";export{BrandMark,GlobalSearch,IconButton_default as IconButton,openGlobalSearch,pushRecent as pushRecentSearch,resolveBrandMarkTreatment,sanitizeRecent as sanitizeRecentSearches}from"../chunk-SBVD2F3P.js";export{ICON_NAMES,ICON_SET_FOR_THEME,THEME_ICON_SETS,iconSetFor,isIconName,loadIconSet}from"../chunk-G25GLRSP.js";export{isSafeLinkHref}from"../chunk-PJPK2ADX.js";export{UNDOABLE_MS,toast_default as toast}from"../chunk-PYNMOS2E.js";export{VERSION}from"../chunk-I7YEIAJ5.js";export{ALT,ALT_SHIFT_D,ALT_SHIFT_E,ALT_SHIFT_N,CMD_A,CMD_DOT,CMD_ENTER,CMD_K,CMD_S,ENTER,Kbd,MOD,NEXT_CHUNK_PATH_PREFIX,Result,SHIFT,STALE_CHUNK_RELOAD_COOLDOWN_MS,STALE_CHUNK_RELOAD_KEY,ShellPrefsProvider,VITE_PRELOAD_ERROR_EVENT,installStaleChunkReload,isMac,isStaleChunkError,useIsMobile,useLocalStoragePrefs,useShellPrefs}from"../chunk-WCGEABUZ.js";import"../chunk-KNUR2UEG.js";export{ConfirmProvider,Dialog,confirm,confirmDestructive,prompt,useConfirm,useFocusTrap,useScrollLock}from"../chunk-K3LAW5NH.js";import"../chunk-5A7MWTXX.js";export{PopupMenu,PopupMenuDivider,PopupMenuItem,PopupMenuLabel,PopupSubmenu,leavesContextMenuAlone}from"../chunk-OGB77LUT.js";import"../chunk-UVBK6YSR.js";export{Button_default as Button}from"../chunk-G5GERM76.js";export{MENU_MAX_HEIGHT,POPUP_MAX_WIDTH,Tooltip,popupBounds,useDropdownPosition}from"../chunk-3E27HV76.js";export{GLASS_DIVIDER,glassStyle,solidSurfaceStyle}from"../chunk-7IQ3B77H.js";export{OVERLAY_OPEN_EVENT,Z_LAYERS,dismissPopups,registerModalEscapeInterceptor}from"../chunk-FIEA5CGB.js";export{buttonClasses,iconButtonClasses}from"../chunk-K7PQXJO7.js";import"../chunk-D65T4H6J.js";export{Icon,activeIconSet,iconSets,iconsVersion,registerIconSet,registerIcons,resolveIcon,setDefaultIconSet,setIconSet,subscribeIcons}from"../chunk-6OXNDFJE.js";export{FileIntakeAlert,acceptsFile,useFileIntake}from"../chunk-GKI4SVYL.js";export{DEFAULT_SHELL_STRINGS,ShellStringsProvider,useShellLocale,useShellStrings}from"../chunk-DJ3Z66LK.js";import"../chunk-C3QOHMR6.js";export{FOCAL_DEFAULT,FOCAL_NUDGE_COARSE,FOCAL_NUDGE_STEP,focalFromRect,formatFocal,nudgeFocal,parseFocal}from"../chunk-AP2QEJXQ.js";export{DATE_FORMAT_OPTIONS,EMPTY_VALUE,TZ_AUTO,currencyDecimals,currencySymbol,firstDayOfWeek,formatBytes,formatDate,formatDateTime,formatMoney,formatTime,getUserDateFormat,getUserTimezone,setCurrencyFormats,setUserDateFormat,setUserTimezone,syncTimezoneFromProfile,timeAgo}from"../chunk-W32SKK3D.js";export{LoadingSpinner,SpinnerRing}from"../chunk-2J6F4EE7.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "efficient-shell",
3
- "version": "7.36.0",
3
+ "version": "7.38.0",
4
4
  "description": "Desktop-style React UI shell — windows, taskbar, start menu, sticky notes, frosted glass theming, and bundled apps.",
5
5
  "license": "UNLICENSED",
6
6
  "author": "Efficient Pty Ltd",
@@ -1,87 +0,0 @@
1
- import{openPreviewFile as e}from"./chunk-YVECLMNT.js";import{Breadcrumbs as t}from"./chunk-PMUU2VHD.js";import{TH_ONE_LINE as a}from"./chunk-AHN2BTZR.js";import{SidebarLayout as r}from"./chunk-YIEGC2CL.js";import{getFilesDemoTree as n}from"./chunk-P6WZ24CB.js";import{AboutApp as s}from"./chunk-OKHHHI4N.js";import{peekFilesViewRequest as i,consumeFilesViewRequest as l,FILES_SHOW_TRASH_EVENT as o,FILES_OPEN_DESKTOP_FOLDER_EVENT as d,subscribeDesktopFolders as c,getDesktopFoldersSnapshot as m,FolderGlyph as h,DesktopItemMiniIcon as p,desktopItemTypeLabel as u}from"./chunk-MWAPICLX.js";import"./chunk-ESL5TDNA.js";import"./chunk-VTVSMRFX.js";import{toast_default as f}from"./chunk-PYNMOS2E.js";import"./chunk-PUCDNUFR.js";import{useWindowManager as x,WindowTitle as g}from"./chunk-LF7FHR6U.js";import"./chunk-WCGEABUZ.js";import"./chunk-KNUR2UEG.js";import"./chunk-DSSLOQDW.js";import"./chunk-5A7MWTXX.js";import"./chunk-G5GERM76.js";import"./chunk-3E27HV76.js";import"./chunk-K6VLDHTD.js";import{confirm as y,prompt as b}from"./chunk-K3LAW5NH.js";import"./chunk-UBRW43AM.js";import"./chunk-UVBK6YSR.js";import"./chunk-7IQ3B77H.js";import"./chunk-FIEA5CGB.js";import"./chunk-K7PQXJO7.js";import"./chunk-D65T4H6J.js";import{Icon as k}from"./chunk-6OXNDFJE.js";import"./chunk-DJ3Z66LK.js";import"./chunk-C3QOHMR6.js";import{formatBytes as N}from"./chunk-W32SKK3D.js";import{LoadingSpinner as w}from"./chunk-2J6F4EE7.js";import{useState as v,useEffect as $,useSyncExternalStore as j,useRef as C,useCallback as D}from"react";import{jsxs as E,jsx as L,Fragment as T}from"react/jsx-runtime";var R="undefined"!=typeof window&&window.__REACT_OS_SHELL_FILE_SERVER__||"http://localhost:4000",P={pdf:"pdf",dxf:"dxf",csv:"csv",jpg:"image",jpeg:"image",png:"image",gif:"image",webp:"image",svg:"image",avif:"image",bmp:"image",stp:"3d",step:"3d",stl:"3d",obj:"3d",gltf:"3d",glb:"3d","3mf":"3d",iges:"3d",igs:"3d",ply:"3d",fbx:"3d"};function S(e,t){return"/"===e||""===e?"/"+t:e.replace(/\/$/,"")+"/"+t}function F(e){if(!e)return"—";try{const t=new Date(e);return isNaN(t.getTime())?"—":t.toLocaleString(void 0,{dateStyle:"short",timeStyle:"short"})}catch{return e}}function W(){const W=R.replace(/\/$/,""),U=null!==n(),[I,M]=v("/"),[A,O]=v([]),[H,B]=v([]),[V,K]=v(null),[z,J]=v(!0),[_,G]=v(!1),[X,Q]=v(null),[Y,Z]=v(!1),[q,ee]=v(()=>{const e=i();return"trash"===e?"trash":e?{desktopFolderId:e.folderId}:"files"});$(()=>{l()},[]);const[te,ae]=v([]);$(()=>{const e=()=>{l(),ee("trash")},t=e=>{l();const t=e.detail?.folderId;t&&ee({desktopFolderId:t})};return window.addEventListener(o,e),window.addEventListener(d,t),()=>{window.removeEventListener(o,e),window.removeEventListener(d,t)}},[]);const re=j(c,m,m),ne="object"==typeof q?q.desktopFolderId:null,se=ne?re?.folders.find(e=>e.id===ne)??null:null,ie=ne&&re?.itemsByFolder[ne]||[];$(()=>{ne&&re&&!re.folders.some(e=>e.id===ne)&&ee("files")},[ne,re]);const le=C(0),oe=C(null),{openPage:de,openEntity:ce}=x(),me=t=>{"preview-file"===t.entityType&&t.filePath&&t.fileKind?e({filePath:t.filePath,filename:t.label,kind:t.fileKind,onStaged:e=>de(e)}):"page"===t.entityType?de(t.entityId):ce(t.entityType,t.entityId,null,t.label)},he=D((e,t={})=>fetch(e,{...t,credentials:"include"}),[]),pe=D(async()=>{try{const e=await he(`${W}/api/quota`);if(e.ok){const t=await e.json();Q({used:t.used,limit:t.limit})}}catch{}},[he,W]),ue=D(async e=>{if(K(null),U){const t=function(e){const t=n();if(!t)return[];let a=t;for(const t of e.split("/").filter(Boolean)){const e=a.find(e=>"folder"===e.kind&&e.name===t);if(!e||!e.children)return[];a=e.children}return a.map(e=>({name:e.name,kind:e.kind,size:e.size??0,modifiedAt:e.modifiedAt??""}))}(e);return O(t),M(e),G(!1),J(!1),void("/"===e&&B(t.filter(e=>"folder"===e.kind).map(e=>e.name)))}J(!0);try{const t=await he(`${W}/api/files?path=${encodeURIComponent(e)}`);if(!t.ok){const e=await t.json().catch(()=>({}));return void f.error(e.error||`Failed to list (${t.status})`)}const a=await t.json(),r=a.entries||[];O(r),M(a.path||e),G(!1),"/"===(a.path||e)&&B(r.filter(e=>"folder"===e.kind).map(e=>e.name))}catch(e){G(!0)}finally{J(!1)}pe()},[he,W,pe,U]),fe=D(async()=>{if(U)return ae([]),void J(!1);J(!0),K(null);try{const e=await he(`${W}/api/trash`);if(!e.ok){const t=await e.json().catch(()=>({}));return void f.error(t.error||`Failed to list trash (${e.status})`)}const t=await e.json();ae(t.entries||[]),G(!1)}catch{G(!0)}finally{J(!1)}pe()},[he,W,pe,U]);$(()=>{"files"===q?ue(I):"trash"===q&&fe()},[I,q]);const xe=async e=>{const t=S(I,e.name);try{const a=await he(`${W}/api/file?path=${encodeURIComponent(t)}`);if(!a.ok)return void f.error(`Download failed (${a.status})`);const r=await a.blob(),n=URL.createObjectURL(r),s=document.createElement("a");s.href=n,s.download=e.name,s.click(),setTimeout(()=>URL.revokeObjectURL(n),1e3)}catch(e){f.error(e?.message||"Download failed")}},ge=async e=>{const t=Array.from(e);for(const e of t){const t=new FormData;t.append("file",e);try{const a=await he(`${W}/api/upload?path=${encodeURIComponent(I)}`,{method:"POST",body:t});if(!a.ok){const t=await a.json().catch(()=>({}));if(413===a.status){const a=Math.max(0,(t.limit||0)-(t.used||0));f.error(`Quota exceeded — ${N(a)} free, ${e.name} is ${N(t.attempted||e.size)}`)}else f.error(`Upload ${e.name}: ${t.error||a.status}`)}}catch(t){f.error(`Upload ${e.name}: ${t?.message||"failed"}`)}}ue(I)},ye=()=>{le.current=0,Z(!1)};if($(()=>{const e=()=>ye();return window.addEventListener("dragend",e),window.addEventListener("drop",e),()=>{window.removeEventListener("dragend",e),window.removeEventListener("drop",e)}},[]),_)/* @__PURE__ */
2
- return E("div",{className:"flex flex-col h-full bg-white",children:[
3
- /* @__PURE__ */L(g,{title:"Files - offline"}),
4
- /* @__PURE__ */L("div",{className:"flex-1 flex items-center justify-center p-8 text-center",children:/* @__PURE__ */E("div",{className:"max-w-md",children:[
5
- /* @__PURE__ */L(k,{name:"close-circle",className:"h-12 w-12 mx-auto text-gray-300 mb-3",strokeWidth:1.4}),
6
- /* @__PURE__ */L("h3",{className:"text-base font-semibold text-gray-800 mb-1",children:"Can't reach the file server"}),
7
- /* @__PURE__ */E("p",{className:"text-sm text-gray-500 mb-3",children:["No response from ",
8
- /* @__PURE__ */L("span",{className:"font-mono",children:W}),". Make sure the server is running — see ",
9
- /* @__PURE__ */L("span",{className:"font-mono",children:"examples/file-server/README.md"}),"."]}),
10
- /* @__PURE__ */L("button",{onClick:()=>ue(I),className:"px-3 h-8 text-sm bg-blue-500 text-white rounded hover:bg-blue-600",children:"Retry"})]})})]});const be="/"===I?[]:I.split("/").filter(Boolean),ke=X&&X.limit>0?Math.min(100,Math.round(X.used/X.limit*100)):0,Ne=ke>90?"bg-red-500":ke>75?"bg-amber-500":"bg-blue-500",we=[{label:"My files",onClick:()=>M("/")},...be.map((e,t)=>({label:e,onClick:()=>M("/"+be.slice(0,t+1).join("/"))}))],ve=e=>"flex w-full items-center gap-2 rounded-md px-3 min-h-(--row-height-menu) py-2 text-left text-sm transition-colors "+(e?"bg-blue-50 font-medium text-blue-700":"text-gray-700 hover:bg-gray-100"),$e=e=>/* @__PURE__ */L("svg",{className:"h-4 w-4 shrink-0 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:1.6,children:/* @__PURE__ */L("path",{strokeLinecap:"round",strokeLinejoin:"round",d:e})}),je=/* @__PURE__ */E("nav",{className:"p-2",children:[
11
- /* @__PURE__ */L("div",{className:"px-2 py-2 text-2xs font-semibold uppercase tracking-wide text-gray-400",children:"Locations"}),
12
- /* @__PURE__ */E("button",{onClick:()=>{ee("files"),M("/")},className:ve("files"===q&&"/"===I),children:[$e("M2.25 12l8.954-8.955a1.5 1.5 0 012.122 0L21.75 12M4.5 9.75v9.75a.75.75 0 00.75.75H9V15a.75.75 0 01.75-.75h4.5A.75.75 0 0115 15v5.25h3.75a.75.75 0 00.75-.75V9.75"),"My files"]}),H.map(e=>/* @__PURE__ */E("button",{onClick:()=>{ee("files"),M("/"+e)},className:ve("files"===q&&I==="/"+e),children:[$e("M2.25 12.75V12A2.25 2.25 0 014.5 9.75h15A2.25 2.25 0 0121.75 12v.75m-8.69-6.44l-2.12-2.12a1.5 1.5 0 00-1.061-.44H4.5A2.25 2.25 0 002.25 6v12a2.25 2.25 0 002.25 2.25h15A2.25 2.25 0 0021.75 18V9a2.25 2.25 0 00-2.25-2.25h-5.379a1.5 1.5 0 01-1.06-.44z"),
13
- /* @__PURE__ */L("span",{className:"truncate",children:e})]},e)),!U&&/* @__PURE__ */E("button",{onClick:()=>ee("trash"),className:ve("trash"===q),children:[$e("M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79"),"Trash"]}),re&&re.folders.length>0&&/* @__PURE__ */E(T,{children:[
14
- /* @__PURE__ */L("div",{className:"px-2 pt-3 pb-2 text-2xs font-semibold uppercase tracking-wide text-gray-400",children:"Desktop"}),re.folders.map(e=>/* @__PURE__ */E("button",{onClick:()=>ee({desktopFolderId:e.id}),className:ve(ne===e.id),children:[
15
- /* @__PURE__ */L(h,{className:"h-4 w-4 shrink-0 text-amber-500"}),
16
- /* @__PURE__ */L("span",{className:"truncate",children:e.name}),e.itemCount>0&&/* @__PURE__ */L("span",{className:"ml-auto text-2xs text-gray-400 tabular-nums",children:e.itemCount})]},e.id))]})]});/* @__PURE__ */
17
- return E("div",{className:"relative flex flex-col h-full bg-white",onDragEnter:e=>{U||"object"==typeof q||e.dataTransfer?.types?.includes?.("Files")&&(e.preventDefault(),le.current++,Y||Z(!0))},onDragOver:e=>{e.dataTransfer?.types?.includes?.("Files")&&e.preventDefault()},onDragLeave:()=>{le.current>0&&le.current--,0===le.current&&Z(!1)},onDrop:e=>{e.preventDefault(),ye(),U||"object"==typeof q||e.dataTransfer.files?.length&&ge(e.dataTransfer.files)},children:[
18
- /* @__PURE__ */L(g,{title:se?`Files - ${se.name}`:"Files"+("/"===I?"":" - "+I)}),
19
- /* @__PURE__ */L(s,{app:"files"}),
20
- /* @__PURE__ */L("input",{ref:oe,type:"file",multiple:!0,className:"hidden",onChange:e=>{e.target.files?.length&&ge(e.target.files),oe.current&&(oe.current.value="")}}),
21
- /* @__PURE__ */L("div",{className:"flex-1 min-h-0",children:/* @__PURE__ */L(r,{sidebar:je,storageKey:"files.sidebarWidth",defaultWidth:200,minWidth:150,maxWidth:320,children:/* @__PURE__ */E("div",{className:"flex h-full min-w-0 flex-col",children:[
22
- /* @__PURE__ */E("div",{className:"flex items-center gap-1 px-2 py-2 border-b border-gray-200 bg-gray-50 shrink-0 text-xs",children:[/* @__PURE__ */E(T,"files"===q?{children:[
23
- /* @__PURE__ */L("button",{onClick:()=>M(function(e){if("/"===e||""===e)return"/";const t=e.replace(/\/$/,""),a=t.lastIndexOf("/");return a<=0?"/":t.slice(0,a)}(I)),disabled:"/"===I,className:"px-2 py-1 rounded hover:bg-gray-200 disabled:opacity-30 text-gray-600",title:"Parent folder",children:/* @__PURE__ */L(k,{name:"arrow-left",className:"h-3.5 w-3.5",strokeWidth:2})}),
24
- /* @__PURE__ */L("div",{className:"flex-1 min-w-0",children:/* @__PURE__ */L(t,{items:we,maxItems:5})}),
25
- /* @__PURE__ */L("button",{onClick:()=>ue(I),className:"px-2 py-1 rounded hover:bg-gray-200 text-gray-600",title:"Refresh",children:/* @__PURE__ */L(k,{name:"refresh",className:"h-3.5 w-3.5",strokeWidth:1.8})}),!U&&/* @__PURE__ */E(T,{children:[
26
- /* @__PURE__ */E("button",{onClick:()=>ee("trash"),className:"px-2 py-1 rounded hover:bg-gray-200 text-gray-600 flex items-center gap-1",title:"Open trash",children:[
27
- /* @__PURE__ */L(k,{name:"trash",className:"h-3.5 w-3.5",strokeWidth:1.5}),"Trash"]}),
28
- /* @__PURE__ */E("button",{onClick:async()=>{const e=await b({title:"New folder",placeholder:"Folder name",confirmLabel:"Create"});if(!e)return;if(/[\\/]/.test(e))return void f.error("Folder names cannot contain slashes");const t=S(I,e),a=await he(`${W}/api/folder`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:t})});if(!a.ok){const e=await a.json().catch(()=>({}));return void f.error(e.error||`Create folder failed (${a.status})`)}ue(I)},className:"px-2 py-1 rounded hover:bg-gray-200 text-gray-600 flex items-center gap-1",children:[
29
- /* @__PURE__ */L(k,{name:"folder-plus",className:"h-3.5 w-3.5",strokeWidth:1.5}),"New Folder"]}),
30
- /* @__PURE__ */E("button",{onClick:()=>oe.current?.click(),className:"px-2 py-1 rounded bg-blue-500 text-white hover:bg-blue-600 flex items-center gap-1",children:[
31
- /* @__PURE__ */L(k,{name:"upload",className:"h-3.5 w-3.5",strokeWidth:1.8}),"Upload"]})]})]}:"trash"===q?{children:[
32
- /* @__PURE__ */L("button",{onClick:()=>ee("files"),className:"px-2 py-1 rounded hover:bg-gray-200 text-gray-600",title:"Back to files",children:/* @__PURE__ */L(k,{name:"arrow-left",className:"h-3.5 w-3.5",strokeWidth:2})}),
33
- /* @__PURE__ */L("span",{className:"flex-1 text-gray-700 font-medium px-2",children:"Trash"}),
34
- /* @__PURE__ */L("button",{onClick:fe,className:"px-2 py-1 rounded hover:bg-gray-200 text-gray-600",title:"Refresh",children:/* @__PURE__ */L(k,{name:"refresh",className:"h-3.5 w-3.5",strokeWidth:1.8})}),
35
- /* @__PURE__ */L("button",{onClick:async()=>{if(0===te.length)return;if(!await y({title:"Empty trash",message:`${te.length} item${1===te.length?"":"s"} will be permanently removed. This can't be undone.`,confirmLabel:"Empty trash",variant:"danger"}))return;const e=await he(`${W}/api/trash`,{method:"DELETE"});if(!e.ok){const t=await e.json().catch(()=>({}));return void f.error(t.error||`Empty trash failed (${e.status})`)}fe()},disabled:0===te.length,className:"px-2 py-1 rounded text-red-600 hover:bg-red-50 disabled:opacity-30 flex items-center gap-1",children:"Empty trash"})]}:{children:[
36
- /* @__PURE__ */L("button",{onClick:()=>ee("files"),className:"px-2 py-1 rounded hover:bg-gray-200 text-gray-600",title:"Back to files",children:/* @__PURE__ */L(k,{name:"arrow-left",className:"h-3.5 w-3.5",strokeWidth:2})}),
37
- /* @__PURE__ */L(h,{className:"h-4 w-4 text-amber-500 ml-1"}),
38
- /* @__PURE__ */L("span",{className:"flex-1 text-gray-700 font-medium px-1 truncate",children:se?.name??"Desktop folder"}),
39
- /* @__PURE__ */L("span",{className:"text-2xs text-gray-400 px-2",children:"Desktop shortcuts"})]}),X&&/* @__PURE__ */E(T,{children:[
40
- /* @__PURE__ */L("div",{className:"h-4 w-px bg-gray-300 mx-1"}),
41
- /* @__PURE__ */E("div",{className:"flex items-center gap-2",title:`${N(X.used)} of ${N(X.limit)} used`,children:[
42
- /* @__PURE__ */L("div",{className:"w-20 h-1.5 rounded-full bg-gray-200 overflow-hidden",children:/* @__PURE__ */L("div",{className:`h-full ${Ne} transition-all`,style:{width:`${ke}%`}})}),
43
- /* @__PURE__ */E("span",{className:"text-2xs text-gray-500 tabular-nums whitespace-nowrap",children:[N(X.used)," / ",N(X.limit)]})]})]})]}),
44
- /* @__PURE__ */L("div",{className:"flex-1 overflow-auto",children:"object"==typeof q?0===ie.length?/* @__PURE__ */L("div",{className:"p-10 text-center text-sm text-gray-400",children:"This desktop folder is empty. Drag shortcuts onto it on the desktop."}):/* @__PURE__ */E("table",{className:"w-full text-sm",children:[
45
- /* @__PURE__ */L("thead",{className:"bg-gray-50 text-2xs uppercase tracking-wide text-gray-500",children:/* @__PURE__ */E("tr",{children:[
46
- /* @__PURE__ */L("th",{className:`${a} text-left font-medium px-3 h-8`,children:"Name"}),
47
- /* @__PURE__ */L("th",{className:`${a} text-left font-medium px-3 h-8 w-28`,children:"Type"}),
48
- /* @__PURE__ */L("th",{className:`${a} w-56`})]})}),
49
- /* @__PURE__ */L("tbody",{children:ie.map(e=>{const t=`${e.entityType}|${e.entityId}`;/* @__PURE__ */
50
- return E("tr",{onClick:()=>K(t),onDoubleClick:()=>me(e),className:"cursor-default border-b border-gray-100 "+(V===t?"bg-blue-50":"hover:bg-gray-50"),children:[
51
- /* @__PURE__ */E("td",{className:"px-3 h-8 flex items-center gap-2",children:[
52
- /* @__PURE__ */L(p,{item:e}),
53
- /* @__PURE__ */L("span",{className:"truncate",title:e.label,children:e.label})]}),
54
- /* @__PURE__ */L("td",{className:"px-3 h-8 text-xs text-gray-500",children:u(e)}),
55
- /* @__PURE__ */E("td",{className:"px-3 h-8 text-right whitespace-nowrap",children:[
56
- /* @__PURE__ */L("button",{onClick:t=>{t.stopPropagation(),me(e)},className:"px-2 py-0.5 rounded hover:bg-gray-200 text-blue-600 text-2xs",children:"Open"}),
57
- /* @__PURE__ */L("button",{onClick:t=>{t.stopPropagation(),re?.moveToDesktop([e])},className:"px-2 py-0.5 rounded hover:bg-gray-200 text-gray-500 text-2xs ml-1",children:"Move to desktop"}),
58
- /* @__PURE__ */L("button",{onClick:t=>{t.stopPropagation(),re?.removeShortcuts([e])},className:"px-2 py-0.5 rounded hover:bg-red-100 text-red-600 text-2xs ml-1",children:"Remove"})]})]},t)})})]}):"trash"===q?z&&0===te.length?/* @__PURE__ */L(w,{size:"sm",padding:"p-6",label:"Loading"}):0===te.length?/* @__PURE__ */L("div",{className:"p-10 text-center text-sm text-gray-400",children:"Trash is empty."}):/* @__PURE__ */E("table",{className:"w-full text-sm",children:[
59
- /* @__PURE__ */L("thead",{className:"bg-gray-50 text-2xs uppercase tracking-wide text-gray-500",children:/* @__PURE__ */E("tr",{children:[
60
- /* @__PURE__ */L("th",{className:`${a} text-left font-medium px-3 h-8`,children:"Name"}),
61
- /* @__PURE__ */L("th",{className:`${a} text-left font-medium px-3 h-8`,children:"Original location"}),
62
- /* @__PURE__ */L("th",{className:`${a} text-right font-medium px-3 h-8 w-24`,children:"Size"}),
63
- /* @__PURE__ */L("th",{className:`${a} text-right font-medium px-3 h-8 w-40`,children:"Deleted"}),
64
- /* @__PURE__ */L("th",{className:`${a} w-44`})]})}),
65
- /* @__PURE__ */L("tbody",{children:te.map(e=>/* @__PURE__ */E("tr",{className:"border-b border-gray-100 hover:bg-gray-50",children:[
66
- /* @__PURE__ */E("td",{className:"px-3 h-8 flex items-center gap-2",children:["folder"===e.kind?/* @__PURE__ */L(k,{name:"folder",look:"solid",className:"h-4 w-4 text-amber-500 shrink-0"}):/* @__PURE__ */L(k,{name:"page",className:"h-4 w-4 text-gray-400 shrink-0",strokeWidth:1.5}),
67
- /* @__PURE__ */L("span",{className:"truncate",title:e.name,children:e.name})]}),
68
- /* @__PURE__ */L("td",{className:"px-3 h-8 text-gray-500 text-xs font-mono truncate",title:e.originalPath,children:e.originalPath||"—"}),
69
- /* @__PURE__ */L("td",{className:"px-3 h-8 text-right tabular-nums text-gray-500",children:N(e.size)}),
70
- /* @__PURE__ */L("td",{className:"px-3 h-8 text-right text-gray-500 tabular-nums",children:e.deletedAt?F(e.deletedAt):"—"}),
71
- /* @__PURE__ */E("td",{className:"px-3 h-8 text-right whitespace-nowrap",children:[
72
- /* @__PURE__ */L("button",{onClick:()=>(async e=>{const t=await he(`${W}/api/trash/restore`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:e.id})});if(!t.ok){const e=await t.json().catch(()=>({}));return void f.error(e.error||`Restore failed (${t.status})`)}f.success(`Restored "${e.name}"`),fe()})(e),className:"px-2 py-0.5 rounded hover:bg-gray-200 text-blue-600 text-2xs",children:"Restore"}),
73
- /* @__PURE__ */L("button",{onClick:()=>(async e=>{if(!await y({title:"Permanently delete",message:`"${e.name}" will be permanently removed. This can't be undone.`,confirmLabel:"Delete forever",variant:"danger"}))return;const t=await he(`${W}/api/trash/${encodeURIComponent(e.id)}`,{method:"DELETE"});if(!t.ok){const e=await t.json().catch(()=>({}));return void f.error(e.error||`Delete failed (${t.status})`)}fe()})(e),className:"px-2 py-0.5 rounded hover:bg-red-100 text-red-600 text-2xs ml-1",children:"Delete forever"})]})]},e.id))})]}):z&&0===A.length?/* @__PURE__ */L(w,{size:"sm",padding:"p-6",label:"Loading"}):0===A.length?/* @__PURE__ */E("div",{className:"p-10 text-center text-sm text-gray-400",children:["Empty folder.",!U&&/* @__PURE__ */E(T,{children:[" Drop files here or click ",
74
- /* @__PURE__ */L("span",{className:"font-medium",children:"Upload"}),"."]})]}):/* @__PURE__ */E("table",{className:"w-full text-sm",children:[
75
- /* @__PURE__ */L("thead",{className:"bg-gray-50 text-2xs uppercase tracking-wide text-gray-500",children:/* @__PURE__ */E("tr",{children:[
76
- /* @__PURE__ */L("th",{className:`${a} text-left font-medium px-3 h-8`,children:"Name"}),
77
- /* @__PURE__ */L("th",{className:`${a} text-right font-medium px-3 h-8 w-24`,children:"Size"}),
78
- /* @__PURE__ */L("th",{className:`${a} text-right font-medium px-3 h-8 w-40`,children:"Modified"}),
79
- /* @__PURE__ */L("th",{className:`${a} w-32`})]})}),
80
- /* @__PURE__ */L("tbody",{children:A.map(t=>/* @__PURE__ */E("tr",{onClick:()=>K(t.name),onDoubleClick:()=>{"folder"===t.kind?M(S(I,t.name)):(async t=>{if(U)return;const a=S(I,t.name),r=(t.name.split(".").pop()||"").toLowerCase(),n=P[r];n?await e({filePath:a,filename:t.name,kind:n,onStaged:e=>de(e)}):xe(t)})(t)},className:"cursor-default border-b border-gray-100 "+(V===t.name?"bg-blue-50":"hover:bg-gray-50"),children:[
81
- /* @__PURE__ */E("td",{className:"px-3 h-8 flex items-center gap-2",children:["folder"===t.kind?/* @__PURE__ */L(k,{name:"folder",look:"solid",className:"h-4 w-4 text-amber-500 shrink-0"}):/* @__PURE__ */L(k,{name:"page",className:"h-4 w-4 text-gray-400 shrink-0",strokeWidth:1.5}),
82
- /* @__PURE__ */L("span",{className:"truncate",title:t.name,children:t.name})]}),
83
- /* @__PURE__ */L("td",{className:"px-3 h-8 text-right tabular-nums text-gray-500",children:"folder"===t.kind?"—":N(t.size)}),
84
- /* @__PURE__ */L("td",{className:"px-3 h-8 text-right text-gray-500 tabular-nums",children:F(t.modifiedAt)}),
85
- /* @__PURE__ */L("td",{className:"px-3 h-8 text-right whitespace-nowrap",children:!U&&/* @__PURE__ */E(T,{children:["file"===t.kind&&/* @__PURE__ */L("button",{onClick:e=>{e.stopPropagation(),xe(t)},className:"px-2 py-0.5 rounded hover:bg-gray-200 text-gray-500 text-2xs",children:"Download"}),
86
- /* @__PURE__ */L("button",{onClick:e=>{e.stopPropagation(),(async e=>{const t=await b({title:`Rename ${e.kind}`,defaultValue:e.name,confirmLabel:"Rename"});if(!t||t===e.name)return;if(/[\\/]/.test(t))return void f.error("Names cannot contain slashes");const a=S(I,e.name),r=S(I,t),n=await he(`${W}/api/rename`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({from:a,to:r})});if(!n.ok){const e=await n.json().catch(()=>({}));return void f.error(e.error||`Rename failed (${n.status})`)}ue(I)})(t)},className:"px-2 py-0.5 rounded hover:bg-gray-200 text-gray-500 text-2xs ml-1",children:"Rename"}),
87
- /* @__PURE__ */L("button",{onClick:e=>{e.stopPropagation(),(async e=>{if(!await y({title:`Delete ${e.kind}`,message:`"${e.name}"${"folder"===e.kind?" and everything inside":""} will be permanently removed.`,confirmLabel:"Delete",variant:"danger"}))return;const t=S(I,e.name),a=await he(`${W}/api/files?path=${encodeURIComponent(t)}`,{method:"DELETE"});if(!a.ok){const e=await a.json().catch(()=>({}));return void f.error(e.error||`Delete failed (${a.status})`)}ue(I)})(t)},className:"px-2 py-0.5 rounded hover:bg-red-100 text-red-600 text-2xs ml-1",children:"Delete"})]})})]},t.name))})]})})]})})}),Y&&/* @__PURE__ */L("div",{className:"absolute inset-0 bg-blue-500/15 border-4 border-dashed border-blue-500 pointer-events-none flex items-center justify-center z-20",children:/* @__PURE__ */L("div",{className:"px-4 py-2 rounded-md bg-blue-600 text-white text-sm font-medium shadow-lg",children:"Drop to upload"})})]})}export{W as default};
@@ -1 +0,0 @@
1
- import{loadThemeIconSet as e}from"./chunk-6OXNDFJE.js";var r=["academic-cap","accent","account","account-circle","add","add-circle","add-person","adjust","align-center","align-justify","align-left","align-right","align-separate","anchor","animation","apps","archive-box","arrow","arrow-down","arrow-left","arrow-left-end-on-rectangle","arrow-long-right","arrow-right","arrow-trending-down","arrow-trending-up","arrow-up","arrow-up-right","at-symbol","attach","background","bag","bank","bars-3-bottom-left","battery","beaker","bell","bell-alert","bell-plus","billing","black-and-white","block-badge","block-banner","block-box","block-button","block-column","block-coupon","block-divider","block-footer","block-heading","block-image","block-included-list","block-layered-images","block-product","block-product-title","block-section","block-social","block-spacer","block-text","block-video","blog-post","bold","bolt","book-open","bookmark","bookmark-square","braces","breadcrumb","briefcase","bug","bug-ant","building-library","building-office-2","button","button-arrow","button-icon","calculator","calendar","calendar-check","camera","caption","car","card-payment","caret","cart","case","case-lower","case-normal","case-upper","category","chart","chart-bar","chart-bar-square","chart-line","chat","chat-bubble-left-right","chat-bubble-oval-left-ellipsis","check","check-circle","checkbox","chevron","chevron-double","chevron-double-left","chevron-double-right","chevron-down","chevron-left","chevron-right","chevron-up","chevron-up-down","circle-stack","clear-marks","clipboard","clipboard-check","clipboard-document-list","clipboard-list","clock","close","close-circle","cloud","cloud-download","code","code-bracket","collapse","collapse-all","column-gap","column-widths","columns","company","compose","contrast","cookie","copied","copy","copy-style","copy-to-page","corner","crop","cube-transparent","cursor","cursor-arrow-rays","cursor-click","dashboard","date","desktop","diagram","direction","direction-down","direction-left","direction-right","direction-up","document","document-check","document-magnifying-glass","dollar","dot","download","drag","drop","duplicate","edit","email","emphasis","eraser","error","expand","external","eye","eye-off","face-smile","filter","finish","fire","flag","folder","folder-open","folder-plus","forward","full-width","gap","gem","gift","globe","grid","ground","hand","hand-thumb-up","hash","headquarters","heart","height","help","help-off","hexagon","home","hover","icon-after-text","icon-before-text","identification","image","image-off","images","inbox","info","italic","key","layers","layout","letter-spacing","lightbulb","line-between","line-style","link","link-slash","list","location","lock","logo","logout","map","media","megaphone","menu","meta","microphone","money","moon","more","more-vertical","move-down","move-up","newspaper","no-symbol","note","nudge","numbered-list","opacity","own-text","package","package-open","padding-bottom","padding-left","padding-right","padding-top","padding-x","padding-y","page","paint-brush","panel-left","panel-right","paragraph-spacing","parcel","paste","paste-style","pause","pen","people","percent","phone","phone-hidden","placement","play","plus-minus","power","presentation-chart-bar","print","product","product-field","product-size","progress","quiet","radio-dot","radius","receipt","receipt-percent","receipt-refund","rectangle-group","redo","refresh","remove","remove-circle","rename","reply","reply-all","revert","robot","rotate","scale","scroll-point","scroll-text","search","select-all","send","server","settings","shadow","shape-ellipse","shape-rect","share","shield-check","shield-exclamation","signal","signal-slash","sitemap","slide-arrows-bare","slide-arrows-round","slide-arrows-square","slide-picker-bar","slide-picker-cards","slide-picker-dots","slide-picker-numbers","sort","sparkles","speaker","speaker-wave","spec-table","spinner","split","square","star","state","status-circle","status-dot","sticky","stop-circle","store","strike","styles","subscript","success-burst","sun","superscript","swap","swatch","table","tablet","tabs","tag","target","team","telephone","template","text-color","text-lines","text-size","text-small","text-value","texture","theme","ticket","title","trash","trigger","truck","tv","type","tyre","underline","undo","upload","v-align","verified","video-off","view-columns","wallet","warning","weight","wheel","widgets","width","window","windows","words-from","wrap","wrench","wrench-screwdriver","zoom-in"],o=new Set(r),a=e=>"string"==typeof e&&o.has(e),t=[{name:"phosphor",label:"Phosphor"},{name:"iconoir",label:"Iconoir"},{name:"lucide",label:"Lucide"},{name:"tabler",label:"Tabler"}],l={pink:"phosphor",green:"iconoir",grey:"lucide",blue:"tabler"};function c(r){return e(r)}function i(e,r,o){return o?"string"==typeof r&&r?r:null:l[e]??null}export{r as ICON_NAMES,l as ICON_SET_FOR_THEME,t as THEME_ICON_SETS,i as iconSetFor,a as isIconName,c as loadIconSet};