@marimo-team/islands 0.15.1-dev21 → 0.15.1-dev24

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 (71) hide show
  1. package/dist/{ConnectedDataExplorerComponent-CBGi7bdi.js → ConnectedDataExplorerComponent-BQel1Iiw.js} +2 -2
  2. package/dist/{ImageComparisonComponent-3O4b1fqg.js → ImageComparisonComponent-BY0hRzHb.js} +1 -1
  3. package/dist/{_baseUniq-BmVMVzZE.js → _baseUniq-CxYX_R71.js} +1 -1
  4. package/dist/{any-language-editor-BNGwYIvg.js → any-language-editor-JKFDp4Ls.js} +1 -1
  5. package/dist/{architectureDiagram-KFL7JDKH-B64atv5Y.js → architectureDiagram-KFL7JDKH-BXLgpQKr.js} +4 -4
  6. package/dist/{blockDiagram-ZYB65J3Q-BcU1n2iO.js → blockDiagram-ZYB65J3Q-xMqbeLTR.js} +5 -5
  7. package/dist/{c4Diagram-AAMF2YG6-GpWgwDer.js → c4Diagram-AAMF2YG6-BZ6BpwCG.js} +2 -2
  8. package/dist/{channel-DUlTNO42.js → channel-D67kFsKH.js} +1 -1
  9. package/dist/{chunk-ANTBXLJU-BzsT3ug_.js → chunk-ANTBXLJU-D-kL51ap.js} +1 -1
  10. package/dist/{chunk-FHKO5MBM-BjYukDH0.js → chunk-FHKO5MBM--SvQW9-E.js} +1 -1
  11. package/dist/{chunk-GLLZNHP4-Cu4mAelg.js → chunk-GLLZNHP4-C7jpZQET.js} +1 -1
  12. package/dist/{chunk-JBRWN2VN-B5Jie7oA.js → chunk-JBRWN2VN-Ss1hHMDg.js} +4 -4
  13. package/dist/{chunk-LXBSTHXV-DWmi5NpT.js → chunk-LXBSTHXV-DA4pVkNa.js} +3 -3
  14. package/dist/{chunk-NRVI72HA-DxZ71xfE.js → chunk-NRVI72HA-DnDahTmt.js} +1 -1
  15. package/dist/{chunk-OMD6QJNC-BPgmx-CD.js → chunk-OMD6QJNC-BunYJe1x.js} +1 -1
  16. package/dist/{chunk-WVR4S24B-BPaHu-B3.js → chunk-WVR4S24B-D7c7uzE_.js} +1 -1
  17. package/dist/{classDiagram-v2-QTMF73CY-DAN9ViBq.js → classDiagram-3BZAVTQC-DA1CNfTN.js} +2 -2
  18. package/dist/{classDiagram-3BZAVTQC-DAN9ViBq.js → classDiagram-v2-QTMF73CY-DA1CNfTN.js} +2 -2
  19. package/dist/{clone-BZA_o20_.js → clone-DaiZzrim.js} +1 -1
  20. package/dist/{dagre-2BBEFEWP-xqWhAOwX.js → dagre-2BBEFEWP-D7hD6zFz.js} +6 -6
  21. package/dist/{data-grid-overlay-editor-BmCKuE60.js → data-grid-overlay-editor-VIgHjOH2.js} +2 -2
  22. package/dist/{diagram-4IRLE6MV-BsPghxii.js → diagram-4IRLE6MV-Cnw6omX9.js} +5 -5
  23. package/dist/{diagram-GUPCWM2R-BE4FgVlH.js → diagram-GUPCWM2R-CSoWq-R3.js} +3 -3
  24. package/dist/{diagram-RP2FKANI--sCO4u3q.js → diagram-RP2FKANI-CCVjXff7.js} +3 -3
  25. package/dist/{erDiagram-HZWUO2LU-Dt2ojoSZ.js → erDiagram-HZWUO2LU-OXyLJcIi.js} +4 -4
  26. package/dist/{flowDiagram-THRYKUMA-IQml3pMT.js → flowDiagram-THRYKUMA-BCGeXlJZ.js} +5 -5
  27. package/dist/{ganttDiagram-WV7ZQ7D5-C-J_Ioy4.js → ganttDiagram-WV7ZQ7D5-Deb7MyGx.js} +4 -4
  28. package/dist/{gitGraphDiagram-OJR772UL-CJo0sZI3.js → gitGraphDiagram-OJR772UL-DYAvxudD.js} +4 -4
  29. package/dist/{glide-data-editor-BXfrxuUr.js → glide-data-editor-CyEbjYi7.js} +3 -3
  30. package/dist/{graph-BJ4Yb9Kk.js → graph-CpLMniAD.js} +3 -3
  31. package/dist/{index-CZFeu6H-.js → index-8KAuaoET.js} +1 -1
  32. package/dist/{index-GYj_5V8r.js → index-B24lKXhf.js} +1 -1
  33. package/dist/{index-C6E9Q4AW.js → index-C9HxACgt.js} +3 -3
  34. package/dist/{index-BfewRGHL.js → index-CYhZFTPr.js} +1 -1
  35. package/dist/{index-e9ajdFRT.js → index-O64-_BK-.js} +1 -1
  36. package/dist/{infoDiagram-6WOFNB3A-CNMJ_KmZ.js → infoDiagram-6WOFNB3A-BFVVCnQs.js} +2 -2
  37. package/dist/{journeyDiagram-FFXJYRFH-Cxe32wHk.js → journeyDiagram-FFXJYRFH-CZb6jNMF.js} +3 -3
  38. package/dist/{kanban-definition-KOZQBZVT-DXh79uJw.js → kanban-definition-KOZQBZVT-B4wgSIZW.js} +2 -2
  39. package/dist/{layout-C6naMcMM.js → layout-Cpbk5_jl.js} +4 -4
  40. package/dist/{linear-CkK536gu.js → linear-DyVU55j1.js} +1 -1
  41. package/dist/{main-BJlH_VRR.js → main-NdEnJ_fi.js} +16625 -16603
  42. package/dist/main.js +1 -1
  43. package/dist/{mermaid-Cj6wxDDk.js → mermaid-BSb9r769.js} +29 -29
  44. package/dist/{min-CGY4l-iQ.js → min-VdzZBdCP.js} +2 -2
  45. package/dist/{mindmap-definition-LNHGMQRG-xpXrJUFO.js → mindmap-definition-LNHGMQRG-Cs9y7jjO.js} +2 -2
  46. package/dist/{number-overlay-editor-Smlm7OKy.js → number-overlay-editor-CW55rbsf.js} +2 -2
  47. package/dist/{pieDiagram-DBDJKBY4-mwkQJ031.js → pieDiagram-DBDJKBY4-BBLmplr0.js} +3 -3
  48. package/dist/{quadrantDiagram-YPSRARAO-C-kOCCpT.js → quadrantDiagram-YPSRARAO-ovTnKg_O.js} +2 -2
  49. package/dist/{react-plotly-WrMY0sbH.js → react-plotly-CtbQFY3T.js} +1 -1
  50. package/dist/{requirementDiagram-EGVEC5DT-D47kEZFe.js → requirementDiagram-EGVEC5DT-B85Mnq4Y.js} +3 -3
  51. package/dist/{sankeyDiagram-HRAUVNP4-JUL3Wtvg.js → sankeyDiagram-HRAUVNP4-C9fhgspa.js} +1 -1
  52. package/dist/{sequenceDiagram-WFGC7UMF-BW6Prve2.js → sequenceDiagram-WFGC7UMF-DBt0lGIP.js} +3 -3
  53. package/dist/{slides-component-DiV25FV2.js → slides-component-Be6xVU2_.js} +1 -1
  54. package/dist/{stateDiagram-UUKSUZ4H-Osdm_WRG.js → stateDiagram-UUKSUZ4H-12XrJJTs.js} +4 -4
  55. package/dist/{stateDiagram-v2-EYPG3UTE-D40y9yt_.js → stateDiagram-v2-EYPG3UTE-BVZxjqEt.js} +2 -2
  56. package/dist/{time-D49pYKlM.js → time-BgQIOeld.js} +2 -2
  57. package/dist/{timeline-definition-3HZDQTIS-BQfnpN0w.js → timeline-definition-3HZDQTIS-BnrAoLRd.js} +1 -1
  58. package/dist/{treemap-75Q7IDZK-CcnyCtCM.js → treemap-75Q7IDZK-EdX0hGdW.js} +5 -5
  59. package/dist/{vega-component-oJGN_WsZ.js → vega-component-BOFK9CDC.js} +2 -2
  60. package/dist/{xychartDiagram-FDP5SA34-DDOfMbg9.js → xychartDiagram-FDP5SA34-DH2ht05g.js} +2 -2
  61. package/package.json +1 -1
  62. package/src/components/ai/ai-model-dropdown.tsx +5 -34
  63. package/src/components/ai/display-helpers.tsx +32 -0
  64. package/src/components/app-config/ai-config.tsx +265 -9
  65. package/src/components/app-config/app-config-button.tsx +1 -1
  66. package/src/components/app-config/app-config-form.tsx +17 -6
  67. package/src/components/app-config/user-config-form.tsx +5 -1
  68. package/src/core/ai/__tests__/model-registry.test.ts +25 -1
  69. package/src/core/ai/model-registry.ts +36 -4
  70. package/src/hooks/useDebounce.ts +2 -1
  71. package/src/theme/useTheme.ts +32 -2
package/dist/main.js CHANGED
@@ -1,4 +1,4 @@
1
- import { ed as a } from "./main-BJlH_VRR.js";
1
+ import { ed as a } from "./main-NdEnJ_fi.js";
2
2
  export {
3
3
  a as initialize
4
4
  };
@@ -1,7 +1,7 @@
1
1
  var __defProp = Object.defineProperty;
2
2
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
3
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
- import { aw as If, az as Pf, bg as Nf, bX as zf, bY as Wf, bc as qf, bZ as Hf, b_ as Yf, M as jf, b$ as In, b1 as Uf, c as Gf, G as Xf, W as Vf, T as Zf, L as Kf, j as Qf, __tla as __tla_0 } from "./main-BJlH_VRR.js";
4
+ import { aw as If, az as Pf, bg as Nf, bX as zf, bY as Wf, bc as qf, bZ as Hf, b_ as Yf, M as jf, b$ as In, b1 as Uf, c as Gf, G as Xf, W as Vf, T as Zf, L as Kf, j as Qf, __tla as __tla_0 } from "./main-NdEnJ_fi.js";
5
5
  import { T as Jf, D as tp, E as ep, y as rp, z as js, A as ip, B as Us, F as ap, G as np, H as sp, I as Go, J as Xo, K as Vo, L as Zo, M as Ko, N as Qo, O as op, P as Za, Q as Jo, S as lp, U as cp, V as tl, W as hp, X as up, Y as dp, Z as fp, _ as pp, k as vi, l as gp } from "./timer-BYwnU4DF.js";
6
6
  let Ll, zw, Ur, fe, Qp, Yg, cs, Ft, yl, rb, Qm, $1, No, sg, gr, Pw, ga, _l, zn, oo, eb, st, Fg, ii, W, J, Gx, p, Pg, WC, Ed, Zw, ty, vt, Pe, Jn, su, Qe, Fh, X, hh, mC, Gs, E1, Vw, Kw, Gw, G, Xw, f1, c1, l1, li, pC, fC, Sp, tS, Ig, ut, ht, Bl, Lt, zg, Me, Jt, sy, kr, D, $h, ai, Nw, Jw, Wg, Qw, Ng, qg, ae, Jm, nb, n1, Ww, Og;
7
7
  let __tla = Promise.all([
@@ -14847,7 +14847,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
14847
14847
  Dd([
14848
14848
  {
14849
14849
  name: "dagre",
14850
- loader: p(async () => await import("./dagre-2BBEFEWP-xqWhAOwX.js"), "loader")
14850
+ loader: p(async () => await import("./dagre-2BBEFEWP-D7hD6zFz.js"), "loader")
14851
14851
  }
14852
14852
  ]);
14853
14853
  }, "registerDefaultLayoutLoaders");
@@ -15287,7 +15287,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15287
15287
  return de(r = $n(e.children, i)) ? e.return = e.value + "{" + r + "}" : "";
15288
15288
  }
15289
15289
  var zd = "c4", Q1 = p((e) => /^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(e), "detector"), J1 = p(async () => {
15290
- const { diagram: e } = await import("./c4Diagram-AAMF2YG6-GpWgwDer.js");
15290
+ const { diagram: e } = await import("./c4Diagram-AAMF2YG6-BZ6BpwCG.js");
15291
15291
  return {
15292
15292
  id: zd,
15293
15293
  diagram: e
@@ -15300,7 +15300,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15300
15300
  var _a2, _b3;
15301
15301
  return ((_a2 = t == null ? void 0 : t.flowchart) == null ? void 0 : _a2.defaultRenderer) === "dagre-wrapper" || ((_b3 = t == null ? void 0 : t.flowchart) == null ? void 0 : _b3.defaultRenderer) === "elk" ? false : /^\s*graph/.test(e);
15302
15302
  }, "detector"), i2 = p(async () => {
15303
- const { diagram: e } = await import("./flowDiagram-THRYKUMA-IQml3pMT.js");
15303
+ const { diagram: e } = await import("./flowDiagram-THRYKUMA-BCGeXlJZ.js");
15304
15304
  return {
15305
15305
  id: Wd,
15306
15306
  diagram: e
@@ -15313,7 +15313,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15313
15313
  var _a2, _b3, _c3;
15314
15314
  return ((_a2 = t == null ? void 0 : t.flowchart) == null ? void 0 : _a2.defaultRenderer) === "dagre-d3" ? false : (((_b3 = t == null ? void 0 : t.flowchart) == null ? void 0 : _b3.defaultRenderer) === "elk" && (t.layout = "elk"), /^\s*graph/.test(e) && ((_c3 = t == null ? void 0 : t.flowchart) == null ? void 0 : _c3.defaultRenderer) === "dagre-wrapper" ? true : /^\s*flowchart/.test(e));
15315
15315
  }, "detector"), o2 = p(async () => {
15316
- const { diagram: e } = await import("./flowDiagram-THRYKUMA-IQml3pMT.js");
15316
+ const { diagram: e } = await import("./flowDiagram-THRYKUMA-BCGeXlJZ.js");
15317
15317
  return {
15318
15318
  id: qd,
15319
15319
  diagram: e
@@ -15323,7 +15323,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15323
15323
  detector: s2,
15324
15324
  loader: o2
15325
15325
  }, c2 = l2, Hd = "er", h2 = p((e) => /^\s*erDiagram/.test(e), "detector"), u2 = p(async () => {
15326
- const { diagram: e } = await import("./erDiagram-HZWUO2LU-Dt2ojoSZ.js");
15326
+ const { diagram: e } = await import("./erDiagram-HZWUO2LU-OXyLJcIi.js");
15327
15327
  return {
15328
15328
  id: Hd,
15329
15329
  diagram: e
@@ -15333,7 +15333,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15333
15333
  detector: h2,
15334
15334
  loader: u2
15335
15335
  }, f2 = d2, Yd = "gitGraph", p2 = p((e) => /^\s*gitGraph/.test(e), "detector"), g2 = p(async () => {
15336
- const { diagram: e } = await import("./gitGraphDiagram-OJR772UL-CJo0sZI3.js");
15336
+ const { diagram: e } = await import("./gitGraphDiagram-OJR772UL-DYAvxudD.js");
15337
15337
  return {
15338
15338
  id: Yd,
15339
15339
  diagram: e
@@ -15343,7 +15343,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15343
15343
  detector: p2,
15344
15344
  loader: g2
15345
15345
  }, y2 = m2, jd = "gantt", x2 = p((e) => /^\s*gantt/.test(e), "detector"), b2 = p(async () => {
15346
- const { diagram: e } = await import("./ganttDiagram-WV7ZQ7D5-C-J_Ioy4.js");
15346
+ const { diagram: e } = await import("./ganttDiagram-WV7ZQ7D5-Deb7MyGx.js");
15347
15347
  return {
15348
15348
  id: jd,
15349
15349
  diagram: e
@@ -15353,7 +15353,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15353
15353
  detector: x2,
15354
15354
  loader: b2
15355
15355
  }, k2 = C2, Ud = "info", w2 = p((e) => /^\s*info/.test(e), "detector"), S2 = p(async () => {
15356
- const { diagram: e } = await import("./infoDiagram-6WOFNB3A-CNMJ_KmZ.js");
15356
+ const { diagram: e } = await import("./infoDiagram-6WOFNB3A-BFVVCnQs.js");
15357
15357
  return {
15358
15358
  id: Ud,
15359
15359
  diagram: e
@@ -15363,7 +15363,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15363
15363
  detector: w2,
15364
15364
  loader: S2
15365
15365
  }, Gd = "pie", T2 = p((e) => /^\s*pie/.test(e), "detector"), _2 = p(async () => {
15366
- const { diagram: e } = await import("./pieDiagram-DBDJKBY4-mwkQJ031.js");
15366
+ const { diagram: e } = await import("./pieDiagram-DBDJKBY4-BBLmplr0.js");
15367
15367
  return {
15368
15368
  id: Gd,
15369
15369
  diagram: e
@@ -15373,7 +15373,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15373
15373
  detector: T2,
15374
15374
  loader: _2
15375
15375
  }, Xd = "quadrantChart", L2 = p((e) => /^\s*quadrantChart/.test(e), "detector"), A2 = p(async () => {
15376
- const { diagram: e } = await import("./quadrantDiagram-YPSRARAO-C-kOCCpT.js");
15376
+ const { diagram: e } = await import("./quadrantDiagram-YPSRARAO-ovTnKg_O.js");
15377
15377
  return {
15378
15378
  id: Xd,
15379
15379
  diagram: e
@@ -15383,7 +15383,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15383
15383
  detector: L2,
15384
15384
  loader: A2
15385
15385
  }, E2 = M2, Vd = "xychart", F2 = p((e) => /^\s*xychart(-beta)?/.test(e), "detector"), D2 = p(async () => {
15386
- const { diagram: e } = await import("./xychartDiagram-FDP5SA34-DDOfMbg9.js");
15386
+ const { diagram: e } = await import("./xychartDiagram-FDP5SA34-DH2ht05g.js");
15387
15387
  return {
15388
15388
  id: Vd,
15389
15389
  diagram: e
@@ -15393,7 +15393,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15393
15393
  detector: F2,
15394
15394
  loader: D2
15395
15395
  }, R2 = $2, Zd = "requirement", O2 = p((e) => /^\s*requirement(Diagram)?/.test(e), "detector"), I2 = p(async () => {
15396
- const { diagram: e } = await import("./requirementDiagram-EGVEC5DT-D47kEZFe.js");
15396
+ const { diagram: e } = await import("./requirementDiagram-EGVEC5DT-B85Mnq4Y.js");
15397
15397
  return {
15398
15398
  id: Zd,
15399
15399
  diagram: e
@@ -15403,7 +15403,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15403
15403
  detector: O2,
15404
15404
  loader: I2
15405
15405
  }, N2 = P2, Kd = "sequence", z2 = p((e) => /^\s*sequenceDiagram/.test(e), "detector"), W2 = p(async () => {
15406
- const { diagram: e } = await import("./sequenceDiagram-WFGC7UMF-BW6Prve2.js");
15406
+ const { diagram: e } = await import("./sequenceDiagram-WFGC7UMF-DBt0lGIP.js");
15407
15407
  return {
15408
15408
  id: Kd,
15409
15409
  diagram: e
@@ -15416,7 +15416,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15416
15416
  var _a2;
15417
15417
  return ((_a2 = t == null ? void 0 : t.class) == null ? void 0 : _a2.defaultRenderer) === "dagre-wrapper" ? false : /^\s*classDiagram/.test(e);
15418
15418
  }, "detector"), j2 = p(async () => {
15419
- const { diagram: e } = await import("./classDiagram-3BZAVTQC-DAN9ViBq.js");
15419
+ const { diagram: e } = await import("./classDiagram-3BZAVTQC-DA1CNfTN.js");
15420
15420
  return {
15421
15421
  id: Qd,
15422
15422
  diagram: e
@@ -15429,7 +15429,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15429
15429
  var _a2;
15430
15430
  return /^\s*classDiagram/.test(e) && ((_a2 = t == null ? void 0 : t.class) == null ? void 0 : _a2.defaultRenderer) === "dagre-wrapper" ? true : /^\s*classDiagram-v2/.test(e);
15431
15431
  }, "detector"), V2 = p(async () => {
15432
- const { diagram: e } = await import("./classDiagram-v2-QTMF73CY-DAN9ViBq.js");
15432
+ const { diagram: e } = await import("./classDiagram-v2-QTMF73CY-DA1CNfTN.js");
15433
15433
  return {
15434
15434
  id: Jd,
15435
15435
  diagram: e
@@ -15442,7 +15442,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15442
15442
  var _a2;
15443
15443
  return ((_a2 = t == null ? void 0 : t.state) == null ? void 0 : _a2.defaultRenderer) === "dagre-wrapper" ? false : /^\s*stateDiagram/.test(e);
15444
15444
  }, "detector"), J2 = p(async () => {
15445
- const { diagram: e } = await import("./stateDiagram-UUKSUZ4H-Osdm_WRG.js");
15445
+ const { diagram: e } = await import("./stateDiagram-UUKSUZ4H-12XrJJTs.js");
15446
15446
  return {
15447
15447
  id: tf,
15448
15448
  diagram: e
@@ -15455,7 +15455,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15455
15455
  var _a2;
15456
15456
  return !!(/^\s*stateDiagram-v2/.test(e) || /^\s*stateDiagram/.test(e) && ((_a2 = t == null ? void 0 : t.state) == null ? void 0 : _a2.defaultRenderer) === "dagre-wrapper");
15457
15457
  }, "detector"), ik = p(async () => {
15458
- const { diagram: e } = await import("./stateDiagram-v2-EYPG3UTE-D40y9yt_.js");
15458
+ const { diagram: e } = await import("./stateDiagram-v2-EYPG3UTE-BVZxjqEt.js");
15459
15459
  return {
15460
15460
  id: ef,
15461
15461
  diagram: e
@@ -15465,7 +15465,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15465
15465
  detector: rk,
15466
15466
  loader: ik
15467
15467
  }, nk = ak, rf = "journey", sk = p((e) => /^\s*journey/.test(e), "detector"), ok = p(async () => {
15468
- const { diagram: e } = await import("./journeyDiagram-FFXJYRFH-Cxe32wHk.js");
15468
+ const { diagram: e } = await import("./journeyDiagram-FFXJYRFH-CZb6jNMF.js");
15469
15469
  return {
15470
15470
  id: rf,
15471
15471
  diagram: e
@@ -15492,7 +15492,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15492
15492
  var _a2;
15493
15493
  return /^\s*flowchart-elk/.test(e) || /^\s*(flowchart|graph)/.test(e) && ((_a2 = t == null ? void 0 : t.flowchart) == null ? void 0 : _a2.defaultRenderer) === "elk" ? (t.layout = "elk", true) : false;
15494
15494
  }, "detector"), gk = p(async () => {
15495
- const { diagram: e } = await import("./flowDiagram-THRYKUMA-IQml3pMT.js");
15495
+ const { diagram: e } = await import("./flowDiagram-THRYKUMA-BCGeXlJZ.js");
15496
15496
  return {
15497
15497
  id: nf,
15498
15498
  diagram: e
@@ -15502,7 +15502,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15502
15502
  detector: pk,
15503
15503
  loader: gk
15504
15504
  }, yk = mk, sf = "timeline", xk = p((e) => /^\s*timeline/.test(e), "detector"), bk = p(async () => {
15505
- const { diagram: e } = await import("./timeline-definition-3HZDQTIS-BQfnpN0w.js");
15505
+ const { diagram: e } = await import("./timeline-definition-3HZDQTIS-BnrAoLRd.js");
15506
15506
  return {
15507
15507
  id: sf,
15508
15508
  diagram: e
@@ -15512,7 +15512,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15512
15512
  detector: xk,
15513
15513
  loader: bk
15514
15514
  }, kk = Ck, of = "mindmap", wk = p((e) => /^\s*mindmap/.test(e), "detector"), Sk = p(async () => {
15515
- const { diagram: e } = await import("./mindmap-definition-LNHGMQRG-xpXrJUFO.js");
15515
+ const { diagram: e } = await import("./mindmap-definition-LNHGMQRG-Cs9y7jjO.js");
15516
15516
  return {
15517
15517
  id: of,
15518
15518
  diagram: e
@@ -15522,7 +15522,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15522
15522
  detector: wk,
15523
15523
  loader: Sk
15524
15524
  }, Tk = vk, lf = "kanban", _k = p((e) => /^\s*kanban/.test(e), "detector"), Bk = p(async () => {
15525
- const { diagram: e } = await import("./kanban-definition-KOZQBZVT-DXh79uJw.js");
15525
+ const { diagram: e } = await import("./kanban-definition-KOZQBZVT-B4wgSIZW.js");
15526
15526
  return {
15527
15527
  id: lf,
15528
15528
  diagram: e
@@ -15532,7 +15532,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15532
15532
  detector: _k,
15533
15533
  loader: Bk
15534
15534
  }, Ak = Lk, cf = "sankey", Mk = p((e) => /^\s*sankey(-beta)?/.test(e), "detector"), Ek = p(async () => {
15535
- const { diagram: e } = await import("./sankeyDiagram-HRAUVNP4-JUL3Wtvg.js");
15535
+ const { diagram: e } = await import("./sankeyDiagram-HRAUVNP4-C9fhgspa.js");
15536
15536
  return {
15537
15537
  id: cf,
15538
15538
  diagram: e
@@ -15542,7 +15542,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15542
15542
  detector: Mk,
15543
15543
  loader: Ek
15544
15544
  }, Dk = Fk, hf = "packet", $k = p((e) => /^\s*packet(-beta)?/.test(e), "detector"), Rk = p(async () => {
15545
- const { diagram: e } = await import("./diagram-GUPCWM2R-BE4FgVlH.js");
15545
+ const { diagram: e } = await import("./diagram-GUPCWM2R-CSoWq-R3.js");
15546
15546
  return {
15547
15547
  id: hf,
15548
15548
  diagram: e
@@ -15552,7 +15552,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15552
15552
  detector: $k,
15553
15553
  loader: Rk
15554
15554
  }, uf = "radar", Ik = p((e) => /^\s*radar-beta/.test(e), "detector"), Pk = p(async () => {
15555
- const { diagram: e } = await import("./diagram-RP2FKANI--sCO4u3q.js");
15555
+ const { diagram: e } = await import("./diagram-RP2FKANI-CCVjXff7.js");
15556
15556
  return {
15557
15557
  id: uf,
15558
15558
  diagram: e
@@ -15562,7 +15562,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15562
15562
  detector: Ik,
15563
15563
  loader: Pk
15564
15564
  }, df = "block", zk = p((e) => /^\s*block(-beta)?/.test(e), "detector"), Wk = p(async () => {
15565
- const { diagram: e } = await import("./blockDiagram-ZYB65J3Q-BcU1n2iO.js");
15565
+ const { diagram: e } = await import("./blockDiagram-ZYB65J3Q-xMqbeLTR.js");
15566
15566
  return {
15567
15567
  id: df,
15568
15568
  diagram: e
@@ -15572,7 +15572,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15572
15572
  detector: zk,
15573
15573
  loader: Wk
15574
15574
  }, Hk = qk, ff = "architecture", Yk = p((e) => /^\s*architecture/.test(e), "detector"), jk = p(async () => {
15575
- const { diagram: e } = await import("./architectureDiagram-KFL7JDKH-B64atv5Y.js");
15575
+ const { diagram: e } = await import("./architectureDiagram-KFL7JDKH-BXLgpQKr.js");
15576
15576
  return {
15577
15577
  id: ff,
15578
15578
  diagram: e
@@ -15582,7 +15582,7 @@ res:`, q.polygon(t, h, d)), q.polygon(t, h, d);
15582
15582
  detector: Yk,
15583
15583
  loader: jk
15584
15584
  }, Gk = Uk, pf = "treemap", Xk = p((e) => /^\s*treemap/.test(e), "detector"), Vk = p(async () => {
15585
- const { diagram: e } = await import("./diagram-4IRLE6MV-BsPghxii.js");
15585
+ const { diagram: e } = await import("./diagram-4IRLE6MV-Cnw6omX9.js");
15586
15586
  return {
15587
15587
  id: pf,
15588
15588
  diagram: e
@@ -1,5 +1,5 @@
1
- import { y as b, at as x, au as m, av as w, aw as l, F as O, ax as p, ay as P, az as y, aA as A, aB as I, aC as M } from "./main-BJlH_VRR.js";
2
- import { d as h, e as o, g as F } from "./_baseUniq-BmVMVzZE.js";
1
+ import { y as b, at as x, au as m, av as w, aw as l, F as O, ax as p, ay as P, az as y, aA as A, aB as I, aC as M } from "./main-NdEnJ_fi.js";
2
+ import { d as h, e as o, g as F } from "./_baseUniq-CxYX_R71.js";
3
3
  var g = Object.prototype, C = g.hasOwnProperty, J = b(function(a, n) {
4
4
  a = Object(a);
5
5
  var r = -1, i = n.length, t = i > 2 ? n[2] : void 0;
@@ -1,7 +1,7 @@
1
1
  var _a;
2
- import { _, l as Q, c as nt, K as yt, V as Et, H as rt, i as q, W as Lt, X as Tt, Y as Nt, d as mt, a5 as Dt, P as Ot } from "./mermaid-Cj6wxDDk.js";
2
+ import { _, l as Q, c as nt, K as yt, V as Et, H as rt, i as q, W as Lt, X as Tt, Y as Nt, d as mt, a5 as Dt, P as Ot } from "./mermaid-BSb9r769.js";
3
3
  import { c as ut } from "./cytoscape.esm-BYnVVhJX.js";
4
- import { M as At } from "./main-BJlH_VRR.js";
4
+ import { M as At } from "./main-NdEnJ_fi.js";
5
5
  var J = { exports: {} }, tt = { exports: {} }, et = { exports: {} }, It = et.exports, lt;
6
6
  function Ct() {
7
7
  return lt || (lt = 1, function(I, w) {
@@ -1,5 +1,5 @@
1
- import { J as X, G as T } from "./main-BJlH_VRR.js";
2
- import { s as Te } from "./glide-data-editor-BXfrxuUr.js";
1
+ import { J as X, G as T } from "./main-NdEnJ_fi.js";
2
+ import { s as Te } from "./glide-data-editor-CyEbjYi7.js";
3
3
  const Be = /* @__PURE__ */ Te("div")({
4
4
  name: "NumberOverlayEditorStyle",
5
5
  class: "gdg-n15fjm3e",
@@ -1,6 +1,6 @@
1
- import { p as j } from "./chunk-ANTBXLJU-BzsT3ug_.js";
2
- import { _ as p, g as q, s as H, a as K, b as Z, t as J, q as Q, l as F, c as X, F as Y, K as ee, P as te, e as ae, z as re, H as ne } from "./mermaid-Cj6wxDDk.js";
3
- import { p as ie } from "./treemap-75Q7IDZK-CcnyCtCM.js";
1
+ import { p as j } from "./chunk-ANTBXLJU-D-kL51ap.js";
2
+ import { _ as p, g as q, s as H, a as K, b as Z, t as J, q as Q, l as F, c as X, F as Y, K as ee, P as te, e as ae, z as re, H as ne } from "./mermaid-BSb9r769.js";
3
+ import { p as ie } from "./treemap-75Q7IDZK-EdX0hGdW.js";
4
4
  import { d as I } from "./arc-BXrety1g.js";
5
5
  import { o as se } from "./ordinal-CYN5qNoq.js";
6
6
  import { a as S, t as z, n as le } from "./timer-BYwnU4DF.js";
@@ -1,6 +1,6 @@
1
1
  var _a, _b;
2
- import { _ as r, s as be, g as Se, t as te, q as _e, a as Ae, b as ke, c as Et, l as qt, d as vt, e as Fe, z as Pe, H as D, M as ve, i as Ce } from "./mermaid-Cj6wxDDk.js";
3
- import { l as $t } from "./linear-CkK536gu.js";
2
+ import { _ as r, s as be, g as Se, t as te, q as _e, a as Ae, b as ke, c as Et, l as qt, d as vt, e as Fe, z as Pe, H as D, M as ve, i as Ce } from "./mermaid-BSb9r769.js";
3
+ import { l as $t } from "./linear-DyVU55j1.js";
4
4
  var Ct = function() {
5
5
  var t = /* @__PURE__ */ r(function(M, s, l, u) {
6
6
  for (l = l || {}, u = M.length; u--; l[M[u]] = s) ;
@@ -1,4 +1,4 @@
1
- import { O as Xg, P as Yg, M as Kg } from "./main-BJlH_VRR.js";
1
+ import { O as Xg, P as Yg, M as Kg } from "./main-NdEnJ_fi.js";
2
2
  function Jg(Jf, Oh) {
3
3
  for (var Qf = 0; Qf < Oh.length; Qf++) {
4
4
  const bs = Oh[Qf];
@@ -1,7 +1,7 @@
1
1
  var _a;
2
- import { g as je } from "./chunk-WVR4S24B-BPaHu-B3.js";
3
- import { s as ze } from "./chunk-NRVI72HA-DxZ71xfE.js";
4
- import { _ as o, b as Ge, a as Xe, s as Je, g as Ze, q as et, t as tt, c as ke, l as Ne, z as st, D as it, p as rt, r as nt, u as at } from "./mermaid-Cj6wxDDk.js";
2
+ import { g as je } from "./chunk-WVR4S24B-D7c7uzE_.js";
3
+ import { s as ze } from "./chunk-NRVI72HA-DnDahTmt.js";
4
+ import { _ as o, b as Ge, a as Xe, s as Je, g as Ze, q as et, t as tt, c as ke, l as Ne, z as st, D as it, p as rt, r as nt, u as at } from "./mermaid-BSb9r769.js";
5
5
  var qe = function() {
6
6
  var e = /* @__PURE__ */ o(function(P, i, a, c) {
7
7
  for (a = a || {}, c = P.length; c--; a[P[c]] = i) ;
@@ -1,5 +1,5 @@
1
1
  var _a, _b, _c;
2
- import { _ as g, q as mt, t as kt, s as _t, g as xt, b as vt, a as bt, c as ot, A as St, d as G, V as wt, z as Lt, k as Et } from "./mermaid-Cj6wxDDk.js";
2
+ import { _ as g, q as mt, t as kt, s as _t, g as xt, b as vt, a as bt, c as ot, A as St, d as G, V as wt, z as Lt, k as Et } from "./mermaid-BSb9r769.js";
3
3
  import { o as At } from "./ordinal-CYN5qNoq.js";
4
4
  import { c as Tt } from "./colors-BD7LS4qt.js";
5
5
  const Mt = Tt("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab");
@@ -1,7 +1,7 @@
1
1
  var _a;
2
- import { a as fe, b as Vt, g as Pt, d as xe, c as Te, e as ye } from "./chunk-OMD6QJNC-BPgmx-CD.js";
3
- import { I as Ee } from "./chunk-FHKO5MBM-BjYukDH0.js";
4
- import { _ as u, o as be, c as $, d as It, l as G, j as Jt, e as me, f as we, k as v, b as Kt, s as ve, q as Ie, a as Le, g as _e, t as Pe, z as Ae, i as Lt, u as Y, N as ot, O as Et, P as Zt, Z as ke, Q as Ne, R as Qt, G as Dt } from "./mermaid-Cj6wxDDk.js";
2
+ import { a as fe, b as Vt, g as Pt, d as xe, c as Te, e as ye } from "./chunk-OMD6QJNC-BunYJe1x.js";
3
+ import { I as Ee } from "./chunk-FHKO5MBM--SvQW9-E.js";
4
+ import { _ as u, o as be, c as $, d as It, l as G, j as Jt, e as me, f as we, k as v, b as Kt, s as ve, q as Ie, a as Le, g as _e, t as Pe, z as Ae, i as Lt, u as Y, N as ot, O as Et, P as Zt, Z as ke, Q as Ne, R as Qt, G as Dt } from "./mermaid-BSb9r769.js";
5
5
  var Ct = function() {
6
6
  var t = /* @__PURE__ */ u(function(ht, w, I, P) {
7
7
  for (I = I || {}, P = ht.length; P--; I[ht[P]] = w) ;
@@ -1,4 +1,4 @@
1
- import { G as R, J as V, c as bt, aR as xt, aS as Ke, j as ge, aT as yt } from "./main-BJlH_VRR.js";
1
+ import { G as R, J as V, c as bt, aR as xt, aS as Ke, j as ge, aT as yt } from "./main-NdEnJ_fi.js";
2
2
  function Ze(t) {
3
3
  return t !== null && typeof t == "object" && "constructor" in t && t.constructor === Object;
4
4
  }
@@ -1,7 +1,7 @@
1
- import { s as R, a as W, S as N } from "./chunk-LXBSTHXV-DWmi5NpT.js";
2
- import { _ as f, c as t, d as H, l as S, e as P, k as z, Q as _, u as U } from "./mermaid-Cj6wxDDk.js";
3
- import { G as C } from "./graph-BJ4Yb9Kk.js";
4
- import { l as F } from "./layout-C6naMcMM.js";
1
+ import { s as R, a as W, S as N } from "./chunk-LXBSTHXV-DA4pVkNa.js";
2
+ import { _ as f, c as t, d as H, l as S, e as P, k as z, Q as _, u as U } from "./mermaid-BSb9r769.js";
3
+ import { G as C } from "./graph-CpLMniAD.js";
4
+ import { l as F } from "./layout-Cpbk5_jl.js";
5
5
  import { l as O, k as J } from "./timer-BYwnU4DF.js";
6
6
  var X = /* @__PURE__ */ f((e) => e.append("circle").attr("class", "start-state").attr("r", t().state.sizeUnit).attr("cx", t().state.padding + t().state.sizeUnit).attr("cy", t().state.padding + t().state.sizeUnit), "drawStartState"), D = /* @__PURE__ */ f((e) => e.append("line").style("stroke", "grey").style("stroke-dasharray", "3").attr("x1", t().state.textHeight).attr("class", "divider").attr("x2", t().state.textHeight * 2).attr("y1", 0).attr("y2", 0), "drawDivider"), Y = /* @__PURE__ */ f((e, i) => {
7
7
  const d = e.append("text").attr("x", 2 * t().state.padding).attr("y", t().state.textHeight + 2 * t().state.padding).attr("font-size", t().state.fontSize).attr("class", "state-title").text(i.id), c = d.node().getBBox();
@@ -1,5 +1,5 @@
1
- import { s as a, b as t, a as r, S as s } from "./chunk-LXBSTHXV-DWmi5NpT.js";
2
- import { _ as i } from "./mermaid-Cj6wxDDk.js";
1
+ import { s as a, b as t, a as r, S as s } from "./chunk-LXBSTHXV-DA4pVkNa.js";
2
+ import { _ as i } from "./mermaid-BSb9r769.js";
3
3
  var _ = {
4
4
  parser: r,
5
5
  get db() {
@@ -1,7 +1,7 @@
1
1
  import { R as P, r as ln, o as W, q as j, C as A, u as D, v as fn } from "./timer-BYwnU4DF.js";
2
- import { c as on, a as hn } from "./linear-CkK536gu.js";
2
+ import { c as on, a as hn } from "./linear-DyVU55j1.js";
3
3
  import { i as bn } from "./init-DxzjmxYy.js";
4
- import { a5 as gn, a6 as d, a7 as v, a8 as k, a9 as x, aa as F, ab as yn, ac as L, ad as S, ae as R, af as pn, ag as B, ah as K, ai as X, aj as Z, ak as $, al as E, am as mn, an as wn, ao as Mn, ap as dn, aq as vn, ar as kn, as as xn } from "./main-BJlH_VRR.js";
4
+ import { a5 as gn, a6 as d, a7 as v, a8 as k, a9 as x, aa as F, ab as yn, ac as L, ad as S, ae as R, af as pn, ag as B, ah as K, ai as X, aj as Z, ak as $, al as E, am as mn, an as wn, ao as Mn, ap as dn, aq as vn, ar as kn, as as xn } from "./main-NdEnJ_fi.js";
5
5
  function Wn(n, t) {
6
6
  let i;
7
7
  if (t === void 0)
@@ -1,4 +1,4 @@
1
- import { _ as s, c as xt, l as E, d as j, V as kt, W as vt, X as _t, Y as bt, D as wt, $ as St, z as Et } from "./mermaid-Cj6wxDDk.js";
1
+ import { _ as s, c as xt, l as E, d as j, V as kt, W as vt, X as _t, Y as bt, D as wt, $ as St, z as Et } from "./mermaid-BSb9r769.js";
2
2
  import { d as nt } from "./arc-BXrety1g.js";
3
3
  var Q = function() {
4
4
  var n = /* @__PURE__ */ s(function(x, r, a, c) {
@@ -2,11 +2,11 @@ var __defProp = Object.defineProperty;
2
2
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
3
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
4
  var _a2, _b, _c2, _d2, _e, _f2, _g, _h2, _i2, _j, _k, _l2, _m2, _n2, _o2, _p2, _q;
5
- import { e6 as Kl, bZ as Vl, aw as Ma, b2 as Hl, F as _t, aZ as Wl, az as Q, bv as jl, bw as zl, y as ql, A as Ni, z as Da, ax as Qs, e7 as Fa, aV as Yl, bb as Ga, e8 as Ua, aX as Xl, bd as wi, ay as Jl, e9 as Zl, br as Ql, ea as eu, a_ as Ie, D as vt, aC as _i, be as tu, eb as H, ec as Re } from "./main-BJlH_VRR.js";
6
- import { g as ei, d as bt, k as nu, v as W, l as Ba, m as ru, n as su, a as Ka, c as x, i as qe, r as ae, f as ke, o as z } from "./_baseUniq-BmVMVzZE.js";
7
- import { m as k, f as Lt, h as I, e as ti, l as Ot, d as iu } from "./min-CGY4l-iQ.js";
8
- import { ad as P } from "./mermaid-Cj6wxDDk.js";
9
- import { c as te } from "./clone-BZA_o20_.js";
5
+ import { e6 as Kl, bZ as Vl, aw as Ma, b2 as Hl, F as _t, aZ as Wl, az as Q, bv as jl, bw as zl, y as ql, A as Ni, z as Da, ax as Qs, e7 as Fa, aV as Yl, bb as Ga, e8 as Ua, aX as Xl, bd as wi, ay as Jl, e9 as Zl, br as Ql, ea as eu, a_ as Ie, D as vt, aC as _i, be as tu, eb as H, ec as Re } from "./main-NdEnJ_fi.js";
6
+ import { g as ei, d as bt, k as nu, v as W, l as Ba, m as ru, n as su, a as Ka, c as x, i as qe, r as ae, f as ke, o as z } from "./_baseUniq-CxYX_R71.js";
7
+ import { m as k, f as Lt, h as I, e as ti, l as Ot, d as iu } from "./min-VdzZBdCP.js";
8
+ import { ad as P } from "./mermaid-BSb9r769.js";
9
+ import { c as te } from "./clone-DaiZzrim.js";
10
10
  var au = Object.prototype, ou = au.hasOwnProperty, Ee = Kl(function(n, e) {
11
11
  if (Vl(e) || Ma(e)) {
12
12
  Hl(e, _t(e), n);
@@ -1,5 +1,5 @@
1
- import { Q as I, S as H, c as K, T as z, U as R, V as G, j as d, E as W, W as $, G as k, X as j, Y as M, Z as U, L as x, _ as O, $ as B, a0 as Q, a1 as Y, a2 as q, a3 as X, a4 as J } from "./main-BJlH_VRR.js";
2
- import { M as m, V as ee } from "./index-C6E9Q4AW.js";
1
+ import { Q as I, S as H, c as K, T as z, U as R, V as G, j as d, E as W, W as $, G as k, X as j, Y as M, Z as U, L as x, _ as O, $ as B, a0 as Q, a1 as Y, a2 as q, a3 as X, a4 as J } from "./main-NdEnJ_fi.js";
2
+ import { M as m, V as ee } from "./index-C9HxACgt.js";
3
3
  function te(e) {
4
4
  return e.data && "url" in e.data && (e.data.url = I(e.data.url).href), e;
5
5
  }
@@ -1,9 +1,9 @@
1
1
  var _a, _b, _c, _d, _e, _f, _g, _h, _i2, _j;
2
- import { _ as a, s as ei, g as si, t as Lt, q as ni, a as ai, b as oi, l as Et, K as ri, e as hi, z as li, G as xt, F as It, H as ci, M as ui, i as gi, ac as xi } from "./mermaid-Cj6wxDDk.js";
2
+ import { _ as a, s as ei, g as si, t as Lt, q as ni, a as ai, b as oi, l as Et, K as ri, e as hi, z as li, G as xt, F as It, H as ci, M as ui, i as gi, ac as xi } from "./mermaid-BSb9r769.js";
3
3
  import { i as di } from "./init-DxzjmxYy.js";
4
4
  import { o as fi } from "./ordinal-CYN5qNoq.js";
5
5
  import { r as pi } from "./range-DdOGybNB.js";
6
- import { l as Tt } from "./linear-CkK536gu.js";
6
+ import { l as Tt } from "./linear-DyVU55j1.js";
7
7
  import { l as Dt } from "./timer-BYwnU4DF.js";
8
8
  function ht() {
9
9
  var t = fi().unknown(void 0), i = t.domain, e = t.range, s = 0, n = 1, d, g, m = false, S = 0, D = 0, v = 0.5;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marimo-team/islands",
3
- "version": "0.15.1-dev21",
3
+ "version": "0.15.1-dev24",
4
4
  "main": "dist/main.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "type": "module",
@@ -31,6 +31,7 @@ import {
31
31
  } from "../ui/dropdown-menu";
32
32
  import { Tooltip } from "../ui/tooltip";
33
33
  import { AiProviderIcon } from "./ai-provider-icon";
34
+ import { getCurrentRoleTooltip, getTagColour } from "./display-helpers";
34
35
 
35
36
  interface AIModelDropdownProps {
36
37
  value?: string;
@@ -104,7 +105,7 @@ export const AIModelDropdown = ({
104
105
  </div>
105
106
 
106
107
  <div className="ml-auto flex gap-1">
107
- <Tooltip content={getTagTooltip(role)}>
108
+ <Tooltip content={getCurrentRoleTooltip(role)}>
108
109
  <span
109
110
  key={role}
110
111
  className={`text-xs px-1.5 py-0.5 rounded font-medium ${getTagColour(role)}`}
@@ -248,8 +249,7 @@ const ProviderDropdownContent = ({
248
249
  </>
249
250
  )}
250
251
  {models.map((model) => {
251
- const qualifiedModelId =
252
- `${provider}/${model.model}` as QualifiedModelId;
252
+ const qualifiedModelId: QualifiedModelId = `${provider}/${model.model}`;
253
253
  return (
254
254
  <DropdownMenuSub key={qualifiedModelId}>
255
255
  <DropdownMenuSubTrigger showChevron={false} className="py-2">
@@ -309,7 +309,7 @@ const AiModelDropdownItem = ({
309
309
  );
310
310
  };
311
311
 
312
- const AiModelInfoDisplay = ({
312
+ export const AiModelInfoDisplay = ({
313
313
  model,
314
314
  provider,
315
315
  }: {
@@ -339,7 +339,7 @@ const AiModelInfoDisplay = ({
339
339
  <span
340
340
  key={role}
341
341
  className={`px-2 py-1 text-xs rounded-md font-medium ${getTagColour(role)}`}
342
- title={getTagTooltip(role)}
342
+ title={getCurrentRoleTooltip(role)}
343
343
  >
344
344
  {role}
345
345
  </span>
@@ -374,32 +374,3 @@ function getProviderLabel(provider: ProviderId): string {
374
374
  }
375
375
  return capitalize(provider);
376
376
  }
377
-
378
- function getTagColour(role: Role | "thinking"): string {
379
- switch (role) {
380
- case "chat":
381
- return "bg-[var(--purple-3)] text-[var(--purple-11)]";
382
- case "autocomplete":
383
- return "bg-[var(--green-3)] text-[var(--green-11)]";
384
- case "edit":
385
- return "bg-[var(--blue-3)] text-[var(--blue-11)]";
386
- case "thinking":
387
- return "bg-[var(--purple-4)] text-[var(--purple-12)]";
388
- }
389
- return "bg-[var(--mauve-3)] text-[var(--mauve-11)]";
390
- }
391
-
392
- function getTagTooltip(role: Role): string {
393
- switch (role) {
394
- case "chat":
395
- return "Current model used for chat conversations";
396
- case "autocomplete":
397
- return "Current model used for autocomplete autocomplete";
398
- case "edit":
399
- return "Current model used for code edits";
400
- case "rerank":
401
- return "Current model used for reranking completions";
402
- case "embed":
403
- return "Current model used for embedding";
404
- }
405
- }
@@ -0,0 +1,32 @@
1
+ /* Copyright 2024 Marimo. All rights reserved. */
2
+
3
+ import type { Role } from "@marimo-team/llm-info";
4
+
5
+ export function getTagColour(role: Role | "thinking"): string {
6
+ switch (role) {
7
+ case "chat":
8
+ return "bg-[var(--purple-3)] text-[var(--purple-11)]";
9
+ case "autocomplete":
10
+ return "bg-[var(--green-3)] text-[var(--green-11)]";
11
+ case "edit":
12
+ return "bg-[var(--blue-3)] text-[var(--blue-11)]";
13
+ case "thinking":
14
+ return "bg-[var(--purple-4)] text-[var(--purple-12)]";
15
+ }
16
+ return "bg-[var(--mauve-3)] text-[var(--mauve-11)]";
17
+ }
18
+
19
+ export function getCurrentRoleTooltip(role: Role): string {
20
+ switch (role) {
21
+ case "chat":
22
+ return "Current model used for chat conversations";
23
+ case "autocomplete":
24
+ return "Current model used for autocomplete autocomplete";
25
+ case "edit":
26
+ return "Current model used for code edits";
27
+ case "rerank":
28
+ return "Current model used for reranking completions";
29
+ case "embed":
30
+ return "Current model used for embedding";
31
+ }
32
+ }