@marimo-team/islands 0.22.1-dev34 → 0.22.1-dev37

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.
package/dist/main.js CHANGED
@@ -23751,8 +23751,8 @@ Database schema: ${c}`), (_a4 = r2.aiFix) == null ? void 0 : _a4.setAiCompletion
23751
23751
  if (c.some(_temp$34)) _ = "Interrupted";
23752
23752
  else if (c.some(_temp2$24)) _ = "An internal error occurred";
23753
23753
  else if (c.some(_temp3$16)) _ = "Ancestor prevented from running", v = "default", y = "text-secondary-foreground";
23754
- else if (c.some(_temp4$10)) _ = "Ancestor stopped", v = "default", y = "text-secondary-foreground";
23755
- else if (c.some(_temp5$7)) _ = "SQL error";
23754
+ else if (c.some(_temp4$9)) _ = "Ancestor stopped", v = "default", y = "text-secondary-foreground";
23755
+ else if (c.some(_temp5$6)) _ = "SQL error";
23756
23756
  else {
23757
23757
  let e2;
23758
23758
  r[0] === c ? e2 = r[1] : (e2 = c.find(_temp6$5), r[0] = c, r[1] = e2);
@@ -24124,10 +24124,10 @@ Database schema: ${c}`), (_a4 = r2.aiFix) == null ? void 0 : _a4.setAiCompletion
24124
24124
  function _temp3$16(e) {
24125
24125
  return e.type === "ancestor-prevented";
24126
24126
  }
24127
- function _temp4$10(e) {
24127
+ function _temp4$9(e) {
24128
24128
  return e.type === "ancestor-stopped";
24129
24129
  }
24130
- function _temp5$7(e) {
24130
+ function _temp5$6(e) {
24131
24131
  return e.type === "sql-error";
24132
24132
  }
24133
24133
  function _temp6$5(e) {
@@ -34904,58 +34904,56 @@ Database schema: ${c}`), (_a4 = r2.aiFix) == null ? void 0 : _a4.setAiCompletion
34904
34904
  filters: c9,
34905
34905
  table: k9
34906
34906
  }),
34907
- (0, import_jsx_runtime.jsxs)(CellSelectionProvider, {
34908
- children: [
34909
- (0, import_jsx_runtime.jsxs)("div", {
34910
- part: "table-wrapper",
34911
- className: cn(r || "rounded-md border overflow-hidden"),
34912
- children: [
34913
- (0, import_jsx_runtime.jsx)(TableTopBar, {
34914
- enableSearch: i9,
34915
- searchQuery: a9,
34916
- onSearchQueryChange: o9,
34917
- reloading: u9,
34918
- showChartBuilder: m9,
34919
- isChartBuilderOpen: h9,
34920
- toggleDisplayHeader: p9,
34921
- showTableExplorer: _9,
34922
- togglePanel: v9,
34923
- isAnyPanelOpen: b9,
34924
- downloadAs: Q7
34925
- }),
34926
- (0, import_jsx_runtime.jsxs)(Table, {
34927
- className: "relative",
34928
- ref: M9,
34929
- children: [
34930
- C9 && (0, import_jsx_runtime.jsx)("thead", {
34931
- className: "absolute top-0 left-0 h-[3px] w-1/2 bg-primary animate-slide"
34932
- }),
34933
- renderTableHeader(k9, j9 || !!c),
34934
- (0, import_jsx_runtime.jsx)(DataTableBody, {
34935
- table: k9,
34936
- columns: d,
34937
- rowViewerPanelOpen: A9,
34938
- getRowIndex: O9,
34939
- viewedRowIdx: x9,
34940
- virtualize: j9
34941
- })
34942
- ]
34943
- })
34944
- ]
34945
- }),
34946
- (0, import_jsx_runtime.jsx)(TableBottomBar, {
34947
- part: "table-footer",
34948
- className: "border-t border-border pt-1.5 pb-0.5",
34949
- totalColumns: v,
34950
- pagination: e9,
34951
- selection: _,
34952
- onRowSelectionChange: t9,
34953
- table: k9,
34954
- getRowIds: r9,
34955
- showPageSizeSelector: g9,
34956
- tableLoading: u9
34957
- })
34958
- ]
34907
+ (0, import_jsx_runtime.jsx)(CellSelectionProvider, {
34908
+ children: (0, import_jsx_runtime.jsxs)("div", {
34909
+ part: "table-wrapper",
34910
+ className: cn(r || "rounded-md border overflow-hidden"),
34911
+ children: [
34912
+ (0, import_jsx_runtime.jsx)(TableTopBar, {
34913
+ enableSearch: i9,
34914
+ searchQuery: a9,
34915
+ onSearchQueryChange: o9,
34916
+ reloading: u9,
34917
+ showChartBuilder: m9,
34918
+ isChartBuilderOpen: h9,
34919
+ toggleDisplayHeader: p9,
34920
+ showTableExplorer: _9,
34921
+ togglePanel: v9,
34922
+ isAnyPanelOpen: b9,
34923
+ downloadAs: Q7
34924
+ }),
34925
+ (0, import_jsx_runtime.jsxs)(Table, {
34926
+ className: "relative",
34927
+ ref: M9,
34928
+ children: [
34929
+ C9 && (0, import_jsx_runtime.jsx)("thead", {
34930
+ className: "absolute top-0 left-0 h-[3px] w-1/2 bg-primary animate-slide"
34931
+ }),
34932
+ renderTableHeader(k9, j9 || !!c),
34933
+ (0, import_jsx_runtime.jsx)(DataTableBody, {
34934
+ table: k9,
34935
+ columns: d,
34936
+ rowViewerPanelOpen: A9,
34937
+ getRowIndex: O9,
34938
+ viewedRowIdx: x9,
34939
+ virtualize: j9
34940
+ })
34941
+ ]
34942
+ }),
34943
+ (0, import_jsx_runtime.jsx)(TableBottomBar, {
34944
+ part: "table-footer",
34945
+ className: "pt-1.5 pb-0.5 border-t border-border",
34946
+ totalColumns: v,
34947
+ pagination: e9,
34948
+ selection: _,
34949
+ onRowSelectionChange: t9,
34950
+ table: k9,
34951
+ getRowIds: r9,
34952
+ showPageSizeSelector: g9,
34953
+ tableLoading: u9
34954
+ })
34955
+ ]
34956
+ })
34959
34957
  })
34960
34958
  ]
34961
34959
  });
@@ -37135,7 +37133,7 @@ ${E}`,
37135
37133
  (0, import_jsx_runtime.jsx)(TableBody, {
37136
37134
  children: Array.from({
37137
37135
  length: h
37138
- }).map(_temp4$9)
37136
+ }).map(_temp4$8)
37139
37137
  })
37140
37138
  ]
37141
37139
  }), r[5] = h, r[6] = w);
@@ -37179,7 +37177,7 @@ ${E}`,
37179
37177
  })
37180
37178
  }, r);
37181
37179
  }
37182
- function _temp4$9(e, r) {
37180
+ function _temp4$8(e, r) {
37183
37181
  return (0, import_jsx_runtime.jsx)(TableRow, {
37184
37182
  children: Array.from({
37185
37183
  length: 8
@@ -42942,7 +42940,7 @@ ${c}
42942
42940
  let [r3] = e3;
42943
42941
  E2(r3);
42944
42942
  },
42945
- valueMap: _temp4$8
42943
+ valueMap: _temp4$7
42946
42944
  })
42947
42945
  })
42948
42946
  ]
@@ -43040,7 +43038,7 @@ ${c}
43040
43038
  r[0] !== c || r[1] !== f ? (h = () => {
43041
43039
  f.setValue(c, "");
43042
43040
  }, r[0] = c, r[1] = f, r[2] = h) : h = r[2];
43043
- let _ = h, v = _temp5$6, y;
43041
+ let _ = h, v = _temp5$5, y;
43044
43042
  r[3] !== _ || r[4] !== d ? (y = (e2) => {
43045
43043
  let { field: r2 } = e2;
43046
43044
  return (0, import_jsx_runtime.jsxs)(FormItem, {
@@ -43312,10 +43310,10 @@ ${c}
43312
43310
  children: e.display
43313
43311
  }, e.value);
43314
43312
  }
43315
- function _temp4$8(e) {
43313
+ function _temp4$7(e) {
43316
43314
  return e;
43317
43315
  }
43318
- function _temp5$6(e) {
43316
+ function _temp5$5(e) {
43319
43317
  let [r, c] = TIME_UNIT_DESCRIPTIONS[e];
43320
43318
  return (0, import_jsx_runtime.jsx)(SelectItem, {
43321
43319
  value: e,
@@ -46113,9 +46111,9 @@ ${c}
46113
46111
  rows: await loadTableData((await f({
46114
46112
  page_number: e2,
46115
46113
  page_size: 1,
46116
- sort: v.length > 0 ? v.map(_temp4$7) : void 0,
46114
+ sort: v.length > 0 ? v.map(_temp4$6) : void 0,
46117
46115
  query: O,
46118
- filters: z.flatMap(_temp5$5),
46116
+ filters: z.flatMap(_temp5$4),
46119
46117
  max_columns: null
46120
46118
  })).data)
46121
46119
  }), r[48] = z, r[49] = f, r[50] = O, r[51] = v, r[52] = u9) : u9 = r[52];
@@ -46430,13 +46428,13 @@ ${c}
46430
46428
  function _temp3$10(e) {
46431
46429
  Logger.error(e);
46432
46430
  }
46433
- function _temp4$7(e) {
46431
+ function _temp4$6(e) {
46434
46432
  return {
46435
46433
  by: e.id,
46436
46434
  descending: e.desc
46437
46435
  };
46438
46436
  }
46439
- function _temp5$5(e) {
46437
+ function _temp5$4(e) {
46440
46438
  return filterToFilterCondition(e.id, e.value);
46441
46439
  }
46442
46440
  function _temp6$3(e) {
@@ -46596,14 +46594,14 @@ ${c}
46596
46594
  let r = (0, import_compiler_runtime$58.c)(14), c, d, f;
46597
46595
  r[0] === e ? (c = r[1], d = r[2], f = r[3]) : ({ errorMessage: d, className: c, ...f } = e, r[0] = e, r[1] = c, r[2] = d, r[3] = f);
46598
46596
  let h;
46599
- r[4] === c ? h = r[5] : (h = $64fa3d84918910a7$export$c245e6201fed2f75(c, _temp4$6), r[4] = c, r[5] = h);
46597
+ r[4] === c ? h = r[5] : (h = $64fa3d84918910a7$export$c245e6201fed2f75(c, _temp4$5), r[4] = c, r[5] = h);
46600
46598
  let _;
46601
46599
  r[6] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (_ = (0, import_jsx_runtime.jsx)(CalendarHeading, {}), r[6] = _) : _ = r[6];
46602
46600
  let v;
46603
46601
  r[7] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (v = (0, import_jsx_runtime.jsxs)(CalendarGrid, {
46604
46602
  children: [
46605
46603
  (0, import_jsx_runtime.jsx)(CalendarGridHeader, {
46606
- children: _temp5$4
46604
+ children: _temp5$3
46607
46605
  }),
46608
46606
  (0, import_jsx_runtime.jsx)(CalendarGridBody, {
46609
46607
  children: _temp6$2
@@ -46640,10 +46638,10 @@ ${c}
46640
46638
  date: e
46641
46639
  });
46642
46640
  }
46643
- function _temp4$6(e) {
46641
+ function _temp4$5(e) {
46644
46642
  return cn("w-fit", e);
46645
46643
  }
46646
- function _temp5$4(e) {
46644
+ function _temp5$3(e) {
46647
46645
  return (0, import_jsx_runtime.jsx)(CalendarHeaderCell, {
46648
46646
  children: e
46649
46647
  });
@@ -46818,7 +46816,7 @@ ${c}
46818
46816
  children: _temp3$8
46819
46817
  }),
46820
46818
  (0, import_jsx_runtime.jsx)(CalendarGridBody, {
46821
- children: _temp4$5
46819
+ children: _temp4$4
46822
46820
  })
46823
46821
  ]
46824
46822
  })
@@ -46843,7 +46841,7 @@ ${c}
46843
46841
  let r = (0, import_compiler_runtime$55.c)(28), c, d, f, h, _;
46844
46842
  r[0] === e ? (c = r[1], d = r[2], f = r[3], h = r[4], _ = r[5]) : ({ label: h, description: d, errorMessage: f, className: c, ..._ } = e, r[0] = e, r[1] = c, r[2] = d, r[3] = f, r[4] = h, r[5] = _);
46845
46843
  let [v, y] = (0, import_react.useState)(false), S;
46846
- r[6] === c ? S = r[7] : (S = $64fa3d84918910a7$export$c245e6201fed2f75(c, _temp5$3), r[6] = c, r[7] = S);
46844
+ r[6] === c ? S = r[7] : (S = $64fa3d84918910a7$export$c245e6201fed2f75(c, _temp5$2), r[6] = c, r[7] = S);
46847
46845
  let w;
46848
46846
  r[8] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (w = (e2) => {
46849
46847
  y(e2);
@@ -46942,12 +46940,12 @@ ${c}
46942
46940
  children: e
46943
46941
  });
46944
46942
  }
46945
- function _temp4$5(e) {
46943
+ function _temp4$4(e) {
46946
46944
  return (0, import_jsx_runtime.jsx)(CalendarCell, {
46947
46945
  date: e
46948
46946
  });
46949
46947
  }
46950
- function _temp5$3(e) {
46948
+ function _temp5$2(e) {
46951
46949
  return cn("group flex flex-col gap-2", e);
46952
46950
  }
46953
46951
  function _temp6$1(e) {
@@ -55431,7 +55429,7 @@ ${c}
55431
55429
  r[2] === f ? S = r[3] : (S = (e2) => {
55432
55430
  filesToBase64(e2).then((e3) => {
55433
55431
  f(e3);
55434
- }).catch(_temp5$2);
55432
+ }).catch(_temp5$1);
55435
55433
  }, r[2] = f, r[3] = S);
55436
55434
  let w;
55437
55435
  r[4] !== d || r[5] !== y || r[6] !== _ || r[7] !== S ? (w = {
@@ -55439,7 +55437,7 @@ ${c}
55439
55437
  multiple: _,
55440
55438
  maxSize: y,
55441
55439
  onError: _temp$10,
55442
- onDropRejected: _temp4$4,
55440
+ onDropRejected: _temp4$3,
55443
55441
  onDrop: S
55444
55442
  }, r[4] = d, r[5] = y, r[6] = _, r[7] = S, r[8] = w) : w = r[8];
55445
55443
  let { getRootProps: E, getInputProps: O, isFocused: M, isDragAccept: I, isDragReject: z } = useDropzone(w), G;
@@ -55659,7 +55657,7 @@ ${c}
55659
55657
  ]
55660
55658
  }, e.file.name);
55661
55659
  }
55662
- function _temp4$4(e) {
55660
+ function _temp4$3(e) {
55663
55661
  toast({
55664
55662
  title: "File upload failed",
55665
55663
  description: (0, import_jsx_runtime.jsx)("div", {
@@ -55669,7 +55667,7 @@ ${c}
55669
55667
  variant: "danger"
55670
55668
  });
55671
55669
  }
55672
- function _temp5$2(e) {
55670
+ function _temp5$1(e) {
55673
55671
  Logger.error(e), toast({
55674
55672
  title: "File upload failed",
55675
55673
  description: "Failed to convert file to base64.",
@@ -57169,9 +57167,23 @@ ${c}
57169
57167
  }
57170
57168
  };
57171
57169
  }
57172
- var CLICK_SELECTABLE_TRACE_TYPES = /* @__PURE__ */ new Set([
57173
- "heatmap",
57174
- "histogram"
57170
+ var SUNBURST_DATA_KEYS = [
57171
+ "color",
57172
+ "curveNumber",
57173
+ "entry",
57174
+ "hovertext",
57175
+ "id",
57176
+ "label",
57177
+ "parent",
57178
+ "percentEntry",
57179
+ "percentParent",
57180
+ "percentRoot",
57181
+ "pointNumber",
57182
+ "root",
57183
+ "value"
57184
+ ], LINE_CLICK_TRACE_TYPES = /* @__PURE__ */ new Set([
57185
+ "scatter",
57186
+ "scattergl"
57175
57187
  ]), STANDARD_POINT_KEYS = [
57176
57188
  "x",
57177
57189
  "y",
@@ -57183,46 +57195,123 @@ ${c}
57183
57195
  "pointNumbers",
57184
57196
  "pointIndex"
57185
57197
  ];
57198
+ function coalesceField(e, r) {
57199
+ return e ?? r;
57200
+ }
57201
+ function getTraceSource(e) {
57202
+ let r = e, c = e.data ?? {}, d = r.fullData ?? {};
57203
+ return {
57204
+ type: coalesceField(c.type, d.type),
57205
+ mode: coalesceField(c.mode, d.mode),
57206
+ x: coalesceField(c.x, d.x),
57207
+ y: coalesceField(c.y, d.y),
57208
+ hovertemplate: coalesceField(c.hovertemplate, d.hovertemplate)
57209
+ };
57210
+ }
57211
+ function asFiniteNumber(e) {
57212
+ return typeof e == "number" && Number.isFinite(e) ? e : void 0;
57213
+ }
57186
57214
  function getPointIndex(e) {
57187
- if (typeof e.pointIndex == "number") return e.pointIndex;
57188
- if (typeof e.pointNumber == "number") return e.pointNumber;
57215
+ let r = asFiniteNumber(e.pointIndex);
57216
+ if (r !== void 0) return r;
57217
+ let c = asFiniteNumber(e.pointNumber);
57218
+ if (c !== void 0) return c;
57219
+ let d = e.pointNumbers;
57220
+ if (Array.isArray(d)) return d.map(asFiniteNumber).find((e2) => e2 !== void 0);
57221
+ }
57222
+ function isLinePoint(e) {
57223
+ let r = getTraceSource(e);
57224
+ if (!LINE_CLICK_TRACE_TYPES.has(String(r.type))) return false;
57225
+ let c = r.mode;
57226
+ return typeof c == "string" ? c.split("+").includes("lines") : true;
57227
+ }
57228
+ function isPureLineMode(e) {
57229
+ if (typeof e != "string") return false;
57230
+ let r = e.split("+");
57231
+ return r.includes("lines") && !r.includes("markers");
57232
+ }
57233
+ function hasPureLineTrace(e) {
57234
+ return e ? e.some((e2) => {
57235
+ let r = e2.type;
57236
+ return r === void 0 || LINE_CLICK_TRACE_TYPES.has(String(r)) ? isPureLineMode(e2.mode) : false;
57237
+ }) : false;
57238
+ }
57239
+ function createDragmodeButton(e, r, c, d, f) {
57240
+ return {
57241
+ name: e,
57242
+ title: r,
57243
+ icon: {
57244
+ svg: c
57245
+ },
57246
+ click: () => f(d)
57247
+ };
57189
57248
  }
57190
- function isClickSelectablePoint(e) {
57191
- var _a3;
57192
- let r = (_a3 = e.data) == null ? void 0 : _a3.type;
57193
- return typeof r == "string" ? CLICK_SELECTABLE_TRACE_TYPES.has(r) : false;
57249
+ function lineSelectionButtons(e) {
57250
+ return [
57251
+ createDragmodeButton("line-box-select", "Box select", '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor"\n stroke-width="2" stroke-linecap="round" stroke-linejoin="round">\n <rect x="4" y="4" width="16" height="16" stroke-dasharray="2 2" />\n </svg>', "select", e),
57252
+ createDragmodeButton("line-lasso-select", "Lasso select", '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor"\n stroke-width="2" stroke-linecap="round" stroke-linejoin="round">\n <path d="M6 8c0-2.2 2.2-4 5-4s5 1.8 5 4-2.2 4-5 4-5 1.8-5 4 2.2 4 5 4" />\n <circle cx="17.5" cy="16.5" r="1.5" />\n </svg>', "lasso", e)
57253
+ ];
57194
57254
  }
57195
- function extractIndices(e) {
57196
- return e.flatMap((e2) => {
57197
- let r = getPointIndex(e2);
57198
- return typeof r == "number" ? [
57199
- r
57200
- ] : [];
57255
+ function mergeModeBarButtonsToAdd(e, r) {
57256
+ let c = [], d = /* @__PURE__ */ new Set(), f = (e2) => {
57257
+ if (typeof e2 == "string") {
57258
+ if (d.has(e2)) return;
57259
+ d.add(e2), c.push(e2);
57260
+ return;
57261
+ }
57262
+ c.push(e2);
57263
+ };
57264
+ return e.forEach(f), r == null ? void 0 : r.forEach(f), c;
57265
+ }
57266
+ function shouldHandleClickSelection(e) {
57267
+ return e.some((e2) => {
57268
+ let r = getTraceSource(e2).type;
57269
+ return r === "bar" || r === "heatmap" || r === "histogram" || isLinePoint(e2);
57201
57270
  });
57202
57271
  }
57272
+ function extractIndices(e) {
57273
+ return e.map(getPointIndex).filter((e2) => e2 !== void 0);
57274
+ }
57275
+ function getIndexedValue(e, r) {
57276
+ if (Array.isArray(e) || ArrayBuffer.isView(e)) return e[r];
57277
+ if (typeof e == "object" && e && "length" in e) {
57278
+ let c = Number(e.length ?? NaN);
57279
+ if (Number.isFinite(c) && r >= 0 && r < c) return e[r];
57280
+ }
57281
+ }
57282
+ function withInferredXY(e, r) {
57283
+ if (r.x !== void 0 && r.y !== void 0) return r;
57284
+ let c = getPointIndex(e);
57285
+ if (c === void 0) return r;
57286
+ let d = {
57287
+ ...r
57288
+ };
57289
+ d.pointIndex === void 0 && (d.pointIndex = c);
57290
+ let f = getTraceSource(e);
57291
+ if (d.x === void 0) {
57292
+ let e2 = getIndexedValue(f.x, c);
57293
+ e2 !== void 0 && (d.x = e2);
57294
+ }
57295
+ if (d.y === void 0) {
57296
+ let e2 = getIndexedValue(f.y, c);
57297
+ e2 !== void 0 && (d.y = e2);
57298
+ }
57299
+ return d;
57300
+ }
57203
57301
  function extractPoints(e) {
57204
- if (!e) return [];
57205
57302
  let r;
57206
57303
  return e.map((e2) => {
57207
- var _a3;
57208
- let c = pick_default(e2, STANDARD_POINT_KEYS), d = Array.isArray(e2.data.hovertemplate) ? e2.data.hovertemplate[0] : e2.data.hovertemplate;
57209
- return !d || ((_a3 = e2.data) == null ? void 0 : _a3.type) === "heatmap" ? c : (r = r ? r.update(d) : createParser(d), {
57304
+ let c = withInferredXY(e2, pick_default(e2, STANDARD_POINT_KEYS)), d = getTraceSource(e2), f = Array.isArray(d.hovertemplate) ? d.hovertemplate[0] : d.hovertemplate;
57305
+ return !f || d.type === "heatmap" ? c : (r = r ? r.update(f) : createParser(f), {
57210
57306
  ...c,
57211
57307
  ...r.parse(e2)
57212
57308
  });
57213
57309
  });
57214
57310
  }
57215
- function extractClickSelection(e) {
57216
- var _a3;
57217
- if (!((_a3 = e.points) == null ? void 0 : _a3.length)) return;
57218
- let r = e.points.filter(isClickSelectablePoint);
57219
- if (r.length !== 0) return {
57220
- selections: Arrays.EMPTY,
57221
- points: extractPoints(r),
57222
- indices: extractIndices(r),
57223
- range: void 0
57224
- };
57311
+ function extractSunburstPoints(e) {
57312
+ return e.map((e2) => pick_default(e2, SUNBURST_DATA_KEYS));
57225
57313
  }
57314
+ const extractTreemapPoints = extractSunburstPoints;
57226
57315
  var import_compiler_runtime$32 = require_compiler_runtime();
57227
57316
  const PERSISTED_LAYOUT_KEYS = [
57228
57317
  "dragmode",
@@ -57316,53 +57405,52 @@ ${c}
57316
57405
  }
57317
57406
  }, LazyPlot = (0, import_react.lazy)(() => import("./Plot-WhbJAbBh.js").then((e) => ({
57318
57407
  default: e.Plot
57319
- }))), SUNBURST_DATA_KEYS = [
57320
- "color",
57321
- "curveNumber",
57322
- "entry",
57323
- "hovertext",
57324
- "id",
57325
- "label",
57326
- "parent",
57327
- "percentEntry",
57328
- "percentParent",
57329
- "percentRoot",
57330
- "pointNumber",
57331
- "root",
57332
- "value"
57333
- ], TREE_MAP_DATA_KEYS = SUNBURST_DATA_KEYS;
57408
+ })));
57334
57409
  const PlotlyComponent = (0, import_react.memo)((e) => {
57335
- let r = (0, import_compiler_runtime$31.c)(37), { figure: c, value: d, setValue: f, config: h } = e, _ = useScript("https://cdn.jsdelivr.net/npm/mathjax-full@3.2.2/es5/tex-mml-svg.min.js") === "ready", v;
57410
+ let r = (0, import_compiler_runtime$31.c)(47), { figure: c, value: d, setValue: f, config: h } = e, _ = useScript("https://cdn.jsdelivr.net/npm/mathjax-full@3.2.2/es5/tex-mml-svg.min.js") === "ready", v;
57336
57411
  r[0] !== _ || r[1] !== c || r[2] !== d ? (v = {
57337
57412
  originalFigure: c,
57338
57413
  initialValue: d,
57339
57414
  isScriptLoaded: _
57340
57415
  }, r[0] = _, r[1] = c, r[2] = d, r[3] = v) : v = r[3];
57341
- let { figure: y, layout: S, handleReset: w } = usePlotlyLayout(v), E;
57342
- r[4] !== w || r[5] !== f ? (E = () => {
57343
- w(), f({});
57344
- }, r[4] = w, r[5] = f, r[6] = E) : E = r[6];
57345
- let O = useEvent_default(E), M = useDeepCompareMemoize(h), I;
57346
- r[7] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (I = {
57347
- svg: '\n <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor"\n stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw">\n <path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8" />\n <path d="M3 3v5h5" />\n </svg>'
57348
- }, r[7] = I) : I = r[7];
57349
- let z;
57350
- r[8] === O ? z = r[9] : (z = [
57351
- {
57352
- name: "reset",
57353
- title: "Reset state",
57354
- icon: I,
57355
- click: O
57356
- }
57357
- ], r[8] = O, r[9] = z);
57358
- let G;
57359
- r[10] !== M || r[11] !== z ? (G = {
57360
- displaylogo: false,
57361
- modeBarButtonsToAdd: z,
57362
- ...M
57363
- }, r[10] = M, r[11] = z, r[12] = G) : G = r[12];
57364
- let q = G, Z7;
57365
- r[13] === f ? Z7 = r[14] : (Z7 = (e2) => {
57416
+ let { figure: y, layout: S, setLayout: w, handleReset: E } = usePlotlyLayout(v), O;
57417
+ r[4] !== E || r[5] !== f ? (O = () => {
57418
+ E(), f({});
57419
+ }, r[4] = E, r[5] = f, r[6] = O) : O = r[6];
57420
+ let M = useEvent_default(O), I;
57421
+ r[7] !== w || r[8] !== f ? (I = (e2) => {
57422
+ w((r2) => ({
57423
+ ...r2,
57424
+ dragmode: e2
57425
+ })), f((r2) => ({
57426
+ ...r2,
57427
+ dragmode: e2
57428
+ }));
57429
+ }, r[7] = w, r[8] = f, r[9] = I) : I = r[9];
57430
+ let z = useEvent_default(I), G = useDeepCompareMemoize(h), q;
57431
+ r[10] === y.data ? q = r[11] : (q = hasPureLineTrace(y.data), r[10] = y.data, r[11] = q);
57432
+ let Z7 = q, Q7, $7, e9;
57433
+ if (r[12] !== G || r[13] !== M || r[14] !== z || r[15] !== Z7) {
57434
+ let e2 = [
57435
+ {
57436
+ name: "reset",
57437
+ title: "Reset state",
57438
+ icon: {
57439
+ svg: '\n <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor"\n stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw">\n <path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8" />\n <path d="M3 3v5h5" />\n </svg>'
57440
+ },
57441
+ click: M
57442
+ }
57443
+ ];
57444
+ Z7 && e2.push(...lineSelectionButtons(z)), Q7 = false, $7 = G, e9 = mergeModeBarButtonsToAdd(e2, G.modeBarButtonsToAdd), r[12] = G, r[13] = M, r[14] = z, r[15] = Z7, r[16] = Q7, r[17] = $7, r[18] = e9;
57445
+ } else Q7 = r[16], $7 = r[17], e9 = r[18];
57446
+ let t9;
57447
+ r[19] !== Q7 || r[20] !== $7 || r[21] !== e9 ? (t9 = {
57448
+ displaylogo: Q7,
57449
+ ...$7,
57450
+ modeBarButtonsToAdd: e9
57451
+ }, r[19] = Q7, r[20] = $7, r[21] = e9, r[22] = t9) : t9 = r[22];
57452
+ let n9 = t9, r9;
57453
+ r[23] === f ? r9 = r[24] : (r9 = (e2) => {
57366
57454
  if ("dragmode" in e2 && f((r2) => ({
57367
57455
  ...r2,
57368
57456
  dragmode: e2.dragmode
@@ -57376,60 +57464,65 @@ ${c}
57376
57464
  ...r2
57377
57465
  }));
57378
57466
  }
57379
- }, r[13] = f, r[14] = Z7);
57380
- let Q7;
57381
- r[15] === f ? Q7 = r[16] : (Q7 = () => {
57467
+ }, r[23] = f, r[24] = r9);
57468
+ let i9;
57469
+ r[25] === f ? i9 = r[26] : (i9 = () => {
57382
57470
  f(_temp2$5);
57383
- }, r[15] = f, r[16] = Q7);
57384
- let $7 = useEvent_default(Q7), e9;
57385
- r[17] === f ? e9 = r[18] : (e9 = (e2) => {
57471
+ }, r[25] = f, r[26] = i9);
57472
+ let a9 = useEvent_default(i9), o9;
57473
+ r[27] === f ? o9 = r[28] : (o9 = (e2) => {
57386
57474
  e2 && f((r2) => ({
57387
57475
  ...r2,
57388
- points: e2.points.map(_temp3$3)
57476
+ points: extractTreemapPoints(e2.points)
57389
57477
  }));
57390
- }, r[17] = f, r[18] = e9);
57391
- let t9 = useEvent_default(e9), n9;
57392
- r[19] === f ? n9 = r[20] : (n9 = (e2) => {
57478
+ }, r[27] = f, r[28] = o9);
57479
+ let s9 = useEvent_default(o9), c9;
57480
+ r[29] === f ? c9 = r[30] : (c9 = (e2) => {
57393
57481
  e2 && f((r2) => ({
57394
57482
  ...r2,
57395
- points: e2.points.map(_temp4$3)
57483
+ points: extractSunburstPoints(e2.points)
57396
57484
  }));
57397
- }, r[19] = f, r[20] = n9);
57398
- let r9 = useEvent_default(n9), i9;
57399
- r[21] === f ? i9 = r[22] : (i9 = (e2) => {
57400
- if (!e2) return;
57401
- let r2 = extractClickSelection(e2);
57402
- r2 && f((e3) => ({
57485
+ }, r[29] = f, r[30] = c9);
57486
+ let l9 = useEvent_default(c9), u9;
57487
+ r[31] === f ? u9 = r[32] : (u9 = (e2) => {
57488
+ if (!e2 || !shouldHandleClickSelection(e2.points)) return;
57489
+ let r2 = extractPoints(e2.points), c2 = extractIndices(e2.points);
57490
+ f((e3) => ({
57403
57491
  ...e3,
57404
- ...r2
57492
+ selections: Arrays.EMPTY,
57493
+ range: void 0,
57494
+ lasso: void 0,
57495
+ points: r2,
57496
+ indices: c2
57405
57497
  }));
57406
- }, r[21] = f, r[22] = i9);
57407
- let a9 = useEvent_default(i9), o9;
57408
- r[23] === f ? o9 = r[24] : (o9 = (e2) => {
57498
+ }, r[31] = f, r[32] = u9);
57499
+ let d9 = useEvent_default(u9), f9;
57500
+ r[33] === f ? f9 = r[34] : (f9 = (e2) => {
57409
57501
  e2 && f((r2) => ({
57410
57502
  ...r2,
57411
57503
  selections: "selections" in e2 ? e2.selections : [],
57412
57504
  points: extractPoints(e2.points),
57413
57505
  indices: extractIndices(e2.points),
57414
- range: e2.range
57506
+ range: e2.range,
57507
+ lasso: "lassoPoints" in e2 ? e2.lassoPoints : void 0
57415
57508
  }));
57416
- }, r[23] = f, r[24] = o9);
57417
- let s9 = useEvent_default(o9), c9 = y.frames ?? void 0, l9 = useEvent_default(_temp5$1), u9;
57418
- return r[25] !== y || r[26] !== S || r[27] !== q || r[28] !== t9 || r[29] !== r9 || r[30] !== a9 || r[31] !== s9 || r[32] !== c9 || r[33] !== l9 || r[34] !== Z7 || r[35] !== $7 ? (u9 = (0, import_jsx_runtime.jsx)(LazyPlot, {
57509
+ }, r[33] = f, r[34] = f9);
57510
+ let p9 = useEvent_default(f9), m9 = y.frames ?? void 0, h9 = useEvent_default(_temp3$3), g9;
57511
+ return r[35] !== y || r[36] !== S || r[37] !== n9 || r[38] !== a9 || r[39] !== s9 || r[40] !== l9 || r[41] !== d9 || r[42] !== p9 || r[43] !== m9 || r[44] !== h9 || r[45] !== r9 ? (g9 = (0, import_jsx_runtime.jsx)(LazyPlot, {
57419
57512
  ...y,
57420
57513
  layout: S,
57421
- onRelayout: Z7,
57422
- onDeselect: $7,
57423
- onTreemapClick: t9,
57424
- onSunburstClick: r9,
57425
- config: q,
57426
- onClick: a9,
57427
- onSelected: s9,
57514
+ onRelayout: r9,
57515
+ onDeselect: a9,
57516
+ onTreemapClick: s9,
57517
+ onSunburstClick: l9,
57518
+ config: n9,
57519
+ onClick: d9,
57520
+ onSelected: p9,
57428
57521
  className: "w-full",
57429
57522
  useResizeHandler: true,
57430
- frames: c9,
57431
- onError: l9
57432
- }), r[25] = y, r[26] = S, r[27] = q, r[28] = t9, r[29] = r9, r[30] = a9, r[31] = s9, r[32] = c9, r[33] = l9, r[34] = Z7, r[35] = $7, r[36] = u9) : u9 = r[36], u9;
57523
+ frames: m9,
57524
+ onError: h9
57525
+ }), r[35] = y, r[36] = S, r[37] = n9, r[38] = a9, r[39] = s9, r[40] = l9, r[41] = d9, r[42] = p9, r[43] = m9, r[44] = h9, r[45] = r9, r[46] = g9) : g9 = r[46], g9;
57433
57526
  });
57434
57527
  PlotlyComponent.displayName = "PlotlyComponent";
57435
57528
  function _temp$7(e) {
@@ -57441,16 +57534,11 @@ ${c}
57441
57534
  selections: Arrays.EMPTY,
57442
57535
  points: Arrays.EMPTY,
57443
57536
  indices: Arrays.EMPTY,
57444
- range: void 0
57537
+ range: void 0,
57538
+ lasso: void 0
57445
57539
  };
57446
57540
  }
57447
57541
  function _temp3$3(e) {
57448
- return Objects.pick(e, TREE_MAP_DATA_KEYS);
57449
- }
57450
- function _temp4$3(e) {
57451
- return Objects.pick(e, SUNBURST_DATA_KEYS);
57452
- }
57453
- function _temp5$1(e) {
57454
57542
  Logger.error("PlotlyPlugin: ", e);
57455
57543
  }
57456
57544
  var import_compiler_runtime$30 = require_compiler_runtime(), RadioPlugin = class {
@@ -65419,7 +65507,7 @@ ${c}
65419
65507
  return Logger.warn("Failed to get version from mount config"), null;
65420
65508
  }
65421
65509
  }
65422
- const marimoVersionAtom = atom(getVersionFromMountConfig() || "0.22.1-dev34"), showCodeInRunModeAtom = atom(true);
65510
+ const marimoVersionAtom = atom(getVersionFromMountConfig() || "0.22.1-dev37"), showCodeInRunModeAtom = atom(true);
65423
65511
  atom(null);
65424
65512
  var VIRTUAL_FILE_REGEX = /\/@file\/([^\s"&'/]+)\.([\dA-Za-z]+)/g, VirtualFileTracker = class e {
65425
65513
  constructor() {