@marimo-team/frontend 0.25.2-dev38 → 0.25.2-dev39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/dist/assets/{CellStatus-CRNbTOIs.js → CellStatus-C24XF8TO.js} +1 -1
  2. package/dist/assets/{ErrorBoundary-CHPy195L.js → ErrorBoundary-B0A5dBH2.js} +2 -2
  3. package/dist/assets/{JsonOutput-BdpXVhxV.js → JsonOutput-Cx3AQC7R.js} +3 -3
  4. package/dist/assets/{MarimoErrorOutput-K6C_dFmm.js → MarimoErrorOutput-CMVdJiaK.js} +1 -1
  5. package/dist/assets/{RenderHTML-ClrDrx3F.js → RenderHTML-DjS-DdUL.js} +1 -1
  6. package/dist/assets/{RunButton-BA02OhJe.js → RunButton-DhhAS4nD.js} +1 -1
  7. package/dist/assets/{add-cell-with-ai-sgoMoiI9.js → add-cell-with-ai-BPu32863.js} +1 -1
  8. package/dist/assets/{add-connection-dialog-BOV2U067.js → add-connection-dialog-DZj5amkT.js} +1 -1
  9. package/dist/assets/{agent-panel-CRzjBUdB.js → agent-panel-DKJ-xqqe.js} +1 -1
  10. package/dist/assets/ai-model-dropdown-D_5kXqGw.js +5 -0
  11. package/dist/assets/{api-C5RyTgDk.js → api-DMoBWmQT.js} +1 -1
  12. package/dist/assets/{app-config-button-BAQBx4II.js → app-config-button-BBBqdwwv.js} +1 -1
  13. package/dist/assets/{blob-BKNVs7hM.js → blob-mVTRazkn.js} +1 -1
  14. package/dist/assets/{cell-editor-CEABNkmY.js → cell-editor-BNAwiIir.js} +2 -2
  15. package/dist/assets/cell-link-BFoYN4G4.js +1 -0
  16. package/dist/assets/{cells-DIjn-wIE.js → cells-Bboj_mzH.js} +1 -1
  17. package/dist/assets/{chat-display-Bpl-2umz.js → chat-display-BclykCDT.js} +1 -1
  18. package/dist/assets/{chat-panel-C6NjK6Ig.js → chat-panel-DvGZ0ahc.js} +1 -1
  19. package/dist/assets/{chat-ui-C5Ulv8Sh.js → chat-ui-B1xpc2Iq.js} +1 -1
  20. package/dist/assets/{code-visibility-DbW2QNho.js → code-visibility-DStVsztB.js} +1 -1
  21. package/dist/assets/{column-preview-CZ2TL09N.js → column-preview-B_HNw6Xa.js} +1 -1
  22. package/dist/assets/{command-palette-DaHlZzjG.js → command-palette-B8pPDrL3.js} +1 -1
  23. package/dist/assets/{common-BQbHQAab.js → common-CAoKKAj9.js} +1 -1
  24. package/dist/assets/{components-DJ4W2IzC.js → components-0tF5D2G2.js} +1 -1
  25. package/dist/assets/{components-Dt0cuD4C.js → components-Scfns93C.js} +1 -1
  26. package/dist/assets/{config-D7CP5wR5.js → config-VEBoxYs0.js} +1 -1
  27. package/dist/assets/{datasource-Ccdyd-O2.js → datasource-DXrVF3A7.js} +1 -1
  28. package/dist/assets/{dependency-graph-panel-DIQpBTOZ.js → dependency-graph-panel-BKerKbW0.js} +1 -1
  29. package/dist/assets/{documentation-panel-DTDeaE2n.js → documentation-panel-BBqGQovG.js} +1 -1
  30. package/dist/assets/{download-DBXnO5qS.js → download-CsvgDpk8.js} +1 -1
  31. package/dist/assets/{edit-page-HpmTxp7Y.js → edit-page-J1s9SrSW.js} +6 -6
  32. package/dist/assets/{error-entries-BB7FNt10.js → error-entries-EhYWazUP.js} +1 -1
  33. package/dist/assets/{error-panel-0aG3Tdrl.js → error-panel-BBwaFurl.js} +1 -1
  34. package/dist/assets/feedback-button-BXARphau.js +1 -0
  35. package/dist/assets/{feedback-button-Ck0Mp9so.js → feedback-button-D4FkbdpF.js} +1 -1
  36. package/dist/assets/{file-explorer-panel-Dqxfg5xm.js → file-explorer-panel-DOuYHyNb.js} +1 -1
  37. package/dist/assets/{file-name-input-CUxuxMjv.js → file-name-input-oZ_OFDwA.js} +1 -1
  38. package/dist/assets/{floating-outline-yJVtlHMv.js → floating-outline-CuOLwf13.js} +1 -1
  39. package/dist/assets/{gallery-page-D70P7AOr.js → gallery-page-DnObr5r7.js} +1 -1
  40. package/dist/assets/{glide-data-editor-YqrbKh4R.js → glide-data-editor-SRFol8N3.js} +1 -1
  41. package/dist/assets/{home-page-Dnv5d4Ek.js → home-page-CrRCUhHM.js} +1 -1
  42. package/dist/assets/{hooks-ZWyI6fMV.js → hooks-DDexlabY.js} +1 -1
  43. package/dist/assets/{index-BUQP_BOv.js → index-h-GQYxNi.js} +6 -6
  44. package/dist/assets/kiosk-mode-CEKB1dXx.js +1 -0
  45. package/dist/assets/{layout-C8pvkupF.js → layout-4WXAZ1eW.js} +4 -4
  46. package/dist/assets/links-Bc4DEgui.js +1 -0
  47. package/dist/assets/{logs-panel-Bdb_qtEg.js → logs-panel-BYUR5w2M.js} +1 -1
  48. package/dist/assets/{markdown-renderer-DT34-_9e.js → markdown-renderer-BCB0NTfn.js} +1 -1
  49. package/dist/assets/{name-cell-input-E95KyKqv.js → name-cell-input-C-myEA1c.js} +1 -1
  50. package/dist/assets/{outline-panel-1AnW7CLy.js → outline-panel-CM2lVI29.js} +1 -1
  51. package/dist/assets/{packages-panel-t-WIjOjO.js → packages-panel-BwJc45sJ.js} +1 -1
  52. package/dist/assets/{pair-DrvWpc2_.js → pair-_FSgYVX4.js} +1 -1
  53. package/dist/assets/{panel-accordion-state-_r3T-AGo.js → panel-accordion-state-XgB7A-Pf.js} +1 -1
  54. package/dist/assets/panels-SK_rec-s.js +4 -0
  55. package/dist/assets/{process-output-gyG2tEQt.js → process-output-Bpzcx6ny.js} +1 -1
  56. package/dist/assets/{readonly-code-display-DVP0M5ji.js → readonly-code-display-DykeAqVP.js} +1 -1
  57. package/dist/assets/{readonly-python-code-CPhK2DqE.js → readonly-python-code-NhpM1k7Y.js} +1 -1
  58. package/dist/assets/{reveal-component-CICzazBY.js → reveal-component-DvtSwOtf.js} +1 -1
  59. package/dist/assets/run-page-DtMQZ9fB.js +1 -0
  60. package/dist/assets/{sandbox-panel-CcKUdNwc.js → sandbox-panel-BTJZoLQf.js} +1 -1
  61. package/dist/assets/{scratchpad-panel-Bju5WCrd.js → scratchpad-panel-DAR9LXOp.js} +1 -1
  62. package/dist/assets/{session-ztCnZJHI.js → session-D7QkhMHj.js} +1 -1
  63. package/dist/assets/{session-panel-BhoASF58.js → session-panel-BFDg1epj.js} +1 -1
  64. package/dist/assets/{snippets-panel-BGO2n9mY.js → snippets-panel-D5jPm-dQ.js} +1 -1
  65. package/dist/assets/{state-OJSVjDAX.js → state-C2hpK3R0.js} +1 -1
  66. package/dist/assets/{state-0X7um_9u.js → state-ClA31EHO.js} +3 -3
  67. package/dist/assets/{terminal-BaYFckM3.js → terminal-DgXAZSkT.js} +1 -1
  68. package/dist/assets/{tracing-BwkQnRsr.js → tracing-CDAILi-O.js} +1 -1
  69. package/dist/assets/{tracing-panel-Bari_aJY.js → tracing-panel-Clom4CyL.js} +2 -2
  70. package/dist/assets/{tree-actions-DpLu3KP0.js → tree-actions-gTQxtJX8.js} +1 -1
  71. package/dist/assets/{useAddCell-DCbFUjci.js → useAddCell-Cz3QoshN.js} +1 -1
  72. package/dist/assets/{useBoolean-C44TyhOc.js → useBoolean-iz9l8Cuk.js} +1 -1
  73. package/dist/assets/{useCellActionButton-Dd3_WkrO.js → useCellActionButton-BMuXaKhK.js} +1 -1
  74. package/dist/assets/{useDeleteCell-BJ6lgiBJ.js → useDeleteCell-DieDZaIf.js} +1 -1
  75. package/dist/assets/{useDependencyPanelTab-CyNU7lXE.js → useDependencyPanelTab-B8hZ99Ij.js} +1 -1
  76. package/dist/assets/{useInstallPackage-DO1N1lCX.js → useInstallPackage-DsbNVe8R.js} +1 -1
  77. package/dist/assets/useNotebookActions-9w4zO1hI.js +1 -0
  78. package/dist/assets/{useRunCells-k0IpRLOw.js → useRunCells-BtJbnrtV.js} +1 -1
  79. package/dist/assets/{useSplitCell-AE67LfQn.js → useSplitCell-Bb3bloRI.js} +1 -1
  80. package/dist/assets/{vega-component-Bw0srfks.js → vega-component-CyO7yyQw.js} +1 -1
  81. package/dist/index.html +25 -26
  82. package/package.json +1 -1
  83. package/src/components/editor/actions/__tests__/pair-with-agent-commands.test.ts +32 -46
  84. package/src/components/editor/actions/__tests__/pair-with-agent-modal.test.tsx +29 -40
  85. package/src/components/editor/actions/pair-with-agent-commands.ts +3 -4
  86. package/src/components/editor/actions/pair-with-agent-modal.tsx +4 -7
  87. package/src/core/config/pair.ts +0 -1
  88. package/src/core/kernel/session.ts +9 -0
  89. package/src/core/websocket/useMarimoKernelConnection.tsx +10 -1
  90. package/dist/assets/ai-model-dropdown-B547mMnB.js +0 -5
  91. package/dist/assets/cell-link-CEmc-Cr5.js +0 -1
  92. package/dist/assets/feedback-button-DFFJadk1.js +0 -1
  93. package/dist/assets/filename-BlDwe-3Z.js +0 -1
  94. package/dist/assets/kiosk-mode-Cvh6wszH.js +0 -1
  95. package/dist/assets/links-Dz_7YAlE.js +0 -1
  96. package/dist/assets/panels-HoIP3cDr.js +0 -4
  97. package/dist/assets/run-page-DWUXQLtA.js +0 -1
  98. package/dist/assets/useNotebookActions-D7J_QMJo.js +0 -1
@@ -1 +1 @@
1
- import{g as e}from"./useEventListener-CUPWI_1X.js";import{r as t}from"./config-D7CP5wR5.js";import{t as n}from"./strings-LjhpYwmx.js";import{r}from"./errors-D9vyuMar.js";var i={"Content-Type":`application/json`},a=/\{[^{}]+\}/g,o=class extends Request{constructor(e,t){super(e,t);for(let e in t)e in this||(this[e]=t[e])}};function s(e){let{baseUrl:t=``,fetch:n=globalThis.fetch,querySerializer:r,bodySerializer:a,headers:s,...c}={...e};t.endsWith(`/`)&&(t=t.substring(0,t.length-1)),s=h(i,s);let l=[];async function u(e,i){let{fetch:u=n,headers:f,params:g={},parseAs:_=`json`,querySerializer:v,bodySerializer:y=a??p,...b}=i||{},x=typeof r==`function`?r:d(r);v&&(x=typeof v==`function`?v:d({...typeof r==`object`?r:{},...v}));let S={redirect:`follow`,...c,...b,headers:h(s,f,g.header)};S.body&&=y(S.body),S.body instanceof FormData&&S.headers.delete(`Content-Type`);let C=new o(m(e,{baseUrl:t,params:g,querySerializer:x}),S),w={baseUrl:t,fetch:u,parseAs:_,querySerializer:x,bodySerializer:y};for(let t of l)if(t&&typeof t==`object`&&typeof t.onRequest==`function`){C.schemaPath=e,C.params=g;let n=await t.onRequest(C,w);if(n){if(!(n instanceof Request))throw Error(`Middleware must return new Request() when modifying the request`);C=n}}let T=await u(C);for(let e=l.length-1;e>=0;e--){let t=l[e];if(t&&typeof t==`object`&&typeof t.onResponse==`function`){let e=await t.onResponse(T,w);if(e){if(!(e instanceof Response))throw Error(`Middleware must return new Response() when modifying the response`);T=e}}}if(T.status===204||T.headers.get(`Content-Length`)===`0`)return T.ok?{data:{},response:T}:{error:{},response:T};if(T.ok)return _===`stream`?{data:T.body,response:T}:{data:await T[_](),response:T};let E=await T.text();try{E=JSON.parse(E)}catch{}return{error:E,response:T}}return{async GET(e,t){return u(e,{...t,method:`GET`})},async PUT(e,t){return u(e,{...t,method:`PUT`})},async POST(e,t){return u(e,{...t,method:`POST`})},async DELETE(e,t){return u(e,{...t,method:`DELETE`})},async OPTIONS(e,t){return u(e,{...t,method:`OPTIONS`})},async HEAD(e,t){return u(e,{...t,method:`HEAD`})},async PATCH(e,t){return u(e,{...t,method:`PATCH`})},async TRACE(e,t){return u(e,{...t,method:`TRACE`})},use(...e){for(let t of e)if(t){if(typeof t!=`object`||!(`onRequest`in t||`onResponse`in t))throw Error("Middleware must be an object with one of `onRequest()` or `onResponse()`");l.push(t)}},eject(...e){for(let t of e){let e=l.indexOf(t);e!==-1&&l.splice(e,1)}}}}function c(e,t,n){if(t==null)return``;if(typeof t==`object`)throw Error("Deeply-nested arrays/objects aren’t supported. Provide your own `querySerializer()` to handle these.");return`${e}=${n?.allowReserved===!0?t:encodeURIComponent(t)}`}function l(e,t,n){if(!t||typeof t!=`object`)return``;let r=[],i={simple:`,`,label:`.`,matrix:`;`}[n.style]||`&`;if(n.style!==`deepObject`&&n.explode===!1){for(let e in t)r.push(e,n.allowReserved===!0?t[e]:encodeURIComponent(t[e]));let i=r.join(`,`);switch(n.style){case`form`:return`${e}=${i}`;case`label`:return`.${i}`;case`matrix`:return`;${e}=${i}`;default:return i}}for(let i in t){let a=n.style===`deepObject`?`${e}[${i}]`:i;r.push(c(a,t[i],n))}let a=r.join(i);return n.style===`label`||n.style===`matrix`?`${i}${a}`:a}function u(e,t,n){if(!Array.isArray(t))return``;if(n.explode===!1){let r={form:`,`,spaceDelimited:`%20`,pipeDelimited:`|`}[n.style]||`,`,i=(n.allowReserved===!0?t:t.map(e=>encodeURIComponent(e))).join(r);switch(n.style){case`simple`:return i;case`label`:return`.${i}`;case`matrix`:return`;${e}=${i}`;default:return`${e}=${i}`}}let r={simple:`,`,label:`.`,matrix:`;`}[n.style]||`&`,i=[];for(let r of t)n.style===`simple`||n.style===`label`?i.push(n.allowReserved===!0?r:encodeURIComponent(r)):i.push(c(e,r,n));return n.style===`label`||n.style===`matrix`?`${r}${i.join(r)}`:i.join(r)}function d(e){return function(t){let n=[];if(t&&typeof t==`object`)for(let r in t){let i=t[r];if(i!=null){if(Array.isArray(i)){n.push(u(r,i,{style:`form`,explode:!0,...e?.array,allowReserved:e?.allowReserved||!1}));continue}if(typeof i==`object`){n.push(l(r,i,{style:`deepObject`,explode:!0,...e?.object,allowReserved:e?.allowReserved||!1}));continue}n.push(c(r,i,e))}}return n.join(`&`)}}function f(e,t){let n=e;for(let r of e.match(a)??[]){let e=r.substring(1,r.length-1),i=!1,a=`simple`;if(e.endsWith(`*`)&&(i=!0,e=e.substring(0,e.length-1)),e.startsWith(`.`)?(a=`label`,e=e.substring(1)):e.startsWith(`;`)&&(a=`matrix`,e=e.substring(1)),!t||t[e]===void 0||t[e]===null)continue;let o=t[e];if(Array.isArray(o)){n=n.replace(r,u(e,o,{style:a,explode:i}));continue}if(typeof o==`object`){n=n.replace(r,l(e,o,{style:a,explode:i}));continue}if(a===`matrix`){n=n.replace(r,`;${c(e,o)}`);continue}n=n.replace(r,a===`label`?`.${o}`:o)}return n}function p(e){return JSON.stringify(e)}function m(e,t){let n=`${t.baseUrl}${e}`;t.params?.path&&(n=f(n,t.params.path));let r=t.querySerializer(t.params.query??{});return r.startsWith(`?`)&&(r=r.substring(1)),r&&(n+=`?${r}`),n}function h(...e){let t=new Headers;for(let n of e){if(!n||typeof n!=`object`)continue;let e=n instanceof Headers?n.entries():Object.entries(n);for(let[n,r]of e)if(r===null)t.delete(n);else if(Array.isArray(r))for(let e of r)t.append(n,e);else r!==void 0&&t.set(n,r)}return t}function g(e){return s(e)}function _(){let e=t().httpURL;return e.search=``,e.hash=``,e.toString()}function v(e){if(!e)return;let t=e.match(/filename\*=UTF-8''([^;]+)/i);if(t)try{return decodeURIComponent(t[1])}catch{return}let n=e.match(/filename="([^"]+)"/i);if(n)return n[1];let r=e.match(/filename=([^;]+)/i);if(r)return r[1].trim()}function y(t){let n=v(t.headers.get(`Content-Disposition`));return n||e.warn(`Export response is missing a readable Content-Disposition filename`),n}var b={post(t,i,a={}){let o=`${n.withTrailingSlash(a.baseUrl??_())}api${t}`;return fetch(o,{method:`POST`,headers:{"Content-Type":`application/json`,...b.headers(),...a.headers},body:JSON.stringify(i),signal:a.signal}).then(async e=>{let t=e.headers.get(`Content-Type`)?.startsWith(`application/json`);if(!e.ok){let n=t?await e.json():await e.text();throw new r(e.status,e.statusText,n)}return t?e.json():e.text()}).catch(t=>{throw e.error(`Error requesting ${o}`,t),t})},get(t,i={}){let a=`${n.withTrailingSlash(i.baseUrl??_())}api${t}`;return fetch(a,{method:`GET`,headers:{...b.headers(),...i.headers}}).then(e=>{if(!e.ok)throw new r(e.status,e.statusText);return e.headers.get(`Content-Type`)?.startsWith(`application/json`)?e.json():null}).catch(t=>{throw e.error(`Error requesting ${a}`,t),t})},headers(){return t().headers()},handleResponse:e=>e.error?Promise.reject(new r(e.response.status,e.response.statusText,e.error)):Promise.resolve(e.data),handleExportResponse:async(e,t)=>{let n=await b.handleResponse(e),r=e.response.headers.get(`Content-Type`);if(!r)throw Error(`Export response is missing a media type`);return{contents:n,filename:y(e.response)??t.defaultFilename,mediaType:r}},handleResponseReturnNull:e=>e.error?Promise.reject(new r(e.response.status,e.response.statusText,e.error)):Promise.resolve(null)};function x(e){let t=g({baseUrl:e.httpURL.toString()});return t.use({onRequest:t=>{let n=e.headers();for(let[e,r]of Object.entries(n))t.headers.set(e,r);return t}}),t}export{x as n,b as t};
1
+ import{g as e}from"./useEventListener-CUPWI_1X.js";import{r as t}from"./config-VEBoxYs0.js";import{t as n}from"./strings-LjhpYwmx.js";import{r}from"./errors-D9vyuMar.js";var i={"Content-Type":`application/json`},a=/\{[^{}]+\}/g,o=class extends Request{constructor(e,t){super(e,t);for(let e in t)e in this||(this[e]=t[e])}};function s(e){let{baseUrl:t=``,fetch:n=globalThis.fetch,querySerializer:r,bodySerializer:a,headers:s,...c}={...e};t.endsWith(`/`)&&(t=t.substring(0,t.length-1)),s=h(i,s);let l=[];async function u(e,i){let{fetch:u=n,headers:f,params:g={},parseAs:_=`json`,querySerializer:v,bodySerializer:y=a??p,...b}=i||{},x=typeof r==`function`?r:d(r);v&&(x=typeof v==`function`?v:d({...typeof r==`object`?r:{},...v}));let S={redirect:`follow`,...c,...b,headers:h(s,f,g.header)};S.body&&=y(S.body),S.body instanceof FormData&&S.headers.delete(`Content-Type`);let C=new o(m(e,{baseUrl:t,params:g,querySerializer:x}),S),w={baseUrl:t,fetch:u,parseAs:_,querySerializer:x,bodySerializer:y};for(let t of l)if(t&&typeof t==`object`&&typeof t.onRequest==`function`){C.schemaPath=e,C.params=g;let n=await t.onRequest(C,w);if(n){if(!(n instanceof Request))throw Error(`Middleware must return new Request() when modifying the request`);C=n}}let T=await u(C);for(let e=l.length-1;e>=0;e--){let t=l[e];if(t&&typeof t==`object`&&typeof t.onResponse==`function`){let e=await t.onResponse(T,w);if(e){if(!(e instanceof Response))throw Error(`Middleware must return new Response() when modifying the response`);T=e}}}if(T.status===204||T.headers.get(`Content-Length`)===`0`)return T.ok?{data:{},response:T}:{error:{},response:T};if(T.ok)return _===`stream`?{data:T.body,response:T}:{data:await T[_](),response:T};let E=await T.text();try{E=JSON.parse(E)}catch{}return{error:E,response:T}}return{async GET(e,t){return u(e,{...t,method:`GET`})},async PUT(e,t){return u(e,{...t,method:`PUT`})},async POST(e,t){return u(e,{...t,method:`POST`})},async DELETE(e,t){return u(e,{...t,method:`DELETE`})},async OPTIONS(e,t){return u(e,{...t,method:`OPTIONS`})},async HEAD(e,t){return u(e,{...t,method:`HEAD`})},async PATCH(e,t){return u(e,{...t,method:`PATCH`})},async TRACE(e,t){return u(e,{...t,method:`TRACE`})},use(...e){for(let t of e)if(t){if(typeof t!=`object`||!(`onRequest`in t||`onResponse`in t))throw Error("Middleware must be an object with one of `onRequest()` or `onResponse()`");l.push(t)}},eject(...e){for(let t of e){let e=l.indexOf(t);e!==-1&&l.splice(e,1)}}}}function c(e,t,n){if(t==null)return``;if(typeof t==`object`)throw Error("Deeply-nested arrays/objects aren’t supported. Provide your own `querySerializer()` to handle these.");return`${e}=${n?.allowReserved===!0?t:encodeURIComponent(t)}`}function l(e,t,n){if(!t||typeof t!=`object`)return``;let r=[],i={simple:`,`,label:`.`,matrix:`;`}[n.style]||`&`;if(n.style!==`deepObject`&&n.explode===!1){for(let e in t)r.push(e,n.allowReserved===!0?t[e]:encodeURIComponent(t[e]));let i=r.join(`,`);switch(n.style){case`form`:return`${e}=${i}`;case`label`:return`.${i}`;case`matrix`:return`;${e}=${i}`;default:return i}}for(let i in t){let a=n.style===`deepObject`?`${e}[${i}]`:i;r.push(c(a,t[i],n))}let a=r.join(i);return n.style===`label`||n.style===`matrix`?`${i}${a}`:a}function u(e,t,n){if(!Array.isArray(t))return``;if(n.explode===!1){let r={form:`,`,spaceDelimited:`%20`,pipeDelimited:`|`}[n.style]||`,`,i=(n.allowReserved===!0?t:t.map(e=>encodeURIComponent(e))).join(r);switch(n.style){case`simple`:return i;case`label`:return`.${i}`;case`matrix`:return`;${e}=${i}`;default:return`${e}=${i}`}}let r={simple:`,`,label:`.`,matrix:`;`}[n.style]||`&`,i=[];for(let r of t)n.style===`simple`||n.style===`label`?i.push(n.allowReserved===!0?r:encodeURIComponent(r)):i.push(c(e,r,n));return n.style===`label`||n.style===`matrix`?`${r}${i.join(r)}`:i.join(r)}function d(e){return function(t){let n=[];if(t&&typeof t==`object`)for(let r in t){let i=t[r];if(i!=null){if(Array.isArray(i)){n.push(u(r,i,{style:`form`,explode:!0,...e?.array,allowReserved:e?.allowReserved||!1}));continue}if(typeof i==`object`){n.push(l(r,i,{style:`deepObject`,explode:!0,...e?.object,allowReserved:e?.allowReserved||!1}));continue}n.push(c(r,i,e))}}return n.join(`&`)}}function f(e,t){let n=e;for(let r of e.match(a)??[]){let e=r.substring(1,r.length-1),i=!1,a=`simple`;if(e.endsWith(`*`)&&(i=!0,e=e.substring(0,e.length-1)),e.startsWith(`.`)?(a=`label`,e=e.substring(1)):e.startsWith(`;`)&&(a=`matrix`,e=e.substring(1)),!t||t[e]===void 0||t[e]===null)continue;let o=t[e];if(Array.isArray(o)){n=n.replace(r,u(e,o,{style:a,explode:i}));continue}if(typeof o==`object`){n=n.replace(r,l(e,o,{style:a,explode:i}));continue}if(a===`matrix`){n=n.replace(r,`;${c(e,o)}`);continue}n=n.replace(r,a===`label`?`.${o}`:o)}return n}function p(e){return JSON.stringify(e)}function m(e,t){let n=`${t.baseUrl}${e}`;t.params?.path&&(n=f(n,t.params.path));let r=t.querySerializer(t.params.query??{});return r.startsWith(`?`)&&(r=r.substring(1)),r&&(n+=`?${r}`),n}function h(...e){let t=new Headers;for(let n of e){if(!n||typeof n!=`object`)continue;let e=n instanceof Headers?n.entries():Object.entries(n);for(let[n,r]of e)if(r===null)t.delete(n);else if(Array.isArray(r))for(let e of r)t.append(n,e);else r!==void 0&&t.set(n,r)}return t}function g(e){return s(e)}function _(){let e=t().httpURL;return e.search=``,e.hash=``,e.toString()}function v(e){if(!e)return;let t=e.match(/filename\*=UTF-8''([^;]+)/i);if(t)try{return decodeURIComponent(t[1])}catch{return}let n=e.match(/filename="([^"]+)"/i);if(n)return n[1];let r=e.match(/filename=([^;]+)/i);if(r)return r[1].trim()}function y(t){let n=v(t.headers.get(`Content-Disposition`));return n||e.warn(`Export response is missing a readable Content-Disposition filename`),n}var b={post(t,i,a={}){let o=`${n.withTrailingSlash(a.baseUrl??_())}api${t}`;return fetch(o,{method:`POST`,headers:{"Content-Type":`application/json`,...b.headers(),...a.headers},body:JSON.stringify(i),signal:a.signal}).then(async e=>{let t=e.headers.get(`Content-Type`)?.startsWith(`application/json`);if(!e.ok){let n=t?await e.json():await e.text();throw new r(e.status,e.statusText,n)}return t?e.json():e.text()}).catch(t=>{throw e.error(`Error requesting ${o}`,t),t})},get(t,i={}){let a=`${n.withTrailingSlash(i.baseUrl??_())}api${t}`;return fetch(a,{method:`GET`,headers:{...b.headers(),...i.headers}}).then(e=>{if(!e.ok)throw new r(e.status,e.statusText);return e.headers.get(`Content-Type`)?.startsWith(`application/json`)?e.json():null}).catch(t=>{throw e.error(`Error requesting ${a}`,t),t})},headers(){return t().headers()},handleResponse:e=>e.error?Promise.reject(new r(e.response.status,e.response.statusText,e.error)):Promise.resolve(e.data),handleExportResponse:async(e,t)=>{let n=await b.handleResponse(e),r=e.response.headers.get(`Content-Type`);if(!r)throw Error(`Export response is missing a media type`);return{contents:n,filename:y(e.response)??t.defaultFilename,mediaType:r}},handleResponseReturnNull:e=>e.error?Promise.reject(new r(e.response.status,e.response.statusText,e.error)):Promise.resolve(null)};function x(e){let t=g({baseUrl:e.httpURL.toString()});return t.use({onRequest:t=>{let n=e.headers();for(let[e,r]of Object.entries(n))t.headers.set(e,r);return t}}),t}export{x as n,b as t};
@@ -1 +1 @@
1
- import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{c as t}from"./useEvent-Dc9HkKI2.js";import{t as n}from"./react-CUdNIagt.js";import{$t as r,Bn as i,En as a,On as o,Xt as s,Yt as c,Zt as l,cn as u,dn as d,en as f,nn as p,tn as m,un as h}from"./cells-DIjn-wIE.js";import{t as g}from"./compiler-runtime-BQ9S8nyo.js";import{D as _,O as v,S as y}from"./config-BdH5RvM0.js";import{d as b,f as x,i as S,k as C,n as w,u as T}from"./ai-model-dropdown-B547mMnB.js";import{M as E}from"./config-D7CP5wR5.js";import{t as D}from"./jsx-runtime-B74pBk57.js";import{o as O}from"./alert-dialog-BsB0FYEL.js";import{l as k}from"./select-CWHHoM53.js";import{n as A}from"./switch-1_rRTvtc.js";import{t as j}from"./tooltip-CamoSiGF.js";import{t as M}from"./button-qFeU84ax.js";import{t as N}from"./createLucideIcon-rHn2EdoM.js";import{r as P}from"./useNumberFormatter-C4-_TnkF.js";import{b as F,p as I}from"./write-secret-modal-wFgr-1dA.js";import{Ut as L,Wt as R,Xt as z,Zt as B,r as V}from"./input-D4bMj5Nb.js";import{t as H}from"./settings-DlKTeV_0.js";import{t as ee}from"./use-toast-CC89xOwH.js";import{s as U}from"./arrays-BqUx5USx.js";import{r as W}from"./requests-yTHMxhVa.js";import{r as G}from"./useDebounce-DMbg9X18.js";import{t as K}from"./kbd-BnUiViRu.js";import{t as q}from"./Inputs-BlygJyl1.js";var J=N(`power-off`,[[`path`,{d:`M18.36 6.64A9 9 0 0 1 20.77 15`,key:`dxknvb`}],[`path`,{d:`M6.16 6.16a9 9 0 1 0 12.68 12.68`,key:`1x7qb5`}],[`path`,{d:`M12 2v4`,key:`3427ic`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),Y=g(),X=D(),Z=e=>{let t=(0,Y.c)(15),{description:n,disabled:r,tooltip:i}=e,a=r!==void 0&&r,o=i===void 0?`Shutdown`:i,{openConfirm:s,closeModal:c}=F(),{sendShutdown:l}=W(),u;t[0]===l?u=t[1]:(u=()=>{l(),setTimeout(te,200)},t[0]=l,t[1]=u);let d=u;if(E())return null;let f=a?`disabled`:`red`,p;t[2]!==c||t[3]!==n||t[4]!==d||t[5]!==s?(p=e=>{e.stopPropagation(),s({title:`Shutdown`,description:n,variant:`destructive`,confirmAction:(0,X.jsx)(O,{onClick:()=>{d(),c()},"aria-label":`Confirm Shutdown`,children:`Shutdown`})})},t[2]=c,t[3]=n,t[4]=d,t[5]=s,t[6]=p):p=t[6];let m;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,X.jsx)(P,{strokeWidth:1}),t[7]=m):m=t[7];let h;t[8]!==a||t[9]!==f||t[10]!==p?(h=(0,X.jsx)(q,{"aria-label":`Shutdown`,"data-testid":`shutdown-button`,shape:`circle`,size:`small`,color:f,className:`h-[27px] w-[27px]`,disabled:a,onClick:p,children:m}),t[8]=a,t[9]=f,t[10]=p,t[11]=h):h=t[11];let g;return t[12]!==h||t[13]!==o?(g=(0,X.jsx)(j,{content:o,children:h}),t[12]=h,t[13]=o,t[14]=g):g=t[14],g};function te(){window.close()}var Q=e(n(),1),ne=100,re=()=>{let e=(0,Y.c)(37),[t,n]=y(),{saveAppConfig:u}=W(),d=(0,Q.useId)(),h=(0,Q.useId)(),g;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(g=a(_),e[0]=g):g=e[0];let v;e[1]===t?v=e[2]:(v={resolver:g,defaultValues:t},e[1]=t,e[2]=v);let S=o(v),C;e[3]!==u||e[4]!==n?(C=async e=>{await u({config:e}).then(()=>{n(e)}).catch(()=>{n(e)})},e[3]=u,e[4]=n,e[5]=C):C=e[5];let w=C,T;e[6]===w?T=e[7]:(T=e=>{w(e)},e[6]=w,e[7]=T);let E=G(T,ne),D;e[8]===t.width?D=e[9]:(D=[t.width],e[8]=t.width,e[9]=D),(0,Q.useEffect)(ie,D);let O;e[10]!==E||e[11]!==S?(O=S.handleSubmit(E),e[10]=E,e[11]=S,e[12]=O):O=e[12];let k;e[13]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,X.jsxs)(`div`,{children:[(0,X.jsx)(x,{children:`Notebook Settings`}),(0,X.jsx)(b,{children:`Configure how your notebook or application looks and behaves.`})]}),e[13]=k):k=e[13];let A;e[14]===S.control?A=e[15]:(A=(0,X.jsxs)($,{title:`Display`,children:[(0,X.jsx)(r,{control:S.control,name:`width`,render:oe}),(0,X.jsx)(r,{control:S.control,name:`app_title`,render:se})]}),e[14]=S.control,e[15]=A);let j;e[16]===S.control?j=e[17]:(j=(0,X.jsxs)($,{title:`Custom Files`,children:[(0,X.jsx)(r,{control:S.control,name:`css_file`,render:ce}),(0,X.jsx)(r,{control:S.control,name:`html_head_file`,render:le})]}),e[16]=S.control,e[17]=j);let M;e[18]===S.control?M=e[19]:(M=(0,X.jsx)($,{title:`Data`,children:(0,X.jsx)(r,{control:S.control,name:`sql_output`,render:de})}),e[18]=S.control,e[19]=M);let N;e[20]!==d||e[21]!==h?(N=e=>{let{field:t}=e;return(0,X.jsxs)(`div`,{className:`flex flex-col gap-y-1`,children:[(0,X.jsxs)(f,{className:`flex flex-col gap-2`,children:[(0,X.jsx)(s,{children:(0,X.jsxs)(`div`,{className:`flex gap-4`,children:[(0,X.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,X.jsx)(i,{id:d,"data-testid":`html-checkbox`,checked:t.value.includes(`html`),onCheckedChange:()=>{t.onChange(U(t.value,`html`))}}),(0,X.jsx)(m,{htmlFor:d,children:`HTML`})]}),(0,X.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,X.jsx)(i,{id:h,"data-testid":`ipynb-checkbox`,checked:t.value.includes(`ipynb`),onCheckedChange:()=>{t.onChange(U(t.value,`ipynb`))}}),(0,X.jsx)(m,{htmlFor:h,children:`IPYNB`})]})]})}),(0,X.jsx)(p,{})]}),(0,X.jsxs)(l,{children:[`When enabled, marimo will periodically save this notebook in your selected formats (HTML, IPYNB) to a folder named`,` `,(0,X.jsx)(K,{className:`inline`,children:`__marimo__`}),` next to your notebook file.`]})]})},e[20]=d,e[21]=h,e[22]=N):N=e[22];let P;e[23]!==S.control||e[24]!==N?(P=(0,X.jsx)($,{title:`Exporting outputs`,children:(0,X.jsx)(r,{control:S.control,name:`auto_download`,render:N})}),e[23]=S.control,e[24]=N,e[25]=P):P=e[25];let F;e[26]!==P||e[27]!==A||e[28]!==j||e[29]!==M?(F=(0,X.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-8 gap-y-4`,children:[A,j,M,P]}),e[26]=P,e[27]=A,e[28]=j,e[29]=M,e[30]=F):F=e[30];let I;e[31]!==F||e[32]!==O?(I=(0,X.jsxs)(`form`,{onChange:O,className:`flex flex-col gap-6`,children:[k,F]}),e[31]=F,e[32]=O,e[33]=I):I=e[33];let L;return e[34]!==S||e[35]!==I?(L=(0,X.jsx)(c,{...S,children:I}),e[34]=S,e[35]=I,e[36]=L):L=e[36],L},$=e=>{let t=(0,Y.c)(5),{title:n,children:r}=e,i;t[0]===n?i=t[1]:(i=(0,X.jsx)(`h3`,{className:`text-base font-semibold mb-1`,children:n}),t[0]=n,t[1]=i);let a;return t[2]!==r||t[3]!==i?(a=(0,X.jsxs)(`div`,{className:`flex flex-col gap-y-2`,children:[i,r]}),t[2]=r,t[3]=i,t[4]=a):a=t[4],a};function ie(){window.dispatchEvent(new Event(`resize`))}function ae(e){return(0,X.jsx)(`option`,{value:e,children:e},e)}function oe(e){let{field:t}=e;return(0,X.jsxs)(f,{className:`flex flex-row items-center space-x-1 space-y-0`,children:[(0,X.jsx)(m,{children:`Width`}),(0,X.jsx)(s,{children:(0,X.jsx)(k,{"data-testid":`app-width-select`,onChange:e=>t.onChange(e.target.value),value:t.value,disabled:t.disabled,className:`inline-flex mr-2`,children:C().map(ae)})}),(0,X.jsx)(p,{})]})}function se(e){let{field:t}=e;return(0,X.jsxs)(`div`,{className:`flex flex-col gap-y-1`,children:[(0,X.jsxs)(f,{className:`flex flex-row items-center space-x-1 space-y-0`,children:[(0,X.jsx)(m,{children:`App title`}),(0,X.jsx)(s,{children:(0,X.jsx)(V,{...t,value:t.value??``,onChange:e=>{t.onChange(e.target.value),v.safeParse(e.target.value).success&&(document.title=e.target.value)}})}),(0,X.jsx)(p,{})]}),(0,X.jsx)(l,{children:`The application title is put in the title tag in the HTML code and typically displayed in the title bar of the browser window.`})]})}function ce(e){let{field:t}=e;return(0,X.jsxs)(`div`,{className:`flex flex-col gap-y-1`,children:[(0,X.jsxs)(f,{className:`flex flex-row items-center space-x-1 space-y-0`,children:[(0,X.jsx)(m,{className:`shrink-0`,children:`Custom CSS`}),(0,X.jsx)(s,{children:(0,X.jsx)(V,{...t,value:t.value??``,placeholder:`custom.css`,onChange:e=>{t.onChange(e.target.value),v.safeParse(e.target.value).success&&(document.title=e.target.value)}})}),(0,X.jsx)(p,{})]}),(0,X.jsx)(l,{children:`A filepath to a custom css file to be injected into the notebook.`})]})}function le(e){let{field:t}=e;return(0,X.jsxs)(`div`,{className:`flex flex-col gap-y-1`,children:[(0,X.jsxs)(f,{className:`flex flex-row items-center space-x-1 space-y-0`,children:[(0,X.jsx)(m,{className:`shrink-0`,children:`HTML Head`}),(0,X.jsx)(s,{children:(0,X.jsx)(V,{...t,value:t.value??``,placeholder:`head.html`,onChange:e=>{t.onChange(e.target.value)}})}),(0,X.jsx)(p,{})]}),(0,X.jsxs)(l,{children:[`A filepath to an HTML file to be injected into the`,` `,(0,X.jsx)(K,{className:`inline`,children:`<head/>`}),` section of the notebook. Use this to add analytics, custom fonts, meta tags, or external scripts.`]})]})}function ue(e){return(0,X.jsx)(`option`,{value:e.value,children:e.label},e.value)}function de(e){let{field:t}=e;return(0,X.jsxs)(`div`,{className:`flex flex-col gap-y-1`,children:[(0,X.jsxs)(f,{className:`flex flex-row items-center space-x-1 space-y-0`,children:[(0,X.jsx)(m,{children:`SQL Output Type`}),(0,X.jsx)(s,{children:(0,X.jsx)(k,{"data-testid":`sql-output-select`,onChange:e=>{t.onChange(e.target.value),ee({title:`Kernel Restart Required`,description:`This change requires a kernel restart to take effect.`})},value:t.value,disabled:t.disabled,className:`inline-flex mr-2`,children:T.map(ue)})}),(0,X.jsx)(p,{})]}),(0,X.jsxs)(l,{children:[`The Python type returned by a SQL cell. For best performance with large datasets, we recommend using`,` `,(0,X.jsx)(K,{className:`inline`,children:`native`}),`. See the`,` `,(0,X.jsx)(I,{href:`https://docs.marimo.io/guides/working_with_data/sql`,children:`SQL guide`}),` `,`for more information.`]})]})}var fe=e=>{let n=(0,Y.c)(32),{showAppConfig:r,disabled:i,tooltip:a}=e,o=r===void 0||r,s=i!==void 0&&i,c=a===void 0?`Settings`:a,[l,f]=t(w),p=s?`disabled`:`hint-green`,m;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,X.jsx)(H,{strokeWidth:1.8}),n[0]=m):m=n[0];let g;n[1]===c?g=n[2]:(g=(0,X.jsx)(j,{content:c,children:m}),n[1]=c,n[2]=g);let _;n[3]!==s||n[4]!==p||n[5]!==g?(_=(0,X.jsx)(q,{"aria-label":`Config`,"data-testid":`app-config-button`,shape:`circle`,size:`small`,className:`h-[27px] w-[27px]`,disabled:s,color:p,children:g}),n[3]=s,n[4]=p,n[5]=g,n[6]=_):_=n[6];let v=_,y;n[7]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,X.jsxs)(R,{className:`w-[90vw] h-[90vh] overflow-hidden sm:max-w-5xl top-[5vh] p-0`,children:[(0,X.jsx)(A,{children:(0,X.jsx)(z,{children:`User settings`})}),(0,X.jsx)(S,{})]}),n[7]=y):y=n[7];let b=y;if(!o){let e;n[8]===v?e=n[9]:(e=(0,X.jsx)(B,{children:v}),n[8]=v,n[9]=e);let t;return n[10]!==f||n[11]!==l||n[12]!==e?(t=(0,X.jsxs)(L,{open:l,onOpenChange:f,children:[e,b]}),n[10]=f,n[11]=l,n[12]=e,n[13]=t):t=n[13],t}let x;n[14]===v?x=n[15]:(x=(0,X.jsx)(d,{asChild:!0,children:v}),n[14]=v,n[15]=x);let C,T;n[16]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,X.jsx)(re,{}),T=(0,X.jsx)(`div`,{className:`h-px bg-border my-2`}),n[16]=C,n[17]=T):(C=n[16],T=n[17]);let E;n[18]===f?E=n[19]:(E=()=>f(!0),n[18]=f,n[19]=E);let D;n[20]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,X.jsx)(H,{strokeWidth:1.8,className:`w-4 h-4 mr-2`}),n[20]=D):D=n[20];let O;n[21]===E?O=n[22]:(O=(0,X.jsxs)(h,{className:`w-[650px] overflow-auto max-h-[80vh] max-w-[80vw]`,align:`end`,side:`bottom`,onFocusOutside:pe,children:[C,T,(0,X.jsxs)(M,{onClick:E,variant:`link`,className:`px-0`,children:[D,`User settings`]})]}),n[21]=E,n[22]=O);let k;n[23]!==O||n[24]!==x?(k=(0,X.jsxs)(u,{children:[x,O]}),n[23]=O,n[24]=x,n[25]=k):k=n[25];let N;n[26]!==f||n[27]!==l?(N=(0,X.jsx)(L,{open:l,onOpenChange:f,children:b}),n[26]=f,n[27]=l,n[28]=N):N=n[28];let P;return n[29]!==k||n[30]!==N?(P=(0,X.jsxs)(X.Fragment,{children:[k,N]}),n[29]=k,n[30]=N,n[31]=P):P=n[31],P};function pe(e){return e.preventDefault()}export{Z as n,J as r,fe as t};
1
+ import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{c as t}from"./useEvent-Dc9HkKI2.js";import{t as n}from"./react-CUdNIagt.js";import{$t as r,Bn as i,En as a,On as o,Xt as s,Yt as c,Zt as l,cn as u,dn as d,en as f,nn as p,tn as m,un as h}from"./cells-Bboj_mzH.js";import{t as g}from"./compiler-runtime-BQ9S8nyo.js";import{D as _,O as v,S as y}from"./config-BdH5RvM0.js";import{d as b,f as x,i as S,k as C,n as w,u as T}from"./ai-model-dropdown-D_5kXqGw.js";import{M as E}from"./config-VEBoxYs0.js";import{t as D}from"./jsx-runtime-B74pBk57.js";import{o as O}from"./alert-dialog-BsB0FYEL.js";import{l as k}from"./select-CWHHoM53.js";import{n as A}from"./switch-1_rRTvtc.js";import{t as j}from"./tooltip-CamoSiGF.js";import{t as M}from"./button-qFeU84ax.js";import{t as N}from"./createLucideIcon-rHn2EdoM.js";import{r as P}from"./useNumberFormatter-C4-_TnkF.js";import{b as F,p as I}from"./write-secret-modal-wFgr-1dA.js";import{Ut as L,Wt as R,Xt as z,Zt as B,r as V}from"./input-D4bMj5Nb.js";import{t as H}from"./settings-DlKTeV_0.js";import{t as ee}from"./use-toast-CC89xOwH.js";import{s as U}from"./arrays-BqUx5USx.js";import{r as W}from"./requests-yTHMxhVa.js";import{r as G}from"./useDebounce-DMbg9X18.js";import{t as K}from"./kbd-BnUiViRu.js";import{t as q}from"./Inputs-BlygJyl1.js";var J=N(`power-off`,[[`path`,{d:`M18.36 6.64A9 9 0 0 1 20.77 15`,key:`dxknvb`}],[`path`,{d:`M6.16 6.16a9 9 0 1 0 12.68 12.68`,key:`1x7qb5`}],[`path`,{d:`M12 2v4`,key:`3427ic`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),Y=g(),X=D(),Z=e=>{let t=(0,Y.c)(15),{description:n,disabled:r,tooltip:i}=e,a=r!==void 0&&r,o=i===void 0?`Shutdown`:i,{openConfirm:s,closeModal:c}=F(),{sendShutdown:l}=W(),u;t[0]===l?u=t[1]:(u=()=>{l(),setTimeout(te,200)},t[0]=l,t[1]=u);let d=u;if(E())return null;let f=a?`disabled`:`red`,p;t[2]!==c||t[3]!==n||t[4]!==d||t[5]!==s?(p=e=>{e.stopPropagation(),s({title:`Shutdown`,description:n,variant:`destructive`,confirmAction:(0,X.jsx)(O,{onClick:()=>{d(),c()},"aria-label":`Confirm Shutdown`,children:`Shutdown`})})},t[2]=c,t[3]=n,t[4]=d,t[5]=s,t[6]=p):p=t[6];let m;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,X.jsx)(P,{strokeWidth:1}),t[7]=m):m=t[7];let h;t[8]!==a||t[9]!==f||t[10]!==p?(h=(0,X.jsx)(q,{"aria-label":`Shutdown`,"data-testid":`shutdown-button`,shape:`circle`,size:`small`,color:f,className:`h-[27px] w-[27px]`,disabled:a,onClick:p,children:m}),t[8]=a,t[9]=f,t[10]=p,t[11]=h):h=t[11];let g;return t[12]!==h||t[13]!==o?(g=(0,X.jsx)(j,{content:o,children:h}),t[12]=h,t[13]=o,t[14]=g):g=t[14],g};function te(){window.close()}var Q=e(n(),1),ne=100,re=()=>{let e=(0,Y.c)(37),[t,n]=y(),{saveAppConfig:u}=W(),d=(0,Q.useId)(),h=(0,Q.useId)(),g;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(g=a(_),e[0]=g):g=e[0];let v;e[1]===t?v=e[2]:(v={resolver:g,defaultValues:t},e[1]=t,e[2]=v);let S=o(v),C;e[3]!==u||e[4]!==n?(C=async e=>{await u({config:e}).then(()=>{n(e)}).catch(()=>{n(e)})},e[3]=u,e[4]=n,e[5]=C):C=e[5];let w=C,T;e[6]===w?T=e[7]:(T=e=>{w(e)},e[6]=w,e[7]=T);let E=G(T,ne),D;e[8]===t.width?D=e[9]:(D=[t.width],e[8]=t.width,e[9]=D),(0,Q.useEffect)(ie,D);let O;e[10]!==E||e[11]!==S?(O=S.handleSubmit(E),e[10]=E,e[11]=S,e[12]=O):O=e[12];let k;e[13]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,X.jsxs)(`div`,{children:[(0,X.jsx)(x,{children:`Notebook Settings`}),(0,X.jsx)(b,{children:`Configure how your notebook or application looks and behaves.`})]}),e[13]=k):k=e[13];let A;e[14]===S.control?A=e[15]:(A=(0,X.jsxs)($,{title:`Display`,children:[(0,X.jsx)(r,{control:S.control,name:`width`,render:oe}),(0,X.jsx)(r,{control:S.control,name:`app_title`,render:se})]}),e[14]=S.control,e[15]=A);let j;e[16]===S.control?j=e[17]:(j=(0,X.jsxs)($,{title:`Custom Files`,children:[(0,X.jsx)(r,{control:S.control,name:`css_file`,render:ce}),(0,X.jsx)(r,{control:S.control,name:`html_head_file`,render:le})]}),e[16]=S.control,e[17]=j);let M;e[18]===S.control?M=e[19]:(M=(0,X.jsx)($,{title:`Data`,children:(0,X.jsx)(r,{control:S.control,name:`sql_output`,render:de})}),e[18]=S.control,e[19]=M);let N;e[20]!==d||e[21]!==h?(N=e=>{let{field:t}=e;return(0,X.jsxs)(`div`,{className:`flex flex-col gap-y-1`,children:[(0,X.jsxs)(f,{className:`flex flex-col gap-2`,children:[(0,X.jsx)(s,{children:(0,X.jsxs)(`div`,{className:`flex gap-4`,children:[(0,X.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,X.jsx)(i,{id:d,"data-testid":`html-checkbox`,checked:t.value.includes(`html`),onCheckedChange:()=>{t.onChange(U(t.value,`html`))}}),(0,X.jsx)(m,{htmlFor:d,children:`HTML`})]}),(0,X.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,X.jsx)(i,{id:h,"data-testid":`ipynb-checkbox`,checked:t.value.includes(`ipynb`),onCheckedChange:()=>{t.onChange(U(t.value,`ipynb`))}}),(0,X.jsx)(m,{htmlFor:h,children:`IPYNB`})]})]})}),(0,X.jsx)(p,{})]}),(0,X.jsxs)(l,{children:[`When enabled, marimo will periodically save this notebook in your selected formats (HTML, IPYNB) to a folder named`,` `,(0,X.jsx)(K,{className:`inline`,children:`__marimo__`}),` next to your notebook file.`]})]})},e[20]=d,e[21]=h,e[22]=N):N=e[22];let P;e[23]!==S.control||e[24]!==N?(P=(0,X.jsx)($,{title:`Exporting outputs`,children:(0,X.jsx)(r,{control:S.control,name:`auto_download`,render:N})}),e[23]=S.control,e[24]=N,e[25]=P):P=e[25];let F;e[26]!==P||e[27]!==A||e[28]!==j||e[29]!==M?(F=(0,X.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-8 gap-y-4`,children:[A,j,M,P]}),e[26]=P,e[27]=A,e[28]=j,e[29]=M,e[30]=F):F=e[30];let I;e[31]!==F||e[32]!==O?(I=(0,X.jsxs)(`form`,{onChange:O,className:`flex flex-col gap-6`,children:[k,F]}),e[31]=F,e[32]=O,e[33]=I):I=e[33];let L;return e[34]!==S||e[35]!==I?(L=(0,X.jsx)(c,{...S,children:I}),e[34]=S,e[35]=I,e[36]=L):L=e[36],L},$=e=>{let t=(0,Y.c)(5),{title:n,children:r}=e,i;t[0]===n?i=t[1]:(i=(0,X.jsx)(`h3`,{className:`text-base font-semibold mb-1`,children:n}),t[0]=n,t[1]=i);let a;return t[2]!==r||t[3]!==i?(a=(0,X.jsxs)(`div`,{className:`flex flex-col gap-y-2`,children:[i,r]}),t[2]=r,t[3]=i,t[4]=a):a=t[4],a};function ie(){window.dispatchEvent(new Event(`resize`))}function ae(e){return(0,X.jsx)(`option`,{value:e,children:e},e)}function oe(e){let{field:t}=e;return(0,X.jsxs)(f,{className:`flex flex-row items-center space-x-1 space-y-0`,children:[(0,X.jsx)(m,{children:`Width`}),(0,X.jsx)(s,{children:(0,X.jsx)(k,{"data-testid":`app-width-select`,onChange:e=>t.onChange(e.target.value),value:t.value,disabled:t.disabled,className:`inline-flex mr-2`,children:C().map(ae)})}),(0,X.jsx)(p,{})]})}function se(e){let{field:t}=e;return(0,X.jsxs)(`div`,{className:`flex flex-col gap-y-1`,children:[(0,X.jsxs)(f,{className:`flex flex-row items-center space-x-1 space-y-0`,children:[(0,X.jsx)(m,{children:`App title`}),(0,X.jsx)(s,{children:(0,X.jsx)(V,{...t,value:t.value??``,onChange:e=>{t.onChange(e.target.value),v.safeParse(e.target.value).success&&(document.title=e.target.value)}})}),(0,X.jsx)(p,{})]}),(0,X.jsx)(l,{children:`The application title is put in the title tag in the HTML code and typically displayed in the title bar of the browser window.`})]})}function ce(e){let{field:t}=e;return(0,X.jsxs)(`div`,{className:`flex flex-col gap-y-1`,children:[(0,X.jsxs)(f,{className:`flex flex-row items-center space-x-1 space-y-0`,children:[(0,X.jsx)(m,{className:`shrink-0`,children:`Custom CSS`}),(0,X.jsx)(s,{children:(0,X.jsx)(V,{...t,value:t.value??``,placeholder:`custom.css`,onChange:e=>{t.onChange(e.target.value),v.safeParse(e.target.value).success&&(document.title=e.target.value)}})}),(0,X.jsx)(p,{})]}),(0,X.jsx)(l,{children:`A filepath to a custom css file to be injected into the notebook.`})]})}function le(e){let{field:t}=e;return(0,X.jsxs)(`div`,{className:`flex flex-col gap-y-1`,children:[(0,X.jsxs)(f,{className:`flex flex-row items-center space-x-1 space-y-0`,children:[(0,X.jsx)(m,{className:`shrink-0`,children:`HTML Head`}),(0,X.jsx)(s,{children:(0,X.jsx)(V,{...t,value:t.value??``,placeholder:`head.html`,onChange:e=>{t.onChange(e.target.value)}})}),(0,X.jsx)(p,{})]}),(0,X.jsxs)(l,{children:[`A filepath to an HTML file to be injected into the`,` `,(0,X.jsx)(K,{className:`inline`,children:`<head/>`}),` section of the notebook. Use this to add analytics, custom fonts, meta tags, or external scripts.`]})]})}function ue(e){return(0,X.jsx)(`option`,{value:e.value,children:e.label},e.value)}function de(e){let{field:t}=e;return(0,X.jsxs)(`div`,{className:`flex flex-col gap-y-1`,children:[(0,X.jsxs)(f,{className:`flex flex-row items-center space-x-1 space-y-0`,children:[(0,X.jsx)(m,{children:`SQL Output Type`}),(0,X.jsx)(s,{children:(0,X.jsx)(k,{"data-testid":`sql-output-select`,onChange:e=>{t.onChange(e.target.value),ee({title:`Kernel Restart Required`,description:`This change requires a kernel restart to take effect.`})},value:t.value,disabled:t.disabled,className:`inline-flex mr-2`,children:T.map(ue)})}),(0,X.jsx)(p,{})]}),(0,X.jsxs)(l,{children:[`The Python type returned by a SQL cell. For best performance with large datasets, we recommend using`,` `,(0,X.jsx)(K,{className:`inline`,children:`native`}),`. See the`,` `,(0,X.jsx)(I,{href:`https://docs.marimo.io/guides/working_with_data/sql`,children:`SQL guide`}),` `,`for more information.`]})]})}var fe=e=>{let n=(0,Y.c)(32),{showAppConfig:r,disabled:i,tooltip:a}=e,o=r===void 0||r,s=i!==void 0&&i,c=a===void 0?`Settings`:a,[l,f]=t(w),p=s?`disabled`:`hint-green`,m;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,X.jsx)(H,{strokeWidth:1.8}),n[0]=m):m=n[0];let g;n[1]===c?g=n[2]:(g=(0,X.jsx)(j,{content:c,children:m}),n[1]=c,n[2]=g);let _;n[3]!==s||n[4]!==p||n[5]!==g?(_=(0,X.jsx)(q,{"aria-label":`Config`,"data-testid":`app-config-button`,shape:`circle`,size:`small`,className:`h-[27px] w-[27px]`,disabled:s,color:p,children:g}),n[3]=s,n[4]=p,n[5]=g,n[6]=_):_=n[6];let v=_,y;n[7]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,X.jsxs)(R,{className:`w-[90vw] h-[90vh] overflow-hidden sm:max-w-5xl top-[5vh] p-0`,children:[(0,X.jsx)(A,{children:(0,X.jsx)(z,{children:`User settings`})}),(0,X.jsx)(S,{})]}),n[7]=y):y=n[7];let b=y;if(!o){let e;n[8]===v?e=n[9]:(e=(0,X.jsx)(B,{children:v}),n[8]=v,n[9]=e);let t;return n[10]!==f||n[11]!==l||n[12]!==e?(t=(0,X.jsxs)(L,{open:l,onOpenChange:f,children:[e,b]}),n[10]=f,n[11]=l,n[12]=e,n[13]=t):t=n[13],t}let x;n[14]===v?x=n[15]:(x=(0,X.jsx)(d,{asChild:!0,children:v}),n[14]=v,n[15]=x);let C,T;n[16]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,X.jsx)(re,{}),T=(0,X.jsx)(`div`,{className:`h-px bg-border my-2`}),n[16]=C,n[17]=T):(C=n[16],T=n[17]);let E;n[18]===f?E=n[19]:(E=()=>f(!0),n[18]=f,n[19]=E);let D;n[20]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,X.jsx)(H,{strokeWidth:1.8,className:`w-4 h-4 mr-2`}),n[20]=D):D=n[20];let O;n[21]===E?O=n[22]:(O=(0,X.jsxs)(h,{className:`w-[650px] overflow-auto max-h-[80vh] max-w-[80vw]`,align:`end`,side:`bottom`,onFocusOutside:pe,children:[C,T,(0,X.jsxs)(M,{onClick:E,variant:`link`,className:`px-0`,children:[D,`User settings`]})]}),n[21]=E,n[22]=O);let k;n[23]!==O||n[24]!==x?(k=(0,X.jsxs)(u,{children:[x,O]}),n[23]=O,n[24]=x,n[25]=k):k=n[25];let N;n[26]!==f||n[27]!==l?(N=(0,X.jsx)(L,{open:l,onOpenChange:f,children:b}),n[26]=f,n[27]=l,n[28]=N):N=n[28];let P;return n[29]!==k||n[30]!==N?(P=(0,X.jsxs)(X.Fragment,{children:[k,N]}),n[29]=k,n[30]=N,n[31]=P):P=n[31],P};function pe(e){return e.preventDefault()}export{Z as n,J as r,fe as t};
@@ -1 +1 @@
1
- import{a as e}from"./markdown-renderer-DT34-_9e.js";function t(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=e=>{t(e.target?.result)},r.onerror=e=>{n(Error(`Failed to read blob: ${e.type}`))},r.readAsDataURL(e)})}function n(e){let[t,n]=e.split(`,`,2),r=/^data:(.+);base64$/.exec(t)?.[1],i=atob(n),a=i.length,o=new Uint8Array(a);for(let e=0;e<a;e++)o[e]=i.charCodeAt(e);return new Blob([o],{type:r})}function r({contents:t,mimeType:r,isBase64:i}){return i?n(e(t,r)):new Blob([t],{type:r})}export{r as n,t as r,n as t};
1
+ import{a as e}from"./markdown-renderer-BCB0NTfn.js";function t(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=e=>{t(e.target?.result)},r.onerror=e=>{n(Error(`Failed to read blob: ${e.type}`))},r.readAsDataURL(e)})}function n(e){let[t,n]=e.split(`,`,2),r=/^data:(.+);base64$/.exec(t)?.[1],i=atob(n),a=i.length,o=new Uint8Array(a);for(let e=0;e<a;e++)o[e]=i.charCodeAt(e);return new Blob([o],{type:r})}function r({contents:t,mimeType:r,isBase64:i}){return i?n(e(t,r)):new Blob([t],{type:r})}export{r as n,t as r,n as t};
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./loro_wasm_bg-Vo2IoHaL.js","./loro_wasm_bg-oTW3uoGB.js","./rolldown-runtime-B0Z9INg1.js"])))=>i.map(i=>d[i]);
2
- import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{c as t,d as n,f as r,l as i,o as a,r as o,s,t as c,u as l}from"./useEvent-Dc9HkKI2.js";import{t as u}from"./react-CUdNIagt.js";import{$i as d,Bn as f,Br as p,Bt as m,Ca as h,Ci as g,Co as _,Cr as v,D as y,Dr as b,Fr as x,H as S,I as C,Ir as w,K as T,Lr as E,Lt as D,Ni as O,Nn as ee,Nr as k,Pr as te,Qi as ne,Ri as re,Rr as A,Si as j,U as ie,Ur as M,V as N,Vn as P,W as ae,Wr as oe,Yn as se,Zn as ce,_i as le,_n as ue,_t as de,ai as fe,ar as pe,at as me,b as he,ba as ge,bi as _e,bt as ve,ca as ye,ci as be,cn as xe,cr as Se,d as Ce,dt as we,fi as Te,fn as Ee,fo as De,ft as Oe,ga as ke,gn as Ae,gt as je,h as Me,ha as Ne,ht as Pe,i as Fe,it as Ie,jo as Le,jr as Re,li as ze,lr as Be,mn as Ve,mt as He,ni as Ue,nr as We,or as Ge,ot as Ke,pi as qe,pt as Je,qa as Ye,ri as Xe,rr as Ze,sa as Qe,si as $e,sr as et,ti as tt,tr as nt,tt as rt,u as it,ui as at,un as ot,vn as st,vr as ct,vt as lt,wa as ut,wi as dt,xa as ft,xi as pt,xo as mt,yi as ht,za as gt,zr as F}from"./cells-DIjn-wIE.js";import{t as _t}from"./react-dom-CKsE8sC1.js";import{A as vt,E as yt,I as bt,P as xt,S as St,j as Ct,x as wt,y as Tt}from"./schemas-BL-NsLlF.js";import{t as Et}from"./compiler-runtime-BQ9S8nyo.js";import{t as Dt}from"./debounce-aFmHgJZY.js";import{E as Ot,_ as kt,c as At,g as jt,h as Mt,s as Nt}from"./config-BdH5RvM0.js";import{A as Pt,C as Ft,D as It,_ as Lt,j as Rt,t as zt,v as Bt,y as Vt}from"./ai-model-dropdown-B547mMnB.js";import{_ as Ht,c as Ut,g as Wt,m as Gt,t as Kt}from"./useEventListener-CUPWI_1X.js";import{t as qt}from"./invariant-Ci2dTZ72.js";import{p as Jt,t as Yt,u as Xt}from"./session-ztCnZJHI.js";import{D as Zt,M as Qt,S as $t,T as en,_ as tn,o as nn,p as rn,r as an}from"./config-D7CP5wR5.js";import{c as on}from"./state-BsVxWYGT.js";import{t as sn}from"./ErrorBoundary-CHPy195L.js";import{t as cn}from"./cn-ldLVeaqm.js";import{t as ln}from"./jsx-runtime-B74pBk57.js";import{d as un}from"./select-CWHHoM53.js";import{Q as dn,Z as fn}from"./JsonOutput-BdpXVhxV.js";import{n as pn}from"./download-DBXnO5qS.js";import{t as mn}from"./switch-1_rRTvtc.js";import{t as hn}from"./tooltip-CamoSiGF.js";import{r as gn,t as _n}from"./button-qFeU84ax.js";import{t as vn}from"./createLucideIcon-rHn2EdoM.js";import{i as yn,n as bn}from"./paths-CzfpItSz.js";import{r as xn}from"./layout-C8pvkupF.js";import{r as Sn}from"./useNumberFormatter-C4-_TnkF.js";import{t as Cn}from"./circle-check-BF80fXZd.js";import{B as wn,F as Tn,G as En,I as Dn,L as On,M as kn,R as An,T as jn,V as Mn,W as Nn,c as Pn,f as Fn,i as In,n as Ln,o as Rn,r as zn,s as Bn,w as Vn,z as Hn}from"./add-cell-with-ai-sgoMoiI9.js";import{t as Un}from"./database-zap-CrkOvbyN.js";import{r as Wn,t as Gn}from"./file-icons-e7tmeyP-.js";import{t as Kn}from"./components-BgOwsosg.js";import{b as qn}from"./write-secret-modal-wFgr-1dA.js";import{n as Jn}from"./spinner-CGdRKCnw.js";import{n as Yn,o as Xn,r as Zn}from"./readonly-python-code-CPhK2DqE.js";import{n as Qn,t as $n}from"./useDeleteCell-BJ6lgiBJ.js";import{t as er}from"./save-D4cG4pP2.js";import{Gt as tr,I as nr,Kt as rr,P as ir,Wt as ar,Xt as or,jt as sr}from"./input-D4bMj5Nb.js";import{n as cr}from"./copy-B--GzTEX.js";import{t as lr}from"./use-toast-CC89xOwH.js";import{t as ur}from"./preload-helper-uBIymjUX.js";import{$t as dr,Ct as fr,Dt as pr,E as mr,Et as hr,Ft as gr,Gt as _r,H as vr,I as yr,It as br,Jt as xr,Kt as Sr,Ot as Cr,P as wr,Qt as I,St as Tr,Ut as Er,V as Dr,Vt as Or,Wt as kr,Xt as Ar,_ as jr,at as L,dt as Mr,gt as Nr,ht as Pr,in as Fr,jt as Ir,lt as Lr,m as Rr,ot as zr,st as R,tn as Br,ut as Vr,w as Hr,wt as Ur,zt as Wr}from"./dist-Cny7_yZb.js";import{C as Gr,E as Kr,I as qr,O as Jr,S as Yr,a as Xr,c as Zr,n as Qr,r as $r,w as ei}from"./dist-DBMV4gqt.js";import{o as ti}from"./arrays-BqUx5USx.js";import{n as ni}from"./once-Haz_uxEL.js";import{t as ri}from"./createReducer-CI8rlZE9.js";import{a as ii,c as ai,f as oi,h as si,i as ci,l as li,n as ui,o as di,t as fi}from"./dist-qhAY4L2r.js";import{r as pi}from"./strings-LjhpYwmx.js";import{r as mi,t as hi}from"./requests-yTHMxhVa.js";import{t as gi}from"./badge-DFf033uX.js";import{a as _i}from"./dist-DusFODSa.js";import{r as vi}from"./useTheme-CnWB5G1X.js";import{t as yi}from"./context-BFOBKCJB.js";import{i as bi}from"./numbers-DyJNv6Vk.js";import{n as xi}from"./useAsyncData-DucTwMkf.js";import{a as Si}from"./useRunCells-k0IpRLOw.js";import{l as Ci}from"./useInstallPackage-DO1N1lCX.js";import{t as wi}from"./api-C5RyTgDk.js";import{a as Ti}from"./errors-D9vyuMar.js";import{t as z}from"./extends-CvVTau-c.js";import{t as Ei}from"./objectWithoutPropertiesLoose-Do6ywDBO.js";import{t as Di}from"./kbd-BnUiViRu.js";import{a as Oi,n as ki}from"./state-OJSVjDAX.js";import{n as Ai,t as ji}from"./filename-BlDwe-3Z.js";import{a as Mi}from"./renderShortcut-BoDtLl9Q.js";import{n as Ni,t as Pi}from"./icons-CVdkfEA3.js";import{n as Fi}from"./esm-3WkPrffD.js";import{t as Ii}from"./dist-AelfNxj6.js";import{t as Li}from"./skeleton-CKpBjoLm.js";import{t as Ri}from"./requests-DFPPfagc.js";import{n as zi}from"./formatting-DvWLhH3Q.js";import{t as Bi}from"./useSplitCell-AE67LfQn.js";import{n as Vi,r as Hi,t as Ui}from"./panel-accordion-state-_r3T-AGo.js";import{Co as Wi,So as Gi,To as Ki,_o as qi,bo as Ji,go as Yi,ho as Xi,ut as Zi,vo as Qi,wo as $i,xo as ea,yo as ta}from"./loro_wasm_bg-oTW3uoGB.js";import{t as na}from"./ws-BXWY541V.js";import{t as ra}from"./Inputs-BlygJyl1.js";import{n as ia}from"./hooks-ZWyI6fMV.js";var aa=vn(`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`}]]),oa={showInput:`Mod-l`,acceptEdit:`Mod-y`,rejectEdit:`Mod-u`},sa=300,ca=Sr.define({combine:e=>Fr(e,{onError:console.error,inputDebounceTime:sa,keymaps:oa},{onError:(e,t)=>e&&t,inputDebounceTime:(e,t)=>e&&t,keymaps:(e,t)=>e&&t})}),la=I.define(),ua=dr.define({create(){return{show:!1,lineFrom:0,lineTo:0}},update(e,t){for(let e of t.effects)if(e.is(la))return e.value;return e}}),da=I.define(),fa=I.define(),pa=dr.define({create(){return{shouldFocus:!1,inputValue:``}},update(e,t){let n=e;for(let e of t.effects)e.is(da)&&(n={...n,inputValue:e.value}),e.is(fa)&&(n={...n,shouldFocus:e.value});return n}}),ma=I.define(),ha=dr.define({create(){return null},update(e,t){for(let e of t.effects)if(e.is(ma))return e.value;return e}}),ga=I.define(),_a=dr.define({create(){return!1},update(e,t){for(let e of t.effects)if(e.is(ga))return e.value;return e}}),va=1,ya=e=>{let{state:t}=e,n=t.selection.main;if(n.empty)return!1;let r=t.doc,i=r.lineAt(n.from),a=r.lineAt(n.to);if(t.sliceDoc(i.from,a.to).trim().length<va)return!1;let o=Math.max(1,Math.min(i.number,r.lines)),s=Math.max(1,Math.min(a.number,r.lines));return e.dispatch({effects:[la.of({show:!0,lineFrom:o,lineTo:s}),fa.of(!0),da.of(``)],selection:kr.cursor(i.from)}),!0},ba=e=>e.state.field(ha)?(e.dispatch({effects:[ma.of(null),la.of({show:!1,lineFrom:0,lineTo:0}),fa.of(!1),da.of(``),ga.of(!1)]}),!0):!1,xa=e=>{let t=e.state.field(ha);return t?(e.dispatch({changes:{from:t.from,to:t.to,insert:t.oldCode},effects:[ma.of(null),la.of({show:!1,lineFrom:0,lineTo:0}),fa.of(!1),da.of(``),ga.of(!1)]}),!0):!1},Sa={mac:`⌘`,windows:`Ctrl`,default:`Ctrl`};function Ca(){return navigator.platform.startsWith(`Mac`)?Sa.mac:navigator.platform.startsWith(`Win`)?Sa.windows:Sa.default}function wa(e){return e.replace(`Mod`,Ca()).replace(`-`,` `).toUpperCase()}function B(e,t){let n=document.createElement(e);return n.className=t,n}function Ta(e,t,n=void 0){let r=()=>{};return(...i)=>(r(),new Promise((a,o)=>{let s=setTimeout(()=>a(e(...i)),t);r=()=>{clearTimeout(s),n!==void 0&&o(n)}}))}var Ea=dr.define({create(){return{suggestion:null}},update(e,t){let n=t.effects.find(e=>e.is(Da));return!t.docChanged&&!n&&!t.selection?e:n&&t.state.doc===n.value.doc?{suggestion:n.value.text}:{suggestion:null}}}),Da=I.define();function Oa(e,t){let n=e.state.selection.main.head,r=[],i=L.widget({widget:new ka(t),side:1});return r.push(i.range(n)),L.set(r)}var ka=class extends Mr{suggestion;constructor(e){super(),this.suggestion=e}toDOM(){let e=document.createElement(`span`);return e.style.opacity=`0.4`,e.className=`cm-inline-suggestion`,e.textContent=this.suggestion,e.setAttribute(`role`,`suggestion`),e.setAttribute(`aria-label`,`Suggestion: ${this.suggestion}`),e}get lineBreaks(){return this.suggestion.split(`
2
+ import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{c as t,d as n,f as r,l as i,o as a,r as o,s,t as c,u as l}from"./useEvent-Dc9HkKI2.js";import{t as u}from"./react-CUdNIagt.js";import{$i as d,Bn as f,Br as p,Bt as m,Ca as h,Ci as g,Co as _,Cr as v,D as y,Dr as b,Fr as x,H as S,I as C,Ir as w,K as T,Lr as E,Lt as D,Ni as O,Nn as ee,Nr as k,Pr as te,Qi as ne,Ri as re,Rr as A,Si as j,U as ie,Ur as M,V as N,Vn as P,W as ae,Wr as oe,Yn as se,Zn as ce,_i as le,_n as ue,_t as de,ai as fe,ar as pe,at as me,b as he,ba as ge,bi as _e,bt as ve,ca as ye,ci as be,cn as xe,cr as Se,d as Ce,dt as we,fi as Te,fn as Ee,fo as De,ft as Oe,ga as ke,gn as Ae,gt as je,h as Me,ha as Ne,ht as Pe,i as Fe,it as Ie,jo as Le,jr as Re,li as ze,lr as Be,mn as Ve,mt as He,ni as Ue,nr as We,or as Ge,ot as Ke,pi as qe,pt as Je,qa as Ye,ri as Xe,rr as Ze,sa as Qe,si as $e,sr as et,ti as tt,tr as nt,tt as rt,u as it,ui as at,un as ot,vn as st,vr as ct,vt as lt,wa as ut,wi as dt,xa as ft,xi as pt,xo as mt,yi as ht,za as gt,zr as F}from"./cells-Bboj_mzH.js";import{t as _t}from"./react-dom-CKsE8sC1.js";import{A as vt,E as yt,I as bt,P as xt,S as St,j as Ct,x as wt,y as Tt}from"./schemas-BL-NsLlF.js";import{t as Et}from"./compiler-runtime-BQ9S8nyo.js";import{t as Dt}from"./debounce-aFmHgJZY.js";import{E as Ot,_ as kt,c as At,g as jt,h as Mt,s as Nt}from"./config-BdH5RvM0.js";import{A as Pt,C as Ft,D as It,_ as Lt,j as Rt,t as zt,v as Bt,y as Vt}from"./ai-model-dropdown-D_5kXqGw.js";import{_ as Ht,c as Ut,g as Wt,m as Gt,t as Kt}from"./useEventListener-CUPWI_1X.js";import{t as qt}from"./invariant-Ci2dTZ72.js";import{d as Jt,m as Yt,t as Xt}from"./session-D7QkhMHj.js";import{D as Zt,M as Qt,S as $t,T as en,_ as tn,o as nn,p as rn,r as an}from"./config-VEBoxYs0.js";import{c as on}from"./state-BsVxWYGT.js";import{t as sn}from"./ErrorBoundary-B0A5dBH2.js";import{t as cn}from"./cn-ldLVeaqm.js";import{t as ln}from"./jsx-runtime-B74pBk57.js";import{d as un}from"./select-CWHHoM53.js";import{Q as dn,Z as fn}from"./JsonOutput-Cx3AQC7R.js";import{n as pn}from"./download-CsvgDpk8.js";import{t as mn}from"./switch-1_rRTvtc.js";import{t as hn}from"./tooltip-CamoSiGF.js";import{r as gn,t as _n}from"./button-qFeU84ax.js";import{t as vn}from"./createLucideIcon-rHn2EdoM.js";import{i as yn,n as bn}from"./paths-CzfpItSz.js";import{r as xn}from"./layout-4WXAZ1eW.js";import{r as Sn}from"./useNumberFormatter-C4-_TnkF.js";import{t as Cn}from"./circle-check-BF80fXZd.js";import{B as wn,F as Tn,G as En,I as Dn,L as On,M as kn,R as An,T as jn,V as Mn,W as Nn,c as Pn,f as Fn,i as In,n as Ln,o as Rn,r as zn,s as Bn,w as Vn,z as Hn}from"./add-cell-with-ai-BPu32863.js";import{t as Un}from"./database-zap-CrkOvbyN.js";import{r as Wn,t as Gn}from"./file-icons-e7tmeyP-.js";import{t as Kn}from"./components-BgOwsosg.js";import{b as qn}from"./write-secret-modal-wFgr-1dA.js";import{n as Jn}from"./spinner-CGdRKCnw.js";import{n as Yn,o as Xn,r as Zn}from"./readonly-python-code-NhpM1k7Y.js";import{n as Qn,t as $n}from"./useDeleteCell-DieDZaIf.js";import{t as er}from"./save-D4cG4pP2.js";import{Gt as tr,I as nr,Kt as rr,P as ir,Wt as ar,Xt as or,jt as sr}from"./input-D4bMj5Nb.js";import{n as cr}from"./copy-B--GzTEX.js";import{t as lr}from"./use-toast-CC89xOwH.js";import{t as ur}from"./preload-helper-uBIymjUX.js";import{$t as dr,Ct as fr,Dt as pr,E as mr,Et as hr,Ft as gr,Gt as _r,H as vr,I as yr,It as br,Jt as xr,Kt as Sr,Ot as Cr,P as wr,Qt as I,St as Tr,Ut as Er,V as Dr,Vt as Or,Wt as kr,Xt as Ar,_ as jr,at as L,dt as Mr,gt as Nr,ht as Pr,in as Fr,jt as Ir,lt as Lr,m as Rr,ot as zr,st as R,tn as Br,ut as Vr,w as Hr,wt as Ur,zt as Wr}from"./dist-Cny7_yZb.js";import{C as Gr,E as Kr,I as qr,O as Jr,S as Yr,a as Xr,c as Zr,n as Qr,r as $r,w as ei}from"./dist-DBMV4gqt.js";import{o as ti}from"./arrays-BqUx5USx.js";import{n as ni}from"./once-Haz_uxEL.js";import{t as ri}from"./createReducer-CI8rlZE9.js";import{a as ii,c as ai,f as oi,h as si,i as ci,l as li,n as ui,o as di,t as fi}from"./dist-qhAY4L2r.js";import{r as pi}from"./strings-LjhpYwmx.js";import{r as mi,t as hi}from"./requests-yTHMxhVa.js";import{t as gi}from"./badge-DFf033uX.js";import{a as _i}from"./dist-DusFODSa.js";import{r as vi}from"./useTheme-CnWB5G1X.js";import{t as yi}from"./context-BFOBKCJB.js";import{i as bi}from"./numbers-DyJNv6Vk.js";import{n as xi}from"./useAsyncData-DucTwMkf.js";import{a as Si}from"./useRunCells-BtJbnrtV.js";import{l as Ci}from"./useInstallPackage-DsbNVe8R.js";import{t as wi}from"./api-DMoBWmQT.js";import{a as Ti}from"./errors-D9vyuMar.js";import{t as z}from"./extends-CvVTau-c.js";import{t as Ei}from"./objectWithoutPropertiesLoose-Do6ywDBO.js";import{t as Di}from"./kbd-BnUiViRu.js";import{a as Oi,n as ki}from"./state-C2hpK3R0.js";import{a as Ai,o as ji}from"./cell-link-BFoYN4G4.js";import{a as Mi}from"./renderShortcut-BoDtLl9Q.js";import{n as Ni,t as Pi}from"./icons-CVdkfEA3.js";import{n as Fi}from"./esm-3WkPrffD.js";import{t as Ii}from"./dist-AelfNxj6.js";import{t as Li}from"./skeleton-CKpBjoLm.js";import{t as Ri}from"./requests-DFPPfagc.js";import{n as zi}from"./formatting-DvWLhH3Q.js";import{t as Bi}from"./useSplitCell-Bb3bloRI.js";import{n as Vi,r as Hi,t as Ui}from"./panel-accordion-state-XgB7A-Pf.js";import{Co as Wi,So as Gi,To as Ki,_o as qi,bo as Ji,go as Yi,ho as Xi,ut as Zi,vo as Qi,wo as $i,xo as ea,yo as ta}from"./loro_wasm_bg-oTW3uoGB.js";import{t as na}from"./ws-BXWY541V.js";import{t as ra}from"./Inputs-BlygJyl1.js";import{n as ia}from"./hooks-DDexlabY.js";var aa=vn(`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`}]]),oa={showInput:`Mod-l`,acceptEdit:`Mod-y`,rejectEdit:`Mod-u`},sa=300,ca=Sr.define({combine:e=>Fr(e,{onError:console.error,inputDebounceTime:sa,keymaps:oa},{onError:(e,t)=>e&&t,inputDebounceTime:(e,t)=>e&&t,keymaps:(e,t)=>e&&t})}),la=I.define(),ua=dr.define({create(){return{show:!1,lineFrom:0,lineTo:0}},update(e,t){for(let e of t.effects)if(e.is(la))return e.value;return e}}),da=I.define(),fa=I.define(),pa=dr.define({create(){return{shouldFocus:!1,inputValue:``}},update(e,t){let n=e;for(let e of t.effects)e.is(da)&&(n={...n,inputValue:e.value}),e.is(fa)&&(n={...n,shouldFocus:e.value});return n}}),ma=I.define(),ha=dr.define({create(){return null},update(e,t){for(let e of t.effects)if(e.is(ma))return e.value;return e}}),ga=I.define(),_a=dr.define({create(){return!1},update(e,t){for(let e of t.effects)if(e.is(ga))return e.value;return e}}),va=1,ya=e=>{let{state:t}=e,n=t.selection.main;if(n.empty)return!1;let r=t.doc,i=r.lineAt(n.from),a=r.lineAt(n.to);if(t.sliceDoc(i.from,a.to).trim().length<va)return!1;let o=Math.max(1,Math.min(i.number,r.lines)),s=Math.max(1,Math.min(a.number,r.lines));return e.dispatch({effects:[la.of({show:!0,lineFrom:o,lineTo:s}),fa.of(!0),da.of(``)],selection:kr.cursor(i.from)}),!0},ba=e=>e.state.field(ha)?(e.dispatch({effects:[ma.of(null),la.of({show:!1,lineFrom:0,lineTo:0}),fa.of(!1),da.of(``),ga.of(!1)]}),!0):!1,xa=e=>{let t=e.state.field(ha);return t?(e.dispatch({changes:{from:t.from,to:t.to,insert:t.oldCode},effects:[ma.of(null),la.of({show:!1,lineFrom:0,lineTo:0}),fa.of(!1),da.of(``),ga.of(!1)]}),!0):!1},Sa={mac:`⌘`,windows:`Ctrl`,default:`Ctrl`};function Ca(){return navigator.platform.startsWith(`Mac`)?Sa.mac:navigator.platform.startsWith(`Win`)?Sa.windows:Sa.default}function wa(e){return e.replace(`Mod`,Ca()).replace(`-`,` `).toUpperCase()}function B(e,t){let n=document.createElement(e);return n.className=t,n}function Ta(e,t,n=void 0){let r=()=>{};return(...i)=>(r(),new Promise((a,o)=>{let s=setTimeout(()=>a(e(...i)),t);r=()=>{clearTimeout(s),n!==void 0&&o(n)}}))}var Ea=dr.define({create(){return{suggestion:null}},update(e,t){let n=t.effects.find(e=>e.is(Da));return!t.docChanged&&!n&&!t.selection?e:n&&t.state.doc===n.value.doc?{suggestion:n.value.text}:{suggestion:null}}}),Da=I.define();function Oa(e,t){let n=e.state.selection.main.head,r=[],i=L.widget({widget:new ka(t),side:1});return r.push(i.range(n)),L.set(r)}var ka=class extends Mr{suggestion;constructor(e){super(),this.suggestion=e}toDOM(){let e=document.createElement(`span`);return e.style.opacity=`0.4`,e.className=`cm-inline-suggestion`,e.textContent=this.suggestion,e.setAttribute(`role`,`suggestion`),e.setAttribute(`aria-label`,`Suggestion: ${this.suggestion}`),e}get lineBreaks(){return this.suggestion.split(`
3
3
  `).length-1}},Aa=class{cache=new Map;timeout;constructor(e){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()})}},ja=(e,t)=>Vr.fromClass(class{abortController=null;cache;constructor(){this.cache=new Aa(t.cacheTimeout??1e3)}async update(n){if(!n.docChanged||t.events?.beforeSuggestionFetch?.(n.view)===!1)return;this.abortController?.abort(),this.abortController=new AbortController;let r=n.state.doc,i=r.toString(),a=this.cache.get(i);if(a){n.view.dispatch({effects:Da.of({text:a,doc:r})});return}try{let a=await e(n.state,this.abortController.signal,n.view);if(this.abortController.signal.aborted||t.events?.shouldShowSuggestion?.(n.view,a)===!1)return;this.cache.set(i,a),n.view.dispatch({effects:Da.of({text:a,doc:r})})}catch(e){e instanceof Error&&e.name!==`AbortError`&&console.error(`Suggestion fetch error:`,e)}}destroy(){this.abortController?.abort()}}),Ma=Vr.fromClass(class{decorations;constructor(){this.decorations=L.none}update(e){let t=e.state.field(Ea)?.suggestion;if(!t){this.decorations=L.none;return}this.decorations=Oa(e.view,t)}},{decorations:e=>e.decorations});function Na(e,t,n,r){return{...e.changeByRange(i=>{if(i===e.selection.main)return{changes:{from:n,to:r,insert:t},range:kr.cursor(n+t.length)};let a=r-n;return!i.empty||a&&e.sliceDoc(i.from-a,i.from)!==e.sliceDoc(n,r)?{range:i}:{changes:{from:i.from-a,to:i.from,insert:t},range:kr.cursor(i.from-a+t.length)}}),userEvent:`input.complete`}}var Pa=e=>{let t=e.state.field(Ea)?.suggestion;if(!t)return!1;let n=e.state.facet(La);return e.dispatch({...Na(e.state,t,e.state.selection.main.head,e.state.selection.main.head)}),n.events?.onSuggestionAccepted?.(e,t),!0},Fa=e=>{let t=e.state.field(Ea)?.suggestion;if(!t)return!1;let n=e.state.facet(La);return e.dispatch({effects:Da.of({text:null,doc:e.state.doc})}),n.events?.onSuggestionRejected?.(e,t),!0},Ia=hr.of([{key:`Tab`,run:Pa},{key:`Escape`,run:Fa}]),La=Sr.define({combine:e=>e.at(-1)});function Ra(e){let{delay:t=500,includeKeymap:n=!0}=e,r=Ta(e.fetchFn,t);return[Ea,La.of(e),ja(r,e),Ma,n?Ia:[]]}var za=R.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 Ba(e){let t=e.state.facet(ca),n={...oa,...t.keymaps},r=e.state.facet(Va),i=B(`div`,`cm-ai-tooltip`).appendChild(B(`div`,`cm-ai-tooltip-button`)),a=i.appendChild(document.createElement(`span`));a.textContent=`${r.label} `;let o=a.appendChild(document.createElement(`span`));return o.className=`hotkey`,o.textContent=wa(n.showInput),i.querySelector(`span`)?.addEventListener(`mousedown`,e=>{e.stopPropagation(),e.button===0&&e.preventDefault()}),i.querySelector(`span`)?.addEventListener(`click`,t=>{t.preventDefault(),ya(e)}),i}var Va=Sr.define({combine(e){return Fr(e,{render:Ba,hideOnBlur:!1,label:`Edit with AI`})}}),Ha=Vr.fromClass(class{view;suppress;dom;mousedown=()=>{this.suppress=!0};mouseup=()=>{this.suppress=!1,this.display(this.view)};scroll=()=>{this.display(this.view)};windowScroll=()=>{this.display(this.view)};constructor(e){this.view=e;let t=e.state.facet(Va);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(ua).show){this.dom.style.display=`none`;return}if(e.state.facet(Va).hideOnBlur&&!e.hasFocus){this.dom.style.display=`none`,this.dom.setAttribute(`aria-hidden`,`true`);return}e.requestMeasure({read:this.#e})}#e=e=>{let t=e.state.selection.ranges.find(e=>!e.empty);if(t&&!this.suppress){let n=e.coordsAtPos(t.from),r=e.coordsAtPos(t.to);if(!n||!r)return;let i=e.dom.getBoundingClientRect(),a=e.dom.parentElement?.getBoundingClientRect(),o=e=>e.top>=i.top&&e.top<=i.bottom&&e.left>=i.left&&e.left<=i.right,s=e=>!a||e.top>=a.top&&e.top<=a.bottom&&e.left>=a.left&&e.left<=a.right,c=o(n)||o(r),l=s(n)||s(r);if(!c||!l){this.dom.style.display=`none`,this.dom.setAttribute(`aria-hidden`,`true`);return}this.dom.style.display=`flex`,this.dom.setAttribute(`aria-hidden`,`false`);let u=this.dom.getBoundingClientRect(),d=o(n)?n:r,f=i.right-u.width,p=Math.min(d.left,f),m=d.top-u.height,h=a?a.y:-1/0;m<h&&(m=r.bottom),this.dom.style.left=`${p}px`,this.dom.style.top=`${m}px`,requestAnimationFrame(()=>{this.dom&&this.dom.setAttribute(`aria-hidden`,`false`)})}else this.dom.style.display=`none`,this.dom.setAttribute(`aria-hidden`,`true`)};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()}}),Ua=R.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 Wa(){return[Ha,Ua]}var Ga=class extends Mr{oldCode;constructor(e){super(),this.oldCode=e}toDOM(e){let t=B(`div`,`cm-old-code-container`);t.setAttribute(`role`,`region`),t.setAttribute(`aria-label`,`Previous code version`);let n=B(`div`,`cm-old-code cm-line`);n.textContent=this.oldCode;let r=B(`div`,`cm-floating-buttons`),i=e.state.facet(ca),a={...oa,...i.keymaps},o=B(`button`,`cm-floating-button cm-floating-accept`);o.innerHTML=`<span class="hotkey">${wa(a.acceptEdit)}</span> Accept`,o.setAttribute(`aria-label`,`Accept changes`),o.addEventListener(`click`,t=>{t.preventDefault(),t.stopPropagation(),e.focus(),ba(e)});let s=B(`button`,`cm-floating-button cm-floating-reject`);return s.innerHTML=`<span class="hotkey">${wa(a.rejectEdit)}</span> Reject`,s.setAttribute(`aria-label`,`Reject changes`),s.addEventListener(`click`,t=>{t.preventDefault(),t.stopPropagation(),e.focus(),xa(e)}),r.append(o,s),t.append(n,r),t}updateDOM(e,t){return!0}},Ka=class extends Mr{complete;abortController=null;dom=null;input=null;loadingContainer=null;helpInfo=null;inputContainer=null;form=null;view=null;constructor(e){super(),this.complete=e}toDOM(e){if(this.dom)return this.dom;this.view=e;let t=e.state.field(pa),n=e.state.field(_a),r=B(`div`,`cm-ai-input-container`);this.inputContainer=r,this.dom=r;let i=B(`form`,`cm-ai-input-form`);this.form=i,i.setAttribute(`role`,`search`),i.setAttribute(`aria-label`,`AI editing instructions`),i.addEventListener(`submit`,e=>e.preventDefault());let a=B(`input`,`cm-ai-input`);this.input=a,i.append(a),a.placeholder=`Editing instructions...`,a.setAttribute(`aria-label`,`AI editing instructions`),a.setAttribute(`autocomplete`,`off`),a.setAttribute(`spellcheck`,`true`),a.value=t.inputValue;let o=B(`div`,`cm-ai-loading-container`);this.loadingContainer=o;let s=B(`div`,`cm-ai-loading-indicator`);s.setAttribute(`role`,`status`),s.setAttribute(`aria-live`,`polite`),s.textContent=`Generating`;let c=B(`button`,`cm-ai-cancel-button`);c.textContent=`Cancel`,c.setAttribute(`aria-label`,`Cancel code generation`),c.addEventListener(`click`,this.onCancel),o.append(c,s);let l=B(`div`,`cm-ai-help-info`);this.helpInfo=l;let u=l.appendChild(document.createElement(`button`));u.className=`cm-ai-help-info-button`,u.textContent=`Esc to close`,u.addEventListener(`click`,this.onCancel);let d=B(`button`,`cm-ai-generate-button`);d.textContent=`⏎ Generate`,d.setAttribute(`aria-label`,`Generate code`),d.addEventListener(`click`,this.handleSubmit),this.toggleLoading(n),t.shouldFocus&&requestAnimationFrame(()=>{a.value=t.inputValue,a.focus(),e.dispatch({effects:fa.of(!1)})}),f(a.value),a.addEventListener(`input`,m),a.addEventListener(`keydown`,this.onKeyDown);function f(e){l.replaceChildren(e?d:u)}let p=``;function m(){e.dispatch({effects:da.of(a.value)});let t=a.value.trim();t!==p&&(p=t,f(t))}return r}toggleLoading(e){this.inputContainer&&this.form&&this.loadingContainer&&this.helpInfo&&this.inputContainer?.replaceChildren(this.form,e?this.loadingContainer:this.helpInfo)}onKeyDown=async e=>{e.key===`Enter`&&!e.shiftKey?(e.preventDefault(),await this.handleSubmit()):e.key===`Escape`&&this.onCancel()};onCancel=()=>{this.cleanup();let e=this.view;e&&(e.dispatch({effects:[la.of({show:!1,lineFrom:0,lineTo:0}),ga.of(!1)]}),e.focus())};handleSubmit=async e=>{let t=this.view;if(!t)return;let n=t.state.facet(ca);e?.stopPropagation();let r=t.state.field(ua),{input:i}=this;if(!i)return;let a=i.value.trim();if(!r.show||!a)return;let o=t.state.doc.line(r.lineFrom),s=t.state.doc.line(r.lineTo),c=o.from,l=s.to,u=t.state.sliceDoc(c,l),d=t.state.sliceDoc(0,c),f=t.state.sliceDoc(l);this.abortController=new AbortController,t.dispatch({effects:ga.of(!0)}),this.toggleLoading(!0);try{let e=await this.complete({prompt:a,selection:u,codeBefore:d,codeAfter:f,editorView:t,signal:this.abortController.signal});if(!t.state.field(ua).show)return;if(!e||typeof e!=`string`)throw Error(`Invalid completion result`);t.dispatch({changes:{from:c,to:l,insert:e},effects:[la.of({show:!1,lineFrom:0,lineTo:0}),ma.of({from:c,to:c+e.length,oldCode:u,newCode:e}),ga.of(!1)]})}catch(e){if(e instanceof DOMException&&e.name===`AbortError`)return;n.onError?.(e)}finally{this.cleanup(),this.toggleLoading(!1),t.focus()}};updateDOM(e,t){return this.dom=e,this.input=e.querySelector(`.cm-ai-input`),!0}cleanup(){this.abortController?.abort(),this.abortController=null,this.dom?.remove(),this.input?.remove(),this.dom=null,this.input=null}destroy(){this.cleanup()}};function qa(e){if(!e.prompt)throw Error(`prompt function is required`);let t={...oa,...e.keymaps};return[ca.of(e),ua,pa,ha,_a,Wa(),za,hr.of([{key:t.showInput,run:ya}]),xr.highest([hr.of([{key:t.acceptEdit,run:ba},{key:t.rejectEdit,run:xa}])]),Ja,Ya,Xa,Za]}var Ja=R.updateListener.of(e=>{let t=e.state.field(ua);if(!t.show||!e.docChanged)return;let{lineFrom:n,lineTo:r}=t,i=!1;e.changes.iterChanges((t,a,o,s)=>{let c=e.state.doc.lineAt(t).number;if(c<n){let t=e.state.doc.lineAt(s).number-e.state.doc.lineAt(o).number;n+=t,r+=t,i=!0}else if(c<=r){let t=e.state.doc.lineAt(s).number-e.state.doc.lineAt(o).number;r+=t,i=!0}}),i&&e.view.dispatch({effects:[la.of({show:!0,lineFrom:n,lineTo:r})]})}),Ya=R.decorations.of(e=>{let t=e.state.field(ha);return t?L.set([L.mark({class:`cm-new-code-line`}).range(t.from,t.to)]):L.none}),Xa=R.decorations.compute([ua],e=>{let t=e.field(ua),n=e.facet(ca),r=[];if(t.show){let i=t.lineFrom,a=t.lineTo;for(let t=i;t<=a;t++){let a=e.doc.line(t).from;r.push(L.line({class:`cm-ai-selection`}).range(a)),t===i&&r.push(L.widget({widget:new Ka(n.prompt),side:-1}).range(a))}}return L.set(r)}),Za=dr.define({create(e){return L.none},update(e,t){let n=t.state.field(ha);return n?L.set([L.widget({widget:new Ga(n.oldCode),block:!0}).range(n.from)]):L.none},provide:e=>R.decorations.from(e)}),V=e(u(),1),H=Et(),Qa=()=>({entries:new Map}),{valueAtom:$a,useActions:eo}=ri(Qa,{submit:(e,t)=>{let{cellIds:n,deleteCell:r,deleteManyCells:i,store:a}=t,o=a.get(he),s=a.get(tt),c=new Set(o.cellIds.inOrderIds.filter(e=>o.cellData[e].code.trim()===``)),l=new Map;for(let e of n){if(c.has(e)){l.set(e,{cellId:e,type:`simple`});continue}let t=o.cellRuntime[e],n=new Map;for(let t of Object.values(s)){let r=t.declaredBy.includes(e),i=t.usedBy.some(e=>!c.has(e));r&&i&&n.set(t.name,t.usedBy)}let r;t?.runElapsedTimeMs&&t.runElapsedTimeMs>2e3&&(r=t.runElapsedTimeMs),n.size===0&&r===void 0?l.set(e,{cellId:e,type:`simple`}):l.set(e,{cellId:e,type:`expensive`,executionDurationMs:r,defs:n})}let u=[...l.values()].every(e=>e.type===`simple`);return l.size>0&&u?(l.size===1?r({cellId:[...l.values()][0].cellId}):i({cellIds:[...l.values()].map(e=>e.cellId)}),Qa()):{...e,entries:l}},clear:()=>Qa()});function to(){let e=n(),{submit:t,clear:r}=eo(),{entries:a}=i($a),o=$n(),s=Qn();return{submit:n=>{t({cellIds:n,deleteCell:o,deleteManyCells:s,store:e})},clear:r,get idle(){return a.size===0},get shouldConfirmDelete(){return a.size>1}}}function no(e){let t=(0,H.c)(16),n=i($a),r=eo(),a=Qn(),o;t[0]!==e||t[1]!==n.entries?(o=n.entries.get(e),t[0]=e,t[1]=n.entries,t[2]=o):o=t[2];let s=o;if(!s){let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e={isPending:!1},t[3]=e):e=t[3],e}if(n.entries.size!==1){let e;return t[4]===s?e=t[5]:(e={isPending:!0,shouldConfirmDelete:!1,...s},t[4]=s,t[5]=e),e}let c;t[6]!==r||t[7]!==a||t[8]!==n.entries?(c=()=>{a({cellIds:[...n.entries.values()].map(ro)}),r.clear()},t[6]=r,t[7]=a,t[8]=n.entries,t[9]=c):c=t[9];let l;t[10]===r?l=t[11]:(l=()=>r.clear(),t[10]=r,t[11]=l);let u;return t[12]!==s||t[13]!==c||t[14]!==l?(u={isPending:!0,...s,shouldConfirmDelete:!0,confirm:c,cancel:l},t[12]=s,t[13]=c,t[14]=l,t[15]=u):u=t[15],u}function ro(e){return e.cellId}async function io(e){if(!e.ok)throw Error(await e.text());if(!e.body)throw Error(`Failed to get response body`);let t=null,n=!1;if(await Mn({stream:En({stream:e.body,schema:Nn}).pipeThrough(new TransformStream({transform(e){if(!e.success)throw e.error;let r=e.value;if(On(r)&&r.type===Tn)t=Dn.parse(r.data).code;else if(r.type===`error`)throw Error(r.errorText);else r.type===`finish`&&(n=r.finishReason===`stop`)}})),onError:e=>{throw e}}),!n)throw Error(`AI completion ended before final validation`);if(t===null)throw Error(`AI completion returned no cell code`);return t}async function ao(e){let t=`
4
4
  ${e.codeBefore}
5
5
  <rewrite_this>
@@ -15,7 +15,7 @@ ${e.codeAfter}
15
15
 
16
16
  `):null,cells:t}}function Ld(e){let t=e.split(`
17
17
  `);if(t.length===0)return``;let n=t.filter(e=>e.trim().length>0);if(n.length===0)return``;let r=/^\s*/,i=Math.min(...n.map(e=>e.match(r)?.[0].length??1/0));return i===0?e.trim():t.map(e=>e.slice(i)).join(`
18
- `).trim()}function Rd(e,t,n,r){return r!==`{`||t!==n||!vr(e.state).resolveInner(t,-1)?.type.name.includes(`String`)?!1:(e.dispatch({changes:{from:t,to:n,insert:`{}`},selection:{anchor:t+1},userEvent:`input.type`}),!0)}function zd(){return R.inputHandler.of(Rd)}function Bd(e){let{showPlaceholder:t,enableAI:n}=e;return t?`marimo-import`:n?`ai`:`none`}var Vd=`cm-tooltip-portal`;function Hd(e){if(e==null)return document.querySelector(`#App`)??void 0;let t=document.querySelector(e);if(t==null)return;let n=t.querySelector(`:scope > .${Vd}`);if(n!=null)return n;let r=document.createElement(`div`);return r.className=`${Vd} not-prose contents`,t.append(r),r}var Ud=e=>{let{cellId:t,keymapConfig:n,hotkeys:r,enableAI:i,cellActions:a,completionConfig:o,lspConfig:s,diagnosticsConfig:c,displayConfig:l,inlineAiTooltip:u}=e,d=Bd(e);return[Pt(n,r),Nd(),Pd(),Xo(),ke({cellId:t,completionConfig:o,hotkeys:r,placeholderType:d,lspConfig:s,diagnosticsConfig:c}),Be({cellId:t,hotkeys:r,cellActions:a,keymapConfig:n}),Gd(e),Md(),c?.enabled?Zr():[],i&&u?[qa({prompt:e=>ao({prompt:e.prompt,selection:e.selection,codeBefore:e.codeBefore,codeAfter:e.codeAfter,language:Xe(e.editorView)})}),Va.of({hideOnBlur:!0})]:[],te(t,l.reference_highlighting??!0),qo(t,l.code_lens??!0)]},Wd=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()!==``&&si(e)},Gd=e=>{let{theme:t,hotkeys:n,completionConfig:r,acceptCompletionOnEnter:i,cellId:a,lspConfig:o,diagnosticsConfig:s,tooltipParentSelector:c}=e,l=Bd(e),u=r.auto_close_pairs!==!1;return[R.lineWrapping,Pr(),Nr(),Tr(),fr(),Ur(),Cr(),Ir(),br({position:`fixed`,parent:Hd(c)}),Ue(),t===`dark`?Zn:Yn,Re(o),cd(r),Hr(),zd(),u?ci():[],$o(i),u?xr.high(hr.of(ii)):[],Rr(),wr(),yr.of(` `),Dr(jr,{fallback:!0}),hr.of(mr),Je({placeholderType:l,completionConfig:r,hotkeys:n,cellId:a,lspConfig:{...o,diagnostics:s}}),Ne.of(Yr()),_r.allowMultipleSelections.of(!0),wd(n),hr.of([{key:`Tab`,run:e=>ui(e)||Wd(e)||Kr(e),preventDefault:!0},{key:n.getHotkey(`completion.moveDown`).key,run:e=>li(e.state)!==null&&(oi(!0)(e),!0),preventDefault:!0},{key:n.getHotkey(`completion.moveUp`).key,run:e=>li(e.state)!==null&&(oi(!1)(e),!0),preventDefault:!0}]),hr.of([...ei,Jr])]},Kd=(e=>!e||e instanceof WebAssembly.Module?e:typeof e==`object`&&`default`in e?e.default??e:e)(Zi),qd=e=>{Gi(e),Jd(e)};function Jd(e){typeof e.__wbindgen_start==`function`&&e.__wbindgen_start()}if(Kd&&Kd.__wbindgen_start)qd(Kd);else if(`Bun`in globalThis){let e;if(Kd instanceof WebAssembly.Module)({instance:e}=await WebAssembly.instantiate(Kd,{"./loro_wasm_bg.js":Ki}));else{let t=Bun.pathToFileURL(Kd);({instance:e}=await WebAssembly.instantiateStreaming(fetch(t),{"./loro_wasm_bg.js":Ki}))}qd(e.exports)}else{let e=Kd instanceof WebAssembly.Module?Kd:await ur(()=>import(`./loro_wasm_bg-Vo2IoHaL.js`),__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":Ki});else if(t instanceof ArrayBuffer||ArrayBuffer.isView(t)){let{instance:e}=await WebAssembly.instantiate(t,{"./loro_wasm_bg.js":Ki});n=e}else if(typeof t==`string`||t instanceof URL){let e=await fetch(t),{instance:r}=await WebAssembly.instantiateStreaming(e,{"./loro_wasm_bg.js":Ki});n=r}else throw console.error(`Unsupported wasm import type:`,t),Error(`Unsupported wasm import type: `+typeof t);qd(n.exports??n)}var Yd=[`Map`,`Text`,`List`,`Tree`,`MovableList`,`Counter`];function Xd(e){return $i(e)}function Zd(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return typeof t!=`object`||!t||typeof t.kind!=`function`?!1:Yd.includes(e.kind())}var Qd=class{constructor(e,t=3e4){this.listeners=new Set,this.inner=new Xi(e,t),this.peer=e,this.timeout=t}apply(e,t=`remote`){let{updated:n,added:r}=this.inner.apply(e);this.listeners.forEach(e=>{e({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(e=>{e({updated:[],added:[this.inner.peer()],removed:[]},`local`)}):this.listeners.forEach(e=>{e({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))}};Qi.prototype.toJsonWithReplacer=function(e){let t=new Set,n=this,r=(r,a)=>{if(typeof a==`string`&&Xd(a)&&!t.has(a)){t.add(a);let o=n.getContainerById(a);if(o==null)throw Error(`ContainerID not found: ${a}`);let s=e(r,o);if(s===o){let e=o.getShallowValue();return typeof e==`object`?i(e):e}if(Zd(s))throw Error(`Using new container is not allowed in toJsonWithReplacer`);return typeof s==`object`&&s?i(s):s}if(typeof a==`object`&&a)return i(a);let o=e(r,a);if(Zd(o))throw Error(`Using new container is not allowed in toJsonWithReplacer`);return o},i=e=>{if(Array.isArray(e))return e.map((e,t)=>r(t,e)).filter(e=>e!==void 0);let t={};for(let[n,i]of Object.entries(e)){let e=r(n,i);e!==void 0&&(t[n]=e)}return t};return i(n.getShallowValue())};var $d=Symbol(`loro.callPendingEventsWrapped`);function ef(e,t){let n=Object.getOwnPropertyDescriptor(e,t);if(!n||typeof n.value!=`function`)return;let r=n.value;if(r[$d])return;let i=function(...e){let t;try{return t=r.apply(this,e),t}finally{t&&typeof t.then==`function`?t.finally(()=>{Wi()}):Wi()}};i[$d]=!0,Object.defineProperty(e,t,{...n,value:i})}function tf(e,t){for(let n of t)ef(e,n)}tf(Qi.prototype,[`setDetachedEditing`,`attach`,`detach`,`fork`,`forkAt`,`checkoutToLatest`,`checkout`,`commit`,`getCursorPos`,`revertTo`,`export`,`exportJsonUpdates`,`exportJsonInIdSpan`,`importJsonUpdates`,`import`,`importUpdateBatch`,`importBatch`,`travelChangeAncestors`,`getChangedContainersIn`,`diff`,`applyDiff`,`setPeerId`]),tf(qi.prototype,[`set`,`delete`,`apply`,`removeOutdated`]),tf(ea.prototype,[`undo`,`redo`]);var nf=R.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`}});Wr.define();var rf=I.define(),af=dr.define({create(){return{remoteCursors:new Map,isCheckout:!1}},update(e,t){for(let n of t.effects)if(n.is(rf))switch(n.value.type){case`update`:{let{peer:t,user:r,cursor:i}=n.value;e.remoteCursors.set(t,{uid:t,cursor:i,user:r});break}case`delete`:e.remoteCursors.delete(n.value.peer);break;case`checkout`:e.isCheckout=n.value.checkout}return e}}),of=e=>{let t=e.transactions.flatMap(e=>e.effects).filter(e=>e.is(rf));return e.docChanged||e.viewportChanged||t.length>0},sf=()=>pr({above:!0,class:`loro-cursor-layer`,update:of,markers:e=>{let{remoteCursors:t,isCheckout:n}=e.state.field(af);return n?[]:[...t.values()].flatMap(t=>{let n=kr.cursor(t.cursor.anchor);return lf.createCursor(e,n,t.user?.name||`unknown`,t.user?.colorClassName||``)})}}),cf=()=>pr({above:!1,class:`loro-selection-layer`,update:of,markers:e=>{let{remoteCursors:t,isCheckout:n}=e.state.field(af);return n?[]:[...t.entries()].filter(([,e])=>e.cursor.head!==void 0&&e.cursor.anchor!==e.cursor.head).flatMap(([,t])=>{let n=kr.range(t.cursor.anchor,t.cursor.head);return Lr.forRange(e,`loro-selection ${t.user?.colorClassName||``}`,n)})}}),lf=class e{left;top;height;name;colorClassName;constructor(e,t,n,r,i){this.left=e,this.top=t,this.height=n,this.name=r,this.colorClassName=i}draw(){let e=document.createElement(`div`);return this.adjust(e),e}update(e){return this.adjust(e),!0}adjust(e){e.style.left=`${this.left}px`,e.style.top=`${this.top}px`,e.style.height=`${this.height}px`,e.className=`loro-cursor ${this.colorClassName}`,e.style.setProperty(`--rtc-name`,`"${this.name}"`)}eq(e){return this.left===e.left&&this.top===e.top&&this.height===e.height&&this.name===e.name}static createCursor(t,n,r,i){let a=e.calculateAbsoluteCursorPosition(n,t);if(!a)return[];let o=t.scrollDOM.getBoundingClientRect(),s=(t.textDirection===zr.LTR?o.left:o.right-t.scrollDOM.clientWidth)-t.scrollDOM.scrollLeft,c=o.top-t.scrollDOM.scrollTop;return[new e(a.left-s,a.top-c,a.bottom-a.top,r,i)]}static calculateAbsoluteCursorPosition(e,t){let n=Math.max(0,Math.min(t.state.doc.length,e.anchor));return t.coordsAtPos(n,e.assoc||1)}},uf=(e,t,n,r)=>{let i=[],{updated:a,added:o}=n;for(let n of[...a,...o]){let a=df(e,t,n,r);a&&i.push(a)}return i},df=(e,t,n,r)=>{let i=t.getAllStates()[n];if(!i||n===e.peerIdStr||i.scopeId!==r)return;if(i.type===`delete`)return rf.of({type:`delete`,peer:i.uid,scopeId:i.scopeId});let a=Yi.decode(i.cursor.anchor),o=e.getCursorPos(a)?.offset??0,s=o;if(i.cursor.head){let t=Yi.decode(i.cursor.head);s=e.getCursorPos(t)?.offset??0}return rf.of({type:`update`,peer:i.uid,scopeId:i.scopeId,cursor:{anchor:o,head:s},user:i.user})},ff=class{sub;view;doc;user;awareness;getTextFromDoc;scopeId;getUserId;constructor(e,t,n,r,i,a,o){this.view=e,this.doc=t,this.user=n,this.awareness=r,this.getTextFromDoc=i,this.scopeId=a,this.getUserId=o,this.sub=this.doc.subscribe(e=>{if(e.by===`local`){let e=[];for(let t of this.awareness.peers()){let n=df(this.doc,this.awareness,t,this.scopeId);n&&e.push(n)}this.view.dispatch({effects:e})}else e.by===`checkout`&&this.view.dispatch({effects:[rf.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 e=mf({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:e,user:this.user})}else this.awareness.setLocalState({type:`delete`,uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId})}destroy(){this.sub?.(),this.awareness.setLocalState({type:`delete`,uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId})}},pf=class{_awarenessListener;view;doc;awareness;scopeId;constructor(e,t,n,r){this.view=e,this.doc=t,this.awareness=n,this.scopeId=r;let i=async(e,t)=>{t!==`local`&&this.view.dispatch({effects:uf(this.doc,this.awareness,e,this.scopeId)})};this._awarenessListener=i,this.awareness.addListener(i)}destroy(){this._awarenessListener&&this.awareness.removeListener(this._awarenessListener)}},mf=({doc:e,getTextFromDoc:t,anchor:n,head:r})=>{n===r&&(r=void 0);let i=t(e).getCursor(n)?.encode();if(!i)throw Error(`cursor head not found`);let a;return r!==void 0&&(a=t(e).getCursor(r)?.encode()),{anchor:i,head:a}},hf=[`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)`],gf=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 hf[Math.abs(t)%hf.length]}return hf[e%hf.length]},Q=Wt.get(`rtc`),_f=Q.get(`awareness`).disabled(),vf=`awareness:`;function yf(e,t){let n=new TextEncoder().encode(e);return new Uint8Array([...n,...t])}function bf(e,t){return new TextDecoder().decode(e.slice(0,t.length))===t}function xf(e,t){return e.slice(t.length)}var Sf=r(void 0),$=new Qi,Cf=new Qd($.peerIdStr),wf=ni(()=>{Q.debug(`creating websocket`);let e=an().getWsSyncURL(Yt()).toString(),t=new na(e,void 0,{maxRetries:10,debug:!1,startClosed:!0,connectionTimeout:1e4});return Promise.resolve().then(async()=>{await $t(),Xt()===`edit`&&t.reconnect()}),t.addEventListener(`message`,async e=>{let t=await e.data.arrayBuffer(),n=new Uint8Array(t);if(bf(n,vf)){let e=xf(n,vf);Cf.apply(e),_f.debug(`applied awareness update`);return}$.import(n),Q.debug(`imported doc change. new doc:`,$.toJSON()),o.get(Sf)!==$&&o.set(Sf,$)}),t.addEventListener(`open`,()=>{Q.debug(`websocket open`)}),t.addEventListener(`close`,e=>{Q.warn(`websocket close`,e),o.get(Sf)===$&&o.set(Sf,void 0)}),t});me()&&wf(),$.subscribeLocalUpdates(e=>{Q.debug(`local update, sending to server`),wf().send(new Uint8Array(e))}),Cf.addListener((e,t)=>{let n=[...e.added,...e.removed,...e.updated];t===`local`&&(_f.debug(`awareness changes`,n),wf().send(yf(vf,Cf.encode(n))))});function Tf(e,t,n=``){if(Qt())return{extension:[],code:n};let r=$.getByPath(`codes/${e}`)!==void 0,i=$.getMap(`codes`).getOrCreateContainer(e,new Ji);return r||(Q.log(`initializing code for new cell`,n),i.insert(0,n)),{code:n.toString(),extension:[Ef(e),Df(e),Of($,Cf,{get name(){return o.get(Ke)||`Anonymous`},get colorClassName(){return gf(this.name)}},()=>i,e),be($,[`codes`,e],()=>i)]}}function Ef(e){let t=(e,t)=>{let n=e.state.field(Pe).type,r=t.toString();r&&r!==n&&(Q.debug(`[incoming] setting language type: ${n} -> ${r}`),lt(e,{language:r,keepCodeAsIs:!0}))},n=(e,t)=>{let n=e.state.field(nt),r=t.toJSON();a(n,r)||e.dispatch({effects:[Ze.of(r)],annotations:[$e.of(!0)]})};return Vr.define(r=>{let i;return Promise.resolve().then(()=>{let a=$.getByPath(`languages/${e}`);if(!a){Q.error(`no language container found for cell`,e);return}qt(a instanceof Ji,`language type is not a LoroText`);let o=$.getByPath(`language_metadata/${e}`);if(!o){Q.error(`no language metadata container found for cell`,e);return}qt(o instanceof ta,`language metadata is not a LoroMap`),t(r,a),n(r,o),i=$.subscribe(e=>{if(e.origin===`local`)return;let i=e.events.some(e=>e.target===a.id),s=e.events.some(e=>e.target===o.id);i&&t(r,a),s&&n(r,o)})}),{destroy(){i()}}})}function Df(e){let t=$.getMap(`languages`).getOrCreateContainer(e,new Ji),n=$.getMap(`language_metadata`).getOrCreateContainer(e,new ta);return R.updateListener.of(e=>{let r=t.toString()!==``;if(!e.docChanged&&r)return;if(!r){let r=He(e.state).type;lt(e.view,{language:r}),Q.debug(`no initial language, setting default to`,r),t.delete(0,t.length),t.insert(0,r),Q.debug(`no initial language metadata, setting default to`,e.state.field(nt));let i=e.state.field(nt);for(let e of Object.keys(i))n.set(e,i[e]);$.commit();return}let i=!1;for(let r of e.transactions)if(!r.annotation($e)){for(let e of r.effects)if(e.is(de)&&t.toString()!==e.value.type&&(Q.debug(`[outgoing] language change: ${t} -> ${e.value.type}`),t.delete(0,t.length),t.insert(0,e.value.type),i=!0),e.is(Ze)||e.is(We)){let t=e.value;e.is(We)?(Q.debug(`[outgoing] setting language metadata: `,t),n.clear()):Q.debug(`[outgoing] updating language metadata: `,t);for(let e of Object.keys(t))n.set(e,t[e]);i=!0}}i&&$.commit()})}function Of(e,t,n,r,i,a){let o=`loro:cell:${i}`;return[af,sf(),cf(),Vr.define(i=>new ff(i,e,n,t,r,o,a)),Vr.define(n=>new pf(n,e,t,o)),nf]}var kf=De,Af=e=>{let t=(0,H.c)(41),{resetOnBlur:n,placeholderText:r,initialValue:i,flexibleWidth:a,onNameChange:o,className:s}=e,c=n!==void 0&&n,l=i===void 0?null:i,u=a!==void 0&&a,{sendListFiles:d}=mi(),[f,p]=(0,V.useState)(l),m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=[],t[0]=m):m=t[0];let[h,g]=(0,V.useState)(m),[_,v]=(0,V.useState)(!1),y=(0,V.useRef)(null),b=(0,V.useRef)(!1),x,S;t[1]===l?(x=t[2],S=t[3]):(x=()=>{p(l)},S=[l],t[1]=l,t[2]=x,t[3]=S),(0,V.useEffect)(x,S);let C;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>{v(!0)},t[4]=C):C=t[4];let w=C,T;t[5]!==l||t[6]!==c?(T=e=>{e.relatedTarget?.closest(`.filename-input`)||(v(!1),c&&p(l))},t[5]=l,t[6]=c,t[7]=T):T=t[7];let E=T,D;t[8]===f?D=t[9]:(D=bn.dirname(f||``),t[8]=f,t[9]=D);let O=D,ee=bn.basename(f||``),k=h.filter(e=>bn.basename(e.path).startsWith(ee)),te;t[10]!==O||t[11]!==_||t[12]!==d?(te=async()=>{if(!_){g([]);return}let e=await d({path:O});g(e.files)},t[10]=O,t[11]=_,t[12]=d,t[13]=te):te=t[13];let ne;t[14]!==O||t[15]!==_?(ne=[O,_],t[14]=O,t[15]=_,t[16]=ne):ne=t[16];let{isPending:re}=xi(te,ne),A=jf(f,h,l),j=(A||k.length>0)&&(0,U.jsxs)(st,{className:`font-mono`,children:[!re&&(0,U.jsx)(Ve,{children:`No files`}),A&&(0,U.jsxs)(ue,{variant:`success`,className:`py-2 px-3`,onSelect:()=>{A&&(b.current=!0,o(A),y.current?.blur())},children:[(0,U.jsx)(aa,{className:`w-4 h-4 mr-2`}),` `,(0,U.jsxs)(`span`,{className:`text-sm`,children:[l?`Rename to: `:`Save as: `,(0,U.jsx)(`span`,{className:`font-medium text-sm`,children:bn.basename(A)})]})]},`_rename_`),k.map(e=>{let t=e.isDirectory?`directory`:Wn(e.path),n=Gn[t];return(0,U.jsxs)(ue,{variant:e.isDirectory?`default`:`muted`,className:`py-2 px-3`,onSelect:()=>{e.isDirectory?p(`${e.path}/`):p(e.path)},children:[(0,U.jsx)(n,{className:`w-4 h-4 mr-2`}),` `,bn.basename(e.path)]},e.path)})]}),ie=Math.max(20,f?.length||r?.length||0)*10,M=_?f||``:l||``,N;t[17]!==u||t[18]!==ie?(N=u?{maxWidth:ie}:void 0,t[17]=u,t[18]=ie,t[19]=N):N=t[19];let P;t[20]===s?P=t[21]:(P=cn(s,`w-full px-4 py-1 my-1 h-9 font-mono text-foreground/60`),t[20]=s,t[21]=P);let ae;t[22]!==r||t[23]!==M||t[24]!==N||t[25]!==P?(ae=(0,U.jsx)(kf,{children:(0,U.jsx)(Ae,{"data-testid":`dir-completion-input`,tabIndex:-1,rootClassName:`border-none justify-center px-1`,spellCheck:`false`,value:M,onKeyDown:Mf,icon:null,ref:y,onValueChange:p,placeholder:r,autoComplete:`off`,style:N,className:P})}),t[22]=r,t[23]=M,t[24]=N,t[25]=P,t[26]=ae):ae=t[26];let oe=j&&`group-focus-within:block`,se;t[27]===oe?se=t[28]:(se=cn(`p-0 w-full min-w-80 max-w-80vw hidden`,oe),t[27]=oe,t[28]=se);let ce;t[29]!==j||t[30]!==se?(ce=(0,U.jsx)(ot,{side:`bottom`,className:se,portal:!1,children:j}),t[29]=j,t[30]=se,t[31]=ce):ce=t[31];let le;t[32]!==ae||t[33]!==ce?(le=(0,U.jsxs)(st,{children:[ae,ce]}),t[32]=ae,t[33]=ce,t[34]=le):le=t[34];let de;t[35]!==E||t[36]!==le?(de=(0,U.jsx)(Ee,{onFocus:w,onBlur:E,shouldFilter:!1,id:`filename-input`,className:`bg-transparent group filename-input`,children:le}),t[35]=E,t[36]=le,t[37]=de):de=t[37];let fe;return t[38]!==_||t[39]!==de?(fe=(0,U.jsx)(sn,{children:(0,U.jsx)(xe,{open:_,modal:!1,children:de})}),t[38]=_,t[39]=de,t[40]=fe):fe=t[40],fe};function jf(e,t,n){if(e&&!e.endsWith(`/`)&&((fe(`markdown`)?new Set([`py`,`md`,`markdown`,`qmd`]):new Set([`py`])).has(bn.extension(e))||(e=e.endsWith(`.`)?`${e}py`:e.endsWith(`.p`)?`${e}y`:`${e}.py`),!t.some(t=>t.path===e||bn.basename(t.path)===e)&&!(n&&(n===e||bn.basename(n)===e))))return e}function Mf(e){e.key===`Escape`&&e.currentTarget.blur()}var Nf=e=>{let t=(0,H.c)(33),n=()=>{pn(new Blob([r()],{type:`text/plain`}),`${e.proposedName}.json`)},r=c(If),i;t[0]!==n||t[1]!==e?(i=t=>{t.preventDefault(),n(),e.closeModal()},t[0]=n,t[1]=e,t[2]=i):i=t[2];let a;t[3]===e?a=t[4]:(a=t=>{t.key===`Escape`&&e.closeModal()},t[3]=e,t[4]=a);let o;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,U.jsx)(or,{className:`text-accent-foreground mb-6`,children:`Download unsaved changes?`}),t[5]=o):o=t[5];let s;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(s={wordBreak:`break-word`},t[6]=s):s=t[6];let l,u;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,U.jsx)(`p`,{children:`This app has unsaved changes. To recover:`}),u={paddingBottom:`10px`},t[7]=l,t[8]=u):(l=t[7],u=t[8]);let d;t[9]===e.proposedName?d=t[10]:(d=(0,U.jsxs)(`li`,{style:u,children:[`Click the "Download" button. This will download a file called\xA0`,(0,U.jsxs)(`code`,{children:[e.proposedName,`.json`]}),`. This file contains your code.`]}),t[9]=e.proposedName,t[10]=d);let f;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(f={paddingBottom:`10px`},t[11]=f):f=t[11];let p;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(p={display:`block`,padding:`10px`},t[12]=p):p=t[12];let m;t[13]===e.proposedName?m=t[14]:(m=(0,U.jsxs)(`code`,{style:p,children:[`marimo recover `,e.proposedName,`.json `,`>`,` `,e.proposedName,`.py`]}),t[13]=e.proposedName,t[14]=m);let h;t[15]===e.proposedName?h=t[16]:(h=(0,U.jsxs)(`code`,{children:[e.proposedName,`.py`]}),t[15]=e.proposedName,t[16]=h);let g;t[17]!==h||t[18]!==m?(g=(0,U.jsxs)(`li`,{style:f,children:[`In your terminal, type`,m,`to overwrite `,h,` with the recovered changes.`]}),t[17]=h,t[18]=m,t[19]=g):g=t[19];let _;t[20]!==g||t[21]!==d?(_=(0,U.jsx)(tr,{className:`markdown wrap-break-word`,style:s,children:(0,U.jsxs)(`div`,{className:`prose dark:prose-invert`,children:[l,(0,U.jsxs)(`ol`,{children:[d,g]})]})}),t[20]=g,t[21]=d,t[22]=_):_=t[22];let v;t[23]===e.closeModal?v=t[24]:(v=(0,U.jsx)(_n,{"aria-label":`Cancel`,variant:`secondary`,"data-testid":`cancel-recovery-button`,onClick:e.closeModal,children:`Cancel`}),t[23]=e.closeModal,t[24]=v);let y;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,U.jsx)(_n,{"data-testid":`download-recovery-button`,"aria-label":`Download`,variant:`default`,type:`submit`,children:`Download`}),t[25]=y):y=t[25];let b;t[26]===v?b=t[27]:(b=(0,U.jsxs)(rr,{children:[v,y]}),t[26]=v,t[27]=b);let x;return t[28]!==i||t[29]!==a||t[30]!==_||t[31]!==b?(x=(0,U.jsx)(ar,{className:`w-fit`,children:(0,U.jsxs)(`form`,{onSubmit:i,onKeyDown:a,children:[o,_,b]})}),t[28]=i,t[29]=a,t[30]=_,t[31]=b,t[32]=x):x=t[32],x},Pf=e=>{let t=(0,H.c)(12),{filename:n,needsSave:r}=e,{openModal:i,closeModal:a}=qn(),o;t[0]===n?o=t[1]:(o=n===null?`app`:bn.basename(n).split(`.`)[0],t[0]=n,t[1]=o);let s=o,c;t[2]!==a||t[3]!==r||t[4]!==i||t[5]!==s?(c=()=>{r&&i((0,U.jsx)(Nf,{proposedName:s,closeModal:a}))},t[2]=a,t[3]=r,t[4]=i,t[5]=s,t[6]=c):c=t[6];let l=c;It(`global.save`,l);let u;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(u=Mi(`global.save`),t[7]=u):u=t[7];let d=r?`yellow`:`gray`,f;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,U.jsx)(er,{strokeWidth:1.5,size:18}),t[8]=f):f=t[8];let p;return t[9]!==l||t[10]!==d?(p=(0,U.jsx)(hn,{content:u,children:(0,U.jsx)(ra,{onClick:l,id:`save-button`,"aria-label":`Save`,className:`rectangle`,color:d,children:f})}),t[9]=l,t[10]=d,t[11]=p):p=t[11],p};function Ff(e){return{id:e.id,name:e.name,code:e.code,code_hash:null,config:{column:0,...e.config}}}function If(){let e=Me(),t=ye(e),n={version:`1`,metadata:{marimo_version:on()},cells:t.map(Ff)};return JSON.stringify(n,null,2)}var Lf=r(void 0),Rf=r(e=>{let t=e(Lf);return zf({state:e(he),layout:e(Xn),lastSavedNotebook:t})});function zf({state:e,layout:t,lastSavedNotebook:n}){if(!n)return!1;let{cellIds:r,cellData:i}=e,o=r.inOrderIds.map(e=>i[e]),s=o.map(e=>e.code),c=o.map(e=>e.config),l=o.map(e=>e.name);return!ti(s,n.codes)||!ti(l,n.names)||!a(c,n.configs)||!a(t.selectedLayout,n.layout.selectedLayout)||!a(t.layoutData,n.layout.layoutData)}function Bf(e){let t=(0,H.c)(21),{codes:n,cellConfigs:r,config:i,connStatus:a,cellNames:o,needsSave:s,kioskMode:c,onSave:l}=e,u=(0,V.useRef)(null),d;t[0]===n?d=t[1]:(d=n.join(`:`),t[0]=n,t[1]=d);let f=d,p;t[2]===r?p=t[3]:(p=r.map(Vf).join(`:`),t[2]=r,t[3]=p);let m=p,h;t[4]===o?h=t[5]:(h=o.join(`:`),t[4]=o,t[5]=h);let g=h,_;t[6]!==i||t[7]!==a.state||t[8]!==c||t[9]!==s||t[10]!==l?(_=()=>{if(!c)return i.autosave===`after_delay`&&(u.current!==null&&clearTimeout(u.current),s&&a.state===en.OPEN&&(u.current=setTimeout(l,i.autosave_delay))),()=>{u.current!==null&&clearTimeout(u.current)}},t[6]=i,t[7]=a.state,t[8]=c,t[9]=s,t[10]=l,t[11]=_):_=t[11];let v;t[12]!==m||t[13]!==g||t[14]!==f||t[15]!==i||t[16]!==a.state||t[17]!==c||t[18]!==s||t[19]!==l?(v=[f,m,g,i,a.state,l,c,s],t[12]=m,t[13]=g,t[14]=f,t[15]=i,t[16]=a.state,t[17]=c,t[18]=s,t[19]=l,t[20]=v):v=t[20],(0,V.useEffect)(_,v)}function Vf(e){return JSON.stringify(e)}var Hf=Promise.resolve();function Uf(e){let t=Hf.then(e);return Hf=t.then(()=>void 0,()=>void 0),t}var Wf=e=>{let t=(0,H.c)(15),{kioskMode:n}=e,r=ji(),a=i(Rf),o=i(tn).state===en.CLOSED,{saveOrNameNotebook:s,saveIfNotebookIsPersistent:c}=Gf(),l;t[0]!==n||t[1]!==c?(l={onSave:c,kioskMode:n},t[0]=n,t[1]=c,t[2]=l):l=t[2],Xf(l),ia();let u;t[3]===a?u=t[4]:(u=e=>{if(a)return e.preventDefault(),e.returnValue=`You have unsaved changes. Are you sure you want to leave?`,e.returnValue},t[3]=a,t[4]=u),Kt(window,`beforeunload`,u);let d;t[5]===s?d=t[6]:(d=e=>{e.preventDefault(),e.stopPropagation(),s()},t[5]=s,t[6]=d);let f=d;if(It(`global.save`,s),o){let e;return t[7]!==r||t[8]!==a?(e=(0,U.jsx)(Pf,{filename:r,needsSave:a}),t[7]=r,t[8]=a,t[9]=e):e=t[9],e}let p;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(p=Mi(`global.save`),t[10]=p):p=t[10];let m=a?`yellow`:`hint-green`,h;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,U.jsx)(er,{strokeWidth:1.5,size:18}),t[11]=h):h=t[11];let g;return t[12]!==f||t[13]!==m?(g=(0,U.jsx)(hn,{content:p,children:(0,U.jsx)(ra,{"data-testid":`save-button`,id:`save-button`,shape:`rectangle`,color:m,onClick:f,children:h})}),t[12]=f,t[13]=m,t[14]=g):g=t[14],g};function Gf(){let e=(0,H.c)(21),{sendSave:t}=mi(),{openModal:r,closeModal:i,openAlert:a}=qn(),o=l(Lf),s=Ai(),u=n(),d;e[0]!==a||e[1]!==t||e[2]!==o||e[3]!==u?(d=(e,n)=>Uf(async()=>{let r=u.get(tn),i=u.get(At);if(u.get(Jt))return;if(r.state!==en.OPEN){a(`Failed to save notebook: not connected to a kernel.`);return}if(Wt.log(`saving to `,e),n&&i.format_on_save&&(Wt.log(`formatting notebook (onSave)`),await le()),ye(Me()).length===0)return;let s=await rt(async()=>{let n=Me(),r=ye(n),i=r.map(Jf),a=r.map(qf),o=r.map(Kf),s=Ce(n),c=u.get(Xn);return await t({cellIds:i,codes:a,names:o,filename:e,configs:s,layout:xn(),persist:!0}),{names:o,codes:a,configs:s,layout:c}});o(s)}),e[0]=a,e[1]=t,e[2]=o,e[3]=u,e[4]=d):d=e[4];let f=c(d),p;e[5]!==f||e[6]!==u?(p=e=>{let t=e!==void 0&&e,n=u.get(gt),r=u.get(tn);Yf(n)&&r.state===en.OPEN&&f(n,t)},e[5]=f,e[6]=u,e[7]=p):p=e[7];let m=c(p),h;e[8]!==f||e[9]!==s?(h=e=>{s(e).then(e=>{e!==null&&f(e,!0)})},e[8]=f,e[9]=s,e[10]=h):h=e[10];let g=h,_;e[11]!==i||e[12]!==g||e[13]!==r||e[14]!==m||e[15]!==u?(_=()=>{let e=u.get(gt),t=u.get(tn);m(!0),!Yf(e)&&t.state!==en.CLOSED&&r((0,U.jsx)($f,{onClose:i,onSave:g}))},e[11]=i,e[12]=g,e[13]=r,e[14]=m,e[15]=u,e[16]=_):_=e[16];let v=c(_),y;return e[17]!==m||e[18]!==f||e[19]!==v?(y={saveOrNameNotebook:v,saveIfNotebookIsPersistent:m,saveNotebook:f},e[17]=m,e[18]=f,e[19]=v,e[20]=y):y=e[20],y}function Kf(e){return e.name}function qf(e){return e.code}function Jf(e){return e.id}function Yf(e){return e!==null&&!e.startsWith(`/tmp/`)&&!e.startsWith(`/var/folders`)&&!e.includes(`AppData\\Local\\Temp`)}function Xf(e){let n=(0,H.c)(14),r=i(At),a=C(),[o]=t(tn),s=i(Rf),c,l;if(n[0]!==a){let e=ye(a);c=e.map(Qf),l=e.map(Zf),n[0]=a,n[1]=c,n[2]=l}else c=n[1],l=n[2];let u=l,d;n[3]===a?d=n[4]:(d=Ce(a),n[3]=a,n[4]=d);let f=d,p;n[5]!==r||n[6]!==u||n[7]!==c||n[8]!==f||n[9]!==o||n[10]!==s||n[11]!==e.kioskMode||n[12]!==e.onSave?(p={onSave:e.onSave,needsSave:s,codes:c,cellConfigs:f,cellNames:u,connStatus:o,config:r,kioskMode:e.kioskMode},n[5]=r,n[6]=u,n[7]=c,n[8]=f,n[9]=o,n[10]=s,n[11]=e.kioskMode,n[12]=e.onSave,n[13]=p):p=n[13],Bf(p)}function Zf(e){return e.name}function Qf(e){return e.code}var $f=e=>{let t=(0,H.c)(17),{onClose:n,onSave:r}=e,[i,a]=(0,V.useState)(),o;t[0]!==n||t[1]!==r?(o=e=>{a(e),e.trim()&&(r(e),n())},t[0]=n,t[1]=r,t[2]=o):o=t[2];let s=o,c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,U.jsx)(or,{children:`Save notebook`}),t[3]=c):c=t[3];let l;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,U.jsx)(un,{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,U.jsxs)(`div`,{className:`flex flex-col`,children:[l,(0,U.jsx)(Af,{onNameChange:s,placeholderText:`filename`,className:`missing-filename`})]}),t[5]=s,t[6]=u);let d;t[7]===n?d=t[8]:(d=(0,U.jsx)(_n,{"data-testid":`cancel-save-dialog-button`,"aria-label":`Cancel`,variant:`secondary`,onClick:n,children:`Cancel`}),t[7]=n,t[8]=d);let f=!i,p;t[9]===f?p=t[10]:(p=(0,U.jsx)(_n,{"data-testid":`submit-save-dialog-button`,"aria-label":`Save`,variant:`default`,disabled:f,type:`submit`,children:`Save`}),t[9]=f,t[10]=p);let m;t[11]!==d||t[12]!==p?(m=(0,U.jsxs)(rr,{children:[d,p]}),t[11]=d,t[12]=p,t[13]=m):m=t[13];let h;return t[14]!==u||t[15]!==m?(h=(0,U.jsxs)(ar,{children:[c,u,m]}),t[14]=u,t[15]=m,t[16]=h):h=t[16],h};function ep(...e){return t=>{e.forEach(e=>{typeof e==`function`?e(t):e!=null&&(e.current=t)})}}var tp={modified:{doc:``},original:{doc:``}},np=(0,V.createContext)(tp);function rp(e,t){return z({},e,t,{modified:z({},e.modified,t.modified),original:z({},e.original,t.original)})}var ip=()=>(0,V.useContext)(np),ap=e=>{var t=e.children,n=e.theme,r=(0,V.useReducer)(rp,z({},tp,{theme:n})),i=r[0],a=r[1];return(0,V.useEffect)(()=>a({theme:n}),[n]),(0,U.jsx)(np.Provider,{value:z({},i,{dispatch:a}),children:t})},op=[`extensions`,`value`,`selection`,`onChange`],sp=e=>{var t=e.extensions,n=t===void 0?[]:t,r=e.value,i=e.selection,a=e.onChange,o=Ei(e,op),s=ip(),c=s.theme,l=s.dispatch,u=Fi(z({},o,{theme:c}));return(0,V.useEffect)(()=>l({original:{doc:r,selection:i,extensions:[...u,...n]},originalExtension:{onChange:a,option:o,extension:[n]}}),[e]),null};sp.displayName=`CodeMirrorMerge.Original`;var cp=[`extensions`,`value`,`selection`,`onChange`],lp=e=>{var t=e.extensions,n=t===void 0?[]:t,r=e.value,i=e.selection,a=e.onChange,o=Ei(e,cp),s=ip(),c=s.theme,l=s.dispatch,u=Fi(z({},o,{theme:c}));return(0,V.useEffect)(()=>{l({modified:{doc:r,selection:i,extensions:[...u,...n]},modifiedExtension:{onChange:a,option:o,extension:[n]}})},[e]),null};lp.displayName=`CodeMirrorMerge.Modified`;var up=[`className`,`children`,`orientation`,`revertControls`,`highlightChanges`,`gutter`,`collapseUnchanged`,`destroyRerender`,`renderRevertControl`,`diffConfig`,`root`],dp=[`modified`,`modifiedExtension`,`original`,`originalExtension`,`theme`,`dispatch`],fp=V.forwardRef((e,t)=>{var n=e.className,r=e.children,i=e.orientation,a=e.revertControls,o=e.highlightChanges,s=e.gutter,c=e.collapseUnchanged,l=e.destroyRerender,u=l===void 0||l,d=e.renderRevertControl,f=e.diffConfig,p=e.root,m=Ei(e,up),h=ip(),g=h.modified,_=h.modifiedExtension,v=h.original,y=h.originalExtension,b=h.theme,x=h.dispatch,S=Ei(h,dp),C=(0,V.useRef)(null),w=(0,V.useRef)(),T={orientation:i,revertControls:a,highlightChanges:o,gutter:s,collapseUnchanged:c,renderRevertControl:d,diffConfig:f,root:p};(0,V.useImperativeHandle)(t,()=>({container:C.current,view:w.current,modified:g,original:v,config:z({a:v,b:g,parent:C.current},T)}),[C,w,g,v,T]);var E=R.updateListener.of(e=>{if(e.docChanged&&typeof y?.onChange==`function`){var t=e.state.doc.toString();y?.onChange(t,e)}}),D=R.updateListener.of(e=>{if(e.docChanged&&typeof _?.onChange==`function`){var t=e.state.doc.toString();_?.onChange(t,e)}});return(0,V.useEffect)(()=>{!w.current&&C.current&&y&&_&&(w.current=new Ii(z({a:z({},v,{extensions:[...y?.extension||[],...Fi(z({},y?.option,{theme:b})),E]}),b:z({},g,{extensions:[..._?.extension||[],...Fi(z({},_?.option,{theme:b})),D]}),parent:C.current},T)),x({view:w.current}))},[w,C,y,_]),(0,V.useEffect)(()=>{if(v&&v.doc&&w.current){var e=w.current?.a.state.doc.toString();if(e!==v.doc){var t;(t=w.current)==null||t.a.dispatch({changes:{from:0,to:e.length,insert:v.doc||``}})}}if(g&&g.doc&&w.current){var n=w.current?.b.state.doc.toString();if(n!==g.doc){var r;(r=w.current)==null||r.b.dispatch({changes:{from:0,to:n.length,insert:g.doc||``}})}}if(u&&w.current){var i=w.current.a.state.selection.ranges[0].from,a=w.current.b.state.selection.ranges[0].from;w.current.destroy(),w.current=new Ii(z({a:z({},v,{extensions:[...y?.extension||[],...Fi(z({},y?.option,{theme:b}))]}),b:z({},g,{extensions:[..._?.extension||[],...Fi(z({},_?.option,{theme:b}))]}),parent:C.current},T)),i&&(w.current.a.focus(),w.current.a.dispatch({selection:{anchor:i,head:i}})),a&&(w.current.b.focus(),w.current.b.dispatch({selection:{anchor:a,head:a}}))}},[w,b,C.current,v,g,y,_,u]),(0,V.useEffect)(()=>()=>w.current&&w.current.destroy(),[]),(0,V.useEffect)(()=>{if(w.current){var e={};S.orientation!==i&&(e.orientation=i),S.revertControls!==a&&(e.revertControls=a),S.highlightChanges!==o&&(e.highlightChanges=o),S.gutter!==s&&(e.gutter=s),S.collapseUnchanged!==c&&(e.collapseUnchanged=c),S.renderRevertControl!==d&&(e.collapseUnchanged=c),Object.keys(e).length&&x&&w.current&&(w.current.reconfigure(z({},e)),x(z({},e)))}},[x,w,i,a,o,s,c,d]),(0,U.jsx)(`div`,z({ref:C,className:`cm-merge-theme`+(n?` `+n:``)},m,{children:r}))});fp.displayName=`CodeMirrorMerge.Internal`;var pp=[`theme`],mp=V.forwardRef((e,t)=>{var n=e.theme,r=Ei(e,pp);return(0,U.jsx)(ap,{theme:n,children:(0,U.jsx)(fp,z({},r,{ref:t}))})});mp.Original=sp,mp.Modified=lp,mp.displayName=`CodeMirrorMerge`;var hp=mp.Original,gp=mp.Modified,_p=[se(),R.lineWrapping],vp=({cellId:e,aiCompletionCell:n,className:r,onChange:i,currentLanguageAdapter:a,currentCode:o,declineChange:s,acceptChange:c,runCell:l,outputArea:u,children:d})=>{let[p,m]=(0,V.useState)(!1),[h,g]=t(Oi),_=(0,V.useId)(),v=nn(),{initialPrompt:y,triggerImmediately:x,cellId:C}=n??{},w=C===e,T=kn(e),E;T?.type===`update_cell`&&(E=T.previousCode);let[D,O]=(0,V.useState)(``),[ee,k]=(0,V.useState)(y??``),te=V.useMemo(()=>new wn({api:v.getAiURL(`completion`).toString(),headers:()=>v.headers(),prepareSendMessagesRequest:({body:e,id:t})=>({body:{...e,id:t}})}),[v]),{sendMessage:ne,stop:re,status:A}=Hn({throttle:100,transport:te,onData:e=>{if(e.type===Tn){let t=Dn.parse(e.data);O(t.code.trimEnd())}},onError:e=>{O(``),lr({title:`Completion failed`,description:Ti(e)})},onFinish:({isAbort:e,isDisconnect:t,isError:n,finishReason:r})=>{(e||t||n||r!==`stop`)&&O(``)}}),j=A===`submitted`||A===`streaming`,ie=(0,V.useCallback)(()=>{O(``),re()},[re]),M=(0,V.useCallback)(async e=>{await re(),O(``);let t={...jn({input:e}),prompt:e,includeOtherCode:h?ce(o):``,code:o,language:a??`python`};await ne({text:e},{body:t})},[o,a,h,ne,re]),N=(0,V.useCallback)(()=>{M(ee)},[M,ee]),P=V.useRef(null),ae=(0,V.useCallback)(()=>{x&&!j&&y&&M(y)},[x]);(0,V.useEffect)(()=>{w&&(S(()=>{let e=P.current;return e?.view?(e.view.focus(),ae(),!0):!1},{retries:3,delay:100,initialDelay:100}),b(P.current?.view))},[w,ae]),(0,V.useEffect)(()=>{w&&k(y||``)},[w,y,k]);let{theme:oe}=vi(),se=()=>{c(D),O(``)},le=()=>{ie(),m(!0),P.current?.view?.focus()},ue=w&&x&&(D||j);u??=`below`;let de=w&&(!x||p),fe=(0,U.jsx)(`div`,{className:cn(`w-full bg-(--cm-background) flex justify-center transition-all duration-300 ease-in-out overflow-hidden`,ue?`max-h-20 opacity-100 translate-y-0`:`max-h-0 opacity-0 -translate-y-2`),children:(0,U.jsx)(yp,{status:j?`loading`:`generated`,onAccept:se,onReject:le,showInputPrompt:p,setShowInputPrompt:m,runCell:l,className:`mt-4 mb-3 w-lg`})}),pe=(e,t)=>(0,U.jsxs)(mp,{className:`cm`,theme:oe,children:[(0,U.jsx)(hp,{onChange:i,value:e,extensions:_p}),(0,U.jsx)(gp,{value:t,editable:!1,readOnly:!0,extensions:_p})]}),me=()=>{if(D&&w)return pe(o,D);if(!D&&E)return pe(E,o)},he=(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(In,{isLoading:j,onAccept:se,size:`xs`,multipleCompletions:!1,label:zn.accept,acceptShortcut:`Mod-↵`,runCell:l}),(0,U.jsx)(Rn,{onDecline:le,size:`xs`,multipleCompletions:!1,label:zn.decline,declineShortcut:`Shift-Mod-Delete`})]});return(0,U.jsxs)(`div`,{"data-ai-input-open":de,className:cn(`flex flex-col w-full rounded-[inherit]`,r),children:[(0,U.jsx)(`div`,{className:cn(`flex items-center gap-2 px-3 transition-all rounded-[inherit] rounded-b-none duration-300`,de&&`max-h-[400px] border-b min-h-11 visible`,!de&&`max-h-0 min-h-0 invisible`),children:w&&(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(Ye,{className:`text-(--blue-10) shrink-0`,size:16}),(0,U.jsx)(Ln,{inputRef:P,className:`h-full my-0 py-2 flex items-center`,onClose:()=>{ie(),s()},value:ee,onChange:k,onSubmit:()=>{j||(P.current?.view&&An(P.current.view),N())},onKeyDown:Bn({handleAcceptCompletion:se,handleDeclineCompletion:le,isLoading:j,hasCompletion:D.trim().length>0})}),(0,U.jsxs)(`div`,{className:`-mr-1.5 py-1.5`,children:[(0,U.jsxs)(`div`,{className:`flex flex-row items-center justify-end gap-0.5`,children:[(0,U.jsx)(Fn,{isLoading:j,onStop:ie,onSendClick:N,isEmpty:!ee.trim(),showStopLabel:!0}),(0,U.jsx)(Pn,{handleAddContext:()=>Vn(P),isLoading:j}),(0,U.jsx)(zt,{triggerClassName:`h-7 text-xs`,iconSize:`small`,forRole:`edit`,displayIconOnly:!0,placeholder:`Edit model`})]}),D&&(0,U.jsx)(`div`,{className:`mt-1 flex items-center gap-1`,children:he})]}),(0,U.jsx)(`div`,{className:`h-full w-px bg-border mx-2`}),(0,U.jsx)(hn,{content:`Include code from other cells`,children:(0,U.jsxs)(`div`,{className:`flex flex-row items-start gap-1 overflow-hidden`,children:[(0,U.jsx)(f,{"data-testid":`include-other-cells-checkbox`,id:_,checked:h,onCheckedChange:e=>g(!!e)}),(0,U.jsx)(un,{htmlFor:_,className:`text-muted-foreground text-xs whitespace-nowrap ellipsis`,children:`All code`})]})}),(0,U.jsx)(_n,{"data-testid":`decline-completion-button`,variant:`text`,size:`icon`,disabled:j,onClick:()=>{ie(),s()},children:(0,U.jsx)(Sn,{className:`text-(--red-10)`,size:16})})]})}),u===`above`&&fe,me(),(!D||!w)&&!E&&d,u===`below`&&fe]})},yp=e=>{let t=(0,H.c)(27),{status:n,onAccept:r,onReject:i,className:a,showInputPrompt:o,setShowInputPrompt:s,runCell:c}=e,l=n===`loading`,u;t[0]===a?u=t[1]:(u=cn(`flex flex-row items-center gap-6 rounded-md py-2 px-2.5 text-sm border border-border bg-(--gray-2) dark:bg-(--gray-3)`,a),t[0]=a,t[1]=u);let d;t[2]===l?d=t[3]:(d=l?(0,U.jsx)(Jn,{className:`animate-spin text-blue-600 mb-px`,size:15,strokeWidth:2,"aria-label":`Generating fix`}):(0,U.jsx)(Cn,{className:`text-green-600 mb-px`,size:15,strokeWidth:2,"aria-label":`Fix generated`}),t[2]=l,t[3]=d);let f=l?`Generating fix...`:`Showing fix`,p;t[4]===f?p=t[5]:(p=(0,U.jsx)(`p`,{className:`transition-opacity duration-200 text-muted-foreground`,children:f}),t[4]=f,t[5]=p);let m;t[6]!==d||t[7]!==p?(m=(0,U.jsxs)(`div`,{className:`flex flex-row items-center gap-2`,children:[d,p]}),t[6]=d,t[7]=p,t[8]=m):m=t[8];let h;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,U.jsx)(un,{htmlFor:`show-input-prompt`,className:`text-muted-foreground text-xs whitespace-nowrap ellipsis`,children:`Show prompt`}),t[9]=h):h=t[9];let g;t[10]!==s||t[11]!==o?(g=(0,U.jsxs)(`div`,{className:`flex flex-row items-center gap-1`,children:[h,(0,U.jsx)(mn,{checked:o,onCheckedChange:s,size:`xs`})]}),t[10]=s,t[11]=o,t[12]=g):g=t[12];let _;t[13]!==l||t[14]!==r||t[15]!==c?(_=(0,U.jsx)(In,{isLoading:l,onAccept:r,size:`xs`,label:zn.accept,runCell:c}),t[13]=l,t[14]=r,t[15]=c,t[16]=_):_=t[16];let v;t[17]===i?v=t[18]:(v=(0,U.jsx)(Rn,{onDecline:i,size:`xs`,label:zn.decline}),t[17]=i,t[18]=v);let y;t[19]!==_||t[20]!==v?(y=(0,U.jsxs)(`div`,{className:`flex flex-row items-center gap-2 ml-auto`,children:[_,v]}),t[19]=_,t[20]=v,t[21]=y):y=t[21];let b;return t[22]!==u||t[23]!==y||t[24]!==m||t[25]!==g?(b=(0,U.jsxs)(`div`,{className:u,children:[m,g,y]}),t[22]=u,t[23]=y,t[24]=m,t[25]=g,t[26]=b):b=t[26],b},bp=`web application/x-marimo-cell`,xp=Ct({cells:wt(Ct({code:xt(),name:xt().optional(),config:Ct({column:bt([vt(),Tt()]).optional(),disabled:St().optional(),hide_code:St().optional(),expand_output:St().optional()}).optional()})),version:yt(`1.0`)});function Sp(e){return e.map(e=>e.code).join(`
18
+ `).trim()}function Rd(e,t,n,r){return r!==`{`||t!==n||!vr(e.state).resolveInner(t,-1)?.type.name.includes(`String`)?!1:(e.dispatch({changes:{from:t,to:n,insert:`{}`},selection:{anchor:t+1},userEvent:`input.type`}),!0)}function zd(){return R.inputHandler.of(Rd)}function Bd(e){let{showPlaceholder:t,enableAI:n}=e;return t?`marimo-import`:n?`ai`:`none`}var Vd=`cm-tooltip-portal`;function Hd(e){if(e==null)return document.querySelector(`#App`)??void 0;let t=document.querySelector(e);if(t==null)return;let n=t.querySelector(`:scope > .${Vd}`);if(n!=null)return n;let r=document.createElement(`div`);return r.className=`${Vd} not-prose contents`,t.append(r),r}var Ud=e=>{let{cellId:t,keymapConfig:n,hotkeys:r,enableAI:i,cellActions:a,completionConfig:o,lspConfig:s,diagnosticsConfig:c,displayConfig:l,inlineAiTooltip:u}=e,d=Bd(e);return[Pt(n,r),Nd(),Pd(),Xo(),ke({cellId:t,completionConfig:o,hotkeys:r,placeholderType:d,lspConfig:s,diagnosticsConfig:c}),Be({cellId:t,hotkeys:r,cellActions:a,keymapConfig:n}),Gd(e),Md(),c?.enabled?Zr():[],i&&u?[qa({prompt:e=>ao({prompt:e.prompt,selection:e.selection,codeBefore:e.codeBefore,codeAfter:e.codeAfter,language:Xe(e.editorView)})}),Va.of({hideOnBlur:!0})]:[],te(t,l.reference_highlighting??!0),qo(t,l.code_lens??!0)]},Wd=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()!==``&&si(e)},Gd=e=>{let{theme:t,hotkeys:n,completionConfig:r,acceptCompletionOnEnter:i,cellId:a,lspConfig:o,diagnosticsConfig:s,tooltipParentSelector:c}=e,l=Bd(e),u=r.auto_close_pairs!==!1;return[R.lineWrapping,Pr(),Nr(),Tr(),fr(),Ur(),Cr(),Ir(),br({position:`fixed`,parent:Hd(c)}),Ue(),t===`dark`?Zn:Yn,Re(o),cd(r),Hr(),zd(),u?ci():[],$o(i),u?xr.high(hr.of(ii)):[],Rr(),wr(),yr.of(` `),Dr(jr,{fallback:!0}),hr.of(mr),Je({placeholderType:l,completionConfig:r,hotkeys:n,cellId:a,lspConfig:{...o,diagnostics:s}}),Ne.of(Yr()),_r.allowMultipleSelections.of(!0),wd(n),hr.of([{key:`Tab`,run:e=>ui(e)||Wd(e)||Kr(e),preventDefault:!0},{key:n.getHotkey(`completion.moveDown`).key,run:e=>li(e.state)!==null&&(oi(!0)(e),!0),preventDefault:!0},{key:n.getHotkey(`completion.moveUp`).key,run:e=>li(e.state)!==null&&(oi(!1)(e),!0),preventDefault:!0}]),hr.of([...ei,Jr])]},Kd=(e=>!e||e instanceof WebAssembly.Module?e:typeof e==`object`&&`default`in e?e.default??e:e)(Zi),qd=e=>{Gi(e),Jd(e)};function Jd(e){typeof e.__wbindgen_start==`function`&&e.__wbindgen_start()}if(Kd&&Kd.__wbindgen_start)qd(Kd);else if(`Bun`in globalThis){let e;if(Kd instanceof WebAssembly.Module)({instance:e}=await WebAssembly.instantiate(Kd,{"./loro_wasm_bg.js":Ki}));else{let t=Bun.pathToFileURL(Kd);({instance:e}=await WebAssembly.instantiateStreaming(fetch(t),{"./loro_wasm_bg.js":Ki}))}qd(e.exports)}else{let e=Kd instanceof WebAssembly.Module?Kd:await ur(()=>import(`./loro_wasm_bg-Vo2IoHaL.js`),__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":Ki});else if(t instanceof ArrayBuffer||ArrayBuffer.isView(t)){let{instance:e}=await WebAssembly.instantiate(t,{"./loro_wasm_bg.js":Ki});n=e}else if(typeof t==`string`||t instanceof URL){let e=await fetch(t),{instance:r}=await WebAssembly.instantiateStreaming(e,{"./loro_wasm_bg.js":Ki});n=r}else throw console.error(`Unsupported wasm import type:`,t),Error(`Unsupported wasm import type: `+typeof t);qd(n.exports??n)}var Yd=[`Map`,`Text`,`List`,`Tree`,`MovableList`,`Counter`];function Xd(e){return $i(e)}function Zd(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return typeof t!=`object`||!t||typeof t.kind!=`function`?!1:Yd.includes(e.kind())}var Qd=class{constructor(e,t=3e4){this.listeners=new Set,this.inner=new Xi(e,t),this.peer=e,this.timeout=t}apply(e,t=`remote`){let{updated:n,added:r}=this.inner.apply(e);this.listeners.forEach(e=>{e({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(e=>{e({updated:[],added:[this.inner.peer()],removed:[]},`local`)}):this.listeners.forEach(e=>{e({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))}};Qi.prototype.toJsonWithReplacer=function(e){let t=new Set,n=this,r=(r,a)=>{if(typeof a==`string`&&Xd(a)&&!t.has(a)){t.add(a);let o=n.getContainerById(a);if(o==null)throw Error(`ContainerID not found: ${a}`);let s=e(r,o);if(s===o){let e=o.getShallowValue();return typeof e==`object`?i(e):e}if(Zd(s))throw Error(`Using new container is not allowed in toJsonWithReplacer`);return typeof s==`object`&&s?i(s):s}if(typeof a==`object`&&a)return i(a);let o=e(r,a);if(Zd(o))throw Error(`Using new container is not allowed in toJsonWithReplacer`);return o},i=e=>{if(Array.isArray(e))return e.map((e,t)=>r(t,e)).filter(e=>e!==void 0);let t={};for(let[n,i]of Object.entries(e)){let e=r(n,i);e!==void 0&&(t[n]=e)}return t};return i(n.getShallowValue())};var $d=Symbol(`loro.callPendingEventsWrapped`);function ef(e,t){let n=Object.getOwnPropertyDescriptor(e,t);if(!n||typeof n.value!=`function`)return;let r=n.value;if(r[$d])return;let i=function(...e){let t;try{return t=r.apply(this,e),t}finally{t&&typeof t.then==`function`?t.finally(()=>{Wi()}):Wi()}};i[$d]=!0,Object.defineProperty(e,t,{...n,value:i})}function tf(e,t){for(let n of t)ef(e,n)}tf(Qi.prototype,[`setDetachedEditing`,`attach`,`detach`,`fork`,`forkAt`,`checkoutToLatest`,`checkout`,`commit`,`getCursorPos`,`revertTo`,`export`,`exportJsonUpdates`,`exportJsonInIdSpan`,`importJsonUpdates`,`import`,`importUpdateBatch`,`importBatch`,`travelChangeAncestors`,`getChangedContainersIn`,`diff`,`applyDiff`,`setPeerId`]),tf(qi.prototype,[`set`,`delete`,`apply`,`removeOutdated`]),tf(ea.prototype,[`undo`,`redo`]);var nf=R.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`}});Wr.define();var rf=I.define(),af=dr.define({create(){return{remoteCursors:new Map,isCheckout:!1}},update(e,t){for(let n of t.effects)if(n.is(rf))switch(n.value.type){case`update`:{let{peer:t,user:r,cursor:i}=n.value;e.remoteCursors.set(t,{uid:t,cursor:i,user:r});break}case`delete`:e.remoteCursors.delete(n.value.peer);break;case`checkout`:e.isCheckout=n.value.checkout}return e}}),of=e=>{let t=e.transactions.flatMap(e=>e.effects).filter(e=>e.is(rf));return e.docChanged||e.viewportChanged||t.length>0},sf=()=>pr({above:!0,class:`loro-cursor-layer`,update:of,markers:e=>{let{remoteCursors:t,isCheckout:n}=e.state.field(af);return n?[]:[...t.values()].flatMap(t=>{let n=kr.cursor(t.cursor.anchor);return lf.createCursor(e,n,t.user?.name||`unknown`,t.user?.colorClassName||``)})}}),cf=()=>pr({above:!1,class:`loro-selection-layer`,update:of,markers:e=>{let{remoteCursors:t,isCheckout:n}=e.state.field(af);return n?[]:[...t.entries()].filter(([,e])=>e.cursor.head!==void 0&&e.cursor.anchor!==e.cursor.head).flatMap(([,t])=>{let n=kr.range(t.cursor.anchor,t.cursor.head);return Lr.forRange(e,`loro-selection ${t.user?.colorClassName||``}`,n)})}}),lf=class e{left;top;height;name;colorClassName;constructor(e,t,n,r,i){this.left=e,this.top=t,this.height=n,this.name=r,this.colorClassName=i}draw(){let e=document.createElement(`div`);return this.adjust(e),e}update(e){return this.adjust(e),!0}adjust(e){e.style.left=`${this.left}px`,e.style.top=`${this.top}px`,e.style.height=`${this.height}px`,e.className=`loro-cursor ${this.colorClassName}`,e.style.setProperty(`--rtc-name`,`"${this.name}"`)}eq(e){return this.left===e.left&&this.top===e.top&&this.height===e.height&&this.name===e.name}static createCursor(t,n,r,i){let a=e.calculateAbsoluteCursorPosition(n,t);if(!a)return[];let o=t.scrollDOM.getBoundingClientRect(),s=(t.textDirection===zr.LTR?o.left:o.right-t.scrollDOM.clientWidth)-t.scrollDOM.scrollLeft,c=o.top-t.scrollDOM.scrollTop;return[new e(a.left-s,a.top-c,a.bottom-a.top,r,i)]}static calculateAbsoluteCursorPosition(e,t){let n=Math.max(0,Math.min(t.state.doc.length,e.anchor));return t.coordsAtPos(n,e.assoc||1)}},uf=(e,t,n,r)=>{let i=[],{updated:a,added:o}=n;for(let n of[...a,...o]){let a=df(e,t,n,r);a&&i.push(a)}return i},df=(e,t,n,r)=>{let i=t.getAllStates()[n];if(!i||n===e.peerIdStr||i.scopeId!==r)return;if(i.type===`delete`)return rf.of({type:`delete`,peer:i.uid,scopeId:i.scopeId});let a=Yi.decode(i.cursor.anchor),o=e.getCursorPos(a)?.offset??0,s=o;if(i.cursor.head){let t=Yi.decode(i.cursor.head);s=e.getCursorPos(t)?.offset??0}return rf.of({type:`update`,peer:i.uid,scopeId:i.scopeId,cursor:{anchor:o,head:s},user:i.user})},ff=class{sub;view;doc;user;awareness;getTextFromDoc;scopeId;getUserId;constructor(e,t,n,r,i,a,o){this.view=e,this.doc=t,this.user=n,this.awareness=r,this.getTextFromDoc=i,this.scopeId=a,this.getUserId=o,this.sub=this.doc.subscribe(e=>{if(e.by===`local`){let e=[];for(let t of this.awareness.peers()){let n=df(this.doc,this.awareness,t,this.scopeId);n&&e.push(n)}this.view.dispatch({effects:e})}else e.by===`checkout`&&this.view.dispatch({effects:[rf.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 e=mf({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:e,user:this.user})}else this.awareness.setLocalState({type:`delete`,uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId})}destroy(){this.sub?.(),this.awareness.setLocalState({type:`delete`,uid:this.getUserId?this.getUserId():this.doc.peerIdStr,scopeId:this.scopeId})}},pf=class{_awarenessListener;view;doc;awareness;scopeId;constructor(e,t,n,r){this.view=e,this.doc=t,this.awareness=n,this.scopeId=r;let i=async(e,t)=>{t!==`local`&&this.view.dispatch({effects:uf(this.doc,this.awareness,e,this.scopeId)})};this._awarenessListener=i,this.awareness.addListener(i)}destroy(){this._awarenessListener&&this.awareness.removeListener(this._awarenessListener)}},mf=({doc:e,getTextFromDoc:t,anchor:n,head:r})=>{n===r&&(r=void 0);let i=t(e).getCursor(n)?.encode();if(!i)throw Error(`cursor head not found`);let a;return r!==void 0&&(a=t(e).getCursor(r)?.encode()),{anchor:i,head:a}},hf=[`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)`],gf=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 hf[Math.abs(t)%hf.length]}return hf[e%hf.length]},Q=Wt.get(`rtc`),_f=Q.get(`awareness`).disabled(),vf=`awareness:`;function yf(e,t){let n=new TextEncoder().encode(e);return new Uint8Array([...n,...t])}function bf(e,t){return new TextDecoder().decode(e.slice(0,t.length))===t}function xf(e,t){return e.slice(t.length)}var Sf=r(void 0),$=new Qi,Cf=new Qd($.peerIdStr),wf=ni(()=>{Q.debug(`creating websocket`);let e=an().getWsSyncURL(Xt()).toString(),t=new na(e,void 0,{maxRetries:10,debug:!1,startClosed:!0,connectionTimeout:1e4});return Promise.resolve().then(async()=>{await $t(),Jt()===`edit`&&t.reconnect()}),t.addEventListener(`message`,async e=>{let t=await e.data.arrayBuffer(),n=new Uint8Array(t);if(bf(n,vf)){let e=xf(n,vf);Cf.apply(e),_f.debug(`applied awareness update`);return}$.import(n),Q.debug(`imported doc change. new doc:`,$.toJSON()),o.get(Sf)!==$&&o.set(Sf,$)}),t.addEventListener(`open`,()=>{Q.debug(`websocket open`)}),t.addEventListener(`close`,e=>{Q.warn(`websocket close`,e),o.get(Sf)===$&&o.set(Sf,void 0)}),t});me()&&wf(),$.subscribeLocalUpdates(e=>{Q.debug(`local update, sending to server`),wf().send(new Uint8Array(e))}),Cf.addListener((e,t)=>{let n=[...e.added,...e.removed,...e.updated];t===`local`&&(_f.debug(`awareness changes`,n),wf().send(yf(vf,Cf.encode(n))))});function Tf(e,t,n=``){if(Qt())return{extension:[],code:n};let r=$.getByPath(`codes/${e}`)!==void 0,i=$.getMap(`codes`).getOrCreateContainer(e,new Ji);return r||(Q.log(`initializing code for new cell`,n),i.insert(0,n)),{code:n.toString(),extension:[Ef(e),Df(e),Of($,Cf,{get name(){return o.get(Ke)||`Anonymous`},get colorClassName(){return gf(this.name)}},()=>i,e),be($,[`codes`,e],()=>i)]}}function Ef(e){let t=(e,t)=>{let n=e.state.field(Pe).type,r=t.toString();r&&r!==n&&(Q.debug(`[incoming] setting language type: ${n} -> ${r}`),lt(e,{language:r,keepCodeAsIs:!0}))},n=(e,t)=>{let n=e.state.field(nt),r=t.toJSON();a(n,r)||e.dispatch({effects:[Ze.of(r)],annotations:[$e.of(!0)]})};return Vr.define(r=>{let i;return Promise.resolve().then(()=>{let a=$.getByPath(`languages/${e}`);if(!a){Q.error(`no language container found for cell`,e);return}qt(a instanceof Ji,`language type is not a LoroText`);let o=$.getByPath(`language_metadata/${e}`);if(!o){Q.error(`no language metadata container found for cell`,e);return}qt(o instanceof ta,`language metadata is not a LoroMap`),t(r,a),n(r,o),i=$.subscribe(e=>{if(e.origin===`local`)return;let i=e.events.some(e=>e.target===a.id),s=e.events.some(e=>e.target===o.id);i&&t(r,a),s&&n(r,o)})}),{destroy(){i()}}})}function Df(e){let t=$.getMap(`languages`).getOrCreateContainer(e,new Ji),n=$.getMap(`language_metadata`).getOrCreateContainer(e,new ta);return R.updateListener.of(e=>{let r=t.toString()!==``;if(!e.docChanged&&r)return;if(!r){let r=He(e.state).type;lt(e.view,{language:r}),Q.debug(`no initial language, setting default to`,r),t.delete(0,t.length),t.insert(0,r),Q.debug(`no initial language metadata, setting default to`,e.state.field(nt));let i=e.state.field(nt);for(let e of Object.keys(i))n.set(e,i[e]);$.commit();return}let i=!1;for(let r of e.transactions)if(!r.annotation($e)){for(let e of r.effects)if(e.is(de)&&t.toString()!==e.value.type&&(Q.debug(`[outgoing] language change: ${t} -> ${e.value.type}`),t.delete(0,t.length),t.insert(0,e.value.type),i=!0),e.is(Ze)||e.is(We)){let t=e.value;e.is(We)?(Q.debug(`[outgoing] setting language metadata: `,t),n.clear()):Q.debug(`[outgoing] updating language metadata: `,t);for(let e of Object.keys(t))n.set(e,t[e]);i=!0}}i&&$.commit()})}function Of(e,t,n,r,i,a){let o=`loro:cell:${i}`;return[af,sf(),cf(),Vr.define(i=>new ff(i,e,n,t,r,o,a)),Vr.define(n=>new pf(n,e,t,o)),nf]}var kf=De,Af=e=>{let t=(0,H.c)(41),{resetOnBlur:n,placeholderText:r,initialValue:i,flexibleWidth:a,onNameChange:o,className:s}=e,c=n!==void 0&&n,l=i===void 0?null:i,u=a!==void 0&&a,{sendListFiles:d}=mi(),[f,p]=(0,V.useState)(l),m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=[],t[0]=m):m=t[0];let[h,g]=(0,V.useState)(m),[_,v]=(0,V.useState)(!1),y=(0,V.useRef)(null),b=(0,V.useRef)(!1),x,S;t[1]===l?(x=t[2],S=t[3]):(x=()=>{p(l)},S=[l],t[1]=l,t[2]=x,t[3]=S),(0,V.useEffect)(x,S);let C;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>{v(!0)},t[4]=C):C=t[4];let w=C,T;t[5]!==l||t[6]!==c?(T=e=>{e.relatedTarget?.closest(`.filename-input`)||(v(!1),c&&p(l))},t[5]=l,t[6]=c,t[7]=T):T=t[7];let E=T,D;t[8]===f?D=t[9]:(D=bn.dirname(f||``),t[8]=f,t[9]=D);let O=D,ee=bn.basename(f||``),k=h.filter(e=>bn.basename(e.path).startsWith(ee)),te;t[10]!==O||t[11]!==_||t[12]!==d?(te=async()=>{if(!_){g([]);return}let e=await d({path:O});g(e.files)},t[10]=O,t[11]=_,t[12]=d,t[13]=te):te=t[13];let ne;t[14]!==O||t[15]!==_?(ne=[O,_],t[14]=O,t[15]=_,t[16]=ne):ne=t[16];let{isPending:re}=xi(te,ne),A=jf(f,h,l),j=(A||k.length>0)&&(0,U.jsxs)(st,{className:`font-mono`,children:[!re&&(0,U.jsx)(Ve,{children:`No files`}),A&&(0,U.jsxs)(ue,{variant:`success`,className:`py-2 px-3`,onSelect:()=>{A&&(b.current=!0,o(A),y.current?.blur())},children:[(0,U.jsx)(aa,{className:`w-4 h-4 mr-2`}),` `,(0,U.jsxs)(`span`,{className:`text-sm`,children:[l?`Rename to: `:`Save as: `,(0,U.jsx)(`span`,{className:`font-medium text-sm`,children:bn.basename(A)})]})]},`_rename_`),k.map(e=>{let t=e.isDirectory?`directory`:Wn(e.path),n=Gn[t];return(0,U.jsxs)(ue,{variant:e.isDirectory?`default`:`muted`,className:`py-2 px-3`,onSelect:()=>{e.isDirectory?p(`${e.path}/`):p(e.path)},children:[(0,U.jsx)(n,{className:`w-4 h-4 mr-2`}),` `,bn.basename(e.path)]},e.path)})]}),ie=Math.max(20,f?.length||r?.length||0)*10,M=_?f||``:l||``,N;t[17]!==u||t[18]!==ie?(N=u?{maxWidth:ie}:void 0,t[17]=u,t[18]=ie,t[19]=N):N=t[19];let P;t[20]===s?P=t[21]:(P=cn(s,`w-full px-4 py-1 my-1 h-9 font-mono text-foreground/60`),t[20]=s,t[21]=P);let ae;t[22]!==r||t[23]!==M||t[24]!==N||t[25]!==P?(ae=(0,U.jsx)(kf,{children:(0,U.jsx)(Ae,{"data-testid":`dir-completion-input`,tabIndex:-1,rootClassName:`border-none justify-center px-1`,spellCheck:`false`,value:M,onKeyDown:Mf,icon:null,ref:y,onValueChange:p,placeholder:r,autoComplete:`off`,style:N,className:P})}),t[22]=r,t[23]=M,t[24]=N,t[25]=P,t[26]=ae):ae=t[26];let oe=j&&`group-focus-within:block`,se;t[27]===oe?se=t[28]:(se=cn(`p-0 w-full min-w-80 max-w-80vw hidden`,oe),t[27]=oe,t[28]=se);let ce;t[29]!==j||t[30]!==se?(ce=(0,U.jsx)(ot,{side:`bottom`,className:se,portal:!1,children:j}),t[29]=j,t[30]=se,t[31]=ce):ce=t[31];let le;t[32]!==ae||t[33]!==ce?(le=(0,U.jsxs)(st,{children:[ae,ce]}),t[32]=ae,t[33]=ce,t[34]=le):le=t[34];let de;t[35]!==E||t[36]!==le?(de=(0,U.jsx)(Ee,{onFocus:w,onBlur:E,shouldFilter:!1,id:`filename-input`,className:`bg-transparent group filename-input`,children:le}),t[35]=E,t[36]=le,t[37]=de):de=t[37];let fe;return t[38]!==_||t[39]!==de?(fe=(0,U.jsx)(sn,{children:(0,U.jsx)(xe,{open:_,modal:!1,children:de})}),t[38]=_,t[39]=de,t[40]=fe):fe=t[40],fe};function jf(e,t,n){if(e&&!e.endsWith(`/`)&&((fe(`markdown`)?new Set([`py`,`md`,`markdown`,`qmd`]):new Set([`py`])).has(bn.extension(e))||(e=e.endsWith(`.`)?`${e}py`:e.endsWith(`.p`)?`${e}y`:`${e}.py`),!t.some(t=>t.path===e||bn.basename(t.path)===e)&&!(n&&(n===e||bn.basename(n)===e))))return e}function Mf(e){e.key===`Escape`&&e.currentTarget.blur()}var Nf=e=>{let t=(0,H.c)(33),n=()=>{pn(new Blob([r()],{type:`text/plain`}),`${e.proposedName}.json`)},r=c(If),i;t[0]!==n||t[1]!==e?(i=t=>{t.preventDefault(),n(),e.closeModal()},t[0]=n,t[1]=e,t[2]=i):i=t[2];let a;t[3]===e?a=t[4]:(a=t=>{t.key===`Escape`&&e.closeModal()},t[3]=e,t[4]=a);let o;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,U.jsx)(or,{className:`text-accent-foreground mb-6`,children:`Download unsaved changes?`}),t[5]=o):o=t[5];let s;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(s={wordBreak:`break-word`},t[6]=s):s=t[6];let l,u;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,U.jsx)(`p`,{children:`This app has unsaved changes. To recover:`}),u={paddingBottom:`10px`},t[7]=l,t[8]=u):(l=t[7],u=t[8]);let d;t[9]===e.proposedName?d=t[10]:(d=(0,U.jsxs)(`li`,{style:u,children:[`Click the "Download" button. This will download a file called\xA0`,(0,U.jsxs)(`code`,{children:[e.proposedName,`.json`]}),`. This file contains your code.`]}),t[9]=e.proposedName,t[10]=d);let f;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(f={paddingBottom:`10px`},t[11]=f):f=t[11];let p;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(p={display:`block`,padding:`10px`},t[12]=p):p=t[12];let m;t[13]===e.proposedName?m=t[14]:(m=(0,U.jsxs)(`code`,{style:p,children:[`marimo recover `,e.proposedName,`.json `,`>`,` `,e.proposedName,`.py`]}),t[13]=e.proposedName,t[14]=m);let h;t[15]===e.proposedName?h=t[16]:(h=(0,U.jsxs)(`code`,{children:[e.proposedName,`.py`]}),t[15]=e.proposedName,t[16]=h);let g;t[17]!==h||t[18]!==m?(g=(0,U.jsxs)(`li`,{style:f,children:[`In your terminal, type`,m,`to overwrite `,h,` with the recovered changes.`]}),t[17]=h,t[18]=m,t[19]=g):g=t[19];let _;t[20]!==g||t[21]!==d?(_=(0,U.jsx)(tr,{className:`markdown wrap-break-word`,style:s,children:(0,U.jsxs)(`div`,{className:`prose dark:prose-invert`,children:[l,(0,U.jsxs)(`ol`,{children:[d,g]})]})}),t[20]=g,t[21]=d,t[22]=_):_=t[22];let v;t[23]===e.closeModal?v=t[24]:(v=(0,U.jsx)(_n,{"aria-label":`Cancel`,variant:`secondary`,"data-testid":`cancel-recovery-button`,onClick:e.closeModal,children:`Cancel`}),t[23]=e.closeModal,t[24]=v);let y;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,U.jsx)(_n,{"data-testid":`download-recovery-button`,"aria-label":`Download`,variant:`default`,type:`submit`,children:`Download`}),t[25]=y):y=t[25];let b;t[26]===v?b=t[27]:(b=(0,U.jsxs)(rr,{children:[v,y]}),t[26]=v,t[27]=b);let x;return t[28]!==i||t[29]!==a||t[30]!==_||t[31]!==b?(x=(0,U.jsx)(ar,{className:`w-fit`,children:(0,U.jsxs)(`form`,{onSubmit:i,onKeyDown:a,children:[o,_,b]})}),t[28]=i,t[29]=a,t[30]=_,t[31]=b,t[32]=x):x=t[32],x},Pf=e=>{let t=(0,H.c)(12),{filename:n,needsSave:r}=e,{openModal:i,closeModal:a}=qn(),o;t[0]===n?o=t[1]:(o=n===null?`app`:bn.basename(n).split(`.`)[0],t[0]=n,t[1]=o);let s=o,c;t[2]!==a||t[3]!==r||t[4]!==i||t[5]!==s?(c=()=>{r&&i((0,U.jsx)(Nf,{proposedName:s,closeModal:a}))},t[2]=a,t[3]=r,t[4]=i,t[5]=s,t[6]=c):c=t[6];let l=c;It(`global.save`,l);let u;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(u=Mi(`global.save`),t[7]=u):u=t[7];let d=r?`yellow`:`gray`,f;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,U.jsx)(er,{strokeWidth:1.5,size:18}),t[8]=f):f=t[8];let p;return t[9]!==l||t[10]!==d?(p=(0,U.jsx)(hn,{content:u,children:(0,U.jsx)(ra,{onClick:l,id:`save-button`,"aria-label":`Save`,className:`rectangle`,color:d,children:f})}),t[9]=l,t[10]=d,t[11]=p):p=t[11],p};function Ff(e){return{id:e.id,name:e.name,code:e.code,code_hash:null,config:{column:0,...e.config}}}function If(){let e=Me(),t=ye(e),n={version:`1`,metadata:{marimo_version:on()},cells:t.map(Ff)};return JSON.stringify(n,null,2)}var Lf=r(void 0),Rf=r(e=>{let t=e(Lf);return zf({state:e(he),layout:e(Xn),lastSavedNotebook:t})});function zf({state:e,layout:t,lastSavedNotebook:n}){if(!n)return!1;let{cellIds:r,cellData:i}=e,o=r.inOrderIds.map(e=>i[e]),s=o.map(e=>e.code),c=o.map(e=>e.config),l=o.map(e=>e.name);return!ti(s,n.codes)||!ti(l,n.names)||!a(c,n.configs)||!a(t.selectedLayout,n.layout.selectedLayout)||!a(t.layoutData,n.layout.layoutData)}function Bf(e){let t=(0,H.c)(21),{codes:n,cellConfigs:r,config:i,connStatus:a,cellNames:o,needsSave:s,kioskMode:c,onSave:l}=e,u=(0,V.useRef)(null),d;t[0]===n?d=t[1]:(d=n.join(`:`),t[0]=n,t[1]=d);let f=d,p;t[2]===r?p=t[3]:(p=r.map(Vf).join(`:`),t[2]=r,t[3]=p);let m=p,h;t[4]===o?h=t[5]:(h=o.join(`:`),t[4]=o,t[5]=h);let g=h,_;t[6]!==i||t[7]!==a.state||t[8]!==c||t[9]!==s||t[10]!==l?(_=()=>{if(!c)return i.autosave===`after_delay`&&(u.current!==null&&clearTimeout(u.current),s&&a.state===en.OPEN&&(u.current=setTimeout(l,i.autosave_delay))),()=>{u.current!==null&&clearTimeout(u.current)}},t[6]=i,t[7]=a.state,t[8]=c,t[9]=s,t[10]=l,t[11]=_):_=t[11];let v;t[12]!==m||t[13]!==g||t[14]!==f||t[15]!==i||t[16]!==a.state||t[17]!==c||t[18]!==s||t[19]!==l?(v=[f,m,g,i,a.state,l,c,s],t[12]=m,t[13]=g,t[14]=f,t[15]=i,t[16]=a.state,t[17]=c,t[18]=s,t[19]=l,t[20]=v):v=t[20],(0,V.useEffect)(_,v)}function Vf(e){return JSON.stringify(e)}var Hf=Promise.resolve();function Uf(e){let t=Hf.then(e);return Hf=t.then(()=>void 0,()=>void 0),t}var Wf=e=>{let t=(0,H.c)(15),{kioskMode:n}=e,r=Ai(),a=i(Rf),o=i(tn).state===en.CLOSED,{saveOrNameNotebook:s,saveIfNotebookIsPersistent:c}=Gf(),l;t[0]!==n||t[1]!==c?(l={onSave:c,kioskMode:n},t[0]=n,t[1]=c,t[2]=l):l=t[2],Xf(l),ia();let u;t[3]===a?u=t[4]:(u=e=>{if(a)return e.preventDefault(),e.returnValue=`You have unsaved changes. Are you sure you want to leave?`,e.returnValue},t[3]=a,t[4]=u),Kt(window,`beforeunload`,u);let d;t[5]===s?d=t[6]:(d=e=>{e.preventDefault(),e.stopPropagation(),s()},t[5]=s,t[6]=d);let f=d;if(It(`global.save`,s),o){let e;return t[7]!==r||t[8]!==a?(e=(0,U.jsx)(Pf,{filename:r,needsSave:a}),t[7]=r,t[8]=a,t[9]=e):e=t[9],e}let p;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(p=Mi(`global.save`),t[10]=p):p=t[10];let m=a?`yellow`:`hint-green`,h;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,U.jsx)(er,{strokeWidth:1.5,size:18}),t[11]=h):h=t[11];let g;return t[12]!==f||t[13]!==m?(g=(0,U.jsx)(hn,{content:p,children:(0,U.jsx)(ra,{"data-testid":`save-button`,id:`save-button`,shape:`rectangle`,color:m,onClick:f,children:h})}),t[12]=f,t[13]=m,t[14]=g):g=t[14],g};function Gf(){let e=(0,H.c)(21),{sendSave:t}=mi(),{openModal:r,closeModal:i,openAlert:a}=qn(),o=l(Lf),s=ji(),u=n(),d;e[0]!==a||e[1]!==t||e[2]!==o||e[3]!==u?(d=(e,n)=>Uf(async()=>{let r=u.get(tn),i=u.get(At);if(u.get(Yt))return;if(r.state!==en.OPEN){a(`Failed to save notebook: not connected to a kernel.`);return}if(Wt.log(`saving to `,e),n&&i.format_on_save&&(Wt.log(`formatting notebook (onSave)`),await le()),ye(Me()).length===0)return;let s=await rt(async()=>{let n=Me(),r=ye(n),i=r.map(Jf),a=r.map(qf),o=r.map(Kf),s=Ce(n),c=u.get(Xn);return await t({cellIds:i,codes:a,names:o,filename:e,configs:s,layout:xn(),persist:!0}),{names:o,codes:a,configs:s,layout:c}});o(s)}),e[0]=a,e[1]=t,e[2]=o,e[3]=u,e[4]=d):d=e[4];let f=c(d),p;e[5]!==f||e[6]!==u?(p=e=>{let t=e!==void 0&&e,n=u.get(gt),r=u.get(tn);Yf(n)&&r.state===en.OPEN&&f(n,t)},e[5]=f,e[6]=u,e[7]=p):p=e[7];let m=c(p),h;e[8]!==f||e[9]!==s?(h=e=>{s(e).then(e=>{e!==null&&f(e,!0)})},e[8]=f,e[9]=s,e[10]=h):h=e[10];let g=h,_;e[11]!==i||e[12]!==g||e[13]!==r||e[14]!==m||e[15]!==u?(_=()=>{let e=u.get(gt),t=u.get(tn);m(!0),!Yf(e)&&t.state!==en.CLOSED&&r((0,U.jsx)($f,{onClose:i,onSave:g}))},e[11]=i,e[12]=g,e[13]=r,e[14]=m,e[15]=u,e[16]=_):_=e[16];let v=c(_),y;return e[17]!==m||e[18]!==f||e[19]!==v?(y={saveOrNameNotebook:v,saveIfNotebookIsPersistent:m,saveNotebook:f},e[17]=m,e[18]=f,e[19]=v,e[20]=y):y=e[20],y}function Kf(e){return e.name}function qf(e){return e.code}function Jf(e){return e.id}function Yf(e){return e!==null&&!e.startsWith(`/tmp/`)&&!e.startsWith(`/var/folders`)&&!e.includes(`AppData\\Local\\Temp`)}function Xf(e){let n=(0,H.c)(14),r=i(At),a=C(),[o]=t(tn),s=i(Rf),c,l;if(n[0]!==a){let e=ye(a);c=e.map(Qf),l=e.map(Zf),n[0]=a,n[1]=c,n[2]=l}else c=n[1],l=n[2];let u=l,d;n[3]===a?d=n[4]:(d=Ce(a),n[3]=a,n[4]=d);let f=d,p;n[5]!==r||n[6]!==u||n[7]!==c||n[8]!==f||n[9]!==o||n[10]!==s||n[11]!==e.kioskMode||n[12]!==e.onSave?(p={onSave:e.onSave,needsSave:s,codes:c,cellConfigs:f,cellNames:u,connStatus:o,config:r,kioskMode:e.kioskMode},n[5]=r,n[6]=u,n[7]=c,n[8]=f,n[9]=o,n[10]=s,n[11]=e.kioskMode,n[12]=e.onSave,n[13]=p):p=n[13],Bf(p)}function Zf(e){return e.name}function Qf(e){return e.code}var $f=e=>{let t=(0,H.c)(17),{onClose:n,onSave:r}=e,[i,a]=(0,V.useState)(),o;t[0]!==n||t[1]!==r?(o=e=>{a(e),e.trim()&&(r(e),n())},t[0]=n,t[1]=r,t[2]=o):o=t[2];let s=o,c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,U.jsx)(or,{children:`Save notebook`}),t[3]=c):c=t[3];let l;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,U.jsx)(un,{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,U.jsxs)(`div`,{className:`flex flex-col`,children:[l,(0,U.jsx)(Af,{onNameChange:s,placeholderText:`filename`,className:`missing-filename`})]}),t[5]=s,t[6]=u);let d;t[7]===n?d=t[8]:(d=(0,U.jsx)(_n,{"data-testid":`cancel-save-dialog-button`,"aria-label":`Cancel`,variant:`secondary`,onClick:n,children:`Cancel`}),t[7]=n,t[8]=d);let f=!i,p;t[9]===f?p=t[10]:(p=(0,U.jsx)(_n,{"data-testid":`submit-save-dialog-button`,"aria-label":`Save`,variant:`default`,disabled:f,type:`submit`,children:`Save`}),t[9]=f,t[10]=p);let m;t[11]!==d||t[12]!==p?(m=(0,U.jsxs)(rr,{children:[d,p]}),t[11]=d,t[12]=p,t[13]=m):m=t[13];let h;return t[14]!==u||t[15]!==m?(h=(0,U.jsxs)(ar,{children:[c,u,m]}),t[14]=u,t[15]=m,t[16]=h):h=t[16],h};function ep(...e){return t=>{e.forEach(e=>{typeof e==`function`?e(t):e!=null&&(e.current=t)})}}var tp={modified:{doc:``},original:{doc:``}},np=(0,V.createContext)(tp);function rp(e,t){return z({},e,t,{modified:z({},e.modified,t.modified),original:z({},e.original,t.original)})}var ip=()=>(0,V.useContext)(np),ap=e=>{var t=e.children,n=e.theme,r=(0,V.useReducer)(rp,z({},tp,{theme:n})),i=r[0],a=r[1];return(0,V.useEffect)(()=>a({theme:n}),[n]),(0,U.jsx)(np.Provider,{value:z({},i,{dispatch:a}),children:t})},op=[`extensions`,`value`,`selection`,`onChange`],sp=e=>{var t=e.extensions,n=t===void 0?[]:t,r=e.value,i=e.selection,a=e.onChange,o=Ei(e,op),s=ip(),c=s.theme,l=s.dispatch,u=Fi(z({},o,{theme:c}));return(0,V.useEffect)(()=>l({original:{doc:r,selection:i,extensions:[...u,...n]},originalExtension:{onChange:a,option:o,extension:[n]}}),[e]),null};sp.displayName=`CodeMirrorMerge.Original`;var cp=[`extensions`,`value`,`selection`,`onChange`],lp=e=>{var t=e.extensions,n=t===void 0?[]:t,r=e.value,i=e.selection,a=e.onChange,o=Ei(e,cp),s=ip(),c=s.theme,l=s.dispatch,u=Fi(z({},o,{theme:c}));return(0,V.useEffect)(()=>{l({modified:{doc:r,selection:i,extensions:[...u,...n]},modifiedExtension:{onChange:a,option:o,extension:[n]}})},[e]),null};lp.displayName=`CodeMirrorMerge.Modified`;var up=[`className`,`children`,`orientation`,`revertControls`,`highlightChanges`,`gutter`,`collapseUnchanged`,`destroyRerender`,`renderRevertControl`,`diffConfig`,`root`],dp=[`modified`,`modifiedExtension`,`original`,`originalExtension`,`theme`,`dispatch`],fp=V.forwardRef((e,t)=>{var n=e.className,r=e.children,i=e.orientation,a=e.revertControls,o=e.highlightChanges,s=e.gutter,c=e.collapseUnchanged,l=e.destroyRerender,u=l===void 0||l,d=e.renderRevertControl,f=e.diffConfig,p=e.root,m=Ei(e,up),h=ip(),g=h.modified,_=h.modifiedExtension,v=h.original,y=h.originalExtension,b=h.theme,x=h.dispatch,S=Ei(h,dp),C=(0,V.useRef)(null),w=(0,V.useRef)(),T={orientation:i,revertControls:a,highlightChanges:o,gutter:s,collapseUnchanged:c,renderRevertControl:d,diffConfig:f,root:p};(0,V.useImperativeHandle)(t,()=>({container:C.current,view:w.current,modified:g,original:v,config:z({a:v,b:g,parent:C.current},T)}),[C,w,g,v,T]);var E=R.updateListener.of(e=>{if(e.docChanged&&typeof y?.onChange==`function`){var t=e.state.doc.toString();y?.onChange(t,e)}}),D=R.updateListener.of(e=>{if(e.docChanged&&typeof _?.onChange==`function`){var t=e.state.doc.toString();_?.onChange(t,e)}});return(0,V.useEffect)(()=>{!w.current&&C.current&&y&&_&&(w.current=new Ii(z({a:z({},v,{extensions:[...y?.extension||[],...Fi(z({},y?.option,{theme:b})),E]}),b:z({},g,{extensions:[..._?.extension||[],...Fi(z({},_?.option,{theme:b})),D]}),parent:C.current},T)),x({view:w.current}))},[w,C,y,_]),(0,V.useEffect)(()=>{if(v&&v.doc&&w.current){var e=w.current?.a.state.doc.toString();if(e!==v.doc){var t;(t=w.current)==null||t.a.dispatch({changes:{from:0,to:e.length,insert:v.doc||``}})}}if(g&&g.doc&&w.current){var n=w.current?.b.state.doc.toString();if(n!==g.doc){var r;(r=w.current)==null||r.b.dispatch({changes:{from:0,to:n.length,insert:g.doc||``}})}}if(u&&w.current){var i=w.current.a.state.selection.ranges[0].from,a=w.current.b.state.selection.ranges[0].from;w.current.destroy(),w.current=new Ii(z({a:z({},v,{extensions:[...y?.extension||[],...Fi(z({},y?.option,{theme:b}))]}),b:z({},g,{extensions:[..._?.extension||[],...Fi(z({},_?.option,{theme:b}))]}),parent:C.current},T)),i&&(w.current.a.focus(),w.current.a.dispatch({selection:{anchor:i,head:i}})),a&&(w.current.b.focus(),w.current.b.dispatch({selection:{anchor:a,head:a}}))}},[w,b,C.current,v,g,y,_,u]),(0,V.useEffect)(()=>()=>w.current&&w.current.destroy(),[]),(0,V.useEffect)(()=>{if(w.current){var e={};S.orientation!==i&&(e.orientation=i),S.revertControls!==a&&(e.revertControls=a),S.highlightChanges!==o&&(e.highlightChanges=o),S.gutter!==s&&(e.gutter=s),S.collapseUnchanged!==c&&(e.collapseUnchanged=c),S.renderRevertControl!==d&&(e.collapseUnchanged=c),Object.keys(e).length&&x&&w.current&&(w.current.reconfigure(z({},e)),x(z({},e)))}},[x,w,i,a,o,s,c,d]),(0,U.jsx)(`div`,z({ref:C,className:`cm-merge-theme`+(n?` `+n:``)},m,{children:r}))});fp.displayName=`CodeMirrorMerge.Internal`;var pp=[`theme`],mp=V.forwardRef((e,t)=>{var n=e.theme,r=Ei(e,pp);return(0,U.jsx)(ap,{theme:n,children:(0,U.jsx)(fp,z({},r,{ref:t}))})});mp.Original=sp,mp.Modified=lp,mp.displayName=`CodeMirrorMerge`;var hp=mp.Original,gp=mp.Modified,_p=[se(),R.lineWrapping],vp=({cellId:e,aiCompletionCell:n,className:r,onChange:i,currentLanguageAdapter:a,currentCode:o,declineChange:s,acceptChange:c,runCell:l,outputArea:u,children:d})=>{let[p,m]=(0,V.useState)(!1),[h,g]=t(Oi),_=(0,V.useId)(),v=nn(),{initialPrompt:y,triggerImmediately:x,cellId:C}=n??{},w=C===e,T=kn(e),E;T?.type===`update_cell`&&(E=T.previousCode);let[D,O]=(0,V.useState)(``),[ee,k]=(0,V.useState)(y??``),te=V.useMemo(()=>new wn({api:v.getAiURL(`completion`).toString(),headers:()=>v.headers(),prepareSendMessagesRequest:({body:e,id:t})=>({body:{...e,id:t}})}),[v]),{sendMessage:ne,stop:re,status:A}=Hn({throttle:100,transport:te,onData:e=>{if(e.type===Tn){let t=Dn.parse(e.data);O(t.code.trimEnd())}},onError:e=>{O(``),lr({title:`Completion failed`,description:Ti(e)})},onFinish:({isAbort:e,isDisconnect:t,isError:n,finishReason:r})=>{(e||t||n||r!==`stop`)&&O(``)}}),j=A===`submitted`||A===`streaming`,ie=(0,V.useCallback)(()=>{O(``),re()},[re]),M=(0,V.useCallback)(async e=>{await re(),O(``);let t={...jn({input:e}),prompt:e,includeOtherCode:h?ce(o):``,code:o,language:a??`python`};await ne({text:e},{body:t})},[o,a,h,ne,re]),N=(0,V.useCallback)(()=>{M(ee)},[M,ee]),P=V.useRef(null),ae=(0,V.useCallback)(()=>{x&&!j&&y&&M(y)},[x]);(0,V.useEffect)(()=>{w&&(S(()=>{let e=P.current;return e?.view?(e.view.focus(),ae(),!0):!1},{retries:3,delay:100,initialDelay:100}),b(P.current?.view))},[w,ae]),(0,V.useEffect)(()=>{w&&k(y||``)},[w,y,k]);let{theme:oe}=vi(),se=()=>{c(D),O(``)},le=()=>{ie(),m(!0),P.current?.view?.focus()},ue=w&&x&&(D||j);u??=`below`;let de=w&&(!x||p),fe=(0,U.jsx)(`div`,{className:cn(`w-full bg-(--cm-background) flex justify-center transition-all duration-300 ease-in-out overflow-hidden`,ue?`max-h-20 opacity-100 translate-y-0`:`max-h-0 opacity-0 -translate-y-2`),children:(0,U.jsx)(yp,{status:j?`loading`:`generated`,onAccept:se,onReject:le,showInputPrompt:p,setShowInputPrompt:m,runCell:l,className:`mt-4 mb-3 w-lg`})}),pe=(e,t)=>(0,U.jsxs)(mp,{className:`cm`,theme:oe,children:[(0,U.jsx)(hp,{onChange:i,value:e,extensions:_p}),(0,U.jsx)(gp,{value:t,editable:!1,readOnly:!0,extensions:_p})]}),me=()=>{if(D&&w)return pe(o,D);if(!D&&E)return pe(E,o)},he=(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(In,{isLoading:j,onAccept:se,size:`xs`,multipleCompletions:!1,label:zn.accept,acceptShortcut:`Mod-↵`,runCell:l}),(0,U.jsx)(Rn,{onDecline:le,size:`xs`,multipleCompletions:!1,label:zn.decline,declineShortcut:`Shift-Mod-Delete`})]});return(0,U.jsxs)(`div`,{"data-ai-input-open":de,className:cn(`flex flex-col w-full rounded-[inherit]`,r),children:[(0,U.jsx)(`div`,{className:cn(`flex items-center gap-2 px-3 transition-all rounded-[inherit] rounded-b-none duration-300`,de&&`max-h-[400px] border-b min-h-11 visible`,!de&&`max-h-0 min-h-0 invisible`),children:w&&(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(Ye,{className:`text-(--blue-10) shrink-0`,size:16}),(0,U.jsx)(Ln,{inputRef:P,className:`h-full my-0 py-2 flex items-center`,onClose:()=>{ie(),s()},value:ee,onChange:k,onSubmit:()=>{j||(P.current?.view&&An(P.current.view),N())},onKeyDown:Bn({handleAcceptCompletion:se,handleDeclineCompletion:le,isLoading:j,hasCompletion:D.trim().length>0})}),(0,U.jsxs)(`div`,{className:`-mr-1.5 py-1.5`,children:[(0,U.jsxs)(`div`,{className:`flex flex-row items-center justify-end gap-0.5`,children:[(0,U.jsx)(Fn,{isLoading:j,onStop:ie,onSendClick:N,isEmpty:!ee.trim(),showStopLabel:!0}),(0,U.jsx)(Pn,{handleAddContext:()=>Vn(P),isLoading:j}),(0,U.jsx)(zt,{triggerClassName:`h-7 text-xs`,iconSize:`small`,forRole:`edit`,displayIconOnly:!0,placeholder:`Edit model`})]}),D&&(0,U.jsx)(`div`,{className:`mt-1 flex items-center gap-1`,children:he})]}),(0,U.jsx)(`div`,{className:`h-full w-px bg-border mx-2`}),(0,U.jsx)(hn,{content:`Include code from other cells`,children:(0,U.jsxs)(`div`,{className:`flex flex-row items-start gap-1 overflow-hidden`,children:[(0,U.jsx)(f,{"data-testid":`include-other-cells-checkbox`,id:_,checked:h,onCheckedChange:e=>g(!!e)}),(0,U.jsx)(un,{htmlFor:_,className:`text-muted-foreground text-xs whitespace-nowrap ellipsis`,children:`All code`})]})}),(0,U.jsx)(_n,{"data-testid":`decline-completion-button`,variant:`text`,size:`icon`,disabled:j,onClick:()=>{ie(),s()},children:(0,U.jsx)(Sn,{className:`text-(--red-10)`,size:16})})]})}),u===`above`&&fe,me(),(!D||!w)&&!E&&d,u===`below`&&fe]})},yp=e=>{let t=(0,H.c)(27),{status:n,onAccept:r,onReject:i,className:a,showInputPrompt:o,setShowInputPrompt:s,runCell:c}=e,l=n===`loading`,u;t[0]===a?u=t[1]:(u=cn(`flex flex-row items-center gap-6 rounded-md py-2 px-2.5 text-sm border border-border bg-(--gray-2) dark:bg-(--gray-3)`,a),t[0]=a,t[1]=u);let d;t[2]===l?d=t[3]:(d=l?(0,U.jsx)(Jn,{className:`animate-spin text-blue-600 mb-px`,size:15,strokeWidth:2,"aria-label":`Generating fix`}):(0,U.jsx)(Cn,{className:`text-green-600 mb-px`,size:15,strokeWidth:2,"aria-label":`Fix generated`}),t[2]=l,t[3]=d);let f=l?`Generating fix...`:`Showing fix`,p;t[4]===f?p=t[5]:(p=(0,U.jsx)(`p`,{className:`transition-opacity duration-200 text-muted-foreground`,children:f}),t[4]=f,t[5]=p);let m;t[6]!==d||t[7]!==p?(m=(0,U.jsxs)(`div`,{className:`flex flex-row items-center gap-2`,children:[d,p]}),t[6]=d,t[7]=p,t[8]=m):m=t[8];let h;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,U.jsx)(un,{htmlFor:`show-input-prompt`,className:`text-muted-foreground text-xs whitespace-nowrap ellipsis`,children:`Show prompt`}),t[9]=h):h=t[9];let g;t[10]!==s||t[11]!==o?(g=(0,U.jsxs)(`div`,{className:`flex flex-row items-center gap-1`,children:[h,(0,U.jsx)(mn,{checked:o,onCheckedChange:s,size:`xs`})]}),t[10]=s,t[11]=o,t[12]=g):g=t[12];let _;t[13]!==l||t[14]!==r||t[15]!==c?(_=(0,U.jsx)(In,{isLoading:l,onAccept:r,size:`xs`,label:zn.accept,runCell:c}),t[13]=l,t[14]=r,t[15]=c,t[16]=_):_=t[16];let v;t[17]===i?v=t[18]:(v=(0,U.jsx)(Rn,{onDecline:i,size:`xs`,label:zn.decline}),t[17]=i,t[18]=v);let y;t[19]!==_||t[20]!==v?(y=(0,U.jsxs)(`div`,{className:`flex flex-row items-center gap-2 ml-auto`,children:[_,v]}),t[19]=_,t[20]=v,t[21]=y):y=t[21];let b;return t[22]!==u||t[23]!==y||t[24]!==m||t[25]!==g?(b=(0,U.jsxs)(`div`,{className:u,children:[m,g,y]}),t[22]=u,t[23]=y,t[24]=m,t[25]=g,t[26]=b):b=t[26],b},bp=`web application/x-marimo-cell`,xp=Ct({cells:wt(Ct({code:xt(),name:xt().optional(),config:Ct({column:bt([vt(),Tt()]).optional(),disabled:St().optional(),hide_code:St().optional(),expand_output:St().optional()}).optional()})),version:yt(`1.0`)});function Sp(e){return e.map(e=>e.code).join(`
19
19
 
20
20
  `)}async function Cp(e){let t={cells:e.map(e=>({code:e.code,name:e.name,config:e.config})),version:`1.0`},n=new kp().add(bp,t).add(`text/plain`,Sp(e)).build();await navigator.clipboard.write([n])}function wp(){let e=(0,H.c)(13),t=y(),n=Te(),r=qe(),i;e[0]===n?i=e[1]:(i=async e=>{let t=Me(),r=e.map(e=>t.cellData[e]).filter(Boolean);if(r.length!==0)try{await Cp(r),n.clear(),Tp(r.length)}catch(e){let t=e;Wt.error(`Failed to copy cells to clipboard`,t);try{await cr(Sp(r)),n.clear(),Tp(r.length)}catch{Ep()}}},e[0]=n,e[1]=i);let a=c(i),o;e[2]===n?o=e[3]:(o=async e=>{let t=Me(),r=e.filter(e=>t.cellData[e]),i=r.map(e=>t.cellData[e]);if(i.length!==0)try{await Cp(i),n.markForCut({cellIds:r})}catch(e){let t=e;Wt.error(`Failed to cut cells to clipboard`,t);try{await cr(Sp(i)),n.markForCut({cellIds:r})}catch{Ep()}}},e[2]=n,e[3]=o);let s=c(o),l;e[4]!==t||e[5]!==n||e[6]!==r.cellIds?(l=async(e,i)=>{let{before:a}=i??{},o=a!==void 0&&a;if(r.cellIds.size>0){let i=[...r.cellIds],a=Me(),s=i.map(e=>{let t=a.cellIds.findWithId(e);return{columnId:t.id,index:t.indexOfOrThrow(e)}});t.moveCellsRelativeTo({cellIds:i,targetCellId:e,position:o?`before`:`after`,previousPlacements:s}),n.clear();return}try{let n=await navigator.clipboard.read();for(let r of n)if(r.types.includes(bp)){let n=await(await r.getType(bp)).text();try{let r=xp.parse(JSON.parse(n));if(r.cells.length===0)break;let i=e,a=r.cells.toReversed();for(let e of a)t.createNewCell({cellId:i,before:o,code:e.code,name:e.name,config:e.config,hideCode:e.config?.hide_code,autoFocus:!0});return}catch(e){let t=e;Wt.warn(`Failed to parse clipboard cell data`,t)}}let r=await navigator.clipboard.readText();r.trim()?t.createNewCell({cellId:e,before:o,code:r,autoFocus:!0}):Dp()}catch(e){let t=e;Wt.error(`Failed to paste from clipboard`,t),Op()}},e[4]=t,e[5]=n,e[6]=r.cellIds,e[7]=l):l=e[7];let u=c(l),d;return e[8]!==a||e[9]!==s||e[10]!==u||e[11]!==n.clear?(d={copyCells:a,cutCells:s,pasteAtCell:u,clearPendingCut:n.clear},e[8]=a,e[9]=s,e[10]=u,e[11]=n.clear,e[12]=d):d=e[12],d}var Tp=e=>{let t=e===1?`Cell`:`${e} cells`;lr({title:`${t} copied`,description:`${t} ${e===1?`has`:`have`} been copied to clipboard.`})},Ep=()=>{lr({title:`Copy failed`,description:`Failed to copy cells to clipboard.`,variant:`danger`})},Dp=()=>{lr({title:`Nothing to paste`,description:`No cell or text found in clipboard.`,variant:`danger`})},Op=()=>{lr({title:`Paste failed`,description:`Failed to read from clipboard`,variant:`danger`})},kp=class{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):(Wt.warn(`ClipboardItem does not support ${e}`),this)}build(){return new ClipboardItem(this.items)}};function Ap(){return{selectionStart:null,selectionEnd:null,selected:new Set}}var{reducer:jp,createActions:Mp,valueAtom:Np,useActions:Pp}=ri(Ap,{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 t=r.findWithId(e.selectionStart),i=t.indexOfOrThrow(e.selectionStart),a=t.indexOfOrThrow(n),[o,s]=i<a?[i,a]:[a,i],c=t.slice(o,s+1);return{selectionStart:e.selectionStart,selectionEnd:n,selected:new Set(c)}}catch{return{selectionStart:n,selectionEnd:n,selected:new Set([n])}}},clear:e=>e.selected.size===0?e:Ap()}),Fp=()=>i(Np);function Ip(e){let t=(0,H.c)(2),n;return t[0]===e?n=t[1]:(n=r(t=>t(Np).selected.has(e)),t[0]=e,t[1]=n),i(n)}function Lp(){return Pp()}function Rp(e){return e.get(Np).selected}var{valueAtom:zp,useActions:Bp}=ri(()=>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),T(()=>{let e=document.activeElement;if(!e)return;let t=mt.findElementThroughShadowDOMs(e);t&&N(mt.parse(t.id))}),n}}),Vp=e=>r(t=>t(zp).has(e));function Hp(e){let t=(0,H.c)(2),n;return t[0]===e?n=t[1]:(n=Vp(e),t[0]=e,t[1]=n),i(n)}var Up=new WeakMap,Wp=500;function Gp(e){if(e.ctrlKey||e.metaKey||e.altKey)return``;let t=e.key.toLowerCase();return e.shiftKey?`shift+${t}`:t}function Kp(e,t){let n=Gp(e),r=e.target;if(!n||!r)return!1;let i=Up.get(r),a=n;i?.timeout&&clearTimeout(i.timeout),i&&(a=`${i.sequence} ${n}`);let o=t[a];if(o)return Up.delete(r),o();if(!i){let e=t[n];if(e)return e()}if(Object.keys(t).some(e=>e.startsWith(`${a} `))){let e=window.setTimeout(()=>{Up.delete(r)},Wp);return Up.set(r,{sequence:a,timeout:e}),!0}return Up.delete(r),!1}function qp(e){return{handle:t=>e(t),bulkHandle:t=>{let n=!0;try{for(let r of t)n&&=e(r);return n}catch{return!1}}}}function Jp(e){return{handle:t=>e([t]),bulkHandle:t=>e(t)}}function Yp(e,t){let n=(0,H.c)(12),r=D(),i=y(),a=Bp(),o;n[0]!==e||n[1]!==r?(o=()=>{r.focusCell({cellId:e})},n[0]=e,n[1]=r,n[2]=o):o=n[2];let s;n[3]!==i||n[4]!==e||n[5]!==t||n[6]!==r||n[7]!==a?(s=n=>{Xp(n.relatedTarget)||Xp(n.target)||Zp(n.relatedTarget)!==e&&Zp(n.relatedTarget?.closest(`[data-for-cell-id]`))!==e&&(a.remove(e),i.markTouched({cellId:e}),r.blurCell(),t.current&&nm(t.current))},n[3]=i,n[4]=e,n[5]=t,n[6]=r,n[7]=a,n[8]=s):s=n[8];let c;n[9]!==o||n[10]!==s?(c={onFocusWithin:o,onBlurWithin:s},n[9]=o,n[10]=s,n[11]=c):c=n[11];let{focusWithinProps:l}=ir(c);return l}function Xp(e){return e?e instanceof HTMLElement&&e.closest(`.cm-vim-panel`)!==null:!1}function Zp(e){return e&&e.getAttribute(ee)||null}function Qp(e,t){let r=(0,H.c)(34),{canMoveX:a,editorView:o,cellActionDropdownRef:s}=t,{saveOrNameNotebook:c}=Gf(),{saveCellConfig:u}=mi(),d=l(ki),f=y(),p=n(),h=Bp(),g=Si(),_=i(kt),{copyCells:v,pasteAtCell:b,cutCells:x}=wp(),S=Lp(),C=Ip(e),w=to(),T=Qn(),E=i(Ot),D;r[0]===E?D=r[1]:(D=jt(E),r[0]=E,r[1]=D);let O=D,ee;r[2]!==w||r[3]!==S?(ee={clear:()=>{w.clear(),S.clear()},extend:e=>{w.clear(),S.extend(e)},select:e=>{w.clear(),S.select(e)}},r[2]=w,r[3]=S,r[4]=ee):ee=r[4];let k=ee,te=i(Mt),ne;r[5]===te?ne=r[6]:(ne=(e,t)=>Gt(te.getHotkey(e).key)(t.nativeEvent||t),r[5]=te,r[6]=ne);let re=ne,A=Yp(e,o),j;r[7]!==f||r[8]!==O||r[9]!==a||r[10]!==s||r[11]!==e||r[12]!==v||r[13]!==x||r[14]!==T||r[15]!==o||r[16]!==C||r[17]!==re||r[18]!==_||r[19]!==b||r[20]!==w||r[21]!==g||r[22]!==u||r[23]!==c||r[24]!==k||r[25]!==d||r[26]!==p||r[27]!==h||r[28]!==E?(j={onKeyDown:t=>{if(gn.fromInput(t)){t.continuePropagation();return}let n={"Mod+ArrowUp":()=>(f.focusTopCell(),k.clear(),!0),"Mod+ArrowDown":()=>(f.focusBottomCell(),k.clear(),!0),ArrowUp:()=>(f.focusCell({cellId:e,where:`before`}),k.clear(),!0),ArrowDown:()=>(f.focusCell({cellId:e,where:`after`}),k.clear(),!0),ArrowLeft:()=>{if(a){let t=p.get(he),n=t.cellIds.findWithId(e),r=t.cellIds.indexOf(n),i=t.cellIds.at(r-1);if(i&&i.length>0){let t=tm(e,i);return f.focusCell({cellId:t,where:`exact`}),k.clear(),!0}}return!1},ArrowRight:()=>{if(a){let t=p.get(he),n=t.cellIds.findWithId(e),r=t.cellIds.indexOf(n),i=t.cellIds.at(r+1);if(i&&i.length>0){let t=tm(e,i);return f.focusCell({cellId:t,where:`exact`}),k.clear(),!0}}return!1},"Shift+ArrowUp":()=>{let t=p.get(Fe);k.extend({cellId:e,allCellIds:t});let n=t.findWithId(e).before(e);return n&&k.extend({cellId:n,allCellIds:t}),f.focusCell({cellId:e,where:`before`}),!0},"Shift+ArrowDown":()=>{let t=p.get(Fe);k.extend({cellId:e,allCellIds:t});let n=t.findWithId(e).after(e);return n&&k.extend({cellId:n,allCellIds:t}),f.focusCell({cellId:e,where:`after`}),!0},Escape:()=>p.get(at).size>0?(p.set(ze),!0):C?(k.clear(),!0):!1,Enter:()=>(h.add(e),ae(p,e),k.clear(),!0),s:()=>(c(),!0)};for(let[e,r]of Object.entries(n))if(Gt(e)(t)&&r()){t.preventDefault();return}let r={"cell.run":Jp(e=>(g(e),!0)),"cell.runAndNewBelow":Jp(e=>{g(e);let t=e[e.length-1];return f.moveToNextCell({cellId:t,before:!1}),!0}),"cell.runAndNewAbove":Jp(e=>{g(e);let t=e[0];return f.moveToNextCell({cellId:t,before:!0}),!0}),"cell.createAbove":e=>(f.createNewCell({cellId:e,before:!0}),!0),"cell.createBelow":e=>(f.createNewCell({cellId:e,before:!1}),!0),"cell.moveUp":Jp(e=>{let t=e[0];return p.get(he).cellIds.findWithId(t).first()!==t&&(e.forEach(e=>{f.moveCell({cellId:e,before:!0})}),!0)}),"cell.moveDown":Jp(e=>{let t=e[e.length-1];return p.get(he).cellIds.findWithId(t).last()!==t&&(e.toReversed().forEach(e=>{f.moveCell({cellId:e,before:!1})}),!0)}),"cell.moveLeft":qp(e=>a?(f.moveCell({cellId:e,direction:`left`}),!0):!1),"cell.moveRight":qp(e=>a?(f.moveCell({cellId:e,direction:`right`}),!0):!1),"cell.hideCode":Jp(e=>{let t=!e.map(e=>p.get(he).cellData[e]?.config||null).every($p);u({configs:Object.fromEntries(e.map(e=>[e,{hide_code:t}]))});for(let n of e)f.updateCellConfig({cellId:n,config:{hide_code:t}});if(e.length===1){let n=e[0];f.focusCell({cellId:n,where:`after`}),t?(o.current?.contentDOM.blur(),ie(n)):ae(p,n)}return!0}),"cell.focusDown":e=>(f.focusCell({cellId:e,where:`after`}),!0),"cell.focusUp":e=>(f.focusCell({cellId:e,where:`before`}),!0),"cell.sendToBottom":Jp(e=>(e.forEach(e=>{f.sendToBottom({cellId:e})}),!0)),"cell.sendToTop":Jp(e=>(e.toReversed().forEach(e=>{f.sendToTop({cellId:e})}),!0)),"cell.aiCompletion":e=>{if(!O)return!1;let t=!1;return d(n=>n?.cellId===e?(t=!0,null):{cellId:e}),t&&o.current?.focus(),!0},"cell.cellActions":()=>(s.current?.toggle(),!0),"command.copyCell":Jp(e=>(v(e),!0)),"command.cutCell":Jp(e=>(x(e),!0)),"command.pasteCell":e=>(b(e),!0),"command.createCellBefore":e=>!gn.hasModifier(t)&&(f.createNewCell({cellId:e,before:!0,autoFocus:!0}),!0),"command.createCellAfter":e=>!gn.hasModifier(t)&&(f.createNewCell({cellId:e,before:!1,autoFocus:!0}),!0),"command.createSqlCellAfter":e=>!gn.hasModifier(t)&&(m({autoInstantiate:!0,createNewCell:f.createNewCell,fromCellId:e,before:!0}),f.createNewCell({cellId:e,before:!1,autoFocus:!0,code:P.sql.defaultCode}),!0),"cell.delete":()=>{if(!E.keymap.destructive_delete)return!1;let t=i.size>=2?[...i]:[e],n=p.get(he);return t.some(e=>{let{status:t}=n.cellRuntime[e];return t===`running`||t===`queued`})?!1:w.idle?(w.submit(t),!0):(T({cellIds:t}),w.clear(),!0)}},i=Rp(p);if(_===`vim`&&Kp(t.nativeEvent||t,{j:n.ArrowDown,k:n.ArrowUp,h:n.ArrowLeft,l:n.ArrowRight,i:n.Enter,"shift+j":n[`Shift+ArrowDown`],"shift+k":n[`Shift+ArrowUp`],"g g":n[`Mod+ArrowUp`],"shift+g":n[`Mod+ArrowDown`],"d d":()=>r[`cell.delete`](),"y y":()=>(v(i.size>=2?[...i]:[e]),!0),p:()=>(b(e,{before:!1}),!0),"shift+p":()=>(b(e,{before:!0}),!0),o:()=>(f.createNewCell({cellId:e,before:!1,autoFocus:!0}),!0),"shift+o":()=>(f.createNewCell({cellId:e,before:!0,autoFocus:!0}),!0),u:()=>(f.undoDeleteCell(),!0)})){t.preventDefault();return}for(let[n,a]of Object.entries(r))if(re(n,t)){if(typeof a==`function`){if(a(e)){t.preventDefault();return}}else if(i.size>=2?a.bulkHandle([...i]):a.handle(e)){t.preventDefault();return}return}t.continuePropagation()}},r[7]=f,r[8]=O,r[9]=a,r[10]=s,r[11]=e,r[12]=v,r[13]=x,r[14]=T,r[15]=o,r[16]=C,r[17]=re,r[18]=_,r[19]=b,r[20]=w,r[21]=g,r[22]=u,r[23]=c,r[24]=k,r[25]=d,r[26]=p,r[27]=h,r[28]=E,r[29]=j):j=r[29];let{keyboardProps:M}=nr(j),N;return r[30]!==A||r[31]!==C||r[32]!==M?(N=sr(A,M,{"data-selected":C,className:`data-[selected=true]:ring-1 data-[selected=true]:ring-(--blue-8) data-[selected=true]:ring-offset-1`}),r[30]=A,r[31]=C,r[32]=M,r[33]=N):N=r[33],N}function $p(e){return e?.hide_code}function em(e,t){let n=(0,H.c)(12),r=Bp(),a=i(kt),o=i(Mt),s;if(n[0]!==o){let e=o.getHotkey(`command.vimEnterCommandMode`);s=Gt(e.key),n[0]=o,n[1]=s}else s=n[1];let c=s,l;n[2]!==e||n[3]!==r?(l=()=>{r.remove(e),ie(e),T(()=>{N(e)})},n[2]=e,n[3]=r,n[4]=l):l=n[4];let u=l,d;n[5]!==t||n[6]!==u?(d=()=>{if(!t.current){u();return}let e=t.current,n=e.state;if(qr(e))return;let r=!!n.field(ft,!1)||!!n.field(Se,!1),i=li(n)!==null;r&&nm(e),i&&di(e),!(r||i)&&u()},n[5]=t,n[6]=u,n[7]=d):d=n[7];let f=d,p;n[8]!==f||n[9]!==a||n[10]!==c?(p={onKeyDown:e=>{a===`vim`?c(e)&&f():e.key===`Escape`&&f(),e.continuePropagation()}},n[8]=f,n[9]=a,n[10]=c,n[11]=p):p=n[11];let{keyboardProps:m}=nr(p);return m}function tm(e,t){let n=document.getElementById(mt.create(e));if(!n)return t.first();let r=n.getBoundingClientRect();for(let e of t.topLevelIds){let t=document.getElementById(mt.create(e));if(t){let n=t.getBoundingClientRect();if(r.top<=n.bottom&&r.bottom>=n.top)return e}}return t.last()}function nm(e){e.state.field(ft,!1)&&e.dispatch({effects:ge.of(null)}),et(e)}var rm=50,im=4,am=60;function om(e){return Math.min(am,Math.max(im,e))}var sm=e=>{let t=(0,H.c)(13),{code:n,className:r}=e,i,a,o,s;if(t[0]!==r||t[1]!==n){let e=n.split(`
21
21
  `,rm);t[6]===r?i=t[7]:(i=cn(`cm`,`mo-code-placeholder`,r),t[6]=r,t[7]=i),a=`cell-editor-placeholder`,o=!0,s=e.map(cm),t[0]=r,t[1]=n,t[2]=i,t[3]=a,t[4]=o,t[5]=s}else i=t[2],a=t[3],o=t[4],s=t[5];let c;return t[8]!==i||t[9]!==a||t[10]!==o||t[11]!==s?(c=(0,U.jsx)(`div`,{className:i,"data-testid":a,"aria-hidden":o,children:s}),t[8]=i,t[9]=a,t[10]=o,t[11]=s,t[12]=c):c=t[12],c};function cm(e,t){let n=e.trimEnd().length;return(0,U.jsx)(`div`,{className:`mo-code-placeholder-line`,children:n>0&&(0,U.jsx)(Li,{className:`mo-code-placeholder-bar`,style:{width:`${om(n)}ch`}})},t)}var lm=e=>{let t=(0,H.c)(25),{editorView:n,code:r,currentLanguageAdapter:i,onAfterToggle:a,className:o}=e,s=o===void 0?`absolute right-3 top-2 z-20 flex hover-action gap-1`:o,c;t[0]===r?c=t[1]:(c=P.markdown.isSupported(r)||r.trim()===``,t[0]=r,t[1]=c);let l=c,u;t[2]===r?u=t[3]:(u=P.sql.isSupported(r)||r.trim()===``,t[2]=r,t[3]=u);let d=u&&i===`python`,f;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,U.jsx)(yn,{color:`var(--sky-11)`,strokeWidth:2.5,className:`w-4 h-4`}),t[4]=f):f=t[4];let p;t[5]!==i||t[6]!==n||t[7]!==a||t[8]!==d?(p=(0,U.jsx)(um,{editorView:n,currentLanguageAdapter:i,canSwitchToLanguage:d,icon:f,toType:`sql`,displayName:`SQL`,onAfterToggle:a}),t[5]=i,t[6]=n,t[7]=a,t[8]=d,t[9]=p):p=t[9];let m=l&&i===`python`,h;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,U.jsx)(Pi,{fill:`var(--sky-11)`,color:`black`,className:`w-4 h-4`}),t[10]=h):h=t[10];let g;t[11]!==i||t[12]!==n||t[13]!==a||t[14]!==m?(g=(0,U.jsx)(um,{editorView:n,currentLanguageAdapter:i,canSwitchToLanguage:m,icon:h,toType:`markdown`,displayName:`Markdown`,onAfterToggle:a}),t[11]=i,t[12]=n,t[13]=a,t[14]=m,t[15]=g):g=t[15];let _;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,U.jsx)(Ni,{fill:`var(--sky-11)`,color:`black`,className:`w-4 h-4`}),t[16]=_):_=t[16];let v;t[17]!==i||t[18]!==n?(v=(0,U.jsx)(um,{editorView:n,currentLanguageAdapter:i,canSwitchToLanguage:!0,icon:_,toType:`python`,displayName:`Python`,onAfterToggle:Ht.NOOP}),t[17]=i,t[18]=n,t[19]=v):v=t[19];let y;return t[20]!==s||t[21]!==v||t[22]!==p||t[23]!==g?(y=(0,U.jsxs)(`div`,{className:s,children:[p,g,v]}),t[20]=s,t[21]=v,t[22]=p,t[23]=g,t[24]=y):y=t[24],y},um=e=>{let t=(0,H.c)(10),{editorView:n,currentLanguageAdapter:r,canSwitchToLanguage:i,icon:a,toType:o,displayName:s,onAfterToggle:c}=e,l;t[0]!==n||t[1]!==c||t[2]!==o?(l=()=>{n&&(lt(n,{language:o}),c())},t[0]=n,t[1]=c,t[2]=o,t[3]=l):l=t[3];let u=l;if(!i||r===o)return null;let d=`View as ${s}`,f;t[4]!==u||t[5]!==a?(f=(0,U.jsx)(_n,{"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]=f):f=t[6];let p;return t[7]!==d||t[8]!==f?(p=(0,U.jsx)(hn,{content:d,children:f}),t[7]=d,t[8]=f,t[9]=p):p=t[9],p};function dm(e,t,n){return n?{code:n.code,extensions:[...t,n.extension]}:{code:e,extensions:t}}var fm=({theme:e,showPlaceholder:n,id:r,config:a,code:o,status:s,serializedEditorState:l,setEditorView:u,runCell:d,userConfig:f,editorViewRef:p,editorViewParentRef:h,hidden:g,hasOutput:v,showHiddenCode:b,languageAdapter:x,setLanguageAdapter:S,showLanguageToggles:C=!0,inlineAiTooltip:w,outputArea:T,tooltipParentSelector:E})=>{let[D,O]=t(ki),ee=$n(),{saveOrNameNotebook:k}=Gf(),te=to(),{saveCellConfig:ne}=mi(),re=s===`running`||s===`queued`,A=y(),j=Bi(),ie=x===`markdown`,M=c(()=>re?!1:te.idle&&f.keymap.destructive_delete?(te.submit([r]),!0):(ee({cellId:r}),!0)),N=c(()=>!re&&(d(),p.current&&nm(p.current),!0)),P=c(()=>{let e=!a.hide_code;return ne({configs:{[r]:{hide_code:e}}}),A.updateCellConfig({cellId:r,config:{hide_code:e}}),e}),ae=i(Nt),oe=i(Rt),se=c(()=>{m({autoInstantiate:ae,createNewCell:A.createNewCell}),a.hide_code||(ne({configs:{[r]:{hide_code:!0}}}),A.updateCellConfig({cellId:r,config:{hide_code:!0}}),A.markUntouched({cellId:r}))}),ce=c(()=>{m({autoInstantiate:ae,createNewCell:A.createNewCell})}),le=jt(f),ue=(0,V.useMemo)(()=>{let t=Ud({cellId:r,showPlaceholder:n,enableAI:le,cellActions:{...A,afterToggleMarkdown:se,afterToggleSQL:ce,onRun:N,deleteCell:M,saveNotebook:k,createManyBelow:e=>{for(let t of e.toReversed())A.createNewCell({code:t,before:!1,cellId:r,skipIfCodeExists:!0})},addOrAppendSetupCell:e=>{let t=Me();if(!t.cellIds.setupCellExists()){A.addSetupCellIfDoesntExist({code:e});return}let n=Qe(t)[_],r=n?we(n):t.cellData[_].code,i=r.trim()?`${r.trimEnd()}\n\n${e}`:e;n&&Oe(n,i),A.updateCellCode({cellId:_,code:i,formattingChange:!1})},splitCell:j,toggleHideCode:P,aiCellCompletion:()=>{if(!le)return!1;let e=!1;return O(t=>t?.cellId===r?(e=!0,null):{cellId:r}),e}},completionConfig:f.completion,acceptCompletionOnEnter:oe,keymapConfig:f.keymap,lspConfig:f.language_servers,theme:e,hotkeys:new Ut(f.keymap.overrides??{}),diagnosticsConfig:f.diagnostics,displayConfig:f.display,inlineAiTooltip:w??f.ai?.inline_tooltip??!1,tooltipParentSelector:E});return t.push(Vr.define(e=>(S(e.state.field(Pe).type),{update(e){S(e.state.field(Pe).type)}})),R.updateListener.of(e=>{e.selectionSet&&e.state.selection.ranges.some(e=>e.from!==e.to)&&b({focus:!1})}),R.domEventHandlers({focus:()=>{b({focus:!1})}})),t},[r,oe,f.keymap,f.completion,f.language_servers,f.display,f.diagnostics,f.ai?.inline_tooltip,w,E,le,e,n,A,j,P,M,N,O,se,ce,S,b,k]),de=me()&&Ie(r),fe=e=>{if(!de)return dm(o,ue,void 0);let t=Tf(r,e=>{A.updateCellCode({cellId:r,code:e,formattingChange:!0})},e);return dm(o,ue,t)},pe=c(()=>{let e=fe(o),t=new R({state:_r.create({doc:e.code,extensions:e.extensions})});u(t),de||lt(t,{language:He(t.state).type})}),he=c(()=>{qt(p.current!==null,`Editor view is not initialized`);let e=fe();p.current.dispatch({effects:[I.reconfigure.of([e.extensions]),je(p.current,{completionConfig:f.completion,hotkeysProvider:new Ut(f.keymap.overrides??{}),lspConfig:{...f.language_servers,diagnostics:f.diagnostics}})]})}),ge=c(()=>{qt(l,`Editor view is not initialized`);let e=fe(o),t=new R({state:_r.fromJSON(l,{doc:e.code,extensions:e.extensions},{history:Gr})});de||lt(t,{language:He(t.state).type}),u(t),A.clearSerializedEditorState({cellId:r})}),[_e,ve]=(0,V.useState)(l!==null);(0,V.useEffect)(()=>{if(p.current!==null){ve(!0);return}if(ve(!1),l!==null){ge(),ve(!0);return}return ut.request(r,()=>{p.current===null&&(pe(),ve(!0))}),()=>ut.cancel(r)},[r,p,ge,pe,l]),(0,V.useEffect)(()=>{p.current!==null&&he()},[he,ue,p]),(0,V.useEffect)(()=>()=>{p.current?.destroy(),p.current=null},[p]);let[ye,be]=dn({rootMargin:`300px 0px`,threshold:0});(0,V.useEffect)(()=>{_e||(be?.isIntersecting?ut.prioritize(r):ut.deprioritize(r))},[_e,be?.isIntersecting,r]);let xe=em(r,p),Se=``;return ie&&g&&v?Se=`h-0 overflow-hidden`:g&&(Se=`opacity-20 h-8 [&>div.cm-editor]:h-full [&>div.cm-editor]:overflow-hidden [&_.cm-panels]:hidden`),(0,U.jsx)(vp,{cellId:r,aiCompletionCell:D,currentCode:p.current?.state.doc.toString()??o,currentLanguageAdapter:x,declineChange:c(()=>{O(null),p.current?.focus()}),onChange:c(e=>{p.current?.dispatch({changes:{from:0,to:p.current.state.doc.length,insert:e}})}),acceptChange:c(e=>{p.current?.dispatch({changes:{from:0,to:p.current.state.doc.length,insert:e}}),p.current?.focus(),O(null)}),runCell:N,outputArea:T,children:(0,U.jsxs)(`div`,{className:`relative w-full`,ref:ye,...xe,children:[_e?(0,U.jsx)(pm,{className:Se,editorView:p.current,ref:h,hidden:g,showHiddenCode:b}):(0,U.jsx)(sm,{code:o,className:Se}),!g&&C&&(0,U.jsx)(`div`,{className:`absolute top-1 right-5`,children:(0,U.jsx)(lm,{code:o,editorView:p.current,currentLanguageAdapter:x,onAfterToggle:se})})]})})},pm=V.forwardRef((e,t)=>{let n=(0,H.c)(14),{className:r,editorView:i,hidden:a,showHiddenCode:o}=e,s=(0,V.useRef)(null),c,l;n[0]===i?(c=n[1],l=n[2]):(c=()=>{i!==null&&s.current!==null&&s.current.children.length===0&&s.current.append(i.dom)},l=[i,s],n[0]=i,n[1]=c,n[2]=l),(0,V.useEffect)(c,l);let u;n[3]===r?u=n[4]:(u=cn(`cm mathjax_ignore`,r),n[3]=r,n[4]=u);let d;n[5]!==a||n[6]!==o?(d=e=>{a&&o&&(e.stopPropagation(),o({focus:!0}))},n[5]=a,n[6]=o,n[7]=d):d=n[7];let f;n[8]===t?f=n[9]:(f=e=>{t?ep(t,s)(e):ep(s)(e)},n[8]=t,n[9]=f);let p;return n[10]!==u||n[11]!==d||n[12]!==f?(p=(0,U.jsx)(`div`,{className:u,onDoubleClick:d,ref:f,"data-testid":`cell-editor`}),n[10]=u,n[11]=d,n[12]=f,n[13]=p):p=n[13],p});pm.displayName=`CellCodeMirrorEditor`;function mm(e){let n=n=>{let r=(0,H.c)(5),a=i(tn),[o,s]=t(Sf);if(me()&&Ie(n.id)&&(rn(a.state)||o===void 0)){let e;r[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,U.jsx)(`span`,{children:`Waiting for real-time collaboration connection...`}),r[0]=e):e=r[0];let t;return r[1]===s?t=r[2]:(t=(0,U.jsx)(`div`,{className:`flex h-full w-full items-baseline p-4`,children:(0,U.jsxs)(fn,{milliseconds:1e3,fallback:null,children:[e,(0,U.jsx)(_n,{variant:`link`,onClick:()=>{s(`disabled`)},children:`Turn off real-time collaboration`})]})}),r[1]=s,r[2]=t),t}let c;return r[3]===n?c=r[4]:(c=(0,U.jsx)(e,{...n}),r[3]=n,r[4]=c),c};return n.displayName=`WithWaitUntilConnected(${e.displayName})`,n}var hm=me()?mm((0,V.memo)(fm)):(0,V.memo)(fm);export{md as _,Bp as a,to as b,ep as c,Lf as d,Af as f,pd as g,_d as h,Hp as i,Wf as l,vd as m,lm as n,Lp as o,Sf as p,Qp as r,Fp as s,hm as t,Gf as u,fd as v,no as y};
@@ -0,0 +1 @@
1
+ import{c as e,l as t,t as n,u as r}from"./useEvent-Dc9HkKI2.js";import{D as i,In as a,M as o,P as s,gr as c,xo as l,za as u}from"./cells-Bboj_mzH.js";import{t as d}from"./compiler-runtime-BQ9S8nyo.js";import{p as f}from"./config-BdH5RvM0.js";import{g as p}from"./useEventListener-CUPWI_1X.js";import{i as m}from"./utils-B4K466FK.js";import{c as h}from"./session-D7QkhMHj.js";import{T as g,_}from"./config-VEBoxYs0.js";import{t as v}from"./cn-ldLVeaqm.js";import{t as y}from"./jsx-runtime-B74pBk57.js";import{n as b}from"./paths-CzfpItSz.js";import{b as x}from"./write-secret-modal-wFgr-1dA.js";import{r as S}from"./requests-yTHMxhVa.js";var C=d();function w(){return t(u)}function T(){let t=(0,C.c)(5),[i]=e(_),a=r(u),{openAlert:o}=x(),{sendRename:s}=S(),c;return t[0]!==i.state||t[1]!==o||t[2]!==s||t[3]!==a?(c=async e=>{let t=f();return i.state===g.OPEN?(h(t=>{e===null?t.delete(m.filePath):t.set(m.filePath,e)}),s({filename:e}).then(()=>(a(e),document.title=t.app_title||b.basename(e)||`Untitled Notebook`,e)).catch(e=>(o(e.message),null))):(o(`Failed to save notebook: not connected to a kernel.`),null)},t[0]=i.state,t[1]=o,t[2]=s,t[3]=a,t[4]=c):c=t[4],n(c)}var E=y(),D=e=>{let t=(0,C.c)(12),{className:n,cellId:r,variant:c,onClick:l,formatCellName:u,skipScroll:d}=e,f=s()[r]??``,p=o().inOrderIds.indexOf(r),{showCellIfHidden:m}=i(),h=u??j,g;t[0]===n?g=t[1]:(g=v(`inline-block cursor-pointer text-link hover:underline`,n),t[0]=n,t[1]=g);let _;t[2]!==r||t[3]!==l||t[4]!==m||t[5]!==d||t[6]!==c?(_=e=>{if(r===`__scratch__`)return!1;m({cellId:r}),e.stopPropagation(),e.preventDefault(),requestAnimationFrame(()=>{A(r,c,d)&&l?.()})},t[2]=r,t[3]=l,t[4]=m,t[5]=d,t[6]=c,t[7]=_):_=t[7];let y=h(a(f,p)),b;return t[8]!==g||t[9]!==_||t[10]!==y?(b=(0,E.jsx)(`div`,{className:g,role:`link`,tabIndex:-1,onClick:_,children:y}),t[8]=g,t[9]=_,t[10]=y,t[11]=b):b=t[11],b},O=e=>{let t=(0,C.c)(2),n;return t[0]===e?n=t[1]:(n=(0,E.jsx)(D,{...e,variant:`destructive`}),t[0]=e,t[1]=n),n},k=e=>{let t=(0,C.c)(10),{cellId:n,lineNumber:r}=e,i=w(),a;t[0]!==n||t[1]!==r?(a=()=>c(n,r),t[0]=n,t[1]=r,t[2]=a):a=t[2];let o;t[3]!==n||t[4]!==i?(o=e=>n===`__scratch__`?`scratch`:`marimo://${i||`untitled`}#cell=${e}`,t[3]=n,t[4]=i,t[5]=o):o=t[5];let s;return t[6]!==n||t[7]!==a||t[8]!==o?(s=(0,E.jsx)(D,{cellId:n,onClick:a,skipScroll:!0,variant:`destructive`,className:`traceback-cell-link`,formatCellName:o}),t[6]=n,t[7]=a,t[8]=o,t[9]=s):s=t[9],s};function A(e,t,n){let r=l.create(e),i=document.getElementById(r),a=i?.classList.contains(`has-error`);return i===null?(p.error(`Cell ${r} not found on page.`),!1):(n||i.scrollIntoView({behavior:`smooth`,block:`center`}),(t===`destructive`||a&&t===void 0)&&(i.classList.add(`error-outline`),setTimeout(()=>{i.classList.remove(`error-outline`)},2e3)),(t===`focus`||!a&&t===void 0)&&(i.classList.add(`focus-outline`),setTimeout(()=>{i.classList.remove(`focus-outline`)},2e3)),!0)}function j(e){return e}export{w as a,A as i,O as n,T as o,k as r,D as t};
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./esm-D-owkyO9.js","./rolldown-runtime-B0Z9INg1.js","./dist-CibNXpH2.js","./dist-BOfh4hMd.js","./dist-Cny7_yZb.js","./dist-qhAY4L2r.js","./dist-DcvY27K9.js","./dist-DDpltFEG.js","./dist-C43s7KMp.js","./dist-DtH-7lot.js","./dist-DfGC5qxC.js","./dist-DOsgOC8X.js","./dist-BxKJ9CUC.js","./dist-1tmpVXyz.js","./dist-BmExfiwX.js","./dist-DewjJKIE.js","./dist-DF6q90J2.js","./dist-DoYtnejk.js","./dist-BZAAgYK3.js","./dist-CWcX5iL_.js","./dist-4SpsNdg9.js","./dist-COseLvbK.js","./dist-DfRK-QAy.js","./dist-uBfhY3mF.js","./dist-Cw0_qzU5.js","./dist-CdpiHIsZ.js","./dist-Cllq-3AX.js","./dist-LSsCJjA3.js","./dist-D0Fg9FgU.js","./dist-Ceg_d-nu.js","./dist-BXTY2Z6u.js","./dist-DusFODSa.js","./dist-DG2TCPkT.js","./dist-C08rfu50.js","./dist-BeKmSRy3.js","./dist-CJ4Ekjf-.js","./dist-C1ZMbzEY.js","./dist-C9ULdZil.js","./dist-PsHgCCpB.js","./dist-DmUAWIff.js","./dist-CcKu0kT5.js","./dist-BCteMNTR.js","./apl-gw27yJ2n.js","./apl-CYIAEF37.js","./asciiarmor-Cor5STs8.js","./asciiarmor-CF6FHpQl.js","./asn1-CPEENLyz.js","./asn1-CmtZ6NID.js","./brainfuck-a_fzgFtj.js","./brainfuck-vE42J6oQ.js","./cobol-BYACvGhO.js","./cobol-ttQu-eUm.js","./clike-DZROJv43.js","./clike-Bo1_pR8B.js","./clojure-sW2N62b5.js","./clojure-1zb6N0Kd.js","./css-CbZNFbVv.js","./css-aD3t-znF.js","./cmake-DA9yMhzJ.js","./cmake-DSEb40G9.js","./coffeescript-73GxLNLH.js","./coffeescript-CcHmp8ZW.js","./commonlisp-BAY0IMda.js","./commonlisp-DHrixoxv.js","./cypher-CpQ0ACJl.js","./cypher-q6-coHOK.js","./python-xiYauDc4.js","./python-C4CVWZ7v.js","./crystal-DLlr59il.js","./crystal-fOwNIMzy.js","./d-BFwRCF-p.js","./d-Drt6ZXrF.js","./diff-Ib_BKd8h.js","./diff-CYBnW6ZU.js","./dockerfile-DJkHQgkl.js","./simple-mode-DXiLM1-G.js","./dtd-DgBHwr-e.js","./dtd-DqGG8R4P.js","./dylan-fdbf6J3T.js","./dylan-BTCYgsmh.js","./ecl-K_KNI3_u.js","./ecl-BPsxRGqR.js","./eiffel-DatcW1fL.js","./eiffel-BCguJEP-.js","./elm-DbcUgz-o.js","./elm-DnNeI1M2.js","./erlang-BistxQAs.js","./erlang-DkHPV6ru.js","./factor-DwQNJbiW.js","./factor-ZZBBZpXK.js","./forth-B-tqi4f_.js","./forth-DUDizG3o.js","./fortran-C9M6nI39.js","./fortran-BarbOvgW.js","./mllike-DHDLWZl9.js","./mllike-BKN6OcTc.js","./gas-DJ-ntEw0.js","./gas-mybzrfIH.js","./gherkin-Co7qm0Mt.js","./gherkin-BlnXaZZf.js","./groovy-DkYAhc5g.js","./groovy-cYuFC_ot.js","./haskell-QbTWCmtk.js","./haskell-CuLp9g3a.js","./haxe-CmR2u-6B.js","./haxe-CiIUZbdX.js","./idl-DY5VfUGL.js","./idl-BHq7WyPV.js","./javascript-BWjar7HY.js","./javascript-D-FtdkNC.js","./julia-CBfVM-ng.js","./julia-CoYYMTcZ.js","./livescript-CC7i4CEo.js","./livescript-C1gEZ5Hk.js","./lua-1tNpM92n.js","./lua-DXBxhmso.js","./mirc-BASUkO3C.js","./mirc-CTGUd79I.js","./mathematica-DWMBVyLs.js","./mathematica-CwlrU_TQ.js","./modelica-C2NfUrdY.js","./modelica-DZs5SjV_.js","./mumps-DwVYUX8b.js","./mumps-BNg2Yq-1.js","./mbox-DvNfx9hX.js","./mbox-skR0V6cu.js","./nsis-B6H_Q9YJ.js","./nsis-DWBX_aOH.js","./ntriples-CSqEHNgf.js","./ntriples-Ck5rp6GE.js","./octave-ImTMIie9.js","./octave-BRpd3hBF.js","./oz-BuYcBdKy.js","./oz-BUEZmvHT.js","./pascal-B50DmceL.js","./pascal-DBfxUwpj.js","./perl-DmFVAwdF.js","./perl-v9vsztCj.js","./pig-BnQuru9N.js","./pig-CrKTIB-m.js","./powershell-B1pJyAAD.js","./powershell-89xdb5K_.js","./properties-Ci7guRqV.js","./properties-DaUFoXFR.js","./protobuf-CoqP8wM5.js","./protobuf-Ci5XvpF4.js","./pug-CJsoo9v0.js","./pug-DPY-Ajan.js","./puppet-C9UYpvtZ.js","./puppet-Da8ZxG7z.js","./q-CKkOe1xA.js","./q-BjtI5Irp.js","./r-Bwc-y-iL.js","./r-vSi6pWDr.js","./rpm-UQSdNQr2.js","./rpm-Cv5HmAkX.js","./ruby-CrY8zrT8.js","./ruby-CKIsIBWn.js","./sas-CssadkTB.js","./sas-D3-6PWmJ.js","./scheme-CkJWoRmu.js","./scheme-DqTb0ELD.js","./shell-FgUEpLdy.js","./shell-DySzVBqR.js","./sieve-BLxcNk7A.js","./sieve-CoBbN2aF.js","./smalltalk-d1Dbk6V4.js","./smalltalk-CJJAzHnb.js","./sparql-CUZhKeRb.js","./sparql-CjwbV0fX.js","./stylus-BvudHrj4.js","./stylus-uh0Gd-Iz.js","./swift-CUIczYYb.js","./swift-D5IK5OrP.js","./stex-3SJlFZg3.js","./stex-Dc5bKD4z.js","./verilog-DH7aBYt7.js","./verilog-DPWRmpYS.js","./tcl-SjROh4xB.js","./tcl-BvqzOD3a.js","./textile-DgW6fC9R.js","./textile--JQHE1pJ.js","./toml-BcC_uO4q.js","./toml-lWmHdWv5.js","./troff-BMlKH74u.js","./troff-r7W702V9.js","./ttcn-P2iYmK_j.js","./ttcn-1CwPIugQ.js","./ttcn-cfg-2bl9aE98.js","./ttcn-cfg-CHYEAF6D.js","./turtle-DDf6uD3p.js","./turtle-D_5eCUwg.js","./webidl-dw5if_Lv.js","./webidl-CNY2gQL0.js","./vb-CrfmF706.js","./vb-Vd6lTutg.js","./vbscript-Cpiv2llq.js","./vbscript-CcW6E3ma.js","./velocity-5N54agTA.js","./velocity-CuSicjhq.js","./vhdl-BmegRbqn.js","./vhdl-sLYad3YP.js","./xquery-CuDTgW6S.js","./xquery-d3Qdoigy.js","./yacas-Dn2coKff.js","./yacas-BjDXhrkW.js","./z80-ByJO5ysu.js","./z80-z4BkVl0y.js","./mscgen-C7woTLsY.js","./mscgen-Bo5N9WUj.js","./dist-DH7Tm1i8.js","./dist-mPh3sAH5.js","./dist-DLwSLd_v.js","./node-sql-parser-DDkYZCP2.js"])))=>i.map(i=>d[i]);
2
- import{a as e,i as t,n,r,t as i}from"./rolldown-runtime-B0Z9INg1.js";import{c as a,f as o,l as s,n as c,o as l,r as u,s as d}from"./useEvent-Dc9HkKI2.js";import{t as f}from"./react-CUdNIagt.js";import{t as p}from"./react-dom-CKsE8sC1.js";import{A as m,E as h,I as g,P as _,S as v,a as y,c as b,d as x,f as S,g as C,i as w,j as T,l as E,m as D,n as O,o as k,p as A,r as j,s as ee,t as M,u as N,x as P}from"./schemas-BL-NsLlF.js";import{t as F}from"./compiler-runtime-BQ9S8nyo.js";import{t as te}from"./debounce-aFmHgJZY.js";import{b as ne,h as I,m as re,s as L}from"./config-BdH5RvM0.js";import{_ as R,a as z,d as ie,f as ae,g as B,n as oe,o as se,r as ce}from"./useEventListener-CUPWI_1X.js";import{t as le}from"./objects-snlMn4yk.js";import{t as V}from"./invariant-Ci2dTZ72.js";import{t as ue}from"./utils-B4K466FK.js";import{d as de,p as fe,v as pe}from"./session-ztCnZJHI.js";import{A as me,C as he,E as ge,M as _e,O as ve,S as ye,j as be,k as xe,r as Se}from"./config-D7CP5wR5.js";import{n as Ce,t as H}from"./cn-ldLVeaqm.js";import{t as we}from"./jsx-runtime-B74pBk57.js";import{S as Te,T as Ee,a as De,b as Oe,c as ke,d as Ae,f as je,h as Me,i as Ne,l as Pe,p as Fe,s as Ie,t as Le,v as Re,w as ze,y as Be}from"./fullscreen-3wS6IaIC.js";import{a as Ve,i as He,n as Ue,o as We,r as Ge,t as Ke}from"./dist-DFI04FfI.js";import{c as qe,n as Je,o as Ye,t as Xe,u as Ze}from"./menu-items-D-vbZmqL.js";import{a as Qe,o as $e,r as et,s as tt}from"./use-restore-focus-D0UtBPD6.js";import{a as nt,c as rt,d as it,h as at,i as ot,l as st,n as ct,o as lt,r as ut,s as dt,t as ft}from"./select-CWHHoM53.js";import{i as pt,n as mt,r as ht,t as gt}from"./circle-CzTMKZwz.js";import{n as _t}from"./toast-DXkezxWI.js";import{i as vt,t as yt}from"./tooltip-CamoSiGF.js";import{r as bt,t as xt}from"./button-qFeU84ax.js";import{t as St}from"./createLucideIcon-rHn2EdoM.js";import{a as Ct,i as wt,n as Tt,o as Et,r as Dt}from"./paths-CzfpItSz.js";import{a as Ot,i as kt,o as At,r as jt,t as Mt}from"./useLifecycle-DKSBdWUf.js";import{t as Nt}from"./check-Wea4hZ6R.js";import{a as Pt,r as Ft}from"./useNumberFormatter-C4-_TnkF.js";import{t as It,u as Lt}from"./toDate-BbJ1_N2T.js";import{t as Rt}from"./database-zap-CrkOvbyN.js";import{C as zt,T as Bt,b as Vt,c as Ht,d as Ut,f as Wt,i as Gt,n as Kt,o as qt,s as Jt,t as Yt,u as Xt,v as Zt,w as Qt}from"./write-secret-modal-wFgr-1dA.js";import{t as $t}from"./plus-gbN72xHe.js";import{Qt as en,Ut as tn,Wt as nn,n as rn,t as an}from"./input-D4bMj5Nb.js";import{t as on}from"./trash-2-BJG-7Qob.js";import{t as sn}from"./use-toast-CC89xOwH.js";import{t as U}from"./preload-helper-uBIymjUX.js";import{$t as cn,A as ln,At as un,C as dn,D as fn,Et as pn,Ft as mn,Gt as hn,H as gn,I as _n,Jt as vn,K as yn,Kt as bn,Mt as xn,Pt as Sn,Qt as Cn,S as wn,T as Tn,Tt as En,U as Dn,Ut as On,W as kn,Wt as An,X as jn,Xt as Mn,Yt as Nn,at as Pn,b as Fn,ct as In,dt as Ln,en as Rn,f as zn,it as Bn,k as Vn,l as W,ot as Hn,p as Un,pt as Wn,q as Gn,qt as Kn,st as qn,tn as Jn,u as Yn,ut as Xn,vt as Zn,xt as Qn,z as $n,zt as er}from"./dist-Cny7_yZb.js";import{A as tr,B as nr,C as rr,D as ir,E as ar,S as or,T as sr,_ as cr,d as lr,h as ur,j as dr,k as fr,m as pr,n as mr,o as hr,s as gr,t as _r,u as vr,v as yr,z as br}from"./dist-DBMV4gqt.js";import{a as xr,i as Sr,l as Cr,n as wr,p as Tr,r as Er}from"./arrays-BqUx5USx.js";import{n as Dr}from"./once-Haz_uxEL.js";import{t as Or}from"./capabilities-BqUNf14U.js";import{t as kr}from"./cjs-C49f7GXV.js";import{t as Ar}from"./createReducer-CI8rlZE9.js";import{d as jr,l as Mr,n as Nr,o as Pr,p as Fr,r as Ir}from"./dist-qhAY4L2r.js";import{t as Lr}from"./marked.esm-B_3iMIUq.js";import{i as Rr,r as zr,t as Br}from"./strings-LjhpYwmx.js";import{t as Vr}from"./requests-yTHMxhVa.js";import{a as Hr,c as Ur,d as Wr,f as Gr,i as Kr,l as qr,n as Jr,o as Yr,r as Xr,s as Zr,t as Qr,u as $r}from"./dist-BOfh4hMd.js";import{t as ei}from"./badge-DFf033uX.js";import{a as ti,s as ni}from"./dist-LSsCJjA3.js";import{a as ri,i as ii,n as ai,r as oi,t as si}from"./dist-DusFODSa.js";import{n as ci}from"./stex-Dc5bKD4z.js";import{t as li}from"./Deferred-CrTnjj37.js";import{n as ui}from"./useTheme-CnWB5G1X.js";import{n as di}from"./useAsyncData-DucTwMkf.js";import{t as fi}from"./purify.es--06brOip.js";var pi=i((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m){if(n(c)!==null)m=!0,S||(S=!0,O());else{var t=n(l);t!==null&&j(x,t.startTime-e)}}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function D(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&j(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var k=new MessageChannel,A=k.port2;k.port1.onmessage=D,O=function(){A.postMessage(null)}}else O=function(){_(D,0)};function j(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,j(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),mi=i(((e,t)=>{t.exports=pi()})),hi=i((e=>{var t=mi(),n=f(),r=p();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function s(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function u(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function d(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=d(e),t!==null)return t;e=e.sibling}return null}var m=Object.assign,h=Symbol.for(`react.element`),g=Symbol.for(`react.transitional.element`),_=Symbol.for(`react.portal`),v=Symbol.for(`react.fragment`),y=Symbol.for(`react.strict_mode`),b=Symbol.for(`react.profiler`),x=Symbol.for(`react.consumer`),S=Symbol.for(`react.context`),C=Symbol.for(`react.forward_ref`),w=Symbol.for(`react.suspense`),T=Symbol.for(`react.suspense_list`),E=Symbol.for(`react.memo`),D=Symbol.for(`react.lazy`),O=Symbol.for(`react.activity`),k=Symbol.for(`react.memo_cache_sentinel`),A=Symbol.iterator;function j(e){return typeof e!=`object`||!e?null:(e=A&&e[A]||e[`@@iterator`],typeof e==`function`?e:null)}var ee=Symbol.for(`react.client.reference`);function M(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===ee?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case v:return`Fragment`;case b:return`Profiler`;case y:return`StrictMode`;case w:return`Suspense`;case T:return`SuspenseList`;case O:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case _:return`Portal`;case S:return e.displayName||`Context`;case x:return(e._context.displayName||`Context`)+`.Consumer`;case C:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case E:return t=e.displayName||null,t===null?M(e.type)||`Memo`:t;case D:t=e._payload,e=e._init;try{return M(e(t))}catch{}}return null}var N=Array.isArray,P=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,F=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,te={pending:!1,data:null,method:null,action:null},ne=[],I=-1;function re(e){return{current:e}}function L(e){0>I||(e.current=ne[I],ne[I]=null,I--)}function R(e,t){I++,ne[I]=e.current,e.current=t}var z=re(null),ie=re(null),ae=re(null),B=re(null);function oe(e,t){switch(R(ae,t),R(ie,e),R(z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Gd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Gd(t),e=Kd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}L(z),R(z,e)}function se(){L(z),L(ie),L(ae)}function ce(e){e.memoizedState!==null&&R(B,e);var t=z.current,n=Kd(t,e.type);t!==n&&(R(ie,e),R(z,n))}function le(e){ie.current===e&&(L(z),L(ie)),B.current===e&&(L(B),np._currentValue=te)}var V,ue;function de(e){if(V===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);V=t&&t[1]||``,ue=-1<e.stack.indexOf(`
2
+ import{a as e,i as t,n,r,t as i}from"./rolldown-runtime-B0Z9INg1.js";import{c as a,f as o,l as s,n as c,o as l,r as u,s as d}from"./useEvent-Dc9HkKI2.js";import{t as f}from"./react-CUdNIagt.js";import{t as p}from"./react-dom-CKsE8sC1.js";import{A as m,E as h,I as g,P as _,S as v,a as y,c as b,d as x,f as S,g as C,i as w,j as T,l as E,m as D,n as O,o as k,p as A,r as j,s as ee,t as M,u as N,x as P}from"./schemas-BL-NsLlF.js";import{t as F}from"./compiler-runtime-BQ9S8nyo.js";import{t as te}from"./debounce-aFmHgJZY.js";import{b as ne,h as I,m as re,s as L}from"./config-BdH5RvM0.js";import{_ as R,a as z,d as ie,f as ae,g as B,n as oe,o as se,r as ce}from"./useEventListener-CUPWI_1X.js";import{t as le}from"./objects-snlMn4yk.js";import{t as V}from"./invariant-Ci2dTZ72.js";import{t as ue}from"./utils-B4K466FK.js";import{f as de,m as fe,y as pe}from"./session-D7QkhMHj.js";import{A as me,C as he,E as ge,M as _e,O as ve,S as ye,j as be,k as xe,r as Se}from"./config-VEBoxYs0.js";import{n as Ce,t as H}from"./cn-ldLVeaqm.js";import{t as we}from"./jsx-runtime-B74pBk57.js";import{S as Te,T as Ee,a as De,b as Oe,c as ke,d as Ae,f as je,h as Me,i as Ne,l as Pe,p as Fe,s as Ie,t as Le,v as Re,w as ze,y as Be}from"./fullscreen-3wS6IaIC.js";import{a as Ve,i as He,n as Ue,o as We,r as Ge,t as Ke}from"./dist-DFI04FfI.js";import{c as qe,n as Je,o as Ye,t as Xe,u as Ze}from"./menu-items-D-vbZmqL.js";import{a as Qe,o as $e,r as et,s as tt}from"./use-restore-focus-D0UtBPD6.js";import{a as nt,c as rt,d as it,h as at,i as ot,l as st,n as ct,o as lt,r as ut,s as dt,t as ft}from"./select-CWHHoM53.js";import{i as pt,n as mt,r as ht,t as gt}from"./circle-CzTMKZwz.js";import{n as _t}from"./toast-DXkezxWI.js";import{i as vt,t as yt}from"./tooltip-CamoSiGF.js";import{r as bt,t as xt}from"./button-qFeU84ax.js";import{t as St}from"./createLucideIcon-rHn2EdoM.js";import{a as Ct,i as wt,n as Tt,o as Et,r as Dt}from"./paths-CzfpItSz.js";import{a as Ot,i as kt,o as At,r as jt,t as Mt}from"./useLifecycle-DKSBdWUf.js";import{t as Nt}from"./check-Wea4hZ6R.js";import{a as Pt,r as Ft}from"./useNumberFormatter-C4-_TnkF.js";import{t as It,u as Lt}from"./toDate-BbJ1_N2T.js";import{t as Rt}from"./database-zap-CrkOvbyN.js";import{C as zt,T as Bt,b as Vt,c as Ht,d as Ut,f as Wt,i as Gt,n as Kt,o as qt,s as Jt,t as Yt,u as Xt,v as Zt,w as Qt}from"./write-secret-modal-wFgr-1dA.js";import{t as $t}from"./plus-gbN72xHe.js";import{Qt as en,Ut as tn,Wt as nn,n as rn,t as an}from"./input-D4bMj5Nb.js";import{t as on}from"./trash-2-BJG-7Qob.js";import{t as sn}from"./use-toast-CC89xOwH.js";import{t as U}from"./preload-helper-uBIymjUX.js";import{$t as cn,A as ln,At as un,C as dn,D as fn,Et as pn,Ft as mn,Gt as hn,H as gn,I as _n,Jt as vn,K as yn,Kt as bn,Mt as xn,Pt as Sn,Qt as Cn,S as wn,T as Tn,Tt as En,U as Dn,Ut as On,W as kn,Wt as An,X as jn,Xt as Mn,Yt as Nn,at as Pn,b as Fn,ct as In,dt as Ln,en as Rn,f as zn,it as Bn,k as Vn,l as W,ot as Hn,p as Un,pt as Wn,q as Gn,qt as Kn,st as qn,tn as Jn,u as Yn,ut as Xn,vt as Zn,xt as Qn,z as $n,zt as er}from"./dist-Cny7_yZb.js";import{A as tr,B as nr,C as rr,D as ir,E as ar,S as or,T as sr,_ as cr,d as lr,h as ur,j as dr,k as fr,m as pr,n as mr,o as hr,s as gr,t as _r,u as vr,v as yr,z as br}from"./dist-DBMV4gqt.js";import{a as xr,i as Sr,l as Cr,n as wr,p as Tr,r as Er}from"./arrays-BqUx5USx.js";import{n as Dr}from"./once-Haz_uxEL.js";import{t as Or}from"./capabilities-BqUNf14U.js";import{t as kr}from"./cjs-C49f7GXV.js";import{t as Ar}from"./createReducer-CI8rlZE9.js";import{d as jr,l as Mr,n as Nr,o as Pr,p as Fr,r as Ir}from"./dist-qhAY4L2r.js";import{t as Lr}from"./marked.esm-B_3iMIUq.js";import{i as Rr,r as zr,t as Br}from"./strings-LjhpYwmx.js";import{t as Vr}from"./requests-yTHMxhVa.js";import{a as Hr,c as Ur,d as Wr,f as Gr,i as Kr,l as qr,n as Jr,o as Yr,r as Xr,s as Zr,t as Qr,u as $r}from"./dist-BOfh4hMd.js";import{t as ei}from"./badge-DFf033uX.js";import{a as ti,s as ni}from"./dist-LSsCJjA3.js";import{a as ri,i as ii,n as ai,r as oi,t as si}from"./dist-DusFODSa.js";import{n as ci}from"./stex-Dc5bKD4z.js";import{t as li}from"./Deferred-CrTnjj37.js";import{n as ui}from"./useTheme-CnWB5G1X.js";import{n as di}from"./useAsyncData-DucTwMkf.js";import{t as fi}from"./purify.es--06brOip.js";var pi=i((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m){if(n(c)!==null)m=!0,S||(S=!0,O());else{var t=n(l);t!==null&&j(x,t.startTime-e)}}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function D(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&j(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var k=new MessageChannel,A=k.port2;k.port1.onmessage=D,O=function(){A.postMessage(null)}}else O=function(){_(D,0)};function j(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,j(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),mi=i(((e,t)=>{t.exports=pi()})),hi=i((e=>{var t=mi(),n=f(),r=p();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function s(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function u(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function d(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=d(e),t!==null)return t;e=e.sibling}return null}var m=Object.assign,h=Symbol.for(`react.element`),g=Symbol.for(`react.transitional.element`),_=Symbol.for(`react.portal`),v=Symbol.for(`react.fragment`),y=Symbol.for(`react.strict_mode`),b=Symbol.for(`react.profiler`),x=Symbol.for(`react.consumer`),S=Symbol.for(`react.context`),C=Symbol.for(`react.forward_ref`),w=Symbol.for(`react.suspense`),T=Symbol.for(`react.suspense_list`),E=Symbol.for(`react.memo`),D=Symbol.for(`react.lazy`),O=Symbol.for(`react.activity`),k=Symbol.for(`react.memo_cache_sentinel`),A=Symbol.iterator;function j(e){return typeof e!=`object`||!e?null:(e=A&&e[A]||e[`@@iterator`],typeof e==`function`?e:null)}var ee=Symbol.for(`react.client.reference`);function M(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===ee?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case v:return`Fragment`;case b:return`Profiler`;case y:return`StrictMode`;case w:return`Suspense`;case T:return`SuspenseList`;case O:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case _:return`Portal`;case S:return e.displayName||`Context`;case x:return(e._context.displayName||`Context`)+`.Consumer`;case C:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case E:return t=e.displayName||null,t===null?M(e.type)||`Memo`:t;case D:t=e._payload,e=e._init;try{return M(e(t))}catch{}}return null}var N=Array.isArray,P=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,F=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,te={pending:!1,data:null,method:null,action:null},ne=[],I=-1;function re(e){return{current:e}}function L(e){0>I||(e.current=ne[I],ne[I]=null,I--)}function R(e,t){I++,ne[I]=e.current,e.current=t}var z=re(null),ie=re(null),ae=re(null),B=re(null);function oe(e,t){switch(R(ae,t),R(ie,e),R(z,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Gd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Gd(t),e=Kd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}L(z),R(z,e)}function se(){L(z),L(ie),L(ae)}function ce(e){e.memoizedState!==null&&R(B,e);var t=z.current,n=Kd(t,e.type);t!==n&&(R(ie,e),R(z,n))}function le(e){ie.current===e&&(L(z),L(ie)),B.current===e&&(L(B),np._currentValue=te)}var V,ue;function de(e){if(V===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);V=t&&t[1]||``,ue=-1<e.stack.indexOf(`
3
3
  at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
4
4
  `+V+e+ue}var fe=!1;function pe(e,t){if(!e||fe)return``;fe=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
5
5
  `),l=s.split(`