@marimo-team/frontend 0.23.7-dev15 → 0.23.7-dev17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. package/dist/assets/{CellStatus-CN4mKUXv.js → CellStatus-Cb08qBNj.js} +1 -1
  2. package/dist/assets/{ConnectedDataExplorerComponent-DeBM0cl9.js → ConnectedDataExplorerComponent-BEDxXsa0.js} +1 -1
  3. package/dist/assets/{ErrorBoundary-DzYV_VeY.js → ErrorBoundary-DyYDV0HI.js} +1 -1
  4. package/dist/assets/{ImperativeModal-D7lQ0Q7_.js → ImperativeModal-CvOOClOZ.js} +1 -1
  5. package/dist/assets/{JsonOutput-B0sjIMBK.js → JsonOutput-BqavrgK2.js} +11 -11
  6. package/dist/assets/{LazyAnyLanguageCodeMirror-pAFdCqyC.js → LazyAnyLanguageCodeMirror-CXbgDeVw.js} +2 -2
  7. package/dist/assets/{MarimoErrorOutput-ClA7EZGX.js → MarimoErrorOutput-DyaTrW3L.js} +2 -2
  8. package/dist/assets/{RSPContexts-CINae4Gg.js → RSPContexts-eRifaAal.js} +1 -1
  9. package/dist/assets/{RenderHTML-CruxVneu.js → RenderHTML-CvnUbELu.js} +1 -1
  10. package/dist/assets/{RunButton-CJsJsGj-.js → RunButton-Cw4OpYze.js} +1 -1
  11. package/dist/assets/{add-cell-with-ai-C7f_bUyB.js → add-cell-with-ai-CsUwlDQR.js} +16 -16
  12. package/dist/assets/{add-connection-dialog-DSOgwTlO.js → add-connection-dialog-B00bTtAj.js} +1 -1
  13. package/dist/assets/{agent-panel-CeDyKw1_.js → agent-panel-vnhI1dDS.js} +3 -3
  14. package/dist/assets/{ai-model-dropdown-kQdQhWyz.js → ai-model-dropdown-E3o7Xd1q.js} +4 -4
  15. package/dist/assets/{alert-dialog-BGBdrcqJ.js → alert-dialog-BqFLkbUc.js} +1 -1
  16. package/dist/assets/{any-language-editor-CwwS-naY.js → any-language-editor-Bu4hSl-d.js} +1 -1
  17. package/dist/assets/{app-config-button-dnmk7p6n.js → app-config-button-DTjn2zGb.js} +1 -1
  18. package/dist/assets/{button-D9nb17Rw.js → button-BbCh-29a.js} +1 -1
  19. package/dist/assets/{cache-panel-DDJqyuAl.js → cache-panel-VFeeaT52.js} +1 -1
  20. package/dist/assets/{capabilities-C_FLIcjP.js → capabilities-A_KhFcGV.js} +1 -1
  21. package/dist/assets/cell-editor-C41pv5M8.js +20 -0
  22. package/dist/assets/cell-link-sLKimSIQ.js +1 -0
  23. package/dist/assets/{cells-BBDzmUIS.js → cells-Vnv1zw09.js} +71 -71
  24. package/dist/assets/{chat-display-Ct3Me0kL.js → chat-display-sbJsmezM.js} +1 -1
  25. package/dist/assets/{chat-panel-CXvtUFUU.js → chat-panel-DFLJ558d.js} +1 -1
  26. package/dist/assets/{chat-ui-UFERs8Gx.js → chat-ui-BWV8p_Y-.js} +1 -1
  27. package/dist/assets/{column-preview-Xuel1zsI.js → column-preview-DYtdLerF.js} +1 -1
  28. package/dist/assets/{command-CBCkexpx.js → command-OHlV5HHD.js} +1 -1
  29. package/dist/assets/{command-palette-DuPUk7of.js → command-palette-CvoYeZJD.js} +1 -1
  30. package/dist/assets/{common-Dk5VdfJt.js → common-BhQv6499.js} +1 -1
  31. package/dist/assets/{components-CTKNCmC_.js → components-BA-LgiMU.js} +1 -1
  32. package/dist/assets/{components-DsoH1pO3.js → components-c7ywwQgj.js} +1 -1
  33. package/dist/assets/{config-CPqw1wUv.js → config-CeTe6Mau.js} +1 -1
  34. package/dist/assets/{copy-BCF-tANo.js → copy-DqHGjTAN.js} +1 -1
  35. package/dist/assets/{copy-icon-BYNydU7b.js → copy-icon-8abB4Lgh.js} +1 -1
  36. package/dist/assets/{createReducer-1ePoj7v6.js → createReducer-CI9qeK_X.js} +1 -1
  37. package/dist/assets/{datasource-CmTCEk66.js → datasource-BGeucDqU.js} +2 -2
  38. package/dist/assets/{dates-CAlnO9QB.js → dates-orWokFRU.js} +1 -1
  39. package/dist/assets/{dependency-graph-panel-0u1-ZaOT.js → dependency-graph-panel-Dm8aJtqe.js} +4 -4
  40. package/dist/assets/{dialog-Dj0qTFnG.js → dialog-DBzaWZPw.js} +1 -1
  41. package/dist/assets/{dist-BoOh2kN5.js → dist-BdyjRhEt.js} +1 -1
  42. package/dist/assets/documentation-panel-BmTIHvGw.js +1 -0
  43. package/dist/assets/{download-QGh9oR1D.js → download-CHV3J2Ib.js} +4 -4
  44. package/dist/assets/{dropdown-menu-D1A3cFC8.js → dropdown-menu-CR7cnzLX.js} +1 -1
  45. package/dist/assets/{edit-page-hJAbnd__.js → edit-page-Dvj9-hG8.js} +6 -6
  46. package/dist/assets/{error-banner-C10O4l3y.js → error-banner-JKAA0BVv.js} +1 -1
  47. package/dist/assets/{error-panel-ChlzbfWg.js → error-panel-yG2LOaXm.js} +1 -1
  48. package/dist/assets/{es-DaYh1PsD.js → es-CaLpD1T5.js} +1 -1
  49. package/dist/assets/{field-BrLPDxsA.js → field-CD7Io4xo.js} +1 -1
  50. package/dist/assets/{file-explorer-panel-8dWLD2PY.js → file-explorer-panel-Bsp9TexR.js} +3 -3
  51. package/dist/assets/{file-icons-Cs4oXsAy.js → file-icons-Cisq31t9.js} +1 -1
  52. package/dist/assets/{file-name-input-g7pBBCjk.js → file-name-input-Dti85i-l.js} +1 -1
  53. package/dist/assets/{floating-outline-CFUSr2du.js → floating-outline-CnVsBFJf.js} +1 -1
  54. package/dist/assets/{focus-J47a1GCq.js → focus-bWAnl_NC.js} +1 -1
  55. package/dist/assets/{form-CdFqEqTA.js → form-iTIO7T75.js} +2 -2
  56. package/dist/assets/{formats-Dsc8AdCp.js → formats-D4Sso5bX.js} +1 -1
  57. package/dist/assets/{formatting-Chn6WhRe.js → formatting-BDxRugYY.js} +1 -1
  58. package/dist/assets/{fullscreen-BDxedMYP.js → fullscreen-eipL3i3Y.js} +1 -1
  59. package/dist/assets/{gallery-page-TIWZFnOT.js → gallery-page-DDCU0YEU.js} +1 -1
  60. package/dist/assets/{glide-data-editor-ChlIFl33.js → glide-data-editor-BELaKoS9.js} +1 -1
  61. package/dist/assets/{globals-DUw71mRV.js → globals-B64vMQ0L.js} +1 -1
  62. package/dist/assets/{home-page-HhJfA35e.js → home-page-CSSZCATB.js} +1 -1
  63. package/dist/assets/{hooks-DbPDczTe.js → hooks-CxyxjDM-.js} +1 -1
  64. package/dist/assets/{html-to-image-CAiN3VHj.js → html-to-image-WbbYaIba.js} +2 -2
  65. package/dist/assets/{index-BbBhLC0d.css → index-BcFmKehD.css} +1 -1
  66. package/dist/assets/{index-CH2ZE_q-.js → index-BmG6rFrZ.js} +7 -7
  67. package/dist/assets/{input-BX98vgAu.js → input-DW6LU13i.js} +1 -1
  68. package/dist/assets/kiosk-mode-DPxzN-M0.js +1 -0
  69. package/dist/assets/{label-DTR8T0AE.js → label-xHqFtfdz.js} +1 -1
  70. package/dist/assets/{layout-C1dvirgi.js → layout-B3ilKFRj.js} +5 -5
  71. package/dist/assets/{links-BhX7oUFH.js → links-Bi_gi3iZ.js} +1 -1
  72. package/dist/assets/{logs-panel-B2tW94um.js → logs-panel-7jkC5Vwq.js} +1 -1
  73. package/dist/assets/{maps-C48Oksn0.js → maps-BS8Ra-JU.js} +1 -1
  74. package/dist/assets/{markdown-renderer-CVd_mMPt.js → markdown-renderer-CXVa5ubo.js} +2 -2
  75. package/dist/assets/{menu-items-CwUpDHG7.js → menu-items-DcP01QzW.js} +1 -1
  76. package/dist/assets/{mermaid-ByDNZESx.js → mermaid-B6II7_1_.js} +1 -1
  77. package/dist/assets/{multi-map-rafH3cg3.js → multi-map-CUuNtzHt.js} +1 -1
  78. package/dist/assets/{name-cell-input-DDQOQSsh.js → name-cell-input-DP5q5hou.js} +1 -1
  79. package/dist/assets/{numbers-CAW8yjzj.js → numbers-etj36G80.js} +1 -1
  80. package/dist/assets/{outline-panel-BuTQis3o.js → outline-panel-CAMKZApa.js} +1 -1
  81. package/dist/assets/{packages-panel-CVu8Cpkz.js → packages-panel-BqWdwyLN.js} +1 -1
  82. package/dist/assets/{panels-Z5fVmDRY.js → panels-BaOloRiT.js} +1 -1
  83. package/dist/assets/{popover-UExmgBsf.js → popover-Bz_0Vkyf.js} +1 -1
  84. package/dist/assets/process-output-3R47GJ28.js +1 -0
  85. package/dist/assets/{radio-group-CpHTexlq.js → radio-group-BdIsm_qJ.js} +1 -1
  86. package/dist/assets/{readonly-python-code-DOXF2p8K.js → readonly-python-code-Dz8x4isw.js} +1 -1
  87. package/dist/assets/{renderShortcut-Bfk4NjRL.js → renderShortcut-D_8sQXCD.js} +1 -1
  88. package/dist/assets/{reveal-component-DLRiYfBj.js → reveal-component-BomJwrt3.js} +2 -2
  89. package/dist/assets/{run-page-DDMPBh9O.js → run-page-DOVpxgC2.js} +1 -1
  90. package/dist/assets/{runs-DRld30N_.js → runs-D87fZMlB.js} +1 -1
  91. package/dist/assets/scratchpad-panel-CK721GBB.js +1 -0
  92. package/dist/assets/{secrets-panel-B8CbRNMo.js → secrets-panel-DgXG36fa.js} +1 -1
  93. package/dist/assets/{select-5i7URBEn.js → select-DZcFyKFQ.js} +1 -1
  94. package/dist/assets/{session-VtovaFBS.js → session-gB-8RZAq.js} +1 -1
  95. package/dist/assets/{session-panel-DHfR6tDv.js → session-panel-_DOPOxmi.js} +1 -1
  96. package/dist/assets/{share-CqnSBwZy.js → share-DdpVbvDN.js} +1 -1
  97. package/dist/assets/{snippets-panel-CGs_ME5h.js → snippets-panel-CtEyZp6T.js} +1 -1
  98. package/dist/assets/{spec-Cq8FVoTf.js → spec-ByOlaO3e.js} +1 -1
  99. package/dist/assets/{state-B34hXjp9.js → state-BNbY1nER.js} +1 -1
  100. package/dist/assets/{state-BV_qjCwT.js → state-BmNumiqM.js} +1 -1
  101. package/dist/assets/{state-xEqF8Q3P.js → state-CZ60VH86.js} +3 -3
  102. package/dist/assets/{state-DzJiyfWW.js → state-DujssAPg.js} +1 -1
  103. package/dist/assets/{strings-md4mFbOQ.js → strings-wdPMRf6Z.js} +1 -1
  104. package/dist/assets/{swiper-component-CBSZ9l9W.js → swiper-component-B1e0X8Wt.js} +1 -1
  105. package/dist/assets/{switch-BvybnC9P.js → switch-BT9Ki10B.js} +1 -1
  106. package/dist/assets/{terminal-bb566dQu.js → terminal-G4Y2HQik.js} +1 -1
  107. package/dist/assets/{textarea-bAp21zYj.js → textarea-CUCKX5FP.js} +1 -1
  108. package/dist/assets/{tooltip-Gcwqb_SK.js → tooltip-DTV9tlSr.js} +1 -1
  109. package/dist/assets/{tracing-HakOQiQR.js → tracing-B84tRfOs.js} +1 -1
  110. package/dist/assets/{tracing-panel-eas_Nc-b.js → tracing-panel-Cv--myyS.js} +2 -2
  111. package/dist/assets/{tree-actions-Ci3CV3hN.js → tree-actions-Bzr5XDGx.js} +1 -1
  112. package/dist/assets/{useBoolean-xXcxYCaI.js → useBoolean-BYUGB06y.js} +1 -1
  113. package/dist/assets/useCellActionButton-Mkc0xJ7L.js +1 -0
  114. package/dist/assets/{useDeleteCell-GFhvGBJ7.js → useDeleteCell-C67FKMcv.js} +1 -1
  115. package/dist/assets/{useDependencyPanelTab-DHd7_0b9.js → useDependencyPanelTab-BdgKnqQ5.js} +1 -1
  116. package/dist/assets/{useEventListener-BR0C1MaI.js → useEventListener-DvoEXWke.js} +1 -1
  117. package/dist/assets/{useHotkey-DccKPSPx.js → useHotkey-3DXVR1KZ.js} +1 -1
  118. package/dist/assets/{useIframeCapabilities-BvE4n6hj.js → useIframeCapabilities-BfimgBBe.js} +1 -1
  119. package/dist/assets/{useInstallPackage-D0NLybAx.js → useInstallPackage-CScpUItd.js} +1 -1
  120. package/dist/assets/{useInterval-CvFz96h2.js → useInterval-CAy_JAzY.js} +1 -1
  121. package/dist/assets/useNotebookActions-C_PqW3GC.js +1 -0
  122. package/dist/assets/useRunCells-C991pS4a.js +1 -0
  123. package/dist/assets/useSplitCell-FJGXiUyn.js +1 -0
  124. package/dist/assets/{useTheme-DFXuDFj9.js → useTheme-DyLIIrGi.js} +1 -1
  125. package/dist/assets/{utils-CGtUbqcR.js → utils-441jgnV8.js} +1 -1
  126. package/dist/assets/{utils-BrXijSdZ.js → utils-Wvjk_Y4h.js} +1 -1
  127. package/dist/assets/{vega-component-Bq0lrkG7.js → vega-component-2S2ePGs4.js} +1 -1
  128. package/dist/assets/{write-secret-modal-D8Sww7eA.js → write-secret-modal-BcEaI0rD.js} +1 -1
  129. package/dist/index.html +68 -68
  130. package/package.json +1 -1
  131. package/src/components/editor/actions/useNotebookActions.tsx +3 -1
  132. package/src/components/editor/controls/Controls.tsx +3 -1
  133. package/src/components/editor/navigation/__tests__/clipboard.test.ts +107 -0
  134. package/src/components/editor/navigation/__tests__/navigation.test.ts +70 -0
  135. package/src/components/editor/navigation/clipboard.ts +101 -23
  136. package/src/components/editor/navigation/navigation.ts +15 -1
  137. package/src/components/editor/notebook-cell.tsx +3 -0
  138. package/src/components/pages/run-page.tsx +4 -1
  139. package/src/core/cells/__tests__/cells.test.ts +187 -0
  140. package/src/core/cells/__tests__/pending-cut-service.test.tsx +145 -0
  141. package/src/core/cells/cells.ts +102 -17
  142. package/src/core/cells/document-changes.ts +6 -1
  143. package/src/core/cells/pending-cut-service.ts +64 -0
  144. package/src/core/cells/utils.ts +11 -0
  145. package/src/core/codemirror/cells/extensions.ts +10 -0
  146. package/src/core/hotkeys/hotkeys.ts +5 -0
  147. package/src/css/app/Cell.css +13 -0
  148. package/src/utils/__tests__/id-tree.test.ts +71 -0
  149. package/src/utils/id-tree.tsx +89 -0
  150. package/dist/assets/cell-editor-BN3D1_w1.js +0 -22
  151. package/dist/assets/cell-link-DqiCeeeS.js +0 -1
  152. package/dist/assets/documentation-panel-CcE7aGO9.js +0 -1
  153. package/dist/assets/kiosk-mode-Cr9yyT7A.js +0 -1
  154. package/dist/assets/process-output-DSqjZYr-.js +0 -1
  155. package/dist/assets/scratchpad-panel-CUMSD7sH.js +0 -1
  156. package/dist/assets/useCellActionButton-CHLJURZ7.js +0 -1
  157. package/dist/assets/useNotebookActions-CZ7s2FNR.js +0 -1
  158. package/dist/assets/useRunCells-RJeImyCn.js +0 -1
  159. package/dist/assets/useSplitCell-BRZ3fmLD.js +0 -1
@@ -1 +1 @@
1
- import{s as ie}from"./chunk-LvLJmgfZ.js";import{d as de,l as De,p as he,u as K}from"./useEvent-D91BmmQi.js";import{t as Be}from"./react-Bj1aDYRI.js";import{$n as Ve,Ar as Pe,Dr as se,E as Me,Fn as Ee,Fr as ue,Gt as Oe,Ln as Ue,Lr as Re,Lt as Ae,N as Ge,Or as xe,Pn as We,Pr as pe,Rr as fe,Si as ze,Ut as He,Wt as Ke,a as Je,er as Xe,f as Qe,fr as Ye,gn as Ze,j as ea,jr as aa,kr as be,kt as ta,lr as sa,nr as la,pr as le,wr as na}from"./cells-BBDzmUIS.js";import"./react-dom-CSu739Rf.js";import{t as ge}from"./compiler-runtime-B3qBwwSJ.js";import{o as ra}from"./utils-BrXijSdZ.js";import{t as oa}from"./ErrorBoundary-DzYV_VeY.js";import{t as O}from"./cn-DCUzRj2J.js";import{t as ma}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-BDxedMYP.js";import{n as ca}from"./multi-map-rafH3cg3.js";import"./popover-UExmgBsf.js";import{B as je,H as ia,U as da,V as ha,W as ua,z as ne}from"./JsonOutput-B0sjIMBK.js";import"./download-QGh9oR1D.js";import{r as Ne}from"./radio-group-CpHTexlq.js";import{t as re}from"./tooltip-Gcwqb_SK.js";import{r as xa,t as ee}from"./button-D9nb17Rw.js";import"./dist-BrR4M-k3.js";import{u as J}from"./arrays-DYDL-3-i.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{i as pa}from"./strings-md4mFbOQ.js";import{r as fa}from"./requests-DIwGYs0l.js";import{t as ba}from"./createLucideIcon-D5guW7EU.js";import{t as ga}from"./x-C-6liIBr.js";import"./markdown-renderer-CVd_mMPt.js";import{t as ye}from"./add-connection-dialog-DSOgwTlO.js";import{t as ve}from"./plus-BgB18UzY.js";import{a as ja}from"./input-BX98vgAu.js";import{n as Na,o as ya}from"./column-preview-Xuel1zsI.js";import{t as va}from"./workflow-ClChd5xI.js";import"./dist-DQOq2Tf-.js";import"./dist-DBiqbYe-.js";import"./dist-VjDnmGCZ.js";import"./dist-E6ttb8td.js";import"./dist-B324sPca.js";import"./session-VtovaFBS.js";import"./purify.es-DBmVz-Wl.js";import"./dates-CAlnO9QB.js";import{t as wa}from"./copy-icon-BYNydU7b.js";import{t as Sa}from"./context-B3MsQb-b.js";import"./utils-CGtUbqcR.js";import"./vega-loader.browser-BegSZk0G.js";import"./defaultLocale-YteS-k_t.js";import"./defaultLocale-B6z1Qyqt.js";import{t as we}from"./cell-link-DqiCeeeS.js";import{n as oe}from"./useAsyncData-BFC6lWG9.js";import{a as Ca,o as ae,t as _a,u as ka}from"./command-CBCkexpx.js";import"./chunk-5FQGJX7Z-BReOK4Lg.js";import{r as $a}from"./html-to-image-CAiN3VHj.js";import{o as Fa}from"./focus-J47a1GCq.js";import{a as Ia,i as La,n as Ta,o as Se,r as qa,t as Da}from"./table-DPyRV1LT.js";import"./react-resizable-panels.browser.esm-BUNcfKXO.js";import{n as Ba}from"./icons-D9TuFTJG.js";import{r as Va}from"./tree-actions-Ci3CV3hN.js";import{a as me,i as te,o as ce,r as Ce,s as _e,t as Pa}from"./components-CTKNCmC_.js";import{t as Ma}from"./empty-state-vCWg-_A9.js";import{n as Ea,t as Oa}from"./common-Dk5VdfJt.js";import{a as Ua,i as Ra,n as ke,r as $e,t as Fe}from"./components-DsoH1pO3.js";var Aa=ba("square-equal",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M7 10h10",key:"1101jm"}],["path",{d:"M7 14h10",key:"1mhdw3"}]]),A=ge(),C=ie(Be(),1),t=ie(ma(),1),S={engineEmpty:"pl-3",engine:"pl-3 pr-2",database:"pl-4",schemaEmpty:"pl-8",schema:"pl-7",schemaLoading:"pl-8",tableLoading:"pl-11",tableSchemaless:"pl-8",tableWithSchema:"pl-12",columnLocal:"pl-5",columnSql:"pl-13",columnPreview:"pl-10"},Ga=he(a=>{let e=a(be),s=a(Ue),l=a(Je);return J(e,r=>{if(!r.variable_name)return-1;let o=Object.values(s).find(j=>j.name===r.variable_name);if(!o)return 0;let n=l.inOrderIds.indexOf(o.declaredBy[0]);return n===-1?0:n})});const Ie=he(a=>{let e=new Map(a(na));for(let s of fe){let l=e.get(s);l&&(l.databases.length===0&&e.delete(s),l.databases.length===1&&l.databases[0].name==="memory"&&l.databases[0].schemas.length===0&&e.delete(s))}return J([...e.values()],s=>fe.has(s.name)?1:0)}),Wa=()=>{let a=(0,A.c)(32),[e,s]=C.useState(""),l=de(xe),r=K(Ga),o=K(Ie);if(r.length===0&&o.length===0){let u;return a[0]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)(Ma,{title:"No tables found",description:"Any datasets/dataframes in the global scope will be shown here.",action:(0,t.jsx)(ye,{children:(0,t.jsxs)(ee,{variant:"outline",size:"sm",children:["Add database or catalog",(0,t.jsx)(ve,{className:"h-4 w-4 ml-2"})]})}),icon:(0,t.jsx)(le,{})}),a[0]=u):u=a[0],u}let n=!!e.trim(),j;a[1]===l?j=a[2]:(j=u=>{l(u.length>0),s(u)},a[1]=l,a[2]=j);let g;a[3]!==e||a[4]!==j?(g=(0,t.jsx)(Ca,{placeholder:"Search tables...",className:"h-6 m-1",value:e,onValueChange:j,rootClassName:"flex-1 border-r border-b-0"}),a[3]=e,a[4]=j,a[5]=g):g=a[5];let N;a[6]===n?N=a[7]:(N=n&&(0,t.jsx)("button",{type:"button",className:"float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",onClick:()=>s(""),children:(0,t.jsx)(ga,{className:"h-4 w-4"})}),a[6]=n,a[7]=N);let f;a[8]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)(ye,{children:(0,t.jsx)(ee,{variant:"ghost",size:"sm",className:"px-2 rounded-none focus-visible:outline-hidden",children:(0,t.jsx)(ve,{className:"h-4 w-4"})})}),a[8]=f):f=a[8];let c;a[9]!==g||a[10]!==N?(c=(0,t.jsxs)("div",{className:"flex items-center w-full border-b",children:[g,N,f]}),a[9]=g,a[10]=N,a[11]=c):c=a[11];let i;if(a[12]!==o||a[13]!==n||a[14]!==e){let u;a[16]!==n||a[17]!==e?(u=x=>(0,t.jsx)(za,{connection:x,hasChildren:x.databases.length>0,children:x.databases.map(b=>(0,t.jsx)(Ha,{engineName:x.name,database:b,hasSearch:n,children:(0,t.jsx)(Ka,{schemas:b.schemas,defaultSchema:x.default_schema,defaultDatabase:x.default_database,engineName:x.name,databaseName:b.name,hasSearch:n,searchValue:e,dialect:x.dialect})},b.name))},x.name),a[16]=n,a[17]=e,a[18]=u):u=a[18],i=o.map(u),a[12]=o,a[13]=n,a[14]=e,a[15]=i}else i=a[15];let h;a[19]!==o.length||a[20]!==r.length?(h=o.length>0&&r.length>0&&(0,t.jsxs)(Ce,{className:S.engine,children:[(0,t.jsx)(Ba,{className:"h-4 w-4 text-muted-foreground"}),(0,t.jsx)("span",{className:"text-xs",children:"Python"})]}),a[19]=o.length,a[20]=r.length,a[21]=h):h=a[21];let p;a[22]!==e||a[23]!==r?(p=r.length>0&&(0,t.jsx)(Le,{tables:r,searchValue:e}),a[22]=e,a[23]=r,a[24]=p):p=a[24];let d;a[25]!==i||a[26]!==h||a[27]!==p?(d=(0,t.jsxs)(ka,{className:"flex flex-col",children:[i,h,p]}),a[25]=i,a[26]=h,a[27]=p,a[28]=d):d=a[28];let m;return a[29]!==c||a[30]!==d?(m=(0,t.jsxs)(_a,{className:"border-b bg-background rounded-none h-full pb-10 overflow-auto outline-hidden",shouldFilter:!1,children:[c,d]}),a[29]=c,a[30]=d,a[31]=m):m=a[31],m};var za=a=>{let e=(0,A.c)(25),{connection:s,children:l,hasChildren:r}=a,o=s.name===Re,n=o?"In-Memory":s.name,{previewDataSourceConnection:j}=fa(),g;e[0]!==s.name||e[1]!==j?(g=async()=>{await j({engine:s.name})},e[0]=s.name,e[1]=j,e[2]=g):g=e[2];let N=g,f;e[3]===s.dialect?f=e[4]:(f=(0,t.jsx)(ta,{className:"h-4 w-4 text-muted-foreground",name:s.dialect}),e[3]=s.dialect,e[4]=f);let c;e[5]===s.dialect?c=e[6]:(c=Ve(s.dialect),e[5]=s.dialect,e[6]=c);let i;e[7]===c?i=e[8]:(i=(0,t.jsx)("span",{className:"text-xs",children:c}),e[7]=c,e[8]=i);let h=n,p;e[9]===h?p=e[10]:(p=(0,t.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",(0,t.jsx)(Ua,{variableName:h}),")"]}),e[9]=h,e[10]=p);let d;e[11]!==N||e[12]!==o?(d=!o&&(0,t.jsx)(Va,{onClick:N,tooltip:"Refresh connection",className:"ml-auto h-4 p-0",iconClassName:"h-3.5 w-3.5"}),e[11]=N,e[12]=o,e[13]=d):d=e[13];let m;e[14]!==f||e[15]!==i||e[16]!==p||e[17]!==d?(m=(0,t.jsxs)(Ce,{className:S.engine,children:[f,i,p,d]}),e[14]=f,e[15]=i,e[16]=p,e[17]=d,e[18]=m):m=e[18];let u;e[19]!==l||e[20]!==r?(u=r?l:(0,t.jsx)(te,{content:"No databases available",className:S.engineEmpty}),e[19]=l,e[20]=r,e[21]=u):u=e[21];let x;return e[22]!==m||e[23]!==u?(x=(0,t.jsxs)(t.Fragment,{children:[m,u]}),e[22]=m,e[23]=u,e[24]=x):x=e[24],x},Ha=a=>{let e=(0,A.c)(26),{hasSearch:s,engineName:l,database:r,children:o}=a,[n,j]=C.useState(!1),[g,N]=C.useState(!1),[f,c]=C.useState(s);f!==s&&(c(s),j(s));let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=O("text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",S.database),e[0]=i):i=e[0];let h;e[1]!==n||e[2]!==g?(h=()=>{j(!n),N(!g)},e[1]=n,e[2]=g,e[3]=h):h=e[3];let p=`${l}:${r.name}`,d;e[4]===n?d=e[5]:(d=(0,t.jsx)(_e,{isExpanded:n}),e[4]=n,e[5]=d);let m=g&&n?"text-foreground":"text-muted-foreground",u;e[6]===m?u=e[7]:(u=O("h-4 w-4",m),e[6]=m,e[7]=u);let x;e[8]===u?x=e[9]:(x=(0,t.jsx)(le,{className:u}),e[8]=u,e[9]=x);let b=g&&n&&"font-semibold",y;e[10]===b?y=e[11]:(y=O(b),e[10]=b,e[11]=y);let v;e[12]===r.name?v=e[13]:(v=r.name===""?(0,t.jsx)("i",{children:"Not connected"}):r.name,e[12]=r.name,e[13]=v);let w;e[14]!==v||e[15]!==y?(w=(0,t.jsx)("span",{className:y,children:v}),e[14]=v,e[15]=y,e[16]=w):w=e[16];let _;e[17]!==w||e[18]!==h||e[19]!==p||e[20]!==d||e[21]!==x?(_=(0,t.jsxs)(ae,{className:i,onSelect:h,value:p,children:[d,x,w]}),e[17]=w,e[18]=h,e[19]=p,e[20]=d,e[21]=x,e[22]=_):_=e[22];let T=n&&o,k;return e[23]!==_||e[24]!==T?(k=(0,t.jsxs)(t.Fragment,{children:[_,T]}),e[23]=_,e[24]=T,e[25]=k):k=e[25],k},Ka=({schemas:a,defaultSchema:e,defaultDatabase:s,dialect:l,engineName:r,databaseName:o,hasSearch:n,searchValue:j})=>{let{addSchemaList:g}=se(),[N,f]=C.useState(!1),[c,i]=C.useState(!1),{isPending:h,error:p}=oe(async()=>{if(a.length===0&&r&&!N){f(!0),i(!0);try{g({schemas:(await He.request({engine:r,database:o})).schemas??[],sqlSchemaContext:{engine:r,database:o}})}finally{i(!1)}}},[a.length,r,o,N]);return h||c?(0,t.jsx)(ce,{message:"Loading schemas...",className:S.schemaLoading}):p?(0,t.jsx)(me,{error:p,className:S.schemaLoading}):a.length===0?(0,t.jsx)(te,{content:"No schemas available",className:S.schemaEmpty}):(0,t.jsx)(t.Fragment,{children:a.filter(d=>j?d.tables.some(m=>m.name.toLowerCase().includes(j.toLowerCase())):!0).map(d=>(0,t.jsx)(Ja,{databaseName:o,schema:d,hasSearch:n,children:(0,t.jsx)(Le,{tables:d.tables,searchValue:j,sqlTableContext:{engine:r,database:o,schema:d.name,defaultSchema:e,defaultDatabase:s,dialect:l}})},d.name))})},Ja=a=>{let e=(0,A.c)(24),{databaseName:s,schema:l,children:r,hasSearch:o}=a,[n,j]=C.useState(o),[g,N]=C.useState(!1),f=`${s}:${l.name}`;if(pe(l.name))return r;let c;e[0]===Symbol.for("react.memo_cache_sentinel")?(c=O("text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",S.schema),e[0]=c):c=e[0];let i;e[1]!==n||e[2]!==g?(i=()=>{j(!n),N(!g)},e[1]=n,e[2]=g,e[3]=i):i=e[3];let h;e[4]===n?h=e[5]:(h=(0,t.jsx)(_e,{isExpanded:n}),e[4]=n,e[5]=h);let p=g&&n&&"text-foreground",d;e[6]===p?d=e[7]:(d=O("h-4 w-4 text-muted-foreground",p),e[6]=p,e[7]=d);let m;e[8]===d?m=e[9]:(m=(0,t.jsx)(sa,{className:d}),e[8]=d,e[9]=m);let u=g&&n&&"font-semibold",x;e[10]===u?x=e[11]:(x=O(u),e[10]=u,e[11]=x);let b;e[12]!==l.name||e[13]!==x?(b=(0,t.jsx)("span",{className:x,children:l.name}),e[12]=l.name,e[13]=x,e[14]=b):b=e[14];let y;e[15]!==i||e[16]!==h||e[17]!==m||e[18]!==b||e[19]!==f?(y=(0,t.jsxs)(ae,{className:c,onSelect:i,value:f,children:[h,m,b]}),e[15]=i,e[16]=h,e[17]=m,e[18]=b,e[19]=f,e[20]=y):y=e[20];let v=n&&r,w;return e[21]!==y||e[22]!==v?(w=(0,t.jsxs)(t.Fragment,{children:[y,v]}),e[21]=y,e[22]=v,e[23]=w):w=e[23],w},Le=a=>{let e=(0,A.c)(24),{tables:s,sqlTableContext:l,searchValue:r}=a,{addTableList:o}=se(),[n,j]=C.useState(!1),[g,N]=C.useState(!1),f;e[0]!==o||e[1]!==l||e[2]!==s.length||e[3]!==n?(f=async()=>{if(s.length===0&&l&&!n){j(!0),N(!0);let{engine:m,database:u,schema:x}=l,b=await Oe.request({engine:m,database:u,schema:x});if(!(b!=null&&b.tables))throw N(!1),Error("No tables available");o({tables:b.tables,sqlTableContext:l}),N(!1)}},e[0]=o,e[1]=l,e[2]=s.length,e[3]=n,e[4]=f):f=e[4];let c;e[5]!==l||e[6]!==s.length||e[7]!==n?(c=[s.length,l,n],e[5]=l,e[6]=s.length,e[7]=n,e[8]=c):c=e[8];let{isPending:i,error:h}=oe(f,c);if(i||g){let m;return e[9]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(ce,{message:"Loading tables...",className:S.tableLoading}),e[9]=m):m=e[9],m}if(h){let m;return e[10]===h?m=e[11]:(m=(0,t.jsx)(me,{error:h,className:S.tableLoading}),e[10]=h,e[11]=m),m}if(s.length===0){let m;return e[12]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(te,{content:"No tables found",className:S.tableLoading}),e[12]=m):m=e[12],m}let p;if(e[13]!==r||e[14]!==l||e[15]!==s){let m;e[17]===r?m=e[18]:(m=b=>r?b.name.toLowerCase().includes(r.toLowerCase()):!0,e[17]=r,e[18]=m);let u=s.filter(m),x;e[19]!==r||e[20]!==l?(x=b=>(0,t.jsx)(Xa,{table:b,sqlTableContext:l,isSearching:!!r},b.name),e[19]=r,e[20]=l,e[21]=x):x=e[21],p=u.map(x),e[13]=r,e[14]=l,e[15]=s,e[16]=p}else p=e[16];let d;return e[22]===p?d=e[23]:(d=(0,t.jsx)(t.Fragment,{children:p}),e[22]=p,e[23]=d),d},Xa=a=>{let e=(0,A.c)(64),{table:s,sqlTableContext:l,isSearching:r}=a,{addTable:o}=se(),[n,j]=C.useState(!1),[g,N]=C.useState(!1),f=s.columns.length>0,c;e[0]!==o||e[1]!==n||e[2]!==l||e[3]!==s.name||e[4]!==f||e[5]!==g?(c=async()=>{if(n&&!f&&l&&!g){N(!0);let{engine:B,database:Y,schema:qe}=l,Z=await Ke.request({engine:B,database:Y,schema:qe,tableName:s.name});if(!(Z!=null&&Z.table))throw Error("No table details available");o({table:Z.table,sqlTableContext:l})}},e[0]=o,e[1]=n,e[2]=l,e[3]=s.name,e[4]=f,e[5]=g,e[6]=c):c=e[6];let i;e[7]!==n||e[8]!==f?(i=[n,f],e[7]=n,e[8]=f,e[9]=i):i=e[9];let{isFetching:h,isPending:p,error:d}=oe(c,i),m=K(ra),u=Fa(),{createNewCell:x}=Me(),b=Ne(),y;e[10]!==b||e[11]!==m||e[12]!==x||e[13]!==u||e[14]!==l||e[15]!==s?(y=()=>{$a({autoInstantiate:m,createNewCell:x,fromCellId:u}),b((()=>{if(s.source_type==="catalog"){let B=l!=null&&l.database?`${l.database}.${s.name}`:s.name;return`${s.engine}.load_table("${B}")`}if(l)return ue({table:s,columnName:"*",sqlTableContext:l});switch(s.source_type){case"local":return`mo.ui.table(${s.name})`;case"duckdb":case"connection":return ue({table:s,columnName:"*",sqlTableContext:l});default:return pa(s.source_type),""}})())},e[10]=b,e[11]=m,e[12]=x,e[13]=u,e[14]=l,e[15]=s,e[16]=y):y=e[16];let v=y,w;e[17]!==s.num_columns||e[18]!==s.num_rows?(w=()=>{let B=[];return s.num_rows!=null&&B.push(`${s.num_rows} rows`),s.num_columns!=null&&B.push(`${s.num_columns} columns`),B.length===0?null:(0,t.jsx)("div",{className:"flex flex-row gap-2 items-center pl-6 group-hover:hidden",children:(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:B.join(", ")})})},e[17]=s.num_columns,e[18]=s.num_rows,e[19]=w):w=e[19];let _=w,T;e[20]!==d||e[21]!==h||e[22]!==p||e[23]!==l||e[24]!==s?(T=()=>{if(p||h)return(0,t.jsx)(ce,{message:"Loading columns...",className:S.tableLoading});if(d)return(0,t.jsx)(me,{error:d,className:S.tableLoading});let B=s.columns;return B.length===0?(0,t.jsx)(te,{content:"No columns found",className:S.tableLoading}):B.map(Y=>(0,t.jsx)(Qa,{table:s,column:Y,sqlTableContext:l},Y.name))},e[20]=d,e[21]=h,e[22]=p,e[23]=l,e[24]=s,e[25]=T):T=e[25];let k=T,q;e[26]!==n||e[27]!==r||e[28]!==s.source_type||e[29]!==s.type?(q=()=>{if(s.source_type!=="local")return(0,t.jsx)(s.type==="table"?la:Ye,{className:"h-3 w-3",strokeWidth:n||r?2.5:void 0})},e[26]=n,e[27]=r,e[28]=s.source_type,e[29]=s.type,e[30]=q):q=e[30];let V=q,P=l?`${l.database}.${l.schema}.${s.name}`:s.name,M=l&&(pe(l.schema)?S.tableSchemaless:S.tableWithSchema),E=(n||r)&&"font-semibold",$;e[31]!==M||e[32]!==E?($=O("rounded-none group h-8 cursor-pointer",M,E),e[31]=M,e[32]=E,e[33]=$):$=e[33];let F;e[34]===n?F=e[35]:(F=()=>j(!n),e[34]=n,e[35]=F);let I;e[36]===V?I=e[37]:(I=V(),e[36]=V,e[37]=I);let D;e[38]===s.name?D=e[39]:(D=(0,t.jsx)("span",{className:"text-sm",children:s.name}),e[38]=s.name,e[39]=D);let U;e[40]!==I||e[41]!==D?(U=(0,t.jsxs)("div",{className:"flex gap-2 items-center flex-1 pl-1",children:[I,D]}),e[40]=I,e[41]=D,e[42]=U):U=e[42];let R;e[43]===_?R=e[44]:(R=_(),e[43]=_,e[44]=R);let L;e[45]===v?L=e[46]:(L=xa.stopPropagation(()=>v()),e[45]=v,e[46]=L);let X;e[47]===Symbol.for("react.memo_cache_sentinel")?(X=(0,t.jsx)(ya,{className:"h-3 w-3"}),e[47]=X):X=e[47];let W;e[48]===L?W=e[49]:(W=(0,t.jsx)(re,{content:"Add table to notebook",delayDuration:400,children:(0,t.jsx)(ee,{className:"group-hover:inline-flex hidden",variant:"text",size:"icon",onClick:L,children:X})}),e[48]=L,e[49]=W);let z;e[50]!==n||e[51]!==F||e[52]!==U||e[53]!==R||e[54]!==W||e[55]!==$||e[56]!==P?(z=(0,t.jsxs)(ae,{className:$,value:P,"aria-selected":n,forceMount:!0,onSelect:F,children:[U,R,W]}),e[50]=n,e[51]=F,e[52]=U,e[53]=R,e[54]=W,e[55]=$,e[56]=P,e[57]=z):z=e[57];let H;e[58]!==n||e[59]!==k?(H=n&&k(),e[58]=n,e[59]=k,e[60]=H):H=e[60];let Q;return e[61]!==z||e[62]!==H?(Q=(0,t.jsxs)(t.Fragment,{children:[z,H]}),e[61]=z,e[62]=H,e[63]=Q):Q=e[63],Q},Qa=a=>{var U,R;let e=(0,A.c)(48),{table:s,column:l,sqlTableContext:r}=a,[o,n]=C.useState(!1),j=K(xe),g=de(Pe);j&&o&&n(!1),g(o?L=>new Set([...L,`${s.name}:${l.name}`]):L=>(L.delete(`${s.name}:${l.name}`),new Set(L)));let N=Ne(),{columnsPreviews:f}=aa(),c;e[0]!==l.name||e[1]!==s.primary_keys?(c=((U=s.primary_keys)==null?void 0:U.includes(l.name))||!1,e[0]=l.name,e[1]=s.primary_keys,e[2]=c):c=e[2];let i=c,h;e[3]!==l.name||e[4]!==s.indexes?(h=((R=s.indexes)==null?void 0:R.includes(l.name))||!1,e[3]=l.name,e[4]=s.indexes,e[5]=h):h=e[5];let p=h,d;e[6]===N?d=e[7]:(d=L=>{N(L)},e[6]=N,e[7]=d);let m=d,u=Ya,x=o?"font-semibold":"",b;e[8]!==l.name||e[9]!==x?(b=(0,t.jsx)("span",{className:x,children:l.name}),e[8]=l.name,e[9]=x,e[10]=b):b=e[10];let y=b,v=`${s.name}.${l.name}`,w=`${s.name}.${l.name}`,_;e[11]===o?_=e[12]:(_=()=>n(!o),e[11]=o,e[12]=_);let T=r?S.columnSql:S.columnLocal,k;e[13]===T?k=e[14]:(k=O("flex flex-row gap-2 items-center flex-1",T),e[13]=T,e[14]=k);let q;e[15]!==l.type||e[16]!==y?(q=(0,t.jsx)(Pa,{columnName:y,dataType:l.type}),e[15]=l.type,e[16]=y,e[17]=q):q=e[17];let V;e[18]===i?V=e[19]:(V=i&&u({tooltipContent:"Primary key",content:"PK"}),e[18]=i,e[19]=V);let P;e[20]===p?P=e[21]:(P=p&&u({tooltipContent:"Indexed",content:"IDX"}),e[20]=p,e[21]=P);let M;e[22]!==k||e[23]!==q||e[24]!==V||e[25]!==P?(M=(0,t.jsxs)("div",{className:k,children:[q,V,P]}),e[22]=k,e[23]=q,e[24]=V,e[25]=P,e[26]=M):M=e[26];let E;e[27]===l.name?E=e[28]:(E=(0,t.jsx)(re,{content:"Copy column name",delayDuration:400,children:(0,t.jsx)(ee,{variant:"text",size:"icon",className:"group-hover:opacity-100 opacity-0 hover:bg-muted text-muted-foreground hover:text-foreground",children:(0,t.jsx)(wa,{tooltip:!1,value:l.name,className:"h-3 w-3"})})}),e[27]=l.name,e[28]=E);let $;e[29]===l.external_type?$=e[30]:($=(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:l.external_type}),e[29]=l.external_type,e[30]=$);let F;e[31]!==M||e[32]!==E||e[33]!==$||e[34]!==v||e[35]!==w||e[36]!==_?(F=(0,t.jsxs)(ae,{className:"rounded-none py-1 group cursor-pointer",value:w,onSelect:_,children:[M,E,$]},v),e[31]=M,e[32]=E,e[33]=$,e[34]=v,e[35]=w,e[36]=_,e[37]=F):F=e[37];let I;e[38]!==l||e[39]!==f||e[40]!==m||e[41]!==o||e[42]!==r||e[43]!==s?(I=o&&(0,t.jsx)("div",{className:O(S.columnPreview,"pr-2 py-2 bg-(--slate-1) shadow-inner border-b"),children:(0,t.jsx)(oa,{children:(0,t.jsx)(Na,{table:s,column:l,onAddColumnChart:m,preview:f.get(r?`${r.database}.${r.schema}.${s.name}:${l.name}`:`${s.name}:${l.name}`),sqlTableContext:r})})}),e[38]=l,e[39]=f,e[40]=m,e[41]=o,e[42]=r,e[43]=s,e[44]=I):I=e[44];let D;return e[45]!==F||e[46]!==I?(D=(0,t.jsxs)(t.Fragment,{children:[F,I]}),e[45]=F,e[46]=I,e[47]=D):D=e[47],D};function Ya(a){let{tooltipContent:e,content:s}=a;return(0,t.jsx)(re,{content:e,delayDuration:100,children:(0,t.jsx)("span",{className:"text-xs text-black bg-gray-100 dark:invert rounded px-1",children:s})})}function hs(a){return a}var G={name:"name",type:"type-value",defs:"defs-refs"},Za=[{id:G.name,accessorFn:a=>[a.name,a.declaredBy],enableSorting:!0,sortingFn:"alphanumeric",header:({column:a})=>(0,t.jsx)(ne,{header:"Name",column:a}),cell:({getValue:a})=>{let[e,s]=a();return(0,t.jsx)(Oa,{name:e,declaredBy:s})}},{id:G.type,accessorFn:a=>[a.dataType,a.value],enableSorting:!0,sortingFn:"alphanumeric",header:({column:a})=>(0,t.jsx)(ne,{header:(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("span",{children:"Type"}),(0,t.jsx)("span",{children:"Value"})]}),column:a}),cell:({getValue:a})=>{let[e,s]=a();return(0,t.jsxs)("div",{className:"max-w-[150px]",children:[(0,t.jsx)("div",{className:"text-ellipsis overflow-hidden whitespace-nowrap text-muted-foreground font-mono text-xs",children:e}),(0,t.jsx)("div",{className:"text-ellipsis overflow-hidden whitespace-nowrap",title:s??"",children:s})]})}},{id:G.defs,accessorFn:a=>[a.declaredBy,a.usedBy,a.name,a.declaredByNames,a.usedByNames],enableSorting:!0,sortingFn:"basic",header:({column:a})=>(0,t.jsx)(ne,{header:(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("span",{children:"Declared By"}),(0,t.jsx)("span",{children:"Used By"})]}),column:a}),cell:({getValue:a})=>{let[e,s,l]=a(),r=o=>{let n=Qe(o);n&&Ze(n,l)};return(0,t.jsxs)("div",{className:"flex flex-col gap-1 py-1",children:[(0,t.jsxs)("div",{className:"flex flex-row overflow-auto gap-2 items-center",children:[(0,t.jsx)("span",{title:"Declared by",children:(0,t.jsx)(Aa,{className:"w-3.5 h-3.5 text-muted-foreground"})}),e.length===1?(0,t.jsx)(we,{variant:"focus",cellId:e[0],skipScroll:!0,onClick:()=>r(e[0])}):(0,t.jsx)("div",{className:"text-destructive flex flex-row gap-2",children:e.slice(0,3).map((o,n)=>(0,t.jsxs)("span",{className:"flex",children:[(0,t.jsx)(we,{variant:"focus",cellId:o,skipScroll:!0,className:"whitespace-nowrap text-destructive",onClick:()=>r(o)},o),n<e.length-1&&", "]},o))})]}),(0,t.jsxs)("div",{className:"flex flex-row overflow-auto gap-2 items-baseline",children:[(0,t.jsx)("span",{title:"Used by",children:(0,t.jsx)(va,{className:"w-3.5 h-3.5 text-muted-foreground"})}),(0,t.jsx)(Ea,{maxCount:3,cellIds:s,skipScroll:!0,onClick:r})]})]})}}];function et({variables:a,sort:e,cellIdToIndex:s}){e||(e={id:G.defs,desc:!1});let l=[];switch(e.id){case G.name:l=J(a,r=>r.name);break;case G.type:l=J(a,r=>r.dataType);break;case G.defs:l=J(a,r=>s.get(r.declaredBy[0]));break}return e.desc?l.toReversed():l}const Te=(0,C.memo)(({className:a,cellIds:e,variables:s})=>{let[l,r]=C.useState([]),[o,n]=C.useState(""),j=Ge(),{locale:g}=Sa(),N=(0,C.useMemo)(()=>{let c=i=>{let h=j[i];return Ae(h)?`cell-${e.indexOf(i)}`:h??`cell-${e.indexOf(i)}`};return Object.values(s).map(i=>({...i,declaredByNames:i.declaredBy.map(c),usedByNames:i.usedBy.map(c)}))},[s,j,e]),f=ha({data:(0,C.useMemo)(()=>{let c=new Map;return e.forEach((i,h)=>c.set(i,h)),et({variables:N,sort:l[0],cellIdToIndex:c})},[N,l,e]),columns:Za,getCoreRowModel:ia(),onGlobalFilterChange:n,getFilteredRowModel:da(),enableFilters:!0,enableGlobalFilter:!0,enableColumnPinning:!1,getColumnCanGlobalFilter(c){return c.columnDef.enableGlobalFilter??!0},globalFilterFn:"auto",manualSorting:!0,locale:g,onSortingChange:r,getSortedRowModel:ua(),state:{sorting:l,globalFilter:o}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(ja,{className:"w-full",placeholder:"Search",value:o,onChange:c=>n(c.target.value)}),(0,t.jsxs)(Da,{className:O("w-full text-sm flex-1 border-separate border-spacing-0",a),children:[(0,t.jsx)(Ia,{children:(0,t.jsx)(Se,{className:"whitespace-nowrap text-xs",children:f.getFlatHeaders().map(c=>(0,t.jsx)(La,{className:"sticky top-0 bg-background border-b",children:je(c.column.columnDef.header,c.getContext())},c.id))})}),(0,t.jsx)(Ta,{children:f.getRowModel().rows.map(c=>(0,t.jsx)(Se,{className:"hover:bg-accent",children:c.getVisibleCells().map(i=>(0,t.jsx)(qa,{className:"border-b",children:je(i.column.columnDef.cell,i.getContext())},i.id))},c.id))})]})]})});Te.displayName="VariableTable";var at=ge(),tt=ze("marimo:session-panel:state",{openSections:["variables"],hasUserInteracted:!1},We),st=()=>{let a=(0,at.c)(24),e=Ee(),s=ea(),l=K(be),r=K(Ie),[o,n]=De(tt),j=l.length+r.length,g;a[0]!==j||a[1]!==o.hasUserInteracted||a[2]!==o.openSections?(g=!o.hasUserInteracted&&j>0?[...new Set([...o.openSections,"datasources"])]:o.openSections,a[0]=j,a[1]=o.hasUserInteracted,a[2]=o.openSections,a[3]=g):g=a[3];let N=g,f;a[4]===n?f=a[5]:(f=v=>{n({openSections:v,hasUserInteracted:!0})},a[4]=n,a[5]=f);let c=f,i=!N.includes("datasources")&&j>0,h;a[6]===Symbol.for("react.memo_cache_sentinel")?(h=(0,t.jsx)(le,{className:"w-4 h-4"}),a[6]=h):h=a[6];let p;a[7]!==j||a[8]!==i?(p=i&&(0,t.jsx)(Ra,{children:j}),a[7]=j,a[8]=i,a[9]=p):p=a[9];let d;a[10]===p?d=a[11]:(d=(0,t.jsxs)($e,{children:[h,"Data sources",p]}),a[10]=p,a[11]=d);let m;a[12]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(Fe,{children:(0,t.jsx)(Wa,{})}),a[12]=m):m=a[12];let u;a[13]===d?u=a[14]:(u=(0,t.jsxs)(ke,{value:"datasources",children:[d,m]}),a[13]=d,a[14]=u);let x;a[15]===Symbol.for("react.memo_cache_sentinel")?(x=(0,t.jsxs)($e,{children:[(0,t.jsx)(Xe,{className:"w-4 h-4"}),"Variables"]}),a[15]=x):x=a[15];let b;a[16]!==s||a[17]!==e?(b=(0,t.jsxs)(ke,{value:"variables",lastItem:!0,children:[x,(0,t.jsx)(Fe,{children:Object.keys(e).length===0?(0,t.jsx)("div",{className:"px-3 py-4 text-sm text-muted-foreground",children:"No variables defined"}):(0,t.jsx)(Te,{cellIds:s.inOrderIds,variables:e})})]}),a[16]=s,a[17]=e,a[18]=b):b=a[18];let y;return a[19]!==c||a[20]!==N||a[21]!==u||a[22]!==b?(y=(0,t.jsxs)(ca,{type:"multiple",value:N,onValueChange:c,className:"flex flex-col h-full overflow-auto",children:[u,b]}),a[19]=c,a[20]=N,a[21]=u,a[22]=b,a[23]=y):y=a[23],y};export{st as default};
1
+ import{s as ie}from"./chunk-LvLJmgfZ.js";import{d as de,l as Be,p as he,u as K}from"./useEvent-D91BmmQi.js";import{t as De}from"./react-Bj1aDYRI.js";import{Ar as Ve,At as Me,Br as ue,D as Pe,Fn as Ee,Fr as xe,Gt as Oe,In as Ue,Ir as Re,Kt as Ae,Lr as We,M as Ge,Nr as se,Oi as ze,P as He,Pr as pe,Rn as Ke,Rt as Je,Ur as Xe,Vr as fe,Wr as be,Wt as Qe,_n as Ye,a as Ze,ar as ea,cr as aa,f as ta,hr as sa,or as la,vr as na,yr as le}from"./cells-Vnv1zw09.js";import"./react-dom-CSu739Rf.js";import{t as ge}from"./compiler-runtime-B3qBwwSJ.js";import{o as ra}from"./utils-Wvjk_Y4h.js";import{t as oa}from"./ErrorBoundary-DyYDV0HI.js";import{t as O}from"./cn-DCUzRj2J.js";import{t as ma}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-eipL3i3Y.js";import{n as ca}from"./multi-map-CUuNtzHt.js";import"./popover-Bz_0Vkyf.js";import{B as je,H as ia,U as da,V as ha,W as ua,z as ne}from"./JsonOutput-BqavrgK2.js";import"./download-CHV3J2Ib.js";import{r as Ne}from"./radio-group-BdIsm_qJ.js";import{t as re}from"./tooltip-DTV9tlSr.js";import{r as xa,t as ee}from"./button-BbCh-29a.js";import"./dist-BrR4M-k3.js";import{u as J}from"./arrays-DYDL-3-i.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{i as pa}from"./strings-wdPMRf6Z.js";import{r as fa}from"./requests-DIwGYs0l.js";import{t as ba}from"./createLucideIcon-D5guW7EU.js";import{t as ga}from"./x-C-6liIBr.js";import"./markdown-renderer-CXVa5ubo.js";import{t as ye}from"./add-connection-dialog-B00bTtAj.js";import{t as ve}from"./plus-BgB18UzY.js";import{a as ja}from"./input-DW6LU13i.js";import{n as Na,o as ya}from"./column-preview-DYtdLerF.js";import{t as va}from"./workflow-ClChd5xI.js";import"./dist-DQOq2Tf-.js";import"./dist-DBiqbYe-.js";import"./dist-VjDnmGCZ.js";import"./dist-E6ttb8td.js";import"./dist-B324sPca.js";import"./session-gB-8RZAq.js";import"./purify.es-DBmVz-Wl.js";import"./dates-orWokFRU.js";import{t as wa}from"./copy-icon-8abB4Lgh.js";import{t as Sa}from"./context-B3MsQb-b.js";import"./utils-441jgnV8.js";import"./vega-loader.browser-BegSZk0G.js";import"./defaultLocale-YteS-k_t.js";import"./defaultLocale-B6z1Qyqt.js";import{t as we}from"./cell-link-sLKimSIQ.js";import{n as oe}from"./useAsyncData-BFC6lWG9.js";import{a as Ca,o as ae,t as _a,u as ka}from"./command-OHlV5HHD.js";import"./chunk-5FQGJX7Z-BReOK4Lg.js";import{r as $a}from"./html-to-image-WbbYaIba.js";import{o as Fa}from"./focus-bWAnl_NC.js";import{a as Ia,i as La,n as Ta,o as Se,r as qa,t as Ba}from"./table-DPyRV1LT.js";import"./react-resizable-panels.browser.esm-BUNcfKXO.js";import{n as Da}from"./icons-D9TuFTJG.js";import{r as Va}from"./tree-actions-Bzr5XDGx.js";import{a as me,i as te,o as ce,r as Ce,s as _e,t as Ma}from"./components-BA-LgiMU.js";import{t as Pa}from"./empty-state-vCWg-_A9.js";import{n as Ea,t as Oa}from"./common-BhQv6499.js";import{a as Ua,i as Ra,n as ke,r as $e,t as Fe}from"./components-c7ywwQgj.js";var Aa=ba("square-equal",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M7 10h10",key:"1101jm"}],["path",{d:"M7 14h10",key:"1mhdw3"}]]),A=ge(),C=ie(De(),1),t=ie(ma(),1),S={engineEmpty:"pl-3",engine:"pl-3 pr-2",database:"pl-4",schemaEmpty:"pl-8",schema:"pl-7",schemaLoading:"pl-8",tableLoading:"pl-11",tableSchemaless:"pl-8",tableWithSchema:"pl-12",columnLocal:"pl-5",columnSql:"pl-13",columnPreview:"pl-10"},Wa=he(a=>{let e=a(xe),s=a(Ke),l=a(Ze);return J(e,r=>{if(!r.variable_name)return-1;let o=Object.values(s).find(j=>j.name===r.variable_name);if(!o)return 0;let n=l.inOrderIds.indexOf(o.declaredBy[0]);return n===-1?0:n})});const Ie=he(a=>{let e=new Map(a(Ve));for(let s of be){let l=e.get(s);l&&(l.databases.length===0&&e.delete(s),l.databases.length===1&&l.databases[0].name==="memory"&&l.databases[0].schemas.length===0&&e.delete(s))}return J([...e.values()],s=>be.has(s.name)?1:0)}),Ga=()=>{let a=(0,A.c)(32),[e,s]=C.useState(""),l=de(pe),r=K(Wa),o=K(Ie);if(r.length===0&&o.length===0){let u;return a[0]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)(Pa,{title:"No tables found",description:"Any datasets/dataframes in the global scope will be shown here.",action:(0,t.jsx)(ye,{children:(0,t.jsxs)(ee,{variant:"outline",size:"sm",children:["Add database or catalog",(0,t.jsx)(ve,{className:"h-4 w-4 ml-2"})]})}),icon:(0,t.jsx)(le,{})}),a[0]=u):u=a[0],u}let n=!!e.trim(),j;a[1]===l?j=a[2]:(j=u=>{l(u.length>0),s(u)},a[1]=l,a[2]=j);let g;a[3]!==e||a[4]!==j?(g=(0,t.jsx)(Ca,{placeholder:"Search tables...",className:"h-6 m-1",value:e,onValueChange:j,rootClassName:"flex-1 border-r border-b-0"}),a[3]=e,a[4]=j,a[5]=g):g=a[5];let N;a[6]===n?N=a[7]:(N=n&&(0,t.jsx)("button",{type:"button",className:"float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",onClick:()=>s(""),children:(0,t.jsx)(ga,{className:"h-4 w-4"})}),a[6]=n,a[7]=N);let f;a[8]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)(ye,{children:(0,t.jsx)(ee,{variant:"ghost",size:"sm",className:"px-2 rounded-none focus-visible:outline-hidden",children:(0,t.jsx)(ve,{className:"h-4 w-4"})})}),a[8]=f):f=a[8];let c;a[9]!==g||a[10]!==N?(c=(0,t.jsxs)("div",{className:"flex items-center w-full border-b",children:[g,N,f]}),a[9]=g,a[10]=N,a[11]=c):c=a[11];let i;if(a[12]!==o||a[13]!==n||a[14]!==e){let u;a[16]!==n||a[17]!==e?(u=x=>(0,t.jsx)(za,{connection:x,hasChildren:x.databases.length>0,children:x.databases.map(b=>(0,t.jsx)(Ha,{engineName:x.name,database:b,hasSearch:n,children:(0,t.jsx)(Ka,{schemas:b.schemas,defaultSchema:x.default_schema,defaultDatabase:x.default_database,engineName:x.name,databaseName:b.name,hasSearch:n,searchValue:e,dialect:x.dialect})},b.name))},x.name),a[16]=n,a[17]=e,a[18]=u):u=a[18],i=o.map(u),a[12]=o,a[13]=n,a[14]=e,a[15]=i}else i=a[15];let h;a[19]!==o.length||a[20]!==r.length?(h=o.length>0&&r.length>0&&(0,t.jsxs)(Ce,{className:S.engine,children:[(0,t.jsx)(Da,{className:"h-4 w-4 text-muted-foreground"}),(0,t.jsx)("span",{className:"text-xs",children:"Python"})]}),a[19]=o.length,a[20]=r.length,a[21]=h):h=a[21];let p;a[22]!==e||a[23]!==r?(p=r.length>0&&(0,t.jsx)(Le,{tables:r,searchValue:e}),a[22]=e,a[23]=r,a[24]=p):p=a[24];let d;a[25]!==i||a[26]!==h||a[27]!==p?(d=(0,t.jsxs)(ka,{className:"flex flex-col",children:[i,h,p]}),a[25]=i,a[26]=h,a[27]=p,a[28]=d):d=a[28];let m;return a[29]!==c||a[30]!==d?(m=(0,t.jsxs)(_a,{className:"border-b bg-background rounded-none h-full pb-10 overflow-auto outline-hidden",shouldFilter:!1,children:[c,d]}),a[29]=c,a[30]=d,a[31]=m):m=a[31],m};var za=a=>{let e=(0,A.c)(25),{connection:s,children:l,hasChildren:r}=a,o=s.name===Xe,n=o?"In-Memory":s.name,{previewDataSourceConnection:j}=fa(),g;e[0]!==s.name||e[1]!==j?(g=async()=>{await j({engine:s.name})},e[0]=s.name,e[1]=j,e[2]=g):g=e[2];let N=g,f;e[3]===s.dialect?f=e[4]:(f=(0,t.jsx)(Me,{className:"h-4 w-4 text-muted-foreground",name:s.dialect}),e[3]=s.dialect,e[4]=f);let c;e[5]===s.dialect?c=e[6]:(c=ea(s.dialect),e[5]=s.dialect,e[6]=c);let i;e[7]===c?i=e[8]:(i=(0,t.jsx)("span",{className:"text-xs",children:c}),e[7]=c,e[8]=i);let h=n,p;e[9]===h?p=e[10]:(p=(0,t.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",(0,t.jsx)(Ua,{variableName:h}),")"]}),e[9]=h,e[10]=p);let d;e[11]!==N||e[12]!==o?(d=!o&&(0,t.jsx)(Va,{onClick:N,tooltip:"Refresh connection",className:"ml-auto h-4 p-0",iconClassName:"h-3.5 w-3.5"}),e[11]=N,e[12]=o,e[13]=d):d=e[13];let m;e[14]!==f||e[15]!==i||e[16]!==p||e[17]!==d?(m=(0,t.jsxs)(Ce,{className:S.engine,children:[f,i,p,d]}),e[14]=f,e[15]=i,e[16]=p,e[17]=d,e[18]=m):m=e[18];let u;e[19]!==l||e[20]!==r?(u=r?l:(0,t.jsx)(te,{content:"No databases available",className:S.engineEmpty}),e[19]=l,e[20]=r,e[21]=u):u=e[21];let x;return e[22]!==m||e[23]!==u?(x=(0,t.jsxs)(t.Fragment,{children:[m,u]}),e[22]=m,e[23]=u,e[24]=x):x=e[24],x},Ha=a=>{let e=(0,A.c)(26),{hasSearch:s,engineName:l,database:r,children:o}=a,[n,j]=C.useState(!1),[g,N]=C.useState(!1),[f,c]=C.useState(s);f!==s&&(c(s),j(s));let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=O("text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",S.database),e[0]=i):i=e[0];let h;e[1]!==n||e[2]!==g?(h=()=>{j(!n),N(!g)},e[1]=n,e[2]=g,e[3]=h):h=e[3];let p=`${l}:${r.name}`,d;e[4]===n?d=e[5]:(d=(0,t.jsx)(_e,{isExpanded:n}),e[4]=n,e[5]=d);let m=g&&n?"text-foreground":"text-muted-foreground",u;e[6]===m?u=e[7]:(u=O("h-4 w-4",m),e[6]=m,e[7]=u);let x;e[8]===u?x=e[9]:(x=(0,t.jsx)(le,{className:u}),e[8]=u,e[9]=x);let b=g&&n&&"font-semibold",y;e[10]===b?y=e[11]:(y=O(b),e[10]=b,e[11]=y);let v;e[12]===r.name?v=e[13]:(v=r.name===""?(0,t.jsx)("i",{children:"Not connected"}):r.name,e[12]=r.name,e[13]=v);let w;e[14]!==v||e[15]!==y?(w=(0,t.jsx)("span",{className:y,children:v}),e[14]=v,e[15]=y,e[16]=w):w=e[16];let _;e[17]!==w||e[18]!==h||e[19]!==p||e[20]!==d||e[21]!==x?(_=(0,t.jsxs)(ae,{className:i,onSelect:h,value:p,children:[d,x,w]}),e[17]=w,e[18]=h,e[19]=p,e[20]=d,e[21]=x,e[22]=_):_=e[22];let T=n&&o,k;return e[23]!==_||e[24]!==T?(k=(0,t.jsxs)(t.Fragment,{children:[_,T]}),e[23]=_,e[24]=T,e[25]=k):k=e[25],k},Ka=({schemas:a,defaultSchema:e,defaultDatabase:s,dialect:l,engineName:r,databaseName:o,hasSearch:n,searchValue:j})=>{let{addSchemaList:g}=se(),[N,f]=C.useState(!1),[c,i]=C.useState(!1),{isPending:h,error:p}=oe(async()=>{if(a.length===0&&r&&!N){f(!0),i(!0);try{g({schemas:(await Qe.request({engine:r,database:o})).schemas??[],sqlSchemaContext:{engine:r,database:o}})}finally{i(!1)}}},[a.length,r,o,N]);return h||c?(0,t.jsx)(ce,{message:"Loading schemas...",className:S.schemaLoading}):p?(0,t.jsx)(me,{error:p,className:S.schemaLoading}):a.length===0?(0,t.jsx)(te,{content:"No schemas available",className:S.schemaEmpty}):(0,t.jsx)(t.Fragment,{children:a.filter(d=>j?d.tables.some(m=>m.name.toLowerCase().includes(j.toLowerCase())):!0).map(d=>(0,t.jsx)(Ja,{databaseName:o,schema:d,hasSearch:n,children:(0,t.jsx)(Le,{tables:d.tables,searchValue:j,sqlTableContext:{engine:r,database:o,schema:d.name,defaultSchema:e,defaultDatabase:s,dialect:l}})},d.name))})},Ja=a=>{let e=(0,A.c)(24),{databaseName:s,schema:l,children:r,hasSearch:o}=a,[n,j]=C.useState(o),[g,N]=C.useState(!1),f=`${s}:${l.name}`;if(ue(l.name))return r;let c;e[0]===Symbol.for("react.memo_cache_sentinel")?(c=O("text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",S.schema),e[0]=c):c=e[0];let i;e[1]!==n||e[2]!==g?(i=()=>{j(!n),N(!g)},e[1]=n,e[2]=g,e[3]=i):i=e[3];let h;e[4]===n?h=e[5]:(h=(0,t.jsx)(_e,{isExpanded:n}),e[4]=n,e[5]=h);let p=g&&n&&"text-foreground",d;e[6]===p?d=e[7]:(d=O("h-4 w-4 text-muted-foreground",p),e[6]=p,e[7]=d);let m;e[8]===d?m=e[9]:(m=(0,t.jsx)(sa,{className:d}),e[8]=d,e[9]=m);let u=g&&n&&"font-semibold",x;e[10]===u?x=e[11]:(x=O(u),e[10]=u,e[11]=x);let b;e[12]!==l.name||e[13]!==x?(b=(0,t.jsx)("span",{className:x,children:l.name}),e[12]=l.name,e[13]=x,e[14]=b):b=e[14];let y;e[15]!==i||e[16]!==h||e[17]!==m||e[18]!==b||e[19]!==f?(y=(0,t.jsxs)(ae,{className:c,onSelect:i,value:f,children:[h,m,b]}),e[15]=i,e[16]=h,e[17]=m,e[18]=b,e[19]=f,e[20]=y):y=e[20];let v=n&&r,w;return e[21]!==y||e[22]!==v?(w=(0,t.jsxs)(t.Fragment,{children:[y,v]}),e[21]=y,e[22]=v,e[23]=w):w=e[23],w},Le=a=>{let e=(0,A.c)(24),{tables:s,sqlTableContext:l,searchValue:r}=a,{addTableList:o}=se(),[n,j]=C.useState(!1),[g,N]=C.useState(!1),f;e[0]!==o||e[1]!==l||e[2]!==s.length||e[3]!==n?(f=async()=>{if(s.length===0&&l&&!n){j(!0),N(!0);let{engine:m,database:u,schema:x}=l,b=await Ae.request({engine:m,database:u,schema:x});if(!(b!=null&&b.tables))throw N(!1),Error("No tables available");o({tables:b.tables,sqlTableContext:l}),N(!1)}},e[0]=o,e[1]=l,e[2]=s.length,e[3]=n,e[4]=f):f=e[4];let c;e[5]!==l||e[6]!==s.length||e[7]!==n?(c=[s.length,l,n],e[5]=l,e[6]=s.length,e[7]=n,e[8]=c):c=e[8];let{isPending:i,error:h}=oe(f,c);if(i||g){let m;return e[9]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(ce,{message:"Loading tables...",className:S.tableLoading}),e[9]=m):m=e[9],m}if(h){let m;return e[10]===h?m=e[11]:(m=(0,t.jsx)(me,{error:h,className:S.tableLoading}),e[10]=h,e[11]=m),m}if(s.length===0){let m;return e[12]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(te,{content:"No tables found",className:S.tableLoading}),e[12]=m):m=e[12],m}let p;if(e[13]!==r||e[14]!==l||e[15]!==s){let m;e[17]===r?m=e[18]:(m=b=>r?b.name.toLowerCase().includes(r.toLowerCase()):!0,e[17]=r,e[18]=m);let u=s.filter(m),x;e[19]!==r||e[20]!==l?(x=b=>(0,t.jsx)(Xa,{table:b,sqlTableContext:l,isSearching:!!r},b.name),e[19]=r,e[20]=l,e[21]=x):x=e[21],p=u.map(x),e[13]=r,e[14]=l,e[15]=s,e[16]=p}else p=e[16];let d;return e[22]===p?d=e[23]:(d=(0,t.jsx)(t.Fragment,{children:p}),e[22]=p,e[23]=d),d},Xa=a=>{let e=(0,A.c)(64),{table:s,sqlTableContext:l,isSearching:r}=a,{addTable:o}=se(),[n,j]=C.useState(!1),[g,N]=C.useState(!1),f=s.columns.length>0,c;e[0]!==o||e[1]!==n||e[2]!==l||e[3]!==s.name||e[4]!==f||e[5]!==g?(c=async()=>{if(n&&!f&&l&&!g){N(!0);let{engine:D,database:Y,schema:qe}=l,Z=await Oe.request({engine:D,database:Y,schema:qe,tableName:s.name});if(!(Z!=null&&Z.table))throw Error("No table details available");o({table:Z.table,sqlTableContext:l})}},e[0]=o,e[1]=n,e[2]=l,e[3]=s.name,e[4]=f,e[5]=g,e[6]=c):c=e[6];let i;e[7]!==n||e[8]!==f?(i=[n,f],e[7]=n,e[8]=f,e[9]=i):i=e[9];let{isFetching:h,isPending:p,error:d}=oe(c,i),m=K(ra),u=Fa(),{createNewCell:x}=Pe(),b=Ne(),y;e[10]!==b||e[11]!==m||e[12]!==x||e[13]!==u||e[14]!==l||e[15]!==s?(y=()=>{$a({autoInstantiate:m,createNewCell:x,fromCellId:u}),b((()=>{if(s.source_type==="catalog"){let D=l!=null&&l.database?`${l.database}.${s.name}`:s.name;return`${s.engine}.load_table("${D}")`}if(l)return fe({table:s,columnName:"*",sqlTableContext:l});switch(s.source_type){case"local":return`mo.ui.table(${s.name})`;case"duckdb":case"connection":return fe({table:s,columnName:"*",sqlTableContext:l});default:return pa(s.source_type),""}})())},e[10]=b,e[11]=m,e[12]=x,e[13]=u,e[14]=l,e[15]=s,e[16]=y):y=e[16];let v=y,w;e[17]!==s.num_columns||e[18]!==s.num_rows?(w=()=>{let D=[];return s.num_rows!=null&&D.push(`${s.num_rows} rows`),s.num_columns!=null&&D.push(`${s.num_columns} columns`),D.length===0?null:(0,t.jsx)("div",{className:"flex flex-row gap-2 items-center pl-6 group-hover:hidden",children:(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:D.join(", ")})})},e[17]=s.num_columns,e[18]=s.num_rows,e[19]=w):w=e[19];let _=w,T;e[20]!==d||e[21]!==h||e[22]!==p||e[23]!==l||e[24]!==s?(T=()=>{if(p||h)return(0,t.jsx)(ce,{message:"Loading columns...",className:S.tableLoading});if(d)return(0,t.jsx)(me,{error:d,className:S.tableLoading});let D=s.columns;return D.length===0?(0,t.jsx)(te,{content:"No columns found",className:S.tableLoading}):D.map(Y=>(0,t.jsx)(Qa,{table:s,column:Y,sqlTableContext:l},Y.name))},e[20]=d,e[21]=h,e[22]=p,e[23]=l,e[24]=s,e[25]=T):T=e[25];let k=T,q;e[26]!==n||e[27]!==r||e[28]!==s.source_type||e[29]!==s.type?(q=()=>{if(s.source_type!=="local")return(0,t.jsx)(s.type==="table"?aa:na,{className:"h-3 w-3",strokeWidth:n||r?2.5:void 0})},e[26]=n,e[27]=r,e[28]=s.source_type,e[29]=s.type,e[30]=q):q=e[30];let V=q,M=l?`${l.database}.${l.schema}.${s.name}`:s.name,P=l&&(ue(l.schema)?S.tableSchemaless:S.tableWithSchema),E=(n||r)&&"font-semibold",$;e[31]!==P||e[32]!==E?($=O("rounded-none group h-8 cursor-pointer",P,E),e[31]=P,e[32]=E,e[33]=$):$=e[33];let F;e[34]===n?F=e[35]:(F=()=>j(!n),e[34]=n,e[35]=F);let I;e[36]===V?I=e[37]:(I=V(),e[36]=V,e[37]=I);let B;e[38]===s.name?B=e[39]:(B=(0,t.jsx)("span",{className:"text-sm",children:s.name}),e[38]=s.name,e[39]=B);let U;e[40]!==I||e[41]!==B?(U=(0,t.jsxs)("div",{className:"flex gap-2 items-center flex-1 pl-1",children:[I,B]}),e[40]=I,e[41]=B,e[42]=U):U=e[42];let R;e[43]===_?R=e[44]:(R=_(),e[43]=_,e[44]=R);let L;e[45]===v?L=e[46]:(L=xa.stopPropagation(()=>v()),e[45]=v,e[46]=L);let X;e[47]===Symbol.for("react.memo_cache_sentinel")?(X=(0,t.jsx)(ya,{className:"h-3 w-3"}),e[47]=X):X=e[47];let G;e[48]===L?G=e[49]:(G=(0,t.jsx)(re,{content:"Add table to notebook",delayDuration:400,children:(0,t.jsx)(ee,{className:"group-hover:inline-flex hidden",variant:"text",size:"icon",onClick:L,children:X})}),e[48]=L,e[49]=G);let z;e[50]!==n||e[51]!==F||e[52]!==U||e[53]!==R||e[54]!==G||e[55]!==$||e[56]!==M?(z=(0,t.jsxs)(ae,{className:$,value:M,"aria-selected":n,forceMount:!0,onSelect:F,children:[U,R,G]}),e[50]=n,e[51]=F,e[52]=U,e[53]=R,e[54]=G,e[55]=$,e[56]=M,e[57]=z):z=e[57];let H;e[58]!==n||e[59]!==k?(H=n&&k(),e[58]=n,e[59]=k,e[60]=H):H=e[60];let Q;return e[61]!==z||e[62]!==H?(Q=(0,t.jsxs)(t.Fragment,{children:[z,H]}),e[61]=z,e[62]=H,e[63]=Q):Q=e[63],Q},Qa=a=>{var U,R;let e=(0,A.c)(48),{table:s,column:l,sqlTableContext:r}=a,[o,n]=C.useState(!1),j=K(pe),g=de(Re);j&&o&&n(!1),g(o?L=>new Set([...L,`${s.name}:${l.name}`]):L=>(L.delete(`${s.name}:${l.name}`),new Set(L)));let N=Ne(),{columnsPreviews:f}=We(),c;e[0]!==l.name||e[1]!==s.primary_keys?(c=((U=s.primary_keys)==null?void 0:U.includes(l.name))||!1,e[0]=l.name,e[1]=s.primary_keys,e[2]=c):c=e[2];let i=c,h;e[3]!==l.name||e[4]!==s.indexes?(h=((R=s.indexes)==null?void 0:R.includes(l.name))||!1,e[3]=l.name,e[4]=s.indexes,e[5]=h):h=e[5];let p=h,d;e[6]===N?d=e[7]:(d=L=>{N(L)},e[6]=N,e[7]=d);let m=d,u=Ya,x=o?"font-semibold":"",b;e[8]!==l.name||e[9]!==x?(b=(0,t.jsx)("span",{className:x,children:l.name}),e[8]=l.name,e[9]=x,e[10]=b):b=e[10];let y=b,v=`${s.name}.${l.name}`,w=`${s.name}.${l.name}`,_;e[11]===o?_=e[12]:(_=()=>n(!o),e[11]=o,e[12]=_);let T=r?S.columnSql:S.columnLocal,k;e[13]===T?k=e[14]:(k=O("flex flex-row gap-2 items-center flex-1",T),e[13]=T,e[14]=k);let q;e[15]!==l.type||e[16]!==y?(q=(0,t.jsx)(Ma,{columnName:y,dataType:l.type}),e[15]=l.type,e[16]=y,e[17]=q):q=e[17];let V;e[18]===i?V=e[19]:(V=i&&u({tooltipContent:"Primary key",content:"PK"}),e[18]=i,e[19]=V);let M;e[20]===p?M=e[21]:(M=p&&u({tooltipContent:"Indexed",content:"IDX"}),e[20]=p,e[21]=M);let P;e[22]!==k||e[23]!==q||e[24]!==V||e[25]!==M?(P=(0,t.jsxs)("div",{className:k,children:[q,V,M]}),e[22]=k,e[23]=q,e[24]=V,e[25]=M,e[26]=P):P=e[26];let E;e[27]===l.name?E=e[28]:(E=(0,t.jsx)(re,{content:"Copy column name",delayDuration:400,children:(0,t.jsx)(ee,{variant:"text",size:"icon",className:"group-hover:opacity-100 opacity-0 hover:bg-muted text-muted-foreground hover:text-foreground",children:(0,t.jsx)(wa,{tooltip:!1,value:l.name,className:"h-3 w-3"})})}),e[27]=l.name,e[28]=E);let $;e[29]===l.external_type?$=e[30]:($=(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:l.external_type}),e[29]=l.external_type,e[30]=$);let F;e[31]!==P||e[32]!==E||e[33]!==$||e[34]!==v||e[35]!==w||e[36]!==_?(F=(0,t.jsxs)(ae,{className:"rounded-none py-1 group cursor-pointer",value:w,onSelect:_,children:[P,E,$]},v),e[31]=P,e[32]=E,e[33]=$,e[34]=v,e[35]=w,e[36]=_,e[37]=F):F=e[37];let I;e[38]!==l||e[39]!==f||e[40]!==m||e[41]!==o||e[42]!==r||e[43]!==s?(I=o&&(0,t.jsx)("div",{className:O(S.columnPreview,"pr-2 py-2 bg-(--slate-1) shadow-inner border-b"),children:(0,t.jsx)(oa,{children:(0,t.jsx)(Na,{table:s,column:l,onAddColumnChart:m,preview:f.get(r?`${r.database}.${r.schema}.${s.name}:${l.name}`:`${s.name}:${l.name}`),sqlTableContext:r})})}),e[38]=l,e[39]=f,e[40]=m,e[41]=o,e[42]=r,e[43]=s,e[44]=I):I=e[44];let B;return e[45]!==F||e[46]!==I?(B=(0,t.jsxs)(t.Fragment,{children:[F,I]}),e[45]=F,e[46]=I,e[47]=B):B=e[47],B};function Ya(a){let{tooltipContent:e,content:s}=a;return(0,t.jsx)(re,{content:e,delayDuration:100,children:(0,t.jsx)("span",{className:"text-xs text-black bg-gray-100 dark:invert rounded px-1",children:s})})}function hs(a){return a}var W={name:"name",type:"type-value",defs:"defs-refs"},Za=[{id:W.name,accessorFn:a=>[a.name,a.declaredBy],enableSorting:!0,sortingFn:"alphanumeric",header:({column:a})=>(0,t.jsx)(ne,{header:"Name",column:a}),cell:({getValue:a})=>{let[e,s]=a();return(0,t.jsx)(Oa,{name:e,declaredBy:s})}},{id:W.type,accessorFn:a=>[a.dataType,a.value],enableSorting:!0,sortingFn:"alphanumeric",header:({column:a})=>(0,t.jsx)(ne,{header:(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("span",{children:"Type"}),(0,t.jsx)("span",{children:"Value"})]}),column:a}),cell:({getValue:a})=>{let[e,s]=a();return(0,t.jsxs)("div",{className:"max-w-[150px]",children:[(0,t.jsx)("div",{className:"text-ellipsis overflow-hidden whitespace-nowrap text-muted-foreground font-mono text-xs",children:e}),(0,t.jsx)("div",{className:"text-ellipsis overflow-hidden whitespace-nowrap",title:s??"",children:s})]})}},{id:W.defs,accessorFn:a=>[a.declaredBy,a.usedBy,a.name,a.declaredByNames,a.usedByNames],enableSorting:!0,sortingFn:"basic",header:({column:a})=>(0,t.jsx)(ne,{header:(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("span",{children:"Declared By"}),(0,t.jsx)("span",{children:"Used By"})]}),column:a}),cell:({getValue:a})=>{let[e,s,l]=a(),r=o=>{let n=ta(o);n&&Ye(n,l)};return(0,t.jsxs)("div",{className:"flex flex-col gap-1 py-1",children:[(0,t.jsxs)("div",{className:"flex flex-row overflow-auto gap-2 items-center",children:[(0,t.jsx)("span",{title:"Declared by",children:(0,t.jsx)(Aa,{className:"w-3.5 h-3.5 text-muted-foreground"})}),e.length===1?(0,t.jsx)(we,{variant:"focus",cellId:e[0],skipScroll:!0,onClick:()=>r(e[0])}):(0,t.jsx)("div",{className:"text-destructive flex flex-row gap-2",children:e.slice(0,3).map((o,n)=>(0,t.jsxs)("span",{className:"flex",children:[(0,t.jsx)(we,{variant:"focus",cellId:o,skipScroll:!0,className:"whitespace-nowrap text-destructive",onClick:()=>r(o)},o),n<e.length-1&&", "]},o))})]}),(0,t.jsxs)("div",{className:"flex flex-row overflow-auto gap-2 items-baseline",children:[(0,t.jsx)("span",{title:"Used by",children:(0,t.jsx)(va,{className:"w-3.5 h-3.5 text-muted-foreground"})}),(0,t.jsx)(Ea,{maxCount:3,cellIds:s,skipScroll:!0,onClick:r})]})]})}}];function et({variables:a,sort:e,cellIdToIndex:s}){e||(e={id:W.defs,desc:!1});let l=[];switch(e.id){case W.name:l=J(a,r=>r.name);break;case W.type:l=J(a,r=>r.dataType);break;case W.defs:l=J(a,r=>s.get(r.declaredBy[0]));break}return e.desc?l.toReversed():l}const Te=(0,C.memo)(({className:a,cellIds:e,variables:s})=>{let[l,r]=C.useState([]),[o,n]=C.useState(""),j=He(),{locale:g}=Sa(),N=(0,C.useMemo)(()=>{let c=i=>{let h=j[i];return Je(h)?`cell-${e.indexOf(i)}`:h??`cell-${e.indexOf(i)}`};return Object.values(s).map(i=>({...i,declaredByNames:i.declaredBy.map(c),usedByNames:i.usedBy.map(c)}))},[s,j,e]),f=ha({data:(0,C.useMemo)(()=>{let c=new Map;return e.forEach((i,h)=>c.set(i,h)),et({variables:N,sort:l[0],cellIdToIndex:c})},[N,l,e]),columns:Za,getCoreRowModel:ia(),onGlobalFilterChange:n,getFilteredRowModel:da(),enableFilters:!0,enableGlobalFilter:!0,enableColumnPinning:!1,getColumnCanGlobalFilter(c){return c.columnDef.enableGlobalFilter??!0},globalFilterFn:"auto",manualSorting:!0,locale:g,onSortingChange:r,getSortedRowModel:ua(),state:{sorting:l,globalFilter:o}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(ja,{className:"w-full",placeholder:"Search",value:o,onChange:c=>n(c.target.value)}),(0,t.jsxs)(Ba,{className:O("w-full text-sm flex-1 border-separate border-spacing-0",a),children:[(0,t.jsx)(Ia,{children:(0,t.jsx)(Se,{className:"whitespace-nowrap text-xs",children:f.getFlatHeaders().map(c=>(0,t.jsx)(La,{className:"sticky top-0 bg-background border-b",children:je(c.column.columnDef.header,c.getContext())},c.id))})}),(0,t.jsx)(Ta,{children:f.getRowModel().rows.map(c=>(0,t.jsx)(Se,{className:"hover:bg-accent",children:c.getVisibleCells().map(i=>(0,t.jsx)(qa,{className:"border-b",children:je(i.column.columnDef.cell,i.getContext())},i.id))},c.id))})]})]})});Te.displayName="VariableTable";var at=ge(),tt=ze("marimo:session-panel:state",{openSections:["variables"],hasUserInteracted:!1},Ee),st=()=>{let a=(0,at.c)(24),e=Ue(),s=Ge(),l=K(xe),r=K(Ie),[o,n]=Be(tt),j=l.length+r.length,g;a[0]!==j||a[1]!==o.hasUserInteracted||a[2]!==o.openSections?(g=!o.hasUserInteracted&&j>0?[...new Set([...o.openSections,"datasources"])]:o.openSections,a[0]=j,a[1]=o.hasUserInteracted,a[2]=o.openSections,a[3]=g):g=a[3];let N=g,f;a[4]===n?f=a[5]:(f=v=>{n({openSections:v,hasUserInteracted:!0})},a[4]=n,a[5]=f);let c=f,i=!N.includes("datasources")&&j>0,h;a[6]===Symbol.for("react.memo_cache_sentinel")?(h=(0,t.jsx)(le,{className:"w-4 h-4"}),a[6]=h):h=a[6];let p;a[7]!==j||a[8]!==i?(p=i&&(0,t.jsx)(Ra,{children:j}),a[7]=j,a[8]=i,a[9]=p):p=a[9];let d;a[10]===p?d=a[11]:(d=(0,t.jsxs)($e,{children:[h,"Data sources",p]}),a[10]=p,a[11]=d);let m;a[12]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(Fe,{children:(0,t.jsx)(Ga,{})}),a[12]=m):m=a[12];let u;a[13]===d?u=a[14]:(u=(0,t.jsxs)(ke,{value:"datasources",children:[d,m]}),a[13]=d,a[14]=u);let x;a[15]===Symbol.for("react.memo_cache_sentinel")?(x=(0,t.jsxs)($e,{children:[(0,t.jsx)(la,{className:"w-4 h-4"}),"Variables"]}),a[15]=x):x=a[15];let b;a[16]!==s||a[17]!==e?(b=(0,t.jsxs)(ke,{value:"variables",lastItem:!0,children:[x,(0,t.jsx)(Fe,{children:Object.keys(e).length===0?(0,t.jsx)("div",{className:"px-3 py-4 text-sm text-muted-foreground",children:"No variables defined"}):(0,t.jsx)(Te,{cellIds:s.inOrderIds,variables:e})})]}),a[16]=s,a[17]=e,a[18]=b):b=a[18];let y;return a[19]!==c||a[20]!==N||a[21]!==u||a[22]!==b?(y=(0,t.jsxs)(ca,{type:"multiple",value:N,onValueChange:c,className:"flex flex-col h-full overflow-auto",children:[u,b]}),a[19]=c,a[20]=N,a[21]=u,a[22]=b,a[23]=y):y=a[23],y};export{st as default};
@@ -1 +1 @@
1
- import{t as O}from"./chunk-LvLJmgfZ.js";import{_ as j}from"./useEventListener-BR0C1MaI.js";import{t as T}from"./use-toast-T0_cQDma.js";function k(){try{window.location.reload()}catch(w){j.error("Failed to reload page",w),T({title:"Failed to reload page",description:"Please refresh the page manually."})}}var F=O(((w,y)=>{var C=(function(){var g=String.fromCharCode,x="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",U="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",b={};function _(r,e){if(!b[r]){b[r]={};for(var a=0;a<r.length;a++)b[r][r.charAt(a)]=a}return b[r][e]}var d={compressToBase64:function(r){if(r==null)return"";var e=d._compress(r,6,function(a){return x.charAt(a)});switch(e.length%4){default:case 0:return e;case 1:return e+"===";case 2:return e+"==";case 3:return e+"="}},decompressFromBase64:function(r){return r==null?"":r==""?null:d._decompress(r.length,32,function(e){return _(x,r.charAt(e))})},compressToUTF16:function(r){return r==null?"":d._compress(r,15,function(e){return g(e+32)})+" "},decompressFromUTF16:function(r){return r==null?"":r==""?null:d._decompress(r.length,16384,function(e){return r.charCodeAt(e)-32})},compressToUint8Array:function(r){for(var e=d.compress(r),a=new Uint8Array(e.length*2),n=0,s=e.length;n<s;n++){var f=e.charCodeAt(n);a[n*2]=f>>>8,a[n*2+1]=f%256}return a},decompressFromUint8Array:function(r){if(r==null)return d.decompress(r);for(var e=Array(r.length/2),a=0,n=e.length;a<n;a++)e[a]=r[a*2]*256+r[a*2+1];var s=[];return e.forEach(function(f){s.push(g(f))}),d.decompress(s.join(""))},compressToEncodedURIComponent:function(r){return r==null?"":d._compress(r,6,function(e){return U.charAt(e)})},decompressFromEncodedURIComponent:function(r){return r==null?"":r==""?null:(r=r.replace(/ /g,"+"),d._decompress(r.length,32,function(e){return _(U,r.charAt(e))}))},compress:function(r){return d._compress(r,16,function(e){return g(e)})},_compress:function(r,e,a){if(r==null)return"";var n,s,f={},v={},m="",A="",p="",h=2,l=3,c=2,u=[],o=0,i=0,t;for(t=0;t<r.length;t+=1)if(m=r.charAt(t),Object.prototype.hasOwnProperty.call(f,m)||(f[m]=l++,v[m]=!0),A=p+m,Object.prototype.hasOwnProperty.call(f,A))p=A;else{if(Object.prototype.hasOwnProperty.call(v,p)){if(p.charCodeAt(0)<256){for(n=0;n<c;n++)o<<=1,i==e-1?(i=0,u.push(a(o)),o=0):i++;for(s=p.charCodeAt(0),n=0;n<8;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1}else{for(s=1,n=0;n<c;n++)o=o<<1|s,i==e-1?(i=0,u.push(a(o)),o=0):i++,s=0;for(s=p.charCodeAt(0),n=0;n<16;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1}h--,h==0&&(h=2**c,c++),delete v[p]}else for(s=f[p],n=0;n<c;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1;h--,h==0&&(h=2**c,c++),f[A]=l++,p=String(m)}if(p!==""){if(Object.prototype.hasOwnProperty.call(v,p)){if(p.charCodeAt(0)<256){for(n=0;n<c;n++)o<<=1,i==e-1?(i=0,u.push(a(o)),o=0):i++;for(s=p.charCodeAt(0),n=0;n<8;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1}else{for(s=1,n=0;n<c;n++)o=o<<1|s,i==e-1?(i=0,u.push(a(o)),o=0):i++,s=0;for(s=p.charCodeAt(0),n=0;n<16;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1}h--,h==0&&(h=2**c,c++),delete v[p]}else for(s=f[p],n=0;n<c;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1;h--,h==0&&(h=2**c,c++)}for(s=2,n=0;n<c;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1;for(;;)if(o<<=1,i==e-1){u.push(a(o));break}else i++;return u.join("")},decompress:function(r){return r==null?"":r==""?null:d._decompress(r.length,32768,function(e){return r.charCodeAt(e)})},_decompress:function(r,e,a){var n=[],s=4,f=4,v=3,m="",A=[],p,h,l,c,u,o,i,t={val:a(0),position:e,index:1};for(p=0;p<3;p+=1)n[p]=p;for(l=0,u=2**2,o=1;o!=u;)c=t.val&t.position,t.position>>=1,t.position==0&&(t.position=e,t.val=a(t.index++)),l|=(c>0?1:0)*o,o<<=1;switch(l){case 0:for(l=0,u=2**8,o=1;o!=u;)c=t.val&t.position,t.position>>=1,t.position==0&&(t.position=e,t.val=a(t.index++)),l|=(c>0?1:0)*o,o<<=1;i=g(l);break;case 1:for(l=0,u=2**16,o=1;o!=u;)c=t.val&t.position,t.position>>=1,t.position==0&&(t.position=e,t.val=a(t.index++)),l|=(c>0?1:0)*o,o<<=1;i=g(l);break;case 2:return""}for(n[3]=i,h=i,A.push(i);;){if(t.index>r)return"";for(l=0,u=2**v,o=1;o!=u;)c=t.val&t.position,t.position>>=1,t.position==0&&(t.position=e,t.val=a(t.index++)),l|=(c>0?1:0)*o,o<<=1;switch(i=l){case 0:for(l=0,u=2**8,o=1;o!=u;)c=t.val&t.position,t.position>>=1,t.position==0&&(t.position=e,t.val=a(t.index++)),l|=(c>0?1:0)*o,o<<=1;n[f++]=g(l),i=f-1,s--;break;case 1:for(l=0,u=2**16,o=1;o!=u;)c=t.val&t.position,t.position>>=1,t.position==0&&(t.position=e,t.val=a(t.index++)),l|=(c>0?1:0)*o,o<<=1;n[f++]=g(l),i=f-1,s--;break;case 2:return A.join("")}if(s==0&&(s=2**v,v++),n[i])m=n[i];else if(i===f)m=h+h.charAt(0);else return null;A.push(m),n[f++]=h+m.charAt(0),s--,h=m,s==0&&(s=2**v,v++)}}};return d})();typeof define=="function"&&define.amd?define(function(){return C}):y!==void 0&&y!=null?y.exports=C:typeof angular<"u"&&angular!=null&&angular.module("LZString",[]).factory("LZString",function(){return C})})),P=F();function E(w){let{code:y,baseUrl:C="https://marimo.app"}=w,g=new URL(C);return y&&(g.hash=`#code/${(0,P.compressToEncodedURIComponent)(y)}`),g.href}export{F as n,k as r,E as t};
1
+ import{t as O}from"./chunk-LvLJmgfZ.js";import{_ as j}from"./useEventListener-DvoEXWke.js";import{t as T}from"./use-toast-T0_cQDma.js";function k(){try{window.location.reload()}catch(w){j.error("Failed to reload page",w),T({title:"Failed to reload page",description:"Please refresh the page manually."})}}var F=O(((w,y)=>{var C=(function(){var g=String.fromCharCode,x="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",U="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",b={};function _(r,e){if(!b[r]){b[r]={};for(var a=0;a<r.length;a++)b[r][r.charAt(a)]=a}return b[r][e]}var d={compressToBase64:function(r){if(r==null)return"";var e=d._compress(r,6,function(a){return x.charAt(a)});switch(e.length%4){default:case 0:return e;case 1:return e+"===";case 2:return e+"==";case 3:return e+"="}},decompressFromBase64:function(r){return r==null?"":r==""?null:d._decompress(r.length,32,function(e){return _(x,r.charAt(e))})},compressToUTF16:function(r){return r==null?"":d._compress(r,15,function(e){return g(e+32)})+" "},decompressFromUTF16:function(r){return r==null?"":r==""?null:d._decompress(r.length,16384,function(e){return r.charCodeAt(e)-32})},compressToUint8Array:function(r){for(var e=d.compress(r),a=new Uint8Array(e.length*2),n=0,s=e.length;n<s;n++){var f=e.charCodeAt(n);a[n*2]=f>>>8,a[n*2+1]=f%256}return a},decompressFromUint8Array:function(r){if(r==null)return d.decompress(r);for(var e=Array(r.length/2),a=0,n=e.length;a<n;a++)e[a]=r[a*2]*256+r[a*2+1];var s=[];return e.forEach(function(f){s.push(g(f))}),d.decompress(s.join(""))},compressToEncodedURIComponent:function(r){return r==null?"":d._compress(r,6,function(e){return U.charAt(e)})},decompressFromEncodedURIComponent:function(r){return r==null?"":r==""?null:(r=r.replace(/ /g,"+"),d._decompress(r.length,32,function(e){return _(U,r.charAt(e))}))},compress:function(r){return d._compress(r,16,function(e){return g(e)})},_compress:function(r,e,a){if(r==null)return"";var n,s,f={},v={},m="",A="",p="",h=2,l=3,c=2,u=[],o=0,i=0,t;for(t=0;t<r.length;t+=1)if(m=r.charAt(t),Object.prototype.hasOwnProperty.call(f,m)||(f[m]=l++,v[m]=!0),A=p+m,Object.prototype.hasOwnProperty.call(f,A))p=A;else{if(Object.prototype.hasOwnProperty.call(v,p)){if(p.charCodeAt(0)<256){for(n=0;n<c;n++)o<<=1,i==e-1?(i=0,u.push(a(o)),o=0):i++;for(s=p.charCodeAt(0),n=0;n<8;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1}else{for(s=1,n=0;n<c;n++)o=o<<1|s,i==e-1?(i=0,u.push(a(o)),o=0):i++,s=0;for(s=p.charCodeAt(0),n=0;n<16;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1}h--,h==0&&(h=2**c,c++),delete v[p]}else for(s=f[p],n=0;n<c;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1;h--,h==0&&(h=2**c,c++),f[A]=l++,p=String(m)}if(p!==""){if(Object.prototype.hasOwnProperty.call(v,p)){if(p.charCodeAt(0)<256){for(n=0;n<c;n++)o<<=1,i==e-1?(i=0,u.push(a(o)),o=0):i++;for(s=p.charCodeAt(0),n=0;n<8;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1}else{for(s=1,n=0;n<c;n++)o=o<<1|s,i==e-1?(i=0,u.push(a(o)),o=0):i++,s=0;for(s=p.charCodeAt(0),n=0;n<16;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1}h--,h==0&&(h=2**c,c++),delete v[p]}else for(s=f[p],n=0;n<c;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1;h--,h==0&&(h=2**c,c++)}for(s=2,n=0;n<c;n++)o=o<<1|s&1,i==e-1?(i=0,u.push(a(o)),o=0):i++,s>>=1;for(;;)if(o<<=1,i==e-1){u.push(a(o));break}else i++;return u.join("")},decompress:function(r){return r==null?"":r==""?null:d._decompress(r.length,32768,function(e){return r.charCodeAt(e)})},_decompress:function(r,e,a){var n=[],s=4,f=4,v=3,m="",A=[],p,h,l,c,u,o,i,t={val:a(0),position:e,index:1};for(p=0;p<3;p+=1)n[p]=p;for(l=0,u=2**2,o=1;o!=u;)c=t.val&t.position,t.position>>=1,t.position==0&&(t.position=e,t.val=a(t.index++)),l|=(c>0?1:0)*o,o<<=1;switch(l){case 0:for(l=0,u=2**8,o=1;o!=u;)c=t.val&t.position,t.position>>=1,t.position==0&&(t.position=e,t.val=a(t.index++)),l|=(c>0?1:0)*o,o<<=1;i=g(l);break;case 1:for(l=0,u=2**16,o=1;o!=u;)c=t.val&t.position,t.position>>=1,t.position==0&&(t.position=e,t.val=a(t.index++)),l|=(c>0?1:0)*o,o<<=1;i=g(l);break;case 2:return""}for(n[3]=i,h=i,A.push(i);;){if(t.index>r)return"";for(l=0,u=2**v,o=1;o!=u;)c=t.val&t.position,t.position>>=1,t.position==0&&(t.position=e,t.val=a(t.index++)),l|=(c>0?1:0)*o,o<<=1;switch(i=l){case 0:for(l=0,u=2**8,o=1;o!=u;)c=t.val&t.position,t.position>>=1,t.position==0&&(t.position=e,t.val=a(t.index++)),l|=(c>0?1:0)*o,o<<=1;n[f++]=g(l),i=f-1,s--;break;case 1:for(l=0,u=2**16,o=1;o!=u;)c=t.val&t.position,t.position>>=1,t.position==0&&(t.position=e,t.val=a(t.index++)),l|=(c>0?1:0)*o,o<<=1;n[f++]=g(l),i=f-1,s--;break;case 2:return A.join("")}if(s==0&&(s=2**v,v++),n[i])m=n[i];else if(i===f)m=h+h.charAt(0);else return null;A.push(m),n[f++]=h+m.charAt(0),s--,h=m,s==0&&(s=2**v,v++)}}};return d})();typeof define=="function"&&define.amd?define(function(){return C}):y!==void 0&&y!=null?y.exports=C:typeof angular<"u"&&angular!=null&&angular.module("LZString",[]).factory("LZString",function(){return C})})),P=F();function E(w){let{code:y,baseUrl:C="https://marimo.app"}=w,g=new URL(C);return y&&(g.hash=`#code/${(0,P.compressToEncodedURIComponent)(y)}`),g.href}export{F as n,k as r,E as t};
@@ -1 +1 @@
1
- import{s as I}from"./chunk-LvLJmgfZ.js";import"./useEvent-D91BmmQi.js";import{t as P}from"./react-Bj1aDYRI.js";import{E as q}from"./cells-BBDzmUIS.js";import"./react-dom-CSu739Rf.js";import{t as $}from"./compiler-runtime-B3qBwwSJ.js";import{n as D}from"./useEventListener-BR0C1MaI.js";import{n as F}from"./constants-DMpttj8Q.js";import{t as G}from"./cn-DCUzRj2J.js";import{t as R}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-BDxedMYP.js";import{t as T}from"./tooltip-Gcwqb_SK.js";import{t as w}from"./button-D9nb17Rw.js";import{at as W}from"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{r as A}from"./requests-DIwGYs0l.js";import{n as E,t as B}from"./LazyAnyLanguageCodeMirror-pAFdCqyC.js";import{t as J}from"./x-C-6liIBr.js";import{t as K}from"./spinner-Bhir8k53.js";import{t as L}from"./plus-BgB18UzY.js";import"./dist-DQOq2Tf-.js";import"./dist-DBiqbYe-.js";import"./dist-VjDnmGCZ.js";import"./dist-E6ttb8td.js";import"./dist-B324sPca.js";import"./session-VtovaFBS.js";import{r as U}from"./useTheme-DFXuDFj9.js";import"./purify.es-DBmVz-Wl.js";import{t as V}from"./RenderHTML-CruxVneu.js";import{a as X,c as Y,i as Q,n as Z,r as ee}from"./dialog-Dj0qTFnG.js";import{n as te}from"./ImperativeModal-D7lQ0Q7_.js";import{n as se}from"./error-banner-C10O4l3y.js";import{n as re}from"./useAsyncData-BFC6lWG9.js";import{a as le,o as oe,r as ie,t as ae,u as ne}from"./command-CBCkexpx.js";import{o as me}from"./focus-J47a1GCq.js";import{n as ce,r as de,t as M}from"./react-resizable-panels.browser.esm-BUNcfKXO.js";import{t as pe}from"./empty-state-vCWg-_A9.js";import{n as he,r as fe}from"./panel-context-D-qi_oxP.js";import{t as H}from"./kiosk-mode-Cr9yyT7A.js";var O=$(),C=I(P(),1),s=I(R(),1),xe=D;const ue=t=>{let e=(0,O.c)(6),{children:r}=t,{openModal:i,closeModal:o}=te(),l;e[0]!==o||e[1]!==i?(l=()=>i((0,s.jsx)(je,{onClose:o})),e[0]=o,e[1]=i,e[2]=l):l=e[2];let a;return e[3]!==r||e[4]!==l?(a=(0,s.jsx)(xe,{onClick:l,children:r}),e[3]=r,e[4]=l,e[5]=a):a=e[5],a};var je=t=>{let e=(0,O.c)(4),{onClose:r}=t,i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=(0,s.jsx)(Y,{children:"Contribute a Snippet"}),e[0]=i):i=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=(0,s.jsxs)(X,{children:[i,(0,s.jsxs)(ee,{children:["Have a useful snippet you want to share with the community? Make a pull request"," ",(0,s.jsx)("a",{href:F.githubPage,target:"_blank",className:"underline",children:"on GitHub"}),"."]})]}),e[1]=o):o=e[1];let l;return e[2]===r?l=e[3]:(l=(0,s.jsxs)(Z,{className:"max-w-md",children:[o,(0,s.jsx)(Q,{children:(0,s.jsx)(w,{"data-testid":"snippet-close-button",variant:"default",onClick:r,children:"Close"})})]}),e[2]=r,e[3]=l),l},k=$(),be=[W.lineWrapping],ve=()=>{let t=(0,k.c)(24),{readSnippets:e}=A(),[r,i]=C.useState(),o=he(),l=fe(),a;t[0]===e?a=t[1]:(a=()=>e(),t[0]=e,t[1]=a);let c;t[2]===Symbol.for("react.memo_cache_sentinel")?(c=[],t[2]=c):c=t[2];let{data:N,error:j,isPending:g}=re(a,c);if(j){let m;return t[3]===j?m=t[4]:(m=(0,s.jsx)(se,{error:j}),t[3]=j,t[4]=m),m}if(g||!N){let m;return t[5]===Symbol.for("react.memo_cache_sentinel")?(m=(0,s.jsx)(K,{size:"medium",centered:!0}),t[5]=m):m=t[5],m}let _=o==="vertical",b;t[6]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsx)(le,{placeholder:"Search snippets...",className:"h-6 m-1",rootClassName:"flex-1 border-r"}),t[6]=b):b=t[6];let h,f;t[7]===Symbol.for("react.memo_cache_sentinel")?(h=(0,s.jsxs)("div",{className:"flex items-center w-full border-b",children:[b,(0,s.jsx)(ue,{children:(0,s.jsx)("button",{className:"float-right px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",children:(0,s.jsx)(L,{className:"h-4 w-4"})})})]}),f=(0,s.jsx)(ie,{children:"No results"}),t[7]=h,t[8]=f):(h=t[7],f=t[8]);let v;t[9]===Symbol.for("react.memo_cache_sentinel")?(v=m=>i(m),t[9]=v):v=t[9];let d;t[10]===N.snippets?d=t[11]:(d=(0,s.jsx)(M,{defaultSize:40,minSize:20,maxSize:70,children:(0,s.jsxs)(ae,{className:"h-full rounded-none",children:[h,f,(0,s.jsx)(_e,{onSelect:v,snippets:N.snippets})]})}),t[10]=N.snippets,t[11]=d);let u=_?"h-1":"w-1",p;t[12]===u?p=t[13]:(p=G("bg-border hover:bg-primary/50 transition-colors",u),t[12]=u,t[13]=p);let x;t[14]===p?x=t[15]:(x=(0,s.jsx)(de,{className:p}),t[14]=p,t[15]=x);let n;t[16]===r?n=t[17]:(n=(0,s.jsx)(M,{defaultSize:60,minSize:20,children:(0,s.jsx)(C.Suspense,{children:(0,s.jsx)("div",{className:"h-full snippet-viewer flex flex-col overflow-hidden",children:r?(0,s.jsx)(Ne,{snippet:r,onClose:()=>i(void 0)},r.title):(0,s.jsx)(pe,{title:"",description:"Click on a snippet to view its content."})})})}),t[16]=r,t[17]=n);let S;return t[18]!==o||t[19]!==l||t[20]!==n||t[21]!==d||t[22]!==x?(S=(0,s.jsx)("div",{className:"flex-1 overflow-hidden h-full",children:(0,s.jsxs)(ce,{direction:o,className:"h-full",children:[d,x,n]},l)}),t[18]=o,t[19]=l,t[20]=n,t[21]=d,t[22]=x,t[23]=S):S=t[23],S},Ne=t=>{let e=(0,k.c)(33),{snippet:r,onClose:i}=t,{theme:o}=U(),{createNewCell:l}=q(),a=me(),c;e[0]!==l||e[1]!==a||e[2]!==r.sections?(c=()=>{for(let n of r.sections.toReversed())n.code&&l({code:n.code,before:!1,cellId:a??"__end__",skipIfCodeExists:!0})},e[0]=l,e[1]=a,e[2]=r.sections,e[3]=c):c=e[3];let N=c,j;e[4]!==l||e[5]!==a?(j=n=>{l({code:n,before:!1,cellId:a??"__end__"})},e[4]=l,e[5]=a,e[6]=j):j=e[6];let g=j,_;e[7]===r.title?_=e[8]:(_=(0,s.jsx)("span",{children:r.title}),e[7]=r.title,e[8]=_);let b;e[9]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsx)(J,{className:"h-4 w-4"}),e[9]=b):b=e[9];let h;e[10]===i?h=e[11]:(h=(0,s.jsx)(w,{size:"sm",variant:"ghost",onClick:i,className:"h-6 w-6 p-0 hover:bg-muted-foreground/10",children:b}),e[10]=i,e[11]=h);let f;e[12]!==_||e[13]!==h?(f=(0,s.jsxs)("div",{className:"text-sm font-semibold bg-muted border-y px-2 py-1 flex justify-between items-center",children:[_,h]}),e[12]=_,e[13]=h,e[14]=f):f=e[14];let v;e[15]===Symbol.for("react.memo_cache_sentinel")?(v=(0,s.jsx)(E,{className:"ml-2 h-4 w-4"}),e[15]=v):v=e[15];let d;e[16]===N?d=e[17]:(d=(0,s.jsx)("div",{className:"flex justify-end",children:(0,s.jsx)(H,{children:(0,s.jsxs)(w,{className:"float-right",size:"xs",variant:"outline",onClick:N,children:["Insert snippet",v]})})}),e[16]=N,e[17]=d);let u;if(e[18]!==g||e[19]!==r.sections||e[20]!==r.title||e[21]!==o){let n;e[23]!==g||e[24]!==r.title||e[25]!==o?(n=S=>{let{code:m,html:z,id:y}=S;return z?(0,s.jsx)("div",{children:V({html:z})},`${r.title}-${y}`):m?(0,s.jsxs)("div",{className:"relative hover-actions-parent pr-2",children:[(0,s.jsx)(H,{children:(0,s.jsx)(T,{content:"Insert snippet",children:(0,s.jsx)(w,{className:"absolute -top-2 -right-1 z-10 hover-action px-2 bg-background",size:"sm",variant:"outline",onClick:()=>{g(m)},children:(0,s.jsx)(E,{className:"h-5 w-5"})})})}),(0,s.jsx)(C.Suspense,{children:(0,s.jsx)(B,{theme:o==="dark"?"dark":"light",language:"python",className:"cm border rounded overflow-hidden",extensions:be,value:m,readOnly:!0},`${r.title}-${y}`)})]},`${r.title}-${y}`):null},e[23]=g,e[24]=r.title,e[25]=o,e[26]=n):n=e[26],u=r.sections.map(n),e[18]=g,e[19]=r.sections,e[20]=r.title,e[21]=o,e[22]=u}else u=e[22];let p;e[27]!==d||e[28]!==u?(p=(0,s.jsxs)("div",{className:"px-2 py-2 space-y-4 overflow-auto flex-1",children:[d,u]}),e[27]=d,e[28]=u,e[29]=p):p=e[29];let x;return e[30]!==p||e[31]!==f?(x=(0,s.jsxs)(s.Fragment,{children:[f,p]}),e[30]=p,e[31]=f,e[32]=x):x=e[32],x},_e=t=>{let e=(0,k.c)(7),{snippets:r,onSelect:i}=t,o;if(e[0]!==i||e[1]!==r){let a;e[3]===i?a=e[4]:(a=c=>(0,s.jsx)(oe,{className:"rounded-none",onSelect:()=>i(c),children:(0,s.jsx)("div",{className:"flex flex-row gap-2 items-center",children:(0,s.jsx)("span",{className:"mt-1 text-accent-foreground",children:c.title})})},c.title),e[3]=i,e[4]=a),o=r.map(a),e[0]=i,e[1]=r,e[2]=o}else o=e[2];let l;return e[5]===o?l=e[6]:(l=(0,s.jsx)(ne,{className:"flex flex-col overflow-auto",children:o}),e[5]=o,e[6]=l),l};export{ve as default};
1
+ import{s as I}from"./chunk-LvLJmgfZ.js";import"./useEvent-D91BmmQi.js";import{t as O}from"./react-Bj1aDYRI.js";import{D as P}from"./cells-Vnv1zw09.js";import"./react-dom-CSu739Rf.js";import{t as $}from"./compiler-runtime-B3qBwwSJ.js";import{n as q}from"./useEventListener-DvoEXWke.js";import{n as F}from"./constants-DMpttj8Q.js";import{t as G}from"./cn-DCUzRj2J.js";import{t as R}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-eipL3i3Y.js";import{t as T}from"./tooltip-DTV9tlSr.js";import{t as w}from"./button-BbCh-29a.js";import{at as W}from"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{r as A}from"./requests-DIwGYs0l.js";import{n as M,t as B}from"./LazyAnyLanguageCodeMirror-CXbgDeVw.js";import{t as J}from"./x-C-6liIBr.js";import{t as K}from"./spinner-Bhir8k53.js";import{t as L}from"./plus-BgB18UzY.js";import"./dist-DQOq2Tf-.js";import"./dist-DBiqbYe-.js";import"./dist-VjDnmGCZ.js";import"./dist-E6ttb8td.js";import"./dist-B324sPca.js";import"./session-gB-8RZAq.js";import{r as U}from"./useTheme-DyLIIrGi.js";import"./purify.es-DBmVz-Wl.js";import{t as V}from"./RenderHTML-CvnUbELu.js";import{a as X,c as Y,i as Q,n as Z,r as ee}from"./dialog-DBzaWZPw.js";import{n as te}from"./ImperativeModal-CvOOClOZ.js";import{n as se}from"./error-banner-JKAA0BVv.js";import{n as re}from"./useAsyncData-BFC6lWG9.js";import{a as le,o as oe,r as ie,t as ae,u as ne}from"./command-OHlV5HHD.js";import{o as me}from"./focus-bWAnl_NC.js";import{n as ce,r as de,t as D}from"./react-resizable-panels.browser.esm-BUNcfKXO.js";import{t as pe}from"./empty-state-vCWg-_A9.js";import{n as he,r as fe}from"./panel-context-D-qi_oxP.js";import{t as E}from"./kiosk-mode-DPxzN-M0.js";var H=$(),C=I(O(),1),s=I(R(),1),xe=q;const ue=t=>{let e=(0,H.c)(6),{children:r}=t,{openModal:i,closeModal:o}=te(),l;e[0]!==o||e[1]!==i?(l=()=>i((0,s.jsx)(je,{onClose:o})),e[0]=o,e[1]=i,e[2]=l):l=e[2];let a;return e[3]!==r||e[4]!==l?(a=(0,s.jsx)(xe,{onClick:l,children:r}),e[3]=r,e[4]=l,e[5]=a):a=e[5],a};var je=t=>{let e=(0,H.c)(4),{onClose:r}=t,i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=(0,s.jsx)(Y,{children:"Contribute a Snippet"}),e[0]=i):i=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=(0,s.jsxs)(X,{children:[i,(0,s.jsxs)(ee,{children:["Have a useful snippet you want to share with the community? Make a pull request"," ",(0,s.jsx)("a",{href:F.githubPage,target:"_blank",className:"underline",children:"on GitHub"}),"."]})]}),e[1]=o):o=e[1];let l;return e[2]===r?l=e[3]:(l=(0,s.jsxs)(Z,{className:"max-w-md",children:[o,(0,s.jsx)(Q,{children:(0,s.jsx)(w,{"data-testid":"snippet-close-button",variant:"default",onClick:r,children:"Close"})})]}),e[2]=r,e[3]=l),l},k=$(),be=[W.lineWrapping],ve=()=>{let t=(0,k.c)(24),{readSnippets:e}=A(),[r,i]=C.useState(),o=he(),l=fe(),a;t[0]===e?a=t[1]:(a=()=>e(),t[0]=e,t[1]=a);let c;t[2]===Symbol.for("react.memo_cache_sentinel")?(c=[],t[2]=c):c=t[2];let{data:N,error:j,isPending:g}=re(a,c);if(j){let m;return t[3]===j?m=t[4]:(m=(0,s.jsx)(se,{error:j}),t[3]=j,t[4]=m),m}if(g||!N){let m;return t[5]===Symbol.for("react.memo_cache_sentinel")?(m=(0,s.jsx)(K,{size:"medium",centered:!0}),t[5]=m):m=t[5],m}let _=o==="vertical",b;t[6]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsx)(le,{placeholder:"Search snippets...",className:"h-6 m-1",rootClassName:"flex-1 border-r"}),t[6]=b):b=t[6];let h,f;t[7]===Symbol.for("react.memo_cache_sentinel")?(h=(0,s.jsxs)("div",{className:"flex items-center w-full border-b",children:[b,(0,s.jsx)(ue,{children:(0,s.jsx)("button",{className:"float-right px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",children:(0,s.jsx)(L,{className:"h-4 w-4"})})})]}),f=(0,s.jsx)(ie,{children:"No results"}),t[7]=h,t[8]=f):(h=t[7],f=t[8]);let v;t[9]===Symbol.for("react.memo_cache_sentinel")?(v=m=>i(m),t[9]=v):v=t[9];let d;t[10]===N.snippets?d=t[11]:(d=(0,s.jsx)(D,{defaultSize:40,minSize:20,maxSize:70,children:(0,s.jsxs)(ae,{className:"h-full rounded-none",children:[h,f,(0,s.jsx)(_e,{onSelect:v,snippets:N.snippets})]})}),t[10]=N.snippets,t[11]=d);let u=_?"h-1":"w-1",p;t[12]===u?p=t[13]:(p=G("bg-border hover:bg-primary/50 transition-colors",u),t[12]=u,t[13]=p);let x;t[14]===p?x=t[15]:(x=(0,s.jsx)(de,{className:p}),t[14]=p,t[15]=x);let n;t[16]===r?n=t[17]:(n=(0,s.jsx)(D,{defaultSize:60,minSize:20,children:(0,s.jsx)(C.Suspense,{children:(0,s.jsx)("div",{className:"h-full snippet-viewer flex flex-col overflow-hidden",children:r?(0,s.jsx)(Ne,{snippet:r,onClose:()=>i(void 0)},r.title):(0,s.jsx)(pe,{title:"",description:"Click on a snippet to view its content."})})})}),t[16]=r,t[17]=n);let S;return t[18]!==o||t[19]!==l||t[20]!==n||t[21]!==d||t[22]!==x?(S=(0,s.jsx)("div",{className:"flex-1 overflow-hidden h-full",children:(0,s.jsxs)(ce,{direction:o,className:"h-full",children:[d,x,n]},l)}),t[18]=o,t[19]=l,t[20]=n,t[21]=d,t[22]=x,t[23]=S):S=t[23],S},Ne=t=>{let e=(0,k.c)(33),{snippet:r,onClose:i}=t,{theme:o}=U(),{createNewCell:l}=P(),a=me(),c;e[0]!==l||e[1]!==a||e[2]!==r.sections?(c=()=>{for(let n of r.sections.toReversed())n.code&&l({code:n.code,before:!1,cellId:a??"__end__",skipIfCodeExists:!0})},e[0]=l,e[1]=a,e[2]=r.sections,e[3]=c):c=e[3];let N=c,j;e[4]!==l||e[5]!==a?(j=n=>{l({code:n,before:!1,cellId:a??"__end__"})},e[4]=l,e[5]=a,e[6]=j):j=e[6];let g=j,_;e[7]===r.title?_=e[8]:(_=(0,s.jsx)("span",{children:r.title}),e[7]=r.title,e[8]=_);let b;e[9]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsx)(J,{className:"h-4 w-4"}),e[9]=b):b=e[9];let h;e[10]===i?h=e[11]:(h=(0,s.jsx)(w,{size:"sm",variant:"ghost",onClick:i,className:"h-6 w-6 p-0 hover:bg-muted-foreground/10",children:b}),e[10]=i,e[11]=h);let f;e[12]!==_||e[13]!==h?(f=(0,s.jsxs)("div",{className:"text-sm font-semibold bg-muted border-y px-2 py-1 flex justify-between items-center",children:[_,h]}),e[12]=_,e[13]=h,e[14]=f):f=e[14];let v;e[15]===Symbol.for("react.memo_cache_sentinel")?(v=(0,s.jsx)(M,{className:"ml-2 h-4 w-4"}),e[15]=v):v=e[15];let d;e[16]===N?d=e[17]:(d=(0,s.jsx)("div",{className:"flex justify-end",children:(0,s.jsx)(E,{children:(0,s.jsxs)(w,{className:"float-right",size:"xs",variant:"outline",onClick:N,children:["Insert snippet",v]})})}),e[16]=N,e[17]=d);let u;if(e[18]!==g||e[19]!==r.sections||e[20]!==r.title||e[21]!==o){let n;e[23]!==g||e[24]!==r.title||e[25]!==o?(n=S=>{let{code:m,html:z,id:y}=S;return z?(0,s.jsx)("div",{children:V({html:z})},`${r.title}-${y}`):m?(0,s.jsxs)("div",{className:"relative hover-actions-parent pr-2",children:[(0,s.jsx)(E,{children:(0,s.jsx)(T,{content:"Insert snippet",children:(0,s.jsx)(w,{className:"absolute -top-2 -right-1 z-10 hover-action px-2 bg-background",size:"sm",variant:"outline",onClick:()=>{g(m)},children:(0,s.jsx)(M,{className:"h-5 w-5"})})})}),(0,s.jsx)(C.Suspense,{children:(0,s.jsx)(B,{theme:o==="dark"?"dark":"light",language:"python",className:"cm border rounded overflow-hidden",extensions:be,value:m,readOnly:!0},`${r.title}-${y}`)})]},`${r.title}-${y}`):null},e[23]=g,e[24]=r.title,e[25]=o,e[26]=n):n=e[26],u=r.sections.map(n),e[18]=g,e[19]=r.sections,e[20]=r.title,e[21]=o,e[22]=u}else u=e[22];let p;e[27]!==d||e[28]!==u?(p=(0,s.jsxs)("div",{className:"px-2 py-2 space-y-4 overflow-auto flex-1",children:[d,u]}),e[27]=d,e[28]=u,e[29]=p):p=e[29];let x;return e[30]!==p||e[31]!==f?(x=(0,s.jsxs)(s.Fragment,{children:[f,p]}),e[30]=p,e[31]=f,e[32]=x):x=e[32],x},_e=t=>{let e=(0,k.c)(7),{snippets:r,onSelect:i}=t,o;if(e[0]!==i||e[1]!==r){let a;e[3]===i?a=e[4]:(a=c=>(0,s.jsx)(oe,{className:"rounded-none",onSelect:()=>i(c),children:(0,s.jsx)("div",{className:"flex flex-row gap-2 items-center",children:(0,s.jsx)("span",{className:"mt-1 text-accent-foreground",children:c.title})})},c.title),e[3]=i,e[4]=a),o=r.map(a),e[0]=i,e[1]=r,e[2]=o}else o=e[2];let l;return e[5]===o?l=e[6]:(l=(0,s.jsx)(ne,{className:"flex flex-col overflow-auto",children:o}),e[5]=o,e[6]=l),l};export{ve as default};
@@ -1 +1 @@
1
- import{i as I}from"./strings-md4mFbOQ.js";import{t as p}from"./createLucideIcon-D5guW7EU.js";import{a as J}from"./useLifecycle-DieWOfXE.js";import{t as R}from"./chart-no-axes-column-nqk474t8.js";import{r as Z,t as ee}from"./table-6NxtGaCm.js";import{t as te}from"./square-function-D1dlJvD8.js";var ae=p("align-center-vertical",[["path",{d:"M12 2v20",key:"t6zp3m"}],["path",{d:"M8 10H4a2 2 0 0 1-2-2V6c0-1.1.9-2 2-2h4",key:"14d6g8"}],["path",{d:"M16 10h4a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-4",key:"1e2lrw"}],["path",{d:"M8 20H7a2 2 0 0 1-2-2v-2c0-1.1.9-2 2-2h1",key:"1fkdwx"}],["path",{d:"M16 14h1a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2h-1",key:"1euafb"}]]),ne=p("arrow-down-to-line",[["path",{d:"M12 17V3",key:"1cwfxf"}],["path",{d:"m6 11 6 6 6-6",key:"12ii2o"}],["path",{d:"M19 21H5",key:"150jfl"}]]),re=p("arrow-up-to-line",[["path",{d:"M5 3h14",key:"7usisc"}],["path",{d:"m18 13-6-6-6 6",key:"1kf1n9"}],["path",{d:"M12 7v14",key:"1akyts"}]]),ie=p("baseline",[["path",{d:"M4 20h16",key:"14thso"}],["path",{d:"m6 16 6-12 6 12",key:"1b4byz"}],["path",{d:"M8 12h8",key:"1wcyev"}]]),le=p("chart-area",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M7 11.207a.5.5 0 0 1 .146-.353l2-2a.5.5 0 0 1 .708 0l3.292 3.292a.5.5 0 0 0 .708 0l4.292-4.292a.5.5 0 0 1 .854.353V16a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1z",key:"q0gr47"}]]),P=p("chart-column",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]]),oe=p("chart-line",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"m19 9-5 5-4-4-3 3",key:"2osh9i"}]]),se=p("chart-no-axes-column-increasing",[["path",{d:"M5 21v-6",key:"1hz6c0"}],["path",{d:"M12 21V9",key:"uvy0l4"}],["path",{d:"M19 21V3",key:"11j9sm"}]]),ce=p("chart-scatter",[["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}],["circle",{cx:"18.5",cy:"5.5",r:".5",fill:"currentColor",key:"lysivs"}],["circle",{cx:"11.5",cy:"11.5",r:".5",fill:"currentColor",key:"byv1b8"}],["circle",{cx:"7.5",cy:"16.5",r:".5",fill:"currentColor",key:"nkw3mc"}],["circle",{cx:"17.5",cy:"14.5",r:".5",fill:"currentColor",key:"1gjh6j"}],["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}]]),ue=p("ruler-dimension-line",[["path",{d:"M10 15v-3",key:"1pjskw"}],["path",{d:"M14 15v-3",key:"1o1mqj"}],["path",{d:"M18 15v-3",key:"cws6he"}],["path",{d:"M2 8V4",key:"3jv1jz"}],["path",{d:"M22 6H2",key:"1iqbfk"}],["path",{d:"M22 8V4",key:"16f4ou"}],["path",{d:"M6 15v-3",key:"1ij1qe"}],["rect",{x:"2",y:"12",width:"20",height:"8",rx:"2",key:"1tqiko"}]]),de=p("sigma",[["path",{d:"M18 7V5a1 1 0 0 0-1-1H6.5a.5.5 0 0 0-.4.8l4.5 6a2 2 0 0 1 0 2.4l-4.5 6a.5.5 0 0 0 .4.8H17a1 1 0 0 0 1-1v-2",key:"wuwx1p"}]]);function v(e){return e&&e.replaceAll(".","\\.").replaceAll("[","\\[").replaceAll("]","\\]").replaceAll(":","\\:")}const fe="__count__",Y="default",me="yearmonthdate",ye=6,ge="",pe={line:oe,bar:se,pie:Z,scatter:ce,heatmap:ee,area:le},U="mean",he={none:te,count:J,sum:de,mean:ie,median:ae,min:ne,max:re,distinct:J,valid:J,stdev:R,stdevp:R,variance:P,variancep:P,bin:ue},be={none:"No aggregation",count:"Count of records",sum:"Sum of values",mean:"Mean of values",median:"Median of values",min:"Minimum value",max:"Maximum value",distinct:"Count of distinct records",valid:"Count non-null records",stdev:"Standard deviation",stdevp:"Standard deviation of population",variance:"Variance",variancep:"Variance of population",bin:"Group values into bins"},ke=[Y,"accent","category10","category20","category20b","category20c","dark2","paired","pastel1","pastel2","set1","set2","set3","tableau10","tableau20","blues","greens","greys","oranges","purples","reds","bluegreen","bluepurple","goldgreen","goldorange","goldred","greenblue","orangered","purplebluegreen","purplered","redpurple","yellowgreenblue","yelloworangered","blueorange","brownbluegreen","purplegreen","pinkyellowgreen","purpleorange","redblue","redgrey","redyellowblue","redyellowgreen","spectral","rainbow","sinebow"],ve={number:"Continuous numerical scale",string:"Discrete categorical scale (inputs treated as strings)",temporal:"Continuous temporal scale"},xe={year:["Year","2025"],quarter:["Quarter","Q1 2025"],month:["Month","Jan 2025"],week:["Week","Jan 01, 2025"],day:["Day","Jan 01, 2025"],hours:["Hour","Jan 01, 2025 12:00"],minutes:["Minute","Jan 01, 2025 12:34"],seconds:["Second","Jan 01, 2025 12:34:56"],milliseconds:["Millisecond","Jan 01, 2025 12:34:56.789"],date:["Date","Jan 01, 2025"],dayofyear:["Day of Year","Day 1 of 2025"],yearmonth:["Year Month","Jan 2025"],yearmonthdate:["Year Month Date","Jan 01, 2025"],monthdate:["Month Date","Jan 01"]},Me=["number","string","temporal"],O=["year","quarter","month","date","week","day","dayofyear","hours","minutes","seconds","milliseconds"],X=["yearmonth","yearmonthdate","monthdate"],L=[...O,...X];[...L];const we=["ascending","descending"],q="none",Ce="bin",Ae=[q,"bin","count","sum","mean","median","min","max","distinct","valid","stdev","stdevp","variance","variancep"],N=[q,"count","distinct","valid"],y={LINE:"line",BAR:"bar",PIE:"pie",SCATTER:"scatter",HEATMAP:"heatmap",AREA:"area"},Ee=Object.values(y),Te=["X","Y","Color",q];function B(e){switch(e){case"number":case"integer":return"quantitative";case"string":case"boolean":case"unknown":return"nominal";case"date":case"datetime":case"time":case"temporal":return"temporal";default:return I(e),"nominal"}}function _e(e){switch(e){case"number":case"integer":return"number";case"string":case"boolean":case"unknown":return"string";case"date":case"datetime":case"time":return"temporal";default:return I(e),"string"}}function Q(e){switch(e){case y.PIE:return"arc";case y.SCATTER:return"point";case y.HEATMAP:return"rect";default:return e}}function j(e,t,a,i){if(e===y.HEATMAP)return a!=null&&a.maxbins?{maxbins:a==null?void 0:a.maxbins}:void 0;if(t!=="number")return;if(!(a!=null&&a.binned))return i;let n={};return a.step!==void 0&&(n.step=a.step),a.maxbins!==void 0&&(n.maxbins=a.maxbins),Object.keys(n).length===0?!0:n}function G(e){var i,n;let t=(i=e.color)==null?void 0:i.range;if(t!=null&&t.length)return{range:t};let a=(n=e.color)==null?void 0:n.scheme;if(a&&a!=="default")return{scheme:a}}function De(e,t){var o,c,u,f,h,s,g,k,b;if(e===y.PIE)return;let a;if(m((c=(o=t.general)==null?void 0:o.colorByColumn)==null?void 0:c.field))a=(u=t.general)==null?void 0:u.colorByColumn;else if(m((f=t.color)==null?void 0:f.field))switch((h=t.color)==null?void 0:h.field){case"X":a=(s=t.general)==null?void 0:s.xColumn;break;case"Y":a=(g=t.general)==null?void 0:g.yColumn;break;case"Color":a=(k=t.general)==null?void 0:k.colorByColumn;break;default:return}else return;if(!a||!m(a.field)||a.field==="none")return;if(a.field==="__count__")return{aggregate:"count",type:"quantitative"};let i=(b=t.color)==null?void 0:b.bin,n=a.selectedDataType||"string",r=a==null?void 0:a.aggregate;return{field:v(a.field),type:B(n),scale:G(t),aggregate:W(r,n),bin:j(e,n,i)}}function Ve(e,t){var a,i,n,r,o;if(!((a=t.general)!=null&&a.stacking||!m((n=(i=t.general)==null?void 0:i.colorByColumn)==null?void 0:n.field)||e!==y.BAR))return{field:v((o=(r=t.general)==null?void 0:r.colorByColumn)==null?void 0:o.field)}}function W(e,t,a){if(t!=="temporal"&&!(e==="none"||e==="bin"))return e?t==="string"?N.includes(e)?e:void 0:e:a||void 0}function qe(e){switch(e){case"integer":return",.0f";case"number":return",.2f";default:return}}function $(e){var u,f,h,s,g,k,b,M,w,C,_,D,V,A,E,T;let{formValues:t,xEncoding:a,yEncoding:i,colorByEncoding:n}=e;if(!t.tooltips)return;function r(l,x,d){if("aggregate"in l&&l.aggregate==="count"&&!m(l.field))return{aggregate:"count"};if(l&&"field"in l&&m(l.field))return l.timeUnit&&!d&&(d=l.field),{field:l.field,aggregate:l.aggregate,timeUnit:l.timeUnit,format:qe(x),title:d,bin:l.bin}}if(t.tooltips.auto){let l=[],x=r(a,((f=(u=t.general)==null?void 0:u.xColumn)==null?void 0:f.type)||"string",(h=t.xAxis)==null?void 0:h.label);x&&l.push(x);let d=r(i,((g=(s=t.general)==null?void 0:s.yColumn)==null?void 0:g.type)||"string",(k=t.yAxis)==null?void 0:k.label);d&&l.push(d);let z=r(n||{},((M=(b=t.general)==null?void 0:b.colorByColumn)==null?void 0:M.type)||"string");return z&&l.push(z),l}let o=t.tooltips.fields??[],c=[];for(let l of o){if("field"in a&&m(a.field)&&a.field===l.field){let d=r(a,((C=(w=t.general)==null?void 0:w.xColumn)==null?void 0:C.type)||"string",(_=t.xAxis)==null?void 0:_.label);d&&c.push(d);continue}if("field"in i&&m(i.field)&&i.field===l.field){let d=r(i,((V=(D=t.general)==null?void 0:D.yColumn)==null?void 0:V.type)||"string",(A=t.yAxis)==null?void 0:A.label);d&&c.push(d);continue}if(n&&"field"in n&&m(n.field)&&n.field===l.field){let d=r(n,((T=(E=t.general)==null?void 0:E.colorByColumn)==null?void 0:T.type)||"string");d&&c.push(d);continue}let x={field:v(l.field)};c.push(x)}return c}function Be(e,t,a,i,n){var A,E,T,l;let{xColumn:r,yColumn:o,colorByColumn:c,horizontal:u,stacking:f,title:h,facet:s}=t.general??{};if(e===y.PIE)return He(t,a,i,n);if(!m(r==null?void 0:r.field))return"X-axis column is required";if(!m(o==null?void 0:o.field))return"Y-axis column is required";let g=S(r,(A=t.xAxis)==null?void 0:A.bin,H((E=t.xAxis)==null?void 0:E.label),c!=null&&c.field&&u?f:void 0,e),k=U;(o==null?void 0:o.selectedDataType)==="string"&&(k="count");let b=S(o,(T=t.yAxis)==null?void 0:T.bin,H((l=t.yAxis)==null?void 0:l.label),c!=null&&c.field&&!u?f:void 0,e,k),M=s!=null&&s.row.field?F(s.row,e):void 0,w=s!=null&&s.column.field?F(s.column,e):void 0,C=De(e,t),_=K(e,t,a,i,n,h),D={x:u?b:g,y:u?g:b,xOffset:Ve(e,t),color:C,tooltip:$({formValues:t,xEncoding:g,yEncoding:b,colorByEncoding:C}),...M&&{row:M},...w&&{column:w}},V=Se(s==null?void 0:s.column,s==null?void 0:s.row);return{..._,mark:{type:Q(e)},encoding:D,...V}}function je(e,t){return{...e,data:{values:t}}}function S(e,t,a,i,n,r){let o=e.selectedDataType||"string";return e.field==="__count__"?{aggregate:"count",type:"quantitative",bin:j(n,o,t),title:a==="__count__"?void 0:a,stack:i}:{field:v(e.field),type:B(e.selectedDataType||"unknown"),bin:j(n,o,t),title:a,stack:i,aggregate:W(e.aggregate,o,r),sort:e.sort,timeUnit:Je(e)}}function F(e,t){let a=j(t,e.selectedDataType||"string",{maxbins:e.maxbins,binned:e.binned},{maxbins:6});return{field:v(e.field),sort:e.sort,timeUnit:Pe(e),type:B(e.selectedDataType||"unknown"),bin:a}}function He(e,t,a,i){var f,h,s,g;let{yColumn:n,colorByColumn:r,title:o}=e.general??{};if(!m(r==null?void 0:r.field))return"Color by column is required";if(!m(n==null?void 0:n.field))return"Size by column is required";let c=S(n,(f=e.xAxis)==null?void 0:f.bin,H((h=e.xAxis)==null?void 0:h.label),void 0,y.PIE),u={field:v(r.field),type:B(r.selectedDataType||"unknown"),scale:G(e),title:H((s=e.yAxis)==null?void 0:s.label)};return{...K(y.PIE,e,t,a,i,o),mark:{type:Q(y.PIE),innerRadius:(g=e.style)==null?void 0:g.innerRadius},encoding:{theta:c,color:u,tooltip:$({formValues:e,xEncoding:c,yEncoding:c,colorByEncoding:u})}}}function K(e,t,a,i,n,r){var c,u,f;let o=((c=t.style)==null?void 0:c.gridLines)??!1;return e===y.SCATTER&&(o=!0),{$schema:"https://vega.github.io/schema/vega-lite/v6.json",background:a==="dark"?"dark":"white",title:r,data:{values:[]},height:((u=t.yAxis)==null?void 0:u.height)??n,width:((f=t.xAxis)==null?void 0:f.width)??i,config:{axis:{grid:o}}}}function m(e){return e!==void 0&&e.trim()!==""}function H(e){let t=e==null?void 0:e.trim();return t===""?void 0:t}function Je(e){if(e.selectedDataType==="temporal")return e.timeUnit??"yearmonthdate"}function Pe(e){if(e.selectedDataType==="temporal")return e.timeUnit??"yearmonthdate"}function Se(e,t){let a={};return(e==null?void 0:e.linkXAxis)===!1&&(a.x="independent"),(t==null?void 0:t.linkYAxis)===!1&&(a.y="independent"),Object.keys(a).length>0?{resolve:{axis:a}}:void 0}export{P as A,Y as C,ve as D,ge as E,xe as O,U as S,me as T,be as _,Ae as a,ke as b,Te as c,q as d,Me as f,L as g,N as h,_e as i,v as k,X as l,we as m,Be as n,Ce as o,O as p,m as r,Ee as s,je as t,y as u,he as v,ye as w,fe as x,pe as y};
1
+ import{i as I}from"./strings-wdPMRf6Z.js";import{t as p}from"./createLucideIcon-D5guW7EU.js";import{a as J}from"./useLifecycle-DieWOfXE.js";import{t as R}from"./chart-no-axes-column-nqk474t8.js";import{r as Z,t as ee}from"./table-6NxtGaCm.js";import{t as te}from"./square-function-D1dlJvD8.js";var ae=p("align-center-vertical",[["path",{d:"M12 2v20",key:"t6zp3m"}],["path",{d:"M8 10H4a2 2 0 0 1-2-2V6c0-1.1.9-2 2-2h4",key:"14d6g8"}],["path",{d:"M16 10h4a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-4",key:"1e2lrw"}],["path",{d:"M8 20H7a2 2 0 0 1-2-2v-2c0-1.1.9-2 2-2h1",key:"1fkdwx"}],["path",{d:"M16 14h1a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2h-1",key:"1euafb"}]]),ne=p("arrow-down-to-line",[["path",{d:"M12 17V3",key:"1cwfxf"}],["path",{d:"m6 11 6 6 6-6",key:"12ii2o"}],["path",{d:"M19 21H5",key:"150jfl"}]]),re=p("arrow-up-to-line",[["path",{d:"M5 3h14",key:"7usisc"}],["path",{d:"m18 13-6-6-6 6",key:"1kf1n9"}],["path",{d:"M12 7v14",key:"1akyts"}]]),ie=p("baseline",[["path",{d:"M4 20h16",key:"14thso"}],["path",{d:"m6 16 6-12 6 12",key:"1b4byz"}],["path",{d:"M8 12h8",key:"1wcyev"}]]),le=p("chart-area",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M7 11.207a.5.5 0 0 1 .146-.353l2-2a.5.5 0 0 1 .708 0l3.292 3.292a.5.5 0 0 0 .708 0l4.292-4.292a.5.5 0 0 1 .854.353V16a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1z",key:"q0gr47"}]]),P=p("chart-column",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]]),oe=p("chart-line",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"m19 9-5 5-4-4-3 3",key:"2osh9i"}]]),se=p("chart-no-axes-column-increasing",[["path",{d:"M5 21v-6",key:"1hz6c0"}],["path",{d:"M12 21V9",key:"uvy0l4"}],["path",{d:"M19 21V3",key:"11j9sm"}]]),ce=p("chart-scatter",[["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}],["circle",{cx:"18.5",cy:"5.5",r:".5",fill:"currentColor",key:"lysivs"}],["circle",{cx:"11.5",cy:"11.5",r:".5",fill:"currentColor",key:"byv1b8"}],["circle",{cx:"7.5",cy:"16.5",r:".5",fill:"currentColor",key:"nkw3mc"}],["circle",{cx:"17.5",cy:"14.5",r:".5",fill:"currentColor",key:"1gjh6j"}],["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}]]),ue=p("ruler-dimension-line",[["path",{d:"M10 15v-3",key:"1pjskw"}],["path",{d:"M14 15v-3",key:"1o1mqj"}],["path",{d:"M18 15v-3",key:"cws6he"}],["path",{d:"M2 8V4",key:"3jv1jz"}],["path",{d:"M22 6H2",key:"1iqbfk"}],["path",{d:"M22 8V4",key:"16f4ou"}],["path",{d:"M6 15v-3",key:"1ij1qe"}],["rect",{x:"2",y:"12",width:"20",height:"8",rx:"2",key:"1tqiko"}]]),de=p("sigma",[["path",{d:"M18 7V5a1 1 0 0 0-1-1H6.5a.5.5 0 0 0-.4.8l4.5 6a2 2 0 0 1 0 2.4l-4.5 6a.5.5 0 0 0 .4.8H17a1 1 0 0 0 1-1v-2",key:"wuwx1p"}]]);function v(e){return e&&e.replaceAll(".","\\.").replaceAll("[","\\[").replaceAll("]","\\]").replaceAll(":","\\:")}const fe="__count__",Y="default",me="yearmonthdate",ye=6,ge="",pe={line:oe,bar:se,pie:Z,scatter:ce,heatmap:ee,area:le},U="mean",he={none:te,count:J,sum:de,mean:ie,median:ae,min:ne,max:re,distinct:J,valid:J,stdev:R,stdevp:R,variance:P,variancep:P,bin:ue},be={none:"No aggregation",count:"Count of records",sum:"Sum of values",mean:"Mean of values",median:"Median of values",min:"Minimum value",max:"Maximum value",distinct:"Count of distinct records",valid:"Count non-null records",stdev:"Standard deviation",stdevp:"Standard deviation of population",variance:"Variance",variancep:"Variance of population",bin:"Group values into bins"},ke=[Y,"accent","category10","category20","category20b","category20c","dark2","paired","pastel1","pastel2","set1","set2","set3","tableau10","tableau20","blues","greens","greys","oranges","purples","reds","bluegreen","bluepurple","goldgreen","goldorange","goldred","greenblue","orangered","purplebluegreen","purplered","redpurple","yellowgreenblue","yelloworangered","blueorange","brownbluegreen","purplegreen","pinkyellowgreen","purpleorange","redblue","redgrey","redyellowblue","redyellowgreen","spectral","rainbow","sinebow"],ve={number:"Continuous numerical scale",string:"Discrete categorical scale (inputs treated as strings)",temporal:"Continuous temporal scale"},xe={year:["Year","2025"],quarter:["Quarter","Q1 2025"],month:["Month","Jan 2025"],week:["Week","Jan 01, 2025"],day:["Day","Jan 01, 2025"],hours:["Hour","Jan 01, 2025 12:00"],minutes:["Minute","Jan 01, 2025 12:34"],seconds:["Second","Jan 01, 2025 12:34:56"],milliseconds:["Millisecond","Jan 01, 2025 12:34:56.789"],date:["Date","Jan 01, 2025"],dayofyear:["Day of Year","Day 1 of 2025"],yearmonth:["Year Month","Jan 2025"],yearmonthdate:["Year Month Date","Jan 01, 2025"],monthdate:["Month Date","Jan 01"]},Me=["number","string","temporal"],O=["year","quarter","month","date","week","day","dayofyear","hours","minutes","seconds","milliseconds"],X=["yearmonth","yearmonthdate","monthdate"],L=[...O,...X];[...L];const we=["ascending","descending"],q="none",Ce="bin",Ae=[q,"bin","count","sum","mean","median","min","max","distinct","valid","stdev","stdevp","variance","variancep"],N=[q,"count","distinct","valid"],y={LINE:"line",BAR:"bar",PIE:"pie",SCATTER:"scatter",HEATMAP:"heatmap",AREA:"area"},Ee=Object.values(y),Te=["X","Y","Color",q];function B(e){switch(e){case"number":case"integer":return"quantitative";case"string":case"boolean":case"unknown":return"nominal";case"date":case"datetime":case"time":case"temporal":return"temporal";default:return I(e),"nominal"}}function _e(e){switch(e){case"number":case"integer":return"number";case"string":case"boolean":case"unknown":return"string";case"date":case"datetime":case"time":return"temporal";default:return I(e),"string"}}function Q(e){switch(e){case y.PIE:return"arc";case y.SCATTER:return"point";case y.HEATMAP:return"rect";default:return e}}function j(e,t,a,i){if(e===y.HEATMAP)return a!=null&&a.maxbins?{maxbins:a==null?void 0:a.maxbins}:void 0;if(t!=="number")return;if(!(a!=null&&a.binned))return i;let n={};return a.step!==void 0&&(n.step=a.step),a.maxbins!==void 0&&(n.maxbins=a.maxbins),Object.keys(n).length===0?!0:n}function G(e){var i,n;let t=(i=e.color)==null?void 0:i.range;if(t!=null&&t.length)return{range:t};let a=(n=e.color)==null?void 0:n.scheme;if(a&&a!=="default")return{scheme:a}}function De(e,t){var o,c,u,f,h,s,g,k,b;if(e===y.PIE)return;let a;if(m((c=(o=t.general)==null?void 0:o.colorByColumn)==null?void 0:c.field))a=(u=t.general)==null?void 0:u.colorByColumn;else if(m((f=t.color)==null?void 0:f.field))switch((h=t.color)==null?void 0:h.field){case"X":a=(s=t.general)==null?void 0:s.xColumn;break;case"Y":a=(g=t.general)==null?void 0:g.yColumn;break;case"Color":a=(k=t.general)==null?void 0:k.colorByColumn;break;default:return}else return;if(!a||!m(a.field)||a.field==="none")return;if(a.field==="__count__")return{aggregate:"count",type:"quantitative"};let i=(b=t.color)==null?void 0:b.bin,n=a.selectedDataType||"string",r=a==null?void 0:a.aggregate;return{field:v(a.field),type:B(n),scale:G(t),aggregate:W(r,n),bin:j(e,n,i)}}function Ve(e,t){var a,i,n,r,o;if(!((a=t.general)!=null&&a.stacking||!m((n=(i=t.general)==null?void 0:i.colorByColumn)==null?void 0:n.field)||e!==y.BAR))return{field:v((o=(r=t.general)==null?void 0:r.colorByColumn)==null?void 0:o.field)}}function W(e,t,a){if(t!=="temporal"&&!(e==="none"||e==="bin"))return e?t==="string"?N.includes(e)?e:void 0:e:a||void 0}function qe(e){switch(e){case"integer":return",.0f";case"number":return",.2f";default:return}}function $(e){var u,f,h,s,g,k,b,M,w,C,_,D,V,A,E,T;let{formValues:t,xEncoding:a,yEncoding:i,colorByEncoding:n}=e;if(!t.tooltips)return;function r(l,x,d){if("aggregate"in l&&l.aggregate==="count"&&!m(l.field))return{aggregate:"count"};if(l&&"field"in l&&m(l.field))return l.timeUnit&&!d&&(d=l.field),{field:l.field,aggregate:l.aggregate,timeUnit:l.timeUnit,format:qe(x),title:d,bin:l.bin}}if(t.tooltips.auto){let l=[],x=r(a,((f=(u=t.general)==null?void 0:u.xColumn)==null?void 0:f.type)||"string",(h=t.xAxis)==null?void 0:h.label);x&&l.push(x);let d=r(i,((g=(s=t.general)==null?void 0:s.yColumn)==null?void 0:g.type)||"string",(k=t.yAxis)==null?void 0:k.label);d&&l.push(d);let z=r(n||{},((M=(b=t.general)==null?void 0:b.colorByColumn)==null?void 0:M.type)||"string");return z&&l.push(z),l}let o=t.tooltips.fields??[],c=[];for(let l of o){if("field"in a&&m(a.field)&&a.field===l.field){let d=r(a,((C=(w=t.general)==null?void 0:w.xColumn)==null?void 0:C.type)||"string",(_=t.xAxis)==null?void 0:_.label);d&&c.push(d);continue}if("field"in i&&m(i.field)&&i.field===l.field){let d=r(i,((V=(D=t.general)==null?void 0:D.yColumn)==null?void 0:V.type)||"string",(A=t.yAxis)==null?void 0:A.label);d&&c.push(d);continue}if(n&&"field"in n&&m(n.field)&&n.field===l.field){let d=r(n,((T=(E=t.general)==null?void 0:E.colorByColumn)==null?void 0:T.type)||"string");d&&c.push(d);continue}let x={field:v(l.field)};c.push(x)}return c}function Be(e,t,a,i,n){var A,E,T,l;let{xColumn:r,yColumn:o,colorByColumn:c,horizontal:u,stacking:f,title:h,facet:s}=t.general??{};if(e===y.PIE)return He(t,a,i,n);if(!m(r==null?void 0:r.field))return"X-axis column is required";if(!m(o==null?void 0:o.field))return"Y-axis column is required";let g=S(r,(A=t.xAxis)==null?void 0:A.bin,H((E=t.xAxis)==null?void 0:E.label),c!=null&&c.field&&u?f:void 0,e),k=U;(o==null?void 0:o.selectedDataType)==="string"&&(k="count");let b=S(o,(T=t.yAxis)==null?void 0:T.bin,H((l=t.yAxis)==null?void 0:l.label),c!=null&&c.field&&!u?f:void 0,e,k),M=s!=null&&s.row.field?F(s.row,e):void 0,w=s!=null&&s.column.field?F(s.column,e):void 0,C=De(e,t),_=K(e,t,a,i,n,h),D={x:u?b:g,y:u?g:b,xOffset:Ve(e,t),color:C,tooltip:$({formValues:t,xEncoding:g,yEncoding:b,colorByEncoding:C}),...M&&{row:M},...w&&{column:w}},V=Se(s==null?void 0:s.column,s==null?void 0:s.row);return{..._,mark:{type:Q(e)},encoding:D,...V}}function je(e,t){return{...e,data:{values:t}}}function S(e,t,a,i,n,r){let o=e.selectedDataType||"string";return e.field==="__count__"?{aggregate:"count",type:"quantitative",bin:j(n,o,t),title:a==="__count__"?void 0:a,stack:i}:{field:v(e.field),type:B(e.selectedDataType||"unknown"),bin:j(n,o,t),title:a,stack:i,aggregate:W(e.aggregate,o,r),sort:e.sort,timeUnit:Je(e)}}function F(e,t){let a=j(t,e.selectedDataType||"string",{maxbins:e.maxbins,binned:e.binned},{maxbins:6});return{field:v(e.field),sort:e.sort,timeUnit:Pe(e),type:B(e.selectedDataType||"unknown"),bin:a}}function He(e,t,a,i){var f,h,s,g;let{yColumn:n,colorByColumn:r,title:o}=e.general??{};if(!m(r==null?void 0:r.field))return"Color by column is required";if(!m(n==null?void 0:n.field))return"Size by column is required";let c=S(n,(f=e.xAxis)==null?void 0:f.bin,H((h=e.xAxis)==null?void 0:h.label),void 0,y.PIE),u={field:v(r.field),type:B(r.selectedDataType||"unknown"),scale:G(e),title:H((s=e.yAxis)==null?void 0:s.label)};return{...K(y.PIE,e,t,a,i,o),mark:{type:Q(y.PIE),innerRadius:(g=e.style)==null?void 0:g.innerRadius},encoding:{theta:c,color:u,tooltip:$({formValues:e,xEncoding:c,yEncoding:c,colorByEncoding:u})}}}function K(e,t,a,i,n,r){var c,u,f;let o=((c=t.style)==null?void 0:c.gridLines)??!1;return e===y.SCATTER&&(o=!0),{$schema:"https://vega.github.io/schema/vega-lite/v6.json",background:a==="dark"?"dark":"white",title:r,data:{values:[]},height:((u=t.yAxis)==null?void 0:u.height)??n,width:((f=t.xAxis)==null?void 0:f.width)??i,config:{axis:{grid:o}}}}function m(e){return e!==void 0&&e.trim()!==""}function H(e){let t=e==null?void 0:e.trim();return t===""?void 0:t}function Je(e){if(e.selectedDataType==="temporal")return e.timeUnit??"yearmonthdate"}function Pe(e){if(e.selectedDataType==="temporal")return e.timeUnit??"yearmonthdate"}function Se(e,t){let a={};return(e==null?void 0:e.linkXAxis)===!1&&(a.x="independent"),(t==null?void 0:t.linkYAxis)===!1&&(a.y="independent"),Object.keys(a).length>0?{resolve:{axis:a}}:void 0}export{P as A,Y as C,ve as D,ge as E,xe as O,U as S,me as T,be as _,Ae as a,ke as b,Te as c,q as d,Me as f,L as g,N as h,_e as i,v as k,X as l,we as m,Be as n,Ce as o,O as p,m as r,Ee as s,je as t,y as u,he as v,ye as w,fe as x,pe as y};
@@ -1 +1 @@
1
- import{p as E,u as b}from"./useEvent-D91BmmQi.js";import{t as k}from"./compiler-runtime-B3qBwwSJ.js";import{t as q}from"./createReducer-1ePoj7v6.js";import{t as y}from"./requests-DIwGYs0l.js";import{t as A}from"./createLucideIcon-D5guW7EU.js";import{t as g}from"./DeferredRequestRegistry-CUzZ0y7K.js";import{n as $}from"./useAsyncData-BFC6lWG9.js";var I=A("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);const v=new g("storage-list-entries",async(r,t)=>{await y().listStorageEntries({requestId:r,...t})}),N=new g("storage-download",async(r,t)=>{await y().downloadStorage({requestId:r,...t})});function w(r,t){return`${r}::${t??""}`}function _(r){return`${r}::`}var z=k();function C(){return{namespaces:[],entriesByPath:new Map}}var{reducer:O,createActions:Q,valueAtom:P,useActions:F}=q(C,{setNamespaces:(r,t)=>{let e=new Map(r.namespaces.map(a=>[a.name,a]));for(let a of t.namespaces)e.set(a.name,a);return{...r,namespaces:[...e.values()]}},setEntries:(r,t)=>{let e=w(t.namespace,t.prefix),a=new Map(r.entriesByPath);return a.set(e,t.entries),{...r,entriesByPath:a}},clearNamespaceCache:(r,t)=>{let e=new Map(r.entriesByPath),a=_(t);for(let n of e.keys())n.startsWith(a)&&e.delete(n);return{...r,entriesByPath:e}},filterFromVariables:(r,t)=>{let e=new Set(t),a=r.namespaces.filter(n=>e.has(n.name));return{...r,namespaces:a}}});const x=()=>b(P),H=E(r=>r(P).namespaces);function B(){return F()}function V(r,t){let e=(0,z.c)(20),{entriesByPath:a}=x(),{setEntries:n}=B(),o;e[0]!==a||e[1]!==r||e[2]!==t?(o=a.get(w(r,t)),e[0]=a,e[1]=r,e[2]=t,e[3]=o):o=e[3];let s=o,m;e[4]!==s||e[5]!==r||e[6]!==t||e[7]!==n?(m=async()=>{if(s)return;let d=await v.request({namespace:r,prefix:t??"",limit:150});if(d.error)throw Error(d.error);n({namespace:r,prefix:t,entries:d.entries})},e[4]=s,e[5]=r,e[6]=t,e[7]=n,e[8]=m):m=e[8];let f=s===void 0,c;e[9]!==r||e[10]!==t||e[11]!==f?(c=[r,t,f],e[9]=r,e[10]=t,e[11]=f,e[12]=c):c=e[12];let{isPending:M,error:S,refetch:l}=$(m,c),i;e[13]===s?i=e[14]:(i=s??[],e[13]=s,e[14]=i);let u=M&&!s,h=s?void 0:S,p;return e[15]!==l||e[16]!==i||e[17]!==u||e[18]!==h?(p={entries:i,isPending:u,error:h,refetch:l},e[15]=l,e[16]=i,e[17]=u,e[18]=h,e[19]=p):p=e[19],p}export{w as a,I as c,V as i,x as n,N as o,B as r,v as s,H as t};
1
+ import{p as E,u as b}from"./useEvent-D91BmmQi.js";import{t as k}from"./compiler-runtime-B3qBwwSJ.js";import{t as q}from"./createReducer-CI9qeK_X.js";import{t as y}from"./requests-DIwGYs0l.js";import{t as A}from"./createLucideIcon-D5guW7EU.js";import{t as g}from"./DeferredRequestRegistry-CUzZ0y7K.js";import{n as $}from"./useAsyncData-BFC6lWG9.js";var I=A("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);const v=new g("storage-list-entries",async(r,t)=>{await y().listStorageEntries({requestId:r,...t})}),N=new g("storage-download",async(r,t)=>{await y().downloadStorage({requestId:r,...t})});function w(r,t){return`${r}::${t??""}`}function _(r){return`${r}::`}var z=k();function C(){return{namespaces:[],entriesByPath:new Map}}var{reducer:O,createActions:Q,valueAtom:P,useActions:F}=q(C,{setNamespaces:(r,t)=>{let e=new Map(r.namespaces.map(a=>[a.name,a]));for(let a of t.namespaces)e.set(a.name,a);return{...r,namespaces:[...e.values()]}},setEntries:(r,t)=>{let e=w(t.namespace,t.prefix),a=new Map(r.entriesByPath);return a.set(e,t.entries),{...r,entriesByPath:a}},clearNamespaceCache:(r,t)=>{let e=new Map(r.entriesByPath),a=_(t);for(let n of e.keys())n.startsWith(a)&&e.delete(n);return{...r,entriesByPath:e}},filterFromVariables:(r,t)=>{let e=new Set(t),a=r.namespaces.filter(n=>e.has(n.name));return{...r,namespaces:a}}});const x=()=>b(P),H=E(r=>r(P).namespaces);function B(){return F()}function V(r,t){let e=(0,z.c)(20),{entriesByPath:a}=x(),{setEntries:n}=B(),o;e[0]!==a||e[1]!==r||e[2]!==t?(o=a.get(w(r,t)),e[0]=a,e[1]=r,e[2]=t,e[3]=o):o=e[3];let s=o,m;e[4]!==s||e[5]!==r||e[6]!==t||e[7]!==n?(m=async()=>{if(s)return;let d=await v.request({namespace:r,prefix:t??"",limit:150});if(d.error)throw Error(d.error);n({namespace:r,prefix:t,entries:d.entries})},e[4]=s,e[5]=r,e[6]=t,e[7]=n,e[8]=m):m=e[8];let f=s===void 0,c;e[9]!==r||e[10]!==t||e[11]!==f?(c=[r,t,f],e[9]=r,e[10]=t,e[11]=f,e[12]=c):c=e[12];let{isPending:M,error:S,refetch:l}=$(m,c),i;e[13]===s?i=e[14]:(i=s??[],e[13]=s,e[14]=i);let u=M&&!s,h=s?void 0:S,p;return e[15]!==l||e[16]!==i||e[17]!==u||e[18]!==h?(p={entries:i,isPending:u,error:h,refetch:l},e[15]=l,e[16]=i,e[17]=u,e[18]=h,e[19]=p):p=e[19],p}export{w as a,I as c,V as i,x as n,N as o,B as r,v as s,H as t};
@@ -1 +1 @@
1
- import{u as o}from"./useEvent-D91BmmQi.js";import{t}from"./createReducer-1ePoj7v6.js";import{t as a}from"./uuid-DercMavo.js";function d(){return{pendingCommands:[],isReady:!1}}var{reducer:f,createActions:g,valueAtom:r,useActions:i}=t(d,{addCommand:(n,m)=>{let e={id:a(),text:m,timestamp:Date.now()};return{...n,pendingCommands:[...n.pendingCommands,e]}},removeCommand:(n,m)=>({...n,pendingCommands:n.pendingCommands.filter(e=>e.id!==m)}),setReady:(n,m)=>({...n,isReady:m}),clearCommands:n=>({...n,pendingCommands:[]})});const s=()=>o(r);function p(){return i()}export{s as n,p as t};
1
+ import{u as o}from"./useEvent-D91BmmQi.js";import{t}from"./createReducer-CI9qeK_X.js";import{t as a}from"./uuid-DercMavo.js";function d(){return{pendingCommands:[],isReady:!1}}var{reducer:f,createActions:g,valueAtom:r,useActions:i}=t(d,{addCommand:(n,m)=>{let e={id:a(),text:m,timestamp:Date.now()};return{...n,pendingCommands:[...n.pendingCommands,e]}},removeCommand:(n,m)=>({...n,pendingCommands:n.pendingCommands.filter(e=>e.id!==m)}),setReady:(n,m)=>({...n,isReady:m}),clearCommands:n=>({...n,pendingCommands:[]})});const s=()=>o(r);function p(){return i()}export{s as n,p as t};
@@ -1,3 +1,3 @@
1
- var Vt=Object.defineProperty;var $e=f=>{throw TypeError(f)};var Qt=(f,h,y)=>h in f?Vt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:y}):f[h]=y;var n=(f,h,y)=>Qt(f,typeof h!="symbol"?h+"":h,y),ce=(f,h,y)=>h.has(f)||$e("Cannot "+y);var o=(f,h,y)=>(ce(f,h,"read from private field"),y?y.call(f):h.get(f)),_=(f,h,y)=>h.has(f)?$e("Cannot add the same private member more than once"):h instanceof WeakSet?h.add(f):h.set(f,y),C=(f,h,y,Q)=>(ce(f,h,"write to private field"),Q?Q.call(f,y):h.set(f,y),y),A=(f,h,y)=>(ce(f,h,"access private method"),y);import{i as U,p as ne,u as Kt}from"./useEvent-D91BmmQi.js";import{Di as Y,Ei as Yt,Mn as Gt,b as Zt,gi as Jt,it as ze,pi as Xt,vi as er,x as tr,xi as rr,__tla as sr}from"./cells-BBDzmUIS.js";import{t as nr}from"./get-C-qh_et5.js";import{t as ar}from"./debounce-DhnxH9Rh.js";import{t as ir}from"./_baseSet-CxV9N1bc.js";import{_ as p,y as g}from"./useEventListener-BR0C1MaI.js";import{t as or}from"./invariant-BUdrueMv.js";import{S as lr}from"./utils-BrXijSdZ.js";import{T as ur,c as pe,l as Ve,n as dr}from"./config-CPqw1wUv.js";import{n as cr}from"./switch-BvybnC9P.js";import{n as pr}from"./globals-DUw71mRV.js";import{t as fr}from"./createReducer-1ePoj7v6.js";import{r as hr}from"./strings-md4mFbOQ.js";import{t as fe}from"./requests-DIwGYs0l.js";import{a as Qe,l as mr,r as Ke,__tla as gr}from"./markdown-renderer-CVd_mMPt.js";import{t as yr}from"./DeferredRequestRegistry-CUzZ0y7K.js";import{t as wr}from"./preload-helper-DItdS47A.js";import{t as Ye}from"./Deferred-DMWKlZOV.js";import{t as Ge}from"./uuid-DercMavo.js";import{t as br}from"./use-toast-T0_cQDma.js";import{n as vr}from"./RenderHTML-CruxVneu.js";import{t as _r}from"./useRunCells-RJeImyCn.js";import{n as Cr,t as Rr}from"./blob-Daju1h1M.js";import{n as xr,r as qr,t as Er}from"./share-CqnSBwZy.js";import{i as Ze,r as Sr,t as Mr}from"./events-BRAWQiYK.js";let Je,Xe,et,he,me,tt,ge,rt,V,st,nt,ye,we,at,it,ot,lt,ae,ut,dt,ie,G,ct,be,kr=Promise.all([(()=>{try{return sr}catch{}})(),(()=>{try{return gr}catch{}})()]).then(async()=>{var W,ee,ft,Ae,k,T,S,Ue,P,We,F,K,B,oe,Te,je,te,I,L,H,R,j,N,ht,mt,gt,re;function f(t,e,r){return t==null?t:ir(t,e,r)}G=f,ct=ne(null);var{valueAtom:h,useActions:y}=fr(()=>({banners:[]}),{addBanner:(t,e)=>({...t,banners:[...t.banners,{...e,id:Ge()}]}),removeBanner:(t,e)=>({...t,banners:t.banners.filter(r=>r.id!==e)}),clearBanners:t=>({...t,banners:[]})});Xe=()=>Kt(h),Je=function(){return y()};let Q,_e,Ce;Q=class{constructor(){n(this,"subscriptions",new Map)}addSubscription(t,e){var r;this.subscriptions.has(t)||this.subscriptions.set(t,new Set),(r=this.subscriptions.get(t))==null||r.add(e)}removeSubscription(t,e){var r;(r=this.subscriptions.get(t))==null||r.delete(e)}notify(t,e){for(let r of this.subscriptions.get(t)??[])r(e)}},me=class ve{constructor(e){n(this,"subscriptions",new Q);n(this,"retryCount",0);this.producer=e}static withProducerCallback(e){return new ve(e)}static empty(){return new ve}startProducer(){this.producer&&this.producer(e=>{this.subscriptions.notify("message",e)})}connect(){return new Promise(e=>setTimeout(e,0)).then(()=>{this.subscriptions.notify("open",new Event("open"))})}get readyState(){return WebSocket.OPEN}reconnect(e,r){this.close(),this.connect()}close(){this.subscriptions.notify("close",new Event("close"))}send(e){return this.subscriptions.notify("message",new MessageEvent("message",{data:e})),Promise.resolve()}addEventListener(e,r){this.subscriptions.addSubscription(e,r),e==="open"&&r(new Event("open")),e==="message"&&this.startProducer()}removeEventListener(e,r){this.subscriptions.removeSubscription(e,r)}},_e=1e10,Ce=1e3;function Z(t,e){let r=t.map(s=>`"${s}"`).join(", ");return Error(`This RPC instance cannot ${e} because the transport did not provide one or more of these methods: ${r}`)}function wt(t={}){let e={};function r(l){e=l}let s={};function a(l){var c;s.unregisterHandler&&s.unregisterHandler(),s=l,(c=s.registerHandler)==null||c.call(s,zt)}let i;function u(l){if(typeof l=="function"){i=l;return}i=(c,w)=>{let m=l[c];if(m)return m(w);let b=l._;if(!b)throw Error(`The requested method has no handler: ${c}`);return b(c,w)}}let{maxRequestTime:d=Ce}=t;t.transport&&a(t.transport),t.requestHandler&&u(t.requestHandler),t._debugHooks&&r(t._debugHooks);let v=0;function x(){return v<=_e?++v:v=0}let q=new Map,E=new Map;function $(l,...c){let w=c[0];return new Promise((m,b)=>{var z;if(!s.send)throw Z(["send"],"make requests");let M=x(),O={type:"request",id:M,method:l,params:w};q.set(M,{resolve:m,reject:b}),d!==1/0&&E.set(M,setTimeout(()=>{E.delete(M),b(Error("RPC request timed out."))},d)),(z=e.onSend)==null||z.call(e,O),s.send(O)})}let se=new Proxy($,{get:(l,c,w)=>c in l?Reflect.get(l,c,w):m=>$(c,m)}),De=se;function Oe(l,...c){var b;let w=c[0];if(!s.send)throw Z(["send"],"send messages");let m={type:"message",id:l,payload:w};(b=e.onSend)==null||b.call(e,m),s.send(m)}let Be=new Proxy(Oe,{get:(l,c,w)=>c in l?Reflect.get(l,c,w):m=>Oe(c,m)}),He=Be,D=new Map,de=new Set;function Ht(l,c){var w;if(!s.registerHandler)throw Z(["registerHandler"],"register message listeners");if(l==="*"){de.add(c);return}D.has(l)||D.set(l,new Set),(w=D.get(l))==null||w.add(c)}function $t(l,c){var w,m;if(l==="*"){de.delete(c);return}(w=D.get(l))==null||w.delete(c),((m=D.get(l))==null?void 0:m.size)===0&&D.delete(l)}async function zt(l){var c,w;if((c=e.onReceive)==null||c.call(e,l),!("type"in l))throw Error("Message does not contain a type.");if(l.type==="request"){if(!s.send||!i)throw Z(["send","requestHandler"],"handle requests");let{id:m,method:b,params:M}=l,O;try{O={type:"response",id:m,success:!0,payload:await i(b,M)}}catch(z){if(!(z instanceof Error))throw z;O={type:"response",id:m,success:!1,error:z.message}}(w=e.onSend)==null||w.call(e,O),s.send(O);return}if(l.type==="response"){let m=E.get(l.id);m!=null&&clearTimeout(m);let{resolve:b,reject:M}=q.get(l.id)??{};l.success?b==null||b(l.payload):M==null||M(Error(l.error));return}if(l.type==="message"){for(let b of de)b(l.id,l.payload);let m=D.get(l.id);if(!m)return;for(let b of m)b(l.payload);return}throw Error(`Unexpected RPC message type: ${l.type}`)}return{setTransport:a,setRequestHandler:u,request:se,requestProxy:De,send:Be,sendProxy:He,addMessageListener:Ht,removeMessageListener:$t,proxy:{send:He,request:De},_setDebugHooks:r}}function bt(t){return wt(t)}var Re="[transport-id]";function vt(t,e){let{transportId:r}=e;return r==null?t:{[Re]:r,data:t}}function _t(t,e){let{transportId:r,filter:s}=e,a=s==null?void 0:s();if(r!=null&&a!=null)throw Error("Cannot use both `transportId` and `filter` at the same time");let i=t;if(r){if(t[Re]!==r)return[!0];i=t.data}return a===!1?[!0]:[!1,i]}function Ct(t,e={}){let{transportId:r,filter:s,remotePort:a}=e,i=t,u=a??t,d;return{send(v){u.postMessage(vt(v,{transportId:r}))},registerHandler(v){d=x=>{let q=x.data,[E,$]=_t(q,{transportId:r,filter:()=>s==null?void 0:s(x)});E||v($)},i.addEventListener("message",d)},unregisterHandler(){d&&i.removeEventListener("message",d)}}}function Rt(t,e){return Ct(t,e)}function xe(t){return bt({transport:Rt(t,{transportId:"marimo-transport"}),maxRequestTime:2e4,_debugHooks:{onSend:e=>{p.debug("[rpc] Parent -> Worker",e)},onReceive:e=>{p.debug("[rpc] Worker -> Parent",e)}}})}be=ne("Initializing..."),ie=ne("loading"),et=ne(t=>{let e=t(Zt),r=Object.values(e.cellRuntime);return r.some(s=>!mr(s.output))?!0:r.every(s=>s.status==="idle")});var qe=xr(),Ee="marimo:file",Se=new Xt(null);const xt={saveFile(t){Se.set(Ee,t)},readFile(){return Se.get(Ee)}};var qt={saveFile(t){Y.setCodeForHash((0,qe.compressToEncodedURIComponent)(t))},readFile(){let t=Y.getCodeFromHash()||Y.getCodeFromSearchParam();return t?(0,qe.decompressFromEncodedURIComponent)(t):null}};const Et={saveFile(t){},readFile(){let t=document.querySelector("marimo-code");return t?decodeURIComponent(t.textContent||"").trim():null}};var St={saveFile(t){},readFile(){if(window.location.hostname!=="marimo.app")return null;let t=new URL("files/wasm-intro.py",document.baseURI);return fetch(t.toString()).then(e=>e.ok?e.text():null).catch(()=>null)}};const Mt={saveFile(t){},readFile(){return U.get(Jt)??null}};var kt={saveFile(t){},readFile(){return["import marimo","app = marimo.App()","","@app.cell","def __():"," return","",'if __name__ == "__main__":'," app.run()"].join(`
2
- `)}},Me=class{constructor(t){this.stores=t}insert(t,e){this.stores.splice(t,0,e)}saveFile(t){this.stores.forEach(e=>e.saveFile(t))}readFile(){for(let t of this.stores){let e=t.readFile();if(e)return e}return null}};let J;V=new Me([Mt,Et,qt]),J=new Me([xt,St,kt]),we=class pt{constructor(){n(this,"initialized",new Ye);n(this,"sendRename",async({filename:e})=>(e===null||(Y.setFilename(e),await this.rpc.proxy.request.bridge({functionName:"rename_file",payload:e})),null));n(this,"sendSave",async e=>{if(!this.saveRpc)return p.warn("Save RPC not initialized"),null;await this.saveRpc.saveNotebook(e);let r=await this.readCode();return r.contents&&(V.saveFile(r.contents),J.saveFile(r.contents)),this.rpc.proxy.request.saveNotebook(e).catch(s=>{p.error(s)}),null});n(this,"sendCopy",async()=>{g()});n(this,"sendStdin",async e=>(await this.rpc.proxy.request.bridge({functionName:"put_input",payload:e.text}),null));n(this,"sendPdb",async()=>{g()});n(this,"sendRun",async e=>(await this.rpc.proxy.request.loadPackages(e.codes.join(`
3
- `)),await this.putControlRequest({type:"execute-cells",...e}),null));n(this,"sendRunScratchpad",async e=>(await this.rpc.proxy.request.loadPackages(e.code),await this.putControlRequest({type:"execute-scratchpad",...e}),null));n(this,"sendInterrupt",async()=>(this.interruptBuffer!==void 0&&(this.interruptBuffer[0]=2),null));n(this,"sendShutdown",async()=>(window.close(),null));n(this,"sendFormat",async e=>await this.rpc.proxy.request.bridge({functionName:"format",payload:e}));n(this,"sendDeleteCell",async e=>(await this.putControlRequest({type:"delete-cell",...e}),null));n(this,"sendInstallMissingPackages",async e=>(this.putControlRequest({type:"install-packages",...e}),null));n(this,"sendCodeCompletionRequest",async e=>(U.get(tr)||await this.rpc.proxy.request.bridge({functionName:"code_complete",payload:e}),null));n(this,"saveUserConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_user_config",payload:e}),cr.post("/kernel/save_user_config",e,{baseUrl:"/"}).catch(r=>(p.error(r),null))));n(this,"saveAppConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_app_config",payload:e}),null));n(this,"saveCellConfig",async e=>(await this.putControlRequest({type:"update-cell-config",...e}),null));n(this,"sendRestart",async()=>{let e=await this.readCode();return e.contents&&(V.saveFile(e.contents),J.saveFile(e.contents)),qr(),null});n(this,"readCode",async()=>this.saveRpc?{contents:await this.saveRpc.readNotebook()}:(p.warn("Save RPC not initialized"),{contents:""}));n(this,"readSnippets",async()=>await this.rpc.proxy.request.bridge({functionName:"read_snippets",payload:void 0}));n(this,"openFile",async({path:e})=>{let r=Er({code:null,baseUrl:window.location.origin});return window.open(r,"_blank"),null});n(this,"sendListFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"list_files",payload:e}));n(this,"sendSearchFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"search_files",payload:e}));n(this,"sendComponentValues",async e=>(await this.putControlRequest({type:"update-ui-element",...e,token:Ge()}),null));n(this,"sendInstantiate",async e=>null);n(this,"sendFunctionRequest",async e=>(await this.putControlRequest({type:"invoke-function",...e}),null));n(this,"sendCreateFileOrFolder",async e=>{let r=null;return e.file&&(r=(await Cr(e.file)).split(",")[1]??""),await this.rpc.proxy.request.bridge({functionName:"create_file_or_directory",payload:{path:e.path,type:e.type,name:e.name,contents:r}})});n(this,"sendDeleteFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"delete_file_or_directory",payload:e}));n(this,"sendCopyFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"copy_file_or_directory",payload:e}));n(this,"sendRenameFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"move_file_or_directory",payload:e}));n(this,"sendUpdateFile",async e=>await this.rpc.proxy.request.bridge({functionName:"update_file",payload:e}));n(this,"sendFileDetails",async e=>await this.rpc.proxy.request.bridge({functionName:"file_details",payload:e}));n(this,"exportAsHTML",async e=>await this.rpc.proxy.request.bridge({functionName:"export_html",payload:e}));n(this,"exportAsMarkdown",async e=>await this.rpc.proxy.request.bridge({functionName:"export_markdown",payload:e}));n(this,"previewDatasetColumn",async e=>(await this.putControlRequest({type:"preview-dataset-column",...e}),null));n(this,"previewSQLTable",async e=>(await this.putControlRequest({type:"preview-sql-table",...e}),null));n(this,"previewSQLTableList",async e=>(await this.putControlRequest({type:"list-sql-tables",...e}),null));n(this,"previewSQLSchemaList",async e=>(await this.putControlRequest({type:"list-sql-schemas",...e}),null));n(this,"previewDataSourceConnection",async e=>(await this.putControlRequest({type:"list-data-source-connection",...e}),null));n(this,"validateSQL",async e=>(await this.putControlRequest({type:"validate-sql",...e}),null));n(this,"sendModelValue",async e=>(await this.putControlRequest({type:"model",...e}),null));n(this,"sendDocumentTransaction",()=>Promise.resolve(null));n(this,"addPackage",async e=>this.rpc.proxy.request.addPackage(e));n(this,"removePackage",async e=>this.rpc.proxy.request.removePackage(e));n(this,"getPackageList",async()=>await this.rpc.proxy.request.listPackages());n(this,"getDependencyTree",async()=>({tree:{dependencies:[],name:"",tags:[],version:null}}));n(this,"listSecretKeys",async e=>(await this.putControlRequest({type:"list-secret-keys",...e}),null));n(this,"getUsageStats",g);n(this,"openTutorial",g);n(this,"getRecentFiles",g);n(this,"getWorkspaceFiles",g);n(this,"getRunningNotebooks",g);n(this,"shutdownSession",g);n(this,"exportAsIPYNB",g);n(this,"exportAsPDF",g);n(this,"autoExportAsHTML",g);n(this,"autoExportAsMarkdown",g);n(this,"autoExportAsIPYNB",g);n(this,"updateCellOutputs",g);n(this,"writeSecret",g);n(this,"invokeAiTool",g);n(this,"clearCache",g);n(this,"getCacheInfo",g);n(this,"listStorageEntries",g);n(this,"downloadStorage",g);ur()&&(this.rpc=xe(new Worker(new URL(""+new URL("worker-B38WhSlZ.js",import.meta.url).href,""+import.meta.url),{type:"module",name:ke()})),this.rpc.addMessageListener("ready",()=>{this.startSession()}),this.rpc.addMessageListener("initialized",()=>{this.saveRpc=this.getSaveWorker(),this.setInterruptBuffer(),U.set(ie,"ready"),this.initialized.resolve()}),this.rpc.addMessageListener("initializingMessage",({message:e})=>{U.set(be,e)}),this.rpc.addMessageListener("initializedError",({error:e})=>{if(this.initialized.status==="resolved"){p.error(e),br({title:"Error initializing",description:e,variant:"danger"});return}U.set(ie,"error"),this.initialized.reject(Error(e))}),this.rpc.addMessageListener("kernelMessage",({message:e})=>{var r;(r=this.messageConsumer)==null||r.call(this,new MessageEvent("message",{data:e}))}))}static get INSTANCE(){let e="_marimo_private_PyodideBridge";return window[e]||(window[e]=new pt),window[e]}getSaveWorker(){return ze()==="read"?(p.debug("Using partially disabled SaveWorker in read-mode"),{readFile:g,readNotebook:async()=>await V.readFile()??"",saveNotebook:g}):xe(new Worker(new URL(""+new URL("save-worker-D2iQi-UK.js",import.meta.url).href,""+import.meta.url),{type:"module",name:ke()})).proxy.request}async startSession(){let e=await V.readFile(),r=await J.readFile(),s=U.get(er)??Y.getFilename(),a=U.get(lr),i={},u=new URLSearchParams(window.location.search);for(let d of u.keys()){let v=u.getAll(d);i[d]=v.length===1?v[0]:v}await this.rpc.proxy.request.startSession({queryParameters:i,code:e||r||"",filename:s,userConfig:{...a,runtime:{...a.runtime,auto_instantiate:ze()==="read"?!0:a.runtime.auto_instantiate}}})}setInterruptBuffer(){crossOriginIsolated?(this.interruptBuffer=new Uint8Array(new SharedArrayBuffer(1)),this.rpc.proxy.request.setInterruptBuffer(this.interruptBuffer)):p.warn("Not running in a secure context; interrupts are not available.")}attachMessageConsumer(e){this.messageConsumer=e,this.rpc.proxy.send.consumerReady({})}async putControlRequest(e){await this.rpc.proxy.request.bridge({functionName:"put_control_request",payload:e})}},st=function(){return me.withProducerCallback(t=>{we.INSTANCE.attachMessageConsumer(t)})};function ke(){let t=typeof window<"u"&&window.__MARIMO_HAS_WASM_CONTROLLER__===!0;return pr()+(t?"::controller":"")}rt=function(t=pe()){let e=window.fetch;return window.fetch=async(r,s)=>{let a=r instanceof Request?r.url:r.toString();if(a.startsWith("data:"))return e(r,s);try{let i=X(a,t);if(i){let u=await(await e(i)).arrayBuffer();return new Response(u,{headers:{"Content-Type":Ft(a)}})}return e(r,s)}catch(i){return p.error("Error parsing URL",i),e(r,s)}},()=>{window.fetch=e}};function Ft(t){return t.endsWith(".csv")?"text/csv":t.endsWith(".json")?"application/json":t.endsWith(".txt")?"text/plain":"application/octet-stream"}ot=function(t,e=pe()){let r=t.http.bind(t),s=t.load.bind(t);return t.http=async a=>{let i=X(a,e);if(i)return await window.fetch(i).then(u=>u.text());try{return await r(a)}catch(u){if(a.startsWith("data:"))return await window.fetch(a).then(d=>d.text());throw u}},t.load=async a=>{let i=X(a,e);if(i)return await window.fetch(i).then(u=>u.text());try{return await s(a)}catch(u){if(a.startsWith("data:"))return await window.fetch(a).then(d=>d.text());throw u}},()=>{t.http=r,t.load=s}};function Fe(t){return t.startsWith(".")?t.slice(1):t}function Pt(t,e=pe()){let r=X(t,e);if(!r)return t;let s=Rr(r);return URL.createObjectURL(s)}function X(t,e){let r=document.baseURI;r.startsWith("blob:")&&(r=r.replace("blob:",""));let s=new URL(t,r).pathname,a=Pe(t),i=Pe(s);return e[t]||e[Fe(t)]||e[s]||e[Fe(s)]||a&&e[a]||i&&e[i]}function Pe(t){let e=t.indexOf("/@file/");return e===-1?null:t.slice(e)}function le(t,e=[]){let r=[];if(t instanceof DataView)r.push(e);else if(Array.isArray(t))for(let[s,a]of t.entries())r.push(...le(a,[...e,s]));else if(typeof t=="object"&&t)for(let[s,a]of Object.entries(t))r.push(...le(a,[...e,s]));return r}function It(t){let e=le(t);if(e.length===0)return{state:t,buffers:[],bufferPaths:[]};let r=structuredClone(t),s=[],a=[];for(let i of e){let u=nr(t,i);if(u instanceof DataView){let d=Qe(u);s.push(d),a.push(i),G(r,i,d)}}return{state:r,buffers:s,bufferPaths:a}}function Ie(t){let{state:e,bufferPaths:r,buffers:s}=t;if(!r||r.length===0)return e;s&&or(s.length===r.length,"Buffers and buffer paths not the same length");let a=e;for(let[i,u]of r.entries()){let d=s==null?void 0:s[i];if(d==null){p.warn("[anywidget] Could not find buffer at path",u);continue}typeof d=="string"?G(a,u,Ke(d)):G(a,u,d)}return a}ge=function(t){return typeof t!="string"||t.length===0?!1:!!(/^(\.?\/)?@file\/[^?#]+$/.test(t)||Nt(t))};function Lt(){return U.get(_r)||vr()}function Nt(t){return t.startsWith("data:text/javascript;base64,")||t.startsWith("data:application/javascript;base64,")||t.startsWith("data:text/css;base64,")?Lt():!1}const Le={invoke:async()=>{let t="anywidget.invoke not supported in marimo. Please file an issue at https://github.com/marimo-team/marimo/issues";throw p.warn(t),Error(t)}};function At(t){if(typeof AbortSignal.any=="function")return AbortSignal.any(t);let e=new AbortController;for(let r of t){if(r.aborted)return e.abort(r.reason),e.signal;r.addEventListener("abort",()=>e.abort(r.reason),{once:!0})}return e.signal}var Ut=(Ae=class{constructor(){_(this,ee);_(this,W,new Map)}getModule(t,e){let r=o(this,W).get(e);if(r)return r;let s=A(this,ee,ft).call(this,t).catch(a=>{throw o(this,W).delete(e),a});return o(this,W).set(e,s),s}invalidate(t){p.debug(`[WidgetDefRegistry] Invalidating module cache for hash=${t}`),o(this,W).delete(t)}},W=new WeakMap,ee=new WeakSet,ft=async function(t){if(!ge(t))throw Error(`Refusing to load anywidget module from untrusted URL: ${String(t)}`);let e=dr(t).toString();return Ve()&&(e=Pt(e)),wr(()=>import(e).then(async r=>(await r.__tla,r)),[],import.meta.url)},Ae),Wt=(Ue=class{constructor(){_(this,k);_(this,T);_(this,S)}async bind(t,e){var i,u;if(o(this,S)&&o(this,T)===t)return o(this,S);o(this,S)&&o(this,T)!==t&&(p.debug("[WidgetBinding] Hot-reload detected, aborting previous binding"),(i=o(this,k))==null||i.abort(),C(this,k,void 0),C(this,S,void 0)),C(this,T,t),C(this,k,new AbortController);let r=o(this,k).signal,s=typeof t=="function"?await t():t,a=await((u=s.initialize)==null?void 0:u.call(s,{model:e,experimental:Le}));return a&&r.addEventListener("abort",a),C(this,S,async(d,v)=>{var q;let x=await((q=s.render)==null?void 0:q.call(s,{model:e,el:d,experimental:Le}));x&&At([v,r]).addEventListener("abort",()=>{let E=v.aborted?"view unmount":"binding destroyed";p.debug(`[WidgetBinding] Render cleanup triggered (reason: ${E})`),x()})}),o(this,S)}destroy(){var t;p.debug("[WidgetBinding] Destroying binding, aborting initialize lifecycle"),(t=o(this,k))==null||t.abort(),C(this,k,void 0),C(this,T,void 0),C(this,S,void 0)}},k=new WeakMap,T=new WeakMap,S=new WeakMap,Ue),Tt=(We=class{constructor(){_(this,P,new Map)}getOrCreate(t){let e=o(this,P).get(t);return e||(e=new Wt,o(this,P).set(t,e)),e}destroy(t){let e=o(this,P).get(t);e&&(p.debug(`[BindingManager] Destroying binding for model=${t}`),e.destroy(),o(this,P).delete(t))}has(t){return o(this,P).has(t)}},P=new WeakMap,We);dt=new Ut,ye=new Tt;var jt=(Te=class{constructor(t=1e4){_(this,B);_(this,F,new Map);_(this,K);C(this,K,t)}get(t){let e=A(this,B,oe).call(this,t);return e.deferred.status==="pending"&&setTimeout(()=>{e.deferred.status==="pending"&&(e.deferred.reject(Error(`Model not found for key: ${t}`)),o(this,F).delete(t))},o(this,K)),e.deferred.promise}create(t,e){let r=A(this,B,oe).call(this,t);r.deferred.resolve(e(r.controller.signal))}set(t,e){A(this,B,oe).call(this,t).deferred.resolve(e)}getSync(t){let e=o(this,F).get(t);if(e&&e.deferred.status==="resolved")return e.deferred.value}delete(t){var e;p.debug(`[ModelManager] Deleting model=${t}, aborting lifecycle signal`),(e=o(this,F).get(t))==null||e.controller.abort(),o(this,F).delete(t)}},F=new WeakMap,K=new WeakMap,B=new WeakSet,oe=function(t){let e=o(this,F).get(t);return e||(e={deferred:new Ye,controller:new AbortController},o(this,F).set(t,e)),e},Te),Ne=Symbol("marimo");function ue(t){return t[Ne]}ae=new jt;var Dt=(je=Ne,j=class{constructor(e,r,s){_(this,N);_(this,te,"change");_(this,I);_(this,L);_(this,H);_(this,R,{});n(this,je,{updateAndEmitDiffs:e=>A(this,N,mt).call(this,e),emitCustomMessage:(e,r)=>A(this,N,gt).call(this,e,r)});n(this,"widget_manager",{async get_model(e){let r=await j._modelManager.get(e);if(!r)throw Error(`Model not found with id: ${e}. This is likely because the model was not registered.`);return r}});_(this,re,ar(()=>{let e=o(this,R)[o(this,te)];if(e)for(let r of e)try{r()}catch(s){p.error("Error emitting event",s)}},0));C(this,L,e),C(this,H,r),C(this,I,new Map),s&&s.addEventListener("abort",()=>{p.debug("[Model] Signal aborted, clearing all listeners"),C(this,R,{})})}off(e,r){var s;if(!e){C(this,R,{});return}if(!r){o(this,R)[e]=new Set;return}(s=o(this,R)[e])==null||s.delete(r)}send(e,r,s){let a=(s??[]).map(i=>i instanceof ArrayBuffer?new DataView(i):new DataView(i.buffer,i.byteOffset,i.byteLength));return o(this,H).sendCustomMessage(e,a).then(()=>r==null?void 0:r())}get(e){return o(this,L)[e]}set(e,r){C(this,L,{...o(this,L),[e]:r}),o(this,I).set(e,r),A(this,N,ht).call(this,`change:${e}`,r),o(this,re).call(this)}save_changes(){if(o(this,I).size===0)return;let e=Object.fromEntries(o(this,I).entries());o(this,I).clear(),o(this,H).sendUpdate(e)}on(e,r){o(this,R)[e]||(o(this,R)[e]=new Set),o(this,R)[e].add(r)}},te=new WeakMap,I=new WeakMap,L=new WeakMap,H=new WeakMap,R=new WeakMap,N=new WeakSet,ht=function(e,r){if(!o(this,R)[e])return;let s=o(this,R)[e];for(let a of s)try{a(r)}catch(i){p.error("Error emitting event",i)}},mt=function(e){e!=null&&Object.keys(e).forEach(r=>{let s=r;o(this,L)[s]!==e[s]&&this.set(s,e[s])})},gt=function(e,r=[]){let s=o(this,R)["msg:custom"];if(s)for(let a of s)try{a(e.content,r)}catch(i){p.error("Error emitting event",i)}},re=new WeakMap,n(j,"_modelManager",ae),j);tt=async function(t,e){let r=e.model_id,s=e.message,a=("buffers"in s?s.buffers:[]).map(Ke);switch(s.method){case"open":{let{state:i,buffer_paths:u=[]}=s,d=Ie({state:i,bufferPaths:u,buffers:a}),v=t.getSync(r);if(v){ue(v).updateAndEmitDiffs(d);return}t.create(r,x=>new Dt(d,Ve()?{sendUpdate:async()=>{},sendCustomMessage:async()=>{}}:{async sendUpdate(q){if(x.aborted){p.debug(`[Model] sendUpdate suppressed for model=${r} (signal aborted)`);return}let{state:E,buffers:$,bufferPaths:se}=It(q);await fe().sendModelValue({modelId:r,message:{method:"update",state:E,bufferPaths:se},buffers:$})},async sendCustomMessage(q,E){if(x.aborted){p.debug(`[Model] sendCustomMessage suppressed for model=${r} (signal aborted)`);return}await fe().sendModelValue({modelId:r,message:{method:"custom",content:q},buffers:E.map(Qe)})}},x));return}case"custom":ue(await t.get(r)).emitCustomMessage({method:"custom",content:s.content},a);return;case"close":ye.destroy(r),t.delete(r);return;case"update":{let{state:i,buffer_paths:u=[]}=s,d=Ie({state:i,bufferPaths:u,buffers:a});ue(await t.get(r)).updateAndEmitDiffs(d);return}default:hr(s)}},Gt(ae,"MODEL_MANAGER");function Ot(t){return typeof t!="object"||!t?!1:"type"in t&&t.type==="marimo-ui-value-update"}he=class yt{static get INSTANCE(){let e="_marimo_private_UIElementRegistry";return window[e]||(window[e]=new yt),window[e]}constructor(){this.entries=new Map}has(e){return this.entries.has(e)}set(e,r){this.entries.has(e)&&p.debug("UIElementRegistry overwriting entry for objectId.",e),this.entries.set(e,{objectId:e,value:r,elements:new Set})}registerInstance(e,r){let s=this.entries.get(e);s===void 0?this.entries.set(e,{objectId:e,value:Yt(r,this),elements:new Set([r])}):s.elements.add(r)}removeInstance(e,r){let s=this.entries.get(e);s!=null&&s.elements.has(r)&&s.elements.delete(r)}removeElementsByCell(e){[...this.entries.keys()].filter(r=>r.startsWith(`${e}-`)).forEach(r=>{this.entries.delete(r)})}lookupValue(e){let r=this.entries.get(e);return r===void 0?void 0:r.value}broadcastMessage(e,r,s){let a=this.entries.get(e);if(a===void 0){p.warn("UIElementRegistry missing entry",e);return}if(Ot(r)){a.value=r.value,a.elements.forEach(i=>{i.dispatchEvent(Ze.create({bubbles:!1,composed:!0,detail:{value:r.value,element:i}}))});return}a.elements.forEach(i=>{i.dispatchEvent(Mr.create({bubbles:!1,composed:!0,detail:{objectId:e,message:r,buffers:s}}))})}broadcastValueUpdate(e,r,s){let a=this.entries.get(r);a===void 0?p.warn("UIElementRegistry missing entry",r):(a.value=s,a.elements.forEach(i=>{i!==e&&i.dispatchEvent(Ze.create({bubbles:!1,composed:!0,detail:{value:s,element:i}}))}),document.dispatchEvent(Sr.create({bubbles:!0,composed:!0,detail:{objectId:r}})))}},it=he.INSTANCE,nt=new yr("function-call-result",async(t,e)=>{await fe().sendFunctionRequest({functionCallId:t,...e})}),ut="68px";var Bt="288px";at=t=>t?/^\d+$/.test(t)?`${t}px`:t:Bt,lt=rr({isOpen:!0},(t,e)=>{if(!e)return t;switch(e.type){case"toggle":return{...t,isOpen:e.isOpen??t.isOpen};case"setWidth":return{...t,width:e.width};default:return t}})});export{Je as C,Xe as S,et as _,kr as __tla,he as a,me as b,tt as c,ge as d,rt as f,V as g,st as h,nt as i,ye as l,we as m,at as n,it as o,ot as p,lt as r,ae as s,ut as t,dt as u,ie as v,G as w,ct as x,be as y};
1
+ var Vt=Object.defineProperty;var $e=f=>{throw TypeError(f)};var Qt=(f,h,y)=>h in f?Vt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:y}):f[h]=y;var n=(f,h,y)=>Qt(f,typeof h!="symbol"?h+"":h,y),ce=(f,h,y)=>h.has(f)||$e("Cannot "+y);var o=(f,h,y)=>(ce(f,h,"read from private field"),y?y.call(f):h.get(f)),_=(f,h,y)=>h.has(f)?$e("Cannot add the same private member more than once"):h instanceof WeakSet?h.add(f):h.set(f,y),C=(f,h,y,Q)=>(ce(f,h,"write to private field"),Q?Q.call(f,y):h.set(f,y),y),A=(f,h,y)=>(ce(f,h,"access private method"),y);import{i as U,p as ne,u as Kt}from"./useEvent-D91BmmQi.js";import{Di as Yt,Mi as Gt,Ni as Y,Nn as Zt,Si as Jt,at as ze,b as Xt,wi as er,x as tr,yi as rr,__tla as sr}from"./cells-Vnv1zw09.js";import{t as nr}from"./get-C-qh_et5.js";import{t as ar}from"./debounce-DhnxH9Rh.js";import{t as ir}from"./_baseSet-CxV9N1bc.js";import{_ as p,y as g}from"./useEventListener-DvoEXWke.js";import{t as or}from"./invariant-BUdrueMv.js";import{S as lr}from"./utils-Wvjk_Y4h.js";import{T as ur,c as pe,l as Ve,n as dr}from"./config-CeTe6Mau.js";import{n as cr}from"./switch-BT9Ki10B.js";import{n as pr}from"./globals-B64vMQ0L.js";import{t as fr}from"./createReducer-CI9qeK_X.js";import{r as hr}from"./strings-wdPMRf6Z.js";import{t as fe}from"./requests-DIwGYs0l.js";import{a as Qe,l as mr,r as Ke,__tla as gr}from"./markdown-renderer-CXVa5ubo.js";import{t as yr}from"./DeferredRequestRegistry-CUzZ0y7K.js";import{t as wr}from"./preload-helper-DItdS47A.js";import{t as Ye}from"./Deferred-DMWKlZOV.js";import{t as Ge}from"./uuid-DercMavo.js";import{t as br}from"./use-toast-T0_cQDma.js";import{n as vr}from"./RenderHTML-CvnUbELu.js";import{t as _r}from"./useRunCells-C991pS4a.js";import{n as Cr,t as Rr}from"./blob-Daju1h1M.js";import{n as xr,r as qr,t as Sr}from"./share-DdpVbvDN.js";import{i as Ze,r as Er,t as Mr}from"./events-BRAWQiYK.js";let Je,Xe,et,he,me,tt,ge,rt,V,st,nt,ye,we,at,it,ot,lt,ae,ut,dt,ie,G,ct,be,kr=Promise.all([(()=>{try{return sr}catch{}})(),(()=>{try{return gr}catch{}})()]).then(async()=>{var W,ee,ft,Ae,k,T,E,Ue,P,We,F,K,B,oe,Te,je,te,I,L,H,R,j,N,ht,mt,gt,re;function f(t,e,r){return t==null?t:ir(t,e,r)}G=f,ct=ne(null);var{valueAtom:h,useActions:y}=fr(()=>({banners:[]}),{addBanner:(t,e)=>({...t,banners:[...t.banners,{...e,id:Ge()}]}),removeBanner:(t,e)=>({...t,banners:t.banners.filter(r=>r.id!==e)}),clearBanners:t=>({...t,banners:[]})});Xe=()=>Kt(h),Je=function(){return y()};let Q,_e,Ce;Q=class{constructor(){n(this,"subscriptions",new Map)}addSubscription(t,e){var r;this.subscriptions.has(t)||this.subscriptions.set(t,new Set),(r=this.subscriptions.get(t))==null||r.add(e)}removeSubscription(t,e){var r;(r=this.subscriptions.get(t))==null||r.delete(e)}notify(t,e){for(let r of this.subscriptions.get(t)??[])r(e)}},me=class ve{constructor(e){n(this,"subscriptions",new Q);n(this,"retryCount",0);this.producer=e}static withProducerCallback(e){return new ve(e)}static empty(){return new ve}startProducer(){this.producer&&this.producer(e=>{this.subscriptions.notify("message",e)})}connect(){return new Promise(e=>setTimeout(e,0)).then(()=>{this.subscriptions.notify("open",new Event("open"))})}get readyState(){return WebSocket.OPEN}reconnect(e,r){this.close(),this.connect()}close(){this.subscriptions.notify("close",new Event("close"))}send(e){return this.subscriptions.notify("message",new MessageEvent("message",{data:e})),Promise.resolve()}addEventListener(e,r){this.subscriptions.addSubscription(e,r),e==="open"&&r(new Event("open")),e==="message"&&this.startProducer()}removeEventListener(e,r){this.subscriptions.removeSubscription(e,r)}},_e=1e10,Ce=1e3;function Z(t,e){let r=t.map(s=>`"${s}"`).join(", ");return Error(`This RPC instance cannot ${e} because the transport did not provide one or more of these methods: ${r}`)}function wt(t={}){let e={};function r(l){e=l}let s={};function a(l){var c;s.unregisterHandler&&s.unregisterHandler(),s=l,(c=s.registerHandler)==null||c.call(s,zt)}let i;function u(l){if(typeof l=="function"){i=l;return}i=(c,w)=>{let m=l[c];if(m)return m(w);let b=l._;if(!b)throw Error(`The requested method has no handler: ${c}`);return b(c,w)}}let{maxRequestTime:d=Ce}=t;t.transport&&a(t.transport),t.requestHandler&&u(t.requestHandler),t._debugHooks&&r(t._debugHooks);let v=0;function x(){return v<=_e?++v:v=0}let q=new Map,S=new Map;function $(l,...c){let w=c[0];return new Promise((m,b)=>{var z;if(!s.send)throw Z(["send"],"make requests");let M=x(),O={type:"request",id:M,method:l,params:w};q.set(M,{resolve:m,reject:b}),d!==1/0&&S.set(M,setTimeout(()=>{S.delete(M),b(Error("RPC request timed out."))},d)),(z=e.onSend)==null||z.call(e,O),s.send(O)})}let se=new Proxy($,{get:(l,c,w)=>c in l?Reflect.get(l,c,w):m=>$(c,m)}),De=se;function Oe(l,...c){var b;let w=c[0];if(!s.send)throw Z(["send"],"send messages");let m={type:"message",id:l,payload:w};(b=e.onSend)==null||b.call(e,m),s.send(m)}let Be=new Proxy(Oe,{get:(l,c,w)=>c in l?Reflect.get(l,c,w):m=>Oe(c,m)}),He=Be,D=new Map,de=new Set;function Ht(l,c){var w;if(!s.registerHandler)throw Z(["registerHandler"],"register message listeners");if(l==="*"){de.add(c);return}D.has(l)||D.set(l,new Set),(w=D.get(l))==null||w.add(c)}function $t(l,c){var w,m;if(l==="*"){de.delete(c);return}(w=D.get(l))==null||w.delete(c),((m=D.get(l))==null?void 0:m.size)===0&&D.delete(l)}async function zt(l){var c,w;if((c=e.onReceive)==null||c.call(e,l),!("type"in l))throw Error("Message does not contain a type.");if(l.type==="request"){if(!s.send||!i)throw Z(["send","requestHandler"],"handle requests");let{id:m,method:b,params:M}=l,O;try{O={type:"response",id:m,success:!0,payload:await i(b,M)}}catch(z){if(!(z instanceof Error))throw z;O={type:"response",id:m,success:!1,error:z.message}}(w=e.onSend)==null||w.call(e,O),s.send(O);return}if(l.type==="response"){let m=S.get(l.id);m!=null&&clearTimeout(m);let{resolve:b,reject:M}=q.get(l.id)??{};l.success?b==null||b(l.payload):M==null||M(Error(l.error));return}if(l.type==="message"){for(let b of de)b(l.id,l.payload);let m=D.get(l.id);if(!m)return;for(let b of m)b(l.payload);return}throw Error(`Unexpected RPC message type: ${l.type}`)}return{setTransport:a,setRequestHandler:u,request:se,requestProxy:De,send:Be,sendProxy:He,addMessageListener:Ht,removeMessageListener:$t,proxy:{send:He,request:De},_setDebugHooks:r}}function bt(t){return wt(t)}var Re="[transport-id]";function vt(t,e){let{transportId:r}=e;return r==null?t:{[Re]:r,data:t}}function _t(t,e){let{transportId:r,filter:s}=e,a=s==null?void 0:s();if(r!=null&&a!=null)throw Error("Cannot use both `transportId` and `filter` at the same time");let i=t;if(r){if(t[Re]!==r)return[!0];i=t.data}return a===!1?[!0]:[!1,i]}function Ct(t,e={}){let{transportId:r,filter:s,remotePort:a}=e,i=t,u=a??t,d;return{send(v){u.postMessage(vt(v,{transportId:r}))},registerHandler(v){d=x=>{let q=x.data,[S,$]=_t(q,{transportId:r,filter:()=>s==null?void 0:s(x)});S||v($)},i.addEventListener("message",d)},unregisterHandler(){d&&i.removeEventListener("message",d)}}}function Rt(t,e){return Ct(t,e)}function xe(t){return bt({transport:Rt(t,{transportId:"marimo-transport"}),maxRequestTime:2e4,_debugHooks:{onSend:e=>{p.debug("[rpc] Parent -> Worker",e)},onReceive:e=>{p.debug("[rpc] Worker -> Parent",e)}}})}be=ne("Initializing..."),ie=ne("loading"),et=ne(t=>{let e=t(Xt),r=Object.values(e.cellRuntime);return r.some(s=>!mr(s.output))?!0:r.every(s=>s.status==="idle")});var qe=xr(),Se="marimo:file",Ee=new rr(null);const xt={saveFile(t){Ee.set(Se,t)},readFile(){return Ee.get(Se)}};var qt={saveFile(t){Y.setCodeForHash((0,qe.compressToEncodedURIComponent)(t))},readFile(){let t=Y.getCodeFromHash()||Y.getCodeFromSearchParam();return t?(0,qe.decompressFromEncodedURIComponent)(t):null}};const St={saveFile(t){},readFile(){let t=document.querySelector("marimo-code");return t?decodeURIComponent(t.textContent||"").trim():null}};var Et={saveFile(t){},readFile(){if(window.location.hostname!=="marimo.app")return null;let t=new URL("files/wasm-intro.py",document.baseURI);return fetch(t.toString()).then(e=>e.ok?e.text():null).catch(()=>null)}};const Mt={saveFile(t){},readFile(){return U.get(Jt)??null}};var kt={saveFile(t){},readFile(){return["import marimo","app = marimo.App()","","@app.cell","def __():"," return","",'if __name__ == "__main__":'," app.run()"].join(`
2
+ `)}},Me=class{constructor(t){this.stores=t}insert(t,e){this.stores.splice(t,0,e)}saveFile(t){this.stores.forEach(e=>e.saveFile(t))}readFile(){for(let t of this.stores){let e=t.readFile();if(e)return e}return null}};let J;V=new Me([Mt,St,qt]),J=new Me([xt,Et,kt]),we=class pt{constructor(){n(this,"initialized",new Ye);n(this,"sendRename",async({filename:e})=>(e===null||(Y.setFilename(e),await this.rpc.proxy.request.bridge({functionName:"rename_file",payload:e})),null));n(this,"sendSave",async e=>{if(!this.saveRpc)return p.warn("Save RPC not initialized"),null;await this.saveRpc.saveNotebook(e);let r=await this.readCode();return r.contents&&(V.saveFile(r.contents),J.saveFile(r.contents)),this.rpc.proxy.request.saveNotebook(e).catch(s=>{p.error(s)}),null});n(this,"sendCopy",async()=>{g()});n(this,"sendStdin",async e=>(await this.rpc.proxy.request.bridge({functionName:"put_input",payload:e.text}),null));n(this,"sendPdb",async()=>{g()});n(this,"sendRun",async e=>(await this.rpc.proxy.request.loadPackages(e.codes.join(`
3
+ `)),await this.putControlRequest({type:"execute-cells",...e}),null));n(this,"sendRunScratchpad",async e=>(await this.rpc.proxy.request.loadPackages(e.code),await this.putControlRequest({type:"execute-scratchpad",...e}),null));n(this,"sendInterrupt",async()=>(this.interruptBuffer!==void 0&&(this.interruptBuffer[0]=2),null));n(this,"sendShutdown",async()=>(window.close(),null));n(this,"sendFormat",async e=>await this.rpc.proxy.request.bridge({functionName:"format",payload:e}));n(this,"sendDeleteCell",async e=>(await this.putControlRequest({type:"delete-cell",...e}),null));n(this,"sendInstallMissingPackages",async e=>(this.putControlRequest({type:"install-packages",...e}),null));n(this,"sendCodeCompletionRequest",async e=>(U.get(tr)||await this.rpc.proxy.request.bridge({functionName:"code_complete",payload:e}),null));n(this,"saveUserConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_user_config",payload:e}),cr.post("/kernel/save_user_config",e,{baseUrl:"/"}).catch(r=>(p.error(r),null))));n(this,"saveAppConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_app_config",payload:e}),null));n(this,"saveCellConfig",async e=>(await this.putControlRequest({type:"update-cell-config",...e}),null));n(this,"sendRestart",async()=>{let e=await this.readCode();return e.contents&&(V.saveFile(e.contents),J.saveFile(e.contents)),qr(),null});n(this,"readCode",async()=>this.saveRpc?{contents:await this.saveRpc.readNotebook()}:(p.warn("Save RPC not initialized"),{contents:""}));n(this,"readSnippets",async()=>await this.rpc.proxy.request.bridge({functionName:"read_snippets",payload:void 0}));n(this,"openFile",async({path:e})=>{let r=Sr({code:null,baseUrl:window.location.origin});return window.open(r,"_blank"),null});n(this,"sendListFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"list_files",payload:e}));n(this,"sendSearchFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"search_files",payload:e}));n(this,"sendComponentValues",async e=>(await this.putControlRequest({type:"update-ui-element",...e,token:Ge()}),null));n(this,"sendInstantiate",async e=>null);n(this,"sendFunctionRequest",async e=>(await this.putControlRequest({type:"invoke-function",...e}),null));n(this,"sendCreateFileOrFolder",async e=>{let r=null;return e.file&&(r=(await Cr(e.file)).split(",")[1]??""),await this.rpc.proxy.request.bridge({functionName:"create_file_or_directory",payload:{path:e.path,type:e.type,name:e.name,contents:r}})});n(this,"sendDeleteFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"delete_file_or_directory",payload:e}));n(this,"sendCopyFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"copy_file_or_directory",payload:e}));n(this,"sendRenameFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"move_file_or_directory",payload:e}));n(this,"sendUpdateFile",async e=>await this.rpc.proxy.request.bridge({functionName:"update_file",payload:e}));n(this,"sendFileDetails",async e=>await this.rpc.proxy.request.bridge({functionName:"file_details",payload:e}));n(this,"exportAsHTML",async e=>await this.rpc.proxy.request.bridge({functionName:"export_html",payload:e}));n(this,"exportAsMarkdown",async e=>await this.rpc.proxy.request.bridge({functionName:"export_markdown",payload:e}));n(this,"previewDatasetColumn",async e=>(await this.putControlRequest({type:"preview-dataset-column",...e}),null));n(this,"previewSQLTable",async e=>(await this.putControlRequest({type:"preview-sql-table",...e}),null));n(this,"previewSQLTableList",async e=>(await this.putControlRequest({type:"list-sql-tables",...e}),null));n(this,"previewSQLSchemaList",async e=>(await this.putControlRequest({type:"list-sql-schemas",...e}),null));n(this,"previewDataSourceConnection",async e=>(await this.putControlRequest({type:"list-data-source-connection",...e}),null));n(this,"validateSQL",async e=>(await this.putControlRequest({type:"validate-sql",...e}),null));n(this,"sendModelValue",async e=>(await this.putControlRequest({type:"model",...e}),null));n(this,"sendDocumentTransaction",()=>Promise.resolve(null));n(this,"addPackage",async e=>this.rpc.proxy.request.addPackage(e));n(this,"removePackage",async e=>this.rpc.proxy.request.removePackage(e));n(this,"getPackageList",async()=>await this.rpc.proxy.request.listPackages());n(this,"getDependencyTree",async()=>({tree:{dependencies:[],name:"",tags:[],version:null}}));n(this,"listSecretKeys",async e=>(await this.putControlRequest({type:"list-secret-keys",...e}),null));n(this,"getUsageStats",g);n(this,"openTutorial",g);n(this,"getRecentFiles",g);n(this,"getWorkspaceFiles",g);n(this,"getRunningNotebooks",g);n(this,"shutdownSession",g);n(this,"exportAsIPYNB",g);n(this,"exportAsPDF",g);n(this,"autoExportAsHTML",g);n(this,"autoExportAsMarkdown",g);n(this,"autoExportAsIPYNB",g);n(this,"updateCellOutputs",g);n(this,"writeSecret",g);n(this,"invokeAiTool",g);n(this,"clearCache",g);n(this,"getCacheInfo",g);n(this,"listStorageEntries",g);n(this,"downloadStorage",g);ur()&&(this.rpc=xe(new Worker(new URL(""+new URL("worker-B38WhSlZ.js",import.meta.url).href,""+import.meta.url),{type:"module",name:ke()})),this.rpc.addMessageListener("ready",()=>{this.startSession()}),this.rpc.addMessageListener("initialized",()=>{this.saveRpc=this.getSaveWorker(),this.setInterruptBuffer(),U.set(ie,"ready"),this.initialized.resolve()}),this.rpc.addMessageListener("initializingMessage",({message:e})=>{U.set(be,e)}),this.rpc.addMessageListener("initializedError",({error:e})=>{if(this.initialized.status==="resolved"){p.error(e),br({title:"Error initializing",description:e,variant:"danger"});return}U.set(ie,"error"),this.initialized.reject(Error(e))}),this.rpc.addMessageListener("kernelMessage",({message:e})=>{var r;(r=this.messageConsumer)==null||r.call(this,new MessageEvent("message",{data:e}))}))}static get INSTANCE(){let e="_marimo_private_PyodideBridge";return window[e]||(window[e]=new pt),window[e]}getSaveWorker(){return ze()==="read"?(p.debug("Using partially disabled SaveWorker in read-mode"),{readFile:g,readNotebook:async()=>await V.readFile()??"",saveNotebook:g}):xe(new Worker(new URL(""+new URL("save-worker-D2iQi-UK.js",import.meta.url).href,""+import.meta.url),{type:"module",name:ke()})).proxy.request}async startSession(){let e=await V.readFile(),r=await J.readFile(),s=U.get(er)??Y.getFilename(),a=U.get(lr),i={},u=new URLSearchParams(window.location.search);for(let d of u.keys()){let v=u.getAll(d);i[d]=v.length===1?v[0]:v}await this.rpc.proxy.request.startSession({queryParameters:i,code:e||r||"",filename:s,userConfig:{...a,runtime:{...a.runtime,auto_instantiate:ze()==="read"?!0:a.runtime.auto_instantiate}}})}setInterruptBuffer(){crossOriginIsolated?(this.interruptBuffer=new Uint8Array(new SharedArrayBuffer(1)),this.rpc.proxy.request.setInterruptBuffer(this.interruptBuffer)):p.warn("Not running in a secure context; interrupts are not available.")}attachMessageConsumer(e){this.messageConsumer=e,this.rpc.proxy.send.consumerReady({})}async putControlRequest(e){await this.rpc.proxy.request.bridge({functionName:"put_control_request",payload:e})}},st=function(){return me.withProducerCallback(t=>{we.INSTANCE.attachMessageConsumer(t)})};function ke(){let t=typeof window<"u"&&window.__MARIMO_HAS_WASM_CONTROLLER__===!0;return pr()+(t?"::controller":"")}rt=function(t=pe()){let e=window.fetch;return window.fetch=async(r,s)=>{let a=r instanceof Request?r.url:r.toString();if(a.startsWith("data:"))return e(r,s);try{let i=X(a,t);if(i){let u=await(await e(i)).arrayBuffer();return new Response(u,{headers:{"Content-Type":Ft(a)}})}return e(r,s)}catch(i){return p.error("Error parsing URL",i),e(r,s)}},()=>{window.fetch=e}};function Ft(t){return t.endsWith(".csv")?"text/csv":t.endsWith(".json")?"application/json":t.endsWith(".txt")?"text/plain":"application/octet-stream"}ot=function(t,e=pe()){let r=t.http.bind(t),s=t.load.bind(t);return t.http=async a=>{let i=X(a,e);if(i)return await window.fetch(i).then(u=>u.text());try{return await r(a)}catch(u){if(a.startsWith("data:"))return await window.fetch(a).then(d=>d.text());throw u}},t.load=async a=>{let i=X(a,e);if(i)return await window.fetch(i).then(u=>u.text());try{return await s(a)}catch(u){if(a.startsWith("data:"))return await window.fetch(a).then(d=>d.text());throw u}},()=>{t.http=r,t.load=s}};function Fe(t){return t.startsWith(".")?t.slice(1):t}function Pt(t,e=pe()){let r=X(t,e);if(!r)return t;let s=Rr(r);return URL.createObjectURL(s)}function X(t,e){let r=document.baseURI;r.startsWith("blob:")&&(r=r.replace("blob:",""));let s=new URL(t,r).pathname,a=Pe(t),i=Pe(s);return e[t]||e[Fe(t)]||e[s]||e[Fe(s)]||a&&e[a]||i&&e[i]}function Pe(t){let e=t.indexOf("/@file/");return e===-1?null:t.slice(e)}function le(t,e=[]){let r=[];if(t instanceof DataView)r.push(e);else if(Array.isArray(t))for(let[s,a]of t.entries())r.push(...le(a,[...e,s]));else if(typeof t=="object"&&t)for(let[s,a]of Object.entries(t))r.push(...le(a,[...e,s]));return r}function It(t){let e=le(t);if(e.length===0)return{state:t,buffers:[],bufferPaths:[]};let r=structuredClone(t),s=[],a=[];for(let i of e){let u=nr(t,i);if(u instanceof DataView){let d=Qe(u);s.push(d),a.push(i),G(r,i,d)}}return{state:r,buffers:s,bufferPaths:a}}function Ie(t){let{state:e,bufferPaths:r,buffers:s}=t;if(!r||r.length===0)return e;s&&or(s.length===r.length,"Buffers and buffer paths not the same length");let a=e;for(let[i,u]of r.entries()){let d=s==null?void 0:s[i];if(d==null){p.warn("[anywidget] Could not find buffer at path",u);continue}typeof d=="string"?G(a,u,Ke(d)):G(a,u,d)}return a}ge=function(t){return typeof t!="string"||t.length===0?!1:!!(/^(\.?\/)?@file\/[^?#]+$/.test(t)||Nt(t))};function Lt(){return U.get(_r)||vr()}function Nt(t){return t.startsWith("data:text/javascript;base64,")||t.startsWith("data:application/javascript;base64,")||t.startsWith("data:text/css;base64,")?Lt():!1}const Le={invoke:async()=>{let t="anywidget.invoke not supported in marimo. Please file an issue at https://github.com/marimo-team/marimo/issues";throw p.warn(t),Error(t)}};function At(t){if(typeof AbortSignal.any=="function")return AbortSignal.any(t);let e=new AbortController;for(let r of t){if(r.aborted)return e.abort(r.reason),e.signal;r.addEventListener("abort",()=>e.abort(r.reason),{once:!0})}return e.signal}var Ut=(Ae=class{constructor(){_(this,ee);_(this,W,new Map)}getModule(t,e){let r=o(this,W).get(e);if(r)return r;let s=A(this,ee,ft).call(this,t).catch(a=>{throw o(this,W).delete(e),a});return o(this,W).set(e,s),s}invalidate(t){p.debug(`[WidgetDefRegistry] Invalidating module cache for hash=${t}`),o(this,W).delete(t)}},W=new WeakMap,ee=new WeakSet,ft=async function(t){if(!ge(t))throw Error(`Refusing to load anywidget module from untrusted URL: ${String(t)}`);let e=dr(t).toString();return Ve()&&(e=Pt(e)),wr(()=>import(e).then(async r=>(await r.__tla,r)),[],import.meta.url)},Ae),Wt=(Ue=class{constructor(){_(this,k);_(this,T);_(this,E)}async bind(t,e){var i,u;if(o(this,E)&&o(this,T)===t)return o(this,E);o(this,E)&&o(this,T)!==t&&(p.debug("[WidgetBinding] Hot-reload detected, aborting previous binding"),(i=o(this,k))==null||i.abort(),C(this,k,void 0),C(this,E,void 0)),C(this,T,t),C(this,k,new AbortController);let r=o(this,k).signal,s=typeof t=="function"?await t():t,a=await((u=s.initialize)==null?void 0:u.call(s,{model:e,experimental:Le}));return a&&r.addEventListener("abort",a),C(this,E,async(d,v)=>{var q;let x=await((q=s.render)==null?void 0:q.call(s,{model:e,el:d,experimental:Le}));x&&At([v,r]).addEventListener("abort",()=>{let S=v.aborted?"view unmount":"binding destroyed";p.debug(`[WidgetBinding] Render cleanup triggered (reason: ${S})`),x()})}),o(this,E)}destroy(){var t;p.debug("[WidgetBinding] Destroying binding, aborting initialize lifecycle"),(t=o(this,k))==null||t.abort(),C(this,k,void 0),C(this,T,void 0),C(this,E,void 0)}},k=new WeakMap,T=new WeakMap,E=new WeakMap,Ue),Tt=(We=class{constructor(){_(this,P,new Map)}getOrCreate(t){let e=o(this,P).get(t);return e||(e=new Wt,o(this,P).set(t,e)),e}destroy(t){let e=o(this,P).get(t);e&&(p.debug(`[BindingManager] Destroying binding for model=${t}`),e.destroy(),o(this,P).delete(t))}has(t){return o(this,P).has(t)}},P=new WeakMap,We);dt=new Ut,ye=new Tt;var jt=(Te=class{constructor(t=1e4){_(this,B);_(this,F,new Map);_(this,K);C(this,K,t)}get(t){let e=A(this,B,oe).call(this,t);return e.deferred.status==="pending"&&setTimeout(()=>{e.deferred.status==="pending"&&(e.deferred.reject(Error(`Model not found for key: ${t}`)),o(this,F).delete(t))},o(this,K)),e.deferred.promise}create(t,e){let r=A(this,B,oe).call(this,t);r.deferred.resolve(e(r.controller.signal))}set(t,e){A(this,B,oe).call(this,t).deferred.resolve(e)}getSync(t){let e=o(this,F).get(t);if(e&&e.deferred.status==="resolved")return e.deferred.value}delete(t){var e;p.debug(`[ModelManager] Deleting model=${t}, aborting lifecycle signal`),(e=o(this,F).get(t))==null||e.controller.abort(),o(this,F).delete(t)}},F=new WeakMap,K=new WeakMap,B=new WeakSet,oe=function(t){let e=o(this,F).get(t);return e||(e={deferred:new Ye,controller:new AbortController},o(this,F).set(t,e)),e},Te),Ne=Symbol("marimo");function ue(t){return t[Ne]}ae=new jt;var Dt=(je=Ne,j=class{constructor(e,r,s){_(this,N);_(this,te,"change");_(this,I);_(this,L);_(this,H);_(this,R,{});n(this,je,{updateAndEmitDiffs:e=>A(this,N,mt).call(this,e),emitCustomMessage:(e,r)=>A(this,N,gt).call(this,e,r)});n(this,"widget_manager",{async get_model(e){let r=await j._modelManager.get(e);if(!r)throw Error(`Model not found with id: ${e}. This is likely because the model was not registered.`);return r}});_(this,re,ar(()=>{let e=o(this,R)[o(this,te)];if(e)for(let r of e)try{r()}catch(s){p.error("Error emitting event",s)}},0));C(this,L,e),C(this,H,r),C(this,I,new Map),s&&s.addEventListener("abort",()=>{p.debug("[Model] Signal aborted, clearing all listeners"),C(this,R,{})})}off(e,r){var s;if(!e){C(this,R,{});return}if(!r){o(this,R)[e]=new Set;return}(s=o(this,R)[e])==null||s.delete(r)}send(e,r,s){let a=(s??[]).map(i=>i instanceof ArrayBuffer?new DataView(i):new DataView(i.buffer,i.byteOffset,i.byteLength));return o(this,H).sendCustomMessage(e,a).then(()=>r==null?void 0:r())}get(e){return o(this,L)[e]}set(e,r){C(this,L,{...o(this,L),[e]:r}),o(this,I).set(e,r),A(this,N,ht).call(this,`change:${e}`,r),o(this,re).call(this)}save_changes(){if(o(this,I).size===0)return;let e=Object.fromEntries(o(this,I).entries());o(this,I).clear(),o(this,H).sendUpdate(e)}on(e,r){o(this,R)[e]||(o(this,R)[e]=new Set),o(this,R)[e].add(r)}},te=new WeakMap,I=new WeakMap,L=new WeakMap,H=new WeakMap,R=new WeakMap,N=new WeakSet,ht=function(e,r){if(!o(this,R)[e])return;let s=o(this,R)[e];for(let a of s)try{a(r)}catch(i){p.error("Error emitting event",i)}},mt=function(e){e!=null&&Object.keys(e).forEach(r=>{let s=r;o(this,L)[s]!==e[s]&&this.set(s,e[s])})},gt=function(e,r=[]){let s=o(this,R)["msg:custom"];if(s)for(let a of s)try{a(e.content,r)}catch(i){p.error("Error emitting event",i)}},re=new WeakMap,n(j,"_modelManager",ae),j);tt=async function(t,e){let r=e.model_id,s=e.message,a=("buffers"in s?s.buffers:[]).map(Ke);switch(s.method){case"open":{let{state:i,buffer_paths:u=[]}=s,d=Ie({state:i,bufferPaths:u,buffers:a}),v=t.getSync(r);if(v){ue(v).updateAndEmitDiffs(d);return}t.create(r,x=>new Dt(d,Ve()?{sendUpdate:async()=>{},sendCustomMessage:async()=>{}}:{async sendUpdate(q){if(x.aborted){p.debug(`[Model] sendUpdate suppressed for model=${r} (signal aborted)`);return}let{state:S,buffers:$,bufferPaths:se}=It(q);await fe().sendModelValue({modelId:r,message:{method:"update",state:S,bufferPaths:se},buffers:$})},async sendCustomMessage(q,S){if(x.aborted){p.debug(`[Model] sendCustomMessage suppressed for model=${r} (signal aborted)`);return}await fe().sendModelValue({modelId:r,message:{method:"custom",content:q},buffers:S.map(Qe)})}},x));return}case"custom":ue(await t.get(r)).emitCustomMessage({method:"custom",content:s.content},a);return;case"close":ye.destroy(r),t.delete(r);return;case"update":{let{state:i,buffer_paths:u=[]}=s,d=Ie({state:i,bufferPaths:u,buffers:a});ue(await t.get(r)).updateAndEmitDiffs(d);return}default:hr(s)}},Zt(ae,"MODEL_MANAGER");function Ot(t){return typeof t!="object"||!t?!1:"type"in t&&t.type==="marimo-ui-value-update"}he=class yt{static get INSTANCE(){let e="_marimo_private_UIElementRegistry";return window[e]||(window[e]=new yt),window[e]}constructor(){this.entries=new Map}has(e){return this.entries.has(e)}set(e,r){this.entries.has(e)&&p.debug("UIElementRegistry overwriting entry for objectId.",e),this.entries.set(e,{objectId:e,value:r,elements:new Set})}registerInstance(e,r){let s=this.entries.get(e);s===void 0?this.entries.set(e,{objectId:e,value:Gt(r,this),elements:new Set([r])}):s.elements.add(r)}removeInstance(e,r){let s=this.entries.get(e);s!=null&&s.elements.has(r)&&s.elements.delete(r)}removeElementsByCell(e){[...this.entries.keys()].filter(r=>r.startsWith(`${e}-`)).forEach(r=>{this.entries.delete(r)})}lookupValue(e){let r=this.entries.get(e);return r===void 0?void 0:r.value}broadcastMessage(e,r,s){let a=this.entries.get(e);if(a===void 0){p.warn("UIElementRegistry missing entry",e);return}if(Ot(r)){a.value=r.value,a.elements.forEach(i=>{i.dispatchEvent(Ze.create({bubbles:!1,composed:!0,detail:{value:r.value,element:i}}))});return}a.elements.forEach(i=>{i.dispatchEvent(Mr.create({bubbles:!1,composed:!0,detail:{objectId:e,message:r,buffers:s}}))})}broadcastValueUpdate(e,r,s){let a=this.entries.get(r);a===void 0?p.warn("UIElementRegistry missing entry",r):(a.value=s,a.elements.forEach(i=>{i!==e&&i.dispatchEvent(Ze.create({bubbles:!1,composed:!0,detail:{value:s,element:i}}))}),document.dispatchEvent(Er.create({bubbles:!0,composed:!0,detail:{objectId:r}})))}},it=he.INSTANCE,nt=new yr("function-call-result",async(t,e)=>{await fe().sendFunctionRequest({functionCallId:t,...e})}),ut="68px";var Bt="288px";at=t=>t?/^\d+$/.test(t)?`${t}px`:t:Bt,lt=Yt({isOpen:!0},(t,e)=>{if(!e)return t;switch(e.type){case"toggle":return{...t,isOpen:e.isOpen??t.isOpen};case"setWidth":return{...t,width:e.width};default:return t}})});export{Je as C,Xe as S,et as _,kr as __tla,he as a,me as b,tt as c,ge as d,rt as f,V as g,st as h,nt as i,ye as l,we as m,at as n,it as o,ot as p,lt as r,ae as s,ut as t,dt as u,ie as v,G as w,ct as x,be as y};
@@ -1 +1 @@
1
- import{p as r}from"./useEvent-D91BmmQi.js";import{Nn as o,Pn as h,Si as n}from"./cells-BBDzmUIS.js";import{f as m}from"./arrays-DYDL-3-i.js";var d="marimo:ai:chatState:v5";const v=r(null),f=n("marimo:ai:includeOtherCells",!0,h);function u(t){let a=new Map;for(let[s,e]of t.entries()){if(e.messages.length===0)continue;let c=m(e.messages,l=>l.id);a.set(s,{...e,messages:c})}return a}const i=n(d,{chats:new Map,activeChatId:null},o({toSerializable:t=>({chats:[...u(t.chats).entries()],activeChatId:t.activeChatId}),fromSerializable:t=>({chats:new Map(t.chats),activeChatId:t.activeChatId})})),C=r(t=>{let a=t(i);return a.activeChatId?a.chats.get(a.activeChatId):null},(t,a,s)=>{a(i,e=>({...e,activeChatId:s}))});export{f as i,v as n,i as r,C as t};
1
+ import{p as r}from"./useEvent-D91BmmQi.js";import{Fn as o,Oi as n,Pn as h}from"./cells-Vnv1zw09.js";import{f as m}from"./arrays-DYDL-3-i.js";var d="marimo:ai:chatState:v5";const v=r(null),f=n("marimo:ai:includeOtherCells",!0,o);function u(t){let a=new Map;for(let[s,e]of t.entries()){if(e.messages.length===0)continue;let c=m(e.messages,l=>l.id);a.set(s,{...e,messages:c})}return a}const i=n(d,{chats:new Map,activeChatId:null},h({toSerializable:t=>({chats:[...u(t.chats).entries()],activeChatId:t.activeChatId}),fromSerializable:t=>({chats:new Map(t.chats),activeChatId:t.activeChatId})})),C=r(t=>{let a=t(i);return a.activeChatId?a.chats.get(a.activeChatId):null},(t,a,s)=>{a(i,e=>({...e,activeChatId:s}))});export{f as i,v as n,i as r,C as t};
@@ -1,2 +1,2 @@
1
- import{_ as t}from"./useEventListener-BR0C1MaI.js";import{t as l}from"./invariant-BUdrueMv.js";function i(r){l(!1,`Unexpected object: ${r}`)}function n(r){return t.warn(`Unexpected object: ${JSON.stringify(r)}`),r}function e(r){return r?r.charAt(0).toUpperCase()+r.slice(1):""}function a(r){if(!r)return"";if(typeof r!="string")throw t.error(r),TypeError(`Expected string, got ${typeof r}`);return/[A-Za-z]/.test(r)?r.replaceAll(/([\da-z])([A-Z])/g,"$1 $2").replaceAll(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").replaceAll(/[\s_-]+/g," ").trim().split(" ").map(e).join(" "):r}const s={startCase:a,htmlEscape:r=>r&&r.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll('"',"&quot;").replaceAll("'","&#039;").replaceAll(`
1
+ import{_ as t}from"./useEventListener-DvoEXWke.js";import{t as l}from"./invariant-BUdrueMv.js";function i(r){l(!1,`Unexpected object: ${r}`)}function n(r){return t.warn(`Unexpected object: ${JSON.stringify(r)}`),r}function e(r){return r?r.charAt(0).toUpperCase()+r.slice(1):""}function a(r){if(!r)return"";if(typeof r!="string")throw t.error(r),TypeError(`Expected string, got ${typeof r}`);return/[A-Za-z]/.test(r)?r.replaceAll(/([\da-z])([A-Z])/g,"$1 $2").replaceAll(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").replaceAll(/[\s_-]+/g," ").trim().split(" ").map(e).join(" "):r}const s={startCase:a,htmlEscape:r=>r&&r.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll('"',"&quot;").replaceAll("'","&#039;").replaceAll(`
2
2
  `," "),withTrailingSlash(r){return r.endsWith("/")?r:`${r}/`},withoutTrailingSlash(r){return r.endsWith("/")?r.slice(0,-1):r},withoutLeadingSlash(r){return r.startsWith("/")?r.slice(1):r},asString:r=>{if(typeof r=="string")return r;try{return JSON.stringify(r)}catch{return String(r)}}};export{n as i,e as n,i as r,s as t};