@marimo-team/frontend 0.23.6-dev9 → 0.23.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{CellStatus-BasmzQBh.js → CellStatus-CO_unhk0.js} +1 -1
- package/dist/assets/{ConnectedDataExplorerComponent-DNoHDaQW.js → ConnectedDataExplorerComponent-k8s9vETJ.js} +1 -1
- package/dist/assets/{JsonOutput-BQaSLDBi.js → JsonOutput-ugBhs7bt.js} +11 -11
- package/dist/assets/{MarimoErrorOutput-Dm4hVwDq.js → MarimoErrorOutput-1q6qtvxi.js} +1 -1
- package/dist/assets/RenderHTML-DkEHxB1r.js +1 -0
- package/dist/assets/{RunButton-DHxYW_jZ.js → RunButton-CJsJsGj-.js} +1 -1
- package/dist/assets/__vite-browser-external-D0cSGXjR.js +1 -0
- package/dist/assets/__vite-browser-external-DQc2JVNq.js +1 -0
- package/dist/assets/{add-cell-with-ai-5QPp1nPl.js → add-cell-with-ai-D5JeNTNV.js} +1 -1
- package/dist/assets/{add-connection-dialog-C3IbqmBw.js → add-connection-dialog-_nMyst1l.js} +1 -1
- package/dist/assets/{agent-panel-Dbk-1jxq.js → agent-panel-CBj2Q42_.js} +1 -1
- package/dist/assets/ai-model-dropdown-B-9yxYM4.js +5 -0
- package/dist/assets/{app-config-button-DyNQc93A.js → app-config-button-BOc_z0uX.js} +1 -1
- package/dist/assets/{cell-editor-BaK05lPI.js → cell-editor-C1BpIU12.js} +3 -3
- package/dist/assets/{cell-link-8o8mCUzE.js → cell-link-CC2MiW7a.js} +1 -1
- package/dist/assets/{cells-Jdt48eTG.js → cells-DAxz8J5R.js} +3 -3
- package/dist/assets/{chat-display-D4A5J3ON.js → chat-display-BiUNr6dU.js} +1 -1
- package/dist/assets/{chat-panel--TAJZjAo.js → chat-panel-BHsaaTzR.js} +1 -1
- package/dist/assets/{chat-ui-Dlmd_U56.js → chat-ui-CTYG4pnL.js} +1 -1
- package/dist/assets/{column-preview-B1oiFlur.js → column-preview-DBPye87P.js} +1 -1
- package/dist/assets/{command-palette-kgF1SANg.js → command-palette-C3fn0qCr.js} +1 -1
- package/dist/assets/{common-C6ZHulDM.js → common-Qy2P7rii.js} +1 -1
- package/dist/assets/{components-Du9BBcZY.js → components-CZy03693.js} +1 -1
- package/dist/assets/{components-BiZUhizd.js → components-D9aJNSr-.js} +1 -1
- package/dist/assets/config-CPqw1wUv.js +1 -0
- package/dist/assets/{datasource-BGCJgHn8.js → datasource-C1JWjcmE.js} +1 -1
- package/dist/assets/{dependency-graph-panel-BFoJRcHv.js → dependency-graph-panel-DOHj-hNc.js} +1 -1
- package/dist/assets/{documentation-panel-Bi7B6BDD.js → documentation-panel-BM7hNnyp.js} +1 -1
- package/dist/assets/{download-q17GDjRk.js → download-CXTuIv7r.js} +1 -1
- package/dist/assets/{edit-page-B4TUnRbq.js → edit-page-Ct5Ke1wi.js} +6 -6
- package/dist/assets/{error-panel-Elx5tZAZ.js → error-panel-BN-anQD3.js} +1 -1
- package/dist/assets/{file-explorer-panel-omTFPhXg.js → file-explorer-panel-D1O0vw5C.js} +3 -3
- package/dist/assets/{file-icons-D1lzcliR.js → file-icons-5G4ZC70N.js} +1 -1
- package/dist/assets/{floating-outline-DVqXePmL.js → floating-outline-DHE0ukvC.js} +1 -1
- package/dist/assets/{focus-Bz1PGBQ2.js → focus-Crs_4nnQ.js} +1 -1
- package/dist/assets/{form-CpNkZ10P.js → form-DRJZl2zK.js} +1 -1
- package/dist/assets/{glide-data-editor-CxV4Ph39.js → glide-data-editor-DqqLCmqF.js} +1 -1
- package/dist/assets/{globals-B-ZMi0ZU.js → globals-DUw71mRV.js} +1 -1
- package/dist/assets/{home-page-B6hZQb34.js → home-page-BM_BZnw7.js} +1 -1
- package/dist/assets/{hooks-S16Gx0fA.js → hooks-CUEvgvEQ.js} +1 -1
- package/dist/assets/{html-to-image-BJDxFKbb.js → html-to-image-v-_444d3.js} +1 -1
- package/dist/assets/{index-6t5Y6NP5.js → index-BMxMikGP.js} +7 -7
- package/dist/assets/{kiosk-mode-DlJLa7MP.js → kiosk-mode-DKb6W1WN.js} +1 -1
- package/dist/assets/layout-Bp1vAdBy.js +9 -0
- package/dist/assets/{logs-panel--5x174b0.js → logs-panel-BWCDk8Zy.js} +1 -1
- package/dist/assets/{markdown-renderer-9gIJjISB.js → markdown-renderer-CbuqHMPu.js} +1 -1
- package/dist/assets/{mermaid-CXmjgj4p.js → mermaid-BfdNvRSd.js} +1 -1
- package/dist/assets/{name-cell-input-DUUJ7fdG.js → name-cell-input-DoYtA-nF.js} +1 -1
- package/dist/assets/{outline-panel-B6y7CdzK.js → outline-panel-C5bTOsj4.js} +1 -1
- package/dist/assets/{packages-panel-bTONt5Lb.js → packages-panel-CHVjLKJK.js} +1 -1
- package/dist/assets/panels-GT2UyjFN.js +1 -0
- package/dist/assets/{process-output-TR8koJYc.js → process-output-CKd9tbdL.js} +1 -1
- package/dist/assets/{radio-group-B0jYgGRE.js → radio-group-BI3wOhfc.js} +1 -1
- package/dist/assets/{readonly-python-code-BNCBnJYH.js → readonly-python-code-CaKJ84fy.js} +1 -1
- package/dist/assets/{renderShortcut-DZpkrZaP.js → renderShortcut-Bfk4NjRL.js} +1 -1
- package/dist/assets/{reveal-component-BakhgglY.js → reveal-component-DC85rv-5.js} +1 -1
- package/dist/assets/run-page-CldmTgnu.js +1 -0
- package/dist/assets/{save-worker-CtJsIYIM.js → save-worker-CvbUHJh7.js} +3 -3
- package/dist/assets/{scratchpad-panel-Bc-DomsH.js → scratchpad-panel-C6QArhRa.js} +1 -1
- package/dist/assets/{session-panel-BAAW6R7U.js → session-panel-bu72cztx.js} +1 -1
- package/dist/assets/{snippets-panel-roW3_D4d.js → snippets-panel-BvuRa1mc.js} +1 -1
- package/dist/assets/state-CjlRDG08.js +3 -0
- package/dist/assets/{state-Bhut5iLD.js → state-DgRSUIT8.js} +1 -1
- package/dist/assets/{switch-ecwOrzz3.js → switch-BvybnC9P.js} +1 -1
- package/dist/assets/{terminal-CQZ69wrS.js → terminal-zehb39z5.js} +23 -23
- package/dist/assets/{textarea-DapfQSws.js → textarea-GPxmW3rS.js} +1 -1
- package/dist/assets/{tracing-D3nIh6vh.js → tracing-CVQn241p.js} +1 -1
- package/dist/assets/{tracing-panel-B23uvwYc.js → tracing-panel-TnogJs00.js} +2 -2
- package/dist/assets/{useBoolean-B_vDzBHf.js → useBoolean-xXcxYCaI.js} +1 -1
- package/dist/assets/{useCellActionButton-DrzG-_Bd.js → useCellActionButton-C8PCItmw.js} +1 -1
- package/dist/assets/{useDeleteCell-CcnkgOq-.js → useDeleteCell-DMZGFMOB.js} +1 -1
- package/dist/assets/{useDependencyPanelTab-Dv04JzMr.js → useDependencyPanelTab-Jnl7B-vS.js} +1 -1
- package/dist/assets/{useHotkey-Cm0DaHEJ.js → useHotkey-DccKPSPx.js} +1 -1
- package/dist/assets/useNotebookActions-U6kQhg4l.js +1 -0
- package/dist/assets/{useRunCells-BeRcytF8.js → useRunCells-BMgfN_OV.js} +1 -1
- package/dist/assets/{useSplitCell-DSLPh_8D.js → useSplitCell-B5YK7yVe.js} +1 -1
- package/dist/assets/{useTheme-Cb4Wekek.js → useTheme-DFXuDFj9.js} +1 -1
- package/dist/assets/utils-BrXijSdZ.js +1 -0
- package/dist/assets/{vega-component-BDK4MwYT.js → vega-component-DOyQwlmD.js} +1 -1
- package/dist/assets/{worker-ztl1wuLb.js → worker-CF8V9c2V.js} +3 -3
- package/dist/index.html +29 -29
- package/package.json +5 -5
- package/src/components/ai/ai-provider-icon.tsx +1 -0
- package/src/components/ai/ai-utils.ts +1 -0
- package/src/components/app-config/ai-config.tsx +30 -0
- package/src/components/editor/chrome/wrapper/footer-items/pyodide-status.tsx +47 -0
- package/src/components/editor/chrome/wrapper/footer.tsx +2 -0
- package/src/components/editor/renderers/cell-array.tsx +14 -7
- package/src/components/slides/slide-form.tsx +43 -0
- package/src/components/terminal/terminal.tsx +16 -0
- package/src/components/ui/links.tsx +2 -1
- package/src/core/ai/ids/ids.ts +1 -0
- package/src/core/codemirror/markdown/__tests__/commands.test.ts +36 -0
- package/src/core/codemirror/markdown/commands.ts +4 -1
- package/src/core/config/config-schema.ts +1 -0
- package/src/core/edit-app.tsx +1 -0
- package/src/core/run-app.tsx +9 -2
- package/src/core/runtime/runtime.ts +3 -2
- package/src/core/static/static-state.ts +5 -1
- package/src/core/wasm/PyodideLoader.tsx +54 -16
- package/src/core/wasm/__tests__/PyodideLoader.test.ts +72 -0
- package/src/core/wasm/__tests__/bridge.test.ts +26 -1
- package/src/core/wasm/bridge.ts +24 -6
- package/src/core/wasm/state.ts +3 -0
- package/src/core/wasm/worker/getController.ts +7 -0
- package/src/core/wasm/worker/save-worker.ts +2 -1
- package/src/core/wasm/worker/worker.ts +2 -1
- package/src/plugins/core/RenderHTML.tsx +49 -3
- package/src/plugins/core/__test__/RenderHTML.test.ts +54 -0
- package/src/plugins/impl/common/labeled.tsx +1 -1
- package/dist/assets/RenderHTML-CA4tujDX.js +0 -1
- package/dist/assets/__vite-browser-external-D-ioOGDE.js +0 -1
- package/dist/assets/__vite-browser-external-DgbEhFq1.js +0 -1
- package/dist/assets/ai-model-dropdown-DRqlfqFb.js +0 -5
- package/dist/assets/config-DczIUz0b.js +0 -1
- package/dist/assets/layout-D1lkx0Aj.js +0 -9
- package/dist/assets/panels-gY-_wGFa.js +0 -1
- package/dist/assets/run-page-DwUpSMBL.js +0 -1
- package/dist/assets/state-D5aL5woK.js +0 -3
- package/dist/assets/useNotebookActions-DC5VHfXc.js +0 -1
- package/dist/assets/utils-DIGrmLDO.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as j}from"./chunk-LvLJmgfZ.js";import{d as L,l as P,n as
|
|
1
|
+
import{s as j}from"./chunk-LvLJmgfZ.js";import{d as L,l as P,n as w,u as A}from"./useEvent-D91BmmQi.js";import{Ai as E,E as O,Ft as y,N as F,j as S,pn as T,vi as _}from"./cells-DAxz8J5R.js";import{t as b}from"./compiler-runtime-B3qBwwSJ.js";import{_ as $}from"./useEventListener-BR0C1MaI.js";import{d as D}from"./utils-BrXijSdZ.js";import{r as N}from"./constants-DMpttj8Q.js";import{v as q,w as B}from"./config-CPqw1wUv.js";import{t as H}from"./cn-DCUzRj2J.js";import{t as M}from"./jsx-runtime-BqBOg78p.js";import{r as R}from"./requests-DIwGYs0l.js";import{n as U}from"./paths-BXWH6vv4.js";import{s as V}from"./session-VtovaFBS.js";import{n as z}from"./ImperativeModal-D7lQ0Q7_.js";var G=b();function I(){return A(_)}function J(){let r=(0,G.c)(5),[t]=P(q),e=L(_),{openAlert:a}=z(),{sendRename:o}=R(),s;return r[0]!==t.state||r[1]!==a||r[2]!==o||r[3]!==e?(s=async l=>{let n=D();return t.state===B.OPEN?(V(i=>{l===null?i.delete(N.filePath):i.set(N.filePath,l)}),o({filename:l}).then(()=>(e(l),document.title=n.app_title||U.basename(l)||"Untitled Notebook",l)).catch(i=>(a(i.message),null))):(a("Failed to save notebook: not connected to a kernel."),null)},r[0]=t.state,r[1]=a,r[2]=o,r[3]=e,r[4]=s):s=r[4],w(s)}var p=b(),v=j(M(),1);const h=r=>{let t=(0,p.c)(12),{className:e,cellId:a,variant:o,onClick:s,formatCellName:l,skipScroll:n}=r,i=F()[a]??"",C=S().inOrderIds.indexOf(a),{showCellIfHidden:d}=O(),g=l??W,c;t[0]===e?c=t[1]:(c=H("inline-block cursor-pointer text-link hover:underline",e),t[0]=e,t[1]=c);let m;t[2]!==a||t[3]!==s||t[4]!==d||t[5]!==n||t[6]!==o?(m=k=>{if(a==="__scratch__")return!1;d({cellId:a}),k.stopPropagation(),k.preventDefault(),requestAnimationFrame(()=>{x(a,o,n)&&(s==null||s())})},t[2]=a,t[3]=s,t[4]=d,t[5]=n,t[6]=o,t[7]=m):m=t[7];let f=g(y(i,C)),u;return t[8]!==c||t[9]!==m||t[10]!==f?(u=(0,v.jsx)("div",{className:c,role:"link",tabIndex:-1,onClick:m,children:f}),t[8]=c,t[9]=m,t[10]=f,t[11]=u):u=t[11],u},K=r=>{let t=(0,p.c)(2),e;return t[0]===r?e=t[1]:(e=(0,v.jsx)(h,{...r,variant:"destructive"}),t[0]=r,t[1]=e),e},Q=r=>{let t=(0,p.c)(10),{cellId:e,lineNumber:a}=r,o=I(),s;t[0]!==e||t[1]!==a?(s=()=>T(e,a),t[0]=e,t[1]=a,t[2]=s):s=t[2];let l;t[3]!==e||t[4]!==o?(l=i=>e==="__scratch__"?"scratch":`marimo://${o||"untitled"}#cell=${i}`,t[3]=e,t[4]=o,t[5]=l):l=t[5];let n;return t[6]!==e||t[7]!==s||t[8]!==l?(n=(0,v.jsx)(h,{cellId:e,onClick:s,skipScroll:!0,variant:"destructive",className:"traceback-cell-link",formatCellName:l}),t[6]=e,t[7]=s,t[8]=l,t[9]=n):n=t[9],n};function x(r,t,e){let a=E.create(r),o=document.getElementById(a),s=o==null?void 0:o.classList.contains("has-error");return o===null?($.error(`Cell ${a} not found on page.`),!1):(e||o.scrollIntoView({behavior:"smooth",block:"center"}),(t==="destructive"||s&&t===void 0)&&(o.classList.add("error-outline"),setTimeout(()=>{o.classList.remove("error-outline")},2e3)),(t==="focus"||!s&&t===void 0)&&(o.classList.add("focus-outline"),setTimeout(()=>{o.classList.remove("focus-outline")},2e3)),!0)}function W(r){return r}export{I as a,x as i,K as n,J as o,Q as r,h as t};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./esm-D_nSG7uo.js","./chunk-LvLJmgfZ.js","./dist-BZX17NA8.js","./dist-C9ZB41s2.js","./dist-HlsDto3K.js","./dist-BrR4M-k3.js","./dist-bvHsEZ9m.js","./dist-DS5RCKZO.js","./dist-CmTrDl8w.js","./dist-VjDnmGCZ.js","./dist-D4HwuQrf.js","./dist-9g-_Ln9y.js","./dist-Cwcldbhl.js","./dist-DBiqbYe-.js","./dist-E6ttb8td.js","./dist-_KQbcsP1.js","./dist-DBBYmRY4.js","./dist-RsQv8CvG.js","./dist-Dn_fCOGr.js","./dist-CEUFTp7U.js","./dist-CbOE2rpr.js","./dist-DggusHaA.js","./dist-Cn0rcGlX.js","./dist-_qPWf6sD.js","./dist-Dq4wQg6C.js","./dist-B96NwXcp.js","./dist-A6v5-U3i.js","./dist-DQOq2Tf-.js","./dist-DMSWEOfO.js","./dist-CGDn0y-i.js","./dist-CwZoXpmG.js","./dist-B324sPca.js","./dist-jLyLmWUE.js","./dist-CsEqrZxx.js","./dist-BVBYIAbx.js","./dist-_XomGjg6.js","./dist-BkhaSQrg.js","./dist-D6wwIjcW.js","./dist-BvZKHNvJ.js","./dist-ooLAQ9IK.js","./dist-e6kaTCKJ.js","./dist-HW7R98td.js","./apl-m-AMVo9Q.js","./apl-T0uH_RjM.js","./asciiarmor-BCgPMx-s.js","./asciiarmor-D3ol7c2G.js","./asn1-f2_lxsgc.js","./asn1-DA-fXXsk.js","./brainfuck-ZYebo2B9.js","./brainfuck-exn1QR7H.js","./cobol-BdI6-uBH.js","./cobol-BWxHqof4.js","./clike-O99jWPIc.js","./clike-BK27e5qn.js","./clojure-NE6UT6b9.js","./clojure-Df1U5nhC.js","./css-Ctj1grpW.js","./css-jpfGFPDE.js","./cmake-7TIUAxVu.js","./cmake-DrCf0yvp.js","./coffeescript-CLx5m4GS.js","./coffeescript-nKvg8y_U.js","./commonlisp-8d9AwdCm.js","./commonlisp-Dm562cBV.js","./cypher-DnT9gfY3.js","./cypher-RQ5M28al.js","./python-B_AEFhuO.js","./python-BRHQZrcc.js","./crystal-Bn-cOTHZ.js","./crystal-CrCmK2Cb.js","./d-DCjbmG72.js","./d-CNQ_nPqU.js","./diff-DtVdhdPz.js","./diff-DOODcY7A.js","./dockerfile-DERk1oNL.js","./simple-mode-BJAT_N3M.js","./dtd-CHKGQo-k.js","./dtd-CRYKjxdR.js","./dylan-DKXsKw9e.js","./dylan-Bg0sO2y3.js","./ecl-BJuToLkm.js","./ecl-DaBeV7OZ.js","./eiffel-Bs0gRCeB.js","./eiffel-BtJc6fqQ.js","./elm-BXUbhN4m.js","./elm-D9Rly7Qq.js","./erlang-B9b7RAaI.js","./erlang-FZMRuv-7.js","./factor-C2NWkG3V.js","./factor-BbYo7zsD.js","./forth-DAh7UX6C.js","./forth-C6jh4lHA.js","./fortran-Dy64-0b5.js","./fortran-DuxTe5qi.js","./mllike-5ykSeapn.js","./mllike-orSu1SHG.js","./gas-DC-7PUFB.js","./gas-D7RWbiQ0.js","./gherkin-ByiMyVl5.js","./gherkin-DV4l4nlf.js","./groovy-DaM0RAwa.js","./groovy-Ij7mXzwd.js","./haskell-BwRtIbXW.js","./haskell-BT_ZNgUJ.js","./haxe-DFGSCjmC.js","./haxe-DYYwGmM8.js","./idl-Ip8qszMi.js","./idl-CjBvIccU.js","./javascript-DmUu6wxV.js","./javascript-DQz7szA1.js","./julia-C8K-9kxt.js","./julia-U0NSUEwm.js","./livescript-B3MfBDE2.js","./livescript-D7jeebX7.js","./lua-B2YpVx0h.js","./lua-CT4vrRvN.js","./mirc-DvJdMBLZ.js","./mirc-6LiBC6Dw.js","./mathematica-D9tSC-hw.js","./mathematica-DmzlinOc.js","./modelica-laYOX8Zo.js","./modelica-BsibU-7c.js","./mumps-BwcCoPkA.js","./mumps-DIZYQE11.js","./mbox-CjoMCyMH.js","./mbox-DYDL20A1.js","./nsis-CpSPdWjV.js","./nsis-Cr8jf68z.js","./ntriples-D2ki9JZ6.js","./ntriples-CwlUIE0o.js","./octave-D817mWs9.js","./octave-BWtN_wao.js","./oz-3GS03IG4.js","./oz-CJMVKlqL.js","./pascal-C08wXab2.js","./pascal-C9rPtth-.js","./perl-Ija-iETI.js","./perl-CF7pKLbl.js","./pig-BlBD3yVJ.js","./pig-Bu0nn8JT.js","./powershell-CjOQ_PjD.js","./powershell-Bzwpi8yQ.js","./properties-5yVGVBrw.js","./properties-Cfh_Lj0j.js","./protobuf-hlm5v2rk.js","./protobuf-Vz3fs9Hb.js","./pug-DifRb20b.js","./pug-CKg66ZCy.js","./puppet-BpFPuj45.js","./puppet-JwSHf4DX.js","./q-BzDxfEQq.js","./q-DWFQ7YI_.js","./r-BJ9VYyYa.js","./r-DHkTNFL2.js","./rpm-Ez4HwV9T.js","./rpm-zbaZz_dk.js","./ruby-BcHOM0EI.js","./ruby-COvM5Bj_.js","./sas-Qmf5gHIU.js","./sas-Be8P6y_s.js","./scheme-Ctib9V77.js","./scheme-B9Zors0b.js","./shell-BtgVCAhn.js","./shell-CaaQwZ-W.js","./sieve-CMsTkuH0.js","./sieve-CdflT_3W.js","./smalltalk-BKSCdMTS.js","./smalltalk-CRO88y3z.js","./sparql-TK6HapG4.js","./sparql-DEker8ZS.js","./stylus-C8FKVvgQ.js","./stylus-DAJwnVOa.js","./swift-D7BZKS_y.js","./swift-D5F-FU3-.js","./stex-D6sqtveI.js","./stex-CtmkcLz7.js","./verilog-CTtn3HA0.js","./verilog-XWBMMjwd.js","./tcl-DFrjfFmM.js","./tcl-DirNbhYm.js","./textile-Bj913nF7.js","./textile-DhHo4rKl.js","./toml-B6qgmS36.js","./toml-CrP9HWVu.js","./troff-CysSpyUG.js","./troff-BWD1WiE0.js","./ttcn-DG1k5i1B.js","./ttcn-CQzcRj0D.js","./ttcn-cfg-p1jV7x_I.js","./ttcn-cfg-jzTcqwRW.js","./turtle-DSkxUncB.js","./turtle-BAqH2D2z.js","./webidl-CHPMhkWI.js","./webidl-xagG_7hd.js","./vb-BIvYC4My.js","./vb-CrUpzy4g.js","./vbscript-Coxg2EVQ.js","./vbscript-DEuHZ0Y0.js","./velocity-Cy90c7hC.js","./velocity-D99sTvXl.js","./vhdl-D3r3mwOF.js","./vhdl-BAGmVXDV.js","./xquery-d-YlNlXH.js","./xquery-B8Mguhly.js","./yacas-BfZ0gs5_.js","./yacas-XW2NxGKw.js","./z80-cYJ4lyZA.js","./z80-DhICfTcL.js","./mscgen-z_sYErek.js","./mscgen-vX4NsSXf.js","./dist-R7_s36kw.js","./dist-rzeRelEY.js","./dist-Cmcbyg5X.js","./node-sql-parser-B8vXamqL.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
var m6=Object.defineProperty;var g6=(pa,_r,ri)=>_r in pa?m6(pa,_r,{enumerable:!0,configurable:!0,writable:!0,value:ri}):pa[_r]=ri;var ve=(pa,_r,ri)=>g6(pa,typeof _r!="symbol"?_r+"":_r,ri);import{a as y6,n as pw,o as v6,r as b6,s as Pu,t as rt}from"./chunk-LvLJmgfZ.js";import{c as hw,i as Me,l as mw,p as Te,r as w6,s as _6,u as mn}from"./useEvent-D91BmmQi.js";import{t as Nu}from"./react-Bj1aDYRI.js";import{t as gw}from"./react-dom-CSu739Rf.js";import{B as x6,N as k6,P as yw,R as vw,T as bw,k as C6,w as S6}from"./zod-H_cgTO0M.js";import{t as tr}from"./compiler-runtime-B3qBwwSJ.js";import{t as zh}from"./debounce-DhnxH9Rh.js";import{_ as be,d as Rr,f as ww,o as Mu,p as E6}from"./useEventListener-BR0C1MaI.js";import{t as rn}from"./invariant-BUdrueMv.js";import{f as _w,t as xw}from"./utils-DIGrmLDO.js";import{S as Du,r as T6,y as I6}from"./config-DczIUz0b.js";import{n as L6,t as Pr}from"./cn-DCUzRj2J.js";import{t as O6}from"./jsx-runtime-BqBOg78p.js";import{C as sa,S as kw,_ as Cw,b as nr,f as A6,h as ju,m as R6,u as P6,v as Sw,w as N6,y as M6}from"./fullscreen-BDxedMYP.js";import{l as Ew,o as D6}from"./dist-BoOh2kN5.js";import{d as j6}from"./menu-items-CwUpDHG7.js";import{a as z6,c as q6,i as qh,m as F6,n as B6,o as Tw,r as V6,s as H6,t as $6}from"./select-5i7URBEn.js";import{i as W6,t as Fh}from"./tooltip-Gcwqb_SK.js";import{t as Iw}from"./button-D9nb17Rw.js";import{A as U6,At as Bh,Bt as $t,C as K6,D as Q6,Et as Lw,Ft as Ow,Gt as G6,H as Aw,Ht as kl,I as Rw,J as zu,Jt as la,Kt as Pw,Ot as is,S as J6,St as Ja,T as Nw,U as X6,Ut as Mw,Vt as Y6,W as Z6,Wt as qu,Xt as Ui,Yt as os,Zt as ss,_t as e8,at as Et,b as Dw,ct as Ki,f as jw,it as t8,jt as n8,k as r8,l as ne,mt as a8,nt as zw,ot as i8,p as o8,rt as ca,u as qw,ut as s8,xt as Vh,z as Fw,zt as Fu}from"./dist-BrR4M-k3.js";import{C as l8,D as c8,L as u8,O as d8,T as f8,b as p8,d as Bw,f as h8,g as m8,h as g8,k as y8,n as v8,o as Hh,p as b8,s as w8,t as _8,u as x8,w as k8,x as C8}from"./dist-CHcznzB-.js";import{a as Cl,i as Vw,m as $h,n as S8,r as Hw}from"./arrays-DYDL-3-i.js";import{n as rr}from"./once-DRroIaBz.js";import{t as E8}from"./capabilities-C_FLIcjP.js";import{t as T8}from"./cjs-BRGiG41H.js";import{t as Sl}from"./createReducer-1ePoj7v6.js";import{d as $w,l as Ww,n as I8,o as Uw,p as L8,r as Bu}from"./dist-HlsDto3K.js";import{t as Kw}from"./main-B0OX4z33.js";import{n as Qw,t as O8}from"./useNonce-DfoVjkkH.js";import{i as ls,r as A8,t as R8}from"./strings-md4mFbOQ.js";import{t as br}from"./requests-DIwGYs0l.js";import{a as P8,c as N8,d as M8,f as Gw,i as D8,l as j8,n as z8,o as Wh,r as q8,s as Uh,t as F8,u as B8}from"./dist-C9ZB41s2.js";import{t as ot}from"./createLucideIcon-D5guW7EU.js";import{a as Kh,i as V8,o as H8,r as $8,t as W8}from"./useLifecycle-DieWOfXE.js";import{t as U8}from"./check-BH35Ndha.js";import{t as K8}from"./x-C-6liIBr.js";import{t as Q8,u as G8}from"./toDate-B5A0DFEz.js";import{t as Qh}from"./database-zap-kIkTfzTX.js";import{n as J8,t as El}from"./DeferredRequestRegistry-CUzZ0y7K.js";import{t as Fn}from"./badge-C7-HR1IO.js";import{t as re}from"./preload-helper-DItdS47A.js";import{a as Jw,s as X8}from"./dist-DQOq2Tf-.js";import{a as Y8,i as Gh,n as Z8,r as Xw,t as eI}from"./dist-B324sPca.js";import{n as tI}from"./stex-CtmkcLz7.js";import{t as Tl}from"./use-toast-T0_cQDma.js";import{n as Yw}from"./paths-BXWH6vv4.js";import{n as nI}from"./useTheme-Cb4Wekek.js";import{t as Jh}from"./purify.es-DBmVz-Wl.js";let Xh,Il,Yh,Vu,Zw,En,e_,t_,Zh,n_,Hu,$u,ua,Bn,r_,em,tm,a_,i_,o_,nm,s_,l_,Wu,c_,u_,d_,f_,p_,h_,rm,m_,g_,y_,v_,Ll,b_,w_,__,x_,k_,C_,S_,E_,T_,I_,L_,am,O_,im,A_,om,R_,sm,lm,ar,cm,Xa,da,um,P_,Vn,dm,N_,M_,D_,Uu,fm,j_,Ku,z_,Ya,Ol,q_,Qu,F_,B_,Gu,Al,V_,pm,H_,Ju,Xu,Hn,$_,W_,Qi,hm,U_,Rl,Yu,mm,K_,Q_,G_,gm,Gi,$n,J_,Zu,ym,X_,vm,ed,Za,Y_,td,bm,nd,wm,Z_,ex,tx,nx,rd,_m,ei,ad,rx,xm,id,Ji,Nr,ax,ix,ox,km,Cm,od,sx,Sm,Em,sd,Ye,gn,lx,Tm,wr,cx,Im,ux,Lm,dx,fx,px,Pl,Om,hx,Nl,Am,Rm,mx,ld,Pm,gx,cd,Nm,yx,vx,ud,Mm,bx,dd,cs,Dm,jm,fd,pd,ti,zm,qm,wx,_x,us,hd,xx,Fm,kx,Cx,Sx,md,Bm,Ex,ni,Tx,Xi,Vm,Ix,gd,Hm,$m,Lx,yd,ds,Wm,Yi,Um,Ox,Km,Ax,Qm,Gm,Rx,Px,Nx,fs,Jm,Xm,vd,Mx,Ym,Dx,Ml,jx,Zm,zx,qx,e0,Fx,t0,Bx,Vx,Dl,n0,r0,bd,a0,ps,fa,wd,i0,Hx,hs,_d,o0,s0,$x,xd,kd,Cd,Sd,Wx,Ux,Ed,l0,Zi,Kx,jl,Qx,c0,u0,Gx,Jx,zl,st,ql,rI=(async()=>{var ur,Nf,hi;let pa,_r,ri;pa=rt((e=>{function n(ie,ee){var W=ie.length;ie.push(ee);e:for(;0<W;){var Ie=W-1>>>1,He=ie[Ie];if(0<s(He,ee))ie[Ie]=ee,ie[W]=He,W=Ie;else break e}}function a(ie){return ie.length===0?null:ie[0]}function o(ie){if(ie.length===0)return null;var ee=ie[0],W=ie.pop();if(W!==ee){ie[0]=W;e:for(var Ie=0,He=ie.length,et=He>>>1;Ie<et;){var Fe=2*(Ie+1)-1,Ne=ie[Fe],Le=Fe+1,De=ie[Le];if(0>s(Ne,W))Le<He&&0>s(De,Ne)?(ie[Ie]=De,ie[Le]=W,Ie=Le):(ie[Ie]=Ne,ie[Fe]=W,Ie=Fe);else if(Le<He&&0>s(De,W))ie[Ie]=De,ie[Le]=W,Ie=Le;else break e}}return ee}function s(ie,ee){var W=ie.sortIndex-ee.sortIndex;return W===0?ie.id-ee.id:W}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var c=performance;e.unstable_now=function(){return c.now()}}else{var f=Date,d=f.now();e.unstable_now=function(){return f.now()-d}}var m=[],b=[],_=1,x=null,S=3,E=!1,L=!1,P=!1,q=!1,V=typeof setTimeout=="function"?setTimeout:null,B=typeof clearTimeout=="function"?clearTimeout:null,M=typeof setImmediate<"u"?setImmediate:null;function J(ie){for(var ee=a(b);ee!==null;){if(ee.callback===null)o(b);else if(ee.startTime<=ie)o(b),ee.sortIndex=ee.expirationTime,n(m,ee);else break;ee=a(b)}}function le(ie){if(P=!1,J(ie),!L)if(a(m)!==null)L=!0,A||(A=!0,ye());else{var ee=a(b);ee!==null&&ue(le,ee.startTime-ie)}}var A=!1,j=-1,$=5,oe=-1;function de(){return q?!0:!(e.unstable_now()-oe<$)}function he(){if(q=!1,A){var ie=e.unstable_now();oe=ie;var ee=!0;try{e:{L=!1,P&&(P=!1,B(j),j=-1),E=!0;var W=S;try{t:{for(J(ie),x=a(m);x!==null&&!(x.expirationTime>ie&&de());){var Ie=x.callback;if(typeof Ie=="function"){x.callback=null,S=x.priorityLevel;var He=Ie(x.expirationTime<=ie);if(ie=e.unstable_now(),typeof He=="function"){x.callback=He,J(ie),ee=!0;break t}x===a(m)&&o(m),J(ie)}else o(m);x=a(m)}if(x!==null)ee=!0;else{var et=a(b);et!==null&&ue(le,et.startTime-ie),ee=!1}}break e}finally{x=null,S=W,E=!1}ee=void 0}}finally{ee?ye():A=!1}}}var ye;if(typeof M=="function")ye=function(){M(he)};else if(typeof MessageChannel<"u"){var ke=new MessageChannel,we=ke.port2;ke.port1.onmessage=he,ye=function(){we.postMessage(null)}}else ye=function(){V(he,0)};function ue(ie,ee){j=V(function(){ie(e.unstable_now())},ee)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(ie){ie.callback=null},e.unstable_forceFrameRate=function(ie){0>ie||125<ie?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):$=0<ie?Math.floor(1e3/ie):5},e.unstable_getCurrentPriorityLevel=function(){return S},e.unstable_next=function(ie){switch(S){case 1:case 2:case 3:var ee=3;break;default:ee=S}var W=S;S=ee;try{return ie()}finally{S=W}},e.unstable_requestPaint=function(){q=!0},e.unstable_runWithPriority=function(ie,ee){switch(ie){case 1:case 2:case 3:case 4:case 5:break;default:ie=3}var W=S;S=ie;try{return ee()}finally{S=W}},e.unstable_scheduleCallback=function(ie,ee,W){var Ie=e.unstable_now();switch(typeof W=="object"&&W?(W=W.delay,W=typeof W=="number"&&0<W?Ie+W:Ie):W=Ie,ie){case 1:var He=-1;break;case 2:He=250;break;case 5:He=1073741823;break;case 4:He=1e4;break;default:He=5e3}return He=W+He,ie={id:_++,callback:ee,priorityLevel:ie,startTime:W,expirationTime:He,sortIndex:-1},W>Ie?(ie.sortIndex=W,n(b,ie),a(m)===null&&ie===a(b)&&(P?(B(j),j=-1):P=!0,ue(le,W-Ie))):(ie.sortIndex=He,n(m,ie),L||E||(L=!0,A||(A=!0,ye()))),ie},e.unstable_shouldYield=de,e.unstable_wrapCallback=function(ie){var ee=S;return function(){var W=S;S=ee;try{return ie.apply(this,arguments)}finally{S=W}}}})),_r=rt(((e,n)=>{n.exports=pa()})),ri=rt((e=>{var n=_r(),a=Nu(),o=gw();function s(t){var r="https://react.dev/errors/"+t;if(1<arguments.length){r+="?args[]="+encodeURIComponent(arguments[1]);for(var i=2;i<arguments.length;i++)r+="&args[]="+encodeURIComponent(arguments[i])}return"Minified React error #"+t+"; visit "+r+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function c(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function f(t){var r=t,i=t;if(t.alternate)for(;r.return;)r=r.return;else{t=r;do r=t,r.flags&4098&&(i=r.return),t=r.return;while(t)}return r.tag===3?i:null}function d(t){if(t.tag===13){var r=t.memoizedState;if(r===null&&(t=t.alternate,t!==null&&(r=t.memoizedState)),r!==null)return r.dehydrated}return null}function m(t){if(t.tag===31){var r=t.memoizedState;if(r===null&&(t=t.alternate,t!==null&&(r=t.memoizedState)),r!==null)return r.dehydrated}return null}function b(t){if(f(t)!==t)throw Error(s(188))}function _(t){var r=t.alternate;if(!r){if(r=f(t),r===null)throw Error(s(188));return r===t?t:null}for(var i=t,l=r;;){var p=i.return;if(p===null)break;var g=p.alternate;if(g===null){if(l=p.return,l!==null){i=l;continue}break}if(p.child===g.child){for(g=p.child;g;){if(g===i)return b(p),t;if(g===l)return b(p),r;g=g.sibling}throw Error(s(188))}if(i.return!==l.return)i=p,l=g;else{for(var C=!1,I=p.child;I;){if(I===i){C=!0,i=p,l=g;break}if(I===l){C=!0,l=p,i=g;break}I=I.sibling}if(!C){for(I=g.child;I;){if(I===i){C=!0,i=g,l=p;break}if(I===l){C=!0,l=g,i=p;break}I=I.sibling}if(!C)throw Error(s(189))}}if(i.alternate!==l)throw Error(s(190))}if(i.tag!==3)throw Error(s(188));return i.stateNode.current===i?t:r}function x(t){var r=t.tag;if(r===5||r===26||r===27||r===6)return t;for(t=t.child;t!==null;){if(r=x(t),r!==null)return r;t=t.sibling}return null}var S=Object.assign,E=Symbol.for("react.element"),L=Symbol.for("react.transitional.element"),P=Symbol.for("react.portal"),q=Symbol.for("react.fragment"),V=Symbol.for("react.strict_mode"),B=Symbol.for("react.profiler"),M=Symbol.for("react.consumer"),J=Symbol.for("react.context"),le=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),j=Symbol.for("react.suspense_list"),$=Symbol.for("react.memo"),oe=Symbol.for("react.lazy"),de=Symbol.for("react.activity"),he=Symbol.for("react.memo_cache_sentinel"),ye=Symbol.iterator;function ke(t){return typeof t!="object"||!t?null:(t=ye&&t[ye]||t["@@iterator"],typeof t=="function"?t:null)}var we=Symbol.for("react.client.reference");function ue(t){if(t==null)return null;if(typeof t=="function")return t.$$typeof===we?null:t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case q:return"Fragment";case B:return"Profiler";case V:return"StrictMode";case A:return"Suspense";case j:return"SuspenseList";case de:return"Activity"}if(typeof t=="object")switch(t.$$typeof){case P:return"Portal";case J:return t.displayName||"Context";case M:return(t._context.displayName||"Context")+".Consumer";case le:var r=t.render;return t=t.displayName,t||(t=(t=r.displayName||r.name||"",t===""?"ForwardRef":"ForwardRef("+t+")")),t;case $:return r=t.displayName||null,r===null?ue(t.type)||"Memo":r;case oe:r=t._payload,t=t._init;try{return ue(t(r))}catch{}}return null}var ie=Array.isArray,ee=a.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,W=o.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Ie={pending:!1,data:null,method:null,action:null},He=[],et=-1;function Fe(t){return{current:t}}function Ne(t){0>et||(t.current=He[et],He[et]=null,et--)}function Le(t,r){et++,He[et]=t.current,t.current=r}var De=Fe(null),Tt=Fe(null),Pt=Fe(null),wa=Fe(null);function vo(t,r){switch(Le(Pt,r),Le(Tt,t),Le(De,null),r.nodeType){case 9:case 11:t=(t=r.documentElement)&&(t=t.namespaceURI)?q2(t):0;break;default:if(t=r.tagName,r=r.namespaceURI)r=q2(r),t=F2(r,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}Ne(De),Le(De,t)}function On(){Ne(De),Ne(Tt),Ne(Pt)}function jr(t){t.memoizedState!==null&&Le(wa,t);var r=De.current,i=F2(r,t.type);r!==i&&(Le(Tt,t),Le(De,i))}function mi(t){Tt.current===t&&(Ne(De),Ne(Tt)),wa.current===t&&(Ne(wa),bl._currentValue=Ie)}var bo,Ts;function mt(t){if(bo===void 0)try{throw Error()}catch(i){var r=i.stack.trim().match(/\n( *(at )?)/);bo=r&&r[1]||"",Ts=-1<i.stack.indexOf(`
|
|
2
|
+
var m6=Object.defineProperty;var g6=(pa,_r,ri)=>_r in pa?m6(pa,_r,{enumerable:!0,configurable:!0,writable:!0,value:ri}):pa[_r]=ri;var ve=(pa,_r,ri)=>g6(pa,typeof _r!="symbol"?_r+"":_r,ri);import{a as y6,n as pw,o as v6,r as b6,s as Pu,t as rt}from"./chunk-LvLJmgfZ.js";import{c as hw,i as Me,l as mw,p as Te,r as w6,s as _6,u as mn}from"./useEvent-D91BmmQi.js";import{t as Nu}from"./react-Bj1aDYRI.js";import{t as gw}from"./react-dom-CSu739Rf.js";import{B as x6,N as k6,P as yw,R as vw,T as bw,k as C6,w as S6}from"./zod-H_cgTO0M.js";import{t as tr}from"./compiler-runtime-B3qBwwSJ.js";import{t as zh}from"./debounce-DhnxH9Rh.js";import{_ as be,d as Rr,f as ww,o as Mu,p as E6}from"./useEventListener-BR0C1MaI.js";import{t as rn}from"./invariant-BUdrueMv.js";import{f as _w,t as xw}from"./utils-BrXijSdZ.js";import{S as T6,T as Du,r as I6}from"./config-CPqw1wUv.js";import{n as L6,t as Pr}from"./cn-DCUzRj2J.js";import{t as O6}from"./jsx-runtime-BqBOg78p.js";import{C as sa,S as kw,_ as Cw,b as nr,f as A6,h as ju,m as R6,u as P6,v as Sw,w as N6,y as M6}from"./fullscreen-BDxedMYP.js";import{l as Ew,o as D6}from"./dist-BoOh2kN5.js";import{d as j6}from"./menu-items-CwUpDHG7.js";import{a as z6,c as q6,i as qh,m as F6,n as B6,o as Tw,r as V6,s as H6,t as $6}from"./select-5i7URBEn.js";import{i as W6,t as Fh}from"./tooltip-Gcwqb_SK.js";import{t as Iw}from"./button-D9nb17Rw.js";import{A as U6,At as Bh,Bt as $t,C as K6,D as Q6,Et as Lw,Ft as Ow,Gt as G6,H as Aw,Ht as kl,I as Rw,J as zu,Jt as la,Kt as Pw,Ot as is,S as J6,St as Ja,T as Nw,U as X6,Ut as Mw,Vt as Y6,W as Z6,Wt as qu,Xt as Ui,Yt as os,Zt as ss,_t as e8,at as Et,b as Dw,ct as Ki,f as jw,it as t8,jt as n8,k as r8,l as ne,mt as a8,nt as zw,ot as i8,p as o8,rt as ca,u as qw,ut as s8,xt as Vh,z as Fw,zt as Fu}from"./dist-BrR4M-k3.js";import{C as l8,D as c8,L as u8,O as d8,T as f8,b as p8,d as Bw,f as h8,g as m8,h as g8,k as y8,n as v8,o as Hh,p as b8,s as w8,t as _8,u as x8,w as k8,x as C8}from"./dist-CHcznzB-.js";import{a as Cl,i as Vw,m as $h,n as S8,r as Hw}from"./arrays-DYDL-3-i.js";import{n as rr}from"./once-DRroIaBz.js";import{t as E8}from"./capabilities-C_FLIcjP.js";import{t as T8}from"./cjs-BRGiG41H.js";import{t as Sl}from"./createReducer-1ePoj7v6.js";import{d as $w,l as Ww,n as I8,o as Uw,p as L8,r as Bu}from"./dist-HlsDto3K.js";import{t as Kw}from"./main-B0OX4z33.js";import{n as Qw,t as O8}from"./useNonce-DfoVjkkH.js";import{i as ls,r as A8,t as R8}from"./strings-md4mFbOQ.js";import{t as br}from"./requests-DIwGYs0l.js";import{a as P8,c as N8,d as M8,f as Gw,i as D8,l as j8,n as z8,o as Wh,r as q8,s as Uh,t as F8,u as B8}from"./dist-C9ZB41s2.js";import{t as ot}from"./createLucideIcon-D5guW7EU.js";import{a as Kh,i as V8,o as H8,r as $8,t as W8}from"./useLifecycle-DieWOfXE.js";import{t as U8}from"./check-BH35Ndha.js";import{t as K8}from"./x-C-6liIBr.js";import{t as Q8,u as G8}from"./toDate-B5A0DFEz.js";import{t as Qh}from"./database-zap-kIkTfzTX.js";import{n as J8,t as El}from"./DeferredRequestRegistry-CUzZ0y7K.js";import{t as Fn}from"./badge-C7-HR1IO.js";import{t as re}from"./preload-helper-DItdS47A.js";import{a as Jw,s as X8}from"./dist-DQOq2Tf-.js";import{a as Y8,i as Gh,n as Z8,r as Xw,t as eI}from"./dist-B324sPca.js";import{n as tI}from"./stex-CtmkcLz7.js";import{t as Tl}from"./use-toast-T0_cQDma.js";import{n as Yw}from"./paths-BXWH6vv4.js";import{n as nI}from"./useTheme-DFXuDFj9.js";import{t as Jh}from"./purify.es-DBmVz-Wl.js";let Xh,Il,Yh,Vu,Zw,En,e_,t_,Zh,n_,Hu,$u,ua,Bn,r_,em,tm,a_,i_,o_,nm,s_,l_,Wu,c_,u_,d_,f_,p_,h_,rm,m_,g_,y_,v_,Ll,b_,w_,__,x_,k_,C_,S_,E_,T_,I_,L_,am,O_,im,A_,om,R_,sm,lm,ar,cm,Xa,da,um,P_,Vn,dm,N_,M_,D_,Uu,fm,j_,Ku,z_,Ya,Ol,q_,Qu,F_,B_,Gu,Al,V_,pm,H_,Ju,Xu,Hn,$_,W_,Qi,hm,U_,Rl,Yu,mm,K_,Q_,G_,gm,Gi,$n,J_,Zu,ym,X_,vm,ed,Za,Y_,td,bm,nd,wm,Z_,ex,tx,nx,rd,_m,ei,ad,rx,xm,id,Ji,Nr,ax,ix,ox,km,Cm,od,sx,Sm,Em,sd,Ye,gn,lx,Tm,wr,cx,Im,ux,Lm,dx,fx,px,Pl,Om,hx,Nl,Am,Rm,mx,ld,Pm,gx,cd,Nm,yx,vx,ud,Mm,bx,dd,cs,Dm,jm,fd,pd,ti,zm,qm,wx,_x,us,hd,xx,Fm,kx,Cx,Sx,md,Bm,Ex,ni,Tx,Xi,Vm,Ix,gd,Hm,$m,Lx,yd,ds,Wm,Yi,Um,Ox,Km,Ax,Qm,Gm,Rx,Px,Nx,fs,Jm,Xm,vd,Mx,Ym,Dx,Ml,jx,Zm,zx,qx,e0,Fx,t0,Bx,Vx,Dl,n0,r0,bd,a0,ps,fa,wd,i0,Hx,hs,_d,o0,s0,$x,xd,kd,Cd,Sd,Wx,Ux,Ed,l0,Zi,Kx,jl,Qx,c0,u0,Gx,Jx,zl,st,ql,rI=(async()=>{var ur,Nf,hi;let pa,_r,ri;pa=rt((e=>{function n(ie,ee){var W=ie.length;ie.push(ee);e:for(;0<W;){var Ie=W-1>>>1,He=ie[Ie];if(0<s(He,ee))ie[Ie]=ee,ie[W]=He,W=Ie;else break e}}function a(ie){return ie.length===0?null:ie[0]}function o(ie){if(ie.length===0)return null;var ee=ie[0],W=ie.pop();if(W!==ee){ie[0]=W;e:for(var Ie=0,He=ie.length,et=He>>>1;Ie<et;){var Fe=2*(Ie+1)-1,Ne=ie[Fe],Le=Fe+1,De=ie[Le];if(0>s(Ne,W))Le<He&&0>s(De,Ne)?(ie[Ie]=De,ie[Le]=W,Ie=Le):(ie[Ie]=Ne,ie[Fe]=W,Ie=Fe);else if(Le<He&&0>s(De,W))ie[Ie]=De,ie[Le]=W,Ie=Le;else break e}}return ee}function s(ie,ee){var W=ie.sortIndex-ee.sortIndex;return W===0?ie.id-ee.id:W}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var c=performance;e.unstable_now=function(){return c.now()}}else{var f=Date,d=f.now();e.unstable_now=function(){return f.now()-d}}var m=[],b=[],_=1,x=null,S=3,E=!1,L=!1,P=!1,q=!1,V=typeof setTimeout=="function"?setTimeout:null,B=typeof clearTimeout=="function"?clearTimeout:null,M=typeof setImmediate<"u"?setImmediate:null;function J(ie){for(var ee=a(b);ee!==null;){if(ee.callback===null)o(b);else if(ee.startTime<=ie)o(b),ee.sortIndex=ee.expirationTime,n(m,ee);else break;ee=a(b)}}function le(ie){if(P=!1,J(ie),!L)if(a(m)!==null)L=!0,A||(A=!0,ye());else{var ee=a(b);ee!==null&&ue(le,ee.startTime-ie)}}var A=!1,j=-1,$=5,oe=-1;function de(){return q?!0:!(e.unstable_now()-oe<$)}function he(){if(q=!1,A){var ie=e.unstable_now();oe=ie;var ee=!0;try{e:{L=!1,P&&(P=!1,B(j),j=-1),E=!0;var W=S;try{t:{for(J(ie),x=a(m);x!==null&&!(x.expirationTime>ie&&de());){var Ie=x.callback;if(typeof Ie=="function"){x.callback=null,S=x.priorityLevel;var He=Ie(x.expirationTime<=ie);if(ie=e.unstable_now(),typeof He=="function"){x.callback=He,J(ie),ee=!0;break t}x===a(m)&&o(m),J(ie)}else o(m);x=a(m)}if(x!==null)ee=!0;else{var et=a(b);et!==null&&ue(le,et.startTime-ie),ee=!1}}break e}finally{x=null,S=W,E=!1}ee=void 0}}finally{ee?ye():A=!1}}}var ye;if(typeof M=="function")ye=function(){M(he)};else if(typeof MessageChannel<"u"){var ke=new MessageChannel,we=ke.port2;ke.port1.onmessage=he,ye=function(){we.postMessage(null)}}else ye=function(){V(he,0)};function ue(ie,ee){j=V(function(){ie(e.unstable_now())},ee)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(ie){ie.callback=null},e.unstable_forceFrameRate=function(ie){0>ie||125<ie?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):$=0<ie?Math.floor(1e3/ie):5},e.unstable_getCurrentPriorityLevel=function(){return S},e.unstable_next=function(ie){switch(S){case 1:case 2:case 3:var ee=3;break;default:ee=S}var W=S;S=ee;try{return ie()}finally{S=W}},e.unstable_requestPaint=function(){q=!0},e.unstable_runWithPriority=function(ie,ee){switch(ie){case 1:case 2:case 3:case 4:case 5:break;default:ie=3}var W=S;S=ie;try{return ee()}finally{S=W}},e.unstable_scheduleCallback=function(ie,ee,W){var Ie=e.unstable_now();switch(typeof W=="object"&&W?(W=W.delay,W=typeof W=="number"&&0<W?Ie+W:Ie):W=Ie,ie){case 1:var He=-1;break;case 2:He=250;break;case 5:He=1073741823;break;case 4:He=1e4;break;default:He=5e3}return He=W+He,ie={id:_++,callback:ee,priorityLevel:ie,startTime:W,expirationTime:He,sortIndex:-1},W>Ie?(ie.sortIndex=W,n(b,ie),a(m)===null&&ie===a(b)&&(P?(B(j),j=-1):P=!0,ue(le,W-Ie))):(ie.sortIndex=He,n(m,ie),L||E||(L=!0,A||(A=!0,ye()))),ie},e.unstable_shouldYield=de,e.unstable_wrapCallback=function(ie){var ee=S;return function(){var W=S;S=ee;try{return ie.apply(this,arguments)}finally{S=W}}}})),_r=rt(((e,n)=>{n.exports=pa()})),ri=rt((e=>{var n=_r(),a=Nu(),o=gw();function s(t){var r="https://react.dev/errors/"+t;if(1<arguments.length){r+="?args[]="+encodeURIComponent(arguments[1]);for(var i=2;i<arguments.length;i++)r+="&args[]="+encodeURIComponent(arguments[i])}return"Minified React error #"+t+"; visit "+r+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function c(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function f(t){var r=t,i=t;if(t.alternate)for(;r.return;)r=r.return;else{t=r;do r=t,r.flags&4098&&(i=r.return),t=r.return;while(t)}return r.tag===3?i:null}function d(t){if(t.tag===13){var r=t.memoizedState;if(r===null&&(t=t.alternate,t!==null&&(r=t.memoizedState)),r!==null)return r.dehydrated}return null}function m(t){if(t.tag===31){var r=t.memoizedState;if(r===null&&(t=t.alternate,t!==null&&(r=t.memoizedState)),r!==null)return r.dehydrated}return null}function b(t){if(f(t)!==t)throw Error(s(188))}function _(t){var r=t.alternate;if(!r){if(r=f(t),r===null)throw Error(s(188));return r===t?t:null}for(var i=t,l=r;;){var p=i.return;if(p===null)break;var g=p.alternate;if(g===null){if(l=p.return,l!==null){i=l;continue}break}if(p.child===g.child){for(g=p.child;g;){if(g===i)return b(p),t;if(g===l)return b(p),r;g=g.sibling}throw Error(s(188))}if(i.return!==l.return)i=p,l=g;else{for(var C=!1,I=p.child;I;){if(I===i){C=!0,i=p,l=g;break}if(I===l){C=!0,l=p,i=g;break}I=I.sibling}if(!C){for(I=g.child;I;){if(I===i){C=!0,i=g,l=p;break}if(I===l){C=!0,l=g,i=p;break}I=I.sibling}if(!C)throw Error(s(189))}}if(i.alternate!==l)throw Error(s(190))}if(i.tag!==3)throw Error(s(188));return i.stateNode.current===i?t:r}function x(t){var r=t.tag;if(r===5||r===26||r===27||r===6)return t;for(t=t.child;t!==null;){if(r=x(t),r!==null)return r;t=t.sibling}return null}var S=Object.assign,E=Symbol.for("react.element"),L=Symbol.for("react.transitional.element"),P=Symbol.for("react.portal"),q=Symbol.for("react.fragment"),V=Symbol.for("react.strict_mode"),B=Symbol.for("react.profiler"),M=Symbol.for("react.consumer"),J=Symbol.for("react.context"),le=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),j=Symbol.for("react.suspense_list"),$=Symbol.for("react.memo"),oe=Symbol.for("react.lazy"),de=Symbol.for("react.activity"),he=Symbol.for("react.memo_cache_sentinel"),ye=Symbol.iterator;function ke(t){return typeof t!="object"||!t?null:(t=ye&&t[ye]||t["@@iterator"],typeof t=="function"?t:null)}var we=Symbol.for("react.client.reference");function ue(t){if(t==null)return null;if(typeof t=="function")return t.$$typeof===we?null:t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case q:return"Fragment";case B:return"Profiler";case V:return"StrictMode";case A:return"Suspense";case j:return"SuspenseList";case de:return"Activity"}if(typeof t=="object")switch(t.$$typeof){case P:return"Portal";case J:return t.displayName||"Context";case M:return(t._context.displayName||"Context")+".Consumer";case le:var r=t.render;return t=t.displayName,t||(t=(t=r.displayName||r.name||"",t===""?"ForwardRef":"ForwardRef("+t+")")),t;case $:return r=t.displayName||null,r===null?ue(t.type)||"Memo":r;case oe:r=t._payload,t=t._init;try{return ue(t(r))}catch{}}return null}var ie=Array.isArray,ee=a.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,W=o.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Ie={pending:!1,data:null,method:null,action:null},He=[],et=-1;function Fe(t){return{current:t}}function Ne(t){0>et||(t.current=He[et],He[et]=null,et--)}function Le(t,r){et++,He[et]=t.current,t.current=r}var De=Fe(null),Tt=Fe(null),Pt=Fe(null),wa=Fe(null);function vo(t,r){switch(Le(Pt,r),Le(Tt,t),Le(De,null),r.nodeType){case 9:case 11:t=(t=r.documentElement)&&(t=t.namespaceURI)?q2(t):0;break;default:if(t=r.tagName,r=r.namespaceURI)r=q2(r),t=F2(r,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}Ne(De),Le(De,t)}function On(){Ne(De),Ne(Tt),Ne(Pt)}function jr(t){t.memoizedState!==null&&Le(wa,t);var r=De.current,i=F2(r,t.type);r!==i&&(Le(Tt,t),Le(De,i))}function mi(t){Tt.current===t&&(Ne(De),Ne(Tt)),wa.current===t&&(Ne(wa),bl._currentValue=Ie)}var bo,Ts;function mt(t){if(bo===void 0)try{throw Error()}catch(i){var r=i.stack.trim().match(/\n( *(at )?)/);bo=r&&r[1]||"",Ts=-1<i.stack.indexOf(`
|
|
3
3
|
at`)?" (<anonymous>)":-1<i.stack.indexOf("@")?"@unknown:0:0":""}return`
|
|
4
4
|
`+bo+t+Ts}var Is=!1;function vn(t,r){if(!t||Is)return"";Is=!0;var i=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var l={DetermineComponentFrameRoot:function(){try{if(r){var fe=function(){throw Error()};if(Object.defineProperty(fe.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(fe,[])}catch(ae){var Z=ae}Reflect.construct(t,[],fe)}else{try{fe.call()}catch(ae){Z=ae}t.call(fe.prototype)}}else{try{throw Error()}catch(ae){Z=ae}(fe=t())&&typeof fe.catch=="function"&&fe.catch(function(){})}}catch(ae){if(ae&&Z&&typeof ae.stack=="string")return[ae.stack,Z.stack]}return[null,null]}};l.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var p=Object.getOwnPropertyDescriptor(l.DetermineComponentFrameRoot,"name");p&&p.configurable&&Object.defineProperty(l.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var g=l.DetermineComponentFrameRoot(),C=g[0],I=g[1];if(C&&I){var F=C.split(`
|
|
5
5
|
`),X=I.split(`
|
|
@@ -96,7 +96,7 @@ mark line col
|
|
|
96
96
|
`&&c--,e.state.overwrite?d=.2:m.status&&(d=.5)}if(f){let E=c<n.state.doc.length&&n.state.sliceDoc(c,c+1);E&&/[\uDC00-\uDFFF]/.test(E)&&c>1&&(c--,E=n.state.sliceDoc(c,c+1));let L=n.coordsAtPos(c,1);if(!L)return null;let P=f3(n),q=n.domAtPos(c),V=q?q.node:n.contentDOM;for(V instanceof Text&&q.offset>=V.data.length&&((_=V.parentElement)==null?void 0:_.nextSibling)&&(V=(x=V.parentElement)==null?void 0:x.nextSibling,q={node:V,offset:0});q&&q.node instanceof HTMLElement;)V=q.node,q={node:q.node.childNodes[q.offset],offset:0};if(!(V instanceof HTMLElement)){if(!V.parentNode)return null;V=V.parentNode}let B=getComputedStyle(V),M=L.left,J=(S=(s=n).coordsForChar)==null?void 0:S.call(s,c);if(J&&(M=J.left),!E||E==`
|
|
97
97
|
`||E=="\r")E="\xA0";else if(E==" "){E="\xA0";var b=n.coordsAtPos(c+1,-1);b&&(M=b.left-(b.left-L.left)/parseInt(B.tabSize))}else/[\uD800-\uDBFF]/.test(E)&&c<n.state.doc.length-1&&(E+=n.state.sliceDoc(c+1,c+2));let le=L.bottom-L.top;return new l3((M-P.left)/n.scaleX,(L.top-P.top+le*(1-d))/n.scaleY,le*d/n.scaleY,B.fontFamily,B.fontSize,B.fontWeight,B.color,o?"cm-fat-cursor cm-cursor-primary":"cm-fat-cursor cm-cursor-secondary",E,d!=1)}else return null}let Wy,Uy,Ky,Qy;Wy=typeof navigator<"u"&&/linux/i.test(navigator.platform)&&/ Gecko\/\d+/.exec(navigator.userAgent),fa=XS(Ve),Uy=250,Ky=Et.baseTheme({".cm-vimMode .cm-cursorLayer:not(.cm-vimCursorLayer)":{display:"none"},".cm-vim-panel":{padding:"0px 10px",fontFamily:"monospace",minHeight:"1.3em",display:"flex"},".cm-vim-panel input":{border:"none",outline:"none",backgroundColor:"inherit"},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"}}),Qy=Ki.fromClass(class{constructor(e){this.status="",this.query=null,this.decorations=ca.none,this.waitForCopy=!1,this.lastKeydown="",this.useNextTextInput=!1,this.compositionText="",this.view=e;let n=this.cm=new Ve(e);fa.enterVimMode(this.cm),this.view.cm=this.cm,this.cm.state.vimPlugin=this,this.blockCursor=new c3(e,n),this.updateClass(),this.cm.on("vim-command-done",()=>{n.state.vim&&(n.state.vim.status=""),this.blockCursor.scheduleRedraw(),this.updateStatus()}),this.cm.on("vim-mode-change",a=>{n.state.vim&&(n.state.vim.mode=a.mode,a.subMode&&(n.state.vim.mode+=" block"),n.state.vim.status="",this.blockCursor.scheduleRedraw(),this.updateClass(),this.updateStatus())}),this.cm.on("dialog",()=>{this.cm.state.statusbar?this.updateStatus():e.dispatch({effects:Gy.of(!!this.cm.state.dialog)})}),this.dom=document.createElement("span"),this.spacer=document.createElement("span"),this.spacer.style.flex="1",this.statusButton=document.createElement("span"),this.statusButton.onclick=a=>{fa.handleKey(this.cm,"<Esc>","user"),this.cm.focus()},this.statusButton.style.cssText="cursor: pointer"}update(e){var n;if((e.viewportChanged||e.docChanged)&&this.query&&this.highlight(this.query),e.docChanged&&this.cm.onChange(e),e.selectionSet&&this.cm.onSelectionChange(),e.viewportChanged,this.cm.curOp&&!this.cm.curOp.isVimOp&&this.cm.onBeforeEndOperation(),e.transactions){for(let a of e.transactions)for(let o of a.effects)if(o.is(Hh))if(!((n=o.value)!=null&&n.forVim))this.highlight(null);else{let s=o.value.create();this.highlight(s)}}this.blockCursor.update(e)}updateClass(){let e=this.cm.state;!e.vim||e.vim.insertMode&&!e.overwrite?this.view.scrollDOM.classList.remove("cm-vimMode"):this.view.scrollDOM.classList.add("cm-vimMode")}updateStatus(){let e=this.cm.state.statusbar,n=this.cm.state.vim;if(!e||!n)return;let a=this.cm.state.dialog;if(a)a.parentElement!=e&&(e.textContent="",e.appendChild(a));else{e.textContent="";var o=(n.mode||"normal").toUpperCase();n.insertModeReturn&&(o+="(C-O)"),this.statusButton.textContent=`--${o}--`,e.appendChild(this.statusButton),e.appendChild(this.spacer)}this.dom.textContent=n.status,e.appendChild(this.dom)}destroy(){fa.leaveVimMode(this.cm),this.updateClass(),this.blockCursor.destroy(),delete this.view.cm}highlight(e){if(this.query=e,!e)return this.decorations=ca.none;let{view:n}=this,a=new Pw;for(let o=0,s=n.visibleRanges,c=s.length;o<c;o++){let{from:f,to:d}=s[o];for(;o<c-1&&d>s[o+1].from-2*Uy;)d=s[++o].to;e.highlight(n.state,f,d,(m,b)=>{a.add(m,b,m3)})}return this.decorations=a.finish()}handleKey(e,n){let a=this.cm,o=a.state.vim;if(!o)return;let s=fa.vimKeyFromEvent(e,o);if(Ve.signal(this.cm,"inputEvent",{type:"handleKey",key:s}),!s)return;if(s=="<Esc>"&&!o.insertMode&&!o.visualMode&&this.query){let f=o.searchState_;f&&(a.removeOverlay(f.getOverlay()),f.setOverlay(null))}if(s==="<C-c>"&&!Ve.isMac&&a.somethingSelected())return this.waitForCopy=!0,!0;o.status=(o.status||"")+s;let c=fa.multiSelectHandleKey(a,s,"user");return o=fa.maybeInitVimState_(a),!c&&o.insertMode&&a.state.overwrite&&(e.key&&e.key.length==1&&!/\n/.test(e.key)?(c=!0,a.overWriteSelection(e.key)):e.key=="Backspace"&&(c=!0,Ve.commands.cursorCharLeft(a))),c&&(Ve.signal(this.cm,"vim-keypress",s),e.preventDefault(),e.stopPropagation(),this.blockCursor.scheduleRedraw()),this.updateStatus(),!!c}},{eventHandlers:{copy:function(e,n){this.waitForCopy&&(this.waitForCopy=!1,Promise.resolve().then(()=>{var a=this.cm,o=a.state.vim;o&&(o.insertMode?a.setSelection(a.getCursor(),a.getCursor()):a.operation(()=>{a.curOp&&(a.curOp.isVimOp=!0),fa.handleKey(a,"<Esc>","user")}))}))},compositionstart:function(e,n){this.useNextTextInput=!0,Ve.signal(this.cm,"inputEvent",e)},compositionupdate:function(e,n){Ve.signal(this.cm,"inputEvent",e)},compositionend:function(e,n){Ve.signal(this.cm,"inputEvent",e)},keypress:function(e,n){Ve.signal(this.cm,"inputEvent",e),this.lastKeydown=="Dead"&&this.handleKey(e,n)},keydown:function(e,n){Ve.signal(this.cm,"inputEvent",e),this.lastKeydown=e.key,this.lastKeydown=="Unidentified"||this.lastKeydown=="Process"||this.lastKeydown=="Dead"?this.useNextTextInput=!0:(this.useNextTextInput=!1,this.handleKey(e,n))}},provide:()=>[Et.inputHandler.of((e,n,a,o)=>{var _,x;var s=Pl(e);if(!s)return!1;var c=(_=s.state)==null?void 0:_.vim,f=s.state.vimPlugin;if(c&&!c.insertMode&&!((x=s.curOp)!=null&&x.isVimOp)){if(o==="\0\0")return!0;if(Ve.signal(s,"inputEvent",{type:"text",text:o,from:n,to:a}),o.length==1&&f.useNextTextInput){if(c.expectLiteralNext&&e.composing)return f.compositionText=o,!1;if(f.compositionText){var d=f.compositionText;f.compositionText="";var m=e.state.selection.main.head;if(d===e.state.sliceDoc(m-d.length,m)){var b=s.getCursor();s.replaceRange("",s.posFromIndex(m-d.length),b)}}return f.handleKey({key:o,preventDefault:()=>{},stopPropagation:()=>{}}),h3(e),!0}}return!1})],decorations:e=>e.decorations});function h3(e){var n=e.scrollDOM.parentElement;if(n){if(Wy){e.contentDOM.textContent="\0\0",e.contentDOM.dispatchEvent(new CustomEvent("compositionend"));return}var a=e.scrollDOM.nextSibling,o=window.getSelection(),s=o&&{anchorNode:o.anchorNode,anchorOffset:o.anchorOffset,focusNode:o.focusNode,focusOffset:o.focusOffset};e.scrollDOM.remove(),n.insertBefore(e.scrollDOM,a);try{s&&o&&(o.setPosition(s.anchorNode,s.anchorOffset),s.focusNode&&o.extend(s.focusNode,s.focusOffset))}catch(c){console.error(c)}e.focus(),e.contentDOM.dispatchEvent(new CustomEvent("compositionend"))}}var m3=ca.mark({class:"cm-searchMatch"}),Gy=la.define(),g3=os.define({create:()=>!1,update(e,n){for(let a of n.effects)a.is(Gy)&&(e=a.value);return e},provide:e=>Bh.from(e,n=>n?y3:null)});function y3(e){let n=document.createElement("div");n.className="cm-vim-panel";let a=e.cm;return a.state.dialog&&n.appendChild(a.state.dialog),{top:!1,dom:n}}function v3(e){let n=document.createElement("div");n.className="cm-vim-panel";let a=e.cm;return a.state.statusbar=n,a.state.vimPlugin.updateStatus(),{dom:n}}gx=function(e={}){return[Ky,Qy,d3,e.status?Bh.of(v3):g3]},Pl=function(e){return e.cm||null},Sm=function(e){let n=e.state.selection.main;return n.from===0&&n.to===0},zm=function(e,n=!1){let a=e.state.selection.main,o=e.state.doc.length;return n&&a.from===o-1&&a.to===o-1?!0:a.from===o&&a.to===o},ux=function(e){e&&e.dispatch({selection:{anchor:e.state.doc.length,head:e.state.doc.length}})},Ax=function(e){var n;return((n=Pl(e))==null?void 0:n.state.vim)!=null},Fx=function(e){var a;let n=(a=Pl(e))==null?void 0:a.state.vim;return n?!n.mode&&!n.insertMode&&!n.visualMode?!0:n.mode==="normal":!1},Tx=function(e){e&&e.dispatch({selection:{anchor:0,head:e.state.doc.length}})};function Jy(e,n){if(!(n!=null&&n.length))return ca.none;let a=new Pw,o=e.facet(ua),s=n.filter(c=>c.kind==="cell"&&c.cellId===o).toSorted((c,f)=>c.lineNumber-f.lineNumber);for(let c of s)try{let f=e.doc.line(c.lineNumber),d=ca.line({class:"cm-error-line"});a.add(f.from,f.from,d)}catch(f){be.debug("Invalid line number in error decoration",{error:f})}return a.finish()}function Xy(e,n){if(!(n!=null&&n.length))return;let a=e.state.facet(ua),o=n.filter(f=>f.kind==="cell"&&f.cellId===a);if(o.length===0)return;let s=r8(e.state),c=[];for(let f of o)try{let d=e.state.doc.line(f.lineNumber);s.between(d.from,d.to,(m,b)=>{c.push(Z6.of({from:m,to:b}))})}catch(d){be.debug("Invalid line numbers",{error:d})}c.length>0&&e.dispatch({effects:c})}var b3=class{constructor(e,n){let a=n.get();this.decorations=Jy(e.state,a),Xy(e,a),this.unsubscribe=n.sub(o=>{let s=this.decorations.size;this.decorations=Jy(e.state,o),Xy(e,o),s!==this.decorations.size&&e.dispatch({userEvent:"marimo.error-decoration-update"})})}update(e){this.decorations=this.decorations.map(e.changes)}destroy(){this.unsubscribe()}};function w3(e){return Ki.define(n=>new b3(n,e),{decorations:n=>n.decorations})}function _3(e){return[w3(e),Et.theme({".cm-error-line":{backgroundColor:"color-mix(in srgb, var(--red-4) 40%, transparent)"},"&.cm-focused .cm-error-line.cm-activeLine":{backgroundColor:"color-mix(in srgb, var(--red-6) 40%, transparent)"}})]}function x3({cellId:e,hotkeys:n}){let a=[];return a.push(...ww({key:n.getHotkey("cell.run").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.state.facet(st).onRun(),!0)}),{key:n.getHotkey("cell.runAndNewBelow").key,preventDefault:!0,stopPropagation:!0,run:o=>{let s=o.state.facet(st);return s.onRun(),e==="__scratch__"||(o.contentDOM.blur(),s.moveToNextCell({cellId:e,before:!1})),!0}},...ww({key:n.getHotkey("cell.runAndNewAbove").key,preventDefault:!0,stopPropagation:!0,run:o=>{let s=o.state.facet(st);return s.onRun(),e==="__scratch__"||(o.contentDOM.blur(),s.moveToNextCell({cellId:e,before:!0})),!0}}),{key:n.getHotkey("cell.aiCompletion").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.state.facet(st).aiCellCompletion()&&o.contentDOM.focus(),!0)}),e!=="__scratch__"&&a.push({key:n.getHotkey("cell.goToDefinition").key,preventDefault:!0,stopPropagation:!0,run:o=>(Dm(o),!0)},{key:n.getHotkey("cell.delete").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.state.doc.length===0&&o.state.facet(st).deleteCell(),!0)},{key:n.getHotkey("cell.moveUp").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.state.facet(st).moveCell({cellId:e,before:!0}),!0)},{key:n.getHotkey("cell.moveDown").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.state.facet(st).moveCell({cellId:e,before:!1}),!0)},{key:n.getHotkey("cell.moveLeft").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.state.facet(st).moveCell({cellId:e,before:!0,direction:"left"}),!0)},{key:n.getHotkey("cell.moveRight").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.state.facet(st).moveCell({cellId:e,before:!1,direction:"right"}),!0)},{key:"ArrowUp",run:o=>Ww(o.state)?!1:Sm(o)?(o.state.facet(st).moveToNextCell({cellId:e,before:!0,noCreate:!0}),!0):!1},{key:"ArrowDown",run:o=>Ww(o.state)?!1:zm(o)?(o.state.facet(st).moveToNextCell({cellId:e,before:!1,noCreate:!0}),!0):!1},{key:n.getHotkey("cell.focusDown").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.state.facet(st).moveToNextCell({cellId:e,before:!1,noCreate:!0}),!0)},{key:n.getHotkey("cell.focusUp").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.state.facet(st).moveToNextCell({cellId:e,before:!0,noCreate:!0}),!0)},{key:n.getHotkey("cell.sendToBottom").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.state.facet(st).sendToBottom({cellId:e}),!0)},{key:n.getHotkey("cell.sendToTop").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.state.facet(st).sendToTop({cellId:e}),!0)},{key:n.getHotkey("cell.createAbove").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.contentDOM.blur(),o.state.facet(st).createNewCell({cellId:e,before:!0}),!0)},{key:n.getHotkey("cell.createBelow").key,preventDefault:!0,stopPropagation:!0,run:o=>(o.contentDOM.blur(),o.state.facet(st).createNewCell({cellId:e,before:!1}),!0)},{key:n.getHotkey("cell.hideCode").key,preventDefault:!0,stopPropagation:!0,run:o=>{var c;let s=o.state.facet(st).toggleHideCode();return Uw(o),s?(o.contentDOM.blur(),(c=document.getElementById(En.create(e)))==null||c.focus()):o.contentDOM.focus(),!0}},{key:n.getHotkey("cell.splitCell").key,preventDefault:!0,stopPropagation:!0,run:o=>{let s=o.state.facet(st);return s.splitCell({cellId:e}),s.moveToNextCell&&requestAnimationFrame(()=>{o.contentDOM.blur(),s.moveToNextCell({cellId:e,before:!1})}),!0}}),[qu.high(Ja.of(a))]}function k3(e){return[Et.updateListener.of(n=>{if(n.docChanged){let a=n.transactions.some(f=>f.effects.some(d=>d.is(bs))),o=wr(n.view),s=n.view.state.facet(st),c=n.view.state.facet(ua);s.updateCellCode({cellId:c,code:o,formattingChange:a})}}),xS(e)]}var C3=["input","delete","undo","redo"];function S3({docChanged:e,transactions:n,predicate:a=()=>!0,hasFocus:o=!1}){return!e||!a()||n.some(s=>s.effects.some(c=>c.is(bs)))?!1:n.some(s=>s.annotation(Za)===void 0?C3.some(c=>s.isUserEvent(c))||o:!1)}function E3({predicate:e}){return Et.updateListener.of(n=>{S3({docChanged:n.docChanged,transactions:n.transactions,predicate:e,hasFocus:n.view.hasFocus})&&n.view.state.facet(st).onRun()})}jx=function({cellId:e,hotkeys:n,cellActions:a}){return[st.of(a),ua.of(e),x3({cellId:e,hotkeys:n}),k3(n),_3(bS(NT(e),Me))]};const Yy=async e=>{let n=e.state.doc.sliceString(0,e.pos),a=document.activeElement,o=null;if(a!==null){let f=En.findElement(a);f!==null&&(o=En.parse(f.id))}if(o===null)return be.error("Failed to find active cell."),null;let s=await _d.request({document:n,cellId:o});if(!s)return null;let c=df.asHoverTooltip({position:e.pos,message:s,limitToType:"tooltip"});return c&&Me.set(Yu,{documentation:c.html??null}),c?null:df.asCompletionResult(e.pos,s)};function T3(e){return n=>e.predicate(n.state)?e.completion(n):null}var I3=async e=>{let n=e.matchBefore(/:\w*$/);if(!e.explicit&&!n)return null;let a=await L3();return{from:(n==null?void 0:n.from)??e.pos,options:a,validFor:/^[\w:]*$/}},L3=rr(async()=>{let e=await fetch("https://unpkg.com/emojilib@3.0.11/dist/emoji-en-US.json").then(n=>{if(!n.ok)throw Error("Failed to fetch emoji list");return n.json()}).catch(()=>({}));return Object.entries(e).map(([n,a])=>({shortcode:a[0],label:a.map(o=>`:${o}`).join(" "),emoji:n,displayLabel:`${n} ${a[0].replaceAll("_"," ")}`,apply:n,type:"emoji"}))}),O3=async e=>{let n=e.matchBefore(/::[\w-:]*$/);if(!e.explicit&&!n)return null;let a=await A3();return{from:(n==null?void 0:n.from)??e.pos,options:a,validFor:/^[\w-:]*$/}},A3=rr(async()=>{let e=await fetch("https://unpkg.com/lucide-static@0.452.0/tags.json").then(a=>{if(!a.ok)throw Error("Failed to fetch Lucide icon list");return a.json()}).catch(()=>({})),n=a=>`https://cdn.jsdelivr.net/npm/lucide-static@0.452.0/icons/${a}.svg`;return Object.entries(e).map(([a,o])=>({label:`::${a}`,displayLabel:a,type:"lucide-icon",boost:10,apply:`::lucide:${a}::`,detail:o.join(", "),info:()=>{let s=document.createElement("img");return s.src=n(a),s.style.width="24px",s.style.height="24px",s}}))}),R3=e=>{let n=e.matchBefore(/\\\w*$/);return!e.explicit&&!n?null:{from:(n==null?void 0:n.from)??e.pos,options:P3(),validFor:/^[\w\\]*$/}},P3=rr(()=>[["alpha","\u03B1","Greek small letter alpha"],["beta","\u03B2","Greek small letter beta"],["gamma","\u03B3","Greek small letter gamma"],["delta","\u03B4","Greek small letter delta"],["epsilon","\u03B5","Greek small letter epsilon"],["zeta","\u03B6","Greek small letter zeta"],["eta","\u03B7","Greek small letter eta"],["theta","\u03B8","Greek small letter theta"],["iota","\u03B9","Greek small letter iota"],["kappa","\u03BA","Greek small letter kappa"],["lambda","\u03BB","Greek small letter lambda"],["mu","\u03BC","Greek small letter mu"],["nu","\u03BD","Greek small letter nu"],["xi","\u03BE","Greek small letter xi"],["omicron","\u03BF","Greek small letter omicron"],["pi","\u03C0","Greek small letter pi"],["rho","\u03C1","Greek small letter rho"],["sigma","\u03C3","Greek small letter sigma"],["tau","\u03C4","Greek small letter tau"],["upsilon","\u03C5","Greek small letter upsilon"],["phi","\u03C6","Greek small letter phi"],["chi","\u03C7","Greek small letter chi"],["psi","\u03C8","Greek small letter psi"],["omega","\u03C9","Greek small letter omega"],["Gamma","\u0393","Greek capital letter gamma"],["Delta","\u0394","Greek capital letter delta"],["Theta","\u0398","Greek capital letter theta"],["Lambda","\u039B","Greek capital letter lambda"],["Xi","\u039E","Greek capital letter xi"],["Pi","\u03A0","Greek capital letter pi"],["Sigma","\u03A3","Greek capital letter sigma"],["Phi","\u03A6","Greek capital letter phi"],["Psi","\u03A8","Greek capital letter psi"],["Omega","\u03A9","Greek capital letter omega"],["pm","\xB1","Plus-minus sign"],["mp","\u2213","Minus-plus sign"],["times","\xD7","Multiplication sign"],["div","\xF7","Division sign"],["cdot","\u22C5","Dot operator"],["ast","\u2217","Asterisk operator"],["star","\u22C6","Star operator"],["circ","\u2218","Ring operator"],["bullet","\u2022","Bullet"],["cap","\u2229","Intersection"],["cup","\u222A","Union"],["uplus","\u228E","Multiset union"],["sqcap","\u2293","Square cap"],["sqcup","\u2294","Square cup"],["vee","\u2228","Logical or"],["wedge","\u2227","Logical and"],["setminus","\u2216","Set minus"],["oplus","\u2295","Circled plus"],["ominus","\u2296","Circled minus"],["otimes","\u2297","Circled times"],["oslash","\u2298","Circled division slash"],["odot","\u2299","Circled dot operator"],["leq","\u2264","Less than or equal to"],["geq","\u2265","Greater than or equal to"],["equiv","\u2261","Identical to"],["prec","\u227A","Precedes"],["succ","\u227B","Succeeds"],["sim","\u223C","Tilde operator"],["perp","\u22A5","Up tack"],["mid","\u2223","Divides"],["parallel","\u2225","Parallel to"],["subset","\u2282","Subset of"],["supset","\u2283","Superset of"],["subseteq","\u2286","Subset of or equal to"],["supseteq","\u2287","Superset of or equal to"],["cong","\u2245","Approximately equal to"],["approx","\u2248","Almost equal to"],["neq","\u2260","Not equal to"],["ne","\u2260","Not equal to"],["propto","\u221D","Proportional to"],["leftarrow","\u2190","Leftward arrow"],["rightarrow","\u2192","Rightward arrow"],["Leftarrow","\u21D0","Leftward double arrow"],["Rightarrow","\u21D2","Rightward double arrow"],["leftrightarrow","\u2194","Left right arrow"],["Leftrightarrow","\u21D4","Left right double arrow"],["uparrow","\u2191","Upward arrow"],["downarrow","\u2193","Downward arrow"],["Uparrow","\u21D1","Upward double arrow"],["Downarrow","\u21D3","Downward double arrow"],["infty","\u221E","Infinity"],["nabla","\u2207","Nabla"],["partial","\u2202","Partial differential"],["forall","\u2200","For all"],["exists","\u2203","There exists"],["nexists","\u2204","There does not exist"],["emptyset","\u2205","Empty set"],["in","\u2208","Element of"],["notin","\u2209","Not an element of"],["sum","\u2211","N-ary summation"],["prod","\u220F","N-ary product"],["int","\u222B","Integral"],["oint","\u222E","Contour integral"],["sqrt","\u221A","Square root"],["hbar","\u210F","Planck constant over 2pi"],["ldots","\u2026","Horizontal ellipsis"],["cdots","\u22EF","Midline horizontal ellipsis"],["vdots","\u22EE","Vertical ellipsis"],["ddots","\u22F1","Down right diagonal ellipsis"]].map(([e,n,a])=>({label:`\\${e} ${a}`,displayLabel:e,type:"latex-symbol",boost:10,apply:`\\${e}`,info:()=>{let o=document.createElement("div");return o.textContent=`${n} ${a}`,o},detail:n})));const N3=[I3,O3,R3];var M3=100;function lo(e){return!e.state.selection.main.empty}function mf({view:e,selection:n,markup:a}){let o=[],s=!0;for(let c=n.from;c<=n.to;c++)if(!e.state.doc.lineAt(c).text.startsWith(a)){s=!1;break}for(let c=n.from;c<=n.to;){let f=e.state.doc.lineAt(c),d=f.text.startsWith(a);s?o.push({from:f.from,to:f.from+a.length,insert:Ui.of([""])}):(d&&o.push({from:f.from,to:f.from+a.length,insert:Ui.of([""])}),o.push({from:f.from,insert:Ui.of([a])})),c=f.to+1}return o}function gf({view:e,range:n,markupAfter:a,markupBefore:o}){if(n.empty){let b=e.state.wordAt(n.head);b&&(n=b)}let s=e.state.sliceDoc(n.from-o.length,n.from)===o,c=e.state.sliceDoc(n.to,n.to+a.length)===a,f=[];f.push(s?{from:n.from-o.length,to:n.from,insert:Ui.of([""])}:{from:n.from,insert:Ui.of(o.split(`
|
|
98
98
|
`))},c?{from:n.to,to:n.to+a.length,insert:Ui.of([""])}:{from:n.to,insert:Ui.of(a.split(`
|
|
99
|
-
`))});let d=s?-o.length:o.length,m=c?-a.length:a.length;return{changes:f,range:$t.range(n.from+d,n.to+m)}}function D3(e){if(!lo(e))return!1;let n=mf({view:e,selection:e.state.selection.main,markup:"> "});return n.length>0&&e.dispatch(e.state.update({changes:n,scrollIntoView:!0,userEvent:"input"})),e.focus(),!0}function j3(e){if(!lo(e))return!1;let n=e.state.changeByRange(a=>{if(a.empty){let o=e.state.wordAt(a.head);o&&(a=o)}return gf({view:e,range:a,markupBefore:"**",markupAfter:"**"})});return e.dispatch(e.state.update(n,{scrollIntoView:!0,annotations:ss.userEvent.of("input")})),e.focus(),!0}function Zy(e){if(!lo(e))return!1;let n=e.state.changeByRange(a=>{if(a.empty){let s=e.state.wordAt(a.head);s&&(a=s)}let o=e.state.doc.lineAt(a.from).number!==e.state.doc.lineAt(a.to).number;return gf({view:e,range:a,markupBefore:o?"```\n":"`",markupAfter:o?"\n```":"`"})});return e.dispatch(e.state.update(n,{scrollIntoView:!0,annotations:ss.userEvent.of("input")})),e.focus(),!0}function z3(e){let n=e.state.changeByRange(a=>{if(a.empty){let o=e.state.wordAt(a.head);o&&(a=o)}return gf({view:e,range:a,markupBefore:"_",markupAfter:"_"})});return e.dispatch(e.state.update(n,{scrollIntoView:!0,annotations:ss.userEvent.of("input")})),e.focus(),!0}function e1(e,n="http://"){if(!lo(e))return!1;let a=e.state.changeByRange(s=>{let c=e.state.sliceDoc(s.from,s.to);return{changes:[{from:s.from,to:s.to,insert:`[${c}](${n})`}],range:s}});e.dispatch(e.state.update(a,{scrollIntoView:!0,annotations:ss.userEvent.of("input")}));let{to:o}=a.selection.main;try{e.dispatch({selection:$t.create([$t.range(o+3,o+3+n.length),$t.cursor(o+3+n.length)])})}catch{}return e.focus(),!0}n0=async function(e,n){var d;let a=new FileReader,o=await new Promise(m=>{a.onload=()=>m(a.result),a.readAsDataURL(n)}),s;try{if(o.startsWith("data:")){let m=o.split(",")[1],b=prompt("We can save your image as a file. Enter a filename.",n.name),_=n.type.split("/")[1];if(b===null){let x=Math.round(o.length/1024);if(x>M3){Tl({title:"Content too large",description:`The content size is ${x} KB, which is too large to paste directly into the document.`});return}}else{b.trim()===""?b=n.name:b.endsWith(`.${_}`)||(b=`${b}.${_}`);let x=Me.get(hs),S=x?Yw.dirname(x):null,E=S?`${S}/public`:"public",L=await br().sendCreateFileOrFolder({path:E,type:"file",name:b,contents:m});L.success?(s=(d=L.info)==null?void 0:d.path,s&&S&&s.startsWith(S)&&(s=Yw.rest(s,S)),Tl({title:"Image uploaded successfully",description:`We've uploaded your image at ${s}`})):Tl({title:"Failed to upload image. Using raw base64 string."})}}}catch{Tl({title:"Failed to upload image. Using raw base64 string."})}let c=e.state.changeByRange(m=>{let b=e.state.sliceDoc(m.from,m.to);return b.trim()===""&&(b="alt"),{changes:[{from:m.from,to:m.to,insert:``}],range:m}});e.dispatch(e.state.update(c,{scrollIntoView:!0,annotations:ss.userEvent.of("input")}));let{to:f}=c.selection.main;try{e.dispatch({selection:$t.create([$t.range(f+4,f+4+o.length),$t.cursor(f+4+o.length)])})}catch{}return e.focus(),!0},Wm=async function(e,n){let a=await n.text(),o=e.state.changeByRange(s=>({changes:[{from:s.from,to:s.from,insert:a}],range:s}));return e.dispatch(e.state.update(o,{scrollIntoView:!0,annotations:ss.userEvent.of("input")})),e.focus(),!0};function q3(e){if(!lo(e))return!1;let{changes:n}=e.state.changeByRange(a=>({range:a,changes:mf({view:e,selection:a,markup:e.state.sliceDoc(a.from,a.to+2).startsWith("* ")?"* ":"- "})}));return n.length>0&&e.dispatch(e.state.update({changes:n,scrollIntoView:!0,userEvent:"input"})),e.focus(),!0}function F3(e){if(!lo(e))return!1;let{changes:n}=e.state.changeByRange(a=>({range:a,changes:mf({view:e,selection:a,markup:"1. "})}));return n.length>0&&e.dispatch(e.state.update({changes:n,scrollIntoView:!0,userEvent:"input"})),e.focus(),!0}function B3(e){return[qu.highest(Ja.of([{key:e.getHotkey("markdown.bold").key,stopPropagation:!0,run:j3},{key:e.getHotkey("markdown.italic").key,stopPropagation:!0,run:z3},{key:e.getHotkey("markdown.link").key,stopPropagation:!0,run:n=>e1(n)},{key:e.getHotkey("markdown.orderedList").key,run:F3},{key:e.getHotkey("markdown.unorderedList").key,run:q3},{key:e.getHotkey("markdown.blockquote").key,run:D3},{key:e.getHotkey("markdown.code").key,run:Zy},{key:"`",run:Zy}])),Et.domEventHandlers({paste:(n,a)=>{var s;if(a.state.selection.main.empty)return!1;let o=(s=n.clipboardData)==null?void 0:s.getData("text/plain");o!=null&&o.startsWith("http")&&(n.preventDefault(),e1(a,o))}}),Et.domEventHandlers({paste:(n,a)=>{var s;let o=(s=n.clipboardData)==null?void 0:s.files[0];if(!o)return!1;if(o.type.startsWith("image/"))return n.preventDefault(),n0(a,o),!0;if(o.type.startsWith("text/"))return n.preventDefault(),Wm(a,o),!0}})]}function V3(e,n,a=3,o=""){return Object.values(e).flatMap(s=>n.has(s.name)?[]:{label:`${o}${s.name}`,displayLabel:s.name,detail:s.dataType??"",boost:a,type:"variable",apply:`${o}${s.name}`,section:"Variable",info:()=>Am(s)})}Am=function(e){let n=document.createElement("div");n.classList.add("mo-cm-tooltip","docs-documentation","min-w-[200px]","flex","flex-col","gap-1","p-2");let a=document.createElement("div");a.classList.add("flex","items-center","gap-2");let o=document.createElement("span");if(o.classList.add("font-bold","text-base"),o.textContent=e.name,a.append(o),e.dataType){let s=document.createElement("span");s.classList.add("text-xs","px-1.5","py-0.5","rounded-full","bg-purple-100","text-purple-800","dark:bg-purple-900","dark:text-purple-200"),s.textContent=e.dataType,a.append(s)}if(n.append(a),e.value){let s=document.createElement("div");s.classList.add("flex","flex-col","gap-1");let c=document.createElement("div");c.classList.add("text-xs","text-muted-foreground"),c.textContent="Value:",s.append(c);let f=document.createElement("div");f.classList.add("text-xs","font-mono","bg-muted","p-2","rounded","overflow-auto","max-h-40"),f.textContent=e.value,s.append(f),n.append(s)}return n};var co="Python",yf=123,t1=125,vf=1,H3={mark:`${co}Mark`,resolve:co};function $3(e,n){return{defineNodes:[{name:co,style:zu.emphasis},{name:`${co}Mark`,style:zu.processingInstruction}],parseInline:[{name:co,parse(a,o,s){return!n()||o!==yf&&o!==t1||o===yf&&a.slice(s-1,s)==="{"?-1:a.addDelimiter(H3,s,s+vf,o===yf,o===t1)}}],wrap:zw(a=>{if(!n()||a.type.name!==co)return null;let o=a.from+vf,s=a.to-vf;return o>=s||o<0||s<0?null:{parser:e,overlay:[{from:o,to:s}],extensions:[Xw().support]}})}}const W3=e=>{let n=e.state.doc.sliceString(0,e.pos),a=n.lastIndexOf("{");if(n.at(a-1)==="{"||a===-1||n.indexOf("}",a)>a)return null;let o=e.matchBefore(/\w*$/);if(!o)return null;let s=V3(Me.get(Xa),new Set,99);return{from:o.from,options:s,validFor:/^\w*$/}};var Yl="InlineMathDollar",uo="InlineMathBracket",Zl="BlockMathDollar",fo="BlockMathBracket",ci={[Yl]:1,[uo]:3,[Zl]:2,[fo]:3},pt={DOLLAR:36,BACKSLASH:92,OPEN_PAREN:40,CLOSE_PAREN:41,OPEN_BRACKET:91,CLOSE_BRACKET:93},po=Object.keys(ci).reduce((e,n)=>(e[n]={mark:`${n}Mark`,resolve:n},e),{});function U3(e){let n=[];return Object.keys(ci).forEach(a=>{n.push({name:a,style:zu.emphasis},{name:`${a}Mark`,style:zu.processingInstruction})}),{defineNodes:n,parseInline:[{name:Zl,parse(a,o,s){return o!==pt.DOLLAR||a.char(s+1)!==pt.DOLLAR?-1:a.addDelimiter(po[Zl],s,s+ci[Zl],!0,!0)}},{name:Yl,parse(a,o,s){return o!==pt.DOLLAR||a.char(s+1)===pt.DOLLAR?-1:a.addDelimiter(po[Yl],s,s+ci[Yl],!0,!0)}},{name:uo,before:"Escape",parse(a,o,s){return o!==pt.BACKSLASH||a.char(s+1)!==pt.BACKSLASH||![pt.OPEN_PAREN,pt.CLOSE_PAREN].includes(a.char(s+2))?-1:a.addDelimiter(po[uo],s,s+ci[uo],a.char(s+2)===pt.OPEN_PAREN,a.char(s+2)===pt.CLOSE_PAREN)}},{name:fo,before:"Escape",parse(a,o,s){return o!==pt.BACKSLASH||a.char(s+1)!==pt.BACKSLASH||![pt.OPEN_BRACKET,pt.CLOSE_BRACKET].includes(a.char(s+2))?-1:a.addDelimiter(po[fo],s,s+ci[fo],a.char(s+2)===pt.OPEN_BRACKET,a.char(s+2)===pt.CLOSE_BRACKET)}},{name:uo,before:"Escape",parse(a,o,s){return o!==pt.BACKSLASH||![pt.OPEN_PAREN,pt.CLOSE_PAREN].includes(a.char(s+1))?-1:a.addDelimiter(po[uo],s,s+2,a.char(s+1)===pt.OPEN_PAREN,a.char(s+1)===pt.CLOSE_PAREN)}},{name:fo,before:"Escape",parse(a,o,s){return o!==pt.BACKSLASH||![pt.OPEN_BRACKET,pt.CLOSE_BRACKET].includes(a.char(s+1))?-1:a.addDelimiter(po[fo],s,s+2,a.char(s+1)===pt.OPEN_BRACKET,a.char(s+1)===pt.CLOSE_BRACKET)}}],wrap:zw(a=>{let o=ci[a.type.name];if(o){let s=a.from+o,c=a.to-o;return s>=c||s<0||c<0?null:{parser:e,overlay:[{from:s,to:c}]}}return null})}}Xu=la.define(),Vu=la.define(),Nr=os.define({create:()=>({}),update:(e,n)=>{for(let a of n.effects){if(a.is(Xu))return a.value;if(a.is(Vu))return{...e,...a.value}}return e}}),rx=!0,rd=class{constructor(){ve(this,"parser",new nd);ve(this,"type","markdown");ve(this,"defaultCode",this.parser.defaultCode);ve(this,"defaultMetadata",this.parser.defaultMetadata)}static fromMarkdown(e){return nd.fromMarkdown(e)}transformIn(e){let n=this.parser.transformIn(e);return[n.code,n.offset,n.metadata]}transformOut(e,n){let a=this.parser.transformOut(e,n);return[a.code,a.offset]}isSupported(e){return this.parser.isSupported(e)}getExtension(e,n,a,o){let s=Jw().language.data,c,f=()=>{var m;if(!c)return!0;let d=c==null?void 0:c.state.field(Nr);return d===void 0?!1:((m=d.quotePrefix)==null?void 0:m.includes("f"))??!1};return[Ki.define(d=>(c=d,{})),Jw({base:X8,codeLanguages:QC,extensions:[U3(jw.define(tI).parser),$3(Gh.parser,f)]}),B3(a),N3.map(d=>s.of({autocomplete:d})),Xw().language.data.of({autocomplete:T3({completion:Yy,predicate:f})}),Bu({defaultKeymap:!1,activateOnTyping:!0}),E3({predicate:()=>!f()})]}};function ec(){var e;return((e=Me.get(jl))==null?void 0:e.rootUri)??"file:///"}function tc(){var n;let e=(n=Me.get(jl))==null?void 0:n.rootUri;return e?[{uri:e,name:"marimo"}]:[]}function n1(){var e;return((e=Me.get(jl))==null?void 0:e.documentUri)??"file:///__marimo_notebook__.py"}function K3(e){return Rr.filter(e,n=>n!==!1&&n!==null)}function r1(e){let n=e.map(K3);return Object.assign({},...n)}var Q3=class{constructor(e){ve(this,"clients",[]);this.clients=e,this.documentUri=n1()}onNotification(e){let n=[];for(let a of this.clients)n.push(a.onNotification(e));return()=>{for(let a of n)a();return!0}}get clientCapabilities(){return r1(this.clients.map(e=>{if(e.clientCapabilities)return typeof e.clientCapabilities=="function"?e.clientCapabilities({}):e.clientCapabilities}).filter(e=>e!=null))}get ready(){return this.clients.some(e=>e.ready)}set ready(e){this.clients.forEach(n=>{n.ready=e})}get capabilities(){return r1(this.clients.map(e=>e.capabilities).filter(e=>e!==null))}set capabilities(e){this.clients.forEach(n=>{n.capabilities=e})}get initializePromise(){return this.clients[0].initializePromise}set initializePromise(e){this.clients.forEach(n=>{n.initializePromise=e})}firstWithCapability(e){return this.clients.find(n=>{var a;return(a=n.capabilities)==null?void 0:a[e]})}clientsWithCapability(e){return this.clients.filter(n=>{var a;return(a=n.capabilities)==null?void 0:a[e]})}async initialize(){await Promise.all(this.clients.map(e=>e.initialize()))}async close(){await Promise.all(this.clients.map(e=>e.close()))}async textDocumentDidChange(e){return await Promise.all(this.clients.map(n=>n.textDocumentDidChange(e))),e}async completionItemResolve(e){let n=this.firstWithCapability("completionProvider");return n?n.completionItemResolve(e):e}async textDocumentCodeAction(e){let n=this.firstWithCapability("codeActionProvider");return n?n.textDocumentCodeAction(e):null}async textDocumentRename(e){let n=this.firstWithCapability("renameProvider");return n?n.textDocumentRename(e):null}async textDocumentPrepareRename(e){let n=this.firstWithCapability("renameProvider");return n?n.textDocumentPrepareRename(e):null}async textDocumentSignatureHelp(e){let n=this.firstWithCapability("signatureHelpProvider");return n?n.textDocumentSignatureHelp(e):null}async textDocumentCompletion(e){let n=this.clientsWithCapability("completionProvider");return G3(await Promise.allSettled(n.map(a=>a.textDocumentCompletion(e))))}async textDocumentDefinition(e){let n=this.firstWithCapability("definitionProvider");return n?n.textDocumentDefinition(e):null}async textDocumentDidOpen(e){return await Promise.all(this.clients.map(n=>n.textDocumentDidOpen(e))),e}async textDocumentHover(e){var n;for(let a of this.clients){if(!((n=a.capabilities)!=null&&n.hoverProvider))continue;let o=await a.textDocumentHover(e);if(o)return o}return{contents:[]}}};function G3(e){let n=[],a=!1;for(let o of e)if(o.status==="fulfilled"){let s=o.value;if(s==null)continue;Array.isArray(s)&&n.push(...s),"items"in s&&(n.push(...s.items),a||(a=s.isIncomplete))}return{items:n,isIncomplete:a}}A_=function(e){return[...J3(e),e].join(`
|
|
99
|
+
`))});let d=s?-o.length:o.length,m=c?-a.length:a.length;return{changes:f,range:$t.range(n.from+d,n.to+m)}}function D3(e){if(!lo(e))return!1;let n=mf({view:e,selection:e.state.selection.main,markup:"> "});return n.length>0&&e.dispatch(e.state.update({changes:n,scrollIntoView:!0,userEvent:"input"})),e.focus(),!0}function j3(e){if(!lo(e))return!1;let n=e.state.changeByRange(a=>{if(a.empty){let o=e.state.wordAt(a.head);o&&(a=o)}return gf({view:e,range:a,markupBefore:"**",markupAfter:"**"})});return e.dispatch(e.state.update(n,{scrollIntoView:!0,annotations:ss.userEvent.of("input")})),e.focus(),!0}function Zy(e){if(!lo(e))return!1;let n=e.state.changeByRange(a=>{if(a.empty){let s=e.state.wordAt(a.head);s&&(a=s)}let o=e.state.doc.lineAt(a.from).number!==e.state.doc.lineAt(a.to).number;return gf({view:e,range:a,markupBefore:o?"```\n":"`",markupAfter:o?"\n```":"`"})});return e.dispatch(e.state.update(n,{scrollIntoView:!0,annotations:ss.userEvent.of("input")})),e.focus(),!0}function z3(e){let n=e.state.changeByRange(a=>{if(a.empty){let o=e.state.wordAt(a.head);o&&(a=o)}return gf({view:e,range:a,markupBefore:"_",markupAfter:"_"})});return e.dispatch(e.state.update(n,{scrollIntoView:!0,annotations:ss.userEvent.of("input")})),e.focus(),!0}function e1(e,n="http://"){if(!lo(e))return!1;let a=e.state.changeByRange(s=>{let c=e.state.sliceDoc(s.from,s.to);return{changes:[{from:s.from,to:s.to,insert:`[${c}](${n})`}],range:s}});e.dispatch(e.state.update(a,{scrollIntoView:!0,annotations:ss.userEvent.of("input")}));let{to:o}=a.selection.main;try{e.dispatch({selection:$t.create([$t.range(o+3,o+3+n.length),$t.cursor(o+3+n.length)])})}catch{}return e.focus(),!0}n0=async function(e,n){var d;let a=new FileReader,o=await new Promise(m=>{a.onload=()=>m(a.result),a.readAsDataURL(n)}),s;try{if(o.startsWith("data:")){let m=o.split(",")[1],b=prompt("We can save your image as a file. Enter a filename.",n.name),_=n.type.split("/")[1];if(b===null){let x=Math.round(o.length/1024);if(x>M3){Tl({title:"Content too large",description:`The content size is ${x} KB, which is too large to paste directly into the document.`});return}}else{b.trim()===""?b=n.name:b.endsWith(`.${_}`)||(b=`${b}.${_}`);let x=Me.get(hs),S=x?Yw.dirname(x):null,E=S?`${S}/public`:"public",L=await br().sendCreateFileOrFolder({path:E,type:"file",name:b,contents:m});L.success?(s=(d=L.info)==null?void 0:d.path,s&&S&&s.startsWith(S)&&(s=Yw.rest(s,S).replaceAll("\\","/")),Tl({title:"Image uploaded successfully",description:`We've uploaded your image at ${s}`})):Tl({title:"Failed to upload image. Using raw base64 string."})}}}catch{Tl({title:"Failed to upload image. Using raw base64 string."})}let c=e.state.changeByRange(m=>{let b=e.state.sliceDoc(m.from,m.to);return b.trim()===""&&(b="alt"),{changes:[{from:m.from,to:m.to,insert:``}],range:m}});e.dispatch(e.state.update(c,{scrollIntoView:!0,annotations:ss.userEvent.of("input")}));let{to:f}=c.selection.main;try{e.dispatch({selection:$t.create([$t.range(f+4,f+4+o.length),$t.cursor(f+4+o.length)])})}catch{}return e.focus(),!0},Wm=async function(e,n){let a=await n.text(),o=e.state.changeByRange(s=>({changes:[{from:s.from,to:s.from,insert:a}],range:s}));return e.dispatch(e.state.update(o,{scrollIntoView:!0,annotations:ss.userEvent.of("input")})),e.focus(),!0};function q3(e){if(!lo(e))return!1;let{changes:n}=e.state.changeByRange(a=>({range:a,changes:mf({view:e,selection:a,markup:e.state.sliceDoc(a.from,a.to+2).startsWith("* ")?"* ":"- "})}));return n.length>0&&e.dispatch(e.state.update({changes:n,scrollIntoView:!0,userEvent:"input"})),e.focus(),!0}function F3(e){if(!lo(e))return!1;let{changes:n}=e.state.changeByRange(a=>({range:a,changes:mf({view:e,selection:a,markup:"1. "})}));return n.length>0&&e.dispatch(e.state.update({changes:n,scrollIntoView:!0,userEvent:"input"})),e.focus(),!0}function B3(e){return[qu.highest(Ja.of([{key:e.getHotkey("markdown.bold").key,stopPropagation:!0,run:j3},{key:e.getHotkey("markdown.italic").key,stopPropagation:!0,run:z3},{key:e.getHotkey("markdown.link").key,stopPropagation:!0,run:n=>e1(n)},{key:e.getHotkey("markdown.orderedList").key,run:F3},{key:e.getHotkey("markdown.unorderedList").key,run:q3},{key:e.getHotkey("markdown.blockquote").key,run:D3},{key:e.getHotkey("markdown.code").key,run:Zy},{key:"`",run:Zy}])),Et.domEventHandlers({paste:(n,a)=>{var s;if(a.state.selection.main.empty)return!1;let o=(s=n.clipboardData)==null?void 0:s.getData("text/plain");o!=null&&o.startsWith("http")&&(n.preventDefault(),e1(a,o))}}),Et.domEventHandlers({paste:(n,a)=>{var s;let o=(s=n.clipboardData)==null?void 0:s.files[0];if(!o)return!1;if(o.type.startsWith("image/"))return n.preventDefault(),n0(a,o),!0;if(o.type.startsWith("text/"))return n.preventDefault(),Wm(a,o),!0}})]}function V3(e,n,a=3,o=""){return Object.values(e).flatMap(s=>n.has(s.name)?[]:{label:`${o}${s.name}`,displayLabel:s.name,detail:s.dataType??"",boost:a,type:"variable",apply:`${o}${s.name}`,section:"Variable",info:()=>Am(s)})}Am=function(e){let n=document.createElement("div");n.classList.add("mo-cm-tooltip","docs-documentation","min-w-[200px]","flex","flex-col","gap-1","p-2");let a=document.createElement("div");a.classList.add("flex","items-center","gap-2");let o=document.createElement("span");if(o.classList.add("font-bold","text-base"),o.textContent=e.name,a.append(o),e.dataType){let s=document.createElement("span");s.classList.add("text-xs","px-1.5","py-0.5","rounded-full","bg-purple-100","text-purple-800","dark:bg-purple-900","dark:text-purple-200"),s.textContent=e.dataType,a.append(s)}if(n.append(a),e.value){let s=document.createElement("div");s.classList.add("flex","flex-col","gap-1");let c=document.createElement("div");c.classList.add("text-xs","text-muted-foreground"),c.textContent="Value:",s.append(c);let f=document.createElement("div");f.classList.add("text-xs","font-mono","bg-muted","p-2","rounded","overflow-auto","max-h-40"),f.textContent=e.value,s.append(f),n.append(s)}return n};var co="Python",yf=123,t1=125,vf=1,H3={mark:`${co}Mark`,resolve:co};function $3(e,n){return{defineNodes:[{name:co,style:zu.emphasis},{name:`${co}Mark`,style:zu.processingInstruction}],parseInline:[{name:co,parse(a,o,s){return!n()||o!==yf&&o!==t1||o===yf&&a.slice(s-1,s)==="{"?-1:a.addDelimiter(H3,s,s+vf,o===yf,o===t1)}}],wrap:zw(a=>{if(!n()||a.type.name!==co)return null;let o=a.from+vf,s=a.to-vf;return o>=s||o<0||s<0?null:{parser:e,overlay:[{from:o,to:s}],extensions:[Xw().support]}})}}const W3=e=>{let n=e.state.doc.sliceString(0,e.pos),a=n.lastIndexOf("{");if(n.at(a-1)==="{"||a===-1||n.indexOf("}",a)>a)return null;let o=e.matchBefore(/\w*$/);if(!o)return null;let s=V3(Me.get(Xa),new Set,99);return{from:o.from,options:s,validFor:/^\w*$/}};var Yl="InlineMathDollar",uo="InlineMathBracket",Zl="BlockMathDollar",fo="BlockMathBracket",ci={[Yl]:1,[uo]:3,[Zl]:2,[fo]:3},pt={DOLLAR:36,BACKSLASH:92,OPEN_PAREN:40,CLOSE_PAREN:41,OPEN_BRACKET:91,CLOSE_BRACKET:93},po=Object.keys(ci).reduce((e,n)=>(e[n]={mark:`${n}Mark`,resolve:n},e),{});function U3(e){let n=[];return Object.keys(ci).forEach(a=>{n.push({name:a,style:zu.emphasis},{name:`${a}Mark`,style:zu.processingInstruction})}),{defineNodes:n,parseInline:[{name:Zl,parse(a,o,s){return o!==pt.DOLLAR||a.char(s+1)!==pt.DOLLAR?-1:a.addDelimiter(po[Zl],s,s+ci[Zl],!0,!0)}},{name:Yl,parse(a,o,s){return o!==pt.DOLLAR||a.char(s+1)===pt.DOLLAR?-1:a.addDelimiter(po[Yl],s,s+ci[Yl],!0,!0)}},{name:uo,before:"Escape",parse(a,o,s){return o!==pt.BACKSLASH||a.char(s+1)!==pt.BACKSLASH||![pt.OPEN_PAREN,pt.CLOSE_PAREN].includes(a.char(s+2))?-1:a.addDelimiter(po[uo],s,s+ci[uo],a.char(s+2)===pt.OPEN_PAREN,a.char(s+2)===pt.CLOSE_PAREN)}},{name:fo,before:"Escape",parse(a,o,s){return o!==pt.BACKSLASH||a.char(s+1)!==pt.BACKSLASH||![pt.OPEN_BRACKET,pt.CLOSE_BRACKET].includes(a.char(s+2))?-1:a.addDelimiter(po[fo],s,s+ci[fo],a.char(s+2)===pt.OPEN_BRACKET,a.char(s+2)===pt.CLOSE_BRACKET)}},{name:uo,before:"Escape",parse(a,o,s){return o!==pt.BACKSLASH||![pt.OPEN_PAREN,pt.CLOSE_PAREN].includes(a.char(s+1))?-1:a.addDelimiter(po[uo],s,s+2,a.char(s+1)===pt.OPEN_PAREN,a.char(s+1)===pt.CLOSE_PAREN)}},{name:fo,before:"Escape",parse(a,o,s){return o!==pt.BACKSLASH||![pt.OPEN_BRACKET,pt.CLOSE_BRACKET].includes(a.char(s+1))?-1:a.addDelimiter(po[fo],s,s+2,a.char(s+1)===pt.OPEN_BRACKET,a.char(s+1)===pt.CLOSE_BRACKET)}}],wrap:zw(a=>{let o=ci[a.type.name];if(o){let s=a.from+o,c=a.to-o;return s>=c||s<0||c<0?null:{parser:e,overlay:[{from:s,to:c}]}}return null})}}Xu=la.define(),Vu=la.define(),Nr=os.define({create:()=>({}),update:(e,n)=>{for(let a of n.effects){if(a.is(Xu))return a.value;if(a.is(Vu))return{...e,...a.value}}return e}}),rx=!0,rd=class{constructor(){ve(this,"parser",new nd);ve(this,"type","markdown");ve(this,"defaultCode",this.parser.defaultCode);ve(this,"defaultMetadata",this.parser.defaultMetadata)}static fromMarkdown(e){return nd.fromMarkdown(e)}transformIn(e){let n=this.parser.transformIn(e);return[n.code,n.offset,n.metadata]}transformOut(e,n){let a=this.parser.transformOut(e,n);return[a.code,a.offset]}isSupported(e){return this.parser.isSupported(e)}getExtension(e,n,a,o){let s=Jw().language.data,c,f=()=>{var m;if(!c)return!0;let d=c==null?void 0:c.state.field(Nr);return d===void 0?!1:((m=d.quotePrefix)==null?void 0:m.includes("f"))??!1};return[Ki.define(d=>(c=d,{})),Jw({base:X8,codeLanguages:QC,extensions:[U3(jw.define(tI).parser),$3(Gh.parser,f)]}),B3(a),N3.map(d=>s.of({autocomplete:d})),Xw().language.data.of({autocomplete:T3({completion:Yy,predicate:f})}),Bu({defaultKeymap:!1,activateOnTyping:!0}),E3({predicate:()=>!f()})]}};function ec(){var e;return((e=Me.get(jl))==null?void 0:e.rootUri)??"file:///"}function tc(){var n;let e=(n=Me.get(jl))==null?void 0:n.rootUri;return e?[{uri:e,name:"marimo"}]:[]}function n1(){var e;return((e=Me.get(jl))==null?void 0:e.documentUri)??"file:///__marimo_notebook__.py"}function K3(e){return Rr.filter(e,n=>n!==!1&&n!==null)}function r1(e){let n=e.map(K3);return Object.assign({},...n)}var Q3=class{constructor(e){ve(this,"clients",[]);this.clients=e,this.documentUri=n1()}onNotification(e){let n=[];for(let a of this.clients)n.push(a.onNotification(e));return()=>{for(let a of n)a();return!0}}get clientCapabilities(){return r1(this.clients.map(e=>{if(e.clientCapabilities)return typeof e.clientCapabilities=="function"?e.clientCapabilities({}):e.clientCapabilities}).filter(e=>e!=null))}get ready(){return this.clients.some(e=>e.ready)}set ready(e){this.clients.forEach(n=>{n.ready=e})}get capabilities(){return r1(this.clients.map(e=>e.capabilities).filter(e=>e!==null))}set capabilities(e){this.clients.forEach(n=>{n.capabilities=e})}get initializePromise(){return this.clients[0].initializePromise}set initializePromise(e){this.clients.forEach(n=>{n.initializePromise=e})}firstWithCapability(e){return this.clients.find(n=>{var a;return(a=n.capabilities)==null?void 0:a[e]})}clientsWithCapability(e){return this.clients.filter(n=>{var a;return(a=n.capabilities)==null?void 0:a[e]})}async initialize(){await Promise.all(this.clients.map(e=>e.initialize()))}async close(){await Promise.all(this.clients.map(e=>e.close()))}async textDocumentDidChange(e){return await Promise.all(this.clients.map(n=>n.textDocumentDidChange(e))),e}async completionItemResolve(e){let n=this.firstWithCapability("completionProvider");return n?n.completionItemResolve(e):e}async textDocumentCodeAction(e){let n=this.firstWithCapability("codeActionProvider");return n?n.textDocumentCodeAction(e):null}async textDocumentRename(e){let n=this.firstWithCapability("renameProvider");return n?n.textDocumentRename(e):null}async textDocumentPrepareRename(e){let n=this.firstWithCapability("renameProvider");return n?n.textDocumentPrepareRename(e):null}async textDocumentSignatureHelp(e){let n=this.firstWithCapability("signatureHelpProvider");return n?n.textDocumentSignatureHelp(e):null}async textDocumentCompletion(e){let n=this.clientsWithCapability("completionProvider");return G3(await Promise.allSettled(n.map(a=>a.textDocumentCompletion(e))))}async textDocumentDefinition(e){let n=this.firstWithCapability("definitionProvider");return n?n.textDocumentDefinition(e):null}async textDocumentDidOpen(e){return await Promise.all(this.clients.map(n=>n.textDocumentDidOpen(e))),e}async textDocumentHover(e){var n;for(let a of this.clients){if(!((n=a.capabilities)!=null&&n.hoverProvider))continue;let o=await a.textDocumentHover(e);if(o)return o}return{contents:[]}}};function G3(e){let n=[],a=!1;for(let o of e)if(o.status==="fulfilled"){let s=o.value;if(s==null)continue;Array.isArray(s)&&n.push(...s),"items"in s&&(n.push(...s.items),a||(a=s.isIncomplete))}return{items:n,isIncomplete:a}}A_=function(e){return[...J3(e),e].join(`
|
|
100
100
|
`)};function J3(e){return a0().map(n=>{let a=wr(n);return a===e?null:a}).filter(Boolean).toSorted((n,a)=>n.startsWith("import")&&!a.startsWith("import")?-1:!n.startsWith("import")&&a.startsWith("import")?1:0)}var X3=Te(e=>{let n=e(Ye);return Rr.fromEntries(n.cellIds.inOrderIds.map(a=>{let o=n.cellHandles[a];return[a,o!=null&&o.current?wr(o.current.editorView):""]}))}),Y3=Te(e=>e(Ye).cellIds.inOrderIds),Z3=Te(e=>tE(e(Y3),e(Xa)));const eE=Te(e=>({cellIds:e(Z3),codes:e(X3)}));function tE(e,n){var m,b;let a=new Map;e.forEach(_=>a.set(_,[]));let o=new Set(e),s=new Set(e);for(let{declaredBy:_,usedBy:x}of Object.values(n))for(let S of _){o.delete(S);for(let E of x)s.delete(E),E!==S&&((m=a.get(S))==null||m.push(E))}let c=new Map;e.forEach(_=>c.set(_,0)),a.forEach(_=>{_.forEach(x=>{c.set(x,(c.get(x)||0)+1)})});let f=[];c.forEach((_,x)=>{_===0&&f.push(x)});let d=[];for(;f.length>0;){let _=f.shift();if(!_)break;d.push(_),(b=a.get(_))==null||b.forEach(x=>{c.set(x,(c.get(x)||0)-1),c.get(x)===0&&f.push(x)})}return[...d.filter(_=>!o.has(_)),...o]}function nE(e,n){let a=new Map,o=0;e.forEach(f=>{a.set(f,o),o+=n[f].split(`
|
|
101
101
|
`).length});function s(f){return a.has(f)||be.warn("[lsp] no cell line offsets for",f),a.get(f)??0}let c=e.map(f=>n[f]).join(`
|
|
102
102
|
`);return{cellIds:e,mergedText:c,transformRange:(f,d)=>a1(f,s(d)),reverseRange:(f,d)=>a1(f,-s(d)),isInRange:(f,d)=>{let m=n[d].split(`
|
|
@@ -109,7 +109,7 @@ mark line col
|
|
|
109
109
|
`),isFenced:m}),o=[])};for(let m of n){let b=m.match(/^[\t ]*(`{3,}|~{3,})/);if(b){let _=b[1],x=_[0],S=_.length;if(!s){d(!1),s=!0,c=x,f=S,o.push(m);continue}if(x===c&&S>=f){o.push(m),d(!0),s=!1,c="",f=0;continue}}o.push(m)}return d(s),a}function dE(e){let n=[],a="",o=!1,s="",c=0;for(;c<e.length;){if(e[c]==="`"){let f=c;for(;f<e.length&&e[f]==="`";)f+=1;let d=e.slice(c,f);if(o&&d===s){a+=d,n.push({text:a,isInlineCode:!0}),a="",o=!1,s="",c=f;continue}if(!o){a&&(a=(n.push({text:a,isInlineCode:!1}),"")),o=!0,s=d,a+=d,c=f;continue}}a+=e[c],c+=1}return a&&n.push({text:a,isInlineCode:o}),n}function fE(e){let n=pE(e);return n=n.replaceAll(iE,(a,o)=>bf(o)),n=n.replaceAll(oE,(a,o)=>rc(o)),n=n.replaceAll(sE,(a,o)=>bf(o)),n=n.replaceAll(lE,(a,o)=>rc(o)),n}function ho(e){var n;return((n=e.match(/^[\t ]*/))==null?void 0:n[0].replaceAll(" "," ").length)??0}function pE(e){var s;let n=e.split(`
|
|
110
110
|
`);if(n.length===0)return e;let a=[],o=0;for(;o<n.length;){let c=n[o],f=c.match(/^[\t ]*\.\.\s+math::(.*)$/);if(!f){a.push(c),o+=1;continue}let d=((s=f[1])==null?void 0:s.trim())??"",m=ho(c);o+=1;let b=[],_=d.includes("\\begin");if(d)b.push(d);else{for(;o<n.length;){let L=n[o];if(!L.trim()){o+=1;continue}if(!(ho(L)>m&&L.trim().startsWith(":")))break;o+=1}if(o<n.length){let L=n[o];_=!!L.trim()&&ho(L)<=m&&L.trimStart().startsWith("\\")}}if(_)for(;o<n.length&&n[o].trim();)b.push(n[o]),o+=1;else for(;o<n.length;){let L=n[o];if(!L.trim()){b.push(""),o+=1;continue}if(ho(L)<=m)break;b.push(L),o+=1}let x=b.filter(L=>!!L.trim());if(x.length===0){a.push(c);continue}let S=Math.min(...x.map(L=>ho(L))),E=b.map(L=>{if(!L)return"";let P=Math.min(S,ho(L));return L.slice(P)}).join(`
|
|
111
111
|
`).trim();a.push(bf(E))}return a.join(`
|
|
112
|
-
`)}function rc(e){return`<marimo-tex class="arithmatex">||(${e.trim()}||)</marimo-tex>`}function bf(e){return`<marimo-tex class="arithmatex">||[${e.trim()}||]</marimo-tex>`}const cn={PREFIX:"file:///",of(e){return`${this.PREFIX}${e}`},is(e){return e.startsWith(this.PREFIX)},parse(e){return rn(this.is(e),`Invalid cell document URI: ${e}`),e.slice(this.PREFIX.length)}};function l1(e){return"notify"in e}function hE(e){return e.startsWith("_")&&!e.startsWith("__")}var mE=class{constructor(e){ve(this,"documentVersion",0);ve(this,"lastSnapshot",null);this.getNotebookCode=e}snapshot(){var a;let e=this.getLens(),n=((a=this.lastSnapshot)==null?void 0:a.mergedText)!==e.mergedText;return n?(this.documentVersion++,this.lastSnapshot=e,{lens:e,didChange:n,version:this.documentVersion}):{lens:e,didChange:n,version:this.documentVersion}}getLatestSnapshot(){if(!this.lastSnapshot)throw Error("No snapshots");return{lens:this.lastSnapshot,version:this.documentVersion}}getLens(){let{cellIds:e,codes:n}=this.getNotebookCode();return nE(e,n)}},gE=()=>{let e=dd().cellHandles;return Rr.mapValues(e,n=>{var a;return(a=n.current)==null?void 0:a.editorViewOrNull})};function wf(e){let n=i1(e);return Array.isArray(n)?e:n}function _f(e){return{...e,documentation:wf(e.documentation)}}function yE(e){return e==null?null:Array.isArray(e)?e.map(n=>_f(n)):{...e,items:e.items.map(n=>_f(n))}}function vE(e){return{...e,signatures:e.signatures.map(n=>{var a;return{...n,documentation:wf(n.documentation),parameters:(a=n.parameters)==null?void 0:a.map(o=>({...o,documentation:wf(o.documentation)}))}})}}var ac=(ur=class{constructor(n,a,o=gE){ve(this,"completionItemCache",new Ql(10));ve(this,"latestDiagnosticsVersion",null);ve(this,"forwardedDiagnosticsVersion",0);this.documentUri=n1(),this.getNotebookEditors=o,this.initialSettings=a,this.client=n,this.patchProcessNotification(),this.initializePromise.then(()=>{rn(l1(this.client),"notify is not a method on the client"),this.client.notify("workspace/didChangeConfiguration",{settings:a})}),this.snapshotter=new mE(this.getNotebookCode.bind(this))}static pruneSeenCellUris(n){for(let a of ur.SEEN_CELL_DOCUMENT_URIS){let o=cn.parse(a);n.has(o)||ur.SEEN_CELL_DOCUMENT_URIS.delete(a)}}onNotification(n){return this.client.onNotification(n)}get ready(){return this.client.ready}set ready(n){this.client.ready=n}get capabilities(){return this.client.capabilities}set capabilities(n){this.client.capabilities=n}get initializePromise(){return this.client.initializePromise}set initializePromise(n){this.client.initializePromise=n}get clientCapabilities(){return this.client.clientCapabilities}async initialize(){await this.client.initialize()}close(){this.client.close()}async resyncAllDocuments(){rn(l1(this.client),"notify is not a method on the client"),await this.client.initialize(),this.client.notify("workspace/didChangeConfiguration",{settings:this.initialSettings});let{lens:n,version:a}=this.snapshotter.snapshot();this.latestDiagnosticsVersion=null,this.forwardedDiagnosticsVersion=0,await this.client.textDocumentDidOpen({textDocument:{languageId:"python",text:n.mergedText,uri:this.documentUri,version:a}}),be.log("[lsp] Document re-synchronization complete")}getNotebookCode(){return Me.get(eE)}assertCellDocumentUri(n){rn(cn.is(n),"Execpted URI to be CellDocumentUri")}async textDocumentDidOpen(n){be.debug("[lsp] textDocumentDidOpen",n);let a=n.textDocument.uri;this.assertCellDocumentUri(a);let{lens:o,version:s}=this.snapshotter.snapshot();ur.SEEN_CELL_DOCUMENT_URIS.add(a);let c=await this.client.textDocumentDidOpen({textDocument:{languageId:n.textDocument.languageId,text:o.mergedText,uri:this.documentUri,version:s}});return c?{...c,textDocument:{...c.textDocument,text:o.mergedText}}:n}async sync(){let{lens:n,version:a,didChange:o}=this.snapshotter.snapshot(),s={textDocument:{uri:this.documentUri,version:a},contentChanges:[{text:n.mergedText}]};return o&&await this.client.textDocumentDidChange(s),{params:s,lens:n}}async textDocumentDidChange(n){if(be.debug("[lsp] textDocumentDidChange",n),n.contentChanges.length===1){let{params:a}=await this.sync();return a}return be.warn("[lsp] Unhandled textDocumentDidChange",n),this.client.textDocumentDidChange(n)}async textDocumentDefinition(n){let a=n.textDocument.uri;if(!cn.is(a))return be.warn("Invalid cell document URI",a),null;let{lens:o}=await this.sync(),s=cn.parse(a);return this.client.textDocumentDefinition({...n,textDocument:{uri:this.documentUri},position:o.transformPosition(n.position,s)})}async textDocumentSignatureHelp(n){let a=n.textDocument.uri;if(!cn.is(a))return be.warn("Invalid cell document URI",a),null;let{lens:o}=await this.sync(),s=cn.parse(a),c=await this.client.textDocumentSignatureHelp({...n,textDocument:{uri:this.documentUri},position:o.transformPosition(n.position,s)});return c?vE(c):null}textDocumentCodeAction(n){return Promise.resolve(null)}async textDocumentRename(n){var q;let a=n.textDocument.uri;if(!cn.is(a))return be.warn("Invalid cell document URI",a),null;let o=cn.parse(a),{lens:s}=await this.sync(),c=s.transformPosition(n.position,o),f=await this.client.textDocumentRename({...n,textDocument:{uri:this.documentUri},position:c});if(!f)return null;let d=(q=f.documentChanges)==null?void 0:q.flatMap(V=>"edits"in V?V.edits:[]);if(!d||d.length!==1)return be.warn("Expected exactly one edit",d),f;let m=d[0];if(!("newText"in m))return be.warn("Expected newText in edit",m),f;let b=s.getEditsForNewText(m.newText),_=new Map(b.map(V=>[V.cellId,V.text])),x=this.getNotebookEditors(),S=x[o],E=!1;if(S){let V=S.state.doc.line(n.position.line+1).from+n.position.character,{startToken:B,endToken:M}=ff(S.state.doc,V),J=S.state.doc.sliceString(B,M);E=hE(J),E&&be.debug("[lsp] Private variable rename detected, limiting to current cell",J)}let L=[],P=0;for(let[V,B]of Rr.entries(x)){if(E&&V!==o)continue;let M=_.get(V);if(M==null){be.warn("[lsp] No new code for cell during rename",V),L.push(V);continue}if(!B){be.warn("[lsp] No editor view for cell during rename",V),L.push(V);continue}wr(B)!==M&&(Zi(B,M),P++)}return L.length>0&&be.error(`[lsp] Rename partially failed: could not update ${L.length} cell(s)`,L),be.debug(`[lsp] Rename completed: updated ${P} cell(s)`),{...f,documentChanges:[{edits:[],textDocument:{uri:a,version:0}}]}}async completionItemResolve(n){let a=JSON.stringify(n),o=this.completionItemCache.get(a);if(o)return o;let s=this.client.completionItemResolve(n).then(c=>_f(c));return this.completionItemCache.set(a,s),s}async textDocumentPrepareRename(n){let a=n.textDocument.uri;if(!cn.is(a))return be.warn("Invalid cell document URI",a),null;let{lens:o}=await this.sync(),s=cn.parse(a);return this.client.textDocumentPrepareRename({...n,textDocument:{uri:this.documentUri},position:o.transformPosition(n.position,s)})}async textDocumentHover(n){be.debug("[lsp] textDocumentHover",n);let{lens:a}=await this.sync(),o=cn.parse(n.textDocument.uri),s=await this.client.textDocumentHover({...n,textDocument:{uri:this.documentUri},position:a.transformPosition(n.position,o)});return s?(typeof s.contents=="object"&&"kind"in s.contents&&(s.contents={kind:"markdown",value:s.contents.value}),s.contents=i1(s.contents)??s.contents,s.contents===""?null:(s.range&&(s.range=a.reverseRange(s.range,o)),s)):(be.debug("[lsp] no hover result"),s)}async textDocumentCompletion(n){let{lens:a}=this.snapshotter.getLatestSnapshot();if(!cn.is(n.textDocument.uri))return be.error("[lsp] Invalid cell document URI in completion request",n.textDocument.uri),null;let o=cn.parse(n.textDocument.uri);if(!o||o==="undefined")return be.error("[lsp] Invalid cellId 'undefined' in completion request",{cellId:o,uri:n.textDocument.uri,availableCellIds:a.cellIds}),null;a.cellIds.includes(o)||be.warn("[lsp] CellId in completion request not found in current lens",{cellId:o,uri:n.textDocument.uri,availableCellIds:a.cellIds});let s=a.transformPosition(n.position,o);return yE(await this.client.textDocumentCompletion({...n,textDocument:{uri:this.documentUri},position:s}))}patchProcessNotification(){rn("processNotification"in this.client,"processNotification is not a method on the client");let n=this.client.processNotification.bind(this.client),a=o=>{if(o.method==="textDocument/publishDiagnostics"){let s=o.params.version;if(s!=null){let S=this.latestDiagnosticsVersion;if(S!==null&&Number.isFinite(s)&&s<S){be.debug("[lsp] dropping stale diagnostics notification",o);return}this.latestDiagnosticsVersion=s}be.debug("[lsp] handling diagnostics",o);let c=this.snapshotter.getLatestSnapshot(),f=o.params.diagnostics,{lens:d}=c,m=++this.forwardedDiagnosticsVersion,b=new Map;for(let S of f)for(let E of d.cellIds)if(d.isInRange(S.range,E)){b.has(E)||b.set(E,[]);let L={...S,range:d.reverseRange(S.range,E)};b.get(E).push(L);break}let _=new Set(d.cellIds);ur.pruneSeenCellUris(_);let x=new Set(ur.SEEN_CELL_DOCUMENT_URIS);for(let[S,E]of b.entries()){be.debug("[lsp] diagnostics for cell",S,E);let L=cn.of(S);x.delete(L),n({...o,params:{...o.params,uri:L,version:m,diagnostics:E}})}if(x.size>0){be.debug("[lsp] clearing diagnostics",x);for(let S of x)n({method:"textDocument/publishDiagnostics",params:{uri:S,version:m,diagnostics:[]}})}return}return n(o)};this.client.processNotification=a}},ve(ur,"SEEN_CELL_DOCUMENT_URIS",new Set),ur),bE=Ml(),wE=ti(),_E=class extends wE.Transport{constructor(n){super();ve(this,"isClosed",!1);ve(this,"hasConnectedBefore",!1);ve(this,"pendingSubscriptions",[]);this.options=n,this.delegate=void 0}createDelegate(){if(this.delegate)try{this.delegate.close()}catch(n){be.warn("Error closing old WebSocket delegate",n)}this.delegate=new bE.WebSocketTransport(this.options.getWsUrl());for(let{event:n,handler:a}of this.pendingSubscriptions)this.delegate.subscribe(n,a);return this.delegate}isDelegateClosedOrClosing(){if(!this.delegate)return!0;let n=this.delegate.connection;return n?n.readyState===WebSocket.CLOSING||n.readyState===WebSocket.CLOSED:!0}async connect(){if(this.isClosed)throw Error("Transport is closed");return this.connectionPromise||(this.connectionPromise=(async()=>{try{this.options.waitForConnection&&await this.options.waitForConnection();let n=this.delegate;(!n||this.isDelegateClosedOrClosing())&&(n=this.createDelegate()),await n.connect(),be.log("WebSocket transport connected successfully");let a=this.hasConnectedBefore;this.hasConnectedBefore=!0,a&&this.options.onReconnect&&(be.log("Calling onReconnect callback to re-synchronize state"),await this.options.onReconnect())}catch(n){throw be.error("WebSocket transport connection failed",n),this.delegate=void 0,n}finally{this.connectionPromise=void 0}})()),this.connectionPromise}close(){var n;this.isClosed=!0,(n=this.delegate)==null||n.close(),this.delegate=void 0,this.connectionPromise=void 0}subscribe(...n){super.subscribe(...n);let[a,o]=n;this.pendingSubscriptions.push({event:a,handler:o}),this.delegate&&this.delegate.subscribe(a,o)}unsubscribe(...n){let a=super.unsubscribe(...n),[o,s]=n;return this.pendingSubscriptions=this.pendingSubscriptions.filter(c=>!(c.event===o&&c.handler===s)),this.delegate&&this.delegate.unsubscribe(o,s),a}async sendData(n,a){var o;if(this.isDelegateClosedOrClosing()){be.warn("WebSocket is closed or closing, attempting to reconnect");try{await this.connect()}catch(s){throw be.error("Failed to reconnect WebSocket",s),s}}return(o=this.delegate)==null?void 0:o.sendData(n,a)}};function ic(e,n){let a=T6();return new _E({getWsUrl:()=>a.getLSPURL(e).toString(),waitForConnection:async()=>{await I6()},onReconnect:n})}la.define(),new Fu;function xE(e){return e.facet(Y6.readOnly)}function kE(e){return[Lw(e),Ja.of([{key:"ArrowRight",preventDefault:!0,run:n=>c1(n,e)},{key:"Tab",preventDefault:!0,run:n=>c1(n,e)}])]}function c1(e,n){if(xE(e.state))return!1;let a=e.state.doc.length;return a===0?(e.dispatch({changes:{from:0,to:a,insert:n},selection:{head:n.length,anchor:n.length}}),!0):!1}function CE(e){let{beforeText:n,linkText:a,afterText:o,onClick:s}=e;return[Lw(c=>{let f=document.createElement("span");f.append(document.createTextNode(n));let d=document.createElement("span");return d.textContent=a,d.classList.add("cm-clickable-placeholder"),d.onclick=m=>{m.stopPropagation(),s(c)},f.append(d),f.append(document.createTextNode(o)),f}),Et.theme({".cm-placeholder":{color:"var(--slate-8)"},".cm-clickable-placeholder":{cursor:"pointer !important",pointerEvents:"auto",color:"var(--slate-9)",textDecoration:"underline",textUnderlineOffset:"0.2em"},".cm-clickable-placeholder:hover":{color:"var(--sky-11)"}})]}var SE=rr(e=>{let n,a={transport:ic("pylsp",async()=>{await(n==null?void 0:n())}),rootUri:ec(),workspaceFolders:tc()},o=e==null?void 0:e.pylsp,s=["D100","D103"],c=["W292","E402","E302","E305"],f=["B018","I001"],d={pylsp:{plugins:{marimo_plugin:{enabled:!0},jedi:{auto_import_modules:["numpy"]},jedi_completion:{include_params:!0,resolve_at_most:50},flake8:{enabled:o==null?void 0:o.enable_flake8,extendIgnore:c},pydocstyle:{enabled:o==null?void 0:o.enable_pydocstyle,ignore:s},pylint:{enabled:o==null?void 0:o.enable_pylint},pyflakes:{enabled:o==null?void 0:o.enable_pyflakes},pylsp_mypy:{enabled:o==null?void 0:o.enable_mypy,live_mode:!0},ruff:{enabled:o==null?void 0:o.enable_ruff,extendIgnore:[...c,...s,...f]},signature:{formatter:o!=null&&o.enable_ruff?"ruff":"black",line_length:88}}}},m=new ac(new ds({...a}),d);return n=()=>m.resyncAllDocuments(),m}),EE=rr(e=>{let n,a=new ac(new ds({transport:ic("ty",async()=>{await(n==null?void 0:n())}),rootUri:ec(),workspaceFolders:tc(),getWorkspaceConfiguration:o=>[{disableLanguageServices:!0}]}),{});return n=()=>a.resyncAllDocuments(),a}),TE=rr(e=>{var o;let n,a=new ac(new ds({transport:ic("pyrefly",async()=>{await(n==null?void 0:n())}),rootUri:ec(),workspaceFolders:tc(),initializationOptions:{pyrefly:{displayTypeErrors:((o=e.diagnostics)==null?void 0:o.enabled)??!1?"force-on":"force-off"}}}),{});return n=()=>a.resyncAllDocuments(),a}),IE=rr(e=>{let n,a=new ac(new ds({transport:ic("basedpyright",async()=>{await(n==null?void 0:n())}),rootUri:ec(),workspaceFolders:tc()}),{});return n=()=>a.resyncAllDocuments(),a}),LE=class{constructor(){ve(this,"parser",new _y);ve(this,"type","python");ve(this,"defaultCode",this.parser.defaultCode);ve(this,"defaultMetadata",this.parser.defaultMetadata)}transformIn(e){let n=this.parser.transformIn(e);return[n.code,n.offset,n.metadata]}transformOut(e,n){let a=this.parser.transformOut(e,n);return[a.code,a.offset]}isSupported(e){return this.parser.isSupported(e)}getExtension(e,n,a,o,s){return[(()=>{var _,x,S,E,L;let c={defaultKeymap:!1,activateOnTyping:n.activate_on_typing,closeOnBlur:!1},f={hideOnChange:!0},d=[];(_=s==null?void 0:s.pylsp)!=null&&_.enabled&&ws("pylsp")&&d.push(SE(s)),(x=s==null?void 0:s.ty)!=null&&x.enabled&&ws("ty")&&d.push(EE(s)),(S=s==null?void 0:s.pyrefly)!=null&&S.enabled&&ws("pyrefly")&&d.push(TE(s)),(E=s==null?void 0:s.basedpyright)!=null&&E.enabled&&ws("basedpyright")&&d.push(IE(s));let m=n.signature_hint_on_typing,b=m?/(\w+|\w+\.|\/)$/:/(\w+|\w+\.|\(|\/|,)$/;if(d.length>0){let P=d.length===1?d[0]:new Q3(d);return[Yh({client:P,languageId:"python",allowHTMLContent:!0,useSnippetOnCompletion:!0,hoverConfig:f,completionConfig:c,diagnosticsEnabled:((L=s.diagnostics)==null?void 0:L.enabled)??!1,sendIncrementalChanges:!1,signatureHelpEnabled:!0,signatureActivateOnTyping:m,signatureHelpOptions:{position:"above"},keyboardShortcuts:{signatureHelp:a.getHotkey("cell.signatureHelp").key,goToDefinition:a.getHotkey("cell.goToDefinition").key,rename:a.getHotkey("cell.renameSymbol").key},completionMatchBefore:b,onGoToDefinition:q=>{be.debug("onGoToDefinition",q),P.documentUri!==q.uri&&br().openFile({path:q.uri.replace("file://","")})}}),qg.of(cn.of(e))]}return Bu({...c,override:[Yy]})})(),Ym(),OE(o)]}};function OE(e){return e==="marimo-import"?qu.highest(kE("import marimo as mo")):e==="ai"?CE({beforeText:"Start coding or ",linkText:"generate",afterText:" with AI.",onClick:n=>{n.state.facet(st).aiCellCompletion()}}):[]}var xf=Gh.configure({props:[Q6.add({ParenthesizedExpression:Nw,ArgList:Nw})]});Ym=function(){return new qw(xf,[xf.data.of({autocomplete:Z8}),xf.data.of({autocomplete:eI})])};const AE=e=>{let n;return async()=>(n||(n=e()),await n)};var oc=class{constructor(e={}){ve(this,"opts");ve(this,"parser",null);ve(this,"offsetRecord",{});ve(this,"getParser",AE(async()=>{if(this.parser)return this.parser;let e=await re(()=>import("./node-sql-parser-B8vXamqL.js").then(async a=>(await a.__tla,a)).then(v6(1)),__vite__mapDeps([213,1]),import.meta.url),{Parser:n}=e.default||e;return this.parser=new n,this.parser}));this.opts=e}async parse(e,n){var s,c;this.offsetRecord={};let a=(c=(s=this.opts).getParserOptions)==null?void 0:c.call(s,n.state),o=await this.sanitizeSql(e,a);try{let f=await this.getParser();return(a==null?void 0:a.database)==="DuckDB"?this.parseWithDuckDBSupport(o,a):{success:!0,errors:[],ast:f.astify(o,a)}}catch(f){return{success:!1,errors:[this.extractErrorInfo(f,o)]}}}async sanitizeSql(e,n){if(n!=null&&n.ignoreBrackets){let{sql:a,offsetRecord:o}=NE(e);return this.offsetRecord=o,a}return e}async parseWithDuckDBSupport(e,n){let a=await this.getParser(),o=RE(e).trimStart().toLowerCase();if(o.startsWith("from")||o.includes("macro"))return{success:!0,errors:[]};let s=e;o.includes("create or replace table")&&(this.offsetRecord[e.indexOf("create or replace table")]=-11,s=e.replace(/create or replace table/i,"create table"));try{let c={...n,database:"PostgreSQL"};return{success:!0,errors:[],ast:a.astify(s,c)}}catch(c){return{success:!1,errors:[this.extractErrorInfo(c,e)]}}}extractErrorInfo(e,n){var f,d,m;let a=1,o=1,s=(e==null?void 0:e.message)||"SQL parsing error",c=e;if(c!=null&&c.location)a=((f=c.location.start)==null?void 0:f.line)||1,o=((d=c.location.start)==null?void 0:d.column)||1;else if(c!=null&&c.hash)a=c.hash.line||1,o=((m=c.hash.loc)==null?void 0:m.first_column)||1;else{let b=s.match(/line (\d+)/i),_=s.match(/column (\d+)/i);b!=null&&b[1]&&(a=parseInt(b[1],10)),_!=null&&_[1]&&(o=parseInt(_[1],10))}for(let[b,_]of Object.entries(this.offsetRecord))o>parseInt(b,10)&&(o-=_);return o>n.length&&(o=n.length),{message:this.cleanErrorMessage(s),line:Math.max(1,a),column:o,severity:"error"}}cleanErrorMessage(e){return e.replace(/^Error: /,"").replace(/Expected .* but .* found\./i,n=>n.replace(/but .* found/,"found unexpected token")).trim()}async validateSql(e,n){return(await this.parse(e,n)).errors}async extractTableReferences(e,n){var o,s;let a=n?(s=(o=this.opts).getParserOptions)==null?void 0:s.call(o,n.state):void 0;try{return(await this.getParser()).tableList(e,a).map(c=>{let f=c.split("::");return f[f.length-1]||c})}catch{return[]}}async extractColumnReferences(e,n){var o,s;let a=n!=null&&n.state?(s=(o=this.opts).getParserOptions)==null?void 0:s.call(o,n.state):void 0;try{return(await this.getParser()).columnList(e,a).map(c=>{let f=c.split("::");return f[f.length-1]||c})}catch{return[]}}};function RE(e,n=["/*","--"]){let a=[];if(n.includes("/*")&&a.push("/\\*[\\s\\S]*?\\*/"),n.includes("--")&&a.push("--[^\\n]*"),a.length===0)return e;let o=RegExp(`^\\s*(${a.join("|")})\\s*`,""),s=e,c="";for(;s!==c;)c=s,s=s.replace(o,"");return s}var PE=2;function NE(e){let n={};return{sql:e.replace(/("(?:[^"\\]|\\.)*")|('(?:[^'\\]|\\.)*')|(\{[^}]*\})/g,(a,o,s,c,f)=>o||s?a:c?(n[f]=PE,`'${c}'`):a),offsetRecord:n}}var ME=750;function DE(e,n){let a=n.line(e.line).from+Math.max(0,e.column-1);return{from:a,to:a+1,severity:e.severity,message:e.message,source:"sql-parser"}}function jE(e={}){let n=e.parser||new oc;return x8(async a=>{let o=a.state.doc,s=o.toString();return s.trim()?(await n.validateSql(s,{state:a.state})).map(c=>DE(c,o)):[]},{delay:e.delay||ME})}function ui(e){return typeof e=="object"&&!Array.isArray(e)&&!("self"in e)}function Dr(e){return typeof e=="object"&&!Array.isArray(e)&&"self"in e&&"children"in e}function cr(e){return Array.isArray(e)}function un(e,n,a,o){let s=e.length;if(n==="string"||n==="completion"&&o&&cr(o))return"column";if(n==="namespace"&&a){if(cr(a))return"table";if(ui(a))return Object.values(a).some(c=>cr(c)||Dr(c)&&cr(c.children))?s<=1?"database":"schema":s===0?"database":"namespace"}if(n==="completion"&&a)return cr(a)?"table":(ui(a)&&Object.values(a).some(c=>cr(c)||Dr(c)&&cr(c.children)),s<=1?"database":"schema");switch(s){case 0:return"database";case 1:return"schema";default:return"namespace"}}function u1(e,n,a={}){let{maxDepth:o=10}=a;if(n===""&&Dr(e)){let c=un([],"completion",e.children);return{completion:e.self,path:[],type:"completion",semanticType:c,namespace:e.children}}let s=n.split(".").filter(c=>c.length>0);return s.length===0||s.length>o?null:kf(e,s,[],a)}function kf(e,n,a,o,s){if(n.length===0){if(Dr(e)){let m=un(a,"completion",e.children,s);return{completion:e.self,path:a,type:"completion",semanticType:m,namespace:e.children}}return{path:a,type:"namespace",semanticType:un(a,"namespace",e,s),namespace:e}}let[c,...f]=n,{caseSensitive:d=!1}=o;if(!c)return null;if(ui(e)){let m=d?Object.keys(e).find(b=>b===c):Object.keys(e).find(b=>b.toLowerCase()===c.toLowerCase());if(m){let b=e[m];if(b)return kf(b,f,[...a,m],o,e)}}else{if(Dr(e))return kf(e.children,n,a,o,e);if(cr(e)){for(let m of e)if(typeof m=="string"){if((d?m===c:m.toLowerCase()===c.toLowerCase())&&f.length===0){let b=un([...a,m],"string",void 0,e);return{value:m,path:[...a,m],type:"string",semanticType:b}}}else if((d?m.label===c:m.label.toLowerCase()===c.toLowerCase())&&f.length===0){let b=un([...a,m.label],"completion",void 0,e);return{completion:m,path:[...a,m.label],type:"completion",semanticType:b}}}}return null}function zE(e,n,a={}){let o=[];if(n.includes(".")){let s=n.lastIndexOf("."),c=n.substring(0,s),f=n.substring(s+1),d=u1(e,c,a);if(d!=null&&d.namespace)return Cf(d.namespace,f,d.path,a)}else return Cf(e,n,[],a);return o}function Cf(e,n,a,o){let s=[],{caseSensitive:c=!1,allowPartialMatch:f=!0}=o;if(ui(e)){for(let[d,m]of Object.entries(e))if(f?c?d.startsWith(n):d.toLowerCase().startsWith(n.toLowerCase()):c?d===n:d.toLowerCase()===n.toLowerCase())if(Dr(m)){let b=un([...a,d],"completion",m.children,e);s.push({completion:m.self,path:[...a,d],type:"completion",semanticType:b,namespace:m.children})}else{let b=un([...a,d],"namespace",m,e);s.push({path:[...a,d],type:"namespace",semanticType:b,namespace:m})}}else if(Dr(e)){if(f?c?e.self.label.startsWith(n):e.self.label.toLowerCase().startsWith(n.toLowerCase()):c?e.self.label===n:e.self.label.toLowerCase()===n.toLowerCase()){let d=un([...a,e.self.label],"completion",e.children);s.push({completion:e.self,path:[...a,e.self.label],type:"completion",semanticType:d,namespace:e.children})}s.push(...Cf(e.children,n,a,o))}else if(cr(e)){for(let d of e)if(typeof d=="string"){if(f?c?d.startsWith(n):d.toLowerCase().startsWith(n.toLowerCase()):c?d===n:d.toLowerCase()===n.toLowerCase()){let m=un([...a,d],"string",void 0,e);s.push({value:d,path:[...a,d],type:"string",semanticType:m})}}else if(f?c?d.label.startsWith(n):d.label.toLowerCase().startsWith(n.toLowerCase()):c?d.label===n:d.label.toLowerCase()===n.toLowerCase()){let m=un([...a,d.label],"completion",void 0,e);s.push({completion:d,path:[...a,d.label],type:"completion",semanticType:m})}}return s}function qE(e,n,a={}){let o=[],{maxDepth:s=10}=a;sc(e,[],o,s);let{caseSensitive:c=!1}=a;return o.filter(f=>f.path.some(d=>c?d===n:d.toLowerCase()===n.toLowerCase())).sort((f,d)=>{var _,x;let m=c?f.path[f.path.length-1]===n:((_=f.path[f.path.length-1])==null?void 0:_.toLowerCase())===n.toLowerCase(),b=c?d.path[d.path.length-1]===n:((x=d.path[d.path.length-1])==null?void 0:x.toLowerCase())===n.toLowerCase();return m&&!b?-1:!m&&b?1:f.path.length-d.path.length})}function sc(e,n,a,o){if(!(n.length>=o)){if(ui(e))for(let[s,c]of Object.entries(e)){let f=[...n,s];if(Dr(c)){let d=un(f,"completion",c.children,e);a.push({completion:c.self,path:f,type:"completion",semanticType:d,namespace:c.children}),sc(c.children,f,a,o)}else{let d=un(f,"namespace",c,e);a.push({path:f,type:"namespace",semanticType:d,namespace:c}),sc(c,f,a,o)}}else if(Dr(e)){let s=un(n,"completion",e.children);a.push({completion:e.self,path:n,type:"completion",semanticType:s,namespace:e.children}),sc(e.children,n,a,o)}else if(cr(e))for(let s of e)if(typeof s=="string"){let c=un([...n,s],"string",void 0,e);a.push({value:s,path:[...n,s],type:"string",semanticType:c})}else{let c=un([...n,s.label],"completion",void 0,e);a.push({completion:s,path:[...n,s.label],type:"completion",semanticType:c})}}}function d1(e,n,a={}){let{enableFuzzySearch:o=!1}=a,s=u1(e,n,a);if(s)return s;let c=zE(e,n,a);if(c.length>0)return c[0]||null;if(o){let f=qE(e,n,a);if(f.length>0)return f[0]||null}return null}function f1(e,n){if(n.size===0)return{};if(ui(e)){let a={};for(let[o,s]of Object.entries(e))if(Array.from(n).some(c=>c.toLowerCase()===o.toLowerCase()))a[o]=s;else if(ui(s)){let c=f1(s,n);Object.keys(c).length>0&&(a[o]=c)}return a}return e}function FE(e={}){let{schema:n={},keywords:a={},hoverTime:o=300,enableKeywords:s=!0,enableTables:c=!0,enableColumns:f=!0,enableFuzzySearch:d=!0,parser:m=new oc,tooltipRender:b,tooltipRenderers:_={}}=e,x=null;return Vh(async(S,E,L)=>{let{from:P,to:q,text:V}=S.state.doc.lineAt(E),B=E,M=E;x===null&&(x=typeof a=="function"?a(S):Promise.resolve(a));let J=await x;for(;B>P&&/[\w.]/.test(V[B-P-1]??"");)B--;for(;M<q&&/[\w.]/.test(V[M-P]??"");)M++;if(B===E&&L<0||M===E&&L>0)return null;let le=V.slice(B-P,M-P).toLowerCase();if(!le||le.length===0)return null;let A=typeof n=="function"?n(S):n,j=null;if(`${le}`,!j&&s&&J[le]&&(J[le],j={word:le,view:S,pos:E,tooltipType:"keyword",keywordData:{keyword:le,info:J[le]}}),!j&&(c||f)&&A){let $=S.state.doc.toString(),oe=await m.extractTableReferences($),de=new Set(oe.map(ke=>ke.toLowerCase())),he=f1(A,de),ye=d1(he,le,{enableFuzzySearch:d});!ye&&de.size===0&&(ye=d1(A,le,{enableFuzzySearch:d})),ye&&(Array.from(de),j={word:le,view:S,pos:E,tooltipType:"namespace",namespaceData:{item:ye,word:le,resolvedSchema:de.size>0?he:A}})}return j?{pos:B,end:M,above:!0,create($){if(b){let he=b(le,$,E);if(he)return{dom:he}}let oe=null;if(j.tooltipType==="keyword"&&j.keywordData)oe=_.keyword?_.keyword(j.keywordData):h1(j.keywordData);else if(j.tooltipType==="namespace"&&j.namespaceData){let he=j.namespaceData,{semanticType:ye}=he.item;oe=ye==="table"&&_.table?_.table(he):ye==="column"&&_.column?_.column(he):(ye==="database"||ye==="schema"||ye==="namespace")&&_.namespace?_.namespace(he):p1(he.item)}if(!oe)return{dom:document.createElement("div")};let de=document.createElement("div");return de.className="cm-sql-hover-tooltip",de.innerHTML=oe,{dom:de}}}:null},{hoverTime:o})}function p1(e){var s,c,f,d,m,b,_;let n=e.path.join("."),a=((s=e.completion)==null?void 0:s.label)||e.value||e.path[e.path.length-1]||"unknown",o=`<div class="sql-hover-${e.semanticType}">`;switch(o+=`<div class="sql-hover-header"><strong>${a}</strong> <span class="sql-hover-type">${e.semanticType}</span></div>`,e.semanticType){case"database":if(o+=`<div class="sql-hover-description">Database${(c=e.completion)!=null&&c.detail?`: ${e.completion.detail}`:""}</div>`,e.namespace){let x=lc(e.namespace);x>0&&(o+=`<div class="sql-hover-children">Contains ${x} schema${x===1?"":"s"}</div>`)}break;case"schema":if(o+=`<div class="sql-hover-description">Schema${(f=e.completion)!=null&&f.detail?`: ${e.completion.detail}`:""}</div>`,n&&(o+=`<div class="sql-hover-path"><strong>Path:</strong> <code>${n}</code></div>`),e.namespace){let x=lc(e.namespace);x>0&&(o+=`<div class="sql-hover-children">Contains ${x} table${x===1?"":"s"}</div>`)}break;case"table":if(o+=`<div class="sql-hover-description">Table${(d=e.completion)!=null&&d.detail?`: ${e.completion.detail}`:""}</div>`,n){let x=e.path;x.length>1&&(o+=`<div class="sql-hover-path"><strong>Schema:</strong> <code>${x.slice(0,-1).join(".")}</code></div>`)}if(e.namespace&&cr(e.namespace)){let x=e.namespace;if(x.length>0){o+=`<div class="sql-hover-columns"><strong>Columns (${x.length}):</strong><br>`;let S=x.slice(0,8).map(E=>typeof E=="string"?E:E.label);o+=S.map(E=>`<code>${E}</code>`).join(", "),x.length>8&&(o+=`, <em>and ${x.length-8} more...</em>`),o+="</div>"}}break;case"column":if(o+=`<div class="sql-hover-description">Column${(m=e.completion)!=null&&m.detail?`: ${e.completion.detail}`:""}</div>`,n){let x=e.path;x.length>1&&(o+=`<div class="sql-hover-path"><strong>Table:</strong> <code>${x.slice(0,-1).join(".")}</code></div>`)}break;default:if(o+=`<div class="sql-hover-description">Namespace${(b=e.completion)!=null&&b.detail?`: ${e.completion.detail}`:""}</div>`,n&&(o+=`<div class="sql-hover-path"><strong>Path:</strong> <code>${n}</code></div>`),e.namespace){let x=lc(e.namespace);x>0&&(o+=`<div class="sql-hover-children">Contains ${x} item${x===1?"":"s"}</div>`)}break}return(_=e.completion)!=null&&_.info&&typeof e.completion.info=="string"&&(o+=`<div class="sql-hover-info">${e.completion.info}</div>`),o+="</div>",o}function lc(e){return Array.isArray(e)?e.length:typeof e=="object"&&e?"self"in e&&"children"in e?1+lc(e.children):Object.keys(e).length:0}function h1(e){let{keyword:n,info:a}=e,o='<div class="sql-hover-keyword">';if(o+=`<div class="sql-hover-header"><strong>${n.toUpperCase()}</strong> <span class="sql-hover-type">keyword</span></div>`,o+=`<div class="sql-hover-description">${a.description}</div>`,a.syntax&&(o+=`<div class="sql-hover-syntax"><strong>Syntax:</strong> <code>${a.syntax}</code></div>`),a.example&&(o+=`<div class="sql-hover-example"><strong>Example:</strong><br><code>${a.example}</code></div>`),a.metadata&&typeof a.metadata=="object"&&Object.keys(a.metadata).length>0){o+='<div class="sql-hover-metadata">';for(let[s,c]of Object.entries(a.metadata))o+=`<span class="sql-hover-tag" title="${s}">${c}</span> `;o+="</div>"}return o+="</div>",o}function BE(e){let{tableName:n,columns:a,metadata:o}=e,s='<div class="sql-hover-table">';if(s+=`<div class="sql-hover-header"><strong>${n}</strong> <span class="sql-hover-type">table</span></div>`,s+=`<div class="sql-hover-description">Table with ${a.length} column${a.length===1?"":"s"}</div>`,a.length>0){s+='<div class="sql-hover-columns"><strong>Columns:</strong><br>';let c=a.slice(0,10);s+=c.map(f=>`<code>${f}</code>`).join(", "),a.length>10&&(s+=`, <em>and ${a.length-10} more...</em>`),s+="</div>"}if(o&&typeof o=="object"&&Object.keys(o).length>0){s+='<div class="sql-hover-metadata">';for(let[c,f]of Object.entries(o))s+=`<span class="sql-hover-tag" title="${c}">${f}</span> `;s+="</div>"}return s+="</div>",s}function VE(e){let{tableName:n,columnName:a,schema:o,metadata:s}=e,c='<div class="sql-hover-column">';c+=`<div class="sql-hover-header"><strong>${a}</strong> <span class="sql-hover-type">column</span></div>`,c+=`<div class="sql-hover-description">Column in table <code>${n}</code></div>`;let f=o[n];if(f&&f.length>1){let d=f.filter(m=>m!==a);if(d.length>0){c+=`<div class="sql-hover-related"><strong>Other columns in ${n}:</strong><br>`;let m=d.slice(0,8);c+=m.map(b=>`<code>${b}</code>`).join(", "),d.length>8&&(c+=`, <em>and ${d.length-8} more...</em>`),c+="</div>"}}if(s&&typeof s=="object"&&Object.keys(s).length>0){c+='<div class="sql-hover-metadata">';for(let[d,m]of Object.entries(s))c+=`<span class="sql-hover-tag" title="${d}">${m}</span> `;c+="</div>"}return c+="</div>",c}const HE={keyword:h1,table:BE,column:VE,namespace:p1},m1=(e="light")=>{let n=e==="dark"?{tooltipBg:"#1f2937",tooltipBorder:"#374151",tooltipText:"#f9fafb",tooltipTypeBg:"#374151",tooltipTypeText:"#9ca3af",tooltipChildren:"#9ca3af",codeBg:"#374151",codeText:"#f3f4f6",strong:"#ffffff",em:"#9ca3af",header:"#ffffff",info:"#d1d5db",related:"#d1d5db",path:"#d1d5db",example:"#d1d5db",columns:"#d1d5db",syntax:"#d1d5db"}:{tooltipBg:"#ffffff",tooltipBorder:"#e5e7eb",tooltipText:"#374151",tooltipTypeBg:"#f3f4f6",tooltipTypeText:"#6b7280",tooltipChildren:"#6b7280",codeBg:"#f9fafb",codeText:"#1f2937",strong:"#111827",em:"#6b7280",header:"#111827",info:"#374151",related:"#374151",path:"#374151",example:"#374151",columns:"#374151",syntax:"#374151"};return Et.theme({".cm-sql-hover-tooltip":{padding:"8px 12px",backgroundColor:n.tooltipBg,border:`1px solid ${n.tooltipBorder}`,borderRadius:"6px",boxShadow:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",fontSize:"13px",lineHeight:"1.4",maxWidth:"320px",fontFamily:"system-ui, -apple-system, sans-serif",color:n.tooltipText},".cm-sql-hover-tooltip .sql-hover-header":{marginBottom:"6px",display:"flex",alignItems:"center",gap:"6px",color:n.header},".cm-sql-hover-tooltip .sql-hover-type":{fontSize:"11px",padding:"2px 6px",backgroundColor:n.tooltipTypeBg,color:n.tooltipTypeText,borderRadius:"4px",fontWeight:"500"},".cm-sql-hover-tooltip .sql-hover-description":{color:n.info,marginBottom:"8px"},".cm-sql-hover-tooltip .sql-hover-syntax":{marginBottom:"8px",color:n.syntax},".cm-sql-hover-tooltip .sql-hover-example":{marginBottom:"4px",color:n.example},".cm-sql-hover-tooltip .sql-hover-columns":{marginBottom:"4px",color:n.columns},".cm-sql-hover-tooltip .sql-hover-related":{marginBottom:"4px",color:n.related},".cm-sql-hover-tooltip .sql-hover-path":{marginBottom:"4px",color:n.path},".cm-sql-hover-tooltip .sql-hover-info":{marginBottom:"4px",color:n.info},".cm-sql-hover-tooltip .sql-hover-children":{marginBottom:"4px",color:n.tooltipChildren,fontSize:"12px"},".cm-sql-hover-tooltip code":{backgroundColor:n.codeBg,padding:"1px 4px",borderRadius:"3px",fontSize:"12px",fontFamily:"ui-monospace, 'SF Mono', 'Monaco', 'Cascadia Code', 'Roboto Mono', monospace",color:n.codeText},".cm-sql-hover-tooltip strong":{fontWeight:"600",color:n.strong},".cm-sql-hover-tooltip em":{fontStyle:"italic",color:n.em}})};var $E=class{constructor(e){ve(this,"parser");ve(this,"cache",new Map);ve(this,"MAX_CACHE_SIZE",10);this.parser=e}async analyzeDocument(e){let n=e.doc.toString(),a=this.generateCacheKey(n),o=this.cache.get(a);if(o)return o;let s=await this.extractStatements(n,e);if(this.cache.set(a,s),this.cache.size>this.MAX_CACHE_SIZE){let c=this.cache.keys().next().value;c!==void 0&&this.cache.delete(c)}return s}async getStatementAtPosition(e,n){return(await this.analyzeDocument(e)).find(a=>n>=a.from&&n<=a.to)||null}async getStatementsInRange(e,n,a){return(await this.analyzeDocument(e)).filter(o=>o.from<=a&&o.to>=n)}async extractStatements(e,n){let a=[],o=this.splitByStatementSeparators(e),s=0;for(let c of o){let f=c.trim();if(f.length===0){s+=c.length;continue}let d=s+c.indexOf(f),m=d+f.length,b=n.doc.lineAt(d),_=n.doc.lineAt(m),x=this.stripComments(f);if(x.trim().length===0||x.trim()===";"){s+=c.length;continue}let S=await this.parser.parse(x,{state:n}),E=this.determineStatementType(x),L=x.endsWith(";")?x.slice(0,-1).trim():x.trim();a.push({from:d,to:m,lineFrom:b.number,lineTo:_.number,content:L,type:E,isValid:S.success}),s+=c.length}return a}splitByStatementSeparators(e){let n=[],a="",o=!1,s="",c=!1,f=!1,d=0;for(;d<e.length;){let m=e[d],b=e[d+1];if(!o&&!f&&m==="-"&&b==="-"){c=!0,a+=m+b,d+=2;continue}if(!o&&!c&&m==="/"&&b==="*"){f=!0,a+=m+b,d+=2;continue}if(f&&m==="*"&&b==="/"){f=!1,a+=m+b,d+=2;continue}if(c&&(m===`
|
|
112
|
+
`)}function rc(e){return`<marimo-tex class="arithmatex">||(${e.trim()}||)</marimo-tex>`}function bf(e){return`<marimo-tex class="arithmatex">||[${e.trim()}||]</marimo-tex>`}const cn={PREFIX:"file:///",of(e){return`${this.PREFIX}${e}`},is(e){return e.startsWith(this.PREFIX)},parse(e){return rn(this.is(e),`Invalid cell document URI: ${e}`),e.slice(this.PREFIX.length)}};function l1(e){return"notify"in e}function hE(e){return e.startsWith("_")&&!e.startsWith("__")}var mE=class{constructor(e){ve(this,"documentVersion",0);ve(this,"lastSnapshot",null);this.getNotebookCode=e}snapshot(){var a;let e=this.getLens(),n=((a=this.lastSnapshot)==null?void 0:a.mergedText)!==e.mergedText;return n?(this.documentVersion++,this.lastSnapshot=e,{lens:e,didChange:n,version:this.documentVersion}):{lens:e,didChange:n,version:this.documentVersion}}getLatestSnapshot(){if(!this.lastSnapshot)throw Error("No snapshots");return{lens:this.lastSnapshot,version:this.documentVersion}}getLens(){let{cellIds:e,codes:n}=this.getNotebookCode();return nE(e,n)}},gE=()=>{let e=dd().cellHandles;return Rr.mapValues(e,n=>{var a;return(a=n.current)==null?void 0:a.editorViewOrNull})};function wf(e){let n=i1(e);return Array.isArray(n)?e:n}function _f(e){return{...e,documentation:wf(e.documentation)}}function yE(e){return e==null?null:Array.isArray(e)?e.map(n=>_f(n)):{...e,items:e.items.map(n=>_f(n))}}function vE(e){return{...e,signatures:e.signatures.map(n=>{var a;return{...n,documentation:wf(n.documentation),parameters:(a=n.parameters)==null?void 0:a.map(o=>({...o,documentation:wf(o.documentation)}))}})}}var ac=(ur=class{constructor(n,a,o=gE){ve(this,"completionItemCache",new Ql(10));ve(this,"latestDiagnosticsVersion",null);ve(this,"forwardedDiagnosticsVersion",0);this.documentUri=n1(),this.getNotebookEditors=o,this.initialSettings=a,this.client=n,this.patchProcessNotification(),this.initializePromise.then(()=>{rn(l1(this.client),"notify is not a method on the client"),this.client.notify("workspace/didChangeConfiguration",{settings:a})}),this.snapshotter=new mE(this.getNotebookCode.bind(this))}static pruneSeenCellUris(n){for(let a of ur.SEEN_CELL_DOCUMENT_URIS){let o=cn.parse(a);n.has(o)||ur.SEEN_CELL_DOCUMENT_URIS.delete(a)}}onNotification(n){return this.client.onNotification(n)}get ready(){return this.client.ready}set ready(n){this.client.ready=n}get capabilities(){return this.client.capabilities}set capabilities(n){this.client.capabilities=n}get initializePromise(){return this.client.initializePromise}set initializePromise(n){this.client.initializePromise=n}get clientCapabilities(){return this.client.clientCapabilities}async initialize(){await this.client.initialize()}close(){this.client.close()}async resyncAllDocuments(){rn(l1(this.client),"notify is not a method on the client"),await this.client.initialize(),this.client.notify("workspace/didChangeConfiguration",{settings:this.initialSettings});let{lens:n,version:a}=this.snapshotter.snapshot();this.latestDiagnosticsVersion=null,this.forwardedDiagnosticsVersion=0,await this.client.textDocumentDidOpen({textDocument:{languageId:"python",text:n.mergedText,uri:this.documentUri,version:a}}),be.log("[lsp] Document re-synchronization complete")}getNotebookCode(){return Me.get(eE)}assertCellDocumentUri(n){rn(cn.is(n),"Execpted URI to be CellDocumentUri")}async textDocumentDidOpen(n){be.debug("[lsp] textDocumentDidOpen",n);let a=n.textDocument.uri;this.assertCellDocumentUri(a);let{lens:o,version:s}=this.snapshotter.snapshot();ur.SEEN_CELL_DOCUMENT_URIS.add(a);let c=await this.client.textDocumentDidOpen({textDocument:{languageId:n.textDocument.languageId,text:o.mergedText,uri:this.documentUri,version:s}});return c?{...c,textDocument:{...c.textDocument,text:o.mergedText}}:n}async sync(){let{lens:n,version:a,didChange:o}=this.snapshotter.snapshot(),s={textDocument:{uri:this.documentUri,version:a},contentChanges:[{text:n.mergedText}]};return o&&await this.client.textDocumentDidChange(s),{params:s,lens:n}}async textDocumentDidChange(n){if(be.debug("[lsp] textDocumentDidChange",n),n.contentChanges.length===1){let{params:a}=await this.sync();return a}return be.warn("[lsp] Unhandled textDocumentDidChange",n),this.client.textDocumentDidChange(n)}async textDocumentDefinition(n){let a=n.textDocument.uri;if(!cn.is(a))return be.warn("Invalid cell document URI",a),null;let{lens:o}=await this.sync(),s=cn.parse(a);return this.client.textDocumentDefinition({...n,textDocument:{uri:this.documentUri},position:o.transformPosition(n.position,s)})}async textDocumentSignatureHelp(n){let a=n.textDocument.uri;if(!cn.is(a))return be.warn("Invalid cell document URI",a),null;let{lens:o}=await this.sync(),s=cn.parse(a),c=await this.client.textDocumentSignatureHelp({...n,textDocument:{uri:this.documentUri},position:o.transformPosition(n.position,s)});return c?vE(c):null}textDocumentCodeAction(n){return Promise.resolve(null)}async textDocumentRename(n){var q;let a=n.textDocument.uri;if(!cn.is(a))return be.warn("Invalid cell document URI",a),null;let o=cn.parse(a),{lens:s}=await this.sync(),c=s.transformPosition(n.position,o),f=await this.client.textDocumentRename({...n,textDocument:{uri:this.documentUri},position:c});if(!f)return null;let d=(q=f.documentChanges)==null?void 0:q.flatMap(V=>"edits"in V?V.edits:[]);if(!d||d.length!==1)return be.warn("Expected exactly one edit",d),f;let m=d[0];if(!("newText"in m))return be.warn("Expected newText in edit",m),f;let b=s.getEditsForNewText(m.newText),_=new Map(b.map(V=>[V.cellId,V.text])),x=this.getNotebookEditors(),S=x[o],E=!1;if(S){let V=S.state.doc.line(n.position.line+1).from+n.position.character,{startToken:B,endToken:M}=ff(S.state.doc,V),J=S.state.doc.sliceString(B,M);E=hE(J),E&&be.debug("[lsp] Private variable rename detected, limiting to current cell",J)}let L=[],P=0;for(let[V,B]of Rr.entries(x)){if(E&&V!==o)continue;let M=_.get(V);if(M==null){be.warn("[lsp] No new code for cell during rename",V),L.push(V);continue}if(!B){be.warn("[lsp] No editor view for cell during rename",V),L.push(V);continue}wr(B)!==M&&(Zi(B,M),P++)}return L.length>0&&be.error(`[lsp] Rename partially failed: could not update ${L.length} cell(s)`,L),be.debug(`[lsp] Rename completed: updated ${P} cell(s)`),{...f,documentChanges:[{edits:[],textDocument:{uri:a,version:0}}]}}async completionItemResolve(n){let a=JSON.stringify(n),o=this.completionItemCache.get(a);if(o)return o;let s=this.client.completionItemResolve(n).then(c=>_f(c));return this.completionItemCache.set(a,s),s}async textDocumentPrepareRename(n){let a=n.textDocument.uri;if(!cn.is(a))return be.warn("Invalid cell document URI",a),null;let{lens:o}=await this.sync(),s=cn.parse(a);return this.client.textDocumentPrepareRename({...n,textDocument:{uri:this.documentUri},position:o.transformPosition(n.position,s)})}async textDocumentHover(n){be.debug("[lsp] textDocumentHover",n);let{lens:a}=await this.sync(),o=cn.parse(n.textDocument.uri),s=await this.client.textDocumentHover({...n,textDocument:{uri:this.documentUri},position:a.transformPosition(n.position,o)});return s?(typeof s.contents=="object"&&"kind"in s.contents&&(s.contents={kind:"markdown",value:s.contents.value}),s.contents=i1(s.contents)??s.contents,s.contents===""?null:(s.range&&(s.range=a.reverseRange(s.range,o)),s)):(be.debug("[lsp] no hover result"),s)}async textDocumentCompletion(n){let{lens:a}=this.snapshotter.getLatestSnapshot();if(!cn.is(n.textDocument.uri))return be.error("[lsp] Invalid cell document URI in completion request",n.textDocument.uri),null;let o=cn.parse(n.textDocument.uri);if(!o||o==="undefined")return be.error("[lsp] Invalid cellId 'undefined' in completion request",{cellId:o,uri:n.textDocument.uri,availableCellIds:a.cellIds}),null;a.cellIds.includes(o)||be.warn("[lsp] CellId in completion request not found in current lens",{cellId:o,uri:n.textDocument.uri,availableCellIds:a.cellIds});let s=a.transformPosition(n.position,o);return yE(await this.client.textDocumentCompletion({...n,textDocument:{uri:this.documentUri},position:s}))}patchProcessNotification(){rn("processNotification"in this.client,"processNotification is not a method on the client");let n=this.client.processNotification.bind(this.client),a=o=>{if(o.method==="textDocument/publishDiagnostics"){let s=o.params.version;if(s!=null){let S=this.latestDiagnosticsVersion;if(S!==null&&Number.isFinite(s)&&s<S){be.debug("[lsp] dropping stale diagnostics notification",o);return}this.latestDiagnosticsVersion=s}be.debug("[lsp] handling diagnostics",o);let c=this.snapshotter.getLatestSnapshot(),f=o.params.diagnostics,{lens:d}=c,m=++this.forwardedDiagnosticsVersion,b=new Map;for(let S of f)for(let E of d.cellIds)if(d.isInRange(S.range,E)){b.has(E)||b.set(E,[]);let L={...S,range:d.reverseRange(S.range,E)};b.get(E).push(L);break}let _=new Set(d.cellIds);ur.pruneSeenCellUris(_);let x=new Set(ur.SEEN_CELL_DOCUMENT_URIS);for(let[S,E]of b.entries()){be.debug("[lsp] diagnostics for cell",S,E);let L=cn.of(S);x.delete(L),n({...o,params:{...o.params,uri:L,version:m,diagnostics:E}})}if(x.size>0){be.debug("[lsp] clearing diagnostics",x);for(let S of x)n({method:"textDocument/publishDiagnostics",params:{uri:S,version:m,diagnostics:[]}})}return}return n(o)};this.client.processNotification=a}},ve(ur,"SEEN_CELL_DOCUMENT_URIS",new Set),ur),bE=Ml(),wE=ti(),_E=class extends wE.Transport{constructor(n){super();ve(this,"isClosed",!1);ve(this,"hasConnectedBefore",!1);ve(this,"pendingSubscriptions",[]);this.options=n,this.delegate=void 0}createDelegate(){if(this.delegate)try{this.delegate.close()}catch(n){be.warn("Error closing old WebSocket delegate",n)}this.delegate=new bE.WebSocketTransport(this.options.getWsUrl());for(let{event:n,handler:a}of this.pendingSubscriptions)this.delegate.subscribe(n,a);return this.delegate}isDelegateClosedOrClosing(){if(!this.delegate)return!0;let n=this.delegate.connection;return n?n.readyState===WebSocket.CLOSING||n.readyState===WebSocket.CLOSED:!0}async connect(){if(this.isClosed)throw Error("Transport is closed");return this.connectionPromise||(this.connectionPromise=(async()=>{try{this.options.waitForConnection&&await this.options.waitForConnection();let n=this.delegate;(!n||this.isDelegateClosedOrClosing())&&(n=this.createDelegate()),await n.connect(),be.log("WebSocket transport connected successfully");let a=this.hasConnectedBefore;this.hasConnectedBefore=!0,a&&this.options.onReconnect&&(be.log("Calling onReconnect callback to re-synchronize state"),await this.options.onReconnect())}catch(n){throw be.error("WebSocket transport connection failed",n),this.delegate=void 0,n}finally{this.connectionPromise=void 0}})()),this.connectionPromise}close(){var n;this.isClosed=!0,(n=this.delegate)==null||n.close(),this.delegate=void 0,this.connectionPromise=void 0}subscribe(...n){super.subscribe(...n);let[a,o]=n;this.pendingSubscriptions.push({event:a,handler:o}),this.delegate&&this.delegate.subscribe(a,o)}unsubscribe(...n){let a=super.unsubscribe(...n),[o,s]=n;return this.pendingSubscriptions=this.pendingSubscriptions.filter(c=>!(c.event===o&&c.handler===s)),this.delegate&&this.delegate.unsubscribe(o,s),a}async sendData(n,a){var o;if(this.isDelegateClosedOrClosing()){be.warn("WebSocket is closed or closing, attempting to reconnect");try{await this.connect()}catch(s){throw be.error("Failed to reconnect WebSocket",s),s}}return(o=this.delegate)==null?void 0:o.sendData(n,a)}};function ic(e,n){let a=I6();return new _E({getWsUrl:()=>a.getLSPURL(e).toString(),waitForConnection:async()=>{await T6()},onReconnect:n})}la.define(),new Fu;function xE(e){return e.facet(Y6.readOnly)}function kE(e){return[Lw(e),Ja.of([{key:"ArrowRight",preventDefault:!0,run:n=>c1(n,e)},{key:"Tab",preventDefault:!0,run:n=>c1(n,e)}])]}function c1(e,n){if(xE(e.state))return!1;let a=e.state.doc.length;return a===0?(e.dispatch({changes:{from:0,to:a,insert:n},selection:{head:n.length,anchor:n.length}}),!0):!1}function CE(e){let{beforeText:n,linkText:a,afterText:o,onClick:s}=e;return[Lw(c=>{let f=document.createElement("span");f.append(document.createTextNode(n));let d=document.createElement("span");return d.textContent=a,d.classList.add("cm-clickable-placeholder"),d.onclick=m=>{m.stopPropagation(),s(c)},f.append(d),f.append(document.createTextNode(o)),f}),Et.theme({".cm-placeholder":{color:"var(--slate-8)"},".cm-clickable-placeholder":{cursor:"pointer !important",pointerEvents:"auto",color:"var(--slate-9)",textDecoration:"underline",textUnderlineOffset:"0.2em"},".cm-clickable-placeholder:hover":{color:"var(--sky-11)"}})]}var SE=rr(e=>{let n,a={transport:ic("pylsp",async()=>{await(n==null?void 0:n())}),rootUri:ec(),workspaceFolders:tc()},o=e==null?void 0:e.pylsp,s=["D100","D103"],c=["W292","E402","E302","E305"],f=["B018","I001"],d={pylsp:{plugins:{marimo_plugin:{enabled:!0},jedi:{auto_import_modules:["numpy"]},jedi_completion:{include_params:!0,resolve_at_most:50},flake8:{enabled:o==null?void 0:o.enable_flake8,extendIgnore:c},pydocstyle:{enabled:o==null?void 0:o.enable_pydocstyle,ignore:s},pylint:{enabled:o==null?void 0:o.enable_pylint},pyflakes:{enabled:o==null?void 0:o.enable_pyflakes},pylsp_mypy:{enabled:o==null?void 0:o.enable_mypy,live_mode:!0},ruff:{enabled:o==null?void 0:o.enable_ruff,extendIgnore:[...c,...s,...f]},signature:{formatter:o!=null&&o.enable_ruff?"ruff":"black",line_length:88}}}},m=new ac(new ds({...a}),d);return n=()=>m.resyncAllDocuments(),m}),EE=rr(e=>{let n,a=new ac(new ds({transport:ic("ty",async()=>{await(n==null?void 0:n())}),rootUri:ec(),workspaceFolders:tc(),getWorkspaceConfiguration:o=>[{disableLanguageServices:!0}]}),{});return n=()=>a.resyncAllDocuments(),a}),TE=rr(e=>{var o;let n,a=new ac(new ds({transport:ic("pyrefly",async()=>{await(n==null?void 0:n())}),rootUri:ec(),workspaceFolders:tc(),initializationOptions:{pyrefly:{displayTypeErrors:((o=e.diagnostics)==null?void 0:o.enabled)??!1?"force-on":"force-off"}}}),{});return n=()=>a.resyncAllDocuments(),a}),IE=rr(e=>{let n,a=new ac(new ds({transport:ic("basedpyright",async()=>{await(n==null?void 0:n())}),rootUri:ec(),workspaceFolders:tc()}),{});return n=()=>a.resyncAllDocuments(),a}),LE=class{constructor(){ve(this,"parser",new _y);ve(this,"type","python");ve(this,"defaultCode",this.parser.defaultCode);ve(this,"defaultMetadata",this.parser.defaultMetadata)}transformIn(e){let n=this.parser.transformIn(e);return[n.code,n.offset,n.metadata]}transformOut(e,n){let a=this.parser.transformOut(e,n);return[a.code,a.offset]}isSupported(e){return this.parser.isSupported(e)}getExtension(e,n,a,o,s){return[(()=>{var _,x,S,E,L;let c={defaultKeymap:!1,activateOnTyping:n.activate_on_typing,closeOnBlur:!1},f={hideOnChange:!0},d=[];(_=s==null?void 0:s.pylsp)!=null&&_.enabled&&ws("pylsp")&&d.push(SE(s)),(x=s==null?void 0:s.ty)!=null&&x.enabled&&ws("ty")&&d.push(EE(s)),(S=s==null?void 0:s.pyrefly)!=null&&S.enabled&&ws("pyrefly")&&d.push(TE(s)),(E=s==null?void 0:s.basedpyright)!=null&&E.enabled&&ws("basedpyright")&&d.push(IE(s));let m=n.signature_hint_on_typing,b=m?/(\w+|\w+\.|\/)$/:/(\w+|\w+\.|\(|\/|,)$/;if(d.length>0){let P=d.length===1?d[0]:new Q3(d);return[Yh({client:P,languageId:"python",allowHTMLContent:!0,useSnippetOnCompletion:!0,hoverConfig:f,completionConfig:c,diagnosticsEnabled:((L=s.diagnostics)==null?void 0:L.enabled)??!1,sendIncrementalChanges:!1,signatureHelpEnabled:!0,signatureActivateOnTyping:m,signatureHelpOptions:{position:"above"},keyboardShortcuts:{signatureHelp:a.getHotkey("cell.signatureHelp").key,goToDefinition:a.getHotkey("cell.goToDefinition").key,rename:a.getHotkey("cell.renameSymbol").key},completionMatchBefore:b,onGoToDefinition:q=>{be.debug("onGoToDefinition",q),P.documentUri!==q.uri&&br().openFile({path:q.uri.replace("file://","")})}}),qg.of(cn.of(e))]}return Bu({...c,override:[Yy]})})(),Ym(),OE(o)]}};function OE(e){return e==="marimo-import"?qu.highest(kE("import marimo as mo")):e==="ai"?CE({beforeText:"Start coding or ",linkText:"generate",afterText:" with AI.",onClick:n=>{n.state.facet(st).aiCellCompletion()}}):[]}var xf=Gh.configure({props:[Q6.add({ParenthesizedExpression:Nw,ArgList:Nw})]});Ym=function(){return new qw(xf,[xf.data.of({autocomplete:Z8}),xf.data.of({autocomplete:eI})])};const AE=e=>{let n;return async()=>(n||(n=e()),await n)};var oc=class{constructor(e={}){ve(this,"opts");ve(this,"parser",null);ve(this,"offsetRecord",{});ve(this,"getParser",AE(async()=>{if(this.parser)return this.parser;let e=await re(()=>import("./node-sql-parser-B8vXamqL.js").then(async a=>(await a.__tla,a)).then(v6(1)),__vite__mapDeps([213,1]),import.meta.url),{Parser:n}=e.default||e;return this.parser=new n,this.parser}));this.opts=e}async parse(e,n){var s,c;this.offsetRecord={};let a=(c=(s=this.opts).getParserOptions)==null?void 0:c.call(s,n.state),o=await this.sanitizeSql(e,a);try{let f=await this.getParser();return(a==null?void 0:a.database)==="DuckDB"?this.parseWithDuckDBSupport(o,a):{success:!0,errors:[],ast:f.astify(o,a)}}catch(f){return{success:!1,errors:[this.extractErrorInfo(f,o)]}}}async sanitizeSql(e,n){if(n!=null&&n.ignoreBrackets){let{sql:a,offsetRecord:o}=NE(e);return this.offsetRecord=o,a}return e}async parseWithDuckDBSupport(e,n){let a=await this.getParser(),o=RE(e).trimStart().toLowerCase();if(o.startsWith("from")||o.includes("macro"))return{success:!0,errors:[]};let s=e;o.includes("create or replace table")&&(this.offsetRecord[e.indexOf("create or replace table")]=-11,s=e.replace(/create or replace table/i,"create table"));try{let c={...n,database:"PostgreSQL"};return{success:!0,errors:[],ast:a.astify(s,c)}}catch(c){return{success:!1,errors:[this.extractErrorInfo(c,e)]}}}extractErrorInfo(e,n){var f,d,m;let a=1,o=1,s=(e==null?void 0:e.message)||"SQL parsing error",c=e;if(c!=null&&c.location)a=((f=c.location.start)==null?void 0:f.line)||1,o=((d=c.location.start)==null?void 0:d.column)||1;else if(c!=null&&c.hash)a=c.hash.line||1,o=((m=c.hash.loc)==null?void 0:m.first_column)||1;else{let b=s.match(/line (\d+)/i),_=s.match(/column (\d+)/i);b!=null&&b[1]&&(a=parseInt(b[1],10)),_!=null&&_[1]&&(o=parseInt(_[1],10))}for(let[b,_]of Object.entries(this.offsetRecord))o>parseInt(b,10)&&(o-=_);return o>n.length&&(o=n.length),{message:this.cleanErrorMessage(s),line:Math.max(1,a),column:o,severity:"error"}}cleanErrorMessage(e){return e.replace(/^Error: /,"").replace(/Expected .* but .* found\./i,n=>n.replace(/but .* found/,"found unexpected token")).trim()}async validateSql(e,n){return(await this.parse(e,n)).errors}async extractTableReferences(e,n){var o,s;let a=n?(s=(o=this.opts).getParserOptions)==null?void 0:s.call(o,n.state):void 0;try{return(await this.getParser()).tableList(e,a).map(c=>{let f=c.split("::");return f[f.length-1]||c})}catch{return[]}}async extractColumnReferences(e,n){var o,s;let a=n!=null&&n.state?(s=(o=this.opts).getParserOptions)==null?void 0:s.call(o,n.state):void 0;try{return(await this.getParser()).columnList(e,a).map(c=>{let f=c.split("::");return f[f.length-1]||c})}catch{return[]}}};function RE(e,n=["/*","--"]){let a=[];if(n.includes("/*")&&a.push("/\\*[\\s\\S]*?\\*/"),n.includes("--")&&a.push("--[^\\n]*"),a.length===0)return e;let o=RegExp(`^\\s*(${a.join("|")})\\s*`,""),s=e,c="";for(;s!==c;)c=s,s=s.replace(o,"");return s}var PE=2;function NE(e){let n={};return{sql:e.replace(/("(?:[^"\\]|\\.)*")|('(?:[^'\\]|\\.)*')|(\{[^}]*\})/g,(a,o,s,c,f)=>o||s?a:c?(n[f]=PE,`'${c}'`):a),offsetRecord:n}}var ME=750;function DE(e,n){let a=n.line(e.line).from+Math.max(0,e.column-1);return{from:a,to:a+1,severity:e.severity,message:e.message,source:"sql-parser"}}function jE(e={}){let n=e.parser||new oc;return x8(async a=>{let o=a.state.doc,s=o.toString();return s.trim()?(await n.validateSql(s,{state:a.state})).map(c=>DE(c,o)):[]},{delay:e.delay||ME})}function ui(e){return typeof e=="object"&&!Array.isArray(e)&&!("self"in e)}function Dr(e){return typeof e=="object"&&!Array.isArray(e)&&"self"in e&&"children"in e}function cr(e){return Array.isArray(e)}function un(e,n,a,o){let s=e.length;if(n==="string"||n==="completion"&&o&&cr(o))return"column";if(n==="namespace"&&a){if(cr(a))return"table";if(ui(a))return Object.values(a).some(c=>cr(c)||Dr(c)&&cr(c.children))?s<=1?"database":"schema":s===0?"database":"namespace"}if(n==="completion"&&a)return cr(a)?"table":(ui(a)&&Object.values(a).some(c=>cr(c)||Dr(c)&&cr(c.children)),s<=1?"database":"schema");switch(s){case 0:return"database";case 1:return"schema";default:return"namespace"}}function u1(e,n,a={}){let{maxDepth:o=10}=a;if(n===""&&Dr(e)){let c=un([],"completion",e.children);return{completion:e.self,path:[],type:"completion",semanticType:c,namespace:e.children}}let s=n.split(".").filter(c=>c.length>0);return s.length===0||s.length>o?null:kf(e,s,[],a)}function kf(e,n,a,o,s){if(n.length===0){if(Dr(e)){let m=un(a,"completion",e.children,s);return{completion:e.self,path:a,type:"completion",semanticType:m,namespace:e.children}}return{path:a,type:"namespace",semanticType:un(a,"namespace",e,s),namespace:e}}let[c,...f]=n,{caseSensitive:d=!1}=o;if(!c)return null;if(ui(e)){let m=d?Object.keys(e).find(b=>b===c):Object.keys(e).find(b=>b.toLowerCase()===c.toLowerCase());if(m){let b=e[m];if(b)return kf(b,f,[...a,m],o,e)}}else{if(Dr(e))return kf(e.children,n,a,o,e);if(cr(e)){for(let m of e)if(typeof m=="string"){if((d?m===c:m.toLowerCase()===c.toLowerCase())&&f.length===0){let b=un([...a,m],"string",void 0,e);return{value:m,path:[...a,m],type:"string",semanticType:b}}}else if((d?m.label===c:m.label.toLowerCase()===c.toLowerCase())&&f.length===0){let b=un([...a,m.label],"completion",void 0,e);return{completion:m,path:[...a,m.label],type:"completion",semanticType:b}}}}return null}function zE(e,n,a={}){let o=[];if(n.includes(".")){let s=n.lastIndexOf("."),c=n.substring(0,s),f=n.substring(s+1),d=u1(e,c,a);if(d!=null&&d.namespace)return Cf(d.namespace,f,d.path,a)}else return Cf(e,n,[],a);return o}function Cf(e,n,a,o){let s=[],{caseSensitive:c=!1,allowPartialMatch:f=!0}=o;if(ui(e)){for(let[d,m]of Object.entries(e))if(f?c?d.startsWith(n):d.toLowerCase().startsWith(n.toLowerCase()):c?d===n:d.toLowerCase()===n.toLowerCase())if(Dr(m)){let b=un([...a,d],"completion",m.children,e);s.push({completion:m.self,path:[...a,d],type:"completion",semanticType:b,namespace:m.children})}else{let b=un([...a,d],"namespace",m,e);s.push({path:[...a,d],type:"namespace",semanticType:b,namespace:m})}}else if(Dr(e)){if(f?c?e.self.label.startsWith(n):e.self.label.toLowerCase().startsWith(n.toLowerCase()):c?e.self.label===n:e.self.label.toLowerCase()===n.toLowerCase()){let d=un([...a,e.self.label],"completion",e.children);s.push({completion:e.self,path:[...a,e.self.label],type:"completion",semanticType:d,namespace:e.children})}s.push(...Cf(e.children,n,a,o))}else if(cr(e)){for(let d of e)if(typeof d=="string"){if(f?c?d.startsWith(n):d.toLowerCase().startsWith(n.toLowerCase()):c?d===n:d.toLowerCase()===n.toLowerCase()){let m=un([...a,d],"string",void 0,e);s.push({value:d,path:[...a,d],type:"string",semanticType:m})}}else if(f?c?d.label.startsWith(n):d.label.toLowerCase().startsWith(n.toLowerCase()):c?d.label===n:d.label.toLowerCase()===n.toLowerCase()){let m=un([...a,d.label],"completion",void 0,e);s.push({completion:d,path:[...a,d.label],type:"completion",semanticType:m})}}return s}function qE(e,n,a={}){let o=[],{maxDepth:s=10}=a;sc(e,[],o,s);let{caseSensitive:c=!1}=a;return o.filter(f=>f.path.some(d=>c?d===n:d.toLowerCase()===n.toLowerCase())).sort((f,d)=>{var _,x;let m=c?f.path[f.path.length-1]===n:((_=f.path[f.path.length-1])==null?void 0:_.toLowerCase())===n.toLowerCase(),b=c?d.path[d.path.length-1]===n:((x=d.path[d.path.length-1])==null?void 0:x.toLowerCase())===n.toLowerCase();return m&&!b?-1:!m&&b?1:f.path.length-d.path.length})}function sc(e,n,a,o){if(!(n.length>=o)){if(ui(e))for(let[s,c]of Object.entries(e)){let f=[...n,s];if(Dr(c)){let d=un(f,"completion",c.children,e);a.push({completion:c.self,path:f,type:"completion",semanticType:d,namespace:c.children}),sc(c.children,f,a,o)}else{let d=un(f,"namespace",c,e);a.push({path:f,type:"namespace",semanticType:d,namespace:c}),sc(c,f,a,o)}}else if(Dr(e)){let s=un(n,"completion",e.children);a.push({completion:e.self,path:n,type:"completion",semanticType:s,namespace:e.children}),sc(e.children,n,a,o)}else if(cr(e))for(let s of e)if(typeof s=="string"){let c=un([...n,s],"string",void 0,e);a.push({value:s,path:[...n,s],type:"string",semanticType:c})}else{let c=un([...n,s.label],"completion",void 0,e);a.push({completion:s,path:[...n,s.label],type:"completion",semanticType:c})}}}function d1(e,n,a={}){let{enableFuzzySearch:o=!1}=a,s=u1(e,n,a);if(s)return s;let c=zE(e,n,a);if(c.length>0)return c[0]||null;if(o){let f=qE(e,n,a);if(f.length>0)return f[0]||null}return null}function f1(e,n){if(n.size===0)return{};if(ui(e)){let a={};for(let[o,s]of Object.entries(e))if(Array.from(n).some(c=>c.toLowerCase()===o.toLowerCase()))a[o]=s;else if(ui(s)){let c=f1(s,n);Object.keys(c).length>0&&(a[o]=c)}return a}return e}function FE(e={}){let{schema:n={},keywords:a={},hoverTime:o=300,enableKeywords:s=!0,enableTables:c=!0,enableColumns:f=!0,enableFuzzySearch:d=!0,parser:m=new oc,tooltipRender:b,tooltipRenderers:_={}}=e,x=null;return Vh(async(S,E,L)=>{let{from:P,to:q,text:V}=S.state.doc.lineAt(E),B=E,M=E;x===null&&(x=typeof a=="function"?a(S):Promise.resolve(a));let J=await x;for(;B>P&&/[\w.]/.test(V[B-P-1]??"");)B--;for(;M<q&&/[\w.]/.test(V[M-P]??"");)M++;if(B===E&&L<0||M===E&&L>0)return null;let le=V.slice(B-P,M-P).toLowerCase();if(!le||le.length===0)return null;let A=typeof n=="function"?n(S):n,j=null;if(`${le}`,!j&&s&&J[le]&&(J[le],j={word:le,view:S,pos:E,tooltipType:"keyword",keywordData:{keyword:le,info:J[le]}}),!j&&(c||f)&&A){let $=S.state.doc.toString(),oe=await m.extractTableReferences($),de=new Set(oe.map(ke=>ke.toLowerCase())),he=f1(A,de),ye=d1(he,le,{enableFuzzySearch:d});!ye&&de.size===0&&(ye=d1(A,le,{enableFuzzySearch:d})),ye&&(Array.from(de),j={word:le,view:S,pos:E,tooltipType:"namespace",namespaceData:{item:ye,word:le,resolvedSchema:de.size>0?he:A}})}return j?{pos:B,end:M,above:!0,create($){if(b){let he=b(le,$,E);if(he)return{dom:he}}let oe=null;if(j.tooltipType==="keyword"&&j.keywordData)oe=_.keyword?_.keyword(j.keywordData):h1(j.keywordData);else if(j.tooltipType==="namespace"&&j.namespaceData){let he=j.namespaceData,{semanticType:ye}=he.item;oe=ye==="table"&&_.table?_.table(he):ye==="column"&&_.column?_.column(he):(ye==="database"||ye==="schema"||ye==="namespace")&&_.namespace?_.namespace(he):p1(he.item)}if(!oe)return{dom:document.createElement("div")};let de=document.createElement("div");return de.className="cm-sql-hover-tooltip",de.innerHTML=oe,{dom:de}}}:null},{hoverTime:o})}function p1(e){var s,c,f,d,m,b,_;let n=e.path.join("."),a=((s=e.completion)==null?void 0:s.label)||e.value||e.path[e.path.length-1]||"unknown",o=`<div class="sql-hover-${e.semanticType}">`;switch(o+=`<div class="sql-hover-header"><strong>${a}</strong> <span class="sql-hover-type">${e.semanticType}</span></div>`,e.semanticType){case"database":if(o+=`<div class="sql-hover-description">Database${(c=e.completion)!=null&&c.detail?`: ${e.completion.detail}`:""}</div>`,e.namespace){let x=lc(e.namespace);x>0&&(o+=`<div class="sql-hover-children">Contains ${x} schema${x===1?"":"s"}</div>`)}break;case"schema":if(o+=`<div class="sql-hover-description">Schema${(f=e.completion)!=null&&f.detail?`: ${e.completion.detail}`:""}</div>`,n&&(o+=`<div class="sql-hover-path"><strong>Path:</strong> <code>${n}</code></div>`),e.namespace){let x=lc(e.namespace);x>0&&(o+=`<div class="sql-hover-children">Contains ${x} table${x===1?"":"s"}</div>`)}break;case"table":if(o+=`<div class="sql-hover-description">Table${(d=e.completion)!=null&&d.detail?`: ${e.completion.detail}`:""}</div>`,n){let x=e.path;x.length>1&&(o+=`<div class="sql-hover-path"><strong>Schema:</strong> <code>${x.slice(0,-1).join(".")}</code></div>`)}if(e.namespace&&cr(e.namespace)){let x=e.namespace;if(x.length>0){o+=`<div class="sql-hover-columns"><strong>Columns (${x.length}):</strong><br>`;let S=x.slice(0,8).map(E=>typeof E=="string"?E:E.label);o+=S.map(E=>`<code>${E}</code>`).join(", "),x.length>8&&(o+=`, <em>and ${x.length-8} more...</em>`),o+="</div>"}}break;case"column":if(o+=`<div class="sql-hover-description">Column${(m=e.completion)!=null&&m.detail?`: ${e.completion.detail}`:""}</div>`,n){let x=e.path;x.length>1&&(o+=`<div class="sql-hover-path"><strong>Table:</strong> <code>${x.slice(0,-1).join(".")}</code></div>`)}break;default:if(o+=`<div class="sql-hover-description">Namespace${(b=e.completion)!=null&&b.detail?`: ${e.completion.detail}`:""}</div>`,n&&(o+=`<div class="sql-hover-path"><strong>Path:</strong> <code>${n}</code></div>`),e.namespace){let x=lc(e.namespace);x>0&&(o+=`<div class="sql-hover-children">Contains ${x} item${x===1?"":"s"}</div>`)}break}return(_=e.completion)!=null&&_.info&&typeof e.completion.info=="string"&&(o+=`<div class="sql-hover-info">${e.completion.info}</div>`),o+="</div>",o}function lc(e){return Array.isArray(e)?e.length:typeof e=="object"&&e?"self"in e&&"children"in e?1+lc(e.children):Object.keys(e).length:0}function h1(e){let{keyword:n,info:a}=e,o='<div class="sql-hover-keyword">';if(o+=`<div class="sql-hover-header"><strong>${n.toUpperCase()}</strong> <span class="sql-hover-type">keyword</span></div>`,o+=`<div class="sql-hover-description">${a.description}</div>`,a.syntax&&(o+=`<div class="sql-hover-syntax"><strong>Syntax:</strong> <code>${a.syntax}</code></div>`),a.example&&(o+=`<div class="sql-hover-example"><strong>Example:</strong><br><code>${a.example}</code></div>`),a.metadata&&typeof a.metadata=="object"&&Object.keys(a.metadata).length>0){o+='<div class="sql-hover-metadata">';for(let[s,c]of Object.entries(a.metadata))o+=`<span class="sql-hover-tag" title="${s}">${c}</span> `;o+="</div>"}return o+="</div>",o}function BE(e){let{tableName:n,columns:a,metadata:o}=e,s='<div class="sql-hover-table">';if(s+=`<div class="sql-hover-header"><strong>${n}</strong> <span class="sql-hover-type">table</span></div>`,s+=`<div class="sql-hover-description">Table with ${a.length} column${a.length===1?"":"s"}</div>`,a.length>0){s+='<div class="sql-hover-columns"><strong>Columns:</strong><br>';let c=a.slice(0,10);s+=c.map(f=>`<code>${f}</code>`).join(", "),a.length>10&&(s+=`, <em>and ${a.length-10} more...</em>`),s+="</div>"}if(o&&typeof o=="object"&&Object.keys(o).length>0){s+='<div class="sql-hover-metadata">';for(let[c,f]of Object.entries(o))s+=`<span class="sql-hover-tag" title="${c}">${f}</span> `;s+="</div>"}return s+="</div>",s}function VE(e){let{tableName:n,columnName:a,schema:o,metadata:s}=e,c='<div class="sql-hover-column">';c+=`<div class="sql-hover-header"><strong>${a}</strong> <span class="sql-hover-type">column</span></div>`,c+=`<div class="sql-hover-description">Column in table <code>${n}</code></div>`;let f=o[n];if(f&&f.length>1){let d=f.filter(m=>m!==a);if(d.length>0){c+=`<div class="sql-hover-related"><strong>Other columns in ${n}:</strong><br>`;let m=d.slice(0,8);c+=m.map(b=>`<code>${b}</code>`).join(", "),d.length>8&&(c+=`, <em>and ${d.length-8} more...</em>`),c+="</div>"}}if(s&&typeof s=="object"&&Object.keys(s).length>0){c+='<div class="sql-hover-metadata">';for(let[d,m]of Object.entries(s))c+=`<span class="sql-hover-tag" title="${d}">${m}</span> `;c+="</div>"}return c+="</div>",c}const HE={keyword:h1,table:BE,column:VE,namespace:p1},m1=(e="light")=>{let n=e==="dark"?{tooltipBg:"#1f2937",tooltipBorder:"#374151",tooltipText:"#f9fafb",tooltipTypeBg:"#374151",tooltipTypeText:"#9ca3af",tooltipChildren:"#9ca3af",codeBg:"#374151",codeText:"#f3f4f6",strong:"#ffffff",em:"#9ca3af",header:"#ffffff",info:"#d1d5db",related:"#d1d5db",path:"#d1d5db",example:"#d1d5db",columns:"#d1d5db",syntax:"#d1d5db"}:{tooltipBg:"#ffffff",tooltipBorder:"#e5e7eb",tooltipText:"#374151",tooltipTypeBg:"#f3f4f6",tooltipTypeText:"#6b7280",tooltipChildren:"#6b7280",codeBg:"#f9fafb",codeText:"#1f2937",strong:"#111827",em:"#6b7280",header:"#111827",info:"#374151",related:"#374151",path:"#374151",example:"#374151",columns:"#374151",syntax:"#374151"};return Et.theme({".cm-sql-hover-tooltip":{padding:"8px 12px",backgroundColor:n.tooltipBg,border:`1px solid ${n.tooltipBorder}`,borderRadius:"6px",boxShadow:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",fontSize:"13px",lineHeight:"1.4",maxWidth:"320px",fontFamily:"system-ui, -apple-system, sans-serif",color:n.tooltipText},".cm-sql-hover-tooltip .sql-hover-header":{marginBottom:"6px",display:"flex",alignItems:"center",gap:"6px",color:n.header},".cm-sql-hover-tooltip .sql-hover-type":{fontSize:"11px",padding:"2px 6px",backgroundColor:n.tooltipTypeBg,color:n.tooltipTypeText,borderRadius:"4px",fontWeight:"500"},".cm-sql-hover-tooltip .sql-hover-description":{color:n.info,marginBottom:"8px"},".cm-sql-hover-tooltip .sql-hover-syntax":{marginBottom:"8px",color:n.syntax},".cm-sql-hover-tooltip .sql-hover-example":{marginBottom:"4px",color:n.example},".cm-sql-hover-tooltip .sql-hover-columns":{marginBottom:"4px",color:n.columns},".cm-sql-hover-tooltip .sql-hover-related":{marginBottom:"4px",color:n.related},".cm-sql-hover-tooltip .sql-hover-path":{marginBottom:"4px",color:n.path},".cm-sql-hover-tooltip .sql-hover-info":{marginBottom:"4px",color:n.info},".cm-sql-hover-tooltip .sql-hover-children":{marginBottom:"4px",color:n.tooltipChildren,fontSize:"12px"},".cm-sql-hover-tooltip code":{backgroundColor:n.codeBg,padding:"1px 4px",borderRadius:"3px",fontSize:"12px",fontFamily:"ui-monospace, 'SF Mono', 'Monaco', 'Cascadia Code', 'Roboto Mono', monospace",color:n.codeText},".cm-sql-hover-tooltip strong":{fontWeight:"600",color:n.strong},".cm-sql-hover-tooltip em":{fontStyle:"italic",color:n.em}})};var $E=class{constructor(e){ve(this,"parser");ve(this,"cache",new Map);ve(this,"MAX_CACHE_SIZE",10);this.parser=e}async analyzeDocument(e){let n=e.doc.toString(),a=this.generateCacheKey(n),o=this.cache.get(a);if(o)return o;let s=await this.extractStatements(n,e);if(this.cache.set(a,s),this.cache.size>this.MAX_CACHE_SIZE){let c=this.cache.keys().next().value;c!==void 0&&this.cache.delete(c)}return s}async getStatementAtPosition(e,n){return(await this.analyzeDocument(e)).find(a=>n>=a.from&&n<=a.to)||null}async getStatementsInRange(e,n,a){return(await this.analyzeDocument(e)).filter(o=>o.from<=a&&o.to>=n)}async extractStatements(e,n){let a=[],o=this.splitByStatementSeparators(e),s=0;for(let c of o){let f=c.trim();if(f.length===0){s+=c.length;continue}let d=s+c.indexOf(f),m=d+f.length,b=n.doc.lineAt(d),_=n.doc.lineAt(m),x=this.stripComments(f);if(x.trim().length===0||x.trim()===";"){s+=c.length;continue}let S=await this.parser.parse(x,{state:n}),E=this.determineStatementType(x),L=x.endsWith(";")?x.slice(0,-1).trim():x.trim();a.push({from:d,to:m,lineFrom:b.number,lineTo:_.number,content:L,type:E,isValid:S.success}),s+=c.length}return a}splitByStatementSeparators(e){let n=[],a="",o=!1,s="",c=!1,f=!1,d=0;for(;d<e.length;){let m=e[d],b=e[d+1];if(!o&&!f&&m==="-"&&b==="-"){c=!0,a+=m+b,d+=2;continue}if(!o&&!c&&m==="/"&&b==="*"){f=!0,a+=m+b,d+=2;continue}if(f&&m==="*"&&b==="/"){f=!1,a+=m+b,d+=2;continue}if(c&&(m===`
|
|
113
113
|
`||m==="\r")){c=!1,a+=m,d++;continue}if(c||f){a+=m,d++;continue}if(!o&&(m==="'"||m==='"'||m==="`"))o=!0,s=m,a+=m;else if(o&&m===s){if(b===s){a+=m+b,d+=2;continue}o=!1,s="",a+=m}else!o&&m===";"?(a+=m,n.push(a),a=""):a+=m;d++}return a.trim()&&n.push(a),n}determineStatementType(e){let n=e.trim().toLowerCase();return n.startsWith("select")?"select":n.startsWith("insert")?"insert":n.startsWith("update")?"update":n.startsWith("delete")?"delete":n.startsWith("create")?"create":n.startsWith("drop")?"drop":n.startsWith("alter")?"alter":n.startsWith("use")?"use":"other"}stripComments(e){let n="",a=!1,o="",s=!1,c=!1,f=0;for(;f<e.length;){let d=e[f],m=e[f+1];if(!a&&!c&&d==="-"&&m==="-"){s=!0,f+=2;continue}if(!a&&!s&&d==="/"&&m==="*"){c=!0,f+=2;continue}if(c&&d==="*"&&m==="/"){c=!1,f+=2;continue}if(s&&(d===`
|
|
114
114
|
`||d==="\r")){s=!1,n+=d,f++;continue}if(s||c){f++;continue}if(!a&&(d==="'"||d==='"'||d==="`"))a=!0,o=d,n+=d;else if(a&&d===o){if(m===o){n+=d+m,f+=2;continue}a=!1,o="",n+=d}else n+=d;f++}return n}generateCacheKey(e){let n=0;for(let a=0;a<e.length;a++){let o=e.charCodeAt(a);n=(n<<5)-n+o,n&=n}return n.toString()}clearCache(){this.cache.clear()}},g1=la.define(),y1=os.define({create(){return{currentStatement:null,allStatements:[],cursorPosition:0,isFocused:!0}},update(e,n){for(let a of n.effects)if(a.is(g1))return a.value;return e}}),WE=class extends i8{constructor(n,a,o=!0,s=!0){super();ve(this,"config");ve(this,"isCurrent");ve(this,"isValid");ve(this,"isFocused");this.config=n,this.isCurrent=a,this.isValid=o,this.isFocused=s}toDOM(){let n=document.createElement("div");n.className="cm-sql-gutter-marker";let a=this.config.backgroundColor||"#3b82f6";!this.isValid&&this.config.showInvalid!==!1&&(a=this.config.errorBackgroundColor||"#ef4444");let o;return o=this.isFocused?this.isCurrent?"1":(this.config.inactiveOpacity||"0.3").toString():this.config.unfocusedOpacity===void 0?this.config.hideWhenNotFocused?"0":this.isCurrent?"1":(this.config.inactiveOpacity||"0.3").toString():this.config.unfocusedOpacity.toString(),n.style.cssText=`
|
|
115
115
|
background: ${a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as P}from"./chunk-LvLJmgfZ.js";import{t as U}from"./react-Bj1aDYRI.js";import{gr as X,ur as $}from"./cells-
|
|
1
|
+
import{s as P}from"./chunk-LvLJmgfZ.js";import{t as U}from"./react-Bj1aDYRI.js";import{gr as X,ur as $}from"./cells-DAxz8J5R.js";import{C as z,P as G,R as E,T as K}from"./zod-H_cgTO0M.js";import{t as J}from"./compiler-runtime-B3qBwwSJ.js";import{t as L}from"./isEmpty-CXeoXbuc.js";import{X as Q}from"./ai-model-dropdown-B-9yxYM4.js";import{_ as W}from"./useEventListener-BR0C1MaI.js";import{t as C}from"./cn-DCUzRj2J.js";import{t as Y}from"./jsx-runtime-BqBOg78p.js";import{a as D,i as I,n as V,r as B}from"./multi-map-rafH3cg3.js";import{i as Z}from"./strings-md4mFbOQ.js";import{t as ee}from"./bot-message-square-DrbHk31W.js";import{t as H}from"./markdown-renderer-CbuqHMPu.js";import{l as te}from"./add-cell-with-ai-D5JeNTNV.js";import{n as se}from"./spinner-Bhir8k53.js";import{c as ae}from"./datasource-C1JWjcmE.js";import{t as re}from"./RenderHTML-DkEHxB1r.js";var le=J(),ne=P(U(),1),t=P(Y(),1);const oe=n=>{let e=(0,le.c)(13),{reasoning:a,index:l,isStreaming:s}=n,r=l===void 0?0:l,m=s===void 0?!1:s,o=m?"reasoning":void 0,x;e[0]===Symbol.for("react.memo_cache_sentinel")?(x=(0,t.jsx)(ee,{className:"h-3 w-3"}),e[0]=x):x=e[0];let p=m?"Thinking":"View reasoning",c;e[1]!==a.length||e[2]!==p?(c=(0,t.jsx)(D,{className:"text-xs text-muted-foreground hover:bg-muted/50 px-2 py-1 h-auto rounded-sm [&[data-state=open]>svg]:rotate-180",children:(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[x,p," (",a.length," ","chars)"]})}),e[1]=a.length,e[2]=p,e[3]=c):c=e[3];let i;e[4]===a?i=e[5]:(i=(0,t.jsx)(B,{className:"pb-2 px-2",children:(0,t.jsx)("div",{className:"bg-muted/30 border border-muted/50 rounded-md p-3 italic text-muted-foreground/90 relative",children:(0,t.jsx)("div",{className:"pr-6",children:(0,t.jsx)(H,{content:a})})})}),e[4]=a,e[5]=i);let d;e[6]!==c||e[7]!==i?(d=(0,t.jsxs)(I,{value:"reasoning",className:"border-0",children:[c,i]}),e[6]=c,e[7]=i,e[8]=d):d=e[8];let u;return e[9]!==r||e[10]!==o||e[11]!==d?(u=(0,t.jsx)(V,{type:"single",collapsible:!0,className:"w-full mb-2",value:o,children:d},r),e[9]=r,e[10]=o,e[11]=d,e[12]=u):u=e[12],u};var T=J(),ie=G({status:E().default("success"),auth_required:K().default(!1),action_url:z(),next_steps:z(),meta:z(),message:E().nullish()}).passthrough(),de=n=>{let e=(0,T.c)(12),{data:a}=n,l;if(e[0]!==a){let{status:s,auth_required:r,action_url:m,meta:o,next_steps:x,message:p,...c}=a,i;e[2]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)("h3",{className:"text-xs font-semibold text-muted-foreground",children:"Tool Result"}),e[2]=i):i=e[2];let d;e[3]===s?d=e[4]:(d=(0,t.jsx)("span",{className:"text-xs px-2 py-0.5 bg-[var(--grass-2)] text-[var(--grass-11)] rounded-full font-medium capitalize",children:s}),e[3]=s,e[4]=d);let u;e[5]===r?u=e[6]:(u=r&&(0,t.jsx)("span",{className:"text-xs px-2 py-0.5 bg-[var(--amber-2)] text-[var(--amber-11)] rounded-full",children:"Auth Required"}),e[5]=r,e[6]=u);let h;e[7]!==d||e[8]!==u?(h=(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[i,(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[d,u]})]}),e[7]=d,e[8]=u,e[9]=h):h=e[9];let f;e[10]===p?f=e[11]:(f=p&&(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[(0,t.jsx)($,{className:"h-3 w-3 text-[var(--blue-11)] mt-0.5 flex-shrink-0"}),(0,t.jsx)("div",{className:"text-xs text-foreground",children:p})]}),e[10]=p,e[11]=f),l=(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[h,f,c&&(0,t.jsx)("div",{className:"space-y-3",children:Object.entries(c).map(xe)})]}),e[0]=a,e[1]=l}else l=e[1];return l},ce=n=>{let e=(0,T.c)(8),{result:a}=n,l;e[0]===a?l=e[1]:(l=ie.safeParse(a),e[0]=a,e[1]=l);let s=l;if(s.success){let o;return e[2]===s.data?o=e[3]:(o=(0,t.jsx)(de,{data:s.data}),e[2]=s.data,e[3]=o),o}let r;e[4]===a?r=e[5]:(r=typeof a=="string"?a:JSON.stringify(a,null,2),e[4]=a,e[5]=r);let m;return e[6]===r?m=e[7]:(m=(0,t.jsx)("div",{className:"text-xs font-medium text-muted-foreground mb-1 max-h-64 overflow-y-auto scrollbar-thin",children:r}),e[6]=r,e[7]=m),m},me=n=>{let e=(0,T.c)(9),{input:a}=n;if(!(a&&a!==null))return null;let l;e[0]===a?l=e[1]:(l=L(a),e[0]=a,e[1]=l);let s=l,r=typeof a=="object"&&!Array.isArray(a)&&Object.keys(a).length>0,m;e[2]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)("h3",{className:"text-xs font-semibold text-muted-foreground",children:"Tool Request"}),e[2]=m):m=e[2];let o;e[3]!==a||e[4]!==s||e[5]!==r?(o=s?"{}":r?JSON.stringify(a,null,2):String(a),e[3]=a,e[4]=s,e[5]=r,e[6]=o):o=e[6];let x;return e[7]===o?x=e[8]:(x=(0,t.jsxs)("div",{className:"space-y-2",children:[m,(0,t.jsx)("pre",{className:"bg-[var(--slate-2)] p-2 text-muted-foreground border border-[var(--slate-4)] rounded text-xs overflow-auto scrollbar-thin max-h-64",children:o})]}),e[7]=o,e[8]=x),x};const M=n=>{let e=(0,T.c)(38),{toolName:a,result:l,error:s,index:r,state:m,className:o,input:x}=n,p=r===void 0?0:r,c=m==="output-available"&&(l||s),i=s?"error":c?"success":"loading",d;e[0]===i?d=e[1]:(d=()=>{switch(i){case"loading":return(0,t.jsx)(se,{className:"h-3 w-3 animate-spin"});case"error":return(0,t.jsx)(X,{className:"h-3 w-3 text-[var(--red-11)]"});case"success":return(0,t.jsx)(Q,{className:"h-3 w-3 text-[var(--grass-11)]"});default:return(0,t.jsx)(ae,{className:"h-3 w-3"})}},e[0]=i,e[1]=d);let u=d,h;e[2]!==s||e[3]!==c||e[4]!==i?(h=()=>i==="loading"?"Running":s?"Failed":c?"Done":"Tool call",e[2]=s,e[3]=c,e[4]=i,e[5]=h):h=e[5];let f=h,F=`tool-${p}`,g;e[6]===o?g=e[7]:(g=C("w-full",o),e[6]=o,e[7]=g);let A=i==="error"&&"text-[var(--red-11)]/80",k=i==="success"&&"text-[var(--grass-11)]/80",j;e[8]!==A||e[9]!==k?(j=C("h-6 text-xs border-border shadow-none! ring-0! bg-muted/60 hover:bg-muted py-0 px-2 gap-1 rounded-sm [&[data-state=open]>svg]:rotate-180 hover:no-underline",A,k),e[8]=A,e[9]=k,e[10]=j):j=e[10];let v;e[11]===u?v=e[12]:(v=u(),e[11]=u,e[12]=v);let q=f(),b;e[13]===a?b=e[14]:(b=ue(a),e[13]=a,e[14]=b);let N;e[15]===b?N=e[16]:(N=(0,t.jsx)("code",{className:"font-mono text-xs",children:b}),e[15]=b,e[16]=N);let y;e[17]!==q||e[18]!==N||e[19]!==v?(y=(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[v,q,":",N]}),e[17]=q,e[18]=N,e[19]=v,e[20]=y):y=e[20];let w;e[21]!==y||e[22]!==j?(w=(0,t.jsx)(D,{className:j,children:y}),e[21]=y,e[22]=j,e[23]=w):w=e[23];let _;e[24]!==s||e[25]!==c||e[26]!==x||e[27]!==l?(_=c&&(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)(me,{input:x}),l!=null&&(0,t.jsx)(ce,{result:l}),s&&(0,t.jsxs)("div",{className:"bg-[var(--red-2)] border border-[var(--red-6)] rounded-lg p-3",children:[(0,t.jsxs)("div",{className:"text-xs font-semibold text-[var(--red-11)] mb-2 flex items-center gap-2",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 bg-[var(--red-9)] rounded-full"}),"Error"]}),(0,t.jsx)("div",{className:"text-sm text-[var(--red-11)] leading-relaxed",children:s})]})]}),e[24]=s,e[25]=c,e[26]=x,e[27]=l,e[28]=_):_=e[28];let S;e[29]===_?S=e[30]:(S=(0,t.jsx)(B,{className:"py-2 px-2",children:_}),e[29]=_,e[30]=S);let R;e[31]!==w||e[32]!==S?(R=(0,t.jsxs)(I,{value:"tool-call",className:"border-0",children:[w,S]}),e[31]=w,e[32]=S,e[33]=R):R=e[33];let O;return e[34]!==R||e[35]!==F||e[36]!==g?(O=(0,t.jsx)(V,{type:"single",collapsible:!0,className:g,children:R},F),e[34]=R,e[35]=F,e[36]=g,e[37]=O):O=e[37],O};function ue(n){return n.replace("tool-","")}function xe(n){let[e,a]=n;return L(a)?null:(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsxs)("div",{className:"text-xs font-medium text-muted-foreground capitalize flex items-center gap-2",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 bg-[var(--blue-9)] rounded-full"}),e]}),(0,t.jsx)("pre",{className:"bg-[var(--slate-2)] p-2 text-muted-foreground border border-[var(--slate-4)] rounded text-xs overflow-auto scrollbar-thin max-h-64",children:JSON.stringify(a,null,2)})]},e)}const pe=({message:n,isStreamingReasoning:e,isLast:a})=>{return(0,t.jsx)(t.Fragment,{children:n.parts.map((s,r)=>l(s,r))});function l(s,r){if(he(s))return(0,t.jsx)(M,{index:r,toolName:s.type,result:s.output,className:"my-2",state:s.state,input:s.input},r);if(fe(s))return W.debug("Found data part",s),null;switch(s.type){case"text":return s.text.includes("<marimo-")?(0,t.jsx)(ne.Fragment,{children:re({html:s.text})},r):(0,t.jsx)(H,{content:s.text},r);case"reasoning":return(0,t.jsx)(oe,{reasoning:s.text,index:r,isStreaming:e&&a&&r===(n.parts.length||0)-1},r);case"file":return(0,t.jsx)(te,{attachment:s},r);case"dynamic-tool":return(0,t.jsx)(M,{toolName:s.toolName,result:s.output,state:s.state,input:s.input},r);case"source-document":case"source-url":case"step-start":return W.debug("Found non-renderable part",s),null;default:return Z(s),null}}};function he(n){return n.type.startsWith("tool-")}function fe(n){return n.type.startsWith("data-")}export{pe as t};
|