@marimo-team/frontend 0.23.14-dev19 → 0.23.14-dev21

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 (90) hide show
  1. package/dist/assets/{CellStatus-B3d9WY2x.js → CellStatus-CSZHI8sz.js} +1 -1
  2. package/dist/assets/{JsonOutput-C3c9GGaV.js → JsonOutput-CYIo9GSP.js} +12 -12
  3. package/dist/assets/MarimoErrorOutput-BokuSnpU.js +11 -0
  4. package/dist/assets/{RenderHTML-v15QgtRg.js → RenderHTML-B9mw7TD1.js} +1 -1
  5. package/dist/assets/{RunButton-Bz4eaTJM.js → RunButton-CX_nNY62.js} +1 -1
  6. package/dist/assets/{add-cell-with-ai-wau9Yzcj.js → add-cell-with-ai-DwzlK27e.js} +47 -34
  7. package/dist/assets/{add-connection-dialog-_KCPEn7U.js → add-connection-dialog-fmiSisf0.js} +6 -6
  8. package/dist/assets/{agent-panel-Bn9AgwJH.js → agent-panel-BDO44WWH.js} +5 -5
  9. package/dist/assets/{ai-model-dropdown-BeZrAec-.js → ai-model-dropdown-BP8gjnOy.js} +3 -3
  10. package/dist/assets/{app-config-button-BG9ONWMU.js → app-config-button-CVpG64c2.js} +1 -1
  11. package/dist/assets/{cell-editor-24ykqaHj.js → cell-editor-Bbir67_U.js} +10 -10
  12. package/dist/assets/cell-link-CBRggkzf.js +1 -0
  13. package/dist/assets/{cells-DENsmH9t.js → cells-RJTD-euN.js} +44 -44
  14. package/dist/assets/{chat-display-CcL_dydg.js → chat-display-17k5Uy0b.js} +1 -1
  15. package/dist/assets/{chat-panel-CA-2-S1C.js → chat-panel-CGwZggen.js} +2 -2
  16. package/dist/assets/{chat-ui-DQeA0_b5.js → chat-ui-BrSyHh93.js} +1 -1
  17. package/dist/assets/{column-preview-BPgYXdDd.js → column-preview-dW7xtQ7S.js} +1 -1
  18. package/dist/assets/{command-palette-WlkKgdrI.js → command-palette-DtKhXIMn.js} +1 -1
  19. package/dist/assets/{common-DdBQICbD.js → common-DHzo8K8C.js} +1 -1
  20. package/dist/assets/components-ChBJEsmj.js +1 -0
  21. package/dist/assets/datasource-RP7m6Xrh.js +3 -0
  22. package/dist/assets/{dependency-graph-panel-nYHPHFU4.js → dependency-graph-panel-CjdEazj5.js} +4 -4
  23. package/dist/assets/{documentation-panel-Dw9tYBNf.js → documentation-panel-BcUF41gA.js} +1 -1
  24. package/dist/assets/{download-4NoBestd.js → download-CJ6tdZ-1.js} +4 -4
  25. package/dist/assets/{edit-page-CAfBRrHn.js → edit-page-lo6LC4Ie.js} +6 -6
  26. package/dist/assets/{error-panel-Ddr_mbqR.js → error-panel-D_1OmgVJ.js} +1 -1
  27. package/dist/assets/{file-explorer-panel-DhpN8_pR.js → file-explorer-panel-CG5na8ox.js} +3 -3
  28. package/dist/assets/{file-icons-BFLcd4J7.js → file-icons-CGJ6uWXm.js} +1 -1
  29. package/dist/assets/{file-name-input-x53prQQ6.js → file-name-input-DC8-M5r1.js} +1 -1
  30. package/dist/assets/{floating-outline--OlHG_yX.js → floating-outline-BOkj3eC_.js} +1 -1
  31. package/dist/assets/{focus-CZUEQpxX.js → focus-BViZMdHR.js} +1 -1
  32. package/dist/assets/{form-CJ3pB1ow.js → form-BbqpGicG.js} +2 -2
  33. package/dist/assets/{home-page-pH8-XovY.js → home-page-CU6li-ts.js} +2 -2
  34. package/dist/assets/{hooks-BqjZMbeu.js → hooks-CPpze3O4.js} +1 -1
  35. package/dist/assets/{html-to-image-B6eCuh-2.js → html-to-image-B8ja7wwq.js} +2 -2
  36. package/dist/assets/{index-CNmQbGXF.js → index-BcxGcwkJ.js} +6 -6
  37. package/dist/assets/kiosk-mode-BP35ALfP.js +1 -0
  38. package/dist/assets/{layout-DLJQyOOv.js → layout-BSHt96Sb.js} +5 -5
  39. package/dist/assets/{logs-panel-BBGNeMzu.js → logs-panel-CbZLi2XS.js} +1 -1
  40. package/dist/assets/{markdown-renderer-CcLl4-oB.js → markdown-renderer-jghC8PFL.js} +2 -2
  41. package/dist/assets/{name-cell-input-CNq9BTL7.js → name-cell-input-CN4MRZOm.js} +1 -1
  42. package/dist/assets/{outline-panel-CnGBTEs0.js → outline-panel-CvB3hUJ2.js} +1 -1
  43. package/dist/assets/{packages-panel-B17awHIF.js → packages-panel-BGgZLApn.js} +1 -1
  44. package/dist/assets/{panels-P8wFgP-8.js → panels-DCWntQim.js} +1 -1
  45. package/dist/assets/process-output-xDK6-i-G.js +1 -0
  46. package/dist/assets/{radio-group-B8OldelF.js → radio-group-DFkF8CeQ.js} +1 -1
  47. package/dist/assets/{readonly-code-display-bvftv2Nk.js → readonly-code-display-BHx0vyug.js} +1 -1
  48. package/dist/assets/{readonly-python-code-CoFR55Yt.js → readonly-python-code-Cla-uJpn.js} +1 -1
  49. package/dist/assets/{reveal-component-CfBFUsP0.js → reveal-component-Bvxyfpeh.js} +15 -15
  50. package/dist/assets/{run-page-CFoRuGGY.js → run-page-Cxc4jqCp.js} +1 -1
  51. package/dist/assets/scratchpad-panel-Bp4sg_00.js +1 -0
  52. package/dist/assets/{session-panel-D5OQ5JSm.js → session-panel-WkryRIGA.js} +1 -1
  53. package/dist/assets/{snippets-panel-DvfXacKM.js → snippets-panel-BcDwLUNv.js} +1 -1
  54. package/dist/assets/{state-CQn0dE8X.js → state-CXzKtmF5.js} +2 -2
  55. package/dist/assets/{state-LM4pQmYL.js → state-DHqaTLr2.js} +1 -1
  56. package/dist/assets/{textarea-Tswrj-fB.js → textarea-B5Bp08T3.js} +1 -1
  57. package/dist/assets/{tracing-BMvzhCBv.js → tracing-clJBeQm6.js} +1 -1
  58. package/dist/assets/{tracing-panel-DJF6cCQK.js → tracing-panel-7j9NY9lO.js} +2 -2
  59. package/dist/assets/{tree-actions-Bnmh7YGo.js → tree-actions-DLySKXUq.js} +1 -1
  60. package/dist/assets/useCellActionButton-CvQRbg1P.js +1 -0
  61. package/dist/assets/{useDeleteCell-DwNTIWuB.js → useDeleteCell-Sj06CzJn.js} +1 -1
  62. package/dist/assets/{useDependencyPanelTab-BH_Eu2Kq.js → useDependencyPanelTab-BTgQmu1R.js} +1 -1
  63. package/dist/assets/{useNotebookActions-BmO8IOgN.js → useNotebookActions-9PPlpXk8.js} +1 -1
  64. package/dist/assets/useRunCells-D5aAUcAa.js +1 -0
  65. package/dist/assets/useSplitCell-CGE6jkuF.js +1 -0
  66. package/dist/index.html +22 -22
  67. package/package.json +2 -2
  68. package/src/components/editor/errors/__tests__/auto-fix.test.ts +11 -107
  69. package/src/components/editor/errors/auto-fix.tsx +11 -31
  70. package/src/components/editor/output/MarimoTracebackOutput.tsx +2 -2
  71. package/src/core/ai/context/__tests__/registry.test.ts +133 -3
  72. package/src/core/ai/context/providers/__tests__/datasource.test.ts +3 -1
  73. package/src/core/ai/context/providers/__tests__/error.test.ts +200 -15
  74. package/src/core/ai/context/providers/datasource.ts +27 -2
  75. package/src/core/ai/context/providers/error.ts +226 -36
  76. package/src/core/ai/context/registry.ts +77 -43
  77. package/src/core/codemirror/ai/resources.ts +15 -10
  78. package/src/core/errors/errors.ts +2 -1
  79. package/src/core/mime.ts +11 -4
  80. package/dist/assets/MarimoErrorOutput-D07aAGkQ.js +0 -12
  81. package/dist/assets/cell-link-exzcyUhT.js +0 -1
  82. package/dist/assets/components-DinLkTiR.js +0 -1
  83. package/dist/assets/datasource-BCOYpQ69.js +0 -3
  84. package/dist/assets/kiosk-mode-BBfHxqEx.js +0 -1
  85. package/dist/assets/process-output-BGcDSQBk.js +0 -1
  86. package/dist/assets/scratchpad-panel-DdKvJKy4.js +0 -1
  87. package/dist/assets/useCellActionButton-ibDHNca0.js +0 -1
  88. package/dist/assets/useRunCells-CTpvxsqp.js +0 -1
  89. package/dist/assets/useSplitCell-CFO4Cg5B.js +0 -1
  90. package/src/core/ai/context/providers/__tests__/__snapshots__/error.test.ts.snap +0 -3
@@ -1 +1 @@
1
- import{s as a}from"./chunk-LvLJmgfZ.js";import{u as p}from"./useEvent-D91BmmQi.js";import{t as s}from"./react-Bj1aDYRI.js";import{cr as l,wn as c}from"./cells-DENsmH9t.js";import"./react-dom-CSu739Rf.js";import{t as n}from"./compiler-runtime-B3qBwwSJ.js";import{t as f}from"./jsx-runtime-PbYoItBR.js";import"./fullscreen-BXI8V5i6.js";import"./dist-Dez1I5M9.js";import"./cjs-DXo9vDEJ.js";import"./main-DmhaVp6Y.js";import"./useNonce-0SWz6w4W.js";import"./dist-DblYTes5.js";import"./dist-D-2yWcX9.js";import"./dist-CNKFZCiw.js";import"./dist-ZjSH4Z6x.js";import"./dist-BtrqKtvn.js";import"./session-CsT5Gg9j.js";import"./purify.es-DfJp_of2.js";import{t as u}from"./RenderHTML-v15QgtRg.js";import{t as d}from"./empty-state-QmmE2oN4.js";var x=n();s();var e=a(f(),1),v=()=>{let o=(0,x.c)(5),{documentation:r}=p(c);if(!r){let i;return o[0]===Symbol.for("react.memo_cache_sentinel")?(i=(0,e.jsx)(d,{title:"View docs as you type",description:"Move your text cursor over a symbol to see its documentation.",icon:(0,e.jsx)(l,{})}),o[0]=i):i=o[0],i}let t;o[1]===r?t=o[2]:(t=u({html:r}),o[1]=r,o[2]=t);let m;return o[3]===t?m=o[4]:(m=(0,e.jsx)("div",{className:"p-3 overflow-y-auto overflow-x-hidden h-full docs-documentation flex flex-col gap-4",children:t}),o[3]=t,o[4]=m),m};export{v as default};
1
+ import{s as a}from"./chunk-LvLJmgfZ.js";import{u as p}from"./useEvent-D91BmmQi.js";import{t as s}from"./react-Bj1aDYRI.js";import{Tn as l,lr as n}from"./cells-RJTD-euN.js";import"./react-dom-CSu739Rf.js";import{t as c}from"./compiler-runtime-B3qBwwSJ.js";import{t as f}from"./jsx-runtime-PbYoItBR.js";import"./fullscreen-BXI8V5i6.js";import"./dist-Dez1I5M9.js";import"./cjs-DXo9vDEJ.js";import"./main-DmhaVp6Y.js";import"./useNonce-0SWz6w4W.js";import"./dist-DblYTes5.js";import"./dist-D-2yWcX9.js";import"./dist-CNKFZCiw.js";import"./dist-ZjSH4Z6x.js";import"./dist-BtrqKtvn.js";import"./session-CsT5Gg9j.js";import"./purify.es-DfJp_of2.js";import{t as u}from"./RenderHTML-B9mw7TD1.js";import{t as d}from"./empty-state-QmmE2oN4.js";var x=c();s();var e=a(f(),1),v=()=>{let o=(0,x.c)(5),{documentation:r}=p(l);if(!r){let i;return o[0]===Symbol.for("react.memo_cache_sentinel")?(i=(0,e.jsx)(d,{title:"View docs as you type",description:"Move your text cursor over a symbol to see its documentation.",icon:(0,e.jsx)(n,{})}),o[0]=i):i=o[0],i}let t;o[1]===r?t=o[2]:(t=u({html:r}),o[1]=r,o[2]=t);let m;return o[3]===t?m=o[4]:(m=(0,e.jsx)("div",{className:"p-3 overflow-y-auto overflow-x-hidden h-full docs-documentation flex flex-col gap-4",children:t}),o[3]=t,o[4]=m),m};export{v as default};
@@ -1,9 +1,9 @@
1
- var se=Object.defineProperty;var ue=(r,e,t)=>e in r?se(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var D=(r,e,t)=>ue(r,typeof e!="symbol"?e+"":e,t);import{s as B,t as C}from"./chunk-LvLJmgfZ.js";import{t as _}from"./react-Bj1aDYRI.js";import{Ui as ce}from"./cells-DENsmH9t.js";import{t as q}from"./compiler-runtime-B3qBwwSJ.js";import{_ as O}from"./useEventListener-BakX-tnw.js";import{t as H}from"./cn-X2M2usMq.js";import{t as de}from"./jsx-runtime-PbYoItBR.js";import{C as fe,w as W}from"./fullscreen-BXI8V5i6.js";import{d as me}from"./popover-DMNO6Poc.js";import{t as pe}from"./requests-KshNNAOp.js";import{t as ve}from"./createLucideIcon-BTp1tQDO.js";import{t as L}from"./use-toast-kCNiuc-_.js";import{n as ge}from"./paths-DhuNSnZ_.js";import{i as U}from"./errors-9jMmWHd9.js";import{t as z}from"./html-to-image-B6eCuh-2.js";var P=B(_(),1),v=B(de(),1),k="Progress",I=100,[he,it]=fe(k),[we,ye]=he(k),Y=P.forwardRef((r,e)=>{let{__scopeProgress:t,value:a=null,max:n,getValueLabel:i=xe,...l}=r;(n||n===0)&&!Q(n)&&console.error(be(`${n}`,"Progress"));let o=Q(n)?n:I;a!==null&&!Z(a,o)&&console.error(Pe(`${a}`,"Progress"));let s=Z(a,o)?a:null,u=R(s)?i(s,o):void 0;return(0,v.jsx)(we,{scope:t,value:s,max:o,children:(0,v.jsx)(W.div,{"aria-valuemax":o,"aria-valuemin":0,"aria-valuenow":R(s)?s:void 0,"aria-valuetext":u,role:"progressbar","data-state":K(s,o),"data-value":s??void 0,"data-max":o,...l,ref:e})})});Y.displayName=k;var X="ProgressIndicator",J=P.forwardRef((r,e)=>{let{__scopeProgress:t,...a}=r,n=ye(X,t);return(0,v.jsx)(W.div,{"data-state":K(n.value,n.max),"data-value":n.value??void 0,"data-max":n.max,...a,ref:e})});J.displayName=X;function xe(r,e){return`${Math.round(r/e*100)}%`}function K(r,e){return r==null?"indeterminate":r===e?"complete":"loading"}function R(r){return typeof r=="number"}function Q(r){return R(r)&&!isNaN(r)&&r>0}function Z(r,e){return R(r)&&!isNaN(r)&&r<=e&&r>=0}function be(r,e){return`Invalid prop \`max\` of value \`${r}\` supplied to \`${e}\`. Only numbers greater than 0 are valid max values. Defaulting to \`${I}\`.`}function Pe(r,e){return`Invalid prop \`value\` of value \`${r}\` supplied to \`${e}\`. The \`value\` prop must be:
1
+ var se=Object.defineProperty;var ue=(r,e,t)=>e in r?se(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var D=(r,e,t)=>ue(r,typeof e!="symbol"?e+"":e,t);import{s as B,t as C}from"./chunk-LvLJmgfZ.js";import{t as W}from"./react-Bj1aDYRI.js";import{Wi as ce}from"./cells-RJTD-euN.js";import{t as _}from"./compiler-runtime-B3qBwwSJ.js";import{_ as O}from"./useEventListener-BakX-tnw.js";import{t as q}from"./cn-X2M2usMq.js";import{t as de}from"./jsx-runtime-PbYoItBR.js";import{C as fe,w as H}from"./fullscreen-BXI8V5i6.js";import{d as me}from"./popover-DMNO6Poc.js";import{t as pe}from"./requests-KshNNAOp.js";import{t as ve}from"./createLucideIcon-BTp1tQDO.js";import{t as L}from"./use-toast-kCNiuc-_.js";import{n as ge}from"./paths-DhuNSnZ_.js";import{i as k}from"./errors-9jMmWHd9.js";import{t as z}from"./html-to-image-B8ja7wwq.js";var P=B(W(),1),v=B(de(),1),I="Progress",U=100,[he,it]=fe(I),[we,ye]=he(I),Y=P.forwardRef((r,e)=>{let{__scopeProgress:t,value:a=null,max:n,getValueLabel:i=xe,...l}=r;(n||n===0)&&!Q(n)&&console.error(be(`${n}`,"Progress"));let o=Q(n)?n:U;a!==null&&!Z(a,o)&&console.error(Pe(`${a}`,"Progress"));let s=Z(a,o)?a:null,u=R(s)?i(s,o):void 0;return(0,v.jsx)(we,{scope:t,value:s,max:o,children:(0,v.jsx)(H.div,{"aria-valuemax":o,"aria-valuemin":0,"aria-valuenow":R(s)?s:void 0,"aria-valuetext":u,role:"progressbar","data-state":K(s,o),"data-value":s??void 0,"data-max":o,...l,ref:e})})});Y.displayName=I;var X="ProgressIndicator",J=P.forwardRef((r,e)=>{let{__scopeProgress:t,...a}=r,n=ye(X,t);return(0,v.jsx)(H.div,{"data-state":K(n.value,n.max),"data-value":n.value??void 0,"data-max":n.max,...a,ref:e})});J.displayName=X;function xe(r,e){return`${Math.round(r/e*100)}%`}function K(r,e){return r==null?"indeterminate":r===e?"complete":"loading"}function R(r){return typeof r=="number"}function Q(r){return R(r)&&!isNaN(r)&&r>0}function Z(r,e){return R(r)&&!isNaN(r)&&r<=e&&r>=0}function be(r,e){return`Invalid prop \`max\` of value \`${r}\` supplied to \`${e}\`. Only numbers greater than 0 are valid max values. Defaulting to \`${U}\`.`}function Pe(r,e){return`Invalid prop \`value\` of value \`${r}\` supplied to \`${e}\`. The \`value\` prop must be:
2
2
  - a positive number
3
- - less than the value passed to \`max\` (or ${I} if no \`max\` prop is set)
3
+ - less than the value passed to \`max\` (or ${U} if no \`max\` prop is set)
4
4
  - \`null\` or \`undefined\` if the progress is indeterminate.
5
5
 
6
- Defaulting to \`null\`.`}var ee=Y,Se=J,je=ve("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]),te=r=>{let e,t=new Set,a=(o,s)=>{let u=typeof o=="function"?o(e):o;if(!Object.is(u,e)){let c=e;e=s??(typeof u!="object"||!u)?u:Object.assign({},e,u),t.forEach(d=>d(e,c))}},n=()=>e,i={setState:a,getState:n,getInitialState:()=>l,subscribe:o=>(t.add(o),()=>t.delete(o)),destroy:()=>{t.clear()}},l=e=r(a,n,i);return i},Ne=r=>r?te(r):te,Le=C((r=>{var e=_(),t=me();function a(c,d){return c===d&&(c!==0||1/c==1/d)||c!==c&&d!==d}var n=typeof Object.is=="function"?Object.is:a,i=t.useSyncExternalStore,l=e.useRef,o=e.useEffect,s=e.useMemo,u=e.useDebugValue;r.useSyncExternalStoreWithSelector=function(c,d,f,x,b){var g=l(null);if(g.current===null){var h={hasValue:!1,value:null};g.current=h}else h=g.current;g=s(function(){function A(p){if(!G){if(G=!0,j=p,p=x(p),b!==void 0&&h.hasValue){var w=h.value;if(b(w,p))return N=w}return N=p}if(w=N,n(j,p))return w;var V=x(p);return b!==void 0&&b(w,V)?(j=p,w):(j=p,N=V)}var G=!1,j,N,M=f===void 0?null:f;return[function(){return A(d())},M===null?void 0:function(){return A(M())}]},[d,f,x,b]);var S=i(c,g[0],g[1]);return o(function(){h.hasValue=!0,h.value=S},[S]),u(S),S}})),Re=C(((r,e)=>{e.exports=Le()}));const m={toMarkdown:r=>m.replace(r,"md"),toHTML:r=>m.replace(r,"html"),toPNG:r=>m.replace(r,"png"),toPDF:r=>m.replace(r,"pdf"),toPY:r=>m.replace(r,"py"),toIPYNB:r=>m.replace(r,"ipynb"),withoutExtension:r=>{let e=r.split(".");return e.length===1?r:e.slice(0,-1).join(".")},replace:(r,e)=>r.endsWith(`.${e}`)?r:`${m.withoutExtension(r)}.${e}`};var re={png:"png",jpg:"jpg",jpeg:"jpeg",gif:"gif",webp:"webp",avif:"avif",bmp:"bmp",tiff:"tiff",svg:"svg","svg+xml":"svg"};function Ee(r){var t;let e=r.match(/^data:image\/([^,;]+)/);if(e)return re[e[1]];try{return re[((t=new URL(r,window.location.href).pathname.split(".").pop())==null?void 0:t.toLowerCase())??""]}catch{return}}var y=320,E=180;function ne(r){if(!r||r==="about:blank")return null;try{let e=new URL(r,window.location.href);return e.origin===window.location.origin?null:e.href}catch{return r}}function $e(r,e,t){let a=[],n="";for(let i of e){let l=n+i;r.measureText(l).width<=t?n=l:(n&&a.push(n),n=i)}return n&&a.push(n),a}function F(r){let e=window.devicePixelRatio||1,t=document.createElement("canvas");t.width=y*e,t.height=E*e;let a=t.getContext("2d");if(!a)return t.toDataURL("image/png");a.scale(e,e),a.fillStyle="#f3f4f6",a.fillRect(0,0,y,E),a.strokeStyle="#d1d5db",a.strokeRect(.5,.5,y-1,E-1),a.fillStyle="#6b7280",a.font="8px sans-serif",a.textAlign="center",a.textBaseline="middle";let n=y-32,i=r?$e(a,r,n):[],l=(E-(1+i.length)*14)/2+14/2;a.fillText("External iframe",y/2,l),l+=14;for(let o of i)a.fillText(o,y/2,l),l+=14;return t.toDataURL("image/png")}async function De(r){var n;let e=r.querySelector("iframe");if(!e)return null;let t=ne(e.getAttribute("src"));if(t)return F(t);let a;try{let i=e.contentDocument||((n=e.contentWindow)==null?void 0:n.document);if(!(i!=null&&i.body))return null;a=i}catch{return F(null)}for(let i of a.querySelectorAll("iframe")){let l=ne(i.getAttribute("src"));if(l)return F(l)}return null}var ae=class le{constructor(e){D(this,"progress",0);D(this,"listeners",new Set);this.total=e}static indeterminate(){return new le("indeterminate")}addTotal(e){this.total==="indeterminate"?this.total=e:this.total+=e,this.notifyListeners()}increment(e){this.progress+=e,this.notifyListeners()}getProgress(){return this.total==="indeterminate"?"indeterminate":this.progress/this.total*100}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}notifyListeners(){let e=this.getProgress();for(let t of this.listeners)t(e)}},Oe=q(),T=P.forwardRef((r,e)=>{let t=(0,Oe.c)(20),a,n,i,l;t[0]===r?(a=t[1],n=t[2],i=t[3],l=t[4]):({className:a,value:l,indeterminate:n,...i}=r,t[0]=r,t[1]=a,t[2]=n,t[3]=i,t[4]=l);let o;t[5]===a?o=t[6]:(o=H("relative h-2 w-full overflow-hidden rounded-full bg-primary/20",a),t[5]=a,t[6]=o);let s=n?"w-1/3 animate-progress-indeterminate":"w-full transition-transform duration-300 ease-out",u;t[7]===s?u=t[8]:(u=H("h-full flex-1 bg-primary",s),t[7]=s,t[8]=u);let c;t[9]!==n||t[10]!==l?(c=n?void 0:{transform:`translateX(-${100-(l||0)}%)`},t[9]=n,t[10]=l,t[11]=c):c=t[11];let d;t[12]!==u||t[13]!==c?(d=(0,v.jsx)(Se,{className:u,style:c}),t[12]=u,t[13]=c,t[14]=d):d=t[14];let f;return t[15]!==i||t[16]!==e||t[17]!==o||t[18]!==d?(f=(0,v.jsx)(ee,{ref:e,className:o,...i,children:d}),t[15]=i,t[16]=e,t[17]=o,t[18]=d,t[19]=f):f=t[19],f});T.displayName=ee.displayName;var Ue=q();const ke=r=>{let e=(0,Ue.c)(13),{progress:t,showPercentage:a}=r,n=a===void 0?!1:a,i,l;e[0]===t?(i=e[1],l=e[2]):(i=x=>t.subscribe(x),l=()=>t.getProgress(),e[0]=t,e[1]=i,e[2]=l);let o=(0,P.useSyncExternalStore)(i,l),s=o==="indeterminate"||o===100,u=s?void 0:o,c;e[3]!==s||e[4]!==u?(c=(0,v.jsx)(T,{value:u,indeterminate:s}),e[3]=s,e[4]=u,e[5]=c):c=e[5];let d;e[6]!==s||e[7]!==n||e[8]!==o?(d=!s&&n&&(0,v.jsxs)("div",{className:"mt-1 text-xs text-muted-foreground text-right",children:[Math.round(o),"%"]}),e[6]=s,e[7]=n,e[8]=o,e[9]=d):d=e[9];let f;return e[10]!==c||e[11]!==d?(f=(0,v.jsxs)("div",{className:"mt-2 w-full min-w-[200px]",children:[c,d]}),e[10]=c,e[11]=d,e[12]=f):f=e[12],f};var Ie=1200;async function Fe(r,e,t){let a=ae.indeterminate(),n=L({title:r,description:P.createElement(ke,{progress:a}),duration:1/0});try{let i=await e(a);return t?n.update({duration:Ie,description:void 0,...t}):n.dismiss(),i}catch(i){throw n.dismiss(),i}}function Te(r){let e=document.getElementById(ce.create(r));if(!e){O.error(`Output element not found for cell ${r}`);return}return e}var Ae=500,Ge=`
6
+ Defaulting to \`null\`.`}var ee=Y,Se=J,je=ve("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]),te=r=>{let e,t=new Set,a=(o,s)=>{let u=typeof o=="function"?o(e):o;if(!Object.is(u,e)){let c=e;e=s??(typeof u!="object"||!u)?u:Object.assign({},e,u),t.forEach(d=>d(e,c))}},n=()=>e,i={setState:a,getState:n,getInitialState:()=>l,subscribe:o=>(t.add(o),()=>t.delete(o)),destroy:()=>{t.clear()}},l=e=r(a,n,i);return i},Ne=r=>r?te(r):te,Le=C((r=>{var e=W(),t=me();function a(c,d){return c===d&&(c!==0||1/c==1/d)||c!==c&&d!==d}var n=typeof Object.is=="function"?Object.is:a,i=t.useSyncExternalStore,l=e.useRef,o=e.useEffect,s=e.useMemo,u=e.useDebugValue;r.useSyncExternalStoreWithSelector=function(c,d,f,x,b){var g=l(null);if(g.current===null){var h={hasValue:!1,value:null};g.current=h}else h=g.current;g=s(function(){function A(p){if(!G){if(G=!0,j=p,p=x(p),b!==void 0&&h.hasValue){var w=h.value;if(b(w,p))return N=w}return N=p}if(w=N,n(j,p))return w;var V=x(p);return b!==void 0&&b(w,V)?(j=p,w):(j=p,N=V)}var G=!1,j,N,M=f===void 0?null:f;return[function(){return A(d())},M===null?void 0:function(){return A(M())}]},[d,f,x,b]);var S=i(c,g[0],g[1]);return o(function(){h.hasValue=!0,h.value=S},[S]),u(S),S}})),Re=C(((r,e)=>{e.exports=Le()}));const m={toMarkdown:r=>m.replace(r,"md"),toHTML:r=>m.replace(r,"html"),toPNG:r=>m.replace(r,"png"),toPDF:r=>m.replace(r,"pdf"),toPY:r=>m.replace(r,"py"),toIPYNB:r=>m.replace(r,"ipynb"),withoutExtension:r=>{let e=r.split(".");return e.length===1?r:e.slice(0,-1).join(".")},replace:(r,e)=>r.endsWith(`.${e}`)?r:`${m.withoutExtension(r)}.${e}`};var re={png:"png",jpg:"jpg",jpeg:"jpeg",gif:"gif",webp:"webp",avif:"avif",bmp:"bmp",tiff:"tiff",svg:"svg","svg+xml":"svg"};function Ee(r){var t;let e=r.match(/^data:image\/([^,;]+)/);if(e)return re[e[1]];try{return re[((t=new URL(r,window.location.href).pathname.split(".").pop())==null?void 0:t.toLowerCase())??""]}catch{return}}var y=320,E=180;function ne(r){if(!r||r==="about:blank")return null;try{let e=new URL(r,window.location.href);return e.origin===window.location.origin?null:e.href}catch{return r}}function $e(r,e,t){let a=[],n="";for(let i of e){let l=n+i;r.measureText(l).width<=t?n=l:(n&&a.push(n),n=i)}return n&&a.push(n),a}function F(r){let e=window.devicePixelRatio||1,t=document.createElement("canvas");t.width=y*e,t.height=E*e;let a=t.getContext("2d");if(!a)return t.toDataURL("image/png");a.scale(e,e),a.fillStyle="#f3f4f6",a.fillRect(0,0,y,E),a.strokeStyle="#d1d5db",a.strokeRect(.5,.5,y-1,E-1),a.fillStyle="#6b7280",a.font="8px sans-serif",a.textAlign="center",a.textBaseline="middle";let n=y-32,i=r?$e(a,r,n):[],l=(E-(1+i.length)*14)/2+14/2;a.fillText("External iframe",y/2,l),l+=14;for(let o of i)a.fillText(o,y/2,l),l+=14;return t.toDataURL("image/png")}async function De(r){var n;let e=r.querySelector("iframe");if(!e)return null;let t=ne(e.getAttribute("src"));if(t)return F(t);let a;try{let i=e.contentDocument||((n=e.contentWindow)==null?void 0:n.document);if(!(i!=null&&i.body))return null;a=i}catch{return F(null)}for(let i of a.querySelectorAll("iframe")){let l=ne(i.getAttribute("src"));if(l)return F(l)}return null}var ae=class le{constructor(e){D(this,"progress",0);D(this,"listeners",new Set);this.total=e}static indeterminate(){return new le("indeterminate")}addTotal(e){this.total==="indeterminate"?this.total=e:this.total+=e,this.notifyListeners()}increment(e){this.progress+=e,this.notifyListeners()}getProgress(){return this.total==="indeterminate"?"indeterminate":this.progress/this.total*100}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}notifyListeners(){let e=this.getProgress();for(let t of this.listeners)t(e)}},Oe=_(),T=P.forwardRef((r,e)=>{let t=(0,Oe.c)(20),a,n,i,l;t[0]===r?(a=t[1],n=t[2],i=t[3],l=t[4]):({className:a,value:l,indeterminate:n,...i}=r,t[0]=r,t[1]=a,t[2]=n,t[3]=i,t[4]=l);let o;t[5]===a?o=t[6]:(o=q("relative h-2 w-full overflow-hidden rounded-full bg-primary/20",a),t[5]=a,t[6]=o);let s=n?"w-1/3 animate-progress-indeterminate":"w-full transition-transform duration-300 ease-out",u;t[7]===s?u=t[8]:(u=q("h-full flex-1 bg-primary",s),t[7]=s,t[8]=u);let c;t[9]!==n||t[10]!==l?(c=n?void 0:{transform:`translateX(-${100-(l||0)}%)`},t[9]=n,t[10]=l,t[11]=c):c=t[11];let d;t[12]!==u||t[13]!==c?(d=(0,v.jsx)(Se,{className:u,style:c}),t[12]=u,t[13]=c,t[14]=d):d=t[14];let f;return t[15]!==i||t[16]!==e||t[17]!==o||t[18]!==d?(f=(0,v.jsx)(ee,{ref:e,className:o,...i,children:d}),t[15]=i,t[16]=e,t[17]=o,t[18]=d,t[19]=f):f=t[19],f});T.displayName=ee.displayName;var ke=_();const Ie=r=>{let e=(0,ke.c)(13),{progress:t,showPercentage:a}=r,n=a===void 0?!1:a,i,l;e[0]===t?(i=e[1],l=e[2]):(i=x=>t.subscribe(x),l=()=>t.getProgress(),e[0]=t,e[1]=i,e[2]=l);let o=(0,P.useSyncExternalStore)(i,l),s=o==="indeterminate"||o===100,u=s?void 0:o,c;e[3]!==s||e[4]!==u?(c=(0,v.jsx)(T,{value:u,indeterminate:s}),e[3]=s,e[4]=u,e[5]=c):c=e[5];let d;e[6]!==s||e[7]!==n||e[8]!==o?(d=!s&&n&&(0,v.jsxs)("div",{className:"mt-1 text-xs text-muted-foreground text-right",children:[Math.round(o),"%"]}),e[6]=s,e[7]=n,e[8]=o,e[9]=d):d=e[9];let f;return e[10]!==c||e[11]!==d?(f=(0,v.jsxs)("div",{className:"mt-2 w-full min-w-[200px]",children:[c,d]}),e[10]=c,e[11]=d,e[12]=f):f=e[12],f};var Ue=1200;async function Fe(r,e,t){let a=ae.indeterminate(),n=L({title:r,description:P.createElement(Ie,{progress:a}),duration:1/0});try{let i=await e(a);return t?n.update({duration:Ue,description:void 0,...t}):n.dismiss(),i}catch(i){throw n.dismiss(),i}}function Te(r){let e=document.getElementById(ce.create(r));if(!e){O.error(`Output element not found for cell ${r}`);return}return e}var Ae=500,Ge=`
7
7
  * { scrollbar-width: none; -ms-overflow-style: none; }
8
8
  *::-webkit-scrollbar { display: none; }
9
- `;async function ie(r){let e=Te(r);if(!e)return;let t=await De(e);if(t)return t;let a=Date.now(),n=await z(e,{extraStyleContent:Ge,style:{maxHeight:"none",overflow:"visible"},height:e.scrollHeight}),i=Date.now()-a;return i>Ae&&O.debug("toPng operation for element",e,`took ${i} ms (exceeds threshold)`),n}async function Me(r,e){try{let t=await ie(r);if(!t)throw Error("Failed to get image data URL");$(t,m.toPNG(e))}catch(t){L({title:"Failed to download PNG",description:U(t),variant:"danger"})}}const Ve=()=>(document.body.classList.add("printing"),()=>{document.body.classList.remove("printing")});async function Be(r){let{element:e,filename:t,prepare:a}=r,n=document.getElementById("App"),i=(n==null?void 0:n.scrollTop)??0,l;a&&(l=a(e));try{$(await z(e),m.toPNG(t))}catch(o){O.error("Error downloading as PNG",o),L({title:"Failed to download as PNG",description:U(o),variant:"danger"})}finally{l==null||l(),document.body.classList.contains("printing")&&document.body.classList.remove("printing"),requestAnimationFrame(()=>{n==null||n.scrollTo(0,i)})}}function $(r,e){let t=document.createElement("a");t.href=r,e&&(t.download=e),t.click(),t.remove()}function oe(r,e){let t=URL.createObjectURL(r);$(t,e),URL.revokeObjectURL(t)}async function Ce(r){let e=pe(),{filename:t,webpdf:a,preset:n="document",includeInputs:i=!0,rasterizeOutputs:l=!0,rasterScale:o=4,rasterServer:s="static"}=r;try{let u=await e.exportAsPDF({webpdf:a,preset:n,includeInputs:i,rasterizeOutputs:l,rasterScale:o,rasterServer:s}),c=ge.basename(t);oe(u,m.toPDF(c))}catch(u){throw L({title:"Failed to download",description:U(u),variant:"danger"}),u}}export{Me as a,Fe as c,m as d,Ee as f,je as h,$ as i,T as l,Ne as m,Ce as n,Be as o,Re as p,oe as r,ie as s,Ve as t,ae as u};
9
+ `;async function ie(r){let e=Te(r);if(!e)return;let t=await De(e);if(t)return t;let a=Date.now(),n=await z(e,{extraStyleContent:Ge,style:{maxHeight:"none",overflow:"visible"},height:e.scrollHeight}),i=Date.now()-a;return i>Ae&&O.debug("toPng operation for element",e,`took ${i} ms (exceeds threshold)`),n}async function Me(r,e){try{let t=await ie(r);if(!t)throw Error("Failed to get image data URL");$(t,m.toPNG(e))}catch(t){L({title:"Failed to download PNG",description:k(t),variant:"danger"})}}const Ve=()=>(document.body.classList.add("printing"),()=>{document.body.classList.remove("printing")});async function Be(r){let{element:e,filename:t,prepare:a}=r,n=document.getElementById("App"),i=(n==null?void 0:n.scrollTop)??0,l;a&&(l=a(e));try{$(await z(e),m.toPNG(t))}catch(o){O.error("Error downloading as PNG",o),L({title:"Failed to download as PNG",description:k(o),variant:"danger"})}finally{l==null||l(),document.body.classList.contains("printing")&&document.body.classList.remove("printing"),requestAnimationFrame(()=>{n==null||n.scrollTo(0,i)})}}function $(r,e){let t=document.createElement("a");t.href=r,e&&(t.download=e),t.click(),t.remove()}function oe(r,e){let t=URL.createObjectURL(r);$(t,e),URL.revokeObjectURL(t)}async function Ce(r){let e=pe(),{filename:t,webpdf:a,preset:n="document",includeInputs:i=!0,rasterizeOutputs:l=!0,rasterScale:o=4,rasterServer:s="static"}=r;try{let u=await e.exportAsPDF({webpdf:a,preset:n,includeInputs:i,rasterizeOutputs:l,rasterScale:o,rasterServer:s}),c=ge.basename(t);oe(u,m.toPDF(c))}catch(u){throw L({title:"Failed to download",description:k(u),variant:"danger"}),u}}export{Me as a,Fe as c,m as d,Ee as f,je as h,$ as i,T as l,Ne as m,Ce as n,Be as o,Re as p,oe as r,ie as s,Ve as t,ae as u};