@marimo-team/islands 0.23.1-dev20 → 0.23.1-dev22

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 (64) hide show
  1. package/dist/{ConnectedDataExplorerComponent-Eq8bCe49.js → ConnectedDataExplorerComponent-P92i6wYx.js} +148 -148
  2. package/dist/{ImageComparisonComponent-DY3J_vIU.js → ImageComparisonComponent-HF4AY8_n.js} +2 -2
  3. package/dist/{Plot-BxlSHo0G.js → Plot-CK0oVgQL.js} +2 -2
  4. package/dist/{any-language-editor-BF8ew8wu.js → any-language-editor-BCvLfvzI.js} +7 -7
  5. package/dist/{button-Cn59RsBF.js → button-D1C3g5GI.js} +72 -71
  6. package/dist/{capabilities-Bml77Di-.js → capabilities-BwpUgo4S.js} +1 -1
  7. package/dist/{chat-ui-BdrC6z8t.js → chat-ui-CNHw9Osh.js} +2829 -2829
  8. package/dist/{check-C51PA02v.js → check-BgrdTLuv.js} +1 -1
  9. package/dist/{chunk-5FQGJX7Z-C428iZBW.js → chunk-5FQGJX7Z-VIref9gx.js} +4 -4
  10. package/dist/{click-outside-container-vCXhHl-R.js → click-outside-container-D3t6KDni.js} +1 -1
  11. package/dist/{code-block-37QAKDTI-D9EnJeBI.js → code-block-37QAKDTI-FQEoMOU1.js} +2 -2
  12. package/dist/{compiler-runtime-B_OLMU9S.js → compiler-runtime-CEbnTgxf.js} +1 -1
  13. package/dist/{copy-DzOz_Au7.js → copy-Bp6CK_Fg.js} +9 -9
  14. package/dist/{data-grid-overlay-editor-lKF301ME.js → data-grid-overlay-editor-C_sKPpLu.js} +4 -4
  15. package/dist/{dist-CjLQ79mo.js → dist-CTtLBPLZ.js} +11 -11
  16. package/dist/{dist-BoNJsA65.js → dist-DUFd1bhm.js} +1 -1
  17. package/dist/{error-banner-BQcJXy6k.js → error-banner-B_ioHva3.js} +121 -121
  18. package/dist/{esm-BmYNigxi.js → esm-CDHI9cuO.js} +15 -15
  19. package/dist/{glide-data-editor-D2X4D_xi.js → glide-data-editor-BFqEJGJW.js} +948 -948
  20. package/dist/{input-BRN2Mjzx.js → input-CSVEkmaZ.js} +288 -288
  21. package/dist/{label-J1N4mVcg.js → label-BebYlsDV.js} +257 -257
  22. package/dist/{loader-JmfPBSx5.js → loader-ZFbGsMN1.js} +15 -15
  23. package/dist/main.js +7092 -6951
  24. package/dist/mermaid-4DMBBIKO-BjtqcdX4.js +6 -0
  25. package/dist/{mermaid-UMKVHs_g.js → mermaid-BbhZNQeB.js} +18 -18
  26. package/dist/{number-overlay-editor-DxLoVuuE.js → number-overlay-editor-B02-t7Ar.js} +2 -2
  27. package/dist/{process-output-D3Q6xBZJ.js → process-output-Bekznt_B.js} +863 -863
  28. package/dist/{react-dom-BSUuJjCR.js → react-dom-D5FDLRUB.js} +1 -1
  29. package/dist/{react-vega-DayQmZjG.js → react-vega-BkjdpVsR.js} +2 -2
  30. package/dist/{react-vega-CzRAIHrv.js → react-vega-DBwal82H.js} +1 -1
  31. package/dist/{slides-component-_3tukGh-.js → slides-component-DLxprlqo.js} +26 -26
  32. package/dist/{spec-rP6otrXw.js → spec-3EPbPQZH.js} +4 -4
  33. package/dist/style.css +1 -1
  34. package/dist/{toDate-CfGr2xZ1.js → toDate-B1AzlBoW.js} +15 -15
  35. package/dist/{tooltip-BusGYw7Q.js → tooltip-DwNnFsxZ.js} +132 -132
  36. package/dist/{types-D4CFUmPq.js → types-pwjdK009.js} +15 -15
  37. package/dist/{useAsyncData-BzS3Ai32.js → useAsyncData-BL98MPIy.js} +3 -3
  38. package/dist/{useDeepCompareMemoize-AjORjhpL.js → useDeepCompareMemoize-CsyOnnjc.js} +25 -25
  39. package/dist/{useIframeCapabilities---aRgGdv.js → useIframeCapabilities-CsTUYYj7.js} +3 -3
  40. package/dist/{useLifecycle-B90lJH4p.js → useLifecycle-DrGGIsgp.js} +36 -36
  41. package/dist/{useTheme-ytmywQ5O.js → useTheme-CzwDokKe.js} +4 -4
  42. package/dist/{vega-component-C3akWtJ1.js → vega-component-KBJXEDZz.js} +42 -42
  43. package/dist/{zod-D4UoCYGu.js → zod-W5ZEjzaE.js} +23 -23
  44. package/package.json +4 -4
  45. package/src/core/islands/__tests__/bridge.test.ts +2 -12
  46. package/src/core/islands/__tests__/islands-harness.test.ts +348 -0
  47. package/src/core/islands/__tests__/parse.test.ts +466 -24
  48. package/src/core/islands/__tests__/test-utils.tsx +263 -0
  49. package/src/core/islands/bootstrap.ts +265 -0
  50. package/src/core/islands/bridge.ts +154 -75
  51. package/src/core/islands/components/IslandControls.tsx +103 -0
  52. package/src/core/islands/components/__tests__/IslandControls.test.tsx +185 -0
  53. package/src/core/islands/components/__tests__/useIslandControls.test.ts +208 -0
  54. package/src/core/islands/components/output-wrapper.tsx +76 -93
  55. package/src/core/islands/components/useIslandControls.ts +60 -0
  56. package/src/core/islands/components/web-components.tsx +168 -40
  57. package/src/core/islands/constants.ts +28 -0
  58. package/src/core/islands/main.ts +7 -205
  59. package/src/core/islands/parse.ts +73 -26
  60. package/src/core/islands/worker-factory.ts +86 -0
  61. package/src/plugins/impl/DataTablePlugin.tsx +7 -3
  62. package/dist/mermaid-4DMBBIKO-Cw46o6DN.js +0 -6
  63. /package/dist/{clsx-yW_RAw0K.js → clsx-CwTY0BxM.js} +0 -0
  64. /package/dist/{react-Bs6Z0kvn.js → react-DA-nE2FX.js} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { t as __commonJSMin } from "./chunk-BNovOVIE.js";
2
- import { t as require_react } from "./react-Bs6Z0kvn.js";
2
+ import { t as require_react } from "./react-DA-nE2FX.js";
3
3
  /**
4
4
  * @license React
5
5
  * react-dom.production.js
@@ -1,7 +1,7 @@
1
- import "./react-Bs6Z0kvn.js";
1
+ import "./react-DA-nE2FX.js";
2
2
  import "./jsx-runtime-9hcJiI23.js";
3
3
  import "./vega-loader.browser-DqEcFOPD.js";
4
- import { n as q, t as j } from "./react-vega-CzRAIHrv.js";
4
+ import { n as q, t as j } from "./react-vega-DBwal82H.js";
5
5
  import "./defaultLocale-qS7DaAmi.js";
6
6
  import "./defaultLocale-Bxoo2-30.js";
7
7
  export {
@@ -10,7 +10,7 @@ var __privateAdd = (obj, member, value2) => member.has(obj) ? __typeError("Canno
10
10
  var __privateSet = (obj, member, value2, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value2) : member.set(obj, value2), value2);
11
11
  var _e, _a, _b;
12
12
  import { r as __export, s as __toESM } from "./chunk-BNovOVIE.js";
13
- import { t as require_react } from "./react-Bs6Z0kvn.js";
13
+ import { t as require_react } from "./react-DA-nE2FX.js";
14
14
  import { t as require_jsx_runtime } from "./jsx-runtime-9hcJiI23.js";
15
15
  import { $ as clampRange, $t as zoomLinear, A as timeOffset, At as mergeConfig, B as week, Bt as span, C as TIME_UNITS, Ct as isRegExp, D as dayofyear, Dt as logger, E as bin$1, Et as lerp, F as utcInterval, Ft as panPow, G as Info$1, Gt as toSet, H as Debug$1, Ht as toBoolean, I as utcOffset, It as panSymlog, J as accessor$1, Jt as truthy$1, K as None$3, Kt as toString, L as utcSequence, Lt as peek$1, M as timeUnitSpecifier, Mt as pad, N as timeUnits, Nt as panLinear, O as timeFloor, Ot as lruCache, P as utcFloor, Pt as panLog, Q as ascending, Qt as zero$3, R as utcdayofyear, Rt as quarter, S as SECONDS, St as isObject, T as YEAR, Tt as key, U as DisallowedObjectProperties, Ut as toDate, V as $$1, Vt as splitAccessPath$1, W as Error$1$1, Wt as toNumber, X as accessorName, Xt as visitArray, Y as accessorFields, Yt as utcquarter, Z as array$1, Zt as writeConfig, _ as HOURS, _t as isBoolean, a as loader, at as extent, b as MONTH, bt as isIterable, c as typeParsers, ct as fastmap, d as numberFormatDefaultLocale, dt as has$1, en as zoomLog, et as compare$1, f as resetDefaultLocale, ft as id$1, g as DAYOFYEAR, gt as isArray, h as DAY, ht as inrange, i as inferTypes, it as extend, j as timeSequence, jt as one$2, k as timeInterval, kt as merge$3, l as defaultLocale, lt as field$2, m as DATE, mt as inherits, n as formats$1, nn as zoomSymlog, nt as debounce, o as read, ot as extentIndex, p as timeFormatDefaultLocale, pt as identity$1, q as Warn$1, qt as truncate, r as inferType, rt as error$2, s as responseType, st as falsy$1, t as format$3, tn as zoomPow, tt as constant, u as locale, ut as flush, v as MILLISECONDS, vt as isDate, w as WEEK, wt as isString, x as QUARTER, xt as isNumber$1, y as MINUTES, yt as isFunction$1, z as utcweek, zt as repeat } from "./vega-loader.browser-DqEcFOPD.js";
16
16
  import { a as tickStep, c as ascending$2, o as ticks, s as bisector } from "./precisionRound-CGLoV26P.js";
@@ -1,9 +1,9 @@
1
1
  import { s as __toESM } from "./chunk-BNovOVIE.js";
2
- import { t as require_react } from "./react-Bs6Z0kvn.js";
3
- import { t as require_compiler_runtime } from "./compiler-runtime-B_OLMU9S.js";
4
- import { l as useEventListener, t as Button, y as cn } from "./button-Cn59RsBF.js";
2
+ import { g as cn, l as useEventListener, t as Button } from "./button-D1C3g5GI.js";
3
+ import { t as require_react } from "./react-DA-nE2FX.js";
4
+ import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
5
5
  import { t as require_jsx_runtime } from "./jsx-runtime-9hcJiI23.js";
6
- import { t as useIframeCapabilities } from "./useIframeCapabilities---aRgGdv.js";
6
+ import { t as useIframeCapabilities } from "./useIframeCapabilities-CsTUYYj7.js";
7
7
  var import_compiler_runtime = require_compiler_runtime(), import_react = /* @__PURE__ */ __toESM(require_react(), 1);
8
8
  function isObject$2(t2) {
9
9
  return typeof t2 == "object" && !!t2 && "constructor" in t2 && t2.constructor === Object;
@@ -2969,20 +2969,20 @@ var SwiperSlide = /* @__PURE__ */ (0, import_react.forwardRef)(({ tag: t2 = "div
2969
2969
  });
2970
2970
  SwiperSlide.displayName = "SwiperSlide";
2971
2971
  var import_jsx_runtime = /* @__PURE__ */ __toESM(require_jsx_runtime(), 1), slides_component_default = (t2) => {
2972
- let d = (0, import_compiler_runtime.c)(37), { className: f, children: g, height: b, forceKeyboardNavigation: x, wrapAround: S, activeIndex: C, onActiveIndexChange: w } = t2, T = x === void 0 ? false : x, E = S === void 0 ? false : S, D = import_react.useRef(null), [O, k] = import_react.useState(false), { hasFullscreen: A } = useIframeCapabilities(), j, M;
2973
- d[0] !== C || d[1] !== E ? (j = () => {
2972
+ let m = (0, import_compiler_runtime.c)(37), { className: h, children: g, height: b, forceKeyboardNavigation: x, wrapAround: S, activeIndex: C, onActiveIndexChange: w } = t2, T = x === void 0 ? false : x, E = S === void 0 ? false : S, D = import_react.useRef(null), [O, k] = import_react.useState(false), { hasFullscreen: A } = useIframeCapabilities(), j, M;
2973
+ m[0] !== C || m[1] !== E ? (j = () => {
2974
2974
  var _a, _b, _c;
2975
2975
  C != null && ((_a = D.current) == null ? void 0 : _a.swiper.realIndex) !== C && (E ? (_b = D.current) == null ? void 0 : _b.swiper.slideToLoop(C) : (_c = D.current) == null ? void 0 : _c.swiper.slideTo(C));
2976
- }, M = [C, E], d[0] = C, d[1] = E, d[2] = j, d[3] = M) : (j = d[2], M = d[3]), (0, import_react.useEffect)(j, M);
2976
+ }, M = [C, E], m[0] = C, m[1] = E, m[2] = j, m[3] = M) : (j = m[2], M = m[3]), (0, import_react.useEffect)(j, M);
2977
2977
  let N;
2978
- d[4] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (N = () => {
2978
+ m[4] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (N = () => {
2979
2979
  var _a, _b;
2980
2980
  document.fullscreenElement ? (_a = D.current) == null ? void 0 : _a.swiper.keyboard.enable() : (_b = D.current) == null ? void 0 : _b.swiper.keyboard.disable(), k(!!document.fullscreenElement);
2981
- }, d[4] = N) : N = d[4], useEventListener(document, "fullscreenchange", N);
2981
+ }, m[4] = N) : N = m[4], useEventListener(document, "fullscreenchange", N);
2982
2982
  let P;
2983
- d[5] === O ? P = d[6] : (P = [O], d[5] = O, d[6] = P), (0, import_react.useEffect)(_temp2, P);
2983
+ m[5] === O ? P = m[6] : (P = [O], m[5] = O, m[6] = P), (0, import_react.useEffect)(_temp2, P);
2984
2984
  let F;
2985
- d[7] === E ? F = d[8] : (F = E ? [
2985
+ m[7] === E ? F = m[8] : (F = E ? [
2986
2986
  Keyboard,
2987
2987
  Pagination,
2988
2988
  Zoom,
@@ -2993,33 +2993,33 @@ var import_jsx_runtime = /* @__PURE__ */ __toESM(require_jsx_runtime(), 1), slid
2993
2993
  Pagination,
2994
2994
  Zoom,
2995
2995
  Navigation
2996
- ], d[7] = E, d[8] = F);
2996
+ ], m[7] = E, m[8] = F);
2997
2997
  let I = F, L;
2998
- d[9] === f ? L = d[10] : (L = cn("relative w-full border rounded bg-background mo-slides-theme prose-slides", f), d[9] = f, d[10] = L);
2998
+ m[9] === h ? L = m[10] : (L = cn("relative w-full border rounded bg-background mo-slides-theme prose-slides", h), m[9] = h, m[10] = L);
2999
2999
  let R = O ? "100%" : b || "650px", z;
3000
- d[11] === R ? z = d[12] : (z = { height: R }, d[11] = R, d[12] = z);
3000
+ m[11] === R ? z = m[12] : (z = { height: R }, m[11] = R, m[12] = z);
3001
3001
  let B;
3002
- d[13] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (B = { maxRatio: 5 }, d[13] = B) : B = d[13];
3002
+ m[13] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (B = { maxRatio: 5 }, m[13] = B) : B = m[13];
3003
3003
  let V = O || T, H;
3004
- d[14] === V ? H = d[15] : (H = { enabled: V }, d[14] = V, d[15] = H);
3004
+ m[14] === V ? H = m[15] : (H = { enabled: V }, m[14] = V, m[15] = H);
3005
3005
  let U;
3006
- d[16] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (U = { clickable: true }, d[16] = U) : U = d[16];
3006
+ m[16] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (U = { clickable: true }, m[16] = U) : U = m[16];
3007
3007
  let W = !E, G;
3008
- d[17] === w ? G = d[18] : (G = (t3) => w == null ? void 0 : w(t3.realIndex), d[17] = w, d[18] = G);
3008
+ m[17] === w ? G = m[18] : (G = (t3) => w == null ? void 0 : w(t3.realIndex), m[17] = w, m[18] = G);
3009
3009
  let K;
3010
- if (d[19] !== g || d[20] !== O) {
3010
+ if (m[19] !== g || m[20] !== O) {
3011
3011
  let t3;
3012
- d[22] === O ? t3 = d[23] : (t3 = (t4, d2) => t4 == null ? null : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SwiperSlide, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
3012
+ m[22] === O ? t3 = m[23] : (t3 = (t4, f) => t4 == null ? null : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SwiperSlide, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
3013
3013
  onKeyDown: _temp3,
3014
3014
  className: cn("h-full w-full flex box-border overflow-y-auto overflow-x-hidden", O ? "p-20" : "p-6 pb-12"),
3015
3015
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
3016
3016
  className: "mo-slide-content",
3017
3017
  children: t4
3018
3018
  })
3019
- }) }, d2), d[22] = O, d[23] = t3), K = import_react.Children.map(g, t3), d[19] = g, d[20] = O, d[21] = K;
3020
- } else K = d[21];
3019
+ }) }, f), m[22] = O, m[23] = t3), K = import_react.Children.map(g, t3), m[19] = g, m[20] = O, m[21] = K;
3020
+ } else K = m[21];
3021
3021
  let q;
3022
- d[24] !== A || d[25] !== O ? (q = A && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Button, {
3022
+ m[24] !== A || m[25] !== O ? (q = A && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Button, {
3023
3023
  variant: "link",
3024
3024
  size: "sm",
3025
3025
  "data-testid": "marimo-plugin-slides-fullscreen",
@@ -3030,9 +3030,9 @@ var import_jsx_runtime = /* @__PURE__ */ __toESM(require_jsx_runtime(), 1), slid
3030
3030
  },
3031
3031
  className: "absolute bottom-0 right-0 z-10 mx-1 mb-0",
3032
3032
  children: O ? "Exit Fullscreen" : "Fullscreen"
3033
- }), d[24] = A, d[25] = O, d[26] = q) : q = d[26];
3033
+ }), m[24] = A, m[25] = O, m[26] = q) : q = m[26];
3034
3034
  let J;
3035
- return d[27] !== I || d[28] !== z || d[29] !== H || d[30] !== W || d[31] !== G || d[32] !== K || d[33] !== q || d[34] !== L || d[35] !== E ? (J = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Swiper, {
3035
+ return m[27] !== I || m[28] !== z || m[29] !== H || m[30] !== W || m[31] !== G || m[32] !== K || m[33] !== q || m[34] !== L || m[35] !== E ? (J = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Swiper, {
3036
3036
  ref: D,
3037
3037
  className: L,
3038
3038
  spaceBetween: 50,
@@ -3049,7 +3049,7 @@ var import_jsx_runtime = /* @__PURE__ */ __toESM(require_jsx_runtime(), 1), slid
3049
3049
  loop: E,
3050
3050
  onSlideChange: G,
3051
3051
  children: [K, q]
3052
- }), d[27] = I, d[28] = z, d[29] = H, d[30] = W, d[31] = G, d[32] = K, d[33] = q, d[34] = L, d[35] = E, d[36] = J) : J = d[36], J;
3052
+ }), m[27] = I, m[28] = z, m[29] = H, m[30] = W, m[31] = G, m[32] = K, m[33] = q, m[34] = L, m[35] = E, m[36] = J) : J = m[36], J;
3053
3053
  };
3054
3054
  function _temp() {
3055
3055
  window.dispatchEvent(new Event("resize"));
@@ -1,8 +1,8 @@
1
1
  import { s as __toESM } from "./chunk-BNovOVIE.js";
2
- import { t as require_react } from "./react-Bs6Z0kvn.js";
3
- import { u as createLucideIcon } from "./dist-CjLQ79mo.js";
4
- import { s as Hash } from "./useLifecycle-B90lJH4p.js";
5
- import { C as logNever, E as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7 } from "./label-J1N4mVcg.js";
2
+ import { t as require_react } from "./react-DA-nE2FX.js";
3
+ import { u as createLucideIcon } from "./dist-CTtLBPLZ.js";
4
+ import { s as Hash } from "./useLifecycle-DrGGIsgp.js";
5
+ import { C as logNever, E as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7 } from "./label-BebYlsDV.js";
6
6
  var AlignCenterVertical = createLucideIcon("align-center-vertical", [
7
7
  ["path", {
8
8
  d: "M12 2v20",