@marimo-team/frontend 0.19.7-dev33 → 0.19.7-dev35
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-DLlfsrEI.js → CellStatus-DhGipVU-.js} +1 -1
- package/dist/assets/{JsonOutput-Dw_ZIGoz.js → JsonOutput-BGSqWZkD.js} +10 -10
- package/dist/assets/{MarimoErrorOutput-DscugIeA.js → MarimoErrorOutput-DFV7O8tN.js} +1 -1
- package/dist/assets/{RenderHTML-DPkeBHFB.js → RenderHTML-Co6iQEvR.js} +1 -1
- package/dist/assets/{add-cell-with-ai-BHgqYu8P.js → add-cell-with-ai-gDjJxct8.js} +1 -1
- package/dist/assets/{add-database-form-DAMSmPZS.js → add-database-form-CqEjMrq2.js} +1 -1
- package/dist/assets/{agent-panel-BOEtQvcD.js → agent-panel-D_hcgMlT.js} +1 -1
- package/dist/assets/{ai-model-dropdown-DxImvtE1.js → ai-model-dropdown-C_l_zAXd.js} +1 -1
- package/dist/assets/{app-config-button-D4NHNYdV.js → app-config-button-CM05VD_Y.js} +1 -1
- package/dist/assets/{cell-editor-Bed2HJRi.js → cell-editor-ihhw9Ql3.js} +1 -1
- package/dist/assets/{cell-link-a1r84hCk.js → cell-link-_-mIiddP.js} +1 -1
- package/dist/assets/{cells-Mf-pdsEh.js → cells-BW_4R0Qw.js} +1 -1
- package/dist/assets/{chat-components-BpunBJu9.js → chat-components-ZGfi_TyH.js} +1 -1
- package/dist/assets/{chat-display-B0625p01.js → chat-display-yGAtJXm0.js} +1 -1
- package/dist/assets/{chat-panel-CkHdco_X.js → chat-panel-D3T1CjpZ.js} +1 -1
- package/dist/assets/{column-preview-YJ759JhT.js → column-preview-DbqM1diq.js} +1 -1
- package/dist/assets/{command-BmWAYrdT.js → command-B5H3BrRg.js} +1 -1
- package/dist/assets/{command-palette-c1vQwlGd.js → command-palette-C2L80RlN.js} +1 -1
- package/dist/assets/{common-kVa9xjZc.js → common-D32S2RVD.js} +1 -1
- package/dist/assets/{datasource-jW7Cq5OE.js → datasource-CpcDqjf_.js} +1 -1
- package/dist/assets/{dependency-graph-panel-BWvUSpJI.js → dependency-graph-panel-C7ZXgECY.js} +1 -1
- package/dist/assets/{documentation-panel-z2oxdgzR.js → documentation-panel-BK_YuaI4.js} +1 -1
- package/dist/assets/{download-vBVDTXQk.js → download-CzPV-R6Z.js} +1 -1
- package/dist/assets/{edit-page-D-_8Dpee.js → edit-page-DFpXAt-U.js} +3 -3
- package/dist/assets/{error-panel-BxmwSms7.js → error-panel-DKIWwbhe.js} +1 -1
- package/dist/assets/{file-explorer-panel-Bhrg_Wb0.js → file-explorer-panel-D4VHkjMW.js} +1 -1
- package/dist/assets/{floating-outline-mEMcQGQK.js → floating-outline-Ni_RT38T.js} +1 -1
- package/dist/assets/{focus-ay4g-SB6.js → focus-CsiV5LZR.js} +1 -1
- package/dist/assets/{form-DFq7l6gy.js → form-XjMNGyzu.js} +1 -1
- package/dist/assets/{globals-Du9rkBEf.js → globals-ols5LsZP.js} +1 -1
- package/dist/assets/{home-page-Cg221ah6.js → home-page-DBWXVxWa.js} +1 -1
- package/dist/assets/{hooks-CPM5R4f-.js → hooks-CpjzmBkw.js} +1 -1
- package/dist/assets/{html-to-image-Cdx1xsbU.js → html-to-image-DKvXQkl5.js} +1 -1
- package/dist/assets/{index-DL0FpFYQ.js → index-BRCNo5ma.js} +3 -3
- package/dist/assets/{kiosk-mode-Y_Rs0fTN.js → kiosk-mode-vMIC4Cbh.js} +1 -1
- package/dist/assets/{layout-C50dPCAb.js → layout-DiDoTAUA.js} +1 -1
- package/dist/assets/{logs-panel-bOS3V2nr.js → logs-panel-DeNFSwJb.js} +1 -1
- package/dist/assets/{markdown-renderer-DSY-ElEE.js → markdown-renderer-xQJ1KM4c.js} +1 -1
- package/dist/assets/{mode-TsexQOfl.js → mode-BCr7l3Th.js} +1 -1
- package/dist/assets/{name-cell-input-B_OPYPFz.js → name-cell-input-D6uaGwg7.js} +1 -1
- package/dist/assets/{outline-panel-DkOJrPIL.js → outline-panel-DpbnlPhw.js} +1 -1
- package/dist/assets/{packages-panel-thVjzLK4.js → packages-panel-D53RuG3X.js} +1 -1
- package/dist/assets/{panels-H0GWZM90.js → panels-BhznEx5N.js} +1 -1
- package/dist/assets/{process-output-ccUMEFYE.js → process-output-TMO5uCHT.js} +1 -1
- package/dist/assets/{readonly-python-code-B1UBDfCT.js → readonly-python-code-kImQwJ5f.js} +1 -1
- package/dist/assets/{run-page-CiOYN_zF.js → run-page-BCOAGhl5.js} +1 -1
- package/dist/assets/{scratchpad-panel-BiE33kLt.js → scratchpad-panel-C8wx6cRl.js} +1 -1
- package/dist/assets/{session-panel-DCRBt85z.js → session-panel-JOOuJNOH.js} +1 -1
- package/dist/assets/{snippets-panel-DeCtu_nU.js → snippets-panel-ypIwat9G.js} +1 -1
- package/dist/assets/{state-BXbqGYab.js → state-BrsyJBHJ.js} +1 -1
- package/dist/assets/{switch-NTEWSiVz.js → switch-Cch0bLxo.js} +1 -1
- package/dist/assets/{textarea-Ddtm_ohJ.js → textarea-DSR2T2ft.js} +1 -1
- package/dist/assets/{tracing-panel-BowfBZDI.js → tracing-panel-57WGQhyd.js} +2 -2
- package/dist/assets/{tracing-Hw-L0vPw.js → tracing-vnJxVAtK.js} +1 -1
- package/dist/assets/{types-1gCn5Ky0.js → types-fTSozrNJ.js} +1 -1
- package/dist/assets/{useAddCell-M6_IuI4C.js → useAddCell-BMDEXuVk.js} +1 -1
- package/dist/assets/{useCellActionButton-Ddy42rre.js → useCellActionButton-BDMlZzyv.js} +1 -1
- package/dist/assets/{useDeleteCell-Ct7dOEmt.js → useDeleteCell-BrMXAFkS.js} +1 -1
- package/dist/assets/{useDependencyPanelTab-RSRpRVKD.js → useDependencyPanelTab-B63bb4YX.js} +1 -1
- package/dist/assets/{useNotebookActions-C1MxSBln.js → useNotebookActions-Cj4FtiIb.js} +1 -1
- package/dist/assets/{useRunCells-BgXbioPv.js → useRunCells-C50mliNM.js} +1 -1
- package/dist/assets/{useSplitCell-BZ2kxLtm.js → useSplitCell-Cb0lf5MV.js} +1 -1
- package/dist/assets/{utilities.esm-BsBOP1QQ.js → utilities.esm-BVFPJPyV.js} +1 -1
- package/dist/index.html +31 -31
- package/package.json +1 -1
- package/src/components/editor/Output.tsx +6 -10
- package/src/core/config/feature-flag.tsx +1 -1
- package/src/utils/__tests__/mime-types.test.ts +326 -0
- package/src/utils/mime-types.ts +181 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as D}from"./chunk-LvLJmgfZ.js";import{l as X}from"./useEvent-DO6uJBas.js";import{t as Z}from"./react-BGmjiNul.js";import{St as z}from"./cells-Mf-pdsEh.js";import{t as E}from"./compiler-runtime-DeeZ7FnK.js";import{G as $,S as ee,c as te,i as se,l as le,n as ae,u as ne}from"./ai-model-dropdown-DxImvtE1.js";import{C as oe,v as re,w as Q}from"./utils-DXvhzCGS.js";import{j as ie}from"./config-CIrPQIbt.js";import{t as ce}from"./jsx-runtime-ZmTK25f3.js";import{t as de}from"./button-YC1gW_kJ.js";import{l as R}from"./once-Bul8mtFs.js";import{r as U}from"./requests-BsVD4CdD.js";import{t as he}from"./createLucideIcon-CnW3RofX.js";import{h as me,l as B}from"./select-V5IdpNiR.js";import{r as I}from"./input-pAun1m1X.js";import{t as Y}from"./settings-DOXWMfVd.js";import{a as L,c as M,d as A,g as xe,i as pe,l as F,o as P,p as fe,u as S}from"./textarea-Ddtm_ohJ.js";import{t as ue}from"./use-toast-rmUWldD_.js";import{t as G}from"./tooltip-CEc2ajau.js";import{o as je}from"./alert-dialog-DwQffb13.js";import{c as ve,l as ge,n as be,t as K}from"./dialog-CxGKN4C_.js";import{i as we,r as ye,t as Ne}from"./popover-D16ZremR.js";import{n as Ce}from"./useDebounce-D5NcotGm.js";import{n as ke}from"./ImperativeModal-CUbWEBci.js";import{t as O}from"./kbd-C3JY7O_u.js";import{t as _e}from"./links-DHZUhGz-.js";import{t as V}from"./Inputs-D2Xn4HON.js";var Se=he("power-off",[["path",{d:"M18.36 6.64A9 9 0 0 1 20.77 15",key:"dxknvb"}],["path",{d:"M6.16 6.16a9 9 0 1 0 12.68 12.68",key:"1x7qb5"}],["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]),Te=E(),s=D(ce(),1);const Le=t=>{let e=(0,Te.c)(15),{description:a,disabled:f,tooltip:r}=t,i=f===void 0?!1:f,u=r===void 0?"Shutdown":r,{openConfirm:b,closeModal:l}=ke(),{sendShutdown:n}=U(),w;e[0]===n?w=e[1]:(w=()=>{n(),setTimeout(Me,200)},e[0]=n,e[1]=w);let j=w;if(ie())return null;let m=i?"disabled":"red",c;e[2]!==l||e[3]!==a||e[4]!==j||e[5]!==b?(c=h=>{h.stopPropagation(),b({title:"Shutdown",description:a,variant:"destructive",confirmAction:(0,s.jsx)(je,{onClick:()=>{j(),l()},"aria-label":"Confirm Shutdown",children:"Shutdown"})})},e[2]=l,e[3]=a,e[4]=j,e[5]=b,e[6]=c):c=e[6];let o;e[7]===Symbol.for("react.memo_cache_sentinel")?(o=(0,s.jsx)(me,{strokeWidth:1}),e[7]=o):o=e[7];let d;e[8]!==i||e[9]!==m||e[10]!==c?(d=(0,s.jsx)(V,{"aria-label":"Shutdown","data-testid":"shutdown-button",shape:"circle",size:"small",color:m,className:"h-[27px] w-[27px]",disabled:i,onClick:c,children:o}),e[8]=i,e[9]=m,e[10]=c,e[11]=d):d=e[11];let x;return e[12]!==d||e[13]!==u?(x=(0,s.jsx)(G,{content:u,children:d}),e[12]=d,e[13]=u,e[14]=x):x=e[14],x};function Me(){window.close()}var J=E(),W=D(Z(),1),Ae=100;const Fe=()=>{let t=(0,J.c)(37),[e,a]=re(),{saveAppConfig:f}=U(),r=(0,W.useId)(),i=(0,W.useId)(),u;t[0]===Symbol.for("react.memo_cache_sentinel")?(u=fe(oe),t[0]=u):u=t[0];let b;t[1]===e?b=t[2]:(b={resolver:u,defaultValues:e},t[1]=e,t[2]=b);let l=xe(b),n;t[3]!==f||t[4]!==a?(n=async p=>{await f({config:p}).then(()=>{a(p)}).catch(()=>{a(p)})},t[3]=f,t[4]=a,t[5]=n):n=t[5];let w=n,j;t[6]===w?j=t[7]:(j=p=>{w(p)},t[6]=w,t[7]=j);let m=Ce(j,Ae),c;t[8]===e.width?c=t[9]:(c=[e.width],t[8]=e.width,t[9]=c),(0,W.useEffect)(Pe,c);let o;t[10]!==m||t[11]!==l?(o=l.handleSubmit(m),t[10]=m,t[11]=l,t[12]=o):o=t[12];let d;t[13]===Symbol.for("react.memo_cache_sentinel")?(d=(0,s.jsxs)("div",{children:[(0,s.jsx)(ne,{children:"Notebook Settings"}),(0,s.jsx)(le,{children:"Configure how your notebook or application looks and behaves."})]}),t[13]=d):d=t[13];let x;t[14]===l.control?x=t[15]:(x=(0,s.jsxs)(H,{title:"Display",children:[(0,s.jsx)(M,{control:l.control,name:"width",render:He}),(0,s.jsx)(M,{control:l.control,name:"app_title",render:Ee})]}),t[14]=l.control,t[15]=x);let h;t[16]===l.control?h=t[17]:(h=(0,s.jsxs)(H,{title:"Custom Files",children:[(0,s.jsx)(M,{control:l.control,name:"css_file",render:Ie}),(0,s.jsx)(M,{control:l.control,name:"html_head_file",render:Oe})]}),t[16]=l.control,t[17]=h);let y;t[18]===l.control?y=t[19]:(y=(0,s.jsx)(H,{title:"Data",children:(0,s.jsx)(M,{control:l.control,name:"sql_output",render:De})}),t[18]=l.control,t[19]=y);let N;t[20]!==r||t[21]!==i?(N=p=>{let{field:_}=p;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(F,{className:"flex flex-col gap-2",children:[(0,s.jsx)(L,{children:(0,s.jsxs)("div",{className:"flex gap-4",children:[(0,s.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,s.jsx)(z,{id:r,"data-testid":"html-checkbox",checked:_.value.includes("html"),onCheckedChange:()=>{_.onChange(R(_.value,"html"))}}),(0,s.jsx)(S,{htmlFor:r,children:"HTML"})]}),(0,s.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,s.jsx)(z,{id:i,"data-testid":"ipynb-checkbox",checked:_.value.includes("ipynb"),onCheckedChange:()=>{_.onChange(R(_.value,"ipynb"))}}),(0,s.jsx)(S,{htmlFor:i,children:"IPYNB"})]})]})}),(0,s.jsx)(A,{})]}),(0,s.jsxs)(P,{children:["When enabled, marimo will periodically save this notebook in your selected formats (HTML, IPYNB) to a folder named"," ",(0,s.jsx)(O,{className:"inline",children:"__marimo__"})," next to your notebook file."]})]})},t[20]=r,t[21]=i,t[22]=N):N=t[22];let v;t[23]!==l.control||t[24]!==N?(v=(0,s.jsx)(H,{title:"Exporting outputs",children:(0,s.jsx)(M,{control:l.control,name:"auto_download",render:N})}),t[23]=l.control,t[24]=N,t[25]=v):v=t[25];let C;t[26]!==v||t[27]!==x||t[28]!==h||t[29]!==y?(C=(0,s.jsxs)("div",{className:"grid grid-cols-2 gap-x-8 gap-y-4",children:[x,h,y,v]}),t[26]=v,t[27]=x,t[28]=h,t[29]=y,t[30]=C):C=t[30];let g;t[31]!==C||t[32]!==o?(g=(0,s.jsxs)("form",{onChange:o,className:"flex flex-col gap-6",children:[d,C]}),t[31]=C,t[32]=o,t[33]=g):g=t[33];let k;return t[34]!==l||t[35]!==g?(k=(0,s.jsx)(pe,{...l,children:g}),t[34]=l,t[35]=g,t[36]=k):k=t[36],k};var H=t=>{let e=(0,J.c)(5),{title:a,children:f}=t,r;e[0]===a?r=e[1]:(r=(0,s.jsx)("h3",{className:"text-base font-semibold mb-1",children:a}),e[0]=a,e[1]=r);let i;return e[2]!==f||e[3]!==r?(i=(0,s.jsxs)("div",{className:"flex flex-col gap-y-2",children:[r,f]}),e[2]=f,e[3]=r,e[4]=i):i=e[4],i};function Pe(){window.dispatchEvent(new Event("resize"))}function qe(t){return(0,s.jsx)("option",{value:t,children:t},t)}function He(t){let{field:e}=t;return(0,s.jsxs)(F,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{children:"Width"}),(0,s.jsx)(L,{children:(0,s.jsx)(B,{"data-testid":"app-width-select",onChange:a=>e.onChange(a.target.value),value:e.value,disabled:e.disabled,className:"inline-flex mr-2",children:ee().map(qe)})}),(0,s.jsx)(A,{})]})}function Ee(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(F,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{children:"App title"}),(0,s.jsx)(L,{children:(0,s.jsx)(I,{...e,value:e.value??"",onChange:a=>{e.onChange(a.target.value),Q.safeParse(a.target.value).success&&(document.title=a.target.value)}})}),(0,s.jsx)(A,{})]}),(0,s.jsx)(P,{children:"The application title is put in the title tag in the HTML code and typically displayed in the title bar of the browser window."})]})}function Ie(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(F,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{className:"shrink-0",children:"Custom CSS"}),(0,s.jsx)(L,{children:(0,s.jsx)(I,{...e,value:e.value??"",placeholder:"custom.css",onChange:a=>{e.onChange(a.target.value),Q.safeParse(a.target.value).success&&(document.title=a.target.value)}})}),(0,s.jsx)(A,{})]}),(0,s.jsx)(P,{children:"A filepath to a custom css file to be injected into the notebook."})]})}function Oe(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(F,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{className:"shrink-0",children:"HTML Head"}),(0,s.jsx)(L,{children:(0,s.jsx)(I,{...e,value:e.value??"",placeholder:"head.html",onChange:a=>{e.onChange(a.target.value)}})}),(0,s.jsx)(A,{})]}),(0,s.jsxs)(P,{children:["A filepath to an HTML file to be injected into the"," ",(0,s.jsx)(O,{className:"inline",children:"<head/>"})," section of the notebook. Use this to add analytics, custom fonts, meta tags, or external scripts."]})]})}function We(t){return(0,s.jsx)("option",{value:t.value,children:t.label},t.value)}function De(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(F,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{children:"SQL Output Type"}),(0,s.jsx)(L,{children:(0,s.jsx)(B,{"data-testid":"sql-output-select",onChange:a=>{e.onChange(a.target.value),ue({title:"Kernel Restart Required",description:"This change requires a kernel restart to take effect."})},value:e.value,disabled:e.disabled,className:"inline-flex mr-2",children:te.map(We)})}),(0,s.jsx)(A,{})]}),(0,s.jsxs)(P,{children:["The Python type returned by a SQL cell. For best performance with large datasets, we recommend using"," ",(0,s.jsx)(O,{className:"inline",children:"native"}),". See the"," ",(0,s.jsx)(_e,{href:"https://docs.marimo.io/guides/working_with_data/sql",children:"SQL guide"})," ","for more information."]})]})}var ze=E();const Qe=t=>{let e=(0,ze.c)(32),{showAppConfig:a,disabled:f,tooltip:r}=t,i=a===void 0?!0:a,u=f===void 0?!1:f,b=r===void 0?"Settings":r,[l,n]=X(ae),w=u?"disabled":"hint-green",j;e[0]===Symbol.for("react.memo_cache_sentinel")?(j=(0,s.jsx)(Y,{strokeWidth:1.8}),e[0]=j):j=e[0];let m;e[1]===b?m=e[2]:(m=(0,s.jsx)(G,{content:b,children:j}),e[1]=b,e[2]=m);let c;e[3]!==u||e[4]!==w||e[5]!==m?(c=(0,s.jsx)(V,{"aria-label":"Config","data-testid":"app-config-button",shape:"circle",size:"small",className:"h-[27px] w-[27px]",disabled:u,color:w,children:m}),e[3]=u,e[4]=w,e[5]=m,e[6]=c):c=e[6];let o=c,d;e[7]===Symbol.for("react.memo_cache_sentinel")?(d=(0,s.jsxs)(be,{className:"w-[90vw] h-[90vh] overflow-hidden sm:max-w-5xl top-[5vh] p-0",children:[(0,s.jsx)($,{children:(0,s.jsx)(ve,{children:"User settings"})}),(0,s.jsx)(se,{})]}),e[7]=d):d=e[7];let x=d;if(!i){let T;e[8]===o?T=e[9]:(T=(0,s.jsx)(ge,{children:o}),e[8]=o,e[9]=T);let q;return e[10]!==n||e[11]!==l||e[12]!==T?(q=(0,s.jsxs)(K,{open:l,onOpenChange:n,children:[T,x]}),e[10]=n,e[11]=l,e[12]=T,e[13]=q):q=e[13],q}let h;e[14]===o?h=e[15]:(h=(0,s.jsx)(we,{asChild:!0,children:o}),e[14]=o,e[15]=h);let y,N;e[16]===Symbol.for("react.memo_cache_sentinel")?(y=(0,s.jsx)(Fe,{}),N=(0,s.jsx)("div",{className:"h-px bg-border my-2"}),e[16]=y,e[17]=N):(y=e[16],N=e[17]);let v;e[18]===n?v=e[19]:(v=()=>n(!0),e[18]=n,e[19]=v);let C;e[20]===Symbol.for("react.memo_cache_sentinel")?(C=(0,s.jsx)(Y,{strokeWidth:1.8,className:"w-4 h-4 mr-2"}),e[20]=C):C=e[20];let g;e[21]===v?g=e[22]:(g=(0,s.jsxs)(ye,{className:"w-[650px] overflow-auto max-h-[80vh] max-w-[80vw]",align:"end",side:"bottom",onFocusOutside:Re,children:[y,N,(0,s.jsxs)(de,{onClick:v,variant:"link",className:"px-0",children:[C,"User settings"]})]}),e[21]=v,e[22]=g);let k;e[23]!==g||e[24]!==h?(k=(0,s.jsxs)(Ne,{children:[h,g]}),e[23]=g,e[24]=h,e[25]=k):k=e[25];let p;e[26]!==n||e[27]!==l?(p=(0,s.jsx)(K,{open:l,onOpenChange:n,children:x}),e[26]=n,e[27]=l,e[28]=p):p=e[28];let _;return e[29]!==k||e[30]!==p?(_=(0,s.jsxs)(s.Fragment,{children:[k,p]}),e[29]=k,e[30]=p,e[31]=_):_=e[31],_};function Re(t){return t.preventDefault()}export{Le as n,Se as r,Qe as t};
|
|
1
|
+
import{s as D}from"./chunk-LvLJmgfZ.js";import{l as X}from"./useEvent-DO6uJBas.js";import{t as Z}from"./react-BGmjiNul.js";import{St as z}from"./cells-BW_4R0Qw.js";import{t as E}from"./compiler-runtime-DeeZ7FnK.js";import{G as $,S as ee,c as te,i as se,l as le,n as ae,u as ne}from"./ai-model-dropdown-C_l_zAXd.js";import{C as oe,v as re,w as Q}from"./utils-DXvhzCGS.js";import{j as ie}from"./config-CIrPQIbt.js";import{t as ce}from"./jsx-runtime-ZmTK25f3.js";import{t as de}from"./button-YC1gW_kJ.js";import{l as R}from"./once-Bul8mtFs.js";import{r as U}from"./requests-BsVD4CdD.js";import{t as he}from"./createLucideIcon-CnW3RofX.js";import{h as me,l as B}from"./select-V5IdpNiR.js";import{r as I}from"./input-pAun1m1X.js";import{t as Y}from"./settings-DOXWMfVd.js";import{a as L,c as M,d as A,g as xe,i as pe,l as F,o as P,p as fe,u as S}from"./textarea-DSR2T2ft.js";import{t as ue}from"./use-toast-rmUWldD_.js";import{t as G}from"./tooltip-CEc2ajau.js";import{o as je}from"./alert-dialog-DwQffb13.js";import{c as ve,l as ge,n as be,t as K}from"./dialog-CxGKN4C_.js";import{i as we,r as ye,t as Ne}from"./popover-D16ZremR.js";import{n as Ce}from"./useDebounce-D5NcotGm.js";import{n as ke}from"./ImperativeModal-CUbWEBci.js";import{t as O}from"./kbd-C3JY7O_u.js";import{t as _e}from"./links-DHZUhGz-.js";import{t as V}from"./Inputs-D2Xn4HON.js";var Se=he("power-off",[["path",{d:"M18.36 6.64A9 9 0 0 1 20.77 15",key:"dxknvb"}],["path",{d:"M6.16 6.16a9 9 0 1 0 12.68 12.68",key:"1x7qb5"}],["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]),Te=E(),s=D(ce(),1);const Le=t=>{let e=(0,Te.c)(15),{description:a,disabled:f,tooltip:r}=t,i=f===void 0?!1:f,u=r===void 0?"Shutdown":r,{openConfirm:b,closeModal:l}=ke(),{sendShutdown:n}=U(),w;e[0]===n?w=e[1]:(w=()=>{n(),setTimeout(Me,200)},e[0]=n,e[1]=w);let j=w;if(ie())return null;let m=i?"disabled":"red",c;e[2]!==l||e[3]!==a||e[4]!==j||e[5]!==b?(c=h=>{h.stopPropagation(),b({title:"Shutdown",description:a,variant:"destructive",confirmAction:(0,s.jsx)(je,{onClick:()=>{j(),l()},"aria-label":"Confirm Shutdown",children:"Shutdown"})})},e[2]=l,e[3]=a,e[4]=j,e[5]=b,e[6]=c):c=e[6];let o;e[7]===Symbol.for("react.memo_cache_sentinel")?(o=(0,s.jsx)(me,{strokeWidth:1}),e[7]=o):o=e[7];let d;e[8]!==i||e[9]!==m||e[10]!==c?(d=(0,s.jsx)(V,{"aria-label":"Shutdown","data-testid":"shutdown-button",shape:"circle",size:"small",color:m,className:"h-[27px] w-[27px]",disabled:i,onClick:c,children:o}),e[8]=i,e[9]=m,e[10]=c,e[11]=d):d=e[11];let x;return e[12]!==d||e[13]!==u?(x=(0,s.jsx)(G,{content:u,children:d}),e[12]=d,e[13]=u,e[14]=x):x=e[14],x};function Me(){window.close()}var J=E(),W=D(Z(),1),Ae=100;const Fe=()=>{let t=(0,J.c)(37),[e,a]=re(),{saveAppConfig:f}=U(),r=(0,W.useId)(),i=(0,W.useId)(),u;t[0]===Symbol.for("react.memo_cache_sentinel")?(u=fe(oe),t[0]=u):u=t[0];let b;t[1]===e?b=t[2]:(b={resolver:u,defaultValues:e},t[1]=e,t[2]=b);let l=xe(b),n;t[3]!==f||t[4]!==a?(n=async p=>{await f({config:p}).then(()=>{a(p)}).catch(()=>{a(p)})},t[3]=f,t[4]=a,t[5]=n):n=t[5];let w=n,j;t[6]===w?j=t[7]:(j=p=>{w(p)},t[6]=w,t[7]=j);let m=Ce(j,Ae),c;t[8]===e.width?c=t[9]:(c=[e.width],t[8]=e.width,t[9]=c),(0,W.useEffect)(Pe,c);let o;t[10]!==m||t[11]!==l?(o=l.handleSubmit(m),t[10]=m,t[11]=l,t[12]=o):o=t[12];let d;t[13]===Symbol.for("react.memo_cache_sentinel")?(d=(0,s.jsxs)("div",{children:[(0,s.jsx)(ne,{children:"Notebook Settings"}),(0,s.jsx)(le,{children:"Configure how your notebook or application looks and behaves."})]}),t[13]=d):d=t[13];let x;t[14]===l.control?x=t[15]:(x=(0,s.jsxs)(H,{title:"Display",children:[(0,s.jsx)(M,{control:l.control,name:"width",render:He}),(0,s.jsx)(M,{control:l.control,name:"app_title",render:Ee})]}),t[14]=l.control,t[15]=x);let h;t[16]===l.control?h=t[17]:(h=(0,s.jsxs)(H,{title:"Custom Files",children:[(0,s.jsx)(M,{control:l.control,name:"css_file",render:Ie}),(0,s.jsx)(M,{control:l.control,name:"html_head_file",render:Oe})]}),t[16]=l.control,t[17]=h);let y;t[18]===l.control?y=t[19]:(y=(0,s.jsx)(H,{title:"Data",children:(0,s.jsx)(M,{control:l.control,name:"sql_output",render:De})}),t[18]=l.control,t[19]=y);let N;t[20]!==r||t[21]!==i?(N=p=>{let{field:_}=p;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(F,{className:"flex flex-col gap-2",children:[(0,s.jsx)(L,{children:(0,s.jsxs)("div",{className:"flex gap-4",children:[(0,s.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,s.jsx)(z,{id:r,"data-testid":"html-checkbox",checked:_.value.includes("html"),onCheckedChange:()=>{_.onChange(R(_.value,"html"))}}),(0,s.jsx)(S,{htmlFor:r,children:"HTML"})]}),(0,s.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,s.jsx)(z,{id:i,"data-testid":"ipynb-checkbox",checked:_.value.includes("ipynb"),onCheckedChange:()=>{_.onChange(R(_.value,"ipynb"))}}),(0,s.jsx)(S,{htmlFor:i,children:"IPYNB"})]})]})}),(0,s.jsx)(A,{})]}),(0,s.jsxs)(P,{children:["When enabled, marimo will periodically save this notebook in your selected formats (HTML, IPYNB) to a folder named"," ",(0,s.jsx)(O,{className:"inline",children:"__marimo__"})," next to your notebook file."]})]})},t[20]=r,t[21]=i,t[22]=N):N=t[22];let v;t[23]!==l.control||t[24]!==N?(v=(0,s.jsx)(H,{title:"Exporting outputs",children:(0,s.jsx)(M,{control:l.control,name:"auto_download",render:N})}),t[23]=l.control,t[24]=N,t[25]=v):v=t[25];let C;t[26]!==v||t[27]!==x||t[28]!==h||t[29]!==y?(C=(0,s.jsxs)("div",{className:"grid grid-cols-2 gap-x-8 gap-y-4",children:[x,h,y,v]}),t[26]=v,t[27]=x,t[28]=h,t[29]=y,t[30]=C):C=t[30];let g;t[31]!==C||t[32]!==o?(g=(0,s.jsxs)("form",{onChange:o,className:"flex flex-col gap-6",children:[d,C]}),t[31]=C,t[32]=o,t[33]=g):g=t[33];let k;return t[34]!==l||t[35]!==g?(k=(0,s.jsx)(pe,{...l,children:g}),t[34]=l,t[35]=g,t[36]=k):k=t[36],k};var H=t=>{let e=(0,J.c)(5),{title:a,children:f}=t,r;e[0]===a?r=e[1]:(r=(0,s.jsx)("h3",{className:"text-base font-semibold mb-1",children:a}),e[0]=a,e[1]=r);let i;return e[2]!==f||e[3]!==r?(i=(0,s.jsxs)("div",{className:"flex flex-col gap-y-2",children:[r,f]}),e[2]=f,e[3]=r,e[4]=i):i=e[4],i};function Pe(){window.dispatchEvent(new Event("resize"))}function qe(t){return(0,s.jsx)("option",{value:t,children:t},t)}function He(t){let{field:e}=t;return(0,s.jsxs)(F,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{children:"Width"}),(0,s.jsx)(L,{children:(0,s.jsx)(B,{"data-testid":"app-width-select",onChange:a=>e.onChange(a.target.value),value:e.value,disabled:e.disabled,className:"inline-flex mr-2",children:ee().map(qe)})}),(0,s.jsx)(A,{})]})}function Ee(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(F,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{children:"App title"}),(0,s.jsx)(L,{children:(0,s.jsx)(I,{...e,value:e.value??"",onChange:a=>{e.onChange(a.target.value),Q.safeParse(a.target.value).success&&(document.title=a.target.value)}})}),(0,s.jsx)(A,{})]}),(0,s.jsx)(P,{children:"The application title is put in the title tag in the HTML code and typically displayed in the title bar of the browser window."})]})}function Ie(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(F,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{className:"shrink-0",children:"Custom CSS"}),(0,s.jsx)(L,{children:(0,s.jsx)(I,{...e,value:e.value??"",placeholder:"custom.css",onChange:a=>{e.onChange(a.target.value),Q.safeParse(a.target.value).success&&(document.title=a.target.value)}})}),(0,s.jsx)(A,{})]}),(0,s.jsx)(P,{children:"A filepath to a custom css file to be injected into the notebook."})]})}function Oe(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(F,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{className:"shrink-0",children:"HTML Head"}),(0,s.jsx)(L,{children:(0,s.jsx)(I,{...e,value:e.value??"",placeholder:"head.html",onChange:a=>{e.onChange(a.target.value)}})}),(0,s.jsx)(A,{})]}),(0,s.jsxs)(P,{children:["A filepath to an HTML file to be injected into the"," ",(0,s.jsx)(O,{className:"inline",children:"<head/>"})," section of the notebook. Use this to add analytics, custom fonts, meta tags, or external scripts."]})]})}function We(t){return(0,s.jsx)("option",{value:t.value,children:t.label},t.value)}function De(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(F,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{children:"SQL Output Type"}),(0,s.jsx)(L,{children:(0,s.jsx)(B,{"data-testid":"sql-output-select",onChange:a=>{e.onChange(a.target.value),ue({title:"Kernel Restart Required",description:"This change requires a kernel restart to take effect."})},value:e.value,disabled:e.disabled,className:"inline-flex mr-2",children:te.map(We)})}),(0,s.jsx)(A,{})]}),(0,s.jsxs)(P,{children:["The Python type returned by a SQL cell. For best performance with large datasets, we recommend using"," ",(0,s.jsx)(O,{className:"inline",children:"native"}),". See the"," ",(0,s.jsx)(_e,{href:"https://docs.marimo.io/guides/working_with_data/sql",children:"SQL guide"})," ","for more information."]})]})}var ze=E();const Qe=t=>{let e=(0,ze.c)(32),{showAppConfig:a,disabled:f,tooltip:r}=t,i=a===void 0?!0:a,u=f===void 0?!1:f,b=r===void 0?"Settings":r,[l,n]=X(ae),w=u?"disabled":"hint-green",j;e[0]===Symbol.for("react.memo_cache_sentinel")?(j=(0,s.jsx)(Y,{strokeWidth:1.8}),e[0]=j):j=e[0];let m;e[1]===b?m=e[2]:(m=(0,s.jsx)(G,{content:b,children:j}),e[1]=b,e[2]=m);let c;e[3]!==u||e[4]!==w||e[5]!==m?(c=(0,s.jsx)(V,{"aria-label":"Config","data-testid":"app-config-button",shape:"circle",size:"small",className:"h-[27px] w-[27px]",disabled:u,color:w,children:m}),e[3]=u,e[4]=w,e[5]=m,e[6]=c):c=e[6];let o=c,d;e[7]===Symbol.for("react.memo_cache_sentinel")?(d=(0,s.jsxs)(be,{className:"w-[90vw] h-[90vh] overflow-hidden sm:max-w-5xl top-[5vh] p-0",children:[(0,s.jsx)($,{children:(0,s.jsx)(ve,{children:"User settings"})}),(0,s.jsx)(se,{})]}),e[7]=d):d=e[7];let x=d;if(!i){let T;e[8]===o?T=e[9]:(T=(0,s.jsx)(ge,{children:o}),e[8]=o,e[9]=T);let q;return e[10]!==n||e[11]!==l||e[12]!==T?(q=(0,s.jsxs)(K,{open:l,onOpenChange:n,children:[T,x]}),e[10]=n,e[11]=l,e[12]=T,e[13]=q):q=e[13],q}let h;e[14]===o?h=e[15]:(h=(0,s.jsx)(we,{asChild:!0,children:o}),e[14]=o,e[15]=h);let y,N;e[16]===Symbol.for("react.memo_cache_sentinel")?(y=(0,s.jsx)(Fe,{}),N=(0,s.jsx)("div",{className:"h-px bg-border my-2"}),e[16]=y,e[17]=N):(y=e[16],N=e[17]);let v;e[18]===n?v=e[19]:(v=()=>n(!0),e[18]=n,e[19]=v);let C;e[20]===Symbol.for("react.memo_cache_sentinel")?(C=(0,s.jsx)(Y,{strokeWidth:1.8,className:"w-4 h-4 mr-2"}),e[20]=C):C=e[20];let g;e[21]===v?g=e[22]:(g=(0,s.jsxs)(ye,{className:"w-[650px] overflow-auto max-h-[80vh] max-w-[80vw]",align:"end",side:"bottom",onFocusOutside:Re,children:[y,N,(0,s.jsxs)(de,{onClick:v,variant:"link",className:"px-0",children:[C,"User settings"]})]}),e[21]=v,e[22]=g);let k;e[23]!==g||e[24]!==h?(k=(0,s.jsxs)(Ne,{children:[h,g]}),e[23]=g,e[24]=h,e[25]=k):k=e[25];let p;e[26]!==n||e[27]!==l?(p=(0,s.jsx)(K,{open:l,onOpenChange:n,children:x}),e[26]=n,e[27]=l,e[28]=p):p=e[28];let _;return e[29]!==k||e[30]!==p?(_=(0,s.jsxs)(s.Fragment,{children:[k,p]}),e[29]=k,e[30]=p,e[31]=_):_=e[31],_};function Re(t){return t.preventDefault()}export{Le as n,Se as r,Qe as t};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./loro_wasm_bg-C4rb9m-K.js","./loro_wasm_bg-CDxXoyfI.js","./chunk-LvLJmgfZ.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
var od=Object.defineProperty;var Fa=re=>{throw TypeError(re)};var ad=(re,q,ge)=>q in re?od(re,q,{enumerable:!0,configurable:!0,writable:!0,value:ge}):re[q]=ge;var h=(re,q,ge)=>ad(re,typeof q!="symbol"?q+"":q,ge),id=(re,q,ge)=>q.has(re)||Fa("Cannot "+ge);var La=(re,q,ge)=>(id(re,q,"read from private field"),ge?ge.call(re):q.get(re)),Oa=(re,q,ge)=>q.has(re)?Fa("Cannot add the same private member more than once"):q instanceof WeakSet?q.add(re):q.set(re,ge);import{s as Da}from"./chunk-LvLJmgfZ.js";import{d as _a,f as yr,i as Q,l as En,n as ue,p as Ut,s as Nn,u as ce}from"./useEvent-DO6uJBas.js";import{t as sd}from"./react-BGmjiNul.js";import{$ as ld,Ar as cd,At as wr,B as Ua,Bt as ud,Cr as vr,Ct as Ba,Er as dd,Gn as fd,It as md,Jr as ja,Kt as hd,Lt as pd,Mt as Er,N as gd,Nr as bd,Nt as Pa,Pt as Ma,Q as Nr,R as Ra,Sn as yd,St as wd,Tn as vd,Tr as Ed,U as Ga,Ut as kn,V as Ja,Xr as Nd,Zt as kd,_r as Cd,a as Wa,ai as Cn,bn as Sd,ct as Sn,d as Va,dt as Bt,en as xd,hn as Td,in as Ad,jr as $a,kt as Id,lt as Fd,m as kr,mt as Ld,nn as Od,ot as Dd,rn as _d,sn as Cr,st as Sr,u as Ha,ut as Ud,w as xn,xn as Bd,y as nt,z as jd,zt as Qe,__tla as Pd}from"./cells-
|
|
2
|
+
var od=Object.defineProperty;var Fa=re=>{throw TypeError(re)};var ad=(re,q,ge)=>q in re?od(re,q,{enumerable:!0,configurable:!0,writable:!0,value:ge}):re[q]=ge;var h=(re,q,ge)=>ad(re,typeof q!="symbol"?q+"":q,ge),id=(re,q,ge)=>q.has(re)||Fa("Cannot "+ge);var La=(re,q,ge)=>(id(re,q,"read from private field"),ge?ge.call(re):q.get(re)),Oa=(re,q,ge)=>q.has(re)?Fa("Cannot add the same private member more than once"):q instanceof WeakSet?q.add(re):q.set(re,ge);import{s as Da}from"./chunk-LvLJmgfZ.js";import{d as _a,f as yr,i as Q,l as En,n as ue,p as Ut,s as Nn,u as ce}from"./useEvent-DO6uJBas.js";import{t as sd}from"./react-BGmjiNul.js";import{$ as ld,Ar as cd,At as wr,B as Ua,Bt as ud,Cr as vr,Ct as Ba,Er as dd,Gn as fd,It as md,Jr as ja,Kt as hd,Lt as pd,Mt as Er,N as gd,Nr as bd,Nt as Pa,Pt as Ma,Q as Nr,R as Ra,Sn as yd,St as wd,Tn as vd,Tr as Ed,U as Ga,Ut as kn,V as Ja,Xr as Nd,Zt as kd,_r as Cd,a as Wa,ai as Cn,bn as Sd,ct as Sn,d as Va,dt as Bt,en as xd,hn as Td,in as Ad,jr as $a,kt as Id,lt as Fd,m as kr,mt as Ld,nn as Od,ot as Dd,rn as _d,sn as Cr,st as Sr,u as Ha,ut as Ud,w as xn,xn as Bd,y as nt,z as jd,zt as Qe,__tla as Pd}from"./cells-BW_4R0Qw.js";import{P as qa,R as Md,k as Rd,w as Gd}from"./zod-Cg4WLWh2.js";import{t as Ge}from"./compiler-runtime-DeeZ7FnK.js";import{C as Jd,f as Wd,m as Vd,p as $d,t as Hd,v as qd}from"./ai-model-dropdown-C_l_zAXd.js";import{d as $e,f as zd,l as xr,n as za}from"./hotkeys-BHHWjLlp.js";import{t as jt}from"./invariant-CAG_dYON.js";import{S as Tr,h as Ka,m as Kd,o as Xd,p as Xa,s as Ya}from"./utils-DXvhzCGS.js";import{A as Pt,O as Qa,b as Yd,j as Qd,o as Zd,r as Za,s as ef,w as bt}from"./config-CIrPQIbt.js";import{a as tf,n as ei,t as nf}from"./switch-Cch0bLxo.js";import{n as rf}from"./globals-ols5LsZP.js";import{t as of}from"./ErrorBoundary-ChCiwl15.js";import{t as af}from"./useEventListener-DIUKKfEy.js";import{t as sf}from"./jsx-runtime-ZmTK25f3.js";import{r as Ar,t as He}from"./button-YC1gW_kJ.js";import{t as lt}from"./cn-BKtXLv3a.js";import{$t as Tn,Bt as Ir,Ct as ti,Dt as lf,E as cf,Gt as uf,H as ni,I as df,It as An,J as l,Jt as qe,P as ff,Pt as In,Rt as mf,St as Je,Ut as ct,V as ri,Vt as Mt,Xt as Rt,_ as hf,a as pf,at as B,bt as gf,ct as ze,ft as bf,it as yf,jt as wf,lt as Fn,m as vf,pt as Ef,qt as he,rt as H,st as Nf,vt as kf,w as Cf,wt as Sf,yt as xf,zt as yt}from"./dist-DBwNzi3C.js";import{C as Tf,D as Af,_ as If,a as Ff,c as Lf,n as Fr,r as Of,v as Df,x as _f,y as Uf}from"./dist-CtsanegT.js";import{E as Bf,__tla as jf}from"./JsonOutput-BGSqWZkD.js";import{c as oi,n as Pf}from"./once-Bul8mtFs.js";import{t as Lr}from"./createReducer-Dnna-AUO.js";import{a as Mf,c as Rf,f as Ln,h as Gf,i as Jf,l as Gt,n as ai,o as Wf,t as Vf}from"./dist-ChS0Dc_R.js";import{r as On,t as $f}from"./requests-BsVD4CdD.js";import{t as Hf}from"./createLucideIcon-CnW3RofX.js";import{r as ii,t as qf,__tla as zf}from"./layout-DiDoTAUA.js";import{O as Kf,S as si,T as Xf,_ as Yf,a as li,k as Qf,n as Zf,o as em,r as ci,s as tm,x as nm}from"./add-cell-with-ai-gDjJxct8.js";import{h as rm}from"./select-V5IdpNiR.js";import{n as om}from"./download-CzPV-R6Z.js";import{t as am}from"./circle-check-C57eOpl0.js";import{r as im,t as sm}from"./types-fTSozrNJ.js";import{n as ui}from"./spinner-DaIKav-i.js";import{t as di}from"./save-PMHbdtqc.js";import{I as fi,P as lm}from"./input-pAun1m1X.js";import{a as cm,i as um,n as mi}from"./state-BrsyJBHJ.js";import{t as dm}from"./preload-helper-DItdS47A.js";import{t as wt}from"./use-toast-rmUWldD_.js";import{r as fm}from"./useTheme-DUdVAZI8.js";import{t as vt}from"./tooltip-CEc2ajau.js";import{r as mm,t as hm}from"./mode-BCr7l3Th.js";import{c as hi,i as pi,n as gi,r as pm}from"./dialog-CxGKN4C_.js";import{O as gm}from"./usePress-Bup4EGrp.js";import{a as bm,r as ym,t as wm}from"./popover-D16ZremR.js";import{n as bi}from"./ImperativeModal-CUbWEBci.js";import{r as vm}from"./errors-2SszdW9t.js";import{t as Em}from"./copy-Bv2DBpIS.js";import{a as Nm}from"./useRunCells-C50mliNM.js";import{t as X}from"./extends-B2LJnKU3.js";import{t as Jt}from"./objectWithoutPropertiesLoose-DaPAPabU.js";import{t as km}from"./kbd-C3JY7O_u.js";import{a as Or}from"./useInstallPackage-Bdnnp5fe.js";import{a as Cm,o as Sm}from"./cell-link-_-mIiddP.js";import{n as xm}from"./useAsyncData-C4XRy1BE.js";import{a as Tm,o as yi,r as Am,s as wi,t as Im}from"./command-B5H3BrRg.js";import{r as Fm}from"./html-to-image-DKvXQkl5.js";import{a as Lm}from"./focus-CsiV5LZR.js";import{a as vi}from"./renderShortcut-DHc-p-_c.js";import{t as Dr}from"./label-Be1daUcS.js";import{n as _r,t as Ei}from"./useDeleteCell-BrMXAFkS.js";import{n as Et}from"./esm-DpMp6qko.js";import{n as Om,t as Dm}from"./icons-BhEXrzsb.js";import{t as Ni}from"./dist-CzfJUeh-.js";import{t as _m}from"./useSplitCell-Cb0lf5MV.js";import{t as ki}from"./Inputs-D2Xn4HON.js";import{co as Um,do as Ur,fo as Bm,ft as jm,go as Nt,ho as Ci,lo as Br,mo as Si,oo as xi,po as Pm,so as Ti,uo as Ai,__tla as Mm}from"./loro_wasm_bg-CDxXoyfI.js";import{t as Rm}from"./ws-BApgRfsy.js";import{n as Gm}from"./hooks-CpjzmBkw.js";let Dn,jr,Ii,Pr,ut,Mr,be,Wt,Vt,Fi,Li,Oi,Di,_i,_n,Ui,Un,Bi,Bn,Jm=Promise.all([(()=>{try{return Pd}catch{}})(),(()=>{try{return jf}catch{}})(),(()=>{try{return zf}catch{}})(),(()=>{try{return Mm}catch{}})()]).then(async()=>{var vn,Ia,we,ve,Ee,Ne,ke,Ce,Se,xe,Te,Ae,Ie,Fe,Le,Oe,De,_e,Ue,Be,je;var re=Hf("file-pen",[["path",{d:"M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34",key:"o6klzx"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z",key:"zhnas1"}]]);const q={showInput:"Mod-l",acceptEdit:"Mod-y",rejectEdit:"Mod-u"};var ge=300;const Ct=Mt.define({combine:e=>Tn(e,{onError:console.error,inputDebounceTime:ge,keymaps:q},{onError:(t,n)=>t&&n,inputDebounceTime:(t,n)=>t&&n,keymaps:(t,n)=>t&&n})}),rt=he.define(),ot=qe.define({create(){return{show:!1,lineFrom:0,lineTo:0}},update(e,t){for(let n of t.effects)if(n.is(rt))return n.value;return e}}),St=he.define(),xt=he.define(),Gr=qe.define({create(){return{shouldFocus:!1,inputValue:""}},update(e,t){let n=e;for(let r of t.effects)r.is(St)&&(n={...n,inputValue:r.value}),r.is(xt)&&(n={...n,shouldFocus:r.value});return n}}),$t=he.define(),Tt=qe.define({create(){return null},update(e,t){for(let n of t.effects)if(n.is($t))return n.value;return e}}),dt=he.define(),Jr=qe.define({create(){return!1},update(e,t){for(let n of t.effects)if(n.is(dt))return n.value;return e}});var ji=1;const Wr=e=>{let{state:t}=e,n=t.selection.main;if(n.empty)return!1;let r=t.doc,o=r.lineAt(n.from),a=r.lineAt(n.to);if(t.sliceDoc(o.from,a.to).trim().length<ji)return!1;let i=Math.max(1,Math.min(o.number,r.lines)),s=Math.max(1,Math.min(a.number,r.lines));return e.dispatch({effects:[rt.of({show:!0,lineFrom:i,lineTo:s}),xt.of(!0),St.of("")],selection:yt.cursor(o.from)}),!0},Vr=e=>e.state.field(Tt)?(e.dispatch({effects:[$t.of(null),rt.of({show:!1,lineFrom:0,lineTo:0}),xt.of(!1),St.of(""),dt.of(!1)]}),!0):!1,$r=e=>{let t=e.state.field(Tt);return t?(e.dispatch({changes:{from:t.from,to:t.to,insert:t.oldCode},effects:[$t.of(null),rt.of({show:!1,lineFrom:0,lineTo:0}),xt.of(!1),St.of(""),dt.of(!1)]}),!0):!1};var jn={mac:"\u2318",windows:"\u229E Win",default:"Ctrl"};function Pi(){return navigator.platform.startsWith("Mac")?jn.mac:navigator.platform.startsWith("Win")?jn.windows:jn.default}function Pn(e){return e.replace("Mod",Pi()).replace("-"," ").toUpperCase()}function de(e,t){let n=document.createElement(e);return n.className=t,n}function Mi(e,t,n=void 0){let r=()=>{};return(...o)=>(r(),new Promise((a,i)=>{let s=setTimeout(()=>a(e(...o)),t);r=()=>{clearTimeout(s),n!==void 0&&i(n)}}))}var Ht=qe.define({create(){return{suggestion:null}},update(e,t){let n=t.effects.find(r=>r.is(qt));return!t.docChanged&&!n&&!t.selection?e:n&&t.state.doc===n.value.doc?{suggestion:n.value.text}:{suggestion:null}}}),qt=he.define();function Ri(e,t){let n=e.state.selection.main.head,r=[],o=H.widget({widget:new Gi(t),side:1});return r.push(o.range(n)),H.set(r)}var Gi=class extends Fn{constructor(t){super();h(this,"suggestion");this.suggestion=t}toDOM(){let t=document.createElement("span");return t.style.opacity="0.4",t.className="cm-inline-suggestion",t.textContent=this.suggestion,t.setAttribute("role","suggestion"),t.setAttribute("aria-label",`Suggestion: ${this.suggestion}`),t}get lineBreaks(){return this.suggestion.split(`
|
|
3
3
|
`).length-1}},Ji=class{constructor(e){h(this,"cache",new Map);h(this,"timeout");this.timeout=e}get(e){let t=this.cache.get(e);return t?Date.now()-t.timestamp>this.timeout?(this.cache.delete(e),null):t.result:null}set(e,t){this.cache.set(e,{result:t,timestamp:Date.now()})}},Wi=(e,t)=>ze.fromClass(class{constructor(){h(this,"abortController",null);h(this,"cache");this.cache=new Ji(t.cacheTimeout??1e3)}async update(n){var i,s,c,u,d;if(!n.docChanged||((s=(i=t.events)==null?void 0:i.beforeSuggestionFetch)==null?void 0:s.call(i,n.view))===!1)return;(c=this.abortController)==null||c.abort(),this.abortController=new AbortController;let r=n.state.doc,o=r.toString(),a=this.cache.get(o);if(a){n.view.dispatch({effects:qt.of({text:a,doc:r})});return}try{let f=await e(n.state,this.abortController.signal,n.view);if(this.abortController.signal.aborted||((d=(u=t.events)==null?void 0:u.shouldShowSuggestion)==null?void 0:d.call(u,n.view,f))===!1)return;this.cache.set(o,f),n.view.dispatch({effects:qt.of({text:f,doc:r})})}catch(f){f instanceof Error&&f.name!=="AbortError"&&console.error("Suggestion fetch error:",f)}}destroy(){var n;(n=this.abortController)==null||n.abort()}}),Vi=ze.fromClass(class{constructor(){h(this,"decorations");this.decorations=H.none}update(e){var n;let t=(n=e.state.field(Ht))==null?void 0:n.suggestion;if(!t){this.decorations=H.none;return}this.decorations=Ri(e.view,t)}},{decorations:e=>e.decorations});function $i(e,t,n,r){return{...e.changeByRange(o=>{if(o===e.selection.main)return{changes:{from:n,to:r,insert:t},range:yt.cursor(n+t.length)};let a=r-n;return!o.empty||a&&e.sliceDoc(o.from-a,o.from)!==e.sliceDoc(n,r)?{range:o}:{changes:{from:o.from-a,to:o.from,insert:t},range:yt.cursor(o.from-a+t.length)}}),userEvent:"input.complete"}}var Hi=e=>{var r,o,a;let t=(r=e.state.field(Ht))==null?void 0:r.suggestion;if(!t)return!1;let n=e.state.facet(Mn);return e.dispatch({...$i(e.state,t,e.state.selection.main.head,e.state.selection.main.head)}),(a=(o=n.events)==null?void 0:o.onSuggestionAccepted)==null||a.call(o,e,t),!0},Hr=e=>{var r,o,a;let t=(r=e.state.field(Ht))==null?void 0:r.suggestion;if(!t)return!1;let n=e.state.facet(Mn);return e.dispatch({effects:qt.of({text:null,doc:e.state.doc})}),(a=(o=n.events)==null?void 0:o.onSuggestionRejected)==null||a.call(o,e,t),!0},qi=Je.of([{key:"Tab",run:Hi},{key:"Escape",run:Hr}]),Mn=Mt.define({combine:e=>e.at(-1)});function qr(e){let{delay:t=500,includeKeymap:n=!0}=e,r=Mi(e.fetchFn,t);return[Ht,Mn.of(e),Wi(r,e),Vi,n?qi:[]]}const zi=B.baseTheme({".cm-ai-input-container":{display:"flex",flexDirection:"column",gap:"4px",width:"min(calc(100% + 7px), 500px)",padding:"5px 5px",margin:"0 -6px",backgroundColor:"light-dark(rgb(241, 243, 245), rgb(40, 40, 40))"},".cm-ai-input":{display:"block",width:"100%",padding:"3px 8px",border:"2px solid rgb(51, 154, 240)",borderRadius:"5px",fontSize:"12px"},".cm-ai-help-info-button":{fontSize:"10px",paddingLeft:"10px",height:"18px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",display:"block",marginRight:"auto"},".cm-ai-help-info-button:hover":{color:"light-dark(rgb(89, 97, 105), rgb(190, 190, 190))"},".cm-ai-generate-button":{background:"#0E639C",border:"none",padding:"2px 6px",color:"#ffffff",cursor:"pointer",font:"inherit",borderRadius:"4px","&:hover":{backgroundColor:"#1177bb"}},".cm-line.cm-ai-selection, .cm-line.cm-ai-selection.cm-active-line":{backgroundColor:"light-dark(color-mix(in srgb, rgb(223, 227, 232) 50%, transparent), color-mix(in srgb, rgb(50, 50, 50) 50%, transparent)) !important"},".cm-line:has(.cm-new-code-line)":{backgroundColor:"light-dark(color-mix(in srgb, rgb(183, 235, 143) 50%, transparent), color-mix(in srgb, rgb(40, 100, 40) 50%, transparent)) !important"},".cm-old-code-container":{backgroundColor:"light-dark(rgb(255, 205, 205), rgb(100, 40, 40))",position:"relative",display:"flex",paddingTop:"0",width:"100%",alignItems:"center"},".cm-code-button":{position:"absolute",right:"5px",top:"50%",transform:"translateY(-50%)",background:"none",border:"none",cursor:"pointer",fontSize:"16px"},".cm-floating-buttons":{fontFamily:"sans-serif",position:"absolute",top:"-20px",left:"5px",display:"flex"},".cm-floating-button":{fontFamily:"sans-serif",padding:"2px 5px",fontSize:"10px",cursor:"pointer",fontWeight:"700"},".cm-floating-accept":{backgroundColor:"light-dark(rgb(55, 125, 34), rgb(40, 80, 25))",borderTopLeftRadius:"5px",borderBottomLeftRadius:"5px",color:"white",filter:"brightness(90%)","&:hover":{filter:"brightness(100%)"}},".cm-floating-reject":{backgroundColor:"light-dark(rgb(220, 53, 69), rgb(180, 40, 50))",color:"white",borderTopRightRadius:"5px",borderBottomRightRadius:"5px",filter:"brightness(90%)","&:hover":{filter:"brightness(100%)"}},".hotkey":{display:"inline-block",padding:"0 4px",borderRadius:"3px",backgroundColor:"rgba(255, 255, 255, 0.1)",fontSize:"90%"},".cm-ai-loading-indicator":{fontStyle:"italic",fontSize:"10px",paddingLeft:"12px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",opacity:"0",transition:"opacity 0.3s ease-in-out","&::after":{content:'""',display:"inline-block",animation:"ellipsis-pulse 1.5s steps(4, end) infinite"},"&:not(:empty)":{opacity:"1"}},".cm-ai-input:disabled":{opacity:"0.5"},"@keyframes ellipsis-pulse":{"0%":{content:"'.'"},"25%":{content:"'..'"},"50%":{content:"'...'"},"75%":{content:"''"}},".cm-ai-loading-container":{display:"flex",alignItems:"center",padding:"0 8px"},".cm-ai-cancel-button":{padding:"2px 8px",fontSize:"10px",borderRadius:"4px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",cursor:"pointer","&:hover":{background:"light-dark(rgb(223, 227, 232), rgb(50, 50, 50))"}},".hidden":{display:"none"}});function Ki(e){var o,a;let t=e.state.facet(Ct),n={...q,...t.keymaps},r=de("div","cm-ai-tooltip").appendChild(de("div","cm-ai-tooltip-button"));return r.innerHTML=`<span>Edit <span class="hotkey">${Pn(n.showInput)}</span></span>`,(o=r.querySelector("span"))==null||o.addEventListener("mousedown",i=>{i.stopPropagation(),i.button===0&&i.preventDefault()}),(a=r.querySelector("span"))==null||a.addEventListener("click",i=>{i.preventDefault(),Wr(e)}),r}const Rn=Mt.define({combine(e){return Tn(e,{render:Ki,hideOnBlur:!1})}}),Xi=ze.fromClass((Ia=class{constructor(e){h(this,"view");h(this,"suppress");h(this,"dom");h(this,"mousedown",()=>{this.suppress=!0});h(this,"mouseup",()=>{this.suppress=!1,this.display(this.view)});h(this,"scroll",()=>{this.display(this.view)});h(this,"windowScroll",()=>{this.display(this.view)});Oa(this,vn,e=>{var n;let t=e.state.selection.ranges.find(r=>!r.empty);if(t&&!this.suppress){let r=e.coordsAtPos(t.from);if(!r)return;let o=e.dom.getBoundingClientRect(),a=(n=e.dom.parentElement)==null?void 0:n.getBoundingClientRect(),i=r.top>=o.top&&r.top<=o.bottom&&r.left>=o.left&&r.left<=o.right,s=!a||r.top>=a.top&&r.top<=a.bottom&&r.left>=a.left&&r.left<=a.right;if(!i||!s){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}this.dom.style.display="flex",this.dom.setAttribute("aria-hidden","false");let c=this.dom.getBoundingClientRect(),u=o.width-c.width,d=Math.min(r.left,u),f=r.top-c.height;f=a?Math.max(a.y,f):f,this.dom.style.left=`${d}px`,this.dom.style.top=`${f}px`,requestAnimationFrame(()=>{this.dom&&this.dom.setAttribute("aria-hidden","false")})}else this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true")});this.view=e;let t=e.state.facet(Rn);this.suppress=!1,document.addEventListener("mousedown",this.mousedown),document.addEventListener("mouseup",this.mouseup),e.scrollDOM.addEventListener("scroll",this.scroll),window.addEventListener("scroll",this.windowScroll,!0);let n=t.render(e);e.dom.appendChild(n),this.dom=n}update(e){this.display(e.view)}docViewUpdate(e){this.display(e)}display(e){if(e.state.field(ot).show){this.dom.style.display="none";return}if(e.state.facet(Rn).hideOnBlur&&!e.hasFocus){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}e.requestMeasure({read:La(this,vn)})}destroy(){document.removeEventListener("mousedown",this.mousedown),document.removeEventListener("mouseup",this.mouseup),this.view.scrollDOM.removeEventListener("scroll",this.scroll),window.removeEventListener("scroll",this.windowScroll,!0),this.dom.remove()}},vn=new WeakMap,Ia));var Yi=B.baseTheme({".cm-ai-tooltip-button":{userSelect:"none",fontFamily:"system-ui, -apple-system, sans-serif",position:"fixed",display:"flex",boxSizing:"border-box",padding:"2px 6px",borderRadius:"4px",fontSize:"12px",backgroundColor:"#0E639C",color:"#ffffff",border:"1px solid transparent",boxShadow:"0 2px 4px rgba(0,0,0,0.1)",zIndex:"999",transition:"opacity 0.5s","&[aria-hidden='true']":{opacity:"0"},"&[aria-hidden='false']":{opacity:"1"},"& > span":{pointerEvents:"auto",cursor:"pointer",display:"inline-block",padding:"2px"},"&:hover":{backgroundColor:"#1177bb"}}});function Qi(){return[Xi,Yi]}var Zi=class extends Fn{constructor(t){super();h(this,"oldCode");this.oldCode=t}toDOM(t){let n=de("div","cm-old-code-container");n.setAttribute("role","region"),n.setAttribute("aria-label","Previous code version");let r=de("div","cm-old-code cm-line");r.textContent=this.oldCode;let o=de("div","cm-floating-buttons"),a=t.state.facet(Ct),i={...q,...a.keymaps},s=de("button","cm-floating-button cm-floating-accept");s.innerHTML=`<span class="hotkey">${Pn(i.acceptEdit)}</span> Accept`,s.setAttribute("aria-label","Accept changes"),s.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),t.focus(),Vr(t)});let c=de("button","cm-floating-button cm-floating-reject");return c.innerHTML=`<span class="hotkey">${Pn(i.rejectEdit)}</span> Reject`,c.setAttribute("aria-label","Reject changes"),c.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),t.focus(),$r(t)}),o.append(s,c),n.append(r,o),n}updateDOM(t,n){return!0}},es=class extends Fn{constructor(t){super();h(this,"complete");h(this,"abortController",null);h(this,"dom",null);h(this,"input",null);h(this,"loadingContainer",null);h(this,"helpInfo",null);h(this,"inputContainer",null);h(this,"form",null);h(this,"view",null);h(this,"onKeyDown",async t=>{t.key==="Enter"&&!t.shiftKey?(t.preventDefault(),await this.handleSubmit()):t.key==="Escape"&&this.onCancel()});h(this,"onCancel",()=>{this.cleanup();let t=this.view;t&&(t.dispatch({effects:[rt.of({show:!1,lineFrom:0,lineTo:0}),dt.of(!1)]}),t.focus())});h(this,"handleSubmit",async t=>{var g;let n=this.view;if(!n)return;let r=n.state.facet(Ct);t==null||t.stopPropagation();let o=n.state.field(ot),{input:a}=this;if(!a)return;let i=a.value.trim();if(!o.show||!i)return;let s=n.state.doc.line(o.lineFrom),c=n.state.doc.line(o.lineTo),u=s.from,d=c.to,f=n.state.sliceDoc(u,d),p=n.state.sliceDoc(0,u),m=n.state.sliceDoc(d);this.abortController=new AbortController,n.dispatch({effects:dt.of(!0)}),this.toggleLoading(!0);try{let y=await this.complete({prompt:i,selection:f,codeBefore:p,codeAfter:m,editorView:n,signal:this.abortController.signal});if(!n.state.field(ot).show)return;if(!y||typeof y!="string")throw Error("Invalid completion result");n.dispatch({changes:{from:u,to:d,insert:y},effects:[rt.of({show:!1,lineFrom:0,lineTo:0}),$t.of({from:u,to:u+y.length,oldCode:f,newCode:y}),dt.of(!1)]})}catch(y){if(y instanceof DOMException&&y.name==="AbortError")return;(g=r.onError)==null||g.call(r,y)}finally{this.cleanup(),this.toggleLoading(!1),n.focus()}});this.complete=t}toDOM(t){if(this.dom)return this.dom;this.view=t;let n=t.state.field(Gr),r=t.state.field(Jr),o=de("div","cm-ai-input-container");this.inputContainer=o,this.dom=o;let a=de("form","cm-ai-input-form");this.form=a,a.setAttribute("role","search"),a.setAttribute("aria-label","AI editing instructions"),a.addEventListener("submit",w=>w.preventDefault());let i=de("input","cm-ai-input");this.input=i,a.append(i),i.placeholder="Editing instructions...",i.setAttribute("aria-label","AI editing instructions"),i.setAttribute("autocomplete","off"),i.setAttribute("spellcheck","true"),i.value=n.inputValue;let s=de("div","cm-ai-loading-container");this.loadingContainer=s;let c=de("div","cm-ai-loading-indicator");c.setAttribute("role","status"),c.setAttribute("aria-live","polite"),c.textContent="Generating";let u=de("button","cm-ai-cancel-button");u.textContent="Cancel",u.setAttribute("aria-label","Cancel code generation"),u.addEventListener("click",this.onCancel),s.append(u,c);let d=de("div","cm-ai-help-info");this.helpInfo=d;let f=d.appendChild(document.createElement("button"));f.className="cm-ai-help-info-button",f.textContent="Esc to close",f.addEventListener("click",this.onCancel);let p=de("button","cm-ai-generate-button");p.textContent="\u23CE Generate",p.setAttribute("aria-label","Generate code"),p.addEventListener("click",this.handleSubmit),this.toggleLoading(r),n.shouldFocus&&requestAnimationFrame(()=>{i.value=n.inputValue,i.focus(),t.dispatch({effects:xt.of(!1)})}),m(i.value),i.addEventListener("input",y),i.addEventListener("keydown",this.onKeyDown);function m(w){d.replaceChildren(w?p:f)}let g="";function y(){t.dispatch({effects:St.of(i.value)});let w=i.value.trim();w!==g&&(g=w,m(w))}return o}toggleLoading(t){var n;this.inputContainer&&this.form&&this.loadingContainer&&this.helpInfo&&((n=this.inputContainer)==null||n.replaceChildren(this.form,t?this.loadingContainer:this.helpInfo))}updateDOM(t,n){return this.dom=t,this.input=t.querySelector(".cm-ai-input"),!0}cleanup(){var t,n,r;(t=this.abortController)==null||t.abort(),this.abortController=null,(n=this.dom)==null||n.remove(),(r=this.input)==null||r.remove(),this.dom=null,this.input=null}destroy(){this.cleanup()}};function ts(e){if(!e.prompt)throw Error("prompt function is required");let t={...q,...e.keymaps};return[Ct.of(e),ot,Gr,Tt,Jr,Qi(),zi,Je.of([{key:t.showInput,run:Wr}]),ct.highest([Je.of([{key:t.acceptEdit,run:Vr},{key:t.rejectEdit,run:$r}])]),ns,rs,os,as]}const ns=B.updateListener.of(e=>{let t=e.state.field(ot);if(!t.show||!e.docChanged)return;let{lineFrom:n,lineTo:r}=t,o=!1;e.changes.iterChanges((a,i,s,c)=>{let u=e.state.doc.lineAt(a).number;if(u<n){let d=e.state.doc.lineAt(c).number-e.state.doc.lineAt(s).number;n+=d,r+=d,o=!0}else if(u<=r){let d=e.state.doc.lineAt(c).number-e.state.doc.lineAt(s).number;r+=d,o=!0}}),o&&e.view.dispatch({effects:[rt.of({show:!0,lineFrom:n,lineTo:r})]})}),rs=B.decorations.of(e=>{let t=e.state.field(Tt);return t?H.set([H.mark({class:"cm-new-code-line"}).range(t.from,t.to)]):H.none}),os=B.decorations.compute([ot],e=>{let t=e.field(ot),n=e.facet(Ct),r=[];if(t.show){let o=t.lineFrom,a=t.lineTo;for(let i=o;i<=a;i++){let s=e.doc.line(i).from;r.push(H.line({class:"cm-ai-selection"}).range(s)),i===o&&r.push(H.widget({widget:new es(n.prompt),side:-1}).range(s))}}return H.set(r)}),as=qe.define({create(e){return H.none},update(e,t){let n=t.state.field(Tt);return n?H.set([H.widget({widget:new Zi(n.oldCode),block:!0}).range(n.from)]):H.none},provide:e=>B.decorations.from(e)});var is=Ge(),I=Da(sd(),1),Gn=()=>({entries:new Map}),{valueAtom:zr,useActions:Kr}=Lr(Gn,{submit:(e,t)=>{let{cellIds:n,deleteCell:r,deleteManyCells:o,store:a}=t,i=a.get(nt),s=a.get(Sd),c=new Set(i.cellIds.inOrderIds.filter(f=>i.cellData[f].code.trim()==="")),u=new Map;for(let f of n){if(c.has(f)){u.set(f,{cellId:f,type:"simple"});continue}let p=i.cellRuntime[f],m=new Map;for(let y of Object.values(s)){let w=y.declaredBy.includes(f),k=y.usedBy.some(C=>!c.has(C));w&&k&&m.set(y.name,y.usedBy)}let g;p!=null&&p.runElapsedTimeMs&&p.runElapsedTimeMs>2e3&&(g=p.runElapsedTimeMs),m.size===0&&g===void 0?u.set(f,{cellId:f,type:"simple"}):u.set(f,{cellId:f,type:"expensive",executionDurationMs:g,defs:m})}let d=[...u.values()].every(f=>f.type==="simple");return u.size>0&&d?(u.size===1?r({cellId:[...u.values()][0].cellId}):o({cellIds:[...u.values()].map(f=>f.cellId)}),Gn()):{...e,entries:u}},clear:()=>Gn()});Bn=function(){let e=yr(),{submit:t,clear:n}=Kr(),{entries:r}=ce(zr),o=Ei(),a=_r();return(0,I.useMemo)(()=>({submit:i=>{t({cellIds:i,deleteCell:o,deleteManyCells:a,store:e})},clear:n,get idle(){return r.size===0},get shouldConfirmDelete(){return r.size>1}}),[e,t,n,r,o,a])},Bi=function(e){let t=(0,is.c)(16),n=ce(zr),r=Kr(),o=_r(),a;t[0]!==e||t[1]!==n.entries?(a=n.entries.get(e),t[0]=e,t[1]=n.entries,t[2]=a):a=t[2];let i=a;if(!i){let d;return t[3]===Symbol.for("react.memo_cache_sentinel")?(d={isPending:!1},t[3]=d):d=t[3],d}if(n.entries.size!==1){let d;return t[4]===i?d=t[5]:(d={isPending:!0,shouldConfirmDelete:!1,...i},t[4]=i,t[5]=d),d}let s;t[6]!==r||t[7]!==o||t[8]!==n.entries?(s=()=>{o({cellIds:[...n.entries.values()].map(ss)}),r.clear()},t[6]=r,t[7]=o,t[8]=n.entries,t[9]=s):s=t[9];let c;t[10]===r?c=t[11]:(c=()=>r.clear(),t[10]=r,t[11]=c);let u;return t[12]!==i||t[13]!==s||t[14]!==c?(u={isPending:!0,...i,shouldConfirmDelete:!0,confirm:s,cancel:c},t[12]=i,t[13]=s,t[14]=c,t[15]=u):u=t[15],u};function ss(e){return e.cellId}async function ls(e){var s,c;let t=`
|
|
4
4
|
${e.codeBefore}
|
|
5
5
|
<rewrite_this>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as j}from"./chunk-LvLJmgfZ.js";import{d as w,l as P,n as y,u as A}from"./useEvent-DO6uJBas.js";import{Jr as _,Xt as L,ai as O,j as E,k as S,vt as T,w as $,zt as D}from"./cells-
|
|
1
|
+
import{s as j}from"./chunk-LvLJmgfZ.js";import{d as w,l as P,n as y,u as A}from"./useEvent-DO6uJBas.js";import{Jr as _,Xt as L,ai as O,j as E,k as S,vt as T,w as $,zt as D}from"./cells-BW_4R0Qw.js";import{t as b}from"./compiler-runtime-DeeZ7FnK.js";import{d as F}from"./hotkeys-BHHWjLlp.js";import{d as q}from"./utils-DXvhzCGS.js";import{r as I}from"./constants-B6Cb__3x.js";import{A as z,p as B,w as H}from"./config-CIrPQIbt.js";import{t as J}from"./jsx-runtime-ZmTK25f3.js";import{t as M}from"./cn-BKtXLv3a.js";import{r as R}from"./requests-BsVD4CdD.js";import{n as U}from"./ImperativeModal-CUbWEBci.js";var V=b();function N(){return A(_)}function X(){let r=(0,V.c)(5),[t]=P(H),e=w(_),{openAlert:a}=U(),{sendRename:o}=R(),s;return r[0]!==t.state||r[1]!==a||r[2]!==o||r[3]!==e?(s=async l=>{let n=q();return t.state===z.OPEN?(B(i=>{l===null?i.delete(I.filePath):i.set(I.filePath,l)}),o({filename:l}).then(()=>(e(l),document.title=n.app_title||D.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],y(s)}var p=b(),v=j(J(),1);const k=r=>{let t=(0,p.c)(12),{className:e,cellId:a,variant:o,onClick:s,formatCellName:l,skipScroll:n}=r,i=E()[a]??"",C=S().inOrderIds.indexOf(a),{showCellIfHidden:d}=$(),g=l??Q,c;t[0]===e?c=t[1]:(c=M("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=h=>{if(a==="__scratch__")return!1;d({cellId:a}),h.stopPropagation(),h.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(T(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},G=r=>{let t=(0,p.c)(2),e;return t[0]===r?e=t[1]:(e=(0,v.jsx)(k,{...r,variant:"destructive"}),t[0]=r,t[1]=e),e},K=r=>{let t=(0,p.c)(10),{cellId:e,lineNumber:a}=r,o=N(),s;t[0]!==e||t[1]!==a?(s=()=>L(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)(k,{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=O.create(r),o=document.getElementById(a);return o===null?(F.error(`Cell ${a} not found on page.`),!1):(e||o.scrollIntoView({behavior:"smooth",block:"center"}),t==="destructive"&&(o.classList.add("error-outline"),setTimeout(()=>{o.classList.remove("error-outline")},2e3)),t==="focus"&&(o.classList.add("focus-outline"),setTimeout(()=>{o.classList.remove("focus-outline")},2e3)),!0)}function Q(r){return r}export{N as a,x as i,G as n,X as o,K as r,k as t};
|
|
@@ -85,7 +85,7 @@ ${i.sqlString}
|
|
|
85
85
|
`)+kS(p)+y,offset:f.length+1}}isSupported(e){return e.trim()===""?!0:!e.includes("mo.sql")||e.split("mo.sql").length>2?!1:ry(e)!==null}extractCommentLines(e){let n=e.split(`
|
|
86
86
|
`),i=[];for(let o of n)if(o!=null&&o.startsWith("#"))i.push(o);else break;return i}};function xS(e){do{if(e.name==="AssignStatement")return e.node;if(e.name!=="Comment")return null}while(e.next());return null}function ry(e){try{let n=uS(e).cursor();n.name==="Script"&&n.next();let i=xS(n);if(!i||e.slice(i.to).trim().length>0)return null;let o=null,s=null,c,d,f=0,p=i.cursor();if(p.firstChild(),p.name==="VariableName"&&(o=e.slice(p.from,p.to)),!o)return null;let y=!1,w=null;for(;p.nextSibling();)if(p.name==="AssignOp")y=!0;else if(y&&!w){w=p.node;break}if(!w||w.name==="ConditionalExpression"||w.name==="BinaryExpression"||w.name==="UnaryExpression")return null;let _=w.cursor(),C=null;if(_.name==="CallExpression")C=_.node;else{_.firstChild();do if(_.name==="CallExpression"){C=_.node;break}while(_.nextSibling())}if(C){let E=C.cursor(),T=!1;if(E.firstChild(),E.name==="MemberExpression"&&(T=e.slice(E.from,E.to)==="mo.sql"),T){for(;E.next();)if(E.name==="ArgList"){let{args:I,kwargs:$}=fS(E.node.cursor(),e);I.length===1&&(s=mS(I[0],e),f=I[0].from+gS(e.slice(I[0].from,I[0].to)));for(let{key:V,value:F}of $)switch(V){case"engine":c=F;break;case"output":d=F==="True";break}if(s==="")return{dfName:o,sqlString:"",engine:c,output:d,startPosition:f};break}}}return!o||!s?null:{dfName:o,sqlString:cS(s),engine:c,output:d,startPosition:f}}catch(n){return console.warn("Failed to parse SQL statement",n),null}}function kS(e){return e.split(`
|
|
87
87
|
`).map(n=>n!=null&&n.trim()?` ${n}`:n).join(`
|
|
88
|
-
`)}function SS(e,n){return{get:()=>n.get(e),sub:i=>n.sub(e,()=>i(n.get(e)))}}function CS(e,{offset:n,body:i=window,behavior:o="smooth"}){let s=(n==null?void 0:n.top)??0,c=(n==null?void 0:n.bottom)??0,d=e.getBoundingClientRect();if(d.top<s){i.scrollBy({top:d.top-s,behavior:o});return}if(d.bottom>window.innerHeight-c){i.scrollBy({top:d.bottom-window.innerHeight+c,behavior:o});return}}Uu=function(e){return e?e.state.field(Lr).type:"python"};function ES(e,n){return!e||Uu(e)===n?!1:e.state.doc.toString().trim()===""?!0:gr[n].isSupported(Xr(e))}Ih=function(e,n,i={}){return!i.force&&!ES(e,n)?!1:(gm(e,{language:n}),n)};function TS(e){return Ra.of([{key:e.getHotkey("cell.format").key,preventDefault:!0,run:n=>(zu({[n.state.facet(Ui)]:n}),!0)},{key:e.getHotkey("cell.viewAsMarkdown").key,preventDefault:!0,run:n=>{let i=Uu(n);if(i!=="markdown"&&i!=="python")return!1;let o=Ih(n,i==="python"?"markdown":"python",{force:!0});return o==="markdown"&&n.state.facet(Pt).afterToggleMarkdown(),o!==!1}}])}fx=function(){return Kt.updateListener.of(e=>{if(e.view.hasFocus&&e.heightChanged&&e.docChanged){if(e.transactions.some(n=>n.effects.some(i=>i.is(Ls))))return;iy(e.view,{behavior:"smooth"})}})};function iy(e,n){let i=e.dom.getElementsByClassName("cm-activeLine cm-line");if(i.length===1){let o=i[0],s=document.getElementById("App");In(s,"App not found"),CS(o,{offset:{top:30,bottom:150},body:s,behavior:n.behavior})}}function RS(){return{}}let DS,OS,ay;({reducer:DS,createActions:OS,valueAtom:Ma,useActions:ay}=Ll(RS,{setVariables:(e,n)=>{let i={...e},o={};for(let s of n)o[s.name]={...i[s.name],...s};return o},addVariables:(e,n)=>{let i={...e};for(let o of n)i[o.name]={...i[o.name],...o};return i},setMetadata:(e,n)=>{let i={...e};for(let{name:o,value:s,dataType:c}of n)i[o]&&(i[o]={...i[o],value:s,dataType:c});return i}})),lx=()=>Zn(Ma),hx=function(){return ay()},T_=function(e){let n=e.storage||Ts;return{getItem(i,o){try{let s=n.getItem(i);if(!s)return o;let c=JSON.parse(s);return e.fromSerializable(c)}catch(s){return Te.warn(`Error getting ${i} from storage`,s),o}},setItem:(i,o)=>{n.setItem(i,JSON.stringify(e.toSerializable(o)))},removeItem:i=>{n.removeItem(i)}}},Wl=Gm(()=>Ts);function PS(e,n){if(typeof window>"u")return;let i=`__marimo__${n}`;window[i]&&Te.warn(`Overwriting existing debug object ${i}`),window[i]=e}var MS={markdown:!0,wasm_layouts:!1,rtc_v2:!1,performant_table_charts:!1,chat_modes:!1,cache_panel:!1,external_agents:!1,server_side_pdf_export:!1};Ql=function(e){var n,i;return((i=(n=iw())==null?void 0:n.experimental)==null?void 0:i[e])??MS[e]};function LS(e,n){Vi().saveUserConfig({config:{experimental:{[e]:n}}})}B_=({feature:e,children:n})=>Ql(e)?n:null,PS(LS,"setFeatureFlag"),Ul=[{type:"files",Icon:Pg,label:"Files",tooltip:"View files",defaultSection:"sidebar"},{type:"variables",Icon:Qh,label:"Variables",tooltip:"Explore variables and data sources",defaultSection:"sidebar"},{type:"packages",Icon:dm,label:"Packages",tooltip:"Manage packages",defaultSection:"sidebar"},{type:"ai",Icon:Yh,label:"AI",tooltip:"Chat & Agents",defaultSection:"sidebar"},{type:"outline",Icon:Wh,label:"Outline",tooltip:"View outline",defaultSection:"sidebar"},{type:"documentation",Icon:Jh,label:"Docs",tooltip:"View live docs",defaultSection:"sidebar"},{type:"dependencies",Icon:Nh,label:"Dependencies",tooltip:"Explore dependencies",defaultSection:"sidebar"},{type:"errors",Icon:Vh,label:"Errors",tooltip:"View errors",defaultSection:"developer-panel"},{type:"scratchpad",Icon:Am,label:"Scratchpad",tooltip:"Scratchpad",defaultSection:"developer-panel"},{type:"tracing",Icon:ym,label:"Tracing",tooltip:"View tracing",defaultSection:"developer-panel"},{type:"secrets",Icon:Mg,label:"Secrets",tooltip:"Manage secrets",defaultSection:"developer-panel",hidden:wh()},{type:"logs",Icon:rm,label:"Logs",tooltip:"View logs",defaultSection:"developer-panel"},{type:"terminal",Icon:Fh,label:"Terminal",tooltip:"Terminal",hidden:wh(),defaultSection:"developer-panel",requiredCapability:"terminal"},{type:"snippets",Icon:Lg,label:"Snippets",tooltip:"Snippets",defaultSection:"developer-panel"},{type:"cache",Icon:DD,label:"Cache",tooltip:"View cache",defaultSection:"developer-panel",hidden:!Ql("cache_panel")}],C_=new Map(Ul.map(e=>[e.type,e])),Q_=function(e,n){return!!(e.hidden||e.requiredCapability&&!n[e.requiredCapability])};var NS=Jr();mm=$l("marimo:panel-layout",{sidebar:Ul.filter(e=>!e.hidden&&e.defaultSection==="sidebar").map(e=>e.type),developerPanel:Ul.filter(e=>!e.hidden&&e.defaultSection==="developer-panel").map(e=>e.type)},Wl,{getOnInit:!0});function oy(e){let n=lt.get(mm);return n.sidebar.includes(e)?"sidebar":n.developerPanel.includes(e)?"developer-panel":null}var sy="marimo:sidebar",ly=new Fu(Z2({selectedPanel:ew().optional().transform(e=>e),isSidebarOpen:tw(),isDeveloperPanelOpen:tw().optional().default(!1),selectedDeveloperPanelTab:ew().optional().default("errors").transform(e=>e)}),IS);function IS(){return{selectedPanel:"variables",isSidebarOpen:!1,isDeveloperPanelOpen:!1,selectedDeveloperPanelTab:"errors"}}let AS,qS,cy;({reducer:AS,createActions:qS,valueAtom:cd,useActions:cy}=Ll(()=>ly.get(sy),{openApplication:(e,n)=>{let i=oy(n);return i==="sidebar"?{...e,selectedPanel:n,isSidebarOpen:!0}:i==="developer-panel"?{...e,selectedDeveloperPanelTab:n,isDeveloperPanelOpen:!0}:e},toggleApplication:(e,n)=>{let i=oy(n);return i==="sidebar"?{...e,selectedPanel:n,isSidebarOpen:e.isSidebarOpen?e.selectedPanel!==n:!0}:i==="developer-panel"?{...e,selectedDeveloperPanelTab:n,isDeveloperPanelOpen:e.isDeveloperPanelOpen?e.selectedDeveloperPanelTab!==n:!0}:e},toggleSidebarPanel:e=>({...e,isSidebarOpen:!e.isSidebarOpen}),setIsSidebarOpen:(e,n)=>({...e,isSidebarOpen:n}),toggleDeveloperPanel:e=>({...e,isDeveloperPanelOpen:!e.isDeveloperPanelOpen}),setIsDeveloperPanelOpen:(e,n)=>({...e,isDeveloperPanelOpen:n})},[(e,n)=>ly.set(sy,n)])),ax=()=>{let e=(0,NS.c)(2),n=Zn(cd);if(n.isSidebarOpen)return n;let i;return e[0]===n?i=e[1]:(i={...n,selectedPanel:void 0},e[0]=n,e[1]=i),i},j_=function(){return cy()},Cm=ze({terminal:!1,pylsp:!1,basedpyright:!1,ty:!1});function sc(e){var n;return((n=lt.get(Cm))==null?void 0:n[e])??!1}Ju=ze({documentation:null});var uy=new Set(["FunctionDefinition","LambdaExpression","ArrayComprehensionExpression","SetComprehension","DictionaryComprehensionExpression","ComprehensionExpression","ClassDefinition"]);function jS(e){let n=cw(e.state);if(!n||BS(n))return[];let i=new Set(Object.keys(e.variables).filter(E=>{let T=e.variables[E];return T.dataType!=="module"&&!T.declaredBy.includes("setup")&&!T.declaredBy.includes(e.cellId)}));if(i.size===0)return[];let o=[],s=new Map,c=new Map,d=new Map;function f(E,T){var K,pe,P,A,W,de,fe,we,J,be,Se;let I=E.cursor(),$=I.name,V=I.from,F=uy.has($),N=T;switch(F&&(N=[...T,V],s.set(V,new Set),c.set(V,$)),$){case"FunctionDefinition":{let Z=E.cursor();Z.firstChild();do if(Z.name==="VariableName"){let se=e.state.doc.sliceString(Z.from,Z.to),Q=T[T.length-1]??-1;s.has(Q)||s.set(Q,new Set),(K=s.get(Q))==null||K.add(se);break}while(Z.nextSibling());let re=E.cursor();re.firstChild();do if(re.name==="ParamList"){let se=re.node.cursor();se.firstChild();do if(se.name==="VariableName"){let Q=e.state.doc.sliceString(se.from,se.to);(pe=s.get(V))==null||pe.add(Q)}while(se.nextSibling())}while(re.nextSibling());break}case"LambdaExpression":{let Z=E.cursor();Z.firstChild();do if(Z.name==="ParamList"){let re=Z.node.cursor();re.firstChild();do if(re.name==="VariableName"){let se=e.state.doc.sliceString(re.from,re.to);(P=s.get(V))==null||P.add(se)}while(re.nextSibling())}while(Z.nextSibling());break}case"ArrayComprehensionExpression":case"DictionaryComprehensionExpression":case"SetComprehension":case"ComprehensionExpression":{let Z=E.cursor();Z.firstChild();let re=!1;do if(Z.name==="for")re=!0;else if(re&&Z.name==="VariableName"){let se=e.state.doc.sliceString(Z.from,Z.to);(A=s.get(V))==null||A.add(se)}else if(re&&Z.name==="TupleExpression"){let se=Z.node.cursor();se.firstChild();do if(se.name==="VariableName"){let Q=e.state.doc.sliceString(se.from,se.to);(W=s.get(V))==null||W.add(Q)}while(se.nextSibling())}else re&&Z.name==="in"&&(re=!1);while(Z.nextSibling());break}case"ClassDefinition":{let Z=E.cursor();Z.firstChild();do if(Z.name==="VariableName"){let re=e.state.doc.sliceString(Z.from,Z.to),se=T[T.length-1]??-1;s.has(se)||s.set(se,new Set),(de=s.get(se))==null||de.add(re);break}while(Z.nextSibling());d.set(V,[]);break}case"AssignStatement":{let Z=E.cursor(),re=[];Z.firstChild();do Z.name==="AssignOp"&&re.push(Z.from);while(Z.nextSibling());let se=re[re.length-1],Q=E.cursor();Q.firstChild();let Le=N[N.length-1]??-1;do Q.from<se&&Qd(Q,{currentScope:Le,state:e.state,allDeclarations:s,scopeTypes:c,classLevelDeclarations:d,assignmentPosition:I.to});while(Q.nextSibling());break}case"ForStatement":{let Z=E.cursor();Z.firstChild();let re=!1;do if(Z.name==="for")re=!0;else if(re&&Z.name==="VariableName"){let se=e.state.doc.sliceString(Z.from,Z.to),Q=N[N.length-1]??-1;s.has(Q)||s.set(Q,new Set),(fe=s.get(Q))==null||fe.add(se)}else re&&Z.name==="in"&&(re=!1);while(Z.nextSibling());break}case"ImportStatement":{let Z=E.cursor();Z.firstChild();do if(Z.name==="VariableName"){let re=e.state.doc.sliceString(Z.from,Z.to),se=N[N.length-1]??-1;s.has(se)||s.set(se,new Set),(we=s.get(se))==null||we.add(re)}while(Z.nextSibling());break}case"ImportFromStatement":{let Z=E.cursor();Z.firstChild();let re=!1;do if(Z.name==="import")re=!0;else if(re&&Z.name==="VariableName"){let se=e.state.doc.sliceString(Z.from,Z.to),Q=N[N.length-1]??-1;s.has(Q)||s.set(Q,new Set),(J=s.get(Q))==null||J.add(se)}while(Z.nextSibling());break}case"TryStatement":{let Z=E.cursor();Z.firstChild();let re=!1;do if(Z.name==="as")re=!0;else if(re&&Z.name==="VariableName"){let se=e.state.doc.sliceString(Z.from,Z.to),Q=N[N.length-1]??-1;s.has(Q)||s.set(Q,new Set),(be=s.get(Q))==null||be.add(se),re=!1}while(Z.nextSibling());break}case"WithStatement":{let Z=E.cursor();Z.firstChild();let re=!1;do if(Z.name==="as")re=!0;else if(re&&Z.name==="VariableName"){let se=e.state.doc.sliceString(Z.from,Z.to),Q=N[N.length-1]??-1;s.has(Q)||s.set(Q,new Set),(Se=s.get(Q))==null||Se.add(se),re=!1}while(Z.nextSibling());break}}C(I,Z=>{f(Z,N)})}function p(E,T,I){let $=d.get(T);return $?$.some(([V,F])=>V===E&&F<I):!1}function y(E,T,I){var $,V;for(let F of T)if(c.get(F)==="ClassDefinition"){if(p(E,F,I))return!0}else if(($=s.get(F))!=null&&$.has(E))return!0;return((V=s.get(-1))==null?void 0:V.has(E))??!1}function w(E,T){let I=E.cursor(),$=I.name,V=I.from,F=uy.has($),N=T;if(F&&(N=[...T,V]),$==="VariableName"){let K=e.state.doc.sliceString(I.from,I.to);_(K,I)&&(y(K,N,I.from)||o.push({from:I.from,to:I.to,variableName:K}))}C(I,K=>{w(K,N)})}function _(E,T){return i.has(E)&&!zS(T)&&!FS(T)}function C(E,T){if(E.firstChild())do T(E.node);while(E.nextSibling())}return f(n,[]),w(n,[]),o}function zS(e){let n=e.node.cursor();if(n.moveTo(e.from),n.parent()&&n.name==="CallExpression"&&n.firstChild())do if(n.name==="ArgList"&&n.firstChild()){do if(n.from===e.from&&n.to===e.to)return n.nextSibling()&&n.name==="AssignOp";while(n.nextSibling());break}while(n.nextSibling());return!1}function FS(e){let n=e.node.cursor();if(n.parent()&&n.name==="AssignStatement"){let i=n.node.cursor();i.firstChild();let o=-1;do if(i.name==="AssignOp"){o=i.from;break}while(i.nextSibling());return o!==-1&&e.from<o}return!1}function BS(e){let n=e.cursor();do if(n.name==="\u26A0"||n.type.isError)return!0;while(n.next());return!1}function Qd(e,n){var i;switch(e.name){case"VariableName":{let o=n.state.doc.sliceString(e.from,e.to);if(n.currentScope!==-1&&n.scopeTypes.get(n.currentScope)==="ClassDefinition"){let s=n.classLevelDeclarations.get(n.currentScope);s&&s.push([o,n.assignmentPosition])}else n.allDeclarations.has(n.currentScope)||n.allDeclarations.set(n.currentScope,new Set),(i=n.allDeclarations.get(n.currentScope))==null||i.add(o);break}case"TupleExpression":{let o=e.node.cursor();o.firstChild();do Qd(o,n);while(o.nextSibling());break}case"ArrayExpression":{let o=e.node.cursor();o.firstChild();do Qd(o,n);while(o.nextSibling());break}}}var HS=Hi.mark({class:"mo-cm-reactive-reference"});V_=Hi.mark({class:"mo-cm-reactive-reference-hover"});var dy=Bi.define(),VS=class{constructor(e,n){ke(this,"highlightDebounceMs",300);this.view=e,this.cellId=n,this.scheduleHighlighting=nw(()=>{this.runHighlighting()},this.highlightDebounceMs),this.variablesUnsubscribe=lt.sub(Ma,()=>{this.scheduleHighlighting()}),this.scheduleHighlighting()}update(e){(e.docChanged||e.focusChanged)&&this.scheduleHighlighting()}destroy(){this.scheduleHighlighting.cancel(),this.variablesUnsubscribe()}runHighlighting(){let e=jS({state:this.view.state,cellId:this.cellId,variables:lt.get(Ma)});e.length>0&&Te.debug(`Found ${e.length} reactive variables in cell ${this.cellId}`),queueMicrotask(()=>{this.view.dispatch({effects:dy.of(e)})})}};rd=xs.define({create(){return{decorations:Hi.none,ranges:[]}},update(e,n){let i={decorations:e.decorations.map(n.changes),ranges:e.ranges};for(let o of n.effects)o.is(dy)&&(i={decorations:Hi.set(o.value.map(s=>HS.range(s.from,s.to))),ranges:o.value});return i},provide:e=>Kt.decorations.from(e,n=>n.decorations)});function $S(e){return[rd,Pl.define(n=>new VS(n,e))]}Y_=function(e,n){return n?$S(e):[]};function fy(e,n=!1){if(!e)return null;let i=document.createElement("span");if(i.classList.add("mo-cm-tooltip"),i.classList.add("docs-documentation"),n&&i.classList.add("cm-tooltip-section"),i.style.display="flex",i.style.flexDirection="column",i.style.gap=".8rem",i.innerHTML=e,n){let o=document.createElement("div");o.classList.add("text-xs","text-muted-foreground","font-medium","pt-1","-mt-2","border-t","border-border");let s=document.createElement("kbd");s.className="ml-1 rounded-md bg-muted/40 px-2 text-[0.75rem] font-prose center border border-foreground/20 text-muted-foreground inline whitespace-nowrap",s.textContent=b4()?"\u2318":"Ctrl",o.append(document.createTextNode("Jump to defining cell ")),o.append(s),o.append(document.createTextNode(" + Click")),i.append(o)}return i}dd=new Iu("autocomplete-result",async(e,n)=>{let{sendCodeCompletionRequest:i}=Vi();await i({id:e,...n})});var WS={param:3,property:2};const Gd={asCompletionResult(e,n){return{from:e-n.prefix_length,options:n.options.map(i=>({label:i.name,type:i.type,boost:WS[i.type]??1,info:()=>fy(i.completion_info)})),validFor:/^\w*$/}},asHoverTooltip({position:e,message:n,limitToType:i,excludeTypes:o,exactName:s,showGoToDefinitionHint:c=!1}){let d=US(n.options,s);if(!d)return;let f=e-n.prefix_length,p=fy(d.completion_info,c);if(p&&!(i&&d.type!==i)&&!(o!=null&&o.includes(d.type)))return{pos:f,html:d.completion_info,end:f+d.name.length,above:!0,create:()=>({dom:p,resize:!1})}}};function US(e,n){if(e.length!==0){if(e.length===1)return e[0];if(n)return e.find(i=>i.name===n)}}k_=function(e){var n;return[(n=e==null?void 0:e.pylsp)!=null&&n.enabled&&sc("pylsp")?[]:xh(async(i,o)=>{let s=await py({view:i,pos:o,excludeTypes:["tooltip"]});return s===null||s==="cancelled"?null:s},{hideOnChange:!0}),GS]};async function py({view:e,pos:n,excludeTypes:i}){var w;let o=er.findElement(e.dom);if(!o)return Te.error("Failed to find active cell."),null;let s=er.parse(o.id),{startToken:c,endToken:d}=Jd(e.state.doc,n),f=((w=e.state.field(rd,!1))==null?void 0:w.ranges.some(_=>n>=_.from&&n<=_.to))??!1,p=await dd.request({document:e.state.doc.slice(0,d).toString(),cellId:s});if(!p)return"cancelled";let y=e.state.doc.slice(c,d).toString();return Gd.asHoverTooltip({position:d,message:p,exactName:y,excludeTypes:i,showGoToDefinitionHint:f})??null}function Jd(e,n){let i=n,o=i>0?e.sliceString(i-1,i):"",s=i<e.length?e.sliceString(i,i+1):"";o==="("&&s===")"&&--i;let c=i,d=i;for(;c>0;){let f=e.sliceString(c-1,c);if(!/\w/.test(f))break;c--}for(;d<e.length;){let f=e.sliceString(d,d+1);if(!/\w/.test(f))break;d++}return{startToken:c,endToken:d}}function KS(e){let{head:n}=e.selection.main,i=e.doc.sliceString(n-1,n);return/\w/.test(i)}var QS=nw(async(e,n)=>{if(lt.get(cd).selectedPanel!=="documentation")return;let i=await py({view:e,pos:n});i!=="cancelled"&<.set(Ju,{documentation:(i==null?void 0:i.html)??null})},300),GS=Kt.updateListener.of(e=>{if(e.selectionSet&&KS(e.state)){let n=e.state.selection.main.head;QS(e.view,n)}});function hy(e,n){e.focus(),requestAnimationFrame(()=>{e.dispatch({selection:{anchor:n,head:n},effects:Kt.scrollIntoView(n,{y:"center"})})})}qu=function(e,n){let{state:i}=e,o=cw(i),s=!1,c=0;return o.iterate({enter:d=>{if(s)return!1;if(d.name==="VariableName"&&i.doc.sliceString(d.from,d.to)===n)return c=d.from,s=!0,!1;if(d.name==="Comment"||d.name==="String")return!1}}),s?(hy(e,c),!0):!1};function JS(e,n){return hy(e,e.state.doc.line(n).from),!0}function XS(e){let{from:n,to:i}=e.selection.main;if(n===i){let{startToken:o,endToken:s}=Jd(e.doc,n);return e.doc.sliceString(o,s)}return e.doc.sliceString(n,i)}function YS(e,n){if(!n)return null;let i=e[n];return!i||i.declaredBy.length===0?null:i.declaredBy[0]}function ZS(e){return e.startsWith("_")}Zh=function(e){let{state:n}=e,i=XS(n);return i?(kw(e),e.dispatch({effects:F4}),fm(e,i)):!1},fm=function(e,n){let i=eC(e,n);return i?qu(i,n):!1},d_=function(e,n){let i=my(e);return i?JS(i,n):!1};function eC(e,n){if(ZS(n))return e;let i=YS(lt.get(Ma),n);return i?my(i):null}function my(e){var n;return((n=lt.get(bt).cellHandles[e].current)==null?void 0:n.editorView)??null}function tC(e){var n=e.Pos;function i(u,m,v){if(m.line===v.line&&m.ch>=v.ch-1){var b=u.getLine(m.line).charCodeAt(m.ch);55296<=b&&b<=55551&&(v.ch+=1)}return{start:m,end:v}}var o=[{keys:"<Left>",type:"keyToKey",toKeys:"h"},{keys:"<Right>",type:"keyToKey",toKeys:"l"},{keys:"<Up>",type:"keyToKey",toKeys:"k"},{keys:"<Down>",type:"keyToKey",toKeys:"j"},{keys:"g<Up>",type:"keyToKey",toKeys:"gk"},{keys:"g<Down>",type:"keyToKey",toKeys:"gj"},{keys:"<Space>",type:"keyToKey",toKeys:"l"},{keys:"<BS>",type:"keyToKey",toKeys:"h"},{keys:"<Del>",type:"keyToKey",toKeys:"x"},{keys:"<C-Space>",type:"keyToKey",toKeys:"W"},{keys:"<C-BS>",type:"keyToKey",toKeys:"B"},{keys:"<S-Space>",type:"keyToKey",toKeys:"w"},{keys:"<S-BS>",type:"keyToKey",toKeys:"b"},{keys:"<C-n>",type:"keyToKey",toKeys:"j"},{keys:"<C-p>",type:"keyToKey",toKeys:"k"},{keys:"<C-[>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-c>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-[>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"<C-c>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"<C-Esc>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-Esc>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"s",type:"keyToKey",toKeys:"cl",context:"normal"},{keys:"s",type:"keyToKey",toKeys:"c",context:"visual"},{keys:"S",type:"keyToKey",toKeys:"cc",context:"normal"},{keys:"S",type:"keyToKey",toKeys:"VdO",context:"visual"},{keys:"<Home>",type:"keyToKey",toKeys:"0"},{keys:"<End>",type:"keyToKey",toKeys:"$"},{keys:"<PageUp>",type:"keyToKey",toKeys:"<C-b>"},{keys:"<PageDown>",type:"keyToKey",toKeys:"<C-f>"},{keys:"<CR>",type:"keyToKey",toKeys:"j^",context:"normal"},{keys:"<Ins>",type:"keyToKey",toKeys:"i",context:"normal"},{keys:"<Ins>",type:"action",action:"toggleOverwrite",context:"insert"},{keys:"H",type:"motion",motion:"moveToTopLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"M",type:"motion",motion:"moveToMiddleLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"L",type:"motion",motion:"moveToBottomLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"h",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!1}},{keys:"l",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!0}},{keys:"j",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,linewise:!0}},{keys:"k",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,linewise:!0}},{keys:"gj",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!0}},{keys:"gk",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!1}},{keys:"w",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1}},{keys:"W",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1,bigWord:!0}},{keys:"e",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,inclusive:!0}},{keys:"E",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"b",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1}},{keys:"B",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1,bigWord:!0}},{keys:"ge",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,inclusive:!0}},{keys:"gE",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"{",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!1,toJumplist:!0}},{keys:"}",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!0,toJumplist:!0}},{keys:"(",type:"motion",motion:"moveBySentence",motionArgs:{forward:!1}},{keys:")",type:"motion",motion:"moveBySentence",motionArgs:{forward:!0}},{keys:"<C-f>",type:"motion",motion:"moveByPage",motionArgs:{forward:!0}},{keys:"<C-b>",type:"motion",motion:"moveByPage",motionArgs:{forward:!1}},{keys:"<C-d>",type:"motion",motion:"moveByScroll",motionArgs:{forward:!0,explicitRepeat:!0}},{keys:"<C-u>",type:"motion",motion:"moveByScroll",motionArgs:{forward:!1,explicitRepeat:!0}},{keys:"gg",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"G",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!0,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"g$",type:"motion",motion:"moveToEndOfDisplayLine"},{keys:"g^",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"g0",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"0",type:"motion",motion:"moveToStartOfLine"},{keys:"^",type:"motion",motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"+",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0}},{keys:"-",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,toFirstChar:!0}},{keys:"_",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0,repeatOffset:-1}},{keys:"$",type:"motion",motion:"moveToEol",motionArgs:{inclusive:!0}},{keys:"%",type:"motion",motion:"moveToMatchedSymbol",motionArgs:{inclusive:!0,toJumplist:!0}},{keys:"f<character>",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"F<character>",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!1}},{keys:"t<character>",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"T<character>",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!1}},{keys:";",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!0}},{keys:",",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!1}},{keys:"'<register>",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0,linewise:!0}},{keys:"`<register>",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0}},{keys:"]`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0}},{keys:"[`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1}},{keys:"]'",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0,linewise:!0}},{keys:"['",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1,linewise:!0}},{keys:"]p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0,matchIndent:!0}},{keys:"[p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0,matchIndent:!0}},{keys:"]<character>",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!0,toJumplist:!0}},{keys:"[<character>",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!1,toJumplist:!0}},{keys:"|",type:"motion",motion:"moveToColumn"},{keys:"o",type:"motion",motion:"moveToOtherHighlightedEnd",context:"visual"},{keys:"O",type:"motion",motion:"moveToOtherHighlightedEnd",motionArgs:{sameLine:!0},context:"visual"},{keys:"d",type:"operator",operator:"delete"},{keys:"y",type:"operator",operator:"yank"},{keys:"c",type:"operator",operator:"change"},{keys:"=",type:"operator",operator:"indentAuto"},{keys:">",type:"operator",operator:"indent",operatorArgs:{indentRight:!0}},{keys:"<",type:"operator",operator:"indent",operatorArgs:{indentRight:!1}},{keys:"g~",type:"operator",operator:"changeCase"},{keys:"gu",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},isEdit:!0},{keys:"gU",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},isEdit:!0},{keys:"n",type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:!0}},{keys:"N",type:"motion",motion:"findNext",motionArgs:{forward:!1,toJumplist:!0}},{keys:"gn",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!0}},{keys:"gN",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!1}},{keys:"gq",type:"operator",operator:"hardWrap"},{keys:"gw",type:"operator",operator:"hardWrap",operatorArgs:{keepCursor:!0}},{keys:"g?",type:"operator",operator:"rot13"},{keys:"x",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!0},operatorMotionArgs:{visualLine:!1}},{keys:"X",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!1},operatorMotionArgs:{visualLine:!0}},{keys:"D",type:"operatorMotion",operator:"delete",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"D",type:"operator",operator:"delete",operatorArgs:{linewise:!0},context:"visual"},{keys:"Y",type:"operatorMotion",operator:"yank",motion:"expandToLine",motionArgs:{linewise:!0},context:"normal"},{keys:"Y",type:"operator",operator:"yank",operatorArgs:{linewise:!0},context:"visual"},{keys:"C",type:"operatorMotion",operator:"change",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"C",type:"operator",operator:"change",operatorArgs:{linewise:!0},context:"visual"},{keys:"~",type:"operatorMotion",operator:"changeCase",motion:"moveByCharacters",motionArgs:{forward:!0},operatorArgs:{shouldMoveCursor:!0},context:"normal"},{keys:"~",type:"operator",operator:"changeCase",context:"visual"},{keys:"<C-u>",type:"operatorMotion",operator:"delete",motion:"moveToStartOfLine",context:"insert"},{keys:"<C-w>",type:"operatorMotion",operator:"delete",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1},context:"insert"},{keys:"<C-w>",type:"idle",context:"normal"},{keys:"<C-i>",type:"action",action:"jumpListWalk",actionArgs:{forward:!0}},{keys:"<C-o>",type:"action",action:"jumpListWalk",actionArgs:{forward:!1}},{keys:"<C-e>",type:"action",action:"scroll",actionArgs:{forward:!0,linewise:!0}},{keys:"<C-y>",type:"action",action:"scroll",actionArgs:{forward:!1,linewise:!0}},{keys:"a",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"charAfter"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"eol"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"endOfSelectedArea"},context:"visual"},{keys:"i",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"inplace"},context:"normal"},{keys:"gi",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"lastEdit"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"firstNonBlank"},context:"normal"},{keys:"gI",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"bol"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"startOfSelectedArea"},context:"visual"},{keys:"o",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!0},context:"normal"},{keys:"O",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!1},context:"normal"},{keys:"v",type:"action",action:"toggleVisualMode"},{keys:"V",type:"action",action:"toggleVisualMode",actionArgs:{linewise:!0}},{keys:"<C-v>",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"<C-q>",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"gv",type:"action",action:"reselectLastSelection"},{keys:"J",type:"action",action:"joinLines",isEdit:!0},{keys:"gJ",type:"action",action:"joinLines",actionArgs:{keepSpaces:!0},isEdit:!0},{keys:"p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0}},{keys:"P",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0}},{keys:"r<character>",type:"action",action:"replace",isEdit:!0},{keys:"@<register>",type:"action",action:"replayMacro"},{keys:"q<register>",type:"action",action:"enterMacroRecordMode"},{keys:"R",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{replace:!0},context:"normal"},{keys:"R",type:"operator",operator:"change",operatorArgs:{linewise:!0,fullLine:!0},context:"visual",exitVisualBlock:!0},{keys:"u",type:"action",action:"undo",context:"normal"},{keys:"u",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},context:"visual",isEdit:!0},{keys:"U",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},context:"visual",isEdit:!0},{keys:"<C-r>",type:"action",action:"redo"},{keys:"m<register>",type:"action",action:"setMark"},{keys:'"<register>',type:"action",action:"setRegister"},{keys:"<C-r><register>",type:"action",action:"insertRegister",context:"insert",isEdit:!0},{keys:"<C-o>",type:"action",action:"oneNormalCommand",context:"insert"},{keys:"zz",type:"action",action:"scrollToCursor",actionArgs:{position:"center"}},{keys:"z.",type:"action",action:"scrollToCursor",actionArgs:{position:"center"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zt",type:"action",action:"scrollToCursor",actionArgs:{position:"top"}},{keys:"z<CR>",type:"action",action:"scrollToCursor",actionArgs:{position:"top"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zb",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"}},{keys:"z-",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:".",type:"action",action:"repeatLastEdit"},{keys:"<C-a>",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!0,backtrack:!1}},{keys:"<C-x>",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!1,backtrack:!1}},{keys:"<C-t>",type:"action",action:"indent",actionArgs:{indentRight:!0},context:"insert"},{keys:"<C-d>",type:"action",action:"indent",actionArgs:{indentRight:!1},context:"insert"},{keys:"a<register>",type:"motion",motion:"textObjectManipulation"},{keys:"i<register>",type:"motion",motion:"textObjectManipulation",motionArgs:{textObjectInner:!0}},{keys:"/",type:"search",searchArgs:{forward:!0,querySrc:"prompt",toJumplist:!0}},{keys:"?",type:"search",searchArgs:{forward:!1,querySrc:"prompt",toJumplist:!0}},{keys:"*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"g*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:"g#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:":",type:"ex"}],s=Object.create(null),c=o.length,d=[{name:"colorscheme",shortName:"colo"},{name:"map"},{name:"imap",shortName:"im"},{name:"nmap",shortName:"nm"},{name:"vmap",shortName:"vm"},{name:"omap",shortName:"om"},{name:"noremap",shortName:"no"},{name:"nnoremap",shortName:"nn"},{name:"vnoremap",shortName:"vn"},{name:"inoremap",shortName:"ino"},{name:"onoremap",shortName:"ono"},{name:"unmap"},{name:"mapclear",shortName:"mapc"},{name:"nmapclear",shortName:"nmapc"},{name:"vmapclear",shortName:"vmapc"},{name:"imapclear",shortName:"imapc"},{name:"omapclear",shortName:"omapc"},{name:"write",shortName:"w"},{name:"undo",shortName:"u"},{name:"redo",shortName:"red"},{name:"set",shortName:"se"},{name:"setlocal",shortName:"setl"},{name:"setglobal",shortName:"setg"},{name:"sort",shortName:"sor"},{name:"substitute",shortName:"s",possiblyAsync:!0},{name:"startinsert",shortName:"start"},{name:"nohlsearch",shortName:"noh"},{name:"yank",shortName:"y"},{name:"delmarks",shortName:"delm"},{name:"marks",excludeFromCommandHistory:!0},{name:"registers",shortName:"reg",excludeFromCommandHistory:!0},{name:"vglobal",shortName:"v"},{name:"delete",shortName:"d"},{name:"join",shortName:"j"},{name:"normal",shortName:"norm"},{name:"global",shortName:"g"}],f=vn("");function p(u){u.setOption("disableInput",!0),u.setOption("showCursorWhenSelecting",!1),e.signal(u,"vim-mode-change",{mode:"normal"}),u.on("cursorActivity",$o),se(u),e.on(u.getInputField(),"paste",w(u))}function y(u){u.setOption("disableInput",!1),u.off("cursorActivity",$o),e.off(u.getInputField(),"paste",w(u)),u.state.vim=null,sa&&clearTimeout(sa)}function w(u){var m=u.state.vim;return m.onPasteFn||(m.onPasteFn=function(){m.insertMode||(u.setCursor(_t(u.getCursor(),0,1)),fn.enterInsertMode(u,{},m))}),m.onPasteFn}var _=/[\d]/,C=[e.isWordChar,function(u){return u&&!e.isWordChar(u)&&!/\s/.test(u)}],E=[function(u){return/\S/.test(u)}],T=["<",">"],I=["-",'"',".",":","_","/","+"],$=/^\w$/,V=/^[A-Z]$/;try{V=RegExp("^[\\p{Lu}]$","u")}catch{}function F(u,m){return m>=u.firstLine()&&m<=u.lastLine()}function N(u){return/^[a-z]$/.test(u)}function K(u){return"()[]{}".indexOf(u)!=-1}function pe(u){return _.test(u)}function P(u){return V.test(u)}function A(u){return/^\s*$/.test(u)}function W(u){return".?!".indexOf(u)!=-1}function de(u,m){for(var v=0;v<m.length;v++)if(m[v]==u)return!0;return!1}var fe={};function we(u,m,v,b,x){if(m===void 0&&!x)throw Error("defaultValue is required unless callback is provided");if(v||(v="string"),fe[u]={type:v,defaultValue:m,callback:x},b)for(var k=0;k<b.length;k++)fe[b[k]]=fe[u];m&&J(u,m)}function J(u,m,v,b){var x=fe[u];b||(b={});var k=b.scope;if(!x)return Error("Unknown option: "+u);if(x.type=="boolean"){if(m&&m!==!0)return Error("Invalid argument: "+u+"="+m);m!==!1&&(m=!0)}x.callback?(k!=="local"&&x.callback(m,void 0),k!=="global"&&v&&x.callback(m,v)):(k!=="local"&&(x.value=x.type=="boolean"?!!m:m),k!=="global"&&v&&(v.state.vim.options[u]={value:m}))}function be(u,m,v){var b=fe[u];v||(v={});var x=v.scope;if(!b)return Error("Unknown option: "+u);if(b.callback){let k=m&&b.callback(void 0,m);return x!=="global"&&k!==void 0?k:x==="local"?void 0:b.callback()}else return(x!=="global"&&m&&m.state.vim.options[u]||x!=="local"&&b||{}).value}we("filetype",void 0,"string",["ft"],function(u,m){if(m!==void 0)if(u===void 0){let v=m.getOption("mode");return v=="null"?"":v}else{let v=u==""?"null":u;m.setOption("mode",v)}}),we("textwidth",80,"number",["tw"],function(u,m){if(m!==void 0){if(u===void 0)return m.getOption("textwidth");var v=Math.round(u);v>1&&m.setOption("textwidth",v)}});var Se=function(){var u=100,m=-1,v=0,b=0,x=Array(u);function k(L,z,q){var oe=x[m%u];function ie(Y){var xe=++m%u,_e=x[xe];_e&&_e.clear(),x[xe]=L.setBookmark(Y)}if(oe){var X=oe.find();X&&!gt(X,z)&&ie(z)}else ie(z);ie(q),v=m,b=m-u+1,b<0&&(b=0)}function R(L,z){m+=z,m>v?m=v:m<b&&(m=b);var q=x[(u+m)%u];if(q&&!q.find()){var oe=z>0?1:-1,ie,X=L.getCursor();do if(m+=oe,q=x[(u+m)%u],q&&(ie=q.find())&&!gt(X,ie))break;while(m<v&&m>b)}return q}function O(L,z){var q=m,oe=R(L,z);return m=q,oe&&oe.find()}return{cachedCursor:void 0,add:k,find:O,move:R}},Z=function(u){return u?{changes:u.changes,expectCursorActivityForChange:u.expectCursorActivityForChange}:{changes:[],expectCursorActivityForChange:!1}};class re{constructor(){this.latestRegister=void 0,this.isPlaying=!1,this.isRecording=!1,this.replaySearchQueries=[],this.onRecordingDone=void 0,this.lastInsertModeChanges=Z()}exitMacroRecordMode(){var m=Q.macroModeState;m.onRecordingDone&&m.onRecordingDone(),m.onRecordingDone=void 0,m.isRecording=!1}enterMacroRecordMode(m,v){var b=Q.registerController.getRegister(v);if(b){if(b.clear(),this.latestRegister=v,m.openDialog){var x=Nn("span",{class:"cm-vim-message"},"recording @"+v);this.onRecordingDone=m.openDialog(x,function(){},{bottom:!0})}this.isRecording=!0}}}function se(u){return u.state.vim||(u.state.vim={inputState:new vr,lastEditInputState:void 0,lastEditActionCommand:void 0,lastHPos:-1,lastHSPos:-1,lastMotion:null,marks:{},insertMode:!1,insertModeReturn:!1,insertModeRepeat:void 0,visualMode:!1,visualLine:!1,visualBlock:!1,lastSelection:null,lastPastedText:void 0,sel:{anchor:new n(0,0),head:new n(0,0)},options:{},expectLiteralNext:!1,status:""}),u.state.vim}var Q;function Le(){for(var u in Q={searchQuery:null,searchIsReversed:!1,lastSubstituteReplacePart:void 0,jumpList:Se(),macroModeState:new re,lastCharacterSearch:{increment:0,forward:!0,selectedCharacter:""},registerController:new On({}),searchHistoryController:new br,exCommandHistoryController:new br},fe){var m=fe[u];m.value=m.defaultValue}}class Fe{constructor(m,v){this.keyName=m,this.key=v.key,this.ctrlKey=v.ctrlKey,this.altKey=v.altKey,this.metaKey=v.metaKey,this.shiftKey=v.shiftKey}}var et,Be={enterVimMode:p,leaveVimMode:y,buildKeyMap:function(){},getRegisterController:function(){return Q.registerController},resetVimGlobalState_:Le,getVimGlobalState_:function(){return Q},maybeInitVimState_:se,suppressErrorLogging:!1,InsertModeKey:Fe,map:function(u,m,v){_n.map(u,m,v)},unmap:function(u,m){return _n.unmap(u,m)},noremap:function(u,m,v){_n.map(u,m,v,!0)},mapclear:function(u){var m=o.length,v=c,b=o.slice(0,m-v);if(o=o.slice(m-v),u)for(var x=b.length-1;x>=0;x--){var k=b[x];if(u!==k.context)if(k.context)this._mapCommand(k);else{var R=["normal","insert","visual"];for(var O in R)if(R[O]!==u){var L=Object.assign({},k);L.context=R[O],this._mapCommand(L)}}}},langmap:wt,vimKeyFromEvent:tn,setOption:J,getOption:be,defineOption:we,defineEx:function(u,m,v){if(!m)m=u;else if(u.indexOf(m)!==0)throw Error('(Vim.defineEx) "'+m+'" is not a prefix of "'+u+'", command not registered');xr[u]=v,_n.commandMap_[m]={name:u,shortName:m,type:"api"}},handleKey:function(u,m,v){var b=this.findKey(u,m,v);if(typeof b=="function")return b()},multiSelectHandleKey:Si,findKey:function(u,m,v){var b=se(u),x=u;function k(){var q=Q.macroModeState;if(q.isRecording){if(m=="q")return q.exitMacroRecordMode(),pt(x),!0;v!="mapping"&&$r(q,m)}}function R(){if(m=="<Esc>"){if(b.visualMode)Ye(x);else if(b.insertMode)Hn(x);else return;return pt(x),!0}}function O(){if(R())return!0;b.inputState.keyBuffer.push(m);var q=b.inputState.keyBuffer.join(""),oe=m.length==1,ie=Pn.matchCommand(q,o,b.inputState,"insert"),X=b.inputState.changeQueue;if(ie.type=="none")return pt(x),!1;if(ie.type=="partial"){if(ie.expectLiteralNext&&(b.expectLiteralNext=!0),et&&window.clearTimeout(et),et=oe&&window.setTimeout(function(){b.insertMode&&b.inputState.keyBuffer.length&&pt(x)},be("insertModeEscKeysTimeout")),oe){var Y=x.listSelections();(!X||X.removed.length!=Y.length)&&(X=b.inputState.changeQueue=new Fr),X.inserted+=m;for(var xe=0;xe<Y.length;xe++){var _e=kt(Y[xe].anchor,Y[xe].head),qe=jn(Y[xe].anchor,Y[xe].head),Re=x.getRange(_e,x.state.overwrite?_t(qe,0,1):qe);X.removed[xe]=(X.removed[xe]||"")+Re}}return!oe}else ie.type=="full"&&(b.inputState.keyBuffer.length=0);if(b.expectLiteralNext=!1,et&&window.clearTimeout(et),ie.command&&X){for(var Y=x.listSelections(),xe=0;xe<Y.length;xe++){var Ne=Y[xe].head;x.replaceRange(X.removed[xe]||"",_t(Ne,0,-X.inserted.length),Ne,"+input")}Q.macroModeState.lastInsertModeChanges.changes.pop()}return ie.command||pt(x),ie.command}function L(){if(k()||R())return!0;b.inputState.keyBuffer.push(m);var q=b.inputState.keyBuffer.join("");if(/^[1-9]\d*$/.test(q))return!0;var oe=/^(\d*)(.*)$/.exec(q);if(!oe)return pt(x),!1;var ie=b.visualMode?"visual":"normal",X=oe[2]||oe[1];b.inputState.operatorShortcut&&b.inputState.operatorShortcut.slice(-1)==X&&(X=b.inputState.operatorShortcut);var Y=Pn.matchCommand(X,o,b.inputState,ie);return Y.type=="none"?(pt(x),!1):Y.type=="partial"?(Y.expectLiteralNext&&(b.expectLiteralNext=!0),!0):Y.type=="clear"?(pt(x),!0):(b.expectLiteralNext=!1,b.inputState.keyBuffer.length=0,oe=/^(\d*)(.*)$/.exec(q),oe&&oe[1]&&oe[1]!="0"&&b.inputState.pushRepeatDigit(oe[1]),Y.command)}var z=b.insertMode?O():L();if(z===!1)return!b.insertMode&&(m.length===1||e.isMac&&/<A-.>/.test(m))?function(){return!0}:void 0;if(z===!0)return function(){return!0};if(z)return function(){return x.operation(function(){x.curOp.isVimOp=!0;try{if(typeof z!="object")return;z.type=="keyToKey"?mt(x,z.toKeys,z):Pn.processCommand(x,b,z)}catch(q){throw x.state.vim=void 0,se(x),Be.suppressErrorLogging||console.log(q),q}return!0})}},handleEx:function(u,m){_n.processCommand(u,m)},defineMotion:ta,defineAction:ni,defineOperator:yi,mapCommand:kc,_mapCommand:oi,defineRegister:mi,exitVisualMode:Ye,exitInsertMode:Hn},je=[],Pe=!1,Ae;function ft(u){if(!Ae)throw Error("No prompt to send key to");if(u[0]=="<"){var m=u.toLowerCase().slice(1,-1);if(m=m.split("-").pop()||"",m=="lt")u="<";else if(m=="space")u=" ";else if(m=="cr")u=`
|
|
88
|
+
`)}function SS(e,n){return{get:()=>n.get(e),sub:i=>n.sub(e,()=>i(n.get(e)))}}function CS(e,{offset:n,body:i=window,behavior:o="smooth"}){let s=(n==null?void 0:n.top)??0,c=(n==null?void 0:n.bottom)??0,d=e.getBoundingClientRect();if(d.top<s){i.scrollBy({top:d.top-s,behavior:o});return}if(d.bottom>window.innerHeight-c){i.scrollBy({top:d.bottom-window.innerHeight+c,behavior:o});return}}Uu=function(e){return e?e.state.field(Lr).type:"python"};function ES(e,n){return!e||Uu(e)===n?!1:e.state.doc.toString().trim()===""?!0:gr[n].isSupported(Xr(e))}Ih=function(e,n,i={}){return!i.force&&!ES(e,n)?!1:(gm(e,{language:n}),n)};function TS(e){return Ra.of([{key:e.getHotkey("cell.format").key,preventDefault:!0,run:n=>(zu({[n.state.facet(Ui)]:n}),!0)},{key:e.getHotkey("cell.viewAsMarkdown").key,preventDefault:!0,run:n=>{let i=Uu(n);if(i!=="markdown"&&i!=="python")return!1;let o=Ih(n,i==="python"?"markdown":"python",{force:!0});return o==="markdown"&&n.state.facet(Pt).afterToggleMarkdown(),o!==!1}}])}fx=function(){return Kt.updateListener.of(e=>{if(e.view.hasFocus&&e.heightChanged&&e.docChanged){if(e.transactions.some(n=>n.effects.some(i=>i.is(Ls))))return;iy(e.view,{behavior:"smooth"})}})};function iy(e,n){let i=e.dom.getElementsByClassName("cm-activeLine cm-line");if(i.length===1){let o=i[0],s=document.getElementById("App");In(s,"App not found"),CS(o,{offset:{top:30,bottom:150},body:s,behavior:n.behavior})}}function RS(){return{}}let DS,OS,ay;({reducer:DS,createActions:OS,valueAtom:Ma,useActions:ay}=Ll(RS,{setVariables:(e,n)=>{let i={...e},o={};for(let s of n)o[s.name]={...i[s.name],...s};return o},addVariables:(e,n)=>{let i={...e};for(let o of n)i[o.name]={...i[o.name],...o};return i},setMetadata:(e,n)=>{let i={...e};for(let{name:o,value:s,dataType:c}of n)i[o]&&(i[o]={...i[o],value:s,dataType:c});return i}})),lx=()=>Zn(Ma),hx=function(){return ay()},T_=function(e){let n=e.storage||Ts;return{getItem(i,o){try{let s=n.getItem(i);if(!s)return o;let c=JSON.parse(s);return e.fromSerializable(c)}catch(s){return Te.warn(`Error getting ${i} from storage`,s),o}},setItem:(i,o)=>{n.setItem(i,JSON.stringify(e.toSerializable(o)))},removeItem:i=>{n.removeItem(i)}}},Wl=Gm(()=>Ts);function PS(e,n){if(typeof window>"u")return;let i=`__marimo__${n}`;window[i]&&Te.warn(`Overwriting existing debug object ${i}`),window[i]=e}var MS={markdown:!0,wasm_layouts:!1,rtc_v2:!1,performant_table_charts:!1,chat_modes:!1,cache_panel:!1,external_agents:!1,server_side_pdf_export:!0};Ql=function(e){var n,i;return((i=(n=iw())==null?void 0:n.experimental)==null?void 0:i[e])??MS[e]};function LS(e,n){Vi().saveUserConfig({config:{experimental:{[e]:n}}})}B_=({feature:e,children:n})=>Ql(e)?n:null,PS(LS,"setFeatureFlag"),Ul=[{type:"files",Icon:Pg,label:"Files",tooltip:"View files",defaultSection:"sidebar"},{type:"variables",Icon:Qh,label:"Variables",tooltip:"Explore variables and data sources",defaultSection:"sidebar"},{type:"packages",Icon:dm,label:"Packages",tooltip:"Manage packages",defaultSection:"sidebar"},{type:"ai",Icon:Yh,label:"AI",tooltip:"Chat & Agents",defaultSection:"sidebar"},{type:"outline",Icon:Wh,label:"Outline",tooltip:"View outline",defaultSection:"sidebar"},{type:"documentation",Icon:Jh,label:"Docs",tooltip:"View live docs",defaultSection:"sidebar"},{type:"dependencies",Icon:Nh,label:"Dependencies",tooltip:"Explore dependencies",defaultSection:"sidebar"},{type:"errors",Icon:Vh,label:"Errors",tooltip:"View errors",defaultSection:"developer-panel"},{type:"scratchpad",Icon:Am,label:"Scratchpad",tooltip:"Scratchpad",defaultSection:"developer-panel"},{type:"tracing",Icon:ym,label:"Tracing",tooltip:"View tracing",defaultSection:"developer-panel"},{type:"secrets",Icon:Mg,label:"Secrets",tooltip:"Manage secrets",defaultSection:"developer-panel",hidden:wh()},{type:"logs",Icon:rm,label:"Logs",tooltip:"View logs",defaultSection:"developer-panel"},{type:"terminal",Icon:Fh,label:"Terminal",tooltip:"Terminal",hidden:wh(),defaultSection:"developer-panel",requiredCapability:"terminal"},{type:"snippets",Icon:Lg,label:"Snippets",tooltip:"Snippets",defaultSection:"developer-panel"},{type:"cache",Icon:DD,label:"Cache",tooltip:"View cache",defaultSection:"developer-panel",hidden:!Ql("cache_panel")}],C_=new Map(Ul.map(e=>[e.type,e])),Q_=function(e,n){return!!(e.hidden||e.requiredCapability&&!n[e.requiredCapability])};var NS=Jr();mm=$l("marimo:panel-layout",{sidebar:Ul.filter(e=>!e.hidden&&e.defaultSection==="sidebar").map(e=>e.type),developerPanel:Ul.filter(e=>!e.hidden&&e.defaultSection==="developer-panel").map(e=>e.type)},Wl,{getOnInit:!0});function oy(e){let n=lt.get(mm);return n.sidebar.includes(e)?"sidebar":n.developerPanel.includes(e)?"developer-panel":null}var sy="marimo:sidebar",ly=new Fu(Z2({selectedPanel:ew().optional().transform(e=>e),isSidebarOpen:tw(),isDeveloperPanelOpen:tw().optional().default(!1),selectedDeveloperPanelTab:ew().optional().default("errors").transform(e=>e)}),IS);function IS(){return{selectedPanel:"variables",isSidebarOpen:!1,isDeveloperPanelOpen:!1,selectedDeveloperPanelTab:"errors"}}let AS,qS,cy;({reducer:AS,createActions:qS,valueAtom:cd,useActions:cy}=Ll(()=>ly.get(sy),{openApplication:(e,n)=>{let i=oy(n);return i==="sidebar"?{...e,selectedPanel:n,isSidebarOpen:!0}:i==="developer-panel"?{...e,selectedDeveloperPanelTab:n,isDeveloperPanelOpen:!0}:e},toggleApplication:(e,n)=>{let i=oy(n);return i==="sidebar"?{...e,selectedPanel:n,isSidebarOpen:e.isSidebarOpen?e.selectedPanel!==n:!0}:i==="developer-panel"?{...e,selectedDeveloperPanelTab:n,isDeveloperPanelOpen:e.isDeveloperPanelOpen?e.selectedDeveloperPanelTab!==n:!0}:e},toggleSidebarPanel:e=>({...e,isSidebarOpen:!e.isSidebarOpen}),setIsSidebarOpen:(e,n)=>({...e,isSidebarOpen:n}),toggleDeveloperPanel:e=>({...e,isDeveloperPanelOpen:!e.isDeveloperPanelOpen}),setIsDeveloperPanelOpen:(e,n)=>({...e,isDeveloperPanelOpen:n})},[(e,n)=>ly.set(sy,n)])),ax=()=>{let e=(0,NS.c)(2),n=Zn(cd);if(n.isSidebarOpen)return n;let i;return e[0]===n?i=e[1]:(i={...n,selectedPanel:void 0},e[0]=n,e[1]=i),i},j_=function(){return cy()},Cm=ze({terminal:!1,pylsp:!1,basedpyright:!1,ty:!1});function sc(e){var n;return((n=lt.get(Cm))==null?void 0:n[e])??!1}Ju=ze({documentation:null});var uy=new Set(["FunctionDefinition","LambdaExpression","ArrayComprehensionExpression","SetComprehension","DictionaryComprehensionExpression","ComprehensionExpression","ClassDefinition"]);function jS(e){let n=cw(e.state);if(!n||BS(n))return[];let i=new Set(Object.keys(e.variables).filter(E=>{let T=e.variables[E];return T.dataType!=="module"&&!T.declaredBy.includes("setup")&&!T.declaredBy.includes(e.cellId)}));if(i.size===0)return[];let o=[],s=new Map,c=new Map,d=new Map;function f(E,T){var K,pe,P,A,W,de,fe,we,J,be,Se;let I=E.cursor(),$=I.name,V=I.from,F=uy.has($),N=T;switch(F&&(N=[...T,V],s.set(V,new Set),c.set(V,$)),$){case"FunctionDefinition":{let Z=E.cursor();Z.firstChild();do if(Z.name==="VariableName"){let se=e.state.doc.sliceString(Z.from,Z.to),Q=T[T.length-1]??-1;s.has(Q)||s.set(Q,new Set),(K=s.get(Q))==null||K.add(se);break}while(Z.nextSibling());let re=E.cursor();re.firstChild();do if(re.name==="ParamList"){let se=re.node.cursor();se.firstChild();do if(se.name==="VariableName"){let Q=e.state.doc.sliceString(se.from,se.to);(pe=s.get(V))==null||pe.add(Q)}while(se.nextSibling())}while(re.nextSibling());break}case"LambdaExpression":{let Z=E.cursor();Z.firstChild();do if(Z.name==="ParamList"){let re=Z.node.cursor();re.firstChild();do if(re.name==="VariableName"){let se=e.state.doc.sliceString(re.from,re.to);(P=s.get(V))==null||P.add(se)}while(re.nextSibling())}while(Z.nextSibling());break}case"ArrayComprehensionExpression":case"DictionaryComprehensionExpression":case"SetComprehension":case"ComprehensionExpression":{let Z=E.cursor();Z.firstChild();let re=!1;do if(Z.name==="for")re=!0;else if(re&&Z.name==="VariableName"){let se=e.state.doc.sliceString(Z.from,Z.to);(A=s.get(V))==null||A.add(se)}else if(re&&Z.name==="TupleExpression"){let se=Z.node.cursor();se.firstChild();do if(se.name==="VariableName"){let Q=e.state.doc.sliceString(se.from,se.to);(W=s.get(V))==null||W.add(Q)}while(se.nextSibling())}else re&&Z.name==="in"&&(re=!1);while(Z.nextSibling());break}case"ClassDefinition":{let Z=E.cursor();Z.firstChild();do if(Z.name==="VariableName"){let re=e.state.doc.sliceString(Z.from,Z.to),se=T[T.length-1]??-1;s.has(se)||s.set(se,new Set),(de=s.get(se))==null||de.add(re);break}while(Z.nextSibling());d.set(V,[]);break}case"AssignStatement":{let Z=E.cursor(),re=[];Z.firstChild();do Z.name==="AssignOp"&&re.push(Z.from);while(Z.nextSibling());let se=re[re.length-1],Q=E.cursor();Q.firstChild();let Le=N[N.length-1]??-1;do Q.from<se&&Qd(Q,{currentScope:Le,state:e.state,allDeclarations:s,scopeTypes:c,classLevelDeclarations:d,assignmentPosition:I.to});while(Q.nextSibling());break}case"ForStatement":{let Z=E.cursor();Z.firstChild();let re=!1;do if(Z.name==="for")re=!0;else if(re&&Z.name==="VariableName"){let se=e.state.doc.sliceString(Z.from,Z.to),Q=N[N.length-1]??-1;s.has(Q)||s.set(Q,new Set),(fe=s.get(Q))==null||fe.add(se)}else re&&Z.name==="in"&&(re=!1);while(Z.nextSibling());break}case"ImportStatement":{let Z=E.cursor();Z.firstChild();do if(Z.name==="VariableName"){let re=e.state.doc.sliceString(Z.from,Z.to),se=N[N.length-1]??-1;s.has(se)||s.set(se,new Set),(we=s.get(se))==null||we.add(re)}while(Z.nextSibling());break}case"ImportFromStatement":{let Z=E.cursor();Z.firstChild();let re=!1;do if(Z.name==="import")re=!0;else if(re&&Z.name==="VariableName"){let se=e.state.doc.sliceString(Z.from,Z.to),Q=N[N.length-1]??-1;s.has(Q)||s.set(Q,new Set),(J=s.get(Q))==null||J.add(se)}while(Z.nextSibling());break}case"TryStatement":{let Z=E.cursor();Z.firstChild();let re=!1;do if(Z.name==="as")re=!0;else if(re&&Z.name==="VariableName"){let se=e.state.doc.sliceString(Z.from,Z.to),Q=N[N.length-1]??-1;s.has(Q)||s.set(Q,new Set),(be=s.get(Q))==null||be.add(se),re=!1}while(Z.nextSibling());break}case"WithStatement":{let Z=E.cursor();Z.firstChild();let re=!1;do if(Z.name==="as")re=!0;else if(re&&Z.name==="VariableName"){let se=e.state.doc.sliceString(Z.from,Z.to),Q=N[N.length-1]??-1;s.has(Q)||s.set(Q,new Set),(Se=s.get(Q))==null||Se.add(se),re=!1}while(Z.nextSibling());break}}C(I,Z=>{f(Z,N)})}function p(E,T,I){let $=d.get(T);return $?$.some(([V,F])=>V===E&&F<I):!1}function y(E,T,I){var $,V;for(let F of T)if(c.get(F)==="ClassDefinition"){if(p(E,F,I))return!0}else if(($=s.get(F))!=null&&$.has(E))return!0;return((V=s.get(-1))==null?void 0:V.has(E))??!1}function w(E,T){let I=E.cursor(),$=I.name,V=I.from,F=uy.has($),N=T;if(F&&(N=[...T,V]),$==="VariableName"){let K=e.state.doc.sliceString(I.from,I.to);_(K,I)&&(y(K,N,I.from)||o.push({from:I.from,to:I.to,variableName:K}))}C(I,K=>{w(K,N)})}function _(E,T){return i.has(E)&&!zS(T)&&!FS(T)}function C(E,T){if(E.firstChild())do T(E.node);while(E.nextSibling())}return f(n,[]),w(n,[]),o}function zS(e){let n=e.node.cursor();if(n.moveTo(e.from),n.parent()&&n.name==="CallExpression"&&n.firstChild())do if(n.name==="ArgList"&&n.firstChild()){do if(n.from===e.from&&n.to===e.to)return n.nextSibling()&&n.name==="AssignOp";while(n.nextSibling());break}while(n.nextSibling());return!1}function FS(e){let n=e.node.cursor();if(n.parent()&&n.name==="AssignStatement"){let i=n.node.cursor();i.firstChild();let o=-1;do if(i.name==="AssignOp"){o=i.from;break}while(i.nextSibling());return o!==-1&&e.from<o}return!1}function BS(e){let n=e.cursor();do if(n.name==="\u26A0"||n.type.isError)return!0;while(n.next());return!1}function Qd(e,n){var i;switch(e.name){case"VariableName":{let o=n.state.doc.sliceString(e.from,e.to);if(n.currentScope!==-1&&n.scopeTypes.get(n.currentScope)==="ClassDefinition"){let s=n.classLevelDeclarations.get(n.currentScope);s&&s.push([o,n.assignmentPosition])}else n.allDeclarations.has(n.currentScope)||n.allDeclarations.set(n.currentScope,new Set),(i=n.allDeclarations.get(n.currentScope))==null||i.add(o);break}case"TupleExpression":{let o=e.node.cursor();o.firstChild();do Qd(o,n);while(o.nextSibling());break}case"ArrayExpression":{let o=e.node.cursor();o.firstChild();do Qd(o,n);while(o.nextSibling());break}}}var HS=Hi.mark({class:"mo-cm-reactive-reference"});V_=Hi.mark({class:"mo-cm-reactive-reference-hover"});var dy=Bi.define(),VS=class{constructor(e,n){ke(this,"highlightDebounceMs",300);this.view=e,this.cellId=n,this.scheduleHighlighting=nw(()=>{this.runHighlighting()},this.highlightDebounceMs),this.variablesUnsubscribe=lt.sub(Ma,()=>{this.scheduleHighlighting()}),this.scheduleHighlighting()}update(e){(e.docChanged||e.focusChanged)&&this.scheduleHighlighting()}destroy(){this.scheduleHighlighting.cancel(),this.variablesUnsubscribe()}runHighlighting(){let e=jS({state:this.view.state,cellId:this.cellId,variables:lt.get(Ma)});e.length>0&&Te.debug(`Found ${e.length} reactive variables in cell ${this.cellId}`),queueMicrotask(()=>{this.view.dispatch({effects:dy.of(e)})})}};rd=xs.define({create(){return{decorations:Hi.none,ranges:[]}},update(e,n){let i={decorations:e.decorations.map(n.changes),ranges:e.ranges};for(let o of n.effects)o.is(dy)&&(i={decorations:Hi.set(o.value.map(s=>HS.range(s.from,s.to))),ranges:o.value});return i},provide:e=>Kt.decorations.from(e,n=>n.decorations)});function $S(e){return[rd,Pl.define(n=>new VS(n,e))]}Y_=function(e,n){return n?$S(e):[]};function fy(e,n=!1){if(!e)return null;let i=document.createElement("span");if(i.classList.add("mo-cm-tooltip"),i.classList.add("docs-documentation"),n&&i.classList.add("cm-tooltip-section"),i.style.display="flex",i.style.flexDirection="column",i.style.gap=".8rem",i.innerHTML=e,n){let o=document.createElement("div");o.classList.add("text-xs","text-muted-foreground","font-medium","pt-1","-mt-2","border-t","border-border");let s=document.createElement("kbd");s.className="ml-1 rounded-md bg-muted/40 px-2 text-[0.75rem] font-prose center border border-foreground/20 text-muted-foreground inline whitespace-nowrap",s.textContent=b4()?"\u2318":"Ctrl",o.append(document.createTextNode("Jump to defining cell ")),o.append(s),o.append(document.createTextNode(" + Click")),i.append(o)}return i}dd=new Iu("autocomplete-result",async(e,n)=>{let{sendCodeCompletionRequest:i}=Vi();await i({id:e,...n})});var WS={param:3,property:2};const Gd={asCompletionResult(e,n){return{from:e-n.prefix_length,options:n.options.map(i=>({label:i.name,type:i.type,boost:WS[i.type]??1,info:()=>fy(i.completion_info)})),validFor:/^\w*$/}},asHoverTooltip({position:e,message:n,limitToType:i,excludeTypes:o,exactName:s,showGoToDefinitionHint:c=!1}){let d=US(n.options,s);if(!d)return;let f=e-n.prefix_length,p=fy(d.completion_info,c);if(p&&!(i&&d.type!==i)&&!(o!=null&&o.includes(d.type)))return{pos:f,html:d.completion_info,end:f+d.name.length,above:!0,create:()=>({dom:p,resize:!1})}}};function US(e,n){if(e.length!==0){if(e.length===1)return e[0];if(n)return e.find(i=>i.name===n)}}k_=function(e){var n;return[(n=e==null?void 0:e.pylsp)!=null&&n.enabled&&sc("pylsp")?[]:xh(async(i,o)=>{let s=await py({view:i,pos:o,excludeTypes:["tooltip"]});return s===null||s==="cancelled"?null:s},{hideOnChange:!0}),GS]};async function py({view:e,pos:n,excludeTypes:i}){var w;let o=er.findElement(e.dom);if(!o)return Te.error("Failed to find active cell."),null;let s=er.parse(o.id),{startToken:c,endToken:d}=Jd(e.state.doc,n),f=((w=e.state.field(rd,!1))==null?void 0:w.ranges.some(_=>n>=_.from&&n<=_.to))??!1,p=await dd.request({document:e.state.doc.slice(0,d).toString(),cellId:s});if(!p)return"cancelled";let y=e.state.doc.slice(c,d).toString();return Gd.asHoverTooltip({position:d,message:p,exactName:y,excludeTypes:i,showGoToDefinitionHint:f})??null}function Jd(e,n){let i=n,o=i>0?e.sliceString(i-1,i):"",s=i<e.length?e.sliceString(i,i+1):"";o==="("&&s===")"&&--i;let c=i,d=i;for(;c>0;){let f=e.sliceString(c-1,c);if(!/\w/.test(f))break;c--}for(;d<e.length;){let f=e.sliceString(d,d+1);if(!/\w/.test(f))break;d++}return{startToken:c,endToken:d}}function KS(e){let{head:n}=e.selection.main,i=e.doc.sliceString(n-1,n);return/\w/.test(i)}var QS=nw(async(e,n)=>{if(lt.get(cd).selectedPanel!=="documentation")return;let i=await py({view:e,pos:n});i!=="cancelled"&<.set(Ju,{documentation:(i==null?void 0:i.html)??null})},300),GS=Kt.updateListener.of(e=>{if(e.selectionSet&&KS(e.state)){let n=e.state.selection.main.head;QS(e.view,n)}});function hy(e,n){e.focus(),requestAnimationFrame(()=>{e.dispatch({selection:{anchor:n,head:n},effects:Kt.scrollIntoView(n,{y:"center"})})})}qu=function(e,n){let{state:i}=e,o=cw(i),s=!1,c=0;return o.iterate({enter:d=>{if(s)return!1;if(d.name==="VariableName"&&i.doc.sliceString(d.from,d.to)===n)return c=d.from,s=!0,!1;if(d.name==="Comment"||d.name==="String")return!1}}),s?(hy(e,c),!0):!1};function JS(e,n){return hy(e,e.state.doc.line(n).from),!0}function XS(e){let{from:n,to:i}=e.selection.main;if(n===i){let{startToken:o,endToken:s}=Jd(e.doc,n);return e.doc.sliceString(o,s)}return e.doc.sliceString(n,i)}function YS(e,n){if(!n)return null;let i=e[n];return!i||i.declaredBy.length===0?null:i.declaredBy[0]}function ZS(e){return e.startsWith("_")}Zh=function(e){let{state:n}=e,i=XS(n);return i?(kw(e),e.dispatch({effects:F4}),fm(e,i)):!1},fm=function(e,n){let i=eC(e,n);return i?qu(i,n):!1},d_=function(e,n){let i=my(e);return i?JS(i,n):!1};function eC(e,n){if(ZS(n))return e;let i=YS(lt.get(Ma),n);return i?my(i):null}function my(e){var n;return((n=lt.get(bt).cellHandles[e].current)==null?void 0:n.editorView)??null}function tC(e){var n=e.Pos;function i(u,m,v){if(m.line===v.line&&m.ch>=v.ch-1){var b=u.getLine(m.line).charCodeAt(m.ch);55296<=b&&b<=55551&&(v.ch+=1)}return{start:m,end:v}}var o=[{keys:"<Left>",type:"keyToKey",toKeys:"h"},{keys:"<Right>",type:"keyToKey",toKeys:"l"},{keys:"<Up>",type:"keyToKey",toKeys:"k"},{keys:"<Down>",type:"keyToKey",toKeys:"j"},{keys:"g<Up>",type:"keyToKey",toKeys:"gk"},{keys:"g<Down>",type:"keyToKey",toKeys:"gj"},{keys:"<Space>",type:"keyToKey",toKeys:"l"},{keys:"<BS>",type:"keyToKey",toKeys:"h"},{keys:"<Del>",type:"keyToKey",toKeys:"x"},{keys:"<C-Space>",type:"keyToKey",toKeys:"W"},{keys:"<C-BS>",type:"keyToKey",toKeys:"B"},{keys:"<S-Space>",type:"keyToKey",toKeys:"w"},{keys:"<S-BS>",type:"keyToKey",toKeys:"b"},{keys:"<C-n>",type:"keyToKey",toKeys:"j"},{keys:"<C-p>",type:"keyToKey",toKeys:"k"},{keys:"<C-[>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-c>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-[>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"<C-c>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"<C-Esc>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-Esc>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"s",type:"keyToKey",toKeys:"cl",context:"normal"},{keys:"s",type:"keyToKey",toKeys:"c",context:"visual"},{keys:"S",type:"keyToKey",toKeys:"cc",context:"normal"},{keys:"S",type:"keyToKey",toKeys:"VdO",context:"visual"},{keys:"<Home>",type:"keyToKey",toKeys:"0"},{keys:"<End>",type:"keyToKey",toKeys:"$"},{keys:"<PageUp>",type:"keyToKey",toKeys:"<C-b>"},{keys:"<PageDown>",type:"keyToKey",toKeys:"<C-f>"},{keys:"<CR>",type:"keyToKey",toKeys:"j^",context:"normal"},{keys:"<Ins>",type:"keyToKey",toKeys:"i",context:"normal"},{keys:"<Ins>",type:"action",action:"toggleOverwrite",context:"insert"},{keys:"H",type:"motion",motion:"moveToTopLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"M",type:"motion",motion:"moveToMiddleLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"L",type:"motion",motion:"moveToBottomLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"h",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!1}},{keys:"l",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!0}},{keys:"j",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,linewise:!0}},{keys:"k",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,linewise:!0}},{keys:"gj",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!0}},{keys:"gk",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!1}},{keys:"w",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1}},{keys:"W",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1,bigWord:!0}},{keys:"e",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,inclusive:!0}},{keys:"E",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"b",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1}},{keys:"B",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1,bigWord:!0}},{keys:"ge",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,inclusive:!0}},{keys:"gE",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"{",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!1,toJumplist:!0}},{keys:"}",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!0,toJumplist:!0}},{keys:"(",type:"motion",motion:"moveBySentence",motionArgs:{forward:!1}},{keys:")",type:"motion",motion:"moveBySentence",motionArgs:{forward:!0}},{keys:"<C-f>",type:"motion",motion:"moveByPage",motionArgs:{forward:!0}},{keys:"<C-b>",type:"motion",motion:"moveByPage",motionArgs:{forward:!1}},{keys:"<C-d>",type:"motion",motion:"moveByScroll",motionArgs:{forward:!0,explicitRepeat:!0}},{keys:"<C-u>",type:"motion",motion:"moveByScroll",motionArgs:{forward:!1,explicitRepeat:!0}},{keys:"gg",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"G",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!0,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"g$",type:"motion",motion:"moveToEndOfDisplayLine"},{keys:"g^",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"g0",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"0",type:"motion",motion:"moveToStartOfLine"},{keys:"^",type:"motion",motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"+",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0}},{keys:"-",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,toFirstChar:!0}},{keys:"_",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0,repeatOffset:-1}},{keys:"$",type:"motion",motion:"moveToEol",motionArgs:{inclusive:!0}},{keys:"%",type:"motion",motion:"moveToMatchedSymbol",motionArgs:{inclusive:!0,toJumplist:!0}},{keys:"f<character>",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"F<character>",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!1}},{keys:"t<character>",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"T<character>",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!1}},{keys:";",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!0}},{keys:",",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!1}},{keys:"'<register>",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0,linewise:!0}},{keys:"`<register>",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0}},{keys:"]`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0}},{keys:"[`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1}},{keys:"]'",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0,linewise:!0}},{keys:"['",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1,linewise:!0}},{keys:"]p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0,matchIndent:!0}},{keys:"[p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0,matchIndent:!0}},{keys:"]<character>",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!0,toJumplist:!0}},{keys:"[<character>",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!1,toJumplist:!0}},{keys:"|",type:"motion",motion:"moveToColumn"},{keys:"o",type:"motion",motion:"moveToOtherHighlightedEnd",context:"visual"},{keys:"O",type:"motion",motion:"moveToOtherHighlightedEnd",motionArgs:{sameLine:!0},context:"visual"},{keys:"d",type:"operator",operator:"delete"},{keys:"y",type:"operator",operator:"yank"},{keys:"c",type:"operator",operator:"change"},{keys:"=",type:"operator",operator:"indentAuto"},{keys:">",type:"operator",operator:"indent",operatorArgs:{indentRight:!0}},{keys:"<",type:"operator",operator:"indent",operatorArgs:{indentRight:!1}},{keys:"g~",type:"operator",operator:"changeCase"},{keys:"gu",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},isEdit:!0},{keys:"gU",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},isEdit:!0},{keys:"n",type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:!0}},{keys:"N",type:"motion",motion:"findNext",motionArgs:{forward:!1,toJumplist:!0}},{keys:"gn",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!0}},{keys:"gN",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!1}},{keys:"gq",type:"operator",operator:"hardWrap"},{keys:"gw",type:"operator",operator:"hardWrap",operatorArgs:{keepCursor:!0}},{keys:"g?",type:"operator",operator:"rot13"},{keys:"x",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!0},operatorMotionArgs:{visualLine:!1}},{keys:"X",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!1},operatorMotionArgs:{visualLine:!0}},{keys:"D",type:"operatorMotion",operator:"delete",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"D",type:"operator",operator:"delete",operatorArgs:{linewise:!0},context:"visual"},{keys:"Y",type:"operatorMotion",operator:"yank",motion:"expandToLine",motionArgs:{linewise:!0},context:"normal"},{keys:"Y",type:"operator",operator:"yank",operatorArgs:{linewise:!0},context:"visual"},{keys:"C",type:"operatorMotion",operator:"change",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"C",type:"operator",operator:"change",operatorArgs:{linewise:!0},context:"visual"},{keys:"~",type:"operatorMotion",operator:"changeCase",motion:"moveByCharacters",motionArgs:{forward:!0},operatorArgs:{shouldMoveCursor:!0},context:"normal"},{keys:"~",type:"operator",operator:"changeCase",context:"visual"},{keys:"<C-u>",type:"operatorMotion",operator:"delete",motion:"moveToStartOfLine",context:"insert"},{keys:"<C-w>",type:"operatorMotion",operator:"delete",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1},context:"insert"},{keys:"<C-w>",type:"idle",context:"normal"},{keys:"<C-i>",type:"action",action:"jumpListWalk",actionArgs:{forward:!0}},{keys:"<C-o>",type:"action",action:"jumpListWalk",actionArgs:{forward:!1}},{keys:"<C-e>",type:"action",action:"scroll",actionArgs:{forward:!0,linewise:!0}},{keys:"<C-y>",type:"action",action:"scroll",actionArgs:{forward:!1,linewise:!0}},{keys:"a",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"charAfter"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"eol"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"endOfSelectedArea"},context:"visual"},{keys:"i",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"inplace"},context:"normal"},{keys:"gi",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"lastEdit"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"firstNonBlank"},context:"normal"},{keys:"gI",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"bol"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"startOfSelectedArea"},context:"visual"},{keys:"o",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!0},context:"normal"},{keys:"O",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!1},context:"normal"},{keys:"v",type:"action",action:"toggleVisualMode"},{keys:"V",type:"action",action:"toggleVisualMode",actionArgs:{linewise:!0}},{keys:"<C-v>",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"<C-q>",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"gv",type:"action",action:"reselectLastSelection"},{keys:"J",type:"action",action:"joinLines",isEdit:!0},{keys:"gJ",type:"action",action:"joinLines",actionArgs:{keepSpaces:!0},isEdit:!0},{keys:"p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0}},{keys:"P",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0}},{keys:"r<character>",type:"action",action:"replace",isEdit:!0},{keys:"@<register>",type:"action",action:"replayMacro"},{keys:"q<register>",type:"action",action:"enterMacroRecordMode"},{keys:"R",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{replace:!0},context:"normal"},{keys:"R",type:"operator",operator:"change",operatorArgs:{linewise:!0,fullLine:!0},context:"visual",exitVisualBlock:!0},{keys:"u",type:"action",action:"undo",context:"normal"},{keys:"u",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},context:"visual",isEdit:!0},{keys:"U",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},context:"visual",isEdit:!0},{keys:"<C-r>",type:"action",action:"redo"},{keys:"m<register>",type:"action",action:"setMark"},{keys:'"<register>',type:"action",action:"setRegister"},{keys:"<C-r><register>",type:"action",action:"insertRegister",context:"insert",isEdit:!0},{keys:"<C-o>",type:"action",action:"oneNormalCommand",context:"insert"},{keys:"zz",type:"action",action:"scrollToCursor",actionArgs:{position:"center"}},{keys:"z.",type:"action",action:"scrollToCursor",actionArgs:{position:"center"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zt",type:"action",action:"scrollToCursor",actionArgs:{position:"top"}},{keys:"z<CR>",type:"action",action:"scrollToCursor",actionArgs:{position:"top"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zb",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"}},{keys:"z-",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:".",type:"action",action:"repeatLastEdit"},{keys:"<C-a>",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!0,backtrack:!1}},{keys:"<C-x>",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!1,backtrack:!1}},{keys:"<C-t>",type:"action",action:"indent",actionArgs:{indentRight:!0},context:"insert"},{keys:"<C-d>",type:"action",action:"indent",actionArgs:{indentRight:!1},context:"insert"},{keys:"a<register>",type:"motion",motion:"textObjectManipulation"},{keys:"i<register>",type:"motion",motion:"textObjectManipulation",motionArgs:{textObjectInner:!0}},{keys:"/",type:"search",searchArgs:{forward:!0,querySrc:"prompt",toJumplist:!0}},{keys:"?",type:"search",searchArgs:{forward:!1,querySrc:"prompt",toJumplist:!0}},{keys:"*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"g*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:"g#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:":",type:"ex"}],s=Object.create(null),c=o.length,d=[{name:"colorscheme",shortName:"colo"},{name:"map"},{name:"imap",shortName:"im"},{name:"nmap",shortName:"nm"},{name:"vmap",shortName:"vm"},{name:"omap",shortName:"om"},{name:"noremap",shortName:"no"},{name:"nnoremap",shortName:"nn"},{name:"vnoremap",shortName:"vn"},{name:"inoremap",shortName:"ino"},{name:"onoremap",shortName:"ono"},{name:"unmap"},{name:"mapclear",shortName:"mapc"},{name:"nmapclear",shortName:"nmapc"},{name:"vmapclear",shortName:"vmapc"},{name:"imapclear",shortName:"imapc"},{name:"omapclear",shortName:"omapc"},{name:"write",shortName:"w"},{name:"undo",shortName:"u"},{name:"redo",shortName:"red"},{name:"set",shortName:"se"},{name:"setlocal",shortName:"setl"},{name:"setglobal",shortName:"setg"},{name:"sort",shortName:"sor"},{name:"substitute",shortName:"s",possiblyAsync:!0},{name:"startinsert",shortName:"start"},{name:"nohlsearch",shortName:"noh"},{name:"yank",shortName:"y"},{name:"delmarks",shortName:"delm"},{name:"marks",excludeFromCommandHistory:!0},{name:"registers",shortName:"reg",excludeFromCommandHistory:!0},{name:"vglobal",shortName:"v"},{name:"delete",shortName:"d"},{name:"join",shortName:"j"},{name:"normal",shortName:"norm"},{name:"global",shortName:"g"}],f=vn("");function p(u){u.setOption("disableInput",!0),u.setOption("showCursorWhenSelecting",!1),e.signal(u,"vim-mode-change",{mode:"normal"}),u.on("cursorActivity",$o),se(u),e.on(u.getInputField(),"paste",w(u))}function y(u){u.setOption("disableInput",!1),u.off("cursorActivity",$o),e.off(u.getInputField(),"paste",w(u)),u.state.vim=null,sa&&clearTimeout(sa)}function w(u){var m=u.state.vim;return m.onPasteFn||(m.onPasteFn=function(){m.insertMode||(u.setCursor(_t(u.getCursor(),0,1)),fn.enterInsertMode(u,{},m))}),m.onPasteFn}var _=/[\d]/,C=[e.isWordChar,function(u){return u&&!e.isWordChar(u)&&!/\s/.test(u)}],E=[function(u){return/\S/.test(u)}],T=["<",">"],I=["-",'"',".",":","_","/","+"],$=/^\w$/,V=/^[A-Z]$/;try{V=RegExp("^[\\p{Lu}]$","u")}catch{}function F(u,m){return m>=u.firstLine()&&m<=u.lastLine()}function N(u){return/^[a-z]$/.test(u)}function K(u){return"()[]{}".indexOf(u)!=-1}function pe(u){return _.test(u)}function P(u){return V.test(u)}function A(u){return/^\s*$/.test(u)}function W(u){return".?!".indexOf(u)!=-1}function de(u,m){for(var v=0;v<m.length;v++)if(m[v]==u)return!0;return!1}var fe={};function we(u,m,v,b,x){if(m===void 0&&!x)throw Error("defaultValue is required unless callback is provided");if(v||(v="string"),fe[u]={type:v,defaultValue:m,callback:x},b)for(var k=0;k<b.length;k++)fe[b[k]]=fe[u];m&&J(u,m)}function J(u,m,v,b){var x=fe[u];b||(b={});var k=b.scope;if(!x)return Error("Unknown option: "+u);if(x.type=="boolean"){if(m&&m!==!0)return Error("Invalid argument: "+u+"="+m);m!==!1&&(m=!0)}x.callback?(k!=="local"&&x.callback(m,void 0),k!=="global"&&v&&x.callback(m,v)):(k!=="local"&&(x.value=x.type=="boolean"?!!m:m),k!=="global"&&v&&(v.state.vim.options[u]={value:m}))}function be(u,m,v){var b=fe[u];v||(v={});var x=v.scope;if(!b)return Error("Unknown option: "+u);if(b.callback){let k=m&&b.callback(void 0,m);return x!=="global"&&k!==void 0?k:x==="local"?void 0:b.callback()}else return(x!=="global"&&m&&m.state.vim.options[u]||x!=="local"&&b||{}).value}we("filetype",void 0,"string",["ft"],function(u,m){if(m!==void 0)if(u===void 0){let v=m.getOption("mode");return v=="null"?"":v}else{let v=u==""?"null":u;m.setOption("mode",v)}}),we("textwidth",80,"number",["tw"],function(u,m){if(m!==void 0){if(u===void 0)return m.getOption("textwidth");var v=Math.round(u);v>1&&m.setOption("textwidth",v)}});var Se=function(){var u=100,m=-1,v=0,b=0,x=Array(u);function k(L,z,q){var oe=x[m%u];function ie(Y){var xe=++m%u,_e=x[xe];_e&&_e.clear(),x[xe]=L.setBookmark(Y)}if(oe){var X=oe.find();X&&!gt(X,z)&&ie(z)}else ie(z);ie(q),v=m,b=m-u+1,b<0&&(b=0)}function R(L,z){m+=z,m>v?m=v:m<b&&(m=b);var q=x[(u+m)%u];if(q&&!q.find()){var oe=z>0?1:-1,ie,X=L.getCursor();do if(m+=oe,q=x[(u+m)%u],q&&(ie=q.find())&&!gt(X,ie))break;while(m<v&&m>b)}return q}function O(L,z){var q=m,oe=R(L,z);return m=q,oe&&oe.find()}return{cachedCursor:void 0,add:k,find:O,move:R}},Z=function(u){return u?{changes:u.changes,expectCursorActivityForChange:u.expectCursorActivityForChange}:{changes:[],expectCursorActivityForChange:!1}};class re{constructor(){this.latestRegister=void 0,this.isPlaying=!1,this.isRecording=!1,this.replaySearchQueries=[],this.onRecordingDone=void 0,this.lastInsertModeChanges=Z()}exitMacroRecordMode(){var m=Q.macroModeState;m.onRecordingDone&&m.onRecordingDone(),m.onRecordingDone=void 0,m.isRecording=!1}enterMacroRecordMode(m,v){var b=Q.registerController.getRegister(v);if(b){if(b.clear(),this.latestRegister=v,m.openDialog){var x=Nn("span",{class:"cm-vim-message"},"recording @"+v);this.onRecordingDone=m.openDialog(x,function(){},{bottom:!0})}this.isRecording=!0}}}function se(u){return u.state.vim||(u.state.vim={inputState:new vr,lastEditInputState:void 0,lastEditActionCommand:void 0,lastHPos:-1,lastHSPos:-1,lastMotion:null,marks:{},insertMode:!1,insertModeReturn:!1,insertModeRepeat:void 0,visualMode:!1,visualLine:!1,visualBlock:!1,lastSelection:null,lastPastedText:void 0,sel:{anchor:new n(0,0),head:new n(0,0)},options:{},expectLiteralNext:!1,status:""}),u.state.vim}var Q;function Le(){for(var u in Q={searchQuery:null,searchIsReversed:!1,lastSubstituteReplacePart:void 0,jumpList:Se(),macroModeState:new re,lastCharacterSearch:{increment:0,forward:!0,selectedCharacter:""},registerController:new On({}),searchHistoryController:new br,exCommandHistoryController:new br},fe){var m=fe[u];m.value=m.defaultValue}}class Fe{constructor(m,v){this.keyName=m,this.key=v.key,this.ctrlKey=v.ctrlKey,this.altKey=v.altKey,this.metaKey=v.metaKey,this.shiftKey=v.shiftKey}}var et,Be={enterVimMode:p,leaveVimMode:y,buildKeyMap:function(){},getRegisterController:function(){return Q.registerController},resetVimGlobalState_:Le,getVimGlobalState_:function(){return Q},maybeInitVimState_:se,suppressErrorLogging:!1,InsertModeKey:Fe,map:function(u,m,v){_n.map(u,m,v)},unmap:function(u,m){return _n.unmap(u,m)},noremap:function(u,m,v){_n.map(u,m,v,!0)},mapclear:function(u){var m=o.length,v=c,b=o.slice(0,m-v);if(o=o.slice(m-v),u)for(var x=b.length-1;x>=0;x--){var k=b[x];if(u!==k.context)if(k.context)this._mapCommand(k);else{var R=["normal","insert","visual"];for(var O in R)if(R[O]!==u){var L=Object.assign({},k);L.context=R[O],this._mapCommand(L)}}}},langmap:wt,vimKeyFromEvent:tn,setOption:J,getOption:be,defineOption:we,defineEx:function(u,m,v){if(!m)m=u;else if(u.indexOf(m)!==0)throw Error('(Vim.defineEx) "'+m+'" is not a prefix of "'+u+'", command not registered');xr[u]=v,_n.commandMap_[m]={name:u,shortName:m,type:"api"}},handleKey:function(u,m,v){var b=this.findKey(u,m,v);if(typeof b=="function")return b()},multiSelectHandleKey:Si,findKey:function(u,m,v){var b=se(u),x=u;function k(){var q=Q.macroModeState;if(q.isRecording){if(m=="q")return q.exitMacroRecordMode(),pt(x),!0;v!="mapping"&&$r(q,m)}}function R(){if(m=="<Esc>"){if(b.visualMode)Ye(x);else if(b.insertMode)Hn(x);else return;return pt(x),!0}}function O(){if(R())return!0;b.inputState.keyBuffer.push(m);var q=b.inputState.keyBuffer.join(""),oe=m.length==1,ie=Pn.matchCommand(q,o,b.inputState,"insert"),X=b.inputState.changeQueue;if(ie.type=="none")return pt(x),!1;if(ie.type=="partial"){if(ie.expectLiteralNext&&(b.expectLiteralNext=!0),et&&window.clearTimeout(et),et=oe&&window.setTimeout(function(){b.insertMode&&b.inputState.keyBuffer.length&&pt(x)},be("insertModeEscKeysTimeout")),oe){var Y=x.listSelections();(!X||X.removed.length!=Y.length)&&(X=b.inputState.changeQueue=new Fr),X.inserted+=m;for(var xe=0;xe<Y.length;xe++){var _e=kt(Y[xe].anchor,Y[xe].head),qe=jn(Y[xe].anchor,Y[xe].head),Re=x.getRange(_e,x.state.overwrite?_t(qe,0,1):qe);X.removed[xe]=(X.removed[xe]||"")+Re}}return!oe}else ie.type=="full"&&(b.inputState.keyBuffer.length=0);if(b.expectLiteralNext=!1,et&&window.clearTimeout(et),ie.command&&X){for(var Y=x.listSelections(),xe=0;xe<Y.length;xe++){var Ne=Y[xe].head;x.replaceRange(X.removed[xe]||"",_t(Ne,0,-X.inserted.length),Ne,"+input")}Q.macroModeState.lastInsertModeChanges.changes.pop()}return ie.command||pt(x),ie.command}function L(){if(k()||R())return!0;b.inputState.keyBuffer.push(m);var q=b.inputState.keyBuffer.join("");if(/^[1-9]\d*$/.test(q))return!0;var oe=/^(\d*)(.*)$/.exec(q);if(!oe)return pt(x),!1;var ie=b.visualMode?"visual":"normal",X=oe[2]||oe[1];b.inputState.operatorShortcut&&b.inputState.operatorShortcut.slice(-1)==X&&(X=b.inputState.operatorShortcut);var Y=Pn.matchCommand(X,o,b.inputState,ie);return Y.type=="none"?(pt(x),!1):Y.type=="partial"?(Y.expectLiteralNext&&(b.expectLiteralNext=!0),!0):Y.type=="clear"?(pt(x),!0):(b.expectLiteralNext=!1,b.inputState.keyBuffer.length=0,oe=/^(\d*)(.*)$/.exec(q),oe&&oe[1]&&oe[1]!="0"&&b.inputState.pushRepeatDigit(oe[1]),Y.command)}var z=b.insertMode?O():L();if(z===!1)return!b.insertMode&&(m.length===1||e.isMac&&/<A-.>/.test(m))?function(){return!0}:void 0;if(z===!0)return function(){return!0};if(z)return function(){return x.operation(function(){x.curOp.isVimOp=!0;try{if(typeof z!="object")return;z.type=="keyToKey"?mt(x,z.toKeys,z):Pn.processCommand(x,b,z)}catch(q){throw x.state.vim=void 0,se(x),Be.suppressErrorLogging||console.log(q),q}return!0})}},handleEx:function(u,m){_n.processCommand(u,m)},defineMotion:ta,defineAction:ni,defineOperator:yi,mapCommand:kc,_mapCommand:oi,defineRegister:mi,exitVisualMode:Ye,exitInsertMode:Hn},je=[],Pe=!1,Ae;function ft(u){if(!Ae)throw Error("No prompt to send key to");if(u[0]=="<"){var m=u.toLowerCase().slice(1,-1);if(m=m.split("-").pop()||"",m=="lt")u="<";else if(m=="space")u=" ";else if(m=="cr")u=`
|
|
89
89
|
`;else if(We[m]){var v=Ae.value||"",b={key:We[m],target:{value:v,selectionEnd:v.length,selectionStart:v.length}};Ae.onKeyDown&&Ae.onKeyDown(b,Ae.value,k),Ae&&Ae.onKeyUp&&Ae.onKeyUp(b,Ae.value,k);return}}if(u==`
|
|
90
90
|
`){var x=Ae;Ae=null,x.onClose&&x.onClose(x.value)}else Ae.value=(Ae.value||"")+u;function k(R){Ae&&(typeof R=="string"?Ae.value=R:Ae=null)}}function mt(u,m,v){var b=Pe;if(v){if(je.indexOf(v)!=-1)return;je.push(v),Pe=v.noremap!=0}try{for(var x=se(u),k=/<(?:[CSMA]-)*\w+>|./gi,R;R=k.exec(m);){var O=R[0],L=x.insertMode;if(Ae){ft(O);continue}if(!Be.handleKey(u,O,"mapping")&&L&&x.insertMode){if(O[0]=="<"){var z=O.toLowerCase().slice(1,-1);if(z=z.split("-").pop()||"",z=="lt")O="<";else if(z=="space")O=" ";else if(z=="cr")O=`
|
|
91
91
|
`;else if(We.hasOwnProperty(z)){O=We[z],Ya(u,O);continue}else O=O[0],k.lastIndex=R.index+1}u.replaceSelection(O)}}}finally{if(je.pop(),Pe=je.length?b:!1,!je.length&&Ae){var q=Ae;Ae=null,aa(u,q)}}}var Dn={Return:"CR",Backspace:"BS",Delete:"Del",Escape:"Esc",Insert:"Ins",ArrowLeft:"Left",ArrowRight:"Right",ArrowUp:"Up",ArrowDown:"Down",Enter:"CR"," ":"Space"},un={Shift:1,Alt:1,Command:1,Control:1,CapsLock:1,AltGraph:1,Dead:1,Unidentified:1},We={};"Left|Right|Up|Down|End|Home".split("|").concat(Object.keys(Dn)).forEach(function(u){We[(Dn[u]||"").toLowerCase()]=We[u.toLowerCase()]=u});function tn(u,m){var k;var v=u.key;if(!un[v]){v.length>1&&v[0]=="n"&&(v=v.replace("Numpad","")),v=Dn[v]||v;var b="";if(u.ctrlKey&&(b+="C-"),u.altKey&&(b+="A-"),u.metaKey&&(b+="M-"),e.isMac&&b=="A-"&&v.length==1&&(b=b.slice(2)),(b||v.length>1)&&u.shiftKey&&(b+="S-"),m&&!m.expectLiteralNext&&v.length==1){if(f.keymap&&v in f.keymap)(f.remapCtrl!=0||!b)&&(v=f.keymap[v]);else if(v.charCodeAt(0)>128&&!s[v]){var x=((k=u.code)==null?void 0:k.slice(-1))||"";u.shiftKey||(x=x.toLowerCase()),x&&(v=x,!b&&u.altKey&&(b="A-"))}}return b+=v,b.length>1&&(b="<"+b+">"),b}}function wt(u,m){f.string!==u&&(f=vn(u)),f.remapCtrl=m}function vn(u){let m={};if(!u)return{keymap:m,string:""};function v(b){return b.split(/\\?(.)/).filter(Boolean)}return u.split(/((?:[^\\,]|\\.)+),/).map(b=>{if(!b)return;let x=b.split(/((?:[^\\;]|\\.)+);/);if(x.length==3){let k=v(x[1]),R=v(x[2]);if(k.length!==R.length)return;for(let O=0;O<k.length;++O)m[k[O]]=R[O]}else if(x.length==1){let k=v(b);if(k.length%2!=0)return;for(let R=0;R<k.length;R+=2)m[k[R]]=k[R+1]}}),{keymap:m,string:u}}we("langmap",void 0,"string",["lmap"],function(u,m){if(u===void 0)return f.string;wt(u)});class vr{constructor(){this.prefixRepeat=[],this.motionRepeat=[],this.operator=null,this.operatorArgs=null,this.motion=null,this.motionArgs=null,this.keyBuffer=[],this.registerName=void 0,this.changeQueue=null}pushRepeatDigit(m){this.operator?this.motionRepeat=this.motionRepeat.concat(m):this.prefixRepeat=this.prefixRepeat.concat(m)}getRepeat(){var m=0;return(this.prefixRepeat.length>0||this.motionRepeat.length>0)&&(m=1,this.prefixRepeat.length>0&&(m*=parseInt(this.prefixRepeat.join(""),10)),this.motionRepeat.length>0&&(m*=parseInt(this.motionRepeat.join(""),10))),m}}function pt(u,m){u.state.vim.inputState=new vr,u.state.vim.expectLiteralNext=!1,e.signal(u,"vim-command-done",m)}function Fr(){this.removed=[],this.inserted=""}class nn{constructor(m,v,b){this.clear(),this.keyBuffer=[m||""],this.insertModeChanges=[],this.searchQueries=[],this.linewise=!!v,this.blockwise=!!b}setText(m,v,b){this.keyBuffer=[m||""],this.linewise=!!v,this.blockwise=!!b}pushText(m,v){v&&(this.linewise||this.keyBuffer.push(`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as f}from"./chunk-LvLJmgfZ.js";import{t as y}from"./react-BGmjiNul.js";import{Un as g}from"./cells-
|
|
1
|
+
import{s as f}from"./chunk-LvLJmgfZ.js";import{t as y}from"./react-BGmjiNul.js";import{Un as g}from"./cells-BW_4R0Qw.js";import{t as j}from"./compiler-runtime-DeeZ7FnK.js";import{t as N}from"./jsx-runtime-ZmTK25f3.js";import{t as k}from"./cn-BKtXLv3a.js";import{t as x}from"./createLucideIcon-CnW3RofX.js";import{h as w}from"./select-V5IdpNiR.js";import{t as u}from"./file-Cs1JbsV6.js";import{n as M}from"./play-BPIh-ZEU.js";var b=x("bot-message-square",[["path",{d:"M12 6V2H8",key:"1155em"}],["path",{d:"M15 11v2",key:"i11awn"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 16a2 2 0 0 1-2 2H8.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 4 20.286V8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2z",key:"11gyqh"}],["path",{d:"M9 11v2",key:"1ueba0"}]]),v=x("paperclip",[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]]),d=j(),_=f(y(),1),o=f(N(),1);const q=i=>{var c;let e=(0,d.c)(6),{attachment:t}=i;if((c=t.mediaType)!=null&&c.startsWith("image/")){let a=t.filename||"Attachment",m;return e[0]!==t.url||e[1]!==a?(m=(0,o.jsx)("img",{src:t.url,alt:a,className:"max-h-[100px] max-w-[100px] object-contain mb-1.5"}),e[0]=t.url,e[1]=a,e[2]=m):m=e[2],m}let s;e[3]===Symbol.for("react.memo_cache_sentinel")?(s=(0,o.jsx)(u,{className:"h-3 w-3 mt-0.5"}),e[3]=s):s=e[3];let l=t.filename||"Attachment",r;return e[4]===l?r=e[5]:(r=(0,o.jsxs)("div",{className:"flex flex-row gap-1 items-center text-xs",children:[s,l]}),e[4]=l,e[5]=r),r},A=i=>{let e=(0,d.c)(12),{file:t,className:s,onRemove:l}=i,[r,c]=(0,_.useState)(!1),a;e[0]===s?a=e[1]:(a=k("py-1 px-1.5 bg-muted rounded-md cursor-pointer flex flex-row gap-1 items-center text-xs",s),e[0]=s,e[1]=a);let m,p;e[2]===Symbol.for("react.memo_cache_sentinel")?(m=()=>c(!0),p=()=>c(!1),e[2]=m,e[3]=p):(m=e[2],p=e[3]);let n;e[4]!==t||e[5]!==r||e[6]!==l?(n=r?(0,o.jsx)(w,{className:"h-3 w-3 mt-0.5",onClick:l}):S(t),e[4]=t,e[5]=r,e[6]=l,e[7]=n):n=e[7];let h;return e[8]!==t.name||e[9]!==a||e[10]!==n?(h=(0,o.jsxs)("div",{className:a,onMouseEnter:m,onMouseLeave:p,children:[n,t.name]}),e[8]=t.name,e[9]=a,e[10]=n,e[11]=h):h=e[11],h};function S(i){let e="h-3 w-3 mt-0.5";return i.type.startsWith("image/")?(0,o.jsx)(M,{className:e}):i.type.startsWith("text/")?(0,o.jsx)(g,{className:e}):(0,o.jsx)(u,{className:e})}export{b as i,A as n,v as r,q as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as B}from"./chunk-LvLJmgfZ.js";import{t as U}from"./react-BGmjiNul.js";import{Hn as $,Jn as G}from"./cells-
|
|
1
|
+
import{s as B}from"./chunk-LvLJmgfZ.js";import{t as U}from"./react-BGmjiNul.js";import{Hn as $,Jn as G}from"./cells-BW_4R0Qw.js";import{C as P,P as K,R as z,T as Q}from"./zod-Cg4WLWh2.js";import{t as E}from"./compiler-runtime-DeeZ7FnK.js";import{n as X}from"./assertNever-CBU83Y6o.js";import{t as L}from"./isEmpty-CgX_-6Mt.js";import{ut as Y}from"./ai-model-dropdown-C_l_zAXd.js";import{d as W}from"./hotkeys-BHHWjLlp.js";import{t as Z}from"./jsx-runtime-ZmTK25f3.js";import{t as A}from"./cn-BKtXLv3a.js";import{i as ee,t as te}from"./chat-components-ZGfi_TyH.js";import{t as C}from"./markdown-renderer-xQJ1KM4c.js";import{n as se}from"./spinner-DaIKav-i.js";import{c as ae}from"./datasource-CpcDqjf_.js";import{a as D,i as H,n as I,r as M}from"./multi-map-C8GlnP-4.js";var re=E();U();var t=B(Z(),1);const le=n=>{let e=(0,re.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)(M,{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)(C,{content:a})})})}),e[4]=a,e[5]=i);let d;e[6]!==c||e[7]!==i?(d=(0,t.jsxs)(H,{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)(I,{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 F=E(),ne=K({status:z().default("success"),auth_required:Q().default(!1),action_url:P(),next_steps:P(),meta:P(),message:z().nullish()}).passthrough(),oe=n=>{let e=(0,F.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(me)})]}),e[0]=a,e[1]=l}else l=e[1];return l},ie=n=>{let e=(0,F.c)(8),{result:a}=n,l;e[0]===a?l=e[1]:(l=ne.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)(oe,{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},de=n=>{let e=(0,F.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"&&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 V=n=>{let e=(0,F.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)(G,{className:"h-3 w-3 text-[var(--red-11)]"});case"success":return(0,t.jsx)(Y,{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,T=`tool-${p}`,g;e[6]===o?g=e[7]:(g=A("w-full",o),e[6]=o,e[7]=g);let k=i==="error"&&"text-[var(--red-11)]/80",q=i==="success"&&"text-[var(--grass-11)]/80",v;e[8]!==k||e[9]!==q?(v=A("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",k,q),e[8]=k,e[9]=q,e[10]=v):v=e[10];let j;e[11]===u?j=e[12]:(j=u(),e[11]=u,e[12]=j);let J=f(),b;e[13]===a?b=e[14]:(b=ce(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]!==J||e[18]!==N||e[19]!==j?(y=(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[j,J,":",N]}),e[17]=J,e[18]=N,e[19]=j,e[20]=y):y=e[20];let w;e[21]!==y||e[22]!==v?(w=(0,t.jsx)(D,{className:v,children:y}),e[21]=y,e[22]=v,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)(de,{input:x}),l!=null&&(0,t.jsx)(ie,{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)(M,{className:"py-2 px-2",children:_}),e[29]=_,e[30]=S);let O;e[31]!==w||e[32]!==S?(O=(0,t.jsxs)(H,{value:"tool-call",className:"border-0",children:[w,S]}),e[31]=w,e[32]=S,e[33]=O):O=e[33];let R;return e[34]!==O||e[35]!==T||e[36]!==g?(R=(0,t.jsx)(I,{type:"single",collapsible:!0,className:g,children:O},T),e[34]=O,e[35]=T,e[36]=g,e[37]=R):R=e[37],R};function ce(n){return n.replace("tool-","")}function me(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 ue=({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(xe(s))return(0,t.jsx)(V,{index:r,toolName:s.type,result:s.output,className:"my-2",state:s.state,input:s.input},r);if(pe(s))return W.debug("Found data part",s),null;switch(s.type){case"text":return(0,t.jsx)(C,{content:s.text},r);case"reasoning":return(0,t.jsx)(le,{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)(V,{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 X(s),null}}};function xe(n){return n.type.startsWith("tool-")}function pe(n){return n.type.startsWith("data-")}export{ue as t};
|