@marimo-team/frontend 0.23.9-dev24 → 0.23.9-dev26

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 (84) hide show
  1. package/dist/assets/{CellStatus-BqCsCfF0.js → CellStatus-CLxcT_cM.js} +1 -1
  2. package/dist/assets/{ConnectedDataExplorerComponent-CojLBX8C.js → ConnectedDataExplorerComponent-Dpgo8BF0.js} +1 -1
  3. package/dist/assets/{JsonOutput-7sNcAFVa.js → JsonOutput-CusPgY2j.js} +1 -1
  4. package/dist/assets/{MarimoErrorOutput-BOi3ico3.js → MarimoErrorOutput-B_8Wgh_6.js} +1 -1
  5. package/dist/assets/{RenderHTML-CUf8D25v.js → RenderHTML-Dm20tKw3.js} +1 -1
  6. package/dist/assets/{RunButton-BDOMYqej.js → RunButton-BUq1ZIzv.js} +1 -1
  7. package/dist/assets/{add-cell-with-ai-XU2qpbrH.js → add-cell-with-ai-CV7qdXZ6.js} +1 -1
  8. package/dist/assets/{add-connection-dialog-C9ehEIhe.js → add-connection-dialog-BpPTpNHa.js} +1 -1
  9. package/dist/assets/{agent-panel-CteWNnTE.js → agent-panel-DYVyd4UE.js} +1 -1
  10. package/dist/assets/{ai-model-dropdown-tspiiyaT.js → ai-model-dropdown-guVuz4cU.js} +4 -4
  11. package/dist/assets/{app-config-button-Co0iUAmT.js → app-config-button-Cj07FGsj.js} +1 -1
  12. package/dist/assets/{cell-editor-SWzZ01Xy.js → cell-editor-BywT88U0.js} +1 -1
  13. package/dist/assets/{cell-link-DLb_k4Kf.js → cell-link-DkEWt80K.js} +1 -1
  14. package/dist/assets/{cells-yL2qMkYn.js → cells-1XaQzJBc.js} +1 -1
  15. package/dist/assets/{chat-display-CHd7vgqs.js → chat-display-DJxt1jsL.js} +1 -1
  16. package/dist/assets/{chat-panel-DeHm9U27.js → chat-panel-3ypvib3G.js} +1 -1
  17. package/dist/assets/{chat-ui-cSu2PBtp.js → chat-ui-S-G1Rvuu.js} +1 -1
  18. package/dist/assets/{column-preview-D1138kdA.js → column-preview-DVkTxMGI.js} +1 -1
  19. package/dist/assets/{command-palette-DdhU05vN.js → command-palette-D4WQward.js} +1 -1
  20. package/dist/assets/{common-DqZ15mGE.js → common-DPbBXxzB.js} +1 -1
  21. package/dist/assets/{components-DXfCmhfc.js → components-CJAJOpwt.js} +1 -1
  22. package/dist/assets/{components-BK3xAU_5.js → components-vyxhSeYE.js} +1 -1
  23. package/dist/assets/{config-CasRXHAM.js → config-hed0CaQL.js} +1 -1
  24. package/dist/assets/{datasource-CJC51Mx7.js → datasource-CLXUP6g0.js} +1 -1
  25. package/dist/assets/{dependency-graph-panel-avUgiyMA.js → dependency-graph-panel-B70NP6bp.js} +1 -1
  26. package/dist/assets/{documentation-panel-BX7dDKRB.js → documentation-panel-o-viwf0J.js} +1 -1
  27. package/dist/assets/{download-DucsG72p.js → download-qESwLUZl.js} +1 -1
  28. package/dist/assets/{edit-page-D-PmFfK7.js → edit-page-CH2TkWIz.js} +3 -3
  29. package/dist/assets/{error-panel-BqoOUjfw.js → error-panel-69wfyEqu.js} +1 -1
  30. package/dist/assets/{file-explorer-panel-8hhN0YIE.js → file-explorer-panel-DEiH3PAy.js} +1 -1
  31. package/dist/assets/{file-icons-CNUmy2Dl.js → file-icons-nRpX80xD.js} +1 -1
  32. package/dist/assets/{floating-outline-B_uWfcys.js → floating-outline-BWfYKjEI.js} +1 -1
  33. package/dist/assets/{focus-Cyz1EKwA.js → focus-DCbL1KSz.js} +1 -1
  34. package/dist/assets/{form-Dyt6aN_7.js → form-DdWBrfFm.js} +1 -1
  35. package/dist/assets/{glide-data-editor-CTMu1iy8.js → glide-data-editor-CjCd44bZ.js} +1 -1
  36. package/dist/assets/{globals-CDDbRvHE.js → globals-Dd7eo1nD.js} +1 -1
  37. package/dist/assets/{home-page-ahZaXEAO.js → home-page-NUz6SvL1.js} +1 -1
  38. package/dist/assets/{hooks-BmREojM6.js → hooks-CVNeEUPq.js} +1 -1
  39. package/dist/assets/{html-to-image-CKzwKb6F.js → html-to-image-7hWS7hJz.js} +1 -1
  40. package/dist/assets/index-DAfPvCnw.css +2 -0
  41. package/dist/assets/{index-CWMGYIgw.js → index-YNy0h9bn.js} +5 -5
  42. package/dist/assets/{kiosk-mode-z2bbZ6_w.js → kiosk-mode-JQPKtmIC.js} +1 -1
  43. package/dist/assets/{layout-i6tKZqCw.js → layout-ooVjwxI3.js} +3 -3
  44. package/dist/assets/{logs-panel-CNV8j7by.js → logs-panel-BP3lKR0p.js} +1 -1
  45. package/dist/assets/{markdown-renderer-3mlKZ6Wa.js → markdown-renderer-BzFpW89-.js} +1 -1
  46. package/dist/assets/{mermaid-6e36Mqc3.js → mermaid-JS_fM0GY.js} +1 -1
  47. package/dist/assets/{name-cell-input-BnL86ka3.js → name-cell-input-BGUk0-hx.js} +1 -1
  48. package/dist/assets/{outline-panel-k7h8ZSSH.js → outline-panel-DF5K6QKx.js} +1 -1
  49. package/dist/assets/{packages-panel-B60rK-z4.js → packages-panel-6hStEQik.js} +1 -1
  50. package/dist/assets/{panels-DHCVX_8o.js → panels-B7B07kKj.js} +1 -1
  51. package/dist/assets/{process-output-Bi7Z_Agd.js → process-output-6n1ugWwo.js} +1 -1
  52. package/dist/assets/{radio-group-CdBpUP4h.js → radio-group-BarBLGia.js} +1 -1
  53. package/dist/assets/{readonly-python-code-beWODwjc.js → readonly-python-code-D8e6pAzl.js} +1 -1
  54. package/dist/assets/{renderShortcut-BrHz5aiT.js → renderShortcut-CzUfgpdJ.js} +1 -1
  55. package/dist/assets/{reveal-component-fENoSU2O.js → reveal-component-CLDiB0FE.js} +1 -1
  56. package/dist/assets/{run-page-CxA8m2Pc.js → run-page-C9kZJeAX.js} +1 -1
  57. package/dist/assets/{scratchpad-panel-Doe-hDIO.js → scratchpad-panel-DgE90Alx.js} +1 -1
  58. package/dist/assets/{session-panel-C5xz5D-N.js → session-panel-DHZylfH3.js} +1 -1
  59. package/dist/assets/{snippets-panel-rCxyqna5.js → snippets-panel-B33qfYgV.js} +1 -1
  60. package/dist/assets/{state-B6DTPcu0.js → state-3SH6NVgL.js} +1 -1
  61. package/dist/assets/{state-vUGPvNzI.js → state-BA_U3J4G.js} +1 -1
  62. package/dist/assets/{switch-BrbMxTq7.js → switch-YcZLs0mS.js} +1 -1
  63. package/dist/assets/{terminal-DXnxLykO.js → terminal-S5iF6Td7.js} +1 -1
  64. package/dist/assets/{textarea-DRcRrFRn.js → textarea-CTiWTiw-.js} +1 -1
  65. package/dist/assets/{tracing-DKMmxWD9.js → tracing-CW1nKi50.js} +1 -1
  66. package/dist/assets/{tracing-panel-KG023vH2.js → tracing-panel-BY38SOBp.js} +2 -2
  67. package/dist/assets/{useBoolean-CtP63TnG.js → useBoolean-oqDq5zze.js} +1 -1
  68. package/dist/assets/{useCellActionButton-ZXUUkx8s.js → useCellActionButton-BVzdWM6Q.js} +1 -1
  69. package/dist/assets/{useDeleteCell-wNHy5lEM.js → useDeleteCell-CnlX_9s7.js} +1 -1
  70. package/dist/assets/{useDependencyPanelTab-B7Qj36AL.js → useDependencyPanelTab-LJUqXtXa.js} +1 -1
  71. package/dist/assets/{useHotkey-D2dzNgpx.js → useHotkey-BtqYcnxQ.js} +1 -1
  72. package/dist/assets/{useNotebookActions-67xj2Dr_.js → useNotebookActions-DTRYRUIW.js} +1 -1
  73. package/dist/assets/{useRunCells-CJadPmdw.js → useRunCells-BJP5VHUs.js} +1 -1
  74. package/dist/assets/{useSplitCell-C04l3e__.js → useSplitCell-DwfXLRQ8.js} +1 -1
  75. package/dist/assets/{useTheme-BzHkS4pu.js → useTheme-KJ1rGmnj.js} +1 -1
  76. package/dist/assets/utils-Bok_hGT2.js +1 -0
  77. package/dist/assets/{vega-component-CJdVnPJQ.js → vega-component-BsorOyX7.js} +1 -1
  78. package/dist/index.html +30 -30
  79. package/package.json +1 -1
  80. package/src/components/app-config/ai-config.tsx +72 -0
  81. package/src/components/app-config/user-config-form.tsx +1 -1
  82. package/src/core/config/config-schema.ts +1 -0
  83. package/dist/assets/index-pG6JIIR-.css +0 -2
  84. package/dist/assets/utils-Cp7O5e1E.js +0 -1
@@ -1 +1 @@
1
- import{s as z}from"./chunk-LvLJmgfZ.js";import{l as X}from"./useEvent-D91BmmQi.js";import{t as Z}from"./react-Bj1aDYRI.js";import{Bt as I}from"./cells-yL2qMkYn.js";import{t as H}from"./compiler-runtime-B3qBwwSJ.js";import{S as $,c as ee,i as te,l as se,n as le,u as ae}from"./ai-model-dropdown-tspiiyaT.js";import{C as oe,v as ne,w as B}from"./utils-Cp7O5e1E.js";import{T as re}from"./config-CasRXHAM.js";import{t as ie}from"./jsx-runtime-BqBOg78p.js";import{o as ce}from"./alert-dialog-BqFLkbUc.js";import{i as de,r as he,t as me}from"./popover-Bz_0Vkyf.js";import{l as Q}from"./select-DZcFyKFQ.js";import{t as R}from"./tooltip-DTV9tlSr.js";import{t as xe}from"./button-BbCh-29a.js";import{s as U}from"./arrays-DYDL-3-i.js";import{r as Y}from"./requests-DIwGYs0l.js";import{t as pe}from"./createLucideIcon-D5guW7EU.js";import{t as fe}from"./x-C-6liIBr.js";import{r as D}from"./input-C3Hrdlqq.js";import{t as K}from"./settings-DfFe0dWD.js";import{a as M,c as A,d as L,g as ue,i as je,l as P,o as q,p as ve,u as S}from"./textarea-DRcRrFRn.js";import{t as ge}from"./use-toast-IPAtJGea.js";import{i as be}from"./RSPContexts-CdN1NyAt.js";import{n as we}from"./useDebounce-7xZwVnnu.js";import{c as ye,l as Ne,n as Ce,t as V}from"./dialog-DzC_QCtT.js";import{n as ke}from"./ImperativeModal-B3Th7k4R.js";import{t as O}from"./kbd-CTUAEnEx.js";import{t as _e}from"./links-D1JoyKTt.js";import{t as G}from"./Inputs-BG_nVZPt.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=H(),s=z(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(Ae,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)(R,{content:u,children:d}),e[12]=d,e[13]=u,e[14]=x):x=e[14],x};function Ae(){window.close()}var J=H(),W=z(Z(),1),Le=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,Le),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)(F,{title:"Display",children:[(0,s.jsx)(A,{control:l.control,name:"width",render:Fe}),(0,s.jsx)(A,{control:l.control,name:"app_title",render:He})]}),t[14]=l.control,t[15]=x);let h;t[16]===l.control?h=t[17]:(h=(0,s.jsxs)(F,{title:"Custom Files",children:[(0,s.jsx)(A,{control:l.control,name:"css_file",render:De}),(0,s.jsx)(A,{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)(F,{title:"Data",children:(0,s.jsx)(A,{control:l.control,name:"sql_output",render:ze})}),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)(M,{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)(I,{id:r,"data-testid":"html-checkbox",checked:_.value.includes("html"),onCheckedChange:()=>{_.onChange(U(_.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)(I,{id:i,"data-testid":"ipynb-checkbox",checked:_.value.includes("ipynb"),onCheckedChange:()=>{_.onChange(U(_.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)(F,{title:"Exporting outputs",children:(0,s.jsx)(A,{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 F=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 Ee(t){return(0,s.jsx)("option",{value:t,children:t},t)}function Fe(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)(M,{children:(0,s.jsx)(Q,{"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(Ee)})}),(0,s.jsx)(L,{})]})}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,{children:"App title"}),(0,s.jsx)(M,{children:(0,s.jsx)(D,{...e,value:e.value??"",onChange:a=>{e.onChange(a.target.value),B.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 De(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)(M,{children:(0,s.jsx)(D,{...e,value:e.value??"",placeholder:"custom.css",onChange:a=>{e.onChange(a.target.value),B.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)(M,{children:(0,s.jsx)(D,{...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 ze(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)(M,{children:(0,s.jsx)(Q,{"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 Ie=H();const Be=t=>{let e=(0,Ie.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)(R,{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 E;return e[10]!==o||e[11]!==l||e[12]!==T?(E=(0,s.jsxs)(V,{open:l,onOpenChange:o,children:[T,x]}),e[10]=o,e[11]=l,e[12]=T,e[13]=E):E=e[13],E}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:Qe,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 Qe(t){return t.preventDefault()}export{Me as n,Se as r,Be as t};
1
+ import{s as z}from"./chunk-LvLJmgfZ.js";import{l as X}from"./useEvent-D91BmmQi.js";import{t as Z}from"./react-Bj1aDYRI.js";import{Bt as I}from"./cells-1XaQzJBc.js";import{t as H}from"./compiler-runtime-B3qBwwSJ.js";import{S as $,c as ee,i as te,l as se,n as le,u as ae}from"./ai-model-dropdown-guVuz4cU.js";import{C as oe,v as ne,w as B}from"./utils-Bok_hGT2.js";import{T as re}from"./config-hed0CaQL.js";import{t as ie}from"./jsx-runtime-BqBOg78p.js";import{o as ce}from"./alert-dialog-BqFLkbUc.js";import{i as de,r as he,t as me}from"./popover-Bz_0Vkyf.js";import{l as Q}from"./select-DZcFyKFQ.js";import{t as R}from"./tooltip-DTV9tlSr.js";import{t as xe}from"./button-BbCh-29a.js";import{s as U}from"./arrays-DYDL-3-i.js";import{r as Y}from"./requests-DIwGYs0l.js";import{t as pe}from"./createLucideIcon-D5guW7EU.js";import{t as fe}from"./x-C-6liIBr.js";import{r as D}from"./input-C3Hrdlqq.js";import{t as K}from"./settings-DfFe0dWD.js";import{a as M,c as A,d as L,g as ue,i as je,l as P,o as q,p as ve,u as S}from"./textarea-CTiWTiw-.js";import{t as ge}from"./use-toast-IPAtJGea.js";import{i as be}from"./RSPContexts-CdN1NyAt.js";import{n as we}from"./useDebounce-7xZwVnnu.js";import{c as ye,l as Ne,n as Ce,t as V}from"./dialog-DzC_QCtT.js";import{n as ke}from"./ImperativeModal-B3Th7k4R.js";import{t as O}from"./kbd-CTUAEnEx.js";import{t as _e}from"./links-D1JoyKTt.js";import{t as G}from"./Inputs-BG_nVZPt.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=H(),s=z(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(Ae,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)(R,{content:u,children:d}),e[12]=d,e[13]=u,e[14]=x):x=e[14],x};function Ae(){window.close()}var J=H(),W=z(Z(),1),Le=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,Le),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)(F,{title:"Display",children:[(0,s.jsx)(A,{control:l.control,name:"width",render:Fe}),(0,s.jsx)(A,{control:l.control,name:"app_title",render:He})]}),t[14]=l.control,t[15]=x);let h;t[16]===l.control?h=t[17]:(h=(0,s.jsxs)(F,{title:"Custom Files",children:[(0,s.jsx)(A,{control:l.control,name:"css_file",render:De}),(0,s.jsx)(A,{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)(F,{title:"Data",children:(0,s.jsx)(A,{control:l.control,name:"sql_output",render:ze})}),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)(M,{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)(I,{id:r,"data-testid":"html-checkbox",checked:_.value.includes("html"),onCheckedChange:()=>{_.onChange(U(_.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)(I,{id:i,"data-testid":"ipynb-checkbox",checked:_.value.includes("ipynb"),onCheckedChange:()=>{_.onChange(U(_.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)(F,{title:"Exporting outputs",children:(0,s.jsx)(A,{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 F=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 Ee(t){return(0,s.jsx)("option",{value:t,children:t},t)}function Fe(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)(M,{children:(0,s.jsx)(Q,{"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(Ee)})}),(0,s.jsx)(L,{})]})}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,{children:"App title"}),(0,s.jsx)(M,{children:(0,s.jsx)(D,{...e,value:e.value??"",onChange:a=>{e.onChange(a.target.value),B.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 De(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)(M,{children:(0,s.jsx)(D,{...e,value:e.value??"",placeholder:"custom.css",onChange:a=>{e.onChange(a.target.value),B.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)(M,{children:(0,s.jsx)(D,{...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 ze(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)(M,{children:(0,s.jsx)(Q,{"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 Ie=H();const Be=t=>{let e=(0,Ie.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)(R,{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 E;return e[10]!==o||e[11]!==l||e[12]!==T?(E=(0,s.jsxs)(V,{open:l,onOpenChange:o,children:[T,x]}),e[10]=o,e[11]=l,e[12]=T,e[13]=E):E=e[13],E}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:Qe,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 Qe(t){return t.preventDefault()}export{Me as n,Se as r,Be as t};
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./loro_wasm_bg-Ci19hd4D.js","./loro_wasm_bg-Z5Iceaci.js","./chunk-LvLJmgfZ.js"])))=>i.map(i=>d[i]);
2
- var sd=Object.defineProperty;var _a=ne=>{throw TypeError(ne)};var ld=(ne,z,ge)=>z in ne?sd(ne,z,{enumerable:!0,configurable:!0,writable:!0,value:ge}):ne[z]=ge;var p=(ne,z,ge)=>ld(ne,typeof z!="symbol"?z+"":z,ge),cd=(ne,z,ge)=>z.has(ne)||_a("Cannot "+ge);var Da=(ne,z,ge)=>(cd(ne,z,"read from private field"),ge?ge.call(ne):z.get(ne)),Ua=(ne,z,ge)=>z.has(ne)?_a("Cannot add the same private member more than once"):z instanceof WeakSet?z.add(ne):z.set(ne,ge);import{s as Ba}from"./chunk-LvLJmgfZ.js";import{d as Pa,f as br,i as ee,l as En,n as se,p as _t,s as Nn,u as le}from"./useEvent-D91BmmQi.js";import{t as ud}from"./react-Bj1aDYRI.js";import{$r as yr,$t as ja,Bn as dd,Bt as fd,Ct as md,D as kn,Di as pd,Dt as gd,Et as Cn,Gn as hd,Gr as bd,H as yd,Hn as Ma,I as wd,Ii as Sn,Jn as vd,Jt as Ed,K as Ra,Mn as Nd,Mt as kd,Ot as Cd,Qn as Sd,Qt as wr,Rn as xd,Sn as Id,Tn as vr,U as Ga,Un as Td,V as Ja,Vt as Wa,W as Va,Wn as Ad,Yt as Er,a as $a,at as Fd,b as tt,bn as Ld,d as Ha,en as qa,h as Dt,hn as Od,ht as _d,in as Dd,kt as Ut,mt as Nr,ni as Ud,nn as Bd,oi as Pd,qn as jd,rn as Md,si as za,sn as xn,st as Rd,ti as Gd,u as Ka,un as Jd,vn as Wd,wi as Ya,wt as kr,xn as Vd,yr as $d,zn as Hd,__tla as qd}from"./cells-yL2qMkYn.js";import{B as zd,N as Kd,P as Cr,R as Xa,S as Yd,T as Qa,k as Xd,w as Qd}from"./zod-H_cgTO0M.js";import{t as Ge}from"./compiler-runtime-B3qBwwSJ.js";import{C as Zd,f as ef,m as tf,p as nf,t as rf,v as of,w as af}from"./ai-model-dropdown-tspiiyaT.js";import{_ as Je,c as Za,h as Sr,t as sf,v as lf}from"./useEventListener-DvoEXWke.js";import{t as Bt}from"./invariant-BUdrueMv.js";import{S as xr,h as ei,m as cf,o as uf,p as ti,s as ni}from"./utils-Cp7O5e1E.js";import{S as ri,T as df,m as ff,o as mf,r as oi,v as ht,w as Pt}from"./config-CasRXHAM.js";import{n as pf,t as gf}from"./switch-BrbMxTq7.js";import{n as hf}from"./globals-CDDbRvHE.js";import{t as bf}from"./ErrorBoundary-DyYDV0HI.js";import{t as st}from"./cn-DCUzRj2J.js";import{t as yf}from"./jsx-runtime-BqBOg78p.js";import{l as wf,r as vf,t as Ef}from"./popover-Bz_0Vkyf.js";import{B as Nf,__tla as kf}from"./JsonOutput-7sNcAFVa.js";import{t as Ir}from"./label-xHqFtfdz.js";import{r as Cf}from"./download-DucsG72p.js";import{t as In}from"./tooltip-DTV9tlSr.js";import{r as Tr,t as lt}from"./button-BbCh-29a.js";import{Bt as bt,Ct as ai,Dt as Sf,E as xf,Ft as Ar,H as ii,Ht as jt,I as If,J as l,Jt as me,Kt as Tf,Lt as Tn,Mt as Af,P as Ff,St as We,V as si,Vt as Fr,Wt as ct,Yt as qe,Zt as Mt,_ as Lf,a as Of,at as j,bt as _f,ct as Xe,en as An,ft as Df,it as Uf,lt as Fn,m as Bf,pt as Pf,rt as q,st as jf,vt as Mf,w as Rf,wt as Gf,yt as Jf,zt as Wf}from"./dist-BrR4M-k3.js";import{E as Vf,P as $f,S as Hf,a as qf,b as zf,c as Kf,n as Lr,r as Yf,w as Xf,x as Qf}from"./dist-CHcznzB-.js";import{o as li}from"./arrays-DYDL-3-i.js";import{n as Zf}from"./once-DRroIaBz.js";import{t as Or}from"./createReducer-CI9qeK_X.js";import{a as em,c as tm,f as Ln,h as nm,i as rm,l as Rt,n as ci,o as om,t as am}from"./dist-HlsDto3K.js";import{t as im}from"./main-B0OX4z33.js";import{r as On,t as sm}from"./requests-DIwGYs0l.js";import{t as lm}from"./createLucideIcon-D5guW7EU.js";import{r as ui,t as cm,__tla as um}from"./layout-i6tKZqCw.js";import{t as dm}from"./x-C-6liIBr.js";import{t as fm}from"./circle-check-C17zXg7L.js";import{D as di,E as mm,S as pm,a as fi,d as gm,j as hm,k as bm,n as ym,o as wm,r as mi,s as vm}from"./add-cell-with-ai-XU2qpbrH.js";import{r as Em,t as Nm}from"./file-icons-CNUmy2Dl.js";import{n as km}from"./spinner-Bhir8k53.js";import{t as pi}from"./save-Clg5dMoP.js";import{Y as Cm,Z as gi}from"./input-C3Hrdlqq.js";import{t as Sm}from"./sparkles-lWUAsPhp.js";import{t as xm}from"./preload-helper-BPPi7vOr.js";import{t as yt}from"./use-toast-IPAtJGea.js";import{n as Qe}from"./paths-D5zczhUD.js";import{t as Im}from"./session-0B5NBztP.js";import{r as Tm}from"./useTheme-BzHkS4pu.js";import{n as hi}from"./copy-LK56fFow.js";import{k as Am}from"./usePress-DQ_tAz5W.js";import{a as Fm}from"./useRunCells-CJadPmdw.js";import{c as bi,i as yi,n as wi,r as Lm}from"./dialog-DzC_QCtT.js";import{t as vi}from"./useHotkey-D2dzNgpx.js";import{n as Ei}from"./ImperativeModal-B3Th7k4R.js";import{r as Om}from"./errors-vr57w7Ul.js";import{t as Y}from"./extends-BiFDv3jB.js";import{t as Gt}from"./objectWithoutPropertiesLoose-DfWeGRFv.js";import{t as _m}from"./kbd-CTUAEnEx.js";import{a as _r}from"./useInstallPackage-DUF4IRRI.js";import{i as Dm,n as Ni}from"./state-B6DTPcu0.js";import{a as Um,o as Bm}from"./cell-link-DLb_k4Kf.js";import{r as ki}from"./html-to-image-CKzwKb6F.js";import{a as Pm}from"./focus-Cyz1EKwA.js";import{n as jm}from"./useAsyncData-bgszE9F0.js";import{a as Mm,o as Ci,r as Rm,s as Si,t as Gm}from"./command-KARR7KMq.js";import{a as xi}from"./renderShortcut-BrHz5aiT.js";import{n as Jm,t as Wm}from"./icons-Ol38nIbL.js";import{n as wt}from"./esm-CqWdmSnV.js";import{t as Ii}from"./dist-4ni0fia5.js";import{n as Dr,t as Ti}from"./useDeleteCell-wNHy5lEM.js";import{t as Vm}from"./useSplitCell-C04l3e__.js";import{co as $m,do as Ur,fo as Hm,ft as qm,go as vt,ho as Ai,lo as Br,mo as Fi,oo as zm,po as Km,so as Li,uo as Oi,__tla as Ym}from"./loro_wasm_bg-Z5Iceaci.js";import{t as Xm}from"./ws-YSapF1PN.js";import{t as _i}from"./Inputs-BG_nVZPt.js";import{n as Qm}from"./hooks-BmREojM6.js";let _n,Pr,Di,jr,ut,Mr,be,Jt,Wt,Ui,Bi,Pi,ji,Mi,Dn,Ri,Un,Gi,Bn,Zm=Promise.all([(()=>{try{return qd}catch{}})(),(()=>{try{return kf}catch{}})(),(()=>{try{return um}catch{}})(),(()=>{try{return Ym}catch{}})()]).then(async()=>{var vn,Oa,we,ve,Ee,Ne,ke,Ce,Se,xe,Ie,Te,Ae,Fe,Le,Oe,_e,De,Ue,Be,Pe;var ne=lm("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 z={showInput:"Mod-l",acceptEdit:"Mod-y",rejectEdit:"Mod-u"};var ge=300;const Nt=jt.define({combine:e=>An(e,{onError:console.error,inputDebounceTime:ge,keymaps:z},{onError:(t,n)=>t&&n,inputDebounceTime:(t,n)=>t&&n,keymaps:(t,n)=>t&&n})}),nt=me.define(),rt=qe.define({create(){return{show:!1,lineFrom:0,lineTo:0}},update(e,t){for(let n of t.effects)if(n.is(nt))return n.value;return e}}),kt=me.define(),Ct=me.define(),Gr=qe.define({create(){return{shouldFocus:!1,inputValue:""}},update(e,t){let n=e;for(let r of t.effects)r.is(kt)&&(n={...n,inputValue:r.value}),r.is(Ct)&&(n={...n,shouldFocus:r.value});return n}}),Vt=me.define(),St=qe.define({create(){return null},update(e,t){for(let n of t.effects)if(n.is(Vt))return n.value;return e}}),dt=me.define(),Jr=qe.define({create(){return!1},update(e,t){for(let n of t.effects)if(n.is(dt))return n.value;return e}});var Ji=1;const Wr=e=>{let{state:t}=e,n=t.selection.main;if(n.empty)return!1;let r=t.doc,o=r.lineAt(n.from),a=r.lineAt(n.to);if(t.sliceDoc(o.from,a.to).trim().length<Ji)return!1;let i=Math.max(1,Math.min(o.number,r.lines)),s=Math.max(1,Math.min(a.number,r.lines));return e.dispatch({effects:[nt.of({show:!0,lineFrom:i,lineTo:s}),Ct.of(!0),kt.of("")],selection:bt.cursor(o.from)}),!0},Vr=e=>e.state.field(St)?(e.dispatch({effects:[Vt.of(null),nt.of({show:!1,lineFrom:0,lineTo:0}),Ct.of(!1),kt.of(""),dt.of(!1)]}),!0):!1,$r=e=>{let t=e.state.field(St);return t?(e.dispatch({changes:{from:t.from,to:t.to,insert:t.oldCode},effects:[Vt.of(null),nt.of({show:!1,lineFrom:0,lineTo:0}),Ct.of(!1),kt.of(""),dt.of(!1)]}),!0):!1};var Pn={mac:"\u2318",windows:"\u229E Win",default:"Ctrl"};function Wi(){return navigator.platform.startsWith("Mac")?Pn.mac:navigator.platform.startsWith("Win")?Pn.windows:Pn.default}function jn(e){return e.replace("Mod",Wi()).replace("-"," ").toUpperCase()}function de(e,t){let n=document.createElement(e);return n.className=t,n}function Vi(e,t,n=void 0){let r=()=>{};return(...o)=>(r(),new Promise((a,i)=>{let s=setTimeout(()=>a(e(...o)),t);r=()=>{clearTimeout(s),n!==void 0&&i(n)}}))}var $t=qe.define({create(){return{suggestion:null}},update(e,t){let n=t.effects.find(r=>r.is(Ht));return!t.docChanged&&!n&&!t.selection?e:n&&t.state.doc===n.value.doc?{suggestion:n.value.text}:{suggestion:null}}}),Ht=me.define();function $i(e,t){let n=e.state.selection.main.head,r=[],o=q.widget({widget:new Hi(t),side:1});return r.push(o.range(n)),q.set(r)}var Hi=class extends Fn{constructor(t){super();p(this,"suggestion");this.suggestion=t}toDOM(){let t=document.createElement("span");return t.style.opacity="0.4",t.className="cm-inline-suggestion",t.textContent=this.suggestion,t.setAttribute("role","suggestion"),t.setAttribute("aria-label",`Suggestion: ${this.suggestion}`),t}get lineBreaks(){return this.suggestion.split(`
2
+ var sd=Object.defineProperty;var _a=ne=>{throw TypeError(ne)};var ld=(ne,z,ge)=>z in ne?sd(ne,z,{enumerable:!0,configurable:!0,writable:!0,value:ge}):ne[z]=ge;var p=(ne,z,ge)=>ld(ne,typeof z!="symbol"?z+"":z,ge),cd=(ne,z,ge)=>z.has(ne)||_a("Cannot "+ge);var Da=(ne,z,ge)=>(cd(ne,z,"read from private field"),ge?ge.call(ne):z.get(ne)),Ua=(ne,z,ge)=>z.has(ne)?_a("Cannot add the same private member more than once"):z instanceof WeakSet?z.add(ne):z.set(ne,ge);import{s as Ba}from"./chunk-LvLJmgfZ.js";import{d as Pa,f as br,i as ee,l as En,n as se,p as _t,s as Nn,u as le}from"./useEvent-D91BmmQi.js";import{t as ud}from"./react-Bj1aDYRI.js";import{$r as yr,$t as ja,Bn as dd,Bt as fd,Ct as md,D as kn,Di as pd,Dt as gd,Et as Cn,Gn as hd,Gr as bd,H as yd,Hn as Ma,I as wd,Ii as Sn,Jn as vd,Jt as Ed,K as Ra,Mn as Nd,Mt as kd,Ot as Cd,Qn as Sd,Qt as wr,Rn as xd,Sn as Id,Tn as vr,U as Ga,Un as Td,V as Ja,Vt as Wa,W as Va,Wn as Ad,Yt as Er,a as $a,at as Fd,b as tt,bn as Ld,d as Ha,en as qa,h as Dt,hn as Od,ht as _d,in as Dd,kt as Ut,mt as Nr,ni as Ud,nn as Bd,oi as Pd,qn as jd,rn as Md,si as za,sn as xn,st as Rd,ti as Gd,u as Ka,un as Jd,vn as Wd,wi as Ya,wt as kr,xn as Vd,yr as $d,zn as Hd,__tla as qd}from"./cells-1XaQzJBc.js";import{B as zd,N as Kd,P as Cr,R as Xa,S as Yd,T as Qa,k as Xd,w as Qd}from"./zod-H_cgTO0M.js";import{t as Ge}from"./compiler-runtime-B3qBwwSJ.js";import{C as Zd,f as ef,m as tf,p as nf,t as rf,v as of,w as af}from"./ai-model-dropdown-guVuz4cU.js";import{_ as Je,c as Za,h as Sr,t as sf,v as lf}from"./useEventListener-DvoEXWke.js";import{t as Bt}from"./invariant-BUdrueMv.js";import{S as xr,h as ei,m as cf,o as uf,p as ti,s as ni}from"./utils-Bok_hGT2.js";import{S as ri,T as df,m as ff,o as mf,r as oi,v as ht,w as Pt}from"./config-hed0CaQL.js";import{n as pf,t as gf}from"./switch-YcZLs0mS.js";import{n as hf}from"./globals-Dd7eo1nD.js";import{t as bf}from"./ErrorBoundary-DyYDV0HI.js";import{t as st}from"./cn-DCUzRj2J.js";import{t as yf}from"./jsx-runtime-BqBOg78p.js";import{l as wf,r as vf,t as Ef}from"./popover-Bz_0Vkyf.js";import{B as Nf,__tla as kf}from"./JsonOutput-CusPgY2j.js";import{t as Ir}from"./label-xHqFtfdz.js";import{r as Cf}from"./download-qESwLUZl.js";import{t as In}from"./tooltip-DTV9tlSr.js";import{r as Tr,t as lt}from"./button-BbCh-29a.js";import{Bt as bt,Ct as ai,Dt as Sf,E as xf,Ft as Ar,H as ii,Ht as jt,I as If,J as l,Jt as me,Kt as Tf,Lt as Tn,Mt as Af,P as Ff,St as We,V as si,Vt as Fr,Wt as ct,Yt as qe,Zt as Mt,_ as Lf,a as Of,at as j,bt as _f,ct as Xe,en as An,ft as Df,it as Uf,lt as Fn,m as Bf,pt as Pf,rt as q,st as jf,vt as Mf,w as Rf,wt as Gf,yt as Jf,zt as Wf}from"./dist-BrR4M-k3.js";import{E as Vf,P as $f,S as Hf,a as qf,b as zf,c as Kf,n as Lr,r as Yf,w as Xf,x as Qf}from"./dist-CHcznzB-.js";import{o as li}from"./arrays-DYDL-3-i.js";import{n as Zf}from"./once-DRroIaBz.js";import{t as Or}from"./createReducer-CI9qeK_X.js";import{a as em,c as tm,f as Ln,h as nm,i as rm,l as Rt,n as ci,o as om,t as am}from"./dist-HlsDto3K.js";import{t as im}from"./main-B0OX4z33.js";import{r as On,t as sm}from"./requests-DIwGYs0l.js";import{t as lm}from"./createLucideIcon-D5guW7EU.js";import{r as ui,t as cm,__tla as um}from"./layout-ooVjwxI3.js";import{t as dm}from"./x-C-6liIBr.js";import{t as fm}from"./circle-check-C17zXg7L.js";import{D as di,E as mm,S as pm,a as fi,d as gm,j as hm,k as bm,n as ym,o as wm,r as mi,s as vm}from"./add-cell-with-ai-CV7qdXZ6.js";import{r as Em,t as Nm}from"./file-icons-nRpX80xD.js";import{n as km}from"./spinner-Bhir8k53.js";import{t as pi}from"./save-Clg5dMoP.js";import{Y as Cm,Z as gi}from"./input-C3Hrdlqq.js";import{t as Sm}from"./sparkles-lWUAsPhp.js";import{t as xm}from"./preload-helper-BPPi7vOr.js";import{t as yt}from"./use-toast-IPAtJGea.js";import{n as Qe}from"./paths-D5zczhUD.js";import{t as Im}from"./session-0B5NBztP.js";import{r as Tm}from"./useTheme-KJ1rGmnj.js";import{n as hi}from"./copy-LK56fFow.js";import{k as Am}from"./usePress-DQ_tAz5W.js";import{a as Fm}from"./useRunCells-BJP5VHUs.js";import{c as bi,i as yi,n as wi,r as Lm}from"./dialog-DzC_QCtT.js";import{t as vi}from"./useHotkey-BtqYcnxQ.js";import{n as Ei}from"./ImperativeModal-B3Th7k4R.js";import{r as Om}from"./errors-vr57w7Ul.js";import{t as Y}from"./extends-BiFDv3jB.js";import{t as Gt}from"./objectWithoutPropertiesLoose-DfWeGRFv.js";import{t as _m}from"./kbd-CTUAEnEx.js";import{a as _r}from"./useInstallPackage-DUF4IRRI.js";import{i as Dm,n as Ni}from"./state-3SH6NVgL.js";import{a as Um,o as Bm}from"./cell-link-DkEWt80K.js";import{r as ki}from"./html-to-image-7hWS7hJz.js";import{a as Pm}from"./focus-DCbL1KSz.js";import{n as jm}from"./useAsyncData-bgszE9F0.js";import{a as Mm,o as Ci,r as Rm,s as Si,t as Gm}from"./command-KARR7KMq.js";import{a as xi}from"./renderShortcut-CzUfgpdJ.js";import{n as Jm,t as Wm}from"./icons-Ol38nIbL.js";import{n as wt}from"./esm-CqWdmSnV.js";import{t as Ii}from"./dist-4ni0fia5.js";import{n as Dr,t as Ti}from"./useDeleteCell-CnlX_9s7.js";import{t as Vm}from"./useSplitCell-DwfXLRQ8.js";import{co as $m,do as Ur,fo as Hm,ft as qm,go as vt,ho as Ai,lo as Br,mo as Fi,oo as zm,po as Km,so as Li,uo as Oi,__tla as Ym}from"./loro_wasm_bg-Z5Iceaci.js";import{t as Xm}from"./ws-YSapF1PN.js";import{t as _i}from"./Inputs-BG_nVZPt.js";import{n as Qm}from"./hooks-CVNeEUPq.js";let _n,Pr,Di,jr,ut,Mr,be,Jt,Wt,Ui,Bi,Pi,ji,Mi,Dn,Ri,Un,Gi,Bn,Zm=Promise.all([(()=>{try{return qd}catch{}})(),(()=>{try{return kf}catch{}})(),(()=>{try{return um}catch{}})(),(()=>{try{return Ym}catch{}})()]).then(async()=>{var vn,Oa,we,ve,Ee,Ne,ke,Ce,Se,xe,Ie,Te,Ae,Fe,Le,Oe,_e,De,Ue,Be,Pe;var ne=lm("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 z={showInput:"Mod-l",acceptEdit:"Mod-y",rejectEdit:"Mod-u"};var ge=300;const Nt=jt.define({combine:e=>An(e,{onError:console.error,inputDebounceTime:ge,keymaps:z},{onError:(t,n)=>t&&n,inputDebounceTime:(t,n)=>t&&n,keymaps:(t,n)=>t&&n})}),nt=me.define(),rt=qe.define({create(){return{show:!1,lineFrom:0,lineTo:0}},update(e,t){for(let n of t.effects)if(n.is(nt))return n.value;return e}}),kt=me.define(),Ct=me.define(),Gr=qe.define({create(){return{shouldFocus:!1,inputValue:""}},update(e,t){let n=e;for(let r of t.effects)r.is(kt)&&(n={...n,inputValue:r.value}),r.is(Ct)&&(n={...n,shouldFocus:r.value});return n}}),Vt=me.define(),St=qe.define({create(){return null},update(e,t){for(let n of t.effects)if(n.is(Vt))return n.value;return e}}),dt=me.define(),Jr=qe.define({create(){return!1},update(e,t){for(let n of t.effects)if(n.is(dt))return n.value;return e}});var Ji=1;const Wr=e=>{let{state:t}=e,n=t.selection.main;if(n.empty)return!1;let r=t.doc,o=r.lineAt(n.from),a=r.lineAt(n.to);if(t.sliceDoc(o.from,a.to).trim().length<Ji)return!1;let i=Math.max(1,Math.min(o.number,r.lines)),s=Math.max(1,Math.min(a.number,r.lines));return e.dispatch({effects:[nt.of({show:!0,lineFrom:i,lineTo:s}),Ct.of(!0),kt.of("")],selection:bt.cursor(o.from)}),!0},Vr=e=>e.state.field(St)?(e.dispatch({effects:[Vt.of(null),nt.of({show:!1,lineFrom:0,lineTo:0}),Ct.of(!1),kt.of(""),dt.of(!1)]}),!0):!1,$r=e=>{let t=e.state.field(St);return t?(e.dispatch({changes:{from:t.from,to:t.to,insert:t.oldCode},effects:[Vt.of(null),nt.of({show:!1,lineFrom:0,lineTo:0}),Ct.of(!1),kt.of(""),dt.of(!1)]}),!0):!1};var Pn={mac:"\u2318",windows:"\u229E Win",default:"Ctrl"};function Wi(){return navigator.platform.startsWith("Mac")?Pn.mac:navigator.platform.startsWith("Win")?Pn.windows:Pn.default}function jn(e){return e.replace("Mod",Wi()).replace("-"," ").toUpperCase()}function de(e,t){let n=document.createElement(e);return n.className=t,n}function Vi(e,t,n=void 0){let r=()=>{};return(...o)=>(r(),new Promise((a,i)=>{let s=setTimeout(()=>a(e(...o)),t);r=()=>{clearTimeout(s),n!==void 0&&i(n)}}))}var $t=qe.define({create(){return{suggestion:null}},update(e,t){let n=t.effects.find(r=>r.is(Ht));return!t.docChanged&&!n&&!t.selection?e:n&&t.state.doc===n.value.doc?{suggestion:n.value.text}:{suggestion:null}}}),Ht=me.define();function $i(e,t){let n=e.state.selection.main.head,r=[],o=q.widget({widget:new Hi(t),side:1});return r.push(o.range(n)),q.set(r)}var Hi=class extends Fn{constructor(t){super();p(this,"suggestion");this.suggestion=t}toDOM(){let t=document.createElement("span");return t.style.opacity="0.4",t.className="cm-inline-suggestion",t.textContent=this.suggestion,t.setAttribute("role","suggestion"),t.setAttribute("aria-label",`Suggestion: ${this.suggestion}`),t}get lineBreaks(){return this.suggestion.split(`
3
3
  `).length-1}},qi=class{constructor(e){p(this,"cache",new Map);p(this,"timeout");this.timeout=e}get(e){let t=this.cache.get(e);return t?Date.now()-t.timestamp>this.timeout?(this.cache.delete(e),null):t.result:null}set(e,t){this.cache.set(e,{result:t,timestamp:Date.now()})}},zi=(e,t)=>Xe.fromClass(class{constructor(){p(this,"abortController",null);p(this,"cache");this.cache=new qi(t.cacheTimeout??1e3)}async update(n){var i,s,u,c,d;if(!n.docChanged||((s=(i=t.events)==null?void 0:i.beforeSuggestionFetch)==null?void 0:s.call(i,n.view))===!1)return;(u=this.abortController)==null||u.abort(),this.abortController=new AbortController;let r=n.state.doc,o=r.toString(),a=this.cache.get(o);if(a){n.view.dispatch({effects:Ht.of({text:a,doc:r})});return}try{let f=await e(n.state,this.abortController.signal,n.view);if(this.abortController.signal.aborted||((d=(c=t.events)==null?void 0:c.shouldShowSuggestion)==null?void 0:d.call(c,n.view,f))===!1)return;this.cache.set(o,f),n.view.dispatch({effects:Ht.of({text:f,doc:r})})}catch(f){f instanceof Error&&f.name!=="AbortError"&&console.error("Suggestion fetch error:",f)}}destroy(){var n;(n=this.abortController)==null||n.abort()}}),Ki=Xe.fromClass(class{constructor(){p(this,"decorations");this.decorations=q.none}update(e){var n;let t=(n=e.state.field($t))==null?void 0:n.suggestion;if(!t){this.decorations=q.none;return}this.decorations=$i(e.view,t)}},{decorations:e=>e.decorations});function Yi(e,t,n,r){return{...e.changeByRange(o=>{if(o===e.selection.main)return{changes:{from:n,to:r,insert:t},range:bt.cursor(n+t.length)};let a=r-n;return!o.empty||a&&e.sliceDoc(o.from-a,o.from)!==e.sliceDoc(n,r)?{range:o}:{changes:{from:o.from-a,to:o.from,insert:t},range:bt.cursor(o.from-a+t.length)}}),userEvent:"input.complete"}}var Xi=e=>{var r,o,a;let t=(r=e.state.field($t))==null?void 0:r.suggestion;if(!t)return!1;let n=e.state.facet(Mn);return e.dispatch({...Yi(e.state,t,e.state.selection.main.head,e.state.selection.main.head)}),(a=(o=n.events)==null?void 0:o.onSuggestionAccepted)==null||a.call(o,e,t),!0},Hr=e=>{var r,o,a;let t=(r=e.state.field($t))==null?void 0:r.suggestion;if(!t)return!1;let n=e.state.facet(Mn);return e.dispatch({effects:Ht.of({text:null,doc:e.state.doc})}),(a=(o=n.events)==null?void 0:o.onSuggestionRejected)==null||a.call(o,e,t),!0},Qi=We.of([{key:"Tab",run:Xi},{key:"Escape",run:Hr}]),Mn=jt.define({combine:e=>e.at(-1)});function qr(e){let{delay:t=500,includeKeymap:n=!0}=e,r=Vi(e.fetchFn,t);return[$t,Mn.of(e),zi(r,e),Ki,n?Qi:[]]}const Zi=j.baseTheme({".cm-ai-input-container":{display:"flex",flexDirection:"column",gap:"4px",width:"min(calc(100% + 7px), 500px)",padding:"5px 5px",margin:"0 -6px",backgroundColor:"light-dark(rgb(241, 243, 245), rgb(40, 40, 40))"},".cm-ai-input":{display:"block",width:"100%",padding:"3px 8px",border:"2px solid rgb(51, 154, 240)",borderRadius:"5px",fontSize:"12px"},".cm-ai-help-info-button":{fontSize:"10px",paddingLeft:"10px",height:"18px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",display:"block",marginRight:"auto"},".cm-ai-help-info-button:hover":{color:"light-dark(rgb(89, 97, 105), rgb(190, 190, 190))"},".cm-ai-generate-button":{background:"#0E639C",border:"none",padding:"2px 6px",color:"#ffffff",cursor:"pointer",font:"inherit",borderRadius:"4px","&:hover":{backgroundColor:"#1177bb"}},".cm-line.cm-ai-selection, .cm-line.cm-ai-selection.cm-active-line":{backgroundColor:"light-dark(color-mix(in srgb, rgb(223, 227, 232) 50%, transparent), color-mix(in srgb, rgb(50, 50, 50) 50%, transparent)) !important"},".cm-line:has(.cm-new-code-line)":{backgroundColor:"light-dark(color-mix(in srgb, rgb(183, 235, 143) 50%, transparent), color-mix(in srgb, rgb(40, 100, 40) 50%, transparent)) !important"},".cm-old-code-container":{backgroundColor:"light-dark(rgb(255, 205, 205), rgb(100, 40, 40))",position:"relative",display:"flex",paddingTop:"0",width:"100%",alignItems:"center"},".cm-code-button":{position:"absolute",right:"5px",top:"50%",transform:"translateY(-50%)",background:"none",border:"none",cursor:"pointer",fontSize:"16px"},".cm-floating-buttons":{fontFamily:"sans-serif",position:"absolute",top:"-20px",left:"5px",display:"flex"},".cm-floating-button":{fontFamily:"sans-serif",padding:"2px 5px",fontSize:"10px",cursor:"pointer",fontWeight:"700"},".cm-floating-accept":{backgroundColor:"light-dark(rgb(55, 125, 34), rgb(40, 80, 25))",borderTopLeftRadius:"5px",borderBottomLeftRadius:"5px",color:"white",filter:"brightness(90%)","&:hover":{filter:"brightness(100%)"}},".cm-floating-reject":{backgroundColor:"light-dark(rgb(220, 53, 69), rgb(180, 40, 50))",color:"white",borderTopRightRadius:"5px",borderBottomRightRadius:"5px",filter:"brightness(90%)","&:hover":{filter:"brightness(100%)"}},".hotkey":{display:"inline-block",padding:"0 4px",borderRadius:"3px",backgroundColor:"rgba(255, 255, 255, 0.1)",fontSize:"90%"},".cm-ai-loading-indicator":{fontStyle:"italic",fontSize:"10px",paddingLeft:"12px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",opacity:"0",transition:"opacity 0.3s ease-in-out","&::after":{content:'""',display:"inline-block",animation:"ellipsis-pulse 1.5s steps(4, end) infinite"},"&:not(:empty)":{opacity:"1"}},".cm-ai-input:disabled":{opacity:"0.5"},"@keyframes ellipsis-pulse":{"0%":{content:"'.'"},"25%":{content:"'..'"},"50%":{content:"'...'"},"75%":{content:"''"}},".cm-ai-loading-container":{display:"flex",alignItems:"center",padding:"0 8px"},".cm-ai-cancel-button":{padding:"2px 8px",fontSize:"10px",borderRadius:"4px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",cursor:"pointer","&:hover":{background:"light-dark(rgb(223, 227, 232), rgb(50, 50, 50))"}},".hidden":{display:"none"}});function es(e){var s,u;let t=e.state.facet(Nt),n={...z,...t.keymaps},r=e.state.facet(qt),o=de("div","cm-ai-tooltip").appendChild(de("div","cm-ai-tooltip-button")),a=o.appendChild(document.createElement("span"));a.textContent=`${r.label} `;let i=a.appendChild(document.createElement("span"));return i.className="hotkey",i.textContent=jn(n.showInput),(s=o.querySelector("span"))==null||s.addEventListener("mousedown",c=>{c.stopPropagation(),c.button===0&&c.preventDefault()}),(u=o.querySelector("span"))==null||u.addEventListener("click",c=>{c.preventDefault(),Wr(e)}),o}const qt=jt.define({combine(e){return An(e,{render:es,hideOnBlur:!1,label:"Edit with AI"})}}),ts=Xe.fromClass((Oa=class{constructor(e){p(this,"view");p(this,"suppress");p(this,"dom");p(this,"mousedown",()=>{this.suppress=!0});p(this,"mouseup",()=>{this.suppress=!1,this.display(this.view)});p(this,"scroll",()=>{this.display(this.view)});p(this,"windowScroll",()=>{this.display(this.view)});Ua(this,vn,e=>{var n;let t=e.state.selection.ranges.find(r=>!r.empty);if(t&&!this.suppress){let r=e.coordsAtPos(t.from),o=e.coordsAtPos(t.to);if(!r||!o)return;let a=e.dom.getBoundingClientRect(),i=(n=e.dom.parentElement)==null?void 0:n.getBoundingClientRect(),s=v=>v.top>=a.top&&v.top<=a.bottom&&v.left>=a.left&&v.left<=a.right,u=v=>!i||v.top>=i.top&&v.top<=i.bottom&&v.left>=i.left&&v.left<=i.right,c=s(r)||s(o),d=u(r)||u(o);if(!c||!d){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}this.dom.style.display="flex",this.dom.setAttribute("aria-hidden","false");let f=this.dom.getBoundingClientRect(),g=s(r)?r:o,m=a.right-f.width,h=Math.min(g.left,m),w=g.top-f.height,y=i?i.y:-1/0;w<y&&(w=o.bottom),this.dom.style.left=`${h}px`,this.dom.style.top=`${w}px`,requestAnimationFrame(()=>{this.dom&&this.dom.setAttribute("aria-hidden","false")})}else this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true")});this.view=e;let t=e.state.facet(qt);this.suppress=!1,document.addEventListener("mousedown",this.mousedown),document.addEventListener("mouseup",this.mouseup),e.scrollDOM.addEventListener("scroll",this.scroll),window.addEventListener("scroll",this.windowScroll,!0);let n=t.render(e);e.dom.appendChild(n),this.dom=n}update(e){this.display(e.view)}docViewUpdate(e){this.display(e)}display(e){if(e.state.field(rt).show){this.dom.style.display="none";return}if(e.state.facet(qt).hideOnBlur&&!e.hasFocus){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}e.requestMeasure({read:Da(this,vn)})}destroy(){document.removeEventListener("mousedown",this.mousedown),document.removeEventListener("mouseup",this.mouseup),this.view.scrollDOM.removeEventListener("scroll",this.scroll),window.removeEventListener("scroll",this.windowScroll,!0),this.dom.remove()}},vn=new WeakMap,Oa));var ns=j.baseTheme({".cm-ai-tooltip-button":{userSelect:"none",fontFamily:"system-ui, -apple-system, sans-serif",position:"fixed",display:"flex",boxSizing:"border-box",padding:"2px 6px",borderRadius:"4px",fontSize:"12px",backgroundColor:"#0E639C",color:"#ffffff",border:"1px solid transparent",boxShadow:"0 2px 4px rgba(0,0,0,0.1)",zIndex:"999",transition:"opacity 0.5s","&[aria-hidden='true']":{opacity:"0"},"&[aria-hidden='false']":{opacity:"1"},"& > span":{pointerEvents:"auto",cursor:"pointer",display:"inline-block",padding:"2px"},"&:hover":{backgroundColor:"#1177bb"}}});function rs(){return[ts,ns]}var os=class extends Fn{constructor(t){super();p(this,"oldCode");this.oldCode=t}toDOM(t){let n=de("div","cm-old-code-container");n.setAttribute("role","region"),n.setAttribute("aria-label","Previous code version");let r=de("div","cm-old-code cm-line");r.textContent=this.oldCode;let o=de("div","cm-floating-buttons"),a=t.state.facet(Nt),i={...z,...a.keymaps},s=de("button","cm-floating-button cm-floating-accept");s.innerHTML=`<span class="hotkey">${jn(i.acceptEdit)}</span> Accept`,s.setAttribute("aria-label","Accept changes"),s.addEventListener("click",c=>{c.preventDefault(),c.stopPropagation(),t.focus(),Vr(t)});let u=de("button","cm-floating-button cm-floating-reject");return u.innerHTML=`<span class="hotkey">${jn(i.rejectEdit)}</span> Reject`,u.setAttribute("aria-label","Reject changes"),u.addEventListener("click",c=>{c.preventDefault(),c.stopPropagation(),t.focus(),$r(t)}),o.append(s,u),n.append(r,o),n}updateDOM(t,n){return!0}},as=class extends Fn{constructor(t){super();p(this,"complete");p(this,"abortController",null);p(this,"dom",null);p(this,"input",null);p(this,"loadingContainer",null);p(this,"helpInfo",null);p(this,"inputContainer",null);p(this,"form",null);p(this,"view",null);p(this,"onKeyDown",async t=>{t.key==="Enter"&&!t.shiftKey?(t.preventDefault(),await this.handleSubmit()):t.key==="Escape"&&this.onCancel()});p(this,"onCancel",()=>{this.cleanup();let t=this.view;t&&(t.dispatch({effects:[nt.of({show:!1,lineFrom:0,lineTo:0}),dt.of(!1)]}),t.focus())});p(this,"handleSubmit",async t=>{var h;let n=this.view;if(!n)return;let r=n.state.facet(Nt);t==null||t.stopPropagation();let o=n.state.field(rt),{input:a}=this;if(!a)return;let i=a.value.trim();if(!o.show||!i)return;let s=n.state.doc.line(o.lineFrom),u=n.state.doc.line(o.lineTo),c=s.from,d=u.to,f=n.state.sliceDoc(c,d),g=n.state.sliceDoc(0,c),m=n.state.sliceDoc(d);this.abortController=new AbortController,n.dispatch({effects:dt.of(!0)}),this.toggleLoading(!0);try{let w=await this.complete({prompt:i,selection:f,codeBefore:g,codeAfter:m,editorView:n,signal:this.abortController.signal});if(!n.state.field(rt).show)return;if(!w||typeof w!="string")throw Error("Invalid completion result");n.dispatch({changes:{from:c,to:d,insert:w},effects:[nt.of({show:!1,lineFrom:0,lineTo:0}),Vt.of({from:c,to:c+w.length,oldCode:f,newCode:w}),dt.of(!1)]})}catch(w){if(w instanceof DOMException&&w.name==="AbortError")return;(h=r.onError)==null||h.call(r,w)}finally{this.cleanup(),this.toggleLoading(!1),n.focus()}});this.complete=t}toDOM(t){if(this.dom)return this.dom;this.view=t;let n=t.state.field(Gr),r=t.state.field(Jr),o=de("div","cm-ai-input-container");this.inputContainer=o,this.dom=o;let a=de("form","cm-ai-input-form");this.form=a,a.setAttribute("role","search"),a.setAttribute("aria-label","AI editing instructions"),a.addEventListener("submit",y=>y.preventDefault());let i=de("input","cm-ai-input");this.input=i,a.append(i),i.placeholder="Editing instructions...",i.setAttribute("aria-label","AI editing instructions"),i.setAttribute("autocomplete","off"),i.setAttribute("spellcheck","true"),i.value=n.inputValue;let s=de("div","cm-ai-loading-container");this.loadingContainer=s;let u=de("div","cm-ai-loading-indicator");u.setAttribute("role","status"),u.setAttribute("aria-live","polite"),u.textContent="Generating";let c=de("button","cm-ai-cancel-button");c.textContent="Cancel",c.setAttribute("aria-label","Cancel code generation"),c.addEventListener("click",this.onCancel),s.append(c,u);let d=de("div","cm-ai-help-info");this.helpInfo=d;let f=d.appendChild(document.createElement("button"));f.className="cm-ai-help-info-button",f.textContent="Esc to close",f.addEventListener("click",this.onCancel);let g=de("button","cm-ai-generate-button");g.textContent="\u23CE Generate",g.setAttribute("aria-label","Generate code"),g.addEventListener("click",this.handleSubmit),this.toggleLoading(r),n.shouldFocus&&requestAnimationFrame(()=>{i.value=n.inputValue,i.focus(),t.dispatch({effects:Ct.of(!1)})}),m(i.value),i.addEventListener("input",w),i.addEventListener("keydown",this.onKeyDown);function m(y){d.replaceChildren(y?g:f)}let h="";function w(){t.dispatch({effects:kt.of(i.value)});let y=i.value.trim();y!==h&&(h=y,m(y))}return o}toggleLoading(t){var n;this.inputContainer&&this.form&&this.loadingContainer&&this.helpInfo&&((n=this.inputContainer)==null||n.replaceChildren(this.form,t?this.loadingContainer:this.helpInfo))}updateDOM(t,n){return this.dom=t,this.input=t.querySelector(".cm-ai-input"),!0}cleanup(){var t,n,r;(t=this.abortController)==null||t.abort(),this.abortController=null,(n=this.dom)==null||n.remove(),(r=this.input)==null||r.remove(),this.dom=null,this.input=null}destroy(){this.cleanup()}};function is(e){if(!e.prompt)throw Error("prompt function is required");let t={...z,...e.keymaps};return[Nt.of(e),rt,Gr,St,Jr,rs(),Zi,We.of([{key:t.showInput,run:Wr}]),ct.highest([We.of([{key:t.acceptEdit,run:Vr},{key:t.rejectEdit,run:$r}])]),ss,ls,cs,us]}const ss=j.updateListener.of(e=>{let t=e.state.field(rt);if(!t.show||!e.docChanged)return;let{lineFrom:n,lineTo:r}=t,o=!1;e.changes.iterChanges((a,i,s,u)=>{let c=e.state.doc.lineAt(a).number;if(c<n){let d=e.state.doc.lineAt(u).number-e.state.doc.lineAt(s).number;n+=d,r+=d,o=!0}else if(c<=r){let d=e.state.doc.lineAt(u).number-e.state.doc.lineAt(s).number;r+=d,o=!0}}),o&&e.view.dispatch({effects:[nt.of({show:!0,lineFrom:n,lineTo:r})]})}),ls=j.decorations.of(e=>{let t=e.state.field(St);return t?q.set([q.mark({class:"cm-new-code-line"}).range(t.from,t.to)]):q.none}),cs=j.decorations.compute([rt],e=>{let t=e.field(rt),n=e.facet(Nt),r=[];if(t.show){let o=t.lineFrom,a=t.lineTo;for(let i=o;i<=a;i++){let s=e.doc.line(i).from;r.push(q.line({class:"cm-ai-selection"}).range(s)),i===o&&r.push(q.widget({widget:new as(n.prompt),side:-1}).range(s))}}return q.set(r)}),us=qe.define({create(e){return q.none},update(e,t){let n=t.state.field(St);return n?q.set([q.widget({widget:new os(n.oldCode),block:!0}).range(n.from)]):q.none},provide:e=>j.decorations.from(e)});var ds=Ge(),F=Ba(ud(),1),Rn=()=>({entries:new Map}),{valueAtom:zr,useActions:Kr}=Or(Rn,{submit:(e,t)=>{let{cellIds:n,deleteCell:r,deleteManyCells:o,store:a}=t,i=a.get(tt),s=a.get(xd),u=new Set(i.cellIds.inOrderIds.filter(f=>i.cellData[f].code.trim()==="")),c=new Map;for(let f of n){if(u.has(f)){c.set(f,{cellId:f,type:"simple"});continue}let g=i.cellRuntime[f],m=new Map;for(let w of Object.values(s)){let y=w.declaredBy.includes(f),v=w.usedBy.some(C=>!u.has(C));y&&v&&m.set(w.name,w.usedBy)}let h;g!=null&&g.runElapsedTimeMs&&g.runElapsedTimeMs>2e3&&(h=g.runElapsedTimeMs),m.size===0&&h===void 0?c.set(f,{cellId:f,type:"simple"}):c.set(f,{cellId:f,type:"expensive",executionDurationMs:h,defs:m})}let d=[...c.values()].every(f=>f.type==="simple");return c.size>0&&d?(c.size===1?r({cellId:[...c.values()][0].cellId}):o({cellIds:[...c.values()].map(f=>f.cellId)}),Rn()):{...e,entries:c}},clear:()=>Rn()});Bn=function(){let e=br(),{submit:t,clear:n}=Kr(),{entries:r}=le(zr),o=Ti(),a=Dr();return(0,F.useMemo)(()=>({submit:i=>{t({cellIds:i,deleteCell:o,deleteManyCells:a,store:e})},clear:n,get idle(){return r.size===0},get shouldConfirmDelete(){return r.size>1}}),[e,t,n,r,o,a])},Gi=function(e){let t=(0,ds.c)(16),n=le(zr),r=Kr(),o=Dr(),a;t[0]!==e||t[1]!==n.entries?(a=n.entries.get(e),t[0]=e,t[1]=n.entries,t[2]=a):a=t[2];let i=a;if(!i){let d;return t[3]===Symbol.for("react.memo_cache_sentinel")?(d={isPending:!1},t[3]=d):d=t[3],d}if(n.entries.size!==1){let d;return t[4]===i?d=t[5]:(d={isPending:!0,shouldConfirmDelete:!1,...i},t[4]=i,t[5]=d),d}let s;t[6]!==r||t[7]!==o||t[8]!==n.entries?(s=()=>{o({cellIds:[...n.entries.values()].map(fs)}),r.clear()},t[6]=r,t[7]=o,t[8]=n.entries,t[9]=s):s=t[9];let u;t[10]===r?u=t[11]:(u=()=>r.clear(),t[10]=r,t[11]=u);let c;return t[12]!==i||t[13]!==s||t[14]!==u?(c={isPending:!0,...i,shouldConfirmDelete:!0,confirm:s,cancel:u},t[12]=i,t[13]=s,t[14]=u,t[15]=c):c=t[15],c};function fs(e){return e.cellId}async function ms(e){var s,u;let t=`
4
4
  ${e.codeBefore}
5
5
  <rewrite_this>
@@ -1 +1 @@
1
- import{s as L}from"./chunk-LvLJmgfZ.js";import{d as P,l as w,n as j,u as O}from"./useEvent-D91BmmQi.js";import{D as y,Ii as A,It as D,M as E,P as S,mn as T,wi as _}from"./cells-yL2qMkYn.js";import{t as b}from"./compiler-runtime-B3qBwwSJ.js";import{_ as $}from"./useEventListener-DvoEXWke.js";import{d as F}from"./utils-Cp7O5e1E.js";import{r as I}from"./constants-DMpttj8Q.js";import{v as M,w as q}from"./config-CasRXHAM.js";import{t as B}from"./cn-DCUzRj2J.js";import{t as H}from"./jsx-runtime-BqBOg78p.js";import{r as R}from"./requests-DIwGYs0l.js";import{n as U}from"./paths-D5zczhUD.js";import{s as V}from"./session-0B5NBztP.js";import{n as z}from"./ImperativeModal-B3Th7k4R.js";var G=b();function N(){return O(_)}function J(){let r=(0,G.c)(5),[t]=w(M),e=P(_),{openAlert:s}=z(),{sendRename:o}=R(),a;return r[0]!==t.state||r[1]!==s||r[2]!==o||r[3]!==e?(a=async l=>{let n=F();return t.state===q.OPEN?(V(i=>{l===null?i.delete(I.filePath):i.set(I.filePath,l)}),o({filename:l}).then(()=>(e(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]=t.state,r[1]=s,r[2]=o,r[3]=e,r[4]=a):a=r[4],j(a)}var p=b(),v=L(H(),1);const h=r=>{let t=(0,p.c)(12),{className:e,cellId:s,variant:o,onClick:a,formatCellName:l,skipScroll:n}=r,i=S()[s]??"",C=E().inOrderIds.indexOf(s),{showCellIfHidden:d}=y(),g=l??W,c;t[0]===e?c=t[1]:(c=B("inline-block cursor-pointer text-link hover:underline",e),t[0]=e,t[1]=c);let m;t[2]!==s||t[3]!==a||t[4]!==d||t[5]!==n||t[6]!==o?(m=k=>{if(s==="__scratch__")return!1;d({cellId:s}),k.stopPropagation(),k.preventDefault(),requestAnimationFrame(()=>{x(s,o,n)&&(a==null||a())})},t[2]=s,t[3]=a,t[4]=d,t[5]=n,t[6]=o,t[7]=m):m=t[7];let f=g(D(i,C)),u;return t[8]!==c||t[9]!==m||t[10]!==f?(u=(0,v.jsx)("div",{className:c,role:"link",tabIndex:-1,onClick:m,children:f}),t[8]=c,t[9]=m,t[10]=f,t[11]=u):u=t[11],u},K=r=>{let t=(0,p.c)(2),e;return t[0]===r?e=t[1]:(e=(0,v.jsx)(h,{...r,variant:"destructive"}),t[0]=r,t[1]=e),e},Q=r=>{let t=(0,p.c)(10),{cellId:e,lineNumber:s}=r,o=N(),a;t[0]!==e||t[1]!==s?(a=()=>T(e,s),t[0]=e,t[1]=s,t[2]=a):a=t[2];let l;t[3]!==e||t[4]!==o?(l=i=>e==="__scratch__"?"scratch":`marimo://${o||"untitled"}#cell=${i}`,t[3]=e,t[4]=o,t[5]=l):l=t[5];let n;return t[6]!==e||t[7]!==a||t[8]!==l?(n=(0,v.jsx)(h,{cellId:e,onClick:a,skipScroll:!0,variant:"destructive",className:"traceback-cell-link",formatCellName:l}),t[6]=e,t[7]=a,t[8]=l,t[9]=n):n=t[9],n};function x(r,t,e){let s=A.create(r),o=document.getElementById(s),a=o==null?void 0:o.classList.contains("has-error");return o===null?($.error(`Cell ${s} not found on page.`),!1):(e||o.scrollIntoView({behavior:"smooth",block:"center"}),(t==="destructive"||a&&t===void 0)&&(o.classList.add("error-outline"),setTimeout(()=>{o.classList.remove("error-outline")},2e3)),(t==="focus"||!a&&t===void 0)&&(o.classList.add("focus-outline"),setTimeout(()=>{o.classList.remove("focus-outline")},2e3)),!0)}function W(r){return r}export{N as a,x as i,K as n,J as o,Q as r,h as t};
1
+ import{s as L}from"./chunk-LvLJmgfZ.js";import{d as P,l as w,n as j,u as O}from"./useEvent-D91BmmQi.js";import{D as y,Ii as A,It as D,M as E,P as S,mn as T,wi as _}from"./cells-1XaQzJBc.js";import{t as b}from"./compiler-runtime-B3qBwwSJ.js";import{_ as $}from"./useEventListener-DvoEXWke.js";import{d as F}from"./utils-Bok_hGT2.js";import{r as I}from"./constants-DMpttj8Q.js";import{v as M,w as q}from"./config-hed0CaQL.js";import{t as B}from"./cn-DCUzRj2J.js";import{t as H}from"./jsx-runtime-BqBOg78p.js";import{r as R}from"./requests-DIwGYs0l.js";import{n as U}from"./paths-D5zczhUD.js";import{s as V}from"./session-0B5NBztP.js";import{n as z}from"./ImperativeModal-B3Th7k4R.js";var G=b();function N(){return O(_)}function J(){let r=(0,G.c)(5),[t]=w(M),e=P(_),{openAlert:s}=z(),{sendRename:o}=R(),a;return r[0]!==t.state||r[1]!==s||r[2]!==o||r[3]!==e?(a=async l=>{let n=F();return t.state===q.OPEN?(V(i=>{l===null?i.delete(I.filePath):i.set(I.filePath,l)}),o({filename:l}).then(()=>(e(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]=t.state,r[1]=s,r[2]=o,r[3]=e,r[4]=a):a=r[4],j(a)}var p=b(),v=L(H(),1);const h=r=>{let t=(0,p.c)(12),{className:e,cellId:s,variant:o,onClick:a,formatCellName:l,skipScroll:n}=r,i=S()[s]??"",C=E().inOrderIds.indexOf(s),{showCellIfHidden:d}=y(),g=l??W,c;t[0]===e?c=t[1]:(c=B("inline-block cursor-pointer text-link hover:underline",e),t[0]=e,t[1]=c);let m;t[2]!==s||t[3]!==a||t[4]!==d||t[5]!==n||t[6]!==o?(m=k=>{if(s==="__scratch__")return!1;d({cellId:s}),k.stopPropagation(),k.preventDefault(),requestAnimationFrame(()=>{x(s,o,n)&&(a==null||a())})},t[2]=s,t[3]=a,t[4]=d,t[5]=n,t[6]=o,t[7]=m):m=t[7];let f=g(D(i,C)),u;return t[8]!==c||t[9]!==m||t[10]!==f?(u=(0,v.jsx)("div",{className:c,role:"link",tabIndex:-1,onClick:m,children:f}),t[8]=c,t[9]=m,t[10]=f,t[11]=u):u=t[11],u},K=r=>{let t=(0,p.c)(2),e;return t[0]===r?e=t[1]:(e=(0,v.jsx)(h,{...r,variant:"destructive"}),t[0]=r,t[1]=e),e},Q=r=>{let t=(0,p.c)(10),{cellId:e,lineNumber:s}=r,o=N(),a;t[0]!==e||t[1]!==s?(a=()=>T(e,s),t[0]=e,t[1]=s,t[2]=a):a=t[2];let l;t[3]!==e||t[4]!==o?(l=i=>e==="__scratch__"?"scratch":`marimo://${o||"untitled"}#cell=${i}`,t[3]=e,t[4]=o,t[5]=l):l=t[5];let n;return t[6]!==e||t[7]!==a||t[8]!==l?(n=(0,v.jsx)(h,{cellId:e,onClick:a,skipScroll:!0,variant:"destructive",className:"traceback-cell-link",formatCellName:l}),t[6]=e,t[7]=a,t[8]=l,t[9]=n):n=t[9],n};function x(r,t,e){let s=A.create(r),o=document.getElementById(s),a=o==null?void 0:o.classList.contains("has-error");return o===null?($.error(`Cell ${s} not found on page.`),!1):(e||o.scrollIntoView({behavior:"smooth",block:"center"}),(t==="destructive"||a&&t===void 0)&&(o.classList.add("error-outline"),setTimeout(()=>{o.classList.remove("error-outline")},2e3)),(t==="focus"||!a&&t===void 0)&&(o.classList.add("focus-outline"),setTimeout(()=>{o.classList.remove("focus-outline")},2e3)),!0)}function W(r){return r}export{N as a,x as i,K as n,J as o,Q as r,h as t};
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./esm-DM72gy9Q.js","./chunk-LvLJmgfZ.js","./dist-BZX17NA8.js","./dist-C9ZB41s2.js","./dist-HlsDto3K.js","./dist-BrR4M-k3.js","./dist-B3r3gs4u.js","./dist-DviQ3W6h.js","./dist-CAIBlJtJ.js","./dist-B1U1kGCR.js","./dist-DYXeLJlk.js","./dist-qBfIhsAs.js","./dist-_fyDen1v.js","./dist-CpTFpfm_.js","./dist-ChF5Ln9c.js","./dist-B2-3vH3I.js","./dist-CjBmWBr2.js","./dist-CqEym3Sr.js","./dist-BYYXrYaA.js","./dist-cS6yvaqe.js","./dist-D6HkmGB2.js","./dist-oSdg9XA7.js","./dist-CGC-UAcL.js","./dist-D86l0QaP.js","./dist-DB3ebLb3.js","./dist-C_k5-SEy.js","./dist-Dr8mWwQ_.js","./dist-CBSMxaO_.js","./dist-CSowihAs.js","./dist-Cofj3PRM.js","./dist-B7U5jPfs.js","./dist-CPczQFlJ.js","./dist-FSgOAwAH.js","./dist-WcxjmQmQ.js","./dist-K7UrYXpJ.js","./dist-CiOPfbN_.js","./dist-Dx65VI0Y.js","./dist-B6ehDvA-.js","./dist-CtCHoDJA.js","./dist-fhXsH3fb.js","./dist-fQYV9WTb.js","./dist-D8MaDlGc.js","./apl-CZC-w0DM.js","./apl-4hxG7HNk.js","./asciiarmor-Dxkbb4uS.js","./asciiarmor-Dv_174xi.js","./asn1-CrA2MPaL.js","./asn1-iiMvplI8.js","./brainfuck-B5oLVauS.js","./brainfuck-C1zBqC_V.js","./cobol-CZosvDFE.js","./cobol-BCxTxy3w.js","./clike-npv7NBwP.js","./clike-DgscWMor.js","./clojure-D60XavrX.js","./clojure-BHbbYwIQ.js","./css-OVjTGRm9.js","./css-DOb8-BDy.js","./cmake-CrWsGXcU.js","./cmake-DLR6lpqL.js","./coffeescript-DQGIz3iX.js","./coffeescript-CpA2P5vm.js","./commonlisp-DrWSVXOx.js","./commonlisp-IOtLAQXJ.js","./cypher-C4I5nX3I.js","./cypher-DLF7i4IG.js","./python-VpIaVd-6.js","./python-Du1sm3Dz.js","./crystal-CMu2RgP7.js","./crystal-D5D6_kGA.js","./d-B_OAkSA3.js","./d-ByNdxjrk.js","./diff-f-qA4U7T.js","./diff-DgsriQcn.js","./dockerfile-CrSl2ewL.js","./simple-mode-awvuWmjh.js","./dtd-DWRTME-w.js","./dtd-BY21shY3.js","./dylan-DnEm_ULG.js","./dylan-D_hF5J0y.js","./ecl-Dbf1A5nG.js","./ecl-C1ORA0cg.js","./eiffel-Xj76_r0X.js","./eiffel-1fe3g8c_.js","./elm-nUwO24NA.js","./elm-hjWurFzL.js","./erlang-CFVqMiR0.js","./erlang-Bp4wxA5O.js","./factor-mJPTAioV.js","./factor-MWFhpc0o.js","./forth-DBQr6L61.js","./forth-5O98d424.js","./fortran-BkjqlXUL.js","./fortran-BIuAFxQ8.js","./mllike-Bgkhf51-.js","./mllike-CNENYbun.js","./gas-BNFtcdO9.js","./gas-CHHhShkY.js","./gherkin-BrOMWqkN.js","./gherkin-DIjcYYBT.js","./groovy-DuCnwFRS.js","./groovy-BYU3Z-yz.js","./haskell-BD39942g.js","./haskell-CjOVOYhk.js","./haxe-CXsKoap0.js","./haxe-Cb_U41Kf.js","./idl-D7hb6rI1.js","./idl-XfUB5VqU.js","./javascript-1S1_-Xac.js","./javascript-BZ9iuJe9.js","./julia-CbOUdU45.js","./julia-ZgWUbR6s.js","./livescript-4YbxVKEy.js","./livescript-PvHqMAnA.js","./lua-Dp2B-Joo.js","./lua-BAkgehCh.js","./mirc-BZe50pjl.js","./mirc-DAwdMlc7.js","./mathematica-BaSnKpgq.js","./mathematica-sYPoESCW.js","./modelica-BzrnHsaM.js","./modelica-FtpuFG3d.js","./mumps-DYao3Wbn.js","./mumps-BM8g2rR9.js","./mbox-JZJfXD_G.js","./mbox-BFVpgB4i.js","./nsis-BV9URIq2.js","./nsis-CDylpiaC.js","./ntriples-CCTjcLNo.js","./ntriples-Dpum4Lhl.js","./octave-CalSSDIP.js","./octave-C-8skAyy.js","./oz-BwBvNNj4.js","./oz-C9dNiWs3.js","./pascal-VtYjd8tX.js","./pascal-OtDoyUlT.js","./perl-CuiQHSod.js","./perl-Bq6zPLry.js","./pig-CIHZG4Z9.js","./pig-CzHJ3vXa.js","./powershell-CI2Wos2z.js","./powershell-CPgLwhmC.js","./properties-CBOFbPgT.js","./properties-Kfp4iofx.js","./protobuf-CdcXLd43.js","./protobuf-BtodseUb.js","./pug-DJHP9Svh.js","./pug-BXVTM5jr.js","./puppet-B2nxuZc5.js","./puppet-DqMZ-3jb.js","./q-CamvlcK6.js","./q-mTJjDbkl.js","./r-CgsrYWFj.js","./r-CiWGt8bY.js","./rpm-DBux1aMG.js","./rpm-DoWl8uQ-.js","./ruby-BWHIAyVi.js","./ruby-EPWn7HjP.js","./sas-DJpj3tMb.js","./sas-C49N66K9.js","./scheme-DF-J69qP.js","./scheme-BKBMeaMf.js","./shell-m-RSMeeH.js","./shell-B3Qif7WE.js","./sieve-CtzQvaig.js","./sieve-D2oOzUQe.js","./smalltalk-ClFvBgAI.js","./smalltalk-D2JNyQE_.js","./sparql-icVR0QFW.js","./sparql-B_E2GW41.js","./stylus-TkCXytG7.js","./stylus-R6o8NrsG.js","./swift-CBYBwE0m.js","./swift-Dbh-hbmH.js","./stex-Ccczot4V.js","./stex-BGrE-q7N.js","./verilog-JbcxpuFW.js","./verilog-sCLfsuOk.js","./tcl-DvyBVTw2.js","./tcl-B7hCCUdg.js","./textile-DA3WvzuI.js","./textile-3T2abjma.js","./toml-BJa3ckRR.js","./toml-BfSTXCbK.js","./troff-CqZSdBAp.js","./troff-TmwTwfFH.js","./ttcn-BouEBguh.js","./ttcn-BptQ-efU.js","./ttcn-cfg-C1whpGsE.js","./ttcn-cfg-BJSeQh2j.js","./turtle-DQ8l-awL.js","./turtle-NWQZPdQh.js","./webidl-ChYZayPm.js","./webidl-C2DK9LNJ.js","./vb-B7wOdn6U.js","./vb-5MAVubtN.js","./vbscript-DvH455rJ.js","./vbscript-C3wI-prb.js","./velocity-B6C6O90i.js","./velocity-BZ0SsVqc.js","./vhdl-SEFTp5Re.js","./vhdl-D8-XDERr.js","./xquery-DWwllqyg.js","./xquery-Db3HYO3C.js","./yacas-DQRdrpIp.js","./yacas-DhfMSinV.js","./z80-CGBxwDW7.js","./z80-CH-vqbta.js","./mscgen-C7fmiScS.js","./mscgen-BZpZ1eAc.js","./dist-CO_N76Iz.js","./dist-CNghxh0Q.js","./dist-CcoNWYux.js","./node-sql-parser-fWuidk6P.js"])))=>i.map(i=>d[i]);
2
- var j6=Object.defineProperty;var z6=(pa,_r,ri)=>_r in pa?j6(pa,_r,{enumerable:!0,configurable:!0,writable:!0,value:ri}):pa[_r]=ri;var ve=(pa,_r,ri)=>z6(pa,typeof _r!="symbol"?_r+"":_r,ri);import{a as q6,n as Sw,o as F6,r as B6,s as Mu,t as rt}from"./chunk-LvLJmgfZ.js";import{c as Ew,i as Pe,l as Tw,p as Ee,r as V6,s as H6,u as rn}from"./useEvent-D91BmmQi.js";import{t as Du}from"./react-Bj1aDYRI.js";import{t as Iw}from"./react-dom-CSu739Rf.js";import{B as $6,N as W6,P as Lw,R as Ow,T as Aw,k as U6,w as K6}from"./zod-H_cgTO0M.js";import{t as Fn}from"./compiler-runtime-B3qBwwSJ.js";import{t as Hh}from"./debounce-DhnxH9Rh.js";import{_ as be,d as Rr,f as Rw,o as ju,p as Q6}from"./useEventListener-DvoEXWke.js";import{t as an}from"./invariant-BUdrueMv.js";import{f as Pw,t as Nw}from"./utils-Cp7O5e1E.js";import{S as G6,T as zu,r as J6}from"./config-CasRXHAM.js";import{n as X6,t as Pr}from"./cn-DCUzRj2J.js";import{t as Y6}from"./jsx-runtime-BqBOg78p.js";import{C as sa,S as Mw,_ as Dw,b as nr,f as Z6,h as qu,m as eI,u as tI,v as jw,w as nI,y as rI}from"./fullscreen-eipL3i3Y.js";import{l as zw,o as aI}from"./dist-BdyjRhEt.js";import{d as iI}from"./menu-items-DcP01QzW.js";import{a as oI,c as sI,i as $h,m as lI,n as cI,o as qw,r as uI,s as dI,t as fI}from"./select-DZcFyKFQ.js";import{i as pI,t as Wh}from"./tooltip-DTV9tlSr.js";import{t as Fw}from"./button-BbCh-29a.js";import{A as hI,At as Uh,Bt as $t,C as mI,D as gI,Et as Bw,Ft as Vw,Gt as yI,H as Kh,Ht as Sl,I as Hw,J as Fu,Jt as la,Kt as $w,Ot as os,S as vI,St as Ja,T as Ww,U as bI,Ut as Uw,Vt as wI,W as _I,Wt as Bu,Xt as Ui,Yt as ss,Zt as ls,_t as xI,at as Et,b as Kw,ct as Ki,f as Qw,it as kI,jt as CI,k as SI,l as ne,mt as EI,nt as Gw,ot as TI,p as II,rt as ca,u as Jw,ut as LI,xt as Qh,z as Xw,zt as Vu}from"./dist-BrR4M-k3.js";import{C as OI,D as AI,L as RI,O as PI,T as NI,b as MI,d as Yw,f as DI,g as jI,h as zI,k as qI,n as FI,o as Gh,p as BI,s as VI,t as HI,u as $I,w as WI,x as UI}from"./dist-CHcznzB-.js";import{a as El,i as Jh,m as Xh,n as KI,r as Zw}from"./arrays-DYDL-3-i.js";import{n as rr}from"./once-DRroIaBz.js";import{t as QI}from"./capabilities-A_KhFcGV.js";import{t as GI}from"./cjs-BRGiG41H.js";import{t as cs}from"./createReducer-CI9qeK_X.js";import{d as e_,l as t_,n as JI,o as n_,p as XI,r as Hu}from"./dist-HlsDto3K.js";import{t as r_}from"./main-B0OX4z33.js";import{n as a_,t as YI}from"./useNonce-DfoVjkkH.js";import{i as us,r as ZI,t as e8}from"./strings-wdPMRf6Z.js";import{t as br}from"./requests-DIwGYs0l.js";import{a as t8,c as n8,d as r8,f as i_,i as a8,l as i8,n as o8,o as Yh,r as s8,s as Zh,t as l8,u as c8}from"./dist-C9ZB41s2.js";import{t as ot}from"./createLucideIcon-D5guW7EU.js";import{a as em,i as u8,o as d8,r as f8,t as p8}from"./useLifecycle-DieWOfXE.js";import{t as h8}from"./check-BH35Ndha.js";import{t as m8}from"./x-C-6liIBr.js";import{t as g8,u as y8}from"./toDate-B5A0DFEz.js";import{t as tm}from"./database-zap-kIkTfzTX.js";import{n as v8,t as Tl}from"./DeferredRequestRegistry-CNldVcrP.js";import{t as Bn}from"./badge-j3NGjqhR.js";import{t as re}from"./preload-helper-BPPi7vOr.js";import{a as o_,s as b8}from"./dist-CBSMxaO_.js";import{a as w8,i as nm,n as _8,r as s_,t as x8}from"./dist-CPczQFlJ.js";import{n as k8}from"./stex-BGrE-q7N.js";import{t as Il}from"./use-toast-IPAtJGea.js";import{n as l_}from"./paths-D5zczhUD.js";import{n as C8}from"./useTheme-BzHkS4pu.js";import{t as rm}from"./purify.es-B9KxLTTS.js";let am,$u,c_,Wu,u_,Uu,d_,Ku,im,f_,p_,Ll,Ol,Al,h_,m_,Qu,om,g_,y_,v_,b_,sm,w_,__,gn,lm,cm,Vn,x_,k_,Gu,Ju,C_,um,S_,Xu,st,E_,dm,T_,Xa,I_,Yu,L_,En,O_,A_,R_,fm,P_,N_,pm,M_,Zu,D_,ua,j_,z_,ds,q_,F_,B_,V_,H_,ed,$_,hm,W_,mm,gm,U_,K_,Q_,Rl,G_,ym,td,J_,Ya,vm,X_,nd,bm,Y_,wm,Nr,ar,Hn,Za,Z_,_m,ex,tx,rd,xm,Qi,nx,Pl,ad,km,id,rx,Cm,ax,da,ix,ox,Sm,od,sx,$n,lx,cx,Em,Gi,ux,Tm,sd,Im,dx,Lm,ld,Om,fx,px,Nl,hx,cd,mx,gx,Ml,Am,yx,ud,Rm,Pm,Dl,vx,Xe,dd,bx,Nm,Mm,wx,fs,_x,Ji,xx,kx,Cx,fa,Dm,jm,zm,fd,Sx,qm,pd,Fm,jl,Bm,Ex,Tx,ps,Vm,hd,md,gd,ei,Hm,Xi,Ix,yd,vd,Lx,Ox,Ax,Rx,Px,Nx,Yi,$m,Mx,Wm,zl,Dx,bd,jx,ql,zx,Um,qx,Fx,Km,Bx,Qm,Gm,wd,Vx,Jm,Hx,_d,$x,Fl,Xm,Ym,xd,Wx,Zm,Ux,e0,t0,n0,kd,Kx,Qx,r0,Gx,Zi,a0,Cd,i0,Jx,Bl,Xx,o0,s0,Yx,Sd,l0,ti,Zx,c0,ni,ek,u0,d0,tk,f0,nk,Ed,p0,rk,hs,h0,m0,ak,ik,ms,ok,g0,wr,sk,lk,Td,gs,y0,Wn,Id,ck,uk,v0,S8=(async()=>{var ur,qf,hi;let pa,_r,ri;pa=rt((e=>{function n(ie,ee){var W=ie.length;ie.push(ee);e:for(;0<W;){var Ie=W-1>>>1,He=ie[Ie];if(0<s(He,ee))ie[Ie]=ee,ie[W]=He,W=Ie;else break e}}function a(ie){return ie.length===0?null:ie[0]}function o(ie){if(ie.length===0)return null;var ee=ie[0],W=ie.pop();if(W!==ee){ie[0]=W;e:for(var Ie=0,He=ie.length,et=He>>>1;Ie<et;){var Fe=2*(Ie+1)-1,Me=ie[Fe],Le=Fe+1,De=ie[Le];if(0>s(Me,W))Le<He&&0>s(De,Me)?(ie[Ie]=De,ie[Le]=W,Ie=Le):(ie[Ie]=Me,ie[Fe]=W,Ie=Fe);else if(Le<He&&0>s(De,W))ie[Ie]=De,ie[Le]=W,Ie=Le;else break e}}return ee}function s(ie,ee){var W=ie.sortIndex-ee.sortIndex;return W===0?ie.id-ee.id:W}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var c=performance;e.unstable_now=function(){return c.now()}}else{var d=Date,f=d.now();e.unstable_now=function(){return d.now()-f}}var m=[],b=[],w=1,x=null,S=3,E=!1,I=!1,P=!1,q=!1,B=typeof setTimeout=="function"?setTimeout:null,V=typeof clearTimeout=="function"?clearTimeout:null,M=typeof setImmediate<"u"?setImmediate:null;function J(ie){for(var ee=a(b);ee!==null;){if(ee.callback===null)o(b);else if(ee.startTime<=ie)o(b),ee.sortIndex=ee.expirationTime,n(m,ee);else break;ee=a(b)}}function le(ie){if(P=!1,J(ie),!I)if(a(m)!==null)I=!0,A||(A=!0,ye());else{var ee=a(b);ee!==null&&ue(le,ee.startTime-ie)}}var A=!1,j=-1,$=5,oe=-1;function de(){return q?!0:!(e.unstable_now()-oe<$)}function he(){if(q=!1,A){var ie=e.unstable_now();oe=ie;var ee=!0;try{e:{I=!1,P&&(P=!1,V(j),j=-1),E=!0;var W=S;try{t:{for(J(ie),x=a(m);x!==null&&!(x.expirationTime>ie&&de());){var Ie=x.callback;if(typeof Ie=="function"){x.callback=null,S=x.priorityLevel;var He=Ie(x.expirationTime<=ie);if(ie=e.unstable_now(),typeof He=="function"){x.callback=He,J(ie),ee=!0;break t}x===a(m)&&o(m),J(ie)}else o(m);x=a(m)}if(x!==null)ee=!0;else{var et=a(b);et!==null&&ue(le,et.startTime-ie),ee=!1}}break e}finally{x=null,S=W,E=!1}ee=void 0}}finally{ee?ye():A=!1}}}var ye;if(typeof M=="function")ye=function(){M(he)};else if(typeof MessageChannel<"u"){var ke=new MessageChannel,we=ke.port2;ke.port1.onmessage=he,ye=function(){we.postMessage(null)}}else ye=function(){B(he,0)};function ue(ie,ee){j=B(function(){ie(e.unstable_now())},ee)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(ie){ie.callback=null},e.unstable_forceFrameRate=function(ie){0>ie||125<ie?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):$=0<ie?Math.floor(1e3/ie):5},e.unstable_getCurrentPriorityLevel=function(){return S},e.unstable_next=function(ie){switch(S){case 1:case 2:case 3:var ee=3;break;default:ee=S}var W=S;S=ee;try{return ie()}finally{S=W}},e.unstable_requestPaint=function(){q=!0},e.unstable_runWithPriority=function(ie,ee){switch(ie){case 1:case 2:case 3:case 4:case 5:break;default:ie=3}var W=S;S=ie;try{return ee()}finally{S=W}},e.unstable_scheduleCallback=function(ie,ee,W){var Ie=e.unstable_now();switch(typeof W=="object"&&W?(W=W.delay,W=typeof W=="number"&&0<W?Ie+W:Ie):W=Ie,ie){case 1:var He=-1;break;case 2:He=250;break;case 5:He=1073741823;break;case 4:He=1e4;break;default:He=5e3}return He=W+He,ie={id:w++,callback:ee,priorityLevel:ie,startTime:W,expirationTime:He,sortIndex:-1},W>Ie?(ie.sortIndex=W,n(b,ie),a(m)===null&&ie===a(b)&&(P?(V(j),j=-1):P=!0,ue(le,W-Ie))):(ie.sortIndex=He,n(m,ie),I||E||(I=!0,A||(A=!0,ye()))),ie},e.unstable_shouldYield=de,e.unstable_wrapCallback=function(ie){var ee=S;return function(){var W=S;S=ee;try{return ie.apply(this,arguments)}finally{S=W}}}})),_r=rt(((e,n)=>{n.exports=pa()})),ri=rt((e=>{var n=_r(),a=Du(),o=Iw();function s(t){var r="https://react.dev/errors/"+t;if(1<arguments.length){r+="?args[]="+encodeURIComponent(arguments[1]);for(var i=2;i<arguments.length;i++)r+="&args[]="+encodeURIComponent(arguments[i])}return"Minified React error #"+t+"; visit "+r+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function c(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function d(t){var r=t,i=t;if(t.alternate)for(;r.return;)r=r.return;else{t=r;do r=t,r.flags&4098&&(i=r.return),t=r.return;while(t)}return r.tag===3?i:null}function f(t){if(t.tag===13){var r=t.memoizedState;if(r===null&&(t=t.alternate,t!==null&&(r=t.memoizedState)),r!==null)return r.dehydrated}return null}function m(t){if(t.tag===31){var r=t.memoizedState;if(r===null&&(t=t.alternate,t!==null&&(r=t.memoizedState)),r!==null)return r.dehydrated}return null}function b(t){if(d(t)!==t)throw Error(s(188))}function w(t){var r=t.alternate;if(!r){if(r=d(t),r===null)throw Error(s(188));return r===t?t:null}for(var i=t,l=r;;){var p=i.return;if(p===null)break;var g=p.alternate;if(g===null){if(l=p.return,l!==null){i=l;continue}break}if(p.child===g.child){for(g=p.child;g;){if(g===i)return b(p),t;if(g===l)return b(p),r;g=g.sibling}throw Error(s(188))}if(i.return!==l.return)i=p,l=g;else{for(var C=!1,L=p.child;L;){if(L===i){C=!0,i=p,l=g;break}if(L===l){C=!0,l=p,i=g;break}L=L.sibling}if(!C){for(L=g.child;L;){if(L===i){C=!0,i=g,l=p;break}if(L===l){C=!0,l=g,i=p;break}L=L.sibling}if(!C)throw Error(s(189))}}if(i.alternate!==l)throw Error(s(190))}if(i.tag!==3)throw Error(s(188));return i.stateNode.current===i?t:r}function x(t){var r=t.tag;if(r===5||r===26||r===27||r===6)return t;for(t=t.child;t!==null;){if(r=x(t),r!==null)return r;t=t.sibling}return null}var S=Object.assign,E=Symbol.for("react.element"),I=Symbol.for("react.transitional.element"),P=Symbol.for("react.portal"),q=Symbol.for("react.fragment"),B=Symbol.for("react.strict_mode"),V=Symbol.for("react.profiler"),M=Symbol.for("react.consumer"),J=Symbol.for("react.context"),le=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),j=Symbol.for("react.suspense_list"),$=Symbol.for("react.memo"),oe=Symbol.for("react.lazy"),de=Symbol.for("react.activity"),he=Symbol.for("react.memo_cache_sentinel"),ye=Symbol.iterator;function ke(t){return typeof t!="object"||!t?null:(t=ye&&t[ye]||t["@@iterator"],typeof t=="function"?t:null)}var we=Symbol.for("react.client.reference");function ue(t){if(t==null)return null;if(typeof t=="function")return t.$$typeof===we?null:t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case q:return"Fragment";case V:return"Profiler";case B:return"StrictMode";case A:return"Suspense";case j:return"SuspenseList";case de:return"Activity"}if(typeof t=="object")switch(t.$$typeof){case P:return"Portal";case J:return t.displayName||"Context";case M:return(t._context.displayName||"Context")+".Consumer";case le:var r=t.render;return t=t.displayName,t||(t=(t=r.displayName||r.name||"",t===""?"ForwardRef":"ForwardRef("+t+")")),t;case $:return r=t.displayName||null,r===null?ue(t.type)||"Memo":r;case oe:r=t._payload,t=t._init;try{return ue(t(r))}catch{}}return null}var ie=Array.isArray,ee=a.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,W=o.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Ie={pending:!1,data:null,method:null,action:null},He=[],et=-1;function Fe(t){return{current:t}}function Me(t){0>et||(t.current=He[et],He[et]=null,et--)}function Le(t,r){et++,He[et]=t.current,t.current=r}var De=Fe(null),Tt=Fe(null),Pt=Fe(null),wa=Fe(null);function bo(t,r){switch(Le(Pt,r),Le(Tt,t),Le(De,null),r.nodeType){case 9:case 11:t=(t=r.documentElement)&&(t=t.namespaceURI)?X2(t):0;break;default:if(t=r.tagName,r=r.namespaceURI)r=X2(r),t=Y2(r,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}Me(De),Le(De,t)}function On(){Me(De),Me(Tt),Me(Pt)}function jr(t){t.memoizedState!==null&&Le(wa,t);var r=De.current,i=Y2(r,t.type);r!==i&&(Le(Tt,t),Le(De,i))}function mi(t){Tt.current===t&&(Me(De),Me(Tt)),wa.current===t&&(Me(wa),_l._currentValue=Ie)}var wo,Ls;function mt(t){if(wo===void 0)try{throw Error()}catch(i){var r=i.stack.trim().match(/\n( *(at )?)/);wo=r&&r[1]||"",Ls=-1<i.stack.indexOf(`
2
+ var j6=Object.defineProperty;var z6=(pa,_r,ri)=>_r in pa?j6(pa,_r,{enumerable:!0,configurable:!0,writable:!0,value:ri}):pa[_r]=ri;var ve=(pa,_r,ri)=>z6(pa,typeof _r!="symbol"?_r+"":_r,ri);import{a as q6,n as Sw,o as F6,r as B6,s as Mu,t as rt}from"./chunk-LvLJmgfZ.js";import{c as Ew,i as Pe,l as Tw,p as Ee,r as V6,s as H6,u as rn}from"./useEvent-D91BmmQi.js";import{t as Du}from"./react-Bj1aDYRI.js";import{t as Iw}from"./react-dom-CSu739Rf.js";import{B as $6,N as W6,P as Lw,R as Ow,T as Aw,k as U6,w as K6}from"./zod-H_cgTO0M.js";import{t as Fn}from"./compiler-runtime-B3qBwwSJ.js";import{t as Hh}from"./debounce-DhnxH9Rh.js";import{_ as be,d as Rr,f as Rw,o as ju,p as Q6}from"./useEventListener-DvoEXWke.js";import{t as an}from"./invariant-BUdrueMv.js";import{f as Pw,t as Nw}from"./utils-Bok_hGT2.js";import{S as G6,T as zu,r as J6}from"./config-hed0CaQL.js";import{n as X6,t as Pr}from"./cn-DCUzRj2J.js";import{t as Y6}from"./jsx-runtime-BqBOg78p.js";import{C as sa,S as Mw,_ as Dw,b as nr,f as Z6,h as qu,m as eI,u as tI,v as jw,w as nI,y as rI}from"./fullscreen-eipL3i3Y.js";import{l as zw,o as aI}from"./dist-BdyjRhEt.js";import{d as iI}from"./menu-items-DcP01QzW.js";import{a as oI,c as sI,i as $h,m as lI,n as cI,o as qw,r as uI,s as dI,t as fI}from"./select-DZcFyKFQ.js";import{i as pI,t as Wh}from"./tooltip-DTV9tlSr.js";import{t as Fw}from"./button-BbCh-29a.js";import{A as hI,At as Uh,Bt as $t,C as mI,D as gI,Et as Bw,Ft as Vw,Gt as yI,H as Kh,Ht as Sl,I as Hw,J as Fu,Jt as la,Kt as $w,Ot as os,S as vI,St as Ja,T as Ww,U as bI,Ut as Uw,Vt as wI,W as _I,Wt as Bu,Xt as Ui,Yt as ss,Zt as ls,_t as xI,at as Et,b as Kw,ct as Ki,f as Qw,it as kI,jt as CI,k as SI,l as ne,mt as EI,nt as Gw,ot as TI,p as II,rt as ca,u as Jw,ut as LI,xt as Qh,z as Xw,zt as Vu}from"./dist-BrR4M-k3.js";import{C as OI,D as AI,L as RI,O as PI,T as NI,b as MI,d as Yw,f as DI,g as jI,h as zI,k as qI,n as FI,o as Gh,p as BI,s as VI,t as HI,u as $I,w as WI,x as UI}from"./dist-CHcznzB-.js";import{a as El,i as Jh,m as Xh,n as KI,r as Zw}from"./arrays-DYDL-3-i.js";import{n as rr}from"./once-DRroIaBz.js";import{t as QI}from"./capabilities-A_KhFcGV.js";import{t as GI}from"./cjs-BRGiG41H.js";import{t as cs}from"./createReducer-CI9qeK_X.js";import{d as e_,l as t_,n as JI,o as n_,p as XI,r as Hu}from"./dist-HlsDto3K.js";import{t as r_}from"./main-B0OX4z33.js";import{n as a_,t as YI}from"./useNonce-DfoVjkkH.js";import{i as us,r as ZI,t as e8}from"./strings-wdPMRf6Z.js";import{t as br}from"./requests-DIwGYs0l.js";import{a as t8,c as n8,d as r8,f as i_,i as a8,l as i8,n as o8,o as Yh,r as s8,s as Zh,t as l8,u as c8}from"./dist-C9ZB41s2.js";import{t as ot}from"./createLucideIcon-D5guW7EU.js";import{a as em,i as u8,o as d8,r as f8,t as p8}from"./useLifecycle-DieWOfXE.js";import{t as h8}from"./check-BH35Ndha.js";import{t as m8}from"./x-C-6liIBr.js";import{t as g8,u as y8}from"./toDate-B5A0DFEz.js";import{t as tm}from"./database-zap-kIkTfzTX.js";import{n as v8,t as Tl}from"./DeferredRequestRegistry-CNldVcrP.js";import{t as Bn}from"./badge-j3NGjqhR.js";import{t as re}from"./preload-helper-BPPi7vOr.js";import{a as o_,s as b8}from"./dist-CBSMxaO_.js";import{a as w8,i as nm,n as _8,r as s_,t as x8}from"./dist-CPczQFlJ.js";import{n as k8}from"./stex-BGrE-q7N.js";import{t as Il}from"./use-toast-IPAtJGea.js";import{n as l_}from"./paths-D5zczhUD.js";import{n as C8}from"./useTheme-KJ1rGmnj.js";import{t as rm}from"./purify.es-B9KxLTTS.js";let am,$u,c_,Wu,u_,Uu,d_,Ku,im,f_,p_,Ll,Ol,Al,h_,m_,Qu,om,g_,y_,v_,b_,sm,w_,__,gn,lm,cm,Vn,x_,k_,Gu,Ju,C_,um,S_,Xu,st,E_,dm,T_,Xa,I_,Yu,L_,En,O_,A_,R_,fm,P_,N_,pm,M_,Zu,D_,ua,j_,z_,ds,q_,F_,B_,V_,H_,ed,$_,hm,W_,mm,gm,U_,K_,Q_,Rl,G_,ym,td,J_,Ya,vm,X_,nd,bm,Y_,wm,Nr,ar,Hn,Za,Z_,_m,ex,tx,rd,xm,Qi,nx,Pl,ad,km,id,rx,Cm,ax,da,ix,ox,Sm,od,sx,$n,lx,cx,Em,Gi,ux,Tm,sd,Im,dx,Lm,ld,Om,fx,px,Nl,hx,cd,mx,gx,Ml,Am,yx,ud,Rm,Pm,Dl,vx,Xe,dd,bx,Nm,Mm,wx,fs,_x,Ji,xx,kx,Cx,fa,Dm,jm,zm,fd,Sx,qm,pd,Fm,jl,Bm,Ex,Tx,ps,Vm,hd,md,gd,ei,Hm,Xi,Ix,yd,vd,Lx,Ox,Ax,Rx,Px,Nx,Yi,$m,Mx,Wm,zl,Dx,bd,jx,ql,zx,Um,qx,Fx,Km,Bx,Qm,Gm,wd,Vx,Jm,Hx,_d,$x,Fl,Xm,Ym,xd,Wx,Zm,Ux,e0,t0,n0,kd,Kx,Qx,r0,Gx,Zi,a0,Cd,i0,Jx,Bl,Xx,o0,s0,Yx,Sd,l0,ti,Zx,c0,ni,ek,u0,d0,tk,f0,nk,Ed,p0,rk,hs,h0,m0,ak,ik,ms,ok,g0,wr,sk,lk,Td,gs,y0,Wn,Id,ck,uk,v0,S8=(async()=>{var ur,qf,hi;let pa,_r,ri;pa=rt((e=>{function n(ie,ee){var W=ie.length;ie.push(ee);e:for(;0<W;){var Ie=W-1>>>1,He=ie[Ie];if(0<s(He,ee))ie[Ie]=ee,ie[W]=He,W=Ie;else break e}}function a(ie){return ie.length===0?null:ie[0]}function o(ie){if(ie.length===0)return null;var ee=ie[0],W=ie.pop();if(W!==ee){ie[0]=W;e:for(var Ie=0,He=ie.length,et=He>>>1;Ie<et;){var Fe=2*(Ie+1)-1,Me=ie[Fe],Le=Fe+1,De=ie[Le];if(0>s(Me,W))Le<He&&0>s(De,Me)?(ie[Ie]=De,ie[Le]=W,Ie=Le):(ie[Ie]=Me,ie[Fe]=W,Ie=Fe);else if(Le<He&&0>s(De,W))ie[Ie]=De,ie[Le]=W,Ie=Le;else break e}}return ee}function s(ie,ee){var W=ie.sortIndex-ee.sortIndex;return W===0?ie.id-ee.id:W}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var c=performance;e.unstable_now=function(){return c.now()}}else{var d=Date,f=d.now();e.unstable_now=function(){return d.now()-f}}var m=[],b=[],w=1,x=null,S=3,E=!1,I=!1,P=!1,q=!1,B=typeof setTimeout=="function"?setTimeout:null,V=typeof clearTimeout=="function"?clearTimeout:null,M=typeof setImmediate<"u"?setImmediate:null;function J(ie){for(var ee=a(b);ee!==null;){if(ee.callback===null)o(b);else if(ee.startTime<=ie)o(b),ee.sortIndex=ee.expirationTime,n(m,ee);else break;ee=a(b)}}function le(ie){if(P=!1,J(ie),!I)if(a(m)!==null)I=!0,A||(A=!0,ye());else{var ee=a(b);ee!==null&&ue(le,ee.startTime-ie)}}var A=!1,j=-1,$=5,oe=-1;function de(){return q?!0:!(e.unstable_now()-oe<$)}function he(){if(q=!1,A){var ie=e.unstable_now();oe=ie;var ee=!0;try{e:{I=!1,P&&(P=!1,V(j),j=-1),E=!0;var W=S;try{t:{for(J(ie),x=a(m);x!==null&&!(x.expirationTime>ie&&de());){var Ie=x.callback;if(typeof Ie=="function"){x.callback=null,S=x.priorityLevel;var He=Ie(x.expirationTime<=ie);if(ie=e.unstable_now(),typeof He=="function"){x.callback=He,J(ie),ee=!0;break t}x===a(m)&&o(m),J(ie)}else o(m);x=a(m)}if(x!==null)ee=!0;else{var et=a(b);et!==null&&ue(le,et.startTime-ie),ee=!1}}break e}finally{x=null,S=W,E=!1}ee=void 0}}finally{ee?ye():A=!1}}}var ye;if(typeof M=="function")ye=function(){M(he)};else if(typeof MessageChannel<"u"){var ke=new MessageChannel,we=ke.port2;ke.port1.onmessage=he,ye=function(){we.postMessage(null)}}else ye=function(){B(he,0)};function ue(ie,ee){j=B(function(){ie(e.unstable_now())},ee)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(ie){ie.callback=null},e.unstable_forceFrameRate=function(ie){0>ie||125<ie?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):$=0<ie?Math.floor(1e3/ie):5},e.unstable_getCurrentPriorityLevel=function(){return S},e.unstable_next=function(ie){switch(S){case 1:case 2:case 3:var ee=3;break;default:ee=S}var W=S;S=ee;try{return ie()}finally{S=W}},e.unstable_requestPaint=function(){q=!0},e.unstable_runWithPriority=function(ie,ee){switch(ie){case 1:case 2:case 3:case 4:case 5:break;default:ie=3}var W=S;S=ie;try{return ee()}finally{S=W}},e.unstable_scheduleCallback=function(ie,ee,W){var Ie=e.unstable_now();switch(typeof W=="object"&&W?(W=W.delay,W=typeof W=="number"&&0<W?Ie+W:Ie):W=Ie,ie){case 1:var He=-1;break;case 2:He=250;break;case 5:He=1073741823;break;case 4:He=1e4;break;default:He=5e3}return He=W+He,ie={id:w++,callback:ee,priorityLevel:ie,startTime:W,expirationTime:He,sortIndex:-1},W>Ie?(ie.sortIndex=W,n(b,ie),a(m)===null&&ie===a(b)&&(P?(V(j),j=-1):P=!0,ue(le,W-Ie))):(ie.sortIndex=He,n(m,ie),I||E||(I=!0,A||(A=!0,ye()))),ie},e.unstable_shouldYield=de,e.unstable_wrapCallback=function(ie){var ee=S;return function(){var W=S;S=ee;try{return ie.apply(this,arguments)}finally{S=W}}}})),_r=rt(((e,n)=>{n.exports=pa()})),ri=rt((e=>{var n=_r(),a=Du(),o=Iw();function s(t){var r="https://react.dev/errors/"+t;if(1<arguments.length){r+="?args[]="+encodeURIComponent(arguments[1]);for(var i=2;i<arguments.length;i++)r+="&args[]="+encodeURIComponent(arguments[i])}return"Minified React error #"+t+"; visit "+r+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function c(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function d(t){var r=t,i=t;if(t.alternate)for(;r.return;)r=r.return;else{t=r;do r=t,r.flags&4098&&(i=r.return),t=r.return;while(t)}return r.tag===3?i:null}function f(t){if(t.tag===13){var r=t.memoizedState;if(r===null&&(t=t.alternate,t!==null&&(r=t.memoizedState)),r!==null)return r.dehydrated}return null}function m(t){if(t.tag===31){var r=t.memoizedState;if(r===null&&(t=t.alternate,t!==null&&(r=t.memoizedState)),r!==null)return r.dehydrated}return null}function b(t){if(d(t)!==t)throw Error(s(188))}function w(t){var r=t.alternate;if(!r){if(r=d(t),r===null)throw Error(s(188));return r===t?t:null}for(var i=t,l=r;;){var p=i.return;if(p===null)break;var g=p.alternate;if(g===null){if(l=p.return,l!==null){i=l;continue}break}if(p.child===g.child){for(g=p.child;g;){if(g===i)return b(p),t;if(g===l)return b(p),r;g=g.sibling}throw Error(s(188))}if(i.return!==l.return)i=p,l=g;else{for(var C=!1,L=p.child;L;){if(L===i){C=!0,i=p,l=g;break}if(L===l){C=!0,l=p,i=g;break}L=L.sibling}if(!C){for(L=g.child;L;){if(L===i){C=!0,i=g,l=p;break}if(L===l){C=!0,l=g,i=p;break}L=L.sibling}if(!C)throw Error(s(189))}}if(i.alternate!==l)throw Error(s(190))}if(i.tag!==3)throw Error(s(188));return i.stateNode.current===i?t:r}function x(t){var r=t.tag;if(r===5||r===26||r===27||r===6)return t;for(t=t.child;t!==null;){if(r=x(t),r!==null)return r;t=t.sibling}return null}var S=Object.assign,E=Symbol.for("react.element"),I=Symbol.for("react.transitional.element"),P=Symbol.for("react.portal"),q=Symbol.for("react.fragment"),B=Symbol.for("react.strict_mode"),V=Symbol.for("react.profiler"),M=Symbol.for("react.consumer"),J=Symbol.for("react.context"),le=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),j=Symbol.for("react.suspense_list"),$=Symbol.for("react.memo"),oe=Symbol.for("react.lazy"),de=Symbol.for("react.activity"),he=Symbol.for("react.memo_cache_sentinel"),ye=Symbol.iterator;function ke(t){return typeof t!="object"||!t?null:(t=ye&&t[ye]||t["@@iterator"],typeof t=="function"?t:null)}var we=Symbol.for("react.client.reference");function ue(t){if(t==null)return null;if(typeof t=="function")return t.$$typeof===we?null:t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case q:return"Fragment";case V:return"Profiler";case B:return"StrictMode";case A:return"Suspense";case j:return"SuspenseList";case de:return"Activity"}if(typeof t=="object")switch(t.$$typeof){case P:return"Portal";case J:return t.displayName||"Context";case M:return(t._context.displayName||"Context")+".Consumer";case le:var r=t.render;return t=t.displayName,t||(t=(t=r.displayName||r.name||"",t===""?"ForwardRef":"ForwardRef("+t+")")),t;case $:return r=t.displayName||null,r===null?ue(t.type)||"Memo":r;case oe:r=t._payload,t=t._init;try{return ue(t(r))}catch{}}return null}var ie=Array.isArray,ee=a.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,W=o.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Ie={pending:!1,data:null,method:null,action:null},He=[],et=-1;function Fe(t){return{current:t}}function Me(t){0>et||(t.current=He[et],He[et]=null,et--)}function Le(t,r){et++,He[et]=t.current,t.current=r}var De=Fe(null),Tt=Fe(null),Pt=Fe(null),wa=Fe(null);function bo(t,r){switch(Le(Pt,r),Le(Tt,t),Le(De,null),r.nodeType){case 9:case 11:t=(t=r.documentElement)&&(t=t.namespaceURI)?X2(t):0;break;default:if(t=r.tagName,r=r.namespaceURI)r=X2(r),t=Y2(r,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}Me(De),Le(De,t)}function On(){Me(De),Me(Tt),Me(Pt)}function jr(t){t.memoizedState!==null&&Le(wa,t);var r=De.current,i=Y2(r,t.type);r!==i&&(Le(Tt,t),Le(De,i))}function mi(t){Tt.current===t&&(Me(De),Me(Tt)),wa.current===t&&(Me(wa),_l._currentValue=Ie)}var wo,Ls;function mt(t){if(wo===void 0)try{throw Error()}catch(i){var r=i.stack.trim().match(/\n( *(at )?)/);wo=r&&r[1]||"",Ls=-1<i.stack.indexOf(`
3
3
  at`)?" (<anonymous>)":-1<i.stack.indexOf("@")?"@unknown:0:0":""}return`
4
4
  `+wo+t+Ls}var Os=!1;function vn(t,r){if(!t||Os)return"";Os=!0;var i=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var l={DetermineComponentFrameRoot:function(){try{if(r){var fe=function(){throw Error()};if(Object.defineProperty(fe.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(fe,[])}catch(ae){var Z=ae}Reflect.construct(t,[],fe)}else{try{fe.call()}catch(ae){Z=ae}t.call(fe.prototype)}}else{try{throw Error()}catch(ae){Z=ae}(fe=t())&&typeof fe.catch=="function"&&fe.catch(function(){})}}catch(ae){if(ae&&Z&&typeof ae.stack=="string")return[ae.stack,Z.stack]}return[null,null]}};l.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var p=Object.getOwnPropertyDescriptor(l.DetermineComponentFrameRoot,"name");p&&p.configurable&&Object.defineProperty(l.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var g=l.DetermineComponentFrameRoot(),C=g[0],L=g[1];if(C&&L){var F=C.split(`
5
5
  `),X=L.split(`
@@ -1 +1 @@
1
- import{s as z}from"./chunk-LvLJmgfZ.js";import{t as X}from"./react-Bj1aDYRI.js";import{Sr as B,_r as H,gr as I}from"./cells-yL2qMkYn.js";import{A as K,C as R,R as F,T as Q}from"./zod-H_cgTO0M.js";import{t as y}from"./compiler-runtime-B3qBwwSJ.js";import{t as U}from"./isEmpty-CXeoXbuc.js";import{X as Y}from"./ai-model-dropdown-tspiiyaT.js";import{_ as Z}from"./useEventListener-DvoEXWke.js";import{t as S}from"./cn-DCUzRj2J.js";import{t as ee}from"./jsx-runtime-BqBOg78p.js";import{a as O,i as $,n as D,r as E}from"./multi-map-CUuNtzHt.js";import{t as J}from"./button-BbCh-29a.js";import{i as T}from"./strings-wdPMRf6Z.js";import{t as te}from"./createLucideIcon-D5guW7EU.js";import{t as se}from"./ban-0fKnt00i.js";import{t as re}from"./bot-message-square-DrbHk31W.js";import{r as ae}from"./x-C-6liIBr.js";import{t as M}from"./markdown-renderer-3mlKZ6Wa.js";import{f as V,l as le}from"./add-cell-with-ai-XU2qpbrH.js";import{t as ne}from"./external-link-BTNxSavU.js";import{n as oe}from"./spinner-Bhir8k53.js";import{c as ie}from"./datasource-CJC51Mx7.js";import{t as ce}from"./RenderHTML-CUf8D25v.js";var de=te("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"}]]),ue=y(),k=z(X(),1),t=z(ee(),1);const me=c=>{let e=(0,ue.c)(13),{reasoning:l,index:a,isStreaming:i}=c,s=a===void 0?0:a,r=i===void 0?!1:i,[n,u]=k.useState("");if(!l&&!r)return null;let x=r?"reasoning":n,d;e[0]===Symbol.for("react.memo_cache_sentinel")?(d=(0,t.jsx)(re,{className:"h-3 w-3"}),e[0]=d):d=e[0];let h=r?"Thinking":"View reasoning",m=l.length>0&&` (${l.length} chars)`,o;e[1]!==h||e[2]!==m?(o=(0,t.jsx)(O,{className:"text-xs text-muted-foreground hover:bg-muted/50 px-2 py-1 h-auto rounded-sm [&[data-state=open]>svg]:rotate-180",children:(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[d,h,m]})}),e[1]=h,e[2]=m,e[3]=o):o=e[3];let p;e[4]===l?p=e[5]:(p=(0,t.jsx)(E,{className:"pb-2 px-2",children:(0,t.jsx)("div",{className:"bg-muted/30 border border-muted/50 rounded-md p-3 italic text-muted-foreground/90 relative",children:(0,t.jsx)("div",{className:"pr-6",children:(0,t.jsx)(M,{content:l})})})}),e[4]=l,e[5]=p);let f;e[6]!==o||e[7]!==p?(f=(0,t.jsxs)($,{value:"reasoning",className:"border-0",children:[o,p]}),e[6]=o,e[7]=p,e[8]=f):f=e[8];let v;return e[9]!==s||e[10]!==x||e[11]!==f?(v=(0,t.jsx)(D,{type:"single",collapsible:!0,className:"w-full mb-2",value:x,onValueChange:u,children:f},s),e[9]=s,e[10]=x,e[11]=f,e[12]=v):v=e[12],v};function q(c){return c.replace("tool-","")}var pe=y();const A=c=>{let e=(0,pe.c)(9),{input:l,label:a}=c,i=a===void 0?"Tool Request":a;if(l==null)return null;let s;e[0]===i?s=e[1]:(s=(0,t.jsx)("h3",{className:"text-xs font-semibold text-muted-foreground",children:i}),e[0]=i,e[1]=s);let r;e[2]===l?r=e[3]:(r=JSON.stringify(l,null,2),e[2]=l,e[3]=r);let n;e[4]===r?n=e[5]:(n=(0,t.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:r}),e[4]=r,e[5]=n);let u;return e[6]!==s||e[7]!==n?(u=(0,t.jsxs)("div",{className:"space-y-2",children:[s,n]}),e[6]=s,e[7]=n,e[8]=u):u=e[8],u};var xe=y();const he=c=>{let e=(0,xe.c)(25),{toolName:l,input:a,approval:i,onApprove:s,className:r}=c,n;e[0]===r?n=e[1]:(n=S("rounded-md border border-(--amber-6) bg-(--amber-2) p-3 space-y-3",r),e[0]=r,e[1]=n);let u=`Approval required for ${q(l)}`,x;e[2]===Symbol.for("react.memo_cache_sentinel")?(x=(0,t.jsx)(de,{className:"h-4 w-4 text-(--amber-11) mt-0.5 shrink-0"}),e[2]=x):x=e[2];let d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=(0,t.jsx)("span",{className:"font-semibold",children:"Approval required:"}),e[3]=d):d=e[3];let h;e[4]===l?h=e[5]:(h=q(l),e[4]=l,e[5]=h);let m;e[6]===h?m=e[7]:(m=(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[x,(0,t.jsxs)("div",{className:"text-xs text-(--amber-11) leading-relaxed",children:[d," ",(0,t.jsx)("code",{className:"font-mono",children:h})]})]}),e[6]=h,e[7]=m);let o;e[8]===a?o=e[9]:(o=(0,t.jsx)(A,{input:a}),e[8]=a,e[9]=o);let p;e[10]!==i.id||e[11]!==s?(p=(0,t.jsx)(J,{size:"xs",variant:"outline",onClick:()=>s({id:i.id,approved:!1}),children:"Deny"}),e[10]=i.id,e[11]=s,e[12]=p):p=e[12];let f;e[13]!==i.id||e[14]!==s?(f=(0,t.jsx)(J,{size:"xs",onClick:()=>s({id:i.id,approved:!0}),children:"Approve"}),e[13]=i.id,e[14]=s,e[15]=f):f=e[15];let v;e[16]!==p||e[17]!==f?(v=(0,t.jsxs)("div",{className:"flex items-center justify-end gap-2",children:[p,f]}),e[16]=p,e[17]=f,e[18]=v):v=e[18];let b;return e[19]!==n||e[20]!==v||e[21]!==u||e[22]!==m||e[23]!==o?(b=(0,t.jsxs)("div",{className:n,role:"alertdialog","aria-label":u,children:[m,o,v]}),e[19]=n,e[20]=v,e[21]=u,e[22]=m,e[23]=o,e[24]=b):b=e[24],b};var fe=y();const ve=c=>{let e=(0,fe.c)(28),{toolName:l,input:a,errorText:i,isLive:s,className:r}=c,[n,u]=k.useState(s),x=k.useRef(s),d,h;e[0]===s?(d=e[1],h=e[2]):(d=()=>{x.current&&!s&&u(!1),x.current=s},h=[s],e[0]=s,e[1]=d,e[2]=h),k.useEffect(d,h);let m;e[3]===r?m=e[4]:(m=S("rounded-md border border-(--red-6) bg-(--red-2)",r),e[3]=r,e[4]=m);let o;e[5]===Symbol.for("react.memo_cache_sentinel")?(o=()=>u(be),e[5]=o):o=e[5];let p;e[6]===Symbol.for("react.memo_cache_sentinel")?(p=(0,t.jsx)(B,{className:"h-3.5 w-3.5 shrink-0"}),e[6]=p):p=e[6];let f;e[7]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)("span",{className:"font-semibold",children:"Failed:"}),e[7]=f):f=e[7];let v;e[8]===l?v=e[9]:(v=q(l),e[8]=l,e[9]=v);let b;e[10]===v?b=e[11]:(b=(0,t.jsxs)("span",{className:"flex-1 text-left",children:[f," ",(0,t.jsx)("code",{className:"font-mono",children:v})]}),e[10]=v,e[11]=b);let N=n&&"rotate-180",j;e[12]===N?j=e[13]:(j=S("h-3.5 w-3.5 shrink-0 transition-transform",N),e[12]=N,e[13]=j);let g;e[14]===j?g=e[15]:(g=(0,t.jsx)(ae,{className:j}),e[14]=j,e[15]=g);let w;e[16]!==n||e[17]!==g||e[18]!==b?(w=(0,t.jsxs)("button",{type:"button",onClick:o,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":n,children:[p,b,g]}),e[16]=n,e[17]=g,e[18]=b,e[19]=w):w=e[19];let _;e[20]!==i||e[21]!==a||e[22]!==n?(_=n&&(0,t.jsxs)("div",{className:"px-3 pb-3 space-y-3 border-t border-(--red-6)/40 pt-3",children:[(0,t.jsx)(A,{input:a}),i&&(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-xs font-semibold text-(--red-11) mb-1",children:"Error"}),(0,t.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:i})]})]}),e[20]=i,e[21]=a,e[22]=n,e[23]=_):_=e[23];let C;return e[24]!==w||e[25]!==_||e[26]!==m?(C=(0,t.jsxs)("div",{className:m,children:[w,_]}),e[24]=w,e[25]=_,e[26]=m,e[27]=C):C=e[27],C};function be(c){return!c}var W=y();function je(c){return c==null?!0:typeof c=="object"?U(c):!1}var ge=K({status:F().default("success"),auth_required:Q().default(!1),action_url:R(),next_steps:R(),meta:R(),message:F().nullish()}),Ne=c=>{let e=(0,W.c)(12),{data:l}=c,a;if(e[0]!==l){let{status:i,auth_required:s,action_url:r,meta:n,next_steps:u,message:x,...d}=l,h;e[2]===Symbol.for("react.memo_cache_sentinel")?(h=(0,t.jsx)("h3",{className:"text-xs font-semibold text-muted-foreground",children:"Tool Result"}),e[2]=h):h=e[2];let m;e[3]===i?m=e[4]:(m=(0,t.jsx)("span",{className:"text-xs px-2 py-0.5 bg-(--grass-2) text-(--grass-11) rounded-full font-medium capitalize",children:i}),e[3]=i,e[4]=m);let o;e[5]===s?o=e[6]:(o=s&&(0,t.jsx)("span",{className:"text-xs px-2 py-0.5 bg-(--amber-2) text-(--amber-11) rounded-full",children:"Auth Required"}),e[5]=s,e[6]=o);let p;e[7]!==m||e[8]!==o?(p=(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[h,(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[m,o]})]}),e[7]=m,e[8]=o,e[9]=p):p=e[9];let f;e[10]===x?f=e[11]:(f=x&&(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[(0,t.jsx)(I,{className:"h-3 w-3 text-(--blue-11) mt-0.5 shrink-0"}),(0,t.jsx)("div",{className:"text-xs text-foreground",children:x})]}),e[10]=x,e[11]=f),a=(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[p,f,d&&(0,t.jsx)("div",{className:"space-y-3",children:Object.entries(d).map(we)})]}),e[0]=l,e[1]=a}else a=e[1];return a};const ye=c=>{let e=(0,W.c)(8),{result:l}=c,a;e[0]===l?a=e[1]:(a=ge.safeParse(l),e[0]=l,e[1]=a);let i=a;if(i.success){let n;return e[2]===i.data?n=e[3]:(n=(0,t.jsx)(Ne,{data:i.data}),e[2]=i.data,e[3]=n),n}let s;e[4]===l?s=e[5]:(s=typeof l=="string"?l:JSON.stringify(l,null,2),e[4]=l,e[5]=s);let r;return e[6]===s?r=e[7]:(r=(0,t.jsx)("div",{className:"text-xs font-medium text-muted-foreground mb-1 max-h-64 overflow-y-auto scrollbar-thin",children:s}),e[6]=s,e[7]=r),r};function we(c){let[e,l]=c;return je(l)?null:(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:e}),(0,t.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 L=y(),_e={"input-streaming":"Generating","input-available":"Running","approval-responded":"Awaiting result","output-available":"Done","output-denied":"Denied"},Se=c=>{let e=(0,L.c)(4),{state:l}=c;switch(l){case"input-streaming":case"input-available":case"approval-responded":{let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(oe,{className:"h-3 w-3 animate-spin"}),e[0]=a):a=e[0],a}case"output-available":{let a;return e[1]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(Y,{className:"h-3 w-3 text-(--grass-11)"}),e[1]=a):a=e[1],a}case"output-denied":{let a;return e[2]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(se,{className:"h-3 w-3 text-muted-foreground"}),e[2]=a):a=e[2],a}default:{T(l);let a;return e[3]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(ie,{className:"h-3 w-3"}),e[3]=a):a=e[3],a}}};function Te(c){switch(c){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(c),""}}const G=c=>{let e=(0,L.c)(29),{toolName:l,state:a,input:i,result:s,approval:r,index:n,className:u}=c,x=`tool-${n===void 0?0:n}`,d;e[0]===u?d=e[1]:(d=S("w-full",u),e[0]=u,e[1]=d);let h;e[2]===a?h=e[3]:(h=S("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",Te(a)),e[2]=a,e[3]=h);let m;e[4]===a?m=e[5]:(m=(0,t.jsx)(Se,{state:a}),e[4]=a,e[5]=m);let o=_e[a],p;e[6]===l?p=e[7]:(p=q(l),e[6]=l,e[7]=p);let f;e[8]===p?f=e[9]:(f=(0,t.jsx)("code",{className:"font-mono text-xs",children:p}),e[8]=p,e[9]=f);let v;e[10]!==m||e[11]!==o||e[12]!==f?(v=(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[m,o,":",f]}),e[10]=m,e[11]=o,e[12]=f,e[13]=v):v=e[13];let b;e[14]!==h||e[15]!==v?(b=(0,t.jsx)(O,{className:h,children:v}),e[14]=h,e[15]=v,e[16]=b):b=e[16];let N;e[17]!==r||e[18]!==i||e[19]!==s||e[20]!==a?(N=(0,t.jsx)(E,{className:"py-2 px-2",children:(0,t.jsx)(ke,{state:a,input:i,result:s,approval:r})}),e[17]=r,e[18]=i,e[19]=s,e[20]=a,e[21]=N):N=e[21];let j;e[22]!==b||e[23]!==N?(j=(0,t.jsxs)($,{value:"tool-call",className:"border-0",children:[b,N]}),e[22]=b,e[23]=N,e[24]=j):j=e[24];let g;return e[25]!==j||e[26]!==x||e[27]!==d?(g=(0,t.jsx)(D,{type:"single",collapsible:!0,className:d,children:j},x),e[25]=j,e[26]=x,e[27]=d,e[28]=g):g=e[28],g};var ke=c=>{let e=(0,L.c)(16),{state:l,input:a,result:i,approval:s}=c;switch(l){case"input-streaming":case"input-available":case"approval-responded":{let r;return e[0]===a?r=e[1]:(r=(0,t.jsx)(A,{input:a}),e[0]=a,e[1]=r),r}case"output-available":{let r;e[2]===a?r=e[3]:(r=(0,t.jsx)(A,{input:a}),e[2]=a,e[3]=r);let n;e[4]===i?n=e[5]:(n=i!=null&&(0,t.jsx)(ye,{result:i}),e[4]=i,e[5]=n);let u;return e[6]!==r||e[7]!==n?(u=(0,t.jsxs)("div",{className:"space-y-3",children:[r,n]}),e[6]=r,e[7]=n,e[8]=u):u=e[8],u}case"output-denied":{let r;e[9]===a?r=e[10]:(r=(0,t.jsx)(A,{input:a}),e[9]=a,e[10]=r);let n=s!=null&&s.reason?`: ${s.reason}`:".",u;e[11]===n?u=e[12]:(u=(0,t.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",n]}),e[11]=n,e[12]=u);let x;return e[13]!==r||e[14]!==u?(x=(0,t.jsxs)("div",{className:"space-y-3",children:[r,u]}),e[13]=r,e[14]=u,e[15]=x):x=e[15],x}default:return T(l),null}},Ae=y();const P=c=>{let e=(0,Ae.c)(25),{toolName:l,state:a,result:i,errorText:s,input:r,approval:n,onApprove:u,index:x,className:d,isLive:h}=c,m=h===void 0?!0:h;switch(a){case"approval-requested":{if(n!=null&&u!=null){let p;return e[0]!==n||e[1]!==d||e[2]!==r||e[3]!==u||e[4]!==l?(p=(0,t.jsx)(he,{toolName:l,input:r,approval:n,onApprove:u,className:d}),e[0]=n,e[1]=d,e[2]=r,e[3]=u,e[4]=l,e[5]=p):p=e[5],p}let o;return e[6]!==d||e[7]!==x||e[8]!==r||e[9]!==l?(o=(0,t.jsx)(G,{toolName:l,state:"input-available",input:r,index:x,className:d}),e[6]=d,e[7]=x,e[8]=r,e[9]=l,e[10]=o):o=e[10],o}case"output-error":{let o;return e[11]!==d||e[12]!==s||e[13]!==r||e[14]!==m||e[15]!==l?(o=(0,t.jsx)(ve,{toolName:l,input:r,errorText:s,isLive:m,className:d}),e[11]=d,e[12]=s,e[13]=r,e[14]=m,e[15]=l,e[16]=o):o=e[16],o}case"input-streaming":case"input-available":case"approval-responded":case"output-available":case"output-denied":{let o;return e[17]!==n||e[18]!==d||e[19]!==x||e[20]!==r||e[21]!==i||e[22]!==a||e[23]!==l?(o=(0,t.jsx)(G,{toolName:l,state:a,input:r,result:i,approval:n,index:x,className:d}),e[17]=n,e[18]=d,e[19]=x,e[20]=r,e[21]=i,e[22]=a,e[23]=l,e[24]=o):o=e[24],o}default:return T(a),null}},Ce=({message:c,isStreamingReasoning:e,isLast:l,addToolApprovalResponse:a})=>{return(0,t.jsx)(t.Fragment,{children:c.parts.map((s,r)=>i(s,r))});function i(s,r){if(qe(s))return(0,t.jsx)(P,{index:r,toolName:s.type,result:s.output,errorText:s.state==="output-error"?s.errorText:void 0,className:"my-2",state:s.state,input:s.input,approval:s.approval,onApprove:a,isLive:l},r);if(Re(s))return Z.debug("Found data part",s),null;switch(s.type){case"text":return s.text.includes("<marimo-")?(0,t.jsx)(k.Fragment,{children:ce({html:s.text})},r):(0,t.jsx)(M,{content:s.text},r);case"reasoning":return(0,t.jsx)(me,{reasoning:s.text,index:r,isStreaming:e&&l&&r===(c.parts.length||0)-1},r);case"file":return(0,t.jsx)(le,{attachment:s},r);case"dynamic-tool":return(0,t.jsx)(P,{toolName:s.toolName,result:s.output,errorText:s.state==="output-error"?s.errorText:void 0,state:s.state,input:s.input,approval:s.approval,onApprove:a,isLive:l},r);case"source-document":return(0,t.jsx)(V,{icon:(0,t.jsx)(H,{className:"h-3 w-3 shrink-0"}),title:s.title,subtitle:s.filename},r);case"source-url":return(0,t.jsx)(V,{icon:(0,t.jsx)(ne,{className:"h-3 w-3 shrink-0"}),title:s.title??s.url,subtitle:s.title?s.url:void 0,href:s.url},r);case"step-start":return null;default:return T(s),null}}};function qe(c){return c.type.startsWith("tool-")}function Re(c){return c.type.startsWith("data-")}export{Ce as t};
1
+ import{s as z}from"./chunk-LvLJmgfZ.js";import{t as X}from"./react-Bj1aDYRI.js";import{Sr as B,_r as H,gr as I}from"./cells-1XaQzJBc.js";import{A as K,C as R,R as F,T as Q}from"./zod-H_cgTO0M.js";import{t as y}from"./compiler-runtime-B3qBwwSJ.js";import{t as U}from"./isEmpty-CXeoXbuc.js";import{X as Y}from"./ai-model-dropdown-guVuz4cU.js";import{_ as Z}from"./useEventListener-DvoEXWke.js";import{t as S}from"./cn-DCUzRj2J.js";import{t as ee}from"./jsx-runtime-BqBOg78p.js";import{a as O,i as $,n as D,r as E}from"./multi-map-CUuNtzHt.js";import{t as J}from"./button-BbCh-29a.js";import{i as T}from"./strings-wdPMRf6Z.js";import{t as te}from"./createLucideIcon-D5guW7EU.js";import{t as se}from"./ban-0fKnt00i.js";import{t as re}from"./bot-message-square-DrbHk31W.js";import{r as ae}from"./x-C-6liIBr.js";import{t as M}from"./markdown-renderer-BzFpW89-.js";import{f as V,l as le}from"./add-cell-with-ai-CV7qdXZ6.js";import{t as ne}from"./external-link-BTNxSavU.js";import{n as oe}from"./spinner-Bhir8k53.js";import{c as ie}from"./datasource-CLXUP6g0.js";import{t as ce}from"./RenderHTML-Dm20tKw3.js";var de=te("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"}]]),ue=y(),k=z(X(),1),t=z(ee(),1);const me=c=>{let e=(0,ue.c)(13),{reasoning:l,index:a,isStreaming:i}=c,s=a===void 0?0:a,r=i===void 0?!1:i,[n,u]=k.useState("");if(!l&&!r)return null;let x=r?"reasoning":n,d;e[0]===Symbol.for("react.memo_cache_sentinel")?(d=(0,t.jsx)(re,{className:"h-3 w-3"}),e[0]=d):d=e[0];let h=r?"Thinking":"View reasoning",m=l.length>0&&` (${l.length} chars)`,o;e[1]!==h||e[2]!==m?(o=(0,t.jsx)(O,{className:"text-xs text-muted-foreground hover:bg-muted/50 px-2 py-1 h-auto rounded-sm [&[data-state=open]>svg]:rotate-180",children:(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[d,h,m]})}),e[1]=h,e[2]=m,e[3]=o):o=e[3];let p;e[4]===l?p=e[5]:(p=(0,t.jsx)(E,{className:"pb-2 px-2",children:(0,t.jsx)("div",{className:"bg-muted/30 border border-muted/50 rounded-md p-3 italic text-muted-foreground/90 relative",children:(0,t.jsx)("div",{className:"pr-6",children:(0,t.jsx)(M,{content:l})})})}),e[4]=l,e[5]=p);let f;e[6]!==o||e[7]!==p?(f=(0,t.jsxs)($,{value:"reasoning",className:"border-0",children:[o,p]}),e[6]=o,e[7]=p,e[8]=f):f=e[8];let v;return e[9]!==s||e[10]!==x||e[11]!==f?(v=(0,t.jsx)(D,{type:"single",collapsible:!0,className:"w-full mb-2",value:x,onValueChange:u,children:f},s),e[9]=s,e[10]=x,e[11]=f,e[12]=v):v=e[12],v};function q(c){return c.replace("tool-","")}var pe=y();const A=c=>{let e=(0,pe.c)(9),{input:l,label:a}=c,i=a===void 0?"Tool Request":a;if(l==null)return null;let s;e[0]===i?s=e[1]:(s=(0,t.jsx)("h3",{className:"text-xs font-semibold text-muted-foreground",children:i}),e[0]=i,e[1]=s);let r;e[2]===l?r=e[3]:(r=JSON.stringify(l,null,2),e[2]=l,e[3]=r);let n;e[4]===r?n=e[5]:(n=(0,t.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:r}),e[4]=r,e[5]=n);let u;return e[6]!==s||e[7]!==n?(u=(0,t.jsxs)("div",{className:"space-y-2",children:[s,n]}),e[6]=s,e[7]=n,e[8]=u):u=e[8],u};var xe=y();const he=c=>{let e=(0,xe.c)(25),{toolName:l,input:a,approval:i,onApprove:s,className:r}=c,n;e[0]===r?n=e[1]:(n=S("rounded-md border border-(--amber-6) bg-(--amber-2) p-3 space-y-3",r),e[0]=r,e[1]=n);let u=`Approval required for ${q(l)}`,x;e[2]===Symbol.for("react.memo_cache_sentinel")?(x=(0,t.jsx)(de,{className:"h-4 w-4 text-(--amber-11) mt-0.5 shrink-0"}),e[2]=x):x=e[2];let d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=(0,t.jsx)("span",{className:"font-semibold",children:"Approval required:"}),e[3]=d):d=e[3];let h;e[4]===l?h=e[5]:(h=q(l),e[4]=l,e[5]=h);let m;e[6]===h?m=e[7]:(m=(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[x,(0,t.jsxs)("div",{className:"text-xs text-(--amber-11) leading-relaxed",children:[d," ",(0,t.jsx)("code",{className:"font-mono",children:h})]})]}),e[6]=h,e[7]=m);let o;e[8]===a?o=e[9]:(o=(0,t.jsx)(A,{input:a}),e[8]=a,e[9]=o);let p;e[10]!==i.id||e[11]!==s?(p=(0,t.jsx)(J,{size:"xs",variant:"outline",onClick:()=>s({id:i.id,approved:!1}),children:"Deny"}),e[10]=i.id,e[11]=s,e[12]=p):p=e[12];let f;e[13]!==i.id||e[14]!==s?(f=(0,t.jsx)(J,{size:"xs",onClick:()=>s({id:i.id,approved:!0}),children:"Approve"}),e[13]=i.id,e[14]=s,e[15]=f):f=e[15];let v;e[16]!==p||e[17]!==f?(v=(0,t.jsxs)("div",{className:"flex items-center justify-end gap-2",children:[p,f]}),e[16]=p,e[17]=f,e[18]=v):v=e[18];let b;return e[19]!==n||e[20]!==v||e[21]!==u||e[22]!==m||e[23]!==o?(b=(0,t.jsxs)("div",{className:n,role:"alertdialog","aria-label":u,children:[m,o,v]}),e[19]=n,e[20]=v,e[21]=u,e[22]=m,e[23]=o,e[24]=b):b=e[24],b};var fe=y();const ve=c=>{let e=(0,fe.c)(28),{toolName:l,input:a,errorText:i,isLive:s,className:r}=c,[n,u]=k.useState(s),x=k.useRef(s),d,h;e[0]===s?(d=e[1],h=e[2]):(d=()=>{x.current&&!s&&u(!1),x.current=s},h=[s],e[0]=s,e[1]=d,e[2]=h),k.useEffect(d,h);let m;e[3]===r?m=e[4]:(m=S("rounded-md border border-(--red-6) bg-(--red-2)",r),e[3]=r,e[4]=m);let o;e[5]===Symbol.for("react.memo_cache_sentinel")?(o=()=>u(be),e[5]=o):o=e[5];let p;e[6]===Symbol.for("react.memo_cache_sentinel")?(p=(0,t.jsx)(B,{className:"h-3.5 w-3.5 shrink-0"}),e[6]=p):p=e[6];let f;e[7]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)("span",{className:"font-semibold",children:"Failed:"}),e[7]=f):f=e[7];let v;e[8]===l?v=e[9]:(v=q(l),e[8]=l,e[9]=v);let b;e[10]===v?b=e[11]:(b=(0,t.jsxs)("span",{className:"flex-1 text-left",children:[f," ",(0,t.jsx)("code",{className:"font-mono",children:v})]}),e[10]=v,e[11]=b);let N=n&&"rotate-180",j;e[12]===N?j=e[13]:(j=S("h-3.5 w-3.5 shrink-0 transition-transform",N),e[12]=N,e[13]=j);let g;e[14]===j?g=e[15]:(g=(0,t.jsx)(ae,{className:j}),e[14]=j,e[15]=g);let w;e[16]!==n||e[17]!==g||e[18]!==b?(w=(0,t.jsxs)("button",{type:"button",onClick:o,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":n,children:[p,b,g]}),e[16]=n,e[17]=g,e[18]=b,e[19]=w):w=e[19];let _;e[20]!==i||e[21]!==a||e[22]!==n?(_=n&&(0,t.jsxs)("div",{className:"px-3 pb-3 space-y-3 border-t border-(--red-6)/40 pt-3",children:[(0,t.jsx)(A,{input:a}),i&&(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-xs font-semibold text-(--red-11) mb-1",children:"Error"}),(0,t.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:i})]})]}),e[20]=i,e[21]=a,e[22]=n,e[23]=_):_=e[23];let C;return e[24]!==w||e[25]!==_||e[26]!==m?(C=(0,t.jsxs)("div",{className:m,children:[w,_]}),e[24]=w,e[25]=_,e[26]=m,e[27]=C):C=e[27],C};function be(c){return!c}var W=y();function je(c){return c==null?!0:typeof c=="object"?U(c):!1}var ge=K({status:F().default("success"),auth_required:Q().default(!1),action_url:R(),next_steps:R(),meta:R(),message:F().nullish()}),Ne=c=>{let e=(0,W.c)(12),{data:l}=c,a;if(e[0]!==l){let{status:i,auth_required:s,action_url:r,meta:n,next_steps:u,message:x,...d}=l,h;e[2]===Symbol.for("react.memo_cache_sentinel")?(h=(0,t.jsx)("h3",{className:"text-xs font-semibold text-muted-foreground",children:"Tool Result"}),e[2]=h):h=e[2];let m;e[3]===i?m=e[4]:(m=(0,t.jsx)("span",{className:"text-xs px-2 py-0.5 bg-(--grass-2) text-(--grass-11) rounded-full font-medium capitalize",children:i}),e[3]=i,e[4]=m);let o;e[5]===s?o=e[6]:(o=s&&(0,t.jsx)("span",{className:"text-xs px-2 py-0.5 bg-(--amber-2) text-(--amber-11) rounded-full",children:"Auth Required"}),e[5]=s,e[6]=o);let p;e[7]!==m||e[8]!==o?(p=(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[h,(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[m,o]})]}),e[7]=m,e[8]=o,e[9]=p):p=e[9];let f;e[10]===x?f=e[11]:(f=x&&(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[(0,t.jsx)(I,{className:"h-3 w-3 text-(--blue-11) mt-0.5 shrink-0"}),(0,t.jsx)("div",{className:"text-xs text-foreground",children:x})]}),e[10]=x,e[11]=f),a=(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[p,f,d&&(0,t.jsx)("div",{className:"space-y-3",children:Object.entries(d).map(we)})]}),e[0]=l,e[1]=a}else a=e[1];return a};const ye=c=>{let e=(0,W.c)(8),{result:l}=c,a;e[0]===l?a=e[1]:(a=ge.safeParse(l),e[0]=l,e[1]=a);let i=a;if(i.success){let n;return e[2]===i.data?n=e[3]:(n=(0,t.jsx)(Ne,{data:i.data}),e[2]=i.data,e[3]=n),n}let s;e[4]===l?s=e[5]:(s=typeof l=="string"?l:JSON.stringify(l,null,2),e[4]=l,e[5]=s);let r;return e[6]===s?r=e[7]:(r=(0,t.jsx)("div",{className:"text-xs font-medium text-muted-foreground mb-1 max-h-64 overflow-y-auto scrollbar-thin",children:s}),e[6]=s,e[7]=r),r};function we(c){let[e,l]=c;return je(l)?null:(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:e}),(0,t.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 L=y(),_e={"input-streaming":"Generating","input-available":"Running","approval-responded":"Awaiting result","output-available":"Done","output-denied":"Denied"},Se=c=>{let e=(0,L.c)(4),{state:l}=c;switch(l){case"input-streaming":case"input-available":case"approval-responded":{let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(oe,{className:"h-3 w-3 animate-spin"}),e[0]=a):a=e[0],a}case"output-available":{let a;return e[1]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(Y,{className:"h-3 w-3 text-(--grass-11)"}),e[1]=a):a=e[1],a}case"output-denied":{let a;return e[2]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(se,{className:"h-3 w-3 text-muted-foreground"}),e[2]=a):a=e[2],a}default:{T(l);let a;return e[3]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(ie,{className:"h-3 w-3"}),e[3]=a):a=e[3],a}}};function Te(c){switch(c){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(c),""}}const G=c=>{let e=(0,L.c)(29),{toolName:l,state:a,input:i,result:s,approval:r,index:n,className:u}=c,x=`tool-${n===void 0?0:n}`,d;e[0]===u?d=e[1]:(d=S("w-full",u),e[0]=u,e[1]=d);let h;e[2]===a?h=e[3]:(h=S("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",Te(a)),e[2]=a,e[3]=h);let m;e[4]===a?m=e[5]:(m=(0,t.jsx)(Se,{state:a}),e[4]=a,e[5]=m);let o=_e[a],p;e[6]===l?p=e[7]:(p=q(l),e[6]=l,e[7]=p);let f;e[8]===p?f=e[9]:(f=(0,t.jsx)("code",{className:"font-mono text-xs",children:p}),e[8]=p,e[9]=f);let v;e[10]!==m||e[11]!==o||e[12]!==f?(v=(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[m,o,":",f]}),e[10]=m,e[11]=o,e[12]=f,e[13]=v):v=e[13];let b;e[14]!==h||e[15]!==v?(b=(0,t.jsx)(O,{className:h,children:v}),e[14]=h,e[15]=v,e[16]=b):b=e[16];let N;e[17]!==r||e[18]!==i||e[19]!==s||e[20]!==a?(N=(0,t.jsx)(E,{className:"py-2 px-2",children:(0,t.jsx)(ke,{state:a,input:i,result:s,approval:r})}),e[17]=r,e[18]=i,e[19]=s,e[20]=a,e[21]=N):N=e[21];let j;e[22]!==b||e[23]!==N?(j=(0,t.jsxs)($,{value:"tool-call",className:"border-0",children:[b,N]}),e[22]=b,e[23]=N,e[24]=j):j=e[24];let g;return e[25]!==j||e[26]!==x||e[27]!==d?(g=(0,t.jsx)(D,{type:"single",collapsible:!0,className:d,children:j},x),e[25]=j,e[26]=x,e[27]=d,e[28]=g):g=e[28],g};var ke=c=>{let e=(0,L.c)(16),{state:l,input:a,result:i,approval:s}=c;switch(l){case"input-streaming":case"input-available":case"approval-responded":{let r;return e[0]===a?r=e[1]:(r=(0,t.jsx)(A,{input:a}),e[0]=a,e[1]=r),r}case"output-available":{let r;e[2]===a?r=e[3]:(r=(0,t.jsx)(A,{input:a}),e[2]=a,e[3]=r);let n;e[4]===i?n=e[5]:(n=i!=null&&(0,t.jsx)(ye,{result:i}),e[4]=i,e[5]=n);let u;return e[6]!==r||e[7]!==n?(u=(0,t.jsxs)("div",{className:"space-y-3",children:[r,n]}),e[6]=r,e[7]=n,e[8]=u):u=e[8],u}case"output-denied":{let r;e[9]===a?r=e[10]:(r=(0,t.jsx)(A,{input:a}),e[9]=a,e[10]=r);let n=s!=null&&s.reason?`: ${s.reason}`:".",u;e[11]===n?u=e[12]:(u=(0,t.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",n]}),e[11]=n,e[12]=u);let x;return e[13]!==r||e[14]!==u?(x=(0,t.jsxs)("div",{className:"space-y-3",children:[r,u]}),e[13]=r,e[14]=u,e[15]=x):x=e[15],x}default:return T(l),null}},Ae=y();const P=c=>{let e=(0,Ae.c)(25),{toolName:l,state:a,result:i,errorText:s,input:r,approval:n,onApprove:u,index:x,className:d,isLive:h}=c,m=h===void 0?!0:h;switch(a){case"approval-requested":{if(n!=null&&u!=null){let p;return e[0]!==n||e[1]!==d||e[2]!==r||e[3]!==u||e[4]!==l?(p=(0,t.jsx)(he,{toolName:l,input:r,approval:n,onApprove:u,className:d}),e[0]=n,e[1]=d,e[2]=r,e[3]=u,e[4]=l,e[5]=p):p=e[5],p}let o;return e[6]!==d||e[7]!==x||e[8]!==r||e[9]!==l?(o=(0,t.jsx)(G,{toolName:l,state:"input-available",input:r,index:x,className:d}),e[6]=d,e[7]=x,e[8]=r,e[9]=l,e[10]=o):o=e[10],o}case"output-error":{let o;return e[11]!==d||e[12]!==s||e[13]!==r||e[14]!==m||e[15]!==l?(o=(0,t.jsx)(ve,{toolName:l,input:r,errorText:s,isLive:m,className:d}),e[11]=d,e[12]=s,e[13]=r,e[14]=m,e[15]=l,e[16]=o):o=e[16],o}case"input-streaming":case"input-available":case"approval-responded":case"output-available":case"output-denied":{let o;return e[17]!==n||e[18]!==d||e[19]!==x||e[20]!==r||e[21]!==i||e[22]!==a||e[23]!==l?(o=(0,t.jsx)(G,{toolName:l,state:a,input:r,result:i,approval:n,index:x,className:d}),e[17]=n,e[18]=d,e[19]=x,e[20]=r,e[21]=i,e[22]=a,e[23]=l,e[24]=o):o=e[24],o}default:return T(a),null}},Ce=({message:c,isStreamingReasoning:e,isLast:l,addToolApprovalResponse:a})=>{return(0,t.jsx)(t.Fragment,{children:c.parts.map((s,r)=>i(s,r))});function i(s,r){if(qe(s))return(0,t.jsx)(P,{index:r,toolName:s.type,result:s.output,errorText:s.state==="output-error"?s.errorText:void 0,className:"my-2",state:s.state,input:s.input,approval:s.approval,onApprove:a,isLive:l},r);if(Re(s))return Z.debug("Found data part",s),null;switch(s.type){case"text":return s.text.includes("<marimo-")?(0,t.jsx)(k.Fragment,{children:ce({html:s.text})},r):(0,t.jsx)(M,{content:s.text},r);case"reasoning":return(0,t.jsx)(me,{reasoning:s.text,index:r,isStreaming:e&&l&&r===(c.parts.length||0)-1},r);case"file":return(0,t.jsx)(le,{attachment:s},r);case"dynamic-tool":return(0,t.jsx)(P,{toolName:s.toolName,result:s.output,errorText:s.state==="output-error"?s.errorText:void 0,state:s.state,input:s.input,approval:s.approval,onApprove:a,isLive:l},r);case"source-document":return(0,t.jsx)(V,{icon:(0,t.jsx)(H,{className:"h-3 w-3 shrink-0"}),title:s.title,subtitle:s.filename},r);case"source-url":return(0,t.jsx)(V,{icon:(0,t.jsx)(ne,{className:"h-3 w-3 shrink-0"}),title:s.title??s.url,subtitle:s.title?s.url:void 0,href:s.url},r);case"step-start":return null;default:return T(s),null}}};function qe(c){return c.type.startsWith("tool-")}function Re(c){return c.type.startsWith("data-")}export{Ce as t};
@@ -1,3 +1,3 @@
1
- import{s as Ze}from"./chunk-LvLJmgfZ.js";import{d as Lt,f as It,l as Pt,n as me,u as Xe}from"./useEvent-D91BmmQi.js";import{t as Dt}from"./react-Bj1aDYRI.js";import{D as Mt,xr as zt}from"./cells-yL2qMkYn.js";import"./react-dom-CSu739Rf.js";import{t as Qe}from"./compiler-runtime-B3qBwwSJ.js";import{E as Ft,T as Ht,o as Ot,r as et,t as Wt}from"./ai-model-dropdown-tspiiyaT.js";import{_ as Ee,o as oe}from"./useEventListener-DvoEXWke.js";import{n as tt,r as Ut}from"./utils-Cp7O5e1E.js";import{o as Yt}from"./config-CasRXHAM.js";import{t as le}from"./cn-DCUzRj2J.js";import{t as Xt}from"./jsx-runtime-BqBOg78p.js";import{C as he,S as Vt,_ as ke,b as V,h as q,y as qt}from"./fullscreen-eipL3i3Y.js";import{u as Bt}from"./menu-items-DcP01QzW.js";import{i as $t,r as Kt,t as Gt}from"./popover-Bz_0Vkyf.js";import{a as Jt,i as Zt,n as Qt,p as er,r as tr,s as rr,t as or}from"./select-DZcFyKFQ.js";import{i as rt,t as Ve}from"./tooltip-DTV9tlSr.js";import{t as ae}from"./button-BbCh-29a.js";import"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{r as lr}from"./requests-DIwGYs0l.js";import{t as ot}from"./createLucideIcon-D5guW7EU.js";import{t as lt}from"./bot-message-square-DrbHk31W.js";import"./markdown-renderer-3mlKZ6Wa.js";import{A as ar,C as sr,E as nr,M as ir,P as cr,_ as dr,b as ur,c as pr,d as mr,g as hr,h as at,k as st,l as fr,m as xr,n as nt,p as vr,s as gr,u as wr,v as br,x as yr,y as jr}from"./add-cell-with-ai-XU2qpbrH.js";import{n as Sr}from"./spinner-Bhir8k53.js";import{t as Cr}from"./message-circle-CWm2KnSx.js";import{t as Nr}from"./plus-BgB18UzY.js";import{dt as Rr,r as Ar}from"./input-C3Hrdlqq.js";import{t as Tr}from"./settings-DfFe0dWD.js";import{t as _r}from"./chat-display-CHd7vgqs.js";import"./dist-CBSMxaO_.js";import"./dist-CpTFpfm_.js";import"./dist-B1U1kGCR.js";import"./dist-ChF5Ln9c.js";import"./dist-CPczQFlJ.js";import"./session-0B5NBztP.js";import"./purify.es-B9KxLTTS.js";import{s as Er}from"./dates-CTxr0EqQ.js";import{t as kr}from"./copy-icon-OjtDb4gO.js";import{t as Lr}from"./context-QkTujrKn.js";import{r as it,t as Ir}from"./state-B6DTPcu0.js";import{n as Pr}from"./error-banner-LdWZDbqd.js";import"./chunk-5FQGJX7Z-BzXnQz5s.js";import"./html-to-image-CKzwKb6F.js";import"./esm-CqWdmSnV.js";import{t as qe}from"./empty-state-Cjt8SfMh.js";var p=Ze(Dt(),1),l=Ze(Xt(),1);function Dr(e,t){return p.useReducer((r,s)=>t[r][s]??r,e)}var Be="ScrollArea",[ct,hl]=Vt(Be),[Mr,z]=ct(Be),dt=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,type:s="hover",dir:o,scrollHideDelay:a=600,...n}=e,[i,c]=p.useState(null),[u,d]=p.useState(null),[m,h]=p.useState(null),[f,v]=p.useState(null),[C,A]=p.useState(null),[w,S]=p.useState(0),[R,y]=p.useState(0),[j,N]=p.useState(!1),[_,I]=p.useState(!1),g=oe(t,L=>c(L)),E=Bt(o);return(0,l.jsx)(Mr,{scope:r,type:s,dir:E,scrollHideDelay:a,scrollArea:i,viewport:u,onViewportChange:d,content:m,onContentChange:h,scrollbarX:f,onScrollbarXChange:v,scrollbarXEnabled:j,onScrollbarXEnabledChange:N,scrollbarY:C,onScrollbarYChange:A,scrollbarYEnabled:_,onScrollbarYEnabledChange:I,onCornerWidthChange:S,onCornerHeightChange:y,children:(0,l.jsx)(he.div,{dir:E,...n,ref:g,style:{position:"relative","--radix-scroll-area-corner-width":w+"px","--radix-scroll-area-corner-height":R+"px",...e.style}})})});dt.displayName=Be;var ut="ScrollAreaViewport",pt=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,children:s,nonce:o,...a}=e,n=z(ut,r),i=oe(t,p.useRef(null),n.onViewportChange);return(0,l.jsxs)(l.Fragment,{children:[(0,l.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,l.jsx)(he.div,{"data-radix-scroll-area-viewport":"",...a,ref:i,style:{overflowX:n.scrollbarXEnabled?"scroll":"hidden",overflowY:n.scrollbarYEnabled?"scroll":"hidden",...e.style},children:(0,l.jsx)("div",{ref:n.onContentChange,style:{minWidth:"100%",display:"table"},children:s})})]})});pt.displayName=ut;var W="ScrollAreaScrollbar",$e=p.forwardRef((e,t)=>{let{forceMount:r,...s}=e,o=z(W,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:n}=o,i=e.orientation==="horizontal";return p.useEffect(()=>(i?a(!0):n(!0),()=>{i?a(!1):n(!1)}),[i,a,n]),o.type==="hover"?(0,l.jsx)(zr,{...s,ref:t,forceMount:r}):o.type==="scroll"?(0,l.jsx)(Fr,{...s,ref:t,forceMount:r}):o.type==="auto"?(0,l.jsx)(mt,{...s,ref:t,forceMount:r}):o.type==="always"?(0,l.jsx)(Ke,{...s,ref:t}):null});$e.displayName=W;var zr=p.forwardRef((e,t)=>{let{forceMount:r,...s}=e,o=z(W,e.__scopeScrollArea),[a,n]=p.useState(!1);return p.useEffect(()=>{let i=o.scrollArea,c=0;if(i){let u=()=>{window.clearTimeout(c),n(!0)},d=()=>{c=window.setTimeout(()=>n(!1),o.scrollHideDelay)};return i.addEventListener("pointerenter",u),i.addEventListener("pointerleave",d),()=>{window.clearTimeout(c),i.removeEventListener("pointerenter",u),i.removeEventListener("pointerleave",d)}}},[o.scrollArea,o.scrollHideDelay]),(0,l.jsx)(ke,{present:r||a,children:(0,l.jsx)(mt,{"data-state":a?"visible":"hidden",...s,ref:t})})}),Fr=p.forwardRef((e,t)=>{let{forceMount:r,...s}=e,o=z(W,e.__scopeScrollArea),a=e.orientation==="horizontal",n=De(()=>c("SCROLL_END"),100),[i,c]=Dr("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 p.useEffect(()=>{if(i==="idle"){let u=window.setTimeout(()=>c("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(u)}},[i,o.scrollHideDelay,c]),p.useEffect(()=>{let u=o.viewport,d=a?"scrollLeft":"scrollTop";if(u){let m=u[d],h=()=>{let f=u[d];m!==f&&(c("SCROLL"),n()),m=f};return u.addEventListener("scroll",h),()=>u.removeEventListener("scroll",h)}},[o.viewport,a,c,n]),(0,l.jsx)(ke,{present:r||i!=="hidden",children:(0,l.jsx)(Ke,{"data-state":i==="hidden"?"hidden":"visible",...s,ref:t,onPointerEnter:V(e.onPointerEnter,()=>c("POINTER_ENTER")),onPointerLeave:V(e.onPointerLeave,()=>c("POINTER_LEAVE"))})})}),mt=p.forwardRef((e,t)=>{let r=z(W,e.__scopeScrollArea),{forceMount:s,...o}=e,[a,n]=p.useState(!1),i=e.orientation==="horizontal",c=De(()=>{if(r.viewport){let u=r.viewport.offsetWidth<r.viewport.scrollWidth,d=r.viewport.offsetHeight<r.viewport.scrollHeight;n(i?u:d)}},10);return se(r.viewport,c),se(r.content,c),(0,l.jsx)(ke,{present:s||a,children:(0,l.jsx)(Ke,{"data-state":a?"visible":"hidden",...o,ref:t})})}),Ke=p.forwardRef((e,t)=>{let{orientation:r="vertical",...s}=e,o=z(W,e.__scopeScrollArea),a=p.useRef(null),n=p.useRef(0),[i,c]=p.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=gt(i.viewport,i.content),d={...s,sizes:i,onSizesChange:c,hasThumb:u>0&&u<1,onThumbChange:h=>a.current=h,onThumbPointerUp:()=>n.current=0,onThumbPointerDown:h=>n.current=h};function m(h,f){return Xr(h,n.current,i,f)}return r==="horizontal"?(0,l.jsx)(Hr,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&a.current){let h=o.viewport.scrollLeft,f=wt(h,i,o.dir);a.current.style.transform=`translate3d(${f}px, 0, 0)`}},onWheelScroll:h=>{o.viewport&&(o.viewport.scrollLeft=h)},onDragScroll:h=>{o.viewport&&(o.viewport.scrollLeft=m(h,o.dir))}}):r==="vertical"?(0,l.jsx)(Or,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&a.current){let h=o.viewport.scrollTop,f=wt(h,i);a.current.style.transform=`translate3d(0, ${f}px, 0)`}},onWheelScroll:h=>{o.viewport&&(o.viewport.scrollTop=h)},onDragScroll:h=>{o.viewport&&(o.viewport.scrollTop=m(h))}}):null}),Hr=p.forwardRef((e,t)=>{let{sizes:r,onSizesChange:s,...o}=e,a=z(W,e.__scopeScrollArea),[n,i]=p.useState(),c=p.useRef(null),u=oe(t,c,a.onScrollbarXChange);return p.useEffect(()=>{c.current&&i(getComputedStyle(c.current))},[c]),(0,l.jsx)(ft,{"data-orientation":"horizontal",...o,ref:u,sizes:r,style:{bottom:0,left:a.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:a.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":Pe(r)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.x),onDragScroll:d=>e.onDragScroll(d.x),onWheelScroll:(d,m)=>{if(a.viewport){let h=a.viewport.scrollLeft+d.deltaX;e.onWheelScroll(h),yt(h,m)&&d.preventDefault()}},onResize:()=>{c.current&&a.viewport&&n&&s({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:Ie(n.paddingLeft),paddingEnd:Ie(n.paddingRight)}})}})}),Or=p.forwardRef((e,t)=>{let{sizes:r,onSizesChange:s,...o}=e,a=z(W,e.__scopeScrollArea),[n,i]=p.useState(),c=p.useRef(null),u=oe(t,c,a.onScrollbarYChange);return p.useEffect(()=>{c.current&&i(getComputedStyle(c.current))},[c]),(0,l.jsx)(ft,{"data-orientation":"vertical",...o,ref:u,sizes:r,style:{top:0,right:a.dir==="ltr"?0:void 0,left:a.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":Pe(r)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.y),onDragScroll:d=>e.onDragScroll(d.y),onWheelScroll:(d,m)=>{if(a.viewport){let h=a.viewport.scrollTop+d.deltaY;e.onWheelScroll(h),yt(h,m)&&d.preventDefault()}},onResize:()=>{c.current&&a.viewport&&n&&s({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:Ie(n.paddingTop),paddingEnd:Ie(n.paddingBottom)}})}})}),[Wr,ht]=ct(W),ft=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,sizes:s,hasThumb:o,onThumbChange:a,onThumbPointerUp:n,onThumbPointerDown:i,onThumbPositionChange:c,onDragScroll:u,onWheelScroll:d,onResize:m,...h}=e,f=z(W,r),[v,C]=p.useState(null),A=oe(t,g=>C(g)),w=p.useRef(null),S=p.useRef(""),R=f.viewport,y=s.content-s.viewport,j=q(d),N=q(c),_=De(m,10);function I(g){w.current&&u({x:g.clientX-w.current.left,y:g.clientY-w.current.top})}return p.useEffect(()=>{let g=E=>{let L=E.target;v!=null&&v.contains(L)&&j(E,y)};return document.addEventListener("wheel",g,{passive:!1}),()=>document.removeEventListener("wheel",g,{passive:!1})},[R,v,y,j]),p.useEffect(N,[s,N]),se(v,_),se(f.content,_),(0,l.jsx)(Wr,{scope:r,scrollbar:v,hasThumb:o,onThumbChange:q(a),onThumbPointerUp:q(n),onThumbPositionChange:N,onThumbPointerDown:q(i),children:(0,l.jsx)(he.div,{...h,ref:A,style:{position:"absolute",...h.style},onPointerDown:V(e.onPointerDown,g=>{g.button===0&&(g.target.setPointerCapture(g.pointerId),w.current=v.getBoundingClientRect(),S.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",f.viewport&&(f.viewport.style.scrollBehavior="auto"),I(g))}),onPointerMove:V(e.onPointerMove,I),onPointerUp:V(e.onPointerUp,g=>{let E=g.target;E.hasPointerCapture(g.pointerId)&&E.releasePointerCapture(g.pointerId),document.body.style.webkitUserSelect=S.current,f.viewport&&(f.viewport.style.scrollBehavior=""),w.current=null})})})}),Le="ScrollAreaThumb",xt=p.forwardRef((e,t)=>{let{forceMount:r,...s}=e,o=ht(Le,e.__scopeScrollArea);return(0,l.jsx)(ke,{present:r||o.hasThumb,children:(0,l.jsx)(Ur,{ref:t,...s})})}),Ur=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,style:s,...o}=e,a=z(Le,r),n=ht(Le,r),{onThumbPositionChange:i}=n,c=oe(t,m=>n.onThumbChange(m)),u=p.useRef(void 0),d=De(()=>{u.current&&(u.current=(u.current(),void 0))},100);return p.useEffect(()=>{let m=a.viewport;if(m){let h=()=>{d(),u.current||(u.current=Vr(m,i),i())};return i(),m.addEventListener("scroll",h),()=>m.removeEventListener("scroll",h)}},[a.viewport,d,i]),(0,l.jsx)(he.div,{"data-state":n.hasThumb?"visible":"hidden",...o,ref:c,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...s},onPointerDownCapture:V(e.onPointerDownCapture,m=>{let h=m.target.getBoundingClientRect(),f=m.clientX-h.left,v=m.clientY-h.top;n.onThumbPointerDown({x:f,y:v})}),onPointerUp:V(e.onPointerUp,n.onThumbPointerUp)})});xt.displayName=Le;var Ge="ScrollAreaCorner",vt=p.forwardRef((e,t)=>{let r=z(Ge,e.__scopeScrollArea),s=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&s?(0,l.jsx)(Yr,{...e,ref:t}):null});vt.displayName=Ge;var Yr=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,...s}=e,o=z(Ge,r),[a,n]=p.useState(0),[i,c]=p.useState(0),u=!!(a&&i);return se(o.scrollbarX,()=>{var m;let d=((m=o.scrollbarX)==null?void 0:m.offsetHeight)||0;o.onCornerHeightChange(d),c(d)}),se(o.scrollbarY,()=>{var m;let d=((m=o.scrollbarY)==null?void 0:m.offsetWidth)||0;o.onCornerWidthChange(d),n(d)}),u?(0,l.jsx)(he.div,{...s,ref:t,style:{width:a,height:i,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function Ie(e){return e?parseInt(e,10):0}function gt(e,t){let r=e/t;return isNaN(r)?0:r}function Pe(e){let t=gt(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,s=(e.scrollbar.size-r)*t;return Math.max(s,18)}function Xr(e,t,r,s="ltr"){let o=Pe(r),a=o/2,n=t||a,i=o-n,c=r.scrollbar.paddingStart+n,u=r.scrollbar.size-r.scrollbar.paddingEnd-i,d=r.content-r.viewport,m=s==="ltr"?[0,d]:[d*-1,0];return bt([c,u],m)(e)}function wt(e,t,r="ltr"){let s=Pe(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-o,n=t.content-t.viewport,i=a-s,c=er(e,r==="ltr"?[0,n]:[n*-1,0]);return bt([0,n],[0,i])(c)}function bt(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let s=(t[1]-t[0])/(e[1]-e[0]);return t[0]+s*(r-e[0])}}function yt(e,t){return e>0&&e<t}var Vr=(e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},s=0;return(function o(){let a={left:e.scrollLeft,top:e.scrollTop},n=r.left!==a.left,i=r.top!==a.top;(n||i)&&t(),r=a,s=window.requestAnimationFrame(o)})(),()=>window.cancelAnimationFrame(s)};function De(e,t){let r=q(e),s=p.useRef(0);return p.useEffect(()=>()=>window.clearTimeout(s.current),[]),p.useCallback(()=>{window.clearTimeout(s.current),s.current=window.setTimeout(r,t)},[r,t])}function se(e,t){let r=q(t);qt(()=>{let s=0;if(e){let o=new ResizeObserver(()=>{cancelAnimationFrame(s),s=window.requestAnimationFrame(r)});return o.observe(e),()=>{window.cancelAnimationFrame(s),o.unobserve(e)}}},[e,r])}var jt=dt,qr=pt,Br=vt,$r=ot("hat-glasses",[["path",{d:"M14 18a2 2 0 0 0-4 0",key:"1v8fkw"}],["path",{d:"m19 11-2.11-6.657a2 2 0 0 0-2.752-1.148l-1.276.61A2 2 0 0 1 12 4H8.5a2 2 0 0 0-1.925 1.456L5 11",key:"1fkr7p"}],["path",{d:"M2 11h20",key:"3eubbj"}],["circle",{cx:"17",cy:"18",r:"3",key:"82mm0e"}],["circle",{cx:"7",cy:"18",r:"3",key:"lvkj7j"}]]),Kr=ot("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"}]]),St=Qe();const Gr=({chatState:e,chatId:t,messages:r})=>{if(!t)return Ee.warn("No active chat"),e;let s=e.chats.get(t);if(!s)return Ee.warn("No active chat"),e;let o=new Map(e.chats),a=Date.now();return o.set(s.id,{...s,messages:r,updatedAt:a}),{...e,chats:o}};var Ct=p.forwardRef((e,t)=>{let r=(0,St.c)(15),s,o,a;r[0]===e?(s=r[1],o=r[2],a=r[3]):({className:o,children:s,...a}=e,r[0]=e,r[1]=s,r[2]=o,r[3]=a);let n;r[4]===o?n=r[5]:(n=le("relative overflow-hidden",o),r[4]=o,r[5]=n);let i;r[6]===s?i=r[7]:(i=(0,l.jsx)(qr,{className:"h-full w-full rounded-[inherit]",children:s}),r[6]=s,r[7]=i);let c,u;r[8]===Symbol.for("react.memo_cache_sentinel")?(c=(0,l.jsx)(Nt,{}),u=(0,l.jsx)(Br,{}),r[8]=c,r[9]=u):(c=r[8],u=r[9]);let d;return r[10]!==a||r[11]!==t||r[12]!==n||r[13]!==i?(d=(0,l.jsxs)(jt,{ref:t,className:n,...a,children:[i,c,u]}),r[10]=a,r[11]=t,r[12]=n,r[13]=i,r[14]=d):d=r[14],d});Ct.displayName=jt.displayName;var Nt=p.forwardRef((e,t)=>{let r=(0,St.c)(14),s,o,a;r[0]===e?(s=r[1],o=r[2],a=r[3]):({className:s,orientation:a,...o}=e,r[0]=e,r[1]=s,r[2]=o,r[3]=a);let n=a===void 0?"vertical":a,i=n==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-px",c=n==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-px",u;r[4]!==s||r[5]!==i||r[6]!==c?(u=le("flex touch-none select-none transition-colors",i,c,s),r[4]=s,r[5]=i,r[6]=c,r[7]=u):u=r[7];let d;r[8]===Symbol.for("react.memo_cache_sentinel")?(d=(0,l.jsx)(xt,{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]!==t||r[12]!==u?(m=(0,l.jsx)($e,{ref:t,orientation:n,className:u,...o,children:d}),r[9]=n,r[10]=o,r[11]=t,r[12]=u,r[13]=m):m=r[13],m});Nt.displayName=$e.displayName;var Jr=[{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 Zr=e=>{let t=Date.now(),r=Jr.map(a=>({...a,chats:[]})),s={label:"Older",days:1/0,chats:[]},o=a=>{switch(a){case 0:return r[0];case 1:return r[1];case 2:return r[2];case 3:return r[3];default:return a>=4&&a<=7?r[4]:a>=8&&a<=30?r[5]:s}};for(let a of e)o(Math.floor((t-a.updatedAt)/864e5)).chats.push(a);return[...r,s].filter(a=>a.chats.length>0)},Qr=({activeChatId:e,setActiveChat:t})=>{let r=Xe(it),{locale:s}=Lr(),[o,a]=(0,p.useState)(""),n=(0,p.useMemo)(()=>[...r.chats.values()].toSorted((u,d)=>d.updatedAt-u.updatedAt),[r.chats]),i=(0,p.useMemo)(()=>o.trim()?n.filter(u=>u.title.toLowerCase().includes(o.toLowerCase())):n,[n,o]),c=(0,p.useMemo)(()=>Zr(i),[i]);return(0,l.jsxs)(Gt,{children:[(0,l.jsx)(Ve,{content:"Previous chats",children:(0,l.jsx)($t,{asChild:!0,children:(0,l.jsx)(ae,{variant:"text",size:"icon",children:(0,l.jsx)(zt,{className:"h-4 w-4"})})})}),(0,l.jsxs)(Kt,{className:"w-[480px] p-0",align:"start",side:"right",children:[(0,l.jsx)("div",{className:"pt-3 px-3 w-full",children:(0,l.jsx)(Ar,{placeholder:"Search chat history...",value:o,onChange:u=>a(u.target.value),className:"text-xs"})}),(0,l.jsx)(Ct,{className:"h-[450px] p-2",children:(0,l.jsxs)("div",{className:"space-y-3",children:[n.length===0&&(0,l.jsx)(qe,{title:"No chats yet",description:"Start a new chat to get started",icon:(0,l.jsx)(lt,{})}),i.length===0&&o&&n.length>0&&(0,l.jsx)(qe,{title:"No chats found",description:`No chats match "${o}"`,icon:(0,l.jsx)(Rr,{})}),c.map((u,d)=>(0,l.jsxs)("div",{className:"space-y-2",children:[(0,l.jsx)("div",{className:"text-xs px-1 text-muted-foreground/60",children:u.label}),(0,l.jsx)("div",{children:u.chats.map(m=>(0,l.jsxs)("button",{className:le("w-full p-1 rounded-md cursor-pointer text-left flex items-center justify-between",m.id===e&&"bg-accent",m.id!==e&&"hover:bg-muted/20"),onClick:()=>{t(m.id)},type:"button",children:[(0,l.jsx)("div",{className:"flex-1 min-w-0",children:(0,l.jsx)("div",{className:"text-sm truncate",children:m.title})}),(0,l.jsx)("div",{className:"text-xs text-muted-foreground/60 ml-2 flex-shrink-0",children:Er(m.updatedAt,s)})]},m.id))}),d!==c.length-1&&(0,l.jsx)("hr",{})]},u.label))]})})]})]})};var ne=Qe(),Rt="manual",eo=e=>{let t=(0,ne.c)(18),{onNewChat:r,activeChatId:s,setActiveChat:o}=e,{handleClick:a}=et(),n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n=(0,l.jsx)(Nr,{className:"h-4 w-4"}),t[0]=n):n=t[0];let i;t[1]===r?i=t[2]:(i=(0,l.jsx)(Ve,{content:"New chat",children:(0,l.jsx)(ae,{variant:"text",size:"icon",onClick:r,children:n})}),t[1]=r,t[2]=i);let c;t[3]===Symbol.for("react.memo_cache_sentinel")?(c=(0,l.jsx)(Ot,{}),t[3]=c):c=t[3];let u;t[4]===a?u=t[5]:(u=()=>a("ai"),t[4]=a,t[5]=u);let d;t[6]===Symbol.for("react.memo_cache_sentinel")?(d=(0,l.jsx)(Tr,{className:"h-4 w-4"}),t[6]=d):d=t[6];let m;t[7]===u?m=t[8]:(m=(0,l.jsx)(Ve,{content:"AI Settings",children:(0,l.jsx)(ae,{variant:"text",size:"xs",className:"hover:bg-foreground/10 py-2",onClick:u,children:d})}),t[7]=u,t[8]=m);let h;t[9]!==s||t[10]!==o?(h=(0,l.jsx)(Qr,{activeChatId:s,setActiveChat:o}),t[9]=s,t[10]=o,t[11]=h):h=t[11];let f;t[12]!==m||t[13]!==h?(f=(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[c,m,h]}),t[12]=m,t[13]=h,t[14]=f):f=t[14];let v;return t[15]!==i||t[16]!==f?(v=(0,l.jsxs)("div",{className:"flex border-b px-2 py-1 justify-between shrink-0 items-center",children:[i,f]}),t[15]=i,t[16]=f,t[17]=v):v=t[17],v},At=(0,p.memo)(e=>{let t=(0,ne.c)(16),{message:r,index:s,onEdit:o,isStreamingReasoning:a,isLast:n,addToolApprovalResponse:i}=e,c;t[0]!==s||t[1]!==o?(c=A=>{var R,y,j;let w=(y=(R=A.parts)==null?void 0:R.filter(lo))==null?void 0:y.map(ao).join(`
1
+ import{s as Ze}from"./chunk-LvLJmgfZ.js";import{d as Lt,f as It,l as Pt,n as me,u as Xe}from"./useEvent-D91BmmQi.js";import{t as Dt}from"./react-Bj1aDYRI.js";import{D as Mt,xr as zt}from"./cells-1XaQzJBc.js";import"./react-dom-CSu739Rf.js";import{t as Qe}from"./compiler-runtime-B3qBwwSJ.js";import{E as Ft,T as Ht,o as Ot,r as et,t as Wt}from"./ai-model-dropdown-guVuz4cU.js";import{_ as Ee,o as oe}from"./useEventListener-DvoEXWke.js";import{n as tt,r as Ut}from"./utils-Bok_hGT2.js";import{o as Yt}from"./config-hed0CaQL.js";import{t as le}from"./cn-DCUzRj2J.js";import{t as Xt}from"./jsx-runtime-BqBOg78p.js";import{C as he,S as Vt,_ as ke,b as V,h as q,y as qt}from"./fullscreen-eipL3i3Y.js";import{u as Bt}from"./menu-items-DcP01QzW.js";import{i as $t,r as Kt,t as Gt}from"./popover-Bz_0Vkyf.js";import{a as Jt,i as Zt,n as Qt,p as er,r as tr,s as rr,t as or}from"./select-DZcFyKFQ.js";import{i as rt,t as Ve}from"./tooltip-DTV9tlSr.js";import{t as ae}from"./button-BbCh-29a.js";import"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{r as lr}from"./requests-DIwGYs0l.js";import{t as ot}from"./createLucideIcon-D5guW7EU.js";import{t as lt}from"./bot-message-square-DrbHk31W.js";import"./markdown-renderer-BzFpW89-.js";import{A as ar,C as sr,E as nr,M as ir,P as cr,_ as dr,b as ur,c as pr,d as mr,g as hr,h as at,k as st,l as fr,m as xr,n as nt,p as vr,s as gr,u as wr,v as br,x as yr,y as jr}from"./add-cell-with-ai-CV7qdXZ6.js";import{n as Sr}from"./spinner-Bhir8k53.js";import{t as Cr}from"./message-circle-CWm2KnSx.js";import{t as Nr}from"./plus-BgB18UzY.js";import{dt as Rr,r as Ar}from"./input-C3Hrdlqq.js";import{t as Tr}from"./settings-DfFe0dWD.js";import{t as _r}from"./chat-display-DJxt1jsL.js";import"./dist-CBSMxaO_.js";import"./dist-CpTFpfm_.js";import"./dist-B1U1kGCR.js";import"./dist-ChF5Ln9c.js";import"./dist-CPczQFlJ.js";import"./session-0B5NBztP.js";import"./purify.es-B9KxLTTS.js";import{s as Er}from"./dates-CTxr0EqQ.js";import{t as kr}from"./copy-icon-OjtDb4gO.js";import{t as Lr}from"./context-QkTujrKn.js";import{r as it,t as Ir}from"./state-3SH6NVgL.js";import{n as Pr}from"./error-banner-LdWZDbqd.js";import"./chunk-5FQGJX7Z-BzXnQz5s.js";import"./html-to-image-7hWS7hJz.js";import"./esm-CqWdmSnV.js";import{t as qe}from"./empty-state-Cjt8SfMh.js";var p=Ze(Dt(),1),l=Ze(Xt(),1);function Dr(e,t){return p.useReducer((r,s)=>t[r][s]??r,e)}var Be="ScrollArea",[ct,hl]=Vt(Be),[Mr,z]=ct(Be),dt=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,type:s="hover",dir:o,scrollHideDelay:a=600,...n}=e,[i,c]=p.useState(null),[u,d]=p.useState(null),[m,h]=p.useState(null),[f,v]=p.useState(null),[C,A]=p.useState(null),[w,S]=p.useState(0),[R,y]=p.useState(0),[j,N]=p.useState(!1),[_,I]=p.useState(!1),g=oe(t,L=>c(L)),E=Bt(o);return(0,l.jsx)(Mr,{scope:r,type:s,dir:E,scrollHideDelay:a,scrollArea:i,viewport:u,onViewportChange:d,content:m,onContentChange:h,scrollbarX:f,onScrollbarXChange:v,scrollbarXEnabled:j,onScrollbarXEnabledChange:N,scrollbarY:C,onScrollbarYChange:A,scrollbarYEnabled:_,onScrollbarYEnabledChange:I,onCornerWidthChange:S,onCornerHeightChange:y,children:(0,l.jsx)(he.div,{dir:E,...n,ref:g,style:{position:"relative","--radix-scroll-area-corner-width":w+"px","--radix-scroll-area-corner-height":R+"px",...e.style}})})});dt.displayName=Be;var ut="ScrollAreaViewport",pt=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,children:s,nonce:o,...a}=e,n=z(ut,r),i=oe(t,p.useRef(null),n.onViewportChange);return(0,l.jsxs)(l.Fragment,{children:[(0,l.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,l.jsx)(he.div,{"data-radix-scroll-area-viewport":"",...a,ref:i,style:{overflowX:n.scrollbarXEnabled?"scroll":"hidden",overflowY:n.scrollbarYEnabled?"scroll":"hidden",...e.style},children:(0,l.jsx)("div",{ref:n.onContentChange,style:{minWidth:"100%",display:"table"},children:s})})]})});pt.displayName=ut;var W="ScrollAreaScrollbar",$e=p.forwardRef((e,t)=>{let{forceMount:r,...s}=e,o=z(W,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:n}=o,i=e.orientation==="horizontal";return p.useEffect(()=>(i?a(!0):n(!0),()=>{i?a(!1):n(!1)}),[i,a,n]),o.type==="hover"?(0,l.jsx)(zr,{...s,ref:t,forceMount:r}):o.type==="scroll"?(0,l.jsx)(Fr,{...s,ref:t,forceMount:r}):o.type==="auto"?(0,l.jsx)(mt,{...s,ref:t,forceMount:r}):o.type==="always"?(0,l.jsx)(Ke,{...s,ref:t}):null});$e.displayName=W;var zr=p.forwardRef((e,t)=>{let{forceMount:r,...s}=e,o=z(W,e.__scopeScrollArea),[a,n]=p.useState(!1);return p.useEffect(()=>{let i=o.scrollArea,c=0;if(i){let u=()=>{window.clearTimeout(c),n(!0)},d=()=>{c=window.setTimeout(()=>n(!1),o.scrollHideDelay)};return i.addEventListener("pointerenter",u),i.addEventListener("pointerleave",d),()=>{window.clearTimeout(c),i.removeEventListener("pointerenter",u),i.removeEventListener("pointerleave",d)}}},[o.scrollArea,o.scrollHideDelay]),(0,l.jsx)(ke,{present:r||a,children:(0,l.jsx)(mt,{"data-state":a?"visible":"hidden",...s,ref:t})})}),Fr=p.forwardRef((e,t)=>{let{forceMount:r,...s}=e,o=z(W,e.__scopeScrollArea),a=e.orientation==="horizontal",n=De(()=>c("SCROLL_END"),100),[i,c]=Dr("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 p.useEffect(()=>{if(i==="idle"){let u=window.setTimeout(()=>c("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(u)}},[i,o.scrollHideDelay,c]),p.useEffect(()=>{let u=o.viewport,d=a?"scrollLeft":"scrollTop";if(u){let m=u[d],h=()=>{let f=u[d];m!==f&&(c("SCROLL"),n()),m=f};return u.addEventListener("scroll",h),()=>u.removeEventListener("scroll",h)}},[o.viewport,a,c,n]),(0,l.jsx)(ke,{present:r||i!=="hidden",children:(0,l.jsx)(Ke,{"data-state":i==="hidden"?"hidden":"visible",...s,ref:t,onPointerEnter:V(e.onPointerEnter,()=>c("POINTER_ENTER")),onPointerLeave:V(e.onPointerLeave,()=>c("POINTER_LEAVE"))})})}),mt=p.forwardRef((e,t)=>{let r=z(W,e.__scopeScrollArea),{forceMount:s,...o}=e,[a,n]=p.useState(!1),i=e.orientation==="horizontal",c=De(()=>{if(r.viewport){let u=r.viewport.offsetWidth<r.viewport.scrollWidth,d=r.viewport.offsetHeight<r.viewport.scrollHeight;n(i?u:d)}},10);return se(r.viewport,c),se(r.content,c),(0,l.jsx)(ke,{present:s||a,children:(0,l.jsx)(Ke,{"data-state":a?"visible":"hidden",...o,ref:t})})}),Ke=p.forwardRef((e,t)=>{let{orientation:r="vertical",...s}=e,o=z(W,e.__scopeScrollArea),a=p.useRef(null),n=p.useRef(0),[i,c]=p.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=gt(i.viewport,i.content),d={...s,sizes:i,onSizesChange:c,hasThumb:u>0&&u<1,onThumbChange:h=>a.current=h,onThumbPointerUp:()=>n.current=0,onThumbPointerDown:h=>n.current=h};function m(h,f){return Xr(h,n.current,i,f)}return r==="horizontal"?(0,l.jsx)(Hr,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&a.current){let h=o.viewport.scrollLeft,f=wt(h,i,o.dir);a.current.style.transform=`translate3d(${f}px, 0, 0)`}},onWheelScroll:h=>{o.viewport&&(o.viewport.scrollLeft=h)},onDragScroll:h=>{o.viewport&&(o.viewport.scrollLeft=m(h,o.dir))}}):r==="vertical"?(0,l.jsx)(Or,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&a.current){let h=o.viewport.scrollTop,f=wt(h,i);a.current.style.transform=`translate3d(0, ${f}px, 0)`}},onWheelScroll:h=>{o.viewport&&(o.viewport.scrollTop=h)},onDragScroll:h=>{o.viewport&&(o.viewport.scrollTop=m(h))}}):null}),Hr=p.forwardRef((e,t)=>{let{sizes:r,onSizesChange:s,...o}=e,a=z(W,e.__scopeScrollArea),[n,i]=p.useState(),c=p.useRef(null),u=oe(t,c,a.onScrollbarXChange);return p.useEffect(()=>{c.current&&i(getComputedStyle(c.current))},[c]),(0,l.jsx)(ft,{"data-orientation":"horizontal",...o,ref:u,sizes:r,style:{bottom:0,left:a.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:a.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":Pe(r)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.x),onDragScroll:d=>e.onDragScroll(d.x),onWheelScroll:(d,m)=>{if(a.viewport){let h=a.viewport.scrollLeft+d.deltaX;e.onWheelScroll(h),yt(h,m)&&d.preventDefault()}},onResize:()=>{c.current&&a.viewport&&n&&s({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:Ie(n.paddingLeft),paddingEnd:Ie(n.paddingRight)}})}})}),Or=p.forwardRef((e,t)=>{let{sizes:r,onSizesChange:s,...o}=e,a=z(W,e.__scopeScrollArea),[n,i]=p.useState(),c=p.useRef(null),u=oe(t,c,a.onScrollbarYChange);return p.useEffect(()=>{c.current&&i(getComputedStyle(c.current))},[c]),(0,l.jsx)(ft,{"data-orientation":"vertical",...o,ref:u,sizes:r,style:{top:0,right:a.dir==="ltr"?0:void 0,left:a.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":Pe(r)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.y),onDragScroll:d=>e.onDragScroll(d.y),onWheelScroll:(d,m)=>{if(a.viewport){let h=a.viewport.scrollTop+d.deltaY;e.onWheelScroll(h),yt(h,m)&&d.preventDefault()}},onResize:()=>{c.current&&a.viewport&&n&&s({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:Ie(n.paddingTop),paddingEnd:Ie(n.paddingBottom)}})}})}),[Wr,ht]=ct(W),ft=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,sizes:s,hasThumb:o,onThumbChange:a,onThumbPointerUp:n,onThumbPointerDown:i,onThumbPositionChange:c,onDragScroll:u,onWheelScroll:d,onResize:m,...h}=e,f=z(W,r),[v,C]=p.useState(null),A=oe(t,g=>C(g)),w=p.useRef(null),S=p.useRef(""),R=f.viewport,y=s.content-s.viewport,j=q(d),N=q(c),_=De(m,10);function I(g){w.current&&u({x:g.clientX-w.current.left,y:g.clientY-w.current.top})}return p.useEffect(()=>{let g=E=>{let L=E.target;v!=null&&v.contains(L)&&j(E,y)};return document.addEventListener("wheel",g,{passive:!1}),()=>document.removeEventListener("wheel",g,{passive:!1})},[R,v,y,j]),p.useEffect(N,[s,N]),se(v,_),se(f.content,_),(0,l.jsx)(Wr,{scope:r,scrollbar:v,hasThumb:o,onThumbChange:q(a),onThumbPointerUp:q(n),onThumbPositionChange:N,onThumbPointerDown:q(i),children:(0,l.jsx)(he.div,{...h,ref:A,style:{position:"absolute",...h.style},onPointerDown:V(e.onPointerDown,g=>{g.button===0&&(g.target.setPointerCapture(g.pointerId),w.current=v.getBoundingClientRect(),S.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",f.viewport&&(f.viewport.style.scrollBehavior="auto"),I(g))}),onPointerMove:V(e.onPointerMove,I),onPointerUp:V(e.onPointerUp,g=>{let E=g.target;E.hasPointerCapture(g.pointerId)&&E.releasePointerCapture(g.pointerId),document.body.style.webkitUserSelect=S.current,f.viewport&&(f.viewport.style.scrollBehavior=""),w.current=null})})})}),Le="ScrollAreaThumb",xt=p.forwardRef((e,t)=>{let{forceMount:r,...s}=e,o=ht(Le,e.__scopeScrollArea);return(0,l.jsx)(ke,{present:r||o.hasThumb,children:(0,l.jsx)(Ur,{ref:t,...s})})}),Ur=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,style:s,...o}=e,a=z(Le,r),n=ht(Le,r),{onThumbPositionChange:i}=n,c=oe(t,m=>n.onThumbChange(m)),u=p.useRef(void 0),d=De(()=>{u.current&&(u.current=(u.current(),void 0))},100);return p.useEffect(()=>{let m=a.viewport;if(m){let h=()=>{d(),u.current||(u.current=Vr(m,i),i())};return i(),m.addEventListener("scroll",h),()=>m.removeEventListener("scroll",h)}},[a.viewport,d,i]),(0,l.jsx)(he.div,{"data-state":n.hasThumb?"visible":"hidden",...o,ref:c,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...s},onPointerDownCapture:V(e.onPointerDownCapture,m=>{let h=m.target.getBoundingClientRect(),f=m.clientX-h.left,v=m.clientY-h.top;n.onThumbPointerDown({x:f,y:v})}),onPointerUp:V(e.onPointerUp,n.onThumbPointerUp)})});xt.displayName=Le;var Ge="ScrollAreaCorner",vt=p.forwardRef((e,t)=>{let r=z(Ge,e.__scopeScrollArea),s=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&s?(0,l.jsx)(Yr,{...e,ref:t}):null});vt.displayName=Ge;var Yr=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,...s}=e,o=z(Ge,r),[a,n]=p.useState(0),[i,c]=p.useState(0),u=!!(a&&i);return se(o.scrollbarX,()=>{var m;let d=((m=o.scrollbarX)==null?void 0:m.offsetHeight)||0;o.onCornerHeightChange(d),c(d)}),se(o.scrollbarY,()=>{var m;let d=((m=o.scrollbarY)==null?void 0:m.offsetWidth)||0;o.onCornerWidthChange(d),n(d)}),u?(0,l.jsx)(he.div,{...s,ref:t,style:{width:a,height:i,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function Ie(e){return e?parseInt(e,10):0}function gt(e,t){let r=e/t;return isNaN(r)?0:r}function Pe(e){let t=gt(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,s=(e.scrollbar.size-r)*t;return Math.max(s,18)}function Xr(e,t,r,s="ltr"){let o=Pe(r),a=o/2,n=t||a,i=o-n,c=r.scrollbar.paddingStart+n,u=r.scrollbar.size-r.scrollbar.paddingEnd-i,d=r.content-r.viewport,m=s==="ltr"?[0,d]:[d*-1,0];return bt([c,u],m)(e)}function wt(e,t,r="ltr"){let s=Pe(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-o,n=t.content-t.viewport,i=a-s,c=er(e,r==="ltr"?[0,n]:[n*-1,0]);return bt([0,n],[0,i])(c)}function bt(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let s=(t[1]-t[0])/(e[1]-e[0]);return t[0]+s*(r-e[0])}}function yt(e,t){return e>0&&e<t}var Vr=(e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},s=0;return(function o(){let a={left:e.scrollLeft,top:e.scrollTop},n=r.left!==a.left,i=r.top!==a.top;(n||i)&&t(),r=a,s=window.requestAnimationFrame(o)})(),()=>window.cancelAnimationFrame(s)};function De(e,t){let r=q(e),s=p.useRef(0);return p.useEffect(()=>()=>window.clearTimeout(s.current),[]),p.useCallback(()=>{window.clearTimeout(s.current),s.current=window.setTimeout(r,t)},[r,t])}function se(e,t){let r=q(t);qt(()=>{let s=0;if(e){let o=new ResizeObserver(()=>{cancelAnimationFrame(s),s=window.requestAnimationFrame(r)});return o.observe(e),()=>{window.cancelAnimationFrame(s),o.unobserve(e)}}},[e,r])}var jt=dt,qr=pt,Br=vt,$r=ot("hat-glasses",[["path",{d:"M14 18a2 2 0 0 0-4 0",key:"1v8fkw"}],["path",{d:"m19 11-2.11-6.657a2 2 0 0 0-2.752-1.148l-1.276.61A2 2 0 0 1 12 4H8.5a2 2 0 0 0-1.925 1.456L5 11",key:"1fkr7p"}],["path",{d:"M2 11h20",key:"3eubbj"}],["circle",{cx:"17",cy:"18",r:"3",key:"82mm0e"}],["circle",{cx:"7",cy:"18",r:"3",key:"lvkj7j"}]]),Kr=ot("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"}]]),St=Qe();const Gr=({chatState:e,chatId:t,messages:r})=>{if(!t)return Ee.warn("No active chat"),e;let s=e.chats.get(t);if(!s)return Ee.warn("No active chat"),e;let o=new Map(e.chats),a=Date.now();return o.set(s.id,{...s,messages:r,updatedAt:a}),{...e,chats:o}};var Ct=p.forwardRef((e,t)=>{let r=(0,St.c)(15),s,o,a;r[0]===e?(s=r[1],o=r[2],a=r[3]):({className:o,children:s,...a}=e,r[0]=e,r[1]=s,r[2]=o,r[3]=a);let n;r[4]===o?n=r[5]:(n=le("relative overflow-hidden",o),r[4]=o,r[5]=n);let i;r[6]===s?i=r[7]:(i=(0,l.jsx)(qr,{className:"h-full w-full rounded-[inherit]",children:s}),r[6]=s,r[7]=i);let c,u;r[8]===Symbol.for("react.memo_cache_sentinel")?(c=(0,l.jsx)(Nt,{}),u=(0,l.jsx)(Br,{}),r[8]=c,r[9]=u):(c=r[8],u=r[9]);let d;return r[10]!==a||r[11]!==t||r[12]!==n||r[13]!==i?(d=(0,l.jsxs)(jt,{ref:t,className:n,...a,children:[i,c,u]}),r[10]=a,r[11]=t,r[12]=n,r[13]=i,r[14]=d):d=r[14],d});Ct.displayName=jt.displayName;var Nt=p.forwardRef((e,t)=>{let r=(0,St.c)(14),s,o,a;r[0]===e?(s=r[1],o=r[2],a=r[3]):({className:s,orientation:a,...o}=e,r[0]=e,r[1]=s,r[2]=o,r[3]=a);let n=a===void 0?"vertical":a,i=n==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-px",c=n==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-px",u;r[4]!==s||r[5]!==i||r[6]!==c?(u=le("flex touch-none select-none transition-colors",i,c,s),r[4]=s,r[5]=i,r[6]=c,r[7]=u):u=r[7];let d;r[8]===Symbol.for("react.memo_cache_sentinel")?(d=(0,l.jsx)(xt,{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]!==t||r[12]!==u?(m=(0,l.jsx)($e,{ref:t,orientation:n,className:u,...o,children:d}),r[9]=n,r[10]=o,r[11]=t,r[12]=u,r[13]=m):m=r[13],m});Nt.displayName=$e.displayName;var Jr=[{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 Zr=e=>{let t=Date.now(),r=Jr.map(a=>({...a,chats:[]})),s={label:"Older",days:1/0,chats:[]},o=a=>{switch(a){case 0:return r[0];case 1:return r[1];case 2:return r[2];case 3:return r[3];default:return a>=4&&a<=7?r[4]:a>=8&&a<=30?r[5]:s}};for(let a of e)o(Math.floor((t-a.updatedAt)/864e5)).chats.push(a);return[...r,s].filter(a=>a.chats.length>0)},Qr=({activeChatId:e,setActiveChat:t})=>{let r=Xe(it),{locale:s}=Lr(),[o,a]=(0,p.useState)(""),n=(0,p.useMemo)(()=>[...r.chats.values()].toSorted((u,d)=>d.updatedAt-u.updatedAt),[r.chats]),i=(0,p.useMemo)(()=>o.trim()?n.filter(u=>u.title.toLowerCase().includes(o.toLowerCase())):n,[n,o]),c=(0,p.useMemo)(()=>Zr(i),[i]);return(0,l.jsxs)(Gt,{children:[(0,l.jsx)(Ve,{content:"Previous chats",children:(0,l.jsx)($t,{asChild:!0,children:(0,l.jsx)(ae,{variant:"text",size:"icon",children:(0,l.jsx)(zt,{className:"h-4 w-4"})})})}),(0,l.jsxs)(Kt,{className:"w-[480px] p-0",align:"start",side:"right",children:[(0,l.jsx)("div",{className:"pt-3 px-3 w-full",children:(0,l.jsx)(Ar,{placeholder:"Search chat history...",value:o,onChange:u=>a(u.target.value),className:"text-xs"})}),(0,l.jsx)(Ct,{className:"h-[450px] p-2",children:(0,l.jsxs)("div",{className:"space-y-3",children:[n.length===0&&(0,l.jsx)(qe,{title:"No chats yet",description:"Start a new chat to get started",icon:(0,l.jsx)(lt,{})}),i.length===0&&o&&n.length>0&&(0,l.jsx)(qe,{title:"No chats found",description:`No chats match "${o}"`,icon:(0,l.jsx)(Rr,{})}),c.map((u,d)=>(0,l.jsxs)("div",{className:"space-y-2",children:[(0,l.jsx)("div",{className:"text-xs px-1 text-muted-foreground/60",children:u.label}),(0,l.jsx)("div",{children:u.chats.map(m=>(0,l.jsxs)("button",{className:le("w-full p-1 rounded-md cursor-pointer text-left flex items-center justify-between",m.id===e&&"bg-accent",m.id!==e&&"hover:bg-muted/20"),onClick:()=>{t(m.id)},type:"button",children:[(0,l.jsx)("div",{className:"flex-1 min-w-0",children:(0,l.jsx)("div",{className:"text-sm truncate",children:m.title})}),(0,l.jsx)("div",{className:"text-xs text-muted-foreground/60 ml-2 flex-shrink-0",children:Er(m.updatedAt,s)})]},m.id))}),d!==c.length-1&&(0,l.jsx)("hr",{})]},u.label))]})})]})]})};var ne=Qe(),Rt="manual",eo=e=>{let t=(0,ne.c)(18),{onNewChat:r,activeChatId:s,setActiveChat:o}=e,{handleClick:a}=et(),n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n=(0,l.jsx)(Nr,{className:"h-4 w-4"}),t[0]=n):n=t[0];let i;t[1]===r?i=t[2]:(i=(0,l.jsx)(Ve,{content:"New chat",children:(0,l.jsx)(ae,{variant:"text",size:"icon",onClick:r,children:n})}),t[1]=r,t[2]=i);let c;t[3]===Symbol.for("react.memo_cache_sentinel")?(c=(0,l.jsx)(Ot,{}),t[3]=c):c=t[3];let u;t[4]===a?u=t[5]:(u=()=>a("ai"),t[4]=a,t[5]=u);let d;t[6]===Symbol.for("react.memo_cache_sentinel")?(d=(0,l.jsx)(Tr,{className:"h-4 w-4"}),t[6]=d):d=t[6];let m;t[7]===u?m=t[8]:(m=(0,l.jsx)(Ve,{content:"AI Settings",children:(0,l.jsx)(ae,{variant:"text",size:"xs",className:"hover:bg-foreground/10 py-2",onClick:u,children:d})}),t[7]=u,t[8]=m);let h;t[9]!==s||t[10]!==o?(h=(0,l.jsx)(Qr,{activeChatId:s,setActiveChat:o}),t[9]=s,t[10]=o,t[11]=h):h=t[11];let f;t[12]!==m||t[13]!==h?(f=(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[c,m,h]}),t[12]=m,t[13]=h,t[14]=f):f=t[14];let v;return t[15]!==i||t[16]!==f?(v=(0,l.jsxs)("div",{className:"flex border-b px-2 py-1 justify-between shrink-0 items-center",children:[i,f]}),t[15]=i,t[16]=f,t[17]=v):v=t[17],v},At=(0,p.memo)(e=>{let t=(0,ne.c)(16),{message:r,index:s,onEdit:o,isStreamingReasoning:a,isLast:n,addToolApprovalResponse:i}=e,c;t[0]!==s||t[1]!==o?(c=A=>{var R,y,j;let w=(y=(R=A.parts)==null?void 0:R.filter(lo))==null?void 0:y.map(ao).join(`
2
2
  `),S=(j=A.parts)==null?void 0:j.filter(so);return(0,l.jsxs)("div",{className:"w-[95%] bg-background border p-1 rounded-sm",children:[S==null?void 0:S.map(no),(0,l.jsx)(nt,{value:w,placeholder:"Type your message...",onChange:io,onSubmit:(N,_)=>{_.trim()&&o(s,_)},onClose:co},A.id)]})},t[0]=s,t[1]=o,t[2]=c):c=t[2];let u=c,d;t[3]!==i||t[4]!==n||t[5]!==a?(d=A=>(0,l.jsxs)("div",{className:"w-[95%] wrap-break-word",children:[(0,l.jsx)("div",{className:"absolute right-1 top-1 opacity-0 group-hover:opacity-100 transition-opacity",children:(0,l.jsx)(kr,{className:"h-3 w-3",value:A.parts.filter(uo).map(po).join(`
3
3
  `)||""})}),_r({message:A,isStreamingReasoning:a,isLast:n,addToolApprovalResponse:i})]}),t[3]=i,t[4]=n,t[5]=a,t[6]=d):d=t[6];let m=d,h=r.role==="user"?"justify-end":"justify-start",f;t[7]===h?f=t[8]:(f=le("flex group relative",h),t[7]=h,t[8]=f);let v;t[9]!==r||t[10]!==m||t[11]!==u?(v=r.role==="user"?u(r):m(r),t[9]=r,t[10]=m,t[11]=u,t[12]=v):v=t[12];let C;return t[13]!==f||t[14]!==v?(C=(0,l.jsx)("div",{className:f,children:v}),t[13]=f,t[14]=v,t[15]=C):C=t[15],C});At.displayName="ChatMessage";var Tt=(0,p.memo)(e=>{var D,U;let t=(0,ne.c)(39),{isEmpty:r,onSendClick:s,isLoading:o,onStop:a,fileInputRef:n,onAddFiles:i,onAddContext:c}=e,u=Xe(tt),d=(u==null?void 0:u.mode)||Rt,m=((D=u==null?void 0:u.models)==null?void 0:D.chat_model)||"openai/gpt-4o",h=Ht.parse(m).providerId,{saveModeChange:f}=Ft(),v;t[0]===Symbol.for("react.memo_cache_sentinel")?(v=[{value:"manual",label:"Manual",subtitle:"Pure chat, no tool usage",Icon:Cr},{value:"ask",label:"Ask",subtitle:"Use AI with access to read-only tools like documentation search",Icon:Kr},{value:"agent",label:"Agent (beta)",subtitle:"Use AI with access to read and write tools",Icon:$r}],t[0]=v):v=t[0];let C=v,A=vr.has(h),w=(U=C.find(fe=>fe.value===d))==null?void 0:U.Icon,S;t[1]===w?S=t[2]:(S=w&&(0,l.jsx)(w,{className:"h-3 w-3"}),t[1]=w,t[2]=S);let R;t[3]===d?R=t[4]:(R=(0,l.jsx)("span",{className:"capitalize",children:d}),t[3]=d,t[4]=R);let y;t[5]!==S||t[6]!==R?(y=(0,l.jsxs)(rr,{className:"h-6 text-xs border-border shadow-none! ring-0! bg-muted hover:bg-muted/30 py-0 px-2 gap-1.5",children:[S,R]}),t[5]=S,t[6]=R,t[7]=y):y=t[7];let j;t[8]===Symbol.for("react.memo_cache_sentinel")?(j=(0,l.jsx)(Jt,{className:"text-xs uppercase tracking-wider text-muted-foreground/70 font-medium",children:"AI Mode"}),t[8]=j):j=t[8];let N;t[9]===C?N=t[10]:(N=(0,l.jsx)(Qt,{children:(0,l.jsxs)(tr,{children:[j,C.map(mo)]})}),t[9]=C,t[10]=N);let _;t[11]!==d||t[12]!==f||t[13]!==y||t[14]!==N?(_=(0,l.jsxs)(or,{value:d,onValueChange:f,children:[y,N]}),t[11]=d,t[12]=f,t[13]=y,t[14]=N,t[15]=_):_=t[15];let I;t[16]===Symbol.for("react.memo_cache_sentinel")?(I=(0,l.jsx)(Wt,{placeholder:"Model",triggerClassName:"h-6 text-xs shadow-none! ring-0! bg-muted hover:bg-muted/30 rounded-sm",iconSize:"small",showAddCustomModelDocs:!0,forRole:"chat"}),t[16]=I):I=t[16];let g;t[17]===_?g=t[18]:(g=(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[_,I]}),t[17]=_,t[18]=g);let E;t[19]!==o||t[20]!==c?(E=(0,l.jsx)(gr,{handleAddContext:c,isLoading:o}),t[19]=o,t[20]=c,t[21]=E):E=t[21];let L;t[22]!==n||t[23]!==A||t[24]!==o||t[25]!==i?(L=A&&(0,l.jsx)(pr,{fileInputRef:n,isLoading:o,onAddFiles:i}),t[22]=n,t[23]=A,t[24]=o,t[25]=i,t[26]=L):L=t[26];let F;t[27]!==r||t[28]!==o||t[29]!==s||t[30]!==a?(F=(0,l.jsx)(mr,{isLoading:o,onStop:a,onSendClick:s,isEmpty:r}),t[27]=r,t[28]=o,t[29]=s,t[30]=a,t[31]=F):F=t[31];let H;t[32]!==E||t[33]!==L||t[34]!==F?(H=(0,l.jsxs)("div",{className:"flex flex-row",children:[E,L,F]}),t[32]=E,t[33]=L,t[34]=F,t[35]=H):H=t[35];let T;return t[36]!==H||t[37]!==g?(T=(0,l.jsx)(rt,{children:(0,l.jsxs)("div",{className:"px-3 py-2 border-t border-border/20 flex flex-row flex-wrap items-center justify-between gap-1",children:[g,H]})}),t[36]=H,t[37]=g,t[38]=T):T=t[38],T});Tt.displayName="ChatInputFooter";var Je=(0,p.memo)(e=>{let t=(0,ne.c)(29),{placeholder:r,input:s,inputClassName:o,setInput:a,onSubmit:n,inputRef:i,isLoading:c,onStop:u,fileInputRef:d,onAddFiles:m,onClose:h}=e,f;t[0]!==s||t[1]!==n?(f=()=>{s.trim()&&n(void 0,s)},t[0]=s,t[1]=n,t[2]=f):f=t[2];let v=me(f),C;t[3]===o?C=t[4]:(C=le("px-2 py-3 flex-1",o),t[3]=o,t[4]=C);let A=r||"Type your message...",w;t[5]!==s||t[6]!==i||t[7]!==m||t[8]!==h||t[9]!==n||t[10]!==a||t[11]!==A?(w=(0,l.jsx)(nt,{inputRef:i,value:s,onChange:a,onSubmit:n,onClose:h,onAddFiles:m,placeholder:A}),t[5]=s,t[6]=i,t[7]=m,t[8]=h,t[9]=n,t[10]=a,t[11]=A,t[12]=w):w=t[12];let S;t[13]!==C||t[14]!==w?(S=(0,l.jsx)("div",{className:C,children:w}),t[13]=C,t[14]=w,t[15]=S):S=t[15];let R=!s.trim(),y;t[16]===i?y=t[17]:(y=()=>nr(i),t[16]=i,t[17]=y);let j;t[18]!==d||t[19]!==v||t[20]!==c||t[21]!==m||t[22]!==u||t[23]!==R||t[24]!==y?(j=(0,l.jsx)(Tt,{isEmpty:R,onAddContext:y,onSendClick:v,isLoading:c,onStop:u,fileInputRef:d,onAddFiles:m}),t[18]=d,t[19]=v,t[20]=c,t[21]=m,t[22]=u,t[23]=R,t[24]=y,t[25]=j):j=t[25];let N;return t[26]!==S||t[27]!==j?(N=(0,l.jsxs)("div",{className:"relative shrink-0 min-h-[80px] flex flex-col border-t",children:[S,j]}),t[26]=S,t[27]=j,t[28]=N):N=t[28],N});Je.displayName="ChatInput";var to=()=>{let e=(0,ne.c)(6),t=Xe(Ut),{handleClick:r}=et();if(!t){let o;e[0]===r?o=e[1]:(o=(0,l.jsx)(ae,{variant:"outline",size:"sm",onClick:()=>r("ai","ai-providers"),children:"Edit AI settings"}),e[0]=r,e[1]=o);let a;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=(0,l.jsx)(lt,{}),e[2]=a):a=e[2];let n;return e[3]===o?n=e[4]:(n=(0,l.jsx)(qe,{title:"Chat with AI",description:"No AI provider configured or Chat model not selected",action:o,icon:a}),e[3]=o,e[4]=n),n}let s;return e[5]===Symbol.for("react.memo_cache_sentinel")?(s=(0,l.jsx)(ro,{}),e[5]=s):s=e[5],s},ro=()=>{let e=(0,ne.c)(97),t=Lt(it),[r,s]=Pt(Ir),[o,a]=(0,p.useState)(""),[n,i]=(0,p.useState)(""),{files:c,addFiles:u,clearFiles:d,removeFile:m}=ur(),h=(0,p.useRef)(null),f=(0,p.useRef)(null),v=(0,p.useRef)(null),C=(0,p.useRef)(null),A=(0,p.useRef)(null),w=Yt(),{invokeAiTool:S,sendRun:R}=lr(),y=r==null?void 0:r.id,j=It(),{addStagedCell:N}=sr(),{createNewCell:_,prepareForRun:I}=Mt(),g;e[0]!==N||e[1]!==_||e[2]!==I||e[3]!==R||e[4]!==j?(g={addStagedCell:N,createNewCell:_,prepareForRun:I,sendRun:R,store:j},e[0]=N,e[1]=_,e[2]=I,e[3]=R,e[4]=j,e[5]=g):g=e[5];let E=g,L;e[6]===(r==null?void 0:r.messages)?L=e[7]:(L=(r==null?void 0:r.messages)||[],e[6]=r==null?void 0:r.messages,e[7]=L);let F;if(e[8]!==w||e[9]!==j){let x;e[11]===w?x=e[12]:(x=()=>w.headers(),e[11]=w,e[12]=x),F=new ir({api:w.getAiURL("chat").toString(),headers:x,prepareSendMessagesRequest:async b=>{var pe;let k=await cr({messages:b.messages});k.success||Ee.debug("Outgoing chat messages failed AI SDK schema validation",k.error);let O=await xr(b.messages),ue=((pe=j.get(tt))==null?void 0:pe.mode)||Rt,X=yr.getToolSchemas(ue);return{api:w.getAiURL("chat").toString(),body:{tools:X,...b,...O}}}}),e[8]=w,e[9]=j,e[10]=F}else F=e[10];let H;e[13]===t?H=e[14]:(H=x=>{let{messages:b}=x;t(k=>Gr({chatState:k,chatId:k.activeChatId,messages:b}))},e[13]=t,e[14]=H);let{messages:T,sendMessage:D,error:U,status:fe,regenerate:Me,stop:Y,addToolOutput:_t,addToolApprovalResponse:ie,id:ze}=ar({id:y,sendAutomaticallyWhen:ho,messages:L,transport:F,onFinish:H,onToolCall:async x=>{let{toolCall:b}=x;await dr({invokeAiTool:S,addToolOutput:Et,toolCall:{toolName:b.toolName,toolCallId:b.toolCallId,input:b.input},toolContext:E})},onError:fo}),Et=_t,P=fe==="submitted"||fe==="streaming",xe;e[15]!==P||e[16]!==T?(xe=P&&T.length>0&&jr(T),e[15]=P,e[16]=T,e[17]=xe):xe=e[17];let ce=xe,ve;e[18]===Symbol.for("react.memo_cache_sentinel")?(ve=()=>{requestAnimationFrame(()=>{if(v.current){let x=v.current;x.scrollTop=x.scrollHeight}})},e[18]=ve):ve=e[18];let ge;e[19]===y?ge=e[20]:(ge=[y],e[19]=y,e[20]=ge),(0,p.useEffect)(ve,ge);let we;e[21]!==ze||e[22]!==d||e[23]!==D||e[24]!==t?(we=async(x,b)=>{let k=Date.now(),O={id:ze,title:hr(x),messages:[],createdAt:k,updatedAt:k};t(X=>{let pe=new Map(X.chats);return pe.set(O.id,O),{...X,chats:pe,activeChatId:O.id}});let ue=b&&b.length>0?await at(b):void 0;D({role:"user",parts:[{type:"text",text:x},...ue??[]]}),d(),a("")},e[21]=ze,e[22]=d,e[23]=D,e[24]=t,e[25]=we):we=e[25];let Fe=we,be;e[26]!==d||e[27]!==s?(be=()=>{s(null),a(""),i(""),d()},e[26]=d,e[27]=s,e[28]=be):be=e[28];let He=me(be),ye;e[29]!==T||e[30]!==D?(ye=(x,b)=>{var X;let k=T[x],O=(X=k.parts)==null?void 0:X.filter(xo),ue=k.id;D({messageId:ue,role:"user",parts:[{type:"text",text:b},...O]})},e[29]=T,e[30]=D,e[31]=ye):ye=e[31];let de=me(ye),je;e[32]!==d||e[33]!==c||e[34]!==D?(je=async(x,b)=>{var O;if(!b.trim())return;(O=f.current)!=null&&O.view&&st(f.current.view);let k=c?await at(c):void 0;x==null||x.preventDefault(),D({text:b,files:k}),a(""),d()},e[32]=d,e[33]=c,e[34]=D,e[35]=je):je=e[35];let Oe=me(je),Se;e[36]===Me?Se=e[37]:(Se=()=>{Me()},e[36]=Me,e[37]=Se);let We=Se,Ce;e[38]!==Fe||e[39]!==c||e[40]!==n?(Ce=()=>{var x;n.trim()&&((x=h.current)!=null&&x.view&&st(h.current.view),Fe(n.trim(),c))},e[38]=Fe,e[39]=c,e[40]=n,e[41]=Ce):Ce=e[41];let Ue=me(Ce),Ne;e[42]===Symbol.for("react.memo_cache_sentinel")?(Ne=()=>{var x,b;return(b=(x=h.current)==null?void 0:x.editor)==null?void 0:b.blur()},e[42]=Ne):Ne=e[42];let kt=Ne,M=T.length===0,Re;e[43]!==u||e[44]!==Oe||e[45]!==Ue||e[46]!==o||e[47]!==P||e[48]!==M||e[49]!==n||e[50]!==Y?(Re=M?(0,l.jsx)(Je,{placeholder:"Ask anything, @ to include context about tables or dataframes",input:n,inputRef:h,inputClassName:"px-1 py-0",setInput:i,onSubmit:Ue,isLoading:P,onStop:Y,fileInputRef:C,onAddFiles:u,onClose:kt},"new-thread-input"):(0,l.jsx)(Je,{input:o,setInput:a,onSubmit:Oe,inputRef:f,isLoading:P,onStop:Y,onClose:()=>{var x,b;return(b=(x=f.current)==null?void 0:x.editor)==null?void 0:b.blur()},fileInputRef:C,onAddFiles:u}),e[43]=u,e[44]=Oe,e[45]=Ue,e[46]=o,e[47]=P,e[48]=M,e[49]=n,e[50]=Y,e[51]=Re):Re=e[51];let B=Re,Ae;e[52]!==c||e[53]!==M||e[54]!==m?(Ae=c&&c.length>0&&(0,l.jsx)("div",{className:le("flex flex-row gap-1 flex-wrap p-1",M&&"py-2 px-1"),children:c==null?void 0:c.map(x=>(0,l.jsx)(wr,{file:x,onRemove:()=>m(x)},x.name))}),e[52]=c,e[53]=M,e[54]=m,e[55]=Ae):Ae=e[55];let $=Ae,Ye=r==null?void 0:r.id,K;e[56]!==He||e[57]!==s||e[58]!==Ye?(K=(0,l.jsx)(rt,{children:(0,l.jsx)(eo,{onNewChat:He,activeChatId:Ye,setActiveChat:s})}),e[56]=He,e[57]=s,e[58]=Ye,e[59]=K):K=e[59];let G;e[60]!==B||e[61]!==$||e[62]!==M?(G=M&&(0,l.jsxs)("div",{className:"rounded-md border bg-background",children:[$,B]}),e[60]=B,e[61]=$,e[62]=M,e[63]=G):G=e[63];let J;if(e[64]!==ie||e[65]!==de||e[66]!==ce||e[67]!==T){let x;e[69]!==ie||e[70]!==de||e[71]!==ce||e[72]!==T.length?(x=(b,k)=>(0,l.jsx)(At,{message:b,index:k,onEdit:de,isStreamingReasoning:ce,isLast:k===T.length-1,addToolApprovalResponse:ie},b.id),e[69]=ie,e[70]=de,e[71]=ce,e[72]=T.length,e[73]=x):x=e[73],J=T.map(x),e[64]=ie,e[65]=de,e[66]=ce,e[67]=T,e[68]=J}else J=e[68];let Z;e[74]===P?Z=e[75]:(Z=P&&(0,l.jsx)("div",{className:"flex justify-center py-4",children:(0,l.jsx)(Sr,{className:"h-4 w-4 animate-spin"})}),e[74]=P,e[75]=Z);let Q;e[76]!==U||e[77]!==We?(Q=U&&(0,l.jsxs)("div",{className:"flex items-center justify-center space-x-2 mb-4",children:[(0,l.jsx)(Pr,{error:U||Error("Unknown error")}),(0,l.jsx)(ae,{variant:"outline",size:"sm",onClick:We,children:"Retry"})]}),e[76]=U,e[77]=We,e[78]=Q):Q=e[78];let Te;e[79]===Symbol.for("react.memo_cache_sentinel")?(Te=(0,l.jsx)("div",{ref:A}),e[79]=Te):Te=e[79];let ee;e[80]!==G||e[81]!==J||e[82]!==Z||e[83]!==Q?(ee=(0,l.jsxs)("div",{className:"flex-1 px-3 bg-(--slate-1) gap-4 py-3 flex flex-col overflow-y-auto",ref:v,children:[G,J,Z,Q,Te]}),e[80]=G,e[81]=J,e[82]=Z,e[83]=Q,e[84]=ee):ee=e[84];let te;e[85]!==P||e[86]!==Y?(te=P&&(0,l.jsx)("div",{className:"w-full flex justify-center items-center z-20 border-t",children:(0,l.jsx)(ae,{variant:"linkDestructive",size:"sm",onClick:Y,children:"Stop"})}),e[85]=P,e[86]=Y,e[87]=te):te=e[87];let re;e[88]!==B||e[89]!==$||e[90]!==M?(re=!M&&(0,l.jsxs)(l.Fragment,{children:[$,B]}),e[88]=B,e[89]=$,e[90]=M,e[91]=re):re=e[91];let _e;return e[92]!==K||e[93]!==ee||e[94]!==te||e[95]!==re?(_e=(0,l.jsxs)("div",{className:"flex flex-col h-[calc(100%-53px)]",children:[K,ee,te,re]}),e[92]=K,e[93]=ee,e[94]=te,e[95]=re,e[96]=_e):_e=e[96],_e},oo=to;function lo(e){return e.type==="text"}function ao(e){return e.text}function so(e){return e.type==="file"}function no(e,t){return(0,l.jsx)(fr,{attachment:e},t)}function io(){}function co(){}function uo(e){return e.type==="text"}function po(e){return e.text}function mo(e){return(0,l.jsx)(Zt,{value:e.value,className:"text-xs py-1",children:(0,l.jsxs)("div",{className:"flex items-start gap-2.5",children:[(0,l.jsx)("span",{className:"mt-1 text-muted-foreground",children:(0,l.jsx)(e.Icon,{className:"h-3 w-3"})}),(0,l.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,l.jsx)("span",{className:"font-semibold",children:e.label}),(0,l.jsx)("span",{className:"text-muted-foreground",children:e.subtitle})]})]})},e.value)}function ho(e){let{messages:t}=e;return br(t)}function fo(e){Ee.error("An error occurred:",e)}function xo(e){return e.type==="file"}export{oo as default};
@@ -1,4 +1,4 @@
1
- import{s as X}from"./chunk-LvLJmgfZ.js";import"./useEvent-D91BmmQi.js";import{t as le}from"./react-Bj1aDYRI.js";import{ln as oe}from"./cells-yL2qMkYn.js";import"./react-dom-CSu739Rf.js";import{C as ie,P as me,R as ce,T as pe,k as de}from"./zod-H_cgTO0M.js";import{t as ue}from"./compiler-runtime-B3qBwwSJ.js";import{_ as P,d as he,t as xe}from"./useEventListener-DvoEXWke.js";import{t as Y}from"./cn-DCUzRj2J.js";import{t as fe}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-eipL3i3Y.js";import{i as ge,l as be,r as Z,t as B}from"./popover-Bz_0Vkyf.js";import{a as je,p as ve,r as ye,t as Ne}from"./dropdown-menu-CR7cnzLX.js";import{t as U}from"./label-xHqFtfdz.js";import{t as K}from"./tooltip-DTV9tlSr.js";import{t as z}from"./button-BbCh-29a.js";import"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{t as we}from"./strings-wdPMRf6Z.js";import{t as _e}from"./createLucideIcon-D5guW7EU.js";import{t as Ce}from"./bot-message-square-DrbHk31W.js";import{t as ke}from"./x-C-6liIBr.js";import"./markdown-renderer-3mlKZ6Wa.js";import{u as Se}from"./toDate-B5A0DFEz.js";import{A as Re,F as Ae,I as qe,M as ze,N as Ee,h as Fe,n as Me,v as Te}from"./add-cell-with-ai-XU2qpbrH.js";import{t as De}from"./spinner-Bhir8k53.js";import{o as $e,r as He}from"./input-C3Hrdlqq.js";import{t as Ie}from"./settings-DfFe0dWD.js";import{t as Le}from"./chat-display-CHd7vgqs.js";import{t as Oe}from"./square-B5xWCt0a.js";import{t as Pe}from"./trash-2-rVklqqFF.js";import"./dist-CBSMxaO_.js";import"./dist-CpTFpfm_.js";import"./dist-B1U1kGCR.js";import"./dist-ChF5Ln9c.js";import"./dist-CPczQFlJ.js";import{t as Ve}from"./uuid-e9lSomwA.js";import"./session-0B5NBztP.js";import"./purify.es-B9KxLTTS.js";import{t as Je}from"./copy-icon-OjtDb4gO.js";import{r as Ke}from"./react-icons.esm-BNzu6e7h.js";import{t as Ge}from"./events-CPoJAfgx.js";import{n as We}from"./error-banner-LdWZDbqd.js";import"./chunk-5FQGJX7Z-BzXnQz5s.js";import"./html-to-image-CKzwKb6F.js";import{n as Xe}from"./useAsyncData-bgszE9F0.js";import"./esm-CqWdmSnV.js";var Ye=_e("rotate-cw",[["path",{d:"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8",key:"1p45f6"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}]]),G=ue(),t=X(fe(),1),v=X(le(),1),Ze=be,Be=me({type:de("stream_chunk"),message_id:ce(),content:ie().nullable().transform(s=>s),is_final:pe().optional()});function Q(s,e){let{controllerRef:o,activeRequestIdRef:d}=e,f=o.current;if(f===null)return"dropped-no-controller";let b=d.current;return b!==null&&s.message_id!==b?(P.debug("Dropping stale chat chunk",{chunkRequestId:s.message_id,activeRequestId:b}),"dropped-stale"):(s.content&&f.enqueue(s.content),s.is_final?(f.close(),o.current=null,d.current=null,"closed"):"enqueued")}const Ue=s=>{var W;let[e,o]=(0,v.useState)(""),[d,f]=(0,v.useState)(s.config),[b,p]=(0,v.useState)(s.config),[i,g]=(0,v.useState)(void 0),x=(0,v.useRef)(null),j=(0,v.useRef)(null),y=(0,v.useRef)(null),m=(0,v.useRef)(null);Object.keys(s.config).some(r=>s.config[r]!==b[r])&&(f(s.config),p(s.config));let l=(0,v.useRef)(d);l.current=d;let c=(0,v.useRef)(null),a=(0,v.useRef)(null),{data:u}=Xe(async()=>(await s.get_chat_history({})).messages,[]),n=s.value.length>0?s.value:u,{messages:h,sendMessage:w,setMessages:q,status:R,stop:T,error:_,regenerate:A,clearError:C,addToolApprovalResponse:D}=Re({sendAutomaticallyWhen:({messages:r})=>Te(r),transport:new ze({fetch:async(r,N)=>{var H;if(N===void 0)return fetch(r);let k=JSON.parse(N.body),S=N.signal,J={max_tokens:l.current.max_tokens,temperature:l.current.temperature,top_p:l.current.top_p,top_k:l.current.top_k,frequency_penalty:l.current.frequency_penalty,presence_penalty:l.current.presence_penalty};try{let L=k.messages.map(M=>{var E;return{...M,content:(E=M.parts)==null?void 0:E.map(I=>"text"in I?I.text:"").join(`
1
+ import{s as X}from"./chunk-LvLJmgfZ.js";import"./useEvent-D91BmmQi.js";import{t as le}from"./react-Bj1aDYRI.js";import{ln as oe}from"./cells-1XaQzJBc.js";import"./react-dom-CSu739Rf.js";import{C as ie,P as me,R as ce,T as pe,k as de}from"./zod-H_cgTO0M.js";import{t as ue}from"./compiler-runtime-B3qBwwSJ.js";import{_ as P,d as he,t as xe}from"./useEventListener-DvoEXWke.js";import{t as Y}from"./cn-DCUzRj2J.js";import{t as fe}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-eipL3i3Y.js";import{i as ge,l as be,r as Z,t as B}from"./popover-Bz_0Vkyf.js";import{a as je,p as ve,r as ye,t as Ne}from"./dropdown-menu-CR7cnzLX.js";import{t as U}from"./label-xHqFtfdz.js";import{t as K}from"./tooltip-DTV9tlSr.js";import{t as z}from"./button-BbCh-29a.js";import"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{t as we}from"./strings-wdPMRf6Z.js";import{t as _e}from"./createLucideIcon-D5guW7EU.js";import{t as Ce}from"./bot-message-square-DrbHk31W.js";import{t as ke}from"./x-C-6liIBr.js";import"./markdown-renderer-BzFpW89-.js";import{u as Se}from"./toDate-B5A0DFEz.js";import{A as Re,F as Ae,I as qe,M as ze,N as Ee,h as Fe,n as Me,v as Te}from"./add-cell-with-ai-CV7qdXZ6.js";import{t as De}from"./spinner-Bhir8k53.js";import{o as $e,r as He}from"./input-C3Hrdlqq.js";import{t as Ie}from"./settings-DfFe0dWD.js";import{t as Le}from"./chat-display-DJxt1jsL.js";import{t as Oe}from"./square-B5xWCt0a.js";import{t as Pe}from"./trash-2-rVklqqFF.js";import"./dist-CBSMxaO_.js";import"./dist-CpTFpfm_.js";import"./dist-B1U1kGCR.js";import"./dist-ChF5Ln9c.js";import"./dist-CPczQFlJ.js";import{t as Ve}from"./uuid-e9lSomwA.js";import"./session-0B5NBztP.js";import"./purify.es-B9KxLTTS.js";import{t as Je}from"./copy-icon-OjtDb4gO.js";import{r as Ke}from"./react-icons.esm-BNzu6e7h.js";import{t as Ge}from"./events-CPoJAfgx.js";import{n as We}from"./error-banner-LdWZDbqd.js";import"./chunk-5FQGJX7Z-BzXnQz5s.js";import"./html-to-image-7hWS7hJz.js";import{n as Xe}from"./useAsyncData-bgszE9F0.js";import"./esm-CqWdmSnV.js";var Ye=_e("rotate-cw",[["path",{d:"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8",key:"1p45f6"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}]]),G=ue(),t=X(fe(),1),v=X(le(),1),Ze=be,Be=me({type:de("stream_chunk"),message_id:ce(),content:ie().nullable().transform(s=>s),is_final:pe().optional()});function Q(s,e){let{controllerRef:o,activeRequestIdRef:d}=e,f=o.current;if(f===null)return"dropped-no-controller";let b=d.current;return b!==null&&s.message_id!==b?(P.debug("Dropping stale chat chunk",{chunkRequestId:s.message_id,activeRequestId:b}),"dropped-stale"):(s.content&&f.enqueue(s.content),s.is_final?(f.close(),o.current=null,d.current=null,"closed"):"enqueued")}const Ue=s=>{var W;let[e,o]=(0,v.useState)(""),[d,f]=(0,v.useState)(s.config),[b,p]=(0,v.useState)(s.config),[i,g]=(0,v.useState)(void 0),x=(0,v.useRef)(null),j=(0,v.useRef)(null),y=(0,v.useRef)(null),m=(0,v.useRef)(null);Object.keys(s.config).some(r=>s.config[r]!==b[r])&&(f(s.config),p(s.config));let l=(0,v.useRef)(d);l.current=d;let c=(0,v.useRef)(null),a=(0,v.useRef)(null),{data:u}=Xe(async()=>(await s.get_chat_history({})).messages,[]),n=s.value.length>0?s.value:u,{messages:h,sendMessage:w,setMessages:q,status:R,stop:T,error:_,regenerate:A,clearError:C,addToolApprovalResponse:D}=Re({sendAutomaticallyWhen:({messages:r})=>Te(r),transport:new ze({fetch:async(r,N)=>{var H;if(N===void 0)return fetch(r);let k=JSON.parse(N.body),S=N.signal,J={max_tokens:l.current.max_tokens,temperature:l.current.temperature,top_p:l.current.top_p,top_k:l.current.top_k,frequency_penalty:l.current.frequency_penalty,presence_penalty:l.current.presence_penalty};try{let L=k.messages.map(M=>{var E;return{...M,content:(E=M.parts)==null?void 0:E.map(I=>"text"in I?I.text:"").join(`
2
2
  `)}}),O=Ve(),ne=new ReadableStream({start(M){c.current=M,a.current=O;let E=()=>{try{M.close()}catch(I){P.debug("Controller may already be closed",{error:I})}c.current=null,a.current=null,s.cancel_prompt({request_id:O}).catch(I=>{P.debug("cancel_prompt failed",{error:I})})};return S==null||S.addEventListener("abort",E),()=>{S==null||S.removeEventListener("abort",E)}},cancel(){c.current=null,a.current=null}});return s.send_prompt({request_id:O,messages:L,config:J}).catch(M=>{var E;(E=c.current)==null||E.error(M),c.current=null,a.current=null}),Ee({stream:ne})}catch(L){if(L instanceof Error&&L.name==="AbortError")return new Response("Aborted",{status:499});let O=(H=L.message)==null?void 0:H.split("failed with exception ").pop();return new Response(O,{status:400})}}}),messages:n,onFinish:r=>{g(void 0),x.current&&(x.current.value=""),P.debug("Finished streaming message:",r),s.setValue(r.messages)},onError:r=>{P.error("An error occurred:",r)}});xe(s.host,Ge.TYPE,r=>{let N=Be.safeParse(r.detail.message);N.success&&Q(N.data,{controllerRef:c,activeRequestIdRef:a})});let $=R==="submitted"||R==="streaming",ee=r=>{let N=h.findIndex(k=>k.id===r);if(N!==-1){let k=h.filter(S=>S.id!==r);s.delete_chat_message({index:N}),q(k),s.setValue(k)}},te=Array.isArray(s.allowAttachments)&&s.allowAttachments.length>0||s.allowAttachments===!0,se={triggerCompletionRegex:/^\/(\w+)?/,completions:s.prompts.map(r=>({label:`/${r}`,displayLabel:r,apply:r}))},re=s.prompts.length>0?"Type your message here, / for prompts":"Type your message here...";(0,v.useEffect)(()=>{var r;(r=m.current)==null||r.scrollTo({top:m.current.scrollHeight,behavior:"smooth"})},[h.length,m]);let F=(W=y.current)==null?void 0:W.view,ae=()=>{if(F){let r=F.state.doc.length;F.dispatch({changes:{from:0,to:r,insert:""}})}o("")};return(0,t.jsxs)("div",{className:"flex flex-col h-full bg-(--slate-1) rounded-lg shadow border border-(--slate-6) overflow-hidden relative",style:{maxHeight:s.maxHeight},children:[(0,t.jsx)("div",{className:"absolute top-0 right-0 flex justify-end z-10 border border-(--slate-6) bg-inherit rounded-bl-lg",children:(0,t.jsx)(z,{variant:"text",size:"icon",disabled:h.length===0,onClick:()=>{q([]),s.setValue([]),s.delete_chat_history({}),C()},children:(0,t.jsx)(Ye,{className:"h-3 w-3"})})}),(0,t.jsxs)("div",{className:"grow overflow-y-auto gap-4 pt-8 pb-4 px-2 flex flex-col",ref:m,children:[h.length===0&&(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center h-full text-muted-foreground text-center p-4",children:[(0,t.jsx)(Ce,{className:"h-12 w-12 mb-4"}),(0,t.jsx)("h3",{className:"text-lg font-semibold mb-2",children:"No messages yet"}),(0,t.jsx)("p",{className:"text-sm",children:"Start a conversation by typing a message below."})]}),h.map((r,N)=>{var J;let k=(J=r.parts)==null?void 0:J.filter(H=>H.type==="text").map(H=>H.text).join(`
3
3
  `),S=N===h.length-1;return(0,t.jsxs)("div",{className:Y("flex flex-col group gap-2",r.role==="user"?"items-end":"items-start"),children:[(0,t.jsx)("div",{className:`max-w-[80%] p-3 rounded-lg ${r.role==="user"?"bg-(--sky-11) text-(--slate-1) whitespace-pre-wrap":"bg-(--slate-4) text-(--slate-12)"}`,children:Le({message:r,isStreamingReasoning:R==="streaming",isLast:S,addToolApprovalResponse:S?D:void 0})}),(0,t.jsxs)("div",{className:"flex justify-end text-xs gap-2 invisible group-hover:visible",children:[(0,t.jsx)(Je,{value:k,className:"h-3 w-3",buttonClassName:"text-xs text-(--slate-9) hover:text-(--slate-11)"}),(0,t.jsx)("button",{type:"button",onClick:()=>ee(r.id),className:"text-xs text-(--slate-9) hover:text-(--slate-11)",children:(0,t.jsx)(Pe,{className:"h-3 w-3 text-(--red-9)"})})]})]},`${r.id}-${N}`)}),$&&(0,t.jsx)("div",{className:"flex items-center justify-center mb-4",children:(0,t.jsx)(De,{size:"small"})}),_&&(0,t.jsxs)("div",{className:"flex items-center justify-center space-x-2 mb-4",children:[(0,t.jsx)(We,{error:_}),(0,t.jsx)(z,{variant:"outline",size:"sm",onClick:()=>A(),children:"Retry"})]})]}),(0,t.jsxs)("form",{onSubmit:async r=>{if(r.preventDefault(),s.disabled)return;let N=i?await Fe(i):void 0;w({role:"user",parts:[{type:"text",text:e},...N??[]]}),ae()},ref:j,inert:s.disabled||void 0,className:Y("flex w-full border-t border-(--slate-6) px-2 py-1 items-center",s.disabled&&"opacity-50 cursor-not-allowed"),children:[s.showConfigurationControls&&(0,t.jsx)(Qe,{config:d,onChange:f}),s.prompts.length>0&&(0,t.jsx)(et,{prompts:s.prompts,onSelect:r=>{o(r),requestAnimationFrame(()=>{F==null||F.focus(),oe(F)})}}),(0,t.jsx)(Me,{className:"rounded-sm mr-2",placeholder:re,value:e,inputRef:y,maxHeight:s.maxHeight?`${s.maxHeight/2}px`:void 0,onChange:o,onSubmit:(r,N)=>{var k;N.trim()&&((k=j.current)==null||k.requestSubmit())},onClose:()=>{},additionalCompletions:se}),i&&i.length===1&&(0,t.jsx)("span",{title:i[0].name,className:"text-sm text-(--slate-11) truncate shrink-0 w-fit max-w-24",children:i[0].name}),i&&i.length>1&&(0,t.jsxs)("span",{title:[...i].map(r=>r.name).join(`
4
4
  `),className:"text-sm text-(--slate-11) truncate shrink-0",children:[i.length," files"]}),i&&i.length>0&&(0,t.jsx)(z,{type:"button",variant:"text",size:"sm",onClick:()=>{g(void 0),x.current&&(x.current.value="")},children:(0,t.jsx)(ke,{className:"size-3"})}),te&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(z,{type:"button",variant:"text",size:"sm",onClick:()=>{var r;return(r=x.current)==null?void 0:r.click()},children:(0,t.jsx)(qe,{className:"h-4"})}),(0,t.jsx)("input",{type:"file",ref:x,className:"hidden",multiple:!0,accept:Array.isArray(s.allowAttachments)?s.allowAttachments.join(","):void 0,onChange:r=>{r.target.files&&g([...r.target.files])}})]}),$?(0,t.jsx)(K,{content:"Stop generating",children:(0,t.jsx)(z,{type:"button",variant:"link",size:"xs",onClick:()=>T(),className:"text-(--red-9) hover:text-(--red-11)",children:(0,t.jsx)(Oe,{className:"h-4 w-4 fill-current"})})}):(0,t.jsx)(z,{type:"submit",disabled:!e,variant:"outline",size:"xs",className:"text-(--slate-11)","aria-label":"Send message",children:(0,t.jsx)(Ae,{className:"h-4 w-4"})})]})]})};var V={max_tokens:{min:1,max:4096,description:"Maximum number of tokens to generate"},temperature:{min:0,max:2,step:.1,description:"Controls randomness (0: deterministic, 2: very random)"},top_p:{min:0,max:1,step:.1,description:"Nucleus sampling: probability mass to consider"},top_k:{min:1,max:100,description:"Top-k sampling: number of highest probability tokens to consider"},frequency_penalty:{min:-2,max:2,description:"Penalizes frequent tokens (-2: favor, 2: avoid)"},presence_penalty:{min:-2,max:2,description:"Penalizes new tokens (-2: favor, 2: avoid)"}},Qe=s=>{let e=(0,G.c)(16),{config:o,onChange:d}=s,[f,b]=(0,v.useState)(!1),p;e[0]!==o||e[1]!==d?(p=(a,u)=>{let n=u===null||Number.isNaN(u)?null:u;if(n!==null){let{min:h,max:w}=V[a];n=Math.max(h,Math.min(w,n))}d({...o,[a]:n})},e[0]=o,e[1]=d,e[2]=p):p=e[2];let i=p,g;e[3]===Symbol.for("react.memo_cache_sentinel")?(g=a=>{a.key==="Enter"&&(a.preventDefault(),b(!1))},e[3]=g):g=e[3];let x=g,j;e[4]===Symbol.for("react.memo_cache_sentinel")?(j=(0,t.jsx)(K,{content:"Configuration",children:(0,t.jsx)(ge,{asChild:!0,children:(0,t.jsx)(z,{variant:"outline",size:"sm",className:"border-none shadow-none hover:bg-transparent",children:(0,t.jsx)(Ie,{className:"h-3 w-3"})})})}),e[4]=j):j=e[4];let y;e[5]===Symbol.for("react.memo_cache_sentinel")?(y=(0,t.jsx)("h4",{className:"font-bold leading-none",children:"Configuration"}),e[5]=y):y=e[5];let m;if(e[6]!==o||e[7]!==i){let a;e[9]===i?a=e[10]:(a=u=>{let[n,h]=u;return(0,t.jsxs)("div",{className:"grid grid-cols-3 items-center gap-1",children:[(0,t.jsxs)(U,{htmlFor:n,className:"flex w-full justify-between col-span-3 align-end",children:[we.startCase(n),(0,t.jsx)(K,{delayDuration:200,side:"top",content:(0,t.jsx)("div",{className:"text-xs flex flex-col",children:V[n].description}),children:(0,t.jsx)(Se,{className:"h-3 w-3 cursor-help text-muted-foreground hover:text-foreground"})})]}),(0,t.jsx)($e,{id:n,"aria-label":n,value:h??NaN,placeholder:"null",minValue:V[n].min,maxValue:V[n].max,step:V[n].step??1,onChange:w=>i(n,w),onKeyDown:x,className:"col-span-3"})]},n)},e[9]=i,e[10]=a),m=he.entries(o).map(a),e[6]=o,e[7]=i,e[8]=m}else m=e[8];let l;e[11]===m?l=e[12]:(l=(0,t.jsx)(Z,{className:"w-70 border",children:(0,t.jsxs)("div",{className:"grid gap-3",children:[y,m]})}),e[11]=m,e[12]=l);let c;return e[13]!==f||e[14]!==l?(c=(0,t.jsxs)(B,{open:f,onOpenChange:b,children:[j,l]}),e[13]=f,e[14]=l,e[15]=c):c=e[15],c},et=s=>{let e=(0,G.c)(18),{prompts:o,onSelect:d}=s,[f,b]=(0,v.useState)(!1),[p,i]=(0,v.useState)(""),g;e[0]===d?g=e[1]:(g=u=>{[...u.matchAll(/{{(\w+)}}/g)].length>0?(i(u),b(!0)):d(u)},e[0]=d,e[1]=g);let x=g,j;e[2]===Symbol.for("react.memo_cache_sentinel")?(j=(0,t.jsx)(K,{content:"Select a prompt",children:(0,t.jsx)(ve,{asChild:!0,children:(0,t.jsx)(z,{variant:"outline",size:"sm",className:"border-none shadow-none hover:bg-transparent",children:(0,t.jsx)(Ke,{className:"h-3 w-3"})})})}),e[2]=j):j=e[2];let y;if(e[3]!==x||e[4]!==o){let u;e[6]===x?u=e[7]:(u=(n,h)=>(0,t.jsx)(je,{onSelect:()=>x(n),className:"whitespace-normal text-left",children:n},h),e[6]=x,e[7]=u),y=o.map(u),e[3]=x,e[4]=o,e[5]=y}else y=e[5];let m;e[8]===y?m=e[9]:(m=(0,t.jsx)(Ze,{children:(0,t.jsxs)(Ne,{children:[j,(0,t.jsx)(ye,{side:"right",align:"end",onCloseAutoFocus:st,className:"w-64 max-h-96 overflow-y-auto",children:y})]})}),e[8]=y,e[9]=m);let l;e[10]===Symbol.for("react.memo_cache_sentinel")?(l=()=>b(!1),e[10]=l):l=e[10];let c;e[11]!==d||e[12]!==p?(c=(0,t.jsx)(Z,{side:"right",align:"end",className:"min-w-80 px-2",children:(0,t.jsx)(tt,{prompt:p,onClose:l,onSelect:d})}),e[11]=d,e[12]=p,e[13]=c):c=e[13];let a;return e[14]!==f||e[15]!==m||e[16]!==c?(a=(0,t.jsxs)(B,{open:f,onOpenChange:b,children:[m,c]}),e[14]=f,e[15]=m,e[16]=c,e[17]=a):a=e[17],a},tt=s=>{let e=(0,G.c)(32),{prompt:o,onClose:d,onSelect:f}=s,b;e[0]===Symbol.for("react.memo_cache_sentinel")?(b={},e[0]=b):b=e[0];let[p,i]=(0,v.useState)(b),g,x;e[1]===o?(g=e[2],x=e[3]):(g=()=>{i([...o.matchAll(/{{(\w+)}}/g)].reduce(rt,{}))},x=[o],e[1]=o,e[2]=g,e[3]=x),(0,v.useEffect)(g,x);let j;e[4]===Symbol.for("react.memo_cache_sentinel")?(j=(_,A)=>{i(C=>({...C,[_]:A}))},e[4]=j):j=e[4];let y=j,m;if(e[5]!==o||e[6]!==p){let _;e[8]===Symbol.for("react.memo_cache_sentinel")?(_=/{{(\w+)}}/g,e[8]=_):_=e[8];let A;e[9]===p?A=e[10]:(A=(C,D)=>p[D]||`{{${D}}}`,e[9]=p,e[10]=A),m=o.replaceAll(_,A),e[5]=o,e[6]=p,e[7]=m}else m=e[7];let l=m,c;e[11]===p?c=e[12]:(c=Object.values(p).some(at),e[11]=p,e[12]=c);let a=c,u;e[13]!==d||e[14]!==f||e[15]!==l?(u=()=>{f(l),d()},e[13]=d,e[14]=f,e[15]=l,e[16]=u):u=e[16];let n=u,h;e[17]===p?h=e[18]:(h=Object.entries(p),e[17]=p,e[18]=h);let w;e[19]!==n||e[20]!==a||e[21]!==h?(w=h.map((_,A)=>{let[C,D]=_;return(0,t.jsxs)("div",{className:"grid grid-cols-4 items-center gap-2",children:[(0,t.jsx)(U,{htmlFor:C,className:"font-semibold text-base",children:C}),(0,t.jsx)(He,{id:C,value:D,onChange:$=>y(C,$.target.value),rootClassName:"col-span-3 w-full",className:"m-0",placeholder:`Enter value for ${C}`,autoFocus:A===0,onKeyDown:$=>{$.key==="Enter"&&!a&&n()}})]},C)}),e[19]=n,e[20]=a,e[21]=h,e[22]=w):w=e[22];let q;e[23]===l?q=e[24]:(q=(0,t.jsx)("div",{className:"grid gap-2 prose dark:prose-invert",children:(0,t.jsx)("blockquote",{className:"text-sm",children:l})}),e[23]=l,e[24]=q);let R;e[25]!==n||e[26]!==a?(R=(0,t.jsx)(z,{onClick:n,size:"xs",disabled:a,children:"Submit"}),e[25]=n,e[26]=a,e[27]=R):R=e[27];let T;return e[28]!==q||e[29]!==R||e[30]!==w?(T=(0,t.jsxs)("div",{className:"grid gap-4",children:[w,q,R]}),e[28]=q,e[29]=R,e[30]=w,e[31]=T):T=e[31],T};function st(s){return s.preventDefault()}function rt(s,e){return s[e[1]]="",s}function at(s){return s==null||s.trim()===""}export{Ue as Chatbot,Q as routeIncomingChatChunk};