@marimo-team/frontend 0.23.16-dev76 → 0.23.16-dev9
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-BalYv0pK.js → CellStatus-BwCqFeIT.js} +1 -1
- package/dist/assets/{ConnectedDataExplorerComponent-DI7mV-Gw.js → ConnectedDataExplorerComponent-CMaZapRd.js} +1 -1
- package/dist/assets/{ErrorBoundary-C7_5jjWi.js → ErrorBoundary-DzTD8LVq.js} +1 -1
- package/dist/assets/{ImperativeModal-BIavOiUv.js → ImperativeModal-fY-ZfT0b.js} +1 -1
- package/dist/assets/JsonOutput-B0aYK7up.js +53 -0
- package/dist/assets/{LazyAnyLanguageCodeMirror-sVm_hz8A.js → LazyAnyLanguageCodeMirror-B2JvSXP-.js} +2 -2
- package/dist/assets/{MarimoErrorOutput-DO2k2fA5.js → MarimoErrorOutput-2CXbNUBb.js} +1 -1
- package/dist/assets/{RSPContexts-CgC81f0I.js → RSPContexts-WiCgGm__.js} +1 -1
- package/dist/assets/{RenderHTML-BCvU9dYz.js → RenderHTML-uBc4LkCP.js} +1 -1
- package/dist/assets/{RunButton-BKRupqr7.js → RunButton-DLoWn_Jd.js} +1 -1
- package/dist/assets/{add-cell-with-ai-CEZtaZCK.js → add-cell-with-ai-C1L7x0xr.js} +1 -1
- package/dist/assets/{add-connection-dialog-CEp3SJR2.js → add-connection-dialog-BgQ7HuWu.js} +1 -1
- package/dist/assets/{agent-panel-By4A-Cqr.js → agent-panel-D3_CUvz_.js} +1 -1
- package/dist/assets/ai-model-dropdown-C7iiWBqP.js +5 -0
- package/dist/assets/{alert-dialog-BXegNC0I.js → alert-dialog-Bb8Lz8ko.js} +1 -1
- package/dist/assets/{any-language-editor-DCpZRrpx.js → any-language-editor--tRHs8C_.js} +1 -1
- package/dist/assets/{app-config-button-NrM9ywXA.js → app-config-button-DhmeKMjL.js} +1 -1
- package/dist/assets/{button-eIihcbUw.js → button-DDGiD1NW.js} +1 -1
- package/dist/assets/{cache-panel-wllSTlbM.js → cache-panel-DcQUeUpg.js} +1 -1
- package/dist/assets/{capabilities-B09j1Eor.js → capabilities-DoEg0XwL.js} +1 -1
- package/dist/assets/{cell-editor-DdofA9oQ.js → cell-editor-DD0zaU_N.js} +10 -10
- package/dist/assets/{cell-link-DqBkyAFe.js → cell-link-C0hhYyNu.js} +1 -1
- package/dist/assets/{cells-Cf7bHHq3.js → cells-aqfX084m.js} +6 -6
- package/dist/assets/{chat-display-BG08ltQ3.js → chat-display-DomMe89U.js} +1 -1
- package/dist/assets/{chat-panel-P2CzCtXJ.js → chat-panel-DzLbxcWT.js} +1 -1
- package/dist/assets/{chat-ui-fAJZAoTD.js → chat-ui-BpWZ6JeY.js} +1 -1
- package/dist/assets/{column-preview-BgZLUEOj.js → column-preview-D5Btj8aG.js} +1 -1
- package/dist/assets/{command-CAJLPEBq.js → command-Dqxie4gq.js} +1 -1
- package/dist/assets/{command-palette-DrI24FoL.js → command-palette-CNp7T2c5.js} +1 -1
- package/dist/assets/{common-CD6Mj8n6.js → common-BrPgvCtD.js} +1 -1
- package/dist/assets/{components-BH6gDVv6.js → components-1i9OlkxM.js} +1 -1
- package/dist/assets/{config-COUOIPEq.js → config-BJVx3eBW.js} +1 -1
- package/dist/assets/{config-BbOTTCYY.js → config-CR3KxW53.js} +1 -1
- package/dist/assets/{copy-BtTOqPTS.js → copy-Bxb1_Gtw.js} +1 -1
- package/dist/assets/{copy-icon-C2pG0ZNK.js → copy-icon-neDQUo4Q.js} +1 -1
- package/dist/assets/{createReducer-C7kZ8zEe.js → createReducer-DGx5Af-C.js} +1 -1
- package/dist/assets/{datasource-ySAiC9gr.js → datasource-wn1PTlXA.js} +1 -1
- package/dist/assets/{dates-D-kIKDYA.js → dates-C2LWzsCZ.js} +1 -1
- package/dist/assets/{dependency-graph-panel-BF23EwcD.js → dependency-graph-panel-B8Q8RQNh.js} +1 -1
- package/dist/assets/{dialog-D1DEsRZ2.js → dialog-BCVepWLJ.js} +1 -1
- package/dist/assets/{dist-ByVeMWkr.js → dist-BLN8PNJV.js} +1 -1
- package/dist/assets/dist-CiVShZKM.js +2 -0
- package/dist/assets/{documentation-panel-e9Fi9R7e.js → documentation-panel-hFyikugH.js} +1 -1
- package/dist/assets/{download-BomYt3nl.js → download-CkMUlfM3.js} +1 -1
- package/dist/assets/{dropdown-menu-BFZLnWeO.js → dropdown-menu-dHmZR8bI.js} +1 -1
- package/dist/assets/{edit-page-C37w54dQ.js → edit-page-jUsez4HZ.js} +5 -5
- package/dist/assets/{error-banner-B6eIlxzg.js → error-banner-BSxEOIn2.js} +1 -1
- package/dist/assets/{error-entries-Birw-8VX.js → error-entries-NXVkubuN.js} +1 -1
- package/dist/assets/{error-panel-DdsUL6b7.js → error-panel-DAseRhAS.js} +1 -1
- package/dist/assets/{es-1D83cgiu.js → es-gYgfF8y5.js} +1 -1
- package/dist/assets/{esm-BL7jQmzn.js → esm-B30N1GS0.js} +1 -1
- package/dist/assets/{field-BeZbVzXA.js → field-BsxD35VE.js} +1 -1
- package/dist/assets/file-explorer-panel-D7VHUIPp.js +26 -0
- package/dist/assets/{file-icons-Cb54mIL8.js → file-icons-Chripuk-.js} +1 -1
- package/dist/assets/{file-name-input-BWFcK1ey.js → file-name-input-B1NJd3KY.js} +1 -1
- package/dist/assets/{floating-outline-wz-WSRgP.js → floating-outline-BOqWJRw_.js} +1 -1
- package/dist/assets/{focus-DiEyfiAG.js → focus-tOmGbv38.js} +1 -1
- package/dist/assets/{form-CgWNb44_.js → form-CIXAzTfC.js} +1 -1
- package/dist/assets/{formats-ClEFGPy-.js → formats-DzmLpc9A.js} +1 -1
- package/dist/assets/{formatting-B_41gSF5.js → formatting-CDf6w1Kt.js} +1 -1
- package/dist/assets/{fullscreen-dUjPYOmm.js → fullscreen-CTDqNQr6.js} +1 -1
- package/dist/assets/{gallery-page-CWQQAYpa.js → gallery-page-CJ3ms1Hn.js} +1 -1
- package/dist/assets/{glide-data-editor-lMARFWHS.js → glide-data-editor-j2igs9Y_.js} +1 -1
- package/dist/assets/{home-page-DJ4jJsZj.js → home-page-DO_MqQAB.js} +1 -1
- package/dist/assets/{html-to-image-CwmX28T9.js → html-to-image-B-nAUvDC.js} +1 -1
- package/dist/assets/index-wLUfvfaV.js +38 -0
- package/dist/assets/{index-BjlEpvLC.css → index-xs-zSSrX.css} +1 -1
- package/dist/assets/{input-CqrUjynb.js → input-JxFwu-3G.js} +1 -1
- package/dist/assets/{kiosk-mode-ABm3oYgq.js → kiosk-mode-QsYGYiC8.js} +1 -1
- package/dist/assets/{label-BElwWzf0.js → label-CqjrpwRC.js} +1 -1
- package/dist/assets/{layout-BOwE7yok.js → layout-1Z2AhO6k.js} +3 -3
- package/dist/assets/{links-CToBjIIj.js → links-CZr5bjvo.js} +1 -1
- package/dist/assets/{logs-panel-iFV4ZJ9b.js → logs-panel-B6AfYQb6.js} +1 -1
- package/dist/assets/{markdown-renderer-QvXG0CRk.js → markdown-renderer-Cs1sISb9.js} +1 -1
- package/dist/assets/{menu-items-DbSLBfXR.js → menu-items-CCi6aOPm.js} +1 -1
- package/dist/assets/{mermaid-Bh0flEIb.js → mermaid-CYN0wOyG.js} +1 -1
- package/dist/assets/{name-cell-input-C6cukQ9k.js → name-cell-input-2sM8a_OS.js} +1 -1
- package/dist/assets/{numbers-CeeaFKqu.js → numbers-rmawRqQP.js} +1 -1
- package/dist/assets/{outline-panel-BPlg9_CE.js → outline-panel-BXWCkGu_.js} +1 -1
- package/dist/assets/{packages-panel-BzQF60rG.js → packages-panel-CJfHGfax.js} +1 -1
- package/dist/assets/{pair-with-agent-modal-CKOYwOYw.js → pair-with-agent-modal-C9nKHvCp.js} +1 -1
- package/dist/assets/{panels-CW-PUlv2.js → panels-Ch_sUzTx.js} +1 -1
- package/dist/assets/{popover-DrHQ3KEt.js → popover-Bcz1Zikb.js} +1 -1
- package/dist/assets/process-output-BFSCpqNt.js +1 -0
- package/dist/assets/{radio-group-CLBjGkt5.js → radio-group-PT0_zVHo.js} +1 -1
- package/dist/assets/{readonly-code-display-D63oRtBP.js → readonly-code-display-CFbCSGms.js} +1 -1
- package/dist/assets/{readonly-python-code-CW_G5e4E.js → readonly-python-code-DB23yd7T.js} +1 -1
- package/dist/assets/{renderShortcut-BZLr8D7H.js → renderShortcut-Bl8_FVn8.js} +1 -1
- package/dist/assets/{reveal-component-DqMRxmUr.js → reveal-component-fwTDxf5N.js} +57 -57
- package/dist/assets/{run-page-s6Mf8p78.js → run-page-D9-9chbw.js} +1 -1
- package/dist/assets/{runs-D51Xwrsk.js → runs-DBTXqJHS.js} +1 -1
- package/dist/assets/{scratchpad-panel-CXsxdMB-.js → scratchpad-panel-BLC2oQ_3.js} +1 -1
- package/dist/assets/{scroll-to-bottom-button-Cgr10kaJ.js → scroll-to-bottom-button-C8yfT4wq.js} +1 -1
- package/dist/assets/{secrets-panel-Cc5KDBk6.js → secrets-panel-6J6wcuVR.js} +1 -1
- package/dist/assets/{select-B5TFNjmU.js → select-BP75_5jJ.js} +1 -1
- package/dist/assets/{session-CEFnN9Cq.js → session-BmukRjSi.js} +1 -1
- package/dist/assets/{session-panel-CmHetqAb.js → session-panel-Dz-DQDeV.js} +1 -1
- package/dist/assets/{share-CYpcX4N4.js → share-852X_cqy.js} +1 -1
- package/dist/assets/{skeleton-B_4CZVEm.js → skeleton-xuR254Kw.js} +1 -1
- package/dist/assets/{snippets-panel-CXpGflMO.js → snippets-panel-DwAjNUqR.js} +1 -1
- package/dist/assets/{spec-CzqcmYQk.js → spec-C7opZZRp.js} +1 -1
- package/dist/assets/{state-BXbiRXZk.js → state-BpkJVsmT.js} +1 -1
- package/dist/assets/{state-BvdK8eiw.js → state-D10U2MwA.js} +1 -1
- package/dist/assets/{state-WBgc7MiA.js → state-DDag0B_B.js} +1 -1
- package/dist/assets/{state-DBzEQtWz.js → state-Tc7pRohh.js} +1 -1
- package/dist/assets/{strings-Djnbwmfl.js → strings--BknHX9C.js} +1 -1
- package/dist/assets/{swiper-component-DInvCxhI.js → swiper-component-Che9MNs4.js} +1 -1
- package/dist/assets/{switch-CvweaCXq.js → switch-DLGijIXN.js} +1 -1
- package/dist/assets/{terminal-D3IQBBYo.js → terminal-DaLxAnKx.js} +1 -1
- package/dist/assets/{textarea-CpFfEUet.js → textarea-aocYW9hl.js} +1 -1
- package/dist/assets/{tooltip-CFX4fYHU.js → tooltip-4bZlU7jl.js} +1 -1
- package/dist/assets/{tooltip-HLb6RxVp.js → tooltip-B7U4xkIN.js} +1 -1
- package/dist/assets/{tracing-CKn3gWHw.js → tracing-BmBBYynL.js} +1 -1
- package/dist/assets/{tracing-panel-BU-o_LCd.js → tracing-panel-AReiFUol.js} +2 -2
- package/dist/assets/{tree-actions-CsC2XmGo.js → tree-actions-Bz3fJ7p-.js} +1 -1
- package/dist/assets/{useBoolean-D89u30n-.js → useBoolean-CA7K8rap.js} +1 -1
- package/dist/assets/{useCellActionButton-CRfIEVB5.js → useCellActionButton-BG7n5b0H.js} +1 -1
- package/dist/assets/{useDeleteCell-EPH4kcG7.js → useDeleteCell-DQP-NBq2.js} +1 -1
- package/dist/assets/{useDependencyPanelTab-CZnK7N2L.js → useDependencyPanelTab-BrkWlCTP.js} +1 -1
- package/dist/assets/useEventListener-C0195JsF.js +1 -0
- package/dist/assets/{useHotkey-DIuRH8Wu.js → useHotkey-DLZvrRZT.js} +1 -1
- package/dist/assets/{useIframeCapabilities-Ccb4fvKc.js → useIframeCapabilities-j6fR_dBA.js} +1 -1
- package/dist/assets/{useInstallPackage-BRbUAUFn.js → useInstallPackage-WiYBwhUO.js} +1 -1
- package/dist/assets/{useInterval-CC0vKpWm.js → useInterval-CWBTUy5W.js} +1 -1
- package/dist/assets/{useNotebookActions-DJKDd0gM.js → useNotebookActions-COdGI2fR.js} +1 -1
- package/dist/assets/{useRunCells-CSSF_mJ0.js → useRunCells-BtSwerrU.js} +1 -1
- package/dist/assets/{useSplitCell-9Qz93yPZ.js → useSplitCell-jH70A2Sz.js} +1 -1
- package/dist/assets/{useTheme-KXqAyDPC.js → useTheme-Bxv9B31g.js} +1 -1
- package/dist/assets/{utils-Z80SV4_d.js → utils-BWBBpCkT.js} +1 -1
- package/dist/assets/{vega-component-Cie3ag_T.js → vega-component-DSvWLXIy.js} +1 -1
- package/dist/assets/{write-secret-modal-DEEn7sZV.js → write-secret-modal-3-v-dHVj.js} +1 -1
- package/dist/index.html +67 -67
- package/package.json +1 -1
- package/src/components/data-table/column-formatting/feature.ts +2 -1
- package/src/components/editor/file-tree/__tests__/file-render-mode.test.ts +27 -0
- package/src/components/editor/file-tree/__tests__/file-viewer.test.tsx +150 -0
- package/src/components/editor/file-tree/file-preview-metadata.tsx +51 -0
- package/src/components/editor/file-tree/file-render-mode.ts +32 -0
- package/src/components/editor/file-tree/file-viewer.tsx +76 -50
- package/src/components/editor/output/CalloutOutput.tsx +17 -3
- package/src/components/slides/__tests__/slide-scroll-hint.test.tsx +198 -0
- package/src/components/slides/reveal-component.tsx +3 -2
- package/src/components/slides/slide-scroll-hint.tsx +161 -0
- package/src/components/ui/input.tsx +1 -1
- package/src/core/codemirror/keymaps/__tests__/keymaps.test.ts +31 -2
- package/src/core/codemirror/keymaps/keymaps.ts +12 -0
- package/src/core/hotkeys/hotkeys.ts +0 -2
- package/src/core/i18n/__tests__/locale-provider.test.tsx +54 -118
- package/src/core/i18n/__tests__/locale.test.ts +113 -0
- package/src/core/i18n/locale-provider.tsx +1 -19
- package/src/core/i18n/locale.ts +71 -0
- package/src/core/network/types.ts +3 -1
- package/src/css/admonition.css +52 -71
- package/src/plugins/impl/FormPlugin.tsx +1 -1
- package/src/plugins/impl/__tests__/FormPlugin.test.tsx +162 -0
- package/src/plugins/layout/CalloutPlugin.tsx +8 -1
- package/src/stories/callout.stories.tsx +12 -0
- package/dist/assets/JsonOutput-DnGSkLeP.js +0 -53
- package/dist/assets/ai-model-dropdown-DXgLphFa.js +0 -5
- package/dist/assets/dist-BCMBu0rO.js +0 -2
- package/dist/assets/file-explorer-panel-DbdoJbbF.js +0 -26
- package/dist/assets/index-D73cl2ti.js +0 -38
- package/dist/assets/process-output-BEhIGfkO.js +0 -1
- package/dist/assets/useEventListener-B_w3A283.js +0 -1
- package/src/components/editor/output/CalloutOutput.styles.ts +0 -22
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./loro_wasm_bg-Duqr-kJ2.js","./loro_wasm_bg-RNUly1SE.js","./chunk-LvLJmgfZ.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
var Nd=Object.defineProperty;var Ha=Z=>{throw TypeError(Z)};var Ad=(Z,W,ye)=>W in Z?Nd(Z,W,{enumerable:!0,configurable:!0,writable:!0,value:ye}):Z[W]=ye;var p=(Z,W,ye)=>Ad(Z,typeof W!="symbol"?W+"":W,ye),Ld=(Z,W,ye)=>W.has(Z)||Ha("Cannot "+ye);var za=(Z,W,ye)=>(Ld(Z,W,"read from private field"),ye?ye.call(Z):W.get(Z)),Ka=(Z,W,ye)=>W.has(Z)?Ha("Cannot add the same private member more than once"):W instanceof WeakSet?W.add(Z):W.set(Z,ye);import{s as Ya}from"./chunk-LvLJmgfZ.js";import{d as Xa,f as Sr,i as Y,l as In,n as ae,p as
|
|
3
|
-
`).length-1}},ss=class{constructor(e){p(this,"cache",new Map);p(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()})}},ls=(e,t)=>Xe.fromClass(class{constructor(){p(this,"abortController",null);p(this,"cache");this.cache=new ss(t.cacheTimeout??1e3)}async update(n){var i,s,c,l,u;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:Ht.of({text:a,doc:r})});return}try{let d=await e(n.state,this.abortController.signal,n.view);if(this.abortController.signal.aborted||((u=(l=t.events)==null?void 0:l.shouldShowSuggestion)==null?void 0:u.call(l,n.view,d))===!1)return;this.cache.set(o,d),n.view.dispatch({effects:Ht.of({text:d,doc:r})})}catch(d){d instanceof Error&&d.name!=="AbortError"&&console.error("Suggestion fetch error:",d)}}destroy(){var n;(n=this.abortController)==null||n.abort()}}),cs=Xe.fromClass(class{constructor(){p(this,"decorations");this.decorations=$.none}update(e){var n;let t=(n=e.state.field(qt))==null?void 0:n.suggestion;if(!t){this.decorations=$.none;return}this.decorations=as(e.view,t)}},{decorations:e=>e.decorations});function us(e,t,n,r){return{...e.changeByRange(o=>{if(o===e.selection.main)return{changes:{from:n,to:r,insert:t},range:wt.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:wt.cursor(o.from-a+t.length)}}),userEvent:"input.complete"}}var ds=e=>{var r,o,a;let t=(r=e.state.field(qt))==null?void 0:r.suggestion;if(!t)return!1;let n=e.state.facet($n);return e.dispatch({...us(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},Zr=e=>{var r,o,a;let t=(r=e.state.field(qt))==null?void 0:r.suggestion;if(!t)return!1;let n=e.state.facet($n);return e.dispatch({effects:Ht.of({text:null,doc:e.state.doc})}),(a=(o=n.events)==null?void 0:o.onSuggestionRejected)==null||a.call(o,e,t),!0},fs=We.of([{key:"Tab",run:ds},{key:"Escape",run:Zr}]),$n=Rt.define({combine:e=>e.at(-1)});function eo(e){let{delay:t=500,includeKeymap:n=!0}=e,r=os(e.fetchFn,t);return[qt,$n.of(e),ls(r,e),cs,n?fs:[]]}const ms=J.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 ps(e){var s,c;let t=e.state.facet(xt),n={...W,...t.keymaps},r=e.state.facet(zt),o=fe("div","cm-ai-tooltip").appendChild(fe("div","cm-ai-tooltip-button")),a=o.appendChild(document.createElement("span"));a.textContent=`${r.label} `;let i=a.appendChild(document.createElement("span"));return i.className="hotkey",i.textContent=Vn(n.showInput),(s=o.querySelector("span"))==null||s.addEventListener("mousedown",l=>{l.stopPropagation(),l.button===0&&l.preventDefault()}),(c=o.querySelector("span"))==null||c.addEventListener("click",l=>{l.preventDefault(),Yr(e)}),o}const zt=Rt.define({combine(e){return jn(e,{render:ps,hideOnBlur:!1,label:"Edit with AI"})}}),hs=Xe.fromClass((Ja=class{constructor(e){p(this,"view");p(this,"suppress");p(this,"dom");p(this,"mousedown",()=>{this.suppress=!0});p(this,"mouseup",()=>{this.suppress=!1,this.display(this.view)});p(this,"scroll",()=>{this.display(this.view)});p(this,"windowScroll",()=>{this.display(this.view)});Ka(this,Sn,e=>{var n;let t=e.state.selection.ranges.find(r=>!r.empty);if(t&&!this.suppress){let r=e.coordsAtPos(t.from),o=e.coordsAtPos(t.to);if(!r||!o)return;let a=e.dom.getBoundingClientRect(),i=(n=e.dom.parentElement)==null?void 0:n.getBoundingClientRect(),s=v=>v.top>=a.top&&v.top<=a.bottom&&v.left>=a.left&&v.left<=a.right,c=v=>!i||v.top>=i.top&&v.top<=i.bottom&&v.left>=i.left&&v.left<=i.right,l=s(r)||s(o),u=c(r)||c(o);if(!l||!u){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}this.dom.style.display="flex",this.dom.setAttribute("aria-hidden","false");let d=this.dom.getBoundingClientRect(),m=s(r)?r:o,f=a.right-d.width,h=Math.min(m.left,f),y=m.top-d.height,b=i?i.y:-1/0;y<b&&(y=o.bottom),this.dom.style.left=`${h}px`,this.dom.style.top=`${y}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(zt);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(zt).hideOnBlur&&!e.hasFocus){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}e.requestMeasure({read:za(this,Sn)})}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()}},Sn=new WeakMap,Ja));var gs=J.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 ys(){return[hs,gs]}var bs=class extends Pn{constructor(t){super();p(this,"oldCode");this.oldCode=t}toDOM(t){let n=fe("div","cm-old-code-container");n.setAttribute("role","region"),n.setAttribute("aria-label","Previous code version");let r=fe("div","cm-old-code cm-line");r.textContent=this.oldCode;let o=fe("div","cm-floating-buttons"),a=t.state.facet(xt),i={...W,...a.keymaps},s=fe("button","cm-floating-button cm-floating-accept");s.innerHTML=`<span class="hotkey">${Vn(i.acceptEdit)}</span> Accept`,s.setAttribute("aria-label","Accept changes"),s.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation(),t.focus(),Xr(t)});let c=fe("button","cm-floating-button cm-floating-reject");return c.innerHTML=`<span class="hotkey">${Vn(i.rejectEdit)}</span> Reject`,c.setAttribute("aria-label","Reject changes"),c.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation(),t.focus(),Qr(t)}),o.append(s,c),n.append(r,o),n}updateDOM(t,n){return!0}},ws=class extends Pn{constructor(t){super();p(this,"complete");p(this,"abortController",null);p(this,"dom",null);p(this,"input",null);p(this,"loadingContainer",null);p(this,"helpInfo",null);p(this,"inputContainer",null);p(this,"form",null);p(this,"view",null);p(this,"onKeyDown",async t=>{t.key==="Enter"&&!t.shiftKey?(t.preventDefault(),await this.handleSubmit()):t.key==="Escape"&&this.onCancel()});p(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())});p(this,"handleSubmit",async t=>{var h;let n=this.view;if(!n)return;let r=n.state.facet(xt);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),l=s.from,u=c.to,d=n.state.sliceDoc(l,u),m=n.state.sliceDoc(0,l),f=n.state.sliceDoc(u);this.abortController=new AbortController,n.dispatch({effects:dt.of(!0)}),this.toggleLoading(!0);try{let y=await this.complete({prompt:i,selection:d,codeBefore:m,codeAfter:f,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:l,to:u,insert:y},effects:[rt.of({show:!1,lineFrom:0,lineTo:0}),Wt.of({from:l,to:l+y.length,oldCode:d,newCode:y}),dt.of(!1)]})}catch(y){if(y instanceof DOMException&&y.name==="AbortError")return;(h=r.onError)==null||h.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(zr),r=t.state.field(Kr),o=fe("div","cm-ai-input-container");this.inputContainer=o,this.dom=o;let a=fe("form","cm-ai-input-form");this.form=a,a.setAttribute("role","search"),a.setAttribute("aria-label","AI editing instructions"),a.addEventListener("submit",b=>b.preventDefault());let i=fe("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=fe("div","cm-ai-loading-container");this.loadingContainer=s;let c=fe("div","cm-ai-loading-indicator");c.setAttribute("role","status"),c.setAttribute("aria-live","polite"),c.textContent="Generating";let l=fe("button","cm-ai-cancel-button");l.textContent="Cancel",l.setAttribute("aria-label","Cancel code generation"),l.addEventListener("click",this.onCancel),s.append(l,c);let u=fe("div","cm-ai-help-info");this.helpInfo=u;let d=u.appendChild(document.createElement("button"));d.className="cm-ai-help-info-button",d.textContent="Esc to close",d.addEventListener("click",this.onCancel);let m=fe("button","cm-ai-generate-button");m.textContent="\u23CE Generate",m.setAttribute("aria-label","Generate code"),m.addEventListener("click",this.handleSubmit),this.toggleLoading(r),n.shouldFocus&&requestAnimationFrame(()=>{i.value=n.inputValue,i.focus(),t.dispatch({effects:kt.of(!1)})}),f(i.value),i.addEventListener("input",y),i.addEventListener("keydown",this.onKeyDown);function f(b){u.replaceChildren(b?m:d)}let h="";function y(){t.dispatch({effects:It.of(i.value)});let b=i.value.trim();b!==h&&(h=b,f(b))}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 vs(e){if(!e.prompt)throw Error("prompt function is required");let t={...W,...e.keymaps};return[xt.of(e),ot,zr,Tt,Kr,ys(),ms,We.of([{key:t.showInput,run:Yr}]),ct.highest([We.of([{key:t.acceptEdit,run:Xr},{key:t.rejectEdit,run:Qr}])]),Es,Ss,Cs,xs]}const Es=J.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 l=e.state.doc.lineAt(a).number;if(l<n){let u=e.state.doc.lineAt(c).number-e.state.doc.lineAt(s).number;n+=u,r+=u,o=!0}else if(l<=r){let u=e.state.doc.lineAt(c).number-e.state.doc.lineAt(s).number;r+=u,o=!0}}),o&&e.view.dispatch({effects:[rt.of({show:!0,lineFrom:n,lineTo:r})]})}),Ss=J.decorations.of(e=>{let t=e.state.field(Tt);return t?$.set([$.mark({class:"cm-new-code-line"}).range(t.from,t.to)]):$.none}),Cs=J.decorations.compute([ot],e=>{let t=e.field(ot),n=e.facet(xt),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($.line({class:"cm-ai-selection"}).range(s)),i===o&&r.push($.widget({widget:new ws(n.prompt),side:-1}).range(s))}}return $.set(r)}),xs=ze.define({create(e){return $.none},update(e,t){let n=t.state.field(Tt);return n?$.set([$.widget({widget:new bs(n.oldCode),block:!0}).range(n.from)]):$.none},provide:e=>J.decorations.from(e)});var Is=Je(),T=Ya(Od(),1),Wn=()=>({entries:new Map}),{valueAtom:to,useActions:no}=Mr(Wn,{submit:(e,t)=>{let{cellIds:n,deleteCell:r,deleteManyCells:o,store:a}=t,i=a.get(tt),s=a.get(Bd),c=new Set(i.cellIds.inOrderIds.filter(d=>i.cellData[d].code.trim()==="")),l=new Map;for(let d of n){if(c.has(d)){l.set(d,{cellId:d,type:"simple"});continue}let m=i.cellRuntime[d],f=new Map;for(let y of Object.values(s)){let b=y.declaredBy.includes(d),v=y.usedBy.some(C=>!c.has(C));b&&v&&f.set(y.name,y.usedBy)}let h;m!=null&&m.runElapsedTimeMs&&m.runElapsedTimeMs>2e3&&(h=m.runElapsedTimeMs),f.size===0&&h===void 0?l.set(d,{cellId:d,type:"simple"}):l.set(d,{cellId:d,type:"expensive",executionDurationMs:h,defs:f})}let u=[...l.values()].every(d=>d.type==="simple");return l.size>0&&u?(l.size===1?r({cellId:[...l.values()][0].cellId}):o({cellIds:[...l.values()].map(d=>d.cellId)}),Wn()):{...e,entries:l}},clear:()=>Wn()});Mn=function(){let e=Sr(),{submit:t,clear:n}=no(),{entries:r}=ie(to),o=Ni(),a=Rr();return(0,T.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])},ts=function(e){let t=(0,Is.c)(16),n=ie(to),r=no(),o=Rr(),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 u;return t[3]===Symbol.for("react.memo_cache_sentinel")?(u={isPending:!1},t[3]=u):u=t[3],u}if(n.entries.size!==1){let u;return t[4]===i?u=t[5]:(u={isPending:!0,shouldConfirmDelete:!1,...i},t[4]=i,t[5]=u),u}let s;t[6]!==r||t[7]!==o||t[8]!==n.entries?(s=()=>{o({cellIds:[...n.entries.values()].map(ks)}),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 l;return t[12]!==i||t[13]!==s||t[14]!==c?(l={isPending:!0,...i,shouldConfirmDelete:!0,confirm:s,cancel:c},t[12]=i,t[13]=s,t[14]=c,t[15]=l):l=t[15],l};function ks(e){return e.cellId}var ro=["python","sql","markdown"];function qn(e,t={}){var l;let{streaming:n=!1}=t,r=((l=e.match(/^\s*/))==null?void 0:l[0])??"",o=e.slice(r.length),a=null,i=!1;for(let u of ro)if(o.startsWith(`\`\`\`${u}`)){i=!0,a=o.slice(3+u.length),a.startsWith(`
|
|
2
|
+
var Nd=Object.defineProperty;var Ha=Z=>{throw TypeError(Z)};var Ad=(Z,W,ye)=>W in Z?Nd(Z,W,{enumerable:!0,configurable:!0,writable:!0,value:ye}):Z[W]=ye;var p=(Z,W,ye)=>Ad(Z,typeof W!="symbol"?W+"":W,ye),Ld=(Z,W,ye)=>W.has(Z)||Ha("Cannot "+ye);var za=(Z,W,ye)=>(Ld(Z,W,"read from private field"),ye?ye.call(Z):W.get(Z)),Ka=(Z,W,ye)=>W.has(Z)?Ha("Cannot add the same private member more than once"):W instanceof WeakSet?W.add(Z):W.set(Z,ye);import{s as Ya}from"./chunk-LvLJmgfZ.js";import{d as Xa,f as Sr,i as Y,l as In,n as ae,p as Dt,s as kn,u as ie}from"./useEvent-D91BmmQi.js";import{t as Od}from"./react-Bj1aDYRI.js";import{$n as _d,$t as Ud,B as Qa,Ct as Tn,Dn as jd,E as Nn,En as Dd,Et as Pt,F as Pd,Gi as Fd,Gt as Md,H as Rd,Hi as Za,Hn as Bd,Jn as ei,K as ti,Kn as Gd,Kt as Cr,Lt as Jd,On as Vd,Rt as ni,Sn as $d,St as xr,Ti as ri,Tr as Wd,Tt as qd,U as oi,Un as Hd,V as An,W as ai,Wn as zd,Xn as Kd,Xt as ii,Yn as Yd,Yt as Ir,Zn as Xd,Zt as si,at as Qd,bi as Zd,bt as ef,di as tf,ea as Ln,en as nf,er as rf,fi as kr,gn as of,i as li,ir as af,jn as Tr,kt as sf,l as ci,m as yt,mt as lf,na as Nr,nn as cf,pn as On,pt as Ar,ri as uf,rn as df,st as ff,tn as mf,u as ui,wi as pf,wn as hf,wt as gf,xt as yf,y as tt,yi as bf,yt as wf,__tla as vf}from"./cells-aqfX084m.js";import{B as Ef,N as Sf,P as Lr,R as di,S as Cf,T as fi,k as xf,w as If}from"./zod-H_cgTO0M.js";import{t as Je}from"./compiler-runtime-B3qBwwSJ.js";import{C as kf,f as Tf,m as Nf,p as Af,t as Lf,v as Of,w as _f}from"./ai-model-dropdown-C7iiWBqP.js";import{_ as Uf,c as mi,g as $e,m as Or,t as jf}from"./useEventListener-C0195JsF.js";import{t as Ft}from"./invariant-CkiqGLcK.js";import{E as _r,_ as pi,c as Df,g as hi,l as gi,v as yi}from"./utils-BWBBpCkT.js";import{S as bi,T as Pf,m as Ff,o as Mf,r as wi,v as bt,w as Mt}from"./config-CR3KxW53.js";import{n as Rf,t as Bf}from"./switch-DLGijIXN.js";import{c as Gf,n as Jf,r as Vf}from"./readonly-python-code-DB23yd7T.js";import{t as $f}from"./ErrorBoundary-DzTD8LVq.js";import{t as nt}from"./cn-DYvqRARy.js";import{t as Wf}from"./jsx-runtime-Blw4afVn.js";import{l as qf,r as Hf,t as zf}from"./popover-Bcz1Zikb.js";import{X as Kf,Z as Yf,__tla as Xf}from"./JsonOutput-B0aYK7up.js";import{t as Ur}from"./label-CqjrpwRC.js";import{r as Qf}from"./download-CkMUlfM3.js";import{t as _n}from"./tooltip-4bZlU7jl.js";import{r as jr,t as lt}from"./button-DDGiD1NW.js";import{At as Zf,Bt as Un,Ct as em,Dt as tm,E as nm,Et as vi,Ft as rm,Gt as Rt,H as Ei,Ht as om,I as am,P as im,Qt as ze,Rt as Dr,St as sm,Tt as We,Ut as wt,V as lm,Wt as Pr,Yt as cm,Zt as pe,_ as um,at as $,dt as jn,en as Bt,gt as dm,ht as fm,lt as mm,m as pm,ot as hm,qt as ct,rn as Dn,st as J,ut as Xe,w as gm,xt as ym}from"./dist-12S8I4CH.js";import{C as bm,E as wm,I as vm,O as Em,S as Sm,a as Cm,c as xm,n as Fr,r as Im,w as km}from"./dist-CiVShZKM.js";import{o as Si}from"./arrays-DbOq36rN.js";import{n as Tm}from"./once-CGKw_kwj.js";import{t as Mr}from"./createReducer-DGx5Af-C.js";import{a as Nm,c as Am,f as Pn,h as Lm,i as Om,l as Gt,n as Ci,o as _m,t as Um}from"./dist-DYEuVkEX.js";import{t as jm}from"./main-BNL5rxQw.js";import{r as Fn,t as Dm}from"./requests-9-v2bhoi.js";import{t as Pm}from"./createLucideIcon-w-Qo9n0R.js";import{r as xi,t as Fm,__tla as Mm}from"./layout-1Z2AhO6k.js";import{t as Rm}from"./x-C-Eq0ag8.js";import{t as Bm}from"./circle-check-C32B6Qa1.js";import{B as Gm,F as Jm,L as Vm,N as $m,O as Wm,V as qm,a as Ii,d as Hm,k as ki,n as zm,o as Km,r as Ti,s as Ym,w as Xm}from"./add-cell-with-ai-C1L7x0xr.js";import{r as Qm,t as Zm}from"./file-icons-Chripuk-.js";import{n as ep}from"./spinner-D-V4psAa.js";import{n as Rr,t as Ni}from"./useDeleteCell-DQP-NBq2.js";import{t as Ai}from"./save-DBuEmnnF.js";import{Y as tp,Z as Li}from"./input-JxFwu-3G.js";import{t as np}from"./sparkles-DUCpRFlS.js";import{t as rp}from"./preload-helper-TXkS1QI3.js";import{a as op}from"./dist-CPjTeT8p.js";import{t as vt}from"./use-toast-BwJoaaDM.js";import{n as Qe}from"./paths-BKO-pHK6.js";import{t as ap}from"./session-BmukRjSi.js";import{r as ip}from"./useTheme-Bxv9B31g.js";import{n as Oi}from"./copy-Bxb1_Gtw.js";import{k as sp}from"./usePress-5hBv4sjD.js";import{a as lp}from"./useRunCells-BtSwerrU.js";import{c as _i,i as Ui,n as ji,r as cp}from"./dialog-BCVepWLJ.js";import{t as Di}from"./useHotkey-DLZvrRZT.js";import{n as Pi}from"./ImperativeModal-fY-ZfT0b.js";import{a as up}from"./errors-PgHhDa-M.js";import{t as z}from"./extends-B9D0JO9U.js";import{t as Jt}from"./objectWithoutPropertiesLoose-CboCOq4o.js";import{t as dp}from"./kbd-C5HnBH5U.js";import{a as Br}from"./useInstallPackage-WiYBwhUO.js";import{i as fp,n as Fi}from"./state-Tc7pRohh.js";import{a as mp,o as pp}from"./cell-link-C0hhYyNu.js";import{r as Mi}from"./html-to-image-B-nAUvDC.js";import{a as hp}from"./focus-tOmGbv38.js";import{n as gp}from"./useAsyncData-Bg5iAViP.js";import{a as yp,o as Ri,r as bp,s as Bi,t as wp}from"./command-Dqxie4gq.js";import{a as Gi}from"./renderShortcut-Bl8_FVn8.js";import{n as vp,t as Ep}from"./icons-CIPE8AIY.js";import{n as Et}from"./esm-B30N1GS0.js";import{t as Ji}from"./dist-DrtRBAn8.js";import{t as Sp}from"./useSplitCell-jH70A2Sz.js";import{co as Cp,do as Gr,fo as xp,ft as Ip,go as St,ho as Vi,lo as Jr,mo as $i,oo as kp,po as Tp,so as Wi,uo as qi,__tla as Np}from"./loro_wasm_bg-RNUly1SE.js";import{t as Ap}from"./ws-BmTnbVEi.js";import{t as Hi}from"./Inputs-B8-VCb_j.js";import{r as Lp,t as Op}from"./skeleton-xuR254Kw.js";let Vr,Vt,Mn,Rn,Bn,$r,we,zi,Ki,Yi,Xi,Wr,qr,ut,Qi,Zi,es,$t,Gn,ts,_p=Promise.all([(()=>{try{return vf}catch{}})(),(()=>{try{return Xf}catch{}})(),(()=>{try{return Mm}catch{}})(),(()=>{try{return Np}catch{}})()]).then(async()=>{var Sn,Ja,Ee,Se,Ce,xe,Ie,ke,Te,Ne,Ae,Le,Oe,_e,Ue,je,De,Pe,Fe,Me,Re;var Z=Pm("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 W={showInput:"Mod-l",acceptEdit:"Mod-y",rejectEdit:"Mod-u"};var ye=300;const xt=Rt.define({combine:e=>Dn(e,{onError:console.error,inputDebounceTime:ye,keymaps:W},{onError:(t,n)=>t&&n,inputDebounceTime:(t,n)=>t&&n,keymaps:(t,n)=>t&&n})}),rt=pe.define(),ot=ze.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}}),It=pe.define(),kt=pe.define(),zr=ze.define({create(){return{shouldFocus:!1,inputValue:""}},update(e,t){let n=e;for(let r of t.effects)r.is(It)&&(n={...n,inputValue:r.value}),r.is(kt)&&(n={...n,shouldFocus:r.value});return n}}),Wt=pe.define(),Tt=ze.define({create(){return null},update(e,t){for(let n of t.effects)if(n.is(Wt))return n.value;return e}}),dt=pe.define(),Kr=ze.define({create(){return!1},update(e,t){for(let n of t.effects)if(n.is(dt))return n.value;return e}});var ns=1;const Yr=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<ns)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}),kt.of(!0),It.of("")],selection:wt.cursor(o.from)}),!0},Xr=e=>e.state.field(Tt)?(e.dispatch({effects:[Wt.of(null),rt.of({show:!1,lineFrom:0,lineTo:0}),kt.of(!1),It.of(""),dt.of(!1)]}),!0):!1,Qr=e=>{let t=e.state.field(Tt);return t?(e.dispatch({changes:{from:t.from,to:t.to,insert:t.oldCode},effects:[Wt.of(null),rt.of({show:!1,lineFrom:0,lineTo:0}),kt.of(!1),It.of(""),dt.of(!1)]}),!0):!1};var Jn={mac:"\u2318",windows:"\u229E Win",default:"Ctrl"};function rs(){return navigator.platform.startsWith("Mac")?Jn.mac:navigator.platform.startsWith("Win")?Jn.windows:Jn.default}function Vn(e){return e.replace("Mod",rs()).replace("-"," ").toUpperCase()}function fe(e,t){let n=document.createElement(e);return n.className=t,n}function os(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 qt=ze.define({create(){return{suggestion:null}},update(e,t){let n=t.effects.find(r=>r.is(Ht));return!t.docChanged&&!n&&!t.selection?e:n&&t.state.doc===n.value.doc?{suggestion:n.value.text}:{suggestion:null}}}),Ht=pe.define();function as(e,t){let n=e.state.selection.main.head,r=[],o=$.widget({widget:new is(t),side:1});return r.push(o.range(n)),$.set(r)}var is=class extends jn{constructor(t){super();p(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
|
+
`).length-1}},ss=class{constructor(e){p(this,"cache",new Map);p(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()})}},ls=(e,t)=>Xe.fromClass(class{constructor(){p(this,"abortController",null);p(this,"cache");this.cache=new ss(t.cacheTimeout??1e3)}async update(n){var i,s,c,l,u;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:Ht.of({text:a,doc:r})});return}try{let d=await e(n.state,this.abortController.signal,n.view);if(this.abortController.signal.aborted||((u=(l=t.events)==null?void 0:l.shouldShowSuggestion)==null?void 0:u.call(l,n.view,d))===!1)return;this.cache.set(o,d),n.view.dispatch({effects:Ht.of({text:d,doc:r})})}catch(d){d instanceof Error&&d.name!=="AbortError"&&console.error("Suggestion fetch error:",d)}}destroy(){var n;(n=this.abortController)==null||n.abort()}}),cs=Xe.fromClass(class{constructor(){p(this,"decorations");this.decorations=$.none}update(e){var n;let t=(n=e.state.field(qt))==null?void 0:n.suggestion;if(!t){this.decorations=$.none;return}this.decorations=as(e.view,t)}},{decorations:e=>e.decorations});function us(e,t,n,r){return{...e.changeByRange(o=>{if(o===e.selection.main)return{changes:{from:n,to:r,insert:t},range:wt.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:wt.cursor(o.from-a+t.length)}}),userEvent:"input.complete"}}var ds=e=>{var r,o,a;let t=(r=e.state.field(qt))==null?void 0:r.suggestion;if(!t)return!1;let n=e.state.facet($n);return e.dispatch({...us(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},Zr=e=>{var r,o,a;let t=(r=e.state.field(qt))==null?void 0:r.suggestion;if(!t)return!1;let n=e.state.facet($n);return e.dispatch({effects:Ht.of({text:null,doc:e.state.doc})}),(a=(o=n.events)==null?void 0:o.onSuggestionRejected)==null||a.call(o,e,t),!0},fs=We.of([{key:"Tab",run:ds},{key:"Escape",run:Zr}]),$n=Rt.define({combine:e=>e.at(-1)});function eo(e){let{delay:t=500,includeKeymap:n=!0}=e,r=os(e.fetchFn,t);return[qt,$n.of(e),ls(r,e),cs,n?fs:[]]}const ms=J.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 ps(e){var s,c;let t=e.state.facet(xt),n={...W,...t.keymaps},r=e.state.facet(zt),o=fe("div","cm-ai-tooltip").appendChild(fe("div","cm-ai-tooltip-button")),a=o.appendChild(document.createElement("span"));a.textContent=`${r.label} `;let i=a.appendChild(document.createElement("span"));return i.className="hotkey",i.textContent=Vn(n.showInput),(s=o.querySelector("span"))==null||s.addEventListener("mousedown",l=>{l.stopPropagation(),l.button===0&&l.preventDefault()}),(c=o.querySelector("span"))==null||c.addEventListener("click",l=>{l.preventDefault(),Yr(e)}),o}const zt=Rt.define({combine(e){return Dn(e,{render:ps,hideOnBlur:!1,label:"Edit with AI"})}}),hs=Xe.fromClass((Ja=class{constructor(e){p(this,"view");p(this,"suppress");p(this,"dom");p(this,"mousedown",()=>{this.suppress=!0});p(this,"mouseup",()=>{this.suppress=!1,this.display(this.view)});p(this,"scroll",()=>{this.display(this.view)});p(this,"windowScroll",()=>{this.display(this.view)});Ka(this,Sn,e=>{var n;let t=e.state.selection.ranges.find(r=>!r.empty);if(t&&!this.suppress){let r=e.coordsAtPos(t.from),o=e.coordsAtPos(t.to);if(!r||!o)return;let a=e.dom.getBoundingClientRect(),i=(n=e.dom.parentElement)==null?void 0:n.getBoundingClientRect(),s=v=>v.top>=a.top&&v.top<=a.bottom&&v.left>=a.left&&v.left<=a.right,c=v=>!i||v.top>=i.top&&v.top<=i.bottom&&v.left>=i.left&&v.left<=i.right,l=s(r)||s(o),u=c(r)||c(o);if(!l||!u){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}this.dom.style.display="flex",this.dom.setAttribute("aria-hidden","false");let d=this.dom.getBoundingClientRect(),m=s(r)?r:o,f=a.right-d.width,h=Math.min(m.left,f),y=m.top-d.height,b=i?i.y:-1/0;y<b&&(y=o.bottom),this.dom.style.left=`${h}px`,this.dom.style.top=`${y}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(zt);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(zt).hideOnBlur&&!e.hasFocus){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}e.requestMeasure({read:za(this,Sn)})}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()}},Sn=new WeakMap,Ja));var gs=J.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 ys(){return[hs,gs]}var bs=class extends jn{constructor(t){super();p(this,"oldCode");this.oldCode=t}toDOM(t){let n=fe("div","cm-old-code-container");n.setAttribute("role","region"),n.setAttribute("aria-label","Previous code version");let r=fe("div","cm-old-code cm-line");r.textContent=this.oldCode;let o=fe("div","cm-floating-buttons"),a=t.state.facet(xt),i={...W,...a.keymaps},s=fe("button","cm-floating-button cm-floating-accept");s.innerHTML=`<span class="hotkey">${Vn(i.acceptEdit)}</span> Accept`,s.setAttribute("aria-label","Accept changes"),s.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation(),t.focus(),Xr(t)});let c=fe("button","cm-floating-button cm-floating-reject");return c.innerHTML=`<span class="hotkey">${Vn(i.rejectEdit)}</span> Reject`,c.setAttribute("aria-label","Reject changes"),c.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation(),t.focus(),Qr(t)}),o.append(s,c),n.append(r,o),n}updateDOM(t,n){return!0}},ws=class extends jn{constructor(t){super();p(this,"complete");p(this,"abortController",null);p(this,"dom",null);p(this,"input",null);p(this,"loadingContainer",null);p(this,"helpInfo",null);p(this,"inputContainer",null);p(this,"form",null);p(this,"view",null);p(this,"onKeyDown",async t=>{t.key==="Enter"&&!t.shiftKey?(t.preventDefault(),await this.handleSubmit()):t.key==="Escape"&&this.onCancel()});p(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())});p(this,"handleSubmit",async t=>{var h;let n=this.view;if(!n)return;let r=n.state.facet(xt);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),l=s.from,u=c.to,d=n.state.sliceDoc(l,u),m=n.state.sliceDoc(0,l),f=n.state.sliceDoc(u);this.abortController=new AbortController,n.dispatch({effects:dt.of(!0)}),this.toggleLoading(!0);try{let y=await this.complete({prompt:i,selection:d,codeBefore:m,codeAfter:f,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:l,to:u,insert:y},effects:[rt.of({show:!1,lineFrom:0,lineTo:0}),Wt.of({from:l,to:l+y.length,oldCode:d,newCode:y}),dt.of(!1)]})}catch(y){if(y instanceof DOMException&&y.name==="AbortError")return;(h=r.onError)==null||h.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(zr),r=t.state.field(Kr),o=fe("div","cm-ai-input-container");this.inputContainer=o,this.dom=o;let a=fe("form","cm-ai-input-form");this.form=a,a.setAttribute("role","search"),a.setAttribute("aria-label","AI editing instructions"),a.addEventListener("submit",b=>b.preventDefault());let i=fe("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=fe("div","cm-ai-loading-container");this.loadingContainer=s;let c=fe("div","cm-ai-loading-indicator");c.setAttribute("role","status"),c.setAttribute("aria-live","polite"),c.textContent="Generating";let l=fe("button","cm-ai-cancel-button");l.textContent="Cancel",l.setAttribute("aria-label","Cancel code generation"),l.addEventListener("click",this.onCancel),s.append(l,c);let u=fe("div","cm-ai-help-info");this.helpInfo=u;let d=u.appendChild(document.createElement("button"));d.className="cm-ai-help-info-button",d.textContent="Esc to close",d.addEventListener("click",this.onCancel);let m=fe("button","cm-ai-generate-button");m.textContent="\u23CE Generate",m.setAttribute("aria-label","Generate code"),m.addEventListener("click",this.handleSubmit),this.toggleLoading(r),n.shouldFocus&&requestAnimationFrame(()=>{i.value=n.inputValue,i.focus(),t.dispatch({effects:kt.of(!1)})}),f(i.value),i.addEventListener("input",y),i.addEventListener("keydown",this.onKeyDown);function f(b){u.replaceChildren(b?m:d)}let h="";function y(){t.dispatch({effects:It.of(i.value)});let b=i.value.trim();b!==h&&(h=b,f(b))}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 vs(e){if(!e.prompt)throw Error("prompt function is required");let t={...W,...e.keymaps};return[xt.of(e),ot,zr,Tt,Kr,ys(),ms,We.of([{key:t.showInput,run:Yr}]),ct.highest([We.of([{key:t.acceptEdit,run:Xr},{key:t.rejectEdit,run:Qr}])]),Es,Ss,Cs,xs]}const Es=J.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 l=e.state.doc.lineAt(a).number;if(l<n){let u=e.state.doc.lineAt(c).number-e.state.doc.lineAt(s).number;n+=u,r+=u,o=!0}else if(l<=r){let u=e.state.doc.lineAt(c).number-e.state.doc.lineAt(s).number;r+=u,o=!0}}),o&&e.view.dispatch({effects:[rt.of({show:!0,lineFrom:n,lineTo:r})]})}),Ss=J.decorations.of(e=>{let t=e.state.field(Tt);return t?$.set([$.mark({class:"cm-new-code-line"}).range(t.from,t.to)]):$.none}),Cs=J.decorations.compute([ot],e=>{let t=e.field(ot),n=e.facet(xt),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($.line({class:"cm-ai-selection"}).range(s)),i===o&&r.push($.widget({widget:new ws(n.prompt),side:-1}).range(s))}}return $.set(r)}),xs=ze.define({create(e){return $.none},update(e,t){let n=t.state.field(Tt);return n?$.set([$.widget({widget:new bs(n.oldCode),block:!0}).range(n.from)]):$.none},provide:e=>J.decorations.from(e)});var Is=Je(),T=Ya(Od(),1),Wn=()=>({entries:new Map}),{valueAtom:to,useActions:no}=Mr(Wn,{submit:(e,t)=>{let{cellIds:n,deleteCell:r,deleteManyCells:o,store:a}=t,i=a.get(tt),s=a.get(Bd),c=new Set(i.cellIds.inOrderIds.filter(d=>i.cellData[d].code.trim()==="")),l=new Map;for(let d of n){if(c.has(d)){l.set(d,{cellId:d,type:"simple"});continue}let m=i.cellRuntime[d],f=new Map;for(let y of Object.values(s)){let b=y.declaredBy.includes(d),v=y.usedBy.some(C=>!c.has(C));b&&v&&f.set(y.name,y.usedBy)}let h;m!=null&&m.runElapsedTimeMs&&m.runElapsedTimeMs>2e3&&(h=m.runElapsedTimeMs),f.size===0&&h===void 0?l.set(d,{cellId:d,type:"simple"}):l.set(d,{cellId:d,type:"expensive",executionDurationMs:h,defs:f})}let u=[...l.values()].every(d=>d.type==="simple");return l.size>0&&u?(l.size===1?r({cellId:[...l.values()][0].cellId}):o({cellIds:[...l.values()].map(d=>d.cellId)}),Wn()):{...e,entries:l}},clear:()=>Wn()});Mn=function(){let e=Sr(),{submit:t,clear:n}=no(),{entries:r}=ie(to),o=Ni(),a=Rr();return(0,T.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])},ts=function(e){let t=(0,Is.c)(16),n=ie(to),r=no(),o=Rr(),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 u;return t[3]===Symbol.for("react.memo_cache_sentinel")?(u={isPending:!1},t[3]=u):u=t[3],u}if(n.entries.size!==1){let u;return t[4]===i?u=t[5]:(u={isPending:!0,shouldConfirmDelete:!1,...i},t[4]=i,t[5]=u),u}let s;t[6]!==r||t[7]!==o||t[8]!==n.entries?(s=()=>{o({cellIds:[...n.entries.values()].map(ks)}),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 l;return t[12]!==i||t[13]!==s||t[14]!==c?(l={isPending:!0,...i,shouldConfirmDelete:!0,confirm:s,cancel:c},t[12]=i,t[13]=s,t[14]=c,t[15]=l):l=t[15],l};function ks(e){return e.cellId}var ro=["python","sql","markdown"];function qn(e,t={}){var l;let{streaming:n=!1}=t,r=((l=e.match(/^\s*/))==null?void 0:l[0])??"",o=e.slice(r.length),a=null,i=!1;for(let u of ro)if(o.startsWith(`\`\`\`${u}`)){i=!0,a=o.slice(3+u.length),a.startsWith(`
|
|
4
4
|
`)&&(a=a.slice(1));break}if(!i&&o.startsWith("```")){let u=o.slice(3);if(n&&Ts(u))return e;i=!0,a=u,a.startsWith(`
|
|
5
5
|
`)&&(a=a.slice(1))}if(!i||a===null)return e;if(n)return a;let s=a.trimEnd(),c=a.slice(s.length);return s.endsWith("\n```")?s.slice(0,-4)+c:s.endsWith("```")?s.slice(0,-3)+c:a}function Ts(e){return e.includes(`
|
|
6
6
|
`)?!1:ro.some(t=>t.startsWith(e))}async function Ns(e){if(!e.ok)throw Error(await e.text());if(!e.body)throw Error("Failed to get response body");let t="";return await Vm({stream:qm({stream:e.body,schema:Gm}).pipeThrough(new TransformStream({transform(n){if(!n.success)throw n.error;let r=n.value;if(r.type==="text-delta")t+=r.delta;else if(r.type==="error")throw Error(r.errorText)}})),onError:n=>{throw n}}),qn(t)}async function As(e){var i;let t=`
|
|
@@ -9,19 +9,19 @@ ${e.codeBefore}
|
|
|
9
9
|
${e.selection}
|
|
10
10
|
</rewrite_this>
|
|
11
11
|
${e.codeAfter}
|
|
12
|
-
`.trim(),n=wi();await bi();let r=await fetch(n.getAiURL("completion").toString(),{method:"POST",headers:n.headers(),body:JSON.stringify({prompt:e.prompt,code:t,selectedText:e.selection,includeOtherCode:"",language:e.language})}),o=((i=e.selection.match(/^\s*/))==null?void 0:i[0])||"",a=await Ns(r);return a.startsWith(o)||(a=o+a),a}var g=Ya(Wf(),1),Ls=["%alias","%cd","%clear","%debug","%env","%load","%load_ext","%lsmagic","%matplotlib","%pwd","%who_ls","%system","%%time","%%timeit","%%writefile","%%capture","%%html","%%latex"],Hn;function Os(){let e=async r=>{let o=Y.get(_r),{saveUserConfig:a}=jm();await a({config:{runtime:{auto_reload:r}}}).then(()=>Y.set(_r,{...o,runtime:{...o.runtime,auto_reload:r}}))},t=[{match:"!pip install",onMatch:()=>{Y.set(Tr,r=>({...r,isSidebarOpen:!0,selectedPanel:"packages"})),Br()},title:"Package Installation",description:(0,g.jsxs)(g.Fragment,{children:["The package manager sidebar has been opened.",(0,g.jsx)("br",{}),"Install packages directly from there instead."]})},{match:"!uv pip install",onMatch:()=>{Y.set(Tr,r=>({...r,isSidebarOpen:!0,selectedPanel:"packages"})),Br()},title:"Package Installation",description:(0,g.jsxs)(g.Fragment,{children:["The package manager sidebar has been opened.",(0,g.jsx)("br",{}),"Install packages directly from there instead."]})},{match:"!uv add",onMatch:()=>{Y.set(Tr,r=>({...r,isSidebarOpen:!0,selectedPanel:"packages"})),Br()},title:"Package Installation",description:(0,g.jsxs)(g.Fragment,{children:["The package manager sidebar has been opened.",(0,g.jsx)("br",{}),"Install packages directly from there instead."]})},{match:"%autoreload 2",onMatch:async()=>{await e("autorun")},title:"Module reload",description:(0,g.jsxs)(g.Fragment,{children:["Module reload mode set to ",(0,g.jsx)("b",{children:"autorun"})," - module changes will re-run the cells that import them."]})},{match:"%autoreload 1",onMatch:async()=>{await e("lazy")},title:"Module reload",description:(0,g.jsxs)(g.Fragment,{children:["Module reload mode set to ",(0,g.jsx)("b",{children:"lazy"})," - module changes will mark the cells that import them as stale."]})},{match:"%autoreload 0",onMatch:async()=>{await e("off")},title:"Module reload",description:(0,g.jsx)(g.Fragment,{children:"Module reload disabled - module changes will not be detected."})},{match:"!ls",onMatch:()=>{},title:"Listing files",description:(0,g.jsxs)(g.Fragment,{children:["Shell commands are not directly supported.",(0,g.jsx)("br",{}),"Use ",(0,g.jsx)("code",{children:"import subprocess; subprocess.run(['ls'])"})," instead."]})},...Ls.map(r=>({match:r,onMatch:()=>{},title:(0,g.jsx)(dp,{className:"inline",children:r}),description:(0,g.jsxs)(g.Fragment,{children:["Magic commands are not supported in marimo. Read more about replacements in the"," ",(0,g.jsx)("a",{href:"https://docs.marimo.io/guides/coming_from/jupyter/#adapting-to-the-absence-of-magic-commands",target:"_blank",className:"text-link underline cursor-pointer",rel:"noopener noreferrer",children:"documentation"}),"."]})}))],n=new Map(t.map(r=>[r.match,r]));return J.updateListener.of(r=>{if(r.docChanged){let o=r.state.selection.main,a=r.state.doc,i=a.lineAt(o.head),s=a.sliceString(i.from,o.anchor).trim(),c=n.get(s);c&&(c.onMatch(),Hn?Hn.upsert({title:c.title,description:c.description}):Hn=vt({title:c.title,description:c.description}))}})}var oo=new Set(["Escape","Alt-`"]);function _s(e,t=oo){return e.filter(n=>![n.key,n.mac,n.linux,n.win].some(r=>t.has(r)))}function Us(e=!0){let t=new Set(oo);e||t.add("Enter");let n=_s(Am,t);return ct.highest(We.of([...n,{key:"Ctrl-y",run:r=>On(r)?Ci(r):!1},{key:"Ctrl-n",run:r=>On(r)?Dn(!0)(r):!1},{key:"Ctrl-p",run:r=>On(r)?Dn(!1)(r):!1}]))}const zn=pe.define(),Kn=pe.define(),Yn=pe.define();function q(e,t){if(!e)throw Error(t)}var Ps=3402823466385289e23,js=-3402823466385289e23,Ds=4294967295,Fs=2147483647,Ms=-2147483648;function Kt(e){if(typeof e!="number")throw Error("invalid int 32: "+typeof e);if(!Number.isInteger(e)||e>Fs||e<Ms)throw Error("invalid int 32: "+e)}function Xn(e){if(typeof e!="number")throw Error("invalid uint 32: "+typeof e);if(!Number.isInteger(e)||e>Ds||e<0)throw Error("invalid uint 32: "+e)}function ao(e){if(typeof e!="number")throw Error("invalid float 32: "+typeof e);if(Number.isFinite(e)&&(e>Ps||e<js))throw Error("invalid float 32: "+e)}var io=Symbol("@bufbuild/protobuf/enum-type");function Rs(e){let t=e[io];return q(t,"missing enum type on enum object"),t}function so(e,t,n,r){e[io]=lo(t,n.map(o=>({no:o.no,name:o.name,localName:e[o.no]})),r)}function lo(e,t,n){let r=Object.create(null),o=Object.create(null),a=[];for(let i of t){let s=co(i);a.push(s),r[i.name]=s,o[i.no]=s}return{typeName:e,values:a,findName(i){return r[i]},findNumber(i){return o[i]}}}function Bs(e,t,n){let r={};for(let o of t){let a=co(o);r[a.localName]=a.no,r[a.no]=a.localName}return so(r,e,t,n),r}function co(e){return"localName"in e?e:Object.assign(Object.assign({},e),{localName:e.name})}var K=class{equals(e){return this.getType().runtime.util.equals(this.getType(),this,e)}clone(){return this.getType().runtime.util.clone(this)}fromBinary(e,t){let n=this.getType().runtime.bin,r=n.makeReadOptions(t);return n.readMessage(this,r.readerFactory(e),e.byteLength,r),this}fromJson(e,t){let n=this.getType(),r=n.runtime.json,o=r.makeReadOptions(t);return r.readMessage(n,e,o,this),this}fromJsonString(e,t){let n;try{n=JSON.parse(e)}catch(r){throw Error(`cannot decode ${this.getType().typeName} from JSON: ${r instanceof Error?r.message:String(r)}`)}return this.fromJson(n,t)}toBinary(e){let t=this.getType().runtime.bin,n=t.makeWriteOptions(e),r=n.writerFactory();return t.writeMessage(this,r,n),r.finish()}toJson(e){let t=this.getType().runtime.json,n=t.makeWriteOptions(e);return t.writeMessage(this,n)}toJsonString(e){let t=this.toJson(e);return JSON.stringify(t,null,(e==null?void 0:e.prettySpaces)??0)}toJSON(){return this.toJson({emitDefaultValues:!0})}getType(){return Object.getPrototypeOf(this).constructor}};function Gs(e,t,n,r){let o=(r==null?void 0:r.localName)??t.substring(t.lastIndexOf(".")+1),a={[o]:function(i){e.util.initFields(this),e.util.initPartial(i,this)}}[o];return Object.setPrototypeOf(a.prototype,new K),Object.assign(a,{runtime:e,typeName:t,fields:e.util.newFieldList(n),fromBinary(i,s){return new a().fromBinary(i,s)},fromJson(i,s){return new a().fromJson(i,s)},fromJsonString(i,s){return new a().fromJsonString(i,s)},equals(i,s){return e.util.equals(a,i,s)}}),a}function Js(){let e=0,t=0;for(let r=0;r<28;r+=7){let o=this.buf[this.pos++];if(e|=(o&127)<<r,!(o&128))return this.assertBounds(),[e,t]}let n=this.buf[this.pos++];if(e|=(n&15)<<28,t=(n&112)>>4,!(n&128))return this.assertBounds(),[e,t];for(let r=3;r<=31;r+=7){let o=this.buf[this.pos++];if(t|=(o&127)<<r,!(o&128))return this.assertBounds(),[e,t]}throw Error("invalid varint")}function Qn(e,t,n){for(let a=0;a<28;a+=7){let i=e>>>a,s=!(!(i>>>7)&&t==0),c=(s?i|128:i)&255;if(n.push(c),!s)return}let r=e>>>28&15|(t&7)<<4,o=!!(t>>3);if(n.push((o?r|128:r)&255),o){for(let a=3;a<31;a+=7){let i=t>>>a,s=!!(i>>>7),c=(s?i|128:i)&255;if(n.push(c),!s)return}n.push(t>>>31&1)}}var Yt=4294967296;function uo(e){let t=e[0]==="-";t&&(e=e.slice(1));let n=1e6,r=0,o=0;function a(i,s){let c=Number(e.slice(i,s));o*=n,r=r*n+c,r>=Yt&&(o+=r/Yt|0,r%=Yt)}return a(-24,-18),a(-18,-12),a(-12,-6),a(-6),t?mo(r,o):Zn(r,o)}function Vs(e,t){let n=Zn(e,t),r=n.hi&2147483648;r&&(n=mo(n.lo,n.hi));let o=fo(n.lo,n.hi);return r?"-"+o:o}function fo(e,t){if({lo:e,hi:t}=$s(e,t),t<=2097151)return String(Yt*t+e);let n=e&16777215,r=(e>>>24|t<<8)&16777215,o=t>>16&65535,a=n+r*6777216+o*6710656,i=r+o*8147497,s=o*2,c=1e7;return a>=c&&(i+=Math.floor(a/c),a%=c),i>=c&&(s+=Math.floor(i/c),i%=c),s.toString()+po(i)+po(a)}function $s(e,t){return{lo:e>>>0,hi:t>>>0}}function Zn(e,t){return{lo:e|0,hi:t|0}}function mo(e,t){return t=~t,e?e=~e+1:t+=1,Zn(e,t)}var po=e=>{let t=String(e);return"0000000".slice(t.length)+t};function ho(e,t){if(e>=0){for(;e>127;)t.push(e&127|128),e>>>=7;t.push(e)}else{for(let n=0;n<9;n++)t.push(e&127|128),e>>=7;t.push(1)}}function Ws(){let e=this.buf[this.pos++],t=e&127;if(!(e&128)||(e=this.buf[this.pos++],t|=(e&127)<<7,!(e&128))||(e=this.buf[this.pos++],t|=(e&127)<<14,!(e&128))||(e=this.buf[this.pos++],t|=(e&127)<<21,!(e&128)))return this.assertBounds(),t;e=this.buf[this.pos++],t|=(e&15)<<28;for(let n=5;e&128&&n<10;n++)e=this.buf[this.pos++];if(e&128)throw Error("invalid varint");return this.assertBounds(),t>>>0}function qs(){let e=new DataView(new ArrayBuffer(8));if(typeof BigInt=="function"&&typeof e.getBigInt64=="function"&&typeof e.getBigUint64=="function"&&typeof e.setBigInt64=="function"&&typeof e.setBigUint64=="function"&&(typeof process!="object"||{}.BUF_BIGINT_DISABLE!=="1")){let r=BigInt("-9223372036854775808"),o=BigInt("9223372036854775807"),a=BigInt("0"),i=BigInt("18446744073709551615");return{zero:BigInt(0),supported:!0,parse(s){let c=typeof s=="bigint"?s:BigInt(s);if(c>o||c<r)throw Error(`int64 invalid: ${s}`);return c},uParse(s){let c=typeof s=="bigint"?s:BigInt(s);if(c>i||c<a)throw Error(`uint64 invalid: ${s}`);return c},enc(s){return e.setBigInt64(0,this.parse(s),!0),{lo:e.getInt32(0,!0),hi:e.getInt32(4,!0)}},uEnc(s){return e.setBigInt64(0,this.uParse(s),!0),{lo:e.getInt32(0,!0),hi:e.getInt32(4,!0)}},dec(s,c){return e.setInt32(0,s,!0),e.setInt32(4,c,!0),e.getBigInt64(0,!0)},uDec(s,c){return e.setInt32(0,s,!0),e.setInt32(4,c,!0),e.getBigUint64(0,!0)}}}let t=r=>q(/^-?[0-9]+$/.test(r),`int64 invalid: ${r}`),n=r=>q(/^[0-9]+$/.test(r),`uint64 invalid: ${r}`);return{zero:"0",supported:!1,parse(r){return typeof r!="string"&&(r=r.toString()),t(r),r},uParse(r){return typeof r!="string"&&(r=r.toString()),n(r),r},enc(r){return typeof r!="string"&&(r=r.toString()),t(r),uo(r)},uEnc(r){return typeof r!="string"&&(r=r.toString()),n(r),uo(r)},dec(r,o){return Vs(r,o)},uDec(r,o){return fo(r,o)}}}const V=qs();var w;(function(e){e[e.DOUBLE=1]="DOUBLE",e[e.FLOAT=2]="FLOAT",e[e.INT64=3]="INT64",e[e.UINT64=4]="UINT64",e[e.INT32=5]="INT32",e[e.FIXED64=6]="FIXED64",e[e.FIXED32=7]="FIXED32",e[e.BOOL=8]="BOOL",e[e.STRING=9]="STRING",e[e.BYTES=12]="BYTES",e[e.UINT32=13]="UINT32",e[e.SFIXED32=15]="SFIXED32",e[e.SFIXED64=16]="SFIXED64",e[e.SINT32=17]="SINT32",e[e.SINT64=18]="SINT64"})(w||(w={}));var at;(function(e){e[e.BIGINT=0]="BIGINT",e[e.STRING=1]="STRING"})(at||(at={}));function Ze(e,t,n){if(t===n)return!0;if(e==w.BYTES){if(!(t instanceof Uint8Array)||!(n instanceof Uint8Array)||t.length!==n.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==n[r])return!1;return!0}switch(e){case w.UINT64:case w.FIXED64:case w.INT64:case w.SFIXED64:case w.SINT64:return t==n}return!1}function ft(e,t){switch(e){case w.BOOL:return!1;case w.UINT64:case w.FIXED64:case w.INT64:case w.SFIXED64:case w.SINT64:return t==0?V.zero:"0";case w.DOUBLE:case w.FLOAT:return 0;case w.BYTES:return new Uint8Array;case w.STRING:return"";default:return 0}}function go(e,t){switch(e){case w.BOOL:return t===!1;case w.STRING:return t==="";case w.BYTES:return t instanceof Uint8Array&&!t.byteLength;default:return t==0}}var X;(function(e){e[e.Varint=0]="Varint",e[e.Bit64=1]="Bit64",e[e.LengthDelimited=2]="LengthDelimited",e[e.StartGroup=3]="StartGroup",e[e.EndGroup=4]="EndGroup",e[e.Bit32=5]="Bit32"})(X||(X={}));var Hs=class{constructor(e){this.stack=[],this.textEncoder=e??new TextEncoder,this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let e=0;for(let r=0;r<this.chunks.length;r++)e+=this.chunks[r].length;let t=new Uint8Array(e),n=0;for(let r=0;r<this.chunks.length;r++)t.set(this.chunks[r],n),n+=this.chunks[r].length;return this.chunks=[],t}fork(){return this.stack.push({chunks:this.chunks,buf:this.buf}),this.chunks=[],this.buf=[],this}join(){let e=this.finish(),t=this.stack.pop();if(!t)throw Error("invalid state, fork stack empty");return this.chunks=t.chunks,this.buf=t.buf,this.uint32(e.byteLength),this.raw(e)}tag(e,t){return this.uint32((e<<3|t)>>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(Xn(e);e>127;)this.buf.push(e&127|128),e>>>=7;return this.buf.push(e),this}int32(e){return Kt(e),ho(e,this.buf),this}bool(e){return this.buf.push(e?1:0),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let t=this.textEncoder.encode(e);return this.uint32(t.byteLength),this.raw(t)}float(e){ao(e);let t=new Uint8Array(4);return new DataView(t.buffer).setFloat32(0,e,!0),this.raw(t)}double(e){let t=new Uint8Array(8);return new DataView(t.buffer).setFloat64(0,e,!0),this.raw(t)}fixed32(e){Xn(e);let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e,!0),this.raw(t)}sfixed32(e){Kt(e);let t=new Uint8Array(4);return new DataView(t.buffer).setInt32(0,e,!0),this.raw(t)}sint32(e){return Kt(e),e=(e<<1^e>>31)>>>0,ho(e,this.buf),this}sfixed64(e){let t=new Uint8Array(8),n=new DataView(t.buffer),r=V.enc(e);return n.setInt32(0,r.lo,!0),n.setInt32(4,r.hi,!0),this.raw(t)}fixed64(e){let t=new Uint8Array(8),n=new DataView(t.buffer),r=V.uEnc(e);return n.setInt32(0,r.lo,!0),n.setInt32(4,r.hi,!0),this.raw(t)}int64(e){let t=V.enc(e);return Qn(t.lo,t.hi,this.buf),this}sint64(e){let t=V.enc(e),n=t.hi>>31;return Qn(t.lo<<1^n,(t.hi<<1|t.lo>>>31)^n,this.buf),this}uint64(e){let t=V.uEnc(e);return Qn(t.lo,t.hi,this.buf),this}},zs=class{constructor(e,t){this.varint64=Js,this.uint32=Ws,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.textDecoder=t??new TextDecoder}tag(){let e=this.uint32(),t=e>>>3,n=e&7;if(t<=0||n<0||n>5)throw Error("illegal tag: field no "+t+" wire type "+n);return[t,n]}skip(e,t){let n=this.pos;switch(e){case X.Varint:for(;this.buf[this.pos++]&128;);break;case X.Bit64:this.pos+=4;case X.Bit32:this.pos+=4;break;case X.LengthDelimited:let r=this.uint32();this.pos+=r;break;case X.StartGroup:for(;;){let[o,a]=this.tag();if(a===X.EndGroup){if(t!==void 0&&o!==t)throw Error("invalid end group tag");break}this.skip(a,o)}break;default:throw Error("cant skip wire type "+e)}return this.assertBounds(),this.buf.subarray(n,this.pos)}assertBounds(){if(this.pos>this.len)throw RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return V.dec(...this.varint64())}uint64(){return V.uDec(...this.varint64())}sint64(){let[e,t]=this.varint64(),n=-(e&1);return e=(e>>>1|(t&1)<<31)^n,t=t>>>1^n,V.dec(e,t)}bool(){let[e,t]=this.varint64();return e!==0||t!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return V.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return V.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),t=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(t,t+e)}string(){return this.textDecoder.decode(this.bytes())}};function Ks(e,t,n,r){let o;return{typeName:t,extendee:n,get field(){if(!o){let a=typeof r=="function"?r():r;a.name=t.split(".").pop(),a.jsonName=`[${t}]`,o=e.util.newFieldList([a]).list()[0]}return o},runtime:e}}function yo(e){let t=e.field.localName,n=Object.create(null);return n[t]=Ys(e),[n,()=>n[t]]}function Ys(e){let t=e.field;if(t.repeated)return[];if(t.default!==void 0)return t.default;switch(t.kind){case"enum":return t.T.values[0].no;case"scalar":return ft(t.T,t.L);case"message":let n=t.T,r=new n;return n.fieldWrapper?n.fieldWrapper.unwrapField(r):r;case"map":throw"map fields are not allowed to be extensions"}}function Xs(e,t){if(!t.repeated&&(t.kind=="enum"||t.kind=="scalar")){for(let n=e.length-1;n>=0;--n)if(e[n].no==t.no)return[e[n]];return[]}return e.filter(n=>n.no===t.no)}var Ke="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),Xt=[];for(let e=0;e<Ke.length;e++)Xt[Ke[e].charCodeAt(0)]=e;Xt[45]=Ke.indexOf("+"),Xt[95]=Ke.indexOf("/");const Qt={dec(e){let t=e.length*3/4;e[e.length-2]=="="?t-=2:e[e.length-1]=="="&&--t;let n=new Uint8Array(t),r=0,o=0,a,i=0;for(let s=0;s<e.length;s++){if(a=Xt[e.charCodeAt(s)],a===void 0)switch(e[s]){case"=":o=0;case`
|
|
13
|
-
`:case"\r":case" ":case" ":continue;default:throw Error("invalid base64 string.")}switch(o){case 0:i=a,o=1;break;case 1:n[r++]=i<<2|(a&48)>>4,i=a,o=2;break;case 2:n[r++]=(i&15)<<4|(a&60)>>2,i=a,o=3;break;case 3:n[r++]=(i&3)<<6|a,o=0;break}}if(o==1)throw Error("invalid base64 string.");return n.subarray(0,r)},enc(e){let t="",n=0,r,o=0;for(let a=0;a<e.length;a++)switch(r=e[a],n){case 0:t+=Ke[r>>2],o=(r&3)<<4,n=1;break;case 1:t+=Ke[o|r>>4],o=(r&15)<<2,n=2;break;case 2:t+=Ke[o|r>>6],t+=Ke[r&63],n=0;break}return n&&(t+=Ke[o],t+="=",n==1&&(t+="=")),t}};function Qs(e,t,n){wo(t,e);let r=t.runtime.bin.makeReadOptions(n),o=Xs(e.getType().runtime.bin.listUnknownFields(e),t.field),[a,i]=yo(t);for(let s of o)t.runtime.bin.readField(a,r.readerFactory(s.data),t.field,s.wireType,r);return i()}function Zs(e,t,n,r){wo(t,e);let o=t.runtime.bin.makeReadOptions(r),a=t.runtime.bin.makeWriteOptions(r);if(bo(e,t)){let l=e.getType().runtime.bin.listUnknownFields(e).filter(u=>u.no!=t.field.no);e.getType().runtime.bin.discardUnknownFields(e);for(let u of l)e.getType().runtime.bin.onUnknownField(e,u.no,u.wireType,u.data)}let i=a.writerFactory(),s=t.field;!s.opt&&!s.repeated&&(s.kind=="enum"||s.kind=="scalar")&&(s=Object.assign(Object.assign({},t.field),{opt:!0})),t.runtime.bin.writeField(s,n,i,a);let c=o.readerFactory(i.finish());for(;c.pos<c.len;){let[l,u]=c.tag(),d=c.skip(u,l);e.getType().runtime.bin.onUnknownField(e,l,u,d)}}function bo(e,t){let n=e.getType();return t.extendee.typeName===n.typeName&&!!n.runtime.bin.listUnknownFields(e).find(r=>r.no==t.field.no)}function wo(e,t){q(e.extendee.typeName==t.getType().typeName,`extension ${e.typeName} can only be applied to message ${e.extendee.typeName}`)}function vo(e,t){let n=e.localName;if(e.repeated)return t[n].length>0;if(e.oneof)return t[e.oneof.localName].case===n;switch(e.kind){case"enum":case"scalar":return e.opt||e.req?t[n]!==void 0:e.kind=="enum"?t[n]!==e.T.values[0].no:!go(e.T,t[n]);case"message":return t[n]!==void 0;case"map":return Object.keys(t[n]).length>0}}function Eo(e,t){let n=e.localName,r=!e.opt&&!e.req;if(e.repeated)t[n]=[];else if(e.oneof)t[e.oneof.localName]={case:void 0};else switch(e.kind){case"map":t[n]={};break;case"enum":t[n]=r?e.T.values[0].no:void 0;break;case"scalar":t[n]=r?ft(e.T,e.L):void 0;break;case"message":t[n]=void 0;break}}function Ye(e,t){if(typeof e!="object"||!e||!Object.getOwnPropertyNames(K.prototype).every(r=>r in e&&typeof e[r]=="function"))return!1;let n=e.getType();return n===null||typeof n!="function"||!("typeName"in n)||typeof n.typeName!="string"?!1:t===void 0?!0:n.typeName==t.typeName}function So(e,t){return Ye(t)||!e.fieldWrapper?t:e.fieldWrapper.wrapField(t)}w.DOUBLE,w.FLOAT,w.INT64,w.UINT64,w.INT32,w.UINT32,w.BOOL,w.STRING,w.BYTES;var Co={ignoreUnknownFields:!1},xo={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0};function el(e){return e?Object.assign(Object.assign({},Co),e):Co}function tl(e){return e?Object.assign(Object.assign({},xo),e):xo}var Zt=Symbol(),en=Symbol();function nl(){return{makeReadOptions:el,makeWriteOptions:tl,readMessage(e,t,n,r){if(t==null||Array.isArray(t)||typeof t!="object")throw Error(`cannot decode message ${e.typeName} from JSON: ${qe(t)}`);r??(r=new e);let o=new Map,a=n.typeRegistry;for(let[i,s]of Object.entries(t)){let c=e.fields.findJsonName(i);if(c){if(c.oneof){if(s===null&&c.kind=="scalar")continue;let l=o.get(c.oneof);if(l!==void 0)throw Error(`cannot decode message ${e.typeName} from JSON: multiple keys for oneof "${c.oneof.name}" present: "${l}", "${i}"`);o.set(c.oneof,i)}Io(r,s,c,n,e)}else{let l=!1;if(a!=null&&a.findExtension&&i.startsWith("[")&&i.endsWith("]")){let u=a.findExtension(i.substring(1,i.length-1));if(u&&u.extendee.typeName==e.typeName){l=!0;let[d,m]=yo(u);Io(d,s,u.field,n,u),Zs(r,u,m(),n)}}if(!l&&!n.ignoreUnknownFields)throw Error(`cannot decode message ${e.typeName} from JSON: key "${i}" is unknown`)}}return r},writeMessage(e,t){let n=e.getType(),r={},o;try{for(o of n.fields.byNumber()){if(!vo(o,e)){if(o.req)throw"required field not set";if(!t.emitDefaultValues||!ol(o))continue}let i=o.oneof?e[o.oneof.localName].value:e[o.localName],s=ko(o,i,t);s!==void 0&&(r[t.useProtoFieldName?o.name:o.jsonName]=s)}let a=t.typeRegistry;if(a!=null&&a.findExtensionFor)for(let i of n.runtime.bin.listUnknownFields(e)){let s=a.findExtensionFor(n.typeName,i.no);if(s&&bo(e,s)){let c=Qs(e,s,t),l=ko(s.field,c,t);l!==void 0&&(r[s.field.jsonName]=l)}}}catch(a){let i=o?`cannot encode field ${n.typeName}.${o.name} to JSON`:`cannot encode message ${n.typeName} to JSON`,s=a instanceof Error?a.message:String(a);throw Error(i+(s.length>0?`: ${s}`:""))}return r},readScalar(e,t,n){return Nt(e,t,n??at.BIGINT,!0)},writeScalar(e,t,n){if(t!==void 0&&(n||go(e,t)))return tn(e,t)},debug:qe}}function qe(e){if(e===null)return"null";switch(typeof e){case"object":return Array.isArray(e)?"array":"object";case"string":return e.length>100?"string":`"${e.split('"').join('\\"')}"`;default:return String(e)}}function Io(e,t,n,r,o){let a=n.localName;if(n.repeated){if(q(n.kind!="map"),t===null)return;if(!Array.isArray(t))throw Error(`cannot decode field ${o.typeName}.${n.name} from JSON: ${qe(t)}`);let i=e[a];for(let s of t){if(s===null)throw Error(`cannot decode field ${o.typeName}.${n.name} from JSON: ${qe(s)}`);switch(n.kind){case"message":i.push(n.T.fromJson(s,r));break;case"enum":let c=er(n.T,s,r.ignoreUnknownFields,!0);c!==en&&i.push(c);break;case"scalar":try{i.push(Nt(n.T,s,n.L,!0))}catch(l){let u=`cannot decode field ${o.typeName}.${n.name} from JSON: ${qe(s)}`;throw l instanceof Error&&l.message.length>0&&(u+=`: ${l.message}`),Error(u)}break}}}else if(n.kind=="map"){if(t===null)return;if(typeof t!="object"||Array.isArray(t))throw Error(`cannot decode field ${o.typeName}.${n.name} from JSON: ${qe(t)}`);let i=e[a];for(let[s,c]of Object.entries(t)){if(c===null)throw Error(`cannot decode field ${o.typeName}.${n.name} from JSON: map value null`);let l;try{l=rl(n.K,s)}catch(u){let d=`cannot decode map key for field ${o.typeName}.${n.name} from JSON: ${qe(t)}`;throw u instanceof Error&&u.message.length>0&&(d+=`: ${u.message}`),Error(d)}switch(n.V.kind){case"message":i[l]=n.V.T.fromJson(c,r);break;case"enum":let u=er(n.V.T,c,r.ignoreUnknownFields,!0);u!==en&&(i[l]=u);break;case"scalar":try{i[l]=Nt(n.V.T,c,at.BIGINT,!0)}catch(d){let m=`cannot decode map value for field ${o.typeName}.${n.name} from JSON: ${qe(t)}`;throw d instanceof Error&&d.message.length>0&&(m+=`: ${d.message}`),Error(m)}break}}}else switch(n.oneof&&(e=e[n.oneof.localName]={case:a},a="value"),n.kind){case"message":let i=n.T;if(t===null&&i.typeName!="google.protobuf.Value")return;let s=e[a];Ye(s)?s.fromJson(t,r):(e[a]=s=i.fromJson(t,r),i.fieldWrapper&&!n.oneof&&(e[a]=i.fieldWrapper.unwrapField(s)));break;case"enum":let c=er(n.T,t,r.ignoreUnknownFields,!1);switch(c){case Zt:Eo(n,e);break;case en:break;default:e[a]=c;break}break;case"scalar":try{let l=Nt(n.T,t,n.L,!1);l===Zt?Eo(n,e):e[a]=l}catch(l){let u=`cannot decode field ${o.typeName}.${n.name} from JSON: ${qe(t)}`;throw l instanceof Error&&l.message.length>0&&(u+=`: ${l.message}`),Error(u)}break}}function rl(e,t){if(e===w.BOOL)switch(t){case"true":t=!0;break;case"false":t=!1;break}return Nt(e,t,at.BIGINT,!0).toString()}function Nt(e,t,n,r){if(t===null)return r?ft(e,n):Zt;switch(e){case w.DOUBLE:case w.FLOAT:if(t==="NaN")return NaN;if(t==="Infinity")return 1/0;if(t==="-Infinity")return-1/0;if(t===""||typeof t=="string"&&t.trim().length!==t.length||typeof t!="string"&&typeof t!="number")break;let o=Number(t);if(Number.isNaN(o)||!Number.isFinite(o))break;return e==w.FLOAT&&ao(o),o;case w.INT32:case w.FIXED32:case w.SFIXED32:case w.SINT32:case w.UINT32:let a;if(typeof t=="number"?a=t:typeof t=="string"&&t.length>0&&t.trim().length===t.length&&(a=Number(t)),a===void 0)break;return e==w.UINT32||e==w.FIXED32?Xn(a):Kt(a),a;case w.INT64:case w.SFIXED64:case w.SINT64:if(typeof t!="number"&&typeof t!="string")break;let i=V.parse(t);return n?i.toString():i;case w.FIXED64:case w.UINT64:if(typeof t!="number"&&typeof t!="string")break;let s=V.uParse(t);return n?s.toString():s;case w.BOOL:if(typeof t!="boolean")break;return t;case w.STRING:if(typeof t!="string")break;return t;case w.BYTES:if(t==="")return new Uint8Array;if(typeof t!="string")break;return Qt.dec(t)}throw Error()}function er(e,t,n,r){if(t===null)return e.typeName=="google.protobuf.NullValue"?0:r?e.values[0].no:Zt;switch(typeof t){case"number":if(Number.isInteger(t))return t;break;case"string":let o=e.findName(t);if(o!==void 0)return o.no;if(n)return en;break}throw Error(`cannot decode enum ${e.typeName} from JSON: ${qe(t)}`)}function ol(e){return e.repeated||e.kind=="map"?!0:!(e.oneof||e.kind=="message"||e.opt||e.req)}function ko(e,t,n){if(e.kind=="map"){q(typeof t=="object"&&!!t);let r={},o=Object.entries(t);switch(e.V.kind){case"scalar":for(let[i,s]of o)r[i.toString()]=tn(e.V.T,s);break;case"message":for(let[i,s]of o)r[i.toString()]=s.toJson(n);break;case"enum":let a=e.V.T;for(let[i,s]of o)r[i.toString()]=tr(a,s,n.enumAsInteger);break}return n.emitDefaultValues||o.length>0?r:void 0}if(e.repeated){q(Array.isArray(t));let r=[];switch(e.kind){case"scalar":for(let o=0;o<t.length;o++)r.push(tn(e.T,t[o]));break;case"enum":for(let o=0;o<t.length;o++)r.push(tr(e.T,t[o],n.enumAsInteger));break;case"message":for(let o=0;o<t.length;o++)r.push(t[o].toJson(n));break}return n.emitDefaultValues||r.length>0?r:void 0}switch(e.kind){case"scalar":return tn(e.T,t);case"enum":return tr(e.T,t,n.enumAsInteger);case"message":return So(e.T,t).toJson(n)}}function tr(e,t,n){var r;return q(typeof t=="number"),e.typeName=="google.protobuf.NullValue"?null:n?t:((r=e.findNumber(t))==null?void 0:r.name)??t}function tn(e,t){switch(e){case w.INT32:case w.SFIXED32:case w.SINT32:case w.FIXED32:case w.UINT32:return q(typeof t=="number"),t;case w.FLOAT:case w.DOUBLE:return q(typeof t=="number"),Number.isNaN(t)?"NaN":t===1/0?"Infinity":t===-1/0?"-Infinity":t;case w.STRING:return q(typeof t=="string"),t;case w.BOOL:return q(typeof t=="boolean"),t;case w.UINT64:case w.FIXED64:case w.INT64:case w.SFIXED64:case w.SINT64:return q(typeof t=="bigint"||typeof t=="string"||typeof t=="number"),t.toString();case w.BYTES:return q(t instanceof Uint8Array),Qt.enc(t)}}var mt=Symbol("@bufbuild/protobuf/unknown-fields"),To={readUnknownFields:!0,readerFactory:e=>new zs(e)},No={writeUnknownFields:!0,writerFactory:()=>new Hs};function al(e){return e?Object.assign(Object.assign({},To),e):To}function il(e){return e?Object.assign(Object.assign({},No),e):No}function sl(){return{makeReadOptions:al,makeWriteOptions:il,listUnknownFields(e){return e[mt]??[]},discardUnknownFields(e){delete e[mt]},writeUnknownFields(e,t){let n=e[mt];if(n)for(let r of n)t.tag(r.no,r.wireType).raw(r.data)},onUnknownField(e,t,n,r){let o=e;Array.isArray(o[mt])||(o[mt]=[]),o[mt].push({no:t,wireType:n,data:r})},readMessage(e,t,n,r,o){let a=e.getType(),i=o?t.len:t.pos+n,s,c;for(;t.pos<i&&([s,c]=t.tag(),!(o===!0&&c==X.EndGroup));){let l=a.fields.find(s);if(!l){let u=t.skip(c,s);r.readUnknownFields&&this.onUnknownField(e,s,c,u);continue}Ao(e,t,l,c,r)}if(o&&(c!=X.EndGroup||s!==n))throw Error("invalid end group tag")},readField:Ao,writeMessage(e,t,n){let r=e.getType();for(let o of r.fields.byNumber()){if(!vo(o,e)){if(o.req)throw Error(`cannot encode field ${r.typeName}.${o.name} to binary: required field not set`);continue}Lo(o,o.oneof?e[o.oneof.localName].value:e[o.localName],t,n)}return n.writeUnknownFields&&this.writeUnknownFields(e,t),t},writeField(e,t,n,r){t!==void 0&&Lo(e,t,n,r)}}}function Ao(e,t,n,r,o){let{repeated:a,localName:i}=n;switch(n.oneof&&(e=e[n.oneof.localName],e.case!=i&&delete e.value,e.case=i,i="value"),n.kind){case"scalar":case"enum":let s=n.kind=="enum"?w.INT32:n.T,c=rn;if(n.kind=="scalar"&&n.L>0&&(c=cl),a){let m=e[i];if(r==X.LengthDelimited&&s!=w.STRING&&s!=w.BYTES){let f=t.uint32()+t.pos;for(;t.pos<f;)m.push(c(t,s))}else m.push(c(t,s))}else e[i]=c(t,s);break;case"message":let l=n.T;a?e[i].push(nn(t,new l,o,n)):Ye(e[i])?nn(t,e[i],o,n):(e[i]=nn(t,new l,o,n),l.fieldWrapper&&!n.oneof&&!n.repeated&&(e[i]=l.fieldWrapper.unwrapField(e[i])));break;case"map":let[u,d]=ll(n,t,o);e[i][u]=d;break}}function nn(e,t,n,r){let o=t.getType().runtime.bin,a=r==null?void 0:r.delimited;return o.readMessage(t,e,a?r.no:e.uint32(),n,a),t}function ll(e,t,n){let r=t.uint32(),o=t.pos+r,a,i;for(;t.pos<o;){let[s]=t.tag();switch(s){case 1:a=rn(t,e.K);break;case 2:switch(e.V.kind){case"scalar":i=rn(t,e.V.T);break;case"enum":i=t.int32();break;case"message":i=nn(t,new e.V.T,n,void 0);break}break}}if(a===void 0&&(a=ft(e.K,at.BIGINT)),typeof a!="string"&&typeof a!="number"&&(a=a.toString()),i===void 0)switch(e.V.kind){case"scalar":i=ft(e.V.T,at.BIGINT);break;case"enum":i=e.V.T.values[0].no;break;case"message":i=new e.V.T;break}return[a,i]}function cl(e,t){let n=rn(e,t);return typeof n=="bigint"?n.toString():n}function rn(e,t){switch(t){case w.STRING:return e.string();case w.BOOL:return e.bool();case w.DOUBLE:return e.double();case w.FLOAT:return e.float();case w.INT32:return e.int32();case w.INT64:return e.int64();case w.UINT64:return e.uint64();case w.FIXED64:return e.fixed64();case w.BYTES:return e.bytes();case w.FIXED32:return e.fixed32();case w.SFIXED32:return e.sfixed32();case w.SFIXED64:return e.sfixed64();case w.SINT64:return e.sint64();case w.UINT32:return e.uint32();case w.SINT32:return e.sint32()}}function Lo(e,t,n,r){q(t!==void 0);let o=e.repeated;switch(e.kind){case"scalar":case"enum":let a=e.kind=="enum"?w.INT32:e.T;if(o)if(q(Array.isArray(t)),e.packed)dl(n,a,e.no,t);else for(let i of t)At(n,a,e.no,i);else At(n,a,e.no,t);break;case"message":if(o){q(Array.isArray(t));for(let i of t)Oo(n,r,e,i)}else Oo(n,r,e,t);break;case"map":q(typeof t=="object"&&!!t);for(let[i,s]of Object.entries(t))ul(n,r,e,i,s);break}}function ul(e,t,n,r,o){e.tag(n.no,X.LengthDelimited),e.fork();let a=r;switch(n.K){case w.INT32:case w.FIXED32:case w.UINT32:case w.SFIXED32:case w.SINT32:a=Number.parseInt(r);break;case w.BOOL:q(r=="true"||r=="false"),a=r=="true";break}switch(At(e,n.K,1,a),n.V.kind){case"scalar":At(e,n.V.T,2,o);break;case"enum":At(e,w.INT32,2,o);break;case"message":q(o!==void 0),e.tag(2,X.LengthDelimited).bytes(o.toBinary(t));break}e.join()}function Oo(e,t,n,r){let o=So(n.T,r);n.delimited?e.tag(n.no,X.StartGroup).raw(o.toBinary(t)).tag(n.no,X.EndGroup):e.tag(n.no,X.LengthDelimited).bytes(o.toBinary(t))}function At(e,t,n,r){q(r!==void 0);let[o,a]=_o(t);e.tag(n,o)[a](r)}function dl(e,t,n,r){if(!r.length)return;e.tag(n,X.LengthDelimited).fork();let[,o]=_o(t);for(let a=0;a<r.length;a++)e[o](r[a]);e.join()}function _o(e){let t=X.Varint;switch(e){case w.BYTES:case w.STRING:t=X.LengthDelimited;break;case w.DOUBLE:case w.FIXED64:case w.SFIXED64:t=X.Bit64;break;case w.FIXED32:case w.SFIXED32:case w.FLOAT:t=X.Bit32;break}let n=w[e].toLowerCase();return[t,n]}function fl(){return{setEnumType:so,initPartial(e,t){if(e===void 0)return;let n=t.getType();for(let r of n.fields.byMember()){let o=r.localName,a=t,i=e;if(i[o]!=null)switch(r.kind){case"oneof":let s=i[o].case;if(s===void 0)continue;let c=r.findField(s),l=i[o].value;c&&c.kind=="message"&&!Ye(l,c.T)?l=new c.T(l):c&&c.kind==="scalar"&&c.T===w.BYTES&&(l=Lt(l)),a[o]={case:s,value:l};break;case"scalar":case"enum":let u=i[o];r.T===w.BYTES&&(u=r.repeated?u.map(Lt):Lt(u)),a[o]=u;break;case"map":switch(r.V.kind){case"scalar":case"enum":if(r.V.T===w.BYTES)for(let[f,h]of Object.entries(i[o]))a[o][f]=Lt(h);else Object.assign(a[o],i[o]);break;case"message":let m=r.V.T;for(let f of Object.keys(i[o])){let h=i[o][f];m.fieldWrapper||(h=new m(h)),a[o][f]=h}break}break;case"message":let d=r.T;if(r.repeated)a[o]=i[o].map(m=>Ye(m,d)?m:new d(m));else{let m=i[o];d.fieldWrapper?d.typeName==="google.protobuf.BytesValue"?a[o]=Lt(m):a[o]=m:a[o]=Ye(m,d)?m:new d(m)}break}}},equals(e,t,n){return t===n?!0:!t||!n?!1:e.fields.byMember().every(r=>{let o=t[r.localName],a=n[r.localName];if(r.repeated){if(o.length!==a.length)return!1;switch(r.kind){case"message":return o.every((i,s)=>r.T.equals(i,a[s]));case"scalar":return o.every((i,s)=>Ze(r.T,i,a[s]));case"enum":return o.every((i,s)=>Ze(w.INT32,i,a[s]))}throw Error(`repeated cannot contain ${r.kind}`)}switch(r.kind){case"message":let i=o,s=a;return r.T.fieldWrapper&&(i!==void 0&&!Ye(i)&&(i=r.T.fieldWrapper.wrapField(i)),s!==void 0&&!Ye(s)&&(s=r.T.fieldWrapper.wrapField(s))),r.T.equals(i,s);case"enum":return Ze(w.INT32,o,a);case"scalar":return Ze(r.T,o,a);case"oneof":if(o.case!==a.case)return!1;let c=r.findField(o.case);if(c===void 0)return!0;switch(c.kind){case"message":return c.T.equals(o.value,a.value);case"enum":return Ze(w.INT32,o.value,a.value);case"scalar":return Ze(c.T,o.value,a.value)}throw Error(`oneof cannot contain ${c.kind}`);case"map":let l=Object.keys(o).concat(Object.keys(a));switch(r.V.kind){case"message":let u=r.V.T;return l.every(m=>u.equals(o[m],a[m]));case"enum":return l.every(m=>Ze(w.INT32,o[m],a[m]));case"scalar":let d=r.V.T;return l.every(m=>Ze(d,o[m],a[m]))}break}})},clone(e){let t=e.getType(),n=new t,r=n;for(let o of t.fields.byMember()){let a=e[o.localName],i;if(o.repeated)i=a.map(on);else if(o.kind=="map"){i=r[o.localName];for(let[s,c]of Object.entries(a))i[s]=on(c)}else i=o.kind=="oneof"?o.findField(a.case)?{case:a.case,value:on(a.value)}:{case:void 0}:on(a);r[o.localName]=i}for(let o of t.runtime.bin.listUnknownFields(e))t.runtime.bin.onUnknownField(r,o.no,o.wireType,o.data);return n}}}function on(e){if(e===void 0)return e;if(Ye(e))return e.clone();if(e instanceof Uint8Array){let t=new Uint8Array(e.byteLength);return t.set(e),t}return e}function Lt(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function ml(e,t,n){return{syntax:e,json:nl(),bin:sl(),util:Object.assign(Object.assign({},fl()),{newFieldList:t,initFields:n}),makeMessageType(r,o,a){return Gs(this,r,o,a)},makeEnum:Bs,makeEnumType:lo,getEnumType:Rs,makeExtension(r,o,a){return Ks(this,r,o,a)}}}var pl=class{constructor(e,t){this._fields=e,this._normalizer=t}findJsonName(e){if(!this.jsonNames){let t={};for(let n of this.list())t[n.jsonName]=t[n.name]=n;this.jsonNames=t}return this.jsonNames[e]}find(e){if(!this.numbers){let t={};for(let n of this.list())t[n.no]=n;this.numbers=t}return this.numbers[e]}list(){return this.all||(this.all=this._normalizer(this._fields)),this.all}byNumber(){return this.numbersAsc||(this.numbersAsc=this.list().concat().sort((e,t)=>e.no-t.no)),this.numbersAsc}byMember(){if(!this.members){this.members=[];let e=this.members,t;for(let n of this.list())n.oneof?n.oneof!==t&&(t=n.oneof,e.push(t)):e.push(n)}return this.members}};function Uo(e,t){let n=Po(e);return t?n:vl(wl(n))}function hl(e){return Uo(e,!1)}const gl=Po;function Po(e){let t=!1,n=[];for(let r=0;r<e.length;r++){let o=e.charAt(r);switch(o){case"_":t=!0;break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":n.push(o),t=!1;break;default:t&&(t=!1,o=o.toUpperCase()),n.push(o);break}}return n.join("")}var yl=new Set(["constructor","toString","toJSON","valueOf"]),bl=new Set(["getType","clone","equals","fromBinary","fromJson","fromJsonString","toBinary","toJson","toJsonString","toObject"]),jo=e=>`${e}$`,wl=e=>bl.has(e)?jo(e):e;const vl=e=>yl.has(e)?jo(e):e;var El=class{constructor(e){this.kind="oneof",this.repeated=!1,this.packed=!1,this.opt=!1,this.req=!1,this.default=void 0,this.fields=[],this.name=e,this.localName=hl(e)}addField(e){q(e.oneof===this,`field ${e.name} not one of ${this.name}`),this.fields.push(e)}findField(e){if(!this._lookup){this._lookup=Object.create(null);for(let t=0;t<this.fields.length;t++)this._lookup[this.fields[t].localName]=this.fields[t]}return this._lookup[e]}};function Sl(e,t){let n=[],r;for(let o of typeof e=="function"?e():e){let a=o;if(a.localName=Uo(o.name,o.oneof!==void 0),a.jsonName=o.jsonName??gl(o.name),a.repeated=o.repeated??!1,o.kind=="scalar"&&(a.L=o.L??at.BIGINT),a.delimited=o.delimited??!1,a.req=o.req??!1,a.opt=o.opt??!1,o.packed===void 0&&(t?a.packed=o.kind=="enum"||o.kind=="scalar"&&o.T!=w.BYTES&&o.T!=w.STRING:a.packed=!1),o.oneof!==void 0){let i=typeof o.oneof=="string"?o.oneof:o.oneof.name;(!r||r.name!=i)&&(r=new El(i)),a.oneof=r,r.addField(a)}n.push(a)}return n}const E=ml("proto3",e=>new pl(e,t=>Sl(t,!0)),e=>{for(let t of e.getType().fields.byMember()){if(t.opt)continue;let n=t.localName,r=e;if(t.repeated){r[n]=[];continue}switch(t.kind){case"oneof":r[n]={case:void 0};break;case"enum":r[n]=0;break;case"map":r[n]={};break;case"scalar":r[n]=ft(t.T,t.L);break;case"message":break}}});var ve;(function(e){e[e.Unary=0]="Unary",e[e.ServerStreaming=1]="ServerStreaming",e[e.ClientStreaming=2]="ClientStreaming",e[e.BiDiStreaming=3]="BiDiStreaming"})(ve||(ve={}));var Do;(function(e){e[e.NoSideEffects=1]="NoSideEffects",e[e.Idempotent=2]="Idempotent"})(Do||(Do={}));var nr;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.JUPYTER_FORMAT=77]="JUPYTER_FORMAT"})(nr||(nr={})),E.util.setEnumType(nr,"exa.codeium_common_pb.ExperimentKey",[{no:0,name:"UNSPECIFIED"},{no:77,name:"JUPYTER_FORMAT"}]);var an;(function(e){e[e.CODEIUM=0]="CODEIUM"})(an||(an={})),E.util.setEnumType(an,"exa.codeium_common_pb.AuthSource",[{no:0,name:"AUTH_SOURCE_CODEIUM"}]);var sn;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.ENABLE_CODEIUM=1]="ENABLE_CODEIUM",e[e.DISABLE_CODEIUM=2]="DISABLE_CODEIUM",e[e.SHOW_PREVIOUS_COMPLETION=3]="SHOW_PREVIOUS_COMPLETION",e[e.SHOW_NEXT_COMPLETION=4]="SHOW_NEXT_COMPLETION"})(sn||(sn={})),E.util.setEnumType(sn,"exa.codeium_common_pb.EventType",[{no:0,name:"EVENT_TYPE_UNSPECIFIED"},{no:1,name:"EVENT_TYPE_ENABLE_CODEIUM"},{no:2,name:"EVENT_TYPE_DISABLE_CODEIUM"},{no:3,name:"EVENT_TYPE_SHOW_PREVIOUS_COMPLETION"},{no:4,name:"EVENT_TYPE_SHOW_NEXT_COMPLETION"}]);var ln;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TYPING_AS_SUGGESTED=1]="TYPING_AS_SUGGESTED",e[e.CACHE=2]="CACHE",e[e.NETWORK=3]="NETWORK"})(ln||(ln={})),E.util.setEnumType(ln,"exa.codeium_common_pb.CompletionSource",[{no:0,name:"COMPLETION_SOURCE_UNSPECIFIED"},{no:1,name:"COMPLETION_SOURCE_TYPING_AS_SUGGESTED"},{no:2,name:"COMPLETION_SOURCE_CACHE"},{no:3,name:"COMPLETION_SOURCE_NETWORK"}]);var it;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.C=1]="C",e[e.CLOJURE=2]="CLOJURE",e[e.COFFEESCRIPT=3]="COFFEESCRIPT",e[e.CPP=4]="CPP",e[e.CSHARP=5]="CSHARP",e[e.CSS=6]="CSS",e[e.CUDACPP=7]="CUDACPP",e[e.DOCKERFILE=8]="DOCKERFILE",e[e.GO=9]="GO",e[e.GROOVY=10]="GROOVY",e[e.HANDLEBARS=11]="HANDLEBARS",e[e.HASKELL=12]="HASKELL",e[e.HCL=13]="HCL",e[e.HTML=14]="HTML",e[e.INI=15]="INI",e[e.JAVA=16]="JAVA",e[e.JAVASCRIPT=17]="JAVASCRIPT",e[e.JSON=18]="JSON",e[e.JULIA=19]="JULIA",e[e.KOTLIN=20]="KOTLIN",e[e.LATEX=21]="LATEX",e[e.LESS=22]="LESS",e[e.LUA=23]="LUA",e[e.MAKEFILE=24]="MAKEFILE",e[e.MARKDOWN=25]="MARKDOWN",e[e.OBJECTIVEC=26]="OBJECTIVEC",e[e.OBJECTIVECPP=27]="OBJECTIVECPP",e[e.PERL=28]="PERL",e[e.PHP=29]="PHP",e[e.PLAINTEXT=30]="PLAINTEXT",e[e.PROTOBUF=31]="PROTOBUF",e[e.PBTXT=32]="PBTXT",e[e.PYTHON=33]="PYTHON",e[e.R=34]="R",e[e.RUBY=35]="RUBY",e[e.RUST=36]="RUST",e[e.SASS=37]="SASS",e[e.SCALA=38]="SCALA",e[e.SCSS=39]="SCSS",e[e.SHELL=40]="SHELL",e[e.SQL=41]="SQL",e[e.STARLARK=42]="STARLARK",e[e.SWIFT=43]="SWIFT",e[e.TSX=44]="TSX",e[e.TYPESCRIPT=45]="TYPESCRIPT",e[e.VISUALBASIC=46]="VISUALBASIC",e[e.VUE=47]="VUE",e[e.XML=48]="XML",e[e.XSL=49]="XSL",e[e.YAML=50]="YAML",e[e.SVELTE=51]="SVELTE",e[e.TOML=52]="TOML",e[e.DART=53]="DART",e[e.RST=54]="RST",e[e.OCAML=55]="OCAML",e[e.CMAKE=56]="CMAKE",e[e.PASCAL=57]="PASCAL",e[e.ELIXIR=58]="ELIXIR",e[e.FSHARP=59]="FSHARP",e[e.LISP=60]="LISP",e[e.MATLAB=61]="MATLAB",e[e.POWERSHELL=62]="POWERSHELL",e[e.SOLIDITY=63]="SOLIDITY",e[e.ADA=64]="ADA",e[e.OCAML_INTERFACE=65]="OCAML_INTERFACE"})(it||(it={})),E.util.setEnumType(it,"exa.codeium_common_pb.Language",[{no:0,name:"LANGUAGE_UNSPECIFIED"},{no:1,name:"LANGUAGE_C"},{no:2,name:"LANGUAGE_CLOJURE"},{no:3,name:"LANGUAGE_COFFEESCRIPT"},{no:4,name:"LANGUAGE_CPP"},{no:5,name:"LANGUAGE_CSHARP"},{no:6,name:"LANGUAGE_CSS"},{no:7,name:"LANGUAGE_CUDACPP"},{no:8,name:"LANGUAGE_DOCKERFILE"},{no:9,name:"LANGUAGE_GO"},{no:10,name:"LANGUAGE_GROOVY"},{no:11,name:"LANGUAGE_HANDLEBARS"},{no:12,name:"LANGUAGE_HASKELL"},{no:13,name:"LANGUAGE_HCL"},{no:14,name:"LANGUAGE_HTML"},{no:15,name:"LANGUAGE_INI"},{no:16,name:"LANGUAGE_JAVA"},{no:17,name:"LANGUAGE_JAVASCRIPT"},{no:18,name:"LANGUAGE_JSON"},{no:19,name:"LANGUAGE_JULIA"},{no:20,name:"LANGUAGE_KOTLIN"},{no:21,name:"LANGUAGE_LATEX"},{no:22,name:"LANGUAGE_LESS"},{no:23,name:"LANGUAGE_LUA"},{no:24,name:"LANGUAGE_MAKEFILE"},{no:25,name:"LANGUAGE_MARKDOWN"},{no:26,name:"LANGUAGE_OBJECTIVEC"},{no:27,name:"LANGUAGE_OBJECTIVECPP"},{no:28,name:"LANGUAGE_PERL"},{no:29,name:"LANGUAGE_PHP"},{no:30,name:"LANGUAGE_PLAINTEXT"},{no:31,name:"LANGUAGE_PROTOBUF"},{no:32,name:"LANGUAGE_PBTXT"},{no:33,name:"LANGUAGE_PYTHON"},{no:34,name:"LANGUAGE_R"},{no:35,name:"LANGUAGE_RUBY"},{no:36,name:"LANGUAGE_RUST"},{no:37,name:"LANGUAGE_SASS"},{no:38,name:"LANGUAGE_SCALA"},{no:39,name:"LANGUAGE_SCSS"},{no:40,name:"LANGUAGE_SHELL"},{no:41,name:"LANGUAGE_SQL"},{no:42,name:"LANGUAGE_STARLARK"},{no:43,name:"LANGUAGE_SWIFT"},{no:44,name:"LANGUAGE_TSX"},{no:45,name:"LANGUAGE_TYPESCRIPT"},{no:46,name:"LANGUAGE_VISUALBASIC"},{no:47,name:"LANGUAGE_VUE"},{no:48,name:"LANGUAGE_XML"},{no:49,name:"LANGUAGE_XSL"},{no:50,name:"LANGUAGE_YAML"},{no:51,name:"LANGUAGE_SVELTE"},{no:52,name:"LANGUAGE_TOML"},{no:53,name:"LANGUAGE_DART"},{no:54,name:"LANGUAGE_RST"},{no:55,name:"LANGUAGE_OCAML"},{no:56,name:"LANGUAGE_CMAKE"},{no:57,name:"LANGUAGE_PASCAL"},{no:58,name:"LANGUAGE_ELIXIR"},{no:59,name:"LANGUAGE_FSHARP"},{no:60,name:"LANGUAGE_LISP"},{no:61,name:"LANGUAGE_MATLAB"},{no:62,name:"LANGUAGE_POWERSHELL"},{no:63,name:"LANGUAGE_SOLIDITY"},{no:64,name:"LANGUAGE_ADA"},{no:65,name:"LANGUAGE_OCAML_INTERFACE"}]);var Cl=(Ee=class extends K{constructor(n){super();p(this,"completionId","");p(this,"text","");p(this,"prefix","");p(this,"stop","");p(this,"score",0);p(this,"tokens",[]);p(this,"decodedTokens",[]);p(this,"probabilities",[]);p(this,"adjustedProbabilities",[]);p(this,"generatedLength",V.zero);E.util.initPartial(n,this)}static fromBinary(n,r){return new Ee().fromBinary(n,r)}static fromJson(n,r){return new Ee().fromJson(n,r)}static fromJsonString(n,r){return new Ee().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Ee,n,r)}},p(Ee,"runtime",E),p(Ee,"typeName","exa.codeium_common_pb.Completion"),p(Ee,"fields",E.util.newFieldList(()=>[{no:1,name:"completion_id",kind:"scalar",T:9},{no:2,name:"text",kind:"scalar",T:9},{no:3,name:"prefix",kind:"scalar",T:9},{no:4,name:"stop",kind:"scalar",T:9},{no:5,name:"score",kind:"scalar",T:1},{no:6,name:"tokens",kind:"scalar",T:4,repeated:!0},{no:7,name:"decoded_tokens",kind:"scalar",T:9,repeated:!0},{no:8,name:"probabilities",kind:"scalar",T:1,repeated:!0},{no:9,name:"adjusted_probabilities",kind:"scalar",T:1,repeated:!0},{no:10,name:"generated_length",kind:"scalar",T:4}])),Ee),Fo=(Se=class extends K{constructor(n){super();p(this,"ideName","");p(this,"ideVersion","");p(this,"extensionName","");p(this,"extensionVersion","");p(this,"apiKey","");p(this,"locale","");p(this,"sessionId","");p(this,"requestId",V.zero);p(this,"userAgent","");p(this,"url","");p(this,"authSource",an.CODEIUM);E.util.initPartial(n,this)}static fromBinary(n,r){return new Se().fromBinary(n,r)}static fromJson(n,r){return new Se().fromJson(n,r)}static fromJsonString(n,r){return new Se().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Se,n,r)}},p(Se,"runtime",E),p(Se,"typeName","exa.codeium_common_pb.Metadata"),p(Se,"fields",E.util.newFieldList(()=>[{no:1,name:"ide_name",kind:"scalar",T:9},{no:7,name:"ide_version",kind:"scalar",T:9},{no:12,name:"extension_name",kind:"scalar",T:9},{no:2,name:"extension_version",kind:"scalar",T:9},{no:3,name:"api_key",kind:"scalar",T:9},{no:4,name:"locale",kind:"scalar",T:9},{no:10,name:"session_id",kind:"scalar",T:9},{no:9,name:"request_id",kind:"scalar",T:4},{no:13,name:"user_agent",kind:"scalar",T:9},{no:14,name:"url",kind:"scalar",T:9},{no:15,name:"auth_source",kind:"enum",T:E.getEnumType(an)}])),Se),xl=(Ce=class extends K{constructor(n){super();p(this,"tabSize",V.zero);p(this,"insertSpaces",!1);E.util.initPartial(n,this)}static fromBinary(n,r){return new Ce().fromBinary(n,r)}static fromJson(n,r){return new Ce().fromJson(n,r)}static fromJsonString(n,r){return new Ce().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Ce,n,r)}},p(Ce,"runtime",E),p(Ce,"typeName","exa.codeium_common_pb.EditorOptions"),p(Ce,"fields",E.util.newFieldList(()=>[{no:1,name:"tab_size",kind:"scalar",T:4},{no:2,name:"insert_spaces",kind:"scalar",T:8}])),Ce);xe=class extends K{constructor(n){super();p(this,"eventType",sn.UNSPECIFIED);p(this,"eventJson","");p(this,"timestampUnixMs",V.zero);E.util.initPartial(n,this)}static fromBinary(n,r){return new xe().fromBinary(n,r)}static fromJson(n,r){return new xe().fromJson(n,r)}static fromJsonString(n,r){return new xe().fromJsonString(n,r)}static equals(n,r){return E.util.equals(xe,n,r)}},p(xe,"runtime",E),p(xe,"typeName","exa.codeium_common_pb.Event"),p(xe,"fields",E.util.newFieldList(()=>[{no:1,name:"event_type",kind:"enum",T:E.getEnumType(sn)},{no:2,name:"event_json",kind:"scalar",T:9},{no:3,name:"timestamp_unix_ms",kind:"scalar",T:3}]));var Il=class extends Pn{constructor(t,n){super();p(this,"index");p(this,"total");this.index=t,this.total=n}toDOM(){let t=document.createElement("span");t.setAttribute("aria-hidden","true"),t.className="cm-codeium-cycle";let n=t.appendChild(document.createElement("span"));n.className="cm-codeium-cycle-explanation",n.innerText=`${this.index+1}/${this.total}`;let r=t.appendChild(document.createElement("button"));return r.className="cm-codeium-cycle-key",r.innerText="\u2192 (Ctrl ])",r.dataset.action="codeium-cycle",t}ignoreEvent(){return!1}};const cn=Rt.define({combine(e){return jn(e,{language:it.TYPESCRIPT,timeout:150,widgetClass:Il,alwaysOn:!0},{})}}),Mo=Rt.define({combine(e){return jn(e,{override:()=>[]},{})}});var kl=$.mark({class:"cm-ghostText"});const st=ze.define({create(e){return null},update(e,t){var r;let n=t.state.facet(cn);for(let o of t.effects){if(o.is(zn)){let{changeSpecs:a,index:i}=o.value,s=a[i].map(l=>kl.range(l.absoluteStartPos,l.absoluteEndPos)),c=(r=s.at(-1))==null?void 0:r.to;return{index:i,decorations:$.set([...s,...c!==void 0&&a.length>1&&n.widgetClass?[$.widget({widget:new n.widgetClass(i,a.length),side:1}).range(c)]:[]]),changeSpecs:a,reverseChangeSet:o.value.reverseChangeSet}}if(o.is(Kn)||o.is(Yn))return null}return e&&{...e,decorations:e.decorations.map(t.changes),reverseChangeSet:e.reverseChangeSet.map(t.changes)}},provide:e=>J.decorations.from(e,t=>(t==null?void 0:t.decorations)||$.none)}),pt=jr.define(),un=jr.define();var R;(function(e){e[e.Canceled=1]="Canceled",e[e.Unknown=2]="Unknown",e[e.InvalidArgument=3]="InvalidArgument",e[e.DeadlineExceeded=4]="DeadlineExceeded",e[e.NotFound=5]="NotFound",e[e.AlreadyExists=6]="AlreadyExists",e[e.PermissionDenied=7]="PermissionDenied",e[e.ResourceExhausted=8]="ResourceExhausted",e[e.FailedPrecondition=9]="FailedPrecondition",e[e.Aborted=10]="Aborted",e[e.OutOfRange=11]="OutOfRange",e[e.Unimplemented=12]="Unimplemented",e[e.Internal=13]="Internal",e[e.Unavailable=14]="Unavailable",e[e.DataLoss=15]="DataLoss",e[e.Unauthenticated=16]="Unauthenticated"})(R||(R={}));function rr(e){let t=R[e];return typeof t=="string"?t[0].toLowerCase()+t.substring(1).replace(/[A-Z]/g,n=>"_"+n.toLowerCase()):e.toString()}var dn;function Tl(e){if(!dn){dn={};for(let t of Object.values(R))typeof t!="string"&&(dn[rr(t)]=t)}return dn[e]}var he=class Ct extends Error{constructor(t,n=R.Unknown,r,o,a){super(Nl(t,n)),this.name="ConnectError",Object.setPrototypeOf(this,new.target.prototype),this.rawMessage=t,this.code=n,this.metadata=new Headers(r??{}),this.details=o??[],this.cause=a}static from(t,n=R.Unknown){return t instanceof Ct?t:t instanceof Error?t.name=="AbortError"?new Ct(t.message,R.Canceled):new Ct(t.message,n,void 0,void 0,t):new Ct(String(t),n,void 0,void 0,t)}static[Symbol.hasInstance](t){return t instanceof Error?Object.getPrototypeOf(t)===Ct.prototype?!0:t.name==="ConnectError"&&"code"in t&&typeof t.code=="number"&&"metadata"in t&&"details"in t&&Array.isArray(t.details)&&"rawMessage"in t&&typeof t.rawMessage=="string"&&"cause"in t:!1}findDetails(t){let n="typeName"in t?{findMessage:o=>o===t.typeName?t:void 0}:t,r=[];for(let o of this.details){if("getType"in o){n.findMessage(o.getType().typeName)&&r.push(o);continue}let a=n.findMessage(o.type);if(a)try{r.push(a.fromBinary(o.value))}catch{}}return r}};function Nl(e,t){return e.length?`[${rr(t)}] ${e}`:`[${rr(t)}]`}function Al(...e){let t=new Headers;for(let n of e)n.forEach((r,o)=>{t.append(o,r)});return t}function Ll(e,t){let n={};for(let[r,o]of Object.entries(e.methods)){let a=t(Object.assign(Object.assign({},o),{localName:r,service:e}));a!=null&&(n[r]=a)}return n}function Ol(e){let t,n=new Uint8Array;function r(o){let a=new Uint8Array(n.length+o.length);a.set(n),a.set(o,n.length),n=a}return new ReadableStream({start(){t=e.getReader()},async pull(o){let a;for(;;){if(a===void 0&&n.byteLength>=5){let c=0;for(let l=1;l<5;l++)c=(c<<8)+n[l];a={flags:n[0],length:c}}if(a!==void 0&&n.byteLength>=a.length+5)break;let s=await t.read();if(s.done)break;r(s.value)}if(a===void 0){if(n.byteLength==0){o.close();return}o.error(new he("premature end of stream",R.DataLoss));return}let i=n.subarray(5,5+a.length);n=n.subarray(5+a.length),o.enqueue({flags:a.flags,data:i})}})}function _l(e,t){let n=new Uint8Array(t.length+5);n.set(t,5);let r=new DataView(n.buffer,n.byteOffset,n.byteLength);return r.setUint8(0,e),r.setUint32(1,t.length),n}var Ul=function(e){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof __values=="function"?__values(e):e[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(a){n[a]=e[a]&&function(i){return new Promise(function(s,c){i=e[a](i),o(s,c,i.done,i.value)})}}function o(a,i,s,c){Promise.resolve(c).then(function(l){a({value:l,done:s})},i)}},Ot=function(e){return this instanceof Ot?(this.v=e,this):new Ot(e)},Pl=function(e,t,n){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),o,a=[];return o={},s("next"),s("throw"),s("return",i),o[Symbol.asyncIterator]=function(){return this},o;function i(f){return function(h){return Promise.resolve(h).then(f,d)}}function s(f,h){r[f]&&(o[f]=function(y){return new Promise(function(b,v){a.push([f,y,b,v])>1||c(f,y)})},h&&(o[f]=h(o[f])))}function c(f,h){try{l(r[f](h))}catch(y){m(a[0][3],y)}}function l(f){f.value instanceof Ot?Promise.resolve(f.value.v).then(u,d):m(a[0][2],f)}function u(f){c("next",f)}function d(f){c("throw",f)}function m(f,h){f(h),a.shift(),a.length&&c(a[0][0],a[0][1])}},jl=function(e){var t,n;return t={},r("next"),r("throw",function(o){throw o}),r("return"),t[Symbol.iterator]=function(){return this},t;function r(o,a){t[o]=e[o]?function(i){return(n=!n)?{value:Ot(e[o](i)),done:!1}:a?a(i):i}:a}};function Dl(e){return Pl(this,arguments,function*(){yield Ot(yield*jl(Ul(e)))})}var Ro=function(e){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof __values=="function"?__values(e):e[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(a){n[a]=e[a]&&function(i){return new Promise(function(s,c){i=e[a](i),o(s,c,i.done,i.value)})}}function o(a,i,s,c){Promise.resolve(c).then(function(l){a({value:l,done:s})},i)}},ht=function(e){return this instanceof ht?(this.v=e,this):new ht(e)},Fl=function(e){var t,n;return t={},r("next"),r("throw",function(o){throw o}),r("return"),t[Symbol.iterator]=function(){return this},t;function r(o,a){t[o]=e[o]?function(i){return(n=!n)?{value:ht(e[o](i)),done:!1}:a?a(i):i}:a}},Ml=function(e,t,n){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),o,a=[];return o={},s("next"),s("throw"),s("return",i),o[Symbol.asyncIterator]=function(){return this},o;function i(f){return function(h){return Promise.resolve(h).then(f,d)}}function s(f,h){r[f]&&(o[f]=function(y){return new Promise(function(b,v){a.push([f,y,b,v])>1||c(f,y)})},h&&(o[f]=h(o[f])))}function c(f,h){try{l(r[f](h))}catch(y){m(a[0][3],y)}}function l(f){f.value instanceof ht?Promise.resolve(f.value.v).then(u,d):m(a[0][2],f)}function u(f){c("next",f)}function d(f){c("throw",f)}function m(f,h){f(h),a.shift(),a.length&&c(a[0][0],a[0][1])}};function Rl(e,t){return Ll(e,n=>{switch(n.kind){case ve.Unary:return Gl(t,e,n);case ve.ServerStreaming:return Jl(t,e,n);case ve.ClientStreaming:return Vl(t,e,n);case ve.BiDiStreaming:return $l(t,e,n);default:return null}})}function Bl(e,t){return Rl(e,t)}function Gl(e,t,n){return async function(r,o){var a,i;let s=await e.unary(t,n,o==null?void 0:o.signal,o==null?void 0:o.timeoutMs,o==null?void 0:o.headers,r,o==null?void 0:o.contextValues);return(a=o==null?void 0:o.onHeader)==null||a.call(o,s.header),(i=o==null?void 0:o.onTrailer)==null||i.call(o,s.trailer),s.message}}function Jl(e,t,n){return function(r,o){return Bo(e.stream(t,n,o==null?void 0:o.signal,o==null?void 0:o.timeoutMs,o==null?void 0:o.headers,Dl([r]),o==null?void 0:o.contextValues),o)}}function Vl(e,t,n){return async function(r,o){var a,i,s,c,l,u;let d=await e.stream(t,n,o==null?void 0:o.signal,o==null?void 0:o.timeoutMs,o==null?void 0:o.headers,r,o==null?void 0:o.contextValues);(l=o==null?void 0:o.onHeader)==null||l.call(o,d.header);let m,f=0;try{for(var h=!0,y=Ro(d.message),b;b=await y.next(),a=b.done,!a;h=!0)c=b.value,h=!1,m=c,f++}catch(v){i={error:v}}finally{try{!h&&!a&&(s=y.return)&&await s.call(y)}finally{if(i)throw i.error}}if(!m)throw new he("protocol error: missing response message",R.Unimplemented);if(f>1)throw new he("protocol error: received extra messages for client streaming method",R.Unimplemented);return(u=o==null?void 0:o.onTrailer)==null||u.call(o,d.trailer),m}}function $l(e,t,n){return function(r,o){return Bo(e.stream(t,n,o==null?void 0:o.signal,o==null?void 0:o.timeoutMs,o==null?void 0:o.headers,r,o==null?void 0:o.contextValues),o)}}function Bo(e,t){let n=(function(){return Ml(this,arguments,function*(){var r,o;let a=yield ht(e);(r=t==null?void 0:t.onHeader)==null||r.call(t,a.header),yield ht(yield*Fl(Ro(a.message))),(o=t==null?void 0:t.onTrailer)==null||o.call(t,a.trailer)})})()[Symbol.asyncIterator]();return{[Symbol.asyncIterator]:()=>({next:()=>n.next()})}}function Wl(...e){let t=new AbortController,n=e.filter(o=>o!==void 0).concat(t.signal);for(let o of n){if(o.aborted){r.apply(o);break}o.addEventListener("abort",r)}function r(){t.signal.aborted||t.abort(Go(this));for(let o of n)o.removeEventListener("abort",r)}return t}function ql(e){let t=new AbortController,n=()=>{t.abort(new he("the operation timed out",R.DeadlineExceeded))},r;return e!==void 0&&(e<=0?n():r=setTimeout(n,e)),{signal:t.signal,cleanup:()=>clearTimeout(r)}}function Go(e){if(!e.aborted)return;if(e.reason!==void 0)return e.reason;let t=Error("This operation was aborted");return t.name="AbortError",t}function Jo(){return{get(e){return e.id in this?this[e.id]:e.defaultValue},set(e,t){return this[e.id]=t,this},delete(e){return delete this[e.id],this}}}function Vo(e,t,n){let r=typeof t=="string"?t:t.typeName,o=typeof n=="string"?n:n.name;return e.toString().replace(/\/?$/,`/${r}/${o}`)}function $o(e,t){return t instanceof e?t:new e(t)}function Hl(e,t){function n(r){return r.done===!0?r:{done:r.done,value:$o(e,r.value)}}return{[Symbol.asyncIterator](){let r=t[Symbol.asyncIterator](),o={next:()=>r.next().then(n)};return r.throw!==void 0&&(o.throw=a=>r.throw(a).then(n)),r.return!==void 0&&(o.return=a=>r.return(a).then(n)),o}}}function Wo(e,t){return(t==null?void 0:t.concat().reverse().reduce((n,r)=>r(n),e))??e}function qo(e){let t=Object.assign({},e);return t.ignoreUnknownFields??(t.ignoreUnknownFields=!0),t}function Ho(e,t,n,r){let o=t?zo(e.I,r):Ko(e.I,n);return{parse:(t?zo(e.O,r):Ko(e.O,n)).parse,serialize:o.serialize}}function zo(e,t){return{parse(n){try{return e.fromBinary(n,t)}catch(r){throw new he(`parse binary: ${r instanceof Error?r.message:String(r)}`,R.Internal)}},serialize(n){try{return n.toBinary(t)}catch(r){throw new he(`serialize binary: ${r instanceof Error?r.message:String(r)}`,R.Internal)}}}}function Ko(e,t){let n=(t==null?void 0:t.textEncoder)??new TextEncoder,r=(t==null?void 0:t.textDecoder)??new TextDecoder,o=qo(t);return{parse(a){try{let i=r.decode(a);return e.fromJsonString(i,o)}catch(i){throw he.from(i,R.InvalidArgument)}},serialize(a){try{let i=a.toJsonString(o);return n.encode(i)}catch(i){throw he.from(i,R.Internal)}}}}const zl=/^application\/(connect\+)?(?:(json)(?:; ?charset=utf-?8)?|(proto))$/i;function Kl(e){let t=e==null?void 0:e.match(zl);if(t)return{stream:!!t[1],binary:!!t[3]}}function Yo(e,t,n){if(t&&new Headers(t).forEach((i,s)=>n.metadata.append(s,i)),typeof e!="object"||!e||Array.isArray(e))throw n;let r=n.code;"code"in e&&typeof e.code=="string"&&(r=Tl(e.code)??r);let o=e.message;if(o!=null&&typeof o!="string")throw n;let a=new he(o??"",r,t);if("details"in e&&Array.isArray(e.details))for(let i of e.details){if(typeof i!="object"||!i||Array.isArray(i)||typeof i.type!="string"||typeof i.value!="string")throw n;try{a.details.push({type:i.type,value:Qt.dec(i.value),debug:i.debug})}catch{throw n}}return a}function Yl(e){let t=new he("invalid end stream",R.Unknown),n;try{n=JSON.parse(typeof e=="string"?e:new TextDecoder().decode(e))}catch{throw t}if(typeof n!="object"||!n||Array.isArray(n))throw t;let r=new Headers;if("metadata"in n){if(typeof n.metadata!="object"||n.metadata==null||Array.isArray(n.metadata))throw t;for(let[o,a]of Object.entries(n.metadata)){if(!Array.isArray(a)||a.some(i=>typeof i!="string"))throw t;for(let i of a)r.append(o,i)}}return{metadata:r,error:"error"in n&&n.error!=null?Yo(n.error,r,t):void 0}}const fn="Content-Type",Xo="Content-Encoding",Qo="Connect-Protocol-Version";function Xl(e){switch(e){case 400:return R.Internal;case 401:return R.Unauthenticated;case 403:return R.PermissionDenied;case 404:return R.Unimplemented;case 429:return R.Unavailable;case 502:return R.Unavailable;case 503:return R.Unavailable;case 504:return R.Unavailable;default:return R.Unknown}}function Zo(e){let t=new Headers,n=new Headers;return e.forEach((r,o)=>{o.toLowerCase().startsWith("trailer-")?n.append(o.substring(8),r):t.append(o,r)}),[t,n]}function ea(e,t,n,r,o){let a=new Headers(r??{});return n!==void 0&&a.set("Connect-Timeout-Ms",`${n}`),a.set(fn,e==ve.Unary?t?"application/proto":"application/json":t?"application/connect+proto":"application/connect+json"),a.set(Qo,"1"),o&&a.set("User-Agent","connect-es/1.6.1"),a}function ta(e,t,n,r){let o=r.get(fn),a=Kl(o);if(n!==200){let s=new he(`HTTP ${n}`,Xl(n),r);if(e==ve.Unary&&a&&!a.binary)return{isUnaryError:!0,unaryError:s};throw s}let i={binary:t,stream:e!==ve.Unary};if((a==null?void 0:a.binary)!==i.binary||a.stream!==i.stream)throw new he(`unsupported content type ${o}`,a===void 0?R.Unknown:R.Internal,r);return{isUnaryError:!1}}var Ql="application/";function Zl(e,t){return t?Qt.enc(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""):encodeURIComponent(new TextDecoder().decode(e))}function ec(e,t,n){let r="?connect=v1",o=e.header.get(fn);(o==null?void 0:o.indexOf(Ql))===0&&(r+="&encoding="+encodeURIComponent(o.slice(12)));let a=e.header.get(Xo);a!==null&&a!=="identity"&&(r+="&compression="+encodeURIComponent(a),n=!0),n&&(r+="&base64=1"),r+="&message="+Zl(t,n);let i=e.url+r,s=new Headers(e.header);return[Qo,fn,"Content-Length",Xo,"Accept-Encoding"].forEach(c=>s.delete(c)),Object.assign(Object.assign({},e),{init:Object.assign(Object.assign({},e.init),{method:"GET"}),url:i,header:s})}function tc(e){let t=Wo(e.next,e.interceptors),[n,r,o]=na(e);return t(Object.assign(Object.assign({},e.req),{message:$o(e.req.method.I,e.req.message),signal:n})).then(a=>(o(),a),r)}function nc(e){let t=Wo(e.next,e.interceptors),[n,r,o]=na(e),a=Object.assign(Object.assign({},e.req),{message:Hl(e.req.method.I,e.req.message),signal:n}),i=!1;return n.addEventListener("abort",function(){var s,c;let l=e.req.message[Symbol.asyncIterator]();i||(s=l.throw)==null||s.call(l,this.reason).catch(()=>{}),(c=l.return)==null||c.call(l).catch(()=>{})}),t(a).then(s=>Object.assign(Object.assign({},s),{message:{[Symbol.asyncIterator](){let c=s.message[Symbol.asyncIterator]();return{next(){return c.next().then(l=>(l.done==1&&(i=!0,o()),l),r)}}}}}),r)}function na(e){let{signal:t,cleanup:n}=ql(e.timeoutMs),r=Wl(e.signal,t);return[r.signal,function(o){let a=he.from(t.aborted?Go(t):o);return r.abort(a),n(),Promise.reject(a)},function(){n(),r.abort()}]}var mn;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.INACTIVE=1]="INACTIVE",e[e.PROCESSING=2]="PROCESSING",e[e.SUCCESS=3]="SUCCESS",e[e.WARNING=4]="WARNING",e[e.ERROR=5]="ERROR"})(mn||(mn={})),E.util.setEnumType(mn,"exa.language_server_pb.CodeiumState",[{no:0,name:"CODEIUM_STATE_UNSPECIFIED"},{no:1,name:"CODEIUM_STATE_INACTIVE"},{no:2,name:"CODEIUM_STATE_PROCESSING"},{no:3,name:"CODEIUM_STATE_SUCCESS"},{no:4,name:"CODEIUM_STATE_WARNING"},{no:5,name:"CODEIUM_STATE_ERROR"}]);var ra;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.SINGLE=1]="SINGLE",e[e.MULTI=2]="MULTI"})(ra||(ra={})),E.util.setEnumType(ra,"exa.language_server_pb.LineType",[{no:0,name:"LINE_TYPE_UNSPECIFIED"},{no:1,name:"LINE_TYPE_SINGLE"},{no:2,name:"LINE_TYPE_MULTI"}]);var pn;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.INLINE=1]="INLINE",e[e.BLOCK=2]="BLOCK",e[e.INLINE_MASK=3]="INLINE_MASK"})(pn||(pn={})),E.util.setEnumType(pn,"exa.language_server_pb.CompletionPartType",[{no:0,name:"COMPLETION_PART_TYPE_UNSPECIFIED"},{no:1,name:"COMPLETION_PART_TYPE_INLINE"},{no:2,name:"COMPLETION_PART_TYPE_BLOCK"},{no:3,name:"COMPLETION_PART_TYPE_INLINE_MASK"}]);var rc=(Ie=class extends K{constructor(n){super();p(this,"threshold",0);E.util.initPartial(n,this)}static fromBinary(n,r){return new Ie().fromBinary(n,r)}static fromJson(n,r){return new Ie().fromJson(n,r)}static fromJsonString(n,r){return new Ie().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Ie,n,r)}},p(Ie,"runtime",E),p(Ie,"typeName","exa.language_server_pb.MultilineConfig"),p(Ie,"fields",E.util.newFieldList(()=>[{no:1,name:"threshold",kind:"scalar",T:2}])),Ie),oc=(ke=class extends K{constructor(n){super();p(this,"metadata");p(this,"document");p(this,"editorOptions");p(this,"otherDocuments",[]);p(this,"experimentConfig");p(this,"modelName","");p(this,"multilineConfig");E.util.initPartial(n,this)}static fromBinary(n,r){return new ke().fromBinary(n,r)}static fromJson(n,r){return new ke().fromJson(n,r)}static fromJsonString(n,r){return new ke().fromJsonString(n,r)}static equals(n,r){return E.util.equals(ke,n,r)}},p(ke,"runtime",E),p(ke,"typeName","exa.language_server_pb.GetCompletionsRequest"),p(ke,"fields",E.util.newFieldList(()=>[{no:1,name:"metadata",kind:"message",T:Fo},{no:2,name:"document",kind:"message",T:oa},{no:3,name:"editor_options",kind:"message",T:xl},{no:5,name:"other_documents",kind:"message",T:oa,repeated:!0},{no:7,name:"experiment_config",kind:"message",T:uc},{no:10,name:"model_name",kind:"scalar",T:9},{no:13,name:"multiline_config",kind:"message",T:rc}])),ke),ac=(Te=class extends K{constructor(n){super();p(this,"state");p(this,"completionItems",[]);E.util.initPartial(n,this)}static fromBinary(n,r){return new Te().fromBinary(n,r)}static fromJson(n,r){return new Te().fromJson(n,r)}static fromJsonString(n,r){return new Te().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Te,n,r)}},p(Te,"runtime",E),p(Te,"typeName","exa.language_server_pb.GetCompletionsResponse"),p(Te,"fields",E.util.newFieldList(()=>[{no:1,name:"state",kind:"message",T:dc},{no:2,name:"completion_items",kind:"message",T:hc,repeated:!0}])),Te),ic=(Ne=class extends K{constructor(n){super();p(this,"metadata");p(this,"completionId","");E.util.initPartial(n,this)}static fromBinary(n,r){return new Ne().fromBinary(n,r)}static fromJson(n,r){return new Ne().fromJson(n,r)}static fromJsonString(n,r){return new Ne().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Ne,n,r)}},p(Ne,"runtime",E),p(Ne,"typeName","exa.language_server_pb.AcceptCompletionRequest"),p(Ne,"fields",E.util.newFieldList(()=>[{no:1,name:"metadata",kind:"message",T:Fo},{no:2,name:"completion_id",kind:"scalar",T:9}])),Ne),sc=(Ae=class extends K{constructor(t){super(),E.util.initPartial(t,this)}static fromBinary(t,n){return new Ae().fromBinary(t,n)}static fromJson(t,n){return new Ae().fromJson(t,n)}static fromJsonString(t,n){return new Ae().fromJsonString(t,n)}static equals(t,n){return E.util.equals(Ae,t,n)}},p(Ae,"runtime",E),p(Ae,"typeName","exa.language_server_pb.AcceptCompletionResponse"),p(Ae,"fields",E.util.newFieldList(()=>[])),Ae),lc=(Le=class extends K{constructor(t){super(),E.util.initPartial(t,this)}static fromBinary(t,n){return new Le().fromBinary(t,n)}static fromJson(t,n){return new Le().fromJson(t,n)}static fromJsonString(t,n){return new Le().fromJsonString(t,n)}static equals(t,n){return E.util.equals(Le,t,n)}},p(Le,"runtime",E),p(Le,"typeName","exa.language_server_pb.GetAuthTokenRequest"),p(Le,"fields",E.util.newFieldList(()=>[])),Le),cc=(Oe=class extends K{constructor(n){super();p(this,"authToken","");p(this,"uuid","");E.util.initPartial(n,this)}static fromBinary(n,r){return new Oe().fromBinary(n,r)}static fromJson(n,r){return new Oe().fromJson(n,r)}static fromJsonString(n,r){return new Oe().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Oe,n,r)}},p(Oe,"runtime",E),p(Oe,"typeName","exa.language_server_pb.GetAuthTokenResponse"),p(Oe,"fields",E.util.newFieldList(()=>[{no:1,name:"auth_token",kind:"scalar",T:9},{no:2,name:"uuid",kind:"scalar",T:9}])),Oe),or=(_e=class extends K{constructor(n){super();p(this,"row",V.zero);p(this,"col",V.zero);E.util.initPartial(n,this)}static fromBinary(n,r){return new _e().fromBinary(n,r)}static fromJson(n,r){return new _e().fromJson(n,r)}static fromJsonString(n,r){return new _e().fromJsonString(n,r)}static equals(n,r){return E.util.equals(_e,n,r)}},p(_e,"runtime",E),p(_e,"typeName","exa.language_server_pb.DocumentPosition"),p(_e,"fields",E.util.newFieldList(()=>[{no:1,name:"row",kind:"scalar",T:4},{no:2,name:"col",kind:"scalar",T:4}])),_e),oa=(Ue=class extends K{constructor(n){super();p(this,"absolutePath","");p(this,"relativePath","");p(this,"text","");p(this,"editorLanguage","");p(this,"language",it.UNSPECIFIED);p(this,"cursorOffset",V.zero);p(this,"cursorPosition");p(this,"lineEnding","");E.util.initPartial(n,this)}static fromBinary(n,r){return new Ue().fromBinary(n,r)}static fromJson(n,r){return new Ue().fromJson(n,r)}static fromJsonString(n,r){return new Ue().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Ue,n,r)}},p(Ue,"runtime",E),p(Ue,"typeName","exa.language_server_pb.Document"),p(Ue,"fields",E.util.newFieldList(()=>[{no:1,name:"absolute_path",kind:"scalar",T:9},{no:2,name:"relative_path",kind:"scalar",T:9},{no:3,name:"text",kind:"scalar",T:9},{no:4,name:"editor_language",kind:"scalar",T:9},{no:5,name:"language",kind:"enum",T:E.getEnumType(it)},{no:6,name:"cursor_offset",kind:"scalar",T:4},{no:8,name:"cursor_position",kind:"message",T:or},{no:7,name:"line_ending",kind:"scalar",T:9}])),Ue),uc=(Pe=class extends K{constructor(n){super();p(this,"forceEnableExperiments",[]);E.util.initPartial(n,this)}static fromBinary(n,r){return new Pe().fromBinary(n,r)}static fromJson(n,r){return new Pe().fromJson(n,r)}static fromJsonString(n,r){return new Pe().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Pe,n,r)}},p(Pe,"runtime",E),p(Pe,"typeName","exa.language_server_pb.ExperimentConfig"),p(Pe,"fields",E.util.newFieldList(()=>[{no:1,name:"force_enable_experiments",kind:"enum",T:E.getEnumType(nr),repeated:!0}])),Pe),dc=(je=class extends K{constructor(n){super();p(this,"state",mn.UNSPECIFIED);p(this,"message","");E.util.initPartial(n,this)}static fromBinary(n,r){return new je().fromBinary(n,r)}static fromJson(n,r){return new je().fromJson(n,r)}static fromJsonString(n,r){return new je().fromJsonString(n,r)}static equals(n,r){return E.util.equals(je,n,r)}},p(je,"runtime",E),p(je,"typeName","exa.language_server_pb.State"),p(je,"fields",E.util.newFieldList(()=>[{no:1,name:"state",kind:"enum",T:E.getEnumType(mn)},{no:2,name:"message",kind:"scalar",T:9}])),je),fc=(De=class extends K{constructor(n){super();p(this,"startOffset",V.zero);p(this,"endOffset",V.zero);p(this,"startPosition");p(this,"endPosition");E.util.initPartial(n,this)}static fromBinary(n,r){return new De().fromBinary(n,r)}static fromJson(n,r){return new De().fromJson(n,r)}static fromJsonString(n,r){return new De().fromJsonString(n,r)}static equals(n,r){return E.util.equals(De,n,r)}},p(De,"runtime",E),p(De,"typeName","exa.language_server_pb.Range"),p(De,"fields",E.util.newFieldList(()=>[{no:1,name:"start_offset",kind:"scalar",T:4},{no:2,name:"end_offset",kind:"scalar",T:4},{no:3,name:"start_position",kind:"message",T:or},{no:4,name:"end_position",kind:"message",T:or}])),De),mc=(Fe=class extends K{constructor(n){super();p(this,"text","");p(this,"deltaCursorOffset",V.zero);E.util.initPartial(n,this)}static fromBinary(n,r){return new Fe().fromBinary(n,r)}static fromJson(n,r){return new Fe().fromJson(n,r)}static fromJsonString(n,r){return new Fe().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Fe,n,r)}},p(Fe,"runtime",E),p(Fe,"typeName","exa.language_server_pb.Suffix"),p(Fe,"fields",E.util.newFieldList(()=>[{no:1,name:"text",kind:"scalar",T:9},{no:2,name:"delta_cursor_offset",kind:"scalar",T:3}])),Fe),pc=(Me=class extends K{constructor(n){super();p(this,"text","");p(this,"offset",V.zero);p(this,"type",pn.UNSPECIFIED);p(this,"prefix","");p(this,"line",V.zero);E.util.initPartial(n,this)}static fromBinary(n,r){return new Me().fromBinary(n,r)}static fromJson(n,r){return new Me().fromJson(n,r)}static fromJsonString(n,r){return new Me().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Me,n,r)}},p(Me,"runtime",E),p(Me,"typeName","exa.language_server_pb.CompletionPart"),p(Me,"fields",E.util.newFieldList(()=>[{no:1,name:"text",kind:"scalar",T:9},{no:2,name:"offset",kind:"scalar",T:4},{no:3,name:"type",kind:"enum",T:E.getEnumType(pn)},{no:4,name:"prefix",kind:"scalar",T:9},{no:5,name:"line",kind:"scalar",T:4}])),Me),hc=(Re=class extends K{constructor(n){super();p(this,"completion");p(this,"suffix");p(this,"range");p(this,"source",ln.UNSPECIFIED);p(this,"completionParts",[]);E.util.initPartial(n,this)}static fromBinary(n,r){return new Re().fromBinary(n,r)}static fromJson(n,r){return new Re().fromJson(n,r)}static fromJsonString(n,r){return new Re().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Re,n,r)}},p(Re,"runtime",E),p(Re,"typeName","exa.language_server_pb.CompletionItem"),p(Re,"fields",E.util.newFieldList(()=>[{no:1,name:"completion",kind:"message",T:Cl},{no:5,name:"suffix",kind:"message",T:mc},{no:2,name:"range",kind:"message",T:fc},{no:3,name:"source",kind:"enum",T:E.getEnumType(ln)},{no:8,name:"completion_parts",kind:"message",T:pc,repeated:!0}])),Re);const gc={typeName:"exa.language_server_pb.LanguageServerService",methods:{getCompletions:{name:"GetCompletions",I:oc,O:ac,kind:ve.Unary},acceptCompletion:{name:"AcceptCompletion",I:ic,O:sc,kind:ve.Unary},getAuthToken:{name:"GetAuthToken",I:lc,O:cc,kind:ve.Unary}}};function yc(){try{new Headers}catch{throw Error("connect-web requires the fetch API. Are you running on an old version of Node.js? Node.js is not supported in Connect for Web - please stay tuned for Connect for Node.")}}var _t=function(e){return this instanceof _t?(this.v=e,this):new _t(e)},bc=function(e,t,n){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),o,a=[];return o={},s("next"),s("throw"),s("return",i),o[Symbol.asyncIterator]=function(){return this},o;function i(f){return function(h){return Promise.resolve(h).then(f,d)}}function s(f,h){r[f]&&(o[f]=function(y){return new Promise(function(b,v){a.push([f,y,b,v])>1||c(f,y)})},h&&(o[f]=h(o[f])))}function c(f,h){try{l(r[f](h))}catch(y){m(a[0][3],y)}}function l(f){f.value instanceof _t?Promise.resolve(f.value.v).then(u,d):m(a[0][2],f)}function u(f){c("next",f)}function d(f){c("throw",f)}function m(f,h){f(h),a.shift(),a.length&&c(a[0][0],a[0][1])}};function wc(e){yc();let t=e.useBinaryFormat??!1;return{async unary(n,r,o,a,i,s,c){let{serialize:l,parse:u}=Ho(r,t,e.jsonOptions,e.binaryOptions);return a=a===void 0?e.defaultTimeoutMs:a<=0?void 0:a,await tc({interceptors:e.interceptors,signal:o,timeoutMs:a,req:{stream:!1,service:n,method:r,url:Vo(e.baseUrl,n,r),init:{method:"POST",credentials:e.credentials??"same-origin",redirect:"error",mode:"cors"},header:ea(r.kind,t,a,i,!1),contextValues:c??Jo(),message:s},next:async d=>{let m=e.useHttpGet===!0&&r.idempotency===Do.NoSideEffects,f=null;m?d=ec(d,l(d.message),t):f=l(d.message);let h=await(e.fetch??globalThis.fetch)(d.url,Object.assign(Object.assign({},d.init),{headers:d.header,signal:d.signal,body:f})),{isUnaryError:y,unaryError:b}=ta(r.kind,t,h.status,h.headers);if(y)throw Yo(await h.json(),Al(...Zo(h.headers)),b);let[v,C]=Zo(h.headers);return{stream:!1,service:n,method:r,header:v,message:t?u(new Uint8Array(await h.arrayBuffer())):r.O.fromJson(await h.json(),qo(e.jsonOptions)),trailer:C}}})},async stream(n,r,o,a,i,s,c){let{serialize:l,parse:u}=Ho(r,t,e.jsonOptions,e.binaryOptions);function d(f,h,y,b){return bc(this,arguments,function*(){let v=Ol(f).getReader(),C=!1;for(;;){let x=yield _t(v.read());if(x.done)break;let{flags:_,data:j}=x.value;if((_&1)==1)throw new he("protocol error: received unsupported compressed output",R.Internal);if((_&2)==2){C=!0;let A=Yl(j);if(A.error){let k=A.error;throw y.forEach((B,F)=>{k.metadata.append(F,B)}),k}A.metadata.forEach((k,B)=>h.set(B,k));continue}yield yield _t(u(j))}if("throwIfAborted"in b&&b.throwIfAborted(),!C)throw"missing EndStreamResponse"})}async function m(f){if(r.kind!=ve.ServerStreaming)throw"The fetch API does not support streaming request bodies";let h=await f[Symbol.asyncIterator]().next();if(h.done==1)throw"missing request message";return _l(0,l(h.value))}return a=a===void 0?e.defaultTimeoutMs:a<=0?void 0:a,await nc({interceptors:e.interceptors,timeoutMs:a,signal:o,req:{stream:!0,service:n,method:r,url:Vo(e.baseUrl,n,r),init:{method:"POST",credentials:e.credentials??"same-origin",redirect:"error",mode:"cors"},header:ea(r.kind,t,a,i,!1),contextValues:c??Jo(),message:s},next:async f=>{let h=await(e.fetch??globalThis.fetch)(f.url,Object.assign(Object.assign({},f.init),{headers:f.header,signal:f.signal,body:await m(f.message)}));if(ta(r.kind,t,h.status,h.headers),h.body===null)throw"missing response body";let y=new Headers;return Object.assign(Object.assign({},f),{header:h.headers,trailer:y,message:d(h.body,y,h.headers,f.signal)})}})}}}var vc=Bl(gc,wc({baseUrl:"https://web-backend.codeium.com",useBinaryFormat:!0})),hn;try{hn=crypto.randomUUID()}catch{hn=function(){return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,t=>(t^(crypto.getRandomValues(new Uint8Array(1))[0]??0)&15>>t/4).toString(16))}()}async function Ec({text:e,cursorOffset:t,config:n,otherDocuments:r}){return await vc.getCompletions({metadata:{ideName:"web",ideVersion:"0.0.5",extensionName:"@valtown/codemirror-codeium",extensionVersion:"1.0.0",apiKey:n.apiKey,sessionId:hn,authSource:n.authSource},document:{text:e,cursorOffset:BigInt(t),language:n.language,editorLanguage:"typescript",lineEnding:`
|
|
12
|
+
`.trim(),n=wi();await bi();let r=await fetch(n.getAiURL("completion").toString(),{method:"POST",headers:n.headers(),body:JSON.stringify({prompt:e.prompt,code:t,selectedText:e.selection,includeOtherCode:"",language:e.language})}),o=((i=e.selection.match(/^\s*/))==null?void 0:i[0])||"",a=await Ns(r);return a.startsWith(o)||(a=o+a),a}var g=Ya(Wf(),1),Ls=["%alias","%cd","%clear","%debug","%env","%load","%load_ext","%lsmagic","%matplotlib","%pwd","%who_ls","%system","%%time","%%timeit","%%writefile","%%capture","%%html","%%latex"],Hn;function Os(){let e=async r=>{let o=Y.get(_r),{saveUserConfig:a}=Dm();await a({config:{runtime:{auto_reload:r}}}).then(()=>Y.set(_r,{...o,runtime:{...o.runtime,auto_reload:r}}))},t=[{match:"!pip install",onMatch:()=>{Y.set(Tr,r=>({...r,isSidebarOpen:!0,selectedPanel:"packages"})),Br()},title:"Package Installation",description:(0,g.jsxs)(g.Fragment,{children:["The package manager sidebar has been opened.",(0,g.jsx)("br",{}),"Install packages directly from there instead."]})},{match:"!uv pip install",onMatch:()=>{Y.set(Tr,r=>({...r,isSidebarOpen:!0,selectedPanel:"packages"})),Br()},title:"Package Installation",description:(0,g.jsxs)(g.Fragment,{children:["The package manager sidebar has been opened.",(0,g.jsx)("br",{}),"Install packages directly from there instead."]})},{match:"!uv add",onMatch:()=>{Y.set(Tr,r=>({...r,isSidebarOpen:!0,selectedPanel:"packages"})),Br()},title:"Package Installation",description:(0,g.jsxs)(g.Fragment,{children:["The package manager sidebar has been opened.",(0,g.jsx)("br",{}),"Install packages directly from there instead."]})},{match:"%autoreload 2",onMatch:async()=>{await e("autorun")},title:"Module reload",description:(0,g.jsxs)(g.Fragment,{children:["Module reload mode set to ",(0,g.jsx)("b",{children:"autorun"})," - module changes will re-run the cells that import them."]})},{match:"%autoreload 1",onMatch:async()=>{await e("lazy")},title:"Module reload",description:(0,g.jsxs)(g.Fragment,{children:["Module reload mode set to ",(0,g.jsx)("b",{children:"lazy"})," - module changes will mark the cells that import them as stale."]})},{match:"%autoreload 0",onMatch:async()=>{await e("off")},title:"Module reload",description:(0,g.jsx)(g.Fragment,{children:"Module reload disabled - module changes will not be detected."})},{match:"!ls",onMatch:()=>{},title:"Listing files",description:(0,g.jsxs)(g.Fragment,{children:["Shell commands are not directly supported.",(0,g.jsx)("br",{}),"Use ",(0,g.jsx)("code",{children:"import subprocess; subprocess.run(['ls'])"})," instead."]})},...Ls.map(r=>({match:r,onMatch:()=>{},title:(0,g.jsx)(dp,{className:"inline",children:r}),description:(0,g.jsxs)(g.Fragment,{children:["Magic commands are not supported in marimo. Read more about replacements in the"," ",(0,g.jsx)("a",{href:"https://docs.marimo.io/guides/coming_from/jupyter/#adapting-to-the-absence-of-magic-commands",target:"_blank",className:"text-link underline cursor-pointer",rel:"noopener noreferrer",children:"documentation"}),"."]})}))],n=new Map(t.map(r=>[r.match,r]));return J.updateListener.of(r=>{if(r.docChanged){let o=r.state.selection.main,a=r.state.doc,i=a.lineAt(o.head),s=a.sliceString(i.from,o.anchor).trim(),c=n.get(s);c&&(c.onMatch(),Hn?Hn.upsert({title:c.title,description:c.description}):Hn=vt({title:c.title,description:c.description}))}})}var oo=new Set(["Escape","Alt-`"]);function _s(e,t=oo){return e.filter(n=>![n.key,n.mac,n.linux,n.win].some(r=>t.has(r)))}function Us(e=!0){let t=new Set(oo);e||t.add("Enter");let n=_s(Am,t);return ct.highest(We.of([...n,{key:"Ctrl-y",run:r=>On(r)?Ci(r):!1},{key:"Ctrl-n",run:r=>On(r)?Pn(!0)(r):!1},{key:"Ctrl-p",run:r=>On(r)?Pn(!1)(r):!1}]))}const zn=pe.define(),Kn=pe.define(),Yn=pe.define();function q(e,t){if(!e)throw Error(t)}var js=3402823466385289e23,Ds=-3402823466385289e23,Ps=4294967295,Fs=2147483647,Ms=-2147483648;function Kt(e){if(typeof e!="number")throw Error("invalid int 32: "+typeof e);if(!Number.isInteger(e)||e>Fs||e<Ms)throw Error("invalid int 32: "+e)}function Xn(e){if(typeof e!="number")throw Error("invalid uint 32: "+typeof e);if(!Number.isInteger(e)||e>Ps||e<0)throw Error("invalid uint 32: "+e)}function ao(e){if(typeof e!="number")throw Error("invalid float 32: "+typeof e);if(Number.isFinite(e)&&(e>js||e<Ds))throw Error("invalid float 32: "+e)}var io=Symbol("@bufbuild/protobuf/enum-type");function Rs(e){let t=e[io];return q(t,"missing enum type on enum object"),t}function so(e,t,n,r){e[io]=lo(t,n.map(o=>({no:o.no,name:o.name,localName:e[o.no]})),r)}function lo(e,t,n){let r=Object.create(null),o=Object.create(null),a=[];for(let i of t){let s=co(i);a.push(s),r[i.name]=s,o[i.no]=s}return{typeName:e,values:a,findName(i){return r[i]},findNumber(i){return o[i]}}}function Bs(e,t,n){let r={};for(let o of t){let a=co(o);r[a.localName]=a.no,r[a.no]=a.localName}return so(r,e,t,n),r}function co(e){return"localName"in e?e:Object.assign(Object.assign({},e),{localName:e.name})}var K=class{equals(e){return this.getType().runtime.util.equals(this.getType(),this,e)}clone(){return this.getType().runtime.util.clone(this)}fromBinary(e,t){let n=this.getType().runtime.bin,r=n.makeReadOptions(t);return n.readMessage(this,r.readerFactory(e),e.byteLength,r),this}fromJson(e,t){let n=this.getType(),r=n.runtime.json,o=r.makeReadOptions(t);return r.readMessage(n,e,o,this),this}fromJsonString(e,t){let n;try{n=JSON.parse(e)}catch(r){throw Error(`cannot decode ${this.getType().typeName} from JSON: ${r instanceof Error?r.message:String(r)}`)}return this.fromJson(n,t)}toBinary(e){let t=this.getType().runtime.bin,n=t.makeWriteOptions(e),r=n.writerFactory();return t.writeMessage(this,r,n),r.finish()}toJson(e){let t=this.getType().runtime.json,n=t.makeWriteOptions(e);return t.writeMessage(this,n)}toJsonString(e){let t=this.toJson(e);return JSON.stringify(t,null,(e==null?void 0:e.prettySpaces)??0)}toJSON(){return this.toJson({emitDefaultValues:!0})}getType(){return Object.getPrototypeOf(this).constructor}};function Gs(e,t,n,r){let o=(r==null?void 0:r.localName)??t.substring(t.lastIndexOf(".")+1),a={[o]:function(i){e.util.initFields(this),e.util.initPartial(i,this)}}[o];return Object.setPrototypeOf(a.prototype,new K),Object.assign(a,{runtime:e,typeName:t,fields:e.util.newFieldList(n),fromBinary(i,s){return new a().fromBinary(i,s)},fromJson(i,s){return new a().fromJson(i,s)},fromJsonString(i,s){return new a().fromJsonString(i,s)},equals(i,s){return e.util.equals(a,i,s)}}),a}function Js(){let e=0,t=0;for(let r=0;r<28;r+=7){let o=this.buf[this.pos++];if(e|=(o&127)<<r,!(o&128))return this.assertBounds(),[e,t]}let n=this.buf[this.pos++];if(e|=(n&15)<<28,t=(n&112)>>4,!(n&128))return this.assertBounds(),[e,t];for(let r=3;r<=31;r+=7){let o=this.buf[this.pos++];if(t|=(o&127)<<r,!(o&128))return this.assertBounds(),[e,t]}throw Error("invalid varint")}function Qn(e,t,n){for(let a=0;a<28;a+=7){let i=e>>>a,s=!(!(i>>>7)&&t==0),c=(s?i|128:i)&255;if(n.push(c),!s)return}let r=e>>>28&15|(t&7)<<4,o=!!(t>>3);if(n.push((o?r|128:r)&255),o){for(let a=3;a<31;a+=7){let i=t>>>a,s=!!(i>>>7),c=(s?i|128:i)&255;if(n.push(c),!s)return}n.push(t>>>31&1)}}var Yt=4294967296;function uo(e){let t=e[0]==="-";t&&(e=e.slice(1));let n=1e6,r=0,o=0;function a(i,s){let c=Number(e.slice(i,s));o*=n,r=r*n+c,r>=Yt&&(o+=r/Yt|0,r%=Yt)}return a(-24,-18),a(-18,-12),a(-12,-6),a(-6),t?mo(r,o):Zn(r,o)}function Vs(e,t){let n=Zn(e,t),r=n.hi&2147483648;r&&(n=mo(n.lo,n.hi));let o=fo(n.lo,n.hi);return r?"-"+o:o}function fo(e,t){if({lo:e,hi:t}=$s(e,t),t<=2097151)return String(Yt*t+e);let n=e&16777215,r=(e>>>24|t<<8)&16777215,o=t>>16&65535,a=n+r*6777216+o*6710656,i=r+o*8147497,s=o*2,c=1e7;return a>=c&&(i+=Math.floor(a/c),a%=c),i>=c&&(s+=Math.floor(i/c),i%=c),s.toString()+po(i)+po(a)}function $s(e,t){return{lo:e>>>0,hi:t>>>0}}function Zn(e,t){return{lo:e|0,hi:t|0}}function mo(e,t){return t=~t,e?e=~e+1:t+=1,Zn(e,t)}var po=e=>{let t=String(e);return"0000000".slice(t.length)+t};function ho(e,t){if(e>=0){for(;e>127;)t.push(e&127|128),e>>>=7;t.push(e)}else{for(let n=0;n<9;n++)t.push(e&127|128),e>>=7;t.push(1)}}function Ws(){let e=this.buf[this.pos++],t=e&127;if(!(e&128)||(e=this.buf[this.pos++],t|=(e&127)<<7,!(e&128))||(e=this.buf[this.pos++],t|=(e&127)<<14,!(e&128))||(e=this.buf[this.pos++],t|=(e&127)<<21,!(e&128)))return this.assertBounds(),t;e=this.buf[this.pos++],t|=(e&15)<<28;for(let n=5;e&128&&n<10;n++)e=this.buf[this.pos++];if(e&128)throw Error("invalid varint");return this.assertBounds(),t>>>0}function qs(){let e=new DataView(new ArrayBuffer(8));if(typeof BigInt=="function"&&typeof e.getBigInt64=="function"&&typeof e.getBigUint64=="function"&&typeof e.setBigInt64=="function"&&typeof e.setBigUint64=="function"&&(typeof process!="object"||{}.BUF_BIGINT_DISABLE!=="1")){let r=BigInt("-9223372036854775808"),o=BigInt("9223372036854775807"),a=BigInt("0"),i=BigInt("18446744073709551615");return{zero:BigInt(0),supported:!0,parse(s){let c=typeof s=="bigint"?s:BigInt(s);if(c>o||c<r)throw Error(`int64 invalid: ${s}`);return c},uParse(s){let c=typeof s=="bigint"?s:BigInt(s);if(c>i||c<a)throw Error(`uint64 invalid: ${s}`);return c},enc(s){return e.setBigInt64(0,this.parse(s),!0),{lo:e.getInt32(0,!0),hi:e.getInt32(4,!0)}},uEnc(s){return e.setBigInt64(0,this.uParse(s),!0),{lo:e.getInt32(0,!0),hi:e.getInt32(4,!0)}},dec(s,c){return e.setInt32(0,s,!0),e.setInt32(4,c,!0),e.getBigInt64(0,!0)},uDec(s,c){return e.setInt32(0,s,!0),e.setInt32(4,c,!0),e.getBigUint64(0,!0)}}}let t=r=>q(/^-?[0-9]+$/.test(r),`int64 invalid: ${r}`),n=r=>q(/^[0-9]+$/.test(r),`uint64 invalid: ${r}`);return{zero:"0",supported:!1,parse(r){return typeof r!="string"&&(r=r.toString()),t(r),r},uParse(r){return typeof r!="string"&&(r=r.toString()),n(r),r},enc(r){return typeof r!="string"&&(r=r.toString()),t(r),uo(r)},uEnc(r){return typeof r!="string"&&(r=r.toString()),n(r),uo(r)},dec(r,o){return Vs(r,o)},uDec(r,o){return fo(r,o)}}}const V=qs();var w;(function(e){e[e.DOUBLE=1]="DOUBLE",e[e.FLOAT=2]="FLOAT",e[e.INT64=3]="INT64",e[e.UINT64=4]="UINT64",e[e.INT32=5]="INT32",e[e.FIXED64=6]="FIXED64",e[e.FIXED32=7]="FIXED32",e[e.BOOL=8]="BOOL",e[e.STRING=9]="STRING",e[e.BYTES=12]="BYTES",e[e.UINT32=13]="UINT32",e[e.SFIXED32=15]="SFIXED32",e[e.SFIXED64=16]="SFIXED64",e[e.SINT32=17]="SINT32",e[e.SINT64=18]="SINT64"})(w||(w={}));var at;(function(e){e[e.BIGINT=0]="BIGINT",e[e.STRING=1]="STRING"})(at||(at={}));function Ze(e,t,n){if(t===n)return!0;if(e==w.BYTES){if(!(t instanceof Uint8Array)||!(n instanceof Uint8Array)||t.length!==n.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==n[r])return!1;return!0}switch(e){case w.UINT64:case w.FIXED64:case w.INT64:case w.SFIXED64:case w.SINT64:return t==n}return!1}function ft(e,t){switch(e){case w.BOOL:return!1;case w.UINT64:case w.FIXED64:case w.INT64:case w.SFIXED64:case w.SINT64:return t==0?V.zero:"0";case w.DOUBLE:case w.FLOAT:return 0;case w.BYTES:return new Uint8Array;case w.STRING:return"";default:return 0}}function go(e,t){switch(e){case w.BOOL:return t===!1;case w.STRING:return t==="";case w.BYTES:return t instanceof Uint8Array&&!t.byteLength;default:return t==0}}var X;(function(e){e[e.Varint=0]="Varint",e[e.Bit64=1]="Bit64",e[e.LengthDelimited=2]="LengthDelimited",e[e.StartGroup=3]="StartGroup",e[e.EndGroup=4]="EndGroup",e[e.Bit32=5]="Bit32"})(X||(X={}));var Hs=class{constructor(e){this.stack=[],this.textEncoder=e??new TextEncoder,this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let e=0;for(let r=0;r<this.chunks.length;r++)e+=this.chunks[r].length;let t=new Uint8Array(e),n=0;for(let r=0;r<this.chunks.length;r++)t.set(this.chunks[r],n),n+=this.chunks[r].length;return this.chunks=[],t}fork(){return this.stack.push({chunks:this.chunks,buf:this.buf}),this.chunks=[],this.buf=[],this}join(){let e=this.finish(),t=this.stack.pop();if(!t)throw Error("invalid state, fork stack empty");return this.chunks=t.chunks,this.buf=t.buf,this.uint32(e.byteLength),this.raw(e)}tag(e,t){return this.uint32((e<<3|t)>>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(Xn(e);e>127;)this.buf.push(e&127|128),e>>>=7;return this.buf.push(e),this}int32(e){return Kt(e),ho(e,this.buf),this}bool(e){return this.buf.push(e?1:0),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let t=this.textEncoder.encode(e);return this.uint32(t.byteLength),this.raw(t)}float(e){ao(e);let t=new Uint8Array(4);return new DataView(t.buffer).setFloat32(0,e,!0),this.raw(t)}double(e){let t=new Uint8Array(8);return new DataView(t.buffer).setFloat64(0,e,!0),this.raw(t)}fixed32(e){Xn(e);let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e,!0),this.raw(t)}sfixed32(e){Kt(e);let t=new Uint8Array(4);return new DataView(t.buffer).setInt32(0,e,!0),this.raw(t)}sint32(e){return Kt(e),e=(e<<1^e>>31)>>>0,ho(e,this.buf),this}sfixed64(e){let t=new Uint8Array(8),n=new DataView(t.buffer),r=V.enc(e);return n.setInt32(0,r.lo,!0),n.setInt32(4,r.hi,!0),this.raw(t)}fixed64(e){let t=new Uint8Array(8),n=new DataView(t.buffer),r=V.uEnc(e);return n.setInt32(0,r.lo,!0),n.setInt32(4,r.hi,!0),this.raw(t)}int64(e){let t=V.enc(e);return Qn(t.lo,t.hi,this.buf),this}sint64(e){let t=V.enc(e),n=t.hi>>31;return Qn(t.lo<<1^n,(t.hi<<1|t.lo>>>31)^n,this.buf),this}uint64(e){let t=V.uEnc(e);return Qn(t.lo,t.hi,this.buf),this}},zs=class{constructor(e,t){this.varint64=Js,this.uint32=Ws,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.textDecoder=t??new TextDecoder}tag(){let e=this.uint32(),t=e>>>3,n=e&7;if(t<=0||n<0||n>5)throw Error("illegal tag: field no "+t+" wire type "+n);return[t,n]}skip(e,t){let n=this.pos;switch(e){case X.Varint:for(;this.buf[this.pos++]&128;);break;case X.Bit64:this.pos+=4;case X.Bit32:this.pos+=4;break;case X.LengthDelimited:let r=this.uint32();this.pos+=r;break;case X.StartGroup:for(;;){let[o,a]=this.tag();if(a===X.EndGroup){if(t!==void 0&&o!==t)throw Error("invalid end group tag");break}this.skip(a,o)}break;default:throw Error("cant skip wire type "+e)}return this.assertBounds(),this.buf.subarray(n,this.pos)}assertBounds(){if(this.pos>this.len)throw RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return V.dec(...this.varint64())}uint64(){return V.uDec(...this.varint64())}sint64(){let[e,t]=this.varint64(),n=-(e&1);return e=(e>>>1|(t&1)<<31)^n,t=t>>>1^n,V.dec(e,t)}bool(){let[e,t]=this.varint64();return e!==0||t!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return V.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return V.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),t=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(t,t+e)}string(){return this.textDecoder.decode(this.bytes())}};function Ks(e,t,n,r){let o;return{typeName:t,extendee:n,get field(){if(!o){let a=typeof r=="function"?r():r;a.name=t.split(".").pop(),a.jsonName=`[${t}]`,o=e.util.newFieldList([a]).list()[0]}return o},runtime:e}}function yo(e){let t=e.field.localName,n=Object.create(null);return n[t]=Ys(e),[n,()=>n[t]]}function Ys(e){let t=e.field;if(t.repeated)return[];if(t.default!==void 0)return t.default;switch(t.kind){case"enum":return t.T.values[0].no;case"scalar":return ft(t.T,t.L);case"message":let n=t.T,r=new n;return n.fieldWrapper?n.fieldWrapper.unwrapField(r):r;case"map":throw"map fields are not allowed to be extensions"}}function Xs(e,t){if(!t.repeated&&(t.kind=="enum"||t.kind=="scalar")){for(let n=e.length-1;n>=0;--n)if(e[n].no==t.no)return[e[n]];return[]}return e.filter(n=>n.no===t.no)}var Ke="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),Xt=[];for(let e=0;e<Ke.length;e++)Xt[Ke[e].charCodeAt(0)]=e;Xt[45]=Ke.indexOf("+"),Xt[95]=Ke.indexOf("/");const Qt={dec(e){let t=e.length*3/4;e[e.length-2]=="="?t-=2:e[e.length-1]=="="&&--t;let n=new Uint8Array(t),r=0,o=0,a,i=0;for(let s=0;s<e.length;s++){if(a=Xt[e.charCodeAt(s)],a===void 0)switch(e[s]){case"=":o=0;case`
|
|
13
|
+
`:case"\r":case" ":case" ":continue;default:throw Error("invalid base64 string.")}switch(o){case 0:i=a,o=1;break;case 1:n[r++]=i<<2|(a&48)>>4,i=a,o=2;break;case 2:n[r++]=(i&15)<<4|(a&60)>>2,i=a,o=3;break;case 3:n[r++]=(i&3)<<6|a,o=0;break}}if(o==1)throw Error("invalid base64 string.");return n.subarray(0,r)},enc(e){let t="",n=0,r,o=0;for(let a=0;a<e.length;a++)switch(r=e[a],n){case 0:t+=Ke[r>>2],o=(r&3)<<4,n=1;break;case 1:t+=Ke[o|r>>4],o=(r&15)<<2,n=2;break;case 2:t+=Ke[o|r>>6],t+=Ke[r&63],n=0;break}return n&&(t+=Ke[o],t+="=",n==1&&(t+="=")),t}};function Qs(e,t,n){wo(t,e);let r=t.runtime.bin.makeReadOptions(n),o=Xs(e.getType().runtime.bin.listUnknownFields(e),t.field),[a,i]=yo(t);for(let s of o)t.runtime.bin.readField(a,r.readerFactory(s.data),t.field,s.wireType,r);return i()}function Zs(e,t,n,r){wo(t,e);let o=t.runtime.bin.makeReadOptions(r),a=t.runtime.bin.makeWriteOptions(r);if(bo(e,t)){let l=e.getType().runtime.bin.listUnknownFields(e).filter(u=>u.no!=t.field.no);e.getType().runtime.bin.discardUnknownFields(e);for(let u of l)e.getType().runtime.bin.onUnknownField(e,u.no,u.wireType,u.data)}let i=a.writerFactory(),s=t.field;!s.opt&&!s.repeated&&(s.kind=="enum"||s.kind=="scalar")&&(s=Object.assign(Object.assign({},t.field),{opt:!0})),t.runtime.bin.writeField(s,n,i,a);let c=o.readerFactory(i.finish());for(;c.pos<c.len;){let[l,u]=c.tag(),d=c.skip(u,l);e.getType().runtime.bin.onUnknownField(e,l,u,d)}}function bo(e,t){let n=e.getType();return t.extendee.typeName===n.typeName&&!!n.runtime.bin.listUnknownFields(e).find(r=>r.no==t.field.no)}function wo(e,t){q(e.extendee.typeName==t.getType().typeName,`extension ${e.typeName} can only be applied to message ${e.extendee.typeName}`)}function vo(e,t){let n=e.localName;if(e.repeated)return t[n].length>0;if(e.oneof)return t[e.oneof.localName].case===n;switch(e.kind){case"enum":case"scalar":return e.opt||e.req?t[n]!==void 0:e.kind=="enum"?t[n]!==e.T.values[0].no:!go(e.T,t[n]);case"message":return t[n]!==void 0;case"map":return Object.keys(t[n]).length>0}}function Eo(e,t){let n=e.localName,r=!e.opt&&!e.req;if(e.repeated)t[n]=[];else if(e.oneof)t[e.oneof.localName]={case:void 0};else switch(e.kind){case"map":t[n]={};break;case"enum":t[n]=r?e.T.values[0].no:void 0;break;case"scalar":t[n]=r?ft(e.T,e.L):void 0;break;case"message":t[n]=void 0;break}}function Ye(e,t){if(typeof e!="object"||!e||!Object.getOwnPropertyNames(K.prototype).every(r=>r in e&&typeof e[r]=="function"))return!1;let n=e.getType();return n===null||typeof n!="function"||!("typeName"in n)||typeof n.typeName!="string"?!1:t===void 0?!0:n.typeName==t.typeName}function So(e,t){return Ye(t)||!e.fieldWrapper?t:e.fieldWrapper.wrapField(t)}w.DOUBLE,w.FLOAT,w.INT64,w.UINT64,w.INT32,w.UINT32,w.BOOL,w.STRING,w.BYTES;var Co={ignoreUnknownFields:!1},xo={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0};function el(e){return e?Object.assign(Object.assign({},Co),e):Co}function tl(e){return e?Object.assign(Object.assign({},xo),e):xo}var Zt=Symbol(),en=Symbol();function nl(){return{makeReadOptions:el,makeWriteOptions:tl,readMessage(e,t,n,r){if(t==null||Array.isArray(t)||typeof t!="object")throw Error(`cannot decode message ${e.typeName} from JSON: ${qe(t)}`);r??(r=new e);let o=new Map,a=n.typeRegistry;for(let[i,s]of Object.entries(t)){let c=e.fields.findJsonName(i);if(c){if(c.oneof){if(s===null&&c.kind=="scalar")continue;let l=o.get(c.oneof);if(l!==void 0)throw Error(`cannot decode message ${e.typeName} from JSON: multiple keys for oneof "${c.oneof.name}" present: "${l}", "${i}"`);o.set(c.oneof,i)}Io(r,s,c,n,e)}else{let l=!1;if(a!=null&&a.findExtension&&i.startsWith("[")&&i.endsWith("]")){let u=a.findExtension(i.substring(1,i.length-1));if(u&&u.extendee.typeName==e.typeName){l=!0;let[d,m]=yo(u);Io(d,s,u.field,n,u),Zs(r,u,m(),n)}}if(!l&&!n.ignoreUnknownFields)throw Error(`cannot decode message ${e.typeName} from JSON: key "${i}" is unknown`)}}return r},writeMessage(e,t){let n=e.getType(),r={},o;try{for(o of n.fields.byNumber()){if(!vo(o,e)){if(o.req)throw"required field not set";if(!t.emitDefaultValues||!ol(o))continue}let i=o.oneof?e[o.oneof.localName].value:e[o.localName],s=ko(o,i,t);s!==void 0&&(r[t.useProtoFieldName?o.name:o.jsonName]=s)}let a=t.typeRegistry;if(a!=null&&a.findExtensionFor)for(let i of n.runtime.bin.listUnknownFields(e)){let s=a.findExtensionFor(n.typeName,i.no);if(s&&bo(e,s)){let c=Qs(e,s,t),l=ko(s.field,c,t);l!==void 0&&(r[s.field.jsonName]=l)}}}catch(a){let i=o?`cannot encode field ${n.typeName}.${o.name} to JSON`:`cannot encode message ${n.typeName} to JSON`,s=a instanceof Error?a.message:String(a);throw Error(i+(s.length>0?`: ${s}`:""))}return r},readScalar(e,t,n){return Nt(e,t,n??at.BIGINT,!0)},writeScalar(e,t,n){if(t!==void 0&&(n||go(e,t)))return tn(e,t)},debug:qe}}function qe(e){if(e===null)return"null";switch(typeof e){case"object":return Array.isArray(e)?"array":"object";case"string":return e.length>100?"string":`"${e.split('"').join('\\"')}"`;default:return String(e)}}function Io(e,t,n,r,o){let a=n.localName;if(n.repeated){if(q(n.kind!="map"),t===null)return;if(!Array.isArray(t))throw Error(`cannot decode field ${o.typeName}.${n.name} from JSON: ${qe(t)}`);let i=e[a];for(let s of t){if(s===null)throw Error(`cannot decode field ${o.typeName}.${n.name} from JSON: ${qe(s)}`);switch(n.kind){case"message":i.push(n.T.fromJson(s,r));break;case"enum":let c=er(n.T,s,r.ignoreUnknownFields,!0);c!==en&&i.push(c);break;case"scalar":try{i.push(Nt(n.T,s,n.L,!0))}catch(l){let u=`cannot decode field ${o.typeName}.${n.name} from JSON: ${qe(s)}`;throw l instanceof Error&&l.message.length>0&&(u+=`: ${l.message}`),Error(u)}break}}}else if(n.kind=="map"){if(t===null)return;if(typeof t!="object"||Array.isArray(t))throw Error(`cannot decode field ${o.typeName}.${n.name} from JSON: ${qe(t)}`);let i=e[a];for(let[s,c]of Object.entries(t)){if(c===null)throw Error(`cannot decode field ${o.typeName}.${n.name} from JSON: map value null`);let l;try{l=rl(n.K,s)}catch(u){let d=`cannot decode map key for field ${o.typeName}.${n.name} from JSON: ${qe(t)}`;throw u instanceof Error&&u.message.length>0&&(d+=`: ${u.message}`),Error(d)}switch(n.V.kind){case"message":i[l]=n.V.T.fromJson(c,r);break;case"enum":let u=er(n.V.T,c,r.ignoreUnknownFields,!0);u!==en&&(i[l]=u);break;case"scalar":try{i[l]=Nt(n.V.T,c,at.BIGINT,!0)}catch(d){let m=`cannot decode map value for field ${o.typeName}.${n.name} from JSON: ${qe(t)}`;throw d instanceof Error&&d.message.length>0&&(m+=`: ${d.message}`),Error(m)}break}}}else switch(n.oneof&&(e=e[n.oneof.localName]={case:a},a="value"),n.kind){case"message":let i=n.T;if(t===null&&i.typeName!="google.protobuf.Value")return;let s=e[a];Ye(s)?s.fromJson(t,r):(e[a]=s=i.fromJson(t,r),i.fieldWrapper&&!n.oneof&&(e[a]=i.fieldWrapper.unwrapField(s)));break;case"enum":let c=er(n.T,t,r.ignoreUnknownFields,!1);switch(c){case Zt:Eo(n,e);break;case en:break;default:e[a]=c;break}break;case"scalar":try{let l=Nt(n.T,t,n.L,!1);l===Zt?Eo(n,e):e[a]=l}catch(l){let u=`cannot decode field ${o.typeName}.${n.name} from JSON: ${qe(t)}`;throw l instanceof Error&&l.message.length>0&&(u+=`: ${l.message}`),Error(u)}break}}function rl(e,t){if(e===w.BOOL)switch(t){case"true":t=!0;break;case"false":t=!1;break}return Nt(e,t,at.BIGINT,!0).toString()}function Nt(e,t,n,r){if(t===null)return r?ft(e,n):Zt;switch(e){case w.DOUBLE:case w.FLOAT:if(t==="NaN")return NaN;if(t==="Infinity")return 1/0;if(t==="-Infinity")return-1/0;if(t===""||typeof t=="string"&&t.trim().length!==t.length||typeof t!="string"&&typeof t!="number")break;let o=Number(t);if(Number.isNaN(o)||!Number.isFinite(o))break;return e==w.FLOAT&&ao(o),o;case w.INT32:case w.FIXED32:case w.SFIXED32:case w.SINT32:case w.UINT32:let a;if(typeof t=="number"?a=t:typeof t=="string"&&t.length>0&&t.trim().length===t.length&&(a=Number(t)),a===void 0)break;return e==w.UINT32||e==w.FIXED32?Xn(a):Kt(a),a;case w.INT64:case w.SFIXED64:case w.SINT64:if(typeof t!="number"&&typeof t!="string")break;let i=V.parse(t);return n?i.toString():i;case w.FIXED64:case w.UINT64:if(typeof t!="number"&&typeof t!="string")break;let s=V.uParse(t);return n?s.toString():s;case w.BOOL:if(typeof t!="boolean")break;return t;case w.STRING:if(typeof t!="string")break;return t;case w.BYTES:if(t==="")return new Uint8Array;if(typeof t!="string")break;return Qt.dec(t)}throw Error()}function er(e,t,n,r){if(t===null)return e.typeName=="google.protobuf.NullValue"?0:r?e.values[0].no:Zt;switch(typeof t){case"number":if(Number.isInteger(t))return t;break;case"string":let o=e.findName(t);if(o!==void 0)return o.no;if(n)return en;break}throw Error(`cannot decode enum ${e.typeName} from JSON: ${qe(t)}`)}function ol(e){return e.repeated||e.kind=="map"?!0:!(e.oneof||e.kind=="message"||e.opt||e.req)}function ko(e,t,n){if(e.kind=="map"){q(typeof t=="object"&&!!t);let r={},o=Object.entries(t);switch(e.V.kind){case"scalar":for(let[i,s]of o)r[i.toString()]=tn(e.V.T,s);break;case"message":for(let[i,s]of o)r[i.toString()]=s.toJson(n);break;case"enum":let a=e.V.T;for(let[i,s]of o)r[i.toString()]=tr(a,s,n.enumAsInteger);break}return n.emitDefaultValues||o.length>0?r:void 0}if(e.repeated){q(Array.isArray(t));let r=[];switch(e.kind){case"scalar":for(let o=0;o<t.length;o++)r.push(tn(e.T,t[o]));break;case"enum":for(let o=0;o<t.length;o++)r.push(tr(e.T,t[o],n.enumAsInteger));break;case"message":for(let o=0;o<t.length;o++)r.push(t[o].toJson(n));break}return n.emitDefaultValues||r.length>0?r:void 0}switch(e.kind){case"scalar":return tn(e.T,t);case"enum":return tr(e.T,t,n.enumAsInteger);case"message":return So(e.T,t).toJson(n)}}function tr(e,t,n){var r;return q(typeof t=="number"),e.typeName=="google.protobuf.NullValue"?null:n?t:((r=e.findNumber(t))==null?void 0:r.name)??t}function tn(e,t){switch(e){case w.INT32:case w.SFIXED32:case w.SINT32:case w.FIXED32:case w.UINT32:return q(typeof t=="number"),t;case w.FLOAT:case w.DOUBLE:return q(typeof t=="number"),Number.isNaN(t)?"NaN":t===1/0?"Infinity":t===-1/0?"-Infinity":t;case w.STRING:return q(typeof t=="string"),t;case w.BOOL:return q(typeof t=="boolean"),t;case w.UINT64:case w.FIXED64:case w.INT64:case w.SFIXED64:case w.SINT64:return q(typeof t=="bigint"||typeof t=="string"||typeof t=="number"),t.toString();case w.BYTES:return q(t instanceof Uint8Array),Qt.enc(t)}}var mt=Symbol("@bufbuild/protobuf/unknown-fields"),To={readUnknownFields:!0,readerFactory:e=>new zs(e)},No={writeUnknownFields:!0,writerFactory:()=>new Hs};function al(e){return e?Object.assign(Object.assign({},To),e):To}function il(e){return e?Object.assign(Object.assign({},No),e):No}function sl(){return{makeReadOptions:al,makeWriteOptions:il,listUnknownFields(e){return e[mt]??[]},discardUnknownFields(e){delete e[mt]},writeUnknownFields(e,t){let n=e[mt];if(n)for(let r of n)t.tag(r.no,r.wireType).raw(r.data)},onUnknownField(e,t,n,r){let o=e;Array.isArray(o[mt])||(o[mt]=[]),o[mt].push({no:t,wireType:n,data:r})},readMessage(e,t,n,r,o){let a=e.getType(),i=o?t.len:t.pos+n,s,c;for(;t.pos<i&&([s,c]=t.tag(),!(o===!0&&c==X.EndGroup));){let l=a.fields.find(s);if(!l){let u=t.skip(c,s);r.readUnknownFields&&this.onUnknownField(e,s,c,u);continue}Ao(e,t,l,c,r)}if(o&&(c!=X.EndGroup||s!==n))throw Error("invalid end group tag")},readField:Ao,writeMessage(e,t,n){let r=e.getType();for(let o of r.fields.byNumber()){if(!vo(o,e)){if(o.req)throw Error(`cannot encode field ${r.typeName}.${o.name} to binary: required field not set`);continue}Lo(o,o.oneof?e[o.oneof.localName].value:e[o.localName],t,n)}return n.writeUnknownFields&&this.writeUnknownFields(e,t),t},writeField(e,t,n,r){t!==void 0&&Lo(e,t,n,r)}}}function Ao(e,t,n,r,o){let{repeated:a,localName:i}=n;switch(n.oneof&&(e=e[n.oneof.localName],e.case!=i&&delete e.value,e.case=i,i="value"),n.kind){case"scalar":case"enum":let s=n.kind=="enum"?w.INT32:n.T,c=rn;if(n.kind=="scalar"&&n.L>0&&(c=cl),a){let m=e[i];if(r==X.LengthDelimited&&s!=w.STRING&&s!=w.BYTES){let f=t.uint32()+t.pos;for(;t.pos<f;)m.push(c(t,s))}else m.push(c(t,s))}else e[i]=c(t,s);break;case"message":let l=n.T;a?e[i].push(nn(t,new l,o,n)):Ye(e[i])?nn(t,e[i],o,n):(e[i]=nn(t,new l,o,n),l.fieldWrapper&&!n.oneof&&!n.repeated&&(e[i]=l.fieldWrapper.unwrapField(e[i])));break;case"map":let[u,d]=ll(n,t,o);e[i][u]=d;break}}function nn(e,t,n,r){let o=t.getType().runtime.bin,a=r==null?void 0:r.delimited;return o.readMessage(t,e,a?r.no:e.uint32(),n,a),t}function ll(e,t,n){let r=t.uint32(),o=t.pos+r,a,i;for(;t.pos<o;){let[s]=t.tag();switch(s){case 1:a=rn(t,e.K);break;case 2:switch(e.V.kind){case"scalar":i=rn(t,e.V.T);break;case"enum":i=t.int32();break;case"message":i=nn(t,new e.V.T,n,void 0);break}break}}if(a===void 0&&(a=ft(e.K,at.BIGINT)),typeof a!="string"&&typeof a!="number"&&(a=a.toString()),i===void 0)switch(e.V.kind){case"scalar":i=ft(e.V.T,at.BIGINT);break;case"enum":i=e.V.T.values[0].no;break;case"message":i=new e.V.T;break}return[a,i]}function cl(e,t){let n=rn(e,t);return typeof n=="bigint"?n.toString():n}function rn(e,t){switch(t){case w.STRING:return e.string();case w.BOOL:return e.bool();case w.DOUBLE:return e.double();case w.FLOAT:return e.float();case w.INT32:return e.int32();case w.INT64:return e.int64();case w.UINT64:return e.uint64();case w.FIXED64:return e.fixed64();case w.BYTES:return e.bytes();case w.FIXED32:return e.fixed32();case w.SFIXED32:return e.sfixed32();case w.SFIXED64:return e.sfixed64();case w.SINT64:return e.sint64();case w.UINT32:return e.uint32();case w.SINT32:return e.sint32()}}function Lo(e,t,n,r){q(t!==void 0);let o=e.repeated;switch(e.kind){case"scalar":case"enum":let a=e.kind=="enum"?w.INT32:e.T;if(o)if(q(Array.isArray(t)),e.packed)dl(n,a,e.no,t);else for(let i of t)At(n,a,e.no,i);else At(n,a,e.no,t);break;case"message":if(o){q(Array.isArray(t));for(let i of t)Oo(n,r,e,i)}else Oo(n,r,e,t);break;case"map":q(typeof t=="object"&&!!t);for(let[i,s]of Object.entries(t))ul(n,r,e,i,s);break}}function ul(e,t,n,r,o){e.tag(n.no,X.LengthDelimited),e.fork();let a=r;switch(n.K){case w.INT32:case w.FIXED32:case w.UINT32:case w.SFIXED32:case w.SINT32:a=Number.parseInt(r);break;case w.BOOL:q(r=="true"||r=="false"),a=r=="true";break}switch(At(e,n.K,1,a),n.V.kind){case"scalar":At(e,n.V.T,2,o);break;case"enum":At(e,w.INT32,2,o);break;case"message":q(o!==void 0),e.tag(2,X.LengthDelimited).bytes(o.toBinary(t));break}e.join()}function Oo(e,t,n,r){let o=So(n.T,r);n.delimited?e.tag(n.no,X.StartGroup).raw(o.toBinary(t)).tag(n.no,X.EndGroup):e.tag(n.no,X.LengthDelimited).bytes(o.toBinary(t))}function At(e,t,n,r){q(r!==void 0);let[o,a]=_o(t);e.tag(n,o)[a](r)}function dl(e,t,n,r){if(!r.length)return;e.tag(n,X.LengthDelimited).fork();let[,o]=_o(t);for(let a=0;a<r.length;a++)e[o](r[a]);e.join()}function _o(e){let t=X.Varint;switch(e){case w.BYTES:case w.STRING:t=X.LengthDelimited;break;case w.DOUBLE:case w.FIXED64:case w.SFIXED64:t=X.Bit64;break;case w.FIXED32:case w.SFIXED32:case w.FLOAT:t=X.Bit32;break}let n=w[e].toLowerCase();return[t,n]}function fl(){return{setEnumType:so,initPartial(e,t){if(e===void 0)return;let n=t.getType();for(let r of n.fields.byMember()){let o=r.localName,a=t,i=e;if(i[o]!=null)switch(r.kind){case"oneof":let s=i[o].case;if(s===void 0)continue;let c=r.findField(s),l=i[o].value;c&&c.kind=="message"&&!Ye(l,c.T)?l=new c.T(l):c&&c.kind==="scalar"&&c.T===w.BYTES&&(l=Lt(l)),a[o]={case:s,value:l};break;case"scalar":case"enum":let u=i[o];r.T===w.BYTES&&(u=r.repeated?u.map(Lt):Lt(u)),a[o]=u;break;case"map":switch(r.V.kind){case"scalar":case"enum":if(r.V.T===w.BYTES)for(let[f,h]of Object.entries(i[o]))a[o][f]=Lt(h);else Object.assign(a[o],i[o]);break;case"message":let m=r.V.T;for(let f of Object.keys(i[o])){let h=i[o][f];m.fieldWrapper||(h=new m(h)),a[o][f]=h}break}break;case"message":let d=r.T;if(r.repeated)a[o]=i[o].map(m=>Ye(m,d)?m:new d(m));else{let m=i[o];d.fieldWrapper?d.typeName==="google.protobuf.BytesValue"?a[o]=Lt(m):a[o]=m:a[o]=Ye(m,d)?m:new d(m)}break}}},equals(e,t,n){return t===n?!0:!t||!n?!1:e.fields.byMember().every(r=>{let o=t[r.localName],a=n[r.localName];if(r.repeated){if(o.length!==a.length)return!1;switch(r.kind){case"message":return o.every((i,s)=>r.T.equals(i,a[s]));case"scalar":return o.every((i,s)=>Ze(r.T,i,a[s]));case"enum":return o.every((i,s)=>Ze(w.INT32,i,a[s]))}throw Error(`repeated cannot contain ${r.kind}`)}switch(r.kind){case"message":let i=o,s=a;return r.T.fieldWrapper&&(i!==void 0&&!Ye(i)&&(i=r.T.fieldWrapper.wrapField(i)),s!==void 0&&!Ye(s)&&(s=r.T.fieldWrapper.wrapField(s))),r.T.equals(i,s);case"enum":return Ze(w.INT32,o,a);case"scalar":return Ze(r.T,o,a);case"oneof":if(o.case!==a.case)return!1;let c=r.findField(o.case);if(c===void 0)return!0;switch(c.kind){case"message":return c.T.equals(o.value,a.value);case"enum":return Ze(w.INT32,o.value,a.value);case"scalar":return Ze(c.T,o.value,a.value)}throw Error(`oneof cannot contain ${c.kind}`);case"map":let l=Object.keys(o).concat(Object.keys(a));switch(r.V.kind){case"message":let u=r.V.T;return l.every(m=>u.equals(o[m],a[m]));case"enum":return l.every(m=>Ze(w.INT32,o[m],a[m]));case"scalar":let d=r.V.T;return l.every(m=>Ze(d,o[m],a[m]))}break}})},clone(e){let t=e.getType(),n=new t,r=n;for(let o of t.fields.byMember()){let a=e[o.localName],i;if(o.repeated)i=a.map(on);else if(o.kind=="map"){i=r[o.localName];for(let[s,c]of Object.entries(a))i[s]=on(c)}else i=o.kind=="oneof"?o.findField(a.case)?{case:a.case,value:on(a.value)}:{case:void 0}:on(a);r[o.localName]=i}for(let o of t.runtime.bin.listUnknownFields(e))t.runtime.bin.onUnknownField(r,o.no,o.wireType,o.data);return n}}}function on(e){if(e===void 0)return e;if(Ye(e))return e.clone();if(e instanceof Uint8Array){let t=new Uint8Array(e.byteLength);return t.set(e),t}return e}function Lt(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function ml(e,t,n){return{syntax:e,json:nl(),bin:sl(),util:Object.assign(Object.assign({},fl()),{newFieldList:t,initFields:n}),makeMessageType(r,o,a){return Gs(this,r,o,a)},makeEnum:Bs,makeEnumType:lo,getEnumType:Rs,makeExtension(r,o,a){return Ks(this,r,o,a)}}}var pl=class{constructor(e,t){this._fields=e,this._normalizer=t}findJsonName(e){if(!this.jsonNames){let t={};for(let n of this.list())t[n.jsonName]=t[n.name]=n;this.jsonNames=t}return this.jsonNames[e]}find(e){if(!this.numbers){let t={};for(let n of this.list())t[n.no]=n;this.numbers=t}return this.numbers[e]}list(){return this.all||(this.all=this._normalizer(this._fields)),this.all}byNumber(){return this.numbersAsc||(this.numbersAsc=this.list().concat().sort((e,t)=>e.no-t.no)),this.numbersAsc}byMember(){if(!this.members){this.members=[];let e=this.members,t;for(let n of this.list())n.oneof?n.oneof!==t&&(t=n.oneof,e.push(t)):e.push(n)}return this.members}};function Uo(e,t){let n=jo(e);return t?n:vl(wl(n))}function hl(e){return Uo(e,!1)}const gl=jo;function jo(e){let t=!1,n=[];for(let r=0;r<e.length;r++){let o=e.charAt(r);switch(o){case"_":t=!0;break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":n.push(o),t=!1;break;default:t&&(t=!1,o=o.toUpperCase()),n.push(o);break}}return n.join("")}var yl=new Set(["constructor","toString","toJSON","valueOf"]),bl=new Set(["getType","clone","equals","fromBinary","fromJson","fromJsonString","toBinary","toJson","toJsonString","toObject"]),Do=e=>`${e}$`,wl=e=>bl.has(e)?Do(e):e;const vl=e=>yl.has(e)?Do(e):e;var El=class{constructor(e){this.kind="oneof",this.repeated=!1,this.packed=!1,this.opt=!1,this.req=!1,this.default=void 0,this.fields=[],this.name=e,this.localName=hl(e)}addField(e){q(e.oneof===this,`field ${e.name} not one of ${this.name}`),this.fields.push(e)}findField(e){if(!this._lookup){this._lookup=Object.create(null);for(let t=0;t<this.fields.length;t++)this._lookup[this.fields[t].localName]=this.fields[t]}return this._lookup[e]}};function Sl(e,t){let n=[],r;for(let o of typeof e=="function"?e():e){let a=o;if(a.localName=Uo(o.name,o.oneof!==void 0),a.jsonName=o.jsonName??gl(o.name),a.repeated=o.repeated??!1,o.kind=="scalar"&&(a.L=o.L??at.BIGINT),a.delimited=o.delimited??!1,a.req=o.req??!1,a.opt=o.opt??!1,o.packed===void 0&&(t?a.packed=o.kind=="enum"||o.kind=="scalar"&&o.T!=w.BYTES&&o.T!=w.STRING:a.packed=!1),o.oneof!==void 0){let i=typeof o.oneof=="string"?o.oneof:o.oneof.name;(!r||r.name!=i)&&(r=new El(i)),a.oneof=r,r.addField(a)}n.push(a)}return n}const E=ml("proto3",e=>new pl(e,t=>Sl(t,!0)),e=>{for(let t of e.getType().fields.byMember()){if(t.opt)continue;let n=t.localName,r=e;if(t.repeated){r[n]=[];continue}switch(t.kind){case"oneof":r[n]={case:void 0};break;case"enum":r[n]=0;break;case"map":r[n]={};break;case"scalar":r[n]=ft(t.T,t.L);break;case"message":break}}});var ve;(function(e){e[e.Unary=0]="Unary",e[e.ServerStreaming=1]="ServerStreaming",e[e.ClientStreaming=2]="ClientStreaming",e[e.BiDiStreaming=3]="BiDiStreaming"})(ve||(ve={}));var Po;(function(e){e[e.NoSideEffects=1]="NoSideEffects",e[e.Idempotent=2]="Idempotent"})(Po||(Po={}));var nr;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.JUPYTER_FORMAT=77]="JUPYTER_FORMAT"})(nr||(nr={})),E.util.setEnumType(nr,"exa.codeium_common_pb.ExperimentKey",[{no:0,name:"UNSPECIFIED"},{no:77,name:"JUPYTER_FORMAT"}]);var an;(function(e){e[e.CODEIUM=0]="CODEIUM"})(an||(an={})),E.util.setEnumType(an,"exa.codeium_common_pb.AuthSource",[{no:0,name:"AUTH_SOURCE_CODEIUM"}]);var sn;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.ENABLE_CODEIUM=1]="ENABLE_CODEIUM",e[e.DISABLE_CODEIUM=2]="DISABLE_CODEIUM",e[e.SHOW_PREVIOUS_COMPLETION=3]="SHOW_PREVIOUS_COMPLETION",e[e.SHOW_NEXT_COMPLETION=4]="SHOW_NEXT_COMPLETION"})(sn||(sn={})),E.util.setEnumType(sn,"exa.codeium_common_pb.EventType",[{no:0,name:"EVENT_TYPE_UNSPECIFIED"},{no:1,name:"EVENT_TYPE_ENABLE_CODEIUM"},{no:2,name:"EVENT_TYPE_DISABLE_CODEIUM"},{no:3,name:"EVENT_TYPE_SHOW_PREVIOUS_COMPLETION"},{no:4,name:"EVENT_TYPE_SHOW_NEXT_COMPLETION"}]);var ln;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TYPING_AS_SUGGESTED=1]="TYPING_AS_SUGGESTED",e[e.CACHE=2]="CACHE",e[e.NETWORK=3]="NETWORK"})(ln||(ln={})),E.util.setEnumType(ln,"exa.codeium_common_pb.CompletionSource",[{no:0,name:"COMPLETION_SOURCE_UNSPECIFIED"},{no:1,name:"COMPLETION_SOURCE_TYPING_AS_SUGGESTED"},{no:2,name:"COMPLETION_SOURCE_CACHE"},{no:3,name:"COMPLETION_SOURCE_NETWORK"}]);var it;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.C=1]="C",e[e.CLOJURE=2]="CLOJURE",e[e.COFFEESCRIPT=3]="COFFEESCRIPT",e[e.CPP=4]="CPP",e[e.CSHARP=5]="CSHARP",e[e.CSS=6]="CSS",e[e.CUDACPP=7]="CUDACPP",e[e.DOCKERFILE=8]="DOCKERFILE",e[e.GO=9]="GO",e[e.GROOVY=10]="GROOVY",e[e.HANDLEBARS=11]="HANDLEBARS",e[e.HASKELL=12]="HASKELL",e[e.HCL=13]="HCL",e[e.HTML=14]="HTML",e[e.INI=15]="INI",e[e.JAVA=16]="JAVA",e[e.JAVASCRIPT=17]="JAVASCRIPT",e[e.JSON=18]="JSON",e[e.JULIA=19]="JULIA",e[e.KOTLIN=20]="KOTLIN",e[e.LATEX=21]="LATEX",e[e.LESS=22]="LESS",e[e.LUA=23]="LUA",e[e.MAKEFILE=24]="MAKEFILE",e[e.MARKDOWN=25]="MARKDOWN",e[e.OBJECTIVEC=26]="OBJECTIVEC",e[e.OBJECTIVECPP=27]="OBJECTIVECPP",e[e.PERL=28]="PERL",e[e.PHP=29]="PHP",e[e.PLAINTEXT=30]="PLAINTEXT",e[e.PROTOBUF=31]="PROTOBUF",e[e.PBTXT=32]="PBTXT",e[e.PYTHON=33]="PYTHON",e[e.R=34]="R",e[e.RUBY=35]="RUBY",e[e.RUST=36]="RUST",e[e.SASS=37]="SASS",e[e.SCALA=38]="SCALA",e[e.SCSS=39]="SCSS",e[e.SHELL=40]="SHELL",e[e.SQL=41]="SQL",e[e.STARLARK=42]="STARLARK",e[e.SWIFT=43]="SWIFT",e[e.TSX=44]="TSX",e[e.TYPESCRIPT=45]="TYPESCRIPT",e[e.VISUALBASIC=46]="VISUALBASIC",e[e.VUE=47]="VUE",e[e.XML=48]="XML",e[e.XSL=49]="XSL",e[e.YAML=50]="YAML",e[e.SVELTE=51]="SVELTE",e[e.TOML=52]="TOML",e[e.DART=53]="DART",e[e.RST=54]="RST",e[e.OCAML=55]="OCAML",e[e.CMAKE=56]="CMAKE",e[e.PASCAL=57]="PASCAL",e[e.ELIXIR=58]="ELIXIR",e[e.FSHARP=59]="FSHARP",e[e.LISP=60]="LISP",e[e.MATLAB=61]="MATLAB",e[e.POWERSHELL=62]="POWERSHELL",e[e.SOLIDITY=63]="SOLIDITY",e[e.ADA=64]="ADA",e[e.OCAML_INTERFACE=65]="OCAML_INTERFACE"})(it||(it={})),E.util.setEnumType(it,"exa.codeium_common_pb.Language",[{no:0,name:"LANGUAGE_UNSPECIFIED"},{no:1,name:"LANGUAGE_C"},{no:2,name:"LANGUAGE_CLOJURE"},{no:3,name:"LANGUAGE_COFFEESCRIPT"},{no:4,name:"LANGUAGE_CPP"},{no:5,name:"LANGUAGE_CSHARP"},{no:6,name:"LANGUAGE_CSS"},{no:7,name:"LANGUAGE_CUDACPP"},{no:8,name:"LANGUAGE_DOCKERFILE"},{no:9,name:"LANGUAGE_GO"},{no:10,name:"LANGUAGE_GROOVY"},{no:11,name:"LANGUAGE_HANDLEBARS"},{no:12,name:"LANGUAGE_HASKELL"},{no:13,name:"LANGUAGE_HCL"},{no:14,name:"LANGUAGE_HTML"},{no:15,name:"LANGUAGE_INI"},{no:16,name:"LANGUAGE_JAVA"},{no:17,name:"LANGUAGE_JAVASCRIPT"},{no:18,name:"LANGUAGE_JSON"},{no:19,name:"LANGUAGE_JULIA"},{no:20,name:"LANGUAGE_KOTLIN"},{no:21,name:"LANGUAGE_LATEX"},{no:22,name:"LANGUAGE_LESS"},{no:23,name:"LANGUAGE_LUA"},{no:24,name:"LANGUAGE_MAKEFILE"},{no:25,name:"LANGUAGE_MARKDOWN"},{no:26,name:"LANGUAGE_OBJECTIVEC"},{no:27,name:"LANGUAGE_OBJECTIVECPP"},{no:28,name:"LANGUAGE_PERL"},{no:29,name:"LANGUAGE_PHP"},{no:30,name:"LANGUAGE_PLAINTEXT"},{no:31,name:"LANGUAGE_PROTOBUF"},{no:32,name:"LANGUAGE_PBTXT"},{no:33,name:"LANGUAGE_PYTHON"},{no:34,name:"LANGUAGE_R"},{no:35,name:"LANGUAGE_RUBY"},{no:36,name:"LANGUAGE_RUST"},{no:37,name:"LANGUAGE_SASS"},{no:38,name:"LANGUAGE_SCALA"},{no:39,name:"LANGUAGE_SCSS"},{no:40,name:"LANGUAGE_SHELL"},{no:41,name:"LANGUAGE_SQL"},{no:42,name:"LANGUAGE_STARLARK"},{no:43,name:"LANGUAGE_SWIFT"},{no:44,name:"LANGUAGE_TSX"},{no:45,name:"LANGUAGE_TYPESCRIPT"},{no:46,name:"LANGUAGE_VISUALBASIC"},{no:47,name:"LANGUAGE_VUE"},{no:48,name:"LANGUAGE_XML"},{no:49,name:"LANGUAGE_XSL"},{no:50,name:"LANGUAGE_YAML"},{no:51,name:"LANGUAGE_SVELTE"},{no:52,name:"LANGUAGE_TOML"},{no:53,name:"LANGUAGE_DART"},{no:54,name:"LANGUAGE_RST"},{no:55,name:"LANGUAGE_OCAML"},{no:56,name:"LANGUAGE_CMAKE"},{no:57,name:"LANGUAGE_PASCAL"},{no:58,name:"LANGUAGE_ELIXIR"},{no:59,name:"LANGUAGE_FSHARP"},{no:60,name:"LANGUAGE_LISP"},{no:61,name:"LANGUAGE_MATLAB"},{no:62,name:"LANGUAGE_POWERSHELL"},{no:63,name:"LANGUAGE_SOLIDITY"},{no:64,name:"LANGUAGE_ADA"},{no:65,name:"LANGUAGE_OCAML_INTERFACE"}]);var Cl=(Ee=class extends K{constructor(n){super();p(this,"completionId","");p(this,"text","");p(this,"prefix","");p(this,"stop","");p(this,"score",0);p(this,"tokens",[]);p(this,"decodedTokens",[]);p(this,"probabilities",[]);p(this,"adjustedProbabilities",[]);p(this,"generatedLength",V.zero);E.util.initPartial(n,this)}static fromBinary(n,r){return new Ee().fromBinary(n,r)}static fromJson(n,r){return new Ee().fromJson(n,r)}static fromJsonString(n,r){return new Ee().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Ee,n,r)}},p(Ee,"runtime",E),p(Ee,"typeName","exa.codeium_common_pb.Completion"),p(Ee,"fields",E.util.newFieldList(()=>[{no:1,name:"completion_id",kind:"scalar",T:9},{no:2,name:"text",kind:"scalar",T:9},{no:3,name:"prefix",kind:"scalar",T:9},{no:4,name:"stop",kind:"scalar",T:9},{no:5,name:"score",kind:"scalar",T:1},{no:6,name:"tokens",kind:"scalar",T:4,repeated:!0},{no:7,name:"decoded_tokens",kind:"scalar",T:9,repeated:!0},{no:8,name:"probabilities",kind:"scalar",T:1,repeated:!0},{no:9,name:"adjusted_probabilities",kind:"scalar",T:1,repeated:!0},{no:10,name:"generated_length",kind:"scalar",T:4}])),Ee),Fo=(Se=class extends K{constructor(n){super();p(this,"ideName","");p(this,"ideVersion","");p(this,"extensionName","");p(this,"extensionVersion","");p(this,"apiKey","");p(this,"locale","");p(this,"sessionId","");p(this,"requestId",V.zero);p(this,"userAgent","");p(this,"url","");p(this,"authSource",an.CODEIUM);E.util.initPartial(n,this)}static fromBinary(n,r){return new Se().fromBinary(n,r)}static fromJson(n,r){return new Se().fromJson(n,r)}static fromJsonString(n,r){return new Se().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Se,n,r)}},p(Se,"runtime",E),p(Se,"typeName","exa.codeium_common_pb.Metadata"),p(Se,"fields",E.util.newFieldList(()=>[{no:1,name:"ide_name",kind:"scalar",T:9},{no:7,name:"ide_version",kind:"scalar",T:9},{no:12,name:"extension_name",kind:"scalar",T:9},{no:2,name:"extension_version",kind:"scalar",T:9},{no:3,name:"api_key",kind:"scalar",T:9},{no:4,name:"locale",kind:"scalar",T:9},{no:10,name:"session_id",kind:"scalar",T:9},{no:9,name:"request_id",kind:"scalar",T:4},{no:13,name:"user_agent",kind:"scalar",T:9},{no:14,name:"url",kind:"scalar",T:9},{no:15,name:"auth_source",kind:"enum",T:E.getEnumType(an)}])),Se),xl=(Ce=class extends K{constructor(n){super();p(this,"tabSize",V.zero);p(this,"insertSpaces",!1);E.util.initPartial(n,this)}static fromBinary(n,r){return new Ce().fromBinary(n,r)}static fromJson(n,r){return new Ce().fromJson(n,r)}static fromJsonString(n,r){return new Ce().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Ce,n,r)}},p(Ce,"runtime",E),p(Ce,"typeName","exa.codeium_common_pb.EditorOptions"),p(Ce,"fields",E.util.newFieldList(()=>[{no:1,name:"tab_size",kind:"scalar",T:4},{no:2,name:"insert_spaces",kind:"scalar",T:8}])),Ce);xe=class extends K{constructor(n){super();p(this,"eventType",sn.UNSPECIFIED);p(this,"eventJson","");p(this,"timestampUnixMs",V.zero);E.util.initPartial(n,this)}static fromBinary(n,r){return new xe().fromBinary(n,r)}static fromJson(n,r){return new xe().fromJson(n,r)}static fromJsonString(n,r){return new xe().fromJsonString(n,r)}static equals(n,r){return E.util.equals(xe,n,r)}},p(xe,"runtime",E),p(xe,"typeName","exa.codeium_common_pb.Event"),p(xe,"fields",E.util.newFieldList(()=>[{no:1,name:"event_type",kind:"enum",T:E.getEnumType(sn)},{no:2,name:"event_json",kind:"scalar",T:9},{no:3,name:"timestamp_unix_ms",kind:"scalar",T:3}]));var Il=class extends jn{constructor(t,n){super();p(this,"index");p(this,"total");this.index=t,this.total=n}toDOM(){let t=document.createElement("span");t.setAttribute("aria-hidden","true"),t.className="cm-codeium-cycle";let n=t.appendChild(document.createElement("span"));n.className="cm-codeium-cycle-explanation",n.innerText=`${this.index+1}/${this.total}`;let r=t.appendChild(document.createElement("button"));return r.className="cm-codeium-cycle-key",r.innerText="\u2192 (Ctrl ])",r.dataset.action="codeium-cycle",t}ignoreEvent(){return!1}};const cn=Rt.define({combine(e){return Dn(e,{language:it.TYPESCRIPT,timeout:150,widgetClass:Il,alwaysOn:!0},{})}}),Mo=Rt.define({combine(e){return Dn(e,{override:()=>[]},{})}});var kl=$.mark({class:"cm-ghostText"});const st=ze.define({create(e){return null},update(e,t){var r;let n=t.state.facet(cn);for(let o of t.effects){if(o.is(zn)){let{changeSpecs:a,index:i}=o.value,s=a[i].map(l=>kl.range(l.absoluteStartPos,l.absoluteEndPos)),c=(r=s.at(-1))==null?void 0:r.to;return{index:i,decorations:$.set([...s,...c!==void 0&&a.length>1&&n.widgetClass?[$.widget({widget:new n.widgetClass(i,a.length),side:1}).range(c)]:[]]),changeSpecs:a,reverseChangeSet:o.value.reverseChangeSet}}if(o.is(Kn)||o.is(Yn))return null}return e&&{...e,decorations:e.decorations.map(t.changes),reverseChangeSet:e.reverseChangeSet.map(t.changes)}},provide:e=>J.decorations.from(e,t=>(t==null?void 0:t.decorations)||$.none)}),pt=Dr.define(),un=Dr.define();var R;(function(e){e[e.Canceled=1]="Canceled",e[e.Unknown=2]="Unknown",e[e.InvalidArgument=3]="InvalidArgument",e[e.DeadlineExceeded=4]="DeadlineExceeded",e[e.NotFound=5]="NotFound",e[e.AlreadyExists=6]="AlreadyExists",e[e.PermissionDenied=7]="PermissionDenied",e[e.ResourceExhausted=8]="ResourceExhausted",e[e.FailedPrecondition=9]="FailedPrecondition",e[e.Aborted=10]="Aborted",e[e.OutOfRange=11]="OutOfRange",e[e.Unimplemented=12]="Unimplemented",e[e.Internal=13]="Internal",e[e.Unavailable=14]="Unavailable",e[e.DataLoss=15]="DataLoss",e[e.Unauthenticated=16]="Unauthenticated"})(R||(R={}));function rr(e){let t=R[e];return typeof t=="string"?t[0].toLowerCase()+t.substring(1).replace(/[A-Z]/g,n=>"_"+n.toLowerCase()):e.toString()}var dn;function Tl(e){if(!dn){dn={};for(let t of Object.values(R))typeof t!="string"&&(dn[rr(t)]=t)}return dn[e]}var he=class Ct extends Error{constructor(t,n=R.Unknown,r,o,a){super(Nl(t,n)),this.name="ConnectError",Object.setPrototypeOf(this,new.target.prototype),this.rawMessage=t,this.code=n,this.metadata=new Headers(r??{}),this.details=o??[],this.cause=a}static from(t,n=R.Unknown){return t instanceof Ct?t:t instanceof Error?t.name=="AbortError"?new Ct(t.message,R.Canceled):new Ct(t.message,n,void 0,void 0,t):new Ct(String(t),n,void 0,void 0,t)}static[Symbol.hasInstance](t){return t instanceof Error?Object.getPrototypeOf(t)===Ct.prototype?!0:t.name==="ConnectError"&&"code"in t&&typeof t.code=="number"&&"metadata"in t&&"details"in t&&Array.isArray(t.details)&&"rawMessage"in t&&typeof t.rawMessage=="string"&&"cause"in t:!1}findDetails(t){let n="typeName"in t?{findMessage:o=>o===t.typeName?t:void 0}:t,r=[];for(let o of this.details){if("getType"in o){n.findMessage(o.getType().typeName)&&r.push(o);continue}let a=n.findMessage(o.type);if(a)try{r.push(a.fromBinary(o.value))}catch{}}return r}};function Nl(e,t){return e.length?`[${rr(t)}] ${e}`:`[${rr(t)}]`}function Al(...e){let t=new Headers;for(let n of e)n.forEach((r,o)=>{t.append(o,r)});return t}function Ll(e,t){let n={};for(let[r,o]of Object.entries(e.methods)){let a=t(Object.assign(Object.assign({},o),{localName:r,service:e}));a!=null&&(n[r]=a)}return n}function Ol(e){let t,n=new Uint8Array;function r(o){let a=new Uint8Array(n.length+o.length);a.set(n),a.set(o,n.length),n=a}return new ReadableStream({start(){t=e.getReader()},async pull(o){let a;for(;;){if(a===void 0&&n.byteLength>=5){let c=0;for(let l=1;l<5;l++)c=(c<<8)+n[l];a={flags:n[0],length:c}}if(a!==void 0&&n.byteLength>=a.length+5)break;let s=await t.read();if(s.done)break;r(s.value)}if(a===void 0){if(n.byteLength==0){o.close();return}o.error(new he("premature end of stream",R.DataLoss));return}let i=n.subarray(5,5+a.length);n=n.subarray(5+a.length),o.enqueue({flags:a.flags,data:i})}})}function _l(e,t){let n=new Uint8Array(t.length+5);n.set(t,5);let r=new DataView(n.buffer,n.byteOffset,n.byteLength);return r.setUint8(0,e),r.setUint32(1,t.length),n}var Ul=function(e){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof __values=="function"?__values(e):e[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(a){n[a]=e[a]&&function(i){return new Promise(function(s,c){i=e[a](i),o(s,c,i.done,i.value)})}}function o(a,i,s,c){Promise.resolve(c).then(function(l){a({value:l,done:s})},i)}},Ot=function(e){return this instanceof Ot?(this.v=e,this):new Ot(e)},jl=function(e,t,n){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),o,a=[];return o={},s("next"),s("throw"),s("return",i),o[Symbol.asyncIterator]=function(){return this},o;function i(f){return function(h){return Promise.resolve(h).then(f,d)}}function s(f,h){r[f]&&(o[f]=function(y){return new Promise(function(b,v){a.push([f,y,b,v])>1||c(f,y)})},h&&(o[f]=h(o[f])))}function c(f,h){try{l(r[f](h))}catch(y){m(a[0][3],y)}}function l(f){f.value instanceof Ot?Promise.resolve(f.value.v).then(u,d):m(a[0][2],f)}function u(f){c("next",f)}function d(f){c("throw",f)}function m(f,h){f(h),a.shift(),a.length&&c(a[0][0],a[0][1])}},Dl=function(e){var t,n;return t={},r("next"),r("throw",function(o){throw o}),r("return"),t[Symbol.iterator]=function(){return this},t;function r(o,a){t[o]=e[o]?function(i){return(n=!n)?{value:Ot(e[o](i)),done:!1}:a?a(i):i}:a}};function Pl(e){return jl(this,arguments,function*(){yield Ot(yield*Dl(Ul(e)))})}var Ro=function(e){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof __values=="function"?__values(e):e[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(a){n[a]=e[a]&&function(i){return new Promise(function(s,c){i=e[a](i),o(s,c,i.done,i.value)})}}function o(a,i,s,c){Promise.resolve(c).then(function(l){a({value:l,done:s})},i)}},ht=function(e){return this instanceof ht?(this.v=e,this):new ht(e)},Fl=function(e){var t,n;return t={},r("next"),r("throw",function(o){throw o}),r("return"),t[Symbol.iterator]=function(){return this},t;function r(o,a){t[o]=e[o]?function(i){return(n=!n)?{value:ht(e[o](i)),done:!1}:a?a(i):i}:a}},Ml=function(e,t,n){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),o,a=[];return o={},s("next"),s("throw"),s("return",i),o[Symbol.asyncIterator]=function(){return this},o;function i(f){return function(h){return Promise.resolve(h).then(f,d)}}function s(f,h){r[f]&&(o[f]=function(y){return new Promise(function(b,v){a.push([f,y,b,v])>1||c(f,y)})},h&&(o[f]=h(o[f])))}function c(f,h){try{l(r[f](h))}catch(y){m(a[0][3],y)}}function l(f){f.value instanceof ht?Promise.resolve(f.value.v).then(u,d):m(a[0][2],f)}function u(f){c("next",f)}function d(f){c("throw",f)}function m(f,h){f(h),a.shift(),a.length&&c(a[0][0],a[0][1])}};function Rl(e,t){return Ll(e,n=>{switch(n.kind){case ve.Unary:return Gl(t,e,n);case ve.ServerStreaming:return Jl(t,e,n);case ve.ClientStreaming:return Vl(t,e,n);case ve.BiDiStreaming:return $l(t,e,n);default:return null}})}function Bl(e,t){return Rl(e,t)}function Gl(e,t,n){return async function(r,o){var a,i;let s=await e.unary(t,n,o==null?void 0:o.signal,o==null?void 0:o.timeoutMs,o==null?void 0:o.headers,r,o==null?void 0:o.contextValues);return(a=o==null?void 0:o.onHeader)==null||a.call(o,s.header),(i=o==null?void 0:o.onTrailer)==null||i.call(o,s.trailer),s.message}}function Jl(e,t,n){return function(r,o){return Bo(e.stream(t,n,o==null?void 0:o.signal,o==null?void 0:o.timeoutMs,o==null?void 0:o.headers,Pl([r]),o==null?void 0:o.contextValues),o)}}function Vl(e,t,n){return async function(r,o){var a,i,s,c,l,u;let d=await e.stream(t,n,o==null?void 0:o.signal,o==null?void 0:o.timeoutMs,o==null?void 0:o.headers,r,o==null?void 0:o.contextValues);(l=o==null?void 0:o.onHeader)==null||l.call(o,d.header);let m,f=0;try{for(var h=!0,y=Ro(d.message),b;b=await y.next(),a=b.done,!a;h=!0)c=b.value,h=!1,m=c,f++}catch(v){i={error:v}}finally{try{!h&&!a&&(s=y.return)&&await s.call(y)}finally{if(i)throw i.error}}if(!m)throw new he("protocol error: missing response message",R.Unimplemented);if(f>1)throw new he("protocol error: received extra messages for client streaming method",R.Unimplemented);return(u=o==null?void 0:o.onTrailer)==null||u.call(o,d.trailer),m}}function $l(e,t,n){return function(r,o){return Bo(e.stream(t,n,o==null?void 0:o.signal,o==null?void 0:o.timeoutMs,o==null?void 0:o.headers,r,o==null?void 0:o.contextValues),o)}}function Bo(e,t){let n=(function(){return Ml(this,arguments,function*(){var r,o;let a=yield ht(e);(r=t==null?void 0:t.onHeader)==null||r.call(t,a.header),yield ht(yield*Fl(Ro(a.message))),(o=t==null?void 0:t.onTrailer)==null||o.call(t,a.trailer)})})()[Symbol.asyncIterator]();return{[Symbol.asyncIterator]:()=>({next:()=>n.next()})}}function Wl(...e){let t=new AbortController,n=e.filter(o=>o!==void 0).concat(t.signal);for(let o of n){if(o.aborted){r.apply(o);break}o.addEventListener("abort",r)}function r(){t.signal.aborted||t.abort(Go(this));for(let o of n)o.removeEventListener("abort",r)}return t}function ql(e){let t=new AbortController,n=()=>{t.abort(new he("the operation timed out",R.DeadlineExceeded))},r;return e!==void 0&&(e<=0?n():r=setTimeout(n,e)),{signal:t.signal,cleanup:()=>clearTimeout(r)}}function Go(e){if(!e.aborted)return;if(e.reason!==void 0)return e.reason;let t=Error("This operation was aborted");return t.name="AbortError",t}function Jo(){return{get(e){return e.id in this?this[e.id]:e.defaultValue},set(e,t){return this[e.id]=t,this},delete(e){return delete this[e.id],this}}}function Vo(e,t,n){let r=typeof t=="string"?t:t.typeName,o=typeof n=="string"?n:n.name;return e.toString().replace(/\/?$/,`/${r}/${o}`)}function $o(e,t){return t instanceof e?t:new e(t)}function Hl(e,t){function n(r){return r.done===!0?r:{done:r.done,value:$o(e,r.value)}}return{[Symbol.asyncIterator](){let r=t[Symbol.asyncIterator](),o={next:()=>r.next().then(n)};return r.throw!==void 0&&(o.throw=a=>r.throw(a).then(n)),r.return!==void 0&&(o.return=a=>r.return(a).then(n)),o}}}function Wo(e,t){return(t==null?void 0:t.concat().reverse().reduce((n,r)=>r(n),e))??e}function qo(e){let t=Object.assign({},e);return t.ignoreUnknownFields??(t.ignoreUnknownFields=!0),t}function Ho(e,t,n,r){let o=t?zo(e.I,r):Ko(e.I,n);return{parse:(t?zo(e.O,r):Ko(e.O,n)).parse,serialize:o.serialize}}function zo(e,t){return{parse(n){try{return e.fromBinary(n,t)}catch(r){throw new he(`parse binary: ${r instanceof Error?r.message:String(r)}`,R.Internal)}},serialize(n){try{return n.toBinary(t)}catch(r){throw new he(`serialize binary: ${r instanceof Error?r.message:String(r)}`,R.Internal)}}}}function Ko(e,t){let n=(t==null?void 0:t.textEncoder)??new TextEncoder,r=(t==null?void 0:t.textDecoder)??new TextDecoder,o=qo(t);return{parse(a){try{let i=r.decode(a);return e.fromJsonString(i,o)}catch(i){throw he.from(i,R.InvalidArgument)}},serialize(a){try{let i=a.toJsonString(o);return n.encode(i)}catch(i){throw he.from(i,R.Internal)}}}}const zl=/^application\/(connect\+)?(?:(json)(?:; ?charset=utf-?8)?|(proto))$/i;function Kl(e){let t=e==null?void 0:e.match(zl);if(t)return{stream:!!t[1],binary:!!t[3]}}function Yo(e,t,n){if(t&&new Headers(t).forEach((i,s)=>n.metadata.append(s,i)),typeof e!="object"||!e||Array.isArray(e))throw n;let r=n.code;"code"in e&&typeof e.code=="string"&&(r=Tl(e.code)??r);let o=e.message;if(o!=null&&typeof o!="string")throw n;let a=new he(o??"",r,t);if("details"in e&&Array.isArray(e.details))for(let i of e.details){if(typeof i!="object"||!i||Array.isArray(i)||typeof i.type!="string"||typeof i.value!="string")throw n;try{a.details.push({type:i.type,value:Qt.dec(i.value),debug:i.debug})}catch{throw n}}return a}function Yl(e){let t=new he("invalid end stream",R.Unknown),n;try{n=JSON.parse(typeof e=="string"?e:new TextDecoder().decode(e))}catch{throw t}if(typeof n!="object"||!n||Array.isArray(n))throw t;let r=new Headers;if("metadata"in n){if(typeof n.metadata!="object"||n.metadata==null||Array.isArray(n.metadata))throw t;for(let[o,a]of Object.entries(n.metadata)){if(!Array.isArray(a)||a.some(i=>typeof i!="string"))throw t;for(let i of a)r.append(o,i)}}return{metadata:r,error:"error"in n&&n.error!=null?Yo(n.error,r,t):void 0}}const fn="Content-Type",Xo="Content-Encoding",Qo="Connect-Protocol-Version";function Xl(e){switch(e){case 400:return R.Internal;case 401:return R.Unauthenticated;case 403:return R.PermissionDenied;case 404:return R.Unimplemented;case 429:return R.Unavailable;case 502:return R.Unavailable;case 503:return R.Unavailable;case 504:return R.Unavailable;default:return R.Unknown}}function Zo(e){let t=new Headers,n=new Headers;return e.forEach((r,o)=>{o.toLowerCase().startsWith("trailer-")?n.append(o.substring(8),r):t.append(o,r)}),[t,n]}function ea(e,t,n,r,o){let a=new Headers(r??{});return n!==void 0&&a.set("Connect-Timeout-Ms",`${n}`),a.set(fn,e==ve.Unary?t?"application/proto":"application/json":t?"application/connect+proto":"application/connect+json"),a.set(Qo,"1"),o&&a.set("User-Agent","connect-es/1.6.1"),a}function ta(e,t,n,r){let o=r.get(fn),a=Kl(o);if(n!==200){let s=new he(`HTTP ${n}`,Xl(n),r);if(e==ve.Unary&&a&&!a.binary)return{isUnaryError:!0,unaryError:s};throw s}let i={binary:t,stream:e!==ve.Unary};if((a==null?void 0:a.binary)!==i.binary||a.stream!==i.stream)throw new he(`unsupported content type ${o}`,a===void 0?R.Unknown:R.Internal,r);return{isUnaryError:!1}}var Ql="application/";function Zl(e,t){return t?Qt.enc(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""):encodeURIComponent(new TextDecoder().decode(e))}function ec(e,t,n){let r="?connect=v1",o=e.header.get(fn);(o==null?void 0:o.indexOf(Ql))===0&&(r+="&encoding="+encodeURIComponent(o.slice(12)));let a=e.header.get(Xo);a!==null&&a!=="identity"&&(r+="&compression="+encodeURIComponent(a),n=!0),n&&(r+="&base64=1"),r+="&message="+Zl(t,n);let i=e.url+r,s=new Headers(e.header);return[Qo,fn,"Content-Length",Xo,"Accept-Encoding"].forEach(c=>s.delete(c)),Object.assign(Object.assign({},e),{init:Object.assign(Object.assign({},e.init),{method:"GET"}),url:i,header:s})}function tc(e){let t=Wo(e.next,e.interceptors),[n,r,o]=na(e);return t(Object.assign(Object.assign({},e.req),{message:$o(e.req.method.I,e.req.message),signal:n})).then(a=>(o(),a),r)}function nc(e){let t=Wo(e.next,e.interceptors),[n,r,o]=na(e),a=Object.assign(Object.assign({},e.req),{message:Hl(e.req.method.I,e.req.message),signal:n}),i=!1;return n.addEventListener("abort",function(){var s,c;let l=e.req.message[Symbol.asyncIterator]();i||(s=l.throw)==null||s.call(l,this.reason).catch(()=>{}),(c=l.return)==null||c.call(l).catch(()=>{})}),t(a).then(s=>Object.assign(Object.assign({},s),{message:{[Symbol.asyncIterator](){let c=s.message[Symbol.asyncIterator]();return{next(){return c.next().then(l=>(l.done==1&&(i=!0,o()),l),r)}}}}}),r)}function na(e){let{signal:t,cleanup:n}=ql(e.timeoutMs),r=Wl(e.signal,t);return[r.signal,function(o){let a=he.from(t.aborted?Go(t):o);return r.abort(a),n(),Promise.reject(a)},function(){n(),r.abort()}]}var mn;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.INACTIVE=1]="INACTIVE",e[e.PROCESSING=2]="PROCESSING",e[e.SUCCESS=3]="SUCCESS",e[e.WARNING=4]="WARNING",e[e.ERROR=5]="ERROR"})(mn||(mn={})),E.util.setEnumType(mn,"exa.language_server_pb.CodeiumState",[{no:0,name:"CODEIUM_STATE_UNSPECIFIED"},{no:1,name:"CODEIUM_STATE_INACTIVE"},{no:2,name:"CODEIUM_STATE_PROCESSING"},{no:3,name:"CODEIUM_STATE_SUCCESS"},{no:4,name:"CODEIUM_STATE_WARNING"},{no:5,name:"CODEIUM_STATE_ERROR"}]);var ra;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.SINGLE=1]="SINGLE",e[e.MULTI=2]="MULTI"})(ra||(ra={})),E.util.setEnumType(ra,"exa.language_server_pb.LineType",[{no:0,name:"LINE_TYPE_UNSPECIFIED"},{no:1,name:"LINE_TYPE_SINGLE"},{no:2,name:"LINE_TYPE_MULTI"}]);var pn;(function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.INLINE=1]="INLINE",e[e.BLOCK=2]="BLOCK",e[e.INLINE_MASK=3]="INLINE_MASK"})(pn||(pn={})),E.util.setEnumType(pn,"exa.language_server_pb.CompletionPartType",[{no:0,name:"COMPLETION_PART_TYPE_UNSPECIFIED"},{no:1,name:"COMPLETION_PART_TYPE_INLINE"},{no:2,name:"COMPLETION_PART_TYPE_BLOCK"},{no:3,name:"COMPLETION_PART_TYPE_INLINE_MASK"}]);var rc=(Ie=class extends K{constructor(n){super();p(this,"threshold",0);E.util.initPartial(n,this)}static fromBinary(n,r){return new Ie().fromBinary(n,r)}static fromJson(n,r){return new Ie().fromJson(n,r)}static fromJsonString(n,r){return new Ie().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Ie,n,r)}},p(Ie,"runtime",E),p(Ie,"typeName","exa.language_server_pb.MultilineConfig"),p(Ie,"fields",E.util.newFieldList(()=>[{no:1,name:"threshold",kind:"scalar",T:2}])),Ie),oc=(ke=class extends K{constructor(n){super();p(this,"metadata");p(this,"document");p(this,"editorOptions");p(this,"otherDocuments",[]);p(this,"experimentConfig");p(this,"modelName","");p(this,"multilineConfig");E.util.initPartial(n,this)}static fromBinary(n,r){return new ke().fromBinary(n,r)}static fromJson(n,r){return new ke().fromJson(n,r)}static fromJsonString(n,r){return new ke().fromJsonString(n,r)}static equals(n,r){return E.util.equals(ke,n,r)}},p(ke,"runtime",E),p(ke,"typeName","exa.language_server_pb.GetCompletionsRequest"),p(ke,"fields",E.util.newFieldList(()=>[{no:1,name:"metadata",kind:"message",T:Fo},{no:2,name:"document",kind:"message",T:oa},{no:3,name:"editor_options",kind:"message",T:xl},{no:5,name:"other_documents",kind:"message",T:oa,repeated:!0},{no:7,name:"experiment_config",kind:"message",T:uc},{no:10,name:"model_name",kind:"scalar",T:9},{no:13,name:"multiline_config",kind:"message",T:rc}])),ke),ac=(Te=class extends K{constructor(n){super();p(this,"state");p(this,"completionItems",[]);E.util.initPartial(n,this)}static fromBinary(n,r){return new Te().fromBinary(n,r)}static fromJson(n,r){return new Te().fromJson(n,r)}static fromJsonString(n,r){return new Te().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Te,n,r)}},p(Te,"runtime",E),p(Te,"typeName","exa.language_server_pb.GetCompletionsResponse"),p(Te,"fields",E.util.newFieldList(()=>[{no:1,name:"state",kind:"message",T:dc},{no:2,name:"completion_items",kind:"message",T:hc,repeated:!0}])),Te),ic=(Ne=class extends K{constructor(n){super();p(this,"metadata");p(this,"completionId","");E.util.initPartial(n,this)}static fromBinary(n,r){return new Ne().fromBinary(n,r)}static fromJson(n,r){return new Ne().fromJson(n,r)}static fromJsonString(n,r){return new Ne().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Ne,n,r)}},p(Ne,"runtime",E),p(Ne,"typeName","exa.language_server_pb.AcceptCompletionRequest"),p(Ne,"fields",E.util.newFieldList(()=>[{no:1,name:"metadata",kind:"message",T:Fo},{no:2,name:"completion_id",kind:"scalar",T:9}])),Ne),sc=(Ae=class extends K{constructor(t){super(),E.util.initPartial(t,this)}static fromBinary(t,n){return new Ae().fromBinary(t,n)}static fromJson(t,n){return new Ae().fromJson(t,n)}static fromJsonString(t,n){return new Ae().fromJsonString(t,n)}static equals(t,n){return E.util.equals(Ae,t,n)}},p(Ae,"runtime",E),p(Ae,"typeName","exa.language_server_pb.AcceptCompletionResponse"),p(Ae,"fields",E.util.newFieldList(()=>[])),Ae),lc=(Le=class extends K{constructor(t){super(),E.util.initPartial(t,this)}static fromBinary(t,n){return new Le().fromBinary(t,n)}static fromJson(t,n){return new Le().fromJson(t,n)}static fromJsonString(t,n){return new Le().fromJsonString(t,n)}static equals(t,n){return E.util.equals(Le,t,n)}},p(Le,"runtime",E),p(Le,"typeName","exa.language_server_pb.GetAuthTokenRequest"),p(Le,"fields",E.util.newFieldList(()=>[])),Le),cc=(Oe=class extends K{constructor(n){super();p(this,"authToken","");p(this,"uuid","");E.util.initPartial(n,this)}static fromBinary(n,r){return new Oe().fromBinary(n,r)}static fromJson(n,r){return new Oe().fromJson(n,r)}static fromJsonString(n,r){return new Oe().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Oe,n,r)}},p(Oe,"runtime",E),p(Oe,"typeName","exa.language_server_pb.GetAuthTokenResponse"),p(Oe,"fields",E.util.newFieldList(()=>[{no:1,name:"auth_token",kind:"scalar",T:9},{no:2,name:"uuid",kind:"scalar",T:9}])),Oe),or=(_e=class extends K{constructor(n){super();p(this,"row",V.zero);p(this,"col",V.zero);E.util.initPartial(n,this)}static fromBinary(n,r){return new _e().fromBinary(n,r)}static fromJson(n,r){return new _e().fromJson(n,r)}static fromJsonString(n,r){return new _e().fromJsonString(n,r)}static equals(n,r){return E.util.equals(_e,n,r)}},p(_e,"runtime",E),p(_e,"typeName","exa.language_server_pb.DocumentPosition"),p(_e,"fields",E.util.newFieldList(()=>[{no:1,name:"row",kind:"scalar",T:4},{no:2,name:"col",kind:"scalar",T:4}])),_e),oa=(Ue=class extends K{constructor(n){super();p(this,"absolutePath","");p(this,"relativePath","");p(this,"text","");p(this,"editorLanguage","");p(this,"language",it.UNSPECIFIED);p(this,"cursorOffset",V.zero);p(this,"cursorPosition");p(this,"lineEnding","");E.util.initPartial(n,this)}static fromBinary(n,r){return new Ue().fromBinary(n,r)}static fromJson(n,r){return new Ue().fromJson(n,r)}static fromJsonString(n,r){return new Ue().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Ue,n,r)}},p(Ue,"runtime",E),p(Ue,"typeName","exa.language_server_pb.Document"),p(Ue,"fields",E.util.newFieldList(()=>[{no:1,name:"absolute_path",kind:"scalar",T:9},{no:2,name:"relative_path",kind:"scalar",T:9},{no:3,name:"text",kind:"scalar",T:9},{no:4,name:"editor_language",kind:"scalar",T:9},{no:5,name:"language",kind:"enum",T:E.getEnumType(it)},{no:6,name:"cursor_offset",kind:"scalar",T:4},{no:8,name:"cursor_position",kind:"message",T:or},{no:7,name:"line_ending",kind:"scalar",T:9}])),Ue),uc=(je=class extends K{constructor(n){super();p(this,"forceEnableExperiments",[]);E.util.initPartial(n,this)}static fromBinary(n,r){return new je().fromBinary(n,r)}static fromJson(n,r){return new je().fromJson(n,r)}static fromJsonString(n,r){return new je().fromJsonString(n,r)}static equals(n,r){return E.util.equals(je,n,r)}},p(je,"runtime",E),p(je,"typeName","exa.language_server_pb.ExperimentConfig"),p(je,"fields",E.util.newFieldList(()=>[{no:1,name:"force_enable_experiments",kind:"enum",T:E.getEnumType(nr),repeated:!0}])),je),dc=(De=class extends K{constructor(n){super();p(this,"state",mn.UNSPECIFIED);p(this,"message","");E.util.initPartial(n,this)}static fromBinary(n,r){return new De().fromBinary(n,r)}static fromJson(n,r){return new De().fromJson(n,r)}static fromJsonString(n,r){return new De().fromJsonString(n,r)}static equals(n,r){return E.util.equals(De,n,r)}},p(De,"runtime",E),p(De,"typeName","exa.language_server_pb.State"),p(De,"fields",E.util.newFieldList(()=>[{no:1,name:"state",kind:"enum",T:E.getEnumType(mn)},{no:2,name:"message",kind:"scalar",T:9}])),De),fc=(Pe=class extends K{constructor(n){super();p(this,"startOffset",V.zero);p(this,"endOffset",V.zero);p(this,"startPosition");p(this,"endPosition");E.util.initPartial(n,this)}static fromBinary(n,r){return new Pe().fromBinary(n,r)}static fromJson(n,r){return new Pe().fromJson(n,r)}static fromJsonString(n,r){return new Pe().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Pe,n,r)}},p(Pe,"runtime",E),p(Pe,"typeName","exa.language_server_pb.Range"),p(Pe,"fields",E.util.newFieldList(()=>[{no:1,name:"start_offset",kind:"scalar",T:4},{no:2,name:"end_offset",kind:"scalar",T:4},{no:3,name:"start_position",kind:"message",T:or},{no:4,name:"end_position",kind:"message",T:or}])),Pe),mc=(Fe=class extends K{constructor(n){super();p(this,"text","");p(this,"deltaCursorOffset",V.zero);E.util.initPartial(n,this)}static fromBinary(n,r){return new Fe().fromBinary(n,r)}static fromJson(n,r){return new Fe().fromJson(n,r)}static fromJsonString(n,r){return new Fe().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Fe,n,r)}},p(Fe,"runtime",E),p(Fe,"typeName","exa.language_server_pb.Suffix"),p(Fe,"fields",E.util.newFieldList(()=>[{no:1,name:"text",kind:"scalar",T:9},{no:2,name:"delta_cursor_offset",kind:"scalar",T:3}])),Fe),pc=(Me=class extends K{constructor(n){super();p(this,"text","");p(this,"offset",V.zero);p(this,"type",pn.UNSPECIFIED);p(this,"prefix","");p(this,"line",V.zero);E.util.initPartial(n,this)}static fromBinary(n,r){return new Me().fromBinary(n,r)}static fromJson(n,r){return new Me().fromJson(n,r)}static fromJsonString(n,r){return new Me().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Me,n,r)}},p(Me,"runtime",E),p(Me,"typeName","exa.language_server_pb.CompletionPart"),p(Me,"fields",E.util.newFieldList(()=>[{no:1,name:"text",kind:"scalar",T:9},{no:2,name:"offset",kind:"scalar",T:4},{no:3,name:"type",kind:"enum",T:E.getEnumType(pn)},{no:4,name:"prefix",kind:"scalar",T:9},{no:5,name:"line",kind:"scalar",T:4}])),Me),hc=(Re=class extends K{constructor(n){super();p(this,"completion");p(this,"suffix");p(this,"range");p(this,"source",ln.UNSPECIFIED);p(this,"completionParts",[]);E.util.initPartial(n,this)}static fromBinary(n,r){return new Re().fromBinary(n,r)}static fromJson(n,r){return new Re().fromJson(n,r)}static fromJsonString(n,r){return new Re().fromJsonString(n,r)}static equals(n,r){return E.util.equals(Re,n,r)}},p(Re,"runtime",E),p(Re,"typeName","exa.language_server_pb.CompletionItem"),p(Re,"fields",E.util.newFieldList(()=>[{no:1,name:"completion",kind:"message",T:Cl},{no:5,name:"suffix",kind:"message",T:mc},{no:2,name:"range",kind:"message",T:fc},{no:3,name:"source",kind:"enum",T:E.getEnumType(ln)},{no:8,name:"completion_parts",kind:"message",T:pc,repeated:!0}])),Re);const gc={typeName:"exa.language_server_pb.LanguageServerService",methods:{getCompletions:{name:"GetCompletions",I:oc,O:ac,kind:ve.Unary},acceptCompletion:{name:"AcceptCompletion",I:ic,O:sc,kind:ve.Unary},getAuthToken:{name:"GetAuthToken",I:lc,O:cc,kind:ve.Unary}}};function yc(){try{new Headers}catch{throw Error("connect-web requires the fetch API. Are you running on an old version of Node.js? Node.js is not supported in Connect for Web - please stay tuned for Connect for Node.")}}var _t=function(e){return this instanceof _t?(this.v=e,this):new _t(e)},bc=function(e,t,n){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),o,a=[];return o={},s("next"),s("throw"),s("return",i),o[Symbol.asyncIterator]=function(){return this},o;function i(f){return function(h){return Promise.resolve(h).then(f,d)}}function s(f,h){r[f]&&(o[f]=function(y){return new Promise(function(b,v){a.push([f,y,b,v])>1||c(f,y)})},h&&(o[f]=h(o[f])))}function c(f,h){try{l(r[f](h))}catch(y){m(a[0][3],y)}}function l(f){f.value instanceof _t?Promise.resolve(f.value.v).then(u,d):m(a[0][2],f)}function u(f){c("next",f)}function d(f){c("throw",f)}function m(f,h){f(h),a.shift(),a.length&&c(a[0][0],a[0][1])}};function wc(e){yc();let t=e.useBinaryFormat??!1;return{async unary(n,r,o,a,i,s,c){let{serialize:l,parse:u}=Ho(r,t,e.jsonOptions,e.binaryOptions);return a=a===void 0?e.defaultTimeoutMs:a<=0?void 0:a,await tc({interceptors:e.interceptors,signal:o,timeoutMs:a,req:{stream:!1,service:n,method:r,url:Vo(e.baseUrl,n,r),init:{method:"POST",credentials:e.credentials??"same-origin",redirect:"error",mode:"cors"},header:ea(r.kind,t,a,i,!1),contextValues:c??Jo(),message:s},next:async d=>{let m=e.useHttpGet===!0&&r.idempotency===Po.NoSideEffects,f=null;m?d=ec(d,l(d.message),t):f=l(d.message);let h=await(e.fetch??globalThis.fetch)(d.url,Object.assign(Object.assign({},d.init),{headers:d.header,signal:d.signal,body:f})),{isUnaryError:y,unaryError:b}=ta(r.kind,t,h.status,h.headers);if(y)throw Yo(await h.json(),Al(...Zo(h.headers)),b);let[v,C]=Zo(h.headers);return{stream:!1,service:n,method:r,header:v,message:t?u(new Uint8Array(await h.arrayBuffer())):r.O.fromJson(await h.json(),qo(e.jsonOptions)),trailer:C}}})},async stream(n,r,o,a,i,s,c){let{serialize:l,parse:u}=Ho(r,t,e.jsonOptions,e.binaryOptions);function d(f,h,y,b){return bc(this,arguments,function*(){let v=Ol(f).getReader(),C=!1;for(;;){let x=yield _t(v.read());if(x.done)break;let{flags:_,data:D}=x.value;if((_&1)==1)throw new he("protocol error: received unsupported compressed output",R.Internal);if((_&2)==2){C=!0;let A=Yl(D);if(A.error){let k=A.error;throw y.forEach((B,F)=>{k.metadata.append(F,B)}),k}A.metadata.forEach((k,B)=>h.set(B,k));continue}yield yield _t(u(D))}if("throwIfAborted"in b&&b.throwIfAborted(),!C)throw"missing EndStreamResponse"})}async function m(f){if(r.kind!=ve.ServerStreaming)throw"The fetch API does not support streaming request bodies";let h=await f[Symbol.asyncIterator]().next();if(h.done==1)throw"missing request message";return _l(0,l(h.value))}return a=a===void 0?e.defaultTimeoutMs:a<=0?void 0:a,await nc({interceptors:e.interceptors,timeoutMs:a,signal:o,req:{stream:!0,service:n,method:r,url:Vo(e.baseUrl,n,r),init:{method:"POST",credentials:e.credentials??"same-origin",redirect:"error",mode:"cors"},header:ea(r.kind,t,a,i,!1),contextValues:c??Jo(),message:s},next:async f=>{let h=await(e.fetch??globalThis.fetch)(f.url,Object.assign(Object.assign({},f.init),{headers:f.header,signal:f.signal,body:await m(f.message)}));if(ta(r.kind,t,h.status,h.headers),h.body===null)throw"missing response body";let y=new Headers;return Object.assign(Object.assign({},f),{header:h.headers,trailer:y,message:d(h.body,y,h.headers,f.signal)})}})}}}var vc=Bl(gc,wc({baseUrl:"https://web-backend.codeium.com",useBinaryFormat:!0})),hn;try{hn=crypto.randomUUID()}catch{hn=function(){return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,t=>(t^(crypto.getRandomValues(new Uint8Array(1))[0]??0)&15>>t/4).toString(16))}()}async function Ec({text:e,cursorOffset:t,config:n,otherDocuments:r}){return await vc.getCompletions({metadata:{ideName:"web",ideVersion:"0.0.5",extensionName:"@valtown/codemirror-codeium",extensionVersion:"1.0.0",apiKey:n.apiKey,sessionId:hn,authSource:n.authSource},document:{text:e,cursorOffset:BigInt(t),language:n.language,editorLanguage:"typescript",lineEnding:`
|
|
14
14
|
`},editorOptions:{tabSize:2n,insertSpaces:!0},otherDocuments:r,multilineConfig:void 0},{headers:{Authorization:`Basic ${n.apiKey}-${hn}`}})}function Sc(e){return e.completionItems.map(t=>{let n=0;return t.completionParts.filter(r=>r.type!==3).map(r=>{let o=Number(r.offset),a=r.type===2?`
|
|
15
|
-
${r.text}`:r.text,i={absoluteStartPos:n+o,absoluteEndPos:n+o+a.length,from:o,to:o,insert:a};return n+=a.length,i})})}async function Cc(e,t){let n=e.state.facet(cn),{override:r}=e.state.facet(Mo),o=await r(),a=e.state,i=a.selection.main.head,s=a.doc.toString();try{let c=await Ec({text:s,cursorOffset:i,config:n,otherDocuments:o});if(!c||c.completionItems.length===0||!((t===void 0||i===t)&&Gt(e.state)!=="active"&&e.hasFocus))return;let l=Sc(c),u=l.at(0);if(!u)return;let d=Un.of(u,a.doc.length),m=d.invert(a.doc);e.dispatch({changes:d,effects:zn.of({index:0,reverseChangeSet:m,changeSpecs:l}),annotations:[un.of(null),pt.of(null),Bt.addToHistory.of(!1)]})}catch(c){console.warn("copilot completion failed",c),await new Promise(l=>setTimeout(l,300))}}function xc(e){return e.docChanged&&!e.transactions.some(t=>t.effects.some(n=>n.is(Kn)||n.is(Yn)))}function Ic(e){if(!e.view.hasFocus||e.state.field(st)||Gt(e.state)==="active")return!0;for(let t of e.transactions)if(t.annotation(pt)!==void 0)return!0}function kc(){let e=null,t=0;return J.updateListener.of(n=>{let r=n.view.state.facet(cn);if(!r.alwaysOn||!xc(n)||(e&&clearTimeout(e),Ic(n)))return;let o=n.state.selection.main.head;r.shouldComplete&&!r.shouldComplete(new Um(n.view.state,o,!1))||(e=setTimeout(async()=>{o===t&&await Cc(n.view,t)},r.timeout),t=o)})}function aa(e){var o;let t=e.state.field(st);if(!t)return!1;let n=(o=t.reverseChangeSet)==null?void 0:o.invert(e.state.doc);e.dispatch({changes:t.reverseChangeSet,effects:Kn.of(null),annotations:[un.of(null),pt.of(null),Bt.addToHistory.of(!1)]});let r=0;return n==null||n.iterChangedRanges((a,i,s,c)=>{r=c}),e.dispatch({changes:n,selection:wt.cursor(r),annotations:[pt.of(null),Bt.addToHistory.of(!0)]}),!0}const ia=e=>{let{state:t}=e,n=t.field(st);if(!n)return!1;let{changeSpecs:r}=n;if(r.length<2)return!1;let o=(n.index+1)%r.length,a=r.at(o);if(!a)return!1;let i=n.reverseChangeSet.apply(t.doc),s=Un.of(n.reverseChangeSet,t.doc.length).compose(Un.of(a,i.length)),c=Un.of(a,i.length).invert(i);return e.dispatch({changes:s,effects:zn.of({index:o,reverseChangeSet:c,changeSpecs:r}),annotations:[un.of(null),pt.of(null),Bt.addToHistory.of(!1)]}),!0};function ar(e){let t=e.state.field(st);return t&&e.dispatch({changes:t.reverseChangeSet,effects:Yn.of(null),annotations:[un.of(null),pt.of(null),Bt.addToHistory.of(!1)]}),!1}function Tc(e,t){return e.state.field(st)?t==="Tab"?aa(e):ar(e):!1}function Nc(e){var o,a;let t=!1,n=(o=e.state.selection.asSingle().ranges.at(0))==null?void 0:o.head,r=e.state.field(st);return n!==void 0&&r?((a=r.decorations)==null||a.between(n,n,()=>{t=!0}),t):!1}function Ac(){return J.domEventHandlers({keydown(e,t){return e.key==="]"&&e.ctrlKey?!1:e.key!=="Shift"&&e.key!=="Control"&&e.key!=="Alt"&&e.key!=="Meta"?Tc(t,e.key):!1},mouseup(e,t){let n=e.target;return n.nodeName==="BUTTON"&&n.dataset.action==="codeium-cycle"?(ia(t),e.stopPropagation(),e.preventDefault(),!0):Nc(t)?aa(t):ar(t)}})}function Lc(){return We.of([{key:"Ctrl-]",run:ia}])}function Oc(){return J.updateListener.of(e=>{e.focusChanged&&ar(e.view)})}function _c(e){return[cn.of(e),st,ct.highest(Lc()),ct.highest(Oc()),ct.high(Ac()),kc()]}function Uc({response:e,prefix:t,suffix:n}){if(!e)return e;let r=e;return t&&r.startsWith(t)&&(r=r.slice(t.length)),n&&r.endsWith(n)&&(r=r.slice(0,-n.length)),r}var
|
|
15
|
+
${r.text}`:r.text,i={absoluteStartPos:n+o,absoluteEndPos:n+o+a.length,from:o,to:o,insert:a};return n+=a.length,i})})}async function Cc(e,t){let n=e.state.facet(cn),{override:r}=e.state.facet(Mo),o=await r(),a=e.state,i=a.selection.main.head,s=a.doc.toString();try{let c=await Ec({text:s,cursorOffset:i,config:n,otherDocuments:o});if(!c||c.completionItems.length===0||!((t===void 0||i===t)&&Gt(e.state)!=="active"&&e.hasFocus))return;let l=Sc(c),u=l.at(0);if(!u)return;let d=Un.of(u,a.doc.length),m=d.invert(a.doc);e.dispatch({changes:d,effects:zn.of({index:0,reverseChangeSet:m,changeSpecs:l}),annotations:[un.of(null),pt.of(null),Bt.addToHistory.of(!1)]})}catch(c){console.warn("copilot completion failed",c),await new Promise(l=>setTimeout(l,300))}}function xc(e){return e.docChanged&&!e.transactions.some(t=>t.effects.some(n=>n.is(Kn)||n.is(Yn)))}function Ic(e){if(!e.view.hasFocus||e.state.field(st)||Gt(e.state)==="active")return!0;for(let t of e.transactions)if(t.annotation(pt)!==void 0)return!0}function kc(){let e=null,t=0;return J.updateListener.of(n=>{let r=n.view.state.facet(cn);if(!r.alwaysOn||!xc(n)||(e&&clearTimeout(e),Ic(n)))return;let o=n.state.selection.main.head;r.shouldComplete&&!r.shouldComplete(new Um(n.view.state,o,!1))||(e=setTimeout(async()=>{o===t&&await Cc(n.view,t)},r.timeout),t=o)})}function aa(e){var o;let t=e.state.field(st);if(!t)return!1;let n=(o=t.reverseChangeSet)==null?void 0:o.invert(e.state.doc);e.dispatch({changes:t.reverseChangeSet,effects:Kn.of(null),annotations:[un.of(null),pt.of(null),Bt.addToHistory.of(!1)]});let r=0;return n==null||n.iterChangedRanges((a,i,s,c)=>{r=c}),e.dispatch({changes:n,selection:wt.cursor(r),annotations:[pt.of(null),Bt.addToHistory.of(!0)]}),!0}const ia=e=>{let{state:t}=e,n=t.field(st);if(!n)return!1;let{changeSpecs:r}=n;if(r.length<2)return!1;let o=(n.index+1)%r.length,a=r.at(o);if(!a)return!1;let i=n.reverseChangeSet.apply(t.doc),s=Un.of(n.reverseChangeSet,t.doc.length).compose(Un.of(a,i.length)),c=Un.of(a,i.length).invert(i);return e.dispatch({changes:s,effects:zn.of({index:o,reverseChangeSet:c,changeSpecs:r}),annotations:[un.of(null),pt.of(null),Bt.addToHistory.of(!1)]}),!0};function ar(e){let t=e.state.field(st);return t&&e.dispatch({changes:t.reverseChangeSet,effects:Yn.of(null),annotations:[un.of(null),pt.of(null),Bt.addToHistory.of(!1)]}),!1}function Tc(e,t){return e.state.field(st)?t==="Tab"?aa(e):ar(e):!1}function Nc(e){var o,a;let t=!1,n=(o=e.state.selection.asSingle().ranges.at(0))==null?void 0:o.head,r=e.state.field(st);return n!==void 0&&r?((a=r.decorations)==null||a.between(n,n,()=>{t=!0}),t):!1}function Ac(){return J.domEventHandlers({keydown(e,t){return e.key==="]"&&e.ctrlKey?!1:e.key!=="Shift"&&e.key!=="Control"&&e.key!=="Alt"&&e.key!=="Meta"?Tc(t,e.key):!1},mouseup(e,t){let n=e.target;return n.nodeName==="BUTTON"&&n.dataset.action==="codeium-cycle"?(ia(t),e.stopPropagation(),e.preventDefault(),!0):Nc(t)?aa(t):ar(t)}})}function Lc(){return We.of([{key:"Ctrl-]",run:ia}])}function Oc(){return J.updateListener.of(e=>{e.focusChanged&&ar(e.view)})}function _c(e){return[cn.of(e),st,ct.highest(Lc()),ct.highest(Oc()),ct.high(Ac()),kc()]}function Uc({response:e,prefix:t,suffix:n}){if(!e)return e;let r=e;return t&&r.startsWith(t)&&(r=r.slice(t.length)),n&&r.endsWith(n)&&(r=r.slice(0,-n.length)),r}var jc=jm(),Dc=new om,ir=$e.get("@github/copilot-language-server"),sa={delay:300,includeKeymap:!0,events:{shouldShowSuggestion:e=>e.hasFocus,beforeSuggestionFetch:e=>e.hasFocus}};const Pc=e=>{let t=[];return e.copilot==="codeium"&&e.codeium_api_key&&t.push(_c({apiKey:e.codeium_api_key,language:it.PYTHON}),Mo.of({override:async()=>[{text:Cr(""),language:it.PYTHON,editorLanguage:"python"}]})),e.copilot==="github"&&t.push(eo({...sa,fetchFn:async(n,r,o)=>{let a=n.selection.main.head;if(!Of()||!o.hasFocus||n.doc.length===0)return"";await new Promise(c=>setTimeout(c,20));let i=Fc(n,Cr(n.doc.toString())),s=await Nf().getCompletion(i);return a===o.state.selection.main.head?Mc(s,i.position,n):($e.debug("ignoring response because of new position"),"")}})),e.copilot==="custom"&&t.push(eo({...sa,fetchFn:async(n,r,o)=>{let a=n.selection.main.head;if(n.doc.length===0||!o.hasFocus)return"";let i=n.doc.sliceString(0,n.selection.main.head),s=n.doc.sliceString(n.selection.main.head,n.doc.length);if(i.length===0)return"";let c=n.field(Tn).type,l=await Rf.post("/ai/inline_completion",{prefix:i,suffix:s,language:c});return a===o.state.selection.main.head?(l=Uc({response:l,prefix:i,suffix:s}),l):($e.debug("ignoring response because of new position"),"")}})),[...t,ct.highest(We.of([{key:"Escape",run:n=>{let r=Zr(n);return On(n)?!1:r}}])),Dc.of(Af())]};function Fc(e,t){let n=e.doc.toString(),r=t.split(`
|
|
16
16
|
`).length-n.split(`
|
|
17
|
-
`).length,o=Rc(e.doc,e.selection.main.head);return o.line+=r,{textDocument:{uri:`file://${Tf}`,version:"replace_me"},position:o,context:{triggerKind:
|
|
17
|
+
`).length,o=Rc(e.doc,e.selection.main.head);return o.line+=r,{textDocument:{uri:`file://${Tf}`,version:"replace_me"},position:o,context:{triggerKind:jc.InlineCompletionTriggerKind.Automatic},formattingOptions:{tabSize:e.tabSize,insertSpaces:!0}}}function Mc(e,t,n){if(!e)return ir.debug("No response from copilot"),"";let r=Array.isArray(e)?e[0]:e.items[0];if(!r)return ir.debug("No response from copilot"),"";let{insertText:o,range:a}=r,i=String(o);if(!a)return ir.error("No range from copilot"),i;let s=a.start.character-t.character,c=s<0?i.slice(-s):i,l=n.doc.sliceString(n.selection.main.head,n.doc.length);for(let u=0;u<c.length;u++){let d=c.slice(u);if(l.startsWith(d))return c.slice(0,u)}return c}function Rc(e,t){let n=e.lineAt(t);return{line:n.number-1,character:t-n.from}}Gn=function(e){return Ft("create"in e,'Expected query to have a "create" method'),e},we=Fd({findText:"",replaceText:"",caseSensitive:!1,wholeWord:!1,regexp:!1,isOpen:!1,currentView:void 0},(e,t)=>{if(t===void 0)return e;switch(t.type){case"setFind":return{...e,findText:t.find};case"setReplace":return{...e,replaceText:t.replace};case"setCaseSensitive":return{...e,caseSensitive:t.caseSensitive};case"setWholeWord":return{...e,wholeWord:t.wholeWord};case"setRegex":return{...e,regexp:t.regexp};case"setIsOpen":return{...e,isOpen:t.isOpen};case"setCurrentView":return{...e,currentView:{view:t.view,range:t.range}};case"clearCurrentView":return{...e,currentView:void 0}}}),Vr=function(e){if([...document.querySelectorAll('[role="dialog"][data-state="open"]')].some(t=>t instanceof HTMLElement&&t.childNodes.length>0))return!1;if(e){let t=e.state.selection.main,n=e.state.sliceDoc(t.from,t.to);n?(Y.set(we,{type:"setFind",find:n}),Y.set(we,{type:"setCurrentView",view:e,range:{from:t.from,to:t.to}})):Y.set(we,{type:"setCurrentView",view:e,range:{from:0,to:0}})}return Y.get(we).isOpen?(Y.set(we,{type:"setIsOpen",isOpen:!1}),requestAnimationFrame(()=>{Y.set(we,{type:"setIsOpen",isOpen:!0})}),!0):(Y.set(we,{type:"setIsOpen",isOpen:!0}),!0)};function Bc(){return Y.get(we).isOpen?(Y.set(we,{type:"setIsOpen",isOpen:!1}),!0):!1}var sr=pe.define();zi=function(){let e=Y.get(we),t=ci();for(let n of t)n.state.readOnly||n.dispatch({effects:sr.of(new Fr({search:e.findText,caseSensitive:e.caseSensitive,regexp:e.regexp,replace:e.replaceText,wholeWord:e.wholeWord}))})},Xi=function(){let e=ci();for(let t of e)t.state.readOnly||t.dispatch({effects:sr.of(new Fr({search:""}))})};const gn=ze.define({create(){let e=Y.get(we);return Gn(new Fr({search:e.findText,caseSensitive:e.caseSensitive,regexp:e.regexp,replace:e.replaceText,wholeWord:e.wholeWord})).create()},update(e,t){for(let n of t.effects)n.is(sr)&&(e=Gn(n.value).create());return e}});var Gc=$.mark({class:"cm-searchMatch"}),Jc=$.mark({class:"cm-searchMatch cm-searchMatch-selected"}),Vc=250;const $c=Xe.fromClass(class{constructor(e){this.view=e,this.decorations=this.highlight(e.state.field(gn))}update(e){let t=e.state.field(gn);(t!==e.startState.field(gn)||e.docChanged||e.selectionSet||e.viewportChanged)&&(this.decorations=this.highlight(t))}highlight(e){if(!e.spec.valid)return $.none;let{view:t}=this,n=new cm,r=t.visibleRanges,o=r.length;for(let a=0;a<o;a++){let{to:i}=r[a],{from:s}=r[a];for(;a<o-1&&i>r[a+1].from-2*Vc;)i=r[++a].to;e.highlight(t.state,s,i,(c,l)=>{let u=t.state.selection.ranges.some(d=>d.from===c&&d.to===l);n.add(c,l,u?Jc:Gc)})}return n.finish()}},{decorations:e=>e.decorations}),Wc=J.baseTheme({"&light .cm-searchMatch":{backgroundColor:"#99ff7780"},"&dark .cm-searchMatch":{backgroundColor:"#22bb0070"},"&light .cm-searchMatch-selected":{backgroundColor:"transparent"},"&dark .cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff88 !important"}});function qc(e){return[We.of([{key:"Escape",preventDefault:!1,run:Bc},{key:e.getHotkey("cell.selectNextOccurrence").key,preventDefault:!0,run:Cm},{key:e.getHotkey("cell.findAndReplace").key,preventDefault:!0,run:Vr}]),Im(),$c,gn,Wc]}var Hc=$.mark({class:"underline"}),la=pe.define(),ca=pe.define(),ua=pe.define();const zc=ze.define({create(){return $.none},update(e,t){let n=e.map(t.changes);for(let r of t.effects)r.is(la)?n=e.update({add:[Hc.range(r.value.from,r.value.to)]}):r.is(ca)?n=e.update({add:[Dd.range(r.value.from,r.value.to)]}):r.is(ua)&&(n=$.none);return n},provide:e=>J.decorations.from(e)});var Kc=class{constructor(e,t){p(this,"keydown",e=>{(e.key==="Meta"||e.key==="Control")&&(this.commandClickMode=!0,this.view.dom.addEventListener("mousemove",this.mousemove),this.view.dom.addEventListener("click",this.click))});p(this,"keyup",e=>{(e.key==="Meta"||e.key==="Control")&&this.exitCommandClickMode()});p(this,"windowBlur",()=>{this.commandClickMode&&this.exitCommandClickMode()});p(this,"mousemove",e=>{var o;if(!e.metaKey&&!e.ctrlKey){this.exitCommandClickMode();return}if(!this.commandClickMode){this.clearUnderline();return}let t=this.view.posAtCoords({x:e.clientX,y:e.clientY});if(t==null){this.clearUnderline();return}let n=(o=this.view.state.field(Vd,!1))==null?void 0:o.ranges.find(a=>t>=a.from&&t<=a.to);if(n){let{from:a,to:i}=n;if(this.hoveredRange&&this.hoveredRange.from===a&&this.hoveredRange.to===i)return;this.clearUnderline(),this.hoveredRange={from:a,to:i,position:t},this.view.dispatch({effects:ca.of(this.hoveredRange)});return}let r=Ei(this.view.state).cursorAt(t);if(r.name==="VariableName"){let{from:a,to:i}=r;if(this.hoveredRange&&this.hoveredRange.from===a&&this.hoveredRange.to===i)return;this.clearUnderline(),this.hoveredRange={from:a,to:i,position:t},this.view.dispatch({effects:la.of(this.hoveredRange)})}else this.clearUnderline()});p(this,"click",e=>{this.hoveredRange&&(e.preventDefault(),e.stopPropagation(),this.view.dispatch({selection:{head:this.hoveredRange.position,anchor:this.hoveredRange.position}}),this.onClick(this.view))});this.view=e,this.commandClickMode=!1,this.hoveredRange=null,this.onClick=t,window.addEventListener("keydown",this.keydown),window.addEventListener("keyup",this.keyup),window.addEventListener("blur",this.windowBlur),window.addEventListener("mouseleave",this.windowBlur)}update(e){}destroy(){window.removeEventListener("keydown",this.keydown),window.removeEventListener("keyup",this.keyup),window.removeEventListener("blur",this.windowBlur),window.removeEventListener("mouseleave",this.windowBlur),this.view.dom.removeEventListener("mousemove",this.mousemove),this.view.dom.removeEventListener("click",this.click)}exitCommandClickMode(){this.commandClickMode=!1,this.view.dom.removeEventListener("mousemove",this.mousemove),this.view.dom.removeEventListener("click",this.click),this.clearUnderline()}clearUnderline(){this.hoveredRange&&(this.hoveredRange=(this.view.dispatch({effects:ua.of(null)}),null))}};const Yc=e=>Xe.define(t=>new Kc(t,e));function Xc(){return[zc,Yc(e=>{$d(e)}),J.baseTheme({".underline":{textDecoration:"underline",cursor:"pointer",color:"var(--link)"}})]}function Qc(){return[J.domEventHandlers({drop:(e,t)=>{var o,a;let n=(o=e.dataTransfer)==null?void 0:o.files[0];if(n!=null&&n.type.startsWith("text/"))return e.preventDefault(),nf(t,n),!0;if(n!=null&&n.type.startsWith("image/"))return e.preventDefault(),Ud(t,n),!0;let r=(a=e.dataTransfer)==null?void 0:a.getData("text/plain");if(r){e.preventDefault();let i=t.posAtCoords({x:e.clientX,y:e.clientY});return i!==null&&t.dispatch({changes:{from:i,to:i,insert:r},scrollIntoView:!0}),!0}return!1},dragover:e=>{e.preventDefault()}})]}function Zc(){return[J.domEventHandlers({paste:(e,t)=>{var i;let n=(i=e.clipboardData)==null?void 0:i.getData("text/plain");if(!n||!da(n))return!1;let{setup:r,cells:o}=eu(n);if(r===null&&o.length===0)return!1;let a=t.state.facet(uf);return r!==null&&a.addOrAppendSetupCell(r),o.length>0&&a.createManyBelow(o),!0}})]}function da(e){return/@app\.cell|@app\.function|\bapp\.setup\b/.test(e)}function eu(e){if(!da(e))return{setup:null,cells:[]};let t=[],n=[],r=op.parse(e),o=(s,c)=>{let l=e.lastIndexOf(`
|
|
18
18
|
`,s-1)+1;return tu(e.slice(l,c))},a=(s,c)=>{let l=o(s,c);l.trim()&&t.push(l)},i=(s,c)=>{var f;let l=[];for(let h=s.firstChild;h;h=h.nextSibling)h.name!==":"&&l.push(h);c&&((f=l.at(-1))==null?void 0:f.name)==="ReturnStatement"&&l.pop();let u=l[0],d=l.at(-1);if(!u||!d)return null;let m=o(u.from,d.to);return m.trim()?m:null};return r.iterate({enter:s=>{if(s.name==="WithStatement"){let d=s.node.getChild("Body");if(d&&e.slice(s.from,d.from).includes("app.setup")){let m=i(d,!1);m!==null&&n.push(m)}return!1}if(s.name!=="DecoratedStatement")return!0;let c=s.node.getChild("Decorator"),l=s.node.getChild("FunctionDefinition");if(!c||!l)return!1;let u=e.slice(c.from,c.to).trim();if(u.startsWith("@app.cell")){let d=l.getChild("Body");if(d){let m=i(d,!0);m!==null&&t.push(m)}return!1}return u.startsWith("@app.function")&&a(l.from,l.to),!1}}),{setup:n.length>0?n.join(`
|
|
19
19
|
|
|
20
20
|
`):null,cells:t}}function tu(e){let t=e.split(`
|
|
21
21
|
`);if(t.length===0)return"";let n=t.filter(a=>a.trim().length>0);if(n.length===0)return"";let r=/^\s*/,o=Math.min(...n.map(a=>{var i;return((i=a.match(r))==null?void 0:i[0].length)??1/0}));return o===0?e.trim():t.map(a=>a.slice(o)).join(`
|
|
22
|
-
`).trim()}function nu(e,t,n,r){var o;return r!=="{"||t!==n||!((o=Ei(e.state).resolveInner(t,-1))!=null&&o.type.name.includes("String"))?!1:(e.dispatch({changes:{from:t,to:n,insert:"{}"},selection:{anchor:t+1},userEvent:"input.type"}),!0)}function ru(){return J.inputHandler.of(nu)}function fa(e){let{showPlaceholder:t,enableAI:n}=e;return t?"marimo-import":n?"ai":"none"}var ma="cm-tooltip-portal";function ou(e){if(e==null)return document.querySelector("#App")??void 0;let t=document.querySelector(e);if(t==null)return;let n=t.querySelector(`:scope > .${ma}`);if(n!=null)return n;let r=document.createElement("div");return r.className=`${ma} not-prose contents`,t.append(r),r}const au=e=>{let{cellId:t,keymapConfig:n,hotkeys:r,enableAI:o,cellActions:a,completionConfig:i,lspConfig:s,diagnosticsConfig:c,displayConfig:l,inlineAiTooltip:u}=e,d=fa(e);return[kf(n,r),Qc(),Zc(),Os(),Zd({cellId:t,completionConfig:i,hotkeys:r,placeholderType:d,lspConfig:s,diagnosticsConfig:c}),df({cellId:t,hotkeys:r,cellActions:a,keymapConfig:n}),su(e),Xc(),c!=null&&c.enabled?Cm():[],o&&u?[vs({prompt:m=>As({prompt:m.prompt,selection:m.selection,codeBefore:m.codeBefore,codeAfter:m.codeAfter,language:zd(m.editorView)})}),zt.of({hideOnBlur:!0})]:[],Pd(t,l.reference_highlighting??!0)]};var iu=e=>{let{from:t,to:n}=e.state.selection.main;if(t!==n)return!1;let r=e.state.doc.lineAt(n);return r.text.slice(0,n-r.from).trim()===""?!1:Lm(e)};const su=e=>{let{theme:t,hotkeys:n,completionConfig:r,acceptCompletionOnEnter:o,cellId:a,lspConfig:i,diagnosticsConfig:s,tooltipParentSelector:c}=e,l=fa(e),u=r.auto_close_pairs!==!1;return[J.lineWrapping,fm(),dm(),ym(),sm(),em(),tm(),Zf(),rm({position:"fixed",parent:ou(c)}),Hd(),t==="dark"?Vf:Jf,hf(i),Dc(r),gm(),ru(),u?Om():[],Us(o),u?ct.high(We.of(Nm)):[],pm(),im(),am.of(" "),lm(um,{fallback:!0}),We.of(nm),yf({placeholderType:l,completionConfig:r,hotkeys:n,cellId:a,lspConfig:{...i,diagnostics:s}}),bf.of(Sm()),Dr.allowMultipleSelections.of(!0),qc(n),We.of([{key:"Tab",run:d=>Ci(d)||iu(d)||Im(d),preventDefault:!0},{key:n.getHotkey("completion.moveDown").key,run:d=>Gt(d.state)===null?!1:(Dn(!0)(d),!0),preventDefault:!0},{key:n.getHotkey("completion.moveUp").key,run:d=>Gt(d.state)===null?!1:(Dn(!1)(d),!0),preventDefault:!0}]),We.of([...vm,bm])]};var et=(e=>!e||e instanceof WebAssembly.Module?e:typeof e=="object"&&"default"in e?e.default??e:e)(Ip),lr=e=>{Tp(e),typeof $i=="function"&&$i(),lu(St)};function lu(e){typeof e.__wbindgen_start=="function"&&e.__wbindgen_start()}if(et&&et.__wbindgen_start)lr(et);else if("Bun"in globalThis){let e;if(et instanceof WebAssembly.Module)({instance:e}=await WebAssembly.instantiate(et,{"./loro_wasm_bg.js":St}));else{let t=Bun.pathToFileURL(et);({instance:e}=await WebAssembly.instantiateStreaming(fetch(t),{"./loro_wasm_bg.js":St}))}lr(e.exports)}else{let e=et instanceof WebAssembly.Module?et:await rp(()=>import("./loro_wasm_bg-Duqr-kJ2.js").then(async r=>(await r.__tla,r)),__vite__mapDeps([0,1,2]),import.meta.url),t=e instanceof WebAssembly.Module?e:e&&e.default||e,n;if(t instanceof WebAssembly.Instance)n=t;else if(t instanceof WebAssembly.Module)n=await WebAssembly.instantiate(t,{"./loro_wasm_bg.js":St});else if(t instanceof ArrayBuffer||ArrayBuffer.isView(t)){let{instance:r}=await WebAssembly.instantiate(t,{"./loro_wasm_bg.js":St});n=r}else if(typeof t=="string"||t instanceof URL){let r=await fetch(t),{instance:o}=await WebAssembly.instantiateStreaming(r,{"./loro_wasm_bg.js":St});n=o}else throw console.error("Unsupported wasm import type:",t),Error("Unsupported wasm import type: "+typeof t);lr(n.exports??n)}var cu=["Map","Text","List","Tree","MovableList","Counter"];function uu(e){return e.startsWith("cid:")}function pa(e){if(typeof e!="object"||!e)return!1;let t=Object.getPrototypeOf(e);return typeof t!="object"||!t||typeof t.kind!="function"?!1:cu.includes(e.kind())}var du=class{constructor(e,t=3e4){this.listeners=new Set,this.inner=new kp(e,t),this.peer=e,this.timeout=t}apply(e,t="remote"){let{updated:n,added:r}=this.inner.apply(e);this.listeners.forEach(o=>{o({updated:n,added:r,removed:[]},t)}),this.startTimerIfNotEmpty()}setLocalState(e){let t=this.inner.getState(this.peer)==null;this.inner.setLocalState(e),t?this.listeners.forEach(n=>{n({updated:[],added:[this.inner.peer()],removed:[]},"local")}):this.listeners.forEach(n=>{n({updated:[this.inner.peer()],added:[],removed:[]},"local")}),this.startTimerIfNotEmpty()}getLocalState(){return this.inner.getState(this.peer)}getAllStates(){return this.inner.getAllStates()}encode(e){return this.inner.encode(e)}encodeAll(){return this.inner.encodeAll()}addListener(e){this.listeners.add(e)}removeListener(e){this.listeners.delete(e)}peers(){return this.inner.peers()}destroy(){clearInterval(this.timer),this.listeners.clear()}startTimerIfNotEmpty(){this.inner.isEmpty()||this.timer!=null||(this.timer=setInterval(()=>{let e=this.inner.removeOutdated();e.length>0&&this.listeners.forEach(t=>{t({updated:[],added:[],removed:e},"timeout")}),this.inner.isEmpty()&&(clearInterval(this.timer),this.timer=void 0)},this.timeout/2))}};Jr.prototype.toJsonWithReplacer=function(e){let t=new Set,n=this,r=(a,i)=>{if(typeof i=="string"&&uu(i)&&!t.has(i)){t.add(i);let c=n.getContainerById(i);if(c==null)throw Error(`ContainerID not found: ${i}`);let l=e(a,c);if(l===c){let u=c.getShallowValue();return typeof u=="object"?o(u):u}if(pa(l))throw Error("Using new container is not allowed in toJsonWithReplacer");return typeof l=="object"&&l?o(l):l}if(typeof i=="object"&&i)return o(i);let s=e(a,i);if(pa(s))throw Error("Using new container is not allowed in toJsonWithReplacer");return s},o=a=>{if(Array.isArray(a))return a.map((s,c)=>r(c,s)).filter(s=>s!==void 0);let i={};for(let[s,c]of Object.entries(a)){let l=r(s,c);l!==void 0&&(i[s]=l)}return i};return o(n.getShallowValue())};var ha=Symbol("loro.callPendingEventsWrapped");function fu(e,t){let n=Object.getOwnPropertyDescriptor(e,t);if(!n||typeof n.value!="function")return;let r=n.value;if(r[ha])return;let o=function(...a){let i;try{return i=r.apply(this,a),i}finally{i&&typeof i.then=="function"?i.finally(()=>{Vi()}):Vi()}};o[ha]=!0,Object.defineProperty(e,t,{...n,value:o})}function cr(e,t){for(let n of t)fu(e,n)}cr(Jr.prototype,["setDetachedEditing","attach","detach","fork","forkAt","checkoutToLatest","checkout","commit","getCursorPos","revertTo","export","exportJsonUpdates","exportJsonInIdSpan","importJsonUpdates","import","importUpdateBatch","importBatch","travelChangeAncestors","getChangedContainersIn","diff","applyDiff","setPeerId"]),cr(Cp.prototype,["set","delete","apply","removeOutdated"]),cr(xp.prototype,["undo","redo"]);const mu=J.baseTheme({".loro-cursor":{position:"absolute",width:"2px",display:"inline-block",height:"1.2em"},".loro-cursor::before":{position:"absolute",top:"1.3em",left:"0",content:"var(--rtc-name)",padding:"2px 6px",fontSize:"12px",borderRadius:"3px",whiteSpace:"nowrap",userSelect:"none",backgroundColor:"inherit",opacity:"0.7"},".loro-selection":{opacity:"0.5"}});jr.define();const Ut=pe.define(),ur=ze.define({create(){return{remoteCursors:new Map,isCheckout:!1}},update(e,t){for(let n of t.effects)if(n.is(Ut))switch(n.value.type){case"update":{let{peer:r,user:o,cursor:a}=n.value;e.remoteCursors.set(r,{uid:r,cursor:a,user:o});break}case"delete":e.remoteCursors.delete(n.value.peer);break;case"checkout":e.isCheckout=n.value.checkout}return e}});var ga=e=>{let t=e.transactions.flatMap(n=>n.effects).filter(n=>n.is(Ut));return e.docChanged||e.viewportChanged||t.length>0};const pu=()=>vi({above:!0,class:"loro-cursor-layer",update:ga,markers:e=>{let{remoteCursors:t,isCheckout:n}=e.state.field(ur);return n?[]:[...t.values()].flatMap(r=>{var a,i;let o=wt.cursor(r.cursor.anchor);return gu.createCursor(e,o,((a=r.user)==null?void 0:a.name)||"unknown",((i=r.user)==null?void 0:i.colorClassName)||"")})}}),hu=()=>vi({above:!1,class:"loro-selection-layer",update:ga,markers:e=>{let{remoteCursors:t,isCheckout:n}=e.state.field(ur);return n?[]:[...t.entries()].filter(([,r])=>r.cursor.head!==void 0&&r.cursor.anchor!==r.cursor.head).flatMap(([,r])=>{var a;let o=wt.range(r.cursor.anchor,r.cursor.head);return mm.forRange(e,`loro-selection ${((a=r.user)==null?void 0:a.colorClassName)||""}`,o)})}});var gu=class Hr{constructor(t,n,r,o,a){this.left=t,this.top=n,this.height=r,this.name=o,this.colorClassName=a}draw(){let t=document.createElement("div");return this.adjust(t),t}update(t){return this.adjust(t),!0}adjust(t){t.style.left=`${this.left}px`,t.style.top=`${this.top}px`,t.style.height=`${this.height}px`,t.className=`loro-cursor ${this.colorClassName}`,t.style.setProperty("--rtc-name",`"${this.name}"`)}eq(t){return this.left===t.left&&this.top===t.top&&this.height===t.height&&this.name===t.name}static createCursor(t,n,r,o){let a=Hr.calculateAbsoluteCursorPosition(n,t);if(!a)return[];let i=t.scrollDOM.getBoundingClientRect(),s=(t.textDirection===hm.LTR?i.left:i.right-t.scrollDOM.clientWidth)-t.scrollDOM.scrollLeft,c=i.top-t.scrollDOM.scrollTop;return[new Hr(a.left-s,a.top-c,a.bottom-a.top,r,o)]}static calculateAbsoluteCursorPosition(t,n){let r=Math.max(0,Math.min(n.state.doc.length,t.anchor));return n.coordsAtPos(r,t.assoc||1)}},yu=(e,t,n,r)=>{let o=[],{updated:a,added:i}=n;for(let s of[...a,...i]){let c=ya(e,t,s,r);c&&o.push(c)}return o},ya=(e,t,n,r)=>{var c,l;let o=t.getAllStates()[n];if(!o||n===e.peerIdStr||o.scopeId!==r)return;if(o.type==="delete")return Ut.of({type:"delete",peer:o.uid,scopeId:o.scopeId});let a=Wi.decode(o.cursor.anchor),i=((c=e.getCursorPos(a))==null?void 0:c.offset)??0,s=i;if(o.cursor.head){let u=Wi.decode(o.cursor.head);s=((l=e.getCursorPos(u))==null?void 0:l.offset)??0}return Ut.of({type:"update",peer:o.uid,scopeId:o.scopeId,cursor:{anchor:i,head:s},user:o.user})},bu=class{constructor(e,t,n,r,o,a,i){this.view=e,this.doc=t,this.user=n,this.awareness=r,this.getTextFromDoc=o,this.scopeId=a,this.getUserId=i,this.sub=this.doc.subscribe(s=>{if(s.by==="local"){let c=[];for(let l of this.awareness.peers()){let u=ya(this.doc,this.awareness,l,this.scopeId);u&&c.push(u)}this.view.dispatch({effects:c})}else s.by==="checkout"&&this.view.dispatch({effects:[Ut.of({type:"checkout",checkout:this.doc.isDetached()})]})})}update(e){if(!e.selectionSet&&!e.focusChanged&&!e.docChanged)return;let t=e.state.selection.main;if(this.view.hasFocus&&!this.doc.isDetached()){let n=vu({doc:this.doc,getTextFromDoc:this.getTextFromDoc,anchor:t.anchor,head:t.head});this.awareness.setLocalState({type:"update",uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId,cursor:n,user:this.user})}else this.awareness.setLocalState({type:"delete",uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId})}destroy(){var e;(e=this.sub)==null||e.call(this),this.awareness.setLocalState({type:"delete",uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId})}},wu=class{constructor(e,t,n,r){this.view=e,this.doc=t,this.awareness=n,this.scopeId=r;let o=async(a,i)=>{i!=="local"&&this.view.dispatch({effects:yu(this.doc,this.awareness,a,this.scopeId)})};this._awarenessListener=o,this.awareness.addListener(o)}destroy(){this._awarenessListener&&this.awareness.removeListener(this._awarenessListener)}},vu=({doc:e,getTextFromDoc:t,anchor:n,head:r})=>{var i,s;n===r&&(r=void 0);let o=(i=t(e).getCursor(n))==null?void 0:i.encode();if(!o)throw Error("cursor head not found");let a;return r!==void 0&&(a=(s=t(e).getCursor(r))==null?void 0:s.encode()),{anchor:o,head:a}};const yn=["bg-(--amber-6)","bg-(--blue-6)","bg-(--crimson-6)","bg-(--cyan-6)","bg-(--grass-6)","bg-(--gray-6)","bg-(--green-6)","bg-(--lime-6)","bg-(--orange-6)","bg-(--purple-6)","bg-(--red-6)","bg-(--sage-6)","bg-(--sky-6)","bg-(--slate-6)"],Eu=e=>{if(typeof e=="string"){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t=Math.trunc(t);return yn[Math.abs(t)%yn.length]}return yn[e%yn.length]};var me=$e.get("rtc"),ba=me.get("awareness").disabled(),dr="awareness:";function Su(e,t){let n=new TextEncoder().encode(e);return new Uint8Array([...n,...t])}function Cu(e,t){return new TextDecoder().decode(e.slice(0,t.length))===t}function xu(e,t){return e.slice(t.length)}ut=jt(void 0);var te=new Jr,bn=new du(te.peerIdStr),fr=Tm(()=>{me.debug("creating websocket");let e=new Ap(wi().getWsSyncURL(ap()).toString(),void 0,{maxRetries:10,debug:!1,startClosed:!0,connectionTimeout:1e4});return Promise.resolve().then(async()=>{await bi(),Qd()==="edit"&&e.reconnect()}),e.addEventListener("message",async t=>{let n=await t.data.arrayBuffer(),r=new Uint8Array(n);if(Cu(r,dr)){let o=xu(r,dr);bn.apply(o),ba.debug("applied awareness update");return}te.import(r),me.debug("imported doc change. new doc:",te.toJSON()),Y.get(ut)!==te&&Y.set(ut,te)}),e.addEventListener("open",()=>{me.debug("websocket open")}),e.addEventListener("close",t=>{me.warn("websocket close",t),Y.get(ut)===te&&Y.set(ut,void 0)}),e});Ar()&&fr(),te.subscribeLocalUpdates(e=>{me.debug("local update, sending to server"),fr().send(e)}),bn.addListener((e,t)=>{let n=[...e.added,...e.removed,...e.updated];t==="local"&&(ba.debug("awareness changes",n),fr().send(Su(dr,bn.encode(n))))});function mr(e,t,n=""){if(Df())return{extension:[],code:n};let r=te.getByPath(`codes/${e}`)!==void 0,o=te.getMap("codes").getOrCreateContainer(e,new Gr);return r||(me.log("initializing code for new cell",n),o.insert(0,n)),{code:n.toString(),extension:[Iu(e),ku(e),Tu(te,bn,{get name(){return Y.get(lf)||"Anonymous"},get colorClassName(){return Eu(this.name)}},()=>o,e),Yd(te,["codes",e],()=>o)]}}function Iu(e){let t=(r,o)=>{let a=r.state.field(Tn).type,i=o.toString();i&&i!==a&&(me.debug(`[incoming] setting language type: ${a} -> ${i}`),Dt(r,{language:i,keepCodeAsIs:!0}))},n=(r,o)=>{let a=r.state.field(Ir),i=o.toJSON();kn(a,i)||r.dispatch({effects:[si.of(i)],annotations:[ei.of(!0)]})};return Xe.define(r=>{let o;return Promise.resolve().then(()=>{let a=te.getByPath(`languages/${e}`);if(!a){me.error("no language container found for cell",e);return}Ft(a instanceof Gr,"language type is not a LoroText");let i=te.getByPath(`language_metadata/${e}`);if(!i){me.error("no language metadata container found for cell",e);return}Ft(i instanceof qi,"language metadata is not a LoroMap"),t(r,a),n(r,i),o=te.subscribe(s=>{if(s.origin==="local")return;let c=s.events.some(u=>u.target===a.id),l=s.events.some(u=>u.target===i.id);c&&t(r,a),l&&n(r,i)})}),{destroy(){o()}}})}function ku(e){let t=te.getMap("languages").getOrCreateContainer(e,new Gr),n=te.getMap("language_metadata").getOrCreateContainer(e,new qi);return J.updateListener.of(r=>{let o=t.toString()!=="";if(!r.docChanged&&o)return;if(!o){let i=xr(r.state).type;Dt(r.view,{language:i}),me.debug("no initial language, setting default to",i),t.delete(0,t.length),t.insert(0,i),me.debug("no initial language metadata, setting default to",r.state.field(Ir));let s=r.state.field(Ir);for(let c of Object.keys(s))n.set(c,s[c]);te.commit();return}let a=!1;for(let i of r.transactions)if(!i.annotation(ei)){for(let s of i.effects)if(s.is(qd)&&t.toString()!==s.value.type&&(me.debug(`[outgoing] language change: ${t} -> ${s.value.type}`),t.delete(0,t.length),t.insert(0,s.value.type),a=!0),s.is(si)||s.is(ii)){let c=s.value;s.is(ii)?(me.debug("[outgoing] setting language metadata: ",c),n.clear()):me.debug("[outgoing] updating language metadata: ",c);for(let l of Object.keys(c))n.set(l,c[l]);a=!0}}a&&te.commit()})}function Tu(e,t,n,r,o,a){let i=`loro:cell:${o}`;return[ur,pu(),hu(),Xe.define(s=>new bu(s,e,n,t,r,i,a)),Xe.define(s=>new wu(s,e,t,i)),mu]}var Nu=Je(),Au=qf;$r=e=>{let t=(0,Nu.c)(41),{resetOnBlur:n,placeholderText:r,initialValue:o,flexibleWidth:a,onNameChange:i,className:s}=e,c=n===void 0?!1:n,l=o===void 0?null:o,u=a===void 0?!1:a,{sendListFiles:d}=Fn(),[m,f]=(0,T.useState)(l),h;t[0]===Symbol.for("react.memo_cache_sentinel")?(h=[],t[0]=h):h=t[0];let[y,b]=(0,T.useState)(h),[v,C]=(0,T.useState)(!1),x=(0,T.useRef)(null),_=(0,T.useRef)(!1),j,A;t[1]===l?(j=t[2],A=t[3]):(j=()=>{f(l)},A=[l],t[1]=l,t[2]=j,t[3]=A),(0,T.useEffect)(j,A);let k;t[4]===Symbol.for("react.memo_cache_sentinel")?(k=()=>{C(!0)},t[4]=k):k=t[4];let B=k,F;t[5]!==l||t[6]!==c?(F=H=>{var gt;(gt=H.relatedTarget)!=null&>.closest(".filename-input")||(C(!1),c&&f(l))},t[5]=l,t[6]=c,t[7]=F):F=t[7];let ne=F,O;t[8]===m?O=t[9]:(O=Qe.dirname(m||""),t[8]=m,t[9]=O);let N=O,se=Qe.basename(m||""),le=y.filter(H=>Qe.basename(H.path).startsWith(se)),re;t[10]!==N||t[11]!==v||t[12]!==d?(re=async()=>{if(!v){b([]);return}b((await d({path:N})).files)},t[10]=N,t[11]=v,t[12]=d,t[13]=re):re=t[13];let ee;t[14]!==N||t[15]!==v?(ee=[N,v],t[14]=N,t[15]=v,t[16]=ee):ee=t[16];let{isPending:U}=gp(re,ee),P=Lu(m,y,l),be=(P||le.length>0)&&(0,g.jsxs)(Bi,{className:"font-mono",children:[!U&&(0,g.jsx)(bp,{children:"No files"}),P&&(0,g.jsxs)(Ri,{variant:"success",className:"py-2 px-3",onSelect:()=>{var H;P&&(_.current=!0,i(P),(H=x.current)==null||H.blur())},children:[(0,g.jsx)(Z,{className:"w-4 h-4 mr-2"})," ",(0,g.jsxs)("span",{className:"text-sm",children:[l?"Rename to: ":"Save as: ",(0,g.jsx)("span",{className:"font-medium text-sm",children:Qe.basename(P)})]})]},"_rename_"),le.map(H=>{let gt=Zm[H.isDirectory?"directory":Qm(H.path)];return(0,g.jsxs)(Ri,{variant:H.isDirectory?"default":"muted",className:"py-2 px-3",onSelect:()=>{H.isDirectory?f(`${H.path}/`):f(H.path)},children:[(0,g.jsx)(gt,{className:"w-4 h-4 mr-2"})," ",Qe.basename(H.path)]},H.path)})]}),ce=Math.max(20,(m==null?void 0:m.length)||(r==null?void 0:r.length)||0)*10,S=v?m||"":l||"",I;t[17]!==u||t[18]!==ce?(I=u?{maxWidth:ce}:void 0,t[17]=u,t[18]=ce,t[19]=I):I=t[19];let D;t[20]===s?D=t[21]:(D=nt(s,"w-full px-4 py-1 my-1 h-9 font-mono text-foreground/60"),t[20]=s,t[21]=D);let L;t[22]!==r||t[23]!==S||t[24]!==I||t[25]!==D?(L=(0,g.jsx)(Au,{children:(0,g.jsx)(yp,{"data-testid":"dir-completion-input",tabIndex:-1,rootClassName:"border-none justify-center px-1",spellCheck:"false",value:S,onKeyDown:Ou,icon:null,ref:x,onValueChange:f,placeholder:r,autoComplete:"off",style:I,className:D})}),t[22]=r,t[23]=S,t[24]=I,t[25]=D,t[26]=L):L=t[26];let ue=be&&"group-focus-within:block",Be;t[27]===ue?Be=t[28]:(Be=nt("p-0 w-full min-w-80 max-w-80vw hidden",ue),t[27]=ue,t[28]=Be);let Ve;t[29]!==be||t[30]!==Be?(Ve=(0,g.jsx)(Hf,{side:"bottom",className:Be,portal:!1,children:be}),t[29]=be,t[30]=Be,t[31]=Ve):Ve=t[31];let Ge;t[32]!==L||t[33]!==Ve?(Ge=(0,g.jsxs)(Bi,{children:[L,Ve]}),t[32]=L,t[33]=Ve,t[34]=Ge):Ge=t[34];let M;t[35]!==ne||t[36]!==Ge?(M=(0,g.jsx)(wp,{onFocus:B,onBlur:ne,shouldFilter:!1,id:"filename-input",className:"bg-transparent group filename-input",children:Ge}),t[35]=ne,t[36]=Ge,t[37]=M):M=t[37];let oe;return t[38]!==v||t[39]!==M?(oe=(0,g.jsx)($f,{children:(0,g.jsx)(zf,{open:v,modal:!1,children:M})}),t[38]=v,t[39]=M,t[40]=oe):oe=t[40],oe};function Lu(e,t,n){if(e&&!e.endsWith("/")&&((Gd("markdown")?new Set(["py","md","markdown","qmd"]):new Set(["py"])).has(Qe.extension(e))||(e=e.endsWith(".")?`${e}py`:e.endsWith(".p")?`${e}y`:`${e}.py`),!t.some(r=>r.path===e||Qe.basename(r.path)===e)&&!(n&&(n===e||Qe.basename(n)===e))))return e}function Ou(e){e.key==="Escape"&&e.currentTarget.blur()}var wa=Je(),_u=e=>{let t=(0,wa.c)(33),n=()=>{Qf(new Blob([r()],{type:"text/plain"}),`${e.proposedName}.json`)},r=ae(ju),o;t[0]!==n||t[1]!==e?(o=j=>{j.preventDefault(),n(),e.closeModal()},t[0]=n,t[1]=e,t[2]=o):o=t[2];let a;t[3]===e?a=t[4]:(a=j=>{j.key==="Escape"&&e.closeModal()},t[3]=e,t[4]=a);let i;t[5]===Symbol.for("react.memo_cache_sentinel")?(i=(0,g.jsx)(_i,{className:"text-accent-foreground mb-6",children:"Download unsaved changes?"}),t[5]=i):i=t[5];let s;t[6]===Symbol.for("react.memo_cache_sentinel")?(s={wordBreak:"break-word"},t[6]=s):s=t[6];let c,l;t[7]===Symbol.for("react.memo_cache_sentinel")?(c=(0,g.jsx)("p",{children:"This app has unsaved changes. To recover:"}),l={paddingBottom:"10px"},t[7]=c,t[8]=l):(c=t[7],l=t[8]);let u;t[9]===e.proposedName?u=t[10]:(u=(0,g.jsxs)("li",{style:l,children:['Click the "Download" button. This will download a file called\xA0',(0,g.jsxs)("code",{children:[e.proposedName,".json"]}),". This file contains your code."]}),t[9]=e.proposedName,t[10]=u);let d;t[11]===Symbol.for("react.memo_cache_sentinel")?(d={paddingBottom:"10px"},t[11]=d):d=t[11];let m;t[12]===Symbol.for("react.memo_cache_sentinel")?(m={display:"block",padding:"10px"},t[12]=m):m=t[12];let f;t[13]===e.proposedName?f=t[14]:(f=(0,g.jsxs)("code",{style:m,children:["marimo recover ",e.proposedName,".json ",">"," ",e.proposedName,".py"]}),t[13]=e.proposedName,t[14]=f);let h;t[15]===e.proposedName?h=t[16]:(h=(0,g.jsxs)("code",{children:[e.proposedName,".py"]}),t[15]=e.proposedName,t[16]=h);let y;t[17]!==h||t[18]!==f?(y=(0,g.jsxs)("li",{style:d,children:["In your terminal, type",f,"to overwrite ",h," with the recovered changes."]}),t[17]=h,t[18]=f,t[19]=y):y=t[19];let b;t[20]!==y||t[21]!==u?(b=(0,g.jsx)(cp,{className:"markdown wrap-break-word",style:s,children:(0,g.jsxs)("div",{className:"prose dark:prose-invert",children:[c,(0,g.jsxs)("ol",{children:[u,y]})]})}),t[20]=y,t[21]=u,t[22]=b):b=t[22];let v;t[23]===e.closeModal?v=t[24]:(v=(0,g.jsx)(lt,{"aria-label":"Cancel",variant:"secondary","data-testid":"cancel-recovery-button",onClick:e.closeModal,children:"Cancel"}),t[23]=e.closeModal,t[24]=v);let C;t[25]===Symbol.for("react.memo_cache_sentinel")?(C=(0,g.jsx)(lt,{"data-testid":"download-recovery-button","aria-label":"Download",variant:"default",type:"submit",children:"Download"}),t[25]=C):C=t[25];let x;t[26]===v?x=t[27]:(x=(0,g.jsxs)(Ui,{children:[v,C]}),t[26]=v,t[27]=x);let _;return t[28]!==o||t[29]!==a||t[30]!==b||t[31]!==x?(_=(0,g.jsx)(Pi,{className:"w-fit",children:(0,g.jsxs)("form",{onSubmit:o,onKeyDown:a,children:[i,b,x]})}),t[28]=o,t[29]=a,t[30]=b,t[31]=x,t[32]=_):_=t[32],_};const Uu=e=>{let t=(0,wa.c)(12),{filename:n,needsSave:r}=e,{openModal:o,closeModal:a}=Di(),i;t[0]===n?i=t[1]:(i=n===null?"app":Qe.basename(n).split(".")[0],t[0]=n,t[1]=i);let s=i,c;t[2]!==a||t[3]!==r||t[4]!==o||t[5]!==s?(c=()=>{r&&o((0,g.jsx)(_u,{proposedName:s,closeModal:a}))},t[2]=a,t[3]=r,t[4]=o,t[5]=s,t[6]=c):c=t[6];let l=c;ji("global.save",l);let u;t[7]===Symbol.for("react.memo_cache_sentinel")?(u=Gi("global.save"),t[7]=u):u=t[7];let d=r?"yellow":"gray",m;t[8]===Symbol.for("react.memo_cache_sentinel")?(m=(0,g.jsx)(Ai,{strokeWidth:1.5,size:18}),t[8]=m):m=t[8];let f;return t[9]!==l||t[10]!==d?(f=(0,g.jsx)(_n,{content:u,children:(0,g.jsx)(Hi,{onClick:l,id:"save-button","aria-label":"Save",className:"rectangle",color:d,children:m})}),t[9]=l,t[10]=d,t[11]=f):f=t[11],f};function Pu(e){return{id:e.id,name:e.name,code:e.code,code_hash:null,config:{column:0,...e.config}}}function ju(){let e=kr(yt()),t={version:"1",metadata:{marimo_version:Gf()},cells:e.map(Pu)};return JSON.stringify(t,null,2)}let pr;Bn=jt(void 0),pr=jt(e=>{let t=e(Bn);return Du({state:e(tt),layout:e(xi),lastSavedNotebook:t})});function Du({state:e,layout:t,lastSavedNotebook:n}){if(!n)return!1;let{cellIds:r,cellData:o}=e,a=r.inOrderIds.map(l=>o[l]),i=a.map(l=>l.code),s=a.map(l=>l.config),c=a.map(l=>l.name);return!Si(i,n.codes)||!Si(c,n.names)||!kn(s,n.configs)||!kn(t.selectedLayout,n.layout.selectedLayout)||!kn(t.layoutData,n.layout.layoutData)}var Fu=Je();function Mu(e){let t=(0,Fu.c)(21),{codes:n,cellConfigs:r,config:o,connStatus:a,cellNames:i,needsSave:s,kioskMode:c,onSave:l}=e,u=(0,T.useRef)(null),d;t[0]===n?d=t[1]:(d=n.join(":"),t[0]=n,t[1]=d);let m=d,f;t[2]===r?f=t[3]:(f=r.map(Ru).join(":"),t[2]=r,t[3]=f);let h=f,y;t[4]===i?y=t[5]:(y=i.join(":"),t[4]=i,t[5]=y);let b=y,v;t[6]!==o||t[7]!==a.state||t[8]!==c||t[9]!==s||t[10]!==l?(v=()=>{if(!c)return o.autosave==="after_delay"&&(u.current!==null&&clearTimeout(u.current),s&&a.state===Mt.OPEN&&(u.current=setTimeout(l,o.autosave_delay))),()=>{u.current!==null&&clearTimeout(u.current)}},t[6]=o,t[7]=a.state,t[8]=c,t[9]=s,t[10]=l,t[11]=v):v=t[11];let C;t[12]!==h||t[13]!==b||t[14]!==m||t[15]!==o||t[16]!==a.state||t[17]!==c||t[18]!==s||t[19]!==l?(C=[m,h,b,o,a.state,l,c,s],t[12]=h,t[13]=b,t[14]=m,t[15]=o,t[16]=a.state,t[17]=c,t[18]=s,t[19]=l,t[20]=C):C=t[20],(0,T.useEffect)(v,C)}function Ru(e){return JSON.stringify(e)}var wn=Je();Yi=e=>{let t=(0,wn.c)(15),{kioskMode:n}=e,r=mp(),o=ie(pr),a=ie(bt).state===Mt.CLOSED,{saveOrNameNotebook:i,saveIfNotebookIsPersistent:s}=$t(),c;t[0]!==n||t[1]!==s?(c={onSave:s,kioskMode:n},t[0]=n,t[1]=s,t[2]=c):c=t[2],Vu(c),Lp();let l;t[3]===o?l=t[4]:(l=b=>{if(o)return b.preventDefault(),b.returnValue="You have unsaved changes. Are you sure you want to leave?",b.returnValue},t[3]=o,t[4]=l),Pf(window,"beforeunload",l);let u;t[5]===i?u=t[6]:(u=b=>{b.preventDefault(),b.stopPropagation(),i()},t[5]=i,t[6]=u);let d=u;if(ji("global.save",i),a){let b;return t[7]!==r||t[8]!==o?(b=(0,g.jsx)(Uu,{filename:r,needsSave:o}),t[7]=r,t[8]=o,t[9]=b):b=t[9],b}let m;t[10]===Symbol.for("react.memo_cache_sentinel")?(m=Gi("global.save"),t[10]=m):m=t[10];let f=o?"yellow":"hint-green",h;t[11]===Symbol.for("react.memo_cache_sentinel")?(h=(0,g.jsx)(Ai,{strokeWidth:1.5,size:18}),t[11]=h):h=t[11];let y;return t[12]!==d||t[13]!==f?(y=(0,g.jsx)(_n,{content:m,children:(0,g.jsx)(Hi,{"data-testid":"save-button",id:"save-button",shape:"rectangle",color:f,onClick:d,children:h})}),t[12]=d,t[13]=f,t[14]=y):y=t[14],y},$t=function(){let e=(0,wn.c)(21),{sendSave:t}=Fn(),{openModal:n,closeModal:r,openAlert:o}=Di(),a=Xa(Bn),i=pp(),s=Sr(),c;e[0]!==o||e[1]!==t||e[2]!==a||e[3]!==s?(c=async(v,C)=>{let x=s.get(bt),_=s.get(gi);if(s.get(ff))return;if(x.state!==Mt.OPEN){o("Failed to save notebook: not connected to a kernel.");return}$e.log("saving to ",v),C&&_.format_on_save&&($e.log("formatting notebook (onSave)"),await af());let j=yt(),A=kr(j),k=A.map(Ju),B=A.map(Gu),F=A.map(Bu),ne=ui(j),O=s.get(xi);B.length!==0&&(await t({cellIds:k,codes:B,names:F,filename:v,configs:ne,layout:Fm(),persist:!0}),a({names:F,codes:B,configs:ne,layout:O}))},e[0]=o,e[1]=t,e[2]=a,e[3]=s,e[4]=c):c=e[4];let l=ae(c),u;e[5]!==l||e[6]!==s?(u=v=>{let C=v===void 0?!1:v,x=s.get(Za),_=s.get(bt);va(x)&&_.state===Mt.OPEN&&l(x,C)},e[5]=l,e[6]=s,e[7]=u):u=e[7];let d=ae(u),m;e[8]!==l||e[9]!==i?(m=v=>{i(v).then(C=>{C!==null&&l(C,!0)})},e[8]=l,e[9]=i,e[10]=m):m=e[10];let f=m,h;e[11]!==r||e[12]!==f||e[13]!==n||e[14]!==d||e[15]!==s?(h=()=>{let v=s.get(Za),C=s.get(bt);d(!0),!va(v)&&C.state!==Mt.CLOSED&&n((0,g.jsx)(qu,{onClose:r,onSave:f}))},e[11]=r,e[12]=f,e[13]=n,e[14]=d,e[15]=s,e[16]=h):h=e[16];let y=ae(h),b;return e[17]!==d||e[18]!==l||e[19]!==y?(b={saveOrNameNotebook:y,saveIfNotebookIsPersistent:d,saveNotebook:l},e[17]=d,e[18]=l,e[19]=y,e[20]=b):b=e[20],b};function Bu(e){return e.name}function Gu(e){return e.code}function Ju(e){return e.id}function va(e){return e!==null&&!e.startsWith("/tmp/")&&!e.startsWith("/var/folders")&&!e.includes("AppData\\Local\\Temp")}function Vu(e){let t=(0,wn.c)(14),n=ie(gi),r=Dd(),[o]=In(bt),a=ie(pr),i,s;if(t[0]!==r){let m=kr(r);i=m.map(Wu),s=m.map($u),t[0]=r,t[1]=i,t[2]=s}else i=t[1],s=t[2];let c=s,l;t[3]===r?l=t[4]:(l=ui(r),t[3]=r,t[4]=l);let u=l,d;t[5]!==n||t[6]!==c||t[7]!==i||t[8]!==u||t[9]!==o||t[10]!==a||t[11]!==e.kioskMode||t[12]!==e.onSave?(d={onSave:e.onSave,needsSave:a,codes:i,cellConfigs:u,cellNames:c,connStatus:o,config:n,kioskMode:e.kioskMode},t[5]=n,t[6]=c,t[7]=i,t[8]=u,t[9]=o,t[10]=a,t[11]=e.kioskMode,t[12]=e.onSave,t[13]=d):d=t[13],Mu(d)}function $u(e){return e.name}function Wu(e){return e.code}var qu=e=>{let t=(0,wn.c)(17),{onClose:n,onSave:r}=e,[o,a]=(0,T.useState)(),i;t[0]!==n||t[1]!==r?(i=b=>{a(b),b.trim()&&(r(b),n())},t[0]=n,t[1]=r,t[2]=i):i=t[2];let s=i,c;t[3]===Symbol.for("react.memo_cache_sentinel")?(c=(0,g.jsx)(_i,{children:"Save notebook"}),t[3]=c):c=t[3];let l;t[4]===Symbol.for("react.memo_cache_sentinel")?(l=(0,g.jsx)(Ur,{className:"text-md pt-6 px-1",children:"Save as"}),t[4]=l):l=t[4];let u;t[5]===s?u=t[6]:(u=(0,g.jsxs)("div",{className:"flex flex-col",children:[l,(0,g.jsx)($r,{onNameChange:s,placeholderText:"filename",className:"missing-filename"})]}),t[5]=s,t[6]=u);let d;t[7]===n?d=t[8]:(d=(0,g.jsx)(lt,{"data-testid":"cancel-save-dialog-button","aria-label":"Cancel",variant:"secondary",onClick:n,children:"Cancel"}),t[7]=n,t[8]=d);let m=!o,f;t[9]===m?f=t[10]:(f=(0,g.jsx)(lt,{"data-testid":"submit-save-dialog-button","aria-label":"Save",variant:"default",disabled:m,type:"submit",children:"Save"}),t[9]=m,t[10]=f);let h;t[11]!==d||t[12]!==f?(h=(0,g.jsxs)(Ui,{children:[d,f]}),t[11]=d,t[12]=f,t[13]=h):h=t[13];let y;return t[14]!==u||t[15]!==h?(y=(0,g.jsxs)(Pi,{children:[c,u,h]}),t[14]=u,t[15]=h,t[16]=y):y=t[16],y};Rn=function(...e){return t=>{e.forEach(n=>{typeof n=="function"?n(t):n!=null&&(n.current=t)})}};var Ea={modified:{doc:""},original:{doc:""}},Sa=(0,T.createContext)(Ea);function Hu(e,t){return z({},e,t,{modified:z({},e.modified,t.modified),original:z({},e.original,t.original)})}var hr=()=>(0,T.useContext)(Sa),zu=e=>{var{children:t,theme:n}=e,[r,o]=(0,T.useReducer)(Hu,z({},Ea,{theme:n}));return(0,T.useEffect)(()=>o({theme:n}),[n]),(0,g.jsx)(Sa.Provider,{value:z({},r,{dispatch:o}),children:t})},Ku=["extensions","value","selection","onChange"],Ca=e=>{var{extensions:t=[],value:n,selection:r,onChange:o}=e,a=Jt(e,Ku),{theme:i,dispatch:s}=hr(),c=Et(z({},a,{theme:i}));return(0,T.useEffect)(()=>s({original:{doc:n,selection:r,extensions:[...c,...t]},originalExtension:{onChange:o,option:a,extension:[t]}}),[e]),null};Ca.displayName="CodeMirrorMerge.Original";var Yu=["extensions","value","selection","onChange"],xa=e=>{var{extensions:t=[],value:n,selection:r,onChange:o}=e,a=Jt(e,Yu),{theme:i,dispatch:s}=hr(),c=Et(z({},a,{theme:i}));return(0,T.useEffect)(()=>{s({modified:{doc:n,selection:r,extensions:[...c,...t]},modifiedExtension:{onChange:o,option:a,extension:[t]}})},[e]),null};xa.displayName="CodeMirrorMerge.Modified";var Xu=["className","children","orientation","revertControls","highlightChanges","gutter","collapseUnchanged","destroyRerender","renderRevertControl","diffConfig","root"],Qu=["modified","modifiedExtension","original","originalExtension","theme","dispatch"],Ia=T.forwardRef((e,t)=>{var{className:n,children:r,orientation:o,revertControls:a,highlightChanges:i,gutter:s,collapseUnchanged:c,destroyRerender:l=!0,renderRevertControl:u,diffConfig:d,root:m}=e,f=Jt(e,Xu),h=hr(),{modified:y,modifiedExtension:b,original:v,originalExtension:C,theme:x,dispatch:_}=h,j=Jt(h,Qu),A=(0,T.useRef)(null),k=(0,T.useRef)(),B={orientation:o,revertControls:a,highlightChanges:i,gutter:s,collapseUnchanged:c,renderRevertControl:u,diffConfig:d,root:m};(0,T.useImperativeHandle)(t,()=>({container:A.current,view:k.current,modified:y,original:v,config:z({a:v,b:y,parent:A.current},B)}),[A,k,y,v,B]);var F=J.updateListener.of(O=>{if(O.docChanged&&typeof(C==null?void 0:C.onChange)=="function"){var N=O.state.doc.toString();C==null||C.onChange(N,O)}}),ne=J.updateListener.of(O=>{if(O.docChanged&&typeof(b==null?void 0:b.onChange)=="function"){var N=O.state.doc.toString();b==null||b.onChange(N,O)}});return(0,T.useEffect)(()=>{!k.current&&A.current&&C&&b&&(k.current=new Ji(z({a:z({},v,{extensions:[...(C==null?void 0:C.extension)||[],...Et(z({},C==null?void 0:C.option,{theme:x})),F]}),b:z({},y,{extensions:[...(b==null?void 0:b.extension)||[],...Et(z({},b==null?void 0:b.option,{theme:x})),ne]}),parent:A.current},B)),_({view:k.current}))},[k,A,C,b]),(0,T.useEffect)(()=>{var U,P;if(v&&v.doc&&k.current){var O=(U=k.current)==null?void 0:U.a.state.doc.toString();if(O!==v.doc){var N;(N=k.current)==null||N.a.dispatch({changes:{from:0,to:O.length,insert:v.doc||""}})}}if(y&&y.doc&&k.current){var se=(P=k.current)==null?void 0:P.b.state.doc.toString();if(se!==y.doc){var le;(le=k.current)==null||le.b.dispatch({changes:{from:0,to:se.length,insert:y.doc||""}})}}if(l&&k.current){var re=k.current.a.state.selection.ranges[0].from,ee=k.current.b.state.selection.ranges[0].from;k.current.destroy(),k.current=new Ji(z({a:z({},v,{extensions:[...(C==null?void 0:C.extension)||[],...Et(z({},C==null?void 0:C.option,{theme:x}))]}),b:z({},y,{extensions:[...(b==null?void 0:b.extension)||[],...Et(z({},b==null?void 0:b.option,{theme:x}))]}),parent:A.current},B)),re&&(k.current.a.focus(),k.current.a.dispatch({selection:{anchor:re,head:re}})),ee&&(k.current.b.focus(),k.current.b.dispatch({selection:{anchor:ee,head:ee}}))}},[k,x,A.current,v,y,C,b,l]),(0,T.useEffect)(()=>()=>k.current&&k.current.destroy(),[]),(0,T.useEffect)(()=>{if(k.current){var O={};j.orientation!==o&&(O.orientation=o),j.revertControls!==a&&(O.revertControls=a),j.highlightChanges!==i&&(O.highlightChanges=i),j.gutter!==s&&(O.gutter=s),j.collapseUnchanged!==c&&(O.collapseUnchanged=c),j.renderRevertControl!==u&&(O.collapseUnchanged=c),Object.keys(O).length&&_&&k.current&&(k.current.reconfigure(z({},O)),_(z({},O)))}},[_,k,o,a,i,s,c,u]),(0,g.jsx)("div",z({ref:A,className:"cm-merge-theme"+(n?" "+n:"")},f,{children:r}))});Ia.displayName="CodeMirrorMerge.Internal";var Zu=["theme"],vn=T.forwardRef((e,t)=>{var{theme:n}=e;return(0,g.jsx)(zu,{theme:n,children:(0,g.jsx)(Ia,z({},Jt(e,Zu),{ref:t}))})});vn.Original=Ca,vn.Modified=xa,vn.displayName="CodeMirrorMerge";var gr=vn,ed=Je(),td=gr.Original,nd=gr.Modified,ka=[Md(),J.lineWrapping];const rd=({cellId:e,aiCompletionCell:t,className:n,onChange:r,currentLanguageAdapter:o,currentCode:a,declineChange:i,acceptChange:s,runCell:c,outputArea:l,children:u})=>{let[d,m]=(0,T.useState)(!1),[f,h]=(0,T.useState)({}),[y,b]=In(fp),v=(0,T.useId)(),C=Mf(),{initialPrompt:x,triggerImmediately:_,cellId:j}=t??{},A=j===e,k=ie(Xm).get(e),B;(k==null?void 0:k.type)==="update_cell"&&(B=k.previousCode);let{completion:F,input:ne,stop:O,isLoading:N,setCompletion:se,setInput:le,handleSubmit:re,complete:ee}=Jm({api:C.getAiURL("completion").toString(),headers:C.headers(),initialInput:x,experimental_throttle:100,body:{...Object.keys(f).length>0?f:x?ki({input:x}):{},includeOtherCode:y?Cr(a):"",code:a,language:o},onError:M=>{vt({title:"Completion failed",description:up(M)})},onFinish:(M,oe)=>{se(qn(oe).trimEnd())}}),U=T.useRef(null),P=qn(F,{streaming:N}).trimEnd(),be=(0,T.useCallback)(()=>{_&&!N&&x&&ee(x)},[_]);(0,T.useEffect)(()=>{var M;A&&(Rd(()=>{let oe=U.current;return oe!=null&&oe.view?(oe.view.focus(),be(),!0):!1},{retries:3,delay:100,initialDelay:100}),of((M=U.current)==null?void 0:M.view))},[A,be]),(0,T.useEffect)(()=>{A&&le(x||"")},[A,x,le]);let{theme:ce}=ip(),S=()=>{s(P),se("")},I=()=>{var M,oe;O(),se(""),m(!0),(oe=(M=U.current)==null?void 0:M.view)==null||oe.focus()},D=A&&_&&(P||N);l??(l="below");let L=A&&(!_||d),ue=(0,g.jsx)("div",{className:nt("w-full bg-(--cm-background) flex justify-center transition-all duration-300 ease-in-out overflow-hidden",D?"max-h-20 opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-2"),children:(0,g.jsx)(od,{status:N?"loading":"generated",onAccept:S,onReject:I,showInputPrompt:d,setShowInputPrompt:m,runCell:c,className:"mt-4 mb-3 w-lg"})}),Be=(M,oe)=>(0,g.jsxs)(gr,{className:"cm",theme:ce,children:[(0,g.jsx)(td,{onChange:r,value:M,extensions:ka}),(0,g.jsx)(nd,{value:oe,editable:!1,readOnly:!0,extensions:ka})]}),Ve=()=>{if(P&&A)return Be(a,P);if(!P&&B)return Be(B,a)},Ge=(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(Ti,{isLoading:N,onAccept:S,size:"xs",multipleCompletions:!1,acceptShortcut:"Mod-\u21B5",runCell:c,borderless:!0,buttonStyles:"hover:shadow-none",playButtonStyles:"hover:shadow-none"}),(0,g.jsx)(Ii,{onDecline:I,size:"xs",multipleCompletions:!1,declineShortcut:"Shift-Mod-Delete",borderless:!0,className:"hover:shadow-none"})]});return(0,g.jsxs)("div",{"data-ai-input-open":L,className:nt("flex flex-col w-full rounded-[inherit]",n),children:[(0,g.jsx)("div",{className:nt("flex items-center gap-2 px-3 transition-all rounded-[inherit] rounded-b-none duration-300",L&&"max-h-[400px] border-b min-h-11 visible",!L&&"max-h-0 min-h-0 invisible"),children:A&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(np,{className:"text-(--blue-10) shrink-0",size:16}),(0,g.jsx)(zm,{inputRef:U,className:"h-full my-0 py-2 flex items-center",onClose:()=>{i(),se("")},value:ne,onChange:M=>{le(M),h(ki({input:M}))},onSubmit:()=>{var M;N||((M=U.current)!=null&&M.view&&$m(U.current.view),re())},onKeyDown:Km({handleAcceptCompletion:S,handleDeclineCompletion:I,isLoading:N,hasCompletion:P.trim().length>0})}),(0,g.jsxs)("div",{className:"-mr-1.5 py-1.5",children:[(0,g.jsxs)("div",{className:"flex flex-row items-center justify-end gap-0.5",children:[(0,g.jsx)(Hm,{isLoading:N,onStop:O,onSendClick:re,isEmpty:!ne.trim(),showStopLabel:!0}),(0,g.jsx)(Ym,{handleAddContext:()=>Wm(U),isLoading:N}),(0,g.jsx)(Lf,{triggerClassName:"h-7 text-xs",iconSize:"small",forRole:"edit",displayIconOnly:!0,placeholder:"Edit model"})]}),P&&(0,g.jsx)("div",{className:"mt-1 flex items-center gap-1",children:Ge})]}),(0,g.jsx)("div",{className:"h-full w-px bg-border mx-2"}),(0,g.jsx)(_n,{content:"Include code from other cells",children:(0,g.jsxs)("div",{className:"flex flex-row items-start gap-1 overflow-hidden",children:[(0,g.jsx)(Jd,{"data-testid":"include-other-cells-checkbox",id:v,checked:y,onCheckedChange:M=>b(!!M)}),(0,g.jsx)(Ur,{htmlFor:v,className:"text-muted-foreground text-xs whitespace-nowrap ellipsis",children:"All code"})]})}),(0,g.jsx)(lt,{"data-testid":"decline-completion-button",variant:"text",size:"icon",disabled:N,onClick:()=>{O(),i(),se("")},children:(0,g.jsx)(Rm,{className:"text-(--red-10)",size:16})})]})}),l==="above"&&ue,Ve(),(!P||!A)&&!B&&u,l==="below"&&ue]})};var od=e=>{let t=(0,ed.c)(27),{status:n,onAccept:r,onReject:o,className:a,showInputPrompt:i,setShowInputPrompt:s,runCell:c}=e,l=n==="loading",u;t[0]===a?u=t[1]:(u=nt("flex flex-row items-center gap-6 rounded-md py-2 px-2.5 text-sm border border-border","shadow-[0_0_6px_1px_rgba(34,197,94,0.15)]",a),t[0]=a,t[1]=u);let d;t[2]===l?d=t[3]:(d=l?(0,g.jsx)(ep,{className:"animate-spin text-blue-600 mb-px",size:15,strokeWidth:2,"aria-label":"Generating fix"}):(0,g.jsx)(Bm,{className:"text-green-600 mb-px",size:15,strokeWidth:2,"aria-label":"Fix generated"}),t[2]=l,t[3]=d);let m=l?"Generating fix...":"Showing fix",f;t[4]===m?f=t[5]:(f=(0,g.jsx)("p",{className:"transition-opacity duration-200 text-muted-foreground",children:m}),t[4]=m,t[5]=f);let h;t[6]!==d||t[7]!==f?(h=(0,g.jsxs)("div",{className:"flex flex-row items-center gap-2",children:[d,f]}),t[6]=d,t[7]=f,t[8]=h):h=t[8];let y;t[9]===Symbol.for("react.memo_cache_sentinel")?(y=(0,g.jsx)(Ur,{htmlFor:"show-input-prompt",className:"text-muted-foreground text-xs whitespace-nowrap ellipsis",children:"Show prompt"}),t[9]=y):y=t[9];let b;t[10]!==s||t[11]!==i?(b=(0,g.jsxs)("div",{className:"flex flex-row items-center gap-1",children:[y,(0,g.jsx)(Bf,{checked:i,onCheckedChange:s,size:"xs"})]}),t[10]=s,t[11]=i,t[12]=b):b=t[12];let v;t[13]!==l||t[14]!==r||t[15]!==c?(v=(0,g.jsx)(Ti,{isLoading:l,onAccept:r,size:"xs",borderless:!0,runCell:c}),t[13]=l,t[14]=r,t[15]=c,t[16]=v):v=t[16];let C;t[17]===o?C=t[18]:(C=(0,g.jsx)(Ii,{onDecline:o,size:"xs",borderless:!0}),t[17]=o,t[18]=C);let x;t[19]!==v||t[20]!==C?(x=(0,g.jsxs)("div",{className:"flex flex-row items-center gap-2 ml-auto",children:[v,C]}),t[19]=v,t[20]=C,t[21]=x):x=t[21];let _;return t[22]!==u||t[23]!==x||t[24]!==h||t[25]!==b?(_=(0,g.jsxs)("div",{className:u,children:[h,b,x]}),t[22]=u,t[23]=x,t[24]=h,t[25]=b,t[26]=_):_=t[26],_},yr="web application/x-marimo-cell",ad=Lr({cells:If(Lr({code:di(),name:di().optional(),config:Lr({column:Ef([Sf(),Cf()]).optional(),disabled:fi().optional(),hide_code:fi().optional()}).optional()})),version:xf("1.0")});function br(e){return e.map(t=>t.code).join(`
|
|
22
|
+
`).trim()}function nu(e,t,n,r){var o;return r!=="{"||t!==n||!((o=Ei(e.state).resolveInner(t,-1))!=null&&o.type.name.includes("String"))?!1:(e.dispatch({changes:{from:t,to:n,insert:"{}"},selection:{anchor:t+1},userEvent:"input.type"}),!0)}function ru(){return J.inputHandler.of(nu)}function fa(e){let{showPlaceholder:t,enableAI:n}=e;return t?"marimo-import":n?"ai":"none"}var ma="cm-tooltip-portal";function ou(e){if(e==null)return document.querySelector("#App")??void 0;let t=document.querySelector(e);if(t==null)return;let n=t.querySelector(`:scope > .${ma}`);if(n!=null)return n;let r=document.createElement("div");return r.className=`${ma} not-prose contents`,t.append(r),r}const au=e=>{let{cellId:t,keymapConfig:n,hotkeys:r,enableAI:o,cellActions:a,completionConfig:i,lspConfig:s,diagnosticsConfig:c,displayConfig:l,inlineAiTooltip:u}=e,d=fa(e);return[kf(n,r),Qc(),Zc(),Os(),Zd({cellId:t,completionConfig:i,hotkeys:r,placeholderType:d,lspConfig:s,diagnosticsConfig:c}),df({cellId:t,hotkeys:r,cellActions:a,keymapConfig:n}),su(e),Xc(),c!=null&&c.enabled?xm():[],o&&u?[vs({prompt:m=>As({prompt:m.prompt,selection:m.selection,codeBefore:m.codeBefore,codeAfter:m.codeAfter,language:zd(m.editorView)})}),zt.of({hideOnBlur:!0})]:[],jd(t,l.reference_highlighting??!0)]};var iu=e=>{let{from:t,to:n}=e.state.selection.main;if(t!==n)return!1;let r=e.state.doc.lineAt(n);return r.text.slice(0,n-r.from).trim()===""?!1:Lm(e)};const su=e=>{let{theme:t,hotkeys:n,completionConfig:r,acceptCompletionOnEnter:o,cellId:a,lspConfig:i,diagnosticsConfig:s,tooltipParentSelector:c}=e,l=fa(e),u=r.auto_close_pairs!==!1;return[J.lineWrapping,fm(),dm(),ym(),sm(),em(),tm(),Zf(),rm({position:"fixed",parent:ou(c)}),Hd(),t==="dark"?Vf:Jf,hf(i),Pc(r),gm(),ru(),u?Om():[],Us(o),u?ct.high(We.of(Nm)):[],pm(),im(),am.of(" "),lm(um,{fallback:!0}),We.of(nm),yf({placeholderType:l,completionConfig:r,hotkeys:n,cellId:a,lspConfig:{...i,diagnostics:s}}),bf.of(Sm()),Pr.allowMultipleSelections.of(!0),qc(n),We.of([{key:"Tab",run:d=>Ci(d)||iu(d)||wm(d),preventDefault:!0},{key:n.getHotkey("completion.moveDown").key,run:d=>Gt(d.state)===null?!1:(Pn(!0)(d),!0),preventDefault:!0},{key:n.getHotkey("completion.moveUp").key,run:d=>Gt(d.state)===null?!1:(Pn(!1)(d),!0),preventDefault:!0}]),We.of([...km,Em])]};var et=(e=>!e||e instanceof WebAssembly.Module?e:typeof e=="object"&&"default"in e?e.default??e:e)(Ip),lr=e=>{Tp(e),typeof $i=="function"&&$i(),lu(St)};function lu(e){typeof e.__wbindgen_start=="function"&&e.__wbindgen_start()}if(et&&et.__wbindgen_start)lr(et);else if("Bun"in globalThis){let e;if(et instanceof WebAssembly.Module)({instance:e}=await WebAssembly.instantiate(et,{"./loro_wasm_bg.js":St}));else{let t=Bun.pathToFileURL(et);({instance:e}=await WebAssembly.instantiateStreaming(fetch(t),{"./loro_wasm_bg.js":St}))}lr(e.exports)}else{let e=et instanceof WebAssembly.Module?et:await rp(()=>import("./loro_wasm_bg-Duqr-kJ2.js").then(async r=>(await r.__tla,r)),__vite__mapDeps([0,1,2]),import.meta.url),t=e instanceof WebAssembly.Module?e:e&&e.default||e,n;if(t instanceof WebAssembly.Instance)n=t;else if(t instanceof WebAssembly.Module)n=await WebAssembly.instantiate(t,{"./loro_wasm_bg.js":St});else if(t instanceof ArrayBuffer||ArrayBuffer.isView(t)){let{instance:r}=await WebAssembly.instantiate(t,{"./loro_wasm_bg.js":St});n=r}else if(typeof t=="string"||t instanceof URL){let r=await fetch(t),{instance:o}=await WebAssembly.instantiateStreaming(r,{"./loro_wasm_bg.js":St});n=o}else throw console.error("Unsupported wasm import type:",t),Error("Unsupported wasm import type: "+typeof t);lr(n.exports??n)}var cu=["Map","Text","List","Tree","MovableList","Counter"];function uu(e){return e.startsWith("cid:")}function pa(e){if(typeof e!="object"||!e)return!1;let t=Object.getPrototypeOf(e);return typeof t!="object"||!t||typeof t.kind!="function"?!1:cu.includes(e.kind())}var du=class{constructor(e,t=3e4){this.listeners=new Set,this.inner=new kp(e,t),this.peer=e,this.timeout=t}apply(e,t="remote"){let{updated:n,added:r}=this.inner.apply(e);this.listeners.forEach(o=>{o({updated:n,added:r,removed:[]},t)}),this.startTimerIfNotEmpty()}setLocalState(e){let t=this.inner.getState(this.peer)==null;this.inner.setLocalState(e),t?this.listeners.forEach(n=>{n({updated:[],added:[this.inner.peer()],removed:[]},"local")}):this.listeners.forEach(n=>{n({updated:[this.inner.peer()],added:[],removed:[]},"local")}),this.startTimerIfNotEmpty()}getLocalState(){return this.inner.getState(this.peer)}getAllStates(){return this.inner.getAllStates()}encode(e){return this.inner.encode(e)}encodeAll(){return this.inner.encodeAll()}addListener(e){this.listeners.add(e)}removeListener(e){this.listeners.delete(e)}peers(){return this.inner.peers()}destroy(){clearInterval(this.timer),this.listeners.clear()}startTimerIfNotEmpty(){this.inner.isEmpty()||this.timer!=null||(this.timer=setInterval(()=>{let e=this.inner.removeOutdated();e.length>0&&this.listeners.forEach(t=>{t({updated:[],added:[],removed:e},"timeout")}),this.inner.isEmpty()&&(clearInterval(this.timer),this.timer=void 0)},this.timeout/2))}};Jr.prototype.toJsonWithReplacer=function(e){let t=new Set,n=this,r=(a,i)=>{if(typeof i=="string"&&uu(i)&&!t.has(i)){t.add(i);let c=n.getContainerById(i);if(c==null)throw Error(`ContainerID not found: ${i}`);let l=e(a,c);if(l===c){let u=c.getShallowValue();return typeof u=="object"?o(u):u}if(pa(l))throw Error("Using new container is not allowed in toJsonWithReplacer");return typeof l=="object"&&l?o(l):l}if(typeof i=="object"&&i)return o(i);let s=e(a,i);if(pa(s))throw Error("Using new container is not allowed in toJsonWithReplacer");return s},o=a=>{if(Array.isArray(a))return a.map((s,c)=>r(c,s)).filter(s=>s!==void 0);let i={};for(let[s,c]of Object.entries(a)){let l=r(s,c);l!==void 0&&(i[s]=l)}return i};return o(n.getShallowValue())};var ha=Symbol("loro.callPendingEventsWrapped");function fu(e,t){let n=Object.getOwnPropertyDescriptor(e,t);if(!n||typeof n.value!="function")return;let r=n.value;if(r[ha])return;let o=function(...a){let i;try{return i=r.apply(this,a),i}finally{i&&typeof i.then=="function"?i.finally(()=>{Vi()}):Vi()}};o[ha]=!0,Object.defineProperty(e,t,{...n,value:o})}function cr(e,t){for(let n of t)fu(e,n)}cr(Jr.prototype,["setDetachedEditing","attach","detach","fork","forkAt","checkoutToLatest","checkout","commit","getCursorPos","revertTo","export","exportJsonUpdates","exportJsonInIdSpan","importJsonUpdates","import","importUpdateBatch","importBatch","travelChangeAncestors","getChangedContainersIn","diff","applyDiff","setPeerId"]),cr(Cp.prototype,["set","delete","apply","removeOutdated"]),cr(xp.prototype,["undo","redo"]);const mu=J.baseTheme({".loro-cursor":{position:"absolute",width:"2px",display:"inline-block",height:"1.2em"},".loro-cursor::before":{position:"absolute",top:"1.3em",left:"0",content:"var(--rtc-name)",padding:"2px 6px",fontSize:"12px",borderRadius:"3px",whiteSpace:"nowrap",userSelect:"none",backgroundColor:"inherit",opacity:"0.7"},".loro-selection":{opacity:"0.5"}});Dr.define();const Ut=pe.define(),ur=ze.define({create(){return{remoteCursors:new Map,isCheckout:!1}},update(e,t){for(let n of t.effects)if(n.is(Ut))switch(n.value.type){case"update":{let{peer:r,user:o,cursor:a}=n.value;e.remoteCursors.set(r,{uid:r,cursor:a,user:o});break}case"delete":e.remoteCursors.delete(n.value.peer);break;case"checkout":e.isCheckout=n.value.checkout}return e}});var ga=e=>{let t=e.transactions.flatMap(n=>n.effects).filter(n=>n.is(Ut));return e.docChanged||e.viewportChanged||t.length>0};const pu=()=>vi({above:!0,class:"loro-cursor-layer",update:ga,markers:e=>{let{remoteCursors:t,isCheckout:n}=e.state.field(ur);return n?[]:[...t.values()].flatMap(r=>{var a,i;let o=wt.cursor(r.cursor.anchor);return gu.createCursor(e,o,((a=r.user)==null?void 0:a.name)||"unknown",((i=r.user)==null?void 0:i.colorClassName)||"")})}}),hu=()=>vi({above:!1,class:"loro-selection-layer",update:ga,markers:e=>{let{remoteCursors:t,isCheckout:n}=e.state.field(ur);return n?[]:[...t.entries()].filter(([,r])=>r.cursor.head!==void 0&&r.cursor.anchor!==r.cursor.head).flatMap(([,r])=>{var a;let o=wt.range(r.cursor.anchor,r.cursor.head);return mm.forRange(e,`loro-selection ${((a=r.user)==null?void 0:a.colorClassName)||""}`,o)})}});var gu=class Hr{constructor(t,n,r,o,a){this.left=t,this.top=n,this.height=r,this.name=o,this.colorClassName=a}draw(){let t=document.createElement("div");return this.adjust(t),t}update(t){return this.adjust(t),!0}adjust(t){t.style.left=`${this.left}px`,t.style.top=`${this.top}px`,t.style.height=`${this.height}px`,t.className=`loro-cursor ${this.colorClassName}`,t.style.setProperty("--rtc-name",`"${this.name}"`)}eq(t){return this.left===t.left&&this.top===t.top&&this.height===t.height&&this.name===t.name}static createCursor(t,n,r,o){let a=Hr.calculateAbsoluteCursorPosition(n,t);if(!a)return[];let i=t.scrollDOM.getBoundingClientRect(),s=(t.textDirection===hm.LTR?i.left:i.right-t.scrollDOM.clientWidth)-t.scrollDOM.scrollLeft,c=i.top-t.scrollDOM.scrollTop;return[new Hr(a.left-s,a.top-c,a.bottom-a.top,r,o)]}static calculateAbsoluteCursorPosition(t,n){let r=Math.max(0,Math.min(n.state.doc.length,t.anchor));return n.coordsAtPos(r,t.assoc||1)}},yu=(e,t,n,r)=>{let o=[],{updated:a,added:i}=n;for(let s of[...a,...i]){let c=ya(e,t,s,r);c&&o.push(c)}return o},ya=(e,t,n,r)=>{var c,l;let o=t.getAllStates()[n];if(!o||n===e.peerIdStr||o.scopeId!==r)return;if(o.type==="delete")return Ut.of({type:"delete",peer:o.uid,scopeId:o.scopeId});let a=Wi.decode(o.cursor.anchor),i=((c=e.getCursorPos(a))==null?void 0:c.offset)??0,s=i;if(o.cursor.head){let u=Wi.decode(o.cursor.head);s=((l=e.getCursorPos(u))==null?void 0:l.offset)??0}return Ut.of({type:"update",peer:o.uid,scopeId:o.scopeId,cursor:{anchor:i,head:s},user:o.user})},bu=class{constructor(e,t,n,r,o,a,i){this.view=e,this.doc=t,this.user=n,this.awareness=r,this.getTextFromDoc=o,this.scopeId=a,this.getUserId=i,this.sub=this.doc.subscribe(s=>{if(s.by==="local"){let c=[];for(let l of this.awareness.peers()){let u=ya(this.doc,this.awareness,l,this.scopeId);u&&c.push(u)}this.view.dispatch({effects:c})}else s.by==="checkout"&&this.view.dispatch({effects:[Ut.of({type:"checkout",checkout:this.doc.isDetached()})]})})}update(e){if(!e.selectionSet&&!e.focusChanged&&!e.docChanged)return;let t=e.state.selection.main;if(this.view.hasFocus&&!this.doc.isDetached()){let n=vu({doc:this.doc,getTextFromDoc:this.getTextFromDoc,anchor:t.anchor,head:t.head});this.awareness.setLocalState({type:"update",uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId,cursor:n,user:this.user})}else this.awareness.setLocalState({type:"delete",uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId})}destroy(){var e;(e=this.sub)==null||e.call(this),this.awareness.setLocalState({type:"delete",uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId})}},wu=class{constructor(e,t,n,r){this.view=e,this.doc=t,this.awareness=n,this.scopeId=r;let o=async(a,i)=>{i!=="local"&&this.view.dispatch({effects:yu(this.doc,this.awareness,a,this.scopeId)})};this._awarenessListener=o,this.awareness.addListener(o)}destroy(){this._awarenessListener&&this.awareness.removeListener(this._awarenessListener)}},vu=({doc:e,getTextFromDoc:t,anchor:n,head:r})=>{var i,s;n===r&&(r=void 0);let o=(i=t(e).getCursor(n))==null?void 0:i.encode();if(!o)throw Error("cursor head not found");let a;return r!==void 0&&(a=(s=t(e).getCursor(r))==null?void 0:s.encode()),{anchor:o,head:a}};const yn=["bg-(--amber-6)","bg-(--blue-6)","bg-(--crimson-6)","bg-(--cyan-6)","bg-(--grass-6)","bg-(--gray-6)","bg-(--green-6)","bg-(--lime-6)","bg-(--orange-6)","bg-(--purple-6)","bg-(--red-6)","bg-(--sage-6)","bg-(--sky-6)","bg-(--slate-6)"],Eu=e=>{if(typeof e=="string"){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t=Math.trunc(t);return yn[Math.abs(t)%yn.length]}return yn[e%yn.length]};var me=$e.get("rtc"),ba=me.get("awareness").disabled(),dr="awareness:";function Su(e,t){let n=new TextEncoder().encode(e);return new Uint8Array([...n,...t])}function Cu(e,t){return new TextDecoder().decode(e.slice(0,t.length))===t}function xu(e,t){return e.slice(t.length)}ut=Dt(void 0);var te=new Jr,bn=new du(te.peerIdStr),fr=Tm(()=>{me.debug("creating websocket");let e=new Ap(wi().getWsSyncURL(ap()).toString(),void 0,{maxRetries:10,debug:!1,startClosed:!0,connectionTimeout:1e4});return Promise.resolve().then(async()=>{await bi(),Qd()==="edit"&&e.reconnect()}),e.addEventListener("message",async t=>{let n=await t.data.arrayBuffer(),r=new Uint8Array(n);if(Cu(r,dr)){let o=xu(r,dr);bn.apply(o),ba.debug("applied awareness update");return}te.import(r),me.debug("imported doc change. new doc:",te.toJSON()),Y.get(ut)!==te&&Y.set(ut,te)}),e.addEventListener("open",()=>{me.debug("websocket open")}),e.addEventListener("close",t=>{me.warn("websocket close",t),Y.get(ut)===te&&Y.set(ut,void 0)}),e});Ar()&&fr(),te.subscribeLocalUpdates(e=>{me.debug("local update, sending to server"),fr().send(e)}),bn.addListener((e,t)=>{let n=[...e.added,...e.removed,...e.updated];t==="local"&&(ba.debug("awareness changes",n),fr().send(Su(dr,bn.encode(n))))});function mr(e,t,n=""){if(Pf())return{extension:[],code:n};let r=te.getByPath(`codes/${e}`)!==void 0,o=te.getMap("codes").getOrCreateContainer(e,new Gr);return r||(me.log("initializing code for new cell",n),o.insert(0,n)),{code:n.toString(),extension:[Iu(e),ku(e),Tu(te,bn,{get name(){return Y.get(lf)||"Anonymous"},get colorClassName(){return Eu(this.name)}},()=>o,e),Yd(te,["codes",e],()=>o)]}}function Iu(e){let t=(r,o)=>{let a=r.state.field(Tn).type,i=o.toString();i&&i!==a&&(me.debug(`[incoming] setting language type: ${a} -> ${i}`),Pt(r,{language:i,keepCodeAsIs:!0}))},n=(r,o)=>{let a=r.state.field(Ir),i=o.toJSON();kn(a,i)||r.dispatch({effects:[si.of(i)],annotations:[ei.of(!0)]})};return Xe.define(r=>{let o;return Promise.resolve().then(()=>{let a=te.getByPath(`languages/${e}`);if(!a){me.error("no language container found for cell",e);return}Ft(a instanceof Gr,"language type is not a LoroText");let i=te.getByPath(`language_metadata/${e}`);if(!i){me.error("no language metadata container found for cell",e);return}Ft(i instanceof qi,"language metadata is not a LoroMap"),t(r,a),n(r,i),o=te.subscribe(s=>{if(s.origin==="local")return;let c=s.events.some(u=>u.target===a.id),l=s.events.some(u=>u.target===i.id);c&&t(r,a),l&&n(r,i)})}),{destroy(){o()}}})}function ku(e){let t=te.getMap("languages").getOrCreateContainer(e,new Gr),n=te.getMap("language_metadata").getOrCreateContainer(e,new qi);return J.updateListener.of(r=>{let o=t.toString()!=="";if(!r.docChanged&&o)return;if(!o){let i=xr(r.state).type;Pt(r.view,{language:i}),me.debug("no initial language, setting default to",i),t.delete(0,t.length),t.insert(0,i),me.debug("no initial language metadata, setting default to",r.state.field(Ir));let s=r.state.field(Ir);for(let c of Object.keys(s))n.set(c,s[c]);te.commit();return}let a=!1;for(let i of r.transactions)if(!i.annotation(ei)){for(let s of i.effects)if(s.is(qd)&&t.toString()!==s.value.type&&(me.debug(`[outgoing] language change: ${t} -> ${s.value.type}`),t.delete(0,t.length),t.insert(0,s.value.type),a=!0),s.is(si)||s.is(ii)){let c=s.value;s.is(ii)?(me.debug("[outgoing] setting language metadata: ",c),n.clear()):me.debug("[outgoing] updating language metadata: ",c);for(let l of Object.keys(c))n.set(l,c[l]);a=!0}}a&&te.commit()})}function Tu(e,t,n,r,o,a){let i=`loro:cell:${o}`;return[ur,pu(),hu(),Xe.define(s=>new bu(s,e,n,t,r,i,a)),Xe.define(s=>new wu(s,e,t,i)),mu]}var Nu=Je(),Au=qf;$r=e=>{let t=(0,Nu.c)(41),{resetOnBlur:n,placeholderText:r,initialValue:o,flexibleWidth:a,onNameChange:i,className:s}=e,c=n===void 0?!1:n,l=o===void 0?null:o,u=a===void 0?!1:a,{sendListFiles:d}=Fn(),[m,f]=(0,T.useState)(l),h;t[0]===Symbol.for("react.memo_cache_sentinel")?(h=[],t[0]=h):h=t[0];let[y,b]=(0,T.useState)(h),[v,C]=(0,T.useState)(!1),x=(0,T.useRef)(null),_=(0,T.useRef)(!1),D,A;t[1]===l?(D=t[2],A=t[3]):(D=()=>{f(l)},A=[l],t[1]=l,t[2]=D,t[3]=A),(0,T.useEffect)(D,A);let k;t[4]===Symbol.for("react.memo_cache_sentinel")?(k=()=>{C(!0)},t[4]=k):k=t[4];let B=k,F;t[5]!==l||t[6]!==c?(F=H=>{var gt;(gt=H.relatedTarget)!=null&>.closest(".filename-input")||(C(!1),c&&f(l))},t[5]=l,t[6]=c,t[7]=F):F=t[7];let ne=F,O;t[8]===m?O=t[9]:(O=Qe.dirname(m||""),t[8]=m,t[9]=O);let N=O,se=Qe.basename(m||""),le=y.filter(H=>Qe.basename(H.path).startsWith(se)),re;t[10]!==N||t[11]!==v||t[12]!==d?(re=async()=>{if(!v){b([]);return}b((await d({path:N})).files)},t[10]=N,t[11]=v,t[12]=d,t[13]=re):re=t[13];let ee;t[14]!==N||t[15]!==v?(ee=[N,v],t[14]=N,t[15]=v,t[16]=ee):ee=t[16];let{isPending:U}=gp(re,ee),j=Lu(m,y,l),be=(j||le.length>0)&&(0,g.jsxs)(Bi,{className:"font-mono",children:[!U&&(0,g.jsx)(bp,{children:"No files"}),j&&(0,g.jsxs)(Ri,{variant:"success",className:"py-2 px-3",onSelect:()=>{var H;j&&(_.current=!0,i(j),(H=x.current)==null||H.blur())},children:[(0,g.jsx)(Z,{className:"w-4 h-4 mr-2"})," ",(0,g.jsxs)("span",{className:"text-sm",children:[l?"Rename to: ":"Save as: ",(0,g.jsx)("span",{className:"font-medium text-sm",children:Qe.basename(j)})]})]},"_rename_"),le.map(H=>{let gt=Zm[H.isDirectory?"directory":Qm(H.path)];return(0,g.jsxs)(Ri,{variant:H.isDirectory?"default":"muted",className:"py-2 px-3",onSelect:()=>{H.isDirectory?f(`${H.path}/`):f(H.path)},children:[(0,g.jsx)(gt,{className:"w-4 h-4 mr-2"})," ",Qe.basename(H.path)]},H.path)})]}),ce=Math.max(20,(m==null?void 0:m.length)||(r==null?void 0:r.length)||0)*10,S=v?m||"":l||"",I;t[17]!==u||t[18]!==ce?(I=u?{maxWidth:ce}:void 0,t[17]=u,t[18]=ce,t[19]=I):I=t[19];let P;t[20]===s?P=t[21]:(P=nt(s,"w-full px-4 py-1 my-1 h-9 font-mono text-foreground/60"),t[20]=s,t[21]=P);let L;t[22]!==r||t[23]!==S||t[24]!==I||t[25]!==P?(L=(0,g.jsx)(Au,{children:(0,g.jsx)(yp,{"data-testid":"dir-completion-input",tabIndex:-1,rootClassName:"border-none justify-center px-1",spellCheck:"false",value:S,onKeyDown:Ou,icon:null,ref:x,onValueChange:f,placeholder:r,autoComplete:"off",style:I,className:P})}),t[22]=r,t[23]=S,t[24]=I,t[25]=P,t[26]=L):L=t[26];let ue=be&&"group-focus-within:block",Be;t[27]===ue?Be=t[28]:(Be=nt("p-0 w-full min-w-80 max-w-80vw hidden",ue),t[27]=ue,t[28]=Be);let Ve;t[29]!==be||t[30]!==Be?(Ve=(0,g.jsx)(Hf,{side:"bottom",className:Be,portal:!1,children:be}),t[29]=be,t[30]=Be,t[31]=Ve):Ve=t[31];let Ge;t[32]!==L||t[33]!==Ve?(Ge=(0,g.jsxs)(Bi,{children:[L,Ve]}),t[32]=L,t[33]=Ve,t[34]=Ge):Ge=t[34];let M;t[35]!==ne||t[36]!==Ge?(M=(0,g.jsx)(wp,{onFocus:B,onBlur:ne,shouldFilter:!1,id:"filename-input",className:"bg-transparent group filename-input",children:Ge}),t[35]=ne,t[36]=Ge,t[37]=M):M=t[37];let oe;return t[38]!==v||t[39]!==M?(oe=(0,g.jsx)($f,{children:(0,g.jsx)(zf,{open:v,modal:!1,children:M})}),t[38]=v,t[39]=M,t[40]=oe):oe=t[40],oe};function Lu(e,t,n){if(e&&!e.endsWith("/")&&((Gd("markdown")?new Set(["py","md","markdown","qmd"]):new Set(["py"])).has(Qe.extension(e))||(e=e.endsWith(".")?`${e}py`:e.endsWith(".p")?`${e}y`:`${e}.py`),!t.some(r=>r.path===e||Qe.basename(r.path)===e)&&!(n&&(n===e||Qe.basename(n)===e))))return e}function Ou(e){e.key==="Escape"&&e.currentTarget.blur()}var wa=Je(),_u=e=>{let t=(0,wa.c)(33),n=()=>{Qf(new Blob([r()],{type:"text/plain"}),`${e.proposedName}.json`)},r=ae(Du),o;t[0]!==n||t[1]!==e?(o=D=>{D.preventDefault(),n(),e.closeModal()},t[0]=n,t[1]=e,t[2]=o):o=t[2];let a;t[3]===e?a=t[4]:(a=D=>{D.key==="Escape"&&e.closeModal()},t[3]=e,t[4]=a);let i;t[5]===Symbol.for("react.memo_cache_sentinel")?(i=(0,g.jsx)(_i,{className:"text-accent-foreground mb-6",children:"Download unsaved changes?"}),t[5]=i):i=t[5];let s;t[6]===Symbol.for("react.memo_cache_sentinel")?(s={wordBreak:"break-word"},t[6]=s):s=t[6];let c,l;t[7]===Symbol.for("react.memo_cache_sentinel")?(c=(0,g.jsx)("p",{children:"This app has unsaved changes. To recover:"}),l={paddingBottom:"10px"},t[7]=c,t[8]=l):(c=t[7],l=t[8]);let u;t[9]===e.proposedName?u=t[10]:(u=(0,g.jsxs)("li",{style:l,children:['Click the "Download" button. This will download a file called\xA0',(0,g.jsxs)("code",{children:[e.proposedName,".json"]}),". This file contains your code."]}),t[9]=e.proposedName,t[10]=u);let d;t[11]===Symbol.for("react.memo_cache_sentinel")?(d={paddingBottom:"10px"},t[11]=d):d=t[11];let m;t[12]===Symbol.for("react.memo_cache_sentinel")?(m={display:"block",padding:"10px"},t[12]=m):m=t[12];let f;t[13]===e.proposedName?f=t[14]:(f=(0,g.jsxs)("code",{style:m,children:["marimo recover ",e.proposedName,".json ",">"," ",e.proposedName,".py"]}),t[13]=e.proposedName,t[14]=f);let h;t[15]===e.proposedName?h=t[16]:(h=(0,g.jsxs)("code",{children:[e.proposedName,".py"]}),t[15]=e.proposedName,t[16]=h);let y;t[17]!==h||t[18]!==f?(y=(0,g.jsxs)("li",{style:d,children:["In your terminal, type",f,"to overwrite ",h," with the recovered changes."]}),t[17]=h,t[18]=f,t[19]=y):y=t[19];let b;t[20]!==y||t[21]!==u?(b=(0,g.jsx)(cp,{className:"markdown wrap-break-word",style:s,children:(0,g.jsxs)("div",{className:"prose dark:prose-invert",children:[c,(0,g.jsxs)("ol",{children:[u,y]})]})}),t[20]=y,t[21]=u,t[22]=b):b=t[22];let v;t[23]===e.closeModal?v=t[24]:(v=(0,g.jsx)(lt,{"aria-label":"Cancel",variant:"secondary","data-testid":"cancel-recovery-button",onClick:e.closeModal,children:"Cancel"}),t[23]=e.closeModal,t[24]=v);let C;t[25]===Symbol.for("react.memo_cache_sentinel")?(C=(0,g.jsx)(lt,{"data-testid":"download-recovery-button","aria-label":"Download",variant:"default",type:"submit",children:"Download"}),t[25]=C):C=t[25];let x;t[26]===v?x=t[27]:(x=(0,g.jsxs)(Ui,{children:[v,C]}),t[26]=v,t[27]=x);let _;return t[28]!==o||t[29]!==a||t[30]!==b||t[31]!==x?(_=(0,g.jsx)(ji,{className:"w-fit",children:(0,g.jsxs)("form",{onSubmit:o,onKeyDown:a,children:[i,b,x]})}),t[28]=o,t[29]=a,t[30]=b,t[31]=x,t[32]=_):_=t[32],_};const Uu=e=>{let t=(0,wa.c)(12),{filename:n,needsSave:r}=e,{openModal:o,closeModal:a}=Pi(),i;t[0]===n?i=t[1]:(i=n===null?"app":Qe.basename(n).split(".")[0],t[0]=n,t[1]=i);let s=i,c;t[2]!==a||t[3]!==r||t[4]!==o||t[5]!==s?(c=()=>{r&&o((0,g.jsx)(_u,{proposedName:s,closeModal:a}))},t[2]=a,t[3]=r,t[4]=o,t[5]=s,t[6]=c):c=t[6];let l=c;Di("global.save",l);let u;t[7]===Symbol.for("react.memo_cache_sentinel")?(u=Gi("global.save"),t[7]=u):u=t[7];let d=r?"yellow":"gray",m;t[8]===Symbol.for("react.memo_cache_sentinel")?(m=(0,g.jsx)(Ai,{strokeWidth:1.5,size:18}),t[8]=m):m=t[8];let f;return t[9]!==l||t[10]!==d?(f=(0,g.jsx)(_n,{content:u,children:(0,g.jsx)(Hi,{onClick:l,id:"save-button","aria-label":"Save",className:"rectangle",color:d,children:m})}),t[9]=l,t[10]=d,t[11]=f):f=t[11],f};function ju(e){return{id:e.id,name:e.name,code:e.code,code_hash:null,config:{column:0,...e.config}}}function Du(){let e=kr(yt()),t={version:"1",metadata:{marimo_version:Gf()},cells:e.map(ju)};return JSON.stringify(t,null,2)}let pr;Bn=Dt(void 0),pr=Dt(e=>{let t=e(Bn);return Pu({state:e(tt),layout:e(xi),lastSavedNotebook:t})});function Pu({state:e,layout:t,lastSavedNotebook:n}){if(!n)return!1;let{cellIds:r,cellData:o}=e,a=r.inOrderIds.map(l=>o[l]),i=a.map(l=>l.code),s=a.map(l=>l.config),c=a.map(l=>l.name);return!Si(i,n.codes)||!Si(c,n.names)||!kn(s,n.configs)||!kn(t.selectedLayout,n.layout.selectedLayout)||!kn(t.layoutData,n.layout.layoutData)}var Fu=Je();function Mu(e){let t=(0,Fu.c)(21),{codes:n,cellConfigs:r,config:o,connStatus:a,cellNames:i,needsSave:s,kioskMode:c,onSave:l}=e,u=(0,T.useRef)(null),d;t[0]===n?d=t[1]:(d=n.join(":"),t[0]=n,t[1]=d);let m=d,f;t[2]===r?f=t[3]:(f=r.map(Ru).join(":"),t[2]=r,t[3]=f);let h=f,y;t[4]===i?y=t[5]:(y=i.join(":"),t[4]=i,t[5]=y);let b=y,v;t[6]!==o||t[7]!==a.state||t[8]!==c||t[9]!==s||t[10]!==l?(v=()=>{if(!c)return o.autosave==="after_delay"&&(u.current!==null&&clearTimeout(u.current),s&&a.state===Mt.OPEN&&(u.current=setTimeout(l,o.autosave_delay))),()=>{u.current!==null&&clearTimeout(u.current)}},t[6]=o,t[7]=a.state,t[8]=c,t[9]=s,t[10]=l,t[11]=v):v=t[11];let C;t[12]!==h||t[13]!==b||t[14]!==m||t[15]!==o||t[16]!==a.state||t[17]!==c||t[18]!==s||t[19]!==l?(C=[m,h,b,o,a.state,l,c,s],t[12]=h,t[13]=b,t[14]=m,t[15]=o,t[16]=a.state,t[17]=c,t[18]=s,t[19]=l,t[20]=C):C=t[20],(0,T.useEffect)(v,C)}function Ru(e){return JSON.stringify(e)}var wn=Je();Yi=e=>{let t=(0,wn.c)(15),{kioskMode:n}=e,r=mp(),o=ie(pr),a=ie(bt).state===Mt.CLOSED,{saveOrNameNotebook:i,saveIfNotebookIsPersistent:s}=$t(),c;t[0]!==n||t[1]!==s?(c={onSave:s,kioskMode:n},t[0]=n,t[1]=s,t[2]=c):c=t[2],Vu(c),Lp();let l;t[3]===o?l=t[4]:(l=b=>{if(o)return b.preventDefault(),b.returnValue="You have unsaved changes. Are you sure you want to leave?",b.returnValue},t[3]=o,t[4]=l),jf(window,"beforeunload",l);let u;t[5]===i?u=t[6]:(u=b=>{b.preventDefault(),b.stopPropagation(),i()},t[5]=i,t[6]=u);let d=u;if(Di("global.save",i),a){let b;return t[7]!==r||t[8]!==o?(b=(0,g.jsx)(Uu,{filename:r,needsSave:o}),t[7]=r,t[8]=o,t[9]=b):b=t[9],b}let m;t[10]===Symbol.for("react.memo_cache_sentinel")?(m=Gi("global.save"),t[10]=m):m=t[10];let f=o?"yellow":"hint-green",h;t[11]===Symbol.for("react.memo_cache_sentinel")?(h=(0,g.jsx)(Ai,{strokeWidth:1.5,size:18}),t[11]=h):h=t[11];let y;return t[12]!==d||t[13]!==f?(y=(0,g.jsx)(_n,{content:m,children:(0,g.jsx)(Hi,{"data-testid":"save-button",id:"save-button",shape:"rectangle",color:f,onClick:d,children:h})}),t[12]=d,t[13]=f,t[14]=y):y=t[14],y},$t=function(){let e=(0,wn.c)(21),{sendSave:t}=Fn(),{openModal:n,closeModal:r,openAlert:o}=Pi(),a=Xa(Bn),i=pp(),s=Sr(),c;e[0]!==o||e[1]!==t||e[2]!==a||e[3]!==s?(c=async(v,C)=>{let x=s.get(bt),_=s.get(gi);if(s.get(ff))return;if(x.state!==Mt.OPEN){o("Failed to save notebook: not connected to a kernel.");return}$e.log("saving to ",v),C&&_.format_on_save&&($e.log("formatting notebook (onSave)"),await af());let D=yt(),A=kr(D),k=A.map(Ju),B=A.map(Gu),F=A.map(Bu),ne=ui(D),O=s.get(xi);B.length!==0&&(await t({cellIds:k,codes:B,names:F,filename:v,configs:ne,layout:Fm(),persist:!0}),a({names:F,codes:B,configs:ne,layout:O}))},e[0]=o,e[1]=t,e[2]=a,e[3]=s,e[4]=c):c=e[4];let l=ae(c),u;e[5]!==l||e[6]!==s?(u=v=>{let C=v===void 0?!1:v,x=s.get(Za),_=s.get(bt);va(x)&&_.state===Mt.OPEN&&l(x,C)},e[5]=l,e[6]=s,e[7]=u):u=e[7];let d=ae(u),m;e[8]!==l||e[9]!==i?(m=v=>{i(v).then(C=>{C!==null&&l(C,!0)})},e[8]=l,e[9]=i,e[10]=m):m=e[10];let f=m,h;e[11]!==r||e[12]!==f||e[13]!==n||e[14]!==d||e[15]!==s?(h=()=>{let v=s.get(Za),C=s.get(bt);d(!0),!va(v)&&C.state!==Mt.CLOSED&&n((0,g.jsx)(qu,{onClose:r,onSave:f}))},e[11]=r,e[12]=f,e[13]=n,e[14]=d,e[15]=s,e[16]=h):h=e[16];let y=ae(h),b;return e[17]!==d||e[18]!==l||e[19]!==y?(b={saveOrNameNotebook:y,saveIfNotebookIsPersistent:d,saveNotebook:l},e[17]=d,e[18]=l,e[19]=y,e[20]=b):b=e[20],b};function Bu(e){return e.name}function Gu(e){return e.code}function Ju(e){return e.id}function va(e){return e!==null&&!e.startsWith("/tmp/")&&!e.startsWith("/var/folders")&&!e.includes("AppData\\Local\\Temp")}function Vu(e){let t=(0,wn.c)(14),n=ie(gi),r=Pd(),[o]=In(bt),a=ie(pr),i,s;if(t[0]!==r){let m=kr(r);i=m.map(Wu),s=m.map($u),t[0]=r,t[1]=i,t[2]=s}else i=t[1],s=t[2];let c=s,l;t[3]===r?l=t[4]:(l=ui(r),t[3]=r,t[4]=l);let u=l,d;t[5]!==n||t[6]!==c||t[7]!==i||t[8]!==u||t[9]!==o||t[10]!==a||t[11]!==e.kioskMode||t[12]!==e.onSave?(d={onSave:e.onSave,needsSave:a,codes:i,cellConfigs:u,cellNames:c,connStatus:o,config:n,kioskMode:e.kioskMode},t[5]=n,t[6]=c,t[7]=i,t[8]=u,t[9]=o,t[10]=a,t[11]=e.kioskMode,t[12]=e.onSave,t[13]=d):d=t[13],Mu(d)}function $u(e){return e.name}function Wu(e){return e.code}var qu=e=>{let t=(0,wn.c)(17),{onClose:n,onSave:r}=e,[o,a]=(0,T.useState)(),i;t[0]!==n||t[1]!==r?(i=b=>{a(b),b.trim()&&(r(b),n())},t[0]=n,t[1]=r,t[2]=i):i=t[2];let s=i,c;t[3]===Symbol.for("react.memo_cache_sentinel")?(c=(0,g.jsx)(_i,{children:"Save notebook"}),t[3]=c):c=t[3];let l;t[4]===Symbol.for("react.memo_cache_sentinel")?(l=(0,g.jsx)(Ur,{className:"text-md pt-6 px-1",children:"Save as"}),t[4]=l):l=t[4];let u;t[5]===s?u=t[6]:(u=(0,g.jsxs)("div",{className:"flex flex-col",children:[l,(0,g.jsx)($r,{onNameChange:s,placeholderText:"filename",className:"missing-filename"})]}),t[5]=s,t[6]=u);let d;t[7]===n?d=t[8]:(d=(0,g.jsx)(lt,{"data-testid":"cancel-save-dialog-button","aria-label":"Cancel",variant:"secondary",onClick:n,children:"Cancel"}),t[7]=n,t[8]=d);let m=!o,f;t[9]===m?f=t[10]:(f=(0,g.jsx)(lt,{"data-testid":"submit-save-dialog-button","aria-label":"Save",variant:"default",disabled:m,type:"submit",children:"Save"}),t[9]=m,t[10]=f);let h;t[11]!==d||t[12]!==f?(h=(0,g.jsxs)(Ui,{children:[d,f]}),t[11]=d,t[12]=f,t[13]=h):h=t[13];let y;return t[14]!==u||t[15]!==h?(y=(0,g.jsxs)(ji,{children:[c,u,h]}),t[14]=u,t[15]=h,t[16]=y):y=t[16],y};Rn=function(...e){return t=>{e.forEach(n=>{typeof n=="function"?n(t):n!=null&&(n.current=t)})}};var Ea={modified:{doc:""},original:{doc:""}},Sa=(0,T.createContext)(Ea);function Hu(e,t){return z({},e,t,{modified:z({},e.modified,t.modified),original:z({},e.original,t.original)})}var hr=()=>(0,T.useContext)(Sa),zu=e=>{var{children:t,theme:n}=e,[r,o]=(0,T.useReducer)(Hu,z({},Ea,{theme:n}));return(0,T.useEffect)(()=>o({theme:n}),[n]),(0,g.jsx)(Sa.Provider,{value:z({},r,{dispatch:o}),children:t})},Ku=["extensions","value","selection","onChange"],Ca=e=>{var{extensions:t=[],value:n,selection:r,onChange:o}=e,a=Jt(e,Ku),{theme:i,dispatch:s}=hr(),c=Et(z({},a,{theme:i}));return(0,T.useEffect)(()=>s({original:{doc:n,selection:r,extensions:[...c,...t]},originalExtension:{onChange:o,option:a,extension:[t]}}),[e]),null};Ca.displayName="CodeMirrorMerge.Original";var Yu=["extensions","value","selection","onChange"],xa=e=>{var{extensions:t=[],value:n,selection:r,onChange:o}=e,a=Jt(e,Yu),{theme:i,dispatch:s}=hr(),c=Et(z({},a,{theme:i}));return(0,T.useEffect)(()=>{s({modified:{doc:n,selection:r,extensions:[...c,...t]},modifiedExtension:{onChange:o,option:a,extension:[t]}})},[e]),null};xa.displayName="CodeMirrorMerge.Modified";var Xu=["className","children","orientation","revertControls","highlightChanges","gutter","collapseUnchanged","destroyRerender","renderRevertControl","diffConfig","root"],Qu=["modified","modifiedExtension","original","originalExtension","theme","dispatch"],Ia=T.forwardRef((e,t)=>{var{className:n,children:r,orientation:o,revertControls:a,highlightChanges:i,gutter:s,collapseUnchanged:c,destroyRerender:l=!0,renderRevertControl:u,diffConfig:d,root:m}=e,f=Jt(e,Xu),h=hr(),{modified:y,modifiedExtension:b,original:v,originalExtension:C,theme:x,dispatch:_}=h,D=Jt(h,Qu),A=(0,T.useRef)(null),k=(0,T.useRef)(),B={orientation:o,revertControls:a,highlightChanges:i,gutter:s,collapseUnchanged:c,renderRevertControl:u,diffConfig:d,root:m};(0,T.useImperativeHandle)(t,()=>({container:A.current,view:k.current,modified:y,original:v,config:z({a:v,b:y,parent:A.current},B)}),[A,k,y,v,B]);var F=J.updateListener.of(O=>{if(O.docChanged&&typeof(C==null?void 0:C.onChange)=="function"){var N=O.state.doc.toString();C==null||C.onChange(N,O)}}),ne=J.updateListener.of(O=>{if(O.docChanged&&typeof(b==null?void 0:b.onChange)=="function"){var N=O.state.doc.toString();b==null||b.onChange(N,O)}});return(0,T.useEffect)(()=>{!k.current&&A.current&&C&&b&&(k.current=new Ji(z({a:z({},v,{extensions:[...(C==null?void 0:C.extension)||[],...Et(z({},C==null?void 0:C.option,{theme:x})),F]}),b:z({},y,{extensions:[...(b==null?void 0:b.extension)||[],...Et(z({},b==null?void 0:b.option,{theme:x})),ne]}),parent:A.current},B)),_({view:k.current}))},[k,A,C,b]),(0,T.useEffect)(()=>{var U,j;if(v&&v.doc&&k.current){var O=(U=k.current)==null?void 0:U.a.state.doc.toString();if(O!==v.doc){var N;(N=k.current)==null||N.a.dispatch({changes:{from:0,to:O.length,insert:v.doc||""}})}}if(y&&y.doc&&k.current){var se=(j=k.current)==null?void 0:j.b.state.doc.toString();if(se!==y.doc){var le;(le=k.current)==null||le.b.dispatch({changes:{from:0,to:se.length,insert:y.doc||""}})}}if(l&&k.current){var re=k.current.a.state.selection.ranges[0].from,ee=k.current.b.state.selection.ranges[0].from;k.current.destroy(),k.current=new Ji(z({a:z({},v,{extensions:[...(C==null?void 0:C.extension)||[],...Et(z({},C==null?void 0:C.option,{theme:x}))]}),b:z({},y,{extensions:[...(b==null?void 0:b.extension)||[],...Et(z({},b==null?void 0:b.option,{theme:x}))]}),parent:A.current},B)),re&&(k.current.a.focus(),k.current.a.dispatch({selection:{anchor:re,head:re}})),ee&&(k.current.b.focus(),k.current.b.dispatch({selection:{anchor:ee,head:ee}}))}},[k,x,A.current,v,y,C,b,l]),(0,T.useEffect)(()=>()=>k.current&&k.current.destroy(),[]),(0,T.useEffect)(()=>{if(k.current){var O={};D.orientation!==o&&(O.orientation=o),D.revertControls!==a&&(O.revertControls=a),D.highlightChanges!==i&&(O.highlightChanges=i),D.gutter!==s&&(O.gutter=s),D.collapseUnchanged!==c&&(O.collapseUnchanged=c),D.renderRevertControl!==u&&(O.collapseUnchanged=c),Object.keys(O).length&&_&&k.current&&(k.current.reconfigure(z({},O)),_(z({},O)))}},[_,k,o,a,i,s,c,u]),(0,g.jsx)("div",z({ref:A,className:"cm-merge-theme"+(n?" "+n:"")},f,{children:r}))});Ia.displayName="CodeMirrorMerge.Internal";var Zu=["theme"],vn=T.forwardRef((e,t)=>{var{theme:n}=e;return(0,g.jsx)(zu,{theme:n,children:(0,g.jsx)(Ia,z({},Jt(e,Zu),{ref:t}))})});vn.Original=Ca,vn.Modified=xa,vn.displayName="CodeMirrorMerge";var gr=vn,ed=Je(),td=gr.Original,nd=gr.Modified,ka=[Md(),J.lineWrapping];const rd=({cellId:e,aiCompletionCell:t,className:n,onChange:r,currentLanguageAdapter:o,currentCode:a,declineChange:i,acceptChange:s,runCell:c,outputArea:l,children:u})=>{let[d,m]=(0,T.useState)(!1),[f,h]=(0,T.useState)({}),[y,b]=In(fp),v=(0,T.useId)(),C=Mf(),{initialPrompt:x,triggerImmediately:_,cellId:D}=t??{},A=D===e,k=ie(Xm).get(e),B;(k==null?void 0:k.type)==="update_cell"&&(B=k.previousCode);let{completion:F,input:ne,stop:O,isLoading:N,setCompletion:se,setInput:le,handleSubmit:re,complete:ee}=Jm({api:C.getAiURL("completion").toString(),headers:C.headers(),initialInput:x,experimental_throttle:100,body:{...Object.keys(f).length>0?f:x?ki({input:x}):{},includeOtherCode:y?Cr(a):"",code:a,language:o},onError:M=>{vt({title:"Completion failed",description:up(M)})},onFinish:(M,oe)=>{se(qn(oe).trimEnd())}}),U=T.useRef(null),j=qn(F,{streaming:N}).trimEnd(),be=(0,T.useCallback)(()=>{_&&!N&&x&&ee(x)},[_]);(0,T.useEffect)(()=>{var M;A&&(Rd(()=>{let oe=U.current;return oe!=null&&oe.view?(oe.view.focus(),be(),!0):!1},{retries:3,delay:100,initialDelay:100}),of((M=U.current)==null?void 0:M.view))},[A,be]),(0,T.useEffect)(()=>{A&&le(x||"")},[A,x,le]);let{theme:ce}=ip(),S=()=>{s(j),se("")},I=()=>{var M,oe;O(),se(""),m(!0),(oe=(M=U.current)==null?void 0:M.view)==null||oe.focus()},P=A&&_&&(j||N);l??(l="below");let L=A&&(!_||d),ue=(0,g.jsx)("div",{className:nt("w-full bg-(--cm-background) flex justify-center transition-all duration-300 ease-in-out overflow-hidden",P?"max-h-20 opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-2"),children:(0,g.jsx)(od,{status:N?"loading":"generated",onAccept:S,onReject:I,showInputPrompt:d,setShowInputPrompt:m,runCell:c,className:"mt-4 mb-3 w-lg"})}),Be=(M,oe)=>(0,g.jsxs)(gr,{className:"cm",theme:ce,children:[(0,g.jsx)(td,{onChange:r,value:M,extensions:ka}),(0,g.jsx)(nd,{value:oe,editable:!1,readOnly:!0,extensions:ka})]}),Ve=()=>{if(j&&A)return Be(a,j);if(!j&&B)return Be(B,a)},Ge=(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(Ti,{isLoading:N,onAccept:S,size:"xs",multipleCompletions:!1,acceptShortcut:"Mod-\u21B5",runCell:c,borderless:!0,buttonStyles:"hover:shadow-none",playButtonStyles:"hover:shadow-none"}),(0,g.jsx)(Ii,{onDecline:I,size:"xs",multipleCompletions:!1,declineShortcut:"Shift-Mod-Delete",borderless:!0,className:"hover:shadow-none"})]});return(0,g.jsxs)("div",{"data-ai-input-open":L,className:nt("flex flex-col w-full rounded-[inherit]",n),children:[(0,g.jsx)("div",{className:nt("flex items-center gap-2 px-3 transition-all rounded-[inherit] rounded-b-none duration-300",L&&"max-h-[400px] border-b min-h-11 visible",!L&&"max-h-0 min-h-0 invisible"),children:A&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(np,{className:"text-(--blue-10) shrink-0",size:16}),(0,g.jsx)(zm,{inputRef:U,className:"h-full my-0 py-2 flex items-center",onClose:()=>{i(),se("")},value:ne,onChange:M=>{le(M),h(ki({input:M}))},onSubmit:()=>{var M;N||((M=U.current)!=null&&M.view&&$m(U.current.view),re())},onKeyDown:Km({handleAcceptCompletion:S,handleDeclineCompletion:I,isLoading:N,hasCompletion:j.trim().length>0})}),(0,g.jsxs)("div",{className:"-mr-1.5 py-1.5",children:[(0,g.jsxs)("div",{className:"flex flex-row items-center justify-end gap-0.5",children:[(0,g.jsx)(Hm,{isLoading:N,onStop:O,onSendClick:re,isEmpty:!ne.trim(),showStopLabel:!0}),(0,g.jsx)(Ym,{handleAddContext:()=>Wm(U),isLoading:N}),(0,g.jsx)(Lf,{triggerClassName:"h-7 text-xs",iconSize:"small",forRole:"edit",displayIconOnly:!0,placeholder:"Edit model"})]}),j&&(0,g.jsx)("div",{className:"mt-1 flex items-center gap-1",children:Ge})]}),(0,g.jsx)("div",{className:"h-full w-px bg-border mx-2"}),(0,g.jsx)(_n,{content:"Include code from other cells",children:(0,g.jsxs)("div",{className:"flex flex-row items-start gap-1 overflow-hidden",children:[(0,g.jsx)(Jd,{"data-testid":"include-other-cells-checkbox",id:v,checked:y,onCheckedChange:M=>b(!!M)}),(0,g.jsx)(Ur,{htmlFor:v,className:"text-muted-foreground text-xs whitespace-nowrap ellipsis",children:"All code"})]})}),(0,g.jsx)(lt,{"data-testid":"decline-completion-button",variant:"text",size:"icon",disabled:N,onClick:()=>{O(),i(),se("")},children:(0,g.jsx)(Rm,{className:"text-(--red-10)",size:16})})]})}),l==="above"&&ue,Ve(),(!j||!A)&&!B&&u,l==="below"&&ue]})};var od=e=>{let t=(0,ed.c)(27),{status:n,onAccept:r,onReject:o,className:a,showInputPrompt:i,setShowInputPrompt:s,runCell:c}=e,l=n==="loading",u;t[0]===a?u=t[1]:(u=nt("flex flex-row items-center gap-6 rounded-md py-2 px-2.5 text-sm border border-border","shadow-[0_0_6px_1px_rgba(34,197,94,0.15)]",a),t[0]=a,t[1]=u);let d;t[2]===l?d=t[3]:(d=l?(0,g.jsx)(ep,{className:"animate-spin text-blue-600 mb-px",size:15,strokeWidth:2,"aria-label":"Generating fix"}):(0,g.jsx)(Bm,{className:"text-green-600 mb-px",size:15,strokeWidth:2,"aria-label":"Fix generated"}),t[2]=l,t[3]=d);let m=l?"Generating fix...":"Showing fix",f;t[4]===m?f=t[5]:(f=(0,g.jsx)("p",{className:"transition-opacity duration-200 text-muted-foreground",children:m}),t[4]=m,t[5]=f);let h;t[6]!==d||t[7]!==f?(h=(0,g.jsxs)("div",{className:"flex flex-row items-center gap-2",children:[d,f]}),t[6]=d,t[7]=f,t[8]=h):h=t[8];let y;t[9]===Symbol.for("react.memo_cache_sentinel")?(y=(0,g.jsx)(Ur,{htmlFor:"show-input-prompt",className:"text-muted-foreground text-xs whitespace-nowrap ellipsis",children:"Show prompt"}),t[9]=y):y=t[9];let b;t[10]!==s||t[11]!==i?(b=(0,g.jsxs)("div",{className:"flex flex-row items-center gap-1",children:[y,(0,g.jsx)(Bf,{checked:i,onCheckedChange:s,size:"xs"})]}),t[10]=s,t[11]=i,t[12]=b):b=t[12];let v;t[13]!==l||t[14]!==r||t[15]!==c?(v=(0,g.jsx)(Ti,{isLoading:l,onAccept:r,size:"xs",borderless:!0,runCell:c}),t[13]=l,t[14]=r,t[15]=c,t[16]=v):v=t[16];let C;t[17]===o?C=t[18]:(C=(0,g.jsx)(Ii,{onDecline:o,size:"xs",borderless:!0}),t[17]=o,t[18]=C);let x;t[19]!==v||t[20]!==C?(x=(0,g.jsxs)("div",{className:"flex flex-row items-center gap-2 ml-auto",children:[v,C]}),t[19]=v,t[20]=C,t[21]=x):x=t[21];let _;return t[22]!==u||t[23]!==x||t[24]!==h||t[25]!==b?(_=(0,g.jsxs)("div",{className:u,children:[h,b,x]}),t[22]=u,t[23]=x,t[24]=h,t[25]=b,t[26]=_):_=t[26],_},yr="web application/x-marimo-cell",ad=Lr({cells:If(Lr({code:di(),name:di().optional(),config:Lr({column:Ef([Sf(),Cf()]).optional(),disabled:fi().optional(),hide_code:fi().optional()}).optional()})),version:xf("1.0")});function br(e){return e.map(t=>t.code).join(`
|
|
23
23
|
|
|
24
|
-
`)}async function Ta(e){let t={cells:e.map(r=>({code:r.code,name:r.name,config:r.config})),version:"1.0"},n=new cd().add(yr,t).add("text/plain",br(e)).build();await navigator.clipboard.write([n])}function id(){let e=Nn(),t=_d(),n=rf();return{copyCells:ae(async r=>{let o=yt(),a=r.map(i=>o.cellData[i]).filter(Boolean);if(a.length!==0)try{await Ta(a),t.clear(),Na(a.length)}catch(i){$e.error("Failed to copy cells to clipboard",i);try{await Oi(br(a)),t.clear(),Na(a.length)}catch{Aa()}}}),cutCells:ae(async r=>{let o=yt(),a=r.filter(s=>o.cellData[s]),i=a.map(s=>o.cellData[s]);if(i.length!==0)try{await Ta(i),t.markForCut({cellIds:a})}catch(s){$e.error("Failed to cut cells to clipboard",s);try{await Oi(br(i)),t.markForCut({cellIds:a})}catch{Aa()}}}),pasteAtCell:ae(async(r,o)=>{var i;let{before:a=!1}=o??{};if(n.cellIds.size>0){let s=[...n.cellIds],c=yt(),l=s.map(u=>{let d=c.cellIds.findWithId(u);return{columnId:d.id,index:d.indexOfOrThrow(u)}});e.moveCellsRelativeTo({cellIds:s,targetCellId:r,position:a?"before":"after",previousPlacements:l}),t.clear();return}try{let s=await navigator.clipboard.read();for(let l of s)if(l.types.includes(yr)){let u=await(await l.getType(yr)).text();try{let d=ad.parse(JSON.parse(u));if(d.cells.length===0)break;let m=r,f=d.cells.toReversed();for(let h of f)e.createNewCell({cellId:m,before:a,code:h.code,name:h.name,config:h.config,hideCode:(i=h.config)==null?void 0:i.hide_code,autoFocus:!0});return}catch(d){$e.warn("Failed to parse clipboard cell data",d)}}let c=await navigator.clipboard.readText();c.trim()?e.createNewCell({cellId:r,before:a,code:c,autoFocus:!0}):sd()}catch(s){$e.error("Failed to paste from clipboard",s),ld()}}),clearPendingCut:t.clear}}var Na=e=>{let t=e===1?"Cell":`${e} cells`;vt({title:`${t} copied`,description:`${t} ${e===1?"has":"have"} been copied to clipboard.`})},Aa=()=>{vt({title:"Copy failed",description:"Failed to copy cells to clipboard.",variant:"danger"})},sd=()=>{vt({title:"Nothing to paste",description:"No cell or text found in clipboard.",variant:"danger"})},ld=()=>{vt({title:"Paste failed",description:"Failed to read from clipboard",variant:"danger"})},cd=class{constructor(){p(this,"items",{})}add(e,t){return ClipboardItem.supports(e)?typeof t=="string"?(this.items[e]=new Blob([t],{type:e}),this):(this.items[e]=new Blob([JSON.stringify(t)],{type:e}),this):($e.warn(`ClipboardItem does not support ${e}`),this)}build(){return new ClipboardItem(this.items)}},ud=Je();function La(){return{selectionStart:null,selectionEnd:null,selected:new Set}}var{reducer:Up,createActions:Pp,valueAtom:wr,useActions:dd}=Mr(La,{select:(e,t)=>({selectionStart:t.cellId,selectionEnd:t.cellId,selected:new Set([t.cellId])}),extend:(e,t)=>{if(!e.selectionStart)return{selectionStart:t.cellId,selectionEnd:t.cellId,selected:new Set([t.cellId])};let{cellId:n,allCellIds:r}=t;try{let o=r.findWithId(e.selectionStart),a=o.indexOfOrThrow(e.selectionStart),i=o.indexOfOrThrow(n),[s,c]=a<i?[a,i]:[i,a],l=o.slice(s,c+1);return{selectionStart:e.selectionStart,selectionEnd:n,selected:new Set(l)}}catch{return{selectionStart:n,selectionEnd:n,selected:new Set([n])}}},clear:e=>e.selected.size===0?e:La()});Zi=()=>ie(wr);function fd(e){let t=(0,ud.c)(2),n;return t[0]===e?n=t[1]:(n=jt(r=>r(wr).selected.has(e)),t[0]=e,t[1]=n),ie(n)}qr=function(){return dd()};function md(e){return e.get(wr).selected}let Oa,_a,Ua;Oa=Je(),{valueAtom:_a,useActions:Vt}=Mr(()=>new Set,{add:(e,t)=>{if(e.has(t))return e;let n=new Set(e);return n.add(t),n},remove:(e,t)=>{if(!e.has(t))return e;let n=new Set(e);return n.delete(t),ti(()=>{let r=document.activeElement;if(!r)return;let o=Ln.findElementThroughShadowDOMs(r);o&&Qa(Ln.parse(o.id))}),n}}),Ua=e=>jt(t=>t(_a).has(e)),Ki=function(e){let t=(0,Oa.c)(2),n;return t[0]===e?n=t[1]:(n=Ua(e),t[0]=e,t[1]=n),ie(n)};var Pt=new WeakMap,pd=500;function hd(e){if(e.ctrlKey||e.metaKey||e.altKey)return"";let t=e.key.toLowerCase();return e.shiftKey?`shift+${t}`:t}function gd(e,t){let n=hd(e),r=e.target;if(!n||!r)return!1;let o=Pt.get(r),a=n;o!=null&&o.timeout&&clearTimeout(o.timeout),o&&(a=`${o.sequence} ${n}`);let i=t[a];if(i)return Pt.delete(r),i();if(!o){let s=t[n];if(s)return s()}if(Object.keys(t).some(s=>s.startsWith(`${a} `))){let s=window.setTimeout(()=>{Pt.delete(r)},pd);return Pt.set(r,{sequence:a,timeout:s}),!0}return Pt.delete(r),!1}var vr=Je();function Pa(e){return{handle:t=>e(t),bulkHandle:t=>{let n=!0;try{for(let r of t)n&&(n=e(r));return n}catch{return!1}}}}function He(e){return{handle:t=>e([t]),bulkHandle:t=>e(t)}}function yd(e,t){let n=(0,vr.c)(12),r=hp(),o=Nn(),a=Vt(),i;n[0]!==e||n[1]!==r?(i=()=>{r.focusCell({cellId:e})},n[0]=e,n[1]=r,n[2]=i):i=n[2];let s;n[3]!==o||n[4]!==e||n[5]!==t||n[6]!==r||n[7]!==a?(s=u=>{var d;ja(u.relatedTarget)||ja(u.target)||Da(u.relatedTarget)===e||Da((d=u.relatedTarget)==null?void 0:d.closest("[data-for-cell-id]"))===e||(a.remove(e),o.markTouched({cellId:e}),r.blurCell(),t.current&&Er(t.current))},n[3]=o,n[4]=e,n[5]=t,n[6]=r,n[7]=a,n[8]=s):s=n[8];let c;n[9]!==i||n[10]!==s?(c={onFocusWithin:i,onBlurWithin:s},n[9]=i,n[10]=s,n[11]=c):c=n[11];let{focusWithinProps:l}=tp(c);return l}function ja(e){return e&&e instanceof HTMLElement?e.closest(".cm-vim-panel")!==null:!1}function Da(e){return e&&e.getAttribute(sf)||null}Qi=function(e,t){let n=(0,vr.c)(34),{canMoveX:r,editorView:o,cellActionDropdownRef:a}=t,{saveOrNameNotebook:i}=$t(),{saveCellConfig:s}=Fn(),c=Xa(Fi),l=Nn(),u=Sr(),d=Vt(),m=lp(),f=ie(yi),{copyCells:h,pasteAtCell:y,cutCells:b}=id(),v=qr(),C=fd(e),x=Mn(),_=Rr(),j=ie(_r),A;n[0]===j?A=n[1]:(A=pi(j),n[0]=j,n[1]=A);let k=A,B;n[2]!==x||n[3]!==v?(B={clear:()=>{x.clear(),v.clear()},extend:U=>{x.clear(),v.extend(U)},select:U=>{x.clear(),v.select(U)}},n[2]=x,n[3]=v,n[4]=B):B=n[4];let F=B,ne=ie(hi),O;n[5]===ne?O=n[6]:(O=(U,P)=>Or(ne.getHotkey(U).key)(P.nativeEvent||P),n[5]=ne,n[6]=O);let N=O,se=yd(e,o),le;n[7]!==l||n[8]!==k||n[9]!==r||n[10]!==a||n[11]!==e||n[12]!==h||n[13]!==b||n[14]!==_||n[15]!==o||n[16]!==C||n[17]!==N||n[18]!==f||n[19]!==y||n[20]!==x||n[21]!==m||n[22]!==s||n[23]!==i||n[24]!==F||n[25]!==c||n[26]!==u||n[27]!==d||n[28]!==j?(le={onKeyDown:U=>{if(Pr.fromInput(U)){U.continuePropagation();return}let P={"Mod+ArrowUp":()=>(l.focusTopCell(),F.clear(),!0),"Mod+ArrowDown":()=>(l.focusBottomCell(),F.clear(),!0),ArrowUp:()=>(l.focusCell({cellId:e,where:"before"}),F.clear(),!0),ArrowDown:()=>(l.focusCell({cellId:e,where:"after"}),F.clear(),!0),ArrowLeft:()=>{if(r){let S=u.get(tt),I=S.cellIds.findWithId(e),D=S.cellIds.indexOf(I),L=S.cellIds.at(D-1);if(L&&L.length>0){let ue=Fa(e,L);return l.focusCell({cellId:ue,where:"exact"}),F.clear(),!0}}return!1},ArrowRight:()=>{if(r){let S=u.get(tt),I=S.cellIds.findWithId(e),D=S.cellIds.indexOf(I),L=S.cellIds.at(D+1);if(L&&L.length>0){let ue=Fa(e,L);return l.focusCell({cellId:ue,where:"exact"}),F.clear(),!0}}return!1},"Shift+ArrowUp":()=>{let S=u.get(li);F.extend({cellId:e,allCellIds:S});let I=S.findWithId(e).before(e);return I&&F.extend({cellId:I,allCellIds:S}),l.focusCell({cellId:e,where:"before"}),!0},"Shift+ArrowDown":()=>{let S=u.get(li);F.extend({cellId:e,allCellIds:S});let I=S.findWithId(e).after(e);return I&&F.extend({cellId:I,allCellIds:S}),l.focusCell({cellId:e,where:"after"}),!0},Escape:()=>u.get(Xd).size>0?(u.set(Kd),!0):C?(F.clear(),!0):!1,Enter:()=>(d.add(e),ai(u,e),F.clear(),!0),s:()=>(i(),!0)};for(let[S,I]of Object.entries(P))if(Or(S)(U)&&I()){U.preventDefault();return}let be={"cell.run":He(S=>(m(S),!0)),"cell.runAndNewBelow":He(S=>{m(S);let I=S[S.length-1];return l.moveToNextCell({cellId:I,before:!1}),!0}),"cell.runAndNewAbove":He(S=>{m(S);let I=S[0];return l.moveToNextCell({cellId:I,before:!0}),!0}),"cell.createAbove":S=>(l.createNewCell({cellId:S,before:!0}),!0),"cell.createBelow":S=>(l.createNewCell({cellId:S,before:!1}),!0),"cell.moveUp":He(S=>{let I=S[0];return u.get(tt).cellIds.findWithId(I).first()===I?!1:(S.forEach(D=>{l.moveCell({cellId:D,before:!0})}),!0)}),"cell.moveDown":He(S=>{let I=S[S.length-1];return u.get(tt).cellIds.findWithId(I).last()===I?!1:(S.toReversed().forEach(D=>{l.moveCell({cellId:D,before:!1})}),!0)}),"cell.moveLeft":Pa(S=>r?(l.moveCell({cellId:S,direction:"left"}),!0):!1),"cell.moveRight":Pa(S=>r?(l.moveCell({cellId:S,direction:"right"}),!0):!1),"cell.hideCode":He(S=>{var D;let I=!S.map(L=>{var ue;return((ue=u.get(tt).cellData[L])==null?void 0:ue.config)||null}).every(bd);s({configs:Object.fromEntries(S.map(L=>[L,{hide_code:I}]))});for(let L of S)l.updateCellConfig({cellId:L,config:{hide_code:I}});if(S.length===1){let L=S[0];l.focusCell({cellId:L,where:"after"}),I?((D=o.current)==null||D.contentDOM.blur(),oi(L)):ai(u,L)}return!0}),"cell.focusDown":S=>(l.focusCell({cellId:S,where:"after"}),!0),"cell.focusUp":S=>(l.focusCell({cellId:S,where:"before"}),!0),"cell.sendToBottom":He(S=>(S.forEach(I=>{l.sendToBottom({cellId:I})}),!0)),"cell.sendToTop":He(S=>(S.toReversed().forEach(I=>{l.sendToTop({cellId:I})}),!0)),"cell.aiCompletion":S=>{var D;if(!k)return!1;let I=!1;return c(L=>(L==null?void 0:L.cellId)===S?(I=!0,null):{cellId:S}),I&&((D=o.current)==null||D.focus()),!0},"cell.cellActions":()=>{var S;return(S=a.current)==null||S.toggle(),!0},"command.copyCell":He(S=>(h(S),!0)),"command.cutCell":He(S=>(b(S),!0)),"command.pasteCell":S=>(y(S),!0),"command.createCellBefore":S=>Pr.hasModifier(U)?!1:(l.createNewCell({cellId:S,before:!0,autoFocus:!0}),!0),"command.createCellAfter":S=>Pr.hasModifier(U)?!1:(l.createNewCell({cellId:S,before:!1,autoFocus:!0}),!0),"cell.delete":()=>{if(!j.keymap.destructive_delete)return!1;let S=ce.size>=2?[...ce]:[e],I=u.get(tt);return S.some(D=>{let{status:L}=I.cellRuntime[D];return L==="running"||L==="queued"})?!1:x.idle?(x.submit(S),!0):(_({cellIds:S}),x.clear(),!0)}},ce=md(u);if(f==="vim"&&gd(U.nativeEvent||U,{j:P.ArrowDown,k:P.ArrowUp,h:P.ArrowLeft,l:P.ArrowRight,i:P.Enter,"shift+j":P["Shift+ArrowDown"],"shift+k":P["Shift+ArrowUp"],"g g":P["Mod+ArrowUp"],"shift+g":P["Mod+ArrowDown"],"d d":()=>be["cell.delete"](),"y y":()=>(h(ce.size>=2?[...ce]:[e]),!0),p:()=>(y(e,{before:!1}),!0),"shift+p":()=>(y(e,{before:!0}),!0),o:()=>(l.createNewCell({cellId:e,before:!1,autoFocus:!0}),!0),"shift+o":()=>(l.createNewCell({cellId:e,before:!0,autoFocus:!0}),!0),u:()=>(l.undoDeleteCell(),!0)})){U.preventDefault();return}for(let[S,I]of Object.entries(be))if(N(S,U)){if(typeof I=="function"){if(I(e)){U.preventDefault();return}}else if(ce.size>=2?I.bulkHandle([...ce]):I.handle(e)){U.preventDefault();return}return}U.continuePropagation()}},n[7]=l,n[8]=k,n[9]=r,n[10]=a,n[11]=e,n[12]=h,n[13]=b,n[14]=_,n[15]=o,n[16]=C,n[17]=N,n[18]=f,n[19]=y,n[20]=x,n[21]=m,n[22]=s,n[23]=i,n[24]=F,n[25]=c,n[26]=u,n[27]=d,n[28]=j,n[29]=le):le=n[29];let{keyboardProps:re}=Li(le),ee;return n[30]!==se||n[31]!==C||n[32]!==re?(ee=sp(se,re,{"data-selected":C,className:"data-[selected=true]:ring-1 data-[selected=true]:ring-(--blue-8) data-[selected=true]:ring-offset-1"}),n[30]=se,n[31]=C,n[32]=re,n[33]=ee):ee=n[33],ee};function bd(e){return e==null?void 0:e.hide_code}function wd(e,t){let n=(0,vr.c)(12),r=Vt(),o=ie(yi),a=ie(hi),i;n[0]===a?i=n[1]:(i=Or(a.getHotkey("command.vimEnterCommandMode").key),n[0]=a,n[1]=i);let s=i,c;n[2]!==e||n[3]!==r?(c=()=>{r.remove(e),oi(e),ti(()=>{Qa(e)})},n[2]=e,n[3]=r,n[4]=c):c=n[4];let l=c,u;n[5]!==t||n[6]!==l?(u=()=>{if(!t.current){l();return}let h=t.current,y=h.state;if(wm(h))return;let b=!!y.field(ri,!1)||!!y.field(cf,!1),v=Gt(y)!==null;b&&Er(h),v&&_m(h),!(b||v)&&l()},n[5]=t,n[6]=l,n[7]=u):u=n[7];let d=u,m;n[8]!==d||n[9]!==o||n[10]!==s?(m={onKeyDown:h=>{o==="vim"?s(h)&&d():h.key==="Escape"&&d(),h.continuePropagation()}},n[8]=d,n[9]=o,n[10]=s,n[11]=m):m=n[11];let{keyboardProps:f}=Li(m);return f}function Fa(e,t){let n=document.getElementById(Ln.create(e));if(!n)return t.first();let r=n.getBoundingClientRect();for(let o of t.topLevelIds){let a=document.getElementById(Ln.create(o));if(a){let i=a.getBoundingClientRect();if(r.top<=i.bottom&&r.bottom>=i.top)return o}}return t.last()}function Er(e){e.state.field(ri,!1)&&e.dispatch({effects:pf.of(null)}),mf(e)}var vd=Je(),Ed=50,Sd=4,Cd=60;function xd(e){return Math.min(Cd,Math.max(Sd,e))}const Id=e=>{let t=(0,vd.c)(13),{code:n,className:r}=e,o,a,i,s;if(t[0]!==r||t[1]!==n){let l=n.split(`
|
|
25
|
-
`,Ed);t[6]===r?o=t[7]:(o=nt("cm","mo-code-placeholder",r),t[6]=r,t[7]=o),a="cell-editor-placeholder",i=!0,s=l.map(kd),t[0]=r,t[1]=n,t[2]=o,t[3]=a,t[4]=i,t[5]=s}else o=t[2],a=t[3],i=t[4],s=t[5];let c;return t[8]!==o||t[9]!==a||t[10]!==i||t[11]!==s?(c=(0,g.jsx)("div",{className:o,"data-testid":a,"aria-hidden":i,children:s}),t[8]=o,t[9]=a,t[10]=i,t[11]=s,t[12]=c):c=t[12],c};function kd(e,t){let n=e.trimEnd().length;return(0,g.jsx)("div",{className:"mo-code-placeholder-line",children:n>0&&(0,g.jsx)(Op,{className:"mo-code-placeholder-bar",style:{width:`${xd(n)}ch`}})},t)}var Ma=Je();let En;Wr=e=>{let t=(0,Ma.c)(25),{editorView:n,code:r,currentLanguageAdapter:o,onAfterToggle:a,className:i}=e,s=i===void 0?"absolute right-3 top-2 z-20 flex hover-action gap-1":i,c;t[0]===r?c=t[1]:(c=ni.markdown.isSupported(r)||r.trim()==="",t[0]=r,t[1]=c);let l=c,u;t[2]===r?u=t[3]:(u=ni.sql.isSupported(r)||r.trim()==="",t[2]=r,t[3]=u);let d=u&&o==="python",m;t[4]===Symbol.for("react.memo_cache_sentinel")?(m=(0,g.jsx)(Wd,{color:"var(--sky-11)",strokeWidth:2.5,className:"w-4 h-4"}),t[4]=m):m=t[4];let f;t[5]!==o||t[6]!==n||t[7]!==a||t[8]!==d?(f=(0,g.jsx)(En,{editorView:n,currentLanguageAdapter:o,canSwitchToLanguage:d,icon:m,toType:"sql",displayName:"SQL",onAfterToggle:a}),t[5]=o,t[6]=n,t[7]=a,t[8]=d,t[9]=f):f=t[9];let h=l&&o==="python",y;t[10]===Symbol.for("react.memo_cache_sentinel")?(y=(0,g.jsx)(Ep,{fill:"var(--sky-11)",color:"black",className:"w-4 h-4"}),t[10]=y):y=t[10];let b;t[11]!==o||t[12]!==n||t[13]!==a||t[14]!==h?(b=(0,g.jsx)(En,{editorView:n,currentLanguageAdapter:o,canSwitchToLanguage:h,icon:y,toType:"markdown",displayName:"Markdown",onAfterToggle:a}),t[11]=o,t[12]=n,t[13]=a,t[14]=h,t[15]=b):b=t[15];let v;t[16]===Symbol.for("react.memo_cache_sentinel")?(v=(0,g.jsx)(vp,{fill:"var(--sky-11)",color:"black",className:"w-4 h-4"}),t[16]=v):v=t[16];let C;t[17]!==o||t[18]!==n?(C=(0,g.jsx)(En,{editorView:n,currentLanguageAdapter:o,canSwitchToLanguage:!0,icon:v,toType:"python",displayName:"Python",onAfterToggle:Uf.NOOP}),t[17]=o,t[18]=n,t[19]=C):C=t[19];let x;return t[20]!==s||t[21]!==C||t[22]!==f||t[23]!==b?(x=(0,g.jsxs)("div",{className:s,children:[f,b,C]}),t[20]=s,t[21]=C,t[22]=f,t[23]=b,t[24]=x):x=t[24],x},En=e=>{let t=(0,Ma.c)(10),{editorView:n,currentLanguageAdapter:r,canSwitchToLanguage:o,icon:a,toType:i,displayName:s,onAfterToggle:c}=e,l;t[0]!==n||t[1]!==c||t[2]!==i?(l=()=>{n&&(
|
|
24
|
+
`)}async function Ta(e){let t={cells:e.map(r=>({code:r.code,name:r.name,config:r.config})),version:"1.0"},n=new cd().add(yr,t).add("text/plain",br(e)).build();await navigator.clipboard.write([n])}function id(){let e=Nn(),t=_d(),n=rf();return{copyCells:ae(async r=>{let o=yt(),a=r.map(i=>o.cellData[i]).filter(Boolean);if(a.length!==0)try{await Ta(a),t.clear(),Na(a.length)}catch(i){$e.error("Failed to copy cells to clipboard",i);try{await Oi(br(a)),t.clear(),Na(a.length)}catch{Aa()}}}),cutCells:ae(async r=>{let o=yt(),a=r.filter(s=>o.cellData[s]),i=a.map(s=>o.cellData[s]);if(i.length!==0)try{await Ta(i),t.markForCut({cellIds:a})}catch(s){$e.error("Failed to cut cells to clipboard",s);try{await Oi(br(i)),t.markForCut({cellIds:a})}catch{Aa()}}}),pasteAtCell:ae(async(r,o)=>{var i;let{before:a=!1}=o??{};if(n.cellIds.size>0){let s=[...n.cellIds],c=yt(),l=s.map(u=>{let d=c.cellIds.findWithId(u);return{columnId:d.id,index:d.indexOfOrThrow(u)}});e.moveCellsRelativeTo({cellIds:s,targetCellId:r,position:a?"before":"after",previousPlacements:l}),t.clear();return}try{let s=await navigator.clipboard.read();for(let l of s)if(l.types.includes(yr)){let u=await(await l.getType(yr)).text();try{let d=ad.parse(JSON.parse(u));if(d.cells.length===0)break;let m=r,f=d.cells.toReversed();for(let h of f)e.createNewCell({cellId:m,before:a,code:h.code,name:h.name,config:h.config,hideCode:(i=h.config)==null?void 0:i.hide_code,autoFocus:!0});return}catch(d){$e.warn("Failed to parse clipboard cell data",d)}}let c=await navigator.clipboard.readText();c.trim()?e.createNewCell({cellId:r,before:a,code:c,autoFocus:!0}):sd()}catch(s){$e.error("Failed to paste from clipboard",s),ld()}}),clearPendingCut:t.clear}}var Na=e=>{let t=e===1?"Cell":`${e} cells`;vt({title:`${t} copied`,description:`${t} ${e===1?"has":"have"} been copied to clipboard.`})},Aa=()=>{vt({title:"Copy failed",description:"Failed to copy cells to clipboard.",variant:"danger"})},sd=()=>{vt({title:"Nothing to paste",description:"No cell or text found in clipboard.",variant:"danger"})},ld=()=>{vt({title:"Paste failed",description:"Failed to read from clipboard",variant:"danger"})},cd=class{constructor(){p(this,"items",{})}add(e,t){return ClipboardItem.supports(e)?typeof t=="string"?(this.items[e]=new Blob([t],{type:e}),this):(this.items[e]=new Blob([JSON.stringify(t)],{type:e}),this):($e.warn(`ClipboardItem does not support ${e}`),this)}build(){return new ClipboardItem(this.items)}},ud=Je();function La(){return{selectionStart:null,selectionEnd:null,selected:new Set}}var{reducer:Up,createActions:jp,valueAtom:wr,useActions:dd}=Mr(La,{select:(e,t)=>({selectionStart:t.cellId,selectionEnd:t.cellId,selected:new Set([t.cellId])}),extend:(e,t)=>{if(!e.selectionStart)return{selectionStart:t.cellId,selectionEnd:t.cellId,selected:new Set([t.cellId])};let{cellId:n,allCellIds:r}=t;try{let o=r.findWithId(e.selectionStart),a=o.indexOfOrThrow(e.selectionStart),i=o.indexOfOrThrow(n),[s,c]=a<i?[a,i]:[i,a],l=o.slice(s,c+1);return{selectionStart:e.selectionStart,selectionEnd:n,selected:new Set(l)}}catch{return{selectionStart:n,selectionEnd:n,selected:new Set([n])}}},clear:e=>e.selected.size===0?e:La()});Zi=()=>ie(wr);function fd(e){let t=(0,ud.c)(2),n;return t[0]===e?n=t[1]:(n=Dt(r=>r(wr).selected.has(e)),t[0]=e,t[1]=n),ie(n)}qr=function(){return dd()};function md(e){return e.get(wr).selected}let Oa,_a,Ua;Oa=Je(),{valueAtom:_a,useActions:Vt}=Mr(()=>new Set,{add:(e,t)=>{if(e.has(t))return e;let n=new Set(e);return n.add(t),n},remove:(e,t)=>{if(!e.has(t))return e;let n=new Set(e);return n.delete(t),ti(()=>{let r=document.activeElement;if(!r)return;let o=Ln.findElementThroughShadowDOMs(r);o&&Qa(Ln.parse(o.id))}),n}}),Ua=e=>Dt(t=>t(_a).has(e)),Ki=function(e){let t=(0,Oa.c)(2),n;return t[0]===e?n=t[1]:(n=Ua(e),t[0]=e,t[1]=n),ie(n)};var jt=new WeakMap,pd=500;function hd(e){if(e.ctrlKey||e.metaKey||e.altKey)return"";let t=e.key.toLowerCase();return e.shiftKey?`shift+${t}`:t}function gd(e,t){let n=hd(e),r=e.target;if(!n||!r)return!1;let o=jt.get(r),a=n;o!=null&&o.timeout&&clearTimeout(o.timeout),o&&(a=`${o.sequence} ${n}`);let i=t[a];if(i)return jt.delete(r),i();if(!o){let s=t[n];if(s)return s()}if(Object.keys(t).some(s=>s.startsWith(`${a} `))){let s=window.setTimeout(()=>{jt.delete(r)},pd);return jt.set(r,{sequence:a,timeout:s}),!0}return jt.delete(r),!1}var vr=Je();function ja(e){return{handle:t=>e(t),bulkHandle:t=>{let n=!0;try{for(let r of t)n&&(n=e(r));return n}catch{return!1}}}}function He(e){return{handle:t=>e([t]),bulkHandle:t=>e(t)}}function yd(e,t){let n=(0,vr.c)(12),r=hp(),o=Nn(),a=Vt(),i;n[0]!==e||n[1]!==r?(i=()=>{r.focusCell({cellId:e})},n[0]=e,n[1]=r,n[2]=i):i=n[2];let s;n[3]!==o||n[4]!==e||n[5]!==t||n[6]!==r||n[7]!==a?(s=u=>{var d;Da(u.relatedTarget)||Da(u.target)||Pa(u.relatedTarget)===e||Pa((d=u.relatedTarget)==null?void 0:d.closest("[data-for-cell-id]"))===e||(a.remove(e),o.markTouched({cellId:e}),r.blurCell(),t.current&&Er(t.current))},n[3]=o,n[4]=e,n[5]=t,n[6]=r,n[7]=a,n[8]=s):s=n[8];let c;n[9]!==i||n[10]!==s?(c={onFocusWithin:i,onBlurWithin:s},n[9]=i,n[10]=s,n[11]=c):c=n[11];let{focusWithinProps:l}=tp(c);return l}function Da(e){return e&&e instanceof HTMLElement?e.closest(".cm-vim-panel")!==null:!1}function Pa(e){return e&&e.getAttribute(sf)||null}Qi=function(e,t){let n=(0,vr.c)(34),{canMoveX:r,editorView:o,cellActionDropdownRef:a}=t,{saveOrNameNotebook:i}=$t(),{saveCellConfig:s}=Fn(),c=Xa(Fi),l=Nn(),u=Sr(),d=Vt(),m=lp(),f=ie(yi),{copyCells:h,pasteAtCell:y,cutCells:b}=id(),v=qr(),C=fd(e),x=Mn(),_=Rr(),D=ie(_r),A;n[0]===D?A=n[1]:(A=pi(D),n[0]=D,n[1]=A);let k=A,B;n[2]!==x||n[3]!==v?(B={clear:()=>{x.clear(),v.clear()},extend:U=>{x.clear(),v.extend(U)},select:U=>{x.clear(),v.select(U)}},n[2]=x,n[3]=v,n[4]=B):B=n[4];let F=B,ne=ie(hi),O;n[5]===ne?O=n[6]:(O=(U,j)=>Or(ne.getHotkey(U).key)(j.nativeEvent||j),n[5]=ne,n[6]=O);let N=O,se=yd(e,o),le;n[7]!==l||n[8]!==k||n[9]!==r||n[10]!==a||n[11]!==e||n[12]!==h||n[13]!==b||n[14]!==_||n[15]!==o||n[16]!==C||n[17]!==N||n[18]!==f||n[19]!==y||n[20]!==x||n[21]!==m||n[22]!==s||n[23]!==i||n[24]!==F||n[25]!==c||n[26]!==u||n[27]!==d||n[28]!==D?(le={onKeyDown:U=>{if(jr.fromInput(U)){U.continuePropagation();return}let j={"Mod+ArrowUp":()=>(l.focusTopCell(),F.clear(),!0),"Mod+ArrowDown":()=>(l.focusBottomCell(),F.clear(),!0),ArrowUp:()=>(l.focusCell({cellId:e,where:"before"}),F.clear(),!0),ArrowDown:()=>(l.focusCell({cellId:e,where:"after"}),F.clear(),!0),ArrowLeft:()=>{if(r){let S=u.get(tt),I=S.cellIds.findWithId(e),P=S.cellIds.indexOf(I),L=S.cellIds.at(P-1);if(L&&L.length>0){let ue=Fa(e,L);return l.focusCell({cellId:ue,where:"exact"}),F.clear(),!0}}return!1},ArrowRight:()=>{if(r){let S=u.get(tt),I=S.cellIds.findWithId(e),P=S.cellIds.indexOf(I),L=S.cellIds.at(P+1);if(L&&L.length>0){let ue=Fa(e,L);return l.focusCell({cellId:ue,where:"exact"}),F.clear(),!0}}return!1},"Shift+ArrowUp":()=>{let S=u.get(li);F.extend({cellId:e,allCellIds:S});let I=S.findWithId(e).before(e);return I&&F.extend({cellId:I,allCellIds:S}),l.focusCell({cellId:e,where:"before"}),!0},"Shift+ArrowDown":()=>{let S=u.get(li);F.extend({cellId:e,allCellIds:S});let I=S.findWithId(e).after(e);return I&&F.extend({cellId:I,allCellIds:S}),l.focusCell({cellId:e,where:"after"}),!0},Escape:()=>u.get(Xd).size>0?(u.set(Kd),!0):C?(F.clear(),!0):!1,Enter:()=>(d.add(e),ai(u,e),F.clear(),!0),s:()=>(i(),!0)};for(let[S,I]of Object.entries(j))if(Or(S)(U)&&I()){U.preventDefault();return}let be={"cell.run":He(S=>(m(S),!0)),"cell.runAndNewBelow":He(S=>{m(S);let I=S[S.length-1];return l.moveToNextCell({cellId:I,before:!1}),!0}),"cell.runAndNewAbove":He(S=>{m(S);let I=S[0];return l.moveToNextCell({cellId:I,before:!0}),!0}),"cell.createAbove":S=>(l.createNewCell({cellId:S,before:!0}),!0),"cell.createBelow":S=>(l.createNewCell({cellId:S,before:!1}),!0),"cell.moveUp":He(S=>{let I=S[0];return u.get(tt).cellIds.findWithId(I).first()===I?!1:(S.forEach(P=>{l.moveCell({cellId:P,before:!0})}),!0)}),"cell.moveDown":He(S=>{let I=S[S.length-1];return u.get(tt).cellIds.findWithId(I).last()===I?!1:(S.toReversed().forEach(P=>{l.moveCell({cellId:P,before:!1})}),!0)}),"cell.moveLeft":ja(S=>r?(l.moveCell({cellId:S,direction:"left"}),!0):!1),"cell.moveRight":ja(S=>r?(l.moveCell({cellId:S,direction:"right"}),!0):!1),"cell.hideCode":He(S=>{var P;let I=!S.map(L=>{var ue;return((ue=u.get(tt).cellData[L])==null?void 0:ue.config)||null}).every(bd);s({configs:Object.fromEntries(S.map(L=>[L,{hide_code:I}]))});for(let L of S)l.updateCellConfig({cellId:L,config:{hide_code:I}});if(S.length===1){let L=S[0];l.focusCell({cellId:L,where:"after"}),I?((P=o.current)==null||P.contentDOM.blur(),oi(L)):ai(u,L)}return!0}),"cell.focusDown":S=>(l.focusCell({cellId:S,where:"after"}),!0),"cell.focusUp":S=>(l.focusCell({cellId:S,where:"before"}),!0),"cell.sendToBottom":He(S=>(S.forEach(I=>{l.sendToBottom({cellId:I})}),!0)),"cell.sendToTop":He(S=>(S.toReversed().forEach(I=>{l.sendToTop({cellId:I})}),!0)),"cell.aiCompletion":S=>{var P;if(!k)return!1;let I=!1;return c(L=>(L==null?void 0:L.cellId)===S?(I=!0,null):{cellId:S}),I&&((P=o.current)==null||P.focus()),!0},"cell.cellActions":()=>{var S;return(S=a.current)==null||S.toggle(),!0},"command.copyCell":He(S=>(h(S),!0)),"command.cutCell":He(S=>(b(S),!0)),"command.pasteCell":S=>(y(S),!0),"command.createCellBefore":S=>jr.hasModifier(U)?!1:(l.createNewCell({cellId:S,before:!0,autoFocus:!0}),!0),"command.createCellAfter":S=>jr.hasModifier(U)?!1:(l.createNewCell({cellId:S,before:!1,autoFocus:!0}),!0),"cell.delete":()=>{if(!D.keymap.destructive_delete)return!1;let S=ce.size>=2?[...ce]:[e],I=u.get(tt);return S.some(P=>{let{status:L}=I.cellRuntime[P];return L==="running"||L==="queued"})?!1:x.idle?(x.submit(S),!0):(_({cellIds:S}),x.clear(),!0)}},ce=md(u);if(f==="vim"&&gd(U.nativeEvent||U,{j:j.ArrowDown,k:j.ArrowUp,h:j.ArrowLeft,l:j.ArrowRight,i:j.Enter,"shift+j":j["Shift+ArrowDown"],"shift+k":j["Shift+ArrowUp"],"g g":j["Mod+ArrowUp"],"shift+g":j["Mod+ArrowDown"],"d d":()=>be["cell.delete"](),"y y":()=>(h(ce.size>=2?[...ce]:[e]),!0),p:()=>(y(e,{before:!1}),!0),"shift+p":()=>(y(e,{before:!0}),!0),o:()=>(l.createNewCell({cellId:e,before:!1,autoFocus:!0}),!0),"shift+o":()=>(l.createNewCell({cellId:e,before:!0,autoFocus:!0}),!0),u:()=>(l.undoDeleteCell(),!0)})){U.preventDefault();return}for(let[S,I]of Object.entries(be))if(N(S,U)){if(typeof I=="function"){if(I(e)){U.preventDefault();return}}else if(ce.size>=2?I.bulkHandle([...ce]):I.handle(e)){U.preventDefault();return}return}U.continuePropagation()}},n[7]=l,n[8]=k,n[9]=r,n[10]=a,n[11]=e,n[12]=h,n[13]=b,n[14]=_,n[15]=o,n[16]=C,n[17]=N,n[18]=f,n[19]=y,n[20]=x,n[21]=m,n[22]=s,n[23]=i,n[24]=F,n[25]=c,n[26]=u,n[27]=d,n[28]=D,n[29]=le):le=n[29];let{keyboardProps:re}=Li(le),ee;return n[30]!==se||n[31]!==C||n[32]!==re?(ee=sp(se,re,{"data-selected":C,className:"data-[selected=true]:ring-1 data-[selected=true]:ring-(--blue-8) data-[selected=true]:ring-offset-1"}),n[30]=se,n[31]=C,n[32]=re,n[33]=ee):ee=n[33],ee};function bd(e){return e==null?void 0:e.hide_code}function wd(e,t){let n=(0,vr.c)(12),r=Vt(),o=ie(yi),a=ie(hi),i;n[0]===a?i=n[1]:(i=Or(a.getHotkey("command.vimEnterCommandMode").key),n[0]=a,n[1]=i);let s=i,c;n[2]!==e||n[3]!==r?(c=()=>{r.remove(e),oi(e),ti(()=>{Qa(e)})},n[2]=e,n[3]=r,n[4]=c):c=n[4];let l=c,u;n[5]!==t||n[6]!==l?(u=()=>{if(!t.current){l();return}let h=t.current,y=h.state;if(vm(h))return;let b=!!y.field(ri,!1)||!!y.field(cf,!1),v=Gt(y)!==null;b&&Er(h),v&&_m(h),!(b||v)&&l()},n[5]=t,n[6]=l,n[7]=u):u=n[7];let d=u,m;n[8]!==d||n[9]!==o||n[10]!==s?(m={onKeyDown:h=>{o==="vim"?s(h)&&d():h.key==="Escape"&&d(),h.continuePropagation()}},n[8]=d,n[9]=o,n[10]=s,n[11]=m):m=n[11];let{keyboardProps:f}=Li(m);return f}function Fa(e,t){let n=document.getElementById(Ln.create(e));if(!n)return t.first();let r=n.getBoundingClientRect();for(let o of t.topLevelIds){let a=document.getElementById(Ln.create(o));if(a){let i=a.getBoundingClientRect();if(r.top<=i.bottom&&r.bottom>=i.top)return o}}return t.last()}function Er(e){e.state.field(ri,!1)&&e.dispatch({effects:pf.of(null)}),mf(e)}var vd=Je(),Ed=50,Sd=4,Cd=60;function xd(e){return Math.min(Cd,Math.max(Sd,e))}const Id=e=>{let t=(0,vd.c)(13),{code:n,className:r}=e,o,a,i,s;if(t[0]!==r||t[1]!==n){let l=n.split(`
|
|
25
|
+
`,Ed);t[6]===r?o=t[7]:(o=nt("cm","mo-code-placeholder",r),t[6]=r,t[7]=o),a="cell-editor-placeholder",i=!0,s=l.map(kd),t[0]=r,t[1]=n,t[2]=o,t[3]=a,t[4]=i,t[5]=s}else o=t[2],a=t[3],i=t[4],s=t[5];let c;return t[8]!==o||t[9]!==a||t[10]!==i||t[11]!==s?(c=(0,g.jsx)("div",{className:o,"data-testid":a,"aria-hidden":i,children:s}),t[8]=o,t[9]=a,t[10]=i,t[11]=s,t[12]=c):c=t[12],c};function kd(e,t){let n=e.trimEnd().length;return(0,g.jsx)("div",{className:"mo-code-placeholder-line",children:n>0&&(0,g.jsx)(Op,{className:"mo-code-placeholder-bar",style:{width:`${xd(n)}ch`}})},t)}var Ma=Je();let En;Wr=e=>{let t=(0,Ma.c)(25),{editorView:n,code:r,currentLanguageAdapter:o,onAfterToggle:a,className:i}=e,s=i===void 0?"absolute right-3 top-2 z-20 flex hover-action gap-1":i,c;t[0]===r?c=t[1]:(c=ni.markdown.isSupported(r)||r.trim()==="",t[0]=r,t[1]=c);let l=c,u;t[2]===r?u=t[3]:(u=ni.sql.isSupported(r)||r.trim()==="",t[2]=r,t[3]=u);let d=u&&o==="python",m;t[4]===Symbol.for("react.memo_cache_sentinel")?(m=(0,g.jsx)(Wd,{color:"var(--sky-11)",strokeWidth:2.5,className:"w-4 h-4"}),t[4]=m):m=t[4];let f;t[5]!==o||t[6]!==n||t[7]!==a||t[8]!==d?(f=(0,g.jsx)(En,{editorView:n,currentLanguageAdapter:o,canSwitchToLanguage:d,icon:m,toType:"sql",displayName:"SQL",onAfterToggle:a}),t[5]=o,t[6]=n,t[7]=a,t[8]=d,t[9]=f):f=t[9];let h=l&&o==="python",y;t[10]===Symbol.for("react.memo_cache_sentinel")?(y=(0,g.jsx)(Ep,{fill:"var(--sky-11)",color:"black",className:"w-4 h-4"}),t[10]=y):y=t[10];let b;t[11]!==o||t[12]!==n||t[13]!==a||t[14]!==h?(b=(0,g.jsx)(En,{editorView:n,currentLanguageAdapter:o,canSwitchToLanguage:h,icon:y,toType:"markdown",displayName:"Markdown",onAfterToggle:a}),t[11]=o,t[12]=n,t[13]=a,t[14]=h,t[15]=b):b=t[15];let v;t[16]===Symbol.for("react.memo_cache_sentinel")?(v=(0,g.jsx)(vp,{fill:"var(--sky-11)",color:"black",className:"w-4 h-4"}),t[16]=v):v=t[16];let C;t[17]!==o||t[18]!==n?(C=(0,g.jsx)(En,{editorView:n,currentLanguageAdapter:o,canSwitchToLanguage:!0,icon:v,toType:"python",displayName:"Python",onAfterToggle:Uf.NOOP}),t[17]=o,t[18]=n,t[19]=C):C=t[19];let x;return t[20]!==s||t[21]!==C||t[22]!==f||t[23]!==b?(x=(0,g.jsxs)("div",{className:s,children:[f,b,C]}),t[20]=s,t[21]=C,t[22]=f,t[23]=b,t[24]=x):x=t[24],x},En=e=>{let t=(0,Ma.c)(10),{editorView:n,currentLanguageAdapter:r,canSwitchToLanguage:o,icon:a,toType:i,displayName:s,onAfterToggle:c}=e,l;t[0]!==n||t[1]!==c||t[2]!==i?(l=()=>{n&&(Pt(n,{language:i}),c())},t[0]=n,t[1]=c,t[2]=i,t[3]=l):l=t[3];let u=l;if(!o||r===i)return null;let d=`View as ${s}`,m;t[4]!==u||t[5]!==a?(m=(0,g.jsx)(lt,{"data-testid":"language-toggle-button",variant:"text",size:"xs",className:"opacity-80 px-1",onClick:u,children:a}),t[4]=u,t[5]=a,t[6]=m):m=t[6];let f;return t[7]!==d||t[8]!==m?(f=(0,g.jsx)(_n,{content:d,children:m}),t[7]=d,t[8]=m,t[9]=f):f=t[9],f};var Ra=Je(),Ba=({theme:e,showPlaceholder:t,id:n,config:r,code:o,status:a,serializedEditorState:i,setEditorView:s,runCell:c,userConfig:l,editorViewRef:u,editorViewParentRef:d,hidden:m,hasOutput:f,showHiddenCode:h,languageAdapter:y,setLanguageAdapter:b,showLanguageToggles:v=!0,inlineAiTooltip:C,outputArea:x,tooltipParentSelector:_})=>{var Va,$a;let[D,A]=In(Fi),k=Ni(),{saveOrNameNotebook:B}=$t(),F=Mn(),{saveCellConfig:ne}=Fn(),O=a==="running"||a==="queued",N=Nn(),se=Sp(),le=y==="markdown",re=ae(()=>O?!1:F.idle&&l.keymap.destructive_delete?(F.submit([n]),!0):(k({cellId:n}),!0)),ee=ae(()=>O?!1:(c(),u.current&&Er(u.current),!0)),U=ae(()=>{let G=!r.hide_code;return ne({configs:{[n]:{hide_code:G}}}),N.updateCellConfig({cellId:n,config:{hide_code:G}}),G}),j=ie(Df),be=ie(_f),ce=ae(()=>{Mi({autoInstantiate:j,createNewCell:N.createNewCell}),r.hide_code||(ne({configs:{[n]:{hide_code:!0}}}),N.updateCellConfig({cellId:n,config:{hide_code:!0}}),N.markUntouched({cellId:n}))}),S=ae(()=>{Mi({autoInstantiate:j,createNewCell:N.createNewCell})}),I=pi(l),P=(0,T.useMemo)(()=>{var de;let G=au({cellId:n,showPlaceholder:t,enableAI:I,cellActions:{...N,afterToggleMarkdown:ce,afterToggleSQL:S,onRun:ee,deleteCell:re,saveNotebook:B,createManyBelow:Q=>{for(let ge of Q.toReversed())N.createNewCell({code:ge,before:!1,cellId:n,skipIfCodeExists:!0})},addOrAppendSetupCell:Q=>{let ge=yt();if(!ge.cellIds.setupCellExists()){N.addSetupCellIfDoesntExist({code:Q});return}let xn=tf(ge)[Nr],Wa=xn?wf(xn):ge.cellData[Nr].code,qa=Wa.trim()?`${Wa.trimEnd()}
|
|
26
26
|
|
|
27
|
-
${Q}`:Q;xn&&ef(xn,qa),N.updateCellCode({cellId:Nr,code:qa,formattingChange:!1})},splitCell:se,toggleHideCode:U,aiCellCompletion:()=>{if(!I)return!1;let Q=!1;return A(ge=>(ge==null?void 0:ge.cellId)===n?(Q=!0,null):{cellId:n}),Q}},completionConfig:l.completion,acceptCompletionOnEnter:be,keymapConfig:l.keymap,lspConfig:l.language_servers,theme:e,hotkeys:new mi(l.keymap.overrides??{}),diagnosticsConfig:l.diagnostics,displayConfig:l.display,inlineAiTooltip:C??((de=l.ai)==null?void 0:de.inline_tooltip)??!1,tooltipParentSelector:_});return G.push(Xe.define(Q=>(b(Q.state.field(Tn).type),{update(ge){b(ge.state.field(Tn).type)}})),J.updateListener.of(Q=>{Q.selectionSet&&Q.state.selection.ranges.some(ge=>ge.from!==ge.to)&&h({focus:!1})}),J.domEventHandlers({focus:()=>{h({focus:!1})}})),G},[n,be,l.keymap,l.completion,l.language_servers,l.display,l.diagnostics,(Va=l.ai)==null?void 0:Va.inline_tooltip,C,_,I,e,t,N,se,U,re,ee,A,ce,S,b,h,B]),L=Ar(),ue=ae(()=>{if(L){let de=mr(n,Q=>{N.updateCellCode({cellId:n,code:Q,formattingChange:!0})},o);
|
|
27
|
+
${Q}`:Q;xn&&ef(xn,qa),N.updateCellCode({cellId:Nr,code:qa,formattingChange:!1})},splitCell:se,toggleHideCode:U,aiCellCompletion:()=>{if(!I)return!1;let Q=!1;return A(ge=>(ge==null?void 0:ge.cellId)===n?(Q=!0,null):{cellId:n}),Q}},completionConfig:l.completion,acceptCompletionOnEnter:be,keymapConfig:l.keymap,lspConfig:l.language_servers,theme:e,hotkeys:new mi(l.keymap.overrides??{}),diagnosticsConfig:l.diagnostics,displayConfig:l.display,inlineAiTooltip:C??((de=l.ai)==null?void 0:de.inline_tooltip)??!1,tooltipParentSelector:_});return G.push(Xe.define(Q=>(b(Q.state.field(Tn).type),{update(ge){b(ge.state.field(Tn).type)}})),J.updateListener.of(Q=>{Q.selectionSet&&Q.state.selection.ranges.some(ge=>ge.from!==ge.to)&&h({focus:!1})}),J.domEventHandlers({focus:()=>{h({focus:!1})}})),G},[n,be,l.keymap,l.completion,l.language_servers,l.display,l.diagnostics,(Va=l.ai)==null?void 0:Va.inline_tooltip,C,_,I,e,t,N,se,U,re,ee,A,ce,S,b,h,B]),L=Ar(),ue=ae(()=>{if(L){let de=mr(n,Q=>{N.updateCellCode({cellId:n,code:Q,formattingChange:!0})},o);P.push(de.extension),o=de.code}let G=new J({state:Pr.create({doc:o,extensions:P})});s(G),L||Pt(G,{language:xr(G.state).type})}),Be=ae(()=>{if(Ft(u.current!==null,"Editor view is not initialized"),L){let G=mr(n,de=>{N.updateCellCode({cellId:n,code:de,formattingChange:!0})});P.push(G.extension)}u.current.dispatch({effects:[pe.reconfigure.of([P]),gf(u.current,{completionConfig:l.completion,hotkeysProvider:new mi(l.keymap.overrides??{}),lspConfig:{...l.language_servers,diagnostics:l.diagnostics}})]})}),Ve=ae(()=>{if(Ft(i,"Editor view is not initialized"),L){let de=mr(n,Q=>{N.updateCellCode({cellId:n,code:Q,formattingChange:!0})},o);P.push(de.extension),o=de.code}let G=new J({state:Pr.fromJSON(i,{doc:o,extensions:P},{history:bm})});L||Pt(G,{language:xr(G.state).type}),s(G),N.clearSerializedEditorState({cellId:n})}),[Ge,M]=(0,T.useState)(i!==null);(0,T.useEffect)(()=>{if(u.current!==null){M(!0);return}if(i!==null){Ve(),M(!0);return}return An.request(n,()=>{u.current===null&&(ue(),M(!0))}),()=>An.cancel(n)},[n,u,Ve,ue,i]),(0,T.useEffect)(()=>{u.current!==null&&Be()},[Be,P,u]),(0,T.useEffect)(()=>{let G=u.current;return()=>{G==null||G.destroy()}},[u]);let[oe,H]=Yf({rootMargin:"300px 0px",threshold:0});(0,T.useEffect)(()=>{Ge||(H!=null&&H.isIntersecting?An.prioritize(n):An.deprioritize(n))},[Ge,H==null?void 0:H.isIntersecting,n]);let gt=wd(n,u),Cn="";return le&&m&&f?Cn="h-0 overflow-hidden":m&&(Cn="opacity-20 h-8 [&>div.cm-editor]:h-full [&>div.cm-editor]:overflow-hidden [&_.cm-panels]:hidden"),(0,g.jsx)(rd,{cellId:n,aiCompletionCell:D,currentCode:(($a=u.current)==null?void 0:$a.state.doc.toString())??o,currentLanguageAdapter:y,declineChange:ae(()=>{var G;A(null),(G=u.current)==null||G.focus()}),onChange:ae(G=>{var de;(de=u.current)==null||de.dispatch({changes:{from:0,to:u.current.state.doc.length,insert:G}})}),acceptChange:ae(G=>{var de,Q;(de=u.current)==null||de.dispatch({changes:{from:0,to:u.current.state.doc.length,insert:G}}),(Q=u.current)==null||Q.focus(),A(null)}),runCell:ee,outputArea:x,children:(0,g.jsxs)("div",{className:"relative w-full",ref:oe,...gt,children:[Ge?(0,g.jsx)(Ga,{className:Cn,editorView:u.current,ref:d,hidden:m,showHiddenCode:h}):(0,g.jsx)(Id,{code:o,className:Cn}),!m&&v&&(0,g.jsx)("div",{className:"absolute top-1 right-5",children:(0,g.jsx)(Wr,{code:o,editorView:u.current,currentLanguageAdapter:y,onAfterToggle:ce})})]})})},Ga=T.forwardRef((e,t)=>{let n=(0,Ra.c)(14),{className:r,editorView:o,hidden:a,showHiddenCode:i}=e,s=(0,T.useRef)(null),c,l;n[0]===o?(c=n[1],l=n[2]):(c=()=>{o!==null&&s.current!==null&&s.current.children.length===0&&s.current.append(o.dom)},l=[o,s],n[0]=o,n[1]=c,n[2]=l),(0,T.useEffect)(c,l);let u;n[3]===r?u=n[4]:(u=nt("cm mathjax_ignore",r),n[3]=r,n[4]=u);let d;n[5]!==a||n[6]!==i?(d=h=>{a&&i&&(h.stopPropagation(),i({focus:!0}))},n[5]=a,n[6]=i,n[7]=d):d=n[7];let m;n[8]===t?m=n[9]:(m=h=>{t?Rn(t,s)(h):Rn(s)(h)},n[8]=t,n[9]=m);let f;return n[10]!==u||n[11]!==d||n[12]!==m?(f=(0,g.jsx)("div",{className:u,onDoubleClick:d,ref:m,"data-testid":"cell-editor"}),n[10]=u,n[11]=d,n[12]=m,n[13]=f):f=n[13],f});Ga.displayName="CellCodeMirrorEditor";function Td(e){let t=n=>{let r=(0,Ra.c)(5),o=ie(bt),[a,i]=In(ut);if(Ff(o.state)||a===void 0){let c;r[0]===Symbol.for("react.memo_cache_sentinel")?(c=(0,g.jsx)("span",{children:"Waiting for real-time collaboration connection..."}),r[0]=c):c=r[0];let l;return r[1]===i?l=r[2]:(l=(0,g.jsx)("div",{className:"flex h-full w-full items-baseline p-4",children:(0,g.jsxs)(Kf,{milliseconds:1e3,fallback:null,children:[c,(0,g.jsx)(lt,{variant:"link",onClick:()=>{i("disabled")},children:"Turn off real-time collaboration"})]})}),r[1]=i,r[2]=l),l}let s;return r[3]===n?s=r[4]:(s=(0,g.jsx)(e,{...n}),r[3]=n,r[4]=s),s};return t.displayName=`WithWaitUntilConnected(${e.displayName})`,t}es=Ar()?Td((0,T.memo)(Ba)):(0,T.memo)(Ba)});export{Vr as _,_p as __tla,Vt as a,Mn as b,Rn as c,Bn as d,$r as f,we as g,zi as h,Ki as i,Yi as l,Xi as m,Wr as n,qr as o,ut as p,Qi as r,Zi as s,es as t,$t as u,Gn as v,ts as y};
|