@marimo-team/islands 0.19.10-dev9 → 0.19.11-dev0

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 (94) hide show
  1. package/dist/Plot-C9vQQj4X.js +172249 -0
  2. package/dist/{any-language-editor-CKEbZakX.js → any-language-editor-t_VsTNa-.js} +16 -16
  3. package/dist/dist-4YNZxwMI.js +8 -0
  4. package/dist/dist-7nR3r2kG.js +5 -0
  5. package/dist/{dist-CBA36Nuy.js → dist-B2-r9y-0.js} +109 -109
  6. package/dist/dist-B2gkyT3r.js +5 -0
  7. package/dist/{dist-DRtGOCCq.js → dist-B4tYJP_i.js} +2 -2
  8. package/dist/{dist-C0e1aNzV.js → dist-B5ATpkxy.js} +2 -2
  9. package/dist/dist-B8G3I6vJ.js +8 -0
  10. package/dist/{dist-DKnxaCRl.js → dist-B94MxrQS.js} +2 -2
  11. package/dist/dist-BJ96Ykfp.js +8 -0
  12. package/dist/dist-BKLIWGw4.js +5 -0
  13. package/dist/{dist-l0KayR2-.js → dist-BLwfpZD-.js} +2 -2
  14. package/dist/{dist-CzKXtzDE.js → dist-BYmtF1W6.js} +2 -2
  15. package/dist/{dist-BJUs1DAG.js → dist-BbBnU4tG.js} +1 -1
  16. package/dist/dist-Bf3ou00A.js +6 -0
  17. package/dist/{dist-CITQGRtG.js → dist-BfactX3G.js} +4 -4
  18. package/dist/{dist-DiCjkKC2.js → dist-BoAHOW2l.js} +2 -2
  19. package/dist/{dist-BsBHh4jO.js → dist-Bsv_ARko.js} +4 -4
  20. package/dist/dist-BvkKXuPm.js +5 -0
  21. package/dist/{dist-DsqQCNKw.js → dist-C2-m5aEk.js} +119 -119
  22. package/dist/dist-C6NJ3n6r.js +5 -0
  23. package/dist/{dist-yI-ah_iK.js → dist-CC9VUnXd.js} +1 -1
  24. package/dist/{dist-tdABwZK5.js → dist-CE43BRmt.js} +1 -1
  25. package/dist/{dist-COp5dkis.js → dist-CJrHMxlI.js} +31 -31
  26. package/dist/{dist-Ct5hkOvC.js → dist-CPTE45iS.js} +1 -1
  27. package/dist/{dist-C-at-5cM.js → dist-CcOGT46m.js} +27 -27
  28. package/dist/dist-CecLPYY5.js +5 -0
  29. package/dist/{dist-BSMZYwqW.js → dist-Cgf353Ki.js} +1 -1
  30. package/dist/dist-Ch0SwRzK.js +5 -0
  31. package/dist/{dist-BqYNqP5W.js → dist-CkEUrAus.js} +2 -2
  32. package/dist/{dist-D4ObdSdT.js → dist-CmZYrgd_.js} +1 -1
  33. package/dist/{dist-D1q38GZb.js → dist-Crk9ejOy.js} +4 -4
  34. package/dist/dist-D6eWHiFh.js +6 -0
  35. package/dist/dist-DCQ710Bv.js +5 -0
  36. package/dist/{dist-r6N_0WG-.js → dist-DOil6y-3.js} +4 -4
  37. package/dist/{dist-CPd_adhw.js → dist-Dc1SFk5I.js} +2 -2
  38. package/dist/dist-Dit9tk8a.js +1242 -0
  39. package/dist/{dist-B7NoEgR4.js → dist-DqJdzAYM.js} +2 -2
  40. package/dist/dist-P_pkS5f-.js +8 -0
  41. package/dist/{dist-CsjsvW0K.js → dist-T4g7Sr6e.js} +3 -3
  42. package/dist/{dist-WETuLs_C.js → dist-glA_fIK_.js} +2 -2
  43. package/dist/{dist-bRBEzJF8.js → dist-iiugPhCC.js} +1 -1
  44. package/dist/{dist-D7jHtwN8.js → dist-r8ecBV-v.js} +135 -65
  45. package/dist/{dist-BlRm4v0e.js → dist-yVJ4xE5n.js} +5 -5
  46. package/dist/{esm-QY6C-Sev.js → esm-BAS2d2Ad.js} +1421 -1454
  47. package/dist/main.js +421 -383
  48. package/package.json +11 -11
  49. package/src/components/data-table/TableActions.tsx +8 -1
  50. package/src/components/data-table/data-table.tsx +2 -0
  51. package/src/components/data-table/download-actions.tsx +6 -1
  52. package/src/components/dependency-graph/dependency-graph-tree.tsx +10 -1
  53. package/src/components/dependency-graph/dependency-graph.tsx +1 -0
  54. package/src/components/dependency-graph/elements.ts +20 -9
  55. package/src/components/dependency-graph/panels.tsx +27 -11
  56. package/src/components/dependency-graph/types.ts +1 -0
  57. package/src/components/editor/chrome/wrapper/app-chrome.tsx +3 -0
  58. package/src/components/editor/package-alert.tsx +4 -4
  59. package/src/components/editor/renderers/vertical-layout/vertical-layout.tsx +3 -5
  60. package/src/core/codemirror/misc/__tests__/paste.test.ts +18 -0
  61. package/src/core/codemirror/misc/paste.ts +14 -10
  62. package/src/core/kernel/messages.ts +1 -0
  63. package/src/core/static/static-state.ts +5 -0
  64. package/src/core/static/types.ts +2 -0
  65. package/src/core/wasm/__tests__/store.test.ts +33 -0
  66. package/src/core/wasm/bridge.ts +2 -1
  67. package/src/core/wasm/store.ts +13 -1
  68. package/src/mount.tsx +23 -1
  69. package/src/plugins/impl/DataTablePlugin.tsx +4 -0
  70. package/src/plugins/impl/anywidget/AnyWidgetPlugin.tsx +7 -5
  71. package/src/plugins/impl/anywidget/__tests__/model.test.ts +53 -0
  72. package/src/plugins/impl/anywidget/model.ts +13 -10
  73. package/src/plugins/impl/chat/ChatPlugin.tsx +2 -0
  74. package/src/plugins/impl/chat/chat-ui.tsx +10 -1
  75. package/src/plugins/impl/data-frames/DataFramePlugin.tsx +4 -0
  76. package/src/plugins/impl/plotly/Plot.tsx +2 -0
  77. package/src/plugins/impl/plotly/PlotlyPlugin.tsx +36 -0
  78. package/src/theme/ThemeProvider.tsx +2 -0
  79. package/dist/Plot-CmsrWWji.js +0 -169233
  80. package/dist/dist-BKTAAusE.js +0 -5
  81. package/dist/dist-BNXv9Wjt.js +0 -6
  82. package/dist/dist-C-tlm9eD.js +0 -6
  83. package/dist/dist-CFi_P6cs.js +0 -5
  84. package/dist/dist-CgQuqOGS.js +0 -5
  85. package/dist/dist-CgkWmw0c.js +0 -5
  86. package/dist/dist-DGkeEIsV.js +0 -8
  87. package/dist/dist-DOwZz8aI.js +0 -5
  88. package/dist/dist-DRiJGkDN.js +0 -8
  89. package/dist/dist-GR6ABeNk.js +0 -8
  90. package/dist/dist-NcujbSeH.js +0 -8
  91. package/dist/dist-g1p2PEVs.js +0 -1242
  92. package/dist/dist-pNvwCQqJ.js +0 -5
  93. package/dist/dist-wudNDAiO.js +0 -5
  94. package/dist/dist-yK8yJfz2.js +0 -5
package/dist/main.js CHANGED
@@ -26,11 +26,11 @@ import { c as Functions, i as parseShortcut, l as throwNotImplemented, o as Obje
26
26
  import { t as require_jsx_runtime } from "./jsx-runtime-CTBg5pdT.js";
27
27
  import { t as require_react_dom } from "./react-dom-CqtLRVZP.js";
28
28
  import { a as Portal$3, c as prettyError, d as TooltipPortal, f as TooltipProvider, h as TooltipProvider$1, i as Overlay, l as Tooltip, m as TooltipTrigger, n as ErrorBanner, o as Root$7, p as TooltipRoot, r as Content$4, s as CellNotInitializedError, t as Banner, u as TooltipContent } from "./error-banner-D2zjeN_a.js";
29
- import { a as _extends$5, c as setDiagnostics, d as CopyClipboardIcon, i as minimalSetup, l as historyField, o as forEachDiagnostic, r as esm_default, s as linter, t as langs, u as insertTab } from "./esm-QY6C-Sev.js";
29
+ import { a as _extends$5, c as setDiagnostics, d as CopyClipboardIcon, i as minimalSetup, l as historyField, o as forEachDiagnostic, r as esm_default, s as linter, t as langs, u as insertTab } from "./esm-BAS2d2Ad.js";
30
30
  import { t as purify } from "./purify.es-Brw-U87Q.js";
31
31
  import { C as buildStore, _ as useAtom, a as getResolvedMarimoConfig, b as useStore, c as AppConfigSchema, d as useJotaiEffect, g as Provider, h as useEvent_default, i as autoInstantiateAtom, l as createDeepEqualAtom, m as isEqual_default, n as useTheme, o as localeAtom, p as isIslands, r as aiEnabledAtom, s as useResolvedMarimoConfig, t as resolvedThemeAtom, u as store, v as useAtomValue, w as getBuildingBlocks, x as atom, y as useSetAtom } from "./useTheme-SlKl8MlS.js";
32
- import { $ as ViewPlugin, At as RangeSet, B as tags$1, Dt as Facet$1, E as getIndentUnit, Et as EditorState, Ft as Text$2, I as syntaxTree, It as Transaction, J as parseMixed, L as unfoldAll, Nt as StateEffect, Pt as StateField, Q as GutterMarker, S as foldInside, Tt as EditorSelection, Y as Decoration, Z as EditorView, _t as showPanel, b as foldAll, bt as Annotation, dt as keymap, et as WidgetType, f as StreamLanguage, kt as Prec, l as LanguageDescription, mt as placeholder, ot as gutter, u as LanguageSupport, ut as hoverTooltip, vt as showTooltip, w as foldNodeProp, wt as Compartment } from "./dist-D7jHtwN8.js";
33
- import { d as snippet, n as acceptCompletion, o as closeCompletion, r as autocompletion, u as insertCompletionText } from "./dist-g1p2PEVs.js";
32
+ import { $ as ViewPlugin, At as Prec, B as tags$1, Dt as EditorState, E as getIndentUnit, Et as EditorSelection, Ft as StateField, I as syntaxTree, It as Text$2, J as parseMixed, L as unfoldAll, Lt as Transaction, Ot as Facet$1, Pt as StateEffect, Q as GutterMarker, S as foldInside, Tt as Compartment, Y as Decoration, Z as EditorView, b as foldAll, dt as keymap, et as WidgetType, f as StreamLanguage, jt as RangeSet, l as LanguageDescription, mt as placeholder, ot as gutter, u as LanguageSupport, ut as hoverTooltip, vt as showPanel, w as foldNodeProp, xt as Annotation, yt as showTooltip } from "./dist-r8ecBV-v.js";
33
+ import { d as snippet, n as acceptCompletion, o as closeCompletion, r as autocompletion, u as insertCompletionText } from "./dist-Dit9tk8a.js";
34
34
  import { p as _baseTimes_default } from "./_baseFor-DSVmVciX.js";
35
35
  import { n as _arrayMap_default } from "./toString-C4TLO6FA.js";
36
36
  import { i as toInteger_default, n as pick_default, r as _baseSet_default, t as range_default } from "./range-LoQMRQIX.js";
@@ -45,12 +45,12 @@ import { t as invariant } from "./invariant-D9QLJ4SZ.js";
45
45
  import { a as arrayInsert, c as arrayShallowEquals, i as arrayDelete, l as uniqueBy, n as once, o as arrayInsertMany, r as Arrays, s as arrayMove, t as memoizeLastValue, u as clamp } from "./once-BqS42WgZ.js";
46
46
  import { n as getIframeCapabilities, t as useIframeCapabilities } from "./useIframeCapabilities-DurI5SJh.js";
47
47
  import { i as main_exports, r as init_main } from "./main-DhFbkwoC.js";
48
- import { a as PLSQL, c as SQLite, d as schemaCompletionSource, f as sql, i as MySQL, l as StandardSQL, n as MSSQL, o as PostgreSQL, r as MariaSQL, s as SQLDialect, t as Cassandra, u as keywordCompletionSource } from "./dist-CPd_adhw.js";
49
- import { a as markdown, s as markdownLanguage } from "./dist-CBA36Nuy.js";
50
- import "./dist-COp5dkis.js";
51
- import "./dist-BSMZYwqW.js";
52
- import "./dist-DsqQCNKw.js";
53
- import { a as parser$1, i as pythonLanguage, n as localCompletionSource, r as python, t as globalCompletion } from "./dist-l0KayR2-.js";
48
+ import { a as PLSQL, c as SQLite, d as schemaCompletionSource, f as sql, i as MySQL, l as StandardSQL, n as MSSQL, o as PostgreSQL, r as MariaSQL, s as SQLDialect, t as Cassandra, u as keywordCompletionSource } from "./dist-Dc1SFk5I.js";
49
+ import { a as markdown, s as markdownLanguage } from "./dist-B2-r9y-0.js";
50
+ import "./dist-CJrHMxlI.js";
51
+ import "./dist-Cgf353Ki.js";
52
+ import "./dist-C2-m5aEk.js";
53
+ import { a as parser$1, i as pythonLanguage, n as localCompletionSource, r as python, t as globalCompletion } from "./dist-BLwfpZD-.js";
54
54
  import { n as stexMath } from "./stex-DrxP7bb3.js";
55
55
  import { n as memoize$1, t as isPropValid } from "./emotion-is-prop-valid.esm--WpIBtj8.js";
56
56
  import { n as formats } from "./vega-loader.browser-DqHiiBeQ.js";
@@ -58,15 +58,15 @@ import { t as useAsyncData } from "./useAsyncData-dr8GazGv.js";
58
58
  import "./defaultLocale-DjFHq3Xk.js";
59
59
  import "./defaultLocale-B_A76Zpk.js";
60
60
  import { c as katex } from "./katex-Ba7xZPrx.js";
61
- import "./dist-bRBEzJF8.js";
62
- import "./dist-DiCjkKC2.js";
63
- import "./dist-Ct5hkOvC.js";
64
- import "./dist-BJUs1DAG.js";
65
- import "./dist-DRtGOCCq.js";
66
- import "./dist-yI-ah_iK.js";
67
- import "./dist-BqYNqP5W.js";
68
- import "./dist-C-at-5cM.js";
69
- import "./dist-D4ObdSdT.js";
61
+ import "./dist-iiugPhCC.js";
62
+ import "./dist-BoAHOW2l.js";
63
+ import "./dist-CPTE45iS.js";
64
+ import "./dist-BbBnU4tG.js";
65
+ import "./dist-B4tYJP_i.js";
66
+ import "./dist-CC9VUnXd.js";
67
+ import "./dist-CkEUrAus.js";
68
+ import "./dist-CcOGT46m.js";
69
+ import "./dist-CmZYrgd_.js";
70
70
  let initialize;
71
71
  let __tla = Promise.all([
72
72
  (() => {
@@ -18151,7 +18151,7 @@ ${JSON.stringify(e2, null, 4)}`);
18151
18151
  }
18152
18152
  });
18153
18153
  if (!_) return null;
18154
- let v = "items" in _ ? _.items : _, y = prefixMatch(v), S = y ? e.matchBefore(y) : e.matchBefore(/[a-zA-Z0-9]+/), { pos: w } = e, E = sortCompletionItems(v, S == null ? void 0 : S.text, this.languageId);
18154
+ let v = "items" in _ ? _.items : _, y = prefixMatch(v), S = y ? e.matchBefore(y) ?? e.matchBefore(/[a-zA-Z0-9_]+/) : e.matchBefore(/[a-zA-Z0-9_]+/), { pos: w } = e, E = sortCompletionItems(v, S == null ? void 0 : S.text, this.languageId);
18155
18155
  S && (w = S.from);
18156
18156
  let O = E.map((e2) => {
18157
18157
  var _a3, _b3;
@@ -28362,7 +28362,7 @@ ${JSON.stringify(e2, null, 4)}`);
28362
28362
  return new LanguageSupport(StreamLanguage.define(e));
28363
28363
  }
28364
28364
  function sql$1(e) {
28365
- return import("./dist-B7NoEgR4.js").then((r) => r.sql({
28365
+ return import("./dist-DqJdzAYM.js").then((r) => r.sql({
28366
28366
  dialect: r[e]
28367
28367
  }));
28368
28368
  }
@@ -28375,7 +28375,7 @@ ${JSON.stringify(e2, null, 4)}`);
28375
28375
  "ino"
28376
28376
  ],
28377
28377
  load() {
28378
- return import("./dist-yK8yJfz2.js").then((e) => e.cpp());
28378
+ return import("./dist-BvkKXuPm.js").then((e) => e.cpp());
28379
28379
  }
28380
28380
  }),
28381
28381
  LanguageDescription.of({
@@ -28394,7 +28394,7 @@ ${JSON.stringify(e2, null, 4)}`);
28394
28394
  "hxx"
28395
28395
  ],
28396
28396
  load() {
28397
- return import("./dist-yK8yJfz2.js").then((e) => e.cpp());
28397
+ return import("./dist-BvkKXuPm.js").then((e) => e.cpp());
28398
28398
  }
28399
28399
  }),
28400
28400
  LanguageDescription.of({
@@ -28415,7 +28415,7 @@ ${JSON.stringify(e2, null, 4)}`);
28415
28415
  "css"
28416
28416
  ],
28417
28417
  load() {
28418
- return import("./dist-CFi_P6cs.js").then((e) => e.css());
28418
+ return import("./dist-BKLIWGw4.js").then((e) => e.css());
28419
28419
  }
28420
28420
  }),
28421
28421
  LanguageDescription.of({
@@ -28424,7 +28424,7 @@ ${JSON.stringify(e2, null, 4)}`);
28424
28424
  "go"
28425
28425
  ],
28426
28426
  load() {
28427
- return import("./dist-WETuLs_C.js").then((e) => e.go());
28427
+ return import("./dist-glA_fIK_.js").then((e) => e.go());
28428
28428
  }
28429
28429
  }),
28430
28430
  LanguageDescription.of({
@@ -28439,7 +28439,7 @@ ${JSON.stringify(e2, null, 4)}`);
28439
28439
  "hbs"
28440
28440
  ],
28441
28441
  load() {
28442
- return import("./dist-CITQGRtG.js").then((e) => e.html());
28442
+ return import("./dist-BfactX3G.js").then((e) => e.html());
28443
28443
  }
28444
28444
  }),
28445
28445
  LanguageDescription.of({
@@ -28448,7 +28448,7 @@ ${JSON.stringify(e2, null, 4)}`);
28448
28448
  "java"
28449
28449
  ],
28450
28450
  load() {
28451
- return import("./dist-DOwZz8aI.js").then((e) => e.java());
28451
+ return import("./dist-CecLPYY5.js").then((e) => e.java());
28452
28452
  }
28453
28453
  }),
28454
28454
  LanguageDescription.of({
@@ -28464,7 +28464,7 @@ ${JSON.stringify(e2, null, 4)}`);
28464
28464
  "cjs"
28465
28465
  ],
28466
28466
  load() {
28467
- return import("./dist-DKnxaCRl.js").then((e) => e.javascript());
28467
+ return import("./dist-B94MxrQS.js").then((e) => e.javascript());
28468
28468
  }
28469
28469
  }),
28470
28470
  LanguageDescription.of({
@@ -28475,7 +28475,7 @@ ${JSON.stringify(e2, null, 4)}`);
28475
28475
  "jinja2"
28476
28476
  ],
28477
28477
  load() {
28478
- return import("./dist-DRiJGkDN.js").then((e) => e.jinja());
28478
+ return import("./dist-BJ96Ykfp.js").then((e) => e.jinja());
28479
28479
  }
28480
28480
  }),
28481
28481
  LanguageDescription.of({
@@ -28488,7 +28488,7 @@ ${JSON.stringify(e2, null, 4)}`);
28488
28488
  "map"
28489
28489
  ],
28490
28490
  load() {
28491
- return import("./dist-BKTAAusE.js").then((e) => e.json());
28491
+ return import("./dist-B2gkyT3r.js").then((e) => e.json());
28492
28492
  }
28493
28493
  }),
28494
28494
  LanguageDescription.of({
@@ -28497,7 +28497,7 @@ ${JSON.stringify(e2, null, 4)}`);
28497
28497
  "jsx"
28498
28498
  ],
28499
28499
  load() {
28500
- return import("./dist-DKnxaCRl.js").then((e) => e.javascript({
28500
+ return import("./dist-B94MxrQS.js").then((e) => e.javascript({
28501
28501
  jsx: true
28502
28502
  }));
28503
28503
  }
@@ -28508,7 +28508,7 @@ ${JSON.stringify(e2, null, 4)}`);
28508
28508
  "less"
28509
28509
  ],
28510
28510
  load() {
28511
- return import("./dist-BNXv9Wjt.js").then((e) => e.less());
28511
+ return import("./dist-D6eWHiFh.js").then((e) => e.less());
28512
28512
  }
28513
28513
  }),
28514
28514
  LanguageDescription.of({
@@ -28517,7 +28517,7 @@ ${JSON.stringify(e2, null, 4)}`);
28517
28517
  "liquid"
28518
28518
  ],
28519
28519
  load() {
28520
- return import("./dist-GR6ABeNk.js").then((e) => e.liquid());
28520
+ return import("./dist-B8G3I6vJ.js").then((e) => e.liquid());
28521
28521
  }
28522
28522
  }),
28523
28523
  LanguageDescription.of({
@@ -28534,7 +28534,7 @@ ${JSON.stringify(e2, null, 4)}`);
28534
28534
  "mkd"
28535
28535
  ],
28536
28536
  load() {
28537
- return import("./dist-BlRm4v0e.js").then((e) => e.markdown());
28537
+ return import("./dist-yVJ4xE5n.js").then((e) => e.markdown());
28538
28538
  }
28539
28539
  }),
28540
28540
  LanguageDescription.of({
@@ -28560,7 +28560,7 @@ ${JSON.stringify(e2, null, 4)}`);
28560
28560
  "phtml"
28561
28561
  ],
28562
28562
  load() {
28563
- return import("./dist-DGkeEIsV.js").then((e) => e.php());
28563
+ return import("./dist-4YNZxwMI.js").then((e) => e.php());
28564
28564
  }
28565
28565
  }),
28566
28566
  LanguageDescription.of({
@@ -28588,7 +28588,7 @@ ${JSON.stringify(e2, null, 4)}`);
28588
28588
  ],
28589
28589
  filename: /^(BUCK|BUILD)$/,
28590
28590
  load() {
28591
- return import("./dist-wudNDAiO.js").then((e) => e.python());
28591
+ return import("./dist-C6NJ3n6r.js").then((e) => e.python());
28592
28592
  }
28593
28593
  }),
28594
28594
  LanguageDescription.of({
@@ -28597,7 +28597,7 @@ ${JSON.stringify(e2, null, 4)}`);
28597
28597
  "rs"
28598
28598
  ],
28599
28599
  load() {
28600
- return import("./dist-CgkWmw0c.js").then((e) => e.rust());
28600
+ return import("./dist-7nR3r2kG.js").then((e) => e.rust());
28601
28601
  }
28602
28602
  }),
28603
28603
  LanguageDescription.of({
@@ -28606,7 +28606,7 @@ ${JSON.stringify(e2, null, 4)}`);
28606
28606
  "sass"
28607
28607
  ],
28608
28608
  load() {
28609
- return import("./dist-C-tlm9eD.js").then((e) => e.sass({
28609
+ return import("./dist-Bf3ou00A.js").then((e) => e.sass({
28610
28610
  indented: true
28611
28611
  }));
28612
28612
  }
@@ -28617,7 +28617,7 @@ ${JSON.stringify(e2, null, 4)}`);
28617
28617
  "scss"
28618
28618
  ],
28619
28619
  load() {
28620
- return import("./dist-C-tlm9eD.js").then((e) => e.sass());
28620
+ return import("./dist-Bf3ou00A.js").then((e) => e.sass());
28621
28621
  }
28622
28622
  }),
28623
28623
  LanguageDescription.of({
@@ -28641,7 +28641,7 @@ ${JSON.stringify(e2, null, 4)}`);
28641
28641
  "tsx"
28642
28642
  ],
28643
28643
  load() {
28644
- return import("./dist-DKnxaCRl.js").then((e) => e.javascript({
28644
+ return import("./dist-B94MxrQS.js").then((e) => e.javascript({
28645
28645
  jsx: true,
28646
28646
  typescript: true
28647
28647
  }));
@@ -28658,7 +28658,7 @@ ${JSON.stringify(e2, null, 4)}`);
28658
28658
  "cts"
28659
28659
  ],
28660
28660
  load() {
28661
- return import("./dist-DKnxaCRl.js").then((e) => e.javascript({
28661
+ return import("./dist-B94MxrQS.js").then((e) => e.javascript({
28662
28662
  typescript: true
28663
28663
  }));
28664
28664
  }
@@ -28670,7 +28670,7 @@ ${JSON.stringify(e2, null, 4)}`);
28670
28670
  "wast"
28671
28671
  ],
28672
28672
  load() {
28673
- return import("./dist-pNvwCQqJ.js").then((e) => e.wast());
28673
+ return import("./dist-Ch0SwRzK.js").then((e) => e.wast());
28674
28674
  }
28675
28675
  }),
28676
28676
  LanguageDescription.of({
@@ -28687,7 +28687,7 @@ ${JSON.stringify(e2, null, 4)}`);
28687
28687
  "svg"
28688
28688
  ],
28689
28689
  load() {
28690
- return import("./dist-CzKXtzDE.js").then((e) => e.xml());
28690
+ return import("./dist-BYmtF1W6.js").then((e) => e.xml());
28691
28691
  }
28692
28692
  }),
28693
28693
  LanguageDescription.of({
@@ -28700,7 +28700,7 @@ ${JSON.stringify(e2, null, 4)}`);
28700
28700
  "yml"
28701
28701
  ],
28702
28702
  load() {
28703
- return import("./dist-CgQuqOGS.js").then((e) => e.yaml());
28703
+ return import("./dist-DCQ710Bv.js").then((e) => e.yaml());
28704
28704
  }
28705
28705
  }),
28706
28706
  LanguageDescription.of({
@@ -29800,13 +29800,13 @@ ${JSON.stringify(e2, null, 4)}`);
29800
29800
  "vue"
29801
29801
  ],
29802
29802
  load() {
29803
- return import("./dist-NcujbSeH.js").then((e) => e.vue());
29803
+ return import("./dist-P_pkS5f-.js").then((e) => e.vue());
29804
29804
  }
29805
29805
  }),
29806
29806
  LanguageDescription.of({
29807
29807
  name: "Angular Template",
29808
29808
  load() {
29809
- return import("./dist-r6N_0WG-.js").then((e) => e.angular());
29809
+ return import("./dist-DOil6y-3.js").then((e) => e.angular());
29810
29810
  }
29811
29811
  })
29812
29812
  ], cache$1 = /* @__PURE__ */ new WeakMap(), newline = /(\n|\r\n?|\u2028|\u2029)/g, leadingWhitespace = /^\s*/, nonWhitespace = /\S/, slice$1 = Array.prototype.slice, zero = 48, nine = 57, lowerA = 97, lowerF = 102, upperA = 65, upperF = 70;
@@ -40229,6 +40229,12 @@ ${c.sqlString}
40229
40229
  }
40230
40230
  });
40231
40231
  }
40232
+ function isStaticNotebook() {
40233
+ return (window == null ? void 0 : window.__MARIMO_STATIC__) !== void 0;
40234
+ }
40235
+ function getStaticVirtualFiles() {
40236
+ return invariant(window.__MARIMO_STATIC__ !== void 0, "Not a static notebook"), window.__MARIMO_STATIC__.files;
40237
+ }
40232
40238
  function base64ToDataURL(e, r) {
40233
40239
  return `data:${r};base64,${e}`;
40234
40240
  }
@@ -40319,12 +40325,6 @@ ${c.sqlString}
40319
40325
  type: d
40320
40326
  });
40321
40327
  }
40322
- function isStaticNotebook() {
40323
- return (window == null ? void 0 : window.__MARIMO_STATIC__) !== void 0;
40324
- }
40325
- function getStaticVirtualFiles() {
40326
- return invariant(window.__MARIMO_STATIC__ !== void 0, "Not a static notebook"), window.__MARIMO_STATIC__.files;
40327
- }
40328
40328
  function withoutLeadingDot(e) {
40329
40329
  return e.startsWith(".") ? e.slice(1) : e;
40330
40330
  }
@@ -40571,7 +40571,10 @@ ${c.sqlString}
40571
40571
  getMarimoInternal(y).updateAndEmitDiffs(v);
40572
40572
  return;
40573
40573
  }
40574
- e.create(c, (e2) => new Model(v, {
40574
+ e.create(c, (e2) => new Model(v, isStaticNotebook() ? {
40575
+ sendUpdate: async () => void 0,
40576
+ sendCustomMessage: async () => void 0
40577
+ } : {
40575
40578
  async sendUpdate(r3) {
40576
40579
  if (e2.aborted) {
40577
40580
  Logger.debug(`[Model] sendUpdate suppressed for model=${c} (signal aborted)`);
@@ -51904,7 +51907,7 @@ Database schema: ${c}`), (_a3 = r2.aiFix) == null ? void 0 : _a3.setAiCompletion
51904
51907
  }
51905
51908
  let w, E, O, M, I, z;
51906
51909
  if (r[2] !== y || r[3] !== d || r[4] !== _ || r[5] !== f || r[6] !== c || r[7] !== S || r[8] !== v) {
51907
- let e2 = c.filter(_temp7$2), G2 = c.filter(_temp8$1), q2 = c.filter(_temp9$1), IY = c.filter(_temp0$1), LY = c.filter(_temp1$1), RY = c.filter(_temp10), zY = c.filter(_temp11), BY = c.filter(_temp12), VY = c.filter(_temp13), HY = c.filter(_temp14), UY = c.filter(_temp15), WY = c.filter(_temp16), GY = c.filter(_temp17), KY;
51910
+ let e2 = c.filter(_temp7$3), G2 = c.filter(_temp8$2), q2 = c.filter(_temp9$1), IY = c.filter(_temp0$1), LY = c.filter(_temp1$1), RY = c.filter(_temp10), zY = c.filter(_temp11), BY = c.filter(_temp12), VY = c.filter(_temp13), HY = c.filter(_temp14), UY = c.filter(_temp15), WY = c.filter(_temp16), GY = c.filter(_temp17), KY;
51908
51911
  r[15] === _ ? KY = r[16] : (KY = () => {
51909
51912
  _.openApplication("scratchpad");
51910
51913
  }, r[15] = _, r[16] = KY);
@@ -52276,10 +52279,10 @@ Database schema: ${c}`), (_a3 = r2.aiFix) == null ? void 0 : _a3.setAiCompletion
52276
52279
  function _temp6$6(e) {
52277
52280
  return e.type === "exception";
52278
52281
  }
52279
- function _temp7$2(e) {
52282
+ function _temp7$3(e) {
52280
52283
  return e.type === "setup-refs";
52281
52284
  }
52282
- function _temp8$1(e) {
52285
+ function _temp8$2(e) {
52283
52286
  return e.type === "cycle";
52284
52287
  }
52285
52288
  function _temp9$1(e) {
@@ -59131,7 +59134,7 @@ Database schema: ${c}`), (_a3 = r2.aiFix) == null ? void 0 : _a3.setAiCompletion
59131
59134
  hasConsoleOutput: (v == null ? void 0 : v.consoleOutputs) != null
59132
59135
  };
59133
59136
  }
59134
- const LazyAnyLanguageCodeMirror = (0, import_react.lazy)(() => import("./any-language-editor-CKEbZakX.js"));
59137
+ const LazyAnyLanguageCodeMirror = (0, import_react.lazy)(() => import("./any-language-editor-t_VsTNa-.js"));
59135
59138
  var import_compiler_runtime$115 = require_compiler_runtime(), extensions = [
59136
59139
  EditorView.lineWrapping
59137
59140
  ], SUPPORTED_LANGUAGES = /* @__PURE__ */ new Set([
@@ -62110,7 +62113,7 @@ Defaulting to \`null\`.`;
62110
62113
  }
62111
62114
  ];
62112
62115
  const DownloadAs = (e) => {
62113
- let r = (0, import_compiler_runtime$104.c)(18), { locale: c } = $18f2051aff69b9bf$export$43bb16f9c6d9e3f7(), d;
62116
+ let r = (0, import_compiler_runtime$104.c)(19), { locale: c } = $18f2051aff69b9bf$export$43bb16f9c6d9e3f7(), d;
62114
62117
  r[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (d = (0, import_jsx_runtime.jsxs)(Button, {
62115
62118
  "data-testid": "download-as-button",
62116
62119
  size: "xs",
@@ -62159,31 +62162,31 @@ Defaulting to \`null\`.`;
62159
62162
  children: f
62160
62163
  }), r[6] = O) : O = r[6];
62161
62164
  let M;
62162
- r[7] === v ? M = r[8] : (M = options.map((e2) => (0, import_jsx_runtime.jsxs)(DropdownMenuItem, {
62165
+ r[7] !== v || r[8] !== e.downloadFileName ? (M = options.map((r2) => (0, import_jsx_runtime.jsxs)(DropdownMenuItem, {
62163
62166
  onSelect: async () => {
62164
- let r2 = await v(e2.format), c2 = e2.format;
62165
- downloadByURL(r2, `download.${c2}`);
62167
+ let c2 = await v(r2.format), d2 = r2.format, f2 = (e.downloadFileName ?? "").trim();
62168
+ downloadByURL(c2, `${Filenames.withoutExtension(f2) || "download"}.${d2}`);
62166
62169
  },
62167
62170
  children: [
62168
- (0, import_jsx_runtime.jsx)(e2.icon, {
62171
+ (0, import_jsx_runtime.jsx)(r2.icon, {
62169
62172
  className: "mo-dropdown-icon"
62170
62173
  }),
62171
- e2.label
62174
+ r2.label
62172
62175
  ]
62173
- }, e2.label)), r[7] = v, r[8] = M);
62176
+ }, r2.label)), r[7] = v, r[8] = e.downloadFileName, r[9] = M) : M = r[9];
62174
62177
  let I;
62175
- r[9] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (I = (0, import_jsx_runtime.jsx)(DropdownMenuSeparator, {}), r[9] = I) : I = r[9];
62178
+ r[10] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (I = (0, import_jsx_runtime.jsx)(DropdownMenuSeparator, {}), r[10] = I) : I = r[10];
62176
62179
  let z;
62177
- r[10] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (z = (0, import_jsx_runtime.jsxs)(DropdownMenuSubTrigger, {
62180
+ r[11] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (z = (0, import_jsx_runtime.jsxs)(DropdownMenuSubTrigger, {
62178
62181
  children: [
62179
62182
  (0, import_jsx_runtime.jsx)(ClipboardList, {
62180
62183
  className: "mo-dropdown-icon"
62181
62184
  }),
62182
62185
  "Copy to clipboard"
62183
62186
  ]
62184
- }), r[10] = z) : z = r[10];
62187
+ }), r[11] = z) : z = r[11];
62185
62188
  let G;
62186
- r[11] === S ? G = r[12] : (G = clipboardOptions.map((e2) => (0, import_jsx_runtime.jsxs)(DropdownMenuItem, {
62189
+ r[12] === S ? G = r[13] : (G = clipboardOptions.map((e2) => (0, import_jsx_runtime.jsxs)(DropdownMenuItem, {
62187
62190
  onSelect: async () => {
62188
62191
  try {
62189
62192
  await S(e2.format);
@@ -62212,18 +62215,18 @@ Defaulting to \`null\`.`;
62212
62215
  ]
62213
62216
  })
62214
62217
  ]
62215
- }, e2.label)), r[11] = S, r[12] = G);
62218
+ }, e2.label)), r[12] = S, r[13] = G);
62216
62219
  let q;
62217
- r[13] === G ? q = r[14] : (q = (0, import_jsx_runtime.jsxs)(DropdownMenuSub, {
62220
+ r[14] === G ? q = r[15] : (q = (0, import_jsx_runtime.jsxs)(DropdownMenuSub, {
62218
62221
  children: [
62219
62222
  z,
62220
62223
  (0, import_jsx_runtime.jsx)(DropdownMenuSubContent, {
62221
62224
  children: G
62222
62225
  })
62223
62226
  ]
62224
- }), r[13] = G, r[14] = q);
62227
+ }), r[14] = G, r[15] = q);
62225
62228
  let IY;
62226
- return r[15] !== M || r[16] !== q ? (IY = (0, import_jsx_runtime.jsxs)(DropdownMenu, {
62229
+ return r[16] !== M || r[17] !== q ? (IY = (0, import_jsx_runtime.jsxs)(DropdownMenu, {
62227
62230
  modal: false,
62228
62231
  children: [
62229
62232
  O,
@@ -62237,7 +62240,7 @@ Defaulting to \`null\`.`;
62237
62240
  ]
62238
62241
  })
62239
62242
  ]
62240
- }), r[15] = M, r[16] = q, r[17] = IY) : IY = r[17], IY;
62243
+ }), r[16] = M, r[17] = q, r[18] = IY) : IY = r[18], IY;
62241
62244
  };
62242
62245
  function fetchJson(e) {
62243
62246
  return fetchText(e).then(jsonParseWithSpecialChar);
@@ -62495,7 +62498,7 @@ Defaulting to \`null\`.`;
62495
62498
  const prettifyRowColumnCount = (e, r, c) => [
62496
62499
  e === "too_many" ? "Unknown" : prettifyRowCount(e, c),
62497
62500
  `${prettyNumber(r, c)} ${new PluralWord("column").pluralize(r)}`
62498
- ].join(", "), TableActions = ({ enableSearch: e, onSearchQueryChange: r, isSearchEnabled: c, setIsSearchEnabled: d, pagination: f, totalColumns: _, selection: v, onRowSelectionChange: y, table: S, downloadAs: E, getRowIds: O, toggleDisplayHeader: M, showChartBuilder: I, showColumnExplorer: z, showRowExplorer: G, showPageSizeSelector: q, togglePanel: IY, isPanelOpen: LY, tableLoading: RY }) => (0, import_jsx_runtime.jsxs)("div", {
62501
+ ].join(", "), TableActions = ({ enableSearch: e, onSearchQueryChange: r, isSearchEnabled: c, setIsSearchEnabled: d, pagination: f, totalColumns: _, selection: v, onRowSelectionChange: y, table: S, downloadAs: E, downloadFileName: O, getRowIds: M, toggleDisplayHeader: I, showChartBuilder: z, showColumnExplorer: G, showRowExplorer: q, showPageSizeSelector: IY, togglePanel: LY, isPanelOpen: RY, tableLoading: zY }) => (0, import_jsx_runtime.jsxs)("div", {
62499
62502
  className: "flex items-center shrink-0 pt-1",
62500
62503
  children: [
62501
62504
  r && e && (0, import_jsx_runtime.jsx)(Tooltip, {
@@ -62510,41 +62513,41 @@ Defaulting to \`null\`.`;
62510
62513
  })
62511
62514
  })
62512
62515
  }),
62513
- I && (0, import_jsx_runtime.jsx)(Tooltip, {
62516
+ z && (0, import_jsx_runtime.jsx)(Tooltip, {
62514
62517
  content: "Chart builder",
62515
62518
  children: (0, import_jsx_runtime.jsx)(Button, {
62516
62519
  variant: "text",
62517
62520
  size: "xs",
62518
62521
  className: "mb-0 print:hidden",
62519
- onClick: M,
62522
+ onClick: I,
62520
62523
  children: (0, import_jsx_runtime.jsx)(ChartSpline, {
62521
62524
  className: "w-4 h-4 text-muted-foreground"
62522
62525
  })
62523
62526
  })
62524
62527
  }),
62525
- IY && LY !== void 0 && (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
62528
+ LY && RY !== void 0 && (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
62526
62529
  children: [
62527
- G && (0, import_jsx_runtime.jsx)(Tooltip, {
62530
+ q && (0, import_jsx_runtime.jsx)(Tooltip, {
62528
62531
  content: "Toggle row viewer",
62529
62532
  children: (0, import_jsx_runtime.jsx)(Button, {
62530
62533
  variant: "text",
62531
62534
  size: "xs",
62532
- onClick: () => IY("row-viewer"),
62535
+ onClick: () => LY("row-viewer"),
62533
62536
  className: "print:hidden",
62534
62537
  children: (0, import_jsx_runtime.jsx)(PanelRight, {
62535
- className: cn("w-4 h-4 text-muted-foreground", LY("row-viewer") && "text-primary")
62538
+ className: cn("w-4 h-4 text-muted-foreground", RY("row-viewer") && "text-primary")
62536
62539
  })
62537
62540
  })
62538
62541
  }),
62539
- z && (0, import_jsx_runtime.jsx)(Tooltip, {
62542
+ G && (0, import_jsx_runtime.jsx)(Tooltip, {
62540
62543
  content: "Toggle column explorer",
62541
62544
  children: (0, import_jsx_runtime.jsx)(Button, {
62542
62545
  variant: "text",
62543
62546
  size: "xs",
62544
- onClick: () => IY("column-explorer"),
62547
+ onClick: () => LY("column-explorer"),
62545
62548
  className: "print:hidden",
62546
62549
  children: (0, import_jsx_runtime.jsx)(ChartColumnStacked, {
62547
- className: cn("w-4 h-4 text-muted-foreground", LY("column-explorer") && "text-primary")
62550
+ className: cn("w-4 h-4 text-muted-foreground", RY("column-explorer") && "text-primary")
62548
62551
  })
62549
62552
  })
62550
62553
  })
@@ -62568,11 +62571,11 @@ Defaulting to \`null\`.`;
62568
62571
  ]);
62569
62572
  y(Object.fromEntries(e3));
62570
62573
  };
62571
- if (!O) {
62574
+ if (!M) {
62572
62575
  r2();
62573
62576
  return;
62574
62577
  }
62575
- O({}).then((e3) => {
62578
+ M({}).then((e3) => {
62576
62579
  if (e3.error) {
62577
62580
  toast({
62578
62581
  title: "Not available",
@@ -62588,32 +62591,33 @@ Defaulting to \`null\`.`;
62588
62591
  });
62589
62592
  },
62590
62593
  table: S,
62591
- tableLoading: RY,
62592
- showPageSizeSelector: q
62594
+ tableLoading: zY,
62595
+ showPageSizeSelector: IY
62593
62596
  }),
62594
62597
  (0, import_jsx_runtime.jsx)("div", {
62595
62598
  className: "ml-auto",
62596
62599
  children: E && (0, import_jsx_runtime.jsx)(DownloadAs, {
62597
- downloadAs: E
62600
+ downloadAs: E,
62601
+ downloadFileName: O
62598
62602
  })
62599
62603
  })
62600
62604
  ]
62601
- }), DataTable = (0, import_react.memo)(({ wrapperClassName: e, className: r, maxHeight: c, columns: d, data: f, selection: _, totalColumns: v, totalRows: y, manualSorting: S = false, sorting: w, setSorting: E, rowSelection: O, cellSelection: M, cellStyling: I, hoverTemplate: z, cellHoverTexts: G, paginationState: q, setPaginationState: IY, downloadAs: LY, manualPagination: RY = false, pagination: zY = false, onRowSelectionChange: BY, onCellSelectionChange: VY, getRowIds: HY, enableSearch: UY = false, searchQuery: WY, onSearchQueryChange: GY, showFilters: KY = false, filters: qY, onFiltersChange: JY, reloading: YY, freezeColumnsLeft: XY, freezeColumnsRight: ZY, toggleDisplayHeader: QY, showChartBuilder: $Y, showPageSizeSelector: eX, showColumnExplorer: tX, showRowExplorer: nX, togglePanel: rX, isPanelOpen: iX, viewedRowIdx: aX, onViewedRowChange: oX }) => {
62602
- let [sX, cX] = import_react.useState(false), [lX, uX] = import_react.useState(false), { locale: dX } = $18f2051aff69b9bf$export$43bb16f9c6d9e3f7(), { columnPinning: fX, setColumnPinning: pX } = useColumnPinning(XY, ZY);
62605
+ }), DataTable = (0, import_react.memo)(({ wrapperClassName: e, className: r, maxHeight: c, columns: d, data: f, selection: _, totalColumns: v, totalRows: y, manualSorting: S = false, sorting: w, setSorting: E, rowSelection: O, cellSelection: M, cellStyling: I, hoverTemplate: z, cellHoverTexts: G, paginationState: q, setPaginationState: IY, downloadAs: LY, downloadFileName: RY, manualPagination: zY = false, pagination: BY = false, onRowSelectionChange: VY, onCellSelectionChange: HY, getRowIds: UY, enableSearch: WY = false, searchQuery: GY, onSearchQueryChange: KY, showFilters: qY = false, filters: JY, onFiltersChange: YY, reloading: XY, freezeColumnsLeft: ZY, freezeColumnsRight: QY, toggleDisplayHeader: $Y, showChartBuilder: eX, showPageSizeSelector: tX, showColumnExplorer: nX, showRowExplorer: rX, togglePanel: iX, isPanelOpen: aX, viewedRowIdx: oX, onViewedRowChange: sX }) => {
62606
+ let [cX, lX] = import_react.useState(false), [uX, dX] = import_react.useState(false), { locale: fX } = $18f2051aff69b9bf$export$43bb16f9c6d9e3f7(), { columnPinning: pX, setColumnPinning: mX } = useColumnPinning(ZY, QY);
62603
62607
  import_react.useEffect(() => {
62604
62608
  let e2;
62605
- return YY ? e2 = setTimeout(() => {
62606
- uX(true);
62607
- }, 300) : uX(false), () => {
62609
+ return XY ? e2 = setTimeout(() => {
62610
+ dX(true);
62611
+ }, 300) : dX(false), () => {
62608
62612
  e2 && clearTimeout(e2);
62609
62613
  };
62610
62614
  }, [
62611
- YY
62615
+ XY
62612
62616
  ]);
62613
- function mX(e2, r2) {
62614
- return q ? r2 + (RY ? q.pageIndex * q.pageSize : 0) : r2;
62617
+ function hX(e2, r2) {
62618
+ return q ? r2 + (zY ? q.pageIndex * q.pageSize : 0) : r2;
62615
62619
  }
62616
- let hX = useReactTable({
62620
+ let gX = useReactTable({
62617
62621
  _features: [
62618
62622
  ColumnPinning,
62619
62623
  ColumnWrappingFeature,
@@ -62634,12 +62638,12 @@ Defaulting to \`null\`.`;
62634
62638
  getRowId: (e2, r2) => {
62635
62639
  let c2 = getStableRowId(e2);
62636
62640
  if (c2) return c2;
62637
- let d2 = mX(e2, r2);
62641
+ let d2 = hX(e2, r2);
62638
62642
  return String(d2);
62639
62643
  }
62640
62644
  } : {},
62641
- locale: dX,
62642
- manualPagination: RY,
62645
+ locale: fX,
62646
+ manualPagination: zY,
62643
62647
  getPaginationRowModel: getPaginationRowModel(),
62644
62648
  ...E ? {
62645
62649
  onSortingChange: E
@@ -62648,24 +62652,24 @@ Defaulting to \`null\`.`;
62648
62652
  enableMultiSort: true,
62649
62653
  getSortedRowModel: getSortedRowModel(),
62650
62654
  manualFiltering: true,
62651
- enableColumnFilters: KY,
62655
+ enableColumnFilters: qY,
62652
62656
  getFilteredRowModel: getFilteredRowModel(),
62653
- onColumnFiltersChange: JY,
62654
- onRowSelectionChange: BY,
62655
- onCellSelectionChange: VY,
62657
+ onColumnFiltersChange: YY,
62658
+ onRowSelectionChange: VY,
62659
+ onCellSelectionChange: HY,
62656
62660
  enableCellSelection: _ === "single-cell" || _ === "multi-cell",
62657
62661
  enableMultiCellSelection: _ === "multi-cell",
62658
- onColumnPinningChange: pX,
62662
+ onColumnPinningChange: mX,
62659
62663
  enableFocusRow: true,
62660
- onFocusRowChange: oX,
62664
+ onFocusRowChange: sX,
62661
62665
  state: {
62662
62666
  ...w ? {
62663
62667
  sorting: w
62664
62668
  } : {},
62665
- columnFilters: qY,
62669
+ columnFilters: JY,
62666
62670
  ...q ? {
62667
62671
  pagination: q
62668
- } : zY && !q ? {} : {
62672
+ } : BY && !q ? {} : {
62669
62673
  pagination: {
62670
62674
  pageIndex: 0,
62671
62675
  pageSize: f.length
@@ -62674,14 +62678,14 @@ Defaulting to \`null\`.`;
62674
62678
  rowSelection: O ?? {},
62675
62679
  cellSelection: M ?? [],
62676
62680
  cellStyling: I,
62677
- columnPinning: fX,
62681
+ columnPinning: pX,
62678
62682
  cellHoverTemplate: z,
62679
62683
  cellHoverTexts: G ?? {}
62680
62684
  }
62681
- }), gX = (iX == null ? void 0 : iX("row-viewer")) ?? false, _X = import_react.useRef(null);
62685
+ }), _X = (aX == null ? void 0 : aX("row-viewer")) ?? false, vX = import_react.useRef(null);
62682
62686
  return import_react.useEffect(() => {
62683
- if (!_X.current) return;
62684
- let e2 = _X.current.parentElement;
62687
+ if (!vX.current) return;
62688
+ let e2 = vX.current.parentElement;
62685
62689
  e2 && (c ? (e2.style.maxHeight = `${c}px`, e2.style.overflow || (e2.style.overflow = "auto")) : e2.style.removeProperty("max-height"));
62686
62690
  }, [
62687
62691
  c
@@ -62689,34 +62693,34 @@ Defaulting to \`null\`.`;
62689
62693
  className: cn(e, "flex flex-col space-y-1"),
62690
62694
  children: [
62691
62695
  (0, import_jsx_runtime.jsx)(FilterPills, {
62692
- filters: qY,
62693
- table: hX
62696
+ filters: JY,
62697
+ table: gX
62694
62698
  }),
62695
62699
  (0, import_jsx_runtime.jsxs)("div", {
62696
62700
  className: cn(r || "rounded-md border overflow-hidden"),
62697
62701
  children: [
62698
- GY && UY && (0, import_jsx_runtime.jsx)(SearchBar, {
62699
- value: WY || "",
62700
- onHide: () => cX(false),
62701
- handleSearch: GY,
62702
- hidden: !sX,
62703
- reloading: YY
62702
+ KY && WY && (0, import_jsx_runtime.jsx)(SearchBar, {
62703
+ value: GY || "",
62704
+ onHide: () => lX(false),
62705
+ handleSearch: KY,
62706
+ hidden: !cX,
62707
+ reloading: XY
62704
62708
  }),
62705
62709
  (0, import_jsx_runtime.jsxs)(Table, {
62706
62710
  className: "relative",
62707
- ref: _X,
62711
+ ref: vX,
62708
62712
  children: [
62709
- lX && (0, import_jsx_runtime.jsx)("thead", {
62713
+ uX && (0, import_jsx_runtime.jsx)("thead", {
62710
62714
  className: "absolute top-0 left-0 h-[3px] w-1/2 bg-primary animate-slide"
62711
62715
  }),
62712
- renderTableHeader(hX, !!c),
62716
+ renderTableHeader(gX, !!c),
62713
62717
  (0, import_jsx_runtime.jsx)(CellSelectionProvider, {
62714
62718
  children: (0, import_jsx_runtime.jsx)(DataTableBody, {
62715
- table: hX,
62719
+ table: gX,
62716
62720
  columns: d,
62717
- rowViewerPanelOpen: gX,
62718
- getRowIndex: mX,
62719
- viewedRowIdx: aX
62721
+ rowViewerPanelOpen: _X,
62722
+ getRowIndex: hX,
62723
+ viewedRowIdx: oX
62720
62724
  })
62721
62725
  })
62722
62726
  ]
@@ -62724,25 +62728,26 @@ Defaulting to \`null\`.`;
62724
62728
  ]
62725
62729
  }),
62726
62730
  (0, import_jsx_runtime.jsx)(TableActions, {
62727
- enableSearch: UY,
62731
+ enableSearch: WY,
62728
62732
  totalColumns: v,
62729
- onSearchQueryChange: GY,
62730
- isSearchEnabled: sX,
62731
- setIsSearchEnabled: cX,
62732
- pagination: zY,
62733
+ onSearchQueryChange: KY,
62734
+ isSearchEnabled: cX,
62735
+ setIsSearchEnabled: lX,
62736
+ pagination: BY,
62733
62737
  selection: _,
62734
- onRowSelectionChange: BY,
62735
- table: hX,
62738
+ onRowSelectionChange: VY,
62739
+ table: gX,
62736
62740
  downloadAs: LY,
62737
- getRowIds: HY,
62738
- toggleDisplayHeader: QY,
62739
- showChartBuilder: $Y,
62740
- showPageSizeSelector: eX,
62741
- showColumnExplorer: tX,
62742
- showRowExplorer: nX,
62743
- togglePanel: rX,
62744
- isPanelOpen: iX,
62745
- tableLoading: YY
62741
+ downloadFileName: RY,
62742
+ getRowIds: UY,
62743
+ toggleDisplayHeader: $Y,
62744
+ showChartBuilder: eX,
62745
+ showPageSizeSelector: tX,
62746
+ showColumnExplorer: nX,
62747
+ showRowExplorer: rX,
62748
+ togglePanel: iX,
62749
+ isPanelOpen: aX,
62750
+ tableLoading: XY
62746
62751
  })
62747
62752
  ]
62748
62753
  });
@@ -64528,41 +64533,41 @@ ${O}`,
64528
64533
  }
64529
64534
  const AnyWidgetPlugin = createPlugin("marimo-anywidget").withData(object$1({
64530
64535
  jsUrl: string$2(),
64531
- jsHash: string$2(),
64532
- css: string$2().nullish()
64536
+ jsHash: string$2()
64533
64537
  })).withFunctions({}).renderer((e) => (0, import_jsx_runtime.jsx)(AnyWidgetSlot, {
64534
64538
  ...e
64535
64539
  }));
64536
64540
  var AnyWidgetSlot = (e) => {
64537
64541
  var _a2;
64538
- let r = (0, import_compiler_runtime$98.c)(15), { css: c, jsUrl: d, jsHash: f } = e.data, { model_id: _ } = e.value, v = e.host, y;
64539
- r[0] !== f || r[1] !== d ? (y = {
64540
- jsUrl: d,
64541
- jsHash: f
64542
- }, r[0] = f, r[1] = d, r[2] = y) : y = r[2];
64543
- let { jsModule: S, error: w } = useAnyWidgetModule(y);
64544
- if (useMountCss(c, v), w) {
64542
+ let r = (0, import_compiler_runtime$98.c)(16), { jsUrl: c, jsHash: d } = e.data, { model_id: f } = e.value, _ = e.host, v;
64543
+ r[0] !== d || r[1] !== c ? (v = {
64544
+ jsUrl: c,
64545
+ jsHash: d
64546
+ }, r[0] = d, r[1] = c, r[2] = v) : v = r[2];
64547
+ let { jsModule: y, error: S } = useAnyWidgetModule(v);
64548
+ if (S) {
64545
64549
  let e2;
64546
- return r[3] === w ? e2 = r[4] : (e2 = (0, import_jsx_runtime.jsx)(ErrorBanner, {
64547
- error: w
64548
- }), r[3] = w, r[4] = e2), e2;
64549
- }
64550
- if (!S) return null;
64551
- if (!isAnyWidgetModule(S)) {
64552
- let e2 = `Module at ${d} does not appear to be a valid anywidget`, c2;
64553
- r[5] === e2 ? c2 = r[6] : (c2 = Error(e2), r[5] = e2, r[6] = c2);
64554
- let f2 = c2, _2;
64550
+ return r[3] === S ? e2 = r[4] : (e2 = (0, import_jsx_runtime.jsx)(ErrorBanner, {
64551
+ error: S
64552
+ }), r[3] = S, r[4] = e2), e2;
64553
+ }
64554
+ if (!y) return null;
64555
+ if (!isAnyWidgetModule(y)) {
64556
+ let e2 = `Module at ${c} does not appear to be a valid anywidget`, d2;
64557
+ r[5] === e2 ? d2 = r[6] : (d2 = Error(e2), r[5] = e2, r[6] = d2);
64558
+ let f2 = d2, _2;
64555
64559
  return r[7] === f2 ? _2 = r[8] : (_2 = (0, import_jsx_runtime.jsx)(ErrorBanner, {
64556
64560
  error: f2
64557
64561
  }), r[7] = f2, r[8] = _2), _2;
64558
64562
  }
64559
- let E;
64560
- r[9] === e.host ? E = r[10] : (E = (_a2 = e.host.closest("[random-id]")) == null ? void 0 : _a2.getAttribute("random-id"), r[9] = e.host, r[10] = E);
64561
- let O = E ?? d, M;
64562
- return r[11] !== S.default || r[12] !== O || r[13] !== _ ? (M = (0, import_jsx_runtime.jsx)(LoadedSlot, {
64563
- widget: S.default,
64564
- modelId: _
64565
- }, O), r[11] = S.default, r[12] = O, r[13] = _, r[14] = M) : M = r[14], M;
64563
+ let w;
64564
+ r[9] === e.host ? w = r[10] : (w = (_a2 = e.host.closest("[random-id]")) == null ? void 0 : _a2.getAttribute("random-id"), r[9] = e.host, r[10] = w);
64565
+ let E = w ?? c, O;
64566
+ return r[11] !== _ || r[12] !== y.default || r[13] !== E || r[14] !== f ? (O = (0, import_jsx_runtime.jsx)(LoadedSlot, {
64567
+ widget: y.default,
64568
+ modelId: f,
64569
+ host: _
64570
+ }, E), r[11] = _, r[12] = y.default, r[13] = E, r[14] = f, r[15] = O) : O = r[15], O;
64566
64571
  };
64567
64572
  async function runAnyWidgetModule(e, r, c, d, f) {
64568
64573
  d.innerHTML = "";
@@ -64577,24 +64582,22 @@ ${O}`,
64577
64582
  return e.default ? typeof e.default == "function" || typeof ((_a2 = e.default) == null ? void 0 : _a2.render) == "function" || typeof ((_b3 = e.default) == null ? void 0 : _b3.initialize) == "function" : false;
64578
64583
  }
64579
64584
  var LoadedSlot = (e) => {
64580
- let r = (0, import_compiler_runtime$98.c)(8), { widget: c, modelId: d } = e, f = (0, import_react.useRef)(null), _;
64581
- r[0] === d ? _ = r[1] : (_ = MODEL_MANAGER.getSync(d), r[0] = d, r[1] = _);
64582
- let v = _;
64583
- v || Logger.error("Model not found for modelId", d);
64584
- let y, S;
64585
- r[2] !== v || r[3] !== d || r[4] !== c ? (y = () => {
64586
- if (!f.current || !v) return;
64585
+ let r = (0, import_compiler_runtime$98.c)(9), { widget: c, modelId: d, host: f } = e, _ = (0, import_react.useRef)(null), v, y;
64586
+ r[0] === d ? (v = r[1], y = r[2]) : (v = MODEL_MANAGER.getSync(d), v || Logger.error("Model not found for modelId", d), y = v == null ? void 0 : v.get("_css"), r[0] = d, r[1] = v, r[2] = y), useMountCss(y, f);
64587
+ let S, w;
64588
+ r[3] !== v || r[4] !== d || r[5] !== c ? (S = () => {
64589
+ if (!_.current || !v) return;
64587
64590
  let e2 = new AbortController();
64588
- return runAnyWidgetModule(c, v, d, f.current, e2.signal), () => e2.abort();
64589
- }, S = [
64591
+ return runAnyWidgetModule(c, v, d, _.current, e2.signal), () => e2.abort();
64592
+ }, w = [
64590
64593
  c,
64591
64594
  d,
64592
64595
  v
64593
- ], r[2] = v, r[3] = d, r[4] = c, r[5] = y, r[6] = S) : (y = r[5], S = r[6]), (0, import_react.useEffect)(y, S);
64594
- let w;
64595
- return r[7] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (w = (0, import_jsx_runtime.jsx)("div", {
64596
- ref: f
64597
- }), r[7] = w) : w = r[7], w;
64596
+ ], r[3] = v, r[4] = d, r[5] = c, r[6] = S, r[7] = w) : (S = r[6], w = r[7]), (0, import_react.useEffect)(S, w);
64597
+ let E;
64598
+ return r[8] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (E = (0, import_jsx_runtime.jsx)("div", {
64599
+ ref: _
64600
+ }), r[8] = E) : E = r[8], E;
64598
64601
  }, import_compiler_runtime$97 = require_compiler_runtime();
64599
64602
  const KeyboardHotkeys = (e) => {
64600
64603
  let r = (0, import_compiler_runtime$97.c)(10), { shortcut: c, className: d } = e;
@@ -73304,7 +73307,7 @@ Image URL: ${r.imageUrl}`)), contextToXml({
73304
73307
  return Logger.warn("Failed to get version from mount config"), null;
73305
73308
  }
73306
73309
  }
73307
- const marimoVersionAtom = atom(getVersionFromMountConfig() || "0.19.10-dev9"), showCodeInRunModeAtom = atom(true);
73310
+ const marimoVersionAtom = atom(getVersionFromMountConfig() || "0.19.11-dev0"), showCodeInRunModeAtom = atom(true);
73308
73311
  atom(null);
73309
73312
  var import_compiler_runtime$88 = require_compiler_runtime();
73310
73313
  function useKeydownOnElement(e, r) {
@@ -74313,9 +74316,9 @@ Image URL: ${r.imageUrl}`)), contextToXml({
74313
74316
  ]
74314
74317
  }),
74315
74318
  (0, import_jsx_runtime.jsxs)("form", {
74316
- onSubmit: async (e2) => {
74317
- e2.preventDefault();
74318
- let c2 = y ? await convertToFileUIPart(y) : void 0;
74319
+ onSubmit: async (c2) => {
74320
+ if (c2.preventDefault(), e.disabled) return;
74321
+ let d2 = y ? await convertToFileUIPart(y) : void 0;
74319
74322
  RY({
74320
74323
  role: "user",
74321
74324
  parts: [
@@ -74323,12 +74326,13 @@ Image URL: ${r.imageUrl}`)), contextToXml({
74323
74326
  type: "text",
74324
74327
  text: r
74325
74328
  },
74326
- ...c2 ?? []
74329
+ ...d2 ?? []
74327
74330
  ]
74328
74331
  }), ZY();
74329
74332
  },
74330
74333
  ref: E,
74331
- className: "flex w-full border-t border-(--slate-6) px-2 py-1 items-center",
74334
+ inert: e.disabled || void 0,
74335
+ className: cn("flex w-full border-t border-(--slate-6) px-2 py-1 items-center", e.disabled && "opacity-50 cursor-not-allowed"),
74332
74336
  children: [
74333
74337
  e.showConfigurationControls && (0, import_jsx_runtime.jsx)(ConfigPopup, {
74334
74338
  config: d,
@@ -74745,7 +74749,8 @@ Image URL: ${r.imageUrl}`)), contextToXml({
74745
74749
  allowAttachments: union([
74746
74750
  boolean$2(),
74747
74751
  string$2().array()
74748
- ])
74752
+ ]),
74753
+ disabled: boolean$2().default(false)
74749
74754
  })).withFunctions({
74750
74755
  get_chat_history: rpc.input(object$1({})).output(object$1({
74751
74756
  messages: messageSchema
@@ -74767,6 +74772,7 @@ Image URL: ${r.imageUrl}`)), contextToXml({
74767
74772
  showConfigurationControls: e.data.showConfigurationControls,
74768
74773
  maxHeight: e.data.maxHeight,
74769
74774
  allowAttachments: e.data.allowAttachments,
74775
+ disabled: e.data.disabled,
74770
74776
  config: e.data.config,
74771
74777
  get_chat_history: e.functions.get_chat_history,
74772
74778
  delete_chat_history: e.functions.delete_chat_history,
@@ -79671,7 +79677,7 @@ ${c}
79671
79677
  render: w
79672
79678
  }), r[5] = c, r[6] = S.control, r[7] = w, r[8] = E) : E = r[8], E;
79673
79679
  }, AggregationSelect = (e) => {
79674
- let r = (0, import_compiler_runtime$73.c)(12), { fieldName: c, selectedDataType: d, binFieldName: f, defaultAggregation: _ } = e, v = useFormContext(), y = d === "string" ? STRING_AGGREGATION_FNS : AGGREGATION_FNS$1, { chartType: S } = useChartFormContext(), w = S !== ChartType.HEATMAP, E = _temp6$5, O = _temp7$1, M;
79680
+ let r = (0, import_compiler_runtime$73.c)(12), { fieldName: c, selectedDataType: d, binFieldName: f, defaultAggregation: _ } = e, v = useFormContext(), y = d === "string" ? STRING_AGGREGATION_FNS : AGGREGATION_FNS$1, { chartType: S } = useChartFormContext(), w = S !== ChartType.HEATMAP, E = _temp6$5, O = _temp7$2, M;
79675
79681
  r[0] !== f || r[1] !== v ? (M = (e2) => {
79676
79682
  let { value: r2, previousValue: c2, onChange: d2 } = e2;
79677
79683
  r2 === "bin" ? v.setValue(f, true) : c2 === "bin" && v.setValue(f, false), d2(r2);
@@ -79730,7 +79736,7 @@ ${c}
79730
79736
  render: z
79731
79737
  }), r[8] = c, r[9] = v.control, r[10] = z, r[11] = G) : G = r[11], G;
79732
79738
  }, TooltipSelect = (e) => {
79733
- let r = (0, import_compiler_runtime$73.c)(7), { fieldName: c, saveFunction: d } = e, f = useFormContext(), { fields: _ } = useChartFormContext(), v = _temp8, y;
79739
+ let r = (0, import_compiler_runtime$73.c)(7), { fieldName: c, saveFunction: d } = e, f = useFormContext(), { fields: _ } = useChartFormContext(), v = _temp8$1, y;
79734
79740
  r[0] !== _ || r[1] !== d ? (y = (e2) => {
79735
79741
  var _a2;
79736
79742
  let { field: r2 } = e2, c2 = ((_a2 = r2.value) == null ? void 0 : _a2.map(_temp9)) ?? [];
@@ -79843,7 +79849,7 @@ ${c}
79843
79849
  children: e
79844
79850
  });
79845
79851
  }
79846
- function _temp7$1(e) {
79852
+ function _temp7$2(e) {
79847
79853
  let { value: r, Icon: c, subtitle: d } = e;
79848
79854
  return (0, import_jsx_runtime.jsx)(SelectItem, {
79849
79855
  value: r,
@@ -79860,7 +79866,7 @@ ${c}
79860
79866
  })
79861
79867
  }, r);
79862
79868
  }
79863
- function _temp8(e, r) {
79869
+ function _temp8$1(e, r) {
79864
79870
  var _a2;
79865
79871
  return {
79866
79872
  field: e,
@@ -83555,7 +83561,8 @@ ${c}
83555
83561
  hoverTemplate: string$2().optional(),
83556
83562
  cellHoverTexts: cellHoverTextSchema,
83557
83563
  lazy: boolean$2().default(false),
83558
- preload: boolean$2().default(false)
83564
+ preload: boolean$2().default(false),
83565
+ downloadFileName: string$2().optional()
83559
83566
  })).withFunctions({
83560
83567
  download_as: DownloadAsSchema,
83561
83568
  get_column_summaries: rpc.input(looseObject({})).output(object$1({
@@ -83852,8 +83859,8 @@ ${c}
83852
83859
  }), r[98] = sX, r[99] = _X, r[100] = vX) : vX = r[100], vX;
83853
83860
  });
83854
83861
  LoadingDataTableComponent.displayName = "LoadingDataTableComponent";
83855
- var DataTableComponent = ({ label: e, data: r, totalRows: c, maxColumns: d, pagination: f, selection: _, value: v, showFilters: y, showDownload: S, showPageSizeSelector: w, showColumnExplorer: E, showRowExplorer: O, showChartBuilder: M, showDataTypes: I, rowHeaders: z, fieldTypes: G, paginationState: q, setPaginationState: IY, download_as: LY, columnSummaries: RY, className: zY, setValue: BY, sorting: VY, setSorting: HY, enableSearch: UY, searchQuery: WY, setSearchQuery: GY, filters: KY, setFilters: qY, reloading: JY, freezeColumnsLeft: YY, freezeColumnsRight: XY, textJustifyColumns: ZY, wrappedColumns: QY, headerTooltip: $Y, totalColumns: eX, get_row_ids: tX, cellStyles: nX, hoverTemplate: rX, cellHoverTexts: iX, toggleDisplayHeader: oX, calculate_top_k_rows: sX, preview_column: cX, getRow: lX, cellId: uX, maxHeight: dX }) => {
83856
- let fX = (0, import_react.useId)(), [pX, mX] = (0, import_react.useState)(0), { isPanelOpen: hX, togglePanel: gX } = usePanelOwnership(fX, uX), _X = (0, import_react.useMemo)(() => {
83862
+ var DataTableComponent = ({ label: e, data: r, totalRows: c, maxColumns: d, pagination: f, selection: _, value: v, showFilters: y, showDownload: S, showPageSizeSelector: w, showColumnExplorer: E, showRowExplorer: O, showChartBuilder: M, showDataTypes: I, rowHeaders: z, fieldTypes: G, paginationState: q, setPaginationState: IY, download_as: LY, columnSummaries: RY, className: zY, setValue: BY, sorting: VY, setSorting: HY, enableSearch: UY, searchQuery: WY, setSearchQuery: GY, filters: KY, setFilters: qY, reloading: JY, freezeColumnsLeft: YY, freezeColumnsRight: XY, textJustifyColumns: ZY, wrappedColumns: QY, headerTooltip: $Y, totalColumns: eX, get_row_ids: tX, cellStyles: nX, hoverTemplate: rX, cellHoverTexts: iX, downloadFileName: oX, toggleDisplayHeader: sX, calculate_top_k_rows: cX, preview_column: lX, getRow: uX, cellId: dX, maxHeight: fX }) => {
83863
+ let pX = (0, import_react.useId)(), [mX, hX] = (0, import_react.useState)(0), { isPanelOpen: gX, togglePanel: _X } = usePanelOwnership(pX, dX), vX = (0, import_react.useMemo)(() => {
83857
83864
  if (!RY || !G || !RY.stats) return ColumnChartSpecModel.EMPTY;
83858
83865
  let e2 = toFieldTypes(G);
83859
83866
  return new ColumnChartSpecModel(RY.data || [], e2, RY.stats, RY.bin_values, RY.value_counts, {
@@ -83862,55 +83869,55 @@ ${c}
83862
83869
  }, [
83863
83870
  G,
83864
83871
  RY
83865
- ]), vX = useDeepCompareMemoize(G ?? inferFieldTypes(r)), yX = (0, import_react.useMemo)(() => d === "all" ? vX : vX.slice(0, d), [
83872
+ ]), yX = useDeepCompareMemoize(G ?? inferFieldTypes(r)), bX = (0, import_react.useMemo)(() => d === "all" ? yX : yX.slice(0, d), [
83866
83873
  d,
83867
- vX
83868
- ]), bX = useDeepCompareMemoize(z), xX = useDeepCompareMemoize(ZY), SX = useDeepCompareMemoize(QY), CX = useDeepCompareMemoize(_X), wX = yX.length;
83874
+ yX
83875
+ ]), xX = useDeepCompareMemoize(z), SX = useDeepCompareMemoize(ZY), CX = useDeepCompareMemoize(QY), wX = useDeepCompareMemoize(vX), TX = bX.length;
83869
83876
  G || (I = false);
83870
- let TX = (0, import_react.useMemo)(() => generateColumns({
83871
- rowHeaders: bX,
83877
+ let EX = (0, import_react.useMemo)(() => generateColumns({
83878
+ rowHeaders: xX,
83872
83879
  selection: _,
83873
- chartSpecModel: CX,
83874
- fieldTypes: yX,
83875
- textJustifyColumns: xX,
83876
- wrappedColumns: SX,
83880
+ chartSpecModel: wX,
83881
+ fieldTypes: bX,
83882
+ textJustifyColumns: SX,
83883
+ wrappedColumns: CX,
83877
83884
  headerTooltip: $Y,
83878
83885
  showDataTypes: I,
83879
- calculateTopKRows: sX
83886
+ calculateTopKRows: cX
83880
83887
  }), [
83881
83888
  _,
83882
83889
  I,
83883
- CX,
83884
- bX,
83885
- yX,
83890
+ wX,
83886
83891
  xX,
83892
+ bX,
83887
83893
  SX,
83894
+ CX,
83888
83895
  $Y,
83889
- sX
83890
- ]), EX = (0, import_react.useMemo)(() => Object.fromEntries((v || []).map((e2) => [
83896
+ cX
83897
+ ]), DX = (0, import_react.useMemo)(() => Object.fromEntries((v || []).map((e2) => [
83891
83898
  e2,
83892
83899
  true
83893
83900
  ])), [
83894
83901
  v
83895
- ]), DX = useEvent_default((e2) => {
83902
+ ]), OX = useEvent_default((e2) => {
83896
83903
  if (_ === "single") {
83897
83904
  let r2 = Functions.asUpdater(e2)({});
83898
83905
  BY(Object.keys(r2).slice(0, 1));
83899
83906
  }
83900
83907
  if (_ === "multi") {
83901
- let r2 = Functions.asUpdater(e2)(EX);
83908
+ let r2 = Functions.asUpdater(e2)(DX);
83902
83909
  BY(Object.keys(r2));
83903
83910
  }
83904
- }), OX = useEvent_default((e2) => {
83905
- if (mX(e2), e2 < 0 || typeof c == "number" && e2 >= c || c === "too_many") return;
83911
+ }), kX = useEvent_default((e2) => {
83912
+ if (hX(e2), e2 < 0 || typeof c == "number" && e2 >= c || c === "too_many") return;
83906
83913
  let r2 = getPageIndexForRow(e2, q.pageIndex, q.pageSize);
83907
83914
  r2 !== null && IY((e3) => ({
83908
83915
  ...e3,
83909
83916
  pageIndex: r2
83910
83917
  }));
83911
- }), kX = v.filter((e2) => e2 instanceof Object && e2.columnName !== void 0), AX = useEvent_default((e2) => {
83912
- _ === "single-cell" && BY(Functions.asUpdater(e2)(kX).slice(0, 1)), _ === "multi-cell" && BY(Functions.asUpdater(e2)(kX));
83913
- }), jX = _ === "multi" || _ === "single", MX = E && cX && hX("column-explorer"), NX = isInVscodeExtension();
83918
+ }), AX = v.filter((e2) => e2 instanceof Object && e2.columnName !== void 0), jX = useEvent_default((e2) => {
83919
+ _ === "single-cell" && BY(Functions.asUpdater(e2)(AX).slice(0, 1)), _ === "multi-cell" && BY(Functions.asUpdater(e2)(AX));
83920
+ }), MX = _ === "multi" || _ === "single", NX = E && lX && gX("column-explorer"), PX = isInVscodeExtension();
83914
83921
  return (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
83915
83922
  children: [
83916
83923
  c === "too_many" && q.pageSize === r.length && (0, import_jsx_runtime.jsxs)(Banner, {
@@ -83921,11 +83928,11 @@ ${c}
83921
83928
  " rows."
83922
83929
  ]
83923
83930
  }),
83924
- wX < eX && wX > 0 && (0, import_jsx_runtime.jsxs)(Banner, {
83931
+ TX < eX && TX > 0 && (0, import_jsx_runtime.jsxs)(Banner, {
83925
83932
  className: "mb-1 rounded",
83926
83933
  children: [
83927
83934
  "Result clipped. Showing ",
83928
- wX,
83935
+ TX,
83929
83936
  " of ",
83930
83937
  eX,
83931
83938
  " columns."
@@ -83935,38 +83942,38 @@ ${c}
83935
83942
  className: "mb-1 rounded",
83936
83943
  children: "Column summaries are unavailable. Filter your data to fewer than 1,000,000 rows."
83937
83944
  }),
83938
- hX("row-viewer") && (0, import_jsx_runtime.jsx)(ContextAwarePanelItem, {
83945
+ gX("row-viewer") && (0, import_jsx_runtime.jsx)(ContextAwarePanelItem, {
83939
83946
  children: (0, import_jsx_runtime.jsx)(RowViewerPanel, {
83940
- getRow: lX,
83941
- fieldTypes: vX,
83947
+ getRow: uX,
83948
+ fieldTypes: yX,
83942
83949
  totalRows: c,
83943
- rowIdx: pX,
83944
- setRowIdx: OX,
83945
- isSelectable: jX,
83946
- isRowSelected: EX[pX],
83947
- handleRowSelectionChange: DX
83950
+ rowIdx: mX,
83951
+ setRowIdx: kX,
83952
+ isSelectable: MX,
83953
+ isRowSelected: DX[mX],
83954
+ handleRowSelectionChange: OX
83948
83955
  })
83949
83956
  }),
83950
- MX && (0, import_jsx_runtime.jsx)(ContextAwarePanelItem, {
83957
+ NX && (0, import_jsx_runtime.jsx)(ContextAwarePanelItem, {
83951
83958
  children: (0, import_jsx_runtime.jsx)(ColumnExplorerPanel, {
83952
- previewColumn: cX,
83953
- fieldTypes: vX,
83959
+ previewColumn: lX,
83960
+ fieldTypes: yX,
83954
83961
  totalRows: c,
83955
83962
  totalColumns: eX,
83956
- tableId: fX
83963
+ tableId: pX
83957
83964
  })
83958
83965
  }),
83959
83966
  (0, import_jsx_runtime.jsx)(ColumnChartContext, {
83960
- value: _X,
83967
+ value: vX,
83961
83968
  children: (0, import_jsx_runtime.jsx)(Labeled, {
83962
83969
  label: e,
83963
83970
  align: "top",
83964
83971
  fullWidth: true,
83965
83972
  children: (0, import_jsx_runtime.jsx)(DataTable, {
83966
83973
  data: r,
83967
- columns: TX,
83974
+ columns: EX,
83968
83975
  className: zY,
83969
- maxHeight: dX,
83976
+ maxHeight: fX,
83970
83977
  sorting: VY,
83971
83978
  totalRows: c,
83972
83979
  totalColumns: eX,
@@ -83977,12 +83984,13 @@ ${c}
83977
83984
  selection: _,
83978
83985
  paginationState: q,
83979
83986
  setPaginationState: IY,
83980
- rowSelection: EX,
83981
- cellSelection: kX,
83987
+ rowSelection: DX,
83988
+ cellSelection: AX,
83982
83989
  cellStyling: nX,
83983
83990
  hoverTemplate: rX,
83984
83991
  cellHoverTexts: iX,
83985
83992
  downloadAs: S ? LY : void 0,
83993
+ downloadFileName: oX,
83986
83994
  enableSearch: UY,
83987
83995
  searchQuery: WY,
83988
83996
  onSearchQueryChange: GY,
@@ -83990,20 +83998,20 @@ ${c}
83990
83998
  filters: KY,
83991
83999
  onFiltersChange: qY,
83992
84000
  reloading: JY,
83993
- onRowSelectionChange: DX,
84001
+ onRowSelectionChange: OX,
83994
84002
  freezeColumnsLeft: YY,
83995
84003
  freezeColumnsRight: XY,
83996
- onCellSelectionChange: AX,
84004
+ onCellSelectionChange: jX,
83997
84005
  getRowIds: tX,
83998
- toggleDisplayHeader: oX,
84006
+ toggleDisplayHeader: sX,
83999
84007
  showChartBuilder: M,
84000
84008
  showPageSizeSelector: w,
84001
- showColumnExplorer: E && !NX,
84002
- showRowExplorer: O && !NX,
84003
- togglePanel: gX,
84004
- isPanelOpen: hX,
84005
- viewedRowIdx: pX,
84006
- onViewedRowChange: (e2) => mX(e2)
84009
+ showColumnExplorer: E && !PX,
84010
+ showRowExplorer: O && !PX,
84011
+ togglePanel: _X,
84012
+ isPanelOpen: gX,
84013
+ viewedRowIdx: mX,
84014
+ onViewedRowChange: (e2) => hX(e2)
84007
84015
  })
84008
84016
  })
84009
84017
  })
@@ -84515,7 +84523,7 @@ ${c}
84515
84523
  children: _temp6$2
84516
84524
  }),
84517
84525
  (0, import_jsx_runtime.jsx)(CalendarGridBody, {
84518
- children: _temp7
84526
+ children: _temp7$1
84519
84527
  })
84520
84528
  ]
84521
84529
  })
@@ -84561,7 +84569,7 @@ ${c}
84561
84569
  children: e
84562
84570
  });
84563
84571
  }
84564
- function _temp7(e) {
84572
+ function _temp7$1(e) {
84565
84573
  return (0, import_jsx_runtime.jsx)(CalendarCell, {
84566
84574
  date: e
84567
84575
  });
@@ -86685,6 +86693,7 @@ ${c}
86685
86693
  label: string$2().nullish(),
86686
86694
  pageSize: number$2().default(5),
86687
86695
  showDownload: boolean$2().default(true),
86696
+ dataframeName: string$2().optional(),
86688
86697
  columns: array$2(tuple([
86689
86698
  string$2().or(number$2()),
86690
86699
  string$2(),
@@ -86742,37 +86751,37 @@ ${c}
86742
86751
  transforms: []
86743
86752
  };
86744
86753
  const DataFrameComponent = (0, import_react.memo)((e) => {
86745
- let r = (0, import_compiler_runtime$39.c)(69), { columns: c, pageSize: d, showDownload: f, lazy: _, value: v, setValue: y, get_dataframe: S, get_column_values: w, search: E, download_as: O, host: M } = e, I;
86746
- r[0] === S ? I = r[1] : (I = () => S({}), r[0] = S, r[1] = I);
86747
- let z = v == null ? void 0 : v.transforms, G;
86748
- r[2] === z ? G = r[3] : (G = [
86749
- z
86750
- ], r[2] = z, r[3] = G);
86751
- let { data: q, error: IY, isPending: LY } = useAsyncData(I, G), RY;
86752
- r[4] === q ? RY = r[5] : (RY = q || {}, r[4] = q, r[5] = RY);
86753
- let { url: zY, total_rows: BY, row_headers: VY, field_types: HY, column_types_per_step: UY, python_code: WY, sql_code: GY } = RY, KY = HY == null ? void 0 : HY.length, [qY, JY] = (0, import_react.useState)(v || EMPTY), YY = (0, import_react.useRef)(null), XY;
86754
- r[6] === _ ? XY = r[7] : (XY = (e2) => {
86754
+ let r = (0, import_compiler_runtime$39.c)(70), { columns: c, dataframeName: d, pageSize: f, showDownload: _, lazy: v, value: y, setValue: S, get_dataframe: w, get_column_values: E, search: O, download_as: M, host: I } = e, z;
86755
+ r[0] === w ? z = r[1] : (z = () => w({}), r[0] = w, r[1] = z);
86756
+ let G = y == null ? void 0 : y.transforms, q;
86757
+ r[2] === G ? q = r[3] : (q = [
86758
+ G
86759
+ ], r[2] = G, r[3] = q);
86760
+ let { data: IY, error: LY, isPending: RY } = useAsyncData(z, q), zY;
86761
+ r[4] === IY ? zY = r[5] : (zY = IY || {}, r[4] = IY, r[5] = zY);
86762
+ let { url: BY, total_rows: VY, row_headers: HY, field_types: UY, column_types_per_step: WY, python_code: GY, sql_code: KY } = zY, qY = UY == null ? void 0 : UY.length, [JY, YY] = (0, import_react.useState)(y || EMPTY), XY = (0, import_react.useRef)(null), ZY;
86763
+ r[6] === v ? ZY = r[7] : (ZY = (e2) => {
86755
86764
  var _a2;
86756
- _ && e2 !== "transform" && ((_a2 = YY.current) == null ? void 0 : _a2.submit());
86757
- }, r[6] = _, r[7] = XY);
86758
- let ZY = XY, QY = (0, import_react.useRef)(qY), $Y;
86759
- r[8] === qY ? $Y = r[9] : ($Y = () => {
86760
- QY.current = qY;
86761
- }, r[8] = qY, r[9] = $Y), (0, import_react.useEffect)($Y);
86762
- let eX;
86763
- r[10] !== y || r[11] !== (v == null ? void 0 : v.transforms.length) ? (eX = () => {
86764
- let e2 = QY.current;
86765
- (v == null ? void 0 : v.transforms.length) !== e2.transforms.length && y(e2);
86766
- }, r[10] = y, r[11] = v == null ? void 0 : v.transforms.length, r[12] = eX) : eX = r[12];
86767
- let tX = v == null ? void 0 : v.transforms.length, nX;
86768
- r[13] !== q || r[14] !== y || r[15] !== tX ? (nX = [
86769
- q,
86770
- tX,
86771
- QY,
86772
- y
86773
- ], r[13] = q, r[14] = y, r[15] = tX, r[16] = nX) : nX = r[16], (0, import_react.useEffect)(eX, nX);
86774
- let rX;
86775
- r[17] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (rX = (0, import_jsx_runtime.jsxs)(TabsTrigger, {
86765
+ v && e2 !== "transform" && ((_a2 = XY.current) == null ? void 0 : _a2.submit());
86766
+ }, r[6] = v, r[7] = ZY);
86767
+ let QY = ZY, $Y = (0, import_react.useRef)(JY), eX;
86768
+ r[8] === JY ? eX = r[9] : (eX = () => {
86769
+ $Y.current = JY;
86770
+ }, r[8] = JY, r[9] = eX), (0, import_react.useEffect)(eX);
86771
+ let tX;
86772
+ r[10] !== S || r[11] !== (y == null ? void 0 : y.transforms.length) ? (tX = () => {
86773
+ let e2 = $Y.current;
86774
+ (y == null ? void 0 : y.transforms.length) !== e2.transforms.length && S(e2);
86775
+ }, r[10] = S, r[11] = y == null ? void 0 : y.transforms.length, r[12] = tX) : tX = r[12];
86776
+ let nX = y == null ? void 0 : y.transforms.length, rX;
86777
+ r[13] !== IY || r[14] !== S || r[15] !== nX ? (rX = [
86778
+ IY,
86779
+ nX,
86780
+ $Y,
86781
+ S
86782
+ ], r[13] = IY, r[14] = S, r[15] = nX, r[16] = rX) : rX = r[16], (0, import_react.useEffect)(tX, rX);
86783
+ let iX;
86784
+ r[17] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (iX = (0, import_jsx_runtime.jsxs)(TabsTrigger, {
86776
86785
  value: "transform",
86777
86786
  className: "text-xs py-1",
86778
86787
  children: [
@@ -86781,9 +86790,9 @@ ${c}
86781
86790
  }),
86782
86791
  "Transform"
86783
86792
  ]
86784
- }), r[17] = rX) : rX = r[17];
86785
- let iX;
86786
- r[18] === WY ? iX = r[19] : (iX = WY && (0, import_jsx_runtime.jsxs)(TabsTrigger, {
86793
+ }), r[17] = iX) : iX = r[17];
86794
+ let aX;
86795
+ r[18] === GY ? aX = r[19] : (aX = GY && (0, import_jsx_runtime.jsxs)(TabsTrigger, {
86787
86796
  value: "python-code",
86788
86797
  className: "text-xs py-1",
86789
86798
  children: [
@@ -86792,9 +86801,9 @@ ${c}
86792
86801
  }),
86793
86802
  "Python Code"
86794
86803
  ]
86795
- }), r[18] = WY, r[19] = iX);
86796
- let aX;
86797
- r[20] === GY ? aX = r[21] : (aX = GY && (0, import_jsx_runtime.jsxs)(TabsTrigger, {
86804
+ }), r[18] = GY, r[19] = aX);
86805
+ let oX;
86806
+ r[20] === KY ? oX = r[21] : (oX = KY && (0, import_jsx_runtime.jsxs)(TabsTrigger, {
86798
86807
  value: "sql-code",
86799
86808
  className: "text-xs py-1",
86800
86809
  children: [
@@ -86803,111 +86812,112 @@ ${c}
86803
86812
  }),
86804
86813
  "SQL Code"
86805
86814
  ]
86806
- }), r[20] = GY, r[21] = aX);
86807
- let oX;
86808
- r[22] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (oX = (0, import_jsx_runtime.jsx)("div", {
86809
- className: "grow"
86810
- }), r[22] = oX) : oX = r[22];
86815
+ }), r[20] = KY, r[21] = oX);
86811
86816
  let sX;
86812
- r[23] !== iX || r[24] !== aX ? (sX = (0, import_jsx_runtime.jsxs)(TabsList, {
86817
+ r[22] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (sX = (0, import_jsx_runtime.jsx)("div", {
86818
+ className: "grow"
86819
+ }), r[22] = sX) : sX = r[22];
86820
+ let cX;
86821
+ r[23] !== aX || r[24] !== oX ? (cX = (0, import_jsx_runtime.jsxs)(TabsList, {
86813
86822
  className: "h-8",
86814
86823
  children: [
86815
- rX,
86816
86824
  iX,
86817
86825
  aX,
86818
- oX
86826
+ oX,
86827
+ sX
86819
86828
  ]
86820
- }), r[23] = iX, r[24] = aX, r[25] = sX) : sX = r[25];
86821
- let cX;
86822
- r[26] === LY ? cX = r[27] : (cX = LY && (0, import_jsx_runtime.jsx)(Spinner, {
86823
- size: "small"
86824
- }), r[26] = LY, r[27] = cX);
86829
+ }), r[23] = aX, r[24] = oX, r[25] = cX) : cX = r[25];
86825
86830
  let lX;
86826
- r[28] !== sX || r[29] !== cX ? (lX = (0, import_jsx_runtime.jsxs)("div", {
86831
+ r[26] === RY ? lX = r[27] : (lX = RY && (0, import_jsx_runtime.jsx)(Spinner, {
86832
+ size: "small"
86833
+ }), r[26] = RY, r[27] = lX);
86834
+ let uX;
86835
+ r[28] !== cX || r[29] !== lX ? (uX = (0, import_jsx_runtime.jsxs)("div", {
86827
86836
  className: "flex items-center gap-2",
86828
86837
  children: [
86829
- sX,
86830
- cX
86838
+ cX,
86839
+ lX
86831
86840
  ]
86832
- }), r[28] = sX, r[29] = cX, r[30] = lX) : lX = r[30];
86833
- let uX;
86834
- r[31] !== y || r[32] !== v ? (uX = (e2) => {
86835
- isEqual_default(e2, v) || (y(e2), JY(e2));
86836
- }, r[31] = y, r[32] = v, r[33] = uX) : uX = r[33];
86841
+ }), r[28] = cX, r[29] = lX, r[30] = uX) : uX = r[30];
86837
86842
  let dX;
86838
- r[34] !== UY || r[35] !== c || r[36] !== w || r[37] !== qY || r[38] !== _ || r[39] !== uX ? (dX = (0, import_jsx_runtime.jsx)(TabsContent, {
86843
+ r[31] !== S || r[32] !== y ? (dX = (e2) => {
86844
+ isEqual_default(e2, y) || (S(e2), YY(e2));
86845
+ }, r[31] = S, r[32] = y, r[33] = dX) : dX = r[33];
86846
+ let fX;
86847
+ r[34] !== WY || r[35] !== c || r[36] !== E || r[37] !== JY || r[38] !== v || r[39] !== dX ? (fX = (0, import_jsx_runtime.jsx)(TabsContent, {
86839
86848
  value: "transform",
86840
86849
  className: "mt-1 border rounded-t overflow-hidden",
86841
86850
  children: (0, import_jsx_runtime.jsx)(TransformPanel, {
86842
- ref: YY,
86843
- initialValue: qY,
86851
+ ref: XY,
86852
+ initialValue: JY,
86844
86853
  columns: c,
86845
- onChange: uX,
86846
- onInvalidChange: JY,
86847
- getColumnValues: w,
86848
- columnTypesPerStep: UY,
86849
- lazy: _
86854
+ onChange: dX,
86855
+ onInvalidChange: YY,
86856
+ getColumnValues: E,
86857
+ columnTypesPerStep: WY,
86858
+ lazy: v
86850
86859
  })
86851
- }), r[34] = UY, r[35] = c, r[36] = w, r[37] = qY, r[38] = _, r[39] = uX, r[40] = dX) : dX = r[40];
86852
- let fX;
86853
- r[41] === WY ? fX = r[42] : (fX = WY && (0, import_jsx_runtime.jsx)(TabsContent, {
86860
+ }), r[34] = WY, r[35] = c, r[36] = E, r[37] = JY, r[38] = v, r[39] = dX, r[40] = fX) : fX = r[40];
86861
+ let pX;
86862
+ r[41] === GY ? pX = r[42] : (pX = GY && (0, import_jsx_runtime.jsx)(TabsContent, {
86854
86863
  value: "python-code",
86855
86864
  className: "mt-1 border rounded-t overflow-hidden",
86856
86865
  children: (0, import_jsx_runtime.jsx)(ReadonlyCode, {
86857
86866
  minHeight: "215px",
86858
86867
  maxHeight: "215px",
86859
- code: WY,
86868
+ code: GY,
86860
86869
  language: "python"
86861
86870
  })
86862
- }), r[41] = WY, r[42] = fX);
86863
- let pX;
86864
- r[43] === GY ? pX = r[44] : (pX = GY && (0, import_jsx_runtime.jsx)(TabsContent, {
86871
+ }), r[41] = GY, r[42] = pX);
86872
+ let mX;
86873
+ r[43] === KY ? mX = r[44] : (mX = KY && (0, import_jsx_runtime.jsx)(TabsContent, {
86865
86874
  value: "sql-code",
86866
86875
  className: "mt-1 border rounded-t overflow-hidden",
86867
86876
  children: (0, import_jsx_runtime.jsx)(ReadonlyCode, {
86868
86877
  minHeight: "215px",
86869
86878
  maxHeight: "215px",
86870
- code: GY,
86879
+ code: KY,
86871
86880
  language: "sql"
86872
86881
  })
86873
- }), r[43] = GY, r[44] = pX);
86874
- let mX;
86875
- r[45] !== ZY || r[46] !== lX || r[47] !== dX || r[48] !== fX || r[49] !== pX ? (mX = (0, import_jsx_runtime.jsxs)(Tabs, {
86882
+ }), r[43] = KY, r[44] = mX);
86883
+ let hX;
86884
+ r[45] !== QY || r[46] !== uX || r[47] !== fX || r[48] !== pX || r[49] !== mX ? (hX = (0, import_jsx_runtime.jsxs)(Tabs, {
86876
86885
  defaultValue: "transform",
86877
- onValueChange: ZY,
86886
+ onValueChange: QY,
86878
86887
  children: [
86879
- lX,
86880
- dX,
86888
+ uX,
86881
86889
  fX,
86882
- pX
86890
+ pX,
86891
+ mX
86883
86892
  ]
86884
- }), r[45] = ZY, r[46] = lX, r[47] = dX, r[48] = fX, r[49] = pX, r[50] = mX) : mX = r[50];
86885
- let hX;
86886
- r[51] === IY ? hX = r[52] : (hX = IY && (0, import_jsx_runtime.jsx)(ErrorBanner, {
86887
- error: IY
86888
- }), r[51] = IY, r[52] = hX);
86889
- let gX = zY || "", _X = BY ?? 0, vX = KY ?? 0, yX = VY || Arrays.EMPTY, bX = BY && BY > 5 || false, xX;
86890
- r[53] !== O || r[54] !== HY || r[55] !== M || r[56] !== d || r[57] !== E || r[58] !== f || r[59] !== gX || r[60] !== _X || r[61] !== vX || r[62] !== yX || r[63] !== bX ? (xX = (0, import_jsx_runtime.jsx)(LoadingDataTableComponent, {
86893
+ }), r[45] = QY, r[46] = uX, r[47] = fX, r[48] = pX, r[49] = mX, r[50] = hX) : hX = r[50];
86894
+ let gX;
86895
+ r[51] === LY ? gX = r[52] : (gX = LY && (0, import_jsx_runtime.jsx)(ErrorBanner, {
86896
+ error: LY
86897
+ }), r[51] = LY, r[52] = gX);
86898
+ let _X = BY || "", vX = VY ?? 0, yX = qY ?? 0, bX = HY || Arrays.EMPTY, xX = VY && VY > 5 || false, SX;
86899
+ r[53] !== d || r[54] !== M || r[55] !== UY || r[56] !== I || r[57] !== f || r[58] !== O || r[59] !== _ || r[60] !== _X || r[61] !== vX || r[62] !== yX || r[63] !== bX || r[64] !== xX ? (SX = (0, import_jsx_runtime.jsx)(LoadingDataTableComponent, {
86891
86900
  label: null,
86892
86901
  className: "rounded-b border-x border-b",
86893
- data: gX,
86902
+ data: _X,
86894
86903
  hasStableRowId: false,
86895
- totalRows: _X,
86896
- totalColumns: vX,
86904
+ totalRows: vX,
86905
+ totalColumns: yX,
86897
86906
  maxColumns: "all",
86898
- pageSize: d,
86907
+ pageSize: f,
86899
86908
  pagination: true,
86900
- fieldTypes: HY,
86901
- rowHeaders: yX,
86902
- showDownload: f,
86903
- download_as: O,
86909
+ fieldTypes: UY,
86910
+ rowHeaders: bX,
86911
+ showDownload: _,
86912
+ downloadFileName: d,
86913
+ download_as: M,
86904
86914
  enableSearch: false,
86905
86915
  showFilters: false,
86906
- search: E,
86916
+ search: O,
86907
86917
  showColumnSummaries: false,
86908
86918
  showDataTypes: true,
86909
86919
  get_column_summaries: getColumnSummaries,
86910
- showPageSizeSelector: bX,
86920
+ showPageSizeSelector: xX,
86911
86921
  showColumnExplorer: false,
86912
86922
  showRowExplorer: true,
86913
86923
  showChartBuilder: false,
@@ -86915,16 +86925,16 @@ ${c}
86915
86925
  setValue: Functions.NOOP,
86916
86926
  selection: null,
86917
86927
  lazy: false,
86918
- host: M
86919
- }), r[53] = O, r[54] = HY, r[55] = M, r[56] = d, r[57] = E, r[58] = f, r[59] = gX, r[60] = _X, r[61] = vX, r[62] = yX, r[63] = bX, r[64] = xX) : xX = r[64];
86920
- let SX;
86921
- return r[65] !== mX || r[66] !== hX || r[67] !== xX ? (SX = (0, import_jsx_runtime.jsxs)("div", {
86928
+ host: I
86929
+ }), r[53] = d, r[54] = M, r[55] = UY, r[56] = I, r[57] = f, r[58] = O, r[59] = _, r[60] = _X, r[61] = vX, r[62] = yX, r[63] = bX, r[64] = xX, r[65] = SX) : SX = r[65];
86930
+ let CX;
86931
+ return r[66] !== hX || r[67] !== gX || r[68] !== SX ? (CX = (0, import_jsx_runtime.jsxs)("div", {
86922
86932
  children: [
86923
- mX,
86924
86933
  hX,
86925
- xX
86934
+ gX,
86935
+ SX
86926
86936
  ]
86927
- }), r[65] = mX, r[66] = hX, r[67] = xX, r[68] = SX) : SX = r[68], SX;
86937
+ }), r[66] = hX, r[67] = gX, r[68] = SX, r[69] = CX) : CX = r[69], CX;
86928
86938
  });
86929
86939
  DataFrameComponent.displayName = "DataFrameComponent";
86930
86940
  function getColumnSummaries() {
@@ -94113,7 +94123,7 @@ ${c}
94113
94123
  setValue: e.setValue
94114
94124
  });
94115
94125
  }
94116
- }, LazyPlot = (0, import_react.lazy)(() => import("./Plot-CmsrWWji.js").then((e) => ({
94126
+ }, LazyPlot = (0, import_react.lazy)(() => import("./Plot-C9vQQj4X.js").then((e) => ({
94117
94127
  default: e.Plot
94118
94128
  }))), SUNBURST_DATA_KEYS = [
94119
94129
  "color",
@@ -94131,7 +94141,7 @@ ${c}
94131
94141
  "value"
94132
94142
  ], TREE_MAP_DATA_KEYS = SUNBURST_DATA_KEYS;
94133
94143
  const PlotlyComponent = (0, import_react.memo)((e) => {
94134
- let r = (0, import_compiler_runtime$30.c)(34), { figure: c, value: d, setValue: f, config: _ } = e, v = useScript("https://cdn.jsdelivr.net/npm/mathjax-full@3.2.2/es5/tex-mml-svg.min.js") === "ready", y;
94144
+ let r = (0, import_compiler_runtime$30.c)(37), { figure: c, value: d, setValue: f, config: _ } = e, v = useScript("https://cdn.jsdelivr.net/npm/mathjax-full@3.2.2/es5/tex-mml-svg.min.js") === "ready", y;
94135
94145
  r[0] !== v || r[1] !== c || r[2] !== d ? (y = {
94136
94146
  originalFigure: c,
94137
94147
  initialValue: d,
@@ -94196,16 +94206,24 @@ ${c}
94196
94206
  }, r[19] = f, r[20] = HY);
94197
94207
  let UY = useEvent_default(HY), WY;
94198
94208
  r[21] === f ? WY = r[22] : (WY = (e2) => {
94209
+ e2 && e2.points.some(_temp5$1) && f((r2) => ({
94210
+ ...r2,
94211
+ points: extractPoints(e2.points),
94212
+ indices: e2.points.map(_temp6)
94213
+ }));
94214
+ }, r[21] = f, r[22] = WY);
94215
+ let GY = useEvent_default(WY), KY;
94216
+ r[23] === f ? KY = r[24] : (KY = (e2) => {
94199
94217
  e2 && f((r2) => ({
94200
94218
  ...r2,
94201
94219
  selections: "selections" in e2 ? e2.selections : [],
94202
94220
  points: extractPoints(e2.points),
94203
- indices: e2.points.map(_temp5$1),
94221
+ indices: e2.points.map(_temp7),
94204
94222
  range: e2.range
94205
94223
  }));
94206
- }, r[21] = f, r[22] = WY);
94207
- let GY = useEvent_default(WY), KY = S.frames ?? void 0, qY = useEvent_default(_temp6), JY;
94208
- return r[23] !== S || r[24] !== w || r[25] !== IY || r[26] !== VY || r[27] !== UY || r[28] !== GY || r[29] !== KY || r[30] !== qY || r[31] !== LY || r[32] !== zY ? (JY = (0, import_jsx_runtime.jsx)(LazyPlot, {
94224
+ }, r[23] = f, r[24] = KY);
94225
+ let qY = useEvent_default(KY), JY = S.frames ?? void 0, YY = useEvent_default(_temp8), XY;
94226
+ return r[25] !== S || r[26] !== w || r[27] !== IY || r[28] !== VY || r[29] !== UY || r[30] !== GY || r[31] !== qY || r[32] !== JY || r[33] !== YY || r[34] !== LY || r[35] !== zY ? (XY = (0, import_jsx_runtime.jsx)(LazyPlot, {
94209
94227
  ...S,
94210
94228
  layout: w,
94211
94229
  onRelayout: LY,
@@ -94213,20 +94231,32 @@ ${c}
94213
94231
  onTreemapClick: VY,
94214
94232
  onSunburstClick: UY,
94215
94233
  config: IY,
94216
- onSelected: GY,
94234
+ onClick: GY,
94235
+ onSelected: qY,
94217
94236
  className: "w-full",
94218
94237
  useResizeHandler: true,
94219
- frames: KY,
94220
- onError: qY
94221
- }), r[23] = S, r[24] = w, r[25] = IY, r[26] = VY, r[27] = UY, r[28] = GY, r[29] = KY, r[30] = qY, r[31] = LY, r[32] = zY, r[33] = JY) : JY = r[33], JY;
94238
+ frames: JY,
94239
+ onError: YY
94240
+ }), r[25] = S, r[26] = w, r[27] = IY, r[28] = VY, r[29] = UY, r[30] = GY, r[31] = qY, r[32] = JY, r[33] = YY, r[34] = LY, r[35] = zY, r[36] = XY) : XY = r[36], XY;
94222
94241
  });
94223
94242
  PlotlyComponent.displayName = "PlotlyComponent";
94243
+ var STANDARD_POINT_KEYS = [
94244
+ "x",
94245
+ "y",
94246
+ "z",
94247
+ "lat",
94248
+ "lon",
94249
+ "curveNumber",
94250
+ "pointNumber",
94251
+ "pointIndex"
94252
+ ];
94224
94253
  function extractPoints(e) {
94225
94254
  if (!e) return [];
94226
94255
  let r;
94227
94256
  return e.map((e2) => {
94257
+ var _a2;
94228
94258
  let c = Array.isArray(e2.data.hovertemplate) ? e2.data.hovertemplate[0] : e2.data.hovertemplate;
94229
- return r = r ? r.update(c) : createParser(c), r.parse(e2);
94259
+ return !c || ((_a2 = e2.data) == null ? void 0 : _a2.type) === "heatmap" ? pick_default(e2, STANDARD_POINT_KEYS) : (r = r ? r.update(c) : createParser(c), r.parse(e2));
94230
94260
  });
94231
94261
  }
94232
94262
  function _temp$7(e) {
@@ -94248,9 +94278,16 @@ ${c}
94248
94278
  return pick_default(e, SUNBURST_DATA_KEYS);
94249
94279
  }
94250
94280
  function _temp5$1(e) {
94251
- return e.pointIndex;
94281
+ var _a2;
94282
+ return ((_a2 = e.data) == null ? void 0 : _a2.type) === "heatmap";
94252
94283
  }
94253
94284
  function _temp6(e) {
94285
+ return e.pointIndex;
94286
+ }
94287
+ function _temp7(e) {
94288
+ return e.pointIndex;
94289
+ }
94290
+ function _temp8(e) {
94254
94291
  Logger.error("PlotlyPlugin: ", e);
94255
94292
  }
94256
94293
  var import_compiler_runtime$29 = require_compiler_runtime(), RadioPlugin = class {
@@ -102159,7 +102196,7 @@ ${c}
102159
102196
  }), r[12] = y, r[13] = z, r[14] = G) : G = r[14], G;
102160
102197
  };
102161
102198
  var import_compiler_runtime$1 = require_compiler_runtime(), VerticalLayoutRenderer = (e) => {
102162
- let r = (0, import_compiler_runtime$1.c)(34), { cells: c, appConfig: d, mode: f } = e, { invisible: _ } = useDelayVisibility(c.length, f), v = useAtomValue(kioskModeAtom), y = useAtomValue(kernelStateAtom), [S] = useResolvedMarimoConfig(), w = useAtomValue(showCodeInRunModeAtom), E;
102199
+ let r = (0, import_compiler_runtime$1.c)(37), { cells: c, appConfig: d, mode: f } = e, { invisible: _ } = useDelayVisibility(c.length, f), v = useAtomValue(kioskModeAtom), y = useAtomValue(kernelStateAtom), [S] = useResolvedMarimoConfig(), w = useAtomValue(showCodeInRunModeAtom), E;
102163
102200
  r[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (E = new URLSearchParams(window.location.search), r[0] = E) : E = r[0];
102164
102201
  let O = E, M;
102165
102202
  r[1] !== v || r[2] !== w ? (M = () => {
@@ -102224,32 +102261,33 @@ ${c}
102224
102261
  }) : (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {
102225
102262
  children: c.map(LY)
102226
102263
  }), r[14] = d.width, r[15] = c, r[16] = _, r[17] = y, r[18] = LY, r[19] = RY) : RY = r[19];
102227
- let zY = RY, BY;
102228
- r[20] !== q || r[21] !== zY || r[22] !== I ? (BY = I && q ? (0, import_jsx_runtime.jsxs)("div", {
102229
- className: "flex flex-col gap-5",
102230
- children: [
102231
- " ",
102232
- zY()
102233
- ]
102234
- }) : zY(), r[20] = q, r[21] = zY, r[22] = I, r[23] = BY) : BY = r[23];
102235
- let VY;
102236
- r[24] !== q || r[25] !== f || r[26] !== I ? (VY = f === "read" && (0, import_jsx_runtime.jsx)(ActionButtons, {
102264
+ let zY = RY, BY = I && q && "gap-5", VY;
102265
+ r[20] === BY ? VY = r[21] : (VY = cn("flex flex-col", BY), r[20] = BY, r[21] = VY);
102266
+ let HY;
102267
+ r[22] === zY ? HY = r[23] : (HY = zY(), r[22] = zY, r[23] = HY);
102268
+ let UY;
102269
+ r[24] !== VY || r[25] !== HY ? (UY = (0, import_jsx_runtime.jsx)("div", {
102270
+ className: VY,
102271
+ children: HY
102272
+ }), r[24] = VY, r[25] = HY, r[26] = UY) : UY = r[26];
102273
+ let WY;
102274
+ r[27] !== q || r[28] !== f || r[29] !== I ? (WY = f === "read" && (0, import_jsx_runtime.jsx)(ActionButtons, {
102237
102275
  canShowCode: q,
102238
102276
  showCode: I,
102239
102277
  onToggleShowCode: () => z(_temp2$1)
102240
- }), r[24] = q, r[25] = f, r[26] = I, r[27] = VY) : VY = r[27];
102241
- let HY;
102242
- r[28] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (HY = (0, import_jsx_runtime.jsx)(FloatingOutline, {}), r[28] = HY) : HY = r[28];
102243
- let UY;
102244
- return r[29] !== d || r[30] !== _ || r[31] !== BY || r[32] !== VY ? (UY = (0, import_jsx_runtime.jsxs)(VerticalLayoutWrapper, {
102278
+ }), r[27] = q, r[28] = f, r[29] = I, r[30] = WY) : WY = r[30];
102279
+ let GY;
102280
+ r[31] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (GY = (0, import_jsx_runtime.jsx)(FloatingOutline, {}), r[31] = GY) : GY = r[31];
102281
+ let KY;
102282
+ return r[32] !== d || r[33] !== _ || r[34] !== WY || r[35] !== UY ? (KY = (0, import_jsx_runtime.jsxs)(VerticalLayoutWrapper, {
102245
102283
  invisible: _,
102246
102284
  appConfig: d,
102247
102285
  children: [
102248
- BY,
102249
- VY,
102250
- HY
102286
+ UY,
102287
+ WY,
102288
+ GY
102251
102289
  ]
102252
- }), r[29] = d, r[30] = _, r[31] = BY, r[32] = VY, r[33] = UY) : UY = r[33], UY;
102290
+ }), r[32] = d, r[33] = _, r[34] = WY, r[35] = UY, r[36] = KY) : KY = r[36], KY;
102253
102291
  }, ActionButtons = (e) => {
102254
102292
  let r = (0, import_compiler_runtime$1.c)(26), { canShowCode: c, showCode: d, onToggleShowCode: f } = e, { readCode: _ } = useRequestClient(), v = _temp3, y = _temp4, S;
102255
102293
  r[0] === _ ? S = r[1] : (S = async () => {