@marimo-team/frontend 0.24.1-dev2 → 0.24.1-dev3

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 (95) hide show
  1. package/dist/assets/{CellStatus-DqJypoFY.js → CellStatus-B_dBNTJO.js} +1 -1
  2. package/dist/assets/{JsonOutput-DnrBQBRT.js → JsonOutput-C5g_bqiZ.js} +1 -1
  3. package/dist/assets/{MarimoErrorOutput-BVdFtnJz.js → MarimoErrorOutput-Cb0evuEp.js} +1 -1
  4. package/dist/assets/{RenderHTML-X9kskQZ0.js → RenderHTML-BoN8Qu7U.js} +1 -1
  5. package/dist/assets/{RunButton-D83R2wvd.js → RunButton-C3V3v58F.js} +1 -1
  6. package/dist/assets/{add-cell-with-ai-HD16K3PB.js → add-cell-with-ai--yrESuLb.js} +1 -1
  7. package/dist/assets/{add-connection-dialog-V86wrXca.js → add-connection-dialog-DHyonb9T.js} +1 -1
  8. package/dist/assets/{agent-panel-XdLSrKjl.js → agent-panel-i9R2vDC5.js} +1 -1
  9. package/dist/assets/{ai-model-dropdown-BJp70TST.js → ai-model-dropdown-Wvw4ot3v.js} +1 -1
  10. package/dist/assets/{app-config-button-C2zJXSrK.js → app-config-button-DnmQED8O.js} +1 -1
  11. package/dist/assets/{blob-BKW9TqBu.js → blob-XD7AvCQ1.js} +1 -1
  12. package/dist/assets/{cell-editor-DQSrfeL3.js → cell-editor-CrWparei.js} +1 -1
  13. package/dist/assets/{cell-link-D26WjdN1.js → cell-link-WDIIwzUn.js} +1 -1
  14. package/dist/assets/{cells-DTFqEQb0.js → cells-BvgwUKB9.js} +1 -1
  15. package/dist/assets/{chat-display-CclXFQQP.js → chat-display-CvI32cPI.js} +1 -1
  16. package/dist/assets/{chat-panel-ft0VIKS8.js → chat-panel-nbCWEZX-.js} +1 -1
  17. package/dist/assets/{chat-ui-DUYenr6D.js → chat-ui-BmrjRgsi.js} +1 -1
  18. package/dist/assets/{column-preview-BLap3eAk.js → column-preview-DMqGohE5.js} +1 -1
  19. package/dist/assets/{command-palette-C7nz0zHt.js → command-palette-DCAiZSda.js} +1 -1
  20. package/dist/assets/{common-DKQZgzC9.js → common-Dx_4ekWj.js} +1 -1
  21. package/dist/assets/{components-Bf_hykBb.js → components-DVs9Yu7X.js} +1 -1
  22. package/dist/assets/config-DFK5eCC3.js +1 -0
  23. package/dist/assets/{datasource-DZgUyqAK.js → datasource-Le540Ng6.js} +1 -1
  24. package/dist/assets/{dependency-graph-panel-CH6kIoat.js → dependency-graph-panel-BsdBM_AS.js} +1 -1
  25. package/dist/assets/{documentation-panel-BQYA8gCW.js → documentation-panel-RJNMjUK6.js} +1 -1
  26. package/dist/assets/{download-_oAlkvj6.js → download-B8NwKEtr.js} +1 -1
  27. package/dist/assets/{edit-page-DnXTBsfC.js → edit-page-CvL5WAqs.js} +6 -6
  28. package/dist/assets/{error-entries-uxjSsTal.js → error-entries-yYB8PZoo.js} +1 -1
  29. package/dist/assets/{error-panel-Bq0TKquh.js → error-panel-Dr928gBs.js} +1 -1
  30. package/dist/assets/{file-explorer-panel-uhg7VNMd.js → file-explorer-panel-Brf39GIG.js} +1 -1
  31. package/dist/assets/{file-icons-V3puz20c.js → file-icons-D39zbjsS.js} +1 -1
  32. package/dist/assets/{file-name-input-DWf6YZwM.js → file-name-input-BLH5fTEA.js} +1 -1
  33. package/dist/assets/{floating-outline-Vqr5D17R.js → floating-outline-UPrDtFZF.js} +1 -1
  34. package/dist/assets/{focus-BTlyH5K_.js → focus-BArgHYf8.js} +1 -1
  35. package/dist/assets/{form-CRSnWxLR.js → form-BN1AKD58.js} +1 -1
  36. package/dist/assets/{form-Bb1JVuzT.js → form-BvzcNsxB.js} +1 -1
  37. package/dist/assets/{home-page-RduyhdYP.js → home-page-DcO0NzuV.js} +1 -1
  38. package/dist/assets/{html-to-image-BsXiWo0v.js → html-to-image-DKEUbBwc.js} +1 -1
  39. package/dist/assets/{index-C5WESBbZ.js → index-CXJA6BU5.js} +17 -17
  40. package/dist/assets/{kiosk-mode-BH15-Gn-.js → kiosk-mode-B8UhlOLw.js} +1 -1
  41. package/dist/assets/{layout-1X5SpE18.js → layout-C5In1pVG.js} +3 -3
  42. package/dist/assets/{logs-panel-CVxksxou.js → logs-panel-DItocggZ.js} +1 -1
  43. package/dist/assets/{markdown-renderer-BjuEVUOa.js → markdown-renderer-D7RLn6TA.js} +1 -1
  44. package/dist/assets/{name-cell-input-CtYGGTR5.js → name-cell-input-jausH-CL.js} +1 -1
  45. package/dist/assets/{outline-panel-BhxoKAbS.js → outline-panel-C_pASL6b.js} +1 -1
  46. package/dist/assets/{packages-panel-BWP3YWNW.js → packages-panel-DTqur75g.js} +1 -1
  47. package/dist/assets/{pair-with-agent-modal-BCMZbqSR.js → pair-with-agent-modal-DiDLAjxV.js} +1 -1
  48. package/dist/assets/{panel-accordion-state-0CKLFeAf.js → panel-accordion-state-DaMmC7UV.js} +1 -1
  49. package/dist/assets/{panels-D40pa9F1.js → panels-B2LHXcJf.js} +1 -1
  50. package/dist/assets/{process-output-WaMx3G7b.js → process-output-ClE9lj2U.js} +1 -1
  51. package/dist/assets/{radio-group-5KDs5aO1.js → radio-group-CSwRGU0A.js} +1 -1
  52. package/dist/assets/{readonly-code-display-DnHcjfFl.js → readonly-code-display-kRUXu5aJ.js} +1 -1
  53. package/dist/assets/{readonly-python-code-BV8otm7e.js → readonly-python-code-BCOkadQf.js} +1 -1
  54. package/dist/assets/{reveal-component-yVci-fc9.js → reveal-component-DpjFw5UY.js} +1 -1
  55. package/dist/assets/{run-page-aQycuCjn.js → run-page-BXPaOWqZ.js} +1 -1
  56. package/dist/assets/{scratchpad-panel-lsqN24Au.js → scratchpad-panel-GyB5PjiV.js} +1 -1
  57. package/dist/assets/{session-panel-C4JUkPt7.js → session-panel-CidCOM4_.js} +1 -1
  58. package/dist/assets/{skeleton-DOZFvsSE.js → skeleton-CHVfqr51.js} +1 -1
  59. package/dist/assets/{snippets-panel-QNY_Dl2J.js → snippets-panel-V4x4wLMQ.js} +1 -1
  60. package/dist/assets/state-C7arWhwL.js +3 -0
  61. package/dist/assets/{state-ByxLiTvP.js → state-m2zUPztG.js} +1 -1
  62. package/dist/assets/{switch-CDT2KH2g.js → switch-ulnbZFaI.js} +1 -1
  63. package/dist/assets/{terminal-UyHT9ie2.js → terminal-Bo6pnmSU.js} +1 -1
  64. package/dist/assets/{tracing-BiBPyXVg.js → tracing-Cmwuiwj9.js} +1 -1
  65. package/dist/assets/{tracing-panel-D8LtcU_g.js → tracing-panel-CCXeYfOu.js} +2 -2
  66. package/dist/assets/{tree-actions-DUAdNn1i.js → tree-actions-QMLf8Qhz.js} +1 -1
  67. package/dist/assets/{useBoolean-CgN_4RAl.js → useBoolean-C_UV6tQ7.js} +1 -1
  68. package/dist/assets/{useCellActionButton-Bp2eEIzO.js → useCellActionButton-D8qyXNKv.js} +1 -1
  69. package/dist/assets/{useDeleteCell-DO-9USfB.js → useDeleteCell-Ctnxl8AT.js} +1 -1
  70. package/dist/assets/{useDependencyPanelTab-Bi8pUBnn.js → useDependencyPanelTab-CYSEZi6j.js} +1 -1
  71. package/dist/assets/useNotebookActions-CxMrxNFT.js +12 -0
  72. package/dist/assets/{useRunCells-BpZ_0Xuz.js → useRunCells-DjQN3XYP.js} +1 -1
  73. package/dist/assets/{useSplitCell-C2fjcfID.js → useSplitCell-BG8Zd4lw.js} +1 -1
  74. package/dist/assets/{vega-component-3G_aA1Wa.js → vega-component-1VoQOWvU.js} +1 -1
  75. package/dist/index.html +26 -26
  76. package/package.json +1 -1
  77. package/src/__mocks__/requests.ts +4 -0
  78. package/src/components/editor/actions/export-dialog/__tests__/export-dialog.test.tsx +206 -34
  79. package/src/components/editor/actions/export-dialog/export-dialog.tsx +9 -3
  80. package/src/components/editor/actions/export-dialog/format-notice.tsx +69 -24
  81. package/src/components/editor/actions/export-dialog/use-export-dialog.ts +27 -2
  82. package/src/components/ui/toaster.tsx +14 -1
  83. package/src/core/islands/bridge.ts +1 -0
  84. package/src/core/mode.ts +6 -1
  85. package/src/core/network/__tests__/requests-lazy.test.ts +40 -0
  86. package/src/core/network/__tests__/requests-network.test.ts +13 -0
  87. package/src/core/network/requests-lazy.ts +11 -4
  88. package/src/core/network/requests-network.ts +8 -0
  89. package/src/core/network/requests-static.ts +1 -0
  90. package/src/core/network/requests-toasting.tsx +1 -0
  91. package/src/core/network/types.ts +5 -0
  92. package/src/core/wasm/bridge.ts +1 -0
  93. package/dist/assets/config-EoJoeZuK.js +0 -1
  94. package/dist/assets/state-Ci7n55A9.js +0 -3
  95. package/dist/assets/useNotebookActions-Bm9VzJ_M.js +0 -12
@@ -1 +1 @@
1
- import{o as I}from"./chunk-C4rtOYze.js";import{l as X}from"./useEvent-GCVIknuR.js";import{t as Z}from"./react-C60yClUi.js";import{Nt as z}from"./cells-DTFqEQb0.js";import{t as F}from"./compiler-runtime-DnimoHo0.js";import{S as $,c as ee,i as te,l as se,n as le,u as ae}from"./ai-model-dropdown-BJp70TST.js";import{D as oe,O as Q,S as ne}from"./utils-C8Yt16Y7.js";import{N as re}from"./config-EoJoeZuK.js";import{t as ie}from"./jsx-runtime-3wZU7vFS.js";import{o as ce}from"./alert-dialog-D_kB5FIu.js";import{i as de,r as he,t as me}from"./popover-B96fOqfH.js";import{l as R}from"./select-CPo-KTTe.js";import{t as U}from"./tooltip-C9LWGQ7Y.js";import{t as xe}from"./button-W__YVea9.js";import{s as B}from"./arrays-UzzAzxsG.js";import{r as Y}from"./requests-B9zEd_sW.js";import{t as pe}from"./createLucideIcon-B8oVfJNp.js";import{t as fe}from"./x-4y-nyVDU.js";import{r as H}from"./input-BN98e517.js";import{t as K}from"./settings-IZvUqDP4.js";import{a as M,c as L,n as A,o as P,p as ue,r as q,s as S,t as je,u as ve}from"./form-Bb1JVuzT.js";import{t as ge}from"./use-toast-DjpWVza6.js";import{i as be}from"./RSPContexts-oeZyXDWd.js";import{n as we}from"./useDebounce-BlgD22u_.js";import{c as ye,l as Ne,n as Ce,t as V}from"./dialog-WU4x2UpK.js";import{n as ke}from"./ImperativeModal-Dxj31V4A.js";import{t as O}from"./kbd-PEowR7op.js";import{t as _e}from"./links-BeU4kHTI.js";import{t as G}from"./Inputs-DrAa-p6i.js";var Se=pe("power-off",[["path",{d:"M18.36 6.64A9 9 0 0 1 20.77 15",key:"dxknvb"}],["path",{d:"M6.16 6.16a9 9 0 1 0 12.68 12.68",key:"1x7qb5"}],["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]),Te=F(),s=I(ie(),1);const Me=t=>{let e=(0,Te.c)(15),{description:a,disabled:f,tooltip:r}=t,i=f===void 0?!1:f,u=r===void 0?"Shutdown":r,{openConfirm:b,closeModal:l}=ke(),{sendShutdown:o}=Y(),w;e[0]===o?w=e[1]:(w=()=>{o(),setTimeout(Le,200)},e[0]=o,e[1]=w);let j=w;if(re())return null;let m=i?"disabled":"red",c;e[2]!==l||e[3]!==a||e[4]!==j||e[5]!==b?(c=h=>{h.stopPropagation(),b({title:"Shutdown",description:a,variant:"destructive",confirmAction:(0,s.jsx)(ce,{onClick:()=>{j(),l()},"aria-label":"Confirm Shutdown",children:"Shutdown"})})},e[2]=l,e[3]=a,e[4]=j,e[5]=b,e[6]=c):c=e[6];let n;e[7]===Symbol.for("react.memo_cache_sentinel")?(n=(0,s.jsx)(fe,{strokeWidth:1}),e[7]=n):n=e[7];let d;e[8]!==i||e[9]!==m||e[10]!==c?(d=(0,s.jsx)(G,{"aria-label":"Shutdown","data-testid":"shutdown-button",shape:"circle",size:"small",color:m,className:"h-[27px] w-[27px]",disabled:i,onClick:c,children:n}),e[8]=i,e[9]=m,e[10]=c,e[11]=d):d=e[11];let x;return e[12]!==d||e[13]!==u?(x=(0,s.jsx)(U,{content:u,children:d}),e[12]=d,e[13]=u,e[14]=x):x=e[14],x};function Le(){window.close()}var J=F(),W=I(Z(),1),Ae=100;const Pe=()=>{let t=(0,J.c)(37),[e,a]=ne(),{saveAppConfig:f}=Y(),r=(0,W.useId)(),i=(0,W.useId)(),u;t[0]===Symbol.for("react.memo_cache_sentinel")?(u=ve(oe),t[0]=u):u=t[0];let b;t[1]===e?b=t[2]:(b={resolver:u,defaultValues:e},t[1]=e,t[2]=b);let l=ue(b),o;t[3]!==f||t[4]!==a?(o=async p=>{await f({config:p}).then(()=>{a(p)}).catch(()=>{a(p)})},t[3]=f,t[4]=a,t[5]=o):o=t[5];let w=o,j;t[6]===w?j=t[7]:(j=p=>{w(p)},t[6]=w,t[7]=j);let m=we(j,Ae),c;t[8]===e.width?c=t[9]:(c=[e.width],t[8]=e.width,t[9]=c),(0,W.useEffect)(qe,c);let n;t[10]!==m||t[11]!==l?(n=l.handleSubmit(m),t[10]=m,t[11]=l,t[12]=n):n=t[12];let d;t[13]===Symbol.for("react.memo_cache_sentinel")?(d=(0,s.jsxs)("div",{children:[(0,s.jsx)(ae,{children:"Notebook Settings"}),(0,s.jsx)(se,{children:"Configure how your notebook or application looks and behaves."})]}),t[13]=d):d=t[13];let x;t[14]===l.control?x=t[15]:(x=(0,s.jsxs)(E,{title:"Display",children:[(0,s.jsx)(M,{control:l.control,name:"width",render:Ee}),(0,s.jsx)(M,{control:l.control,name:"app_title",render:Fe})]}),t[14]=l.control,t[15]=x);let h;t[16]===l.control?h=t[17]:(h=(0,s.jsxs)(E,{title:"Custom Files",children:[(0,s.jsx)(M,{control:l.control,name:"css_file",render:He}),(0,s.jsx)(M,{control:l.control,name:"html_head_file",render:Oe})]}),t[16]=l.control,t[17]=h);let y;t[18]===l.control?y=t[19]:(y=(0,s.jsx)(E,{title:"Data",children:(0,s.jsx)(M,{control:l.control,name:"sql_output",render:Ie})}),t[18]=l.control,t[19]=y);let N;t[20]!==r||t[21]!==i?(N=p=>{let{field:_}=p;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(P,{className:"flex flex-col gap-2",children:[(0,s.jsx)(A,{children:(0,s.jsxs)("div",{className:"flex gap-4",children:[(0,s.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,s.jsx)(z,{id:r,"data-testid":"html-checkbox",checked:_.value.includes("html"),onCheckedChange:()=>{_.onChange(B(_.value,"html"))}}),(0,s.jsx)(S,{htmlFor:r,children:"HTML"})]}),(0,s.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,s.jsx)(z,{id:i,"data-testid":"ipynb-checkbox",checked:_.value.includes("ipynb"),onCheckedChange:()=>{_.onChange(B(_.value,"ipynb"))}}),(0,s.jsx)(S,{htmlFor:i,children:"IPYNB"})]})]})}),(0,s.jsx)(L,{})]}),(0,s.jsxs)(q,{children:["When enabled, marimo will periodically save this notebook in your selected formats (HTML, IPYNB) to a folder named"," ",(0,s.jsx)(O,{className:"inline",children:"__marimo__"})," next to your notebook file."]})]})},t[20]=r,t[21]=i,t[22]=N):N=t[22];let v;t[23]!==l.control||t[24]!==N?(v=(0,s.jsx)(E,{title:"Exporting outputs",children:(0,s.jsx)(M,{control:l.control,name:"auto_download",render:N})}),t[23]=l.control,t[24]=N,t[25]=v):v=t[25];let C;t[26]!==v||t[27]!==x||t[28]!==h||t[29]!==y?(C=(0,s.jsxs)("div",{className:"grid grid-cols-2 gap-x-8 gap-y-4",children:[x,h,y,v]}),t[26]=v,t[27]=x,t[28]=h,t[29]=y,t[30]=C):C=t[30];let g;t[31]!==C||t[32]!==n?(g=(0,s.jsxs)("form",{onChange:n,className:"flex flex-col gap-6",children:[d,C]}),t[31]=C,t[32]=n,t[33]=g):g=t[33];let k;return t[34]!==l||t[35]!==g?(k=(0,s.jsx)(je,{...l,children:g}),t[34]=l,t[35]=g,t[36]=k):k=t[36],k};var E=t=>{let e=(0,J.c)(5),{title:a,children:f}=t,r;e[0]===a?r=e[1]:(r=(0,s.jsx)("h3",{className:"text-base font-semibold mb-1",children:a}),e[0]=a,e[1]=r);let i;return e[2]!==f||e[3]!==r?(i=(0,s.jsxs)("div",{className:"flex flex-col gap-y-2",children:[r,f]}),e[2]=f,e[3]=r,e[4]=i):i=e[4],i};function qe(){window.dispatchEvent(new Event("resize"))}function De(t){return(0,s.jsx)("option",{value:t,children:t},t)}function Ee(t){let{field:e}=t;return(0,s.jsxs)(P,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{children:"Width"}),(0,s.jsx)(A,{children:(0,s.jsx)(R,{"data-testid":"app-width-select",onChange:a=>e.onChange(a.target.value),value:e.value,disabled:e.disabled,className:"inline-flex mr-2",children:$().map(De)})}),(0,s.jsx)(L,{})]})}function Fe(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(P,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{children:"App title"}),(0,s.jsx)(A,{children:(0,s.jsx)(H,{...e,value:e.value??"",onChange:a=>{e.onChange(a.target.value),Q.safeParse(a.target.value).success&&(document.title=a.target.value)}})}),(0,s.jsx)(L,{})]}),(0,s.jsx)(q,{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 He(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(P,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{className:"shrink-0",children:"Custom CSS"}),(0,s.jsx)(A,{children:(0,s.jsx)(H,{...e,value:e.value??"",placeholder:"custom.css",onChange:a=>{e.onChange(a.target.value),Q.safeParse(a.target.value).success&&(document.title=a.target.value)}})}),(0,s.jsx)(L,{})]}),(0,s.jsx)(q,{children:"A filepath to a custom css file to be injected into the notebook."})]})}function Oe(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(P,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{className:"shrink-0",children:"HTML Head"}),(0,s.jsx)(A,{children:(0,s.jsx)(H,{...e,value:e.value??"",placeholder:"head.html",onChange:a=>{e.onChange(a.target.value)}})}),(0,s.jsx)(L,{})]}),(0,s.jsxs)(q,{children:["A filepath to an HTML file to be injected into the"," ",(0,s.jsx)(O,{className:"inline",children:"<head/>"})," section of the notebook. Use this to add analytics, custom fonts, meta tags, or external scripts."]})]})}function We(t){return(0,s.jsx)("option",{value:t.value,children:t.label},t.value)}function Ie(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(P,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{children:"SQL Output Type"}),(0,s.jsx)(A,{children:(0,s.jsx)(R,{"data-testid":"sql-output-select",onChange:a=>{e.onChange(a.target.value),ge({title:"Kernel Restart Required",description:"This change requires a kernel restart to take effect."})},value:e.value,disabled:e.disabled,className:"inline-flex mr-2",children:ee.map(We)})}),(0,s.jsx)(L,{})]}),(0,s.jsxs)(q,{children:["The Python type returned by a SQL cell. For best performance with large datasets, we recommend using"," ",(0,s.jsx)(O,{className:"inline",children:"native"}),". See the"," ",(0,s.jsx)(_e,{href:"https://docs.marimo.io/guides/working_with_data/sql",children:"SQL guide"})," ","for more information."]})]})}var ze=F();const Qe=t=>{let e=(0,ze.c)(32),{showAppConfig:a,disabled:f,tooltip:r}=t,i=a===void 0?!0:a,u=f===void 0?!1:f,b=r===void 0?"Settings":r,[l,o]=X(le),w=u?"disabled":"hint-green",j;e[0]===Symbol.for("react.memo_cache_sentinel")?(j=(0,s.jsx)(K,{strokeWidth:1.8}),e[0]=j):j=e[0];let m;e[1]===b?m=e[2]:(m=(0,s.jsx)(U,{content:b,children:j}),e[1]=b,e[2]=m);let c;e[3]!==u||e[4]!==w||e[5]!==m?(c=(0,s.jsx)(G,{"aria-label":"Config","data-testid":"app-config-button",shape:"circle",size:"small",className:"h-[27px] w-[27px]",disabled:u,color:w,children:m}),e[3]=u,e[4]=w,e[5]=m,e[6]=c):c=e[6];let n=c,d;e[7]===Symbol.for("react.memo_cache_sentinel")?(d=(0,s.jsxs)(Ce,{className:"w-[90vw] h-[90vh] overflow-hidden sm:max-w-5xl top-[5vh] p-0",children:[(0,s.jsx)(be,{children:(0,s.jsx)(ye,{children:"User settings"})}),(0,s.jsx)(te,{})]}),e[7]=d):d=e[7];let x=d;if(!i){let T;e[8]===n?T=e[9]:(T=(0,s.jsx)(Ne,{children:n}),e[8]=n,e[9]=T);let D;return e[10]!==o||e[11]!==l||e[12]!==T?(D=(0,s.jsxs)(V,{open:l,onOpenChange:o,children:[T,x]}),e[10]=o,e[11]=l,e[12]=T,e[13]=D):D=e[13],D}let h;e[14]===n?h=e[15]:(h=(0,s.jsx)(de,{asChild:!0,children:n}),e[14]=n,e[15]=h);let y,N;e[16]===Symbol.for("react.memo_cache_sentinel")?(y=(0,s.jsx)(Pe,{}),N=(0,s.jsx)("div",{className:"h-px bg-border my-2"}),e[16]=y,e[17]=N):(y=e[16],N=e[17]);let v;e[18]===o?v=e[19]:(v=()=>o(!0),e[18]=o,e[19]=v);let C;e[20]===Symbol.for("react.memo_cache_sentinel")?(C=(0,s.jsx)(K,{strokeWidth:1.8,className:"w-4 h-4 mr-2"}),e[20]=C):C=e[20];let g;e[21]===v?g=e[22]:(g=(0,s.jsxs)(he,{className:"w-[650px] overflow-auto max-h-[80vh] max-w-[80vw]",align:"end",side:"bottom",onFocusOutside:Re,children:[y,N,(0,s.jsxs)(xe,{onClick:v,variant:"link",className:"px-0",children:[C,"User settings"]})]}),e[21]=v,e[22]=g);let k;e[23]!==g||e[24]!==h?(k=(0,s.jsxs)(me,{children:[h,g]}),e[23]=g,e[24]=h,e[25]=k):k=e[25];let p;e[26]!==o||e[27]!==l?(p=(0,s.jsx)(V,{open:l,onOpenChange:o,children:x}),e[26]=o,e[27]=l,e[28]=p):p=e[28];let _;return e[29]!==k||e[30]!==p?(_=(0,s.jsxs)(s.Fragment,{children:[k,p]}),e[29]=k,e[30]=p,e[31]=_):_=e[31],_};function Re(t){return t.preventDefault()}export{Me as n,Se as r,Qe as t};
1
+ import{o as I}from"./chunk-C4rtOYze.js";import{l as X}from"./useEvent-GCVIknuR.js";import{t as Z}from"./react-C60yClUi.js";import{Nt as z}from"./cells-BvgwUKB9.js";import{t as F}from"./compiler-runtime-DnimoHo0.js";import{S as $,c as ee,i as te,l as se,n as le,u as ae}from"./ai-model-dropdown-Wvw4ot3v.js";import{D as oe,O as Q,S as ne}from"./utils-C8Yt16Y7.js";import{N as re}from"./config-DFK5eCC3.js";import{t as ie}from"./jsx-runtime-3wZU7vFS.js";import{o as ce}from"./alert-dialog-D_kB5FIu.js";import{i as de,r as he,t as me}from"./popover-B96fOqfH.js";import{l as R}from"./select-CPo-KTTe.js";import{t as U}from"./tooltip-C9LWGQ7Y.js";import{t as xe}from"./button-W__YVea9.js";import{s as B}from"./arrays-UzzAzxsG.js";import{r as Y}from"./requests-B9zEd_sW.js";import{t as pe}from"./createLucideIcon-B8oVfJNp.js";import{t as fe}from"./x-4y-nyVDU.js";import{r as H}from"./input-BN98e517.js";import{t as K}from"./settings-IZvUqDP4.js";import{a as M,c as L,n as A,o as P,p as ue,r as q,s as S,t as je,u as ve}from"./form-BvzcNsxB.js";import{t as ge}from"./use-toast-DjpWVza6.js";import{i as be}from"./RSPContexts-oeZyXDWd.js";import{n as we}from"./useDebounce-BlgD22u_.js";import{c as ye,l as Ne,n as Ce,t as V}from"./dialog-WU4x2UpK.js";import{n as ke}from"./ImperativeModal-Dxj31V4A.js";import{t as O}from"./kbd-PEowR7op.js";import{t as _e}from"./links-BeU4kHTI.js";import{t as G}from"./Inputs-DrAa-p6i.js";var Se=pe("power-off",[["path",{d:"M18.36 6.64A9 9 0 0 1 20.77 15",key:"dxknvb"}],["path",{d:"M6.16 6.16a9 9 0 1 0 12.68 12.68",key:"1x7qb5"}],["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]),Te=F(),s=I(ie(),1);const Me=t=>{let e=(0,Te.c)(15),{description:a,disabled:f,tooltip:r}=t,i=f===void 0?!1:f,u=r===void 0?"Shutdown":r,{openConfirm:b,closeModal:l}=ke(),{sendShutdown:o}=Y(),w;e[0]===o?w=e[1]:(w=()=>{o(),setTimeout(Le,200)},e[0]=o,e[1]=w);let j=w;if(re())return null;let m=i?"disabled":"red",c;e[2]!==l||e[3]!==a||e[4]!==j||e[5]!==b?(c=h=>{h.stopPropagation(),b({title:"Shutdown",description:a,variant:"destructive",confirmAction:(0,s.jsx)(ce,{onClick:()=>{j(),l()},"aria-label":"Confirm Shutdown",children:"Shutdown"})})},e[2]=l,e[3]=a,e[4]=j,e[5]=b,e[6]=c):c=e[6];let n;e[7]===Symbol.for("react.memo_cache_sentinel")?(n=(0,s.jsx)(fe,{strokeWidth:1}),e[7]=n):n=e[7];let d;e[8]!==i||e[9]!==m||e[10]!==c?(d=(0,s.jsx)(G,{"aria-label":"Shutdown","data-testid":"shutdown-button",shape:"circle",size:"small",color:m,className:"h-[27px] w-[27px]",disabled:i,onClick:c,children:n}),e[8]=i,e[9]=m,e[10]=c,e[11]=d):d=e[11];let x;return e[12]!==d||e[13]!==u?(x=(0,s.jsx)(U,{content:u,children:d}),e[12]=d,e[13]=u,e[14]=x):x=e[14],x};function Le(){window.close()}var J=F(),W=I(Z(),1),Ae=100;const Pe=()=>{let t=(0,J.c)(37),[e,a]=ne(),{saveAppConfig:f}=Y(),r=(0,W.useId)(),i=(0,W.useId)(),u;t[0]===Symbol.for("react.memo_cache_sentinel")?(u=ve(oe),t[0]=u):u=t[0];let b;t[1]===e?b=t[2]:(b={resolver:u,defaultValues:e},t[1]=e,t[2]=b);let l=ue(b),o;t[3]!==f||t[4]!==a?(o=async p=>{await f({config:p}).then(()=>{a(p)}).catch(()=>{a(p)})},t[3]=f,t[4]=a,t[5]=o):o=t[5];let w=o,j;t[6]===w?j=t[7]:(j=p=>{w(p)},t[6]=w,t[7]=j);let m=we(j,Ae),c;t[8]===e.width?c=t[9]:(c=[e.width],t[8]=e.width,t[9]=c),(0,W.useEffect)(qe,c);let n;t[10]!==m||t[11]!==l?(n=l.handleSubmit(m),t[10]=m,t[11]=l,t[12]=n):n=t[12];let d;t[13]===Symbol.for("react.memo_cache_sentinel")?(d=(0,s.jsxs)("div",{children:[(0,s.jsx)(ae,{children:"Notebook Settings"}),(0,s.jsx)(se,{children:"Configure how your notebook or application looks and behaves."})]}),t[13]=d):d=t[13];let x;t[14]===l.control?x=t[15]:(x=(0,s.jsxs)(E,{title:"Display",children:[(0,s.jsx)(M,{control:l.control,name:"width",render:Ee}),(0,s.jsx)(M,{control:l.control,name:"app_title",render:Fe})]}),t[14]=l.control,t[15]=x);let h;t[16]===l.control?h=t[17]:(h=(0,s.jsxs)(E,{title:"Custom Files",children:[(0,s.jsx)(M,{control:l.control,name:"css_file",render:He}),(0,s.jsx)(M,{control:l.control,name:"html_head_file",render:Oe})]}),t[16]=l.control,t[17]=h);let y;t[18]===l.control?y=t[19]:(y=(0,s.jsx)(E,{title:"Data",children:(0,s.jsx)(M,{control:l.control,name:"sql_output",render:Ie})}),t[18]=l.control,t[19]=y);let N;t[20]!==r||t[21]!==i?(N=p=>{let{field:_}=p;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(P,{className:"flex flex-col gap-2",children:[(0,s.jsx)(A,{children:(0,s.jsxs)("div",{className:"flex gap-4",children:[(0,s.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,s.jsx)(z,{id:r,"data-testid":"html-checkbox",checked:_.value.includes("html"),onCheckedChange:()=>{_.onChange(B(_.value,"html"))}}),(0,s.jsx)(S,{htmlFor:r,children:"HTML"})]}),(0,s.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,s.jsx)(z,{id:i,"data-testid":"ipynb-checkbox",checked:_.value.includes("ipynb"),onCheckedChange:()=>{_.onChange(B(_.value,"ipynb"))}}),(0,s.jsx)(S,{htmlFor:i,children:"IPYNB"})]})]})}),(0,s.jsx)(L,{})]}),(0,s.jsxs)(q,{children:["When enabled, marimo will periodically save this notebook in your selected formats (HTML, IPYNB) to a folder named"," ",(0,s.jsx)(O,{className:"inline",children:"__marimo__"})," next to your notebook file."]})]})},t[20]=r,t[21]=i,t[22]=N):N=t[22];let v;t[23]!==l.control||t[24]!==N?(v=(0,s.jsx)(E,{title:"Exporting outputs",children:(0,s.jsx)(M,{control:l.control,name:"auto_download",render:N})}),t[23]=l.control,t[24]=N,t[25]=v):v=t[25];let C;t[26]!==v||t[27]!==x||t[28]!==h||t[29]!==y?(C=(0,s.jsxs)("div",{className:"grid grid-cols-2 gap-x-8 gap-y-4",children:[x,h,y,v]}),t[26]=v,t[27]=x,t[28]=h,t[29]=y,t[30]=C):C=t[30];let g;t[31]!==C||t[32]!==n?(g=(0,s.jsxs)("form",{onChange:n,className:"flex flex-col gap-6",children:[d,C]}),t[31]=C,t[32]=n,t[33]=g):g=t[33];let k;return t[34]!==l||t[35]!==g?(k=(0,s.jsx)(je,{...l,children:g}),t[34]=l,t[35]=g,t[36]=k):k=t[36],k};var E=t=>{let e=(0,J.c)(5),{title:a,children:f}=t,r;e[0]===a?r=e[1]:(r=(0,s.jsx)("h3",{className:"text-base font-semibold mb-1",children:a}),e[0]=a,e[1]=r);let i;return e[2]!==f||e[3]!==r?(i=(0,s.jsxs)("div",{className:"flex flex-col gap-y-2",children:[r,f]}),e[2]=f,e[3]=r,e[4]=i):i=e[4],i};function qe(){window.dispatchEvent(new Event("resize"))}function De(t){return(0,s.jsx)("option",{value:t,children:t},t)}function Ee(t){let{field:e}=t;return(0,s.jsxs)(P,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{children:"Width"}),(0,s.jsx)(A,{children:(0,s.jsx)(R,{"data-testid":"app-width-select",onChange:a=>e.onChange(a.target.value),value:e.value,disabled:e.disabled,className:"inline-flex mr-2",children:$().map(De)})}),(0,s.jsx)(L,{})]})}function Fe(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(P,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{children:"App title"}),(0,s.jsx)(A,{children:(0,s.jsx)(H,{...e,value:e.value??"",onChange:a=>{e.onChange(a.target.value),Q.safeParse(a.target.value).success&&(document.title=a.target.value)}})}),(0,s.jsx)(L,{})]}),(0,s.jsx)(q,{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 He(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(P,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{className:"shrink-0",children:"Custom CSS"}),(0,s.jsx)(A,{children:(0,s.jsx)(H,{...e,value:e.value??"",placeholder:"custom.css",onChange:a=>{e.onChange(a.target.value),Q.safeParse(a.target.value).success&&(document.title=a.target.value)}})}),(0,s.jsx)(L,{})]}),(0,s.jsx)(q,{children:"A filepath to a custom css file to be injected into the notebook."})]})}function Oe(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(P,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{className:"shrink-0",children:"HTML Head"}),(0,s.jsx)(A,{children:(0,s.jsx)(H,{...e,value:e.value??"",placeholder:"head.html",onChange:a=>{e.onChange(a.target.value)}})}),(0,s.jsx)(L,{})]}),(0,s.jsxs)(q,{children:["A filepath to an HTML file to be injected into the"," ",(0,s.jsx)(O,{className:"inline",children:"<head/>"})," section of the notebook. Use this to add analytics, custom fonts, meta tags, or external scripts."]})]})}function We(t){return(0,s.jsx)("option",{value:t.value,children:t.label},t.value)}function Ie(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)(P,{className:"flex flex-row items-center space-x-1 space-y-0",children:[(0,s.jsx)(S,{children:"SQL Output Type"}),(0,s.jsx)(A,{children:(0,s.jsx)(R,{"data-testid":"sql-output-select",onChange:a=>{e.onChange(a.target.value),ge({title:"Kernel Restart Required",description:"This change requires a kernel restart to take effect."})},value:e.value,disabled:e.disabled,className:"inline-flex mr-2",children:ee.map(We)})}),(0,s.jsx)(L,{})]}),(0,s.jsxs)(q,{children:["The Python type returned by a SQL cell. For best performance with large datasets, we recommend using"," ",(0,s.jsx)(O,{className:"inline",children:"native"}),". See the"," ",(0,s.jsx)(_e,{href:"https://docs.marimo.io/guides/working_with_data/sql",children:"SQL guide"})," ","for more information."]})]})}var ze=F();const Qe=t=>{let e=(0,ze.c)(32),{showAppConfig:a,disabled:f,tooltip:r}=t,i=a===void 0?!0:a,u=f===void 0?!1:f,b=r===void 0?"Settings":r,[l,o]=X(le),w=u?"disabled":"hint-green",j;e[0]===Symbol.for("react.memo_cache_sentinel")?(j=(0,s.jsx)(K,{strokeWidth:1.8}),e[0]=j):j=e[0];let m;e[1]===b?m=e[2]:(m=(0,s.jsx)(U,{content:b,children:j}),e[1]=b,e[2]=m);let c;e[3]!==u||e[4]!==w||e[5]!==m?(c=(0,s.jsx)(G,{"aria-label":"Config","data-testid":"app-config-button",shape:"circle",size:"small",className:"h-[27px] w-[27px]",disabled:u,color:w,children:m}),e[3]=u,e[4]=w,e[5]=m,e[6]=c):c=e[6];let n=c,d;e[7]===Symbol.for("react.memo_cache_sentinel")?(d=(0,s.jsxs)(Ce,{className:"w-[90vw] h-[90vh] overflow-hidden sm:max-w-5xl top-[5vh] p-0",children:[(0,s.jsx)(be,{children:(0,s.jsx)(ye,{children:"User settings"})}),(0,s.jsx)(te,{})]}),e[7]=d):d=e[7];let x=d;if(!i){let T;e[8]===n?T=e[9]:(T=(0,s.jsx)(Ne,{children:n}),e[8]=n,e[9]=T);let D;return e[10]!==o||e[11]!==l||e[12]!==T?(D=(0,s.jsxs)(V,{open:l,onOpenChange:o,children:[T,x]}),e[10]=o,e[11]=l,e[12]=T,e[13]=D):D=e[13],D}let h;e[14]===n?h=e[15]:(h=(0,s.jsx)(de,{asChild:!0,children:n}),e[14]=n,e[15]=h);let y,N;e[16]===Symbol.for("react.memo_cache_sentinel")?(y=(0,s.jsx)(Pe,{}),N=(0,s.jsx)("div",{className:"h-px bg-border my-2"}),e[16]=y,e[17]=N):(y=e[16],N=e[17]);let v;e[18]===o?v=e[19]:(v=()=>o(!0),e[18]=o,e[19]=v);let C;e[20]===Symbol.for("react.memo_cache_sentinel")?(C=(0,s.jsx)(K,{strokeWidth:1.8,className:"w-4 h-4 mr-2"}),e[20]=C):C=e[20];let g;e[21]===v?g=e[22]:(g=(0,s.jsxs)(he,{className:"w-[650px] overflow-auto max-h-[80vh] max-w-[80vw]",align:"end",side:"bottom",onFocusOutside:Re,children:[y,N,(0,s.jsxs)(xe,{onClick:v,variant:"link",className:"px-0",children:[C,"User settings"]})]}),e[21]=v,e[22]=g);let k;e[23]!==g||e[24]!==h?(k=(0,s.jsxs)(me,{children:[h,g]}),e[23]=g,e[24]=h,e[25]=k):k=e[25];let p;e[26]!==o||e[27]!==l?(p=(0,s.jsx)(V,{open:l,onOpenChange:o,children:x}),e[26]=o,e[27]=l,e[28]=p):p=e[28];let _;return e[29]!==k||e[30]!==p?(_=(0,s.jsxs)(s.Fragment,{children:[k,p]}),e[29]=k,e[30]=p,e[31]=_):_=e[31],_};function Re(t){return t.preventDefault()}export{Me as n,Se as r,Qe as t};
@@ -1 +1 @@
1
- import{a as p}from"./markdown-renderer-BjuEVUOa.js";function u(e){return new Promise((t,n)=>{let a=new FileReader;a.onload=r=>{var o;t((o=r.target)==null?void 0:o.result)},a.onerror=r=>{n(Error(`Failed to read blob: ${r.type}`))},a.readAsDataURL(e)})}function d(e){var s;let[t,n]=e.split(",",2),a=(s=/^data:(.+);base64$/.exec(t))==null?void 0:s[1],r=atob(n),o=r.length,l=new Uint8Array(o);for(let i=0;i<o;i++)l[i]=r.charCodeAt(i);return new Blob([l],{type:a})}function b({contents:e,mimeType:t,isBase64:n}){return n?d(p(e,t)):new Blob([e],{type:t})}export{b as n,u as r,d as t};
1
+ import{a as p}from"./markdown-renderer-D7RLn6TA.js";function u(e){return new Promise((t,n)=>{let a=new FileReader;a.onload=r=>{var o;t((o=r.target)==null?void 0:o.result)},a.onerror=r=>{n(Error(`Failed to read blob: ${r.type}`))},a.readAsDataURL(e)})}function d(e){var s;let[t,n]=e.split(",",2),a=(s=/^data:(.+);base64$/.exec(t))==null?void 0:s[1],r=atob(n),o=r.length,l=new Uint8Array(o);for(let i=0;i<o;i++)l[i]=r.charCodeAt(i);return new Blob([l],{type:a})}function b({contents:e,mimeType:t,isBase64:n}){return n?d(p(e,t)):new Blob([e],{type:t})}export{b as n,u as r,d as t};
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./loro_wasm_bg-Cei5H7n0.js","./loro_wasm_bg-DIEeF9jI.js","./chunk-C4rtOYze.js"])))=>i.map(i=>d[i]);
2
- var Uf=Object.defineProperty;var hi=te=>{throw TypeError(te)};var jf=(te,H,be)=>H in te?Uf(te,H,{enumerable:!0,configurable:!0,writable:!0,value:be}):te[H]=be;var g=(te,H,be)=>jf(te,typeof H!="symbol"?H+"":H,be),Pf=(te,H,be)=>H.has(te)||hi("Cannot "+be);var gi=(te,H,be)=>(Pf(te,H,"read from private field"),be?be.call(te):H.get(te)),yi=(te,H,be)=>H.has(te)?hi("Cannot add the same private member more than once"):H instanceof WeakSet?H.add(te):H.set(te,be);import{o as bi}from"./chunk-C4rtOYze.js";import{c as Df,d as wi,f as Fr,i as J,l as jn,n as se,p as ut,s as Pn,u as q}from"./useEvent-GCVIknuR.js";import{t as Mf}from"./react-C60yClUi.js";import{$n as vi,$t as Ff,An as xi,B as Ei,Bi as Rf,Dn as Bf,E as Dn,F as Gf,H as Jf,Ht as Vf,K as Si,Li as $f,Ln as Rr,Mi as Wf,Mn as qf,Ni as Hf,Nn as Q,Nt as zf,On as Yf,Pn as Kf,Pt as ki,Ri as Ci,Rn as Br,Rr as Xf,St as Bt,Ti as Gr,Tn as Qf,Tt as Zf,U as Ti,V as Mn,W as Ni,Wt as Jr,Xn as em,Xt as Ii,Yn as Fn,Yr as Vr,Yt as $r,Zn as tm,Zt as Ai,_n as Rn,_r as Li,_t as nm,bt as rm,ct as Oi,dr as am,ea as _i,ei as Wr,en as om,fa as Bn,fn as im,gi as sm,gr as lm,gt as cm,hi as um,hr as Ui,ht as dm,i as ji,ir as fm,jn as mm,kn as pm,l as Pi,lt as Gn,m as xt,ma as qr,mr as nt,nn as hm,nr as gm,or as ym,pr as Hr,ra as bm,rn as wm,rr as vm,sr as xm,tn as Em,tr as Di,u as Mi,ut as Sm,vr as km,vt as zr,wi as Cm,xa as Tm,xn as Nm,xt as Im,y as rt,yt as dt,__tla as Am}from"./cells-DTFqEQb0.js";import{L as Fi,N as Lm,P as Yr,S as Om,T as Ri,k as _m,w as Um,z as jm}from"./zod-BIDX-mZr.js";import{t as ve}from"./compiler-runtime-DnimoHo0.js";import{t as Pm}from"./debounce-DhnxH9Rh.js";import{C as Dm,f as Mm,m as Fm,p as Rm,t as Bm,v as Gm,w as Jm}from"./ai-model-dropdown-BJp70TST.js";import{_ as Vm,c as Bi,g as $e,m as Kr,t as $m}from"./useEventListener-DpNnLPuE.js";import{t as Gt}from"./invariant-BUdrueMv.js";import{E as Xr,_ as Gi,c as Wm,g as Ji,l as Vi,v as $i}from"./utils-C8Yt16Y7.js";import{E as qm,N as Hm,O as zm,S as Wi,T as Jt,m as Ym,o as Km,r as qi,v as Et}from"./config-EoJoeZuK.js";import{n as Xm,t as Qm}from"./switch-CDT2KH2g.js";import{c as Zm,n as ep,r as tp}from"./readonly-python-code-BV8otm7e.js";import{t as np}from"./ErrorBoundary-B392qglD.js";import{t as at}from"./cn-DCUzRj2J.js";import{t as rp}from"./jsx-runtime-3wZU7vFS.js";import{l as ap,r as op,t as ip}from"./popover-B96fOqfH.js";import{Q as sp,Z as lp,__tla as cp}from"./JsonOutput-DnrBQBRT.js";import{t as Qr}from"./label-BOFHwHn7.js";import{n as up}from"./download-_oAlkvj6.js";import{t as Jn}from"./tooltip-C9LWGQ7Y.js";import{r as Zr,t as ft}from"./button-W__YVea9.js";import{At as dp,Bt as Vn,Ct as fp,Dt as mp,E as pp,Et as Hi,Ft as hp,Gt as Vt,H as $n,Ht as gp,I as yp,P as bp,Pt as wp,Qt as We,Rt as ea,St as vp,Tt as He,Ut as St,V as xp,Wt as ta,Yt as Ep,Zt as ce,_ as Sp,at as V,dt as $t,en as Wt,gt as kp,ht as Cp,lt as Tp,m as Np,ot as Ip,qt as mt,rn as Wn,st as R,ut as ze,w as Ap,xt as Lp}from"./dist-CeF1Em5L.js";import{C as Op,E as _p,I as Up,O as jp,S as Pp,a as Dp,c as Mp,n as na,r as Fp,w as Rp}from"./dist-DanVWUek.js";import{o as zi}from"./arrays-UzzAzxsG.js";import{n as Bp}from"./once-DNBWPkeJ.js";import{t as ra}from"./createReducer-C1MhlItJ.js";import{a as Gp,c as Jp,f as qn,h as Vp,i as $p,l as qt,n as Yi,o as Wp,t as qp}from"./dist-Di6rD-vJ.js";import{r as Ki}from"./strings-DmKKoXrM.js";import{r as Hn,t as Xi}from"./requests-B9zEd_sW.js";import{t as Hp}from"./createLucideIcon-B8oVfJNp.js";import{r as Qi,t as zp,__tla as Yp}from"./layout-1X5SpE18.js";import{t as Kp}from"./x-4y-nyVDU.js";import{t as Xp}from"./circle-check-CfLEHvyJ.js";import{A as Qp,E as Zp,F as eh,H as th,L as nh,U as rh,i as Zi,j as es,l as ah,n as oh,o as ts,p as ih,s as sh,z as lh}from"./add-cell-with-ai-HD16K3PB.js";import{t as ch}from"./database-zap-n8PGHE18.js";import{r as uh,t as dh}from"./file-icons-V3puz20c.js";import{t as fh}from"./components-CozWCL5N.js";import{n as mh}from"./spinner-Cj3eM5bt.js";import{n as aa,t as ns}from"./useDeleteCell-DO-9USfB.js";import{t as rs}from"./save-DeHQ9WTn.js";import{Y as ph,Z as as}from"./input-BN98e517.js";import{t as hh}from"./sparkles-DwqcWrJl.js";import{t as gh}from"./badge-D28DMr4y.js";import{t as yh}from"./preload-helper-BPPi7vOr.js";import{a as bh}from"./dist-Bm9PT5P9.js";import{t as kt}from"./use-toast-DjpWVza6.js";import{n as Ze}from"./paths-D5zczhUD.js";import{t as wh}from"./session-D-SddyN0.js";import{r as vh}from"./useTheme-CwCyrmDf.js";import{n as os}from"./copy-HCSOwOwk.js";import{k as xh}from"./usePress-Bl6X9B5M.js";import{t as Eh}from"./context-BJMN4ll3.js";import{a as Sh}from"./useRunCells-BpZ_0Xuz.js";import{c as is,i as ss,n as ls,r as kh}from"./dialog-WU4x2UpK.js";import{t as cs}from"./useHotkey-cR1R36p-.js";import{i as zn}from"./numbers-DtSpUdpO.js";import{n as us}from"./ImperativeModal-Dxj31V4A.js";import{a as Ch}from"./errors-D93OkQw8.js";import{t as K}from"./extends-BiFDv3jB.js";import{t as Ht}from"./objectWithoutPropertiesLoose-DfWeGRFv.js";import{t as Th}from"./kbd-PEowR7op.js";import{a as oa}from"./useInstallPackage-D58nBaNf.js";import{a as Nh,n as ds}from"./state-ByxLiTvP.js";import{a as Ih,o as Ah}from"./cell-link-D26WjdN1.js";import{r as fs}from"./html-to-image-BsXiWo0v.js";import{a as Lh}from"./focus-BTlyH5K_.js";import{n as Oh}from"./useAsyncData-BcvSvTUt.js";import{a as _h,o as ms,r as Uh,s as ps,t as jh}from"./command-D5LtSvbN.js";import{a as hs}from"./renderShortcut-C6HKXhBl.js";import{n as Ph,t as Dh}from"./icons-BwSNDWAP.js";import{n as Ct}from"./esm-RBKN8Dn2.js";import{t as gs}from"./dist-yM9CbJ9j.js";import{t as Mh}from"./requests-CWbKU3x_.js";import{n as Fh}from"./formatting-CjSzbmdF.js";import{t as Rh}from"./useSplitCell-C2fjcfID.js";import{t as ia}from"./state-BFx9-sFK.js";import{n as Bh,r as Gh,t as ys}from"./panel-accordion-state-0CKLFeAf.js";import{co as Jh,do as sa,fo as Vh,ft as $h,go as Tt,ho as bs,lo as la,mo as ws,oo as Wh,po as qh,so as vs,uo as xs,__tla as Hh}from"./loro_wasm_bg-DIEeF9jI.js";import{t as zh}from"./ws-CNqquaud.js";import{t as Es}from"./Inputs-DrAa-p6i.js";import{r as Yh,t as Kh}from"./skeleton-DOZFvsSE.js";let ca,zt,Yn,Kn,Xn,ua,xe,Ss,ks,Cs,Ts,da,fa,pt,Ns,Is,As,Yt,Qn,Ls,Xh=Promise.all([(()=>{try{return Am}catch{}})(),(()=>{try{return cp}catch{}})(),(()=>{try{return Yp}catch{}})(),(()=>{try{return Hh}catch{}})()]).then(async()=>{var On,ui,Se,ke,Ce,Te,Ne,Ie,Ae,Le,Oe,_e,Ue,je,Pe,De,Me,Fe,Re,Be,Ge;var te=Hp("file-pen",[["path",{d:"M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34",key:"o6klzx"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z",key:"zhnas1"}]]);const H={showInput:"Mod-l",acceptEdit:"Mod-y",rejectEdit:"Mod-u"};var be=300;const It=Vt.define({combine:t=>Wn(t,{onError:console.error,inputDebounceTime:be,keymaps:H},{onError:(e,n)=>e&&n,inputDebounceTime:(e,n)=>e&&n,keymaps:(e,n)=>e&&n})}),ot=ce.define(),it=We.define({create(){return{show:!1,lineFrom:0,lineTo:0}},update(t,e){for(let n of e.effects)if(n.is(ot))return n.value;return t}}),At=ce.define(),Lt=ce.define(),pa=We.define({create(){return{shouldFocus:!1,inputValue:""}},update(t,e){let n=t;for(let r of e.effects)r.is(At)&&(n={...n,inputValue:r.value}),r.is(Lt)&&(n={...n,shouldFocus:r.value});return n}}),Kt=ce.define(),Ot=We.define({create(){return null},update(t,e){for(let n of e.effects)if(n.is(Kt))return n.value;return t}}),ht=ce.define(),ha=We.define({create(){return!1},update(t,e){for(let n of e.effects)if(n.is(ht))return n.value;return t}});var Os=1;const ga=t=>{let{state:e}=t,n=e.selection.main;if(n.empty)return!1;let r=e.doc,a=r.lineAt(n.from),o=r.lineAt(n.to);if(e.sliceDoc(a.from,o.to).trim().length<Os)return!1;let i=Math.max(1,Math.min(a.number,r.lines)),s=Math.max(1,Math.min(o.number,r.lines));return t.dispatch({effects:[ot.of({show:!0,lineFrom:i,lineTo:s}),Lt.of(!0),At.of("")],selection:St.cursor(a.from)}),!0},ya=t=>t.state.field(Ot)?(t.dispatch({effects:[Kt.of(null),ot.of({show:!1,lineFrom:0,lineTo:0}),Lt.of(!1),At.of(""),ht.of(!1)]}),!0):!1,ba=t=>{let e=t.state.field(Ot);return e?(t.dispatch({changes:{from:e.from,to:e.to,insert:e.oldCode},effects:[Kt.of(null),ot.of({show:!1,lineFrom:0,lineTo:0}),Lt.of(!1),At.of(""),ht.of(!1)]}),!0):!1};var Zn={mac:"\u2318",windows:"\u229E Win",default:"Ctrl"};function _s(){return navigator.platform.startsWith("Mac")?Zn.mac:navigator.platform.startsWith("Win")?Zn.windows:Zn.default}function er(t){return t.replace("Mod",_s()).replace("-"," ").toUpperCase()}function pe(t,e){let n=document.createElement(t);return n.className=e,n}function Us(t,e,n=void 0){let r=()=>{};return(...a)=>(r(),new Promise((o,i)=>{let s=setTimeout(()=>o(t(...a)),e);r=()=>{clearTimeout(s),n!==void 0&&i(n)}}))}var Xt=We.define({create(){return{suggestion:null}},update(t,e){let n=e.effects.find(r=>r.is(Qt));return!e.docChanged&&!n&&!e.selection?t:n&&e.state.doc===n.value.doc?{suggestion:n.value.text}:{suggestion:null}}}),Qt=ce.define();function js(t,e){let n=t.state.selection.main.head,r=[],a=V.widget({widget:new Ps(e),side:1});return r.push(a.range(n)),V.set(r)}var Ps=class extends $t{constructor(e){super();g(this,"suggestion");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
+ var Uf=Object.defineProperty;var hi=te=>{throw TypeError(te)};var jf=(te,H,be)=>H in te?Uf(te,H,{enumerable:!0,configurable:!0,writable:!0,value:be}):te[H]=be;var g=(te,H,be)=>jf(te,typeof H!="symbol"?H+"":H,be),Pf=(te,H,be)=>H.has(te)||hi("Cannot "+be);var gi=(te,H,be)=>(Pf(te,H,"read from private field"),be?be.call(te):H.get(te)),yi=(te,H,be)=>H.has(te)?hi("Cannot add the same private member more than once"):H instanceof WeakSet?H.add(te):H.set(te,be);import{o as bi}from"./chunk-C4rtOYze.js";import{c as Df,d as wi,f as Fr,i as J,l as jn,n as se,p as ut,s as Pn,u as q}from"./useEvent-GCVIknuR.js";import{t as Mf}from"./react-C60yClUi.js";import{$n as vi,$t as Ff,An as xi,B as Ei,Bi as Rf,Dn as Bf,E as Dn,F as Gf,H as Jf,Ht as Vf,K as Si,Li as $f,Ln as Rr,Mi as Wf,Mn as qf,Ni as Hf,Nn as Q,Nt as zf,On as Yf,Pn as Kf,Pt as ki,Ri as Ci,Rn as Br,Rr as Xf,St as Bt,Ti as Gr,Tn as Qf,Tt as Zf,U as Ti,V as Mn,W as Ni,Wt as Jr,Xn as em,Xt as Ii,Yn as Fn,Yr as Vr,Yt as $r,Zn as tm,Zt as Ai,_n as Rn,_r as Li,_t as nm,bt as rm,ct as Oi,dr as am,ea as _i,ei as Wr,en as om,fa as Bn,fn as im,gi as sm,gr as lm,gt as cm,hi as um,hr as Ui,ht as dm,i as ji,ir as fm,jn as mm,kn as pm,l as Pi,lt as Gn,m as xt,ma as qr,mr as nt,nn as hm,nr as gm,or as ym,pr as Hr,ra as bm,rn as wm,rr as vm,sr as xm,tn as Em,tr as Di,u as Mi,ut as Sm,vr as km,vt as zr,wi as Cm,xa as Tm,xn as Nm,xt as Im,y as rt,yt as dt,__tla as Am}from"./cells-BvgwUKB9.js";import{L as Fi,N as Lm,P as Yr,S as Om,T as Ri,k as _m,w as Um,z as jm}from"./zod-BIDX-mZr.js";import{t as ve}from"./compiler-runtime-DnimoHo0.js";import{t as Pm}from"./debounce-DhnxH9Rh.js";import{C as Dm,f as Mm,m as Fm,p as Rm,t as Bm,v as Gm,w as Jm}from"./ai-model-dropdown-Wvw4ot3v.js";import{_ as Vm,c as Bi,g as $e,m as Kr,t as $m}from"./useEventListener-DpNnLPuE.js";import{t as Gt}from"./invariant-BUdrueMv.js";import{E as Xr,_ as Gi,c as Wm,g as Ji,l as Vi,v as $i}from"./utils-C8Yt16Y7.js";import{E as qm,N as Hm,O as zm,S as Wi,T as Jt,m as Ym,o as Km,r as qi,v as Et}from"./config-DFK5eCC3.js";import{n as Xm,t as Qm}from"./switch-ulnbZFaI.js";import{c as Zm,n as ep,r as tp}from"./readonly-python-code-BCOkadQf.js";import{t as np}from"./ErrorBoundary-B392qglD.js";import{t as at}from"./cn-DCUzRj2J.js";import{t as rp}from"./jsx-runtime-3wZU7vFS.js";import{l as ap,r as op,t as ip}from"./popover-B96fOqfH.js";import{Q as sp,Z as lp,__tla as cp}from"./JsonOutput-C5g_bqiZ.js";import{t as Qr}from"./label-BOFHwHn7.js";import{n as up}from"./download-B8NwKEtr.js";import{t as Jn}from"./tooltip-C9LWGQ7Y.js";import{r as Zr,t as ft}from"./button-W__YVea9.js";import{At as dp,Bt as Vn,Ct as fp,Dt as mp,E as pp,Et as Hi,Ft as hp,Gt as Vt,H as $n,Ht as gp,I as yp,P as bp,Pt as wp,Qt as We,Rt as ea,St as vp,Tt as He,Ut as St,V as xp,Wt as ta,Yt as Ep,Zt as ce,_ as Sp,at as V,dt as $t,en as Wt,gt as kp,ht as Cp,lt as Tp,m as Np,ot as Ip,qt as mt,rn as Wn,st as R,ut as ze,w as Ap,xt as Lp}from"./dist-CeF1Em5L.js";import{C as Op,E as _p,I as Up,O as jp,S as Pp,a as Dp,c as Mp,n as na,r as Fp,w as Rp}from"./dist-DanVWUek.js";import{o as zi}from"./arrays-UzzAzxsG.js";import{n as Bp}from"./once-DNBWPkeJ.js";import{t as ra}from"./createReducer-C1MhlItJ.js";import{a as Gp,c as Jp,f as qn,h as Vp,i as $p,l as qt,n as Yi,o as Wp,t as qp}from"./dist-Di6rD-vJ.js";import{r as Ki}from"./strings-DmKKoXrM.js";import{r as Hn,t as Xi}from"./requests-B9zEd_sW.js";import{t as Hp}from"./createLucideIcon-B8oVfJNp.js";import{r as Qi,t as zp,__tla as Yp}from"./layout-C5In1pVG.js";import{t as Kp}from"./x-4y-nyVDU.js";import{t as Xp}from"./circle-check-CfLEHvyJ.js";import{A as Qp,E as Zp,F as eh,H as th,L as nh,U as rh,i as Zi,j as es,l as ah,n as oh,o as ts,p as ih,s as sh,z as lh}from"./add-cell-with-ai--yrESuLb.js";import{t as ch}from"./database-zap-n8PGHE18.js";import{r as uh,t as dh}from"./file-icons-D39zbjsS.js";import{t as fh}from"./components-CozWCL5N.js";import{n as mh}from"./spinner-Cj3eM5bt.js";import{n as aa,t as ns}from"./useDeleteCell-Ctnxl8AT.js";import{t as rs}from"./save-DeHQ9WTn.js";import{Y as ph,Z as as}from"./input-BN98e517.js";import{t as hh}from"./sparkles-DwqcWrJl.js";import{t as gh}from"./badge-D28DMr4y.js";import{t as yh}from"./preload-helper-BPPi7vOr.js";import{a as bh}from"./dist-Bm9PT5P9.js";import{t as kt}from"./use-toast-DjpWVza6.js";import{n as Ze}from"./paths-D5zczhUD.js";import{t as wh}from"./session-D-SddyN0.js";import{r as vh}from"./useTheme-CwCyrmDf.js";import{n as os}from"./copy-HCSOwOwk.js";import{k as xh}from"./usePress-Bl6X9B5M.js";import{t as Eh}from"./context-BJMN4ll3.js";import{a as Sh}from"./useRunCells-DjQN3XYP.js";import{c as is,i as ss,n as ls,r as kh}from"./dialog-WU4x2UpK.js";import{t as cs}from"./useHotkey-cR1R36p-.js";import{i as zn}from"./numbers-DtSpUdpO.js";import{n as us}from"./ImperativeModal-Dxj31V4A.js";import{a as Ch}from"./errors-D93OkQw8.js";import{t as K}from"./extends-BiFDv3jB.js";import{t as Ht}from"./objectWithoutPropertiesLoose-DfWeGRFv.js";import{t as Th}from"./kbd-PEowR7op.js";import{a as oa}from"./useInstallPackage-D58nBaNf.js";import{a as Nh,n as ds}from"./state-m2zUPztG.js";import{a as Ih,o as Ah}from"./cell-link-WDIIwzUn.js";import{r as fs}from"./html-to-image-DKEUbBwc.js";import{a as Lh}from"./focus-BArgHYf8.js";import{n as Oh}from"./useAsyncData-BcvSvTUt.js";import{a as _h,o as ms,r as Uh,s as ps,t as jh}from"./command-D5LtSvbN.js";import{a as hs}from"./renderShortcut-C6HKXhBl.js";import{n as Ph,t as Dh}from"./icons-BwSNDWAP.js";import{n as Ct}from"./esm-RBKN8Dn2.js";import{t as gs}from"./dist-yM9CbJ9j.js";import{t as Mh}from"./requests-CWbKU3x_.js";import{n as Fh}from"./formatting-CjSzbmdF.js";import{t as Rh}from"./useSplitCell-BG8Zd4lw.js";import{t as ia}from"./state-BFx9-sFK.js";import{n as Bh,r as Gh,t as ys}from"./panel-accordion-state-DaMmC7UV.js";import{co as Jh,do as sa,fo as Vh,ft as $h,go as Tt,ho as bs,lo as la,mo as ws,oo as Wh,po as qh,so as vs,uo as xs,__tla as Hh}from"./loro_wasm_bg-DIEeF9jI.js";import{t as zh}from"./ws-CNqquaud.js";import{t as Es}from"./Inputs-DrAa-p6i.js";import{r as Yh,t as Kh}from"./skeleton-CHVfqr51.js";let ca,zt,Yn,Kn,Xn,ua,xe,Ss,ks,Cs,Ts,da,fa,pt,Ns,Is,As,Yt,Qn,Ls,Xh=Promise.all([(()=>{try{return Am}catch{}})(),(()=>{try{return cp}catch{}})(),(()=>{try{return Yp}catch{}})(),(()=>{try{return Hh}catch{}})()]).then(async()=>{var On,ui,Se,ke,Ce,Te,Ne,Ie,Ae,Le,Oe,_e,Ue,je,Pe,De,Me,Fe,Re,Be,Ge;var te=Hp("file-pen",[["path",{d:"M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34",key:"o6klzx"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z",key:"zhnas1"}]]);const H={showInput:"Mod-l",acceptEdit:"Mod-y",rejectEdit:"Mod-u"};var be=300;const It=Vt.define({combine:t=>Wn(t,{onError:console.error,inputDebounceTime:be,keymaps:H},{onError:(e,n)=>e&&n,inputDebounceTime:(e,n)=>e&&n,keymaps:(e,n)=>e&&n})}),ot=ce.define(),it=We.define({create(){return{show:!1,lineFrom:0,lineTo:0}},update(t,e){for(let n of e.effects)if(n.is(ot))return n.value;return t}}),At=ce.define(),Lt=ce.define(),pa=We.define({create(){return{shouldFocus:!1,inputValue:""}},update(t,e){let n=t;for(let r of e.effects)r.is(At)&&(n={...n,inputValue:r.value}),r.is(Lt)&&(n={...n,shouldFocus:r.value});return n}}),Kt=ce.define(),Ot=We.define({create(){return null},update(t,e){for(let n of e.effects)if(n.is(Kt))return n.value;return t}}),ht=ce.define(),ha=We.define({create(){return!1},update(t,e){for(let n of e.effects)if(n.is(ht))return n.value;return t}});var Os=1;const ga=t=>{let{state:e}=t,n=e.selection.main;if(n.empty)return!1;let r=e.doc,a=r.lineAt(n.from),o=r.lineAt(n.to);if(e.sliceDoc(a.from,o.to).trim().length<Os)return!1;let i=Math.max(1,Math.min(a.number,r.lines)),s=Math.max(1,Math.min(o.number,r.lines));return t.dispatch({effects:[ot.of({show:!0,lineFrom:i,lineTo:s}),Lt.of(!0),At.of("")],selection:St.cursor(a.from)}),!0},ya=t=>t.state.field(Ot)?(t.dispatch({effects:[Kt.of(null),ot.of({show:!1,lineFrom:0,lineTo:0}),Lt.of(!1),At.of(""),ht.of(!1)]}),!0):!1,ba=t=>{let e=t.state.field(Ot);return e?(t.dispatch({changes:{from:e.from,to:e.to,insert:e.oldCode},effects:[Kt.of(null),ot.of({show:!1,lineFrom:0,lineTo:0}),Lt.of(!1),At.of(""),ht.of(!1)]}),!0):!1};var Zn={mac:"\u2318",windows:"\u229E Win",default:"Ctrl"};function _s(){return navigator.platform.startsWith("Mac")?Zn.mac:navigator.platform.startsWith("Win")?Zn.windows:Zn.default}function er(t){return t.replace("Mod",_s()).replace("-"," ").toUpperCase()}function pe(t,e){let n=document.createElement(t);return n.className=e,n}function Us(t,e,n=void 0){let r=()=>{};return(...a)=>(r(),new Promise((o,i)=>{let s=setTimeout(()=>o(t(...a)),e);r=()=>{clearTimeout(s),n!==void 0&&i(n)}}))}var Xt=We.define({create(){return{suggestion:null}},update(t,e){let n=e.effects.find(r=>r.is(Qt));return!e.docChanged&&!n&&!e.selection?t:n&&e.state.doc===n.value.doc?{suggestion:n.value.text}:{suggestion:null}}}),Qt=ce.define();function js(t,e){let n=t.state.selection.main.head,r=[],a=V.widget({widget:new Ps(e),side:1});return r.push(a.range(n)),V.set(r)}var Ps=class extends $t{constructor(e){super();g(this,"suggestion");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}},Ds=class{constructor(t){g(this,"cache",new Map);g(this,"timeout");this.timeout=t}get(t){let e=this.cache.get(t);return e?Date.now()-e.timestamp>this.timeout?(this.cache.delete(t),null):e.result:null}set(t,e){this.cache.set(t,{result:e,timestamp:Date.now()})}},Ms=(t,e)=>ze.fromClass(class{constructor(){g(this,"abortController",null);g(this,"cache");this.cache=new Ds(e.cacheTimeout??1e3)}async update(n){var i,s,c,l,u;if(!n.docChanged||((s=(i=e.events)==null?void 0:i.beforeSuggestionFetch)==null?void 0:s.call(i,n.view))===!1)return;(c=this.abortController)==null||c.abort(),this.abortController=new AbortController;let r=n.state.doc,a=r.toString(),o=this.cache.get(a);if(o){n.view.dispatch({effects:Qt.of({text:o,doc:r})});return}try{let d=await t(n.state,this.abortController.signal,n.view);if(this.abortController.signal.aborted||((u=(l=e.events)==null?void 0:l.shouldShowSuggestion)==null?void 0:u.call(l,n.view,d))===!1)return;this.cache.set(a,d),n.view.dispatch({effects:Qt.of({text:d,doc:r})})}catch(d){d instanceof Error&&d.name!=="AbortError"&&console.error("Suggestion fetch error:",d)}}destroy(){var n;(n=this.abortController)==null||n.abort()}}),Fs=ze.fromClass(class{constructor(){g(this,"decorations");this.decorations=V.none}update(t){var n;let e=(n=t.state.field(Xt))==null?void 0:n.suggestion;if(!e){this.decorations=V.none;return}this.decorations=js(t.view,e)}},{decorations:t=>t.decorations});function Rs(t,e,n,r){return{...t.changeByRange(a=>{if(a===t.selection.main)return{changes:{from:n,to:r,insert:e},range:St.cursor(n+e.length)};let o=r-n;return!a.empty||o&&t.sliceDoc(a.from-o,a.from)!==t.sliceDoc(n,r)?{range:a}:{changes:{from:a.from-o,to:a.from,insert:e},range:St.cursor(a.from-o+e.length)}}),userEvent:"input.complete"}}var Bs=t=>{var r,a,o;let e=(r=t.state.field(Xt))==null?void 0:r.suggestion;if(!e)return!1;let n=t.state.facet(tr);return t.dispatch({...Rs(t.state,e,t.state.selection.main.head,t.state.selection.main.head)}),(o=(a=n.events)==null?void 0:a.onSuggestionAccepted)==null||o.call(a,t,e),!0},wa=t=>{var r,a,o;let e=(r=t.state.field(Xt))==null?void 0:r.suggestion;if(!e)return!1;let n=t.state.facet(tr);return t.dispatch({effects:Qt.of({text:null,doc:t.state.doc})}),(o=(a=n.events)==null?void 0:a.onSuggestionRejected)==null||o.call(a,t,e),!0},Gs=He.of([{key:"Tab",run:Bs},{key:"Escape",run:wa}]),tr=Vt.define({combine:t=>t.at(-1)});function va(t){let{delay:e=500,includeKeymap:n=!0}=t,r=Us(t.fetchFn,e);return[Xt,tr.of(t),Ms(r,t),Fs,n?Gs:[]]}const Js=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 Vs(t){var s,c;let e=t.state.facet(It),n={...H,...e.keymaps},r=t.state.facet(Zt),a=pe("div","cm-ai-tooltip").appendChild(pe("div","cm-ai-tooltip-button")),o=a.appendChild(document.createElement("span"));o.textContent=`${r.label} `;let i=o.appendChild(document.createElement("span"));return i.className="hotkey",i.textContent=er(n.showInput),(s=a.querySelector("span"))==null||s.addEventListener("mousedown",l=>{l.stopPropagation(),l.button===0&&l.preventDefault()}),(c=a.querySelector("span"))==null||c.addEventListener("click",l=>{l.preventDefault(),ga(t)}),a}const Zt=Vt.define({combine(t){return Wn(t,{render:Vs,hideOnBlur:!1,label:"Edit with AI"})}}),$s=ze.fromClass((ui=class{constructor(t){g(this,"view");g(this,"suppress");g(this,"dom");g(this,"mousedown",()=>{this.suppress=!0});g(this,"mouseup",()=>{this.suppress=!1,this.display(this.view)});g(this,"scroll",()=>{this.display(this.view)});g(this,"windowScroll",()=>{this.display(this.view)});yi(this,On,t=>{var n;let e=t.state.selection.ranges.find(r=>!r.empty);if(e&&!this.suppress){let r=t.coordsAtPos(e.from),a=t.coordsAtPos(e.to);if(!r||!a)return;let o=t.dom.getBoundingClientRect(),i=(n=t.dom.parentElement)==null?void 0:n.getBoundingClientRect(),s=v=>v.top>=o.top&&v.top<=o.bottom&&v.left>=o.left&&v.left<=o.right,c=v=>!i||v.top>=i.top&&v.top<=i.bottom&&v.left>=i.left&&v.left<=i.right,l=s(r)||s(a),u=c(r)||c(a);if(!l||!u){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}this.dom.style.display="flex",this.dom.setAttribute("aria-hidden","false");let d=this.dom.getBoundingClientRect(),p=s(r)?r:a,f=o.right-d.width,m=Math.min(p.left,f),y=p.top-d.height,b=i?i.y:-1/0;y<b&&(y=a.bottom),this.dom.style.left=`${m}px`,this.dom.style.top=`${y}px`,requestAnimationFrame(()=>{this.dom&&this.dom.setAttribute("aria-hidden","false")})}else this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true")});this.view=t;let e=t.state.facet(Zt);this.suppress=!1,document.addEventListener("mousedown",this.mousedown),document.addEventListener("mouseup",this.mouseup),t.scrollDOM.addEventListener("scroll",this.scroll),window.addEventListener("scroll",this.windowScroll,!0);let n=e.render(t);t.dom.appendChild(n),this.dom=n}update(t){this.display(t.view)}docViewUpdate(t){this.display(t)}display(t){if(t.state.field(it).show){this.dom.style.display="none";return}if(t.state.facet(Zt).hideOnBlur&&!t.hasFocus){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}t.requestMeasure({read:gi(this,On)})}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()}},On=new WeakMap,ui));var Ws=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 qs(){return[$s,Ws]}var Hs=class extends $t{constructor(e){super();g(this,"oldCode");this.oldCode=e}toDOM(e){let n=pe("div","cm-old-code-container");n.setAttribute("role","region"),n.setAttribute("aria-label","Previous code version");let r=pe("div","cm-old-code cm-line");r.textContent=this.oldCode;let a=pe("div","cm-floating-buttons"),o=e.state.facet(It),i={...H,...o.keymaps},s=pe("button","cm-floating-button cm-floating-accept");s.innerHTML=`<span class="hotkey">${er(i.acceptEdit)}</span> Accept`,s.setAttribute("aria-label","Accept changes"),s.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation(),e.focus(),ya(e)});let c=pe("button","cm-floating-button cm-floating-reject");return c.innerHTML=`<span class="hotkey">${er(i.rejectEdit)}</span> Reject`,c.setAttribute("aria-label","Reject changes"),c.addEventListener("click",l=>{l.preventDefault(),l.stopPropagation(),e.focus(),ba(e)}),a.append(s,c),n.append(r,a),n}updateDOM(e,n){return!0}},zs=class extends $t{constructor(e){super();g(this,"complete");g(this,"abortController",null);g(this,"dom",null);g(this,"input",null);g(this,"loadingContainer",null);g(this,"helpInfo",null);g(this,"inputContainer",null);g(this,"form",null);g(this,"view",null);g(this,"onKeyDown",async e=>{e.key==="Enter"&&!e.shiftKey?(e.preventDefault(),await this.handleSubmit()):e.key==="Escape"&&this.onCancel()});g(this,"onCancel",()=>{this.cleanup();let e=this.view;e&&(e.dispatch({effects:[ot.of({show:!1,lineFrom:0,lineTo:0}),ht.of(!1)]}),e.focus())});g(this,"handleSubmit",async e=>{var m;let n=this.view;if(!n)return;let r=n.state.facet(It);e==null||e.stopPropagation();let a=n.state.field(it),{input:o}=this;if(!o)return;let i=o.value.trim();if(!a.show||!i)return;let s=n.state.doc.line(a.lineFrom),c=n.state.doc.line(a.lineTo),l=s.from,u=c.to,d=n.state.sliceDoc(l,u),p=n.state.sliceDoc(0,l),f=n.state.sliceDoc(u);this.abortController=new AbortController,n.dispatch({effects:ht.of(!0)}),this.toggleLoading(!0);try{let y=await this.complete({prompt:i,selection:d,codeBefore:p,codeAfter:f,editorView:n,signal:this.abortController.signal});if(!n.state.field(it).show)return;if(!y||typeof y!="string")throw Error("Invalid completion result");n.dispatch({changes:{from:l,to:u,insert:y},effects:[ot.of({show:!1,lineFrom:0,lineTo:0}),Kt.of({from:l,to:l+y.length,oldCode:d,newCode:y}),ht.of(!1)]})}catch(y){if(y instanceof DOMException&&y.name==="AbortError")return;(m=r.onError)==null||m.call(r,y)}finally{this.cleanup(),this.toggleLoading(!1),n.focus()}});this.complete=e}toDOM(e){if(this.dom)return this.dom;this.view=e;let n=e.state.field(pa),r=e.state.field(ha),a=pe("div","cm-ai-input-container");this.inputContainer=a,this.dom=a;let o=pe("form","cm-ai-input-form");this.form=o,o.setAttribute("role","search"),o.setAttribute("aria-label","AI editing instructions"),o.addEventListener("submit",b=>b.preventDefault());let i=pe("input","cm-ai-input");this.input=i,o.append(i),i.placeholder="Editing instructions...",i.setAttribute("aria-label","AI editing instructions"),i.setAttribute("autocomplete","off"),i.setAttribute("spellcheck","true"),i.value=n.inputValue;let s=pe("div","cm-ai-loading-container");this.loadingContainer=s;let c=pe("div","cm-ai-loading-indicator");c.setAttribute("role","status"),c.setAttribute("aria-live","polite"),c.textContent="Generating";let l=pe("button","cm-ai-cancel-button");l.textContent="Cancel",l.setAttribute("aria-label","Cancel code generation"),l.addEventListener("click",this.onCancel),s.append(l,c);let u=pe("div","cm-ai-help-info");this.helpInfo=u;let d=u.appendChild(document.createElement("button"));d.className="cm-ai-help-info-button",d.textContent="Esc to close",d.addEventListener("click",this.onCancel);let p=pe("button","cm-ai-generate-button");p.textContent="\u23CE Generate",p.setAttribute("aria-label","Generate code"),p.addEventListener("click",this.handleSubmit),this.toggleLoading(r),n.shouldFocus&&requestAnimationFrame(()=>{i.value=n.inputValue,i.focus(),e.dispatch({effects:Lt.of(!1)})}),f(i.value),i.addEventListener("input",y),i.addEventListener("keydown",this.onKeyDown);function f(b){u.replaceChildren(b?p:d)}let m="";function y(){e.dispatch({effects:At.of(i.value)});let b=i.value.trim();b!==m&&(m=b,f(b))}return a}toggleLoading(e){var n;this.inputContainer&&this.form&&this.loadingContainer&&this.helpInfo&&((n=this.inputContainer)==null||n.replaceChildren(this.form,e?this.loadingContainer:this.helpInfo))}updateDOM(e,n){return this.dom=e,this.input=e.querySelector(".cm-ai-input"),!0}cleanup(){var e,n,r;(e=this.abortController)==null||e.abort(),this.abortController=null,(n=this.dom)==null||n.remove(),(r=this.input)==null||r.remove(),this.dom=null,this.input=null}destroy(){this.cleanup()}};function Ys(t){if(!t.prompt)throw Error("prompt function is required");let e={...H,...t.keymaps};return[It.of(t),it,pa,Ot,ha,qs(),Js,He.of([{key:e.showInput,run:ga}]),mt.highest([He.of([{key:e.acceptEdit,run:ya},{key:e.rejectEdit,run:ba}])]),Ks,Xs,Qs,Zs]}const Ks=R.updateListener.of(t=>{let e=t.state.field(it);if(!e.show||!t.docChanged)return;let{lineFrom:n,lineTo:r}=e,a=!1;t.changes.iterChanges((o,i,s,c)=>{let l=t.state.doc.lineAt(o).number;if(l<n){let u=t.state.doc.lineAt(c).number-t.state.doc.lineAt(s).number;n+=u,r+=u,a=!0}else if(l<=r){let u=t.state.doc.lineAt(c).number-t.state.doc.lineAt(s).number;r+=u,a=!0}}),a&&t.view.dispatch({effects:[ot.of({show:!0,lineFrom:n,lineTo:r})]})}),Xs=R.decorations.of(t=>{let e=t.state.field(Ot);return e?V.set([V.mark({class:"cm-new-code-line"}).range(e.from,e.to)]):V.none}),Qs=R.decorations.compute([it],t=>{let e=t.field(it),n=t.facet(It),r=[];if(e.show){let a=e.lineFrom,o=e.lineTo;for(let i=a;i<=o;i++){let s=t.doc.line(i).from;r.push(V.line({class:"cm-ai-selection"}).range(s)),i===a&&r.push(V.widget({widget:new zs(n.prompt),side:-1}).range(s))}}return V.set(r)}),Zs=We.define({create(t){return V.none},update(t,e){let n=e.state.field(Ot);return n?V.set([V.widget({widget:new Hs(n.oldCode),block:!0}).range(n.from)]):V.none},provide:t=>R.decorations.from(t)});var el=ve(),N=bi(Mf(),1),nr=()=>({entries:new Map}),{valueAtom:xa,useActions:Ea}=ra(nr,{submit:(t,e)=>{let{cellIds:n,deleteCell:r,deleteManyCells:a,store:o}=e,i=o.get(rt),s=o.get(Fn),c=new Set(i.cellIds.inOrderIds.filter(d=>i.cellData[d].code.trim()==="")),l=new Map;for(let d of n){if(c.has(d)){l.set(d,{cellId:d,type:"simple"});continue}let p=i.cellRuntime[d],f=new Map;for(let y of Object.values(s)){let b=y.declaredBy.includes(d),v=y.usedBy.some(S=>!c.has(S));b&&v&&f.set(y.name,y.usedBy)}let m;p!=null&&p.runElapsedTimeMs&&p.runElapsedTimeMs>2e3&&(m=p.runElapsedTimeMs),f.size===0&&m===void 0?l.set(d,{cellId:d,type:"simple"}):l.set(d,{cellId:d,type:"expensive",executionDurationMs:m,defs:f})}let u=[...l.values()].every(d=>d.type==="simple");return l.size>0&&u?(l.size===1?r({cellId:[...l.values()][0].cellId}):a({cellIds:[...l.values()].map(d=>d.cellId)}),nr()):{...t,entries:l}},clear:()=>nr()});Yn=function(){let t=Fr(),{submit:e,clear:n}=Ea(),{entries:r}=q(xa),a=ns(),o=aa();return(0,N.useMemo)(()=>({submit:i=>{e({cellIds:i,deleteCell:a,deleteManyCells:o,store:t})},clear:n,get idle(){return r.size===0},get shouldConfirmDelete(){return r.size>1}}),[t,e,n,r,a,o])},Ls=function(t){let e=(0,el.c)(16),n=q(xa),r=Ea(),a=aa(),o;e[0]!==t||e[1]!==n.entries?(o=n.entries.get(t),e[0]=t,e[1]=n.entries,e[2]=o):o=e[2];let i=o;if(!i){let u;return e[3]===Symbol.for("react.memo_cache_sentinel")?(u={isPending:!1},e[3]=u):u=e[3],u}if(n.entries.size!==1){let u;return e[4]===i?u=e[5]:(u={isPending:!0,shouldConfirmDelete:!1,...i},e[4]=i,e[5]=u),u}let s;e[6]!==r||e[7]!==a||e[8]!==n.entries?(s=()=>{a({cellIds:[...n.entries.values()].map(tl)}),r.clear()},e[6]=r,e[7]=a,e[8]=n.entries,e[9]=s):s=e[9];let c;e[10]===r?c=e[11]:(c=()=>r.clear(),e[10]=r,e[11]=c);let l;return e[12]!==i||e[13]!==s||e[14]!==c?(l={isPending:!0,...i,shouldConfirmDelete:!0,confirm:s,cancel:c},e[12]=i,e[13]=s,e[14]=c,e[15]=l):l=e[15],l};function tl(t){return t.cellId}var Sa=["python","sql","markdown"];function rr(t,e={}){var l;let{streaming:n=!1}=e,r=((l=t.match(/^\s*/))==null?void 0:l[0])??"",a=t.slice(r.length),o=null,i=!1;for(let u of Sa)if(a.startsWith(`\`\`\`${u}`)){i=!0,o=a.slice(3+u.length),o.startsWith(`
4
4
  `)&&(o=o.slice(1));break}if(!i&&a.startsWith("```")){let u=a.slice(3);if(n&&nl(u))return t;i=!0,o=u,o.startsWith(`
5
5
  `)&&(o=o.slice(1))}if(!i||o===null)return t;if(n)return o;let s=o.trimEnd(),c=o.slice(s.length);return s.endsWith("\n```")?s.slice(0,-4)+c:s.endsWith("```")?s.slice(0,-3)+c:o}function nl(t){return t.includes(`
@@ -1 +1 @@
1
- import{o as j}from"./chunk-C4rtOYze.js";import{d as L,l as P,n as E,u as O}from"./useEvent-GCVIknuR.js";import{E as T,N as w,ea as b,fa as y,j as A,kt as S,un as $}from"./cells-DTFqEQb0.js";import{t as _}from"./compiler-runtime-DnimoHo0.js";import{g as D}from"./useEventListener-DpNnLPuE.js";import{m as F}from"./utils-C8Yt16Y7.js";import{r as N}from"./constants-DifUxsbZ.js";import{T as q,v as B}from"./config-EoJoeZuK.js";import{t as H}from"./cn-DCUzRj2J.js";import{t as M}from"./jsx-runtime-3wZU7vFS.js";import{r as R}from"./requests-B9zEd_sW.js";import{n as U}from"./paths-D5zczhUD.js";import{s as V}from"./session-D-SddyN0.js";import{n as z}from"./ImperativeModal-Dxj31V4A.js";var G=_();function I(){return O(b)}function J(){let r=(0,G.c)(5),[e]=P(B),t=L(b),{openAlert:s}=z(),{sendRename:o}=R(),a;return r[0]!==e.state||r[1]!==s||r[2]!==o||r[3]!==t?(a=async l=>{let n=F();return e.state===q.OPEN?(V(i=>{l===null?i.delete(N.filePath):i.set(N.filePath,l)}),o({filename:l}).then(()=>(t(l),document.title=n.app_title||U.basename(l)||"Untitled Notebook",l)).catch(i=>(s(i.message),null))):(s("Failed to save notebook: not connected to a kernel."),null)},r[0]=e.state,r[1]=s,r[2]=o,r[3]=t,r[4]=a):a=r[4],E(a)}var p=_(),v=j(M(),1);const k=r=>{let e=(0,p.c)(12),{className:t,cellId:s,variant:o,onClick:a,formatCellName:l,skipScroll:n}=r,i=w()[s]??"",C=A().inOrderIds.indexOf(s),{showCellIfHidden:d}=T(),g=l??W,c;e[0]===t?c=e[1]:(c=H("inline-block cursor-pointer text-link hover:underline",t),e[0]=t,e[1]=c);let m;e[2]!==s||e[3]!==a||e[4]!==d||e[5]!==n||e[6]!==o?(m=h=>{if(s==="__scratch__")return!1;d({cellId:s}),h.stopPropagation(),h.preventDefault(),requestAnimationFrame(()=>{x(s,o,n)&&(a==null||a())})},e[2]=s,e[3]=a,e[4]=d,e[5]=n,e[6]=o,e[7]=m):m=e[7];let f=g(S(i,C)),u;return e[8]!==c||e[9]!==m||e[10]!==f?(u=(0,v.jsx)("div",{className:c,role:"link",tabIndex:-1,onClick:m,children:f}),e[8]=c,e[9]=m,e[10]=f,e[11]=u):u=e[11],u},K=r=>{let e=(0,p.c)(2),t;return e[0]===r?t=e[1]:(t=(0,v.jsx)(k,{...r,variant:"destructive"}),e[0]=r,e[1]=t),t},Q=r=>{let e=(0,p.c)(10),{cellId:t,lineNumber:s}=r,o=I(),a;e[0]!==t||e[1]!==s?(a=()=>$(t,s),e[0]=t,e[1]=s,e[2]=a):a=e[2];let l;e[3]!==t||e[4]!==o?(l=i=>t==="__scratch__"?"scratch":`marimo://${o||"untitled"}#cell=${i}`,e[3]=t,e[4]=o,e[5]=l):l=e[5];let n;return e[6]!==t||e[7]!==a||e[8]!==l?(n=(0,v.jsx)(k,{cellId:t,onClick:a,skipScroll:!0,variant:"destructive",className:"traceback-cell-link",formatCellName:l}),e[6]=t,e[7]=a,e[8]=l,e[9]=n):n=e[9],n};function x(r,e,t){let s=y.create(r),o=document.getElementById(s),a=o==null?void 0:o.classList.contains("has-error");return o===null?(D.error(`Cell ${s} not found on page.`),!1):(t||o.scrollIntoView({behavior:"smooth",block:"center"}),(e==="destructive"||a&&e===void 0)&&(o.classList.add("error-outline"),setTimeout(()=>{o.classList.remove("error-outline")},2e3)),(e==="focus"||!a&&e===void 0)&&(o.classList.add("focus-outline"),setTimeout(()=>{o.classList.remove("focus-outline")},2e3)),!0)}function W(r){return r}export{I as a,x as i,K as n,J as o,Q as r,k as t};
1
+ import{o as j}from"./chunk-C4rtOYze.js";import{d as L,l as P,n as E,u as O}from"./useEvent-GCVIknuR.js";import{E as T,N as w,ea as b,fa as y,j as A,kt as S,un as $}from"./cells-BvgwUKB9.js";import{t as _}from"./compiler-runtime-DnimoHo0.js";import{g as D}from"./useEventListener-DpNnLPuE.js";import{m as F}from"./utils-C8Yt16Y7.js";import{r as N}from"./constants-DifUxsbZ.js";import{T as q,v as B}from"./config-DFK5eCC3.js";import{t as H}from"./cn-DCUzRj2J.js";import{t as M}from"./jsx-runtime-3wZU7vFS.js";import{r as R}from"./requests-B9zEd_sW.js";import{n as U}from"./paths-D5zczhUD.js";import{s as V}from"./session-D-SddyN0.js";import{n as z}from"./ImperativeModal-Dxj31V4A.js";var G=_();function I(){return O(b)}function J(){let r=(0,G.c)(5),[e]=P(B),t=L(b),{openAlert:s}=z(),{sendRename:o}=R(),a;return r[0]!==e.state||r[1]!==s||r[2]!==o||r[3]!==t?(a=async l=>{let n=F();return e.state===q.OPEN?(V(i=>{l===null?i.delete(N.filePath):i.set(N.filePath,l)}),o({filename:l}).then(()=>(t(l),document.title=n.app_title||U.basename(l)||"Untitled Notebook",l)).catch(i=>(s(i.message),null))):(s("Failed to save notebook: not connected to a kernel."),null)},r[0]=e.state,r[1]=s,r[2]=o,r[3]=t,r[4]=a):a=r[4],E(a)}var p=_(),v=j(M(),1);const k=r=>{let e=(0,p.c)(12),{className:t,cellId:s,variant:o,onClick:a,formatCellName:l,skipScroll:n}=r,i=w()[s]??"",C=A().inOrderIds.indexOf(s),{showCellIfHidden:d}=T(),g=l??W,c;e[0]===t?c=e[1]:(c=H("inline-block cursor-pointer text-link hover:underline",t),e[0]=t,e[1]=c);let m;e[2]!==s||e[3]!==a||e[4]!==d||e[5]!==n||e[6]!==o?(m=h=>{if(s==="__scratch__")return!1;d({cellId:s}),h.stopPropagation(),h.preventDefault(),requestAnimationFrame(()=>{x(s,o,n)&&(a==null||a())})},e[2]=s,e[3]=a,e[4]=d,e[5]=n,e[6]=o,e[7]=m):m=e[7];let f=g(S(i,C)),u;return e[8]!==c||e[9]!==m||e[10]!==f?(u=(0,v.jsx)("div",{className:c,role:"link",tabIndex:-1,onClick:m,children:f}),e[8]=c,e[9]=m,e[10]=f,e[11]=u):u=e[11],u},K=r=>{let e=(0,p.c)(2),t;return e[0]===r?t=e[1]:(t=(0,v.jsx)(k,{...r,variant:"destructive"}),e[0]=r,e[1]=t),t},Q=r=>{let e=(0,p.c)(10),{cellId:t,lineNumber:s}=r,o=I(),a;e[0]!==t||e[1]!==s?(a=()=>$(t,s),e[0]=t,e[1]=s,e[2]=a):a=e[2];let l;e[3]!==t||e[4]!==o?(l=i=>t==="__scratch__"?"scratch":`marimo://${o||"untitled"}#cell=${i}`,e[3]=t,e[4]=o,e[5]=l):l=e[5];let n;return e[6]!==t||e[7]!==a||e[8]!==l?(n=(0,v.jsx)(k,{cellId:t,onClick:a,skipScroll:!0,variant:"destructive",className:"traceback-cell-link",formatCellName:l}),e[6]=t,e[7]=a,e[8]=l,e[9]=n):n=e[9],n};function x(r,e,t){let s=y.create(r),o=document.getElementById(s),a=o==null?void 0:o.classList.contains("has-error");return o===null?(D.error(`Cell ${s} not found on page.`),!1):(t||o.scrollIntoView({behavior:"smooth",block:"center"}),(e==="destructive"||a&&e===void 0)&&(o.classList.add("error-outline"),setTimeout(()=>{o.classList.remove("error-outline")},2e3)),(e==="focus"||!a&&e===void 0)&&(o.classList.add("focus-outline"),setTimeout(()=>{o.classList.remove("focus-outline")},2e3)),!0)}function W(r){return r}export{I as a,x as i,K as n,J as o,Q as r,k as t};
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./esm-DbAcs2Px.js","./chunk-C4rtOYze.js","./dist-oo7CUTL2.js","./dist-BbqPy6oS.js","./dist-Di6rD-vJ.js","./dist-CeF1Em5L.js","./dist-BbNJKBqf.js","./dist-iZqQ8eEZ.js","./dist-DAd7fvc1.js","./dist-BVNaV53g.js","./dist-5AUFDACg.js","./dist-CqO2FBHV.js","./dist-BC6HNlDy.js","./dist-5bwTcyKs.js","./dist-BrqkjqDe.js","./dist-ClAayqDs.js","./dist-5zzK1Bpl.js","./dist-Bwzs3Vpo.js","./dist-CAHB5I2V.js","./dist-BQMAD-re.js","./dist-D5yi7Y8o.js","./dist-SgSQKL07.js","./dist-CF4ci481.js","./dist-CjgCY_Ws.js","./dist-etjVl5BO.js","./dist-CSEj3YUH.js","./dist-qxqSCe2K.js","./dist-BPoMypmC.js","./dist-0tTkix79.js","./dist-DcguuZEe.js","./dist-D1BB6_s_.js","./dist-Bm9PT5P9.js","./dist-Dk7PW1P8.js","./dist-Op2xySIC.js","./dist-UMYZc9Uw.js","./dist-ChJa98Av.js","./dist-CJU3fYUR.js","./dist-AhQW5KN1.js","./dist-CG7o1Txo.js","./dist-VHnyClcl.js","./dist-x-uwJAB2.js","./dist-C3YC038-.js","./apl-B-7blH-b.js","./apl-CPlG1HX3.js","./asciiarmor-D3K8amZ9.js","./asciiarmor-DV_pcocJ.js","./asn1-UGGn98tp.js","./asn1-DPxWcGvG.js","./brainfuck-B4y4U3tg.js","./brainfuck-CGDdBVNO.js","./cobol-XqY9jaWP.js","./cobol-DW4FSnmb.js","./clike-BAN6KopO.js","./clike-D91DrsBh.js","./clojure-BAZ-ejkG.js","./clojure-B0eb_-2q.js","./css-DWLxGm3Z.js","./css-DmLg8a0m.js","./cmake-jWn0xN9y.js","./cmake-COzUvjiS.js","./coffeescript-DI1jfZHX.js","./coffeescript-CommR2mv.js","./commonlisp-UKb01OlU.js","./commonlisp-FR_N9RJL.js","./cypher-CLDhu2ae.js","./cypher-BzSJn05x.js","./python-BMLOKYmk.js","./python-mPctBCbA.js","./crystal-DOvjTBWA.js","./crystal-CAN7bz25.js","./d-C0ecUZk9.js","./d-UpmnByGo.js","./diff-657cCCVc.js","./diff-DRpitNo9.js","./dockerfile-vQlfzaHL.js","./simple-mode-CfoR0Lvg.js","./dtd-DSiK7Qgi.js","./dtd-CQV9N2ok.js","./dylan-07d5-7Q9.js","./dylan-Bp98yT5y.js","./ecl-CSTUHiwq.js","./ecl-BgtQ3zu5.js","./eiffel-DR99GcsM.js","./eiffel-Cu14O7Gi.js","./elm-Cmh0iW6J.js","./elm-Dp1dn40k.js","./erlang-CS9Yc6UC.js","./erlang-DdogJjdp.js","./factor-DjB27Lcf.js","./factor-D96xahcJ.js","./forth-UwTUu7NY.js","./forth-Dd0r86IP.js","./fortran-cptiB4gJ.js","./fortran-4qvtlW4z.js","./mllike-DmouQ5Dp.js","./mllike-D7ajla-U.js","./gas-ajMbd9Us.js","./gas-DqwqZHXy.js","./gherkin-ClYkalzE.js","./gherkin-DMxJEDh5.js","./groovy-BY-gt7AW.js","./groovy-DA_MxBua.js","./haskell-D1BeJ7SR.js","./haskell-B_hi8VEK.js","./haxe-QOq5WFXx.js","./haxe-D-I6YeRN.js","./idl-3-UcEGx7.js","./idl-CteRrHSs.js","./javascript-CorD44JN.js","./javascript-Cq9DsvSW.js","./julia-BYqTtTAl.js","./julia-bHGj6eLp.js","./livescript-qYgfNnNE.js","./livescript-C72YlTeO.js","./lua-BCqCjdfz.js","./lua-DAtJrHXr.js","./mirc-ipoElhai.js","./mirc-BRCHEPv1.js","./mathematica-XKwMfn0d.js","./mathematica-DGp7b8Lx.js","./modelica-BtmmVsUf.js","./modelica-0RGVL4ie.js","./mumps-oKfoFTl_.js","./mumps-Cgag5Xef.js","./mbox-BnkeOnif.js","./mbox-C35KjfEV.js","./nsis-DDOPnuAW.js","./nsis-gzbsJ5t0.js","./ntriples-Dsyl_sOF.js","./ntriples-oQv5c69K.js","./octave-CI5RGMPa.js","./octave-BMTXs4lo.js","./oz-D01pKAWx.js","./oz-CuHYwo8r.js","./pascal-DGXfnIFD.js","./pascal-eFKoVV2p.js","./perl-gZ7qIkF-.js","./perl-B1OqOW8w.js","./pig-Cb90ayl-.js","./pig-gIrBDx27.js","./powershell-_YxddSL3.js","./powershell-3fQF2XND.js","./properties-sU50dmvt.js","./properties-D4HHpZmU.js","./protobuf-DFdF-yfo.js","./protobuf-DFSTKR0L.js","./pug-DwUB-C24.js","./pug-CfBtO6QD.js","./puppet-DtKzwiZ6.js","./puppet-BAISgXk9.js","./q-BF1zXMdP.js","./q-CYeV5Dbb.js","./r-BQiKhVSI.js","./r-Ds4UrjIV.js","./rpm-v7UTuaHo.js","./rpm-DV5-r6dM.js","./ruby-Cw43FpG3.js","./ruby-B9qrycrI.js","./sas-BIKscqlp.js","./sas-Cd7L1ZOe.js","./scheme-CGic3hSV.js","./scheme-L6Kva-Kc.js","./shell-DAh545tm.js","./shell-Ck42V1Kn.js","./sieve-bGkng63-.js","./sieve-DfSJcUfS.js","./smalltalk-fIw53lm8.js","./smalltalk-CT418Iph.js","./sparql-CHbJrAY_.js","./sparql-BlJ_cLEt.js","./stylus-3Q5WfXqT.js","./stylus-92qIiGm1.js","./swift-MKxc2knl.js","./swift-gZzicbJu.js","./stex-Ccczot4V.js","./stex-BGrE-q7N.js","./verilog-B4LUPYXy.js","./verilog-CBz90JJu.js","./tcl-D3fKhQc_.js","./tcl-CtgoBYkk.js","./textile-Bi_LEJQ3.js","./textile-Du3RzJ2D.js","./toml-Dt-PBqwt.js","./toml-HcF44TVB.js","./troff-BSU-rxoD.js","./troff-xbwT4huN.js","./ttcn-BmLjonVM.js","./ttcn-phKysj_0.js","./ttcn-cfg-TPTcP0Eh.js","./ttcn-cfg-jWDg1i50.js","./turtle-HafmShQq.js","./turtle-CPC48wcy.js","./webidl-DOay1zbU.js","./webidl-CRtF5pmu.js","./vb-CUif5uGR.js","./vb-BTubZ2rB.js","./vbscript-DWVPFl59.js","./vbscript-B52mDFWM.js","./velocity-BJl8UzB4.js","./velocity-BO3M1iFD.js","./vhdl-C91h3ipk.js","./vhdl-CeQ1lGlV.js","./xquery-Cez7jD_4.js","./xquery-CFnbrHav.js","./yacas-CSQEXB_S.js","./yacas-KIC_JO6M.js","./z80-CJbYj7Wr.js","./z80-kGpw5_me.js","./mscgen-BHZmHZgz.js","./mscgen-C7Ohs4Tl.js","./dist-BhAom09b.js","./dist-BTX2QySO.js","./dist-Bp45OWJJ.js","./node-sql-parser-DE2GpgS7.js"])))=>i.map(i=>d[i]);
2
- var BM=Object.defineProperty;var WM=(oa,di,Ya)=>di in oa?BM(oa,di,{enumerable:!0,configurable:!0,writable:!0,value:Ya}):oa[di]=Ya;var pe=(oa,di,Ya)=>WM(oa,typeof di!="symbol"?di+"":di,Ya);import{a as UM,i as Cg,n as KM,o as Ud,r as QM,t as Pe}from"./chunk-C4rtOYze.js";import{c as IC,i as Me,l as AC,p as je,r as GM,s as XM,u as $n}from"./useEvent-GCVIknuR.js";import{t as Kd}from"./react-C60yClUi.js";import{t as LC}from"./react-dom-Ba2zmJWD.js";import{L as PC,N as JM,P as OC,T as MC,k as YM,w as ZM,z as e5}from"./zod-BIDX-mZr.js";import{t as kr}from"./compiler-runtime-DnimoHo0.js";import{t as Sg}from"./debounce-DhnxH9Rh.js";import{d as NC,f as t5,g as Se,o as Qd}from"./useEventListener-DpNnLPuE.js";import{t as ki}from"./objects-CrbstYTV.js";import{t as Vn}from"./invariant-BUdrueMv.js";import{b as n5,g as r5,h as jC,t as i5}from"./utils-C8Yt16Y7.js";import{D as a5,N as Gd,O as o5,P as s5,S as l5,r as c5}from"./config-EoJoeZuK.js";import{n as u5,t as Ci}from"./cn-DCUzRj2J.js";import{t as d5}from"./jsx-runtime-3wZU7vFS.js";import{C as qC,T as f5,b as p5,d as m5,g as Xd,h as h5,p as g5,v as zC,w as ta,x as Wr,y as FC}from"./fullscreen-CrevbcR_.js";import{l as $C,o as y5}from"./dist-CFnrytEJ.js";import{d as v5}from"./menu-items-B8lIBnFI.js";import{a as b5,c as w5,i as Eg,m as x5,n as _5,o as VC,r as k5,s as C5,t as S5}from"./select-CPo-KTTe.js";import{i as E5,t as Tg}from"./tooltip-C9LWGQ7Y.js";import{t as HC}from"./button-W__YVea9.js";import{$t as qo,A as T5,C as D5,D as R5,Gt as Gs,H as Dg,Ht as Jd,I as BC,Jt as WC,K as I5,Kt as UC,Nt as Rg,Pt as KC,Qt as li,Rt as QC,S as A5,T as GC,Tt as Si,U as L5,Ut as xn,W as P5,Wt as O5,X as Yd,Yt as _c,Zt as sr,_t as M5,at as Xt,b as XC,bt as JC,ct as YC,dt as N5,en as Xs,f as ZC,it as eS,jt as Js,k as j5,kt as tS,l as ue,ot as q5,p as z5,pt as F5,q as $5,qt as Zd,st as It,u as nS,ut as Cr,wt as Ig,z as rS}from"./dist-CeF1Em5L.js";import{A as V5,C as H5,D as B5,E as W5,S as U5,T as K5,_ as Q5,d as G5,h as X5,j as J5,k as Y5,m as Z5,n as e6,o as Ag,s as iS,t as t6,u as aS,v as n6,z as r6}from"./dist-DanVWUek.js";import{a as kc,i as Lg,n as i6,p as Pg,r as oS}from"./arrays-UzzAzxsG.js";import{n as Ur}from"./once-DNBWPkeJ.js";import{t as a6}from"./capabilities-CHeZxy51.js";import{t as o6}from"./cjs-DCKmcMBz.js";import{t as Ys}from"./createReducer-C1MhlItJ.js";import{d as s6,l as sS,n as l6,o as lS,p as c6,r as ef}from"./dist-Di6rD-vJ.js";import{n as tf,t as u6}from"./useNonce-C2dwX-sI.js";import{i as Zs,r as d6,t as f6}from"./strings-DmKKoXrM.js";import{t as Sr}from"./requests-B9zEd_sW.js";import{a as p6,c as m6,d as h6,f as cS,i as g6,l as y6,n as v6,o as Og,r as b6,s as nf,t as w6,u as x6}from"./dist-BbqPy6oS.js";import{t as At}from"./createLucideIcon-B8oVfJNp.js";import{a as Mg,i as _6,o as k6,r as C6,t as S6}from"./useLifecycle-DDwuYzlC.js";import{t as E6}from"./check-CyyJPf_5.js";import{t as T6}from"./x-4y-nyVDU.js";import{t as D6,u as R6}from"./toDate-QOk09NqD.js";import{t as Ng}from"./database-zap-n8PGHE18.js";import{n as I6,t as el}from"./DeferredRequestRegistry-6TRSC3VZ.js";import{t as Er}from"./badge-D28DMr4y.js";import{t as de}from"./preload-helper-BPPi7vOr.js";import{a as uS,s as A6}from"./dist-BPoMypmC.js";import{a as dS,i as jg,n as L6,r as fS,t as P6}from"./dist-Bm9PT5P9.js";import{n as O6}from"./stex-BGrE-q7N.js";import{t as Cc}from"./use-toast-DjpWVza6.js";import{n as pS}from"./paths-D5zczhUD.js";import{n as M6}from"./useTheme-CwCyrmDf.js";import{t as qg}from"./purify.es-Bwm8T4QC.js";let zg,mS,tl,hS,Fg,gS,$g,Vg,Hg,yS,vS,rf,bS,Bg,wS,xS,Wg,Sc,af,Ug,_S,kS,CS,zo,of,SS,ES,sf,Kg,TS,DS,lf,cf,uf,df,Qg,Ka,Gg,Xg,RS,Jg,Yg,Ec,Zg,e0,IS,t0,n0,r0,AS,i0,a0,LS,PS,ff,OS,nl,pf,o0,na,Kr,Tc,Dc,mf,MS,NS,hf,Xn,s0,l0,jS,qS,Ee,c0,Rc,zS,u0,FS,d0,$S,VS,Fo,rl,$o,Tr,HS,BS,gf,WS,f0,Dr,Ic,US,il,KS,QS,GS,ra,XS,yf,JS,YS,ZS,p0,m0,eE,h0,tE,g0,y0,v0,nE,rE,b0,w0,iE,x0,aE,_0,oE,k0,vf,sE,Vo,bf,C0,lE,Qa,wf,Ei,S0,al,Ac,cE,xf,uE,E0,ia,dE,Lc,fE,pE,T0,D0,R0,mE,hE,gE,yE,I0,A0,vE,bE,wE,xE,Pc,_E,_f,L0,kf,kE,CE,Cf,SE,EE,ol,Sf,P0,O0,M0,TE,lr,DE,RE,Ef,N0,IE,AE,Lt,j0,LE,Ho,PE,Tf,Bo,q0,Wo,ci,Oc,Mc,z0,F0,Df,$0,OE,V0,ME,H0,B0,NE,Nc,Rf,W0,jE,U0,K0,If,Q0,Af,G0,Lf,Rr,aa,qE,ui,X0,Pf,Jn,zE,Of,FE,$E,VE,Mf,J0,HE,BE,Y0,WE,Uo,UE,jc,Ko,Z0,ey,KE,QE,ty,GE,XE,JE,YE,ZE,ny,Nf,eT,tT,nT,rT,iT,aT,oT,qc,sT,lT,Ga,ry,cT,Xa,uT,dT,zc,fT,pT,mT,hT,gT,iy,yT,vT,ay,bT,Fc,oy,wT,jf,sy,xT,$c,qf,ft,ly,_T,cy,Ja,Ir,kT,sl,uy,dy,CT,N6=(async()=>{var co,Di,Tm,uo;let oa,di,Ya;oa=Pe((e=>{function t(te,he){var G=te.length;te.push(he);e:for(;0<G;){var Ne=G-1>>>1,qe=te[Ne];if(0<o(qe,he))te[Ne]=he,te[G]=qe,G=Ne;else break e}}function n(te){return te.length===0?null:te[0]}function i(te){if(te.length===0)return null;var he=te[0],G=te.pop();if(G!==he){te[0]=G;e:for(var Ne=0,qe=te.length,Qe=qe>>>1;Ne<Qe;){var He=2*(Ne+1)-1,Fe=te[He],Oe=He+1,Be=te[Oe];if(0>o(Fe,G))Oe<qe&&0>o(Be,Fe)?(te[Ne]=Be,te[Oe]=G,Ne=Oe):(te[Ne]=Fe,te[He]=G,Ne=He);else if(Oe<qe&&0>o(Be,G))te[Ne]=Be,te[Oe]=G,Ne=Oe;else break e}}return he}function o(te,he){var G=te.sortIndex-he.sortIndex;return G===0?te.id-he.id:G}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var l=performance;e.unstable_now=function(){return l.now()}}else{var u=Date,d=u.now();e.unstable_now=function(){return u.now()-d}}var p=[],g=[],w=1,x=null,S=3,E=!1,T=!1,O=!1,j=!1,z=typeof setTimeout=="function"?setTimeout:null,V=typeof clearTimeout=="function"?clearTimeout:null,P=typeof setImmediate<"u"?setImmediate:null;function U(te){for(var he=n(g);he!==null;){if(he.callback===null)i(g);else if(he.startTime<=te)i(g),he.sortIndex=he.expirationTime,t(p,he);else break;he=n(g)}}function me(te){if(O=!1,U(te),!T)if(n(p)!==null)T=!0,$||($=!0,Z());else{var he=n(g);he!==null&&ce(me,he.startTime-te)}}var $=!1,W=-1,ae=5,xe=-1;function _e(){return j?!0:!(e.unstable_now()-xe<ae)}function Te(){if(j=!1,$){var te=e.unstable_now();xe=te;var he=!0;try{e:{T=!1,O&&(O=!1,V(W),W=-1),E=!0;var G=S;try{t:{for(U(te),x=n(p);x!==null&&!(x.expirationTime>te&&_e());){var Ne=x.callback;if(typeof Ne=="function"){x.callback=null,S=x.priorityLevel;var qe=Ne(x.expirationTime<=te);if(te=e.unstable_now(),typeof qe=="function"){x.callback=qe,U(te),he=!0;break t}x===n(p)&&i(p),U(te)}else i(p);x=n(p)}if(x!==null)he=!0;else{var Qe=n(g);Qe!==null&&ce(me,Qe.startTime-te),he=!1}}break e}finally{x=null,S=G,E=!1}he=void 0}}finally{he?Z():$=!1}}}var Z;if(typeof P=="function")Z=function(){P(Te)};else if(typeof MessageChannel<"u"){var Q=new MessageChannel,Y=Q.port2;Q.port1.onmessage=Te,Z=function(){Y.postMessage(null)}}else Z=function(){z(Te,0)};function ce(te,he){W=z(function(){te(e.unstable_now())},he)}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(te){te.callback=null},e.unstable_forceFrameRate=function(te){0>te||125<te?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):ae=0<te?Math.floor(1e3/te):5},e.unstable_getCurrentPriorityLevel=function(){return S},e.unstable_next=function(te){switch(S){case 1:case 2:case 3:var he=3;break;default:he=S}var G=S;S=he;try{return te()}finally{S=G}},e.unstable_requestPaint=function(){j=!0},e.unstable_runWithPriority=function(te,he){switch(te){case 1:case 2:case 3:case 4:case 5:break;default:te=3}var G=S;S=te;try{return he()}finally{S=G}},e.unstable_scheduleCallback=function(te,he,G){var Ne=e.unstable_now();switch(typeof G=="object"&&G?(G=G.delay,G=typeof G=="number"&&0<G?Ne+G:Ne):G=Ne,te){case 1:var qe=-1;break;case 2:qe=250;break;case 5:qe=1073741823;break;case 4:qe=1e4;break;default:qe=5e3}return qe=G+qe,te={id:w++,callback:he,priorityLevel:te,startTime:G,expirationTime:qe,sortIndex:-1},G>Ne?(te.sortIndex=G,t(g,te),n(p)===null&&te===n(g)&&(O?(V(W),W=-1):O=!0,ce(me,G-Ne))):(te.sortIndex=qe,t(p,te),T||E||(T=!0,$||($=!0,Z()))),te},e.unstable_shouldYield=_e,e.unstable_wrapCallback=function(te){var he=S;return function(){var G=S;S=he;try{return te.apply(this,arguments)}finally{S=G}}}})),di=Pe(((e,t)=>{t.exports=oa()})),Ya=Pe((e=>{var t=di(),n=Kd(),i=LC();function o(r){var a="https://react.dev/errors/"+r;if(1<arguments.length){a+="?args[]="+encodeURIComponent(arguments[1]);for(var s=2;s<arguments.length;s++)a+="&args[]="+encodeURIComponent(arguments[s])}return"Minified React error #"+r+"; visit "+a+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function l(r){return!(!r||r.nodeType!==1&&r.nodeType!==9&&r.nodeType!==11)}function u(r){var a=r,s=r;if(r.alternate)for(;a.return;)a=a.return;else{r=a;do a=r,a.flags&4098&&(s=a.return),r=a.return;while(r)}return a.tag===3?s:null}function d(r){if(r.tag===13){var a=r.memoizedState;if(a===null&&(r=r.alternate,r!==null&&(a=r.memoizedState)),a!==null)return a.dehydrated}return null}function p(r){if(r.tag===31){var a=r.memoizedState;if(a===null&&(r=r.alternate,r!==null&&(a=r.memoizedState)),a!==null)return a.dehydrated}return null}function g(r){if(u(r)!==r)throw Error(o(188))}function w(r){var a=r.alternate;if(!a){if(a=u(r),a===null)throw Error(o(188));return a===r?r:null}for(var s=r,c=a;;){var m=s.return;if(m===null)break;var y=m.alternate;if(y===null){if(c=m.return,c!==null){s=c;continue}break}if(m.child===y.child){for(y=m.child;y;){if(y===s)return g(m),r;if(y===c)return g(m),a;y=y.sibling}throw Error(o(188))}if(s.return!==c.return)s=m,c=y;else{for(var C=!1,R=m.child;R;){if(R===s){C=!0,s=m,c=y;break}if(R===c){C=!0,c=m,s=y;break}R=R.sibling}if(!C){for(R=y.child;R;){if(R===s){C=!0,s=y,c=m;break}if(R===c){C=!0,c=y,s=m;break}R=R.sibling}if(!C)throw Error(o(189))}}if(s.alternate!==c)throw Error(o(190))}if(s.tag!==3)throw Error(o(188));return s.stateNode.current===s?r:a}function x(r){var a=r.tag;if(a===5||a===26||a===27||a===6)return r;for(r=r.child;r!==null;){if(a=x(r),a!==null)return a;r=r.sibling}return null}var S=Object.assign,E=Symbol.for("react.element"),T=Symbol.for("react.transitional.element"),O=Symbol.for("react.portal"),j=Symbol.for("react.fragment"),z=Symbol.for("react.strict_mode"),V=Symbol.for("react.profiler"),P=Symbol.for("react.consumer"),U=Symbol.for("react.context"),me=Symbol.for("react.forward_ref"),$=Symbol.for("react.suspense"),W=Symbol.for("react.suspense_list"),ae=Symbol.for("react.memo"),xe=Symbol.for("react.lazy"),_e=Symbol.for("react.activity"),Te=Symbol.for("react.memo_cache_sentinel"),Z=Symbol.iterator;function Q(r){return typeof r!="object"||!r?null:(r=Z&&r[Z]||r["@@iterator"],typeof r=="function"?r:null)}var Y=Symbol.for("react.client.reference");function ce(r){if(r==null)return null;if(typeof r=="function")return r.$$typeof===Y?null:r.displayName||r.name||null;if(typeof r=="string")return r;switch(r){case j:return"Fragment";case V:return"Profiler";case z:return"StrictMode";case $:return"Suspense";case W:return"SuspenseList";case _e:return"Activity"}if(typeof r=="object")switch(r.$$typeof){case O:return"Portal";case U:return r.displayName||"Context";case P:return(r._context.displayName||"Context")+".Consumer";case me:var a=r.render;return r=r.displayName,r||(r=(r=a.displayName||a.name||"",r===""?"ForwardRef":"ForwardRef("+r+")")),r;case ae:return a=r.displayName||null,a===null?ce(r.type)||"Memo":a;case xe:a=r._payload,r=r._init;try{return ce(r(a))}catch{}}return null}var te=Array.isArray,he=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,G=i.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Ne={pending:!1,data:null,method:null,action:null},qe=[],Qe=-1;function He(r){return{current:r}}function Fe(r){0>Qe||(r.current=qe[Qe],qe[Qe]=null,Qe--)}function Oe(r,a){Qe++,qe[Qe]=r.current,r.current=a}var Be=He(null),gt=He(null),bt=He(null),Mn=He(null);function gn(r,a){switch(Oe(bt,a),Oe(gt,r),Oe(Be,null),a.nodeType){case 9:case 11:r=(r=a.documentElement)&&(r=r.namespaceURI)?nC(r):0;break;default:if(r=a.tagName,a=a.namespaceURI)a=nC(a),r=rC(a,r);else switch(r){case"svg":r=1;break;case"math":r=2;break;default:r=0}}Fe(Be),Oe(Be,r)}function Xe(){Fe(Be),Fe(gt),Fe(bt)}function cn(r){r.memoizedState!==null&&Oe(Mn,r);var a=Be.current,s=rC(a,r.type);a!==s&&(Oe(gt,r),Oe(Be,s))}function kt(r){gt.current===r&&(Fe(Be),Fe(gt)),Mn.current===r&&(Fe(Mn),vc._currentValue=Ne)}var kn,Lr;function yt(r){if(kn===void 0)try{throw Error()}catch(s){var a=s.stack.trim().match(/\n( *(at )?)/);kn=a&&a[1]||"",Lr=-1<s.stack.indexOf(`
2
+ var BM=Object.defineProperty;var WM=(oa,di,Ya)=>di in oa?BM(oa,di,{enumerable:!0,configurable:!0,writable:!0,value:Ya}):oa[di]=Ya;var pe=(oa,di,Ya)=>WM(oa,typeof di!="symbol"?di+"":di,Ya);import{a as UM,i as Cg,n as KM,o as Ud,r as QM,t as Pe}from"./chunk-C4rtOYze.js";import{c as IC,i as Me,l as AC,p as je,r as GM,s as XM,u as $n}from"./useEvent-GCVIknuR.js";import{t as Kd}from"./react-C60yClUi.js";import{t as LC}from"./react-dom-Ba2zmJWD.js";import{L as PC,N as JM,P as OC,T as MC,k as YM,w as ZM,z as e5}from"./zod-BIDX-mZr.js";import{t as kr}from"./compiler-runtime-DnimoHo0.js";import{t as Sg}from"./debounce-DhnxH9Rh.js";import{d as NC,f as t5,g as Se,o as Qd}from"./useEventListener-DpNnLPuE.js";import{t as ki}from"./objects-CrbstYTV.js";import{t as Vn}from"./invariant-BUdrueMv.js";import{b as n5,g as r5,h as jC,t as i5}from"./utils-C8Yt16Y7.js";import{D as a5,N as Gd,O as o5,P as s5,S as l5,r as c5}from"./config-DFK5eCC3.js";import{n as u5,t as Ci}from"./cn-DCUzRj2J.js";import{t as d5}from"./jsx-runtime-3wZU7vFS.js";import{C as qC,T as f5,b as p5,d as m5,g as Xd,h as h5,p as g5,v as zC,w as ta,x as Wr,y as FC}from"./fullscreen-CrevbcR_.js";import{l as $C,o as y5}from"./dist-CFnrytEJ.js";import{d as v5}from"./menu-items-B8lIBnFI.js";import{a as b5,c as w5,i as Eg,m as x5,n as _5,o as VC,r as k5,s as C5,t as S5}from"./select-CPo-KTTe.js";import{i as E5,t as Tg}from"./tooltip-C9LWGQ7Y.js";import{t as HC}from"./button-W__YVea9.js";import{$t as qo,A as T5,C as D5,D as R5,Gt as Gs,H as Dg,Ht as Jd,I as BC,Jt as WC,K as I5,Kt as UC,Nt as Rg,Pt as KC,Qt as li,Rt as QC,S as A5,T as GC,Tt as Si,U as L5,Ut as xn,W as P5,Wt as O5,X as Yd,Yt as _c,Zt as sr,_t as M5,at as Xt,b as XC,bt as JC,ct as YC,dt as N5,en as Xs,f as ZC,it as eS,jt as Js,k as j5,kt as tS,l as ue,ot as q5,p as z5,pt as F5,q as $5,qt as Zd,st as It,u as nS,ut as Cr,wt as Ig,z as rS}from"./dist-CeF1Em5L.js";import{A as V5,C as H5,D as B5,E as W5,S as U5,T as K5,_ as Q5,d as G5,h as X5,j as J5,k as Y5,m as Z5,n as e6,o as Ag,s as iS,t as t6,u as aS,v as n6,z as r6}from"./dist-DanVWUek.js";import{a as kc,i as Lg,n as i6,p as Pg,r as oS}from"./arrays-UzzAzxsG.js";import{n as Ur}from"./once-DNBWPkeJ.js";import{t as a6}from"./capabilities-CHeZxy51.js";import{t as o6}from"./cjs-DCKmcMBz.js";import{t as Ys}from"./createReducer-C1MhlItJ.js";import{d as s6,l as sS,n as l6,o as lS,p as c6,r as ef}from"./dist-Di6rD-vJ.js";import{n as tf,t as u6}from"./useNonce-C2dwX-sI.js";import{i as Zs,r as d6,t as f6}from"./strings-DmKKoXrM.js";import{t as Sr}from"./requests-B9zEd_sW.js";import{a as p6,c as m6,d as h6,f as cS,i as g6,l as y6,n as v6,o as Og,r as b6,s as nf,t as w6,u as x6}from"./dist-BbqPy6oS.js";import{t as At}from"./createLucideIcon-B8oVfJNp.js";import{a as Mg,i as _6,o as k6,r as C6,t as S6}from"./useLifecycle-DDwuYzlC.js";import{t as E6}from"./check-CyyJPf_5.js";import{t as T6}from"./x-4y-nyVDU.js";import{t as D6,u as R6}from"./toDate-QOk09NqD.js";import{t as Ng}from"./database-zap-n8PGHE18.js";import{n as I6,t as el}from"./DeferredRequestRegistry-6TRSC3VZ.js";import{t as Er}from"./badge-D28DMr4y.js";import{t as de}from"./preload-helper-BPPi7vOr.js";import{a as uS,s as A6}from"./dist-BPoMypmC.js";import{a as dS,i as jg,n as L6,r as fS,t as P6}from"./dist-Bm9PT5P9.js";import{n as O6}from"./stex-BGrE-q7N.js";import{t as Cc}from"./use-toast-DjpWVza6.js";import{n as pS}from"./paths-D5zczhUD.js";import{n as M6}from"./useTheme-CwCyrmDf.js";import{t as qg}from"./purify.es-Bwm8T4QC.js";let zg,mS,tl,hS,Fg,gS,$g,Vg,Hg,yS,vS,rf,bS,Bg,wS,xS,Wg,Sc,af,Ug,_S,kS,CS,zo,of,SS,ES,sf,Kg,TS,DS,lf,cf,uf,df,Qg,Ka,Gg,Xg,RS,Jg,Yg,Ec,Zg,e0,IS,t0,n0,r0,AS,i0,a0,LS,PS,ff,OS,nl,pf,o0,na,Kr,Tc,Dc,mf,MS,NS,hf,Xn,s0,l0,jS,qS,Ee,c0,Rc,zS,u0,FS,d0,$S,VS,Fo,rl,$o,Tr,HS,BS,gf,WS,f0,Dr,Ic,US,il,KS,QS,GS,ra,XS,yf,JS,YS,ZS,p0,m0,eE,h0,tE,g0,y0,v0,nE,rE,b0,w0,iE,x0,aE,_0,oE,k0,vf,sE,Vo,bf,C0,lE,Qa,wf,Ei,S0,al,Ac,cE,xf,uE,E0,ia,dE,Lc,fE,pE,T0,D0,R0,mE,hE,gE,yE,I0,A0,vE,bE,wE,xE,Pc,_E,_f,L0,kf,kE,CE,Cf,SE,EE,ol,Sf,P0,O0,M0,TE,lr,DE,RE,Ef,N0,IE,AE,Lt,j0,LE,Ho,PE,Tf,Bo,q0,Wo,ci,Oc,Mc,z0,F0,Df,$0,OE,V0,ME,H0,B0,NE,Nc,Rf,W0,jE,U0,K0,If,Q0,Af,G0,Lf,Rr,aa,qE,ui,X0,Pf,Jn,zE,Of,FE,$E,VE,Mf,J0,HE,BE,Y0,WE,Uo,UE,jc,Ko,Z0,ey,KE,QE,ty,GE,XE,JE,YE,ZE,ny,Nf,eT,tT,nT,rT,iT,aT,oT,qc,sT,lT,Ga,ry,cT,Xa,uT,dT,zc,fT,pT,mT,hT,gT,iy,yT,vT,ay,bT,Fc,oy,wT,jf,sy,xT,$c,qf,ft,ly,_T,cy,Ja,Ir,kT,sl,uy,dy,CT,N6=(async()=>{var co,Di,Tm,uo;let oa,di,Ya;oa=Pe((e=>{function t(te,he){var G=te.length;te.push(he);e:for(;0<G;){var Ne=G-1>>>1,qe=te[Ne];if(0<o(qe,he))te[Ne]=he,te[G]=qe,G=Ne;else break e}}function n(te){return te.length===0?null:te[0]}function i(te){if(te.length===0)return null;var he=te[0],G=te.pop();if(G!==he){te[0]=G;e:for(var Ne=0,qe=te.length,Qe=qe>>>1;Ne<Qe;){var He=2*(Ne+1)-1,Fe=te[He],Oe=He+1,Be=te[Oe];if(0>o(Fe,G))Oe<qe&&0>o(Be,Fe)?(te[Ne]=Be,te[Oe]=G,Ne=Oe):(te[Ne]=Fe,te[He]=G,Ne=He);else if(Oe<qe&&0>o(Be,G))te[Ne]=Be,te[Oe]=G,Ne=Oe;else break e}}return he}function o(te,he){var G=te.sortIndex-he.sortIndex;return G===0?te.id-he.id:G}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var l=performance;e.unstable_now=function(){return l.now()}}else{var u=Date,d=u.now();e.unstable_now=function(){return u.now()-d}}var p=[],g=[],w=1,x=null,S=3,E=!1,T=!1,O=!1,j=!1,z=typeof setTimeout=="function"?setTimeout:null,V=typeof clearTimeout=="function"?clearTimeout:null,P=typeof setImmediate<"u"?setImmediate:null;function U(te){for(var he=n(g);he!==null;){if(he.callback===null)i(g);else if(he.startTime<=te)i(g),he.sortIndex=he.expirationTime,t(p,he);else break;he=n(g)}}function me(te){if(O=!1,U(te),!T)if(n(p)!==null)T=!0,$||($=!0,Z());else{var he=n(g);he!==null&&ce(me,he.startTime-te)}}var $=!1,W=-1,ae=5,xe=-1;function _e(){return j?!0:!(e.unstable_now()-xe<ae)}function Te(){if(j=!1,$){var te=e.unstable_now();xe=te;var he=!0;try{e:{T=!1,O&&(O=!1,V(W),W=-1),E=!0;var G=S;try{t:{for(U(te),x=n(p);x!==null&&!(x.expirationTime>te&&_e());){var Ne=x.callback;if(typeof Ne=="function"){x.callback=null,S=x.priorityLevel;var qe=Ne(x.expirationTime<=te);if(te=e.unstable_now(),typeof qe=="function"){x.callback=qe,U(te),he=!0;break t}x===n(p)&&i(p),U(te)}else i(p);x=n(p)}if(x!==null)he=!0;else{var Qe=n(g);Qe!==null&&ce(me,Qe.startTime-te),he=!1}}break e}finally{x=null,S=G,E=!1}he=void 0}}finally{he?Z():$=!1}}}var Z;if(typeof P=="function")Z=function(){P(Te)};else if(typeof MessageChannel<"u"){var Q=new MessageChannel,Y=Q.port2;Q.port1.onmessage=Te,Z=function(){Y.postMessage(null)}}else Z=function(){z(Te,0)};function ce(te,he){W=z(function(){te(e.unstable_now())},he)}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(te){te.callback=null},e.unstable_forceFrameRate=function(te){0>te||125<te?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):ae=0<te?Math.floor(1e3/te):5},e.unstable_getCurrentPriorityLevel=function(){return S},e.unstable_next=function(te){switch(S){case 1:case 2:case 3:var he=3;break;default:he=S}var G=S;S=he;try{return te()}finally{S=G}},e.unstable_requestPaint=function(){j=!0},e.unstable_runWithPriority=function(te,he){switch(te){case 1:case 2:case 3:case 4:case 5:break;default:te=3}var G=S;S=te;try{return he()}finally{S=G}},e.unstable_scheduleCallback=function(te,he,G){var Ne=e.unstable_now();switch(typeof G=="object"&&G?(G=G.delay,G=typeof G=="number"&&0<G?Ne+G:Ne):G=Ne,te){case 1:var qe=-1;break;case 2:qe=250;break;case 5:qe=1073741823;break;case 4:qe=1e4;break;default:qe=5e3}return qe=G+qe,te={id:w++,callback:he,priorityLevel:te,startTime:G,expirationTime:qe,sortIndex:-1},G>Ne?(te.sortIndex=G,t(g,te),n(p)===null&&te===n(g)&&(O?(V(W),W=-1):O=!0,ce(me,G-Ne))):(te.sortIndex=qe,t(p,te),T||E||(T=!0,$||($=!0,Z()))),te},e.unstable_shouldYield=_e,e.unstable_wrapCallback=function(te){var he=S;return function(){var G=S;S=he;try{return te.apply(this,arguments)}finally{S=G}}}})),di=Pe(((e,t)=>{t.exports=oa()})),Ya=Pe((e=>{var t=di(),n=Kd(),i=LC();function o(r){var a="https://react.dev/errors/"+r;if(1<arguments.length){a+="?args[]="+encodeURIComponent(arguments[1]);for(var s=2;s<arguments.length;s++)a+="&args[]="+encodeURIComponent(arguments[s])}return"Minified React error #"+r+"; visit "+a+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function l(r){return!(!r||r.nodeType!==1&&r.nodeType!==9&&r.nodeType!==11)}function u(r){var a=r,s=r;if(r.alternate)for(;a.return;)a=a.return;else{r=a;do a=r,a.flags&4098&&(s=a.return),r=a.return;while(r)}return a.tag===3?s:null}function d(r){if(r.tag===13){var a=r.memoizedState;if(a===null&&(r=r.alternate,r!==null&&(a=r.memoizedState)),a!==null)return a.dehydrated}return null}function p(r){if(r.tag===31){var a=r.memoizedState;if(a===null&&(r=r.alternate,r!==null&&(a=r.memoizedState)),a!==null)return a.dehydrated}return null}function g(r){if(u(r)!==r)throw Error(o(188))}function w(r){var a=r.alternate;if(!a){if(a=u(r),a===null)throw Error(o(188));return a===r?r:null}for(var s=r,c=a;;){var m=s.return;if(m===null)break;var y=m.alternate;if(y===null){if(c=m.return,c!==null){s=c;continue}break}if(m.child===y.child){for(y=m.child;y;){if(y===s)return g(m),r;if(y===c)return g(m),a;y=y.sibling}throw Error(o(188))}if(s.return!==c.return)s=m,c=y;else{for(var C=!1,R=m.child;R;){if(R===s){C=!0,s=m,c=y;break}if(R===c){C=!0,c=m,s=y;break}R=R.sibling}if(!C){for(R=y.child;R;){if(R===s){C=!0,s=y,c=m;break}if(R===c){C=!0,c=y,s=m;break}R=R.sibling}if(!C)throw Error(o(189))}}if(s.alternate!==c)throw Error(o(190))}if(s.tag!==3)throw Error(o(188));return s.stateNode.current===s?r:a}function x(r){var a=r.tag;if(a===5||a===26||a===27||a===6)return r;for(r=r.child;r!==null;){if(a=x(r),a!==null)return a;r=r.sibling}return null}var S=Object.assign,E=Symbol.for("react.element"),T=Symbol.for("react.transitional.element"),O=Symbol.for("react.portal"),j=Symbol.for("react.fragment"),z=Symbol.for("react.strict_mode"),V=Symbol.for("react.profiler"),P=Symbol.for("react.consumer"),U=Symbol.for("react.context"),me=Symbol.for("react.forward_ref"),$=Symbol.for("react.suspense"),W=Symbol.for("react.suspense_list"),ae=Symbol.for("react.memo"),xe=Symbol.for("react.lazy"),_e=Symbol.for("react.activity"),Te=Symbol.for("react.memo_cache_sentinel"),Z=Symbol.iterator;function Q(r){return typeof r!="object"||!r?null:(r=Z&&r[Z]||r["@@iterator"],typeof r=="function"?r:null)}var Y=Symbol.for("react.client.reference");function ce(r){if(r==null)return null;if(typeof r=="function")return r.$$typeof===Y?null:r.displayName||r.name||null;if(typeof r=="string")return r;switch(r){case j:return"Fragment";case V:return"Profiler";case z:return"StrictMode";case $:return"Suspense";case W:return"SuspenseList";case _e:return"Activity"}if(typeof r=="object")switch(r.$$typeof){case O:return"Portal";case U:return r.displayName||"Context";case P:return(r._context.displayName||"Context")+".Consumer";case me:var a=r.render;return r=r.displayName,r||(r=(r=a.displayName||a.name||"",r===""?"ForwardRef":"ForwardRef("+r+")")),r;case ae:return a=r.displayName||null,a===null?ce(r.type)||"Memo":a;case xe:a=r._payload,r=r._init;try{return ce(r(a))}catch{}}return null}var te=Array.isArray,he=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,G=i.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Ne={pending:!1,data:null,method:null,action:null},qe=[],Qe=-1;function He(r){return{current:r}}function Fe(r){0>Qe||(r.current=qe[Qe],qe[Qe]=null,Qe--)}function Oe(r,a){Qe++,qe[Qe]=r.current,r.current=a}var Be=He(null),gt=He(null),bt=He(null),Mn=He(null);function gn(r,a){switch(Oe(bt,a),Oe(gt,r),Oe(Be,null),a.nodeType){case 9:case 11:r=(r=a.documentElement)&&(r=r.namespaceURI)?nC(r):0;break;default:if(r=a.tagName,a=a.namespaceURI)a=nC(a),r=rC(a,r);else switch(r){case"svg":r=1;break;case"math":r=2;break;default:r=0}}Fe(Be),Oe(Be,r)}function Xe(){Fe(Be),Fe(gt),Fe(bt)}function cn(r){r.memoizedState!==null&&Oe(Mn,r);var a=Be.current,s=rC(a,r.type);a!==s&&(Oe(gt,r),Oe(Be,s))}function kt(r){gt.current===r&&(Fe(Be),Fe(gt)),Mn.current===r&&(Fe(Mn),vc._currentValue=Ne)}var kn,Lr;function yt(r){if(kn===void 0)try{throw Error()}catch(s){var a=s.stack.trim().match(/\n( *(at )?)/);kn=a&&a[1]||"",Lr=-1<s.stack.indexOf(`
3
3
  at`)?" (<anonymous>)":-1<s.stack.indexOf("@")?"@unknown:0:0":""}return`
4
4
  `+kn+r+Lr}var Yr=!1;function un(r,a){if(!r||Yr)return"";Yr=!0;var s=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var c={DetermineComponentFrameRoot:function(){try{if(a){var ve=function(){throw Error()};if(Object.defineProperty(ve.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(ve,[])}catch(fe){var se=fe}Reflect.construct(r,[],ve)}else{try{ve.call()}catch(fe){se=fe}r.call(ve.prototype)}}else{try{throw Error()}catch(fe){se=fe}(ve=r())&&typeof ve.catch=="function"&&ve.catch(function(){})}}catch(fe){if(fe&&se&&typeof fe.stack=="string")return[fe.stack,se.stack]}return[null,null]}};c.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var m=Object.getOwnPropertyDescriptor(c.DetermineComponentFrameRoot,"name");m&&m.configurable&&Object.defineProperty(c.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var y=c.DetermineComponentFrameRoot(),C=y[0],R=y[1];if(C&&R){var H=C.split(`
5
5
  `),ie=R.split(`
@@ -1 +1 @@
1
- import{o as $}from"./chunk-C4rtOYze.js";import{t as K}from"./react-C60yClUi.js";import{Fr as Q,Ir as U,Vr as X}from"./cells-DTFqEQb0.js";import{A as Z,C as F,L as z,T as ee}from"./zod-BIDX-mZr.js";import{t as S}from"./compiler-runtime-DnimoHo0.js";import{t as te}from"./isEmpty-C6LCYhSH.js";import{Y as re}from"./ai-model-dropdown-BJp70TST.js";import{g as se}from"./useEventListener-DpNnLPuE.js";import{t as k}from"./cn-DCUzRj2J.js";import{t as ae}from"./jsx-runtime-3wZU7vFS.js";import{a as D,i as E,o as G,r as V}from"./config-DjP9S1hr.js";import{t as J}from"./button-W__YVea9.js";import{i as T}from"./strings-DmKKoXrM.js";import{t as M}from"./createLucideIcon-B8oVfJNp.js";import{t as le}from"./ban-4j7Lld5O.js";import{t as ne}from"./bot-message-square-CHGXChWr.js";import{r as ie}from"./x-4y-nyVDU.js";import{t as I}from"./markdown-renderer-BjuEVUOa.js";import{d as W,m as P}from"./add-cell-with-ai-HD16K3PB.js";import{t as oe}from"./external-link-C8y9rFms.js";import{n as ce}from"./spinner-Cj3eM5bt.js";import{l as de}from"./datasource-DZgUyqAK.js";import{t as ue}from"./RenderHTML-X9kskQZ0.js";var me=M("circle-slash",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"9",x2:"15",y1:"15",y2:"9",key:"1dfufj"}]]),pe=M("shield-question-mark",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M9.1 9a3 3 0 0 1 5.82 1c0 2-3 3-3 3",key:"mhlwft"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);function xe(o){if(o.type==="abort")return o.reason}function fe(o){return o.isAbort?o.streamReason||"user_cancelled":null}function he(o){switch(o){case"user_cancelled":return"Generation stopped";case"timeout":return"Generation stopped: timed out";default:return`Generation stopped: ${o}`}}var ve=S(),C=$(K(),1),r=$(ae(),1);const be=o=>{let e=(0,ve.c)(13),{reasoning:l,index:n,isStreaming:s}=o,i=n===void 0?0:n,t=s===void 0?!1:s,[a,u]=C.useState("");if(!l&&!t)return null;let f=t?"reasoning":a,p;e[0]===Symbol.for("react.memo_cache_sentinel")?(p=(0,r.jsx)(ne,{className:"h-3 w-3"}),e[0]=p):p=e[0];let v=t?"Thinking":"View reasoning",x=l.length>0&&` (${l.length} chars)`,d;e[1]!==v||e[2]!==x?(d=(0,r.jsx)(G,{className:"text-xs text-muted-foreground hover:bg-muted/50 px-2 py-1 h-auto rounded-sm [&[data-state=open]>svg]:rotate-180",children:(0,r.jsxs)("span",{className:"flex items-center gap-2",children:[p,v,x]})}),e[1]=v,e[2]=x,e[3]=d):d=e[3];let m;e[4]===l?m=e[5]:(m=(0,r.jsx)(E,{className:"pb-2 px-2",children:(0,r.jsx)("div",{className:"bg-muted/30 border border-muted/50 rounded-md p-3 italic text-muted-foreground/90 relative",children:(0,r.jsx)("div",{className:"pr-6",children:(0,r.jsx)(I,{content:l})})})}),e[4]=l,e[5]=m);let c;e[6]!==d||e[7]!==m?(c=(0,r.jsxs)(D,{value:"reasoning",className:"border-0",children:[d,m]}),e[6]=d,e[7]=m,e[8]=c):c=e[8];let h;return e[9]!==i||e[10]!==f||e[11]!==c?(h=(0,r.jsx)(V,{type:"single",collapsible:!0,className:"w-full mb-2",value:f,onValueChange:u,children:c},i),e[9]=i,e[10]=f,e[11]=c,e[12]=h):h=e[12],h};function L(o){return o.replace("tool-","")}var je=S();const q=o=>{let e=(0,je.c)(9),{input:l,label:n}=o,s=n===void 0?"Tool Request":n;if(l==null)return null;let i;e[0]===s?i=e[1]:(i=(0,r.jsx)("h3",{className:"text-xs font-semibold text-muted-foreground",children:s}),e[0]=s,e[1]=i);let t;e[2]===l?t=e[3]:(t=JSON.stringify(l,null,2),e[2]=l,e[3]=t);let a;e[4]===t?a=e[5]:(a=(0,r.jsx)("pre",{className:"bg-(--slate-2) p-2 text-muted-foreground border border-(--slate-4) rounded text-xs overflow-auto scrollbar-thin max-h-64",children:t}),e[4]=t,e[5]=a);let u;return e[6]!==i||e[7]!==a?(u=(0,r.jsxs)("div",{className:"space-y-2",children:[i,a]}),e[6]=i,e[7]=a,e[8]=u):u=e[8],u};var ge=S();const Ne=o=>{let e=(0,ge.c)(25),{toolName:l,input:n,approval:s,onApprove:i,className:t}=o,a;e[0]===t?a=e[1]:(a=k("rounded-md border border-(--amber-6) bg-(--amber-2) p-3 space-y-3",t),e[0]=t,e[1]=a);let u=`Approval required for ${L(l)}`,f;e[2]===Symbol.for("react.memo_cache_sentinel")?(f=(0,r.jsx)(pe,{className:"h-4 w-4 text-(--amber-11) mt-0.5 shrink-0"}),e[2]=f):f=e[2];let p;e[3]===Symbol.for("react.memo_cache_sentinel")?(p=(0,r.jsx)("span",{className:"font-semibold",children:"Approval required:"}),e[3]=p):p=e[3];let v;e[4]===l?v=e[5]:(v=L(l),e[4]=l,e[5]=v);let x;e[6]===v?x=e[7]:(x=(0,r.jsxs)("div",{className:"flex items-start gap-2",children:[f,(0,r.jsxs)("div",{className:"text-xs text-(--amber-11) leading-relaxed",children:[p," ",(0,r.jsx)("code",{className:"font-mono",children:v})]})]}),e[6]=v,e[7]=x);let d;e[8]===n?d=e[9]:(d=(0,r.jsx)(q,{input:n}),e[8]=n,e[9]=d);let m;e[10]!==s.id||e[11]!==i?(m=(0,r.jsx)(J,{size:"xs",variant:"outline",onClick:()=>i({id:s.id,approved:!1}),children:"Deny"}),e[10]=s.id,e[11]=i,e[12]=m):m=e[12];let c;e[13]!==s.id||e[14]!==i?(c=(0,r.jsx)(J,{size:"xs",onClick:()=>i({id:s.id,approved:!0}),children:"Approve"}),e[13]=s.id,e[14]=i,e[15]=c):c=e[15];let h;e[16]!==m||e[17]!==c?(h=(0,r.jsxs)("div",{className:"flex items-center justify-end gap-2",children:[m,c]}),e[16]=m,e[17]=c,e[18]=h):h=e[18];let b;return e[19]!==a||e[20]!==h||e[21]!==u||e[22]!==x||e[23]!==d?(b=(0,r.jsxs)("div",{className:a,role:"alertdialog","aria-label":u,children:[x,d,h]}),e[19]=a,e[20]=h,e[21]=u,e[22]=x,e[23]=d,e[24]=b):b=e[24],b};var ye=S();const we=o=>{let e=(0,ye.c)(28),{toolName:l,input:n,errorText:s,isLive:i,className:t}=o,[a,u]=C.useState(i),f=C.useRef(i),p,v;e[0]===i?(p=e[1],v=e[2]):(p=()=>{f.current&&!i&&u(!1),f.current=i},v=[i],e[0]=i,e[1]=p,e[2]=v),C.useEffect(p,v);let x;e[3]===t?x=e[4]:(x=k("rounded-md border border-(--red-6) bg-(--red-2)",t),e[3]=t,e[4]=x);let d;e[5]===Symbol.for("react.memo_cache_sentinel")?(d=()=>u(_e),e[5]=d):d=e[5];let m;e[6]===Symbol.for("react.memo_cache_sentinel")?(m=(0,r.jsx)(X,{className:"h-3.5 w-3.5 shrink-0"}),e[6]=m):m=e[6];let c;e[7]===Symbol.for("react.memo_cache_sentinel")?(c=(0,r.jsx)("span",{className:"font-semibold",children:"Failed:"}),e[7]=c):c=e[7];let h;e[8]===l?h=e[9]:(h=L(l),e[8]=l,e[9]=h);let b;e[10]===h?b=e[11]:(b=(0,r.jsxs)("span",{className:"flex-1 text-left",children:[c," ",(0,r.jsx)("code",{className:"font-mono",children:h})]}),e[10]=h,e[11]=b);let _=a&&"rotate-180",j;e[12]===_?j=e[13]:(j=k("h-3.5 w-3.5 shrink-0 transition-transform",_),e[12]=_,e[13]=j);let g;e[14]===j?g=e[15]:(g=(0,r.jsx)(ie,{className:j}),e[14]=j,e[15]=g);let N;e[16]!==a||e[17]!==g||e[18]!==b?(N=(0,r.jsxs)("button",{type:"button",onClick:d,className:"w-full flex items-center gap-2 px-3 py-2 text-xs text-(--red-11) hover:bg-(--red-3) rounded-md transition-colors","aria-expanded":a,children:[m,b,g]}),e[16]=a,e[17]=g,e[18]=b,e[19]=N):N=e[19];let y;e[20]!==s||e[21]!==n||e[22]!==a?(y=a&&(0,r.jsxs)("div",{className:"px-3 pb-3 space-y-3 border-t border-(--red-6)/40 pt-3",children:[(0,r.jsx)(q,{input:n}),s&&(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"text-xs font-semibold text-(--red-11) mb-1",children:"Error"}),(0,r.jsx)("pre",{className:"bg-(--red-2) border border-(--red-6) rounded p-2 text-xs text-(--red-11) leading-relaxed overflow-auto scrollbar-thin max-h-64 whitespace-pre-wrap",children:s})]})]}),e[20]=s,e[21]=n,e[22]=a,e[23]=y):y=e[23];let w;return e[24]!==N||e[25]!==y||e[26]!==x?(w=(0,r.jsxs)("div",{className:x,children:[N,y]}),e[24]=N,e[25]=y,e[26]=x,e[27]=w):w=e[27],w};function _e(o){return!o}var Y=S();function Se(o){return o==null?!0:typeof o=="object"?te(o):!1}var Ae=Z({status:z().default("success"),auth_required:ee().default(!1),action_url:F(),next_steps:F(),meta:F(),message:z().nullish()}),ke=o=>{let e=(0,Y.c)(12),{data:l}=o,n;if(e[0]!==l){let{status:s,auth_required:i,action_url:t,meta:a,next_steps:u,message:f,...p}=l,v;e[2]===Symbol.for("react.memo_cache_sentinel")?(v=(0,r.jsx)("h3",{className:"text-xs font-semibold text-muted-foreground",children:"Tool Result"}),e[2]=v):v=e[2];let x;e[3]===s?x=e[4]:(x=(0,r.jsx)("span",{className:"text-xs px-2 py-0.5 bg-(--grass-2) text-(--grass-11) rounded-full font-medium capitalize",children:s}),e[3]=s,e[4]=x);let d;e[5]===i?d=e[6]:(d=i&&(0,r.jsx)("span",{className:"text-xs px-2 py-0.5 bg-(--amber-2) text-(--amber-11) rounded-full",children:"Auth Required"}),e[5]=i,e[6]=d);let m;e[7]!==x||e[8]!==d?(m=(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[v,(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[x,d]})]}),e[7]=x,e[8]=d,e[9]=m):m=e[9];let c;e[10]===f?c=e[11]:(c=f&&(0,r.jsxs)("div",{className:"flex items-start gap-2",children:[(0,r.jsx)(Q,{className:"h-3 w-3 text-(--blue-11) mt-0.5 shrink-0"}),(0,r.jsx)("div",{className:"text-xs text-foreground",children:f})]}),e[10]=f,e[11]=c),n=(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[m,c,p&&(0,r.jsx)("div",{className:"space-y-3",children:Object.entries(p).map(Ce)})]}),e[0]=l,e[1]=n}else n=e[1];return n};const Te=o=>{let e=(0,Y.c)(8),{result:l}=o,n;e[0]===l?n=e[1]:(n=Ae.safeParse(l),e[0]=l,e[1]=n);let s=n;if(s.success){let a;return e[2]===s.data?a=e[3]:(a=(0,r.jsx)(ke,{data:s.data}),e[2]=s.data,e[3]=a),a}let i;e[4]===l?i=e[5]:(i=typeof l=="string"?l:JSON.stringify(l,null,2),e[4]=l,e[5]=i);let t;return e[6]===i?t=e[7]:(t=(0,r.jsx)("div",{className:"text-xs font-medium text-muted-foreground mb-1 max-h-64 overflow-y-auto scrollbar-thin",children:i}),e[6]=i,e[7]=t),t};function Ce(o){let[e,l]=o;return Se(l)?null:(0,r.jsxs)("div",{className:"space-y-1.5",children:[(0,r.jsx)("span",{className:"text-xs text-muted-foreground",children:e}),(0,r.jsx)("pre",{className:"bg-(--slate-2) p-2 text-muted-foreground border border-(--slate-4) rounded text-xs overflow-auto scrollbar-thin max-h-64",children:JSON.stringify(l,null,2)})]},e)}var O=S(),qe={"input-streaming":"Generating","input-available":"Running","approval-responded":"Awaiting result","output-available":"Done","output-denied":"Denied"},Re=new Set(["input-streaming","input-available","approval-responded"]),Le=o=>{let e=(0,O.c)(5),{state:l,interrupted:n}=o;if(n){let s;return e[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(me,{className:"h-3 w-3 text-muted-foreground"}),e[0]=s):s=e[0],s}switch(l){case"input-streaming":case"input-available":case"approval-responded":{let s;return e[1]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(ce,{className:"h-3 w-3 animate-spin"}),e[1]=s):s=e[1],s}case"output-available":{let s;return e[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(re,{className:"h-3 w-3 text-(--grass-11)"}),e[2]=s):s=e[2],s}case"output-denied":{let s;return e[3]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(le,{className:"h-3 w-3 text-muted-foreground"}),e[3]=s):s=e[3],s}default:{T(l);let s;return e[4]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(de,{className:"h-3 w-3"}),e[4]=s):s=e[4],s}}};function Fe(o){switch(o){case"output-available":return"text-(--grass-11)/80";case"output-denied":return"text-muted-foreground";case"input-streaming":case"input-available":case"approval-responded":return"";default:return T(o),""}}const B=o=>{let e=(0,O.c)(34),{toolName:l,state:n,input:s,result:i,approval:t,index:a,className:u,isActive:f}=o,p=a===void 0?0:a,v=f===void 0?!0:f,x;e[0]!==v||e[1]!==n?(x=!v&&Re.has(n),e[0]=v,e[1]=n,e[2]=x):x=e[2];let d=x,m=`tool-${p}`,c;e[3]===u?c=e[4]:(c=k("w-full",u),e[3]=u,e[4]=c);let h;e[5]!==d||e[6]!==n?(h=k("h-6 text-xs border-border shadow-none! ring-0! bg-muted/60 hover:bg-muted py-0 px-2 gap-1 rounded-sm [&[data-state=open]>svg]:rotate-180 hover:no-underline",d?"text-muted-foreground":Fe(n)),e[5]=d,e[6]=n,e[7]=h):h=e[7];let b;e[8]!==d||e[9]!==n?(b=(0,r.jsx)(Le,{state:n,interrupted:d}),e[8]=d,e[9]=n,e[10]=b):b=e[10];let _=d?"Interrupted":qe[n],j;e[11]===l?j=e[12]:(j=L(l),e[11]=l,e[12]=j);let g;e[13]===j?g=e[14]:(g=(0,r.jsx)("code",{className:"font-mono text-xs",children:j}),e[13]=j,e[14]=g);let N;e[15]!==g||e[16]!==b||e[17]!==_?(N=(0,r.jsxs)("span",{className:"flex items-center gap-1",children:[b,_,":",g]}),e[15]=g,e[16]=b,e[17]=_,e[18]=N):N=e[18];let y;e[19]!==N||e[20]!==h?(y=(0,r.jsx)(G,{className:h,children:N}),e[19]=N,e[20]=h,e[21]=y):y=e[21];let w;e[22]!==t||e[23]!==s||e[24]!==i||e[25]!==n?(w=(0,r.jsx)(E,{className:"py-2 px-2",children:(0,r.jsx)(Oe,{state:n,input:s,result:i,approval:t})}),e[22]=t,e[23]=s,e[24]=i,e[25]=n,e[26]=w):w=e[26];let A;e[27]!==y||e[28]!==w?(A=(0,r.jsxs)(D,{value:"tool-call",className:"border-0",children:[y,w]}),e[27]=y,e[28]=w,e[29]=A):A=e[29];let R;return e[30]!==A||e[31]!==m||e[32]!==c?(R=(0,r.jsx)(V,{type:"single",collapsible:!0,className:c,children:A},m),e[30]=A,e[31]=m,e[32]=c,e[33]=R):R=e[33],R};var Oe=o=>{let e=(0,O.c)(16),{state:l,input:n,result:s,approval:i}=o;switch(l){case"input-streaming":case"input-available":case"approval-responded":{let t;return e[0]===n?t=e[1]:(t=(0,r.jsx)(q,{input:n}),e[0]=n,e[1]=t),t}case"output-available":{let t;e[2]===n?t=e[3]:(t=(0,r.jsx)(q,{input:n}),e[2]=n,e[3]=t);let a;e[4]===s?a=e[5]:(a=s!=null&&(0,r.jsx)(Te,{result:s}),e[4]=s,e[5]=a);let u;return e[6]!==t||e[7]!==a?(u=(0,r.jsxs)("div",{className:"space-y-3",children:[t,a]}),e[6]=t,e[7]=a,e[8]=u):u=e[8],u}case"output-denied":{let t;e[9]===n?t=e[10]:(t=(0,r.jsx)(q,{input:n}),e[9]=n,e[10]=t);let a=i!=null&&i.reason?`: ${i.reason}`:".",u;e[11]===a?u=e[12]:(u=(0,r.jsxs)("div",{className:"bg-muted/40 border border-border rounded-md p-3 text-xs text-muted-foreground leading-relaxed",children:["Tool execution was denied",a]}),e[11]=a,e[12]=u);let f;return e[13]!==t||e[14]!==u?(f=(0,r.jsxs)("div",{className:"space-y-3",children:[t,u]}),e[13]=t,e[14]=u,e[15]=f):f=e[15],f}default:return T(l),null}},$e=S();const H=o=>{let e=(0,$e.c)(27),{toolName:l,state:n,result:s,errorText:i,input:t,approval:a,onApprove:u,index:f,className:p,isLive:v,isActive:x}=o,d=v===void 0?!0:v,m=x===void 0?!0:x;switch(n){case"approval-requested":{if(a!=null&&u!=null){let h;return e[0]!==a||e[1]!==p||e[2]!==t||e[3]!==u||e[4]!==l?(h=(0,r.jsx)(Ne,{toolName:l,input:t,approval:a,onApprove:u,className:p}),e[0]=a,e[1]=p,e[2]=t,e[3]=u,e[4]=l,e[5]=h):h=e[5],h}let c;return e[6]!==p||e[7]!==f||e[8]!==t||e[9]!==m||e[10]!==l?(c=(0,r.jsx)(B,{toolName:l,state:"input-available",input:t,index:f,className:p,isActive:m}),e[6]=p,e[7]=f,e[8]=t,e[9]=m,e[10]=l,e[11]=c):c=e[11],c}case"output-error":{let c;return e[12]!==p||e[13]!==i||e[14]!==t||e[15]!==d||e[16]!==l?(c=(0,r.jsx)(we,{toolName:l,input:t,errorText:i,isLive:d,className:p}),e[12]=p,e[13]=i,e[14]=t,e[15]=d,e[16]=l,e[17]=c):c=e[17],c}case"input-streaming":case"input-available":case"approval-responded":case"output-available":case"output-denied":{let c;return e[18]!==a||e[19]!==p||e[20]!==f||e[21]!==t||e[22]!==m||e[23]!==s||e[24]!==n||e[25]!==l?(c=(0,r.jsx)(B,{toolName:l,state:n,input:t,result:s,approval:a,index:f,className:p,isActive:m}),e[18]=a,e[19]=p,e[20]=f,e[21]=t,e[22]=m,e[23]=s,e[24]=n,e[25]=l,e[26]=c):c=e[26],c}default:return T(n),null}},ze=({message:o,isStreamingReasoning:e,isLast:l,isActive:n,addToolApprovalResponse:s})=>{return(0,r.jsx)(r.Fragment,{children:o.parts.map((t,a)=>i(t,a))});function i(t,a){if(De(t))return(0,r.jsx)(H,{index:a,toolName:t.type,result:t.output,errorText:t.state==="output-error"?t.errorText:void 0,className:"my-2",state:t.state,input:t.input,approval:t.approval,onApprove:s,isLive:l,isActive:n},a);if(Ee(t))return se.debug("Found data part",t),null;switch(t.type){case"text":return t.text.includes("<marimo-")?(0,r.jsx)(C.Fragment,{children:ue({html:t.text})},a):(0,r.jsx)(I,{content:t.text},a);case"reasoning":return(0,r.jsx)(be,{reasoning:t.text,index:a,isStreaming:e&&l&&a===(o.parts.length||0)-1},a);case"file":return(0,r.jsx)(W,{attachment:t},a);case"reasoning-file":return(0,r.jsx)(W,{attachment:{type:"file",mediaType:t.mediaType,url:t.url}},a);case"dynamic-tool":return(0,r.jsx)(H,{toolName:t.toolName,result:t.output,errorText:t.state==="output-error"?t.errorText:void 0,state:t.state,input:t.input,approval:t.approval,onApprove:s,isLive:l,isActive:n},a);case"source-document":return(0,r.jsx)(P,{icon:(0,r.jsx)(U,{className:"h-3 w-3 shrink-0"}),title:t.title,subtitle:t.filename},a);case"source-url":return(0,r.jsx)(P,{icon:(0,r.jsx)(oe,{className:"h-3 w-3 shrink-0"}),title:t.title??t.url,subtitle:t.title?t.url:void 0,href:t.url},a);case"custom":return(0,r.jsx)("div",{className:"text-sm text-muted-foreground",children:t.kind},a);case"step-start":return null;default:return T(t),null}}};function De(o){return o.type.startsWith("tool-")}function Ee(o){return o.type.startsWith("data-")}export{fe as i,he as n,xe as r,ze as t};
1
+ import{o as $}from"./chunk-C4rtOYze.js";import{t as K}from"./react-C60yClUi.js";import{Fr as Q,Ir as U,Vr as X}from"./cells-BvgwUKB9.js";import{A as Z,C as F,L as z,T as ee}from"./zod-BIDX-mZr.js";import{t as S}from"./compiler-runtime-DnimoHo0.js";import{t as te}from"./isEmpty-C6LCYhSH.js";import{Y as re}from"./ai-model-dropdown-Wvw4ot3v.js";import{g as se}from"./useEventListener-DpNnLPuE.js";import{t as k}from"./cn-DCUzRj2J.js";import{t as ae}from"./jsx-runtime-3wZU7vFS.js";import{a as D,i as E,o as G,r as V}from"./config-DjP9S1hr.js";import{t as J}from"./button-W__YVea9.js";import{i as T}from"./strings-DmKKoXrM.js";import{t as M}from"./createLucideIcon-B8oVfJNp.js";import{t as le}from"./ban-4j7Lld5O.js";import{t as ne}from"./bot-message-square-CHGXChWr.js";import{r as ie}from"./x-4y-nyVDU.js";import{t as I}from"./markdown-renderer-D7RLn6TA.js";import{d as W,m as P}from"./add-cell-with-ai--yrESuLb.js";import{t as oe}from"./external-link-C8y9rFms.js";import{n as ce}from"./spinner-Cj3eM5bt.js";import{l as de}from"./datasource-Le540Ng6.js";import{t as ue}from"./RenderHTML-BoN8Qu7U.js";var me=M("circle-slash",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"9",x2:"15",y1:"15",y2:"9",key:"1dfufj"}]]),pe=M("shield-question-mark",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M9.1 9a3 3 0 0 1 5.82 1c0 2-3 3-3 3",key:"mhlwft"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);function xe(o){if(o.type==="abort")return o.reason}function fe(o){return o.isAbort?o.streamReason||"user_cancelled":null}function he(o){switch(o){case"user_cancelled":return"Generation stopped";case"timeout":return"Generation stopped: timed out";default:return`Generation stopped: ${o}`}}var ve=S(),C=$(K(),1),r=$(ae(),1);const be=o=>{let e=(0,ve.c)(13),{reasoning:l,index:n,isStreaming:s}=o,i=n===void 0?0:n,t=s===void 0?!1:s,[a,u]=C.useState("");if(!l&&!t)return null;let f=t?"reasoning":a,p;e[0]===Symbol.for("react.memo_cache_sentinel")?(p=(0,r.jsx)(ne,{className:"h-3 w-3"}),e[0]=p):p=e[0];let v=t?"Thinking":"View reasoning",x=l.length>0&&` (${l.length} chars)`,d;e[1]!==v||e[2]!==x?(d=(0,r.jsx)(G,{className:"text-xs text-muted-foreground hover:bg-muted/50 px-2 py-1 h-auto rounded-sm [&[data-state=open]>svg]:rotate-180",children:(0,r.jsxs)("span",{className:"flex items-center gap-2",children:[p,v,x]})}),e[1]=v,e[2]=x,e[3]=d):d=e[3];let m;e[4]===l?m=e[5]:(m=(0,r.jsx)(E,{className:"pb-2 px-2",children:(0,r.jsx)("div",{className:"bg-muted/30 border border-muted/50 rounded-md p-3 italic text-muted-foreground/90 relative",children:(0,r.jsx)("div",{className:"pr-6",children:(0,r.jsx)(I,{content:l})})})}),e[4]=l,e[5]=m);let c;e[6]!==d||e[7]!==m?(c=(0,r.jsxs)(D,{value:"reasoning",className:"border-0",children:[d,m]}),e[6]=d,e[7]=m,e[8]=c):c=e[8];let h;return e[9]!==i||e[10]!==f||e[11]!==c?(h=(0,r.jsx)(V,{type:"single",collapsible:!0,className:"w-full mb-2",value:f,onValueChange:u,children:c},i),e[9]=i,e[10]=f,e[11]=c,e[12]=h):h=e[12],h};function L(o){return o.replace("tool-","")}var je=S();const q=o=>{let e=(0,je.c)(9),{input:l,label:n}=o,s=n===void 0?"Tool Request":n;if(l==null)return null;let i;e[0]===s?i=e[1]:(i=(0,r.jsx)("h3",{className:"text-xs font-semibold text-muted-foreground",children:s}),e[0]=s,e[1]=i);let t;e[2]===l?t=e[3]:(t=JSON.stringify(l,null,2),e[2]=l,e[3]=t);let a;e[4]===t?a=e[5]:(a=(0,r.jsx)("pre",{className:"bg-(--slate-2) p-2 text-muted-foreground border border-(--slate-4) rounded text-xs overflow-auto scrollbar-thin max-h-64",children:t}),e[4]=t,e[5]=a);let u;return e[6]!==i||e[7]!==a?(u=(0,r.jsxs)("div",{className:"space-y-2",children:[i,a]}),e[6]=i,e[7]=a,e[8]=u):u=e[8],u};var ge=S();const Ne=o=>{let e=(0,ge.c)(25),{toolName:l,input:n,approval:s,onApprove:i,className:t}=o,a;e[0]===t?a=e[1]:(a=k("rounded-md border border-(--amber-6) bg-(--amber-2) p-3 space-y-3",t),e[0]=t,e[1]=a);let u=`Approval required for ${L(l)}`,f;e[2]===Symbol.for("react.memo_cache_sentinel")?(f=(0,r.jsx)(pe,{className:"h-4 w-4 text-(--amber-11) mt-0.5 shrink-0"}),e[2]=f):f=e[2];let p;e[3]===Symbol.for("react.memo_cache_sentinel")?(p=(0,r.jsx)("span",{className:"font-semibold",children:"Approval required:"}),e[3]=p):p=e[3];let v;e[4]===l?v=e[5]:(v=L(l),e[4]=l,e[5]=v);let x;e[6]===v?x=e[7]:(x=(0,r.jsxs)("div",{className:"flex items-start gap-2",children:[f,(0,r.jsxs)("div",{className:"text-xs text-(--amber-11) leading-relaxed",children:[p," ",(0,r.jsx)("code",{className:"font-mono",children:v})]})]}),e[6]=v,e[7]=x);let d;e[8]===n?d=e[9]:(d=(0,r.jsx)(q,{input:n}),e[8]=n,e[9]=d);let m;e[10]!==s.id||e[11]!==i?(m=(0,r.jsx)(J,{size:"xs",variant:"outline",onClick:()=>i({id:s.id,approved:!1}),children:"Deny"}),e[10]=s.id,e[11]=i,e[12]=m):m=e[12];let c;e[13]!==s.id||e[14]!==i?(c=(0,r.jsx)(J,{size:"xs",onClick:()=>i({id:s.id,approved:!0}),children:"Approve"}),e[13]=s.id,e[14]=i,e[15]=c):c=e[15];let h;e[16]!==m||e[17]!==c?(h=(0,r.jsxs)("div",{className:"flex items-center justify-end gap-2",children:[m,c]}),e[16]=m,e[17]=c,e[18]=h):h=e[18];let b;return e[19]!==a||e[20]!==h||e[21]!==u||e[22]!==x||e[23]!==d?(b=(0,r.jsxs)("div",{className:a,role:"alertdialog","aria-label":u,children:[x,d,h]}),e[19]=a,e[20]=h,e[21]=u,e[22]=x,e[23]=d,e[24]=b):b=e[24],b};var ye=S();const we=o=>{let e=(0,ye.c)(28),{toolName:l,input:n,errorText:s,isLive:i,className:t}=o,[a,u]=C.useState(i),f=C.useRef(i),p,v;e[0]===i?(p=e[1],v=e[2]):(p=()=>{f.current&&!i&&u(!1),f.current=i},v=[i],e[0]=i,e[1]=p,e[2]=v),C.useEffect(p,v);let x;e[3]===t?x=e[4]:(x=k("rounded-md border border-(--red-6) bg-(--red-2)",t),e[3]=t,e[4]=x);let d;e[5]===Symbol.for("react.memo_cache_sentinel")?(d=()=>u(_e),e[5]=d):d=e[5];let m;e[6]===Symbol.for("react.memo_cache_sentinel")?(m=(0,r.jsx)(X,{className:"h-3.5 w-3.5 shrink-0"}),e[6]=m):m=e[6];let c;e[7]===Symbol.for("react.memo_cache_sentinel")?(c=(0,r.jsx)("span",{className:"font-semibold",children:"Failed:"}),e[7]=c):c=e[7];let h;e[8]===l?h=e[9]:(h=L(l),e[8]=l,e[9]=h);let b;e[10]===h?b=e[11]:(b=(0,r.jsxs)("span",{className:"flex-1 text-left",children:[c," ",(0,r.jsx)("code",{className:"font-mono",children:h})]}),e[10]=h,e[11]=b);let _=a&&"rotate-180",j;e[12]===_?j=e[13]:(j=k("h-3.5 w-3.5 shrink-0 transition-transform",_),e[12]=_,e[13]=j);let g;e[14]===j?g=e[15]:(g=(0,r.jsx)(ie,{className:j}),e[14]=j,e[15]=g);let N;e[16]!==a||e[17]!==g||e[18]!==b?(N=(0,r.jsxs)("button",{type:"button",onClick:d,className:"w-full flex items-center gap-2 px-3 py-2 text-xs text-(--red-11) hover:bg-(--red-3) rounded-md transition-colors","aria-expanded":a,children:[m,b,g]}),e[16]=a,e[17]=g,e[18]=b,e[19]=N):N=e[19];let y;e[20]!==s||e[21]!==n||e[22]!==a?(y=a&&(0,r.jsxs)("div",{className:"px-3 pb-3 space-y-3 border-t border-(--red-6)/40 pt-3",children:[(0,r.jsx)(q,{input:n}),s&&(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"text-xs font-semibold text-(--red-11) mb-1",children:"Error"}),(0,r.jsx)("pre",{className:"bg-(--red-2) border border-(--red-6) rounded p-2 text-xs text-(--red-11) leading-relaxed overflow-auto scrollbar-thin max-h-64 whitespace-pre-wrap",children:s})]})]}),e[20]=s,e[21]=n,e[22]=a,e[23]=y):y=e[23];let w;return e[24]!==N||e[25]!==y||e[26]!==x?(w=(0,r.jsxs)("div",{className:x,children:[N,y]}),e[24]=N,e[25]=y,e[26]=x,e[27]=w):w=e[27],w};function _e(o){return!o}var Y=S();function Se(o){return o==null?!0:typeof o=="object"?te(o):!1}var Ae=Z({status:z().default("success"),auth_required:ee().default(!1),action_url:F(),next_steps:F(),meta:F(),message:z().nullish()}),ke=o=>{let e=(0,Y.c)(12),{data:l}=o,n;if(e[0]!==l){let{status:s,auth_required:i,action_url:t,meta:a,next_steps:u,message:f,...p}=l,v;e[2]===Symbol.for("react.memo_cache_sentinel")?(v=(0,r.jsx)("h3",{className:"text-xs font-semibold text-muted-foreground",children:"Tool Result"}),e[2]=v):v=e[2];let x;e[3]===s?x=e[4]:(x=(0,r.jsx)("span",{className:"text-xs px-2 py-0.5 bg-(--grass-2) text-(--grass-11) rounded-full font-medium capitalize",children:s}),e[3]=s,e[4]=x);let d;e[5]===i?d=e[6]:(d=i&&(0,r.jsx)("span",{className:"text-xs px-2 py-0.5 bg-(--amber-2) text-(--amber-11) rounded-full",children:"Auth Required"}),e[5]=i,e[6]=d);let m;e[7]!==x||e[8]!==d?(m=(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[v,(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[x,d]})]}),e[7]=x,e[8]=d,e[9]=m):m=e[9];let c;e[10]===f?c=e[11]:(c=f&&(0,r.jsxs)("div",{className:"flex items-start gap-2",children:[(0,r.jsx)(Q,{className:"h-3 w-3 text-(--blue-11) mt-0.5 shrink-0"}),(0,r.jsx)("div",{className:"text-xs text-foreground",children:f})]}),e[10]=f,e[11]=c),n=(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[m,c,p&&(0,r.jsx)("div",{className:"space-y-3",children:Object.entries(p).map(Ce)})]}),e[0]=l,e[1]=n}else n=e[1];return n};const Te=o=>{let e=(0,Y.c)(8),{result:l}=o,n;e[0]===l?n=e[1]:(n=Ae.safeParse(l),e[0]=l,e[1]=n);let s=n;if(s.success){let a;return e[2]===s.data?a=e[3]:(a=(0,r.jsx)(ke,{data:s.data}),e[2]=s.data,e[3]=a),a}let i;e[4]===l?i=e[5]:(i=typeof l=="string"?l:JSON.stringify(l,null,2),e[4]=l,e[5]=i);let t;return e[6]===i?t=e[7]:(t=(0,r.jsx)("div",{className:"text-xs font-medium text-muted-foreground mb-1 max-h-64 overflow-y-auto scrollbar-thin",children:i}),e[6]=i,e[7]=t),t};function Ce(o){let[e,l]=o;return Se(l)?null:(0,r.jsxs)("div",{className:"space-y-1.5",children:[(0,r.jsx)("span",{className:"text-xs text-muted-foreground",children:e}),(0,r.jsx)("pre",{className:"bg-(--slate-2) p-2 text-muted-foreground border border-(--slate-4) rounded text-xs overflow-auto scrollbar-thin max-h-64",children:JSON.stringify(l,null,2)})]},e)}var O=S(),qe={"input-streaming":"Generating","input-available":"Running","approval-responded":"Awaiting result","output-available":"Done","output-denied":"Denied"},Re=new Set(["input-streaming","input-available","approval-responded"]),Le=o=>{let e=(0,O.c)(5),{state:l,interrupted:n}=o;if(n){let s;return e[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(me,{className:"h-3 w-3 text-muted-foreground"}),e[0]=s):s=e[0],s}switch(l){case"input-streaming":case"input-available":case"approval-responded":{let s;return e[1]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(ce,{className:"h-3 w-3 animate-spin"}),e[1]=s):s=e[1],s}case"output-available":{let s;return e[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(re,{className:"h-3 w-3 text-(--grass-11)"}),e[2]=s):s=e[2],s}case"output-denied":{let s;return e[3]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(le,{className:"h-3 w-3 text-muted-foreground"}),e[3]=s):s=e[3],s}default:{T(l);let s;return e[4]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(de,{className:"h-3 w-3"}),e[4]=s):s=e[4],s}}};function Fe(o){switch(o){case"output-available":return"text-(--grass-11)/80";case"output-denied":return"text-muted-foreground";case"input-streaming":case"input-available":case"approval-responded":return"";default:return T(o),""}}const B=o=>{let e=(0,O.c)(34),{toolName:l,state:n,input:s,result:i,approval:t,index:a,className:u,isActive:f}=o,p=a===void 0?0:a,v=f===void 0?!0:f,x;e[0]!==v||e[1]!==n?(x=!v&&Re.has(n),e[0]=v,e[1]=n,e[2]=x):x=e[2];let d=x,m=`tool-${p}`,c;e[3]===u?c=e[4]:(c=k("w-full",u),e[3]=u,e[4]=c);let h;e[5]!==d||e[6]!==n?(h=k("h-6 text-xs border-border shadow-none! ring-0! bg-muted/60 hover:bg-muted py-0 px-2 gap-1 rounded-sm [&[data-state=open]>svg]:rotate-180 hover:no-underline",d?"text-muted-foreground":Fe(n)),e[5]=d,e[6]=n,e[7]=h):h=e[7];let b;e[8]!==d||e[9]!==n?(b=(0,r.jsx)(Le,{state:n,interrupted:d}),e[8]=d,e[9]=n,e[10]=b):b=e[10];let _=d?"Interrupted":qe[n],j;e[11]===l?j=e[12]:(j=L(l),e[11]=l,e[12]=j);let g;e[13]===j?g=e[14]:(g=(0,r.jsx)("code",{className:"font-mono text-xs",children:j}),e[13]=j,e[14]=g);let N;e[15]!==g||e[16]!==b||e[17]!==_?(N=(0,r.jsxs)("span",{className:"flex items-center gap-1",children:[b,_,":",g]}),e[15]=g,e[16]=b,e[17]=_,e[18]=N):N=e[18];let y;e[19]!==N||e[20]!==h?(y=(0,r.jsx)(G,{className:h,children:N}),e[19]=N,e[20]=h,e[21]=y):y=e[21];let w;e[22]!==t||e[23]!==s||e[24]!==i||e[25]!==n?(w=(0,r.jsx)(E,{className:"py-2 px-2",children:(0,r.jsx)(Oe,{state:n,input:s,result:i,approval:t})}),e[22]=t,e[23]=s,e[24]=i,e[25]=n,e[26]=w):w=e[26];let A;e[27]!==y||e[28]!==w?(A=(0,r.jsxs)(D,{value:"tool-call",className:"border-0",children:[y,w]}),e[27]=y,e[28]=w,e[29]=A):A=e[29];let R;return e[30]!==A||e[31]!==m||e[32]!==c?(R=(0,r.jsx)(V,{type:"single",collapsible:!0,className:c,children:A},m),e[30]=A,e[31]=m,e[32]=c,e[33]=R):R=e[33],R};var Oe=o=>{let e=(0,O.c)(16),{state:l,input:n,result:s,approval:i}=o;switch(l){case"input-streaming":case"input-available":case"approval-responded":{let t;return e[0]===n?t=e[1]:(t=(0,r.jsx)(q,{input:n}),e[0]=n,e[1]=t),t}case"output-available":{let t;e[2]===n?t=e[3]:(t=(0,r.jsx)(q,{input:n}),e[2]=n,e[3]=t);let a;e[4]===s?a=e[5]:(a=s!=null&&(0,r.jsx)(Te,{result:s}),e[4]=s,e[5]=a);let u;return e[6]!==t||e[7]!==a?(u=(0,r.jsxs)("div",{className:"space-y-3",children:[t,a]}),e[6]=t,e[7]=a,e[8]=u):u=e[8],u}case"output-denied":{let t;e[9]===n?t=e[10]:(t=(0,r.jsx)(q,{input:n}),e[9]=n,e[10]=t);let a=i!=null&&i.reason?`: ${i.reason}`:".",u;e[11]===a?u=e[12]:(u=(0,r.jsxs)("div",{className:"bg-muted/40 border border-border rounded-md p-3 text-xs text-muted-foreground leading-relaxed",children:["Tool execution was denied",a]}),e[11]=a,e[12]=u);let f;return e[13]!==t||e[14]!==u?(f=(0,r.jsxs)("div",{className:"space-y-3",children:[t,u]}),e[13]=t,e[14]=u,e[15]=f):f=e[15],f}default:return T(l),null}},$e=S();const H=o=>{let e=(0,$e.c)(27),{toolName:l,state:n,result:s,errorText:i,input:t,approval:a,onApprove:u,index:f,className:p,isLive:v,isActive:x}=o,d=v===void 0?!0:v,m=x===void 0?!0:x;switch(n){case"approval-requested":{if(a!=null&&u!=null){let h;return e[0]!==a||e[1]!==p||e[2]!==t||e[3]!==u||e[4]!==l?(h=(0,r.jsx)(Ne,{toolName:l,input:t,approval:a,onApprove:u,className:p}),e[0]=a,e[1]=p,e[2]=t,e[3]=u,e[4]=l,e[5]=h):h=e[5],h}let c;return e[6]!==p||e[7]!==f||e[8]!==t||e[9]!==m||e[10]!==l?(c=(0,r.jsx)(B,{toolName:l,state:"input-available",input:t,index:f,className:p,isActive:m}),e[6]=p,e[7]=f,e[8]=t,e[9]=m,e[10]=l,e[11]=c):c=e[11],c}case"output-error":{let c;return e[12]!==p||e[13]!==i||e[14]!==t||e[15]!==d||e[16]!==l?(c=(0,r.jsx)(we,{toolName:l,input:t,errorText:i,isLive:d,className:p}),e[12]=p,e[13]=i,e[14]=t,e[15]=d,e[16]=l,e[17]=c):c=e[17],c}case"input-streaming":case"input-available":case"approval-responded":case"output-available":case"output-denied":{let c;return e[18]!==a||e[19]!==p||e[20]!==f||e[21]!==t||e[22]!==m||e[23]!==s||e[24]!==n||e[25]!==l?(c=(0,r.jsx)(B,{toolName:l,state:n,input:t,result:s,approval:a,index:f,className:p,isActive:m}),e[18]=a,e[19]=p,e[20]=f,e[21]=t,e[22]=m,e[23]=s,e[24]=n,e[25]=l,e[26]=c):c=e[26],c}default:return T(n),null}},ze=({message:o,isStreamingReasoning:e,isLast:l,isActive:n,addToolApprovalResponse:s})=>{return(0,r.jsx)(r.Fragment,{children:o.parts.map((t,a)=>i(t,a))});function i(t,a){if(De(t))return(0,r.jsx)(H,{index:a,toolName:t.type,result:t.output,errorText:t.state==="output-error"?t.errorText:void 0,className:"my-2",state:t.state,input:t.input,approval:t.approval,onApprove:s,isLive:l,isActive:n},a);if(Ee(t))return se.debug("Found data part",t),null;switch(t.type){case"text":return t.text.includes("<marimo-")?(0,r.jsx)(C.Fragment,{children:ue({html:t.text})},a):(0,r.jsx)(I,{content:t.text},a);case"reasoning":return(0,r.jsx)(be,{reasoning:t.text,index:a,isStreaming:e&&l&&a===(o.parts.length||0)-1},a);case"file":return(0,r.jsx)(W,{attachment:t},a);case"reasoning-file":return(0,r.jsx)(W,{attachment:{type:"file",mediaType:t.mediaType,url:t.url}},a);case"dynamic-tool":return(0,r.jsx)(H,{toolName:t.toolName,result:t.output,errorText:t.state==="output-error"?t.errorText:void 0,state:t.state,input:t.input,approval:t.approval,onApprove:s,isLive:l,isActive:n},a);case"source-document":return(0,r.jsx)(P,{icon:(0,r.jsx)(U,{className:"h-3 w-3 shrink-0"}),title:t.title,subtitle:t.filename},a);case"source-url":return(0,r.jsx)(P,{icon:(0,r.jsx)(oe,{className:"h-3 w-3 shrink-0"}),title:t.title??t.url,subtitle:t.title?t.url:void 0,href:t.url},a);case"custom":return(0,r.jsx)("div",{className:"text-sm text-muted-foreground",children:t.kind},a);case"step-start":return null;default:return T(t),null}}};function De(o){return o.type.startsWith("tool-")}function Ee(o){return o.type.startsWith("data-")}export{fe as i,he as n,xe as r,ze as t};
@@ -1,4 +1,4 @@
1
- import{o as ze}from"./chunk-C4rtOYze.js";import{d as Ut,f as Yt,l as ge,n as L,u as be}from"./useEvent-GCVIknuR.js";import{t as Xt}from"./react-C60yClUi.js";import{Br as qt,E as Vt,Wt as Bt,mn as Fe}from"./cells-DTFqEQb0.js";import"./react-dom-Ba2zmJWD.js";import{t as ne}from"./compiler-runtime-DnimoHo0.js";import{T as Kt,o as $t,r as He,t as Gt}from"./ai-model-dropdown-BJp70TST.js";import{g as oe,o as ee}from"./useEventListener-DpNnLPuE.js";import{a as Qt,n as We}from"./utils-C8Yt16Y7.js";import{N as Zt,o as Jt}from"./config-EoJoeZuK.js";import{t as er}from"./switch-CDT2KH2g.js";import{t as K}from"./cn-DCUzRj2J.js";import{t as tr}from"./jsx-runtime-3wZU7vFS.js";import{C as rr,b as ar,g as $,v as ie,w as se,x as G}from"./fullscreen-CrevbcR_.js";import{u as or}from"./menu-items-B8lIBnFI.js";import{t as sr}from"./config-DjP9S1hr.js";import{i as Oe,r as Ue,t as Ye}from"./popover-B96fOqfH.js";import{a as lr,i as nr,n as ir,p as cr,r as dr,s as ur,t as mr}from"./select-CPo-KTTe.js";import{i as Xe,t as we}from"./tooltip-C9LWGQ7Y.js";import{t as B}from"./button-W__YVea9.js";import"./dist-CeF1Em5L.js";import"./cjs-DCKmcMBz.js";import"./useNonce-C2dwX-sI.js";import{r as hr}from"./requests-B9zEd_sW.js";import{t as qe}from"./createLucideIcon-B8oVfJNp.js";import{t as pr}from"./scroll-to-bottom-button-CfIjIyKn.js";import{t as fr}from"./arrow-right-Ct-E429w.js";import{t as Ve}from"./bot-message-square-CHGXChWr.js";import"./markdown-renderer-BjuEVUOa.js";import{i as xr,n as vr,r as gr,t as br}from"./chat-display-CclXFQQP.js";import{A as wr,C as yr,D as jr,F as Be,I as Sr,M as Cr,N as ce,S as Nr,T as Ar,V as Rr,_ as Tr,b as _r,d as Ke,f as Er,g as $e,h as kr,l as Ir,n as Ge,p as Lr,r as Mr,u as Pr,v as Dr,w as zr,x as Fr,y as Qe}from"./add-cell-with-ai-HD16K3PB.js";import{t as Hr}from"./code-DzY0vbKf.js";import{t as Wr}from"./hat-glasses-xLTnAC_n.js";import{n as Ze}from"./spinner-Cj3eM5bt.js";import{t as Or}from"./message-circle-DJwyqZtq.js";import{t as Ur}from"./plus-r1QITpsJ.js";import{dt as Yr,r as Xr}from"./input-BN98e517.js";import{t as qr}from"./settings-IZvUqDP4.js";import{t as Vr}from"./sparkles-DwqcWrJl.js";import"./dist-BPoMypmC.js";import"./dist-5bwTcyKs.js";import"./dist-BVNaV53g.js";import"./dist-BrqkjqDe.js";import"./dist-Bm9PT5P9.js";import{t as Br}from"./uuid-e9lSomwA.js";import"./session-D-SddyN0.js";import"./purify.es-Bwm8T4QC.js";import{s as Kr}from"./dates-CZTDC2tF.js";import{t as $r}from"./copy-icon-Cn8LzPNx.js";import{t as Gr}from"./context-BJMN4ll3.js";import{n as Qr}from"./ImperativeModal-Dxj31V4A.js";import{t as Zr}from"./links-BeU4kHTI.js";import{i as Je,o as Jr,r as et,t as ea}from"./state-ByxLiTvP.js";import{n as ta}from"./error-banner-d0-XOKtd.js";import"./chunk-5FQGJX7Z-B4N_BMo6.js";import"./html-to-image-BsXiWo0v.js";import"./esm-RBKN8Dn2.js";import{t as ye}from"./empty-state-CBq3j1LH.js";import{t as ra}from"./pair-with-agent-modal-BCMZbqSR.js";var h=ze(Xt(),1),a=ze(tr(),1);function aa(t,e){return h.useReducer((r,l)=>e[r][l]??r,t)}var je="ScrollArea",[tt,Jo]=rr(je),[oa,z]=tt(je),rt=h.forwardRef((t,e)=>{let{__scopeScrollArea:r,type:l="hover",dir:o,scrollHideDelay:s=600,...n}=t,[i,u]=h.useState(null),[c,d]=h.useState(null),[m,f]=h.useState(null),[x,g]=h.useState(null),[b,A]=h.useState(null),[w,S]=h.useState(0),[T,C]=h.useState(0),[j,N]=h.useState(!1),[M,I]=h.useState(!1),y=ee(e,P=>u(P)),_=or(o);return(0,a.jsx)(oa,{scope:r,type:l,dir:_,scrollHideDelay:s,scrollArea:i,viewport:c,onViewportChange:d,content:m,onContentChange:f,scrollbarX:x,onScrollbarXChange:g,scrollbarXEnabled:j,onScrollbarXEnabledChange:N,scrollbarY:b,onScrollbarYChange:A,scrollbarYEnabled:M,onScrollbarYEnabledChange:I,onCornerWidthChange:S,onCornerHeightChange:C,children:(0,a.jsx)(se.div,{dir:_,...n,ref:y,style:{position:"relative","--radix-scroll-area-corner-width":w+"px","--radix-scroll-area-corner-height":T+"px",...t.style}})})});rt.displayName=je;var at="ScrollAreaViewport",ot=h.forwardRef((t,e)=>{let{__scopeScrollArea:r,children:l,nonce:o,...s}=t,n=z(at,r),i=ee(e,h.useRef(null),n.onViewportChange);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),(0,a.jsx)(se.div,{"data-radix-scroll-area-viewport":"",...s,ref:i,style:{overflowX:n.scrollbarXEnabled?"scroll":"hidden",overflowY:n.scrollbarYEnabled?"scroll":"hidden",...t.style},children:(0,a.jsx)("div",{ref:n.onContentChange,style:{minWidth:"100%",display:"table"},children:l})})]})});ot.displayName=at;var W="ScrollAreaScrollbar",Se=h.forwardRef((t,e)=>{let{forceMount:r,...l}=t,o=z(W,t.__scopeScrollArea),{onScrollbarXEnabledChange:s,onScrollbarYEnabledChange:n}=o,i=t.orientation==="horizontal";return h.useEffect(()=>(i?s(!0):n(!0),()=>{i?s(!1):n(!1)}),[i,s,n]),o.type==="hover"?(0,a.jsx)(sa,{...l,ref:e,forceMount:r}):o.type==="scroll"?(0,a.jsx)(la,{...l,ref:e,forceMount:r}):o.type==="auto"?(0,a.jsx)(st,{...l,ref:e,forceMount:r}):o.type==="always"?(0,a.jsx)(Ce,{...l,ref:e}):null});Se.displayName=W;var sa=h.forwardRef((t,e)=>{let{forceMount:r,...l}=t,o=z(W,t.__scopeScrollArea),[s,n]=h.useState(!1);return h.useEffect(()=>{let i=o.scrollArea,u=0;if(i){let c=()=>{window.clearTimeout(u),n(!0)},d=()=>{u=window.setTimeout(()=>n(!1),o.scrollHideDelay)};return i.addEventListener("pointerenter",c),i.addEventListener("pointerleave",d),()=>{window.clearTimeout(u),i.removeEventListener("pointerenter",c),i.removeEventListener("pointerleave",d)}}},[o.scrollArea,o.scrollHideDelay]),(0,a.jsx)(ie,{present:r||s,children:(0,a.jsx)(st,{"data-state":s?"visible":"hidden",...l,ref:e})})}),la=h.forwardRef((t,e)=>{let{forceMount:r,...l}=t,o=z(W,t.__scopeScrollArea),s=t.orientation==="horizontal",n=he(()=>u("SCROLL_END"),100),[i,u]=aa("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return h.useEffect(()=>{if(i==="idle"){let c=window.setTimeout(()=>u("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(c)}},[i,o.scrollHideDelay,u]),h.useEffect(()=>{let c=o.viewport,d=s?"scrollLeft":"scrollTop";if(c){let m=c[d],f=()=>{let x=c[d];m!==x&&(u("SCROLL"),n()),m=x};return c.addEventListener("scroll",f),()=>c.removeEventListener("scroll",f)}},[o.viewport,s,u,n]),(0,a.jsx)(ie,{present:r||i!=="hidden",children:(0,a.jsx)(Ce,{"data-state":i==="hidden"?"hidden":"visible",...l,ref:e,onPointerEnter:G(t.onPointerEnter,()=>u("POINTER_ENTER")),onPointerLeave:G(t.onPointerLeave,()=>u("POINTER_LEAVE"))})})}),st=h.forwardRef((t,e)=>{let r=z(W,t.__scopeScrollArea),{forceMount:l,...o}=t,[s,n]=h.useState(!1),i=t.orientation==="horizontal",u=he(()=>{if(r.viewport){let c=r.viewport.offsetWidth<r.viewport.scrollWidth,d=r.viewport.offsetHeight<r.viewport.scrollHeight;n(i?c:d)}},10);return te(r.viewport,u),te(r.content,u),(0,a.jsx)(ie,{present:l||s,children:(0,a.jsx)(Ce,{"data-state":s?"visible":"hidden",...o,ref:e})})}),Ce=h.forwardRef((t,e)=>{let{orientation:r="vertical",...l}=t,o=z(W,t.__scopeScrollArea),s=h.useRef(null),n=h.useRef(0),[i,u]=h.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),c=dt(i.viewport,i.content),d={...l,sizes:i,onSizesChange:u,hasThumb:c>0&&c<1,onThumbChange:f=>s.current=f,onThumbPointerUp:()=>n.current=0,onThumbPointerDown:f=>n.current=f};function m(f,x){return ma(f,n.current,i,x)}return r==="horizontal"?(0,a.jsx)(na,{...d,ref:e,onThumbPositionChange:()=>{if(o.viewport&&s.current){let f=o.viewport.scrollLeft,x=ut(f,i,o.dir);s.current.style.transform=`translate3d(${x}px, 0, 0)`}},onWheelScroll:f=>{o.viewport&&(o.viewport.scrollLeft=f)},onDragScroll:f=>{o.viewport&&(o.viewport.scrollLeft=m(f,o.dir))}}):r==="vertical"?(0,a.jsx)(ia,{...d,ref:e,onThumbPositionChange:()=>{if(o.viewport&&s.current){let f=o.viewport.scrollTop,x=ut(f,i);s.current.style.transform=`translate3d(0, ${x}px, 0)`}},onWheelScroll:f=>{o.viewport&&(o.viewport.scrollTop=f)},onDragScroll:f=>{o.viewport&&(o.viewport.scrollTop=m(f))}}):null}),na=h.forwardRef((t,e)=>{let{sizes:r,onSizesChange:l,...o}=t,s=z(W,t.__scopeScrollArea),[n,i]=h.useState(),u=h.useRef(null),c=ee(e,u,s.onScrollbarXChange);return h.useEffect(()=>{u.current&&i(getComputedStyle(u.current))},[u]),(0,a.jsx)(nt,{"data-orientation":"horizontal",...o,ref:c,sizes:r,style:{bottom:0,left:s.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:s.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":me(r)+"px",...t.style},onThumbPointerDown:d=>t.onThumbPointerDown(d.x),onDragScroll:d=>t.onDragScroll(d.x),onWheelScroll:(d,m)=>{if(s.viewport){let f=s.viewport.scrollLeft+d.deltaX;t.onWheelScroll(f),ht(f,m)&&d.preventDefault()}},onResize:()=>{u.current&&s.viewport&&n&&l({content:s.viewport.scrollWidth,viewport:s.viewport.offsetWidth,scrollbar:{size:u.current.clientWidth,paddingStart:ue(n.paddingLeft),paddingEnd:ue(n.paddingRight)}})}})}),ia=h.forwardRef((t,e)=>{let{sizes:r,onSizesChange:l,...o}=t,s=z(W,t.__scopeScrollArea),[n,i]=h.useState(),u=h.useRef(null),c=ee(e,u,s.onScrollbarYChange);return h.useEffect(()=>{u.current&&i(getComputedStyle(u.current))},[u]),(0,a.jsx)(nt,{"data-orientation":"vertical",...o,ref:c,sizes:r,style:{top:0,right:s.dir==="ltr"?0:void 0,left:s.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":me(r)+"px",...t.style},onThumbPointerDown:d=>t.onThumbPointerDown(d.y),onDragScroll:d=>t.onDragScroll(d.y),onWheelScroll:(d,m)=>{if(s.viewport){let f=s.viewport.scrollTop+d.deltaY;t.onWheelScroll(f),ht(f,m)&&d.preventDefault()}},onResize:()=>{u.current&&s.viewport&&n&&l({content:s.viewport.scrollHeight,viewport:s.viewport.offsetHeight,scrollbar:{size:u.current.clientHeight,paddingStart:ue(n.paddingTop),paddingEnd:ue(n.paddingBottom)}})}})}),[ca,lt]=tt(W),nt=h.forwardRef((t,e)=>{let{__scopeScrollArea:r,sizes:l,hasThumb:o,onThumbChange:s,onThumbPointerUp:n,onThumbPointerDown:i,onThumbPositionChange:u,onDragScroll:c,onWheelScroll:d,onResize:m,...f}=t,x=z(W,r),[g,b]=h.useState(null),A=ee(e,y=>b(y)),w=h.useRef(null),S=h.useRef(""),T=x.viewport,C=l.content-l.viewport,j=$(d),N=$(u),M=he(m,10);function I(y){w.current&&c({x:y.clientX-w.current.left,y:y.clientY-w.current.top})}return h.useEffect(()=>{let y=_=>{let P=_.target;g!=null&&g.contains(P)&&j(_,C)};return document.addEventListener("wheel",y,{passive:!1}),()=>document.removeEventListener("wheel",y,{passive:!1})},[T,g,C,j]),h.useEffect(N,[l,N]),te(g,M),te(x.content,M),(0,a.jsx)(ca,{scope:r,scrollbar:g,hasThumb:o,onThumbChange:$(s),onThumbPointerUp:$(n),onThumbPositionChange:N,onThumbPointerDown:$(i),children:(0,a.jsx)(se.div,{...f,ref:A,style:{position:"absolute",...f.style},onPointerDown:G(t.onPointerDown,y=>{y.button===0&&(y.target.setPointerCapture(y.pointerId),w.current=g.getBoundingClientRect(),S.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",x.viewport&&(x.viewport.style.scrollBehavior="auto"),I(y))}),onPointerMove:G(t.onPointerMove,I),onPointerUp:G(t.onPointerUp,y=>{let _=y.target;_.hasPointerCapture(y.pointerId)&&_.releasePointerCapture(y.pointerId),document.body.style.webkitUserSelect=S.current,x.viewport&&(x.viewport.style.scrollBehavior=""),w.current=null})})})}),de="ScrollAreaThumb",it=h.forwardRef((t,e)=>{let{forceMount:r,...l}=t,o=lt(de,t.__scopeScrollArea);return(0,a.jsx)(ie,{present:r||o.hasThumb,children:(0,a.jsx)(da,{ref:e,...l})})}),da=h.forwardRef((t,e)=>{let{__scopeScrollArea:r,style:l,...o}=t,s=z(de,r),n=lt(de,r),{onThumbPositionChange:i}=n,u=ee(e,m=>n.onThumbChange(m)),c=h.useRef(void 0),d=he(()=>{c.current&&(c.current=(c.current(),void 0))},100);return h.useEffect(()=>{let m=s.viewport;if(m){let f=()=>{d(),c.current||(c.current=ha(m,i),i())};return i(),m.addEventListener("scroll",f),()=>m.removeEventListener("scroll",f)}},[s.viewport,d,i]),(0,a.jsx)(se.div,{"data-state":n.hasThumb?"visible":"hidden",...o,ref:u,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...l},onPointerDownCapture:G(t.onPointerDownCapture,m=>{let f=m.target.getBoundingClientRect(),x=m.clientX-f.left,g=m.clientY-f.top;n.onThumbPointerDown({x,y:g})}),onPointerUp:G(t.onPointerUp,n.onThumbPointerUp)})});it.displayName=de;var Ne="ScrollAreaCorner",ct=h.forwardRef((t,e)=>{let r=z(Ne,t.__scopeScrollArea),l=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&l?(0,a.jsx)(ua,{...t,ref:e}):null});ct.displayName=Ne;var ua=h.forwardRef((t,e)=>{let{__scopeScrollArea:r,...l}=t,o=z(Ne,r),[s,n]=h.useState(0),[i,u]=h.useState(0),c=!!(s&&i);return te(o.scrollbarX,()=>{var m;let d=((m=o.scrollbarX)==null?void 0:m.offsetHeight)||0;o.onCornerHeightChange(d),u(d)}),te(o.scrollbarY,()=>{var m;let d=((m=o.scrollbarY)==null?void 0:m.offsetWidth)||0;o.onCornerWidthChange(d),n(d)}),c?(0,a.jsx)(se.div,{...l,ref:e,style:{width:s,height:i,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...t.style}}):null});function ue(t){return t?parseInt(t,10):0}function dt(t,e){let r=t/e;return isNaN(r)?0:r}function me(t){let e=dt(t.viewport,t.content),r=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,l=(t.scrollbar.size-r)*e;return Math.max(l,18)}function ma(t,e,r,l="ltr"){let o=me(r),s=o/2,n=e||s,i=o-n,u=r.scrollbar.paddingStart+n,c=r.scrollbar.size-r.scrollbar.paddingEnd-i,d=r.content-r.viewport,m=l==="ltr"?[0,d]:[d*-1,0];return mt([u,c],m)(t)}function ut(t,e,r="ltr"){let l=me(e),o=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,s=e.scrollbar.size-o,n=e.content-e.viewport,i=s-l,u=cr(t,r==="ltr"?[0,n]:[n*-1,0]);return mt([0,n],[0,i])(u)}function mt(t,e){return r=>{if(t[0]===t[1]||e[0]===e[1])return e[0];let l=(e[1]-e[0])/(t[1]-t[0]);return e[0]+l*(r-t[0])}}function ht(t,e){return t>0&&t<e}var ha=(t,e=()=>{})=>{let r={left:t.scrollLeft,top:t.scrollTop},l=0;return(function o(){let s={left:t.scrollLeft,top:t.scrollTop},n=r.left!==s.left,i=r.top!==s.top;(n||i)&&e(),r=s,l=window.requestAnimationFrame(o)})(),()=>window.cancelAnimationFrame(l)};function he(t,e){let r=$(t),l=h.useRef(0);return h.useEffect(()=>()=>window.clearTimeout(l.current),[]),h.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(r,e)},[r,e])}function te(t,e){let r=$(e);ar(()=>{let l=0;if(t){let o=new ResizeObserver(()=>{cancelAnimationFrame(l),l=window.requestAnimationFrame(r)});return o.observe(t),()=>{window.cancelAnimationFrame(l),o.unobserve(t)}}},[t,r])}var pt=rt,pa=ot,fa=ct,xa=qe("notebook-text",[["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",key:"1nb95v"}],["path",{d:"M9.5 8h5",key:"11mslq"}],["path",{d:"M9.5 12H16",key:"ktog6x"}],["path",{d:"M9.5 16H14",key:"p1seyn"}]]),va=qe("sliders-horizontal",[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]]),ft=ne();const ga=({chatState:t,chatId:e,messages:r})=>{if(!e)return oe.warn("No active chat"),t;let l=t.chats.get(e);if(!l)return oe.warn("No active chat"),t;let o=new Map(t.chats),s=Date.now();return o.set(l.id,{...l,messages:r,updatedAt:s}),{...t,chats:o}};var xt=h.forwardRef((t,e)=>{let r=(0,ft.c)(15),l,o,s;r[0]===t?(l=r[1],o=r[2],s=r[3]):({className:o,children:l,...s}=t,r[0]=t,r[1]=l,r[2]=o,r[3]=s);let n;r[4]===o?n=r[5]:(n=K("relative overflow-hidden",o),r[4]=o,r[5]=n);let i;r[6]===l?i=r[7]:(i=(0,a.jsx)(pa,{className:"h-full w-full rounded-[inherit]",children:l}),r[6]=l,r[7]=i);let u,c;r[8]===Symbol.for("react.memo_cache_sentinel")?(u=(0,a.jsx)(vt,{}),c=(0,a.jsx)(fa,{}),r[8]=u,r[9]=c):(u=r[8],c=r[9]);let d;return r[10]!==s||r[11]!==e||r[12]!==n||r[13]!==i?(d=(0,a.jsxs)(pt,{ref:e,className:n,...s,children:[i,u,c]}),r[10]=s,r[11]=e,r[12]=n,r[13]=i,r[14]=d):d=r[14],d});xt.displayName=pt.displayName;var vt=h.forwardRef((t,e)=>{let r=(0,ft.c)(14),l,o,s;r[0]===t?(l=r[1],o=r[2],s=r[3]):({className:l,orientation:s,...o}=t,r[0]=t,r[1]=l,r[2]=o,r[3]=s);let n=s===void 0?"vertical":s,i=n==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-px",u=n==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-px",c;r[4]!==l||r[5]!==i||r[6]!==u?(c=K("flex touch-none select-none transition-colors",i,u,l),r[4]=l,r[5]=i,r[6]=u,r[7]=c):c=r[7];let d;r[8]===Symbol.for("react.memo_cache_sentinel")?(d=(0,a.jsx)(it,{className:"relative flex-1 rounded-full bg-border"}),r[8]=d):d=r[8];let m;return r[9]!==n||r[10]!==o||r[11]!==e||r[12]!==c?(m=(0,a.jsx)(Se,{ref:e,orientation:n,className:c,...o,children:d}),r[9]=n,r[10]=o,r[11]=e,r[12]=c,r[13]=m):m=r[13],m});vt.displayName=Se.displayName;var ba=[{label:"Today",days:0},{label:"Yesterday",days:1},{label:"2d ago",days:2},{label:"3d ago",days:3},{label:"This week",days:7},{label:"This month",days:30}];const wa=t=>{let e=Date.now(),r=ba.map(s=>({...s,chats:[]})),l={label:"Older",days:1/0,chats:[]},o=s=>{switch(s){case 0:return r[0];case 1:return r[1];case 2:return r[2];case 3:return r[3];default:return s>=4&&s<=7?r[4]:s>=8&&s<=30?r[5]:l}};for(let s of t)o(Math.floor((e-s.updatedAt)/864e5)).chats.push(s);return[...r,l].filter(s=>s.chats.length>0)},ya=({activeChatId:t,setActiveChat:e})=>{let r=be(Je),{locale:l}=Gr(),[o,s]=(0,h.useState)(""),n=(0,h.useMemo)(()=>[...r.chats.values()].toSorted((c,d)=>d.updatedAt-c.updatedAt),[r.chats]),i=(0,h.useMemo)(()=>o.trim()?n.filter(c=>c.title.toLowerCase().includes(o.toLowerCase())):n,[n,o]),u=(0,h.useMemo)(()=>wa(i),[i]);return(0,a.jsxs)(Ye,{children:[(0,a.jsx)(we,{content:"Previous chats",children:(0,a.jsx)(Oe,{asChild:!0,children:(0,a.jsx)(B,{variant:"text",size:"icon",children:(0,a.jsx)(qt,{className:"h-4 w-4"})})})}),(0,a.jsxs)(Ue,{className:"w-[480px] p-0",align:"start",side:"right",children:[(0,a.jsx)("div",{className:"pt-3 px-3 w-full",children:(0,a.jsx)(Xr,{placeholder:"Search chat history...",value:o,onChange:c=>s(c.target.value),className:"text-xs"})}),(0,a.jsx)(xt,{className:"h-[450px] p-2",children:(0,a.jsxs)("div",{className:"space-y-3",children:[n.length===0&&(0,a.jsx)(ye,{title:"No chats yet",description:"Start a new chat to get started",icon:(0,a.jsx)(Ve,{})}),i.length===0&&o&&n.length>0&&(0,a.jsx)(ye,{title:"No chats found",description:`No chats match "${o}"`,icon:(0,a.jsx)(Yr,{})}),u.map((c,d)=>(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)("div",{className:"text-xs px-1 text-muted-foreground/60",children:c.label}),(0,a.jsx)("div",{children:c.chats.map(m=>(0,a.jsxs)("button",{className:K("w-full p-1 rounded-md cursor-pointer text-left flex items-center justify-between",m.id===t&&"bg-accent",m.id!==t&&"hover:bg-muted/20"),onClick:()=>{e(m.id)},type:"button",children:[(0,a.jsx)("div",{className:"flex-1 min-w-0",children:(0,a.jsx)("div",{className:"text-sm truncate",children:m.title})}),(0,a.jsx)("div",{className:"text-xs text-muted-foreground/60 ml-2 shrink-0",children:Kr(m.updatedAt,l)})]},m.id))}),d!==u.length-1&&(0,a.jsx)("hr",{})]},c.label))]})})]})]})};var ja=ne();const Sa=()=>{let t=(0,ja.c)(17),[e,r]=ge(et),l=e.webSearch,o=l?"Capabilities (web search enabled)":"Capabilities",s=l||void 0,n=l&&"bg-primary/15 text-primary ring-1 ring-primary/30 opacity-100 hover:bg-primary/20",i;t[0]===n?i=t[1]:(i=K("h-6 w-6 shrink-0 bg-muted hover:bg-muted/30",n),t[0]=n,t[1]=i);let u;t[2]===Symbol.for("react.memo_cache_sentinel")?(u=(0,a.jsx)(va,{className:"h-3.5 w-3.5"}),t[2]=u):u=t[2];let c;t[3]!==o||t[4]!==s||t[5]!==i?(c=(0,a.jsx)(Oe,{asChild:!0,children:(0,a.jsx)(B,{"aria-label":"Capabilities",title:o,"data-active":s,variant:"text",size:"icon",className:i,children:u})}),t[3]=o,t[4]=s,t[5]=i,t[6]=c):c=t[6];let d;t[7]===Symbol.for("react.memo_cache_sentinel")?(d=(0,a.jsx)("span",{className:"text-sm font-semibold",children:"Web search"}),t[7]=d):d=t[7];let m;t[8]===Symbol.for("react.memo_cache_sentinel")?(m=(0,a.jsxs)("div",{className:"flex flex-col gap-0.5",children:[d,(0,a.jsxs)("span",{className:"text-xs text-muted-foreground",children:["Search the web when the model supports it."," ",(0,a.jsx)(Zr,{href:"https://docs.marimo.io/guides/editor_features/tools#web-search-and-fetch",children:"Learn more"})]})]}),t[8]=m):m=t[8];let f;t[9]===r?f=t[10]:(f=b=>r(A=>({...A,webSearch:b})),t[9]=r,t[10]=f);let x;t[11]!==f||t[12]!==l?(x=(0,a.jsx)(Ue,{className:"w-76 p-3",align:"start",side:"top",children:(0,a.jsxs)("label",{htmlFor:"web-search-toggle",className:"flex items-start justify-between gap-3 cursor-pointer",children:[m,(0,a.jsx)(er,{id:"web-search-toggle","aria-label":"Web search",size:"sm",checked:l,onCheckedChange:f})]})}),t[11]=f,t[12]=l,t[13]=x):x=t[13];let g;return t[14]!==c||t[15]!==x?(g=(0,a.jsxs)(Ye,{children:[c,x]}),t[14]=c,t[15]=x,t[16]=g):g=t[16],g};var Ca=ne();function gt(){return Br()}function Na(t){let e=(0,Ca.c)(4),[r,l]=(0,h.useState)(gt),o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o=()=>l(gt()),e[0]=o):o=e[0];let s=L(o),n=t??r,i;return e[1]!==s||e[2]!==n?(i={chatControllerId:n,renewDraftChatId:s},e[1]=s,e[2]=n,e[3]=i):i=e[3],i}var Q=ne(),bt="manual",wt=(0,h.memo)(t=>{let e=(0,Q.c)(18),{message:r}=t,l;e[0]===r.parts?l=e[1]:(l=r.parts.filter(ka).map(Ia).join(`
1
+ import{o as ze}from"./chunk-C4rtOYze.js";import{d as Ut,f as Yt,l as ge,n as L,u as be}from"./useEvent-GCVIknuR.js";import{t as Xt}from"./react-C60yClUi.js";import{Br as qt,E as Vt,Wt as Bt,mn as Fe}from"./cells-BvgwUKB9.js";import"./react-dom-Ba2zmJWD.js";import{t as ne}from"./compiler-runtime-DnimoHo0.js";import{T as Kt,o as $t,r as He,t as Gt}from"./ai-model-dropdown-Wvw4ot3v.js";import{g as oe,o as ee}from"./useEventListener-DpNnLPuE.js";import{a as Qt,n as We}from"./utils-C8Yt16Y7.js";import{N as Zt,o as Jt}from"./config-DFK5eCC3.js";import{t as er}from"./switch-ulnbZFaI.js";import{t as K}from"./cn-DCUzRj2J.js";import{t as tr}from"./jsx-runtime-3wZU7vFS.js";import{C as rr,b as ar,g as $,v as ie,w as se,x as G}from"./fullscreen-CrevbcR_.js";import{u as or}from"./menu-items-B8lIBnFI.js";import{t as sr}from"./config-DjP9S1hr.js";import{i as Oe,r as Ue,t as Ye}from"./popover-B96fOqfH.js";import{a as lr,i as nr,n as ir,p as cr,r as dr,s as ur,t as mr}from"./select-CPo-KTTe.js";import{i as Xe,t as we}from"./tooltip-C9LWGQ7Y.js";import{t as B}from"./button-W__YVea9.js";import"./dist-CeF1Em5L.js";import"./cjs-DCKmcMBz.js";import"./useNonce-C2dwX-sI.js";import{r as hr}from"./requests-B9zEd_sW.js";import{t as qe}from"./createLucideIcon-B8oVfJNp.js";import{t as pr}from"./scroll-to-bottom-button-CfIjIyKn.js";import{t as fr}from"./arrow-right-Ct-E429w.js";import{t as Ve}from"./bot-message-square-CHGXChWr.js";import"./markdown-renderer-D7RLn6TA.js";import{i as xr,n as vr,r as gr,t as br}from"./chat-display-CvI32cPI.js";import{A as wr,C as yr,D as jr,F as Be,I as Sr,M as Cr,N as ce,S as Nr,T as Ar,V as Rr,_ as Tr,b as _r,d as Ke,f as Er,g as $e,h as kr,l as Ir,n as Ge,p as Lr,r as Mr,u as Pr,v as Dr,w as zr,x as Fr,y as Qe}from"./add-cell-with-ai--yrESuLb.js";import{t as Hr}from"./code-DzY0vbKf.js";import{t as Wr}from"./hat-glasses-xLTnAC_n.js";import{n as Ze}from"./spinner-Cj3eM5bt.js";import{t as Or}from"./message-circle-DJwyqZtq.js";import{t as Ur}from"./plus-r1QITpsJ.js";import{dt as Yr,r as Xr}from"./input-BN98e517.js";import{t as qr}from"./settings-IZvUqDP4.js";import{t as Vr}from"./sparkles-DwqcWrJl.js";import"./dist-BPoMypmC.js";import"./dist-5bwTcyKs.js";import"./dist-BVNaV53g.js";import"./dist-BrqkjqDe.js";import"./dist-Bm9PT5P9.js";import{t as Br}from"./uuid-e9lSomwA.js";import"./session-D-SddyN0.js";import"./purify.es-Bwm8T4QC.js";import{s as Kr}from"./dates-CZTDC2tF.js";import{t as $r}from"./copy-icon-Cn8LzPNx.js";import{t as Gr}from"./context-BJMN4ll3.js";import{n as Qr}from"./ImperativeModal-Dxj31V4A.js";import{t as Zr}from"./links-BeU4kHTI.js";import{i as Je,o as Jr,r as et,t as ea}from"./state-m2zUPztG.js";import{n as ta}from"./error-banner-d0-XOKtd.js";import"./chunk-5FQGJX7Z-B4N_BMo6.js";import"./html-to-image-DKEUbBwc.js";import"./esm-RBKN8Dn2.js";import{t as ye}from"./empty-state-CBq3j1LH.js";import{t as ra}from"./pair-with-agent-modal-DiDLAjxV.js";var h=ze(Xt(),1),a=ze(tr(),1);function aa(t,e){return h.useReducer((r,l)=>e[r][l]??r,t)}var je="ScrollArea",[tt,Jo]=rr(je),[oa,z]=tt(je),rt=h.forwardRef((t,e)=>{let{__scopeScrollArea:r,type:l="hover",dir:o,scrollHideDelay:s=600,...n}=t,[i,u]=h.useState(null),[c,d]=h.useState(null),[m,f]=h.useState(null),[x,g]=h.useState(null),[b,A]=h.useState(null),[w,S]=h.useState(0),[T,C]=h.useState(0),[j,N]=h.useState(!1),[M,I]=h.useState(!1),y=ee(e,P=>u(P)),_=or(o);return(0,a.jsx)(oa,{scope:r,type:l,dir:_,scrollHideDelay:s,scrollArea:i,viewport:c,onViewportChange:d,content:m,onContentChange:f,scrollbarX:x,onScrollbarXChange:g,scrollbarXEnabled:j,onScrollbarXEnabledChange:N,scrollbarY:b,onScrollbarYChange:A,scrollbarYEnabled:M,onScrollbarYEnabledChange:I,onCornerWidthChange:S,onCornerHeightChange:C,children:(0,a.jsx)(se.div,{dir:_,...n,ref:y,style:{position:"relative","--radix-scroll-area-corner-width":w+"px","--radix-scroll-area-corner-height":T+"px",...t.style}})})});rt.displayName=je;var at="ScrollAreaViewport",ot=h.forwardRef((t,e)=>{let{__scopeScrollArea:r,children:l,nonce:o,...s}=t,n=z(at,r),i=ee(e,h.useRef(null),n.onViewportChange);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),(0,a.jsx)(se.div,{"data-radix-scroll-area-viewport":"",...s,ref:i,style:{overflowX:n.scrollbarXEnabled?"scroll":"hidden",overflowY:n.scrollbarYEnabled?"scroll":"hidden",...t.style},children:(0,a.jsx)("div",{ref:n.onContentChange,style:{minWidth:"100%",display:"table"},children:l})})]})});ot.displayName=at;var W="ScrollAreaScrollbar",Se=h.forwardRef((t,e)=>{let{forceMount:r,...l}=t,o=z(W,t.__scopeScrollArea),{onScrollbarXEnabledChange:s,onScrollbarYEnabledChange:n}=o,i=t.orientation==="horizontal";return h.useEffect(()=>(i?s(!0):n(!0),()=>{i?s(!1):n(!1)}),[i,s,n]),o.type==="hover"?(0,a.jsx)(sa,{...l,ref:e,forceMount:r}):o.type==="scroll"?(0,a.jsx)(la,{...l,ref:e,forceMount:r}):o.type==="auto"?(0,a.jsx)(st,{...l,ref:e,forceMount:r}):o.type==="always"?(0,a.jsx)(Ce,{...l,ref:e}):null});Se.displayName=W;var sa=h.forwardRef((t,e)=>{let{forceMount:r,...l}=t,o=z(W,t.__scopeScrollArea),[s,n]=h.useState(!1);return h.useEffect(()=>{let i=o.scrollArea,u=0;if(i){let c=()=>{window.clearTimeout(u),n(!0)},d=()=>{u=window.setTimeout(()=>n(!1),o.scrollHideDelay)};return i.addEventListener("pointerenter",c),i.addEventListener("pointerleave",d),()=>{window.clearTimeout(u),i.removeEventListener("pointerenter",c),i.removeEventListener("pointerleave",d)}}},[o.scrollArea,o.scrollHideDelay]),(0,a.jsx)(ie,{present:r||s,children:(0,a.jsx)(st,{"data-state":s?"visible":"hidden",...l,ref:e})})}),la=h.forwardRef((t,e)=>{let{forceMount:r,...l}=t,o=z(W,t.__scopeScrollArea),s=t.orientation==="horizontal",n=he(()=>u("SCROLL_END"),100),[i,u]=aa("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return h.useEffect(()=>{if(i==="idle"){let c=window.setTimeout(()=>u("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(c)}},[i,o.scrollHideDelay,u]),h.useEffect(()=>{let c=o.viewport,d=s?"scrollLeft":"scrollTop";if(c){let m=c[d],f=()=>{let x=c[d];m!==x&&(u("SCROLL"),n()),m=x};return c.addEventListener("scroll",f),()=>c.removeEventListener("scroll",f)}},[o.viewport,s,u,n]),(0,a.jsx)(ie,{present:r||i!=="hidden",children:(0,a.jsx)(Ce,{"data-state":i==="hidden"?"hidden":"visible",...l,ref:e,onPointerEnter:G(t.onPointerEnter,()=>u("POINTER_ENTER")),onPointerLeave:G(t.onPointerLeave,()=>u("POINTER_LEAVE"))})})}),st=h.forwardRef((t,e)=>{let r=z(W,t.__scopeScrollArea),{forceMount:l,...o}=t,[s,n]=h.useState(!1),i=t.orientation==="horizontal",u=he(()=>{if(r.viewport){let c=r.viewport.offsetWidth<r.viewport.scrollWidth,d=r.viewport.offsetHeight<r.viewport.scrollHeight;n(i?c:d)}},10);return te(r.viewport,u),te(r.content,u),(0,a.jsx)(ie,{present:l||s,children:(0,a.jsx)(Ce,{"data-state":s?"visible":"hidden",...o,ref:e})})}),Ce=h.forwardRef((t,e)=>{let{orientation:r="vertical",...l}=t,o=z(W,t.__scopeScrollArea),s=h.useRef(null),n=h.useRef(0),[i,u]=h.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),c=dt(i.viewport,i.content),d={...l,sizes:i,onSizesChange:u,hasThumb:c>0&&c<1,onThumbChange:f=>s.current=f,onThumbPointerUp:()=>n.current=0,onThumbPointerDown:f=>n.current=f};function m(f,x){return ma(f,n.current,i,x)}return r==="horizontal"?(0,a.jsx)(na,{...d,ref:e,onThumbPositionChange:()=>{if(o.viewport&&s.current){let f=o.viewport.scrollLeft,x=ut(f,i,o.dir);s.current.style.transform=`translate3d(${x}px, 0, 0)`}},onWheelScroll:f=>{o.viewport&&(o.viewport.scrollLeft=f)},onDragScroll:f=>{o.viewport&&(o.viewport.scrollLeft=m(f,o.dir))}}):r==="vertical"?(0,a.jsx)(ia,{...d,ref:e,onThumbPositionChange:()=>{if(o.viewport&&s.current){let f=o.viewport.scrollTop,x=ut(f,i);s.current.style.transform=`translate3d(0, ${x}px, 0)`}},onWheelScroll:f=>{o.viewport&&(o.viewport.scrollTop=f)},onDragScroll:f=>{o.viewport&&(o.viewport.scrollTop=m(f))}}):null}),na=h.forwardRef((t,e)=>{let{sizes:r,onSizesChange:l,...o}=t,s=z(W,t.__scopeScrollArea),[n,i]=h.useState(),u=h.useRef(null),c=ee(e,u,s.onScrollbarXChange);return h.useEffect(()=>{u.current&&i(getComputedStyle(u.current))},[u]),(0,a.jsx)(nt,{"data-orientation":"horizontal",...o,ref:c,sizes:r,style:{bottom:0,left:s.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:s.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":me(r)+"px",...t.style},onThumbPointerDown:d=>t.onThumbPointerDown(d.x),onDragScroll:d=>t.onDragScroll(d.x),onWheelScroll:(d,m)=>{if(s.viewport){let f=s.viewport.scrollLeft+d.deltaX;t.onWheelScroll(f),ht(f,m)&&d.preventDefault()}},onResize:()=>{u.current&&s.viewport&&n&&l({content:s.viewport.scrollWidth,viewport:s.viewport.offsetWidth,scrollbar:{size:u.current.clientWidth,paddingStart:ue(n.paddingLeft),paddingEnd:ue(n.paddingRight)}})}})}),ia=h.forwardRef((t,e)=>{let{sizes:r,onSizesChange:l,...o}=t,s=z(W,t.__scopeScrollArea),[n,i]=h.useState(),u=h.useRef(null),c=ee(e,u,s.onScrollbarYChange);return h.useEffect(()=>{u.current&&i(getComputedStyle(u.current))},[u]),(0,a.jsx)(nt,{"data-orientation":"vertical",...o,ref:c,sizes:r,style:{top:0,right:s.dir==="ltr"?0:void 0,left:s.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":me(r)+"px",...t.style},onThumbPointerDown:d=>t.onThumbPointerDown(d.y),onDragScroll:d=>t.onDragScroll(d.y),onWheelScroll:(d,m)=>{if(s.viewport){let f=s.viewport.scrollTop+d.deltaY;t.onWheelScroll(f),ht(f,m)&&d.preventDefault()}},onResize:()=>{u.current&&s.viewport&&n&&l({content:s.viewport.scrollHeight,viewport:s.viewport.offsetHeight,scrollbar:{size:u.current.clientHeight,paddingStart:ue(n.paddingTop),paddingEnd:ue(n.paddingBottom)}})}})}),[ca,lt]=tt(W),nt=h.forwardRef((t,e)=>{let{__scopeScrollArea:r,sizes:l,hasThumb:o,onThumbChange:s,onThumbPointerUp:n,onThumbPointerDown:i,onThumbPositionChange:u,onDragScroll:c,onWheelScroll:d,onResize:m,...f}=t,x=z(W,r),[g,b]=h.useState(null),A=ee(e,y=>b(y)),w=h.useRef(null),S=h.useRef(""),T=x.viewport,C=l.content-l.viewport,j=$(d),N=$(u),M=he(m,10);function I(y){w.current&&c({x:y.clientX-w.current.left,y:y.clientY-w.current.top})}return h.useEffect(()=>{let y=_=>{let P=_.target;g!=null&&g.contains(P)&&j(_,C)};return document.addEventListener("wheel",y,{passive:!1}),()=>document.removeEventListener("wheel",y,{passive:!1})},[T,g,C,j]),h.useEffect(N,[l,N]),te(g,M),te(x.content,M),(0,a.jsx)(ca,{scope:r,scrollbar:g,hasThumb:o,onThumbChange:$(s),onThumbPointerUp:$(n),onThumbPositionChange:N,onThumbPointerDown:$(i),children:(0,a.jsx)(se.div,{...f,ref:A,style:{position:"absolute",...f.style},onPointerDown:G(t.onPointerDown,y=>{y.button===0&&(y.target.setPointerCapture(y.pointerId),w.current=g.getBoundingClientRect(),S.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",x.viewport&&(x.viewport.style.scrollBehavior="auto"),I(y))}),onPointerMove:G(t.onPointerMove,I),onPointerUp:G(t.onPointerUp,y=>{let _=y.target;_.hasPointerCapture(y.pointerId)&&_.releasePointerCapture(y.pointerId),document.body.style.webkitUserSelect=S.current,x.viewport&&(x.viewport.style.scrollBehavior=""),w.current=null})})})}),de="ScrollAreaThumb",it=h.forwardRef((t,e)=>{let{forceMount:r,...l}=t,o=lt(de,t.__scopeScrollArea);return(0,a.jsx)(ie,{present:r||o.hasThumb,children:(0,a.jsx)(da,{ref:e,...l})})}),da=h.forwardRef((t,e)=>{let{__scopeScrollArea:r,style:l,...o}=t,s=z(de,r),n=lt(de,r),{onThumbPositionChange:i}=n,u=ee(e,m=>n.onThumbChange(m)),c=h.useRef(void 0),d=he(()=>{c.current&&(c.current=(c.current(),void 0))},100);return h.useEffect(()=>{let m=s.viewport;if(m){let f=()=>{d(),c.current||(c.current=ha(m,i),i())};return i(),m.addEventListener("scroll",f),()=>m.removeEventListener("scroll",f)}},[s.viewport,d,i]),(0,a.jsx)(se.div,{"data-state":n.hasThumb?"visible":"hidden",...o,ref:u,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...l},onPointerDownCapture:G(t.onPointerDownCapture,m=>{let f=m.target.getBoundingClientRect(),x=m.clientX-f.left,g=m.clientY-f.top;n.onThumbPointerDown({x,y:g})}),onPointerUp:G(t.onPointerUp,n.onThumbPointerUp)})});it.displayName=de;var Ne="ScrollAreaCorner",ct=h.forwardRef((t,e)=>{let r=z(Ne,t.__scopeScrollArea),l=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&l?(0,a.jsx)(ua,{...t,ref:e}):null});ct.displayName=Ne;var ua=h.forwardRef((t,e)=>{let{__scopeScrollArea:r,...l}=t,o=z(Ne,r),[s,n]=h.useState(0),[i,u]=h.useState(0),c=!!(s&&i);return te(o.scrollbarX,()=>{var m;let d=((m=o.scrollbarX)==null?void 0:m.offsetHeight)||0;o.onCornerHeightChange(d),u(d)}),te(o.scrollbarY,()=>{var m;let d=((m=o.scrollbarY)==null?void 0:m.offsetWidth)||0;o.onCornerWidthChange(d),n(d)}),c?(0,a.jsx)(se.div,{...l,ref:e,style:{width:s,height:i,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...t.style}}):null});function ue(t){return t?parseInt(t,10):0}function dt(t,e){let r=t/e;return isNaN(r)?0:r}function me(t){let e=dt(t.viewport,t.content),r=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,l=(t.scrollbar.size-r)*e;return Math.max(l,18)}function ma(t,e,r,l="ltr"){let o=me(r),s=o/2,n=e||s,i=o-n,u=r.scrollbar.paddingStart+n,c=r.scrollbar.size-r.scrollbar.paddingEnd-i,d=r.content-r.viewport,m=l==="ltr"?[0,d]:[d*-1,0];return mt([u,c],m)(t)}function ut(t,e,r="ltr"){let l=me(e),o=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,s=e.scrollbar.size-o,n=e.content-e.viewport,i=s-l,u=cr(t,r==="ltr"?[0,n]:[n*-1,0]);return mt([0,n],[0,i])(u)}function mt(t,e){return r=>{if(t[0]===t[1]||e[0]===e[1])return e[0];let l=(e[1]-e[0])/(t[1]-t[0]);return e[0]+l*(r-t[0])}}function ht(t,e){return t>0&&t<e}var ha=(t,e=()=>{})=>{let r={left:t.scrollLeft,top:t.scrollTop},l=0;return(function o(){let s={left:t.scrollLeft,top:t.scrollTop},n=r.left!==s.left,i=r.top!==s.top;(n||i)&&e(),r=s,l=window.requestAnimationFrame(o)})(),()=>window.cancelAnimationFrame(l)};function he(t,e){let r=$(t),l=h.useRef(0);return h.useEffect(()=>()=>window.clearTimeout(l.current),[]),h.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(r,e)},[r,e])}function te(t,e){let r=$(e);ar(()=>{let l=0;if(t){let o=new ResizeObserver(()=>{cancelAnimationFrame(l),l=window.requestAnimationFrame(r)});return o.observe(t),()=>{window.cancelAnimationFrame(l),o.unobserve(t)}}},[t,r])}var pt=rt,pa=ot,fa=ct,xa=qe("notebook-text",[["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",key:"1nb95v"}],["path",{d:"M9.5 8h5",key:"11mslq"}],["path",{d:"M9.5 12H16",key:"ktog6x"}],["path",{d:"M9.5 16H14",key:"p1seyn"}]]),va=qe("sliders-horizontal",[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]]),ft=ne();const ga=({chatState:t,chatId:e,messages:r})=>{if(!e)return oe.warn("No active chat"),t;let l=t.chats.get(e);if(!l)return oe.warn("No active chat"),t;let o=new Map(t.chats),s=Date.now();return o.set(l.id,{...l,messages:r,updatedAt:s}),{...t,chats:o}};var xt=h.forwardRef((t,e)=>{let r=(0,ft.c)(15),l,o,s;r[0]===t?(l=r[1],o=r[2],s=r[3]):({className:o,children:l,...s}=t,r[0]=t,r[1]=l,r[2]=o,r[3]=s);let n;r[4]===o?n=r[5]:(n=K("relative overflow-hidden",o),r[4]=o,r[5]=n);let i;r[6]===l?i=r[7]:(i=(0,a.jsx)(pa,{className:"h-full w-full rounded-[inherit]",children:l}),r[6]=l,r[7]=i);let u,c;r[8]===Symbol.for("react.memo_cache_sentinel")?(u=(0,a.jsx)(vt,{}),c=(0,a.jsx)(fa,{}),r[8]=u,r[9]=c):(u=r[8],c=r[9]);let d;return r[10]!==s||r[11]!==e||r[12]!==n||r[13]!==i?(d=(0,a.jsxs)(pt,{ref:e,className:n,...s,children:[i,u,c]}),r[10]=s,r[11]=e,r[12]=n,r[13]=i,r[14]=d):d=r[14],d});xt.displayName=pt.displayName;var vt=h.forwardRef((t,e)=>{let r=(0,ft.c)(14),l,o,s;r[0]===t?(l=r[1],o=r[2],s=r[3]):({className:l,orientation:s,...o}=t,r[0]=t,r[1]=l,r[2]=o,r[3]=s);let n=s===void 0?"vertical":s,i=n==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-px",u=n==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-px",c;r[4]!==l||r[5]!==i||r[6]!==u?(c=K("flex touch-none select-none transition-colors",i,u,l),r[4]=l,r[5]=i,r[6]=u,r[7]=c):c=r[7];let d;r[8]===Symbol.for("react.memo_cache_sentinel")?(d=(0,a.jsx)(it,{className:"relative flex-1 rounded-full bg-border"}),r[8]=d):d=r[8];let m;return r[9]!==n||r[10]!==o||r[11]!==e||r[12]!==c?(m=(0,a.jsx)(Se,{ref:e,orientation:n,className:c,...o,children:d}),r[9]=n,r[10]=o,r[11]=e,r[12]=c,r[13]=m):m=r[13],m});vt.displayName=Se.displayName;var ba=[{label:"Today",days:0},{label:"Yesterday",days:1},{label:"2d ago",days:2},{label:"3d ago",days:3},{label:"This week",days:7},{label:"This month",days:30}];const wa=t=>{let e=Date.now(),r=ba.map(s=>({...s,chats:[]})),l={label:"Older",days:1/0,chats:[]},o=s=>{switch(s){case 0:return r[0];case 1:return r[1];case 2:return r[2];case 3:return r[3];default:return s>=4&&s<=7?r[4]:s>=8&&s<=30?r[5]:l}};for(let s of t)o(Math.floor((e-s.updatedAt)/864e5)).chats.push(s);return[...r,l].filter(s=>s.chats.length>0)},ya=({activeChatId:t,setActiveChat:e})=>{let r=be(Je),{locale:l}=Gr(),[o,s]=(0,h.useState)(""),n=(0,h.useMemo)(()=>[...r.chats.values()].toSorted((c,d)=>d.updatedAt-c.updatedAt),[r.chats]),i=(0,h.useMemo)(()=>o.trim()?n.filter(c=>c.title.toLowerCase().includes(o.toLowerCase())):n,[n,o]),u=(0,h.useMemo)(()=>wa(i),[i]);return(0,a.jsxs)(Ye,{children:[(0,a.jsx)(we,{content:"Previous chats",children:(0,a.jsx)(Oe,{asChild:!0,children:(0,a.jsx)(B,{variant:"text",size:"icon",children:(0,a.jsx)(qt,{className:"h-4 w-4"})})})}),(0,a.jsxs)(Ue,{className:"w-[480px] p-0",align:"start",side:"right",children:[(0,a.jsx)("div",{className:"pt-3 px-3 w-full",children:(0,a.jsx)(Xr,{placeholder:"Search chat history...",value:o,onChange:c=>s(c.target.value),className:"text-xs"})}),(0,a.jsx)(xt,{className:"h-[450px] p-2",children:(0,a.jsxs)("div",{className:"space-y-3",children:[n.length===0&&(0,a.jsx)(ye,{title:"No chats yet",description:"Start a new chat to get started",icon:(0,a.jsx)(Ve,{})}),i.length===0&&o&&n.length>0&&(0,a.jsx)(ye,{title:"No chats found",description:`No chats match "${o}"`,icon:(0,a.jsx)(Yr,{})}),u.map((c,d)=>(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)("div",{className:"text-xs px-1 text-muted-foreground/60",children:c.label}),(0,a.jsx)("div",{children:c.chats.map(m=>(0,a.jsxs)("button",{className:K("w-full p-1 rounded-md cursor-pointer text-left flex items-center justify-between",m.id===t&&"bg-accent",m.id!==t&&"hover:bg-muted/20"),onClick:()=>{e(m.id)},type:"button",children:[(0,a.jsx)("div",{className:"flex-1 min-w-0",children:(0,a.jsx)("div",{className:"text-sm truncate",children:m.title})}),(0,a.jsx)("div",{className:"text-xs text-muted-foreground/60 ml-2 shrink-0",children:Kr(m.updatedAt,l)})]},m.id))}),d!==u.length-1&&(0,a.jsx)("hr",{})]},c.label))]})})]})]})};var ja=ne();const Sa=()=>{let t=(0,ja.c)(17),[e,r]=ge(et),l=e.webSearch,o=l?"Capabilities (web search enabled)":"Capabilities",s=l||void 0,n=l&&"bg-primary/15 text-primary ring-1 ring-primary/30 opacity-100 hover:bg-primary/20",i;t[0]===n?i=t[1]:(i=K("h-6 w-6 shrink-0 bg-muted hover:bg-muted/30",n),t[0]=n,t[1]=i);let u;t[2]===Symbol.for("react.memo_cache_sentinel")?(u=(0,a.jsx)(va,{className:"h-3.5 w-3.5"}),t[2]=u):u=t[2];let c;t[3]!==o||t[4]!==s||t[5]!==i?(c=(0,a.jsx)(Oe,{asChild:!0,children:(0,a.jsx)(B,{"aria-label":"Capabilities",title:o,"data-active":s,variant:"text",size:"icon",className:i,children:u})}),t[3]=o,t[4]=s,t[5]=i,t[6]=c):c=t[6];let d;t[7]===Symbol.for("react.memo_cache_sentinel")?(d=(0,a.jsx)("span",{className:"text-sm font-semibold",children:"Web search"}),t[7]=d):d=t[7];let m;t[8]===Symbol.for("react.memo_cache_sentinel")?(m=(0,a.jsxs)("div",{className:"flex flex-col gap-0.5",children:[d,(0,a.jsxs)("span",{className:"text-xs text-muted-foreground",children:["Search the web when the model supports it."," ",(0,a.jsx)(Zr,{href:"https://docs.marimo.io/guides/editor_features/tools#web-search-and-fetch",children:"Learn more"})]})]}),t[8]=m):m=t[8];let f;t[9]===r?f=t[10]:(f=b=>r(A=>({...A,webSearch:b})),t[9]=r,t[10]=f);let x;t[11]!==f||t[12]!==l?(x=(0,a.jsx)(Ue,{className:"w-76 p-3",align:"start",side:"top",children:(0,a.jsxs)("label",{htmlFor:"web-search-toggle",className:"flex items-start justify-between gap-3 cursor-pointer",children:[m,(0,a.jsx)(er,{id:"web-search-toggle","aria-label":"Web search",size:"sm",checked:l,onCheckedChange:f})]})}),t[11]=f,t[12]=l,t[13]=x):x=t[13];let g;return t[14]!==c||t[15]!==x?(g=(0,a.jsxs)(Ye,{children:[c,x]}),t[14]=c,t[15]=x,t[16]=g):g=t[16],g};var Ca=ne();function gt(){return Br()}function Na(t){let e=(0,Ca.c)(4),[r,l]=(0,h.useState)(gt),o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o=()=>l(gt()),e[0]=o):o=e[0];let s=L(o),n=t??r,i;return e[1]!==s||e[2]!==n?(i={chatControllerId:n,renewDraftChatId:s},e[1]=s,e[2]=n,e[3]=i):i=e[3],i}var Q=ne(),bt="manual",wt=(0,h.memo)(t=>{let e=(0,Q.c)(18),{message:r}=t,l;e[0]===r.parts?l=e[1]:(l=r.parts.filter(ka).map(Ia).join(`
2
2
  `),e[0]=r.parts,e[1]=l);let o=l,s,n,i;if(e[2]!==r.parts){let x=r.parts.filter(La);i="flex justify-end",s="w-[95%] bg-background border border-dashed p-2 rounded-sm opacity-70",n=x.map(Ma),e[2]=r.parts,e[3]=s,e[4]=n,e[5]=i}else s=e[3],n=e[4],i=e[5];let u;e[6]===o?u=e[7]:(u=(0,a.jsx)("span",{className:"wrap-break-word",children:o}),e[6]=o,e[7]=u);let c;e[8]===Symbol.for("react.memo_cache_sentinel")?(c=(0,a.jsx)(Ze,{className:"h-3.5 w-3.5 shrink-0 animate-spin"}),e[8]=c):c=e[8];let d;e[9]===u?d=e[10]:(d=(0,a.jsxs)("div",{className:"flex items-center justify-end gap-2 text-sm text-muted-foreground",children:[u,c]}),e[9]=u,e[10]=d);let m;e[11]!==s||e[12]!==n||e[13]!==d?(m=(0,a.jsxs)("div",{className:s,children:[n,d]}),e[11]=s,e[12]=n,e[13]=d,e[14]=m):m=e[14];let f;return e[15]!==i||e[16]!==m?(f=(0,a.jsx)("div",{className:i,children:m}),e[15]=i,e[16]=m,e[17]=f):f=e[17],f});wt.displayName="QueuedMessageDisplay";var Aa=t=>{let e=(0,Q.c)(18),{onNewChat:r,activeChatId:l,setActiveChat:o}=t,{handleClick:s}=He(),n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=(0,a.jsx)(Ur,{className:"h-4 w-4"}),e[0]=n):n=e[0];let i;e[1]===r?i=e[2]:(i=(0,a.jsx)(we,{content:"New chat",children:(0,a.jsx)(B,{variant:"text",size:"icon",onClick:r,children:n})}),e[1]=r,e[2]=i);let u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u=(0,a.jsx)($t,{}),e[3]=u):u=e[3];let c;e[4]===s?c=e[5]:(c=()=>s("ai"),e[4]=s,e[5]=c);let d;e[6]===Symbol.for("react.memo_cache_sentinel")?(d=(0,a.jsx)(qr,{className:"h-4 w-4"}),e[6]=d):d=e[6];let m;e[7]===c?m=e[8]:(m=(0,a.jsx)(we,{content:"AI Settings",children:(0,a.jsx)(B,{variant:"text",size:"xs",className:"hover:bg-foreground/10 py-2",onClick:c,children:d})}),e[7]=c,e[8]=m);let f;e[9]!==l||e[10]!==o?(f=(0,a.jsx)(ya,{activeChatId:l,setActiveChat:o}),e[9]=l,e[10]=o,e[11]=f):f=e[11];let x;e[12]!==m||e[13]!==f?(x=(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[u,m,f]}),e[12]=m,e[13]=f,e[14]=x):x=e[14];let g;return e[15]!==i||e[16]!==x?(g=(0,a.jsxs)("div",{className:"flex border-b px-2 py-1 justify-between shrink-0 items-center",children:[i,x]}),e[15]=i,e[16]=x,e[17]=g):g=e[17],g},yt=(0,h.memo)(t=>{let e=(0,Q.c)(17),{message:r,index:l,onEdit:o,isStreamingReasoning:s,isLast:n,isActive:i,addToolApprovalResponse:u}=t,c;e[0]!==l||e[1]!==o?(c=w=>{var C,j,N;let S=(j=(C=w.parts)==null?void 0:C.filter(Pa))==null?void 0:j.map(Da).join(`
3
3
  `),T=(N=w.parts)==null?void 0:N.filter(za);return(0,a.jsxs)("div",{className:"w-[95%] bg-background border p-1 rounded-sm",children:[T==null?void 0:T.map(Fa),(0,a.jsx)(Ge,{value:S,placeholder:"Type your message...",onChange:Ha,onSubmit:(M,I)=>{I.trim()&&o(l,I)},onClose:Wa},w.id)]})},e[0]=l,e[1]=o,e[2]=c):c=e[2];let d=c,m;e[3]!==u||e[4]!==i||e[5]!==n||e[6]!==s?(m=w=>(0,a.jsxs)("div",{className:"w-[95%] wrap-break-word",children:[(0,a.jsx)("div",{className:"absolute right-1 top-1 opacity-0 group-hover:opacity-100 transition-opacity",children:(0,a.jsx)($r,{className:"h-3 w-3",value:w.parts.filter(Oa).map(Ua).join(`
4
4
  `)||""})}),br({message:w,isStreamingReasoning:s,isLast:n,isActive:i,addToolApprovalResponse:u})]}),e[3]=u,e[4]=i,e[5]=n,e[6]=s,e[7]=m):m=e[7];let f=m,x=r.role==="user"?"justify-end":"justify-start",g;e[8]===x?g=e[9]:(g=K("flex group relative",x),e[8]=x,e[9]=g);let b;e[10]!==r||e[11]!==f||e[12]!==d?(b=r.role==="user"?d(r):f(r),e[10]=r,e[11]=f,e[12]=d,e[13]=b):b=e[13];let A;return e[14]!==g||e[15]!==b?(A=(0,a.jsx)("div",{className:g,children:b}),e[14]=g,e[15]=b,e[16]=A):A=e[16],A});yt.displayName="ChatMessage";var jt=(0,h.memo)(t=>{var le;let e=(0,Q.c)(43),{isEmpty:r,onSendClick:l,isLoading:o,onStop:s,fileInputRef:n,onAddFiles:i,onAddContext:u}=t,c=be(We),d=(c==null?void 0:c.mode)||bt,m=((le=c==null?void 0:c.models)==null?void 0:le.chat_model)||"openai/gpt-4o",f=Kt.parse(m).providerId,{saveModeChange:x}=sr(),g;e[0]===Symbol.for("react.memo_cache_sentinel")?(g=[{value:"manual",label:"Manual",subtitle:"Pure chat, no tool usage",Icon:Or},{value:"ask",label:"Ask",subtitle:"AI with access to read-only tools like documentation search",Icon:xa},{value:"agent",label:"Agent",subtitle:"AI with access to read and write tools",Icon:Wr},{value:"code_mode",label:"Code Mode (beta)",subtitle:"AI with access to the notebook's kernel. Potentially destructive.",Icon:Hr}],e[0]=g):g=e[0];let b=g,A=kr.has(f),w;e[1]!==d||e[2]!==b?(w=b.find(re=>re.value===d),e[1]=d,e[2]=b,e[3]=w):w=e[3];let S=w,T=S==null?void 0:S.Icon,C=S==null?void 0:S.label,j;e[4]===T?j=e[5]:(j=T&&(0,a.jsx)(T,{className:"h-3 w-3"}),e[4]=T,e[5]=j);let N;e[6]===C?N=e[7]:(N=(0,a.jsx)("span",{className:"text-nowrap",children:C}),e[6]=C,e[7]=N);let M;e[8]!==j||e[9]!==N?(M=(0,a.jsxs)(ur,{className:"h-6 text-xs border-border shadow-none! ring-0! bg-muted hover:bg-muted/30 py-0 px-2 gap-1.5 shrink-0",children:[j,N]}),e[8]=j,e[9]=N,e[10]=M):M=e[10];let I;e[11]===Symbol.for("react.memo_cache_sentinel")?(I=(0,a.jsx)(lr,{className:"text-xs uppercase tracking-wider text-muted-foreground/70 font-medium",children:"AI Mode"}),e[11]=I):I=e[11];let y;e[12]===b?y=e[13]:(y=(0,a.jsx)(ir,{children:(0,a.jsxs)(dr,{children:[I,b.map(Ya)]})}),e[12]=b,e[13]=y);let _;e[14]!==d||e[15]!==x||e[16]!==M||e[17]!==y?(_=(0,a.jsxs)(mr,{value:d,onValueChange:x,children:[M,y]}),e[14]=d,e[15]=x,e[16]=M,e[17]=y,e[18]=_):_=e[18];let P,U;e[19]===Symbol.for("react.memo_cache_sentinel")?(U=(0,a.jsx)(Gt,{placeholder:"Model",triggerClassName:"h-6 text-xs shadow-none! ring-0! bg-muted hover:bg-muted/30 rounded-sm max-w-[200px]",iconSize:"small",showAddCustomModelDocs:!0,forRole:"chat"}),P=(0,a.jsx)(Sa,{}),e[19]=P,e[20]=U):(P=e[19],U=e[20]);let Y;e[21]===_?Y=e[22]:(Y=(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-1",children:[_,U,P]}),e[21]=_,e[22]=Y);let X;e[23]!==o||e[24]!==u?(X=(0,a.jsx)(Ir,{handleAddContext:u,isLoading:o}),e[23]=o,e[24]=u,e[25]=X):X=e[25];let q;e[26]!==n||e[27]!==A||e[28]!==o||e[29]!==i?(q=A&&(0,a.jsx)(Pr,{fileInputRef:n,isLoading:o,onAddFiles:i}),e[26]=n,e[27]=A,e[28]=o,e[29]=i,e[30]=q):q=e[30];let V;e[31]!==r||e[32]!==o||e[33]!==l||e[34]!==s?(V=(0,a.jsx)(Lr,{isLoading:o,onStop:s,onSendClick:l,isEmpty:r}),e[31]=r,e[32]=o,e[33]=l,e[34]=s,e[35]=V):V=e[35];let F;e[36]!==X||e[37]!==q||e[38]!==V?(F=(0,a.jsxs)("div",{className:"flex flex-row ml-auto",children:[X,q,V]}),e[36]=X,e[37]=q,e[38]=V,e[39]=F):F=e[39];let Z;return e[40]!==Y||e[41]!==F?(Z=(0,a.jsx)(Xe,{children:(0,a.jsxs)("div",{className:"px-3 py-2 border-t border-border/20 flex flex-wrap items-center gap-1",children:[Y,F]})}),e[40]=Y,e[41]=F,e[42]=Z):Z=e[42],Z});jt.displayName="ChatInputFooter";var Ae=(0,h.memo)(t=>{let e=(0,Q.c)(29),{placeholder:r,input:l,inputClassName:o,setInput:s,onSubmit:n,inputRef:i,isLoading:u,onStop:c,fileInputRef:d,onAddFiles:m,onClose:f}=t,x;e[0]!==l||e[1]!==n?(x=()=>{l.trim()&&n(void 0,l)},e[0]=l,e[1]=n,e[2]=x):x=e[2];let g=L(x),b;e[3]===o?b=e[4]:(b=K("px-2 py-1.5",o),e[3]=o,e[4]=b);let A=r||"Type your message...",w;e[5]!==l||e[6]!==i||e[7]!==m||e[8]!==f||e[9]!==n||e[10]!==s||e[11]!==A?(w=(0,a.jsx)(Ge,{className:"max-h-[400px]",inputRef:i,value:l,onChange:s,onSubmit:n,onClose:f,onAddFiles:m,placeholder:A}),e[5]=l,e[6]=i,e[7]=m,e[8]=f,e[9]=n,e[10]=s,e[11]=A,e[12]=w):w=e[12];let S;e[13]!==b||e[14]!==w?(S=(0,a.jsx)("div",{className:b,children:w}),e[13]=b,e[14]=w,e[15]=S):S=e[15];let T=!l.trim(),C;e[16]===i?C=e[17]:(C=()=>wr(i),e[16]=i,e[17]=C);let j;e[18]!==d||e[19]!==g||e[20]!==u||e[21]!==m||e[22]!==c||e[23]!==T||e[24]!==C?(j=(0,a.jsx)(jt,{isEmpty:T,onAddContext:C,onSendClick:g,isLoading:u,onStop:c,fileInputRef:d,onAddFiles:m}),e[18]=d,e[19]=g,e[20]=u,e[21]=m,e[22]=c,e[23]=T,e[24]=C,e[25]=j):j=e[25];let N;return e[26]!==S||e[27]!==j?(N=(0,a.jsxs)("div",{className:"relative shrink-0 flex flex-col border-t",children:[S,j]}),e[26]=S,e[27]=j,e[28]=N):N=e[28],N});Ae.displayName="ChatInput";var Ra=t=>{let e=(0,Q.c)(5),{onPairWithAgent:r}=t;if(Zt())return null;let l,o,s;e[0]===Symbol.for("react.memo_cache_sentinel")?(l=(0,a.jsx)(Vr,{className:"h-3.5 w-3.5 shrink-0"}),o=(0,a.jsx)("span",{children:"Work on this notebook with your own agent"}),s=(0,a.jsx)(fr,{className:"h-3 w-3 shrink-0"}),e[0]=l,e[1]=o,e[2]=s):(l=e[0],o=e[1],s=e[2]);let n;return e[3]===r?n=e[4]:(n=(0,a.jsxs)(B,{variant:"text",className:"gap-1.5 text-sm text-link hover:underline",onClick:r,children:[l,o,s]}),e[3]=r,e[4]=n),n},Ta=()=>{let t=(0,Q.c)(6),e=be(Qt),{handleClick:r}=He();if(!e){let o;t[0]===r?o=t[1]:(o=(0,a.jsx)(B,{variant:"outline",size:"sm",onClick:()=>r("ai","ai-providers"),children:"Edit AI settings"}),t[0]=r,t[1]=o);let s;t[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,a.jsx)(Ve,{}),t[2]=s):s=t[2];let n;return t[3]===o?n=t[4]:(n=(0,a.jsx)(ye,{title:"Chat with AI",description:"No AI provider configured or Chat model not selected",action:o,icon:s}),t[3]=o,t[4]=n),n}let l;return t[5]===Symbol.for("react.memo_cache_sentinel")?(l=(0,a.jsx)(_a,{}),t[5]=l):l=t[5],l},_a=()=>{let t=Ut(Je),[e,r]=ge(ea),[l,o]=ge(Jr),[s,n]=(0,h.useState)(""),[i,u]=(0,h.useState)(""),[c,d]=(0,h.useState)(!0),{files:m,addFiles:f,clearFiles:x,removeFile:g}=yr(),{messages:b,enqueue:A,flushNext:w,clear:S,hasQueuedRef:T}=zr(),C=(0,h.useRef)(null),j=(0,h.useRef)(null),N=(0,h.useRef)(null),M=(0,h.useRef)(null),I=(0,h.useRef)(null),[y,_]=(0,h.useState)(null),P=L(()=>{I.current=null,_(null)}),U=Jt(),{invokeAiTool:Y,sendRun:X}=hr(),{openModal:q,closeModal:V}=Qr(),F=e==null?void 0:e.id,{chatControllerId:Z,renewDraftChatId:le}=Na(F),re=Yt(),{addStagedCell:St}=jr(),{createNewCell:Ct,prepareForRun:Nt}=Vt(),At={addStagedCell:St,createNewCell:Ct,prepareForRun:Nt,sendRun:X,store:re},{messages:H,sendMessage:pe,error:ae,status:Re,regenerate:Rt,stop:fe,addToolOutput:Tt,addToolApprovalResponse:_t,id:Et}=Sr({id:Z,throttle:100,sendAutomaticallyWhen:({messages:p})=>Qe(p),messages:(e==null?void 0:e.messages)||[],transport:new Mr({api:U.getAiURL("chat").toString(),headers:()=>U.headers(),prepareSendMessagesRequest:async p=>{var O;let v=await Rr({messages:p.messages});v.success||oe.debug("Outgoing chat messages failed AI SDK schema validation",v.error);let R={uiMessages:p.messages,includeOtherCode:Bt(""),options:re.get(et)},k=((O=re.get(We))==null?void 0:O.mode)||bt,E=Ar.getToolSchemas(k);return{api:U.getAiURL("chat").toString(),body:{tools:E,...p,...R}}}},p=>{let v=gr(p);v!==void 0&&(I.current=v)}),onFinish:({messages:p,isError:v,isAbort:R,finishReason:k})=>{if(t(E=>ga({chatState:E,chatId:E.activeChatId,messages:p})),R){let E=xr({isAbort:!0,streamReason:I.current});if(P(),E!=null){let O=vr(E);oe.debug("Chat stream aborted",{reason:E,finishReason:k}),_(O)}}else P();xe(p,{isError:v,isAbort:R})},onToolCall:async({toolCall:p})=>{await Dr({invokeAiTool:Y,addToolOutput:Tt,toolCall:{toolName:p.toolName,toolCallId:p.toolCallId,input:p.input},toolContext:At})},onError:p=>{oe.error("An error occurred:",p)}}),Te=L(p=>{P(),pe({role:"user",parts:p})}),xe=L((p,v)=>{T.current&&Nr({isError:v.isError,isAbort:v.isAbort,hasPendingToolCalls:Qe(p),hasUnresolvedToolCalls:_r(p)})&&w(Te)}),D=Re==="submitted"||Re==="streaming",_e=(0,h.useRef)(D);_e.current=D;let Ee=L(p=>{_e.current||T.current?A(p):Te(p)}),kt=L(()=>{let p=N.current;if(!p)return;let{scrollTop:v,scrollHeight:R,clientHeight:k}=p;d(R>k?Math.abs(R-k-v)<5:!0)}),ve=L((p=!1)=>{let v=N.current;v&&v.scrollTo({top:v.scrollHeight,behavior:p?"smooth":"auto"})}),It=D&&H.length>0&&Fr(H);(0,h.useEffect)(()=>{d(!0),S(),P()},[F,S,P]),(0,h.useEffect)(()=>{if(!c)return;let p=requestAnimationFrame(()=>{ve()});return()=>cancelAnimationFrame(p)},[H,b,D,c,ve]),(0,h.useEffect)(()=>{D||xe(H,{isError:ae!=null,isAbort:!1})},[H,D,ae,xe]);let ke=L(p=>{let v=Date.now(),R={id:Et,title:Tr(p),messages:[],createdAt:v,updatedAt:v};t(k=>{let E=new Map(k.chats);return E.set(R.id,R),{...k,chats:E,activeChatId:R.id}})}),Lt=L(async(p,v)=>{ke(p);let R=v&&v.length>0?await $e(v):void 0,{contextPart:k,attachments:E}=await ce(p);pe({role:"user",parts:[{type:"text",text:p},...k?[k]:[],...R??[],...E]}),x(),n("")}),Mt=L(()=>{le(),r(null),n(""),u(""),S(),x()}),Pt=L(()=>{q((0,a.jsx)(ra,{onClose:V}))}),Dt=L(async(p,v)=>{var Pe;let R=H[p],k=((Pe=R.parts)==null?void 0:Pe.filter(De=>De.type==="file"&&!Cr(De)))??[],{contextPart:E,attachments:O}=await ce(v),Ot=R.id;pe({messageId:Ot,role:"user",parts:[{type:"text",text:v},...E?[E]:[],...k,...O]})}),zt=L(async(p,v)=>{var O;if(!v.trim())return;(O=j.current)!=null&&O.view&&Be(j.current.view);let R=m?await $e(m):void 0,{contextPart:k,attachments:E}=await ce(v);p==null||p.preventDefault(),Ee([{type:"text",text:v},...k?[k]:[],...R??[],...E]),n(""),x()}),Ft=()=>{P(),Rt()},Ht=L(()=>{var p;i.trim()&&((p=C.current)!=null&&p.view&&Be(C.current.view),Lt(i.trim(),m))}),Wt=()=>{var p,v;return(v=(p=C.current)==null?void 0:p.editor)==null?void 0:v.blur()},Ie=L(async p=>{F??(ke(p),n(i));let{contextPart:v,attachments:R}=await ce(p);Ee([{type:"text",text:p},...v?[v]:[],...R])}),J=H.length===0;(0,h.useEffect)(()=>{if(!l)return;o(null);let{prompt:p,submit:v}=l;v?Ie(p):J?(u(p),Fe(C)):(n(p),Fe(j))},[l,o,J,Ie]);let Le=J?(0,a.jsx)(Ae,{placeholder:"Ask anything, @ to include context about tables or dataframes",input:i,inputRef:C,inputClassName:"px-1 py-0",setInput:u,onSubmit:Ht,isLoading:D,onStop:fe,fileInputRef:M,onAddFiles:f,onClose:Wt},"new-thread-input"):(0,a.jsx)(Ae,{input:s,setInput:n,onSubmit:zt,inputRef:j,isLoading:D,onStop:fe,onClose:()=>{var p,v;return(v=(p=j.current)==null?void 0:p.editor)==null?void 0:v.blur()},fileInputRef:M,onAddFiles:f}),Me=m&&m.length>0&&(0,a.jsx)("div",{className:K("flex flex-row gap-1 flex-wrap p-1",J&&"py-2 px-1"),children:m==null?void 0:m.map(p=>(0,a.jsx)(Er,{file:p,onRemove:()=>g(p)},p.name))});return(0,a.jsxs)("div",{className:"flex flex-col h-[calc(100%-53px)]",children:[(0,a.jsx)(Xe,{children:(0,a.jsx)(Aa,{onNewChat:Mt,activeChatId:e==null?void 0:e.id,setActiveChat:r})}),(0,a.jsxs)("div",{className:"flex-1 flex flex-col overflow-hidden relative min-h-0",children:[(0,a.jsxs)("div",{className:"flex-1 px-3 bg-(--slate-1) gap-4 py-3 flex flex-col overflow-y-auto",ref:N,onScroll:kt,children:[J&&(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsxs)("div",{className:"rounded-md border bg-background",children:[Me,Le]}),(0,a.jsx)(Ra,{onPairWithAgent:Pt})]}),H.map((p,v)=>(0,a.jsx)(yt,{message:p,index:v,onEdit:Dt,isStreamingReasoning:It,isLast:v===H.length-1,isActive:D,addToolApprovalResponse:_t},p.id)),b.map(p=>(0,a.jsx)(wt,{message:p},p.id)),D&&(0,a.jsx)("div",{className:"flex justify-center py-4",children:(0,a.jsx)(Ze,{className:"h-4 w-4 animate-spin"})}),ae&&(0,a.jsxs)("div",{className:"flex items-center justify-center space-x-2 mb-4",children:[(0,a.jsx)(ta,{error:ae||Error("Unknown error")}),(0,a.jsx)(B,{variant:"outline",size:"sm",onClick:Ft,children:"Retry"})]}),y&&!D&&!ae&&(0,a.jsx)("div",{className:"flex justify-center py-2",children:(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:y})})]}),(0,a.jsx)(pr,{isVisible:!c&&(H.length>0||b.length>0),onScrollToBottom:()=>ve(!0)})]}),D&&(0,a.jsx)("div",{className:"w-full flex justify-center items-center z-20 border-t",children:(0,a.jsx)(B,{variant:"linkDestructive",size:"sm",onClick:fe,children:"Stop"})}),!J&&(0,a.jsxs)(a.Fragment,{children:[Me,Le]})]})},Ea=Ta;function ka(t){return t.type==="text"}function Ia(t){return t.text}function La(t){return t.type==="file"}function Ma(t,e){return(0,a.jsx)(Ke,{attachment:t},e)}function Pa(t){return t.type==="text"}function Da(t){return t.text}function za(t){return t.type==="file"}function Fa(t,e){return(0,a.jsx)(Ke,{attachment:t},e)}function Ha(){}function Wa(){}function Oa(t){return t.type==="text"}function Ua(t){return t.text}function Ya(t){return(0,a.jsx)(nr,{value:t.value,className:"text-xs py-1",children:(0,a.jsxs)("div",{className:"flex items-start gap-2.5",children:[(0,a.jsx)("span",{className:"mt-1 text-muted-foreground",children:(0,a.jsx)(t.Icon,{className:"h-3 w-3"})}),(0,a.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,a.jsx)("span",{className:"font-semibold",children:t.label}),(0,a.jsx)("span",{className:"text-muted-foreground",children:t.subtitle})]})]})},t.value)}export{Ea as default};