@marimo-team/islands 0.24.3-dev25 → 0.24.3-dev26

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.
@@ -3,12 +3,12 @@ import { c as n, g as r, h as i, t as a } from "./button-DdXAm8iz.js";
3
3
  import { t as o } from "./react-ofJbxM4x.js";
4
4
  import { t as s } from "./compiler-runtime-Cj8ZWiNS.js";
5
5
  import { r as c } from "./copy-C0N4m1lm.js";
6
- import { Cn as l, F as u, Ft as d, Gt as f, Hn as p, In as m, Pn as h, Qn as g, Un as _, Vt as v, Wt as y, Xt as b, Yn as x, Zn as S, _ as C, a as w, c as T, d as E, er as D, f as O, g as ee, gn as k, gt as te, h as ne, hn as A, ht as re, in as ie, l as ae, m as j, mn as oe, n as se, nn as ce, on as le, p as ue, pn as de, pt as fe, q as pe, r as me, rn as he, rr as ge, rt as _e, t as ve, v as ye, vn as be, x as xe, y as Se, yt as Ce, zt as we } from "./html-to-image-CSU-_5BI.js";
6
+ import { Cn as l, F as u, Ft as d, Gt as f, Hn as p, In as m, Pn as h, Qn as g, Un as _, Vt as v, Wt as y, Xt as b, Yn as x, Zn as S, _ as C, a as w, c as T, d as E, er as D, f as O, g as ee, gn as k, gt as te, h as ne, hn as A, ht as re, in as ie, l as ae, m as j, mn as oe, n as se, nn as ce, on as le, p as ue, pn as de, pt as fe, q as pe, r as me, rn as he, rr as ge, rt as _e, t as ve, v as ye, vn as be, x as xe, y as Se, yt as Ce, zt as we } from "./html-to-image-mVIbKn_Y.js";
7
7
  import { u as M } from "./dist-6ChWbo8z.js";
8
8
  import { C as Te, I as Ee, R as De, b as Oe } from "./select-UMOSCa3W.js";
9
9
  import { _ as ke, f as Ae, h as je, i as Me, n as Ne, t as Pe } from "./dropdown-menu-C73aTomr.js";
10
10
  import { p as Fe, v as Ie } from "./toDate-C3JOXlJT.js";
11
- import { d as Le, f as Re, i as ze, n as Be, t as Ve, u as He } from "./process-output-B6HE2ojm.js";
11
+ import { d as Le, f as Re, i as ze, n as Be, t as Ve, u as He } from "./process-output-Cr6U5ULK.js";
12
12
  import { t as Ue } from "./jsx-runtime-DgDPJV9S.js";
13
13
  import { A as We, B as Ge, C as Ke, D as qe, E as Je, I as Ye, L as Xe, N as Ze, P as Qe, R as $e, S as et, T as tt, _ as nt, b as rt, j as it, k as at, v as ot, w as st, x as ct, y as lt } from "./schemas-BDZr-nP0.js";
14
14
  import { n as ut } from "./error-banner-hCaH06e3.js";
@@ -3,7 +3,7 @@ import { _ as n, c as r, f as i, g as a, h as o, m as s, n as c, p as l, r as u,
3
3
  import { t as f } from "./react-ofJbxM4x.js";
4
4
  import { t as p } from "./compiler-runtime-Cj8ZWiNS.js";
5
5
  import { n as m, r as h, t as g } from "./copy-C0N4m1lm.js";
6
- import { $ as _, $n as v, $t as y, A as b, An as x, At as S, Cn as C, Ct as w, D as T, E, Et as D, F as O, Gn as k, H as A, Hn as j, Ht as M, Jn as N, Kt as P, Ln as F, M as I, Mn as L, N as R, Nt as ee, Pn as z, Q as te, Qn as ne, Qt as re, Rt as ie, S as ae, T as oe, Tt as se, Un as ce, Ut as le, V as ue, Wt as de, Xt as fe, Yn as pe, Z as me, Zn as he, _ as ge, _t as _e, ar as ve, cn as ye, en as be, er as xe, g as Se, gt as Ce, ht as we, it as Te, jn as Ee, jt as De, kt as Oe, lt as ke, mt as Ae, n as je, on as Me, or as Ne, ot as Pe, pt as Fe, q as Ie, qn as Le, r as Re, rr as ze, s as Be, sr as Ve, t as He, tt as Ue, u as We, v as Ge, vt as Ke, w as qe, wn as Je, y as Ye, yn as Xe, yt as Ze } from "./html-to-image-CSU-_5BI.js";
6
+ import { $ as _, $n as v, $t as y, A as b, An as x, At as S, Cn as C, Ct as w, D as T, E, Et as D, F as O, Gn as k, H as A, Hn as j, Ht as M, Jn as N, Kt as P, Ln as F, M as I, Mn as L, N as R, Nt as ee, Pn as z, Q as te, Qn as ne, Qt as re, Rt as ie, S as ae, T as oe, Tt as se, Un as ce, Ut as le, V as ue, Wt as de, Xt as fe, Yn as pe, Z as me, Zn as he, _ as ge, _t as _e, ar as ve, cn as ye, en as be, er as xe, g as Se, gt as Ce, ht as we, it as Te, jn as Ee, jt as De, kt as Oe, lt as ke, mt as Ae, n as je, on as Me, or as Ne, ot as Pe, pt as Fe, q as Ie, qn as Le, r as Re, rr as ze, s as Be, sr as Ve, t as He, tt as Ue, u as We, v as Ge, vt as Ke, w as qe, wn as Je, y as Ye, yn as Xe, yt as Ze } from "./html-to-image-mVIbKn_Y.js";
7
7
  import { o as Qe, u as B } from "./dist-6ChWbo8z.js";
8
8
  import { c as $e, i as et, r as tt } from "./useLifecycle-BGRBkTFT.js";
9
9
  import { a as nt, i as rt, n as it, o as at, r as ot, t as st } from "./useDateFormatter-BKpQHt-W.js";
@@ -32442,7 +32442,7 @@ function Iq() {
32442
32442
  return a.warn("Failed to get version from mount config"), null;
32443
32443
  }
32444
32444
  }
32445
- var Lq = Iq() || "0.24.3-dev25", Rq = V(Lq), zq = V(!0);
32445
+ var Lq = Iq() || "0.24.3-dev26", Rq = V(Lq), zq = V(!0);
32446
32446
  V(null);
32447
32447
  //#endregion
32448
32448
  //#region src/core/wasm/state.ts
@@ -28166,7 +28166,10 @@ function BC(e, t) {
28166
28166
  t.output != null && t.output.mimetype === "application/vnd.marimo+error" && ((n.status === "queued" || n.status === "running") && (n.status = "idle"), an(Array.isArray(t.output.data), "Expected error output data to be an array"), t.output.data.some((e) => e.type === "interruption") ? (n.interrupted = !0, r = !0) : t.output.data.some((e) => e.type.includes("ancestor")) ? n.stopped = !0 : n.errored = !0);
28167
28167
  let i = e.consoleOutputs;
28168
28168
  (r || t.status === "idle") && (n.debuggerActive = !1, i = i.map((e) => e.channel === "stdin" ? {
28169
- ...e,
28169
+ channel: e.channel,
28170
+ mimetype: e.mimetype,
28171
+ data: e.data,
28172
+ timestamp: e.timestamp,
28170
28173
  response: e.response ?? ""
28171
28174
  } : e));
28172
28175
  let a = t.console;
package/dist/main.js CHANGED
@@ -3,16 +3,16 @@ import { _ as a, c as o, f as s, g as c, h as l, i as u, l as d, m as f, n as p,
3
3
  import { t as y } from "./react-ofJbxM4x.js";
4
4
  import { t as b } from "./compiler-runtime-Cj8ZWiNS.js";
5
5
  import { n as x, r as S, t as C } from "./copy-C0N4m1lm.js";
6
- import { $n as w, An as T, B as E, Bn as D, Bt as O, C as k, Ct as A, Dn as j, Dt as M, En as N, F as P, Fn as F, G as I, I as L, It as R, J as ee, Jt as z, K as te, Kn as B, L as ne, Lt as re, Mt as ie, Nn as ae, Nt as oe, On as se, Ot as ce, P as le, Pn as ue, Pt as de, Q as fe, Qn as pe, Qt as me, R as he, Rn as ge, Sn as _e, St as ve, U as ye, Un as be, Vn as xe, Vt as Se, W as Ce, Wn as we, Wt as Te, X as Ee, Xn as De, Y as Oe, Yn as ke, Yt as Ae, Z as je, Zn as Me, Zt as Ne, _ as Pe, _n as Fe, a as Ie, an as Le, ar as Re, at as ze, b as Be, bn as Ve, bt as He, cn as Ue, ct as We, dn as Ge, dt as Ke, et as qe, fn as Je, ft as Ye, g as Xe, i as Ze, ir as Qe, j as $e, jt as et, k as tt, kn as nt, kt as rt, ln as it, n as at, nr as ot, o as st, on as ct, ot as lt, q as ut, qt as dt, sn as ft, st as pt, tn as mt, tr as ht, un as gt, ut as _t, v as vt, wn as yt, wt as bt, xn as xt, xt as St, y as Ct, z as wt, zn as Tt } from "./html-to-image-CSU-_5BI.js";
6
+ import { $n as w, An as T, B as E, Bn as D, Bt as O, C as k, Ct as A, Dn as j, Dt as M, En as N, F as P, Fn as F, G as I, I as L, It as R, J as ee, Jt as z, K as te, Kn as B, L as ne, Lt as re, Mt as ie, Nn as ae, Nt as oe, On as se, Ot as ce, P as le, Pn as ue, Pt as de, Q as fe, Qn as pe, Qt as me, R as he, Rn as ge, Sn as _e, St as ve, U as ye, Un as be, Vn as xe, Vt as Se, W as Ce, Wn as we, Wt as Te, X as Ee, Xn as De, Y as Oe, Yn as ke, Yt as Ae, Z as je, Zn as Me, Zt as Ne, _ as Pe, _n as Fe, a as Ie, an as Le, ar as Re, at as ze, b as Be, bn as Ve, bt as He, cn as Ue, ct as We, dn as Ge, dt as Ke, et as qe, fn as Je, ft as Ye, g as Xe, i as Ze, ir as Qe, j as $e, jt as et, k as tt, kn as nt, kt as rt, ln as it, n as at, nr as ot, o as st, on as ct, ot as lt, q as ut, qt as dt, sn as ft, st as pt, tn as mt, tr as ht, un as gt, ut as _t, v as vt, wn as yt, wt as bt, xn as xt, xt as St, y as Ct, z as wt, zn as Tt } from "./html-to-image-mVIbKn_Y.js";
7
7
  import { o as Et, s as Dt, u as Ot } from "./dist-6ChWbo8z.js";
8
8
  import { D as kt, E as At, O as jt, S as Mt, T as Nt, _ as Pt, a as Ft, c as It, d as Lt, f as Rt, g as zt, h as Bt, i as Vt, l as Ht, m as Ut, n as Wt, o as Gt, p as Kt, r as qt, s as Jt, t as Yt, u as Xt, v as Zt, w as Qt, x as $t, y as en } from "./spec-g740fOWu.js";
9
- import { $ as tn, $t as nn, A as rn, At as an, B as on, Bt as sn, C as cn, Cn as ln, Ct as un, D as dn, Dn as fn, Dt as pn, E as mn, En as hn, Et as gn, F as _n, Ft as vn, G as yn, Gt as bn, H as xn, Ht as Sn, I as Cn, It as wn, J as Tn, Jt as En, K as Dn, Kt as On, L as kn, Lt as An, M as jn, N as Mn, Nt as Nn, O as Pn, Ot as Fn, P as In, Pt as Ln, Q as Rn, Qt as zn, R as Bn, Rt as Vn, S as Hn, Sn as Un, St as Wn, T as Gn, Tn as Kn, Tt as qn, U as Jn, Ut as Yn, V as Xn, Vt as Zn, W as Qn, Wt as $n, X as er, Xt as tr, Y as nr, Yt as rr, Z as ir, Zt as ar, _ as or, _n as sr, _t as cr, a as lr, an as ur, at as dr, b as fr, bn as pr, bt as mr, cn as hr, dn as gr, dt as _r, en as vr, et as yr, fn as br, ft as xr, g as Sr, gn as Cr, gt as wr, hn as Tr, ht as Er, i as Dr, in as Or, it as kr, j as Ar, k as jr, kt as Mr, l as Nr, ln as Pr, m as Fr, mn as Ir, mt as Lr, n as Rr, nn as zr, nt as Br, on as Vr, ot as Hr, pn as Ur, pt as Wr, q as Gr, qt as Kr, rn as qr, rt as Jr, s as Yr, sn as Xr, st as Zr, t as Qr, tn as $r, tt as ei, un as ti, v as ni, vt as ri, w as ii, wn as ai, wt as oi, x as si, xn as ci, xt as li, y as ui, yn as di, yt as fi, z as pi, zt as mi } from "./common-DaIWT6G8.js";
9
+ import { $ as tn, $t as nn, A as rn, At as an, B as on, Bt as sn, C as cn, Cn as ln, Ct as un, D as dn, Dn as fn, Dt as pn, E as mn, En as hn, Et as gn, F as _n, Ft as vn, G as yn, Gt as bn, H as xn, Ht as Sn, I as Cn, It as wn, J as Tn, Jt as En, K as Dn, Kt as On, L as kn, Lt as An, M as jn, N as Mn, Nt as Nn, O as Pn, Ot as Fn, P as In, Pt as Ln, Q as Rn, Qt as zn, R as Bn, Rt as Vn, S as Hn, Sn as Un, St as Wn, T as Gn, Tn as Kn, Tt as qn, U as Jn, Ut as Yn, V as Xn, Vt as Zn, W as Qn, Wt as $n, X as er, Xt as tr, Y as nr, Yt as rr, Z as ir, Zt as ar, _ as or, _n as sr, _t as cr, a as lr, an as ur, at as dr, b as fr, bn as pr, bt as mr, cn as hr, dn as gr, dt as _r, en as vr, et as yr, fn as br, ft as xr, g as Sr, gn as Cr, gt as wr, hn as Tr, ht as Er, i as Dr, in as Or, it as kr, j as Ar, k as jr, kt as Mr, l as Nr, ln as Pr, m as Fr, mn as Ir, mt as Lr, n as Rr, nn as zr, nt as Br, on as Vr, ot as Hr, pn as Ur, pt as Wr, q as Gr, qt as Kr, rn as qr, rt as Jr, s as Yr, sn as Xr, st as Zr, t as Qr, tn as $r, tt as ei, un as ti, v as ni, vt as ri, w as ii, wn as ai, wt as oi, x as si, xn as ci, xt as li, y as ui, yn as di, yt as fi, z as pi, zt as mi } from "./common-D0etxETU.js";
10
10
  import { c as hi, i as gi, n as _i, o as vi, t as yi } from "./useLifecycle-BGRBkTFT.js";
11
11
  import { t as bi } from "./check-mcQyZmFG.js";
12
12
  import { A as xi, C as Si, D as Ci, E as wi, F as Ti, I as Ei, M as Di, N as Oi, P as ki, R as Ai, S as ji, a as Mi, b as Ni, c as Pi, i as Fi, j as Ii, l as Li, n as Ri, o as zi, r as Bi, s as Vi, t as Hi, w as Ui, x as Wi } from "./select-UMOSCa3W.js";
13
13
  import { B as Gi, C as Ki, Ht as qi, J as Ji, Nt as Yi, Pt as Xi, S as Zi, W as Qi, Y as $i, _ as ea, a as ta, at as na, c as ra, f as ia, ft as aa, g as oa, h as sa, i as ca, m as la, mn as ua, n as da, ot as fa, p as pa, pn as ma, r as ha, s as ga, t as _a, v as va, x as ya, yt as ba, z as xa } from "./dropdown-menu-C73aTomr.js";
14
14
  import { _ as Sa, c as Ca, d as wa, f as Ta, g as Ea, h as Da, m as Oa, u as ka, v as Aa } from "./toDate-C3JOXlJT.js";
15
- import { a as ja, c as Ma, d as Na, f as Pa, i as Fa, l as Ia, n as La, o as Ra, r as za, s as Ba, t as Va } from "./process-output-B6HE2ojm.js";
15
+ import { a as ja, c as Ma, d as Na, f as Pa, i as Fa, l as Ia, n as La, o as Ra, r as za, s as Ba, t as Va } from "./process-output-Cr6U5ULK.js";
16
16
  import { a as Ha, c as Ua, d as Wa, i as Ga, l as Ka, r as qa, u as Ja } from "./glide-utils-BMnFm0vZ.js";
17
17
  import { n as Ya, t as Xa } from "./ErrorBoundary-B7uSdDUm.js";
18
18
  import { t as Za } from "./react-dom-BUgJ-ab_.js";
@@ -10009,7 +10009,7 @@ var FS = (e) => {
10009
10009
  output: t
10010
10010
  };
10011
10011
  } };
10012
- } }, VS = q.lazy(() => import("./chat-ui-Cn1TFk66.js").then((e) => ({ default: e.Chatbot }))), HS = G(W({
10012
+ } }, VS = q.lazy(() => import("./chat-ui-DiMxe-GH.js").then((e) => ({ default: e.Chatbot }))), HS = G(W({
10013
10013
  id: H(),
10014
10014
  role: _o([
10015
10015
  "system",
@@ -29942,7 +29942,7 @@ function xR(e) {
29942
29942
  }
29943
29943
  //#endregion
29944
29944
  //#region src/components/editor/renderers/slides-layout/slides-layout.tsx
29945
- var SR = q.lazy(() => import("./reveal-component-CaInuYSb.js")), CR = (e) => {
29945
+ var SR = q.lazy(() => import("./reveal-component-BizaxxZk.js")), CR = (e) => {
29946
29946
  let t = (0, Y.c)(33), { layout: n, setLayout: r, cells: i, mode: a } = e, o = fs(rt), s = a === "read" || o, c = fs(Oe) > 1, [l, u] = (0, q.useState)(null), d;
29947
29947
  t[0] !== i || t[1] !== n ? (d = yP(i, n), t[0] = i, t[1] = n, t[2] = d) : d = t[2];
29948
29948
  let { slideCells: f, skippedIds: p, noOutputIds: m, slideTypes: h, startCellIndex: g } = d, _;
@@ -1,4 +1,4 @@
1
- import { O as e, nt as t, rt as n } from "./html-to-image-CSU-_5BI.js";
1
+ import { O as e, nt as t, rt as n } from "./html-to-image-mVIbKn_Y.js";
2
2
  import { u as r } from "./dist-6ChWbo8z.js";
3
3
  import { b as i } from "./select-UMOSCa3W.js";
4
4
  import { n as a } from "./semaphore-89jsoHtS.js";
@@ -2,9 +2,9 @@ import { a as e } from "./rolldown-runtime-Cb76FRpK.js";
2
2
  import { c as t, g as n, h as r, m as i, t as a } from "./button-DdXAm8iz.js";
3
3
  import { t as o } from "./react-ofJbxM4x.js";
4
4
  import { t as s } from "./compiler-runtime-Cj8ZWiNS.js";
5
- import { kt as c, st as l } from "./html-to-image-CSU-_5BI.js";
5
+ import { kt as c, st as l } from "./html-to-image-mVIbKn_Y.js";
6
6
  import { u } from "./dist-6ChWbo8z.js";
7
- import { _n as d, c as f, ct as p, g as m, h, l as g, lt as _, n as v, o as y, r as b, t as x, u as S, ut as C, vn as w, xn as T } from "./common-DaIWT6G8.js";
7
+ import { _n as d, c as f, ct as p, g as m, h, l as g, lt as _, n as v, o as y, r as b, t as x, u as S, ut as C, vn as w, xn as T } from "./common-D0etxETU.js";
8
8
  import { R as E } from "./select-UMOSCa3W.js";
9
9
  import { Y as D } from "./dropdown-menu-C73aTomr.js";
10
10
  import { t as O } from "./jsx-runtime-DgDPJV9S.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marimo-team/islands",
3
- "version": "0.24.3-dev25",
3
+ "version": "0.24.3-dev26",
4
4
  "main": "dist/main.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "type": "module",
@@ -220,6 +220,67 @@ describe("transitionCell serialization", () => {
220
220
  });
221
221
 
222
222
  describe("transitionCell stdin resolution", () => {
223
+ describe.each([
224
+ {
225
+ name: "interrupted",
226
+ message: {
227
+ output: {
228
+ channel: "marimo-error",
229
+ mimetype: "application/vnd.marimo+error",
230
+ data: [{ type: "interruption" }],
231
+ timestamp: 1,
232
+ },
233
+ } as CellMessage,
234
+ },
235
+ {
236
+ name: "idle",
237
+ message: { status: "idle" } as CellMessage,
238
+ },
239
+ ])("when $name", ({ name, message }) => {
240
+ it.each(["text/plain", "text/password"] as const)(
241
+ "preserves a processed %s prompt",
242
+ (mimetype) => {
243
+ const prompt: OutputMessage = {
244
+ channel: "stdin",
245
+ mimetype,
246
+ data: "Enter a value: ",
247
+ timestamp: 0,
248
+ };
249
+ const waiting = transitionCell(
250
+ createCellRuntimeState({ status: "running" }),
251
+ { console: prompt } as CellMessage,
252
+ );
253
+ const resolved = transitionCell(waiting, message);
254
+
255
+ expect(resolved.interrupted).toBe(name === "interrupted");
256
+ expect(resolved.consoleOutputs[0]).toMatchObject({
257
+ ...prompt,
258
+ response: "",
259
+ });
260
+ },
261
+ );
262
+
263
+ it.each(["text/plain", "text/password"] as const)(
264
+ "preserves an existing %s response",
265
+ (mimetype) => {
266
+ const prompt = {
267
+ channel: "stdin" as const,
268
+ mimetype,
269
+ data: "Enter a value: ",
270
+ timestamp: 0,
271
+ response: "submitted value",
272
+ };
273
+ const answered = createCellRuntimeState({
274
+ status: "running",
275
+ consoleOutputs: [prompt],
276
+ });
277
+ const resolved = transitionCell(answered, message);
278
+
279
+ expect(resolved.consoleOutputs).toEqual([prompt]);
280
+ },
281
+ );
282
+ });
283
+
223
284
  function stdinOutput(): OutputMessage {
224
285
  return {
225
286
  channel: "stdin",
@@ -126,7 +126,15 @@ export function transitionCell(
126
126
  nextCell.debuggerActive = false;
127
127
  consoleOutputs = consoleOutputs.map((output) => {
128
128
  if (output.channel === "stdin") {
129
- return { ...output, response: output.response ?? "" };
129
+ // StatefulOutputMessage exposes data through a getter, which object
130
+ // spread would omit.
131
+ return {
132
+ channel: output.channel,
133
+ mimetype: output.mimetype,
134
+ data: output.data,
135
+ timestamp: output.timestamp,
136
+ response: output.response ?? "",
137
+ };
130
138
  }
131
139
  return output;
132
140
  });