@marimo-team/islands 0.25.3-dev4 → 0.25.3-dev6

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 (90) hide show
  1. package/dist/{ConnectedDataExplorerComponent-CNSxdKyJ.js → ConnectedDataExplorerComponent-CNMliVzw.js} +1 -1
  2. package/dist/{ErrorBoundary-CuU5CuVr.js → ErrorBoundary-Ca-Sa492.js} +1 -1
  3. package/dist/{abnfDiagram-VCTEODGH-DQDjNXt3.js → abnfDiagram-VCTEODGH-D-Ez91gV.js} +2 -2
  4. package/dist/{any-language-editor-B9REGlD9.js → any-language-editor-DZ_YTVus.js} +1 -1
  5. package/dist/{architectureDiagram-5GKGNRK7-Nmls7Wxn.js → architectureDiagram-5GKGNRK7-CTpcNtO8.js} +1 -1
  6. package/dist/{chat-ui-BDpymeoe.js → chat-ui-0lKdOoQ3.js} +436 -437
  7. package/dist/{chunk-IMKFNOWR-CoIFEo-1.js → chunk-IMKFNOWR-DGxi-zeo.js} +1 -1
  8. package/dist/{chunk-SHT3W25Y-lHiGx3ZC.js → chunk-SHT3W25Y-CV9J3rAB.js} +1 -1
  9. package/dist/{chunk-SVP7TREG-BvsHIrY_.js → chunk-SVP7TREG-BL-9Fqgg.js} +1 -1
  10. package/dist/{chunk-TICWLB2K-BC8YIm_n.js → chunk-TICWLB2K-Cu_XMjDM.js} +1 -1
  11. package/dist/{classDiagram-ZZMXUADV-Bt98lkkv.js → classDiagram-ZZMXUADV-BXXV13Hq.js} +2 -2
  12. package/dist/{classDiagram-v2-VYDZK3BY-D9bfbcC3.js → classDiagram-v2-VYDZK3BY-B7FXJ1Cp.js} +2 -2
  13. package/dist/{code-visibility-Lu0dkrFO.js → code-visibility-NGRjhbtA.js} +14 -14
  14. package/dist/{common-DiWGWDIM.js → common-B7_ZSg0P.js} +6426 -6256
  15. package/dist/{cynefinDiagram-5FMLGOSQ-CgWra7wt.js → cynefinDiagram-5FMLGOSQ-CH96rwba.js} +1 -1
  16. package/dist/{dagre-GXQ25YYZ-CFZ8-35c.js → dagre-GXQ25YYZ-BD3PmpFY.js} +1 -1
  17. package/dist/{data-grid-overlay-editor-ga7ytgbj.js → data-grid-overlay-editor-B_cmrkBm.js} +1 -1
  18. package/dist/{diagram-S7CK7UJ4-lCNQrW7d.js → diagram-S7CK7UJ4-BsSJJldB.js} +1 -1
  19. package/dist/{diagram-UQ7AKVKN-CQPQ6pP_.js → diagram-UQ7AKVKN-muQtNZc4.js} +1 -1
  20. package/dist/{diagram-VX7I27RA-Cf3b0llz.js → diagram-VX7I27RA-CdhuZAqR.js} +1 -1
  21. package/dist/{diagram-Z3DM3KII-Bt4QLrpn.js → diagram-Z3DM3KII-BD8mXjOj.js} +1 -1
  22. package/dist/{ebnfDiagram-PWID7BFC-D3NAyPFY.js → ebnfDiagram-PWID7BFC-BIN1sweE.js} +2 -2
  23. package/dist/{erDiagram-RLTQ6QDP-Tlu09_Nm.js → erDiagram-RLTQ6QDP-Ctp5cfoN.js} +1 -1
  24. package/dist/{error-banner-Da600cwz.js → error-banner-D-WCIiMt.js} +10 -5
  25. package/dist/{cells-C8iCYvLU.js → error-entries-DSvFWT_M.js} +2262 -2206
  26. package/dist/{feedback-button-DQA-pzxi.js → feedback-button-CTF2Nj9s.js} +115 -116
  27. package/dist/{flowDiagram-HODETNUW-CAYbpJmV.js → flowDiagram-HODETNUW-3EfLrlFb.js} +2 -2
  28. package/dist/{formats-BGh2thRc.js → formats-CeOmU1MU.js} +1 -1
  29. package/dist/{glide-data-editor-Bv75MH6g.js → glide-data-editor-BQHF9puC.js} +3 -3
  30. package/dist/{globals-EDQGFIvi.js → globals-Cj8iqMEp.js} +1 -1
  31. package/dist/{html-to-image-CZY1pIZH.js → html-to-image-B8s5SgGm.js} +23 -23
  32. package/dist/{infoDiagram-27XIBGKW-XrDxhr0x.js → infoDiagram-27XIBGKW-DipQoHxl.js} +1 -1
  33. package/dist/{ishikawaDiagram-5VMMS53U-CD1muzov.js → ishikawaDiagram-5VMMS53U-DgFMjSGz.js} +1 -1
  34. package/dist/{kanban-definition-UXKFOSKX-Dg9W142_.js → kanban-definition-UXKFOSKX-w1ACVjgl.js} +1 -1
  35. package/dist/main.js +164 -163
  36. package/dist/{mermaid-CiAXjLpA.js → mermaid-CHo49Yv-.js} +33 -33
  37. package/dist/{mindmap-definition-YA3MSWOX-DgCidgYJ.js → mindmap-definition-YA3MSWOX-CrT0KSfX.js} +1 -1
  38. package/dist/{number-overlay-editor-BCP3MxhC.js → number-overlay-editor-DBcnm0SY.js} +1 -1
  39. package/dist/{pegDiagram-XKGWAZYB-coOYYKB6.js → pegDiagram-XKGWAZYB-BqvywNJA.js} +2 -2
  40. package/dist/{pieDiagram-E7YTZNPT-BnXTc3bj.js → pieDiagram-E7YTZNPT-BfxJ_XCc.js} +1 -1
  41. package/dist/{process-output-e4jj9Ijt.js → process-output-CKRXyszb.js} +3 -3
  42. package/dist/{railroadDiagram-O6MQD6OU-B28-u83n.js → railroadDiagram-O6MQD6OU-8vFLVTPu.js} +2 -2
  43. package/dist/{requirementDiagram-BXWQKSXE-CdYCTMu0.js → requirementDiagram-BXWQKSXE-a_MxGvxe.js} +1 -1
  44. package/dist/{reveal-component-DO5BJB9l.js → reveal-component-DTBSuGkC.js} +4 -4
  45. package/dist/{sequenceDiagram-WJ2MYXX4-CM3aRAe_.js → sequenceDiagram-WJ2MYXX4-CXFMnxGh.js} +1 -1
  46. package/dist/{stateDiagram-D77RDMKH-DOZUMVj8.js → stateDiagram-D77RDMKH-DQeA_CwI.js} +2 -2
  47. package/dist/{stateDiagram-v2-MP3YSRHH-CISYxma6.js → stateDiagram-v2-MP3YSRHH-BxxQucm1.js} +2 -2
  48. package/dist/style.css +1 -1
  49. package/dist/{swimlanes-42K2YHIH-BkSppxp8.js → swimlanes-42K2YHIH-Do6L-cYg.js} +1 -1
  50. package/dist/{swimlanesDiagram-VR7AAH4N-c8G5pGxC.js → swimlanesDiagram-VR7AAH4N-DUzPvSVU.js} +2 -2
  51. package/dist/{timeline-definition-24CTP7MA-CaMQayqK.js → timeline-definition-24CTP7MA-D3c46WM5.js} +1 -1
  52. package/dist/{toDate-BNJf01u1.js → toDate-vIXljnsr.js} +39 -38
  53. package/dist/{vega-component-DG29TAB7.js → vega-component-DTG6zxaY.js} +3 -3
  54. package/dist/{vennDiagram-4TSXK5OY-CF8pfaK3.js → vennDiagram-4TSXK5OY-BSZD8JcZ.js} +1 -1
  55. package/dist/{wardleyDiagram-VM6X3IG4-dGPu39d-.js → wardleyDiagram-VM6X3IG4-48cUWkfA.js} +1 -1
  56. package/dist/{xychartDiagram-S5SC5T6Z-CP6-9q56.js → xychartDiagram-S5SC5T6Z-CswYgYeu.js} +1 -1
  57. package/package.json +1 -1
  58. package/src/__tests__/fixtures/{pair-preview.ts → pair-config.ts} +3 -2
  59. package/src/__tests__/mount.test.ts +8 -8
  60. package/src/components/editor/Output.tsx +9 -2
  61. package/src/components/editor/actions/__tests__/pair-with-agent-commands.test.ts +80 -252
  62. package/src/components/editor/actions/__tests__/pair-with-agent-modal.test.tsx +186 -34
  63. package/src/components/editor/actions/pair-with-agent-commands.ts +42 -51
  64. package/src/components/editor/actions/pair-with-agent-modal.tsx +96 -36
  65. package/src/components/editor/chrome/panels/error-panel.tsx +1 -0
  66. package/src/components/editor/chrome/wrapper/__tests__/attachment-status.test.tsx +372 -0
  67. package/src/components/editor/chrome/wrapper/footer-item.tsx +32 -24
  68. package/src/components/editor/chrome/wrapper/footer-items/attachment-status.tsx +237 -0
  69. package/src/components/editor/chrome/wrapper/footer.tsx +2 -0
  70. package/src/components/editor/errors/__tests__/send-error-report-button.test.tsx +548 -0
  71. package/src/components/editor/errors/send-error-report-button.tsx +69 -0
  72. package/src/components/editor/output/MarimoErrorOutput.tsx +21 -5
  73. package/src/components/editor/output/MarimoTracebackOutput.tsx +35 -20
  74. package/src/components/editor/output/__tests__/ansi-reduce.test.ts +18 -0
  75. package/src/components/editor/output/ansi-reduce.ts +6 -0
  76. package/src/core/attachments/__tests__/toast.test.tsx +58 -0
  77. package/src/core/attachments/state.ts +21 -0
  78. package/src/core/attachments/toast.ts +15 -0
  79. package/src/core/cells/__tests__/cells.test.ts +52 -0
  80. package/src/core/cells/__tests__/error-report.test.ts +139 -0
  81. package/src/core/cells/__tests__/session.test.ts +50 -1
  82. package/src/core/cells/error-report.ts +63 -0
  83. package/src/core/cells/session.ts +28 -1
  84. package/src/core/config/pair.ts +5 -3
  85. package/src/core/islands/__tests__/bootstrap.test.ts +26 -0
  86. package/src/core/islands/bootstrap.ts +1 -0
  87. package/src/core/websocket/__tests__/useMarimoKernelConnection.hook.test.tsx +193 -0
  88. package/src/core/websocket/useMarimoKernelConnection.tsx +9 -0
  89. package/src/mount.tsx +3 -3
  90. package/dist/error-entries-CzoYkIQZ.js +0 -56
@@ -9,7 +9,7 @@ import "./chunk-4HAMMTFA-D4eFPyFh.js";
9
9
  import "./chunk-GVQU2GXP-Cwbt-lF0.js";
10
10
  import "./chunk-L3NEJ4N5-n-zgIVSy.js";
11
11
  import { o as n } from "./chunk-OSK3NFVY-DXa-Cxbn.js";
12
- import { c as r } from "./mermaid-CiAXjLpA.js";
12
+ import { c as r } from "./mermaid-CHo49Yv-.js";
13
13
  //#region ../node_modules/.pnpm/mermaid@11.17.2/node_modules/mermaid/dist/chunks/mermaid.core/swimlanes-42K2YHIH.mjs
14
14
  var i = 5, a = 1e-5, o = 1e-6;
15
15
  function s(e) {
@@ -9,11 +9,11 @@ import "./chunk-4HAMMTFA-D4eFPyFh.js";
9
9
  import "./chunk-GVQU2GXP-Cwbt-lF0.js";
10
10
  import "./chunk-L3NEJ4N5-n-zgIVSy.js";
11
11
  import "./chunk-OSK3NFVY-DXa-Cxbn.js";
12
- import "./mermaid-CiAXjLpA.js";
12
+ import "./mermaid-CHo49Yv-.js";
13
13
  import "./chunk-F27PBJKO-ufseIn5y.js";
14
14
  import "./chunk-XXDRQBXY-Dnl5VBqG.js";
15
15
  import "./chunk-POPQ4Y6H-hYOXbYH_.js";
16
- import { r as t, t as n } from "./chunk-SHT3W25Y-lHiGx3ZC.js";
16
+ import { r as t, t as n } from "./chunk-SHT3W25Y-CV9J3rAB.js";
17
17
  //#region ../node_modules/.pnpm/mermaid@11.17.2/node_modules/mermaid/dist/chunks/mermaid.core/swimlanesDiagram-VR7AAH4N.mjs
18
18
  var r = n({
19
19
  defaultLayout: "swimlane",
@@ -3,7 +3,7 @@ import { p as t } from "./chunk-75Z2AOVW-D7gxIs2Q.js";
3
3
  import { n, t as r } from "./src-CA_m4ONl.js";
4
4
  import { n as i, t as a } from "./chunk-Y2CYZVJY-DKKS1VyV.js";
5
5
  import { $ as o, J as s, a as c, b as l, et as u, nt as d, o as f, x as p } from "./chunk-DU6HZSFF-BwiyaNpg.js";
6
- import { p as m } from "./mermaid-CiAXjLpA.js";
6
+ import { p as m } from "./mermaid-CHo49Yv-.js";
7
7
  //#region ../node_modules/.pnpm/mermaid@11.17.2/node_modules/mermaid/dist/chunks/mermaid.core/timeline-definition-24CTP7MA.mjs
8
8
  var h = (function() {
9
9
  var e = /* @__PURE__ */ i(function(e, t, n, r) {
@@ -465,54 +465,55 @@ function M({ href: e, queryParams: t, keys: n }) {
465
465
  let m = f.toString();
466
466
  return m ? `${o}?${m}${s}` : e;
467
467
  }
468
- a(null);
469
- var N = (0, O.init)({ length: 6 });
470
- function P() {
471
- return `s_${N()}`;
468
+ //#endregion
469
+ //#region src/core/kernel/session.ts
470
+ var N = a(null), P = (0, O.init)({ length: 6 });
471
+ function F() {
472
+ return `s_${P()}`;
472
473
  }
473
- function F(e) {
474
+ function I(e) {
474
475
  return e ? /^s_[\da-z]{6}$/.test(e) : !1;
475
476
  }
476
- var I = null;
477
- function L() {
478
- let e = o.get(v) === "edit", n = new URL(window.location.href).searchParams.get(s.sessionId), r = F(n) ? n : null;
477
+ var L = null;
478
+ function R() {
479
+ let e = o.get(v) === "edit", n = new URL(window.location.href).searchParams.get(s.sessionId), r = I(n) ? n : null;
479
480
  return k((t) => {
480
481
  if (!e) {
481
482
  t.delete(s.sessionId), t.delete(s.kiosk);
482
483
  return;
483
484
  }
484
485
  t.has(s.kiosk) || t.delete(s.sessionId);
485
- }), r === null ? (t.debug("Starting a new session", { sessionId: n }), P()) : e ? (t.debug("Connecting to existing session", { sessionId: r }), r) : (t.debug("Ignoring session_id from URL outside the editor", { sessionId: r }), P());
486
+ }), r === null ? (t.debug("Starting a new session", { sessionId: n }), F()) : e ? (t.debug("Connecting to existing session", { sessionId: r }), r) : (t.debug("Ignoring session_id from URL outside the editor", { sessionId: r }), F());
486
487
  }
487
- function R() {
488
- return I === null && (I = L()), I;
488
+ function z() {
489
+ return L === null && (L = R()), L;
489
490
  }
490
491
  //#endregion
491
492
  //#region src/core/static/static-state.ts
492
- function z(e) {
493
+ function B(e) {
493
494
  if (typeof e != "object" || !e || Array.isArray(e)) return !1;
494
495
  for (let t of Object.values(e)) if (typeof t != "string") return !1;
495
496
  return !0;
496
497
  }
497
- function B(e) {
498
+ function V(e) {
498
499
  if (typeof e != "object" || !e || Array.isArray(e)) return !1;
499
500
  let t = e;
500
- return !(!z(t.files) || t.modelNotifications !== void 0 && !Array.isArray(t.modelNotifications));
501
- }
502
- function V() {
503
- let e = typeof window > "u" ? void 0 : window.__MARIMO_STATIC__;
504
- return B(e) ? e : void 0;
501
+ return !(!B(t.files) || t.modelNotifications !== void 0 && !Array.isArray(t.modelNotifications));
505
502
  }
506
503
  function H() {
507
- return V() !== void 0;
504
+ let e = typeof window > "u" ? void 0 : window.__MARIMO_STATIC__;
505
+ return V(e) ? e : void 0;
508
506
  }
509
507
  function U() {
510
- let e = V();
508
+ return H() !== void 0;
509
+ }
510
+ function W() {
511
+ let e = H();
511
512
  return l(e !== void 0, "Not a static notebook"), e.files;
512
513
  }
513
514
  //#endregion
514
515
  //#region src/core/runtime/runtime.ts
515
- var W = class {
516
+ var G = class {
516
517
  initialHealthyCheck = new m();
517
518
  config;
518
519
  lazy;
@@ -535,7 +536,7 @@ var W = class {
535
536
  return this.httpURL.origin === window.location.origin;
536
537
  }
537
538
  get isServerless() {
538
- return p() || c() || H();
539
+ return p() || c() || U();
539
540
  }
540
541
  formatHttpURL({ path: e = "", searchParams: t, restrictToKnownQueryParams: n = !0 }) {
541
542
  let r = this.httpURL, i = new URLSearchParams(window.location.search);
@@ -559,7 +560,7 @@ var W = class {
559
560
  searchParams: t,
560
561
  restrictToKnownQueryParams: !1
561
562
  });
562
- return G(this.appendCrossOriginAuth(n).toString());
563
+ return K(this.appendCrossOriginAuth(n).toString());
563
564
  }
564
565
  getSessionSearchParams(e) {
565
566
  let t = new URL(this.config.url), n = new URLSearchParams(t.search);
@@ -645,17 +646,17 @@ var W = class {
645
646
  }
646
647
  headers() {
647
648
  let e = {
648
- "Marimo-Session-Id": R(),
649
+ "Marimo-Session-Id": z(),
649
650
  "Marimo-Server-Token": this.config.serverToken ?? "",
650
651
  "x-runtime-url": this.httpURL.toString()
651
652
  };
652
653
  return this.config.authToken && (e.Authorization = `Bearer ${this.config.authToken}`), e;
653
654
  }
654
655
  sessionHeaders() {
655
- return { "Marimo-Session-Id": R() };
656
+ return { "Marimo-Session-Id": z() };
656
657
  }
657
658
  };
658
- function G(e) {
659
+ function K(e) {
659
660
  if (!e.startsWith("http")) {
660
661
  t.warn(`URL must start with http: ${e}`);
661
662
  let n = new URL(e);
@@ -665,29 +666,29 @@ function G(e) {
665
666
  }
666
667
  //#endregion
667
668
  //#region src/core/runtime/config.ts
668
- function K() {
669
+ function q() {
669
670
  let e = new URL(document.baseURI);
670
671
  return e.search = "", e.hash = "", e.toString();
671
672
  }
672
- var q = {
673
+ var J = {
673
674
  lazy: !0,
674
- url: K()
675
- }, J = a(q), Y = a((e) => {
676
- let t = e(J);
677
- return new W(t, t.lazy);
675
+ url: q()
676
+ }, Y = a(J), ee = a((e) => {
677
+ let t = e(Y);
678
+ return new G(t, t.lazy);
678
679
  });
679
680
  function X() {
680
- return o.get(Y);
681
+ return o.get(ee);
681
682
  }
682
- function ee(e) {
683
+ function te(e) {
683
684
  if (e.startsWith("http")) return new URL(e);
684
685
  let t = X().httpURL.toString();
685
686
  return t.startsWith("blob:") && (t = t.replace("blob:", "")), new URL(e, t);
686
687
  }
687
688
  //#endregion
688
689
  //#region ../node_modules/.pnpm/date-fns@4.4.0/node_modules/date-fns/constants.js
689
- var te = 365.2425, ne = 6048e5, re = 864e5, Z = 86400;
690
- Z * 7, Z * te / 12 * 3;
690
+ var ne = 365.2425, re = 6048e5, ie = 864e5, Z = 86400;
691
+ Z * 7, Z * ne / 12 * 3;
691
692
  var Q = Symbol.for("constructDateFrom");
692
693
  //#endregion
693
694
  //#region ../node_modules/.pnpm/date-fns@4.4.0/node_modules/date-fns/constructFrom.js
@@ -696,8 +697,8 @@ function $(e, t) {
696
697
  }
697
698
  //#endregion
698
699
  //#region ../node_modules/.pnpm/date-fns@4.4.0/node_modules/date-fns/toDate.js
699
- function ie(e, t) {
700
+ function ae(e, t) {
700
701
  return $(t || e, e);
701
702
  }
702
703
  //#endregion
703
- export { u as S, x as _, ee as a, p as b, H as c, k as d, D as f, b as g, y as h, ne as i, M as l, v as m, $ as n, X as o, g as p, re as r, U as s, ie as t, j as u, _ as v, f as x, m as y };
704
+ export { u as C, f as S, b as _, te as a, m as b, U as c, j as d, k as f, y as g, v as h, re as i, N as l, g as m, $ as n, X as o, D as p, ie as r, W as s, ae as t, M as u, x as v, p as x, _ as y };
@@ -3,15 +3,15 @@ import { g as t, h as n, m as r, o as i } from "./button-CvjkwdSk.js";
3
3
  import { t as a } from "./react-sHtZdjeP.js";
4
4
  import { t as o } from "./compiler-runtime-CldRdSsv.js";
5
5
  import { t as s } from "./tooltip-BO1REbqs.js";
6
- import { S as c, a as l } from "./toDate-BNJf01u1.js";
6
+ import { C as c, a as l } from "./toDate-vIXljnsr.js";
7
7
  import { t as u } from "./jsx-runtime-3BD1kT0s.js";
8
- import { n as d } from "./error-banner-Da600cwz.js";
8
+ import { n as d } from "./error-banner-D-WCIiMt.js";
9
9
  import { t as f } from "./debounce-C3jyATpc.js";
10
10
  import { A as p, n as ee } from "./useTheme-CRnjkku0.js";
11
11
  import { c as m } from "./arrays-CN1djC4k.js";
12
12
  import { t as te } from "./objects-CzUgoMIF.js";
13
13
  import { t as h } from "./useAsyncData-Deh5kszT.js";
14
- import { a as ne, i as re, n as ie, t as g } from "./formats-BGh2thRc.js";
14
+ import { a as ne, i as re, n as ie, t as g } from "./formats-CeOmU1MU.js";
15
15
  import { M as ae, n as oe } from "./vega-loader.browser-DNST6uVf.js";
16
16
  import { t as se } from "./react-vega-BED0DjiB.js";
17
17
  import { a as ce, n as _ } from "./loader-BQOfjTIJ.js";
@@ -3,7 +3,7 @@ import { t } from "./src-CA_m4ONl.js";
3
3
  import { n } from "./chunk-Y2CYZVJY-DKKS1VyV.js";
4
4
  import { $ as r, H as i, K as a, U as o, a as s, b as c, c as l, et as u, f as d, nt as f, tt as p, v as m, w as h, y as g } from "./chunk-DU6HZSFF-BwiyaNpg.js";
5
5
  import { t as _ } from "./rough.esm-CtV9AnV1.js";
6
- import { p as v } from "./mermaid-CiAXjLpA.js";
6
+ import { p as v } from "./mermaid-CHo49Yv-.js";
7
7
  //#region ../node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/transparentize.js
8
8
  var y = (e, t) => p(e, "a", -t), b = 1e-10;
9
9
  function x(e, t) {
@@ -2,7 +2,7 @@ import { i as e } from "./chunk-75Z2AOVW-D7gxIs2Q.js";
2
2
  import { n as t } from "./src-CA_m4ONl.js";
3
3
  import { n } from "./chunk-Y2CYZVJY-DKKS1VyV.js";
4
4
  import { D as r, H as i, K as a, U as o, a as s, b as c, c as l, v as u, w as d, x as f, y as p } from "./chunk-DU6HZSFF-BwiyaNpg.js";
5
- import { p as m } from "./mermaid-CiAXjLpA.js";
5
+ import { p as m } from "./mermaid-CHo49Yv-.js";
6
6
  import { n as h } from "./mermaid-parser.core-DxuSfYwJ.js";
7
7
  import { t as g } from "./chunk-JWPE2WC7-DJvv1t8U.js";
8
8
  //#region ../node_modules/.pnpm/mermaid@11.17.2/node_modules/mermaid/dist/chunks/mermaid.core/wardleyDiagram-VM6X3IG4.mjs
@@ -9,7 +9,7 @@ import { n as s } from "./chunk-Y2CYZVJY-DKKS1VyV.js";
9
9
  import { D as c, H as l, K as u, U as d, a as f, b as p, c as m, f as h, v as g, w as _, y as v, z as y } from "./chunk-DU6HZSFF-BwiyaNpg.js";
10
10
  import "./chunk-PWAF6VOD-CQw5qATZ.js";
11
11
  import { t as b } from "./chunk-GMAD6QVW-BhaJx0X3.js";
12
- import { p as x } from "./mermaid-CiAXjLpA.js";
12
+ import { p as x } from "./mermaid-CHo49Yv-.js";
13
13
  //#region ../node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/band.js
14
14
  function S() {
15
15
  var e = t().unknown(void 0), r = e.domain, i = e.range, o = 0, s = 1, c, l, u = !1, d = 0, f = 0, p = .5;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marimo-team/islands",
3
- "version": "0.25.3-dev4",
3
+ "version": "0.25.3-dev6",
4
4
  "main": "dist/main.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "type": "module",
@@ -2,11 +2,12 @@
2
2
 
3
3
  import { readFileSync } from "node:fs";
4
4
  import path from "node:path";
5
- import { pairPreviewSchema } from "@/core/config/pair";
5
+ import { pairConfigSchema } from "@/core/config/pair";
6
6
 
7
7
  // Read the Python-owned resource only in tests to check the shared contract.
8
- export const PAIR_PREVIEW = pairPreviewSchema.parse({
8
+ export const PAIR_CONFIG = pairConfigSchema.parse({
9
9
  command: "uvx marimo@latest",
10
+ hostEnabled: true,
10
11
  templates: JSON.parse(
11
12
  readFileSync(
12
13
  path.resolve(
@@ -8,8 +8,8 @@ import { connectionAtom } from "@/core/network/connection";
8
8
  import { store } from "@/core/state/jotai";
9
9
  import { isStaticNotebook } from "@/core/static/static-state";
10
10
  import { ConnectionState } from "@/core/websocket/types";
11
- import { pairPreviewAtom } from "@/core/config/pair";
12
- import { PAIR_PREVIEW } from "./fixtures/pair-preview";
11
+ import { pairConfigAtom } from "@/core/config/pair";
12
+ import { PAIR_CONFIG } from "./fixtures/pair-config";
13
13
  import { mount, visibleForTesting } from "../mount";
14
14
 
15
15
  // Mock React DOM
@@ -84,20 +84,20 @@ describe("mount", () => {
84
84
  mockElement,
85
85
  );
86
86
 
87
- it("hydrates the server's Pair preview configuration", () => {
88
- const error = mountRead({ pairPreview: PAIR_PREVIEW });
87
+ it("hydrates the server's Pair configuration", () => {
88
+ const error = mountRead({ pairConfig: PAIR_CONFIG });
89
89
 
90
90
  expect(error).toBeUndefined();
91
- expect(store.get(pairPreviewAtom)).toEqual(PAIR_PREVIEW);
91
+ expect(store.get(pairConfigAtom)).toEqual(PAIR_CONFIG);
92
92
  });
93
93
 
94
- it("uses legacy Pair behavior when the host omits preview configuration", () => {
95
- store.set(pairPreviewAtom, PAIR_PREVIEW);
94
+ it("clears Pair configuration when the server omits it", () => {
95
+ store.set(pairConfigAtom, PAIR_CONFIG);
96
96
 
97
97
  const error = mountRead();
98
98
 
99
99
  expect(error).toBeUndefined();
100
- expect(store.get(pairPreviewAtom)).toBeUndefined();
100
+ expect(store.get(pairConfigAtom)).toBeUndefined();
101
101
  });
102
102
 
103
103
  describe("connection state initialization", () => {
@@ -66,7 +66,10 @@ export type OnRefactorWithAI = (opts: {
66
66
  * Renders an output based on an OutputMessage.
67
67
  */
68
68
  export const OutputRenderer: React.FC<{
69
- message: Pick<OutputMessage, "channel" | "data" | "mimetype">;
69
+ message: Pick<
70
+ OutputMessage,
71
+ "channel" | "data" | "mimetype" | "code" | "traceback_format"
72
+ >;
70
73
  cellId?: CellId;
71
74
  onRefactorWithAI?: OnRefactorWithAI;
72
75
  wrapText?: boolean;
@@ -172,7 +175,9 @@ export const OutputRenderer: React.FC<{
172
175
 
173
176
  case "application/vnd.marimo+error":
174
177
  invariant(Array.isArray(data), "Expected array data");
175
- return <MarimoErrorOutput cellId={cellId} errors={data} />;
178
+ return (
179
+ <MarimoErrorOutput cellId={cellId} errors={data} code={message.code} />
180
+ );
176
181
 
177
182
  case "application/vnd.marimo+traceback":
178
183
  invariant(
@@ -183,6 +188,8 @@ export const OutputRenderer: React.FC<{
183
188
  <MarimoTracebackOutput
184
189
  onRefactorWithAI={onRefactorWithAI}
185
190
  traceback={data}
191
+ tracebackFormat={message.traceback_format}
192
+ code={message.code}
186
193
  cellId={cellId}
187
194
  />
188
195
  );