@marimo-team/frontend 0.24.1-dev116 → 0.24.1-dev119
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{CellStatus-BnX3kFgK.js → CellStatus-LoTwk7fR.js} +1 -1
- package/dist/assets/{ConnectedDataExplorerComponent-Slfh2UI3.js → ConnectedDataExplorerComponent-DW6cJ-Lr.js} +1 -1
- package/dist/assets/{JsonOutput-i6wa-ZZg.js → JsonOutput-Bgxc9G7d.js} +2 -2
- package/dist/assets/{MarimoErrorOutput-CIYHG601.js → MarimoErrorOutput-DqpoYOvw.js} +1 -1
- package/dist/assets/{RenderHTML-BIg2a2gf.js → RenderHTML-DwhMAd9l.js} +1 -1
- package/dist/assets/{RunButton-z5x8Nygi.js → RunButton-BlpbweyH.js} +1 -1
- package/dist/assets/{VisuallyHidden-K_kroCIL.js → VisuallyHidden-CBMDmozt.js} +1 -1
- package/dist/assets/{add-cell-with-ai-P7MBEjnv.js → add-cell-with-ai-R-3DS79K.js} +1 -1
- package/dist/assets/{add-connection-dialog-B7yGNrvC.js → add-connection-dialog-BGfpw5lC.js} +1 -1
- package/dist/assets/{agent-panel-DUUWyz59.js → agent-panel-B03P2qSx.js} +1 -1
- package/dist/assets/ai-model-dropdown-DCmiuk7x.js +3 -0
- package/dist/assets/{app-config-button-vxdvoC0x.js → app-config-button-DUJC6b6x.js} +1 -1
- package/dist/assets/{blob-DDxD75AS.js → blob-B2d_dHwI.js} +1 -1
- package/dist/assets/{cell-editor-D6Cyy4UF.js → cell-editor-QmA8u1Ay.js} +1 -1
- package/dist/assets/{cell-link-B7DFi5Hf.js → cell-link-6burT2XF.js} +1 -1
- package/dist/assets/{cells-CS_eEQ19.js → cells-Cp-G34Rz.js} +1 -1
- package/dist/assets/{chat-display-CtnwRDHx.js → chat-display-Bu405iyc.js} +1 -1
- package/dist/assets/{chat-panel-DScfSsWl.js → chat-panel-BlUwNY5j.js} +1 -1
- package/dist/assets/{chat-ui-9G115u_7.js → chat-ui-DGiVDzNh.js} +1 -1
- package/dist/assets/{column-preview-BVtft2uw.js → column-preview-DHe0-7z4.js} +1 -1
- package/dist/assets/{command-palette-uGrOQhzq.js → command-palette-D-kPO0tm.js} +1 -1
- package/dist/assets/{common-CQLiJ8JV.js → common-CHR7w7aQ.js} +1 -1
- package/dist/assets/{components-B5BY9RR4.js → components-C7mWrmXr.js} +1 -1
- package/dist/assets/{components-DAhqHptJ.js → components-DUYCXngU.js} +1 -1
- package/dist/assets/{config-CJhe6_P2.js → config-B-r81uZ6.js} +1 -1
- package/dist/assets/{config-BRRSKtP3.js → config-BlNM0caL.js} +1 -1
- package/dist/assets/{datasource-Br61QFhd.js → datasource-DrODSIs0.js} +1 -1
- package/dist/assets/{dependency-graph-panel-DoAAA7Y1.js → dependency-graph-panel-AY5BEVH2.js} +1 -1
- package/dist/assets/{documentation-panel-CYUIPHeO.js → documentation-panel-CaJF7e-j.js} +1 -1
- package/dist/assets/{download-D2Ha98tp.js → download-DMxOzI7b.js} +1 -1
- package/dist/assets/{edit-page-ClGPnVOK.js → edit-page-CdCPUPqZ.js} +4 -4
- package/dist/assets/{error-entries-ooCnKQtX.js → error-entries-Cv2m1yhc.js} +1 -1
- package/dist/assets/{error-panel-CRtClD-k.js → error-panel-Bhlvt6_H.js} +1 -1
- package/dist/assets/file-explorer-panel-DMKcHVIX.js +1 -0
- package/dist/assets/{file-icons-D0QvDCq_.js → file-icons-DdGYuADJ.js} +1 -1
- package/dist/assets/file-name-input-K4MKESI_.js +3 -0
- package/dist/assets/{floating-outline-FQva8xB9.js → floating-outline-DaUHnl_e.js} +1 -1
- package/dist/assets/{gallery-page-LX7vPBcZ.js → gallery-page-C3pBpHlY.js} +1 -1
- package/dist/assets/{glide-data-editor-DgWXD84U.js → glide-data-editor-sICUMEhk.js} +1 -1
- package/dist/assets/{home-page-DtRwYsH-.js → home-page-Cir7n_EF.js} +1 -1
- package/dist/assets/index-BGT7have.css +2 -0
- package/dist/assets/{index-BphlL86Q.js → index-ClZGC-u9.js} +6 -6
- package/dist/assets/{input-C-RazPBA.js → input-DEbY281O.js} +1 -1
- package/dist/assets/{kiosk-mode-BqYH0GIF.js → kiosk-mode-mxgb5lWf.js} +1 -1
- package/dist/assets/{layout-C4U2fp5O.js → layout-CC2AHMrW.js} +3 -3
- package/dist/assets/{logs-panel-BPfZpDxG.js → logs-panel-BGS2v3ba.js} +1 -1
- package/dist/assets/{markdown-renderer-CbdXI4uO.js → markdown-renderer-BZKlbm2Q.js} +1 -1
- package/dist/assets/{mermaid-BJLFqJtJ.js → mermaid-l6lQkCib.js} +1 -1
- package/dist/assets/{name-cell-input-CObHxs3L.js → name-cell-input-BMCdK-el.js} +1 -1
- package/dist/assets/{outline-panel-Dyr_2yws.js → outline-panel-Dr5u73V6.js} +1 -1
- package/dist/assets/{packages-panel-Cato7lRU.js → packages-panel-BdpRg9tX.js} +1 -1
- package/dist/assets/{pair-with-agent-modal-bYFRKgrw.js → pair-with-agent-modal-CbUFKJHP.js} +1 -1
- package/dist/assets/{panel-accordion-state-CB4RQUbp.js → panel-accordion-state-DjUTN7i5.js} +1 -1
- package/dist/assets/{panels-CaAkyFQ2.js → panels-BsXw4GTa.js} +1 -1
- package/dist/assets/{process-output-BvjsWKqP.js → process-output-Ck7-P_xp.js} +1 -1
- package/dist/assets/{readonly-code-display-D0VodUl8.js → readonly-code-display--S2daDa6.js} +1 -1
- package/dist/assets/{readonly-python-code-DlajH1tG.js → readonly-python-code-DpIyjHqY.js} +1 -1
- package/dist/assets/{renderShortcut-DCEcfEd4.js → renderShortcut-X-CJUSM8.js} +1 -1
- package/dist/assets/{reveal-component-NBGQ6pCq.js → reveal-component-BuI7t0JO.js} +1 -1
- package/dist/assets/{run-page-TDSGBzJ2.js → run-page-DZNsqz9H.js} +1 -1
- package/dist/assets/{scratchpad-panel-smtKLHdh.js → scratchpad-panel-CARmXIqQ.js} +1 -1
- package/dist/assets/{secrets-panel-CWX3By7x.js → secrets-panel-D3BpDIgg.js} +1 -1
- package/dist/assets/{session-panel-BEpBnPuv.js → session-panel-CB5EvmZs.js} +1 -1
- package/dist/assets/{skeleton-BVafJh4G.js → skeleton-idYPIMw_.js} +1 -1
- package/dist/assets/{snippets-panel-D5Fdmjit.js → snippets-panel-D5yy7kj0.js} +1 -1
- package/dist/assets/{state-D2Q_Pzdk.js → state-B6AklCzD.js} +1 -1
- package/dist/assets/{state-CbrP-RfI.js → state-Di9TbuV9.js} +1 -1
- package/dist/assets/{switch-BzJYj8tz.js → switch-DjXr9Y9D.js} +1 -1
- package/dist/assets/{terminal-CWTEGSbX.js → terminal-CQAFGBfN.js} +1 -1
- package/dist/assets/{tracing-htk2wAUH.js → tracing-DNk3gmWv.js} +1 -1
- package/dist/assets/{tracing-panel-D_FtT8xh.js → tracing-panel-Yqazr6w_.js} +2 -2
- package/dist/assets/{tree-actions-CIKsGmOE.js → tree-actions-CG5g7aUQ.js} +1 -1
- package/dist/assets/{useAddCell-B9V9LPof.js → useAddCell-DdB_uBif.js} +1 -1
- package/dist/assets/{useBoolean-Dh6ALPsT.js → useBoolean-BXC4CItZ.js} +1 -1
- package/dist/assets/{useCellActionButton-Byz1dxEY.js → useCellActionButton-B31neI3m.js} +1 -1
- package/dist/assets/{useDebounce-Dulm61-t.js → useDebounce-DgpSQhrP.js} +1 -1
- package/dist/assets/{useDeleteCell-xIU8YxOm.js → useDeleteCell-Bz49_cFj.js} +1 -1
- package/dist/assets/{useDependencyPanelTab-CTX4KBOX.js → useDependencyPanelTab-C_ps0r--.js} +1 -1
- package/dist/assets/{useNotebookActions-CEWtEB4v.js → useNotebookActions-Br4AVVRg.js} +1 -1
- package/dist/assets/{useRunCells-DpLEou4d.js → useRunCells-CX7oW5zy.js} +1 -1
- package/dist/assets/{useSplitCell-DIMMMQzM.js → useSplitCell-Dy2_DmJR.js} +1 -1
- package/dist/assets/{useTheme-OSyXt1jZ.js → useTheme-C-ri8BtY.js} +1 -1
- package/dist/assets/utils-D5Ywm7-q.js +1 -0
- package/dist/assets/{vega-component-D23FlAOS.js → vega-component-C7TCzyaU.js} +1 -1
- package/dist/assets/{write-secret-modal-C2V1d4p-.js → write-secret-modal-D6zoZgLY.js} +1 -1
- package/dist/index.html +31 -31
- package/package.json +1 -1
- package/src/components/ai/ai-provider-icon.tsx +2 -2
- package/src/components/ai/ai-utils.ts +1 -1
- package/src/components/app-config/ai-config.tsx +33 -37
- package/src/components/app-config/user-config-form.tsx +1 -1
- package/src/components/data-table/renderers.tsx +2 -6
- package/src/components/editor/file-tree/__tests__/file-explorer-navigation.test.tsx +832 -0
- package/src/components/editor/file-tree/__tests__/file-viewer.test.tsx +27 -0
- package/src/components/editor/file-tree/__tests__/requesting-tree.test.ts +130 -0
- package/src/components/editor/file-tree/file-browser-row.tsx +82 -0
- package/src/components/editor/file-tree/file-explorer.tsx +377 -159
- package/src/components/editor/file-tree/file-operations.tsx +1 -1
- package/src/components/editor/file-tree/file-search-results.tsx +142 -0
- package/src/components/editor/file-tree/file-tree-row.tsx +40 -0
- package/src/components/editor/file-tree/file-viewer.tsx +2 -1
- package/src/components/editor/file-tree/requesting-tree.tsx +162 -32
- package/src/components/editor/file-tree/use-file-search.ts +142 -0
- package/src/components/editor/file-tree/use-hover-expand.ts +34 -0
- package/src/components/ui/links.tsx +2 -1
- package/src/core/ai/ids/__tests__/ids.test.ts +0 -8
- package/src/core/ai/ids/ids.ts +1 -1
- package/src/core/config/config-schema.ts +1 -0
- package/src/core/network/__tests__/requests-toasting.test.tsx +14 -0
- package/src/core/network/requests-toasting.tsx +1 -1
- package/dist/assets/ai-model-dropdown-BN9nyr0_.js +0 -3
- package/dist/assets/file-explorer-panel-DB17Zw1x.js +0 -1
- package/dist/assets/file-name-input-DsaNomb7.js +0 -3
- package/dist/assets/index-D1E_LKIW.css +0 -2
- package/dist/assets/utils-B-_Wem_I.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{Hn as e,Ja as t,Ka as n,b as r,qa as i,rt as a}from"./cells-
|
|
1
|
+
import{Hn as e,Ja as t,Ka as n,b as r,qa as i,rt as a}from"./cells-Cp-G34Rz.js";import{i as o}from"./strings-CReV1AYG.js";function s(e){if(i(e.mimetype)){if(!Array.isArray(e.data))return null;let t=e.data.filter(e=>!e.type.includes(`ancestor`));return t.length===0?null:{errorData:t}}return t(e.mimetype)?typeof e.data!=`string`||e.data.length===0?null:{errorData:[],tracebackHtml:e.data}:null}function c(e){return e.some(e=>`traceback`in e&&e.traceback)}function l(e){let n=e?.find(e=>t(e.mimetype));if(!(!n||typeof n.data!=`string`||n.data.length===0))return n.data}function u(e,t){if(e.tracebackHtml)return e.tracebackHtml;if(!c(e.errorData))return l(t)}function d(t){let{cellIds:i,cellRuntime:a,cellData:o}=t.get(r),c=[];for(let[t,r]of i.inOrderIds.entries()){let i=a[r],l=i.output;if(!l||!n(l.mimetype))continue;let d=s(l);if(!d)continue;let f=e(o[r].name,t),p=o[r].lastCodeRun??o[r].code;c.push({cellId:r,cellName:f,cellCode:p,errorData:d.errorData,tracebackHtml:u(d,i.consoleOutputs)})}return c}function f(e){return e.type===`setup-refs`?`The setup cell cannot have references`:e.type===`cycle`?`This cell is in a cycle`:e.type===`multiple-defs`?`The variable '${e.name}' was defined by another cell`:e.type===`import-star`||e.type===`ancestor-stopped`||e.type===`ancestor-prevented`||e.type===`exception`||e.type===`strict-exception`?e.msg:e.type===`interruption`?`This cell was interrupted and needs to be re-run`:e.type===`syntax`||e.type===`unknown`||e.type===`sql-error`?e.msg:e.type===`internal`?e.msg||`An internal error occurred`:(o(e),`Unknown error`)}function p(e){let t=f(e);return`traceback`in e&&e.traceback&&(t+=`\n\nTraceback:\n${a(e.traceback)}`),t}function m(e){let t=[e.cellName];return e.tracebackHtml&&t.push(a(e.tracebackHtml)),e.errorData.length>0&&t.push(e.errorData.map(p).join(`
|
|
2
2
|
|
|
3
3
|
`)),t.join(`
|
|
4
4
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime-B0Z9INg1.js";import{t as e}from"./react-CBDbhulC.js";import{A as t}from"./cells-
|
|
1
|
+
import"./rolldown-runtime-B0Z9INg1.js";import{t as e}from"./react-CBDbhulC.js";import{A as t}from"./cells-Cp-G34Rz.js";import{t as n}from"./compiler-runtime-CYIjoINj.js";import{t as r}from"./jsx-runtime-B74pBk57.js";import{t as i}from"./createLucideIcon-B7HeEoG2.js";import{t as a}from"./MarimoErrorOutput-DqpoYOvw.js";import{n as o}from"./cell-link-6burT2XF.js";import{t as s}from"./empty-state-kWyb5dCS.js";var c=i(`party-popper`,[[`path`,{d:`M5.8 11.3 2 22l10.7-3.79`,key:`gwxi1d`}],[`path`,{d:`M4 3h.01`,key:`1vcuye`}],[`path`,{d:`M22 8h.01`,key:`1mrtc2`}],[`path`,{d:`M15 2h.01`,key:`1cjtqr`}],[`path`,{d:`M22 20h.01`,key:`1mrys2`}],[`path`,{d:`m22 2-2.24.75a2.9 2.9 0 0 0-1.96 3.12c.1.86-.57 1.63-1.45 1.63h-.38c-.86 0-1.6.6-1.76 1.44L14 10`,key:`hbicv8`}],[`path`,{d:`m22 13-.82-.33c-.86-.34-1.82.2-1.98 1.11c-.11.7-.72 1.22-1.43 1.22H17`,key:`1i94pl`}],[`path`,{d:`m11 2 .33.82c.34.86-.2 1.82-1.11 1.98C9.52 4.9 9 5.52 9 6.23V7`,key:`1cofks`}],[`path`,{d:`M11 13c1.93 1.93 2.83 4.17 2 5-.83.83-3.07-.07-5-2-1.93-1.93-2.83-4.17-2-5 .83-.83 3.07.07 5 2Z`,key:`4kbmks`}]]),l=n();e();var u=r(),d=()=>{let e=(0,l.c)(5),n=t();if(n.length===0){let t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,u.jsx)(s,{title:`No errors!`,icon:(0,u.jsx)(c,{})}),e[0]=t):t=e[0],t}let r;e[1]===n?r=e[2]:(r=n.map(f),e[1]=n,e[2]=r);let i;return e[3]===r?i=e[4]:(i=(0,u.jsx)(`div`,{className:`flex flex-col h-full overflow-auto`,children:r}),e[3]=r,e[4]=i),i};function f(e){return(0,u.jsxs)(`div`,{children:[(0,u.jsx)(`div`,{className:`text-xs font-mono font-semibold bg-muted border-y px-2 py-1`,children:(0,u.jsx)(o,{cellId:e.cellId})}),(0,u.jsx)(`div`,{className:`px-2`,children:(0,u.jsx)(a,{errors:e.output.data,cellId:e.cellId},e.cellId)},e.cellId)]},e.cellId)}export{d as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{c as t,f as n,l as r,t as i}from"./useEvent-xfs0Sn4r.js";import{t as a}from"./react-CBDbhulC.js";import{At as o,Cn as s,Co as c,D as l,Dt as u,Et as d,Mt as f,Ot as p,Sn as m,Tt as h,Wt as g,ii as _,jt as v,kn as y,kt as b,oa as x,vn as S,yo as C}from"./cells-Cp-G34Rz.js";import{t as w}from"./react-dom-BQrReHnR.js";import{t as T}from"./compiler-runtime-CYIjoINj.js";import{g as E,p as D}from"./utils-D5Ywm7-q.js";import{g as O}from"./useEventListener-92uWqz-P.js";import{t as k}from"./invariant-Ci2dTZ72.js";import{N as A,r as j}from"./config-BlNM0caL.js";import{t as M}from"./cn-ldLVeaqm.js";import{t as N}from"./jsx-runtime-B74pBk57.js";import{r as P}from"./config-B-r81uZ6.js";import{o as F}from"./alert-dialog-CA-2mBs3.js";import{a as I,c as L,p as R,r as z,t as B}from"./dropdown-menu-C40jM9o4.js";import{Lt as V,a as H,g as U,i as W,o as G,s as K}from"./JsonOutput-Bgxc9G7d.js";import{c as ee,n as te,r as ne}from"./download-DMxOzI7b.js";import{t as q}from"./tooltip-BUtPzKB4.js";import{t as J}from"./button-Dh8EwhsF.js";import{Tt as re}from"./dist-BtC9ym6k.js";import{n as ie,r as ae,t as oe}from"./requests-C6_IaFh7.js";import{t as Y}from"./createLucideIcon-B7HeEoG2.js";import{t as se}from"./arrow-left-DrqK6gPp.js";import{n as ce}from"./LazyAnyLanguageCodeMirror-LboTfNDv.js";import{r as le}from"./useNumberFormatter-DHJ9s6Vk.js";import{a as ue,i as de,n as fe,r as X,t as pe}from"./tree-actions-CG5g7aUQ.js";import{a as me}from"./markdown-renderer-BZKlbm2Q.js";import{u as he}from"./toDate-hGYJX0Ha.js";import{t as ge}from"./copy-BMXKNElG.js";import{t as _e}from"./external-link-Bp3BxyRA.js";import{a as ve,i as ye,n as be,r as xe,t as Se}from"./file-icons-DdGYuADJ.js";import{t as Ce}from"./file-DF8n85RA.js";import{n as we,t as Te}from"./components-DUYCXngU.js";import{b as Ee}from"./write-secret-modal-D6zoZgLY.js";import{n as De,t as Oe}from"./spinner-Ck-Hgfvj.js";import{a as ke,c as Ae,d as je,f as Me,i as Ne,l as Pe,m as Fe,n as Ie,p as Le,r as Re,t as ze,u as Be}from"./file-name-input-K4MKESI_.js";import{t as Ve}from"./refresh-cw-Bf-rx_aV.js";import{t as He}from"./save-BybsbOKz.js";import{a as Ue}from"./input-DEbY281O.js";import{t as We}from"./triangle-alert-MihykDYG.js";import{n as Ge,t as Ke}from"./es-CrFhA96G.js";import{t as qe}from"./use-toast-DpWHUGuF.js";import{n as Je,t as Ye}from"./paths-zcL04qUW.js";import{t as Xe}from"./context-Do8M9TDF.js";import{t as Ze}from"./useDebounce-DgpSQhrP.js";import{n as Qe}from"./useAsyncData-Buhk-UgR.js";import{n as $e}from"./copy-DlEomWzI.js";import{t as et}from"./copy-icon-z8fuTE3w.js";import{t as tt}from"./blob-B2d_dHwI.js";import{a as nt}from"./errors-DzO-nXy-.js";import{n as rt,t as it}from"./alert-dmKwNsrp.js";import{n as at}from"./error-banner-Dw5YY9wq.js";import{a as ot}from"./renderShortcut-X-CJUSM8.js";import{t as st}from"./bundle.esm-DzY74mzC.js";import{t as ct}from"./useAddCell-DdB_uBif.js";import{n as lt}from"./pathUtils-Cryrlpma.js";import{n as ut}from"./semaphore-BjoL5P0h.js";import{t as dt}from"./empty-state-kWyb5dCS.js";import{t as ft}from"./formatting-BWZH2nBg.js";import{a as pt,i as mt,n as ht,o as gt,r as _t,s as vt,t as yt}from"./components-C7mWrmXr.js";import{n as bt,t as xt}from"./marimo-icons-C3KxMV9A.js";import{t as St}from"./links-DLvOXyO_.js";import{n as Ct}from"./panel-accordion-state-DjUTN7i5.js";var wt=Y(`book-plus`,[[`path`,{d:`M12 7v6`,key:`lw1j43`}],[`path`,{d:`M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20`,key:`k3hazp`}],[`path`,{d:`M9 10h6`,key:`9gxzsh`}]]),Tt=Y(`copy-minus`,[[`line`,{x1:`12`,x2:`18`,y1:`15`,y2:`15`,key:`1nscbv`}],[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),Et=Y(`file-plus-corner`,[[`path`,{d:`M11.35 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v5.35`,key:`17jvcc`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M14 19h6`,key:`bvotb8`}],[`path`,{d:`M17 16v6`,key:`18yu1i`}]]),Dt=Y(`file-symlink`,[[`path`,{d:`M4 11V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h7`,key:`huwfnr`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`m10 18 3-3-3-3`,key:`18f6ys`}]]),Ot=Y(`folder-plus`,[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),kt=Y(`folder-root`,[[`path`,{d:`M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z`,key:`1fr9dc`}],[`circle`,{cx:`12`,cy:`13`,r:`2`,key:`1c1ljs`}],[`path`,{d:`M12 15v5`,key:`11xva1`}]]),At=Y(`list-tree`,[[`path`,{d:`M8 5h13`,key:`1pao27`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`M3 10a2 2 0 0 0 2 2h3`,key:`1npucw`}],[`path`,{d:`M3 5v12a2 2 0 0 0 2 2h3`,key:`x1gjn2`}]]),jt=Y(`square-play`,[[`rect`,{x:`3`,y:`3`,width:`18`,height:`18`,rx:`2`,key:`h1oib`}],[`path`,{d:`M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z`,key:`kmsa83`}]]),Mt=Y(`view`,[[`path`,{d:`M21 17v2a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-2`,key:`mrq65r`}],[`path`,{d:`M21 7V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v2`,key:`be3xqs`}],[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`path`,{d:`M18.944 12.33a1 1 0 0 0 0-.66 7.5 7.5 0 0 0-13.888 0 1 1 0 0 0 0 .66 7.5 7.5 0 0 0 13.888 0`,key:`11ak4c`}]]),Z=e(a(),1),Q=T(),$=N(),Nt=e=>{let t=(0,Q.c)(17),{filename:n,filenameIcon:r,onBack:i,onRefresh:a,onDownload:o,actions:s}=e,c;t[0]===i?c=t[1]:(c=i&&(0,$.jsx)(q,{content:`Back to file list`,children:(0,$.jsx)(J,{variant:`text`,size:`xs`,onClick:i,children:(0,$.jsx)(se,{className:`h-4 w-4`})})}),t[0]=i,t[1]=c);let l;t[2]!==n||t[3]!==r?(l=n?(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5 flex-1 min-w-0 text-xs font-semibold truncate`,children:[r,n]}):(0,$.jsx)(`span`,{className:`flex-1`}),t[2]=n,t[3]=r,t[4]=l):l=t[4];let u;t[5]===a?u=t[6]:(u=a&&(0,$.jsx)(q,{content:`Refresh`,children:(0,$.jsx)(J,{variant:`text`,size:`xs`,onClick:a,children:(0,$.jsx)(Ve,{className:`h-3.5 w-3.5`})})}),t[5]=a,t[6]=u);let d;t[7]===o?d=t[8]:(d=o&&(0,$.jsx)(q,{content:`Download`,children:(0,$.jsx)(J,{variant:`text`,size:`xs`,onClick:o,children:(0,$.jsx)(V,{className:`h-3.5 w-3.5`})})}),t[7]=o,t[8]=d);let f;t[9]!==s||t[10]!==u||t[11]!==d?(f=(0,$.jsxs)(`div`,{className:`flex items-center gap-0.5 shrink-0`,children:[u,s,d]}),t[9]=s,t[10]=u,t[11]=d,t[12]=f):f=t[12];let p;return t[13]!==c||t[14]!==l||t[15]!==f?(p=(0,$.jsxs)(`div`,{className:`flex items-center shrink-0 border-b px-1 gap-1`,children:[c,l,f]}),t[13]=c,t[14]=l,t[15]=f,t[16]=p):p=t[16],p},Pt=new Set([`http`,`file`,`in-memory`]);function Ft(e){return JSON.stringify(e).slice(1,-1)}var It=new Set([`datasets`,`spaces`,`buckets`]);function Lt(e){let t=e.split(`/`).filter(Boolean);return t[0]===`datasets`&&t.length>=4?{repoType:`dataset`,repoId:`${t[1]}/${t[2]}`,filename:t.slice(3).join(`/`)}:t[0]===`spaces`&&t.length>=4?{repoType:`space`,repoId:`${t[1]}/${t[2]}`,filename:t.slice(3).join(`/`)}:t.length>=3&&!It.has(t[0])?{repoType:`model`,repoId:`${t[0]}/${t[1]}`,filename:t.slice(2).join(`/`)}:null}function Rt(e){return`from huggingface_hub import hf_hub_download\n\nlocal_path = hf_hub_download(\n repo_id="${Ft(e.repoId)}",\n filename="${Ft(e.filename)}",\n repo_type="${Ft(e.repoType)}",\n)`}var zt=[{id:`read-file`,label:`Insert read snippet`,icon:wt,getCode:e=>{if(e.entry.kind===`directory`)return null;let t=Ft(e.entry.path);if(e.backendType===`huggingface`){let t=Lt(e.entry.path);return t?`${Rt(t)}\n\nwith open(local_path, "rb") as f:\n _data = f.read()\n_data`:null}return e.backendType===`obstore`?`_data = ${e.variableName}.get("${t}").bytes()\n_data`:`_data = ${e.variableName}.cat_file("${t}")\n_data`}},{id:`download-file`,label:`Insert download snippet`,icon:Dt,getCode:e=>{if(e.entry.kind===`directory`)return null;let t=Ft(e.entry.path);if(e.backendType===`huggingface`){let t=Lt(e.entry.path);return t?`${Rt(t)}\nlocal_path`:null}if(e.backendType===`obstore`)return Pt.has(e.protocol)?null:`from datetime import timedelta\nfrom obstore import sign\n\nsigned_url = sign(\n ${e.variableName}, "GET", "${t}",\n expires_in=timedelta(hours=1),\n)\nsigned_url`;let n=Ft(e.entry.path.split(`/`).pop()||`download`);return`${e.variableName}.get("${t}", "${n}")`}}],Bt=104857600;function Vt(e){let t=e.endsWith(`/`)?e.slice(0,-1):e,n=t.split(`/`);return n[n.length-1]||t}var Ht=e=>{let t=(0,Q.c)(83),{entry:n,namespace:r,protocol:i,backendType:a,onBack:o}=e,{locale:s}=Xe(),c=ct(),l;t[0]===n.path?l=t[1]:(l=Vt(n.path),t[0]=n.path,t[1]=l);let u=l,d=n.mimeType||`text/plain`,p;t[2]===d?p=t[3]:(p=K(d),t[2]=d,t[3]=p);let m=p,h=m&&n.size>Bt&&n.size>0,g,_;t[4]!==n.path||t[5]!==m||t[6]!==r||t[7]!==h?(g=async()=>{if(h)return null;let e=await f.request({namespace:r,path:n.path,preview:!m});if(e.error)throw Error(e.error);if(!e.url)throw Error(`No URL returned`);if(m)return{type:`media`,url:e.url};let t=await fetch(e.url);if(!t.ok)throw Error(`Failed to fetch preview: ${t.statusText}`);return{type:`text`,content:await t.text()}},_=[r,n.path,m,h],t[4]=n.path,t[5]=m,t[6]=r,t[7]=h,t[8]=g,t[9]=_):(g=t[8],_=t[9]);let{data:v,isPending:y,error:b,refetch:x}=Qe(g,_),S;t[10]!==n.path||t[11]!==u||t[12]!==r?(S=async()=>{try{let e=await f.request({namespace:r,path:n.path});if(e.error){qe({title:`Download failed`,description:e.error,variant:`danger`});return}e.url&&ne(e.url,e.filename??u)}catch(e){let t=e;O.error(`Failed to download storage entry`,t),qe({title:`Download failed`,description:String(t),variant:`danger`})}},t[10]=n.path,t[11]=u,t[12]=r,t[13]=S):S=t[13];let C=S,w;t[14]!==c||t[15]!==a||t[16]!==n||t[17]!==r||t[18]!==i?(w=zt.map(e=>{let t=e.getCode({variableName:r,protocol:i,entry:n,backendType:a});if(t===null)return null;let o=e.icon;return(0,$.jsx)(q,{content:e.label,children:(0,$.jsx)(J,{variant:`text`,size:`xs`,onClick:()=>c(t),"aria-label":e.label,children:(0,$.jsx)(o,{className:`h-3.5 w-3.5`})})},e.id)}),t[14]=c,t[15]=a,t[16]=n,t[17]=r,t[18]=i,t[19]=w):w=t[19];let T=w,E;t[20]===u?E=t[21]:(E=ye(u),t[20]=u,t[21]=E);let D;t[22]!==C||t[23]!==u||t[24]!==o||t[25]!==T||t[26]!==E?(D=(0,$.jsx)(Nt,{filename:u,filenameIcon:E,onBack:o,onDownload:C,actions:T}),t[22]=C,t[23]=u,t[24]=o,t[25]=T,t[26]=E,t[27]=D):D=t[27];let k=D,A;t[28]!==n.lastModified||t[29]!==n.path||t[30]!==n.size||t[31]!==s||t[32]!==d?(A=e=>{let{includeMime:t}=e,r=t!==void 0&&t;return(0,$.jsxs)(`div`,{className:`grid grid-cols-[auto_1fr] gap-x-4 gap-y-1.5 p-4 text-xs`,children:[(0,$.jsx)(`span`,{className:`text-muted-foreground font-medium`,children:`Path`}),(0,$.jsxs)(`div`,{className:`truncate flex items-center gap-1.5`,children:[(0,$.jsx)(`span`,{className:`font-mono text-[11px]`,children:n.path}),(0,$.jsx)(et,{value:n.path,className:`h-3 w-3`})]}),r&&(0,$.jsx)(`span`,{className:`text-muted-foreground font-medium`,children:`Type`}),r&&(0,$.jsx)(`span`,{children:d}),n.size>0&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:`text-muted-foreground font-medium`,children:`Size`}),(0,$.jsx)(`span`,{children:ft(n.size,s)})]}),n.lastModified!=null&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:`text-muted-foreground font-medium`,children:`Modified`}),(0,$.jsx)(`span`,{children:new Date(n.lastModified*1e3).toLocaleString()})]})]})},t[28]=n.lastModified,t[29]=n.path,t[30]=n.size,t[31]=s,t[32]=d,t[33]=A):A=t[33];let j=A;if(h){let e;t[34]===j?e=t[35]:(e=j({includeMime:!0}),t[34]=j,t[35]=e);let r;t[36]!==n.size||t[37]!==s?(r=ft(n.size,s),t[36]=n.size,t[37]=s,t[38]=r):r=t[38];let i;t[39]===r?i=t[40]:(i=(0,$.jsxs)(`div`,{className:`px-4 pb-4 text-xs text-muted-foreground italic`,children:[`File is too large to preview (`,r,`).`]}),t[39]=r,t[40]=i);let a;return t[41]!==k||t[42]!==e||t[43]!==i?(a=(0,$.jsxs)(`div`,{className:`flex flex-col h-full`,children:[k,e,i]}),t[41]=k,t[42]=e,t[43]=i,t[44]=a):a=t[44],a}if(y){let e;t[45]===j?e=t[46]:(e=j({}),t[45]=j,t[46]=e);let n;t[47]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsxs)(`div`,{className:`flex-1 flex items-center justify-center gap-2 text-xs text-muted-foreground min-h-24`,children:[(0,$.jsx)(De,{className:`h-4 w-4 animate-spin`}),`Loading preview...`]}),t[47]=n):n=t[47];let r;return t[48]!==k||t[49]!==e?(r=(0,$.jsxs)(`div`,{className:`flex flex-col h-full`,children:[k,e,n]}),t[48]=k,t[49]=e,t[50]=r):r=t[50],r}if(b){let e;t[51]===j?e=t[52]:(e=j({includeMime:!0}),t[51]=j,t[52]=e);let n;t[53]===b.message?n=t[54]:(n=(0,$.jsxs)(`div`,{className:`px-4 pb-4 text-xs text-destructive`,children:[`Failed to load preview: `,b.message]}),t[53]=b.message,t[54]=n);let r;t[55]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(Ve,{className:`h-3 w-3 mr-1`}),t[55]=r):r=t[55];let i;t[56]===x?i=t[57]:(i=(0,$.jsx)(`div`,{className:`px-4 pb-4`,children:(0,$.jsxs)(J,{variant:`secondary`,size:`xs`,onClick:x,children:[r,`Retry`]})}),t[56]=x,t[57]=i);let a;return t[58]!==k||t[59]!==e||t[60]!==n||t[61]!==i?(a=(0,$.jsxs)(`div`,{className:`flex flex-col h-full`,children:[k,e,n,i]}),t[58]=k,t[59]=e,t[60]=n,t[61]=i,t[62]=a):a=t[62],a}if(v){let e;t[63]===j?e=t[64]:(e=j({}),t[63]=j,t[64]=e);let n=v.type===`text`?v.content:void 0,r;t[65]!==v.type||t[66]!==v.url?(r=v.type===`media`?{url:v.url}:void 0,t[65]=v.type,t[66]=v.url,t[67]=r):r=t[67];let i;t[68]!==d||t[69]!==u||t[70]!==n||t[71]!==r?(i=(0,$.jsx)(W,{mimeType:d,filename:u,contents:n,mediaSource:r}),t[68]=d,t[69]=u,t[70]=n,t[71]=r,t[72]=i):i=t[72];let a;return t[73]!==k||t[74]!==e||t[75]!==i?(a=(0,$.jsxs)(`div`,{className:`flex flex-col h-full`,children:[k,e,i]}),t[73]=k,t[74]=e,t[75]=i,t[76]=a):a=t[76],a}let M;t[77]===j?M=t[78]:(M=j({includeMime:!0}),t[77]=j,t[78]=M);let N;t[79]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,$.jsxs)(`div`,{className:`p-4 flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,$.jsx)(Ce,{className:`h-4 w-4`}),`Preview not available for this file type.`]}),t[79]=N):N=t[79];let P;return t[80]!==k||t[81]!==M?(P=(0,$.jsxs)(`div`,{className:`flex flex-col h-full`,children:[k,M,N]}),t[80]=k,t[81]=M,t[82]=P):P=t[82],P},Ut=16;function Wt(e){return{paddingLeft:e*Ut}}function Gt(e,t){return new Date(e*1e3).toLocaleDateString(t,{month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`})}function Kt(e){let t=e.endsWith(`/`)?e.slice(0,-1):e,n=t.split(`/`);return n[n.length-1]||t}function qt(e){return e.endsWith(`/`)?e:`${e}/`}function Jt(e,t){let n=e.metadata?.id;return typeof n==`string`&&n.length>0?n:`${e.path}::${t}`}function Yt(e,{namespace:t,searchValue:n,entriesByPath:r}){let i=n.trim().toLowerCase(),a=e.path.toLowerCase();if(Kt(e.path).toLowerCase().includes(i)||a.includes(i))return!0;if(e.kind===`directory`){let i=r.get(v(t,qt(e.path)));if(i)return i.some(e=>Yt(e,{namespace:t,searchValue:n,entriesByPath:r}))}return!1}function Xt(e,t){return t.searchValue.trim()?e.filter(e=>Yt(e,t)):e}var Zt=5;function Qt(e){return{query:e,status:`idle`}}function $t(e){return e.status===`idle`||e.status===`error`||e.status===`capped`}function en(e,t,n){return t.get(e)===void 0||n.get(e)?.nextPageToken!=null}function tn({hasSearch:e,hasLoadedMatches:t,isPending:n,remoteSearch:r,searchKey:i,entriesByPath:a,pageMetadataByPath:o}){return!e||t||n||!$t(r)?!1:en(i,a,o)}function nn(e){let t=e.trim(),n=t.lastIndexOf(`/`);return n===-1?``:t.slice(0,n+1)}function rn(e,t){let n=t.trim().toLowerCase();return!n||e.path.toLowerCase().includes(n)||Kt(e.path).toLowerCase().includes(n)}var an=e=>{let t=(0,Q.c)(15),{depth:n,isLoading:r,error:i,onLoadMore:a}=e,o;t[0]===n?o=t[1]:(o=Wt(n),t[0]=n,t[1]=o);let s;t[2]===r?s=t[3]:(s=r&&(0,$.jsx)(De,{className:`h-3 w-3 mr-1 animate-spin`}),t[2]=r,t[3]=s);let c=r?`Loading...`:`Load more`,l;t[4]!==r||t[5]!==a||t[6]!==s||t[7]!==c?(l=(0,$.jsxs)(J,{variant:`text`,size:`xs`,className:`h-6 px-0 hover:text-blue-600`,disabled:r,onClick:a,children:[s,c]}),t[4]=r,t[5]=a,t[6]=s,t[7]=c,t[8]=l):l=t[8];let u;t[9]===i?u=t[10]:(u=i&&(0,$.jsxs)(`span`,{className:`ml-2 text-destructive`,children:[`Failed to load: `,i.message]}),t[9]=i,t[10]=u);let d;return t[11]!==o||t[12]!==l||t[13]!==u?(d=(0,$.jsxs)(`div`,{className:`py-px text-xs`,style:o,children:[l,u]}),t[11]=o,t[12]=l,t[13]=u,t[14]=d):d=t[14],d},on=e=>{let t=(0,Q.c)(44),{namespace:n,protocol:r,rootPath:i,backendType:a,prefix:o,depth:s,locale:c,searchValue:l,onOpenFile:d}=e,{entriesByPath:f}=u(),{entries:p,isPending:m,error:h,hasMore:g,loadMore:_,isLoadingMore:v,loadMoreError:y}=b(n,o);if(m){let e;t[0]===s?e=t[1]:(e=Wt(s),t[0]=s,t[1]=e);let n;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsx)(De,{className:`h-3 w-3 animate-spin`}),t[2]=n):n=t[2];let r;return t[3]===e?r=t[4]:(r=(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5 py-1 text-xs text-muted-foreground`,style:e,children:[n,`Loading...`]}),t[3]=e,t[4]=r),r}if(h){let e;t[5]===s?e=t[6]:(e=Wt(s),t[5]=s,t[6]=e);let n;return t[7]!==h.message||t[8]!==e?(n=(0,$.jsxs)(`div`,{className:`py-1 text-xs text-destructive`,style:e,children:[`Failed to load: `,h.message]}),t[7]=h.message,t[8]=e,t[9]=n):n=t[9],n}if(p.length===0){let e;t[10]===s?e=t[11]:(e=Wt(s),t[10]=s,t[11]=e);let n;return t[12]===e?n=t[13]:(n=(0,$.jsx)(`div`,{className:`py-1 text-xs text-muted-foreground italic`,style:e,children:`Empty`}),t[12]=e,t[13]=n),n}let x;if(t[14]!==a||t[15]!==p||t[16]!==s||t[17]!==f||t[18]!==c||t[19]!==n||t[20]!==d||t[21]!==r||t[22]!==i||t[23]!==l){let e=Xt(p,{namespace:n,searchValue:l,entriesByPath:f}),o;t[25]!==a||t[26]!==p||t[27]!==s||t[28]!==c||t[29]!==n||t[30]!==d||t[31]!==r||t[32]!==i||t[33]!==l?(o=e=>{let t=Jt(e,p.indexOf(e));return(0,$.jsx)(sn,{rowKey:t,entry:e,namespace:n,protocol:r,rootPath:i,backendType:a,depth:s,locale:c,searchValue:l,onOpenFile:d},t)},t[25]=a,t[26]=p,t[27]=s,t[28]=c,t[29]=n,t[30]=d,t[31]=r,t[32]=i,t[33]=l,t[34]=o):o=t[34],x=e.map(o),t[14]=a,t[15]=p,t[16]=s,t[17]=f,t[18]=c,t[19]=n,t[20]=d,t[21]=r,t[22]=i,t[23]=l,t[24]=x}else x=t[24];let S;t[35]!==s||t[36]!==g||t[37]!==v||t[38]!==_||t[39]!==y?(S=g&&(0,$.jsx)(an,{depth:s,isLoading:v,error:y,onLoadMore:_}),t[35]=s,t[36]=g,t[37]=v,t[38]=_,t[39]=y,t[40]=S):S=t[40];let C;return t[41]!==x||t[42]!==S?(C=(0,$.jsxs)($.Fragment,{children:[x,S]}),t[41]=x,t[42]=S,t[43]=C):C=t[43],C},sn=e=>{let t=(0,Q.c)(115),{entry:n,rowKey:r,namespace:i,protocol:a,rootPath:o,backendType:c,depth:l,locale:d,searchValue:p,onOpenFile:m}=e,[h,g]=(0,Z.useState)(!1),{entriesByPath:_}=u(),y=ct(),b=n.kind===`directory`,x,S,C,w,T,E,D,k,A,j,N;if(t[0]!==c||t[1]!==l||t[2]!==_||t[3]!==n||t[4]!==b||t[5]!==h||t[6]!==i||t[7]!==m||t[8]!==a||t[9]!==r||t[10]!==p){w=Kt(n.path);let e;t[22]===p?e=t[23]:(e=p.trim(),t[22]=p,t[23]=e);let o=!!e;T=b&&o&&w.toLowerCase().includes(p.trim().toLowerCase());let u;t[24]!==_||t[25]!==n.path||t[26]!==o||t[27]!==b||t[28]!==i||t[29]!==p?(u=b&&o&&!!_.get(v(i,qt(n.path)))?.some(e=>Yt(e,{namespace:i,searchValue:p,entriesByPath:_})),t[24]=_,t[25]=n.path,t[26]=o,t[27]=b,t[28]=i,t[29]=p,t[30]=u):u=t[30],S=h||u;let d;t[31]!==n.path||t[32]!==i?(d=async()=>{try{let e=await f.request({namespace:i,path:n.path});if(e.error){qe({title:`Download failed`,description:e.error,variant:`danger`});return}e.url&&ne(e.url,e.filename??`download`)}catch(e){let t=e;O.error(`Failed to download storage entry`,t),qe({title:`Download failed`,description:String(t),variant:`danger`})}},t[31]=n.path,t[32]=i,t[33]=d):d=t[33],C=d,x=s;let y=b&&`font-medium`;t[34]===y?E=t[35]:(E=M(`text-xs flex items-center gap-1.5 cursor-pointer rounded-none group h-6.5`,y),t[34]=y,t[35]=E),t[36]===l?D=t[37]:(D=Wt(l),t[36]=l,t[37]=D),k=`${i}:${r}`,t[38]!==c||t[39]!==S||t[40]!==n||t[41]!==b||t[42]!==i||t[43]!==m||t[44]!==a?(A=()=>{b?g(!S):m({entry:n,namespace:i,protocol:a,backendType:c})},t[38]=c,t[39]=S,t[40]=n,t[41]=b,t[42]=i,t[43]=m,t[44]=a,t[45]=A):A=t[45],t[46]!==S||t[47]!==b?(j=b?(0,$.jsx)(de,{isExpanded:S,className:`h-3 w-3`}):(0,$.jsx)(`span`,{className:`w-3 shrink-0`}),t[46]=S,t[47]=b,t[48]=j):j=t[48],N=b?(0,$.jsx)(ve,{className:M(`h-3.5 w-3.5 shrink-0`,be.directory)}):ye(w),t[0]=c,t[1]=l,t[2]=_,t[3]=n,t[4]=b,t[5]=h,t[6]=i,t[7]=m,t[8]=a,t[9]=r,t[10]=p,t[11]=x,t[12]=S,t[13]=C,t[14]=w,t[15]=T,t[16]=E,t[17]=D,t[18]=k,t[19]=A,t[20]=j,t[21]=N}else x=t[11],S=t[12],C=t[13],w=t[14],T=t[15],E=t[16],D=t[17],k=t[18],A=t[19],j=t[20],N=t[21];let P;t[49]===w?P=t[50]:(P=(0,$.jsx)(`span`,{className:`truncate flex-1 text-left`,children:w}),t[49]=w,t[50]=P);let F;t[51]!==n.size||t[52]!==d?(F=n.size>0&&(0,$.jsx)(`span`,{className:`text-[10px] text-muted-foreground pr-2 opacity-0 group-hover:opacity-100 transition-opacity tabular-nums`,children:ft(n.size,d)}),t[51]=n.size,t[52]=d,t[53]=F):F=t[53];let H;t[54]!==n.lastModified||t[55]!==d?(H=n.lastModified!=null&&(0,$.jsx)(q,{content:`Last modified: ${new Date(n.lastModified*1e3).toLocaleString()}`,children:(0,$.jsx)(`span`,{className:`text-[10px] text-muted-foreground pr-1 opacity-0 group-hover:opacity-100 transition-opacity whitespace-nowrap`,children:Gt(n.lastModified,d)})}),t[54]=n.lastModified,t[55]=d,t[56]=H):H=t[56];let U;t[57]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,$.jsx)(R,{asChild:!0,children:(0,$.jsx)(fe,{iconClassName:`h-3 w-3`,onClick:un})}),t[57]=U):U=t[57];let W;t[58]!==c||t[59]!==n||t[60]!==b||t[61]!==i||t[62]!==m||t[63]!==a?(W=!b&&(0,$.jsxs)(I,{onSelect:()=>m({entry:n,namespace:i,protocol:a,backendType:c}),children:[(0,$.jsx)(Mt,{className:`h-3.5 w-3.5 mr-2`}),`View`]}),t[58]=c,t[59]=n,t[60]=b,t[61]=i,t[62]=m,t[63]=a,t[64]=W):W=t[64];let G;t[65]===n.path?G=t[66]:(G=async()=>{await $e(n.path),qe({title:`Copied to clipboard`})},t[65]=n.path,t[66]=G);let K;t[67]===Symbol.for(`react.memo_cache_sentinel`)?(K=(0,$.jsx)(ge,{className:pe}),t[67]=K):K=t[67];let ee;t[68]===G?ee=t[69]:(ee=(0,$.jsxs)(I,{onSelect:G,children:[K,`Copy path`]}),t[68]=G,t[69]=ee);let te;t[70]!==C||t[71]!==b?(te=!b&&(0,$.jsxs)(I,{onSelect:()=>C(),children:[(0,$.jsx)(V,{className:`h-3.5 w-3.5 mr-2`}),`Download`]}),t[70]=C,t[71]=b,t[72]=te):te=t[72];let J;t[73]===Symbol.for(`react.memo_cache_sentinel`)?(J=(0,$.jsx)(L,{}),t[73]=J):J=t[73];let re;t[74]!==y||t[75]!==c||t[76]!==n||t[77]!==i||t[78]!==a?(re=zt.map(e=>{let t=e.getCode({variableName:i,protocol:a,entry:n,backendType:c});if(t===null)return null;let r=e.icon;return(0,$.jsxs)(I,{onSelect:()=>y(t),children:[(0,$.jsx)(r,{className:pe}),e.label]},e.id)}),t[74]=y,t[75]=c,t[76]=n,t[77]=i,t[78]=a,t[79]=re):re=t[79];let ie;t[80]!==W||t[81]!==ee||t[82]!==te||t[83]!==re?(ie=(0,$.jsxs)(B,{children:[U,(0,$.jsxs)(z,{align:`end`,onClick:dn,onCloseAutoFocus:fn,children:[W,ee,te,J,re]})]}),t[80]=W,t[81]=ee,t[82]=te,t[83]=re,t[84]=ie):ie=t[84];let ae;t[85]!==ie||t[86]!==F||t[87]!==H?(ae=(0,$.jsxs)(`div`,{className:`flex items-center`,children:[F,H,ie]}),t[85]=ie,t[86]=F,t[87]=H,t[88]=ae):ae=t[88];let oe;t[89]!==x||t[90]!==E||t[91]!==ae||t[92]!==D||t[93]!==k||t[94]!==A||t[95]!==j||t[96]!==N||t[97]!==P?(oe=(0,$.jsxs)(x,{className:E,style:D,value:k,onSelect:A,children:[j,N,P,ae]}),t[89]=x,t[90]=E,t[91]=ae,t[92]=D,t[93]=k,t[94]=A,t[95]=j,t[96]=N,t[97]=P,t[98]=oe):oe=t[98];let Y;t[99]!==c||t[100]!==l||t[101]!==S||t[102]!==n.path||t[103]!==b||t[104]!==d||t[105]!==i||t[106]!==m||t[107]!==a||t[108]!==o||t[109]!==p||t[110]!==T?(Y=b&&S&&(0,$.jsx)(on,{namespace:i,protocol:a,rootPath:o,backendType:c,prefix:qt(n.path),depth:l+1,locale:d,searchValue:T?``:p,onOpenFile:m}),t[99]=c,t[100]=l,t[101]=S,t[102]=n.path,t[103]=b,t[104]=d,t[105]=i,t[106]=m,t[107]=a,t[108]=o,t[109]=p,t[110]=T,t[111]=Y):Y=t[111];let se;return t[112]!==oe||t[113]!==Y?(se=(0,$.jsxs)($.Fragment,{children:[oe,Y]}),t[112]=oe,t[113]=Y,t[114]=se):se=t[114],se},cn=e=>{let t=(0,Q.c)(66),{namespace:n,locale:r,searchValue:i,remoteSearch:a,onContinueRemoteSearch:o,onOpenFile:c}=e,[l,d]=(0,Z.useState)(!0),{entriesByPath:f,pageMetadataByPath:m}=u(),{clearNamespaceCache:h}=p(),g=n.name??n.displayName,{entries:_,isPending:y,error:x,hasMore:S,loadMore:C,isLoadingMore:w,loadMoreError:T,refetch:E}=b(g),D;t[0]!==h||t[1]!==g||t[2]!==E?(D=e=>{e.stopPropagation(),h(g),E()},t[0]=h,t[1]=g,t[2]=E,t[3]=D):D=t[3];let O=D,k=y?n.storageEntries:_,A;if(t[4]!==k||t[5]!==f||t[6]!==x||t[7]!==O||t[8]!==S||t[9]!==l||t[10]!==w||t[11]!==y||t[12]!==C||t[13]!==T||t[14]!==r||t[15]!==n.backendType||t[16]!==n.displayName||t[17]!==n.name||t[18]!==n.protocol||t[19]!==n.rootPath||t[20]!==g||t[21]!==o||t[22]!==c||t[23]!==m||t[24]!==a||t[25]!==i){let e=Xt(k,{namespace:g,searchValue:i,entriesByPath:f}),u=nn(i),p=v(g,u),h=u===``?[]:f.get(p)??[],_=Xt(h,{namespace:g,searchValue:i,entriesByPath:f}),b;t[27]===i?b=t[28]:(b=i.trim(),t[27]=i,t[28]=b);let E=!!b,D=e.length>0||_.length>0,j=u!==``&&tn({hasSearch:E,hasLoadedMatches:D,isPending:y,remoteSearch:a,searchKey:p,entriesByPath:f,pageMetadataByPath:m}),M=E&&e.length===0,N;bb0:{if(y&&k.length===0){let e;t[29]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,$.jsx)(De,{className:`h-3 w-3 animate-spin`}),`Loading...`]}),t[29]=e):e=t[29],N=e;break bb0}if(a.status===`searching`){let e;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,$.jsx)(De,{className:`h-3 w-3 animate-spin`}),`Searching more entries...`]}),t[30]=e):e=t[30],N=e;break bb0}if(a.status===`error`){let e;t[31]===a.error.message?e=t[32]:(e=(0,$.jsxs)(`span`,{className:`text-destructive`,children:[`Search failed: `,a.error.message]}),t[31]=a.error.message,t[32]=e),N=e;break bb0}if(a.status===`capped`){let e;t[33]===o?e=t[34]:(e=(0,$.jsx)(J,{variant:`text`,size:`xs`,className:`h-5 px-0 text-xs hover:text-blue-600`,onClick:o,children:`Continue searching`}),t[33]=o,t[34]=e);let n;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsx)(`span`,{className:`text-[10px]`,children:`(or press Enter)`}),t[35]=n):n=t[35];let r;t[36]===e?r=t[37]:(r=(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[`Searched more entries.`,e,n]}),t[36]=e,t[37]=r),N=r;break bb0}if(a.status===`exhausted`&&!D){N=`No matches`;break bb0}if(!E&&!y&&k.length===0){N=`No entries`;break bb0}if(j){let e;t[38]===o?e=t[39]:(e=(0,$.jsx)(J,{variant:`text`,size:`xs`,className:`h-5 px-0 text-xs hover:text-blue-600`,onClick:o,children:`Search more entries`}),t[38]=o,t[39]=e);let n;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsx)(`span`,{className:`text-[10px]`,children:`(or press Enter)`}),t[40]=n):n=t[40];let r;t[41]===e?r=t[42]:(r=(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[`No loaded matches.`,e,n]}),t[41]=e,t[42]=r),N=r;break bb0}if(E&&!D&&k.length>0){N=`No matches`;break bb0}N=null}let P=N,F;t[43]===l?F=t[44]:(F=()=>d(!l),t[43]=l,t[44]=F);let I;t[45]===l?I=t[46]:(I=(0,$.jsx)(de,{isExpanded:l,className:`h-3 w-3`}),t[45]=l,t[46]=I);let L;t[47]===n.protocol?L=t[48]:(L=(0,$.jsx)(Te,{protocol:n.protocol}),t[47]=n.protocol,t[48]=L);let R;t[49]===n.displayName?R=t[50]:(R=(0,$.jsx)(`span`,{children:n.displayName}),t[49]=n.displayName,t[50]=R);let z;t[51]===n.name?z=t[52]:(z=n.name&&(0,$.jsxs)(`span`,{className:`text-xs text-muted-foreground font-normal`,children:[`(`,(0,$.jsx)(vt,{variableName:n.name}),`)`]}),t[51]=n.name,t[52]=z);let B;t[53]===O?B=t[54]:(B=(0,$.jsx)(X,{onClick:O,tooltip:`Refresh storage connection`,className:`p-0`,iconClassName:`h-3 w-3`}),t[53]=O,t[54]=B);let V=n.rootPath||`(root)`,H;t[55]===V?H=t[56]:(H=(0,$.jsx)(`span`,{className:`text-[10px] text-muted-foreground font-normal tabular-nums ml-auto`,children:V}),t[55]=V,t[56]=H);let W;t[57]!==n.name||t[58]!==B||t[59]!==H||t[60]!==F||t[61]!==I||t[62]!==L||t[63]!==R||t[64]!==z?(W=(0,$.jsxs)(s,{value:n.name,onSelect:F,className:`flex flex-row font-semibold h-7 text-xs gap-1.5 bg-(--slate-2) text-muted-foreground rounded-none`,children:[I,L,R,z,B,H]}),t[57]=n.name,t[58]=B,t[59]=H,t[60]=F,t[61]=I,t[62]=L,t[63]=R,t[64]=z,t[65]=W):W=t[65],A=(0,$.jsxs)($.Fragment,{children:[W,l&&(0,$.jsxs)($.Fragment,{children:[x&&k.length===0&&(0,$.jsx)(U,{error:x,style:Wt(1),className:`py-1 text-xs h-auto overflow-auto max-h-32 items-start`,showIcon:!1}),!x&&P&&(0,$.jsx)(`div`,{className:`py-1 text-xs text-muted-foreground italic`,style:Wt(1),children:P}),e.map(e=>{let t=Jt(e,k.indexOf(e));return(0,$.jsx)(sn,{rowKey:t,entry:e,namespace:g,protocol:n.protocol,rootPath:n.rootPath,backendType:n.backendType,depth:1,locale:r,searchValue:i,onOpenFile:c},t)}),M&&_.map(e=>{let t=Jt(e,h.indexOf(e));return(0,$.jsx)(sn,{rowKey:`remote-search:${t}`,entry:e,namespace:g,protocol:n.protocol,rootPath:n.rootPath,backendType:n.backendType,depth:1,locale:r,searchValue:i,onOpenFile:c},`remote-search:${t}`)}),S&&!j&&(0,$.jsx)(an,{depth:1,isLoading:w,error:T,onLoadMore:C})]})]}),t[4]=k,t[5]=f,t[6]=x,t[7]=O,t[8]=S,t[9]=l,t[10]=w,t[11]=y,t[12]=C,t[13]=T,t[14]=r,t[15]=n.backendType,t[16]=n.displayName,t[17]=n.name,t[18]=n.protocol,t[19]=n.rootPath,t[20]=g,t[21]=o,t[22]=c,t[23]=m,t[24]=a,t[25]=i,t[26]=A}else A=t[26];return A},ln=()=>{let e=(0,Q.c)(63),{namespaces:t,entriesByPath:n,pageMetadataByPath:r}=u(),{locale:i}=Xe(),[a,s]=(0,Z.useState)(``),c;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(c={},e[0]=c):c=e[0];let[l,d]=(0,Z.useState)(c),[f,p]=(0,Z.useState)(null),h=o(),g;e[1]===a?g=e[2]:(g=a.trim(),e[1]=a,e[2]=g);let _=!!g,b;e[3]===a?b=e[4]:(b=a.trim(),e[3]=a,e[4]=b);let x=b,C;e[5]!==x||e[6]!==l?(C=e=>{let t=l[e];return t?.query===x?t:Qt(x)},e[5]=x,e[6]=l,e[7]=C):C=e[7];let w=C,T;e[8]===Symbol.for(`react.memo_cache_sentinel`)?(T=(e,t)=>{d(n=>({...n,[e]:t}))},e[8]=T):T=e[8];let E=T,D;e[9]!==x||e[10]!==n||e[11]!==r||e[12]!==w?(D=e=>{if(!x)return!1;let t=e.name??e.displayName,i=nn(x);if(i===``||!$t(w(t))||Xt(n.get(v(t,``))??e.storageEntries,{namespace:t,searchValue:x,entriesByPath:n}).length>0)return!1;let a=v(t,i);return Xt(n.get(a)??[],{namespace:t,searchValue:x,entriesByPath:n}).length>0?!1:en(a,n,r)},e[9]=x,e[10]=n,e[11]=r,e[12]=w,e[13]=D):D=e[13];let O=D,k;e[14]!==O||e[15]!==x||e[16]!==n||e[17]!==h||e[18]!==r?(k=async e=>{if(!O(e))return;let t=x,i=e.name??e.displayName,a=nn(t),o=v(i,a),s=n.get(o),c=r.get(o)?.nextPageToken??null,l=s!==void 0;E(i,{query:t,status:`searching`});try{for(let e=0;e<Zt;e++){let e=!l||c!==null,n=[];if(e){let e=await h({namespace:i,prefix:a,pageToken:c,append:l});n=e.entries,c=e.next_page_token??null,l=!0}if((e?n:s??[]).some(e=>rn(e,t))){E(i,{query:t,status:`found`});return}if(c===null){E(i,{query:t,status:`exhausted`});return}}E(i,{query:t,status:`capped`})}catch(e){let n=e;E(i,{query:t,status:`error`,error:n instanceof Error?n:Error(String(n))})}},e[14]=O,e[15]=x,e[16]=n,e[17]=h,e[18]=r,e[19]=k):k=e[19];let A=k,j;e[20]!==O||e[21]!==A||e[22]!==t?(j=()=>{let e=t.filter(O);for(let t of e)A(t)},e[20]=O,e[21]=A,e[22]=t,e[23]=j):j=e[23];let N=j;if(t.length===0){let t;return e[24]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsx)(dt,{title:`No storage connected`,description:(0,$.jsxs)(`span`,{children:[`Create an obstore or fsspec connection in your notebook. See the`,` `,(0,$.jsx)(`a`,{className:`text-link`,href:`https://docs.marimo.io/guides/working_with_data/remote_storage/#quick-start`,target:`_blank`,rel:`noopener noreferrer`,children:`docs`}),`.`]}),action:(0,$.jsx)(gt,{group:`storage`,label:`Add remote storage`,variant:`outline`,size:`sm`}),icon:(0,$.jsx)(we,{className:`h-8 w-8`})}),e[24]=t):t=e[24],t}let P;e[25]===f?P=e[26]:(P=f&&(0,$.jsx)(Ht,{entry:f.entry,namespace:f.namespace,protocol:f.protocol,backendType:f.backendType,onBack:()=>p(null)}),e[25]=f,e[26]=P);let F=f&&`hidden`,I;e[27]===F?I=e[28]:(I=M(`border-b bg-background rounded-none h-full pb-10 overflow-auto outline-hidden scrollbar-thin`,F),e[27]=F,e[28]=I);let L;e[29]!==O||e[30]!==N||e[31]!==t?(L=e=>{e.key===`Enter`&&t.some(O)&&(e.preventDefault(),N())},e[29]=O,e[30]=N,e[31]=t,e[32]=L):L=e[32];let R;e[33]!==a||e[34]!==L?(R=(0,$.jsx)(m,{placeholder:`Search entries...`,className:`h-6 m-1`,value:a,onValueChange:s,onKeyDown:L,rootClassName:`flex-1 border-b-0`}),e[33]=a,e[34]=L,e[35]=R):R=e[35];let z;e[36]===_?z=e[37]:(z=_&&(0,$.jsx)(J,{variant:`text`,size:`xs`,className:`float-right border-none px-2 m-0 h-full`,onClick:()=>s(``),children:(0,$.jsx)(le,{className:`h-4 w-4`})}),e[36]=_,e[37]=z);let B,V;e[38]===Symbol.for(`react.memo_cache_sentinel`)?(B=(0,$.jsx)(q,{content:`Search by file name within loaded entries, or by prefix (e.g. 'folder/x') for backend search. Press Enter to fetch more results.`,delayDuration:200,children:(0,$.jsx)(he,{className:`h-3.5 w-3.5 shrink-0 cursor-help text-muted-foreground hover:text-foreground mr-2`})}),V=(0,$.jsx)(gt,{group:`storage`,label:`Add remote storage`,compact:!0,variant:`ghost`,size:`sm`,className:`px-2 border-0 border-l border-muted-background rounded-none focus-visible:ring-0 focus-visible:ring-offset-0`}),e[38]=B,e[39]=V):(B=e[38],V=e[39]);let H;e[40]!==R||e[41]!==z?(H=(0,$.jsxs)(`div`,{className:`flex items-center w-full border-b`,children:[R,z,B,V]}),e[40]=R,e[41]=z,e[42]=H):H=e[42];let U;if(e[43]!==A||e[44]!==i||e[45]!==t||e[46]!==w||e[47]!==a){let n;e[49]!==A||e[50]!==i||e[51]!==w||e[52]!==a?(n=e=>{let t=e.name??e.displayName;return(0,$.jsx)(cn,{namespace:e,locale:i,searchValue:a,remoteSearch:w(t),onContinueRemoteSearch:()=>void A(e),onOpenFile:p},t)},e[49]=A,e[50]=i,e[51]=w,e[52]=a,e[53]=n):n=e[53],U=t.map(n),e[43]=A,e[44]=i,e[45]=t,e[46]=w,e[47]=a,e[48]=U}else U=e[48];let W;e[54]===U?W=e[55]:(W=(0,$.jsx)(y,{className:`flex flex-col`,children:U}),e[54]=U,e[55]=W);let G;e[56]!==I||e[57]!==H||e[58]!==W?(G=(0,$.jsxs)(S,{className:I,shouldFilter:!1,children:[H,W]}),e[56]=I,e[57]=H,e[58]=W,e[59]=G):G=e[59];let K;return e[60]!==G||e[61]!==P?(K=(0,$.jsxs)(`div`,{className:`h-full flex flex-col`,children:[P,G]}),e[60]=G,e[61]=P,e[62]=K):K=e[62],K};function un(e){return e.stopPropagation()}function dn(e){return e.stopPropagation()}function fn(e){return e.preventDefault()}var pn=(0,Z.createContext)(null);function mn(){return(0,Z.useContext)(pn)??void 0}var hn=e=>{let t=(0,Q.c)(3),{children:n}=e,r=Le(),i;return t[0]!==n||t[1]!==r?(i=(0,$.jsx)(pn.Provider,{value:r,children:n}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i},gn=e=>{let t=(0,Q.c)(5),{children:n}=e,[r,i]=(0,Z.useState)(null),a;t[0]!==n||t[1]!==r?(a=r&&(0,$.jsx)(Fe,{backend:je,options:{rootElement:r},children:(0,$.jsx)(hn,{children:n})}),t[0]=n,t[1]=r,t[2]=a):a=t[2];let o;return t[3]===a?o=t[4]:(o=(0,$.jsx)(`div`,{ref:i,className:`contents`,children:a}),t[3]=a,t[4]=o),o},_n=e(w(),1),vn=200;function yn({query:e,tree:t,showHiddenFiles:n}){let{sendSearchFiles:r}=ae(),i=Ze(e,300),a=(0,Z.useRef)(Promise.resolve()),[o,s]=(0,Z.useState)(0),c=(0,Z.useCallback)(()=>s(e=>e+1),[]),[l,u]=(0,Z.useState)({status:`idle`});return(0,Z.useEffect)(()=>{let o=!1;if(!e||e!==i)return;u({status:`loading`,query:e});let s=a.current.then(async()=>{let i=new Map,a=!1,s=0,c=t.getRoots();for(let t of c){if(o)return;try{let o=await r({query:e,path:t.path,includeFiles:!0,includeDirectories:!0,includeHidden:n,depth:20,limit:vn});a||=o.files.length>=vn;for(let e of o.files){let n=i.get(e.path);n&&(!t.isPrimary||n.isPrimaryRoot)||i.set(e.path,{...e,id:Pe(t.path,e.path),children:[],isRoot:!1,rootPath:t.path,isPrimaryRoot:t.isPrimary})}}catch{s+=1}}if(!o){if(c.length>0&&s===c.length){u({status:`error`,query:e,error:Error(`Could not search any root`)});return}let t=t=>{let n=t.name.toLowerCase(),r=e.toLowerCase();return n===r?0:n.startsWith(r)?1:2},n=[...i.values()].toSorted((e,n)=>t(e)-t(n)||e.name.localeCompare(n.name));u({status:`success`,isPartial:s>0,query:e,files:n.slice(0,vn),hasMore:a||n.length>vn})}});return a.current=s.catch(t=>{o||u({status:`error`,query:e,error:t})}),()=>{o=!0}},[e,i,t,n,o,r]),e?e!==i||l.status===`idle`||l.query!==e?{state:{status:`loading`,query:e},refetch:c}:{state:l,refetch:c}:{state:{status:`idle`},refetch:c}}function bn(e,t){let n=(0,Q.c)(7),r=e.tree,i=(0,Z.useRef)(null),a,o;n[0]!==t||n[1]!==e.data.isDirectory||n[2]!==e.id||n[3]!==e.isOpen||n[4]!==r?(a=()=>{if(!t){i.current=null;return}if(!e.data.isDirectory||e.isOpen||i.current===e.id)return;let n=window.setTimeout(()=>{i.current=e.id,r.open(e.id)},600);return()=>window.clearTimeout(n)},o=[t,e.data.isDirectory,e.isOpen,e.id,r],n[0]=t,n[1]=e.data.isDirectory,n[2]=e.id,n[3]=e.isOpen,n[4]=r,n[5]=a,n[6]=o):(a=n[5],o=n[6]),(0,Z.useEffect)(a,o)}async function xn(e,t){if(!A()){let n=j().formatNavigableHttpURL(`api/files/download`,new URLSearchParams({path:e}));ne(n.toString(),t);return}let n=await oe().sendFileDetails({path:e});if(n.isBase64&&n.contents){let e=tt(me(n.contents,n.mimeType||`application/octet-stream`));te(e,t)}else te(new Blob([n.contents||``],{type:n.mimeType||`application/octet-stream`}),t)}var Sn=e=>{let t=(0,Q.c)(21),{file:n,mimeType:r,message:i,onDownload:a}=e,{locale:o}=Xe(),s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(`span`,{className:`text-muted-foreground font-medium`,children:`Path`}),t[0]=s):s=t[0];let c;t[1]===n.path?c=t[2]:(c=(0,$.jsx)(`span`,{className:`font-mono text-xs break-all`,children:n.path}),t[1]=n.path,t[2]=c);let l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(`span`,{className:`text-muted-foreground font-medium`,children:`Type`}),t[3]=l):l=t[3];let u;t[4]===r?u=t[5]:(u=(0,$.jsx)(`span`,{children:r}),t[4]=r,t[5]=u);let d;t[6]!==n.size||t[7]!==o?(d=n.size!=null&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:`text-muted-foreground font-medium`,children:`Size`}),(0,$.jsx)(`span`,{children:ft(n.size,o)})]}),t[6]=n.size,t[7]=o,t[8]=d):d=t[8];let f;t[9]!==c||t[10]!==u||t[11]!==d?(f=(0,$.jsxs)(`div`,{className:`grid grid-cols-[auto_1fr] gap-x-4 gap-y-2`,children:[s,c,l,u,d]}),t[9]=c,t[10]=u,t[11]=d,t[12]=f):f=t[12];let p;t[13]===i?p=t[14]:(p=(0,$.jsx)(`div`,{className:`mt-4 text-muted-foreground italic`,children:i}),t[13]=i,t[14]=p);let m;t[15]===a?m=t[16]:(m=a&&(0,$.jsxs)(J,{variant:`outline`,size:`sm`,className:`mt-4`,onClick:a,children:[(0,$.jsx)(V,{className:`h-3.5 w-3.5 mr-2`}),`Download`]}),t[15]=a,t[16]=m);let h;return t[17]!==f||t[18]!==p||t[19]!==m?(h=(0,$.jsxs)(`div`,{className:`p-4 text-sm`,children:[f,p,m]}),t[17]=f,t[18]=p,t[19]=m,t[20]=h):h=t[20],h};function Cn(e,t){let n=e||`text/plain`;return K(n)?`media`:t?`unsupported`:n===`text/csv`?`csv`:n.startsWith(`text/`)||n!=="default"&&n in H||e==null?`text`:`unsupported`}var wn=10485760,Tn=new Map,En=({file:e,onOpenNotebook:t})=>{let{sendFileDetails:n,sendUpdateFile:i}=ae(),a=r(E),o=r(D),s=r(C),[c,l]=(0,Z.useState)(``),{data:u,isPending:d,error:f,setData:p,refetch:m}=Qe(async()=>{let t=await n({path:e.path,maxBytes:wn}),r=Cn(t.mimeType,t.isBase64);if(!t.isTooLarge&&r===`text`){let n=t.contents||``;l(Tn.get(e.path)??n)}return t},[e.path]),h=async()=>{c!==u?.contents&&await i({path:e.path,contents:c}).then(e=>{e.success&&(p(e=>({...e,contents:c})),l(c))})},g=(0,Z.useRef)(c);if(g.current=c,(0,Z.useEffect)(()=>()=>{if(u?.contents==null||u.isTooLarge||Cn(u.mimeType,u.isBase64)!==`text`)return;let t=g.current;t===u.contents?Tn.delete(e.path):Tn.set(e.path,t)},[e.path,u?.contents,u?.isTooLarge,u?.mimeType,u?.isBase64]),f)return(0,$.jsx)(at,{error:f});if(d||!u)return null;let _=u.mimeType||`text/plain`,v=Cn(u.mimeType,u.isBase64),y=v===`text`,b=v===`csv`,x=v===`media`,S=s&&u.file.isMarimoFile&&(e.path===s||e.path.endsWith(`/${s}`)),w=async()=>{await xn(e.path,u.file.name)},T=re.of([{key:a.getHotkey(`global.save`).key,stopPropagation:!0,run:()=>c!==u.contents&&(h(),!0)}]),O=(0,$.jsx)(Nt,{filename:u.file.name,onRefresh:m,onDownload:o?void 0:w,actions:(0,$.jsxs)($.Fragment,{children:[u.file.isMarimoFile&&t&&!A()&&(0,$.jsx)(q,{content:`Open notebook`,children:(0,$.jsx)(J,{variant:`text`,size:`xs`,"aria-label":`Open notebook`,onClick:e=>t(e),children:(0,$.jsx)(_e,{className:`h-3.5 w-3.5`})})}),y&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(q,{content:`Copy contents to clipboard`,children:(0,$.jsx)(J,{variant:`text`,size:`xs`,onClick:async()=>{await $e(c)},children:(0,$.jsx)(ge,{className:`h-3.5 w-3.5`})})}),(0,$.jsx)(q,{content:ot(`global.save`),children:(0,$.jsx)(J,{variant:`text`,size:`xs`,onClick:h,disabled:c===u.contents,children:(0,$.jsx)(He,{className:`h-3.5 w-3.5`})})})]})]})});if(u.isTooLarge||v===`unsupported`)return(0,$.jsxs)($.Fragment,{children:[O,(0,$.jsx)(Sn,{file:u.file,mimeType:_,message:u.isTooLarge?`File is too large to preview.`:`This file type cannot be previewed.`,onDownload:o?void 0:w})]});let k=y&&S&&(0,$.jsxs)(it,{variant:`warning`,className:`rounded-none`,children:[(0,$.jsx)(We,{className:`h-4 w-4`}),(0,$.jsx)(rt,{children:`Editing the notebook file directly while running in marimo's editor may cause unintended changes. Please use with caution.`})]}),j=x&&u.contents?G({contents:u.contents,mimeType:_,isBase64:u.isBase64??!1}):void 0;return(0,$.jsxs)($.Fragment,{children:[O,k,(0,$.jsx)(W,{mimeType:_,filename:u.file.name,contents:y?c:b?u.contents??void 0:void 0,mediaSource:j,readOnly:!y,onChange:y?l:void 0,extensions:y?[T]:[]})]})};function Dn({node:e,attrs:t,innerRef:n,children:r,ariaLabel:i=e.data.name}){return(0,$.jsx)(`div`,{...t,ref:n,"aria-label":i,"aria-expanded":e.isInternal?e.isOpen:void 0,onFocus:n=>{n.stopPropagation(),t.onFocus?.(n),n.target===n.currentTarget&&!e.isFocused&&e.focus()},onClick:n=>{t.onClick?t.onClick(n):e.select(),n.defaultPrevented||n.currentTarget.focus({preventScroll:!0})},children:r})}function On(e){let t=(0,Q.c)(25),{treeRef:n,search:r,height:i,onReveal:a}=e,o=mn(),{state:s,refetch:c}=r;if(s.status===`idle`)return null;if(s.status===`error`){let e;return t[0]===c?e=t[1]:(e=(0,$.jsxs)(`div`,{role:`alert`,className:`px-3 py-2 text-sm`,children:[`Could not search files.`,` `,(0,$.jsx)(`button`,{type:`button`,className:`underline`,onClick:c,children:`Retry`})]}),t[0]=c,t[1]=e),e}if(s.status===`loading`){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsxs)(`div`,{role:`status`,className:`flex items-center gap-2 px-3 py-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(Oe,{size:`small`}),`Searching files…`]}),t[2]=e):e=t[2],e}let{files:l,hasMore:u,isPartial:d}=s,f=l.length,p;t[3]===n?p=t[4]:(p=e=>{e.key===`Enter`&&e.target instanceof HTMLElement&&e.target.closest(`[role="tree"]`)&&(e.preventDefault(),e.stopPropagation(),n.current?.focusedNode?.activate())},t[3]=n,t[4]=p);let m;t[5]!==d||t[6]!==c?(m=d&&(0,$.jsxs)(`div`,{role:`alert`,className:`px-3 py-2 text-xs text-muted-foreground`,children:[`Some locations could not be searched.`,` `,(0,$.jsx)(`button`,{type:`button`,className:`underline`,onClick:c,children:`Retry`})]}),t[5]=d,t[6]=c,t[7]=m):m=t[7];let h=l.length?`${f} ${f===1?`match`:`matches`}`:`No matching files or folders.`,g=u&&` · Refine your search for more results.`,_;t[8]!==h||t[9]!==g?(_=(0,$.jsxs)(`p`,{role:`status`,className:`px-3 py-2 text-xs text-muted-foreground`,children:[h,g]}),t[8]=h,t[9]=g,t[10]=_):_=t[10];let v=Math.max(0,i-48-(d?48:0)),y;t[11]===a?y=t[12]:(y=e=>{a(e.data)},t[11]=a,t[12]=y);let b;t[13]!==o||t[14]!==l||t[15]!==v||t[16]!==y||t[17]!==n?(b=(0,$.jsx)(Be,{ref:n,data:l,childrenAccessor:kn,width:`100%`,height:v,rowHeight:48,overscanCount:8,dndManager:o,disableDrag:!0,disableDrop:!0,disableEdit:!0,disableMultiSelection:!0,selectionFollowsFocus:!0,rowClassName:`outline-none focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-ring`,renderRow:An,onActivate:y,children:jn}),t[13]=o,t[14]=l,t[15]=v,t[16]=y,t[17]=n,t[18]=b):b=t[18];let x;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(`p`,{className:`px-3 text-xs text-muted-foreground`,children:`Enter or double-click to open · Esc to clear`}),t[19]=x):x=t[19];let S;return t[20]!==p||t[21]!==m||t[22]!==_||t[23]!==b?(S=(0,$.jsxs)(`div`,{onKeyDownCapture:p,children:[m,_,b,x]}),t[20]=p,t[21]=m,t[22]=_,t[23]=b,t[24]=S):S=t[24],S}function kn(){return null}function An(e){let t=(0,Q.c)(2),n;return t[0]===e?n=t[1]:(n=(0,$.jsx)(Dn,{...e,ariaLabel:e.node.data.path}),t[0]=e,t[1]=n),n}function jn(e){let t=(0,Q.c)(19),{node:n}=e,r=n.data.isDirectory?ve:Ce,i=n.isSelected&&`bg-accent/60`,a;t[0]===i?a=t[1]:(a=M(`flex h-full items-start gap-2.5 px-3 py-1 cursor-pointer hover:bg-accent/50`,i),t[0]=i,t[1]=a);let o;t[2]===n?o=t[3]:(o=e=>{e.stopPropagation(),n.activate()},t[2]=n,t[3]=o);let s;t[4]===r?s=t[5]:(s=(0,$.jsx)(r,{className:`mt-0.5 h-4 w-4 shrink-0 text-muted-foreground`}),t[4]=r,t[5]=s);let c;t[6]===n.data.name?c=t[7]:(c=(0,$.jsx)(`div`,{className:`truncate text-sm leading-5`,children:n.data.name}),t[6]=n.data.name,t[7]=c);let l;t[8]===n.data.path?l=t[9]:(l=(0,$.jsx)(`div`,{className:`truncate text-xs leading-4 text-muted-foreground`,children:n.data.path}),t[8]=n.data.path,t[9]=l);let u;t[10]!==c||t[11]!==l?(u=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[c,l]}),t[10]=c,t[11]=l,t[12]=u):u=t[12];let d;return t[13]!==n.data.path||t[14]!==a||t[15]!==o||t[16]!==s||t[17]!==u?(d=(0,$.jsxs)(`div`,{className:a,onDoubleClick:o,title:n.data.path,children:[s,u]}),t[13]=n.data.path,t[14]=a,t[15]=o,t[16]=s,t[17]=u,t[18]=d):d=t[18],d}function Mn(e){let t=(0,Q.c)(2),n;return t[0]===e?n=t[1]:(n=e.node.data.isDirectory?(0,$.jsx)(Nn,{...e}):(0,$.jsx)(Dn,{...e}),t[0]=e,t[1]=n),n}function Nn(e){let t=(0,Q.c)(15),{node:n}=e,r=n.tree,i=(0,Z.useRef)(null),a;t[0]!==n||t[1]!==r?(a=()=>({accept:`NODE`,canDrop:()=>r.canDrop(),collect:Pn,hover:()=>{(r.state.dnd.parentId!==n.id||r.state.dnd.index!==null)&&r.dispatch({type:`DND_HOVERING`,parentId:n.id,index:null}),r.canDrop()||r.hideCursor()},drop:()=>{r.canDrop()&&(r.props.onMove?.({dragIds:r.state.dnd.dragIds,dragNodes:r.dragNodes,parentId:n.id,parentNode:n,index:0}),r.open(n.id))}}),t[0]=n,t[1]=r,t[2]=a):a=t[2];let o;t[3]!==n.id||t[4]!==r?(o=[r,n.id],t[3]=n.id,t[4]=r,t[5]=o):o=t[5];let[s,c]=Me(a,o),{isHovering:l}=s;bn(n,l);let u,d;t[6]!==n.isEditing||t[7]!==n.isFocused?(u=()=>{n.isFocused&&!n.isEditing&&i.current?.focus({preventScroll:!0})},d=[n.isFocused,n.isEditing],t[6]=n.isEditing,t[7]=n.isFocused,t[8]=u,t[9]=d):(u=t[8],d=t[9]),(0,Z.useEffect)(u,d);let f;t[10]===c?f=t[11]:(f=e=>{i.current=e,c(e)},t[10]=c,t[11]=f);let p;return t[12]!==e||t[13]!==f?(p=(0,$.jsx)(Dn,{...e,innerRef:f}),t[12]=e,t[13]=f,t[14]=p):p=t[14],p}function Pn(e){return{isHovering:e.isOver({shallow:!0})&&e.canDrop()}}var Fn=n(e=>{let t=e(ie);return k(t,`no requestClientAtom set`),new Ae({getRoots:t.getFileRoots,listFiles:t.sendListFiles,createFileOrFolder:t.sendCreateFileOrFolder,deleteFileOrFolder:t.sendDeleteFileOrFolder,copyFileOrFolder:t.sendCopyFileOrFolder,renameFileOrFolder:t.sendRenameFileOrFolder})}),In=n({}),Ln=` `,Rn={directory:e=>`os.listdir("${e}")`,python:e=>`with open("${e}", "r") as _f:\n${Ln}...\n`,json:e=>`with open("${e}", "r") as _f:\n${Ln}_data = json.load(_f)\n`,code:e=>`with open("${e}", "r") as _f:\n${Ln}...\n`,text:e=>`with open("${e}", "r") as _f:\n${Ln}...\n`,image:e=>`mo.image("${e}")`,audio:e=>`mo.audio("${e}")`,video:e=>`mo.video("${e}")`,pdf:e=>`with open("${e}", "rb") as _f:\n${Ln}...\n`,zip:e=>`with open("${e}", "rb") as _f:\n${Ln}...\n`,data:e=>`with open("${e}", "r") as _f:\n${Ln}...\n`,unknown:e=>`with open("${e}", "r") as _f:\n${Ln}...\n`},zn=104857600,Bn=5,Vn=`data-file-explorer-directory-path`;function Hn(e){let{destinationPath:t,getDestinationLabel:n=e=>e,onUploadStart:r,refreshDestination:i,...a}=e,{sendCreateFileOrFolder:o}=ae();return Ke({multiple:!0,maxSize:zn,...a,onError:e=>{O.error(e),qe({title:`File upload failed`,description:e.message,variant:`danger`})},onDropRejected:e=>{qe({title:`File upload failed`,description:(0,$.jsx)(`div`,{className:`flex flex-col gap-1`,children:e.map(e=>(0,$.jsxs)(`div`,{children:[e.file.name,` (`,e.errors.map(e=>e.message).join(`, `),`)`]},e.file.name))}),variant:`danger`})},onDrop:async(e,a,s)=>{if(e.length===0)return;let c=typeof t==`function`?t(s):t,l=n(c),u=e.length===1?`Uploading file to ${l}...`:`Uploading files to ${l}...`;r?.(c,e);let d;try{d=await ee(u,async t=>(t.addTotal(e.length),Un({files:e,destinationPath:c,createFile:o,onFileProcessed:()=>t.increment(1)})))}catch{await i(c);return}await i(c),Kn(d,l)}})}async function Un({files:e,destinationPath:t,createFile:n,onFileProcessed:r}){let i=await ut(e,Bn,async e=>{try{return{file:e,response:await n({path:Wn({destinationPath:t,filePath:Jn(qn(e))}),type:`file`,name:e.name,file:e})}}catch(t){return{file:e,response:{success:!1,message:nt(t)}}}finally{r?.()}});return{successful:i.filter(({response:e})=>e.success),failed:i.filter(({response:e})=>!e.success)}}function Wn({destinationPath:e,filePath:t}){if(!t)return e;if(Je.isAbsolute(t))throw Error(`Upload path must be relative: ${t}`);let n=t.split(/[\\/]+/).slice(0,-1).filter(Boolean);if(n.includes(`..`))throw Error(`Upload path cannot contain parent traversal: ${t}`);let r=n.filter(e=>e!==`.`);if(r.length===0)return e;let i=Ye.guessDeliminator(e),a=r.join(i.deliminator);return i.join(e,a)}function Gn(e,t){return e instanceof Element&&e.closest(`[${Vn}]`)?.getAttribute(Vn)||t}function Kn(e,t){let n=e.successful.length+e.failed.length;if(e.failed.length>0){let r;r=e.successful.length===0?n===1?`File upload failed`:`Files failed to upload`:`${e.successful.length} of ${n} files uploaded`,qe({title:r,description:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsxs)(`div`,{children:[`Destination: `,t,`.`]}),e.failed.map(({file:e,response:t},n)=>(0,$.jsxs)(`div`,{children:[e.name,`:`,` `,t.message||`The server rejected the upload.`]},`${e.name}-${n}`))]}),variant:`danger`});return}let r=e.successful.filter(({file:e,response:t})=>t.info?.name&&t.info.name!==e.name);qe({title:n===1?`File uploaded`:`${n} files uploaded`,description:r.length===0?`Uploaded to ${t}.`:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsxs)(`div`,{children:[`Uploaded to `,t,`.`]}),r.map(({file:e,response:t},n)=>(0,$.jsxs)(`div`,{children:[e.name,` was saved as `,t.info?.name,`.`]},`${e.name}-${n}`))]})})}function qn(e){if(e.webkitRelativePath)return e.webkitRelativePath;if(`path`in e&&typeof e.path==`string`)return e.path;if(`relativePath`in e&&typeof e.relativePath==`string`)return e.relativePath}function Jn(e){if(e)return e.replace(/^\/+/,``)}var Yn=c(`marimo:showHiddenFiles`,!0,_,{getOnInit:!0}),Xn=Z.createContext(null),Zn=e=>{let n=(0,Q.c)(161),{height:r,externalDropDestinationPath:a}=e,o=a===void 0?null:a,s=(0,Z.useRef)(null),c=(0,Z.useRef)(null),l=(0,Z.useRef)(null),[u,d]=(0,Z.useState)(``),[f,p]=(0,Z.useState)(null),m=mn(),[h]=t(Fn),g;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(g=[],n[0]=g):g=n[0];let[_,v]=(0,Z.useState)(g),[y,b]=(0,Z.useState)(null),[x,S]=(0,Z.useState)(null),[C,w]=t(Yn),T;n[1]===u?T=n[2]:(T=u.trim(),n[1]=u,n[2]=T);let E;n[3]!==C||n[4]!==T||n[5]!==h?(E={query:T,tree:h,showHiddenFiles:C},n[3]=C,n[4]=T,n[5]=h,n[6]=E):E=n[6];let D=yn(E),[O,k]=t(In),A;n[7]===h?A=n[8]:(A=e=>h.refreshPath(e),n[7]=h,n[8]=A);let j=i(A),M=(0,Z.useRef)(``),N;n[9]===Symbol.for(`react.memo_cache_sentinel`)?(N=()=>M.current,n[9]=N):N=n[9];let P;n[10]===h?P=n[11]:(P=e=>ir(h,e),n[10]=h,n[11]=P);let I;n[12]!==j||n[13]!==P?(I={noClick:!0,noDrag:!0,noKeyboard:!0,destinationPath:N,getDestinationLabel:P,refreshDestination:j},n[12]=j,n[13]=P,n[14]=I):I=n[14];let{getInputProps:L,open:R}=Hn(I),z;n[15]===R?z=n[16]:(z=e=>{M.current=e,R()},n[15]=R,n[16]=z);let B=i(z),{openPrompt:V,openConfirm:H}=Ee(),U;n[17]===h?U=n[18]:(U=()=>h.initialize(v),n[17]=h,n[18]=U);let W;n[19]===Symbol.for(`react.memo_cache_sentinel`)?(W=[],n[19]=W):W=n[19];let{isPending:G,error:K}=Qe(U,W),ee;n[20]!==O||n[21]!==D||n[22]!==h?(ee=async()=>{await h.refreshAll(Object.keys(O).filter(e=>O[e])),D.refetch()},n[20]=O,n[21]=D,n[22]=h,n[23]=ee):ee=n[23];let te=i(ee),ne;n[24]!==w||n[25]!==C?(ne=()=>{w(!C)},n[24]=w,n[25]=C,n[26]=ne):ne=n[26];let q=i(ne),re;n[27]!==V||n[28]!==x?.id||n[29]!==h?(re=async()=>{V({title:`Folder name`,onConfirm:async e=>{h.createFolder(e,x?.id??null)}})},n[27]=V,n[28]=x?.id,n[29]=h,n[30]=re):re=n[30];let ie=i(re),ae;n[31]!==V||n[32]!==x?.id||n[33]!==h?(ae=async()=>{V({title:`File name`,onConfirm:async e=>{h.createFile({name:e,parentId:x?.id??null})}})},n[31]=V,n[32]=x?.id,n[33]=h,n[34]=ae):ae=n[34];let oe=i(ae),Y;n[35]!==V||n[36]!==x?.id||n[37]!==h?(Y=async()=>{V({title:`Notebook name`,onConfirm:async e=>{h.createFile({name:e,parentId:x?.id??null,type:`notebook`})}})},n[35]=V,n[36]=x?.id,n[37]=h,n[38]=Y):Y=n[38];let ce=i(Y),ue;n[39]===k?ue=n[40]:(ue=()=>{s.current?.closeAll(),k({})},n[39]=k,n[40]=ue);let de=i(ue),fe;n[41]!==_||n[42]!==C?(fe=ar(_,C),n[41]=_,n[42]=C,n[43]=fe):fe=n[43];let X=fe,pe,me;n[44]!==x||n[45]!==X?(pe=()=>{x&&!sr(X,x.id)&&S(null)},me=[x,X],n[44]=x,n[45]=X,n[46]=pe,n[47]=me):(pe=n[46],me=n[47]),Z.useEffect(pe,me);let he;n[48]!==o||n[49]!==B||n[50]!==h?(he={tree:h,uploadFiles:B,externalDropDestinationPath:o},n[48]=o,n[49]=B,n[50]=h,n[51]=he):he=n[51];let ge=he,_e;n[52]!==y||n[53]!==u||n[54]!==f?(_e=()=>{if(f&&!y){let e=u.trim()?c.current:s.current;e?.openParents(f),e?.select(f);let t=e?.get(f);t?.data.isDirectory&&t.open(),p(null)}},n[52]=y,n[53]=u,n[54]=f,n[55]=_e):_e=n[55];let ve;n[56]!==_||n[57]!==y||n[58]!==u||n[59]!==f?(ve=[f,u,y,_],n[56]=_,n[57]=y,n[58]=u,n[59]=f,n[60]=ve):ve=n[60],Z.useEffect(_e,ve);let ye;n[61]===h?ye=n[62]:(ye=async e=>{if(!e.isDirectory){b(e);return}await h.reveal(e)&&(d(``),p(e.id))},n[61]=h,n[62]=ye);let be=ye,xe;n[63]===u?xe=n[64]:(xe=e=>{if((e.ctrlKey||e.metaKey)&&e.key===`f`){e.preventDefault(),e.stopPropagation(),l.current?.focus(),l.current?.select();return}if(e.key===`Escape`&&u){e.preventDefault(),e.stopPropagation(),d(``),l.current?.focus();return}let t=e.target instanceof Element?e.target.getAttribute(`role`):null;if(u.trim()||t!==`treeitem`&&t!==`tree`)return;let n=s.current?.focusedNode;!n||s.current?.isEditing||(e.key===`Enter`?(e.preventDefault(),e.stopPropagation(),n.data.isDirectory?n.toggle():n.activate()):e.key===`F2`&&!n.data.isRoot?(e.preventDefault(),e.stopPropagation(),n.edit()):(e.key===`Delete`||e.key===`Backspace`)&&(e.preventDefault(),e.stopPropagation(),n.data.isRoot||n.tree.delete(n.id)))},n[63]=u,n[64]=xe);let Se=xe;if(G){let e;return n[65]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(Oe,{size:`medium`,centered:!0}),n[65]=e):e=n[65],e}if(K){let e;return n[66]===K?e=n[67]:(e=(0,$.jsx)(at,{error:K}),n[66]=K,n[67]=e),e}let Ce;n[68]!==y||n[69]!==h?(Ce=y?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`flex items-center pl-1 pr-3 shrink-0 border-b justify-between`,children:[(0,$.jsx)(J,{autoFocus:!0,"aria-label":`Back to files`,onClick:()=>{p(y.id),b(null)},"data-testid":`file-explorer-back-button`,variant:`text`,size:`xs`,className:`mb-0`,children:(0,$.jsx)(se,{size:16})}),(0,$.jsx)(`span`,{className:`font-bold`,children:y.name})]}),(0,$.jsx)(Z.Suspense,{children:(0,$.jsx)(En,{onOpenNotebook:h.isPrimaryNode(y)?e=>{let t=h.getPrimaryRelativePath(y.path);t!==null&&rr(e,t)}:void 0,file:y})})]}):null,n[68]=y,n[69]=h,n[70]=Ce):Ce=n[70];let we=Ce,Te=!!y,De;n[71]===L?De=n[72]:(De=L(),n[71]=L,n[72]=De);let ke;n[73]===De?ke=n[74]:(ke=(0,$.jsx)(`input`,{"data-testid":`file-explorer-upload-input`,...De}),n[73]=De,n[74]=ke);let Ae;n[75]!==x?.path||n[76]!==h?(Ae=x?.path??h.getPrimaryRootPath(),n[75]=x?.path,n[76]=h,n[77]=Ae):Ae=n[77];let je;n[78]!==x?.path||n[79]!==h?(je=x?.path??h.getPrimaryRootPath(),n[78]=x?.path,n[79]=h,n[80]=je):je=n[80];let Me;n[81]!==je||n[82]!==h?(Me=ir(h,je),n[81]=je,n[82]=h,n[83]=Me):Me=n[83];let Ne;n[84]!==de||n[85]!==oe||n[86]!==ie||n[87]!==ce||n[88]!==q||n[89]!==te||n[90]!==B||n[91]!==C||n[92]!==Ae||n[93]!==Me?(Ne=(0,$.jsx)($n,{onRefresh:te,onHidden:q,showHiddenFiles:C,onCreateFile:oe,onCreateNotebook:ce,onCreateFolder:ie,onCollapseAll:de,uploadDestinationPath:Ae,uploadDestinationLabel:Me,onUpload:B}),n[84]=de,n[85]=oe,n[86]=ie,n[87]=ce,n[88]=q,n[89]=te,n[90]=B,n[91]=C,n[92]=Ae,n[93]=Me,n[94]=Ne):Ne=n[94];let Pe;n[95]===Symbol.for(`react.memo_cache_sentinel`)?(Pe=e=>d(e.target.value),n[95]=Pe):Pe=n[95];let Fe;n[96]===u?Fe=n[97]:(Fe=e=>{let t=u.trim()?c.current:s.current;e.key===`ArrowDown`?(e.preventDefault(),t?.focus(t.firstNode)):e.key===`Enter`&&u.trim()&&(e.preventDefault(),t?.firstNode?.activate())},n[96]=u,n[97]=Fe);let Ie;n[98]!==u||n[99]!==Fe?(Ie=(0,$.jsx)(Ue,{ref:l,className:`rounded-none pr-6 focus-visible:outline-1 focus-visible:outline-ring/50`,clearable:!1,"aria-label":`Search files and folders`,placeholder:`Search`,title:`Search names in all configured roots, up to 20 folders deep. Generated directories such as node_modules and .git are excluded.`,value:u,onChange:Pe,onKeyDown:Fe}),n[98]=u,n[99]=Fe,n[100]=Ie):Ie=n[100];let Le;n[101]===u?Le=n[102]:(Le=u&&(0,$.jsx)(J,{variant:`text`,size:`icon`,className:`absolute right-3 top-1/2 h-5 w-5 -translate-y-1/2`,"aria-label":`Clear search`,onClick:()=>{d(``),l.current?.focus()},children:(0,$.jsx)(le,{className:`h-3 w-3`})}),n[101]=u,n[102]=Le);let Re;n[103]!==Ie||n[104]!==Le?(Re=(0,$.jsxs)(`div`,{className:`relative -mt-1`,children:[Ie,Le]}),n[103]=Ie,n[104]=Le,n[105]=Re):Re=n[105];let ze;n[106]!==Ne||n[107]!==Re?(ze=(0,$.jsxs)(`div`,{children:[Ne,Re]}),n[106]=Ne,n[107]=Re,n[108]=ze):ze=n[108];let Ve;n[109]===u?Ve=n[110]:(Ve=u.trim(),n[109]=u,n[110]=Ve);let He=!Ve,We=Math.max(0,r-63),Ge;n[111]!==be||n[112]!==D||n[113]!==We?(Ge=(0,$.jsx)(On,{treeRef:c,search:D,height:We,onReveal:be}),n[111]=be,n[112]=D,n[113]=We,n[114]=Ge):Ge=n[114];let Ke;n[115]!==He||n[116]!==Ge?(Ke=(0,$.jsx)(`div`,{hidden:He,children:Ge}),n[115]=He,n[116]=Ge,n[117]=Ke):Ke=n[117];let qe;n[118]===u?qe=n[119]:(qe=u.trim(),n[118]=u,n[119]=qe);let Je=!!qe,Ye=Math.max(0,r-63),Xe;n[120]===Symbol.for(`react.memo_cache_sentinel`)?(Xe=e=>(0,$.jsx)(cr,{...e,tree:s.current}),n[120]=Xe):Xe=n[120];let Ze;n[121]!==H||n[122]!==h?(Ze=async e=>{let{ids:t}=e;H({title:`Delete file`,description:`Are you sure you want to delete the selected file or folder?`,confirmAction:(0,$.jsx)(F,{onClick:async()=>{for(let e of t)await h.delete(e)},children:`Delete`})})},n[121]=H,n[122]=h,n[123]=Ze):Ze=n[123];let $e,et;n[124]===h?($e=n[125],et=n[126]):($e=async e=>{let{id:t,name:n}=e;await h.rename(t,n)},et=async e=>{let{dragIds:t,parentId:n}=e;await h.move(t,n)},n[124]=h,n[125]=$e,n[126]=et);let tt,nt;n[127]===Symbol.for(`react.memo_cache_sentinel`)?(tt=e=>{let t=e[0];if(!t){S(null);return}if(t.data.isDirectory){S({id:t.id,path:t.data.path});return}S(null)},nt=e=>{e.data.isDirectory||b(e.data)},n[127]=tt,n[128]=nt):(tt=n[127],nt=n[128]);let rt;n[129]!==O||n[130]!==k||n[131]!==h?(rt=async e=>{if(!(s.current?.isOpen(e)??!(O[e]??!1))){k(t=>({...t,[e]:!1}));return}let t=await h.expand(e);t||s.current?.close(e);let n=t&&(s.current?.isOpen(e)??!1);k(t=>({...t,[e]:n}))},n[129]=O,n[130]=k,n[131]=h,n[132]=rt):rt=n[132];let it;n[133]!==m||n[134]!==O||n[135]!==Ye||n[136]!==Ze||n[137]!==$e||n[138]!==et||n[139]!==rt||n[140]!==X?(it=(0,$.jsx)(Be,{width:`100%`,ref:s,height:Ye,className:`h-full`,data:X,childrenAccessor:lr,selectionFollowsFocus:!0,rowClassName:`outline-none focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-ring`,renderRow:Mn,renderDragPreview:Xe,disableEdit:ur,initialOpenState:O,openByDefault:!1,dndManager:m,renderCursor:dr,disableDrag:fr,disableDrop:mr,onDelete:Ze,onRename:$e,onMove:et,onSelect:tt,onActivate:nt,onToggle:rt,padding:15,rowHeight:30,indent:Qn,overscanCount:8,disableMultiSelection:!0,children:tr}),n[133]=m,n[134]=O,n[135]=Ye,n[136]=Ze,n[137]=$e,n[138]=et,n[139]=rt,n[140]=X,n[141]=it):it=n[141];let ot;n[142]!==ge||n[143]!==it?(ot=(0,$.jsx)(Xn,{value:ge,children:it}),n[142]=ge,n[143]=it,n[144]=ot):ot=n[144];let st;n[145]===X.length?st=n[146]:(st=!X.length&&(0,$.jsx)(`p`,{role:`status`,className:`absolute top-2 left-3 text-sm text-muted-foreground`,children:`No visible files.`}),n[145]=X.length,n[146]=st);let ct;n[147]!==Je||n[148]!==ot||n[149]!==st?(ct=(0,$.jsxs)(`div`,{hidden:Je,className:`relative`,children:[ot,st]}),n[147]=Je,n[148]=ot,n[149]=st,n[150]=ct):ct=n[150];let lt;n[151]!==Se||n[152]!==Te||n[153]!==ke||n[154]!==ze||n[155]!==Ke||n[156]!==ct?(lt=(0,$.jsxs)(`div`,{hidden:Te,onKeyDownCapture:Se,children:[ke,ze,Ke,ct]}),n[151]=Se,n[152]=Te,n[153]=ke,n[154]=ze,n[155]=Ke,n[156]=ct,n[157]=lt):lt=n[157];let ut;return n[158]!==we||n[159]!==lt?(ut=(0,$.jsxs)($.Fragment,{children:[we,lt]}),n[158]=we,n[159]=lt,n[160]=ut):ut=n[160],ut},Qn=15,$n=e=>{let t=(0,Q.c)(35),{onRefresh:n,onHidden:r,showHiddenFiles:i,onCreateFile:a,onCreateNotebook:o,onCreateFolder:s,onCollapseAll:c,uploadDestinationPath:l,uploadDestinationLabel:u,onUpload:d}=e,f=`Upload files to ${u}`,p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(bt,{size:16}),t[0]=p):p=t[0];let m;t[1]===o?m=t[2]:(m=(0,$.jsx)(q,{content:`Add notebook`,children:(0,$.jsx)(J,{"data-testid":`file-explorer-add-notebook-button`,onClick:o,variant:`text`,size:`xs`,children:p})}),t[1]=o,t[2]=m);let h;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(Et,{size:16}),t[3]=h):h=t[3];let g;t[4]===a?g=t[5]:(g=(0,$.jsx)(q,{content:`Add file`,children:(0,$.jsx)(J,{"data-testid":`file-explorer-add-file-button`,onClick:a,variant:`text`,size:`xs`,children:h})}),t[4]=a,t[5]=g);let _;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,$.jsx)(Ot,{size:16}),t[6]=_):_=t[6];let v;t[7]===s?v=t[8]:(v=(0,$.jsx)(q,{content:`Add folder`,children:(0,$.jsx)(J,{"data-testid":`file-explorer-add-folder-button`,onClick:s,variant:`text`,size:`xs`,children:_})}),t[7]=s,t[8]=v);let y;t[9]!==d||t[10]!==l?(y=()=>d(l),t[9]=d,t[10]=l,t[11]=y):y=t[11];let b;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,$.jsx)(Ge,{size:16}),t[12]=b):b=t[12];let x;t[13]!==y||t[14]!==f?(x=(0,$.jsx)(J,{"data-testid":`file-explorer-upload-button`,"aria-label":f,onClick:y,variant:`text`,size:`xs`,children:b}),t[13]=y,t[14]=f,t[15]=x):x=t[15];let S;t[16]!==x||t[17]!==f?(S=(0,$.jsx)(q,{content:f,children:x}),t[16]=x,t[17]=f,t[18]=S):S=t[18];let C;t[19]===n?C=t[20]:(C=(0,$.jsx)(X,{"data-testid":`file-explorer-refresh-button`,onClick:n}),t[19]=n,t[20]=C);let w;t[21]!==r||t[22]!==i?(w=(0,$.jsx)(ue,{"data-testid":`file-explorer-hidden-files-button`,isVisible:i,onToggle:r,showTooltip:`Show hidden files`,hideTooltip:`Hide hidden files`}),t[21]=r,t[22]=i,t[23]=w):w=t[23];let T;t[24]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,$.jsx)(Tt,{size:16}),t[24]=T):T=t[24];let E;t[25]===c?E=t[26]:(E=(0,$.jsx)(q,{content:`Collapse all folders`,children:(0,$.jsx)(J,{"data-testid":`file-explorer-collapse-button`,onClick:c,variant:`text`,size:`xs`,children:T})}),t[25]=c,t[26]=E);let D;return t[27]!==S||t[28]!==C||t[29]!==w||t[30]!==E||t[31]!==m||t[32]!==g||t[33]!==v?(D=(0,$.jsxs)(`div`,{className:`flex items-center justify-end px-2 shrink-0`,children:[m,g,v,S,C,w,E]}),t[27]=S,t[28]=C,t[29]=w,t[30]=E,t[31]=m,t[32]=g,t[33]=v,t[34]=D):D=t[34],D},er=e=>{let t=(0,Q.c)(11),{node:n,onOpenMarimoFile:r}=e,i;t[0]!==n.data.isMarimoFile||t[1]!==n.data.isPrimaryRoot||t[2]!==r?(i=n.data.isMarimoFile&&n.data.isPrimaryRoot&&!A()&&(0,$.jsxs)(`span`,{"data-testid":`file-explorer-open-marimo-button`,className:`shrink-0 ml-2 text-sm hidden group-hover:inline hover:underline`,onClick:r,children:[`open `,(0,$.jsx)(_e,{className:`inline ml-1`,size:12})]}),t[0]=n.data.isMarimoFile,t[1]=n.data.isPrimaryRoot,t[2]=r,t[3]=i):i=t[3];let a;t[4]!==n.data.name||t[5]!==i?(a=(0,$.jsxs)(`span`,{className:`flex-1 overflow-hidden text-ellipsis`,children:[n.data.name,i]}),t[4]=n.data.name,t[5]=i,t[6]=a):a=t[6];let o=a,s;return t[7]!==o||t[8]!==n.data.isRoot||t[9]!==n.data.path?(s=n.data.isRoot?(0,$.jsx)(q,{content:n.data.path,children:o}):o,t[7]=o,t[8]=n.data.isRoot,t[9]=n.data.path,t[10]=s):s=t[10],s},tr=e=>{let t=(0,Q.c)(123),{node:n,style:a,dragHandle:o}=e,{openFile:s}=ae(),c=r(D),u;t[0]!==n.data.isDirectory||t[1]!==n.data.name?(u=n.data.isDirectory?`directory`:xe(n.data.name),t[0]=n.data.isDirectory,t[1]=n.data.name,t[2]=u):u=t[2];let d=u,f=Se[d],{openPrompt:p}=Ee(),{createNewCell:m}=l(),h=g(),_;t[3]!==m||t[4]!==h?(_=e=>{m({code:e,before:!1,cellId:h??`__end__`})},t[3]=m,t[4]=h,t[5]=_):_=t[5];let v=_,y=(0,Z.use)(Xn),b=y?.tree,S=n.data.isDirectory&&y?.externalDropDestinationPath===n.data.path;bn(n,S);let C;t[6]!==n.data.path||t[7]!==b?(C=async e=>{let t=b?.getPrimaryRelativePath(n.data.path);t!=null&&rr(e,t)},t[6]=n.data.path,t[7]=b,t[8]=C):C=t[8];let w=C,T;t[9]!==n.id||t[10]!==n.tree?(T=async e=>{e.stopPropagation(),e.preventDefault(),await n.tree.delete(n.id)},t[9]=n.id,t[10]=n.tree,t[11]=T):T=t[11];let E=T,O;t[12]!==n||t[13]!==p||t[14]!==b?(O=async()=>{n.open(),p({title:`Folder name`,onConfirm:async e=>{b?.createFolder(e,n.id)}})},t[12]=n,t[13]=p,t[14]=b,t[15]=O):O=t[15];let k=i(O),j;t[16]!==n||t[17]!==p||t[18]!==b?(j=async()=>{n.open(),p({title:`File name`,onConfirm:async e=>{b?.createFile({name:e,parentId:n.id})}})},t[16]=n,t[17]=p,t[18]=b,t[19]=j):j=t[19];let N=i(j),P;t[20]!==n||t[21]!==p||t[22]!==b?(P=async()=>{n.open(),p({title:`Notebook name`,onConfirm:async e=>{b?.createFile({name:e,parentId:n.id,type:`notebook`})}})},t[20]=n,t[21]=p,t[22]=b,t[23]=P):P=t[23];let F=i(P),R;t[24]!==n.data.name||t[25]!==n.id||t[26]!==b?(R=async()=>{b&&await b.copy(n.id,lt(n.data.name))},t[24]=n.data.name,t[25]=n.id,t[26]=b,t[27]=R):R=t[27];let z=i(R),B;t[28]!==n.data.isDirectory||t[29]!==n.data.path?(B=n.data.isDirectory?{[Vn]:n.data.path}:{},t[28]=n.data.isDirectory,t[29]=n.data.path,t[30]=B):B=t[30];let H;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(H=M(`relative flex h-full items-center cursor-pointer ml-1 text-muted-foreground whitespace-nowrap group`),t[31]=H):H=t[31];let U=!n.data.isRoot,W,G;t[32]===n?(W=t[33],G=t[34]):(W=()=>{n.data.isDirectory&&n.toggle()},G=e=>{e.stopPropagation(),n.data.isDirectory||n.activate()},t[32]=n,t[33]=W,t[34]=G);let K;t[35]===n.level?K=t[36]:(K=Array.from({length:n.level},hr),t[35]=n.level,t[36]=K);let ee;t[37]===n?ee=t[38]:(ee=(0,$.jsx)(nr,{node:n}),t[37]=n,t[38]=ee);let te;t[39]!==n.data.isDirectory||t[40]!==n.tree||t[41]!==n.willReceiveDrop?(te=n.willReceiveDrop&&n.tree.canDrop()&&n.data.isDirectory&&`bg-primary/15 hover:bg-primary/15 text-accent-foreground`,t[39]=n.data.isDirectory,t[40]=n.tree,t[41]=n.willReceiveDrop,t[42]=te):te=t[42];let ne=n.isSelected&&`bg-accent/60 hover:bg-accent/60 text-accent-foreground`,q=S&&`bg-primary/15 hover:bg-primary/15 text-accent-foreground`,J;t[43]!==te||t[44]!==ne||t[45]!==q?(J=M(`flex items-center pl-1 py-1 cursor-pointer hover:bg-accent/50 hover:text-accent-foreground rounded-l flex-1 overflow-hidden group`,te,ne,q),t[43]=te,t[44]=ne,t[45]=q,t[46]=J):J=t[46];let re;t[47]!==f||t[48]!==d||t[49]!==n.data.isMarimoFile||t[50]!==n.data.isRoot?(re=n.data.isRoot?(0,$.jsx)(kt,{className:`w-4 h-4 shrink-0 mr-2 text-primary`,strokeWidth:1.5}):n.data.isMarimoFile?(0,$.jsx)(xt,{className:`w-4 h-4 shrink-0 mr-2`,strokeWidth:1.5}):(0,$.jsx)(f,{className:M(`w-4 h-4 shrink-0 mr-2`,be[d]),strokeWidth:1.5}),t[47]=f,t[48]=d,t[49]=n.data.isMarimoFile,t[50]=n.data.isRoot,t[51]=re):re=t[51];let ie;t[52]!==w||t[53]!==n?(ie=n.isEditing?(0,$.jsx)(ze,{node:n}):(0,$.jsx)(er,{node:n,onOpenMarimoFile:w}),t[52]=w,t[53]=n,t[54]=ie):ie=t[54];let oe;t[55]===n?oe=t[56]:(oe=!n.data.isDirectory&&(0,$.jsxs)(I,{onSelect:()=>n.activate(),"data-testid":`file-explorer-open-file-menu-item`,children:[(0,$.jsx)(Mt,{className:`h-3.5 w-3.5 mr-2`}),`Open file`]}),t[55]=n,t[56]=oe);let Y;t[57]!==n.data.isDirectory||t[58]!==n.data.path||t[59]!==s?(Y=!n.data.isDirectory&&!A()&&(0,$.jsxs)(I,{onSelect:()=>{s({path:n.data.path})},"data-testid":`file-explorer-open-external-menu-item`,children:[(0,$.jsx)(_e,{className:`h-3.5 w-3.5 mr-2`}),`Open file in external editor`]}),t[57]=n.data.isDirectory,t[58]=n.data.path,t[59]=s,t[60]=Y):Y=t[60];let se;t[61]!==y||t[62]!==N||t[63]!==k||t[64]!==F||t[65]!==n.data.isDirectory||t[66]!==n.data.path?(se=n.data.isDirectory&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(I,{onSelect:()=>F(),"data-testid":`file-explorer-create-notebook-menu-item`,children:[(0,$.jsx)(bt,{className:`h-3.5 w-3.5 mr-2`}),`Create notebook`]}),(0,$.jsxs)(I,{onSelect:()=>N(),"data-testid":`file-explorer-create-file-menu-item`,children:[(0,$.jsx)(Et,{className:`h-3.5 w-3.5 mr-2`}),`Create file`]}),(0,$.jsxs)(I,{onSelect:()=>k(),"data-testid":`file-explorer-create-folder-menu-item`,children:[(0,$.jsx)(Ot,{className:`h-3.5 w-3.5 mr-2`}),`Create folder`]}),(0,$.jsxs)(I,{onSelect:()=>y?.uploadFiles(n.data.path),"data-testid":`file-explorer-upload-files-menu-item`,children:[(0,$.jsx)(Ge,{className:`h-3.5 w-3.5 mr-2`}),`Upload files here`]}),(0,$.jsx)(L,{})]}),t[61]=y,t[62]=N,t[63]=k,t[64]=F,t[65]=n.data.isDirectory,t[66]=n.data.path,t[67]=se):se=t[67];let le;t[68]!==z||t[69]!==n?(le=!n.data.isRoot&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(ke,{onSelect:()=>n.edit(),testId:`file-explorer-rename-menu-item`}),(0,$.jsx)(Re,{onSelect:z,testId:`file-explorer-duplicate-menu-item`})]}),t[68]=z,t[69]=n,t[70]=le):le=t[70];let ue;t[71]===n.data.path?ue=t[72]:(ue=async()=>{await $e(n.data.path),qe({title:`Copied to clipboard`})},t[71]=n.data.path,t[72]=ue);let de;t[73]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,$.jsx)(At,{className:pe}),t[73]=de):de=t[73];let fe;t[74]===ue?fe=t[75]:(fe=(0,$.jsxs)(I,{onSelect:ue,"data-testid":`file-explorer-copy-path-menu-item`,children:[de,`Copy path`]}),t[74]=ue,t[75]=fe);let X;t[76]!==n.data.isPrimaryRoot||t[77]!==n.data.isRoot||t[78]!==n.data.path||t[79]!==b?(X=b&&n.data.isPrimaryRoot&&!n.data.isRoot&&(0,$.jsxs)(I,{onSelect:async()=>{let e=b.getPrimaryRelativePath(n.data.path);e!==null&&(await $e(e),qe({title:`Copied to clipboard`}))},"data-testid":`file-explorer-copy-relative-path-menu-item`,children:[(0,$.jsx)(At,{className:`h-3.5 w-3.5 mr-2`}),`Copy relative path`]}),t[76]=n.data.isPrimaryRoot,t[77]=n.data.isRoot,t[78]=n.data.path,t[79]=b,t[80]=X):X=t[80];let me;t[81]!==d||t[82]!==v||t[83]!==n.data?(me=!n.data.isRoot&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(L,{}),(0,$.jsxs)(I,{onSelect:()=>{let{path:e}=n.data,t=Rn[d](e);v(t)},"data-testid":`file-explorer-insert-snippet-menu-item`,children:[(0,$.jsx)(ce,{className:`h-3.5 w-3.5 mr-2`}),`Insert snippet for reading file`]}),(0,$.jsxs)(I,{onSelect:async()=>{qe({title:`Copied to clipboard`,description:`Code to open the file has been copied to your clipboard. You can also drag and drop this file into the editor`});let{path:e}=n.data,t=Rn[d](e);await $e(t)},"data-testid":`file-explorer-copy-snippet-menu-item`,children:[(0,$.jsx)(x,{className:`h-3.5 w-3.5 mr-2`}),`Copy snippet for reading file`]})]}),t[81]=d,t[82]=v,t[83]=n.data,t[84]=me):me=t[84];let he;t[85]!==w||t[86]!==n.data.isMarimoFile||t[87]!==n.data.isPrimaryRoot?(he=n.data.isMarimoFile&&n.data.isPrimaryRoot&&!A()&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(L,{}),(0,$.jsxs)(I,{onSelect:w,"data-testid":`file-explorer-open-notebook-menu-item`,children:[(0,$.jsx)(jt,{className:`h-3.5 w-3.5 mr-2`}),`Open notebook`]})]}),t[85]=w,t[86]=n.data.isMarimoFile,t[87]=n.data.isPrimaryRoot,t[88]=he):he=t[88];let ge;t[89]!==c||t[90]!==n.data.isDirectory||t[91]!==n.data.name||t[92]!==n.data.path?(ge=!n.data.isDirectory&&!c&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(L,{}),(0,$.jsxs)(I,{onSelect:async()=>{await xn(n.data.path,n.data.name)},"data-testid":`file-explorer-download-menu-item`,children:[(0,$.jsx)(V,{className:`h-3.5 w-3.5 mr-2`}),`Download`]})]}),t[89]=c,t[90]=n.data.isDirectory,t[91]=n.data.name,t[92]=n.data.path,t[93]=ge):ge=t[93];let ve;t[94]!==E||t[95]!==n.data.isRoot?(ve=!n.data.isRoot&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(L,{}),(0,$.jsx)(Ie,{onSelect:E,testId:`file-explorer-delete-menu-item`})]}),t[94]=E,t[95]=n.data.isRoot,t[96]=ve):ve=t[96];let ye;t[97]!==oe||t[98]!==Y||t[99]!==se||t[100]!==le||t[101]!==fe||t[102]!==X||t[103]!==me||t[104]!==he||t[105]!==ge||t[106]!==ve?(ye=(0,$.jsxs)(Ne,{testId:`file-explorer-more-button`,iconClassName:`w-5 h-5`,children:[oe,Y,se,le,fe,X,me,he,ge,ve]}),t[97]=oe,t[98]=Y,t[99]=se,t[100]=le,t[101]=fe,t[102]=X,t[103]=me,t[104]=he,t[105]=ge,t[106]=ve,t[107]=ye):ye=t[107];let Ce;t[108]!==J||t[109]!==re||t[110]!==ie||t[111]!==ye?(Ce=(0,$.jsxs)(`span`,{className:J,children:[re,ie,ye]}),t[108]=J,t[109]=re,t[110]=ie,t[111]=ye,t[112]=Ce):Ce=t[112];let we;return t[113]!==o||t[114]!==a||t[115]!==U||t[116]!==W||t[117]!==G||t[118]!==K||t[119]!==ee||t[120]!==Ce||t[121]!==B?(we=(0,$.jsxs)(`div`,{style:a,ref:o,...B,className:H,draggable:U,onClick:W,onDoubleClick:G,children:[K,ee,Ce]}),t[113]=o,t[114]=a,t[115]=U,t[116]=W,t[117]=G,t[118]=K,t[119]=ee,t[120]=Ce,t[121]=B,t[122]=we):we=t[122],we},nr=e=>{let t=(0,Q.c)(6),{node:n}=e;if(!n.data.isDirectory){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`span`,{className:`w-4 h-4 shrink-0`}),t[0]=e):e=t[0],e}if(n.data.loadState===`loading`){let e=`Loading ${n.data.name}`,r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(Oe,{size:`small`}),t[1]=r):r=t[1];let i;return t[2]===e?i=t[3]:(i=(0,$.jsx)(`span`,{role:`status`,"aria-label":e,className:`w-4 h-4 shrink-0`,children:r}),t[2]=e,t[3]=i),i}let r;return t[4]===n.isOpen?r=t[5]:(r=(0,$.jsx)(de,{isExpanded:n.isOpen,className:`w-4 h-4`}),t[4]=n.isOpen,t[5]=r),r};function rr(e,t){e.stopPropagation(),e.preventDefault(),St(t)}function ir(e,t){return e.getDisplayPath(t)}function ar(e,t){if(t)return e;let n=[];for(let r of e){if(!r.isRoot&&or(r.name))continue;let e=r;if(r.children){let n=ar(r.children,t);n!==r.children&&(e={...r,children:n})}n.push(e)}return n}function or(e){return!!e.startsWith(`.`)}function sr(e,t){return e.some(e=>e.id===t||(e.children?sr(e.children,t):!1))}function cr(e){let t=(0,Q.c)(22),{mouse:n,id:r,isDragging:i,tree:a}=e,o,s,c;if(t[0]!==r||t[1]!==i||t[2]!==n||t[3]!==a){c=Symbol.for(`react.early_return_sentinel`);bb0:{if(o=a?.get(r),!i||!n||!o){c=null;break bb0}s=o.data.isDirectory?`directory`:xe(o.data.name)}t[0]=r,t[1]=i,t[2]=n,t[3]=a,t[4]=o,t[5]=s,t[6]=c}else o=t[4],s=t[5],c=t[6];if(c!==Symbol.for(`react.early_return_sentinel`))return c;let l=s,u=Se[l],d=`translate3d(${n.x+12}px, ${n.y+12}px, 0)`,f;t[7]===d?f=t[8]:(f={transform:d},t[7]=d,t[8]=f);let p=be[l],m;t[9]===p?m=t[10]:(m=M(`h-4 w-4 shrink-0`,p),t[9]=p,t[10]=m);let h;t[11]!==u||t[12]!==m?(h=(0,$.jsx)(u,{className:m}),t[11]=u,t[12]=m,t[13]=h):h=t[13];let g;t[14]===o.data.name?g=t[15]:(g=(0,$.jsx)(`span`,{className:`truncate`,children:o.data.name}),t[14]=o.data.name,t[15]=g);let _;t[16]!==h||t[17]!==g?(_=(0,$.jsxs)(`div`,{className:`flex max-w-72 items-center gap-2 rounded-md border border-border bg-popover px-3 py-2 text-sm text-popover-foreground shadow-md`,children:[h,g]}),t[16]=h,t[17]=g,t[18]=_):_=t[18];let v;return t[19]!==f||t[20]!==_?(v=(0,_n.createPortal)((0,$.jsx)(`div`,{className:`pointer-events-none fixed left-0 top-0 z-[1000] opacity-[0.85]`,style:f,children:_}),document.body),t[19]=f,t[20]=_,t[21]=v):v=t[21],v}function lr(e){return e.isDirectory?e.children:null}function ur(e){return e.isRoot}function dr(){return null}function fr(e){return e.isRoot}function pr(e){return e.data.isRoot}function mr(e){let{parentNode:t,dragNodes:n}=e;return n.some(pr)||(t?!t.data.isDirectory:!1)}function hr(e,t){return(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`pointer-events-none absolute inset-y-0 border-l border-border`,style:{left:t*Qn+8}},t)}var gr=e=>{let t=(0,Q.c)(44),{height:n}=e,i=r(Fn),[a,o]=(0,Z.useState)(null),s;t[0]===i?s=t[1]:(s=e=>_r(e,i.getPrimaryRootPath()),t[0]=i,t[1]=s);let c=s,l;t[2]===i?l=t[3]:(l=e=>i.refreshPath(e),t[2]=i,t[3]=l);let u=l,d;t[4]===i?d=t[5]:(d=e=>ir(i,e),t[4]=i,t[5]=d);let f,p;t[6]===c?(f=t[7],p=t[8]):(f=e=>o(c(e)),p=e=>o(c(e)),t[6]=c,t[7]=f,t[8]=p);let m,h;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>o(null),h=()=>o(null),t[9]=m,t[10]=h):(m=t[9],h=t[10]);let g;t[11]!==c||t[12]!==u||t[13]!==d||t[14]!==f||t[15]!==p?(g={noClick:!0,noKeyboard:!0,destinationPath:c,getDestinationLabel:d,refreshDestination:u,onDragEnter:f,onDragOver:p,onDragLeave:m,onUploadStart:h},t[11]=c,t[12]=u,t[13]=d,t[14]=f,t[15]=p,t[16]=g):g=t[16];let{getRootProps:_,getInputProps:v,isDragActive:y}=Hn(g),b;t[17]!==a||t[18]!==i?(b=a??i.getPrimaryRootPath(),t[17]=a,t[18]=i,t[19]=b):b=t[19];let x=b,S;t[20]!==x||t[21]!==i?(S=ir(i,x),t[20]=x,t[21]=i,t[22]=S):S=t[22];let C=S,w;t[23]===_?w=t[24]:(w=_(),t[23]=_,t[24]=w);let T;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(T=M(`flex flex-col overflow-hidden relative`),t[25]=T):T=t[25];let E;t[26]===n?E=t[27]:(E={height:n},t[26]=n,t[27]=E);let D;t[28]===v?D=t[29]:(D=v(),t[28]=v,t[29]=D);let O;t[30]===D?O=t[31]:(O=(0,$.jsx)(`input`,{...D}),t[30]=D,t[31]=O);let k;t[32]!==C||t[33]!==y?(k=y&&(0,$.jsx)(`div`,{className:`absolute inset-0 flex items-start justify-center pt-3 bg-accent/20 z-10 border-2 border-dashed border-primary/90 rounded-lg pointer-events-none`,children:(0,$.jsxs)(`span`,{className:`px-3 py-1.5 rounded-md bg-background/95 border shadow-sm text-sm font-semibold text-primary`,children:[`Drop files into `,C]})}),t[32]=C,t[33]=y,t[34]=k):k=t[34];let A=y?x:null,j;t[35]!==n||t[36]!==A?(j=(0,$.jsx)(Zn,{height:n,externalDropDestinationPath:A}),t[35]=n,t[36]=A,t[37]=j):j=t[37];let N;return t[38]!==w||t[39]!==E||t[40]!==O||t[41]!==k||t[42]!==j?(N=(0,$.jsx)(gn,{children:(0,$.jsxs)(`div`,{...w,className:T,style:E,children:[O,k,j]})}),t[38]=w,t[39]=E,t[40]=O,t[41]=k,t[42]=j,t[43]=N):N=t[43],N};function _r(e,t){return Array.isArray(e)?t:Gn(e.target,t)}var vr=()=>{let e=(0,Q.c)(40),{ref:n,height:i}=st(),a=i===void 0?500:i,[o,s]=t(Ct),c=r(d).length,l=h(`storage`),u;bb0:{if(!o.hasUserInteracted&&c>0){if(o.openSections.includes(`remote-storage`)){u=o.openSections;break bb0}let t;e[0]===o.openSections?t=e[1]:(t=[...o.openSections,`remote-storage`],e[0]=o.openSections,e[1]=t),u=t;break bb0}u=o.openSections}let f=u,p;e[2]===s?p=e[3]:(p=e=>{s({openSections:e,hasUserInteracted:!0})},e[2]=s,e[3]=p);let m=p,g=a-66,_;e[4]===f?_=e[5]:(_=f.includes(`remote-storage`),e[4]=f,e[5]=_);let v=_,y=l.length>0,b;e[6]!==f||e[7]!==v?(b=v&&f.includes(`files`),e[6]=f,e[7]=v,e[8]=b):b=e[8];let x=b,S;e[9]!==g||e[10]!==x?(S=x?Math.round(g*.4):g,e[9]=g,e[10]=x,e[11]=S):S=e[11];let C=S,w=Math.max(200,x?g-C:g),T;e[12]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,$.jsx)(we,{className:`w-4 h-4`}),e[12]=T):T=e[12];let E;e[13]===c?E=e[14]:(E=c>0&&(0,$.jsx)(pt,{children:c}),e[13]=c,e[14]=E);let D;e[15]!==l.length||e[16]!==y?(D=y&&(0,$.jsx)(yt,{count:l.length,type:`storage`}),e[15]=l.length,e[16]=y,e[17]=D):D=e[17];let O;e[18]!==E||e[19]!==D?(O=(0,$.jsxs)(mt,{children:[T,` Remote storage`,E,D]}),e[18]=E,e[19]=D,e[20]=O):O=e[20];let k;e[21]===C?k=e[22]:(k={maxHeight:C},e[21]=C,e[22]=k);let A;e[23]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,$.jsx)(ln,{}),e[23]=A):A=e[23];let j;e[24]===k?j=e[25]:(j=(0,$.jsx)(ht,{className:`overflow-auto`,style:k,children:A}),e[24]=k,e[25]=j);let M;e[26]!==j||e[27]!==O?(M=(0,$.jsxs)(_t,{value:`remote-storage`,children:[O,j]}),e[26]=j,e[27]=O,e[28]=M):M=e[28];let N;e[29]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,$.jsxs)(mt,{children:[(0,$.jsx)(Ce,{className:`w-4 h-4`}),`Files`]}),e[29]=N):N=e[29];let F;e[30]===w?F=e[31]:(F=(0,$.jsxs)(_t,{value:`files`,children:[N,(0,$.jsx)(ht,{children:(0,$.jsx)(gr,{height:w})})]}),e[30]=w,e[31]=F);let I;e[32]!==m||e[33]!==f||e[34]!==M||e[35]!==F?(I=(0,$.jsxs)(P,{type:`multiple`,value:f,onValueChange:m,children:[M,F]}),e[32]=m,e[33]=f,e[34]=M,e[35]=F,e[36]=I):I=e[36];let L;return e[37]!==n||e[38]!==I?(L=(0,$.jsx)(`div`,{ref:n,className:`h-full overflow-auto`,children:I}),e[37]=n,e[38]=I,e[39]=L):L=e[39],L};export{vr as default,_r as getUploadDestinationForEvent};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Qi as e}from"./cells-
|
|
1
|
+
import{Qi as e}from"./cells-Cp-G34Rz.js";import{t}from"./cn-ldLVeaqm.js";import{t as n}from"./jsx-runtime-B74pBk57.js";import{t as r}from"./createLucideIcon-B7HeEoG2.js";import{n as i,t as a}from"./file-headphone-rFCxFRI8.js";import{t as o}from"./file-DF8n85RA.js";import{t as s}from"./image-ab13yGv4.js";var c=r(`file-code`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12.5 8 15l2 2.5`,key:`1tg20x`}],[`path`,{d:`m14 12.5 2 2.5-2 2.5`,key:`yinavb`}]]),l=r(`file-play`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M15.033 13.44a.647.647 0 0 1 0 1.12l-4.065 2.352a.645.645 0 0 1-.968-.56v-4.704a.645.645 0 0 1 .967-.56z`,key:`1tzo1f`}]]),u=r(`file-spreadsheet`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M8 13h2`,key:`yr2amv`}],[`path`,{d:`M14 13h2`,key:`un5t4a`}],[`path`,{d:`M8 17h2`,key:`2yhykz`}],[`path`,{d:`M14 17h2`,key:`10kma7`}]]),d=r(`folder-archive`,[[`circle`,{cx:`15`,cy:`19`,r:`2`,key:`u2pros`}],[`path`,{d:`M20.9 19.8A2 2 0 0 0 22 18V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2h5.1`,key:`1jj40k`}],[`path`,{d:`M15 11v-1`,key:`cntcp`}],[`path`,{d:`M15 17v-2`,key:`1279jj`}]]),f=r(`folder`,[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),p=n(),m={py:`python`,txt:`text`,md:`text`,qmd:`text`,log:`text`,png:`image`,jpg:`image`,jpeg:`image`,gif:`image`,svg:`image`,webp:`image`,csv:`data`,parquet:`data`,arrow:`data`,xlsx:`data`,json:`json`,js:`code`,ts:`code`,tsx:`code`,html:`code`,css:`code`,toml:`code`,yaml:`code`,yml:`code`,wasm:`code`,mp3:`audio`,m4a:`audio`,ogg:`audio`,wav:`audio`,mp4:`video`,m4v:`video`,mpeg:`video`,webm:`video`,mkv:`video`,pdf:`pdf`,zip:`zip`,tar:`zip`,gz:`zip`};function h(e){let t=e.split(`.`).pop()?.toLowerCase();return t?m[t]??`unknown`:`unknown`}var g={directory:f,python:c,code:c,json:i,text:e,image:s,audio:a,video:l,data:u,pdf:e,zip:d,unknown:o},_={directory:`text-amber-500`,python:`text-blue-500`,code:`text-blue-500`,json:`text-blue-500`,text:`text-muted-foreground`,image:`text-purple-500`,audio:`text-orange-500`,video:`text-orange-500`,data:`text-green-500`,pdf:`text-red-500`,zip:`text-muted-foreground`,unknown:`text-muted-foreground`};function v(e,n){let r=h(e),i=g[r],a=_[r];return(0,p.jsx)(i,{className:t(`h-3.5 w-3.5 shrink-0`,a,n)})}export{f as a,v as i,_ as n,h as r,g as t};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{a as e,r as t,t as n}from"./rolldown-runtime-B0Z9INg1.js";import{t as r}from"./useEvent-xfs0Sn4r.js";import{t as i}from"./react-CBDbhulC.js";import{t as a}from"./compiler-runtime-CYIjoINj.js";import{_ as o}from"./useEventListener-92uWqz-P.js";import{t as s}from"./jsx-runtime-B74pBk57.js";import{o as c}from"./alert-dialog-CA-2mBs3.js";import{a as l}from"./tabs-Cy1qXLzH.js";import{a as u,p as d,r as f,t as p}from"./dropdown-menu-C40jM9o4.js";import{r as m}from"./requests-C6_IaFh7.js";import{t as h}from"./createLucideIcon-B7HeEoG2.js";import{n as g,t as _}from"./tree-actions-CG5g7aUQ.js";import{t as v}from"./copy-BMXKNElG.js";import{b as ee}from"./write-secret-modal-D6zoZgLY.js";import{t as y}from"./trash-2-D_HX-0qx.js";import{t as b}from"./use-toast-DpWHUGuF.js";import{t as te}from"./paths-zcL04qUW.js";import{a as ne}from"./errors-DzO-nXy-.js";import{t as re}from"./extends-CvVTau-c.js";import{i as ie,n as ae,r as x}from"./pathUtils-Cryrlpma.js";import{n as oe}from"./semaphore-BjoL5P0h.js";var se=h(`pen-line`,[[`path`,{d:`M13 21h8`,key:`1jsn5i`}],[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}]]),S=e(i(),1),C=s(),ce=l();function le(e,t){return le=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},le(e,t)}function ue(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,le(e,t)}function de(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}var fe=n(((e,t)=>{t.exports=function e(t,n){if(t===n)return!0;if(t&&n&&typeof t==`object`&&typeof n==`object`){if(t.constructor!==n.constructor)return!1;var r,i,a;if(Array.isArray(t)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(!e(t[i],n[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(a=Object.keys(t),r=a.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!Object.prototype.hasOwnProperty.call(n,a[i]))return!1;for(i=r;i--!==0;){var o=a[i];if(!e(t[o],n[o]))return!1}return!0}return t!==t&&n!==n}})),pe=(0,S.createContext)({dragDropManager:void 0});function w(e){return`Minified Redux error #`+e+`; visit https://redux.js.org/Errors?code=`+e+` for the full message or use the non-minified dev environment for full errors. `}var me=(function(){return typeof Symbol==`function`&&Symbol.observable||`@@observable`})(),he=function(){return Math.random().toString(36).substring(7).split(``).join(`.`)},ge={INIT:`@@redux/INIT`+he(),REPLACE:`@@redux/REPLACE`+he(),PROBE_UNKNOWN_ACTION:function(){return`@@redux/PROBE_UNKNOWN_ACTION`+he()}};function _e(e){if(typeof e!=`object`||!e)return!1;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function ve(e,t,n){var r;if(typeof t==`function`&&typeof n==`function`||typeof n==`function`&&typeof arguments[3]==`function`)throw Error(w(0));if(typeof t==`function`&&n===void 0&&(n=t,t=void 0),n!==void 0){if(typeof n!=`function`)throw Error(w(1));return n(ve)(e,t)}if(typeof e!=`function`)throw Error(w(2));var i=e,a=t,o=[],s=o,c=!1;function l(){s===o&&(s=o.slice())}function u(){if(c)throw Error(w(3));return a}function d(e){if(typeof e!=`function`)throw Error(w(4));if(c)throw Error(w(5));var t=!0;return l(),s.push(e),function(){if(t){if(c)throw Error(w(6));t=!1,l();var n=s.indexOf(e);s.splice(n,1),o=null}}}function f(e){if(!_e(e))throw Error(w(7));if(e.type===void 0)throw Error(w(8));if(c)throw Error(w(9));try{c=!0,a=i(a,e)}finally{c=!1}for(var t=o=s,n=0;n<t.length;n++){var r=t[n];r()}return e}function p(e){if(typeof e!=`function`)throw Error(w(10));i=e,f({type:ge.REPLACE})}function m(){var e,t=d;return e={subscribe:function(e){if(typeof e!=`object`||!e)throw Error(w(11));function n(){e.next&&e.next(u())}return n(),{unsubscribe:t(n)}}},e[me]=function(){return this},e}return f({type:ge.INIT}),r={dispatch:f,subscribe:d,getState:u,replaceReducer:p},r[me]=m,r}function T(e,t,...n){if(ye()&&t===void 0)throw Error(`invariant requires an error message argument`);if(!e){let e;if(t===void 0)e=Error(`Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.`);else{let r=0;e=Error(t.replace(/%s/g,function(){return n[r++]})),e.name=`Invariant Violation`}throw e.framesToPop=1,e}}function ye(){return typeof process<`u`&&!0}function be(e,t,n){return t.split(`.`).reduce((e,t)=>e&&e[t]?e[t]:n||null,e)}function xe(e,t){return e.filter(e=>e!==t)}function Se(e){return typeof e==`object`}function Ce(e,t){let n=new Map,r=e=>{n.set(e,n.has(e)?n.get(e)+1:1)};e.forEach(r),t.forEach(r);let i=[];return n.forEach((e,t)=>{e===1&&i.push(t)}),i}function we(e,t){return e.filter(e=>t.indexOf(e)>-1)}var Te=`dnd-core/INIT_COORDS`,E=`dnd-core/BEGIN_DRAG`,Ee=`dnd-core/PUBLISH_DRAG_SOURCE`,D=`dnd-core/HOVER`,O=`dnd-core/DROP`,k=`dnd-core/END_DRAG`;function De(e,t){return{type:Te,payload:{sourceClientOffset:t||null,clientOffset:e||null}}}var Oe={type:Te,payload:{clientOffset:null,sourceClientOffset:null}};function ke(e){return function(t=[],n={publishSource:!0}){let{publishSource:r=!0,clientOffset:i,getSourceClientOffset:a}=n,o=e.getMonitor(),s=e.getRegistry();e.dispatch(De(i)),Ae(t,o,s);let c=Ne(t,o);if(c==null){e.dispatch(Oe);return}let l=null;if(i){if(!a)throw Error(`getSourceClientOffset must be defined`);je(a),l=a(c)}e.dispatch(De(i,l));let u=s.getSource(c).beginDrag(o,c);return u==null?void 0:(Me(u),s.pinSource(c),{type:E,payload:{itemType:s.getSourceType(c),item:u,sourceId:c,clientOffset:i||null,sourceClientOffset:l||null,isSourcePublic:!!r}})}}function Ae(e,t,n){T(!t.isDragging(),`Cannot call beginDrag while dragging.`),e.forEach(function(e){T(n.getSource(e),`Expected sourceIds to be registered.`)})}function je(e){T(typeof e==`function`,`When clientOffset is provided, getSourceClientOffset must be a function.`)}function Me(e){T(Se(e),`Item must be an object.`)}function Ne(e,t){let n=null;for(let r=e.length-1;r>=0;r--)if(t.canDragSource(e[r])){n=e[r];break}return n}function Pe(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Fe(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t],r=Object.keys(n);typeof Object.getOwnPropertySymbols==`function`&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){Pe(e,t,n[t])})}return e}function Ie(e){return function(t={}){let n=e.getMonitor(),r=e.getRegistry();Le(n),Be(n).forEach((i,a)=>{let o={type:O,payload:{dropResult:Fe({},t,Re(i,a,r,n))}};e.dispatch(o)})}}function Le(e){T(e.isDragging(),`Cannot call drop while not dragging.`),T(!e.didDrop(),`Cannot call drop twice during one drag operation.`)}function Re(e,t,n,r){let i=n.getTarget(e),a=i?i.drop(r,e):void 0;return ze(a),a===void 0&&(a=t===0?{}:r.getDropResult()),a}function ze(e){T(e===void 0||Se(e),`Drop result must either be an object or undefined.`)}function Be(e){let t=e.getTargetIds().filter(e.canDropOnTarget,e);return t.reverse(),t}function Ve(e){return function(){let t=e.getMonitor(),n=e.getRegistry();He(t);let r=t.getSourceId();return r!=null&&(n.getSource(r,!0).endDrag(t,r),n.unpinSource()),{type:k}}}function He(e){T(e.isDragging(),`Cannot call endDrag while not dragging.`)}function Ue(e,t){return t===null?e===null:Array.isArray(e)?e.some(e=>e===t):e===t}function We(e){return function(t,{clientOffset:n}={}){Ge(t);let r=t.slice(0),i=e.getMonitor(),a=e.getRegistry();return qe(r,a,i.getItemType()),Ke(r,i,a),Je(r,i,a),{type:D,payload:{targetIds:r,clientOffset:n||null}}}}function Ge(e){T(Array.isArray(e),`Expected targetIds to be an array.`)}function Ke(e,t,n){T(t.isDragging(),`Cannot call hover while not dragging.`),T(!t.didDrop(),`Cannot call hover after drop.`);for(let t=0;t<e.length;t++){let r=e[t];T(e.lastIndexOf(r)===t,`Expected targetIds to be unique in the passed array.`),T(n.getTarget(r),`Expected targetIds to be registered.`)}}function qe(e,t,n){for(let r=e.length-1;r>=0;r--){let i=e[r];Ue(t.getTargetType(i),n)||e.splice(r,1)}}function Je(e,t,n){e.forEach(function(e){n.getTarget(e).hover(t,e)})}function Ye(e){return function(){if(e.getMonitor().isDragging())return{type:Ee}}}function Xe(e){return{beginDrag:ke(e),publishDragSource:Ye(e),hover:We(e),drop:Ie(e),endDrag:Ve(e)}}var Ze=class{receiveBackend(e){this.backend=e}getMonitor(){return this.monitor}getBackend(){return this.backend}getRegistry(){return this.monitor.registry}getActions(){let e=this,{dispatch:t}=this.store;function n(n){return(...r)=>{let i=n.apply(e,r);i!==void 0&&t(i)}}let r=Xe(this);return Object.keys(r).reduce((e,t)=>{let i=r[t];return e[t]=n(i),e},{})}dispatch(e){this.store.dispatch(e)}constructor(e,t){this.isSetUp=!1,this.handleRefCountChange=()=>{let e=this.store.getState().refCount>0;this.backend&&(e&&!this.isSetUp?(this.backend.setup(),this.isSetUp=!0):!e&&this.isSetUp&&(this.backend.teardown(),this.isSetUp=!1))},this.store=e,this.monitor=t,e.subscribe(this.handleRefCountChange)}};function Qe(e,t){return{x:e.x+t.x,y:e.y+t.y}}function $e(e,t){return{x:e.x-t.x,y:e.y-t.y}}function et(e){let{clientOffset:t,initialClientOffset:n,initialSourceClientOffset:r}=e;return!t||!n||!r?null:$e(Qe(t,r),n)}function tt(e){let{clientOffset:t,initialClientOffset:n}=e;return!t||!n?null:$e(t,n)}var A=[],nt=[];A.__IS_NONE__=!0,nt.__IS_ALL__=!0;function rt(e,t){return e===A?!1:e===nt||t===void 0||we(t,e).length>0}var it=class{subscribeToStateChange(e,t={}){let{handlerIds:n}=t;T(typeof e==`function`,`listener must be a function.`),T(n===void 0||Array.isArray(n),`handlerIds, when specified, must be an array of strings.`);let r=this.store.getState().stateId;return this.store.subscribe(()=>{let t=this.store.getState(),i=t.stateId;try{i===r||i===r+1&&!rt(t.dirtyHandlerIds,n)||e()}finally{r=i}})}subscribeToOffsetChange(e){T(typeof e==`function`,`listener must be a function.`);let t=this.store.getState().dragOffset;return this.store.subscribe(()=>{let n=this.store.getState().dragOffset;n!==t&&(t=n,e())})}canDragSource(e){if(!e)return!1;let t=this.registry.getSource(e);return T(t,`Expected to find a valid source. sourceId=${e}`),!this.isDragging()&&t.canDrag(this,e)}canDropOnTarget(e){if(!e)return!1;let t=this.registry.getTarget(e);return T(t,`Expected to find a valid target. targetId=${e}`),!this.isDragging()||this.didDrop()?!1:Ue(this.registry.getTargetType(e),this.getItemType())&&t.canDrop(this,e)}isDragging(){return!!this.getItemType()}isDraggingSource(e){if(!e)return!1;let t=this.registry.getSource(e,!0);return T(t,`Expected to find a valid source. sourceId=${e}`),!this.isDragging()||!this.isSourcePublic()||this.registry.getSourceType(e)!==this.getItemType()?!1:t.isDragging(this,e)}isOverTarget(e,t={shallow:!1}){if(!e)return!1;let{shallow:n}=t;if(!this.isDragging())return!1;let r=this.registry.getTargetType(e),i=this.getItemType();if(i&&!Ue(r,i))return!1;let a=this.getTargetIds();if(!a.length)return!1;let o=a.indexOf(e);return n?o===a.length-1:o>-1}getItemType(){return this.store.getState().dragOperation.itemType}getItem(){return this.store.getState().dragOperation.item}getSourceId(){return this.store.getState().dragOperation.sourceId}getTargetIds(){return this.store.getState().dragOperation.targetIds}getDropResult(){return this.store.getState().dragOperation.dropResult}didDrop(){return this.store.getState().dragOperation.didDrop}isSourcePublic(){return!!this.store.getState().dragOperation.isSourcePublic}getInitialClientOffset(){return this.store.getState().dragOffset.initialClientOffset}getInitialSourceClientOffset(){return this.store.getState().dragOffset.initialSourceClientOffset}getClientOffset(){return this.store.getState().dragOffset.clientOffset}getSourceClientOffset(){return et(this.store.getState().dragOffset)}getDifferenceFromInitialOffset(){return tt(this.store.getState().dragOffset)}constructor(e,t){this.store=e,this.registry=t}},at=typeof global<`u`?global:self,ot=at.MutationObserver||at.WebKitMutationObserver;function st(e){return function(){let t=setTimeout(r,0),n=setInterval(r,50);function r(){clearTimeout(t),clearInterval(n),e()}}}function ct(e){let t=1,n=new ot(e),r=document.createTextNode(``);return n.observe(r,{characterData:!0}),function(){t=-t,r.data=t}}var lt=typeof ot==`function`?ct:st,ut=class{enqueueTask(e){let{queue:t,requestFlush:n}=this;t.length||(n(),this.flushing=!0),t[t.length]=e}constructor(){this.queue=[],this.pendingErrors=[],this.flushing=!1,this.index=0,this.capacity=1024,this.flush=()=>{let{queue:e}=this;for(;this.index<e.length;){let t=this.index;if(this.index++,e[t].call(),this.index>this.capacity){for(let t=0,n=e.length-this.index;t<n;t++)e[t]=e[t+this.index];e.length-=this.index,this.index=0}}e.length=0,this.index=0,this.flushing=!1},this.registerPendingError=e=>{this.pendingErrors.push(e),this.requestErrorThrow()},this.requestFlush=lt(this.flush),this.requestErrorThrow=st(()=>{if(this.pendingErrors.length)throw this.pendingErrors.shift()})}},dt=class{call(){try{this.task&&this.task()}catch(e){this.onError(e)}finally{this.task=null,this.release(this)}}constructor(e,t){this.onError=e,this.release=t,this.task=null}},ft=class{create(e){let t=this.freeTasks,n=t.length?t.pop():new dt(this.onError,e=>t[t.length]=e);return n.task=e,n}constructor(e){this.onError=e,this.freeTasks=[]}},pt=new ut,mt=new ft(pt.registerPendingError);function ht(e){pt.enqueueTask(mt.create(e))}var gt=`dnd-core/ADD_SOURCE`,_t=`dnd-core/ADD_TARGET`,vt=`dnd-core/REMOVE_SOURCE`,j=`dnd-core/REMOVE_TARGET`;function yt(e){return{type:gt,payload:{sourceId:e}}}function bt(e){return{type:_t,payload:{targetId:e}}}function xt(e){return{type:vt,payload:{sourceId:e}}}function St(e){return{type:j,payload:{targetId:e}}}function Ct(e){T(typeof e.canDrag==`function`,`Expected canDrag to be a function.`),T(typeof e.beginDrag==`function`,`Expected beginDrag to be a function.`),T(typeof e.endDrag==`function`,`Expected endDrag to be a function.`)}function wt(e){T(typeof e.canDrop==`function`,`Expected canDrop to be a function.`),T(typeof e.hover==`function`,`Expected hover to be a function.`),T(typeof e.drop==`function`,`Expected beginDrag to be a function.`)}function Tt(e,t){if(t&&Array.isArray(e)){e.forEach(e=>Tt(e,!1));return}T(typeof e==`string`||typeof e==`symbol`,t?`Type can only be a string, a symbol, or an array of either.`:`Type can only be a string or a symbol.`)}var M;(function(e){e.SOURCE=`SOURCE`,e.TARGET=`TARGET`})(M||={});var Et=0;function Dt(){return Et++}function Ot(e){let t=Dt().toString();switch(e){case M.SOURCE:return`S${t}`;case M.TARGET:return`T${t}`;default:throw Error(`Unknown Handler Role: ${e}`)}}function kt(e){switch(e[0]){case`S`:return M.SOURCE;case`T`:return M.TARGET;default:throw Error(`Cannot parse handler ID: ${e}`)}}function At(e,t){let n=e.entries(),r=!1;do{let{done:e,value:[,i]}=n.next();if(i===t)return!0;r=!!e}while(!r);return!1}var jt=class{addSource(e,t){Tt(e),Ct(t);let n=this.addHandler(M.SOURCE,e,t);return this.store.dispatch(yt(n)),n}addTarget(e,t){Tt(e,!0),wt(t);let n=this.addHandler(M.TARGET,e,t);return this.store.dispatch(bt(n)),n}containsHandler(e){return At(this.dragSources,e)||At(this.dropTargets,e)}getSource(e,t=!1){return T(this.isSourceId(e),`Expected a valid source ID.`),t&&e===this.pinnedSourceId?this.pinnedSource:this.dragSources.get(e)}getTarget(e){return T(this.isTargetId(e),`Expected a valid target ID.`),this.dropTargets.get(e)}getSourceType(e){return T(this.isSourceId(e),`Expected a valid source ID.`),this.types.get(e)}getTargetType(e){return T(this.isTargetId(e),`Expected a valid target ID.`),this.types.get(e)}isSourceId(e){return kt(e)===M.SOURCE}isTargetId(e){return kt(e)===M.TARGET}removeSource(e){T(this.getSource(e),`Expected an existing source.`),this.store.dispatch(xt(e)),ht(()=>{this.dragSources.delete(e),this.types.delete(e)})}removeTarget(e){T(this.getTarget(e),`Expected an existing target.`),this.store.dispatch(St(e)),this.dropTargets.delete(e),this.types.delete(e)}pinSource(e){let t=this.getSource(e);T(t,`Expected an existing source.`),this.pinnedSourceId=e,this.pinnedSource=t}unpinSource(){T(this.pinnedSource,`No source is pinned at the time.`),this.pinnedSourceId=null,this.pinnedSource=null}addHandler(e,t,n){let r=Ot(e);return this.types.set(r,t),e===M.SOURCE?this.dragSources.set(r,n):e===M.TARGET&&this.dropTargets.set(r,n),r}constructor(e){this.types=new Map,this.dragSources=new Map,this.dropTargets=new Map,this.pinnedSourceId=null,this.pinnedSource=null,this.store=e}},Mt=(e,t)=>e===t;function Nt(e,t){return!e&&!t?!0:!e||!t?!1:e.x===t.x&&e.y===t.y}function Pt(e,t,n=Mt){if(e.length!==t.length)return!1;for(let r=0;r<e.length;++r)if(!n(e[r],t[r]))return!1;return!0}function Ft(e=A,t){switch(t.type){case D:break;case gt:case _t:case j:case vt:return A;case E:case Ee:case k:case O:default:return nt}let{targetIds:n=[],prevTargetIds:r=[]}=t.payload,i=Ce(n,r);if(!(i.length>0||!Pt(n,r)))return A;let a=r[r.length-1],o=n[n.length-1];return a!==o&&(a&&i.push(a),o&&i.push(o)),i}function It(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Lt(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t],r=Object.keys(n);typeof Object.getOwnPropertySymbols==`function`&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){It(e,t,n[t])})}return e}var Rt={initialSourceClientOffset:null,initialClientOffset:null,clientOffset:null};function zt(e=Rt,t){let{payload:n}=t;switch(t.type){case Te:case E:return{initialSourceClientOffset:n.sourceClientOffset,initialClientOffset:n.clientOffset,clientOffset:n.clientOffset};case D:return Nt(e.clientOffset,n.clientOffset)?e:Lt({},e,{clientOffset:n.clientOffset});case k:case O:return Rt;default:return e}}function Bt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function N(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t],r=Object.keys(n);typeof Object.getOwnPropertySymbols==`function`&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){Bt(e,t,n[t])})}return e}var Vt={itemType:null,item:null,sourceId:null,targetIds:[],dropResult:null,didDrop:!1,isSourcePublic:null};function Ht(e=Vt,t){let{payload:n}=t;switch(t.type){case E:return N({},e,{itemType:n.itemType,item:n.item,sourceId:n.sourceId,isSourcePublic:n.isSourcePublic,dropResult:null,didDrop:!1});case Ee:return N({},e,{isSourcePublic:!0});case D:return N({},e,{targetIds:n.targetIds});case j:return e.targetIds.indexOf(n.targetId)===-1?e:N({},e,{targetIds:xe(e.targetIds,n.targetId)});case O:return N({},e,{dropResult:n.dropResult,didDrop:!0,targetIds:[]});case k:return N({},e,{itemType:null,item:null,sourceId:null,dropResult:null,didDrop:!1,isSourcePublic:null,targetIds:[]});default:return e}}function Ut(e=0,t){switch(t.type){case gt:case _t:return e+1;case vt:case j:return e-1;default:return e}}function Wt(e=0){return e+1}function Gt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Kt(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t],r=Object.keys(n);typeof Object.getOwnPropertySymbols==`function`&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){Gt(e,t,n[t])})}return e}function qt(e={},t){return{dirtyHandlerIds:Ft(e.dirtyHandlerIds,{type:t.type,payload:Kt({},t.payload,{prevTargetIds:be(e,`dragOperation.targetIds`,[])})}),dragOffset:zt(e.dragOffset,t),refCount:Ut(e.refCount,t),dragOperation:Ht(e.dragOperation,t),stateId:Wt(e.stateId)}}function Jt(e,t=void 0,n={},r=!1){let i=Yt(r),a=new Ze(i,new it(i,new jt(i))),o=e(a,t,n);return a.receiveBackend(o),a}function Yt(e){let t=typeof window<`u`&&window.__REDUX_DEVTOOLS_EXTENSION__;return ve(qt,e&&t&&t({name:`dnd-core`,instanceId:`dnd-core`}))}function Xt(e,t){if(e==null)return{};var n=Zt(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)r=a[i],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function Zt(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,a;for(a=0;a<r.length;a++)i=r[a],!(t.indexOf(i)>=0)&&(n[i]=e[i]);return n}var Qt=0,$t=Symbol.for(`__REACT_DND_CONTEXT_INSTANCE__`),en=(0,S.memo)(function(e){var{children:t}=e;let[n,r]=tn(Xt(e,[`children`]));return(0,S.useEffect)(()=>{if(r){let e=rn();return++Qt,()=>{--Qt===0&&(e[$t]=null)}}},[]),(0,C.jsx)(pe.Provider,{value:n,children:t})});function tn(e){return`manager`in e?[{dragDropManager:e.manager},!1]:[nn(e.backend,e.context,e.options,e.debugMode),!e.context]}function nn(e,t=rn(),n,r){let i=t;return i[$t]||(i[$t]={dragDropManager:Jt(e,t,n,r)}),i[$t]}function rn(){return typeof global<`u`?global:window}var an=e(fe(),1),P=typeof window<`u`?S.useLayoutEffect:S.useEffect;function on(e,t,n){let[r,i]=(0,S.useState)(()=>t(e)),a=(0,S.useCallback)(()=>{let a=t(e);(0,an.default)(r,a)||(i(a),n&&n())},[r,e,n]);return P(a),[r,a]}function sn(e,t,n){let[r,i]=on(e,t,n);return P(function(){let t=e.getHandlerId();if(t!=null)return e.subscribeToStateChange(i,{handlerIds:[t]})},[e,i]),r}function cn(e,t,n){return sn(t,e||(()=>({})),()=>n.reconnect())}function ln(e,t){let n=[...t||[]];return t==null&&typeof e!=`function`&&n.push(e),(0,S.useMemo)(()=>typeof e==`function`?e():e,n)}function un(e){return(0,S.useMemo)(()=>e.hooks.dragSource(),[e])}function dn(e){return(0,S.useMemo)(()=>e.hooks.dragPreview(),[e])}var fn=!1,pn=!1,mn=class{receiveHandlerId(e){this.sourceId=e}getHandlerId(){return this.sourceId}canDrag(){T(!fn,`You may not call monitor.canDrag() inside your canDrag() implementation. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source-monitor`);try{return fn=!0,this.internalMonitor.canDragSource(this.sourceId)}finally{fn=!1}}isDragging(){if(!this.sourceId)return!1;T(!pn,`You may not call monitor.isDragging() inside your isDragging() implementation. Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source-monitor`);try{return pn=!0,this.internalMonitor.isDraggingSource(this.sourceId)}finally{pn=!1}}subscribeToStateChange(e,t){return this.internalMonitor.subscribeToStateChange(e,t)}isDraggingSource(e){return this.internalMonitor.isDraggingSource(e)}isOverTarget(e,t){return this.internalMonitor.isOverTarget(e,t)}getTargetIds(){return this.internalMonitor.getTargetIds()}isSourcePublic(){return this.internalMonitor.isSourcePublic()}getSourceId(){return this.internalMonitor.getSourceId()}subscribeToOffsetChange(e){return this.internalMonitor.subscribeToOffsetChange(e)}canDragSource(e){return this.internalMonitor.canDragSource(e)}canDropOnTarget(e){return this.internalMonitor.canDropOnTarget(e)}getItemType(){return this.internalMonitor.getItemType()}getItem(){return this.internalMonitor.getItem()}getDropResult(){return this.internalMonitor.getDropResult()}didDrop(){return this.internalMonitor.didDrop()}getInitialClientOffset(){return this.internalMonitor.getInitialClientOffset()}getInitialSourceClientOffset(){return this.internalMonitor.getInitialSourceClientOffset()}getSourceClientOffset(){return this.internalMonitor.getSourceClientOffset()}getClientOffset(){return this.internalMonitor.getClientOffset()}getDifferenceFromInitialOffset(){return this.internalMonitor.getDifferenceFromInitialOffset()}constructor(e){this.sourceId=null,this.internalMonitor=e.getMonitor()}},hn=!1,gn=class{receiveHandlerId(e){this.targetId=e}getHandlerId(){return this.targetId}subscribeToStateChange(e,t){return this.internalMonitor.subscribeToStateChange(e,t)}canDrop(){if(!this.targetId)return!1;T(!hn,`You may not call monitor.canDrop() inside your canDrop() implementation. Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target-monitor`);try{return hn=!0,this.internalMonitor.canDropOnTarget(this.targetId)}finally{hn=!1}}isOver(e){return this.targetId?this.internalMonitor.isOverTarget(this.targetId,e):!1}getItemType(){return this.internalMonitor.getItemType()}getItem(){return this.internalMonitor.getItem()}getDropResult(){return this.internalMonitor.getDropResult()}didDrop(){return this.internalMonitor.didDrop()}getInitialClientOffset(){return this.internalMonitor.getInitialClientOffset()}getInitialSourceClientOffset(){return this.internalMonitor.getInitialSourceClientOffset()}getSourceClientOffset(){return this.internalMonitor.getSourceClientOffset()}getClientOffset(){return this.internalMonitor.getClientOffset()}getDifferenceFromInitialOffset(){return this.internalMonitor.getDifferenceFromInitialOffset()}constructor(e){this.targetId=null,this.internalMonitor=e.getMonitor()}};function _n(e,t,n){let r=n.getRegistry(),i=r.addTarget(e,t);return[i,()=>r.removeTarget(i)]}function vn(e,t,n){let r=n.getRegistry(),i=r.addSource(e,t);return[i,()=>r.removeSource(i)]}function yn(e,t,n,r){let i=n?n.call(r,e,t):void 0;if(i!==void 0)return!!i;if(e===t)return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;let a=Object.keys(e),o=Object.keys(t);if(a.length!==o.length)return!1;let s=Object.prototype.hasOwnProperty.bind(t);for(let o=0;o<a.length;o++){let c=a[o];if(!s(c))return!1;let l=e[c],u=t[c];if(i=n?n.call(r,l,u,c):void 0,i===!1||i===void 0&&l!==u)return!1}return!0}function bn(e){return typeof e==`object`&&!!e&&Object.prototype.hasOwnProperty.call(e,`current`)}function xn(e){if(typeof e.type==`string`)return;let t=e.type.displayName||e.type.name||`the component`;throw Error(`Only native element nodes can now be passed to React DnD connectors.You can either wrap ${t} into a <div>, or turn it into a drag source or a drop target itself.`)}function Sn(e){return(t=null,n=null)=>{if(!(0,S.isValidElement)(t)){let r=t;return e(r,n),r}let r=t;return xn(r),Tn(r,n?t=>e(t,n):e)}}function Cn(e){let t={};return Object.keys(e).forEach(n=>{let r=e[n];if(n.endsWith(`Ref`))t[n]=e[n];else{let e=Sn(r);t[n]=()=>e}}),t}function wn(e,t){typeof e==`function`?e(t):e.current=t}function Tn(e,t){let n=e.ref;return T(typeof n!=`string`,`Cannot connect React DnD to an element with an existing string ref. Please convert it to use a callback ref instead, or wrap it into a <span> or <div>. Read more: https://reactjs.org/docs/refs-and-the-dom.html#callback-refs`),n?(0,S.cloneElement)(e,{ref:e=>{wn(n,e),wn(t,e)}}):(0,S.cloneElement)(e,{ref:t})}var En=class{receiveHandlerId(e){this.handlerId!==e&&(this.handlerId=e,this.reconnect())}get connectTarget(){return this.dragSource}get dragSourceOptions(){return this.dragSourceOptionsInternal}set dragSourceOptions(e){this.dragSourceOptionsInternal=e}get dragPreviewOptions(){return this.dragPreviewOptionsInternal}set dragPreviewOptions(e){this.dragPreviewOptionsInternal=e}reconnect(){let e=this.reconnectDragSource();this.reconnectDragPreview(e)}reconnectDragSource(){let e=this.dragSource,t=this.didHandlerIdChange()||this.didConnectedDragSourceChange()||this.didDragSourceOptionsChange();return t&&this.disconnectDragSource(),this.handlerId?e?(t&&(this.lastConnectedHandlerId=this.handlerId,this.lastConnectedDragSource=e,this.lastConnectedDragSourceOptions=this.dragSourceOptions,this.dragSourceUnsubscribe=this.backend.connectDragSource(this.handlerId,e,this.dragSourceOptions)),t):(this.lastConnectedDragSource=e,t):t}reconnectDragPreview(e=!1){let t=this.dragPreview,n=e||this.didHandlerIdChange()||this.didConnectedDragPreviewChange()||this.didDragPreviewOptionsChange();if(n&&this.disconnectDragPreview(),this.handlerId){if(!t){this.lastConnectedDragPreview=t;return}n&&(this.lastConnectedHandlerId=this.handlerId,this.lastConnectedDragPreview=t,this.lastConnectedDragPreviewOptions=this.dragPreviewOptions,this.dragPreviewUnsubscribe=this.backend.connectDragPreview(this.handlerId,t,this.dragPreviewOptions))}}didHandlerIdChange(){return this.lastConnectedHandlerId!==this.handlerId}didConnectedDragSourceChange(){return this.lastConnectedDragSource!==this.dragSource}didConnectedDragPreviewChange(){return this.lastConnectedDragPreview!==this.dragPreview}didDragSourceOptionsChange(){return!yn(this.lastConnectedDragSourceOptions,this.dragSourceOptions)}didDragPreviewOptionsChange(){return!yn(this.lastConnectedDragPreviewOptions,this.dragPreviewOptions)}disconnectDragSource(){this.dragSourceUnsubscribe&&=(this.dragSourceUnsubscribe(),void 0)}disconnectDragPreview(){this.dragPreviewUnsubscribe&&(this.dragPreviewUnsubscribe(),this.dragPreviewUnsubscribe=void 0,this.dragPreviewNode=null,this.dragPreviewRef=null)}get dragSource(){return this.dragSourceNode||this.dragSourceRef&&this.dragSourceRef.current}get dragPreview(){return this.dragPreviewNode||this.dragPreviewRef&&this.dragPreviewRef.current}clearDragSource(){this.dragSourceNode=null,this.dragSourceRef=null}clearDragPreview(){this.dragPreviewNode=null,this.dragPreviewRef=null}constructor(e){this.hooks=Cn({dragSource:(e,t)=>{this.clearDragSource(),this.dragSourceOptions=t||null,bn(e)?this.dragSourceRef=e:this.dragSourceNode=e,this.reconnectDragSource()},dragPreview:(e,t)=>{this.clearDragPreview(),this.dragPreviewOptions=t||null,bn(e)?this.dragPreviewRef=e:this.dragPreviewNode=e,this.reconnectDragPreview()}}),this.handlerId=null,this.dragSourceRef=null,this.dragSourceOptionsInternal=null,this.dragPreviewRef=null,this.dragPreviewOptionsInternal=null,this.lastConnectedHandlerId=null,this.lastConnectedDragSource=null,this.lastConnectedDragSourceOptions=null,this.lastConnectedDragPreview=null,this.lastConnectedDragPreviewOptions=null,this.backend=e}},Dn=class{get connectTarget(){return this.dropTarget}reconnect(){let e=this.didHandlerIdChange()||this.didDropTargetChange()||this.didOptionsChange();e&&this.disconnectDropTarget();let t=this.dropTarget;if(this.handlerId){if(!t){this.lastConnectedDropTarget=t;return}e&&(this.lastConnectedHandlerId=this.handlerId,this.lastConnectedDropTarget=t,this.lastConnectedDropTargetOptions=this.dropTargetOptions,this.unsubscribeDropTarget=this.backend.connectDropTarget(this.handlerId,t,this.dropTargetOptions))}}receiveHandlerId(e){e!==this.handlerId&&(this.handlerId=e,this.reconnect())}get dropTargetOptions(){return this.dropTargetOptionsInternal}set dropTargetOptions(e){this.dropTargetOptionsInternal=e}didHandlerIdChange(){return this.lastConnectedHandlerId!==this.handlerId}didDropTargetChange(){return this.lastConnectedDropTarget!==this.dropTarget}didOptionsChange(){return!yn(this.lastConnectedDropTargetOptions,this.dropTargetOptions)}disconnectDropTarget(){this.unsubscribeDropTarget&&=(this.unsubscribeDropTarget(),void 0)}get dropTarget(){return this.dropTargetNode||this.dropTargetRef&&this.dropTargetRef.current}clearDropTarget(){this.dropTargetRef=null,this.dropTargetNode=null}constructor(e){this.hooks=Cn({dropTarget:(e,t)=>{this.clearDropTarget(),this.dropTargetOptions=t,bn(e)?this.dropTargetRef=e:this.dropTargetNode=e,this.reconnect()}}),this.handlerId=null,this.dropTargetRef=null,this.dropTargetOptionsInternal=null,this.lastConnectedHandlerId=null,this.lastConnectedDropTarget=null,this.lastConnectedDropTargetOptions=null,this.backend=e}};function F(){let{dragDropManager:e}=(0,S.useContext)(pe);return T(e!=null,`Expected drag drop context`),e}function On(e,t){let n=F(),r=(0,S.useMemo)(()=>new En(n.getBackend()),[n]);return P(()=>(r.dragSourceOptions=e||null,r.reconnect(),()=>r.disconnectDragSource()),[r,e]),P(()=>(r.dragPreviewOptions=t||null,r.reconnect(),()=>r.disconnectDragPreview()),[r,t]),r}function kn(){let e=F();return(0,S.useMemo)(()=>new mn(e),[e])}var An=class{beginDrag(){let e=this.spec,t=this.monitor,n=null;return n=typeof e.item==`object`?e.item:typeof e.item==`function`?e.item(t):{},n??null}canDrag(){let e=this.spec,t=this.monitor;return typeof e.canDrag==`boolean`?e.canDrag:typeof e.canDrag!=`function`||e.canDrag(t)}isDragging(e,t){let n=this.spec,r=this.monitor,{isDragging:i}=n;return i?i(r):t===e.getSourceId()}endDrag(){let e=this.spec,t=this.monitor,n=this.connector,{end:r}=e;r&&r(t.getItem(),t),n.reconnect()}constructor(e,t,n){this.spec=e,this.monitor=t,this.connector=n}};function jn(e,t,n){let r=(0,S.useMemo)(()=>new An(e,t,n),[t,n]);return(0,S.useEffect)(()=>{r.spec=e},[e]),r}function Mn(e){return(0,S.useMemo)(()=>{let t=e.type;return T(t!=null,`spec.type must be defined`),t},[e])}function Nn(e,t,n){let r=F(),i=jn(e,t,n),a=Mn(e);P(function(){if(a!=null){let[e,o]=vn(a,i,r);return t.receiveHandlerId(e),n.receiveHandlerId(e),o}},[r,t,n,i,a])}function Pn(e,t){let n=ln(e,t);T(!n.begin,`useDrag::spec.begin was deprecated in v14. Replace spec.begin() with spec.item(). (see more here - https://react-dnd.github.io/react-dnd/docs/api/use-drag)`);let r=kn(),i=On(n.options,n.previewOptions);return Nn(n,r,i),[cn(n.collect,r,i),un(i),dn(i)]}function Fn(e){let t=F().getMonitor(),[n,r]=on(t,e);return(0,S.useEffect)(()=>t.subscribeToOffsetChange(r)),(0,S.useEffect)(()=>t.subscribeToStateChange(r)),n}function In(e){return(0,S.useMemo)(()=>e.hooks.dropTarget(),[e])}function Ln(e){let t=F(),n=(0,S.useMemo)(()=>new Dn(t.getBackend()),[t]);return P(()=>(n.dropTargetOptions=e||null,n.reconnect(),()=>n.disconnectDropTarget()),[e]),n}function Rn(){let e=F();return(0,S.useMemo)(()=>new gn(e),[e])}function zn(e){let{accept:t}=e;return(0,S.useMemo)(()=>(T(e.accept!=null,`accept must be defined`),Array.isArray(t)?t:[t]),[t])}var Bn=class{canDrop(){let e=this.spec,t=this.monitor;return!e.canDrop||e.canDrop(t.getItem(),t)}hover(){let e=this.spec,t=this.monitor;e.hover&&e.hover(t.getItem(),t)}drop(){let e=this.spec,t=this.monitor;if(e.drop)return e.drop(t.getItem(),t)}constructor(e,t){this.spec=e,this.monitor=t}};function Vn(e,t){let n=(0,S.useMemo)(()=>new Bn(e,t),[t]);return(0,S.useEffect)(()=>{n.spec=e},[e]),n}function Hn(e,t,n){let r=F(),i=Vn(e,t),a=zn(e);P(function(){let[e,o]=_n(a,i,r);return t.receiveHandlerId(e),n.receiveHandlerId(e),o},[r,t,i,n,a.map(e=>e.toString()).join(`|`)])}function Un(e,t){let n=ln(e,t),r=Rn(),i=Ln(n.options);return Hn(n,r,i),[cn(n.collect,r,i),In(i)]}function Wn(e){let t=null;return()=>(t??=e(),t)}function Gn(e,t){return e.filter(e=>e!==t)}function Kn(e,t){let n=new Set,r=e=>n.add(e);e.forEach(r),t.forEach(r);let i=[];return n.forEach(e=>i.push(e)),i}var qn=class{enter(e){let t=this.entered.length,n=t=>this.isNodeInDocument(t)&&(!t.contains||t.contains(e));return this.entered=Kn(this.entered.filter(n),[e]),t===0&&this.entered.length>0}leave(e){let t=this.entered.length;return this.entered=Gn(this.entered.filter(this.isNodeInDocument),e),t>0&&this.entered.length===0}reset(){this.entered=[]}constructor(e){this.entered=[],this.isNodeInDocument=e}},Jn=class{initializeExposedProperties(){Object.keys(this.config.exposeProperties).forEach(e=>{Object.defineProperty(this.item,e,{configurable:!0,enumerable:!0,get(){return console.warn(`Browser doesn't allow reading "${e}" until the drop event.`),null}})})}loadDataTransfer(e){if(e){let t={};Object.keys(this.config.exposeProperties).forEach(n=>{let r=this.config.exposeProperties[n];r!=null&&(t[n]={value:r(e,this.config.matchesTypes),configurable:!0,enumerable:!0})}),Object.defineProperties(this.item,t)}}canDrag(){return!0}beginDrag(){return this.item}isDragging(e,t){return t===e.getSourceId()}endDrag(){}constructor(e){this.config=e,this.item={},this.initializeExposedProperties()}},Yn=t({FILE:()=>Xn,HTML:()=>$n,TEXT:()=>Qn,URL:()=>Zn}),Xn=`__NATIVE_FILE__`,Zn=`__NATIVE_URL__`,Qn=`__NATIVE_TEXT__`,$n=`__NATIVE_HTML__`;function er(e,t,n){return t.reduce((t,n)=>t||e.getData(n),``)??n}var tr={[Xn]:{exposeProperties:{files:e=>Array.prototype.slice.call(e.files),items:e=>e.items,dataTransfer:e=>e},matchesTypes:[`Files`]},[$n]:{exposeProperties:{html:(e,t)=>er(e,t,``),dataTransfer:e=>e},matchesTypes:[`Html`,`text/html`]},[Zn]:{exposeProperties:{urls:(e,t)=>er(e,t,``).split(`
|
|
2
|
+
`),dataTransfer:e=>e},matchesTypes:[`Url`,`text/uri-list`]},[Qn]:{exposeProperties:{text:(e,t)=>er(e,t,``),dataTransfer:e=>e},matchesTypes:[`Text`,`text/plain`]}};function nr(e,t){let n=tr[e];if(!n)throw Error(`native type ${e} has no configuration`);let r=new Jn(n);return r.loadDataTransfer(t),r}function rr(e){if(!e)return null;let t=Array.prototype.slice.call(e.types||[]);return Object.keys(tr).filter(e=>{let n=tr[e];return n?.matchesTypes?n.matchesTypes.some(e=>t.indexOf(e)>-1):!1})[0]||null}var ir=Wn(()=>/firefox/i.test(navigator.userAgent)),ar=Wn(()=>!!window.safari),or=class{interpolate(e){let{xs:t,ys:n,c1s:r,c2s:i,c3s:a}=this,o=t.length-1;if(e===t[o])return n[o];let s=0,c=a.length-1,l;for(;s<=c;){l=Math.floor(.5*(s+c));let r=t[l];if(r<e)s=l+1;else if(r>e)c=l-1;else return n[l]}o=Math.max(0,c);let u=e-t[o],d=u*u;return n[o]+r[o]*u+i[o]*d+a[o]*u*d}constructor(e,t){let{length:n}=e,r=[];for(let e=0;e<n;e++)r.push(e);r.sort((t,n)=>e[t]<e[n]?-1:1);let i=[],a=[],o=[],s,c;for(let r=0;r<n-1;r++)s=e[r+1]-e[r],c=t[r+1]-t[r],a.push(s),i.push(c),o.push(c/s);let l=[o[0]];for(let e=0;e<a.length-1;e++){let t=o[e],n=o[e+1];if(t*n<=0)l.push(0);else{s=a[e];let r=a[e+1],i=s+r;l.push(3*i/((i+r)/t+(i+s)/n))}}l.push(o[o.length-1]);let u=[],d=[],f;for(let e=0;e<l.length-1;e++){f=o[e];let t=l[e],n=1/a[e],r=t+l[e+1]-f-f;u.push((f-t-r)*n),d.push(r*n*n)}this.xs=e,this.ys=t,this.c1s=l,this.c2s=u,this.c3s=d}},sr=1;function cr(e){let t=e.nodeType===sr?e:e.parentElement;if(!t)return null;let{top:n,left:r}=t.getBoundingClientRect();return{x:r,y:n}}function lr(e){return{x:e.clientX,y:e.clientY}}function ur(e){return e.nodeName===`IMG`&&(ir()||!document.documentElement?.contains(e))}function dr(e,t,n,r){let i=e?t.width:n,a=e?t.height:r;return ar()&&e&&(a/=window.devicePixelRatio,i/=window.devicePixelRatio),{dragPreviewWidth:i,dragPreviewHeight:a}}function fr(e,t,n,r,i){let a=ur(t),o=cr(a?e:t),s={x:n.x-o.x,y:n.y-o.y},{offsetWidth:c,offsetHeight:l}=e,{anchorX:u,anchorY:d}=r,{dragPreviewWidth:f,dragPreviewHeight:p}=dr(a,t,c,l),m=()=>{let e=new or([0,.5,1],[s.y,s.y/l*p,s.y+p-l]).interpolate(d);return ar()&&a&&(e+=(window.devicePixelRatio-1)*p),e},h=()=>new or([0,.5,1],[s.x,s.x/c*f,s.x+f-c]).interpolate(u),{offsetX:g,offsetY:_}=i,v=g===0||g,ee=_===0||_;return{x:v?g:h(),y:ee?_:m()}}var pr=class{get window(){if(this.globalContext)return this.globalContext;if(typeof window<`u`)return window}get document(){if(this.globalContext?.document)return this.globalContext.document;if(this.window)return this.window.document}get rootElement(){return this.optionsArgs?.rootElement||this.window}constructor(e,t){this.ownerDocument=null,this.globalContext=e,this.optionsArgs=t}};function mr(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function hr(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t],r=Object.keys(n);typeof Object.getOwnPropertySymbols==`function`&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){mr(e,t,n[t])})}return e}var gr=class{profile(){return{sourcePreviewNodes:this.sourcePreviewNodes.size,sourcePreviewNodeOptions:this.sourcePreviewNodeOptions.size,sourceNodeOptions:this.sourceNodeOptions.size,sourceNodes:this.sourceNodes.size,dragStartSourceIds:this.dragStartSourceIds?.length||0,dropTargetIds:this.dropTargetIds.length,dragEnterTargetIds:this.dragEnterTargetIds.length,dragOverTargetIds:this.dragOverTargetIds?.length||0}}get window(){return this.options.window}get document(){return this.options.document}get rootElement(){return this.options.rootElement}setup(){let e=this.rootElement;if(e!==void 0){if(e.__isReactDndBackendSetUp)throw Error(`Cannot have two HTML5 backends at the same time.`);e.__isReactDndBackendSetUp=!0,this.addEventListeners(e)}}teardown(){let e=this.rootElement;if(e!==void 0&&(e.__isReactDndBackendSetUp=!1,this.removeEventListeners(this.rootElement),this.clearCurrentDragSourceNode(),this.asyncEndDragFrameId)){var t;(t=this.window)==null||t.cancelAnimationFrame(this.asyncEndDragFrameId)}}connectDragPreview(e,t,n){return this.sourcePreviewNodeOptions.set(e,n),this.sourcePreviewNodes.set(e,t),()=>{this.sourcePreviewNodes.delete(e),this.sourcePreviewNodeOptions.delete(e)}}connectDragSource(e,t,n){this.sourceNodes.set(e,t),this.sourceNodeOptions.set(e,n);let r=t=>this.handleDragStart(t,e),i=e=>this.handleSelectStart(e);return t.setAttribute(`draggable`,`true`),t.addEventListener(`dragstart`,r),t.addEventListener(`selectstart`,i),()=>{this.sourceNodes.delete(e),this.sourceNodeOptions.delete(e),t.removeEventListener(`dragstart`,r),t.removeEventListener(`selectstart`,i),t.setAttribute(`draggable`,`false`)}}connectDropTarget(e,t){let n=t=>this.handleDragEnter(t,e),r=t=>this.handleDragOver(t,e),i=t=>this.handleDrop(t,e);return t.addEventListener(`dragenter`,n),t.addEventListener(`dragover`,r),t.addEventListener(`drop`,i),()=>{t.removeEventListener(`dragenter`,n),t.removeEventListener(`dragover`,r),t.removeEventListener(`drop`,i)}}addEventListeners(e){e.addEventListener&&(e.addEventListener(`dragstart`,this.handleTopDragStart),e.addEventListener(`dragstart`,this.handleTopDragStartCapture,!0),e.addEventListener(`dragend`,this.handleTopDragEndCapture,!0),e.addEventListener(`dragenter`,this.handleTopDragEnter),e.addEventListener(`dragenter`,this.handleTopDragEnterCapture,!0),e.addEventListener(`dragleave`,this.handleTopDragLeaveCapture,!0),e.addEventListener(`dragover`,this.handleTopDragOver),e.addEventListener(`dragover`,this.handleTopDragOverCapture,!0),e.addEventListener(`drop`,this.handleTopDrop),e.addEventListener(`drop`,this.handleTopDropCapture,!0))}removeEventListeners(e){e.removeEventListener&&(e.removeEventListener(`dragstart`,this.handleTopDragStart),e.removeEventListener(`dragstart`,this.handleTopDragStartCapture,!0),e.removeEventListener(`dragend`,this.handleTopDragEndCapture,!0),e.removeEventListener(`dragenter`,this.handleTopDragEnter),e.removeEventListener(`dragenter`,this.handleTopDragEnterCapture,!0),e.removeEventListener(`dragleave`,this.handleTopDragLeaveCapture,!0),e.removeEventListener(`dragover`,this.handleTopDragOver),e.removeEventListener(`dragover`,this.handleTopDragOverCapture,!0),e.removeEventListener(`drop`,this.handleTopDrop),e.removeEventListener(`drop`,this.handleTopDropCapture,!0))}getCurrentSourceNodeOptions(){let e=this.monitor.getSourceId(),t=this.sourceNodeOptions.get(e);return hr({dropEffect:this.altKeyPressed?`copy`:`move`},t||{})}getCurrentDropEffect(){return this.isDraggingNativeItem()?`copy`:this.getCurrentSourceNodeOptions().dropEffect}getCurrentSourcePreviewNodeOptions(){let e=this.monitor.getSourceId();return hr({anchorX:.5,anchorY:.5,captureDraggingState:!1},this.sourcePreviewNodeOptions.get(e)||{})}isDraggingNativeItem(){let e=this.monitor.getItemType();return Object.keys(Yn).some(t=>Yn[t]===e)}beginDragNativeItem(e,t){this.clearCurrentDragSourceNode(),this.currentNativeSource=nr(e,t),this.currentNativeHandle=this.registry.addSource(e,this.currentNativeSource),this.actions.beginDrag([this.currentNativeHandle])}setCurrentDragSourceNode(e){this.clearCurrentDragSourceNode(),this.currentDragSourceNode=e,this.mouseMoveTimeoutTimer=setTimeout(()=>this.rootElement?.addEventListener(`mousemove`,this.endDragIfSourceWasRemovedFromDOM,!0),1e3)}clearCurrentDragSourceNode(){if(this.currentDragSourceNode){if(this.currentDragSourceNode=null,this.rootElement){var e;(e=this.window)==null||e.clearTimeout(this.mouseMoveTimeoutTimer||void 0),this.rootElement.removeEventListener(`mousemove`,this.endDragIfSourceWasRemovedFromDOM,!0)}return this.mouseMoveTimeoutTimer=null,!0}return!1}handleDragStart(e,t){e.defaultPrevented||(this.dragStartSourceIds||=[],this.dragStartSourceIds.unshift(t))}handleDragEnter(e,t){this.dragEnterTargetIds.unshift(t)}handleDragOver(e,t){this.dragOverTargetIds===null&&(this.dragOverTargetIds=[]),this.dragOverTargetIds.unshift(t)}handleDrop(e,t){this.dropTargetIds.unshift(t)}constructor(e,t,n){this.sourcePreviewNodes=new Map,this.sourcePreviewNodeOptions=new Map,this.sourceNodes=new Map,this.sourceNodeOptions=new Map,this.dragStartSourceIds=null,this.dropTargetIds=[],this.dragEnterTargetIds=[],this.currentNativeSource=null,this.currentNativeHandle=null,this.currentDragSourceNode=null,this.altKeyPressed=!1,this.mouseMoveTimeoutTimer=null,this.asyncEndDragFrameId=null,this.dragOverTargetIds=null,this.lastClientOffset=null,this.hoverRafId=null,this.getSourceClientOffset=e=>{let t=this.sourceNodes.get(e);return t&&cr(t)||null},this.endDragNativeItem=()=>{this.isDraggingNativeItem()&&(this.actions.endDrag(),this.currentNativeHandle&&this.registry.removeSource(this.currentNativeHandle),this.currentNativeHandle=null,this.currentNativeSource=null)},this.isNodeInDocument=e=>!!(e&&this.document&&this.document.body&&this.document.body.contains(e)),this.endDragIfSourceWasRemovedFromDOM=()=>{let e=this.currentDragSourceNode;e==null||this.isNodeInDocument(e)||(this.clearCurrentDragSourceNode()&&this.monitor.isDragging()&&this.actions.endDrag(),this.cancelHover())},this.scheduleHover=e=>{this.hoverRafId===null&&typeof requestAnimationFrame<`u`&&(this.hoverRafId=requestAnimationFrame(()=>{this.monitor.isDragging()&&this.actions.hover(e||[],{clientOffset:this.lastClientOffset}),this.hoverRafId=null}))},this.cancelHover=()=>{this.hoverRafId!==null&&typeof cancelAnimationFrame<`u`&&(cancelAnimationFrame(this.hoverRafId),this.hoverRafId=null)},this.handleTopDragStartCapture=()=>{this.clearCurrentDragSourceNode(),this.dragStartSourceIds=[]},this.handleTopDragStart=e=>{if(e.defaultPrevented)return;let{dragStartSourceIds:t}=this;this.dragStartSourceIds=null;let n=lr(e);this.monitor.isDragging()&&(this.actions.endDrag(),this.cancelHover()),this.actions.beginDrag(t||[],{publishSource:!1,getSourceClientOffset:this.getSourceClientOffset,clientOffset:n});let{dataTransfer:r}=e,i=rr(r);if(this.monitor.isDragging()){if(r&&typeof r.setDragImage==`function`){let e=this.monitor.getSourceId(),t=this.sourceNodes.get(e),i=this.sourcePreviewNodes.get(e)||t;if(i){let{anchorX:e,anchorY:a,offsetX:o,offsetY:s}=this.getCurrentSourcePreviewNodeOptions(),c=fr(t,i,n,{anchorX:e,anchorY:a},{offsetX:o,offsetY:s});r.setDragImage(i,c.x,c.y)}}try{r?.setData(`application/json`,{})}catch{}this.setCurrentDragSourceNode(e.target);let{captureDraggingState:t}=this.getCurrentSourcePreviewNodeOptions();t?this.actions.publishDragSource():setTimeout(()=>this.actions.publishDragSource(),0)}else if(i)this.beginDragNativeItem(i);else if(r&&!r.types&&(e.target&&!e.target.hasAttribute||!e.target.hasAttribute(`draggable`)))return;else e.preventDefault()},this.handleTopDragEndCapture=()=>{this.clearCurrentDragSourceNode()&&this.monitor.isDragging()&&this.actions.endDrag(),this.cancelHover()},this.handleTopDragEnterCapture=e=>{if(this.dragEnterTargetIds=[],this.isDraggingNativeItem()){var t;(t=this.currentNativeSource)==null||t.loadDataTransfer(e.dataTransfer)}if(!this.enterLeaveCounter.enter(e.target)||this.monitor.isDragging())return;let{dataTransfer:n}=e,r=rr(n);r&&this.beginDragNativeItem(r,n)},this.handleTopDragEnter=e=>{let{dragEnterTargetIds:t}=this;this.dragEnterTargetIds=[],this.monitor.isDragging()&&(this.altKeyPressed=e.altKey,t.length>0&&this.actions.hover(t,{clientOffset:lr(e)}),t.some(e=>this.monitor.canDropOnTarget(e))&&(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=this.getCurrentDropEffect())))},this.handleTopDragOverCapture=e=>{if(this.dragOverTargetIds=[],this.isDraggingNativeItem()){var t;(t=this.currentNativeSource)==null||t.loadDataTransfer(e.dataTransfer)}},this.handleTopDragOver=e=>{let{dragOverTargetIds:t}=this;if(this.dragOverTargetIds=[],!this.monitor.isDragging()){e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=`none`);return}this.altKeyPressed=e.altKey,this.lastClientOffset=lr(e),this.scheduleHover(t),(t||[]).some(e=>this.monitor.canDropOnTarget(e))?(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=this.getCurrentDropEffect())):this.isDraggingNativeItem()?e.preventDefault():(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=`none`))},this.handleTopDragLeaveCapture=e=>{this.isDraggingNativeItem()&&e.preventDefault(),this.enterLeaveCounter.leave(e.target)&&(this.isDraggingNativeItem()&&setTimeout(()=>this.endDragNativeItem(),0),this.cancelHover())},this.handleTopDropCapture=e=>{if(this.dropTargetIds=[],this.isDraggingNativeItem()){var t;e.preventDefault(),(t=this.currentNativeSource)==null||t.loadDataTransfer(e.dataTransfer)}else rr(e.dataTransfer)&&e.preventDefault();this.enterLeaveCounter.reset()},this.handleTopDrop=e=>{let{dropTargetIds:t}=this;this.dropTargetIds=[],this.actions.hover(t,{clientOffset:lr(e)}),this.actions.drop({dropEffect:this.getCurrentDropEffect()}),this.isDraggingNativeItem()?this.endDragNativeItem():this.monitor.isDragging()&&this.actions.endDrag(),this.cancelHover()},this.handleSelectStart=e=>{let t=e.target;typeof t.dragDrop==`function`&&(t.tagName===`INPUT`||t.tagName===`SELECT`||t.tagName===`TEXTAREA`||t.isContentEditable||(e.preventDefault(),t.dragDrop()))},this.options=new pr(t,n),this.actions=e.getActions(),this.monitor=e.getMonitor(),this.registry=e.getRegistry(),this.enterLeaveCounter=new qn(this.isNodeInDocument)}},_r;function vr(){return _r||(_r=new Image,_r.src=`data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==`),_r}var yr=function(e,t,n){return new gr(e,t,n)},br=(0,S.createContext)(null);function I(){let e=(0,S.useContext)(br);if(e===null)throw Error(`No Tree Api Provided`);return e}var xr=(0,S.createContext)(null);function Sr(){let e=(0,S.useContext)(xr);if(e===null)throw Error(`Provide a NodesContext`);return e}var Cr=(0,S.createContext)(null);function wr(){let e=(0,S.useContext)(Cr);if(e===null)throw Error(`Provide a DnDContext`);return e}var Tr=(0,S.createContext)(0);function Er(){(0,S.useContext)(Tr)}var Dr=t({access:()=>L,bound:()=>Or,dfs:()=>Fr,focusNextElement:()=>Lr,focusPrevElement:()=>Rr,getInsertIndex:()=>Kr,getInsertParentId:()=>qr,identify:()=>R,identifyNull:()=>Hr,indexOf:()=>Nr,isClosed:()=>Ar,isDescendant:()=>Mr,isItem:()=>kr,isOpenWithEmptyChildren:()=>jr,mergeRefs:()=>Ur,noop:()=>Pr,safeRun:()=>Wr,waitFor:()=>Gr,walk:()=>Ir});function Or(e,t,n){return Math.max(Math.min(e,n),t)}function kr(e){return e&&e.isLeaf}function Ar(e){return e&&e.isInternal&&!e.isOpen}function jr(e){return e&&e.isOpen&&!e.children?.length}var Mr=(e,t)=>{let n=e;for(;n;){if(n.id===t.id)return!0;n=n.parent}return!1},Nr=e=>{if(!e.parent)throw Error(`Node does not have a parent`);return e.parent.children.findIndex(t=>t.id===e.id)};function Pr(){}function Fr(e,t){if(!e)return null;if(e.id===t)return e;if(e.children)for(let n of e.children){let e=Fr(n,t);if(e)return e}return null}function Ir(e,t){if(t(e),e.children)for(let n of e.children)Ir(n,t)}function Lr(e){let t=Vr(e),n;for(let r=0;r<t.length;++r)if(t[r]===e){n=zr(t,r);break}n?.focus()}function Rr(e){let t=Vr(e),n;for(let r=0;r<t.length;++r)if(t[r]===e){n=Br(t,r);break}n?.focus()}function zr(e,t){return t+1<e.length?e[t+1]:e[0]}function Br(e,t){return t-1>=0?e[t-1]:e[e.length-1]}function Vr(e){return Array.from(document.querySelectorAll(`button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"]):not([disabled]), details:not([disabled]), summary:not(:disabled)`)).filter(t=>t===e||!e.contains(t))}function L(e,t){return typeof t==`boolean`?t:typeof t==`string`?e[t]:t(e)}function Hr(e){return e===null?null:R(e)}function R(e){return typeof e==`string`?e:e.id}function Ur(...e){return t=>{e.forEach(e=>{typeof e==`function`?e(t):e!=null&&(e.current=t)})}}function Wr(e,...t){if(e)return e(...t)}function Gr(e){return new Promise((t,n)=>{let r=0;function i(){r+=1,r===100&&n(),e()?t():setTimeout(i,10)}i()})}function Kr(e){let t=e.focusedNode;return t?t.isOpen?0:t.parent?t.childIndex+1:0:e.root.children?.length??0}function qr(e){let t=e.focusedNode;return t?t.isOpen?t.id:t.parent&&!t.parent.isRoot?t.parent.id:null:null}var Jr={display:`flex`,alignItems:`center`,zIndex:1},Yr={flex:1,height:`2px`,background:`#4B91E2`,borderRadius:`1px`},Xr={width:`4px`,height:`4px`,boxShadow:`0 0 0 3px #4B91E2`,borderRadius:`50%`},Zr=S.memo(function({top:e,left:t,indent:n}){let r={position:`absolute`,pointerEvents:`none`,top:e-2+`px`,left:t+`px`,right:n+`px`};return(0,C.jsxs)(`div`,{style:Object.assign(Object.assign({},Jr),r),children:[(0,C.jsx)(`div`,{style:Object.assign({},Xr)}),(0,C.jsx)(`div`,{style:Object.assign({},Yr)})]})});function Qr({node:e,attrs:t,innerRef:n,children:r}){return(0,C.jsx)(`div`,Object.assign({},t,{ref:n,onFocus:e=>e.stopPropagation(),onClick:e.handleClick,children:r}))}function $r(e){return(0,C.jsxs)(`div`,{ref:e.dragHandle,style:e.style,children:[(0,C.jsx)(`span`,{onClick:t=>{t.stopPropagation(),e.node.toggle()},children:e.node.isLeaf?`🌳`:e.node.isOpen?`🗁`:`🗀`}),` `,e.node.isEditing?(0,C.jsx)(ti,Object.assign({},e)):(0,C.jsx)(ei,Object.assign({},e))]})}function ei(e){return(0,C.jsx)(C.Fragment,{children:(0,C.jsx)(`span`,{children:e.node.data.name})})}function ti({node:e}){let t=(0,S.useRef)();return(0,S.useEffect)(()=>{var e,n;(e=t.current)==null||e.focus(),(n=t.current)==null||n.select()},[]),(0,C.jsx)(`input`,{ref:t,defaultValue:e.data.name,onBlur:()=>e.reset(),onKeyDown:n=>{n.key===`Escape`&&e.reset(),n.key===`Enter`&&e.submit(t.current?.value||``)}})}function ni(e){return{type:`EDIT`,id:e}}function ri(e={id:null},t){return t.type===`EDIT`?Object.assign(Object.assign({},e),{id:t.id}):e}function z(e){return{type:`FOCUS`,id:e}}function ii(){return{type:`TREE_BLUR`}}function ai(e={id:null,treeFocused:!1},t){return t.type===`FOCUS`?Object.assign(Object.assign({},e),{id:t.id,treeFocused:!0}):t.type===`TREE_BLUR`?Object.assign(Object.assign({},e),{treeFocused:!1}):e}var oi=class e{constructor(e){this.handleClick=e=>{e.metaKey&&!this.tree.props.disableMultiSelection?this.isSelected?this.deselect():this.selectMulti():e.shiftKey&&!this.tree.props.disableMultiSelection?this.selectContiguous():(this.select(),this.activate())},this.tree=e.tree,this.id=e.id,this.data=e.data,this.level=e.level,this.children=e.children,this.parent=e.parent,this.isDraggable=e.isDraggable,this.rowIndex=e.rowIndex}get isRoot(){return this.id===si}get isLeaf(){return!Array.isArray(this.children)}get isInternal(){return!this.isLeaf}get isOpen(){return!this.isLeaf&&this.tree.isOpen(this.id)}get isClosed(){return!this.isLeaf&&!this.tree.isOpen(this.id)}get isEditable(){return this.tree.isEditable(this.data)}get isEditing(){return this.tree.editingId===this.id}get isSelected(){return this.tree.isSelected(this.id)}get isOnlySelection(){return this.isSelected&&this.tree.hasOneSelection}get isSelectedStart(){return this.isSelected&&!this.prev?.isSelected}get isSelectedEnd(){return this.isSelected&&!this.next?.isSelected}get isFocused(){return this.tree.isFocused(this.id)}get isDragging(){return this.tree.isDragging(this.id)}get willReceiveDrop(){return this.tree.willReceiveDrop(this.id)}get state(){return{isClosed:this.isClosed,isDragging:this.isDragging,isEditing:this.isEditing,isFocused:this.isFocused,isInternal:this.isInternal,isLeaf:this.isLeaf,isOpen:this.isOpen,isSelected:this.isSelected,isSelectedEnd:this.isSelectedEnd,isSelectedStart:this.isSelectedStart,willReceiveDrop:this.willReceiveDrop}}get childIndex(){return this.parent&&this.parent.children?this.parent.children.findIndex(e=>e.id===this.id):-1}get next(){return this.rowIndex===null?null:this.tree.at(this.rowIndex+1)}get prev(){return this.rowIndex===null?null:this.tree.at(this.rowIndex-1)}get nextSibling(){let e=this.childIndex;return this.parent?.children[e+1]??null}isAncestorOf(e){if(!e)return!1;let t=e;for(;t;){if(t.id===this.id)return!0;t=t.parent}return!1}select(){this.tree.select(this)}deselect(){this.tree.deselect(this)}selectMulti(){this.tree.selectMulti(this)}selectContiguous(){this.tree.selectContiguous(this)}activate(){this.tree.activate(this)}focus(){this.tree.focus(this)}toggle(){this.tree.toggle(this)}open(){this.tree.open(this)}openParents(){this.tree.openParents(this)}close(){this.tree.close(this)}submit(e){this.tree.submit(this,e)}reset(){this.tree.reset()}clone(){return new e(Object.assign({},this))}edit(){return this.tree.edit(this)}},si=`__REACT_ARBORIST_INTERNAL_ROOT__`;function ci(e){function t(n,r,i){let a=new oi({tree:e,data:n,level:r,parent:i,id:e.accessId(n),children:null,isDraggable:e.isDraggable(n),rowIndex:null}),o=e.accessChildren(n);return o&&(a.children=o.map(e=>t(e,r+1,a))),a}let n=new oi({tree:e,id:si,data:{id:si},level:-1,parent:null,children:null,isDraggable:!0,rowIndex:null});return n.children=(e.props.data??[]).map(e=>t(e,0,n)),n}var li={open(e,t){return{type:`VISIBILITY_OPEN`,id:e,filtered:t}},close(e,t){return{type:`VISIBILITY_CLOSE`,id:e,filtered:t}},toggle(e,t){return{type:`VISIBILITY_TOGGLE`,id:e,filtered:t}},clear(e){return{type:`VISIBILITY_CLEAR`,filtered:e}}};function ui(e={},t){if(t.type===`VISIBILITY_OPEN`)return Object.assign(Object.assign({},e),{[t.id]:!0});if(t.type===`VISIBILITY_CLOSE`)return Object.assign(Object.assign({},e),{[t.id]:!1});if(t.type===`VISIBILITY_TOGGLE`){let n=e[t.id];return Object.assign(Object.assign({},e),{[t.id]:!n})}return t.type===`VISIBILITY_CLEAR`?{}:e}function di(e={filtered:{},unfiltered:{}},t){return t.type.startsWith(`VISIBILITY`)?t.filtered?Object.assign(Object.assign({},e),{filtered:ui(e.filtered,t)}):Object.assign(Object.assign({},e),{unfiltered:ui(e.unfiltered,t)}):e}var B=e=>({nodes:{open:{filtered:{},unfiltered:e?.initialOpenState??{}},focus:{id:null,treeFocused:!1},edit:{id:null},drag:{id:null,selectedIds:[],destinationParentId:null,destinationIndex:null},selection:{ids:new Set,anchor:null,mostRecent:null}},dnd:{cursor:{type:`none`},dragId:null,dragIds:[],parentId:null,index:-1}}),V={clear:()=>({type:`SELECTION_CLEAR`}),only:e=>({type:`SELECTION_ONLY`,id:R(e)}),add:e=>({type:`SELECTION_ADD`,ids:(Array.isArray(e)?e:[e]).map(R)}),remove:e=>({type:`SELECTION_REMOVE`,ids:(Array.isArray(e)?e:[e]).map(R)}),set:e=>Object.assign({type:`SELECTION_SET`},e),mostRecent:e=>({type:`SELECTION_MOST_RECENT`,id:e===null?null:R(e)}),anchor:e=>({type:`SELECTION_ANCHOR`,id:e===null?null:R(e)})};function fi(e=B().nodes.selection,t){let n=e.ids;switch(t.type){case`SELECTION_CLEAR`:return Object.assign(Object.assign({},e),{ids:new Set});case`SELECTION_ONLY`:return Object.assign(Object.assign({},e),{ids:new Set([t.id])});case`SELECTION_ADD`:return t.ids.length===0?e:(t.ids.forEach(e=>n.add(e)),Object.assign(Object.assign({},e),{ids:new Set(n)}));case`SELECTION_REMOVE`:return t.ids.length===0?e:(t.ids.forEach(e=>n.delete(e)),Object.assign(Object.assign({},e),{ids:new Set(n)}));case`SELECTION_SET`:return Object.assign(Object.assign({},e),{ids:t.ids,mostRecent:t.mostRecent,anchor:t.anchor});case`SELECTION_MOST_RECENT`:return Object.assign(Object.assign({},e),{mostRecent:t.id});case`SELECTION_ANCHOR`:return Object.assign(Object.assign({},e),{anchor:t.id});default:return e}}var H={cursor(e){return{type:`DND_CURSOR`,cursor:e}},dragStart(e,t){return{type:`DND_DRAG_START`,id:e,dragIds:t}},dragEnd(){return{type:`DND_DRAG_END`}},hovering(e,t){return{type:`DND_HOVERING`,parentId:e,index:t}}};function pi(e=B().dnd,t){switch(t.type){case`DND_CURSOR`:return Object.assign(Object.assign({},e),{cursor:t.cursor});case`DND_DRAG_START`:return Object.assign(Object.assign({},e),{dragId:t.id,dragIds:t.dragIds});case`DND_DRAG_END`:return B().dnd;case`DND_HOVERING`:return Object.assign(Object.assign({},e),{parentId:t.parentId,index:t.index});default:return e}}var mi={position:`fixed`,pointerEvents:`none`,zIndex:100,left:0,top:0,width:`100%`,height:`100%`},hi=e=>{if(!e)return{display:`none`};let{x:t,y:n}=e;return{transform:`translate(${t}px, ${n}px)`}},gi=e=>{if(!e)return{display:`none`};let{x:t,y:n}=e;return{transform:`translate(${t+10}px, ${n+10}px)`}};function _i({offset:e,mouse:t,id:n,dragIds:r,isDragging:i}){return(0,C.jsxs)(vi,{isDragging:i,children:[(0,C.jsx)(yi,{offset:e,children:(0,C.jsx)(xi,{id:n,dragIds:r})}),(0,C.jsx)(bi,{mouse:t,count:r.length})]})}var vi=(0,S.memo)(function(e){return e.isDragging?(0,C.jsx)(`div`,{style:mi,children:e.children}):null});function yi(e){return(0,C.jsx)(`div`,{className:`row preview`,style:hi(e.offset),children:e.children})}function bi(e){let{count:t,mouse:n}=e;return t>1?(0,C.jsx)(`div`,{className:`selected-count`,style:gi(n),children:t}):null}var xi=(0,S.memo)(function(e){let t=I(),n=t.get(e.id);return n?(0,C.jsx)(t.renderNode,{preview:!0,node:n,style:{paddingLeft:n.level*t.indent,opacity:.2,background:`transparent`},tree:t}):null}),Si=Number.isNaN||function(e){return typeof e==`number`&&e!==e};function Ci(e,t){return!!(e===t||Si(e)&&Si(t))}function wi(e,t){if(e.length!==t.length)return!1;for(var n=0;n<e.length;n++)if(!Ci(e[n],t[n]))return!1;return!0}function Ti(e,t){t===void 0&&(t=wi);var n,r=[],i,a=!1;function o(){var o=[...arguments];return a&&n===this&&t(o,r)?i:(i=e.apply(this,o),a=!0,n=this,r=o,i)}return o}var Ei=typeof performance==`object`&&typeof performance.now==`function`?function(){return performance.now()}:function(){return Date.now()};function Di(e){cancelAnimationFrame(e.id)}function Oi(e,t){var n=Ei();function r(){Ei()-n>=t?e.call(null):i.id=requestAnimationFrame(r)}var i={id:requestAnimationFrame(r)};return i}var ki=-1;function Ai(e){if(e===void 0&&(e=!1),ki===-1||e){var t=document.createElement(`div`),n=t.style;n.width=`50px`,n.height=`50px`,n.overflow=`scroll`,document.body.appendChild(t),ki=t.offsetWidth-t.clientWidth,document.body.removeChild(t)}return ki}var U=null;function ji(e){if(e===void 0&&(e=!1),U===null||e){var t=document.createElement(`div`),n=t.style;n.width=`50px`,n.height=`50px`,n.overflow=`scroll`,n.direction=`rtl`;var r=document.createElement(`div`),i=r.style;return i.width=`100px`,i.height=`100px`,t.appendChild(r),document.body.appendChild(t),t.scrollLeft>0?U=`positive-descending`:(t.scrollLeft=1,U=t.scrollLeft===0?`negative`:`positive-ascending`),document.body.removeChild(t),U}return U}var Mi=150,Ni=function(e,t){return e};function Pi(e){var t,n=e.getItemOffset,r=e.getEstimatedTotalSize,i=e.getItemSize,a=e.getOffsetForIndexAndAlignment,o=e.getStartIndexForOffset,s=e.getStopIndexForStartIndex,c=e.initInstanceProps,l=e.shouldResetStyleCacheOnItemSizeChange,u=e.validateProps;return t=function(e){ue(t,e);function t(t){var r=e.call(this,t)||this;return r._instanceProps=c(r.props,de(r)),r._outerRef=void 0,r._resetIsScrollingTimeoutId=null,r.state={instance:de(r),isScrolling:!1,scrollDirection:`forward`,scrollOffset:typeof r.props.initialScrollOffset==`number`?r.props.initialScrollOffset:0,scrollUpdateWasRequested:!1},r._callOnItemsRendered=void 0,r._callOnItemsRendered=Ti(function(e,t,n,i){return r.props.onItemsRendered({overscanStartIndex:e,overscanStopIndex:t,visibleStartIndex:n,visibleStopIndex:i})}),r._callOnScroll=void 0,r._callOnScroll=Ti(function(e,t,n){return r.props.onScroll({scrollDirection:e,scrollOffset:t,scrollUpdateWasRequested:n})}),r._getItemStyle=void 0,r._getItemStyle=function(e){var t=r.props,a=t.direction,o=t.itemSize,s=t.layout,c=r._getItemStyleCache(l&&o,l&&s,l&&a),u;if(c.hasOwnProperty(e))u=c[e];else{var d=n(r.props,e,r._instanceProps),f=i(r.props,e,r._instanceProps),p=a===`horizontal`||s===`horizontal`,m=a===`rtl`,h=p?d:0;c[e]=u={position:`absolute`,left:m?void 0:h,right:m?h:void 0,top:p?0:d,height:p?`100%`:f,width:p?f:`100%`}}return u},r._getItemStyleCache=void 0,r._getItemStyleCache=Ti(function(e,t,n){return{}}),r._onScrollHorizontal=function(e){var t=e.currentTarget,n=t.clientWidth,i=t.scrollLeft,a=t.scrollWidth;r.setState(function(e){if(e.scrollOffset===i)return null;var t=r.props.direction,o=i;if(t===`rtl`)switch(ji()){case`negative`:o=-i;break;case`positive-descending`:o=a-n-i}return o=Math.max(0,Math.min(o,a-n)),{isScrolling:!0,scrollDirection:e.scrollOffset<o?`forward`:`backward`,scrollOffset:o,scrollUpdateWasRequested:!1}},r._resetIsScrollingDebounced)},r._onScrollVertical=function(e){var t=e.currentTarget,n=t.clientHeight,i=t.scrollHeight,a=t.scrollTop;r.setState(function(e){if(e.scrollOffset===a)return null;var t=Math.max(0,Math.min(a,i-n));return{isScrolling:!0,scrollDirection:e.scrollOffset<t?`forward`:`backward`,scrollOffset:t,scrollUpdateWasRequested:!1}},r._resetIsScrollingDebounced)},r._outerRefSetter=function(e){var t=r.props.outerRef;r._outerRef=e,typeof t==`function`?t(e):typeof t==`object`&&t&&t.hasOwnProperty(`current`)&&(t.current=e)},r._resetIsScrollingDebounced=function(){r._resetIsScrollingTimeoutId!==null&&Di(r._resetIsScrollingTimeoutId),r._resetIsScrollingTimeoutId=Oi(r._resetIsScrolling,Mi)},r._resetIsScrolling=function(){r._resetIsScrollingTimeoutId=null,r.setState({isScrolling:!1},function(){r._getItemStyleCache(-1,null)})},r}t.getDerivedStateFromProps=function(e,t){return Fi(e,t),u(e),null};var d=t.prototype;return d.scrollTo=function(e){e=Math.max(0,e),this.setState(function(t){return t.scrollOffset===e?null:{scrollDirection:t.scrollOffset<e?`forward`:`backward`,scrollOffset:e,scrollUpdateWasRequested:!0}},this._resetIsScrollingDebounced)},d.scrollToItem=function(e,t){t===void 0&&(t=`auto`);var n=this.props,r=n.itemCount,i=n.layout,o=this.state.scrollOffset;e=Math.max(0,Math.min(e,r-1));var s=0;if(this._outerRef){var c=this._outerRef;s=i===`vertical`?c.scrollWidth>c.clientWidth?Ai():0:c.scrollHeight>c.clientHeight?Ai():0}this.scrollTo(a(this.props,e,t,o,this._instanceProps,s))},d.componentDidMount=function(){var e=this.props,t=e.direction,n=e.initialScrollOffset,r=e.layout;if(typeof n==`number`&&this._outerRef!=null){var i=this._outerRef;t===`horizontal`||r===`horizontal`?i.scrollLeft=n:i.scrollTop=n}this._callPropsCallbacks()},d.componentDidUpdate=function(){var e=this.props,t=e.direction,n=e.layout,r=this.state,i=r.scrollOffset;if(r.scrollUpdateWasRequested&&this._outerRef!=null){var a=this._outerRef;if(t===`horizontal`||n===`horizontal`){if(t===`rtl`)switch(ji()){case`negative`:a.scrollLeft=-i;break;case`positive-ascending`:a.scrollLeft=i;break;default:var o=a.clientWidth;a.scrollLeft=a.scrollWidth-o-i}else a.scrollLeft=i}else a.scrollTop=i}this._callPropsCallbacks()},d.componentWillUnmount=function(){this._resetIsScrollingTimeoutId!==null&&Di(this._resetIsScrollingTimeoutId)},d.render=function(){var e=this.props,t=e.children,n=e.className,i=e.direction,a=e.height,o=e.innerRef,s=e.innerElementType,c=e.innerTagName,l=e.itemCount,u=e.itemData,d=e.itemKey,f=d===void 0?Ni:d,p=e.layout,m=e.outerElementType,h=e.outerTagName,g=e.style,_=e.useIsScrolling,v=e.width,ee=this.state.isScrolling,y=i===`horizontal`||p===`horizontal`,b=y?this._onScrollHorizontal:this._onScrollVertical,te=this._getRangeToRender(),ne=te[0],ie=te[1],ae=[];if(l>0)for(var x=ne;x<=ie;x++)ae.push((0,S.createElement)(t,{data:u,key:f(x,u),index:x,isScrolling:_?ee:void 0,style:this._getItemStyle(x)}));var oe=r(this.props,this._instanceProps);return(0,S.createElement)(m||h||`div`,{className:n,onScroll:b,ref:this._outerRefSetter,style:re({position:`relative`,height:a,width:v,overflow:`auto`,WebkitOverflowScrolling:`touch`,willChange:`transform`,direction:i},g)},(0,S.createElement)(s||c||`div`,{children:ae,ref:o,style:{height:y?`100%`:oe,pointerEvents:ee?`none`:void 0,width:y?oe:`100%`}}))},d._callPropsCallbacks=function(){if(typeof this.props.onItemsRendered==`function`&&this.props.itemCount>0){var e=this._getRangeToRender(),t=e[0],n=e[1],r=e[2],i=e[3];this._callOnItemsRendered(t,n,r,i)}if(typeof this.props.onScroll==`function`){var a=this.state,o=a.scrollDirection,s=a.scrollOffset,c=a.scrollUpdateWasRequested;this._callOnScroll(o,s,c)}},d._getRangeToRender=function(){var e=this.props,t=e.itemCount,n=e.overscanCount,r=this.state,i=r.isScrolling,a=r.scrollDirection,c=r.scrollOffset;if(t===0)return[0,0,0,0];var l=o(this.props,c,this._instanceProps),u=s(this.props,l,c,this._instanceProps),d=!i||a===`backward`?Math.max(1,n):1,f=!i||a===`forward`?Math.max(1,n):1;return[Math.max(0,l-d),Math.max(0,Math.min(t-1,u+f)),l,u]},t}(S.PureComponent),t.defaultProps={direction:`ltr`,itemData:void 0,layout:`vertical`,overscanCount:2,useIsScrolling:!1},t}var Fi=function(e,t){e.children,e.direction,e.height,e.layout,e.innerTagName,e.outerTagName,e.width,t.instance},Ii=Pi({getItemOffset:function(e,t){return t*e.itemSize},getItemSize:function(e,t){return e.itemSize},getEstimatedTotalSize:function(e){var t=e.itemCount;return e.itemSize*t},getOffsetForIndexAndAlignment:function(e,t,n,r,i,a){var o=e.direction,s=e.height,c=e.itemCount,l=e.itemSize,u=e.layout,d=e.width,f=o===`horizontal`||u===`horizontal`?d:s,p=Math.max(0,c*l-f),m=Math.min(p,t*l),h=Math.max(0,t*l-f+l+a);switch(n===`smart`&&(n=r>=h-f&&r<=m+f?`auto`:`center`),n){case`start`:return m;case`end`:return h;case`center`:var g=Math.round(h+(m-h)/2);return g<Math.ceil(f/2)?0:g>p+Math.floor(f/2)?p:g;default:return r>=h&&r<=m?r:r<h?h:m}},getStartIndexForOffset:function(e,t){var n=e.itemCount,r=e.itemSize;return Math.max(0,Math.min(n-1,Math.floor(t/r)))},getStopIndexForStartIndex:function(e,t,n){var r=e.direction,i=e.height,a=e.itemCount,o=e.itemSize,s=e.layout,c=e.width,l=r===`horizontal`||s===`horizontal`,u=t*o,d=Math.ceil(((l?c:i)+n-u)/o);return Math.max(0,Math.min(a-1,t+d-1))},initInstanceProps:function(e){},shouldResetStyleCacheOnItemSizeChange:!0,validateProps:function(e){e.itemSize}});function Li(){let e=I(),t=wr().cursor;if(!t||t.type!==`line`)return null;let n=e.indent,r=e.rowHeight*t.index+(e.props.padding??e.props.paddingTop??0),i=n*t.level,a=e.renderCursor;return(0,C.jsx)(a,{top:r,left:i,indent:n})}var Ri=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},zi=(0,S.forwardRef)(function(e,t){let{children:n}=e,r=Ri(e,[`children`]),i=I();return(0,C.jsxs)(`div`,Object.assign({ref:t},r,{onClick:e=>{e.currentTarget===e.target&&i.deselectAll()},children:[(0,C.jsx)(Bi,{}),n]}))}),Bi=()=>{let e=I();return(0,C.jsx)(`div`,{style:{height:e.visibleNodes.length*e.rowHeight,width:`100%`,position:`absolute`,left:`0`,right:`0`},children:(0,C.jsx)(Li,{})})},Vi=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Hi=(0,S.forwardRef)(function(e,t){var{style:n}=e,r=Vi(e,[`style`]);let i=I(),a=i.props.padding??i.props.paddingTop??0,o=i.props.padding??i.props.paddingBottom??0;return(0,C.jsx)(`div`,Object.assign({ref:t,style:Object.assign(Object.assign({},n),{height:`${parseFloat(n.height)+a+o}px`})},r))});function Ui(e){let t=I(),n=t.selectedIds,[r,i,a]=Pn(()=>({canDrag:()=>e.isDraggable,type:`NODE`,item:()=>{let r=t.isSelected(e.id)?Array.from(n):[e.id];return t.dispatch(H.dragStart(e.id,r)),{id:e.id,dragIds:r}},end:()=>{t.hideCursor(),t.dispatch(H.dragEnd())}}),[n,e]);return(0,S.useEffect)(()=>{a(vr())},[a]),i}function Wi(e,t){let n=e.getBoundingClientRect(),r=t.x-Math.round(n.x),i=t.y-Math.round(n.y),a=n.height,o=i<a/2,s=!o,c=a/4,l=i>c&&i<a-c;return{x:r,inTopHalf:o,inBottomHalf:s,inMiddle:l,atTop:!l&&o,atBottom:!l&&s}}function Gi(e,t,n,r){return e?e.isInternal?r.atTop?[t,e]:r.inMiddle?[e,e]:[e,n]:r.inTopHalf?[t,e]:[e,n]:[t,null]}function Ki(e,t){return{parentId:e||null,index:t}}function W(e,t){return{type:`line`,index:e,level:t}}function qi(e){return{type:`highlight`,id:e}}function Ji(e,t){let n=e;for(;n.parent&&n.level>t;)n=n.parent;return{parentId:n.parent?.id||null,index:Nr(n)+1}}function Yi(e){let t=Wi(e.element,e.offset),n=e.indent,r=Math.round(Math.max(0,t.x-n)/n),{node:i,nextNode:a,prevNode:o}=e,[s,c]=Gi(i,o,a,t);if(i&&i.isInternal&&t.inMiddle)return{drop:Ki(i.id,null),cursor:qi(i.id)};if(!s)return{drop:Ki(c?.parent?.id,0),cursor:W(0,0)};if(kr(s)){let e=Or(r,c?.level||0,s.level);return{drop:Ji(s,e),cursor:W(s.rowIndex+1,e)}}if(Ar(s)){let e=Or(r,c?.level||0,s.level);return{drop:Ji(s,e),cursor:W(s.rowIndex+1,e)}}if(jr(s)){let e=Or(r,0,s.level+1);return e>s.level?{drop:Ki(s.id,0),cursor:W(s.rowIndex+1,e)}:{drop:Ji(s,e),cursor:W(s.rowIndex+1,e)}}return{drop:Ki(s?.id,0),cursor:W(s.rowIndex+1,s.level+1)}}function Xi(e,t){let n=I(),[r,i]=Un(()=>({accept:`NODE`,canDrop:()=>n.canDrop(),hover:(r,i)=>{let a=i.getClientOffset();if(!e.current||!a)return;let{cursor:o,drop:s}=Yi({element:e.current,offset:a,indent:n.indent,node:t,prevNode:t.prev,nextNode:t.next});s&&n.dispatch(H.hovering(s.parentId,s.index)),i.canDrop()?o&&n.showCursor(o):n.hideCursor()},drop:(e,t)=>{if(!t.canDrop())return null;let{parentId:r,index:i,dragIds:a}=n.state.dnd;Wr(n.props.onMove,{dragIds:a,parentId:r===`__REACT_ARBORIST_INTERNAL_ROOT__`?null:r,index:i===null?0:i,dragNodes:n.dragNodes,parentNode:n.get(r)}),n.open(r)}}),[t,e.current,n.props]);return i}function Zi(e){let t=I(),n=t.at(e);if(!n)throw Error(`Could not find node for index: ${e}`);return(0,S.useMemo)(()=>{let r=n.clone();return t.visibleNodes[e]=r,r},[...Object.values(n.state),n])}var Qi=S.memo(function({index:e,style:t}){Er(),Sr();let n=I(),r=Zi(e),i=(0,S.useRef)(null),a=Ui(r),o=Xi(i,r),s=(0,S.useCallback)(e=>{i.current=e,o(e)},[o]),c=n.indent*r.level,l=(0,S.useMemo)(()=>({paddingLeft:c}),[c]),u=(0,S.useMemo)(()=>Object.assign(Object.assign({},t),{top:parseFloat(t.top)+(n.props.padding??n.props.paddingTop??0)}),[t,n.props.padding,n.props.paddingTop]),d={role:`treeitem`,"aria-level":r.level+1,"aria-selected":r.isSelected,"aria-expanded":r.isOpen,style:u,tabIndex:-1,className:n.props.rowClassName};(0,S.useEffect)(()=>{var e;!r.isEditing&&r.isFocused&&((e=i.current)==null||e.focus({preventScroll:!0}))},[r.isEditing,r.isFocused,i.current]);let f=n.renderNode,p=n.renderRow;return(0,C.jsx)(p,{node:r,innerRef:s,attrs:d,children:(0,C.jsx)(f,{node:r,tree:n,style:l,dragHandle:a})})}),$i=``,ea=null;function ta(){Er();let e=I();return(0,C.jsx)(`div`,{role:`tree`,style:{height:e.height,width:e.width,minHeight:0,minWidth:0},onContextMenu:e.props.onContextMenu,onClick:e.props.onClick,tabIndex:0,onFocus:t=>{t.currentTarget.contains(t.relatedTarget)||e.onFocus()},onBlur:t=>{t.currentTarget.contains(t.relatedTarget)||e.onBlur()},onKeyDown:t=>{if(e.isEditing)return;if(t.key===`Backspace`){if(!e.props.onDelete)return;let t=Array.from(e.selectedIds);if(t.length>1){let n=e.mostRecentNode;for(;n&&n.isSelected;)n=n.nextSibling;n||=e.lastNode,e.focus(n,{scroll:!1}),e.delete(Array.from(t))}else{let t=e.focusedNode;if(t){let n=t.nextSibling,r=t.parent;e.focus(n||r,{scroll:!1}),e.delete(t)}}return}if(t.key===`Tab`&&!t.shiftKey){t.preventDefault(),Lr(t.currentTarget);return}if(t.key===`Tab`&&t.shiftKey){t.preventDefault(),Rr(t.currentTarget);return}if(t.key===`ArrowDown`){t.preventDefault();let n=e.nextNode;if(t.metaKey){e.select(e.focusedNode),e.activate(e.focusedNode);return}if(!t.shiftKey||e.props.disableMultiSelection){e.focus(n);return}{if(!n)return;let t=e.focusedNode;t?t.isSelected?e.selectContiguous(n):e.selectMulti(n):e.focus(e.firstNode);return}}if(t.key===`ArrowUp`){t.preventDefault();let n=e.prevNode;if(!t.shiftKey||e.props.disableMultiSelection){e.focus(n);return}{if(!n)return;let t=e.focusedNode;t?t.isSelected?e.selectContiguous(n):e.selectMulti(n):e.focus(e.lastNode);return}}if(t.key===`ArrowRight`){let t=e.focusedNode;if(!t)return;t.isInternal&&t.isOpen?e.focus(e.nextNode):t.isInternal&&e.open(t.id);return}if(t.key===`ArrowLeft`){let t=e.focusedNode;if(!t||t.isRoot)return;t.isInternal&&t.isOpen?e.close(t.id):t.parent?.isRoot||e.focus(t.parent);return}if(t.key===`a`&&t.metaKey&&!e.props.disableMultiSelection){t.preventDefault(),e.selectAll();return}if(t.key===`a`&&!t.metaKey&&e.props.onCreate){e.createLeaf();return}if(t.key===`A`&&!t.metaKey){if(!e.props.onCreate)return;e.createInternal();return}if(t.key===`Home`){t.preventDefault(),e.focus(e.firstNode);return}if(t.key===`End`){t.preventDefault(),e.focus(e.lastNode);return}if(t.key===`Enter`){let t=e.focusedNode;if(!t||!t.isEditable||!e.props.onRename)return;setTimeout(()=>{t&&e.edit(t)});return}if(t.key===` `){t.preventDefault();let n=e.focusedNode;if(!n)return;n.isLeaf?(n.select(),n.activate()):n.toggle();return}if(t.key===`*`){let t=e.focusedNode;if(!t)return;e.openSiblings(t);return}if(t.key===`PageUp`){t.preventDefault(),e.pageUp();return}t.key===`PageDown`&&(t.preventDefault(),e.pageDown()),clearTimeout(ea),$i+=t.key,ea=setTimeout(()=>{$i=``},600);let n=e.visibleNodes.find(e=>{let t=e.data.name;return typeof t==`string`&&t.toLowerCase().startsWith($i)});n&&e.focus(n.id)},children:(0,C.jsx)(Ii,{className:e.props.className,outerRef:e.listEl,itemCount:e.visibleNodes.length,height:e.height,width:e.width,itemSize:e.rowHeight,overscanCount:e.overscanCount,itemKey:t=>e.visibleNodes[t]?.id||t,outerElementType:zi,innerElementType:Hi,onScroll:e.props.onScroll,onItemsRendered:e.onItemsRendered.bind(e),ref:e.list,children:Qi})})}function na(e){return e.isFiltered?ia(e.root,e.isMatch.bind(e)):ra(e.root)}function ra(e){let t=[];function n(e){var r;e.level>=0&&t.push(e),e.isOpen&&((r=e.children)==null||r.forEach(n))}return n(e),t.forEach(aa),t}function ia(e,t){let n={},r=[];function i(e){if(!e.isRoot&&t(e)){n[e.id]=!0;let t=e.parent;for(;t;)n[t.id]=!0,t=t.parent}if(e.children)for(let t of e.children)i(t)}function a(e){var t;e.level>=0&&n[e.id]&&r.push(e),e.isOpen&&((t=e.children)==null||t.forEach(a))}return i(e),a(e),r.forEach(aa),r}function aa(e,t){e.rowIndex=t}var oa=e=>e.reduce((e,t,n)=>(e[t.id]=n,e),{}),sa=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},{safeRun:G,identify:K,identifyNull:q}=Dr,ca=class e{constructor(e,t,n,r){this.store=e,this.props=t,this.list=n,this.listEl=r,this.visibleStartIndex=0,this.visibleStopIndex=0,this.root=ci(this),this.visibleNodes=na(this),this.idToIndex=oa(this.visibleNodes)}update(e){this.props=e,this.root=ci(this),this.visibleNodes=na(this),this.idToIndex=oa(this.visibleNodes)}dispatch(e){return this.store.dispatch(e)}get state(){return this.store.getState()}get openState(){return this.state.nodes.open.unfiltered}get width(){return this.props.width??300}get height(){return this.props.height??500}get indent(){return this.props.indent??24}get rowHeight(){return this.props.rowHeight??24}get overscanCount(){return this.props.overscanCount??1}get searchTerm(){return(this.props.searchTerm||``).trim()}get matchFn(){let e=this.props.searchMatch??((e,t)=>JSON.stringify(Object.values(e.data)).toLocaleLowerCase().includes(t.toLocaleLowerCase()));return t=>e(t,this.searchTerm)}accessChildren(e){return L(e,this.props.childrenAccessor||`children`)??null}accessId(e){let t=L(e,this.props.idAccessor||`id`);if(!t)throw Error(`Data must contain an 'id' property or props.idAccessor must return a string`);return t}get firstNode(){return this.visibleNodes[0]??null}get lastNode(){return this.visibleNodes[this.visibleNodes.length-1]??null}get focusedNode(){return this.get(this.state.nodes.focus.id)??null}get mostRecentNode(){return this.get(this.state.nodes.selection.mostRecent)??null}get nextNode(){let e=this.indexOf(this.focusedNode);return e===null?null:this.at(e+1)}get prevNode(){let e=this.indexOf(this.focusedNode);return e===null?null:this.at(e-1)}get(e){return e&&e in this.idToIndex&&this.visibleNodes[this.idToIndex[e]]||null}at(e){return this.visibleNodes[e]||null}nodesBetween(e,t){if(e===null||t===null)return[];let n=this.indexOf(e)??0,r=this.indexOf(t);if(r===null)return[];let i=Math.min(n,r),a=Math.max(n,r);return this.visibleNodes.slice(i,a+1)}indexOf(e){let t=Hr(e);return t?this.idToIndex[t]:null}get editingId(){return this.state.nodes.edit.id}createInternal(){return this.create({type:`internal`})}createLeaf(){return this.create({type:`leaf`})}create(){return sa(this,arguments,void 0,function*(e={}){let t=e.parentId===void 0?qr(this):e.parentId,n=e.index??Kr(this),r=e.type??`leaf`,i=yield G(this.props.onCreate,{type:r,parentId:t,index:n,parentNode:this.get(t)});i&&(this.focus(i),setTimeout(()=>{this.edit(i).then(()=>{this.select(i),this.activate(i)})}))})}delete(e){return sa(this,void 0,void 0,function*(){if(!e)return;let t=(Array.isArray(e)?e:[e]).map(K),n=t.map(e=>this.get(e)).filter(e=>!!e);yield G(this.props.onDelete,{nodes:n,ids:t})})}edit(t){let n=K(t);return this.resolveEdit({cancelled:!0}),this.scrollTo(n),this.dispatch(ni(n)),new Promise(t=>{e.editPromise=t})}submit(e,t){return sa(this,void 0,void 0,function*(){if(!e)return;let n=K(e);yield G(this.props.onRename,{id:n,name:t,node:this.get(n)}),this.dispatch(ni(null)),this.resolveEdit({cancelled:!1,value:t}),setTimeout(()=>this.onFocus())})}reset(){this.dispatch(ni(null)),this.resolveEdit({cancelled:!0}),setTimeout(()=>this.onFocus())}activate(e){let t=this.get(q(e));t&&G(this.props.onActivate,t)}resolveEdit(t){let n=e.editPromise;n&&n(t),e.editPromise=null}get selectedIds(){return this.state.nodes.selection.ids}get selectedNodes(){let e=[];for(let t of Array.from(this.selectedIds)){let n=this.get(t);n&&e.push(n)}return e}focus(e,t={}){e&&(this.props.selectionFollowsFocus?this.select(e):(this.dispatch(z(K(e))),t.scroll!==!1&&this.scrollTo(e),this.focusedNode&&G(this.props.onFocus,this.focusedNode)))}pageUp(){let e=this.visibleStartIndex,t=this.visibleStopIndex-e,n=this.focusedNode?.rowIndex??0;n=n>e?e:Math.max(e-t,0),this.focus(this.at(n))}pageDown(){let e=this.visibleStartIndex,t=this.visibleStopIndex,n=t-e,r=this.focusedNode?.rowIndex??0;r=r<t?t:Math.min(r+n,this.visibleNodes.length-1),this.focus(this.at(r))}select(e,t={}){if(!e)return;let n=t.focus!==!1,r=K(e);n&&this.dispatch(z(r)),this.dispatch(V.only(r)),this.dispatch(V.anchor(r)),this.dispatch(V.mostRecent(r)),this.scrollTo(r,t.align),this.focusedNode&&n&&G(this.props.onFocus,this.focusedNode),G(this.props.onSelect,this.selectedNodes)}deselect(e){if(!e)return;let t=K(e);this.dispatch(V.remove(t)),G(this.props.onSelect,this.selectedNodes)}selectMulti(e){let t=this.get(q(e));t&&(this.dispatch(z(t.id)),this.dispatch(V.add(t.id)),this.dispatch(V.anchor(t.id)),this.dispatch(V.mostRecent(t.id)),this.scrollTo(t),this.focusedNode&&G(this.props.onFocus,this.focusedNode),G(this.props.onSelect,this.selectedNodes))}selectContiguous(e){if(!e)return;let t=K(e),{anchor:n,mostRecent:r}=this.state.nodes.selection;this.dispatch(z(t)),this.dispatch(V.remove(this.nodesBetween(n,r))),this.dispatch(V.add(this.nodesBetween(n,q(t)))),this.dispatch(V.mostRecent(t)),this.scrollTo(t),this.focusedNode&&G(this.props.onFocus,this.focusedNode),G(this.props.onSelect,this.selectedNodes)}deselectAll(){this.setSelection({ids:[],anchor:null,mostRecent:null}),G(this.props.onSelect,this.selectedNodes)}selectAll(){this.setSelection({ids:Object.keys(this.idToIndex),anchor:this.firstNode,mostRecent:this.lastNode}),this.dispatch(z(this.lastNode?.id)),this.focusedNode&&G(this.props.onFocus,this.focusedNode),G(this.props.onSelect,this.selectedNodes)}setSelection(e){let t=new Set(e.ids?.map(K)),n=q(e.anchor),r=q(e.mostRecent);this.dispatch(V.set({ids:t,anchor:n,mostRecent:r})),G(this.props.onSelect,this.selectedNodes)}get cursorParentId(){let{cursor:e}=this.state.dnd;switch(e.type){case`highlight`:return e.id;default:return null}}get cursorOverFolder(){return this.state.dnd.cursor.type===`highlight`}get dragNodes(){return this.state.dnd.dragIds.map(e=>this.get(e)).filter(e=>!!e)}get dragNode(){return this.get(this.state.nodes.drag.id)}get dragDestinationParent(){return this.get(this.state.nodes.drag.destinationParentId)}get dragDestinationIndex(){return this.state.nodes.drag.destinationIndex}canDrop(){if(this.isFiltered)return!1;let e=this.get(this.state.dnd.parentId)??this.root,t=this.dragNodes,n=this.props.disableDrop;for(let n of t)if(!n||!e||n.isInternal&&Mr(e,n))return!1;return typeof n==`function`?!n({parentNode:e,dragNodes:this.dragNodes,index:this.state.dnd.index||0}):typeof n==`string`?!e.data[n]:typeof n!=`boolean`||!n}hideCursor(){this.dispatch(H.cursor({type:`none`}))}showCursor(e){this.dispatch(H.cursor(e))}open(e){let t=q(e);t&&(this.isOpen(t)||(this.dispatch(li.open(t,this.isFiltered)),G(this.props.onToggle,t)))}close(e){let t=q(e);t&&this.isOpen(t)&&(this.dispatch(li.close(t,this.isFiltered)),G(this.props.onToggle,t))}toggle(e){let t=q(e);if(t)return this.isOpen(t)?this.close(t):this.open(t)}openParents(e){let t=q(e);if(!t)return;let n=Fr(this.root,t)?.parent;for(;n;)this.open(n.id),n=n.parent}openSiblings(e){let t=e.parent;if(!t)this.toggle(e.id);else if(t.children){let n=e.isOpen;for(let e of t.children)e.isInternal&&(n?this.close(e.id):this.open(e.id));this.scrollTo(this.focusedNode)}}openAll(){Ir(this.root,e=>{e.isInternal&&e.open()})}closeAll(){Ir(this.root,e=>{e.isInternal&&e.close()})}scrollTo(e,t=`smart`){if(!e)return;let n=K(e);return this.openParents(n),Gr(()=>n in this.idToIndex).then(()=>{var e;let r=this.idToIndex[n];r!==void 0&&((e=this.list.current)==null||e.scrollToItem(r,t))}).catch(()=>{})}get isEditing(){return this.state.nodes.edit.id!==null}get isFiltered(){return!!this.props.searchTerm?.trim()}get hasFocus(){return this.state.nodes.focus.treeFocused}get hasNoSelection(){return this.state.nodes.selection.ids.size===0}get hasOneSelection(){return this.state.nodes.selection.ids.size===1}get hasMultipleSelections(){return this.state.nodes.selection.ids.size>1}isSelected(e){return e?this.state.nodes.selection.ids.has(e):!1}isOpen(e){if(!e)return!1;if(e===`__REACT_ARBORIST_INTERNAL_ROOT__`)return!0;let t=this.props.openByDefault??!0;return this.isFiltered?this.state.nodes.open.filtered[e]??!0:this.state.nodes.open.unfiltered[e]??t}isEditable(e){return!L(e,this.props.disableEdit||(()=>!1))}isDraggable(e){return!L(e,this.props.disableDrag||(()=>!1))}isDragging(e){let t=q(e);return t?this.state.nodes.drag.id===t:!1}isFocused(e){return this.hasFocus&&this.state.nodes.focus.id===e}isMatch(e){return this.matchFn(e)}willReceiveDrop(e){let t=q(e);if(!t)return!1;let{destinationParentId:n,destinationIndex:r}=this.state.nodes.drag;return t===n&&r===null}onFocus(){let e=this.focusedNode||this.firstNode;e&&this.dispatch(z(e.id))}onBlur(){this.dispatch(ii())}onItemsRendered(e){this.visibleStartIndex=e.visibleStartIndex,this.visibleStopIndex=e.visibleStopIndex}get renderContainer(){return this.props.renderContainer||ta}get renderRow(){return this.props.renderRow||Qr}get renderNode(){return this.props.children||$r}get renderDragPreview(){return this.props.renderDragPreview||_i}get renderCursor(){return this.props.renderCursor||Zr}};function J(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var la=typeof Symbol==`function`&&Symbol.observable||`@@observable`,ua=()=>Math.random().toString(36).substring(7).split(``).join(`.`),da={INIT:`@@redux/INIT${ua()}`,REPLACE:`@@redux/REPLACE${ua()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${ua()}`};function fa(e){if(typeof e!=`object`||!e)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function pa(e,t,n){if(typeof e!=`function`)throw Error(J(2));if(typeof t==`function`&&typeof n==`function`||typeof n==`function`&&typeof arguments[3]==`function`)throw Error(J(0));if(typeof t==`function`&&n===void 0&&(n=t,t=void 0),n!==void 0){if(typeof n!=`function`)throw Error(J(1));return n(pa)(e,t)}let r=e,i=t,a=new Map,o=a,s=0,c=!1;function l(){o===a&&(o=new Map,a.forEach((e,t)=>{o.set(t,e)}))}function u(){if(c)throw Error(J(3));return i}function d(e){if(typeof e!=`function`)throw Error(J(4));if(c)throw Error(J(5));let t=!0;l();let n=s++;return o.set(n,e),function(){if(t){if(c)throw Error(J(6));t=!1,l(),o.delete(n),a=null}}}function f(e){if(!fa(e))throw Error(J(7));if(e.type===void 0)throw Error(J(8));if(typeof e.type!=`string`)throw Error(J(17));if(c)throw Error(J(9));try{c=!0,i=r(i,e)}finally{c=!1}return(a=o).forEach(e=>{e()}),e}function p(e){if(typeof e!=`function`)throw Error(J(10));r=e,f({type:da.REPLACE})}function m(){let e=d;return{subscribe(t){if(typeof t!=`object`||!t)throw Error(J(11));function n(){let e=t;e.next&&e.next(u())}return n(),{unsubscribe:e(n)}},[la](){return this}}}return f({type:da.INIT}),{dispatch:f,subscribe:d,getState:u,replaceReducer:p,[la]:m}}function ma(e){Object.keys(e).forEach(t=>{let n=e[t];if(n(void 0,{type:da.INIT})===void 0)throw Error(J(12));if(n(void 0,{type:da.PROBE_UNKNOWN_ACTION()})===void 0)throw Error(J(13))})}function ha(e){let t=Object.keys(e),n={};for(let r=0;r<t.length;r++){let i=t[r];typeof e[i]==`function`&&(n[i]=e[i])}let r=Object.keys(n),i;try{ma(n)}catch(e){i=e}return function(e={},t){if(i)throw i;let a=!1,o={};for(let i=0;i<r.length;i++){let s=r[i],c=n[s],l=e[s],u=c(l,t);if(u===void 0)throw t&&t.type,Error(J(14));o[s]=u,a||=u!==l}return a||=r.length!==Object.keys(e).length,a?o:e}}function ga(e=B().nodes.drag,t){switch(t.type){case`DND_DRAG_START`:return Object.assign(Object.assign({},e),{id:t.id,selectedIds:t.dragIds});case`DND_DRAG_END`:return Object.assign(Object.assign({},e),{id:null,destinationParentId:null,destinationIndex:null,selectedIds:[]});case`DND_HOVERING`:return t.parentId!==e.destinationParentId||t.index!=e.destinationIndex?Object.assign(Object.assign({},e),{destinationParentId:t.parentId,destinationIndex:t.index}):e;default:return e}}var _a=ha({nodes:ha({focus:ai,edit:ri,open:di,selection:fi,drag:ga}),dnd:pi}),va=B();function ya({treeProps:e,imperativeHandle:t,children:n}){let r=(0,S.useRef)(null),i=(0,S.useRef)(null),a=(0,S.useRef)(pa(_a,B(e))),o=(0,ce.useSyncExternalStore)(a.current.subscribe,a.current.getState,()=>va),s=(0,S.useMemo)(()=>new ca(a.current,e,r,i),[]),c=(0,S.useRef)(0);return(0,S.useMemo)(()=>{c.current+=1,s.update(e)},[...Object.values(e),o.nodes.open]),(0,S.useImperativeHandle)(t,()=>s),(0,S.useEffect)(()=>{s.props.selection?s.select(s.props.selection,{focus:!1}):s.deselectAll()},[s.props.selection]),(0,S.useEffect)(()=>{s.props.searchTerm||a.current.dispatch(li.clear(!0))},[s.props.searchTerm]),(0,C.jsx)(br.Provider,{value:s,children:(0,C.jsx)(Tr.Provider,{value:c.current,children:(0,C.jsx)(xr.Provider,{value:o.nodes,children:(0,C.jsx)(Cr.Provider,{value:o.dnd,children:(0,C.jsx)(en,Object.assign({backend:yr,options:{rootElement:s.props.dndRootElement||void 0}},e.dndManager&&{manager:e.dndManager},{children:n}))})})})})}function ba(){let e=I(),[,t]=Un(()=>({accept:`NODE`,canDrop:(t,n)=>n.isOver({shallow:!0})?e.canDrop():!1,hover:(t,n)=>{if(!n.isOver({shallow:!0}))return;let r=n.getClientOffset();if(!e.listEl.current||!r)return;let{cursor:i,drop:a}=Yi({element:e.listEl.current,offset:r,indent:e.indent,node:null,prevNode:e.visibleNodes[e.visibleNodes.length-1],nextNode:null});a&&e.dispatch(H.hovering(a.parentId,a.index)),n.canDrop()?i&&e.showCursor(i):e.hideCursor()}}),[e]);t(e.listEl)}function xa(e){return ba(),e.children}function Sa(){let e=I().props.renderContainer||ta;return(0,C.jsx)(C.Fragment,{children:(0,C.jsx)(e,{})})}function Ca(){let e=I(),{offset:t,mouse:n,item:r,isDragging:i}=Fn(e=>({offset:e.getSourceClientOffset(),mouse:e.getClientOffset(),item:e.getItem(),isDragging:e.isDragging()})),a=e.props.renderDragPreview||_i;return(0,C.jsx)(a,{offset:t,mouse:n,id:r?.id||null,dragIds:r?.dragIds||[],isDragging:i})}var wa=class{constructor(e){this.root=Ta(e)}get data(){return this.root.children?.map(e=>e.data)??[]}create(e){let t=e.parentId?this.find(e.parentId):this.root;if(!t)return null;t.addChild(e.data,e.index)}move(e){let t=this.find(e.id),n=e.parentId?this.find(e.parentId):this.root;!t||!n||(n.addChild(t.data,e.index),t.drop())}update(e){let t=this.find(e.id);t&&t.update(e.changes)}drop(e){let t=this.find(e.id);t&&t.drop()}find(e,t=this.root){if(!t)return null;if(t.id===e)return t;if(t.children){for(let n of t.children){let t=this.find(e,n);if(t)return t}return null}return null}};function Ta(e){let t=new Da({id:`ROOT`},null);return t.children=e.map(e=>Ea(e,t)),t}function Ea(e,t){let n=new Da(e,t);return e.children&&(n.children=e.children.map(e=>Ea(e,n))),n}var Da=class{constructor(e,t){this.data=e,this.parent=t,this.id=e.id}hasParent(){return!!this.parent}get childIndex(){return this.hasParent()?this.parent.children.indexOf(this):-1}addChild(e,t){let n=Ea(e,this);this.children=this.children??[],this.children.splice(t,0,n),this.data.children=this.data.children??[],this.data.children.splice(t,0,e)}removeChild(e){var t,n;(t=this.children)==null||t.splice(e,1),(n=this.data.children)==null||n.splice(e,1)}update(e){if(this.hasParent()){let t=this.childIndex;this.parent.addChild(Object.assign(Object.assign({},this.data),e),t),this.drop()}}drop(){this.hasParent()&&this.parent.removeChild(this.childIndex)}},Oa=0;function ka(e){let[t,n]=(0,S.useState)(e),r=(0,S.useMemo)(()=>new wa(t),[t]);return[t,{onMove:e=>{for(let t of e.dragIds)r.move({id:t,parentId:e.parentId,index:e.index});n(r.data)},onRename:({name:e,id:t})=>{r.update({id:t,changes:{name:e}}),n(r.data)},onCreate:({parentId:e,index:t,type:i})=>{let a={id:`simple-tree-id-${Oa++}`,name:``};return i===`internal`&&(a.children=[]),r.create({parentId:e,index:t,data:a}),n(r.data),a},onDelete:e=>{e.ids.forEach(e=>r.drop({id:e})),n(r.data)}}]}function Aa(e){if(e.initialData&&e.data)throw Error(`React Arborist Tree => Provide either a data or initialData prop, but not both.`);if(e.initialData&&(e.onCreate||e.onDelete||e.onMove||e.onRename))throw Error(`React Arborist Tree => You passed the initialData prop along with a data handler.
|
|
3
|
+
Use the data prop if you want to provide your own handlers.`);if(e.initialData){let[t,n]=ka(e.initialData);return Object.assign(Object.assign(Object.assign({},e),n),{data:t})}return e}function ja(e,t){let n=Aa(e);return(0,C.jsxs)(ya,{treeProps:n,imperativeHandle:t,children:[(0,C.jsx)(xa,{children:(0,C.jsx)(Sa,{})}),(0,C.jsx)(Ca,{})]})}var Ma=(0,S.forwardRef)(ja),Y=a(),Na=5,Pa=/^[A-Za-z]:[/\\]/,Fa=/^\\\\/;function X(e){return e.success?e:(b({title:`Failed`,description:e.message}),null)}var Ia=class{delegate=new wa([]);callbacks;constructor(e){this.callbacks=e}roots=[];pendingExpansions=new Map;onChange=o.NOOP;path=new te(`/`);initialize=async e=>{if(this.onChange=e,this.delegate.data.length===0)try{let{roots:e}=await this.callbacks.getRoots(),t=e.find(e=>e.isPrimary);if(!t)throw Error(`File browser response is missing a primary root`);if(this.roots=e,this.path=te.guessDeliminator(t.path),this.delegate=new wa(e.map(za)),e.length===1){let e=await this.callbacks.listFiles({path:t.path});this.updateDirectory(this.getPrimaryRootId(),e.files)}}catch(e){b({title:`Failed`,description:ne(e)})}this.emitChange()};expand(e){return this.requestDirectory(e)}requestDirectory(e,t=!1){let n=this.pendingExpansions.get(e);if(n)return n;let r=this.delegate.find(e);if(!r?.data.isDirectory)return Promise.resolve(!1);if(!t&&r.data.loadState===`loaded`)return Promise.resolve(!0);let i=this.loadDirectory(e,r.data).finally(()=>{this.pendingExpansions.delete(e)});return this.pendingExpansions.set(e,i),i}async loadDirectory(e,t){this.delegate.update({id:e,changes:{loadState:`loading`}}),this.emitChange();try{let n=await this.callbacks.listFiles({path:t.path});return this.updateDirectory(e,n.files),!0}catch(n){return this.delegate.update({id:e,changes:{loadState:`error`}}),b({title:`Could not load ${t.name}`,description:ne(n)}),!1}finally{this.emitChange()}}getRoots(){return this.roots}async reveal(e){let t=Q(e.path,e.rootPath);if(t===null)return!1;let n=e.rootPath,r=t.split(Ua(e.rootPath)).filter(Boolean);e.isDirectory||r.pop();for(let t of[null,...r]){if(t!==null){let r=Z(e.rootPath,n);if(n=$(n,t),!this.delegate.find(Z(e.rootPath,n))&&!await this.requestDirectory(r,!0))return!1}let r=Z(e.rootPath,n);if(!this.delegate.find(r))return b({title:`Could not reveal folder`,description:`The folder may have moved or been deleted: ${n}`}),!1;if(!await this.expand(r))return!1}return!0}async copy(e,t){let n=this.getMutableNode(e);if(!n)return;let r=n.data.path,i=this.getParentPath(n.data),a=$(i,t);await this.callbacks.copyFileOrFolder({path:r,newPath:a}).then(X)&&await this.refreshPath(i)}async rename(e,t){let n=this.getMutableNode(e);if(!n)return;let r=n.data.path,i=this.getParentPath(n.data),a=$(i,t);await this.callbacks.renameFileOrFolder({path:r,newPath:a}).then(X)&&await this.refreshPath(i)}async move(e,t){let n=t??this.getPrimaryRootId(),r=this.delegate.find(n);if(!r?.data.isDirectory)return;let i=new Set;await oe(e,Na,async e=>{let t=this.getMutableNode(e,!1);if(!t)return;let n=t.data.path,a=this.getParentPath(t.data),o=$(r.data.path,this.path.basename(n));await this.callbacks.renameFileOrFolder({path:n,newPath:o}).then(X)&&(i.add(r.data.path),i.add(a))}),await this.refreshPaths([...i])}async createFile({name:e,parentId:t,type:n=`file`}){let r=this.getParentNode(t);r&&await this.callbacks.createFileOrFolder({path:r.data.path,type:n,name:e}).then(X)&&await this.refreshPath(r.data.path)}async createFolder(e,t){let n=this.getParentNode(t);n&&await this.callbacks.createFileOrFolder({path:n.data.path,type:`directory`,name:e}).then(X)&&await this.refreshPath(n.data.path)}async delete(e){let t=this.getMutableNode(e);if(!t)return;let n=this.getParentPath(t.data);await this.callbacks.deleteFileOrFolder({path:t.data.path}).then(X)&&await this.refreshPath(n)}refreshAll=async e=>{let t=[...this.roots.map(e=>e.path),...e.map(e=>this.delegate.find(e)?.data.path).filter(e=>!!e)];await this.refreshPaths(t,new Set([...this.roots.map(e=>Z(e.path,e.path)),...e]))};refreshPath=async e=>{await this.refreshPaths([e])};getPrimaryRelativePath=e=>{let t=this.getPrimaryRoot();return t?Q(e,t.path):null};getPrimaryRootPath=()=>this.getPrimaryRoot()?.path??``;getPrimaryRootId=()=>{let e=this.getPrimaryRoot()?.path??``;return Z(e,e)};isPrimaryNode=e=>e.isPrimaryRoot;getDisplayPath=e=>{let t=this.getRootForPath(e);if(!t)return e;let n=Q(e,t.path);return n?t.isPrimary?n:`${t.name}/${n}`:t.name};isRootPath=e=>this.roots.some(t=>Va(e,t.path));getPrimaryRoot(){return this.roots.find(e=>e.isPrimary)}getRootForNode(e){return this.roots.find(t=>Va(t.path,e.rootPath))??this.getPrimaryRoot()??{path:e.rootPath,name:e.rootPath,isPrimary:e.isPrimaryRoot}}getRootForPath(e){return this.roots.filter(t=>Q(e,t.path)!==null).toSorted((e,t)=>t.path.length-e.path.length)[0]}getParentNode(e){let t=e??this.getPrimaryRootId(),n=this.delegate.find(t);return n?.data.isDirectory?n:null}getParentPath(e){return(this.delegate.find(e.id)?.parent)?.data.path??e.rootPath}getMutableNode(e,t=!0){let n=this.delegate.find(e);return!n||n.data.isRoot?(t&&b({title:`Failed`,description:n?`File browser roots cannot be modified`:`Node with id ${e} not found in the tree`}),null):n}refreshPaths=async(e,t)=>{let n=[...new Set(e)].toSorted((e,t)=>e.length-t.length);if(n.length===0)return;let r=await oe(n,Na,e=>this.callbacks.listFiles({path:e}).catch(()=>null));for(let[e,i]of n.entries()){let n=r[e];if(n)for(let e of this.roots){let r=Z(e.path,i);(!t||t.has(r))&&this.updateDirectory(r,n.files,t)}}this.emitChange()};updateDirectory(e,t,n){let r=this.delegate.find(e)?.data;if(!r?.isDirectory)return;let i=La(Ba(t,this.getRootForNode(r)),r.children);this.delegate.update({id:e,changes:{children:n?Ra(i,n):i,loadState:`loaded`}})}emitChange(){let e=this.delegate.data;this.onChange(this.roots.length===1?[...e[0]?.children??[]]:e)}};function La(e,t){let n=new Map(t.map(e=>[e.id,e]));return e.map(e=>{let t=n.get(e.id);return!e.isDirectory||!t?.isDirectory?e:{...e,children:t.children,loadState:t.loadState}})}function Ra(e,t){return e.map(e=>e.isDirectory?t.has(e.id)?{...e,children:Ra(e.children,t)}:{...e,children:[],loadState:`unloaded`}:e)}function za(e){return{id:Z(e.path,e.path),path:e.path,name:e.name,isDirectory:!0,isMarimoFile:!1,children:[],isRoot:!0,rootPath:e.path,isPrimaryRoot:e.isPrimary,loadState:`unloaded`}}function Ba(e,t){return e.map(e=>({...e,id:Z(t.path,e.path),children:Ba(e.children??[],t),loadState:e.children?.length?`loaded`:`unloaded`,isRoot:!1,rootPath:t.path,isPrimaryRoot:t.isPrimary}))}function Z(e,t){return`${encodeURIComponent(e)}:${encodeURIComponent(t)}`}function Q(e,t){let n=Ha(t),r=e=>n?e.toLowerCase():e,i=r(e);if(i===r(t))return``;let a=Ua(t),o=t.endsWith(a)?t:`${t}${a}`,s=r(o);return i.startsWith(s)?e.slice(o.length):null}function Va(e,t){return Q(e,t)===``}function $(e,t){let n=Ua(e);return`${e}${e.endsWith(n)?``:n}${t}`}function Ha(e){return Pa.test(e)||Fa.test(e)}function Ua(e){return Fa.test(e)||/^[A-Za-z]:\\/.test(e)?`\\`:`/`}function Wa(e){let t=(0,Y.c)(13),{root:n}=e,{sendRenameFileOrFolder:r,sendCopyFileOrFolder:i,sendDeleteFileOrFolder:a}=m(),o;t[0]!==n||t[1]!==r?(o=async(e,t)=>{let{path:i,newPath:a}=x({path:e.path,name:t,root:n});return X(await r({path:i,newPath:a}))},t[0]=n,t[1]=r,t[2]=o):o=t[2];let s=o,c;t[3]!==n||t[4]!==i?(c=async e=>{let{path:t,newPath:r}=x({path:e.path,name:ae(e.name),root:n});return X(await i({path:t,newPath:r}))},t[3]=n,t[4]=i,t[5]=c):c=t[5];let l=c,u;t[6]!==n||t[7]!==a?(u=async e=>X(await a({path:ie(e.path,n)})),t[6]=n,t[7]=a,t[8]=u):u=t[8];let d=u,f;return t[9]!==d||t[10]!==l||t[11]!==s?(f={renameFile:s,duplicateFile:l,deleteFile:d},t[9]=d,t[10]=l,t[11]=s,t[12]=f):f=t[12],f}var Ga={file:`Delete file`,folder:`Delete folder`,notebook:`Delete notebook`};function Ka(){let e=(0,Y.c)(2),{openConfirm:t}=ee(),n;return e[0]===t?n=e[1]:(n=(e,n)=>{let r=e.kind??`file`;t({title:Ga[r],description:`Are you sure you want to delete ${e.name}?`,confirmAction:(0,C.jsx)(c,{onClick:async()=>{await n()},"aria-label":`Confirm`,children:`Delete`})})},e[0]=t,e[1]=n),n}function qa(e){let t=(0,Y.c)(17),{node:n,root:i,onAfterChange:a}=e,o;t[0]===i?o=t[1]:(o={root:i},t[0]=i,t[1]=o);let{duplicateFile:s,deleteFile:c}=Wa(o),l=Ka(),u;t[2]===n?u=t[3]:(u=()=>{n.edit()},t[2]=n,t[3]=u);let d=r(u),f;t[4]!==s||t[5]!==n.data||t[6]!==a?(f=async()=>{await s(n.data)&&a?.()},t[4]=s,t[5]=n.data,t[6]=a,t[7]=f):f=t[7];let p=r(f),m;t[8]!==l||t[9]!==c||t[10]!==n.data||t[11]!==a?(m=()=>{let e=n.data.isDirectory?`folder`:n.data.isMarimoFile?`notebook`:`file`;l({name:n.data.name,kind:e},async()=>{await c(n.data)&&a?.()})},t[8]=l,t[9]=c,t[10]=n.data,t[11]=a,t[12]=m):m=t[12];let h=r(m),g;return t[13]!==h||t[14]!==p||t[15]!==d?(g={handleRename:d,handleDuplicate:p,handleDelete:h},t[13]=h,t[14]=p,t[15]=d,t[16]=g):g=t[16],g}var Ja=e=>{let t=(0,Y.c)(15),{testId:n,buttonClassName:r,iconClassName:i,contentClassName:a,preventDefaultOnTrigger:o,children:s}=e,c=o!==void 0&&o,l;t[0]===c?l=t[1]:(l=e=>{e.stopPropagation(),c&&e.preventDefault()},t[0]=c,t[1]=l);let u;t[2]!==r||t[3]!==i||t[4]!==n?(u=(0,C.jsx)(g,{"data-testid":n,className:r,iconClassName:i}),t[2]=r,t[3]=i,t[4]=n,t[5]=u):u=t[5];let m;t[6]!==l||t[7]!==u?(m=(0,C.jsx)(d,{asChild:!0,tabIndex:-1,onClick:l,children:u}),t[6]=l,t[7]=u,t[8]=m):m=t[8];let h=a??`print:hidden w-[240px]`,_;t[9]!==s||t[10]!==h?(_=(0,C.jsx)(f,{align:`end`,className:h,onClick:Qa,onCloseAutoFocus:$a,children:s}),t[9]=s,t[10]=h,t[11]=_):_=t[11];let v;return t[12]!==m||t[13]!==_?(v=(0,C.jsxs)(p,{modal:!1,children:[m,_]}),t[12]=m,t[13]=_,t[14]=v):v=t[14],v},Ya=e=>{let t=(0,Y.c)(6),{onSelect:n,disabled:r,title:i,testId:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,C.jsx)(se,{className:_}),t[0]=o):o=t[0];let s;return t[1]!==r||t[2]!==n||t[3]!==a||t[4]!==i?(s=(0,C.jsxs)(u,{onSelect:n,disabled:r,title:i,"data-testid":a,children:[o,`Rename`]}),t[1]=r,t[2]=n,t[3]=a,t[4]=i,t[5]=s):s=t[5],s},Xa=e=>{let t=(0,Y.c)(6),{onSelect:n,disabled:r,title:i,testId:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,C.jsx)(v,{className:_}),t[0]=o):o=t[0];let s;return t[1]!==r||t[2]!==n||t[3]!==a||t[4]!==i?(s=(0,C.jsxs)(u,{onSelect:n,disabled:r,title:i,"data-testid":a,children:[o,`Duplicate`]}),t[1]=r,t[2]=n,t[3]=a,t[4]=i,t[5]=s):s=t[5],s},Za=e=>{let t=(0,Y.c)(6),{onSelect:n,disabled:r,title:i,testId:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,C.jsx)(y,{className:_}),t[0]=o):o=t[0];let s;return t[1]!==r||t[2]!==n||t[3]!==a||t[4]!==i?(s=(0,C.jsxs)(u,{onSelect:n,variant:`danger`,disabled:r,title:i,"data-testid":a,children:[o,`Delete`]}),t[1]=r,t[2]=n,t[3]=a,t[4]=i,t[5]=s):s=t[5],s};function Qa(e){return e.stopPropagation()}function $a(e){return e.preventDefault()}var eo=e=>{let t=(0,Y.c)(10),{node:n}=e,r=(0,S.useRef)(null),i,a;t[0]===n.data.name?(i=t[1],a=t[2]):(i=()=>{r.current?.focus();let e=n.data.name,t=e.lastIndexOf(`.`),i=t>0?t:e.length;r.current?.setSelectionRange(0,i)},a=[n.data.name],t[0]=n.data.name,t[1]=i,t[2]=a),(0,S.useEffect)(i,a);let o,s;t[3]===n?(o=t[4],s=t[5]):(o=()=>n.reset(),s=e=>{e.key===`Escape`&&n.reset(),e.key===`Enter`&&n.submit(e.currentTarget.value)},t[3]=n,t[4]=o,t[5]=s);let c;return t[6]!==n.data.name||t[7]!==o||t[8]!==s?(c=(0,C.jsx)(`input`,{ref:r,className:`flex-1 bg-transparent border border-border text-muted-foreground`,defaultValue:n.data.name,onClick:to,onBlur:o,onKeyDown:s}),t[6]=n.data.name,t[7]=o,t[8]=s,t[9]=c):c=t[9],c};function to(e){return e.stopPropagation()}export{Ya as a,Ia as c,yr as d,Un as f,Ja as i,Z as l,en as m,Za as n,Wa as o,F as p,Xa as r,qa as s,eo as t,Ma as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{l as t}from"./useEvent-xfs0Sn4r.js";import{t as n}from"./react-CBDbhulC.js";import{S as r,mt as i}from"./cells-
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{l as t}from"./useEvent-xfs0Sn4r.js";import{t as n}from"./react-CBDbhulC.js";import{S as r,mt as i}from"./cells-Cp-G34Rz.js";import{t as a}from"./compiler-runtime-CYIjoINj.js";import{g as o}from"./useEventListener-92uWqz-P.js";import{E as s}from"./config-BlNM0caL.js";import{t as c}from"./cn-ldLVeaqm.js";import{t as l}from"./jsx-runtime-B74pBk57.js";var u=a(),d=e(n(),1);function f(){return s()===`edit`?document.getElementById(`App`):void 0}function p(e){let t=(0,u.c)(7),[n,r]=(0,d.useState)(void 0),[a,o]=(0,d.useState)(void 0),s=(0,d.useRef)(null),c=(0,d.useRef)(null),l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=new Map,t[0]=l):l=t[0];let p=(0,d.useRef)(l),h,g;t[1]===e?(h=t[2],g=t[3]):(h=()=>e.length===0?void 0:(s.current=new IntersectionObserver(e=>{let t=!1;if(e.forEach(e=>{let n=e.target;e.isIntersecting?(!c.current||n.getBoundingClientRect().top<c.current.getBoundingClientRect().top)&&(c.current=n,t=!0):n===c.current&&(c.current=null,t=!0)}),t&&c.current){let e=i(c.current),t=`id`in e?e.id:e.path;r(t),o(p.current.get(c.current))}},{root:f(),rootMargin:`0px`,threshold:0}),e.forEach(t=>{if(t){let n=i(t[0]),r=e.map(m).filter(e=>`id`in n?e.id===n.id:e.textContent===t[0].textContent).indexOf(t[0]);p.current.set(t[0],r),s.current?.observe(t[0])}}),()=>{s.current&&s.current.disconnect(),c.current=null}),g=[e],t[1]=e,t[2]=h,t[3]=g),(0,d.useEffect)(h,g);let _;return t[4]!==n||t[5]!==a?(_={activeHeaderId:n,activeOccurrences:a},t[4]=n,t[5]=a,t[6]=_):_=t[6],_}function m(e){let[t]=e;return t}function h(e){if(e.length===0)return[];let t=new Map;return e.map(e=>{let n=`id`in e.by?e.by.id:e.by.path,r=t.get(n)??0;t.set(n,r+1);let i=_(e,r);return i?[i,n]:null}).filter(Boolean)}function g(e,t){let n=_(e,t);if(!n){o.warn(`Could not find element for outline item`,e);return}n.scrollIntoView({behavior:`smooth`,block:`start`}),n.classList.add(`outline-item-highlight`),setTimeout(()=>{n.classList.remove(`outline-item-highlight`)},3e3)}function _(e,t){return`id`in e.by?document.querySelectorAll(`[id="${CSS.escape(e.by.id)}"]`)[t]:document.evaluate(e.by.path,document,null,XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue}var v=l(),y=()=>{let e=(0,u.c)(19),{items:n}=t(r),i;e[0]===n?i=e[1]:(i=h(n),e[0]=n,e[1]=i);let{activeHeaderId:a,activeOccurrences:o}=p(i),[s,l]=d.useState(!1);if(n.length<2)return null;let f,m,g;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>l(!0),m=()=>l(!1),g=c(`fixed top-[25vh] right-8 z-10000 print:hidden`,`hidden md:block`),e[2]=f,e[3]=m,e[4]=g):(f=e[2],m=e[3],g=e[4]);let _=s?`left-[-280px] opacity-100`:`left-[300px] opacity-0`,y;e[5]===_?y=e[6]:(y=c(`-top-4 max-h-[70vh] bg-background rounded-lg shadow-lg absolute overflow-auto transition-all duration-300 w-[300px] border`,_),e[5]=_,e[6]=y);let S;e[7]!==a||e[8]!==o||e[9]!==n||e[10]!==y?(S=(0,v.jsx)(x,{className:y,items:n,activeHeaderId:a,activeOccurrences:o}),e[7]=a,e[8]=o,e[9]=n,e[10]=y,e[11]=S):S=e[11];let C;e[12]!==a||e[13]!==o||e[14]!==n?(C=(0,v.jsx)(b,{items:n,activeHeaderId:a,activeOccurrences:o}),e[12]=a,e[13]=o,e[14]=n,e[15]=C):C=e[15];let w;return e[16]!==S||e[17]!==C?(w=(0,v.jsxs)(`div`,{onMouseEnter:f,onMouseLeave:m,className:g,children:[S,C]}),e[16]=S,e[17]=C,e[18]=w):w=e[18],w},b=e=>{let t=(0,u.c)(8),{items:n,activeHeaderId:r,activeOccurrences:i}=e,a,o;if(t[0]!==r||t[1]!==i||t[2]!==n){let e=new Map;a=`flex flex-col gap-4 items-end max-h-[70vh] overflow-hidden`,o=n.map((t,n)=>{let a=`id`in t.by?t.by.id:t.by.path,o=e.get(a)??0;return e.set(a,o+1),(0,v.jsx)(`div`,{className:c(`h-[2px] bg-muted-foreground/60`,t.level===1&&`w-5`,t.level===2&&`w-4`,t.level===3&&`w-3`,t.level===4&&`w-2`,o===i&&r===a&&`bg-foreground`),onClick:()=>g(t,o)},`${a}-${n}`)}),t[0]=r,t[1]=i,t[2]=n,t[3]=a,t[4]=o}else a=t[3],o=t[4];let s;return t[5]!==a||t[6]!==o?(s=(0,v.jsx)(`div`,{className:a,children:o}),t[5]=a,t[6]=o,t[7]=s):s=t[7],s},x=e=>{let t=(0,u.c)(11),{items:n,activeHeaderId:r,activeOccurrences:i,className:a}=e,o,s;if(t[0]!==r||t[1]!==i||t[2]!==a||t[3]!==n){let e=new Map;t[6]===a?o=t[7]:(o=c(`flex flex-col overflow-auto py-4 pl-2`,a),t[6]=a,t[7]=o),s=n.map((t,n)=>{let a=`id`in t.by?t.by.id:t.by.path,o=e.get(a)??0;e.set(a,o+1);let s=`${a}-${n}`,l={className:c(`px-2 py-1 cursor-pointer hover:bg-accent/50 hover:text-accent-foreground rounded-l`,t.level===1&&`font-semibold`,t.level===2&&`ml-3`,t.level===3&&`ml-6`,t.level===4&&`ml-9`,o===i&&r===a&&`text-accent-foreground`),onClick:()=>g(t,o)};return t.html?(0,v.jsx)(`div`,{...l,dangerouslySetInnerHTML:{__html:t.html}},s):(0,v.jsx)(`div`,{...l,children:t.name},s)}),t[0]=r,t[1]=i,t[2]=a,t[3]=n,t[4]=o,t[5]=s}else o=t[4],s=t[5];let l;return t[8]!==o||t[9]!==s?(l=(0,v.jsx)(`div`,{className:o,children:s}),t[8]=o,t[9]=s,t[10]=l):l=t[10],l};export{p as i,x as n,h as r,y as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./react-CBDbhulC.js";import{t as n}from"./compiler-runtime-CYIjoINj.js";import{t as r}from"./ErrorBoundary-CDVGFYfr.js";import{t as i}from"./jsx-runtime-B74pBk57.js";import{r as a}from"./requests-C6_IaFh7.js";import{t as o}from"./spinner-Ck-Hgfvj.js";import{Wt as s,r as c}from"./input-
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./react-CBDbhulC.js";import{t as n}from"./compiler-runtime-CYIjoINj.js";import{t as r}from"./ErrorBoundary-CDVGFYfr.js";import{t as i}from"./jsx-runtime-B74pBk57.js";import{r as a}from"./requests-C6_IaFh7.js";import{t as o}from"./spinner-Ck-Hgfvj.js";import{Wt as s,r as c}from"./input-DEbY281O.js";import{n as l,t as u}from"./paths-zcL04qUW.js";import{c as d,t as f}from"./session-Sz5nSFku.js";import{n as p}from"./useAsyncData-Buhk-UgR.js";import{a as m}from"./errors-DzO-nXy-.js";import{t as h}from"./error-banner-Dw5YY9wq.js";import{n as g,t as _}from"./card-dYXwy2mo.js";var v=n(),y=e(t(),1),b=i(),x=e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase(),S=e=>{let t=u.guessDeliminator(e).deliminator;return e.replace(/\.[^./]+$/,``).split(t).filter(Boolean).map(e=>e.split(/[_-]/).map(x).join(` `)).join(` > `)},C=e=>`${f()}-${encodeURIComponent(e)}`,w=e=>{try{return new URL(e).protocol===`https:`}catch{return!1}},T=10,E=()=>{let e=(0,v.c)(32),{getWorkspaceFiles:t}=a(),[n,i]=(0,y.useState)(``),u;e[0]===t?u=e[1]:(u=()=>t({includeMarkdown:!1}),e[0]=t,e[1]=u);let f;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(f=[],e[2]=f):f=e[2];let g=p(u,f),_=g.data;_?.files,_?.root;let x;e[3]===_?.files?x=e[4]:(x=_?.files??[],e[3]=_?.files,e[4]=x);let C=x,E=_?.root??``,A;if(e[5]!==C||e[6]!==E){let t;e[8]===E?t=e[9]:(t=e=>{let t=E&&l.isAbsolute(e.path)&&e.path.startsWith(E)?l.rest(e.path,E):e.path,n=e.opengraph?.title??S(l.basename(t)),r=S(l.dirname(t)),i=e.opengraph?.description??``,a=e.opengraph?.image,o=a&&w(a)?a:d(`og/thumbnail?file=${encodeURIComponent(t)}`).toString();return{...e,relativePath:t,title:n,subtitle:r,description:i,thumbnailUrl:o}},e[8]=E,e[9]=t),A=C.filter(D).map(t).toSorted(O),e[5]=C,e[6]=E,e[7]=A}else A=e[7];let j=A,M;bb0:{if(!n){M=j;break bb0}let t;if(e[10]!==j||e[11]!==n){let r=n.toLowerCase();t=j.filter(e=>e.title.toLowerCase().includes(r)),e[10]=j,e[11]=n,e[12]=t}else t=e[12];M=t}let N=M;if(g.isPending){let t;return e[13]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,b.jsx)(o,{centered:!0,size:`xlarge`,className:`mt-6`}),e[13]=t):t=e[13],t}if(g.error){let t;e[14]===g.error?t=e[15]:(t=m(g.error),e[14]=g.error,e[15]=t);let n;return e[16]===t?n=e[17]:(n=(0,b.jsx)(h,{kind:`danger`,className:`rounded p-4`,children:t}),e[16]=t,e[17]=n),n}if(!_){let t;return e[18]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,b.jsx)(o,{centered:!0,size:`xlarge`,className:`mt-6`}),e[18]=t):t=e[18],t}let P;e[19]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,b.jsx)(`img`,{src:`logo.png`,alt:`marimo logo`,className:`w-48 mb-2`}),e[19]=P):P=e[19];let F;e[20]!==_.fileCount||e[21]!==_.hasMore?(F=_.hasMore&&(0,b.jsxs)(h,{kind:`warn`,className:`rounded p-4`,children:[`Showing first `,_.fileCount,` files. Your workspace has more files.`]}),e[20]=_.fileCount,e[21]=_.hasMore,e[22]=F):F=e[22];let I;e[23]!==j.length||e[24]!==n?(I=j.length>T&&(0,b.jsx)(c,{id:`search`,value:n,icon:(0,b.jsx)(s,{className:`h-4 w-4`}),onChange:e=>i(e.target.value),placeholder:`Search`,rootClassName:`mb-3`,className:`mb-0 border-border`}),e[23]=j.length,e[24]=n,e[25]=I):I=e[25];let L;e[26]===N?L=e[27]:(L=N.length===0?(0,b.jsx)(h,{kind:`warn`,className:`rounded p-4`,children:`No marimo apps found.`}):(0,b.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4`,children:N.map(k)}),e[26]=N,e[27]=L);let R;return e[28]!==F||e[29]!==I||e[30]!==L?(R=(0,b.jsx)(y.Suspense,{children:(0,b.jsxs)(`div`,{className:`flex flex-col gap-6 max-w-6xl container pt-5 pb-20 z-10`,children:[P,(0,b.jsx)(r,{children:(0,b.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[F,I,L]})})]})}),e[28]=F,e[29]=I,e[30]=L,e[31]=R):R=e[31],R};function D(e){return!e.isDirectory}function O(e,t){return e.relativePath.localeCompare(t.relativePath)}function k(e){return(0,b.jsx)(`a`,{href:d(`?file=${encodeURIComponent(e.relativePath)}`).toString(),target:C(e.path),className:`no-underline`,children:(0,b.jsxs)(_,{className:`h-full overflow-hidden hover:bg-accent/20 transition-colors`,children:[(0,b.jsx)(`img`,{src:e.thumbnailUrl,alt:e.title,loading:`lazy`,className:`w-full aspect-1200/630 object-cover border-b border-border/60`}),(0,b.jsx)(g,{className:`p-6 pt-4`,children:(0,b.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[e.subtitle&&(0,b.jsx)(`div`,{className:`text-sm font-semibold text-muted-foreground`,children:e.subtitle}),(0,b.jsx)(`div`,{className:`text-lg font-medium`,children:e.title}),e.description&&(0,b.jsx)(`div`,{className:`text-sm text-muted-foreground line-clamp-3 mt-1`,children:e.description})]})})]})},e.path)}export{E as default};
|