@marimo-team/islands 0.23.14-dev5 → 0.23.14-dev50

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 (128) hide show
  1. package/dist/{ConnectedDataExplorerComponent-Du3_nUzI.js → ConnectedDataExplorerComponent-DXBx_nQg.js} +4 -4
  2. package/dist/{chat-ui-BZxLHwyD.js → chat-ui-DXPRhRO2.js} +3248 -3044
  3. package/dist/{click-outside-container-BDd67_1U.js → click-outside-container-BLPjMamz.js} +141 -113
  4. package/dist/{code-visibility-rxZi4Phe.js → code-visibility-BFDT-GEQ.js} +1153 -946
  5. package/dist/data-grid-overlay-editor-C6lxUJp-.js +136 -0
  6. package/dist/{dist-D_bzzWBm.js → dist-Bf9f8MuT.js} +3 -3
  7. package/dist/{formats-d6MhLuQ9.js → formats-WsOgyW_K.js} +1 -1
  8. package/dist/{glide-data-editor-DkzAInWG.js → glide-data-editor-7wxMGXjG.js} +2084 -1889
  9. package/dist/{html-to-image-CGp_08St.js → html-to-image-DOqQBSQc.js} +2367 -2301
  10. package/dist/{input-CbEz_aj_.js → input-BSdZp5Ng.js} +1 -1
  11. package/dist/main.js +2707 -1186
  12. package/dist/{mermaid-CJW9vIyO.js → mermaid-D-HYBMEV.js} +2 -2
  13. package/dist/{number-overlay-editor-D-a0qCT8.js → number-overlay-editor-BLJXvX9c.js} +1 -1
  14. package/dist/{process-output-R6JsYrv3.js → process-output-kGk2Jc2x.js} +1 -1
  15. package/dist/{reveal-component-sEb3Wd1x.js → reveal-component-uSCMaaUE.js} +600 -596
  16. package/dist/{spec-Bv-XlYiv.js → spec-CnTgI25l.js} +1 -1
  17. package/dist/style.css +1 -1
  18. package/dist/{toDate-D-l5s8nn.js → toDate-D1Z7ZXWh.js} +1 -1
  19. package/dist/{useAsyncData-1Dhzjfwf.js → useAsyncData-BMc8itk2.js} +1 -1
  20. package/dist/{useDeepCompareMemoize-CDWT3BDz.js → useDeepCompareMemoize-ZwmDBRDY.js} +1 -1
  21. package/dist/{useLifecycle-AHlswLw-.js → useLifecycle-CxffarYV.js} +1 -1
  22. package/dist/{useTheme-BrYvK-_A.js → useTheme-yGsGEk82.js} +26 -24
  23. package/dist/{vega-component-Pk6lyc_a.js → vega-component-BFJTyykA.js} +5 -5
  24. package/package.json +3 -3
  25. package/src/__mocks__/requests.ts +1 -0
  26. package/src/components/app-config/user-config-form.tsx +26 -0
  27. package/src/components/chat/acp/agent-panel.tsx +35 -1
  28. package/src/components/chat/chat-panel.tsx +68 -29
  29. package/src/components/data-table/__tests__/column-explorer.test.tsx +25 -0
  30. package/src/components/data-table/__tests__/column-visibility-dropdown.test.tsx +60 -3
  31. package/src/components/data-table/charts/__tests__/altair-generator.test.ts +24 -0
  32. package/src/components/data-table/charts/__tests__/merge-index-fields.test.ts +33 -0
  33. package/src/components/data-table/charts/chart-spec/altair-generator.ts +4 -1
  34. package/src/components/data-table/charts/charts.tsx +23 -1
  35. package/src/components/data-table/column-explorer-panel/column-explorer.tsx +33 -12
  36. package/src/components/data-table/column-visibility-dropdown.tsx +15 -0
  37. package/src/components/debugger/debugger-code.tsx +7 -2
  38. package/src/components/editor/actions/useNotebookActions.tsx +2 -2
  39. package/src/components/editor/cell/cell-context-menu.tsx +2 -2
  40. package/src/components/editor/chrome/panels/snippets-panel.tsx +3 -3
  41. package/src/components/editor/chrome/wrapper/__tests__/useOpenAiAssistant.test.ts +36 -0
  42. package/src/components/editor/chrome/wrapper/footer-items/pyodide-status.tsx +6 -36
  43. package/src/components/editor/chrome/wrapper/useAiPanel.ts +3 -1
  44. package/src/components/editor/chrome/wrapper/useOpenAiAssistant.ts +88 -0
  45. package/src/components/editor/code/__tests__/readonly-python-code.test.tsx +79 -0
  46. package/src/components/editor/code/readonly-python-code.tsx +60 -33
  47. package/src/components/editor/errors/__tests__/auto-fix.test.ts +23 -0
  48. package/src/components/editor/errors/auto-fix.tsx +88 -34
  49. package/src/components/editor/errors/fix-mode.ts +1 -1
  50. package/src/components/editor/notebook-cell.tsx +7 -0
  51. package/src/components/editor/output/MarimoTracebackOutput.tsx +28 -2
  52. package/src/components/editor/output/__tests__/traceback.test.tsx +14 -6
  53. package/src/components/editor/renderers/grid-layout/grid-layout.tsx +7 -2
  54. package/src/components/editor/renderers/vertical-layout/vertical-layout.tsx +7 -3
  55. package/src/components/lifecycle/ProgressiveBoundary.tsx +42 -0
  56. package/src/components/lifecycle/RuntimeStatusBadge.tsx +59 -0
  57. package/src/components/lifecycle/__tests__/ProgressiveBoundary.test.tsx +147 -0
  58. package/src/components/lifecycle/__tests__/RuntimeStatusBadge.test.tsx +72 -0
  59. package/src/components/slides/__tests__/slide.test.tsx +33 -0
  60. package/src/components/slides/minimap.tsx +7 -1
  61. package/src/components/slides/reveal-component.tsx +3 -0
  62. package/src/components/slides/slide-cell-view.tsx +10 -6
  63. package/src/components/slides/slide.tsx +16 -13
  64. package/src/core/ai/config.ts +2 -2
  65. package/src/core/ai/context/__tests__/registry.test.ts +133 -3
  66. package/src/core/ai/context/providers/__tests__/datasource.test.ts +3 -1
  67. package/src/core/ai/context/providers/__tests__/error.test.ts +200 -15
  68. package/src/core/ai/context/providers/datasource.ts +27 -2
  69. package/src/core/ai/context/providers/error.ts +226 -36
  70. package/src/core/ai/context/registry.ts +77 -43
  71. package/src/core/ai/state.ts +11 -0
  72. package/src/core/cells/__tests__/cell.test.ts +39 -0
  73. package/src/core/cells/__tests__/readonly-code-display.test.ts +46 -0
  74. package/src/core/cells/cell.ts +5 -3
  75. package/src/core/cells/readonly-code-display.ts +35 -0
  76. package/src/core/codemirror/__tests__/setup.test.ts +33 -1
  77. package/src/core/codemirror/ai/resources.ts +15 -10
  78. package/src/core/codemirror/cells/__tests__/debugger-decorations.test.ts +185 -0
  79. package/src/core/codemirror/cells/__tests__/debugger-state.test.ts +139 -0
  80. package/src/core/codemirror/cells/debugger-decorations.ts +188 -0
  81. package/src/core/codemirror/cells/debugger-state.ts +100 -0
  82. package/src/core/codemirror/cells/extensions.ts +23 -4
  83. package/src/core/codemirror/go-to-definition/__tests__/utils.test.ts +75 -3
  84. package/src/core/codemirror/go-to-definition/extension.ts +3 -3
  85. package/src/core/codemirror/go-to-definition/underline.ts +5 -14
  86. package/src/core/codemirror/go-to-definition/utils.ts +49 -1
  87. package/src/core/codemirror/utils.ts +15 -0
  88. package/src/core/config/feature-flag.tsx +2 -0
  89. package/src/core/edit-app.tsx +8 -5
  90. package/src/core/errors/errors.ts +2 -1
  91. package/src/core/islands/bootstrap.ts +1 -0
  92. package/src/core/islands/bridge.ts +1 -0
  93. package/src/core/lifecycle/__tests__/render-policy.test.ts +247 -0
  94. package/src/core/lifecycle/render-policy.ts +125 -0
  95. package/src/core/mime.ts +11 -4
  96. package/src/core/network/__tests__/api.test.ts +17 -0
  97. package/src/core/network/__tests__/requests-toasting.test.tsx +46 -0
  98. package/src/core/network/api.ts +17 -6
  99. package/src/core/network/requests-lazy.ts +1 -0
  100. package/src/core/network/requests-network.ts +8 -0
  101. package/src/core/network/requests-static.ts +1 -0
  102. package/src/core/network/requests-toasting.tsx +10 -1
  103. package/src/core/network/types.ts +2 -0
  104. package/src/core/run-app.tsx +27 -23
  105. package/src/core/runtime/__tests__/adapter.test.ts +160 -0
  106. package/src/core/runtime/adapter.ts +182 -0
  107. package/src/core/wasm/PyodideLoader.tsx +20 -62
  108. package/src/core/wasm/bridge.ts +13 -4
  109. package/src/core/wasm/state.ts +8 -19
  110. package/src/core/websocket/useMarimoKernelConnection.tsx +17 -0
  111. package/src/css/app/codemirror.css +14 -0
  112. package/src/hooks/__tests__/useDelayElapsed.test.tsx +55 -0
  113. package/src/hooks/useDelayElapsed.ts +27 -0
  114. package/src/plugins/core/RenderHTML.tsx +35 -1
  115. package/src/plugins/core/__test__/RenderHTML.test.ts +44 -0
  116. package/src/plugins/impl/DataTablePlugin.tsx +1 -0
  117. package/src/plugins/impl/anywidget/AnyWidgetPlugin.tsx +53 -2
  118. package/src/plugins/impl/anywidget/__tests__/AnyWidgetPlugin.test.tsx +52 -2
  119. package/src/plugins/impl/data-editor/__tests__/glide-data-editor.test.tsx +187 -0
  120. package/src/plugins/impl/data-editor/glide-data-editor.tsx +6 -0
  121. package/src/plugins/impl/data-editor/glide-portal.tsx +73 -0
  122. package/src/utils/errors.ts +15 -0
  123. package/dist/data-grid-overlay-editor-mfEJ5475.js +0 -128
  124. package/src/components/editor/chrome/panels/__tests__/snippet-display.test.ts +0 -22
  125. package/src/components/editor/chrome/panels/snippet-display.ts +0 -27
  126. package/src/core/ai/context/providers/__tests__/__snapshots__/error.test.ts.snap +0 -3
  127. package/src/core/wasm/__tests__/PyodideLoader.test.ts +0 -72
  128. package/src/core/wasm/__tests__/state.test.ts +0 -124
@@ -4,40 +4,6 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
4
4
  var _a;
5
5
  import { s as __toESM, t as __commonJSMin } from "./chunk-BNovOVIE.js";
6
6
  import { t as require_react } from "./react-DA-nE2FX.js";
7
- function panic(f = "This should not happen") {
8
- throw Error(f);
9
- }
10
- function assert(f, V = "Assertion failed") {
11
- if (!f) return panic(V);
12
- }
13
- function assertNever(f, V) {
14
- return panic(V ?? "Hell froze over");
15
- }
16
- function maybe(f, V) {
17
- try {
18
- return f();
19
- } catch {
20
- return V;
21
- }
22
- }
23
- var has$2 = Object.prototype.hasOwnProperty;
24
- function deepEqual(f, V) {
25
- let H, U;
26
- if (f === V) return true;
27
- if (f && V && (H = f.constructor) === V.constructor) {
28
- if (H === Date) return f.getTime() === V.getTime();
29
- if (H === RegExp) return f.toString() === V.toString();
30
- if (H === Array) {
31
- if ((U = f.length) === V.length) for (; U-- && deepEqual(f[U], V[U]); ) ;
32
- return U === -1;
33
- }
34
- if (!H || typeof f == "object") {
35
- for (H in U = 0, f) if (has$2.call(f, H) && ++U && !has$2.call(V, H) || !(H in V) || !deepEqual(f[H], V[H])) return false;
36
- return Object.keys(V).length === U;
37
- }
38
- }
39
- return f !== f && V !== V;
40
- }
41
7
  var require__baseHas = /* @__PURE__ */ __commonJSMin(((f, V) => {
42
8
  var H = Object.prototype.hasOwnProperty;
43
9
  function U(f2, V2) {
@@ -55,17 +21,17 @@ var require__baseHas = /* @__PURE__ */ __commonJSMin(((f, V) => {
55
21
  V.exports = require__root().Symbol;
56
22
  })), require__getRawTag = /* @__PURE__ */ __commonJSMin(((f, V) => {
57
23
  var H = require__Symbol(), U = Object.prototype, W = U.hasOwnProperty, G = U.toString, K = H ? H.toStringTag : void 0;
58
- function q(f2) {
24
+ function J(f2) {
59
25
  var V2 = W.call(f2, K), H2 = f2[K];
60
26
  try {
61
27
  f2[K] = void 0;
62
28
  var U2 = true;
63
29
  } catch {
64
30
  }
65
- var q2 = G.call(f2);
66
- return U2 && (V2 ? f2[K] = H2 : delete f2[K]), q2;
31
+ var q = G.call(f2);
32
+ return U2 && (V2 ? f2[K] = H2 : delete f2[K]), q;
67
33
  }
68
- V.exports = q;
34
+ V.exports = J;
69
35
  })), require__objectToString = /* @__PURE__ */ __commonJSMin(((f, V) => {
70
36
  var H = Object.prototype.toString;
71
37
  function U(f2) {
@@ -73,11 +39,11 @@ var require__baseHas = /* @__PURE__ */ __commonJSMin(((f, V) => {
73
39
  }
74
40
  V.exports = U;
75
41
  })), require__baseGetTag = /* @__PURE__ */ __commonJSMin(((f, V) => {
76
- var H = require__Symbol(), U = require__getRawTag(), W = require__objectToString(), G = "[object Null]", K = "[object Undefined]", q = H ? H.toStringTag : void 0;
77
- function J(f2) {
78
- return f2 == null ? f2 === void 0 ? K : G : q && q in Object(f2) ? U(f2) : W(f2);
42
+ var H = require__Symbol(), U = require__getRawTag(), W = require__objectToString(), G = "[object Null]", K = "[object Undefined]", X = H ? H.toStringTag : void 0;
43
+ function Z(f2) {
44
+ return f2 == null ? f2 === void 0 ? K : G : X && X in Object(f2) ? U(f2) : W(f2);
79
45
  }
80
- V.exports = J;
46
+ V.exports = Z;
81
47
  })), require_isObjectLike = /* @__PURE__ */ __commonJSMin(((f, V) => {
82
48
  function H(f2) {
83
49
  return typeof f2 == "object" && !!f2;
@@ -90,13 +56,13 @@ var require__baseHas = /* @__PURE__ */ __commonJSMin(((f, V) => {
90
56
  }
91
57
  V.exports = G;
92
58
  })), require__isKey = /* @__PURE__ */ __commonJSMin(((f, V) => {
93
- var H = require_isArray(), U = require_isSymbol(), W = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, G = /^\w*$/;
94
- function K(f2, V2) {
59
+ var H = require_isArray(), U = require_isSymbol(), G = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, K = /^\w*$/;
60
+ function q(f2, V2) {
95
61
  if (H(f2)) return false;
96
- var K2 = typeof f2;
97
- return K2 == "number" || K2 == "symbol" || K2 == "boolean" || f2 == null || U(f2) ? true : G.test(f2) || !W.test(f2) || V2 != null && f2 in Object(V2);
62
+ var W = typeof f2;
63
+ return W == "number" || W == "symbol" || W == "boolean" || f2 == null || U(f2) ? true : K.test(f2) || !G.test(f2) || V2 != null && f2 in Object(V2);
98
64
  }
99
- V.exports = K;
65
+ V.exports = q;
100
66
  })), require_isObject = /* @__PURE__ */ __commonJSMin(((f, V) => {
101
67
  function H(f2) {
102
68
  var V2 = typeof f2;
@@ -357,15 +323,15 @@ var require__baseHas = /* @__PURE__ */ __commonJSMin(((f, V) => {
357
323
  }
358
324
  V.exports = H;
359
325
  })), require__baseToString = /* @__PURE__ */ __commonJSMin(((f, V) => {
360
- var H = require__Symbol(), U = require__arrayMap(), W = require_isArray(), G = require_isSymbol(), K = Infinity, q = H ? H.prototype : void 0, J = q ? q.toString : void 0;
361
- function Y(f2) {
326
+ var H = require__Symbol(), U = require__arrayMap(), G = require_isArray(), K = require_isSymbol(), J = Infinity, Y = H ? H.prototype : void 0, X = Y ? Y.toString : void 0;
327
+ function Z(f2) {
362
328
  if (typeof f2 == "string") return f2;
363
- if (W(f2)) return U(f2, Y) + "";
364
- if (G(f2)) return J ? J.call(f2) : "";
329
+ if (G(f2)) return U(f2, Z) + "";
330
+ if (K(f2)) return X ? X.call(f2) : "";
365
331
  var V2 = f2 + "";
366
- return V2 == "0" && 1 / f2 == -K ? "-0" : V2;
332
+ return V2 == "0" && 1 / f2 == -J ? "-0" : V2;
367
333
  }
368
- V.exports = Y;
334
+ V.exports = Z;
369
335
  })), require_toString = /* @__PURE__ */ __commonJSMin(((f, V) => {
370
336
  var H = require__baseToString();
371
337
  function U(f2) {
@@ -373,11 +339,11 @@ var require__baseHas = /* @__PURE__ */ __commonJSMin(((f, V) => {
373
339
  }
374
340
  V.exports = U;
375
341
  })), require__castPath = /* @__PURE__ */ __commonJSMin(((f, V) => {
376
- var H = require_isArray(), U = require__isKey(), W = require__stringToPath(), G = require_toString();
377
- function K(f2, V2) {
378
- return H(f2) ? f2 : U(f2, V2) ? [f2] : W(G(f2));
342
+ var H = require_isArray(), U = require__isKey(), G = require__stringToPath(), K = require_toString();
343
+ function q(f2, V2) {
344
+ return H(f2) ? f2 : U(f2, V2) ? [f2] : G(K(f2));
379
345
  }
380
- V.exports = K;
346
+ V.exports = q;
381
347
  })), require__baseIsArguments = /* @__PURE__ */ __commonJSMin(((f, V) => {
382
348
  var H = require__baseGetTag(), U = require_isObjectLike(), W = "[object Arguments]";
383
349
  function G(f2) {
@@ -413,24 +379,59 @@ var require__baseHas = /* @__PURE__ */ __commonJSMin(((f, V) => {
413
379
  }
414
380
  V.exports = W;
415
381
  })), require__hasPath = /* @__PURE__ */ __commonJSMin(((f, V) => {
416
- var H = require__castPath(), U = require_isArguments(), W = require_isArray(), G = require__isIndex(), K = require_isLength(), q = require__toKey();
417
- function J(f2, V2, J2) {
382
+ var H = require__castPath(), U = require_isArguments(), G = require_isArray(), K = require__isIndex(), q = require_isLength(), J = require__toKey();
383
+ function Y(f2, V2, W) {
418
384
  V2 = H(V2, f2);
419
- for (var Y = -1, X = V2.length, Z = false; ++Y < X; ) {
420
- var Q = q(V2[Y]);
421
- if (!(Z = f2 != null && J2(f2, Q))) break;
385
+ for (var Y2 = -1, X = V2.length, Z = false; ++Y2 < X; ) {
386
+ var Q = J(V2[Y2]);
387
+ if (!(Z = f2 != null && W(f2, Q))) break;
422
388
  f2 = f2[Q];
423
389
  }
424
- return Z || ++Y != X ? Z : (X = f2 == null ? 0 : f2.length, !!X && K(X) && G(Q, X) && (W(f2) || U(f2)));
390
+ return Z || ++Y2 != X ? Z : (X = f2 == null ? 0 : f2.length, !!X && q(X) && K(Q, X) && (G(f2) || U(f2)));
425
391
  }
426
- V.exports = J;
427
- })), import_has = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((f, V) => {
428
- var H = require__baseHas(), U = require__hasPath();
429
- function W(f2, V2) {
430
- return f2 != null && U(f2, V2, H);
392
+ V.exports = Y;
393
+ })), require_has = /* @__PURE__ */ __commonJSMin(((f, V) => {
394
+ var H = require__baseHas(), W = require__hasPath();
395
+ function G(f2, V2) {
396
+ return f2 != null && W(f2, V2, H);
431
397
  }
432
- V.exports = W;
433
- })))(), 1);
398
+ V.exports = G;
399
+ }));
400
+ function panic(f = "This should not happen") {
401
+ throw Error(f);
402
+ }
403
+ function assert(f, V = "Assertion failed") {
404
+ if (!f) return panic(V);
405
+ }
406
+ function assertNever(f, V) {
407
+ return panic(V ?? "Hell froze over");
408
+ }
409
+ function maybe(f, V) {
410
+ try {
411
+ return f();
412
+ } catch {
413
+ return V;
414
+ }
415
+ }
416
+ var has$1 = Object.prototype.hasOwnProperty;
417
+ function deepEqual(f, V) {
418
+ let H, U;
419
+ if (f === V) return true;
420
+ if (f && V && (H = f.constructor) === V.constructor) {
421
+ if (H === Date) return f.getTime() === V.getTime();
422
+ if (H === RegExp) return f.toString() === V.toString();
423
+ if (H === Array) {
424
+ if ((U = f.length) === V.length) for (; U-- && deepEqual(f[U], V[U]); ) ;
425
+ return U === -1;
426
+ }
427
+ if (!H || typeof f == "object") {
428
+ for (H in U = 0, f) if (has$1.call(f, H) && ++U && !has$1.call(V, H) || !(H in V) || !deepEqual(f[H], V[H])) return false;
429
+ return Object.keys(V).length === U;
430
+ }
431
+ }
432
+ return f !== f && V !== V;
433
+ }
434
+ var import_has = /* @__PURE__ */ __toESM(require_has(), 1);
434
435
  const BooleanEmpty = null, BooleanIndeterminate = void 0;
435
436
  var GridCellKind;
436
437
  (function(f) {
@@ -458,8 +459,17 @@ function isInnerOnlyCell(f) {
458
459
  }
459
460
  function isReadWriteCell(f) {
460
461
  if (!isEditableGridCell(f) || f.kind === GridCellKind.Image) return false;
461
- if (f.kind === GridCellKind.Text || f.kind === GridCellKind.Number || f.kind === GridCellKind.Markdown || f.kind === GridCellKind.Uri || f.kind === GridCellKind.Custom || f.kind === GridCellKind.Boolean) return f.readonly !== true;
462
- assertNever(f, "A cell was passed with an invalid kind");
462
+ switch (f.kind) {
463
+ case GridCellKind.Text:
464
+ case GridCellKind.Number:
465
+ case GridCellKind.Markdown:
466
+ case GridCellKind.Uri:
467
+ case GridCellKind.Custom:
468
+ case GridCellKind.Boolean:
469
+ return f.readonly !== true;
470
+ default:
471
+ assertNever(f, "A cell was passed with an invalid kind");
472
+ }
463
473
  }
464
474
  function isObjectEditorCallbackResult(f) {
465
475
  return (0, import_has.default)(f, "editor");
@@ -471,6 +481,13 @@ var InnerGridCellKind;
471
481
  (function(f) {
472
482
  f.NewRow = "new-row", f.Marker = "marker";
473
483
  })(InnerGridCellKind || (InnerGridCellKind = {}));
484
+ const DEFAULT_FILL_HANDLE = {
485
+ shape: "square",
486
+ size: 4,
487
+ offsetX: -2,
488
+ offsetY: -2,
489
+ outline: 0
490
+ };
474
491
  function mergeRanges(f) {
475
492
  if (f.length === 0) return [];
476
493
  let V = [...f], H = [];
@@ -549,7 +566,7 @@ var emptyCompactSelection, CompactSelection = (_a = class {
549
566
  *[Symbol.iterator]() {
550
567
  for (let [f, V] of this.items) for (let H = f; H < V; H++) yield H;
551
568
  }
552
- }, __publicField(_a, "empty", () => emptyCompactSelection ?? (emptyCompactSelection = new _a([]))), __publicField(_a, "fromSingleSelection", (V) => _a.empty().add(V)), _a), cache = {}, div = null;
569
+ }, __publicField(_a, "create", (V) => new _a(mergeRanges(V))), __publicField(_a, "empty", () => emptyCompactSelection ?? (emptyCompactSelection = new _a([]))), __publicField(_a, "fromSingleSelection", (V) => _a.empty().add(V)), __publicField(_a, "fromArray", (V) => V.length === 0 ? _a.empty() : new _a(mergeRanges(V.map((f) => [f, f + 1])))), _a), cache = {}, div = null;
553
570
  function createDiv() {
554
571
  let f = document.createElement("div");
555
572
  return f.style.opacity = "0", f.style.pointerEvents = "none", f.style.position = "fixed", document.body.append(f), f;
@@ -602,6 +619,8 @@ function makeCSSStyle(f) {
602
619
  "--gdg-fg-icon-header": f.fgIconHeader,
603
620
  "--gdg-text-header": f.textHeader,
604
621
  "--gdg-text-group-header": f.textGroupHeader ?? f.textHeader,
622
+ "--gdg-bg-group-header": f.bgGroupHeader ?? f.bgHeader,
623
+ "--gdg-bg-group-header-hovered": f.bgGroupHeaderHovered ?? f.bgHeaderHovered,
605
624
  "--gdg-text-header-selected": f.textHeaderSelected,
606
625
  "--gdg-bg-cell": f.bgCell,
607
626
  "--gdg-bg-cell-medium": f.bgCellMedium,
@@ -610,6 +629,9 @@ function makeCSSStyle(f) {
610
629
  "--gdg-bg-header-hovered": f.bgHeaderHovered,
611
630
  "--gdg-bg-bubble": f.bgBubble,
612
631
  "--gdg-bg-bubble-selected": f.bgBubbleSelected,
632
+ "--gdg-bubble-height": `${f.bubbleHeight}px`,
633
+ "--gdg-bubble-padding": `${f.bubblePadding}px`,
634
+ "--gdg-bubble-margin": `${f.bubbleMargin}px`,
613
635
  "--gdg-bg-search-result": f.bgSearchResult,
614
636
  "--gdg-border-color": f.borderColor,
615
637
  "--gdg-horizontal-border-color": f.horizontalBorderColor ?? f.borderColor,
@@ -622,6 +644,7 @@ function makeCSSStyle(f) {
622
644
  "--gdg-marker-font-style": f.markerFontStyle,
623
645
  "--gdg-font-family": f.fontFamily,
624
646
  "--gdg-editor-font-size": f.editorFontSize,
647
+ "--gdg-checkbox-max-size": `${f.checkboxMaxSize}px`,
625
648
  ...f.resizeIndicatorColor === void 0 ? {} : { "--gdg-resize-indicator-color": f.resizeIndicatorColor },
626
649
  ...f.headerBottomBorderColor === void 0 ? {} : { "--gdg-header-bottom-border-color": f.headerBottomBorderColor },
627
650
  ...f.roundingRadius === void 0 ? {} : { "--gdg-rounding-radius": `${f.roundingRadius}px` }
@@ -647,6 +670,9 @@ var dataEditorBaseTheme = {
647
670
  bgHeaderHovered: "#EFEFF1",
648
671
  bgBubble: "#EDEDF3",
649
672
  bgBubbleSelected: "#FFFFFF",
673
+ bubbleHeight: 20,
674
+ bubblePadding: 6,
675
+ bubbleMargin: 4,
650
676
  bgSearchResult: "#fff9e3",
651
677
  borderColor: "rgba(115, 116, 131, 0.16)",
652
678
  drilldownBorder: "rgba(0, 0, 0, 0)",
@@ -659,7 +685,8 @@ var dataEditorBaseTheme = {
659
685
  markerFontStyle: "9px",
660
686
  fontFamily: "Inter, Roboto, -apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Ubuntu, noto, arial, sans-serif",
661
687
  editorFontSize: "13px",
662
- lineHeight: 1.4
688
+ lineHeight: 1.4,
689
+ checkboxMaxSize: 18
663
690
  };
664
691
  function getDataEditorTheme() {
665
692
  return dataEditorBaseTheme;
@@ -687,11 +714,11 @@ var ClickOutsideContainer = class extends import_react.PureComponent {
687
714
  }
688
715
  componentDidMount() {
689
716
  let f = this.props.customEventTarget ?? document;
690
- f.addEventListener("touchend", this.clickOutside, true), f.addEventListener("mousedown", this.clickOutside, true), f.addEventListener("contextmenu", this.clickOutside, true);
717
+ f.addEventListener("pointerdown", this.clickOutside, true), f.addEventListener("contextmenu", this.clickOutside, true);
691
718
  }
692
719
  componentWillUnmount() {
693
720
  let f = this.props.customEventTarget ?? document;
694
- f.removeEventListener("touchend", this.clickOutside, true), f.removeEventListener("mousedown", this.clickOutside, true), f.removeEventListener("contextmenu", this.clickOutside, true);
721
+ f.removeEventListener("pointerdown", this.clickOutside, true), f.removeEventListener("contextmenu", this.clickOutside, true);
695
722
  }
696
723
  render() {
697
724
  let { onClickOutside: f, isOutsideClick: V, customEventTarget: H, ...U } = this.props;
@@ -702,52 +729,53 @@ var ClickOutsideContainer = class extends import_react.PureComponent {
702
729
  }
703
730
  };
704
731
  export {
705
- require__Map as A,
706
- require__baseGetTag as B,
707
- require__hasPath as C,
708
- require_isArguments as D,
709
- require__isIndex as E,
710
- require_isFunction as F,
711
- assert as G,
712
- require__root as H,
713
- require_isObject as I,
714
- maybe as J,
715
- assertNever as K,
716
- require__isKey as L,
717
- require_eq as M,
718
- require__getNative as N,
719
- require__castPath as O,
720
- require__toSource as P,
721
- require_isSymbol as R,
722
- resolveCellsThunk as S,
723
- require_isLength as T,
724
- require__freeGlobal as U,
725
- require__Symbol as V,
726
- require_isArray as W,
727
- isEditableGridCell as _,
732
+ require_isLength as A,
733
+ require_isFunction as B,
734
+ resolveCellsThunk as C,
735
+ maybe as D,
736
+ deepEqual as E,
737
+ require__Map as F,
738
+ require__baseGetTag as G,
739
+ require__isKey as H,
740
+ require__ListCache as I,
741
+ require__freeGlobal as J,
742
+ require__Symbol as K,
743
+ require_eq as L,
744
+ require_isArguments as M,
745
+ require__castPath as N,
746
+ require__hasPath as O,
747
+ require__MapCache as P,
748
+ require__getNative as R,
749
+ isSizedGridColumn as S,
750
+ assertNever as T,
751
+ require_isSymbol as U,
752
+ require_isObject as V,
753
+ require_isObjectLike as W,
754
+ require_isArray as Y,
755
+ booleanCellIsEditable as _,
728
756
  mergeAndRealizeTheme as a,
729
- isReadWriteCell as b,
757
+ isObjectEditorCallbackResult as b,
730
758
  withAlpha as c,
731
759
  CompactSelection as d,
732
- GridCellKind as f,
733
- booleanCellIsEditable as g,
734
- InnerGridCellKind as h,
760
+ DEFAULT_FILL_HANDLE as f,
761
+ InnerGridCellKind as g,
762
+ GridColumnMenuIcon as h,
735
763
  makeCSSStyle as i,
736
- require__ListCache as j,
737
- require__MapCache as k,
764
+ require__isIndex as j,
765
+ require__toKey as k,
738
766
  BooleanEmpty as l,
739
- GridColumnMenuIcon as m,
767
+ GridColumnIcon as m,
740
768
  ThemeContext as n,
741
769
  blend as o,
742
- GridColumnIcon as p,
743
- deepEqual as q,
770
+ GridCellKind as p,
771
+ require__root as q,
744
772
  getDataEditorTheme as r,
745
773
  blendCache as s,
746
774
  ClickOutsideContainer as t,
747
775
  BooleanIndeterminate as u,
748
- isInnerOnlyCell as v,
749
- require__toKey as w,
750
- isSizedGridColumn as x,
751
- isObjectEditorCallbackResult as y,
752
- require_isObjectLike as z
776
+ isEditableGridCell as v,
777
+ assert as w,
778
+ isReadWriteCell as x,
779
+ isInnerOnlyCell as y,
780
+ require__toSource as z
753
781
  };