@mechane-ai/elements 0.10.0 → 0.12.0

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 (66) hide show
  1. package/README.md +8 -4
  2. package/dist/ai.js +56 -41
  3. package/dist/{categorical-values-DLRE4EEW.js → categorical-values-CTrHn9jH.js} +2 -2
  4. package/dist/{chart-frame-et6f6Vhg.js → chart-frame-38ES6kwK.js} +4 -4
  5. package/dist/{chart-input-CdLkFomi.js → chart-input-C9fu7f1Q.js} +2 -2
  6. package/dist/charts/cartesian.js +6 -6
  7. package/dist/charts/distribution.js +2 -2
  8. package/dist/charts/graph.js +3 -3
  9. package/dist/charts/hierarchy.js +3 -3
  10. package/dist/charts/matrix.js +2 -2
  11. package/dist/charts/timeline.js +17 -16
  12. package/dist/charts.js +1 -1
  13. package/dist/{code-block-D77maJBB.js → code-block-BjV2EFZS.js} +2 -2
  14. package/dist/collections.js +376 -291
  15. package/dist/content/code.js +1 -1
  16. package/dist/content/diff.js +3 -3
  17. package/dist/content/link.js +1 -1
  18. package/dist/content/markdown.js +2 -2
  19. package/dist/content/tree.js +2 -2
  20. package/dist/{content-link-BpSZeTNK.js → content-link-C460m-O7.js} +1 -1
  21. package/dist/content.js +3 -4
  22. package/dist/elements.css +251 -128
  23. package/dist/feedback.js +1 -1
  24. package/dist/forms/dates.js +22 -23
  25. package/dist/forms.js +1 -1
  26. package/dist/index.js +1 -1
  27. package/dist/layout.js +223 -237
  28. package/dist/navigation/commands.js +3 -3
  29. package/dist/overlays.js +1 -1
  30. package/dist/packages/ai/src/conversation.d.ts +14 -2
  31. package/dist/packages/ai/src/index.d.ts +1 -1
  32. package/dist/packages/charts/src/timeline/waterfall.d.ts +3 -2
  33. package/dist/packages/collections/src/collection-controls.d.ts +1 -1
  34. package/dist/packages/collections/src/data-table.d.ts +5 -4
  35. package/dist/packages/collections/src/index.d.ts +2 -1
  36. package/dist/packages/collections/src/inspector.d.ts +6 -3
  37. package/dist/packages/core/src/actions.d.ts +5 -8
  38. package/dist/packages/core/src/agent-avatar-glyphs.d.ts +1 -1
  39. package/dist/packages/feedback/src/control-placeholders.d.ts +16 -0
  40. package/dist/packages/feedback/src/index.d.ts +2 -0
  41. package/dist/packages/forms/src/field-styles.d.ts +2 -74
  42. package/dist/packages/forms/src/form-actions.d.ts +11 -0
  43. package/dist/packages/forms/src/form-controls.d.ts +1 -1
  44. package/dist/packages/forms/src/forms.d.ts +3 -3
  45. package/dist/packages/forms/src/index.d.ts +2 -0
  46. package/dist/packages/forms/src/select.d.ts +2 -2
  47. package/dist/packages/forms/src/selection-styles.d.ts +0 -13
  48. package/dist/packages/foundations/src/control-styles.d.ts +101 -0
  49. package/dist/packages/foundations/src/style-composition.d.ts +0 -2
  50. package/dist/packages/foundations/src/tokens.stylex.d.ts +8 -2
  51. package/dist/packages/layout/src/frame.stylex.d.ts +0 -1
  52. package/dist/packages/layout/src/index.d.ts +2 -0
  53. package/dist/packages/layout/src/page-content.d.ts +5 -0
  54. package/dist/packages/layout/src/page-toolbar.d.ts +1 -1
  55. package/dist/packages/layout/src/sidebar.d.ts +3 -3
  56. package/dist/{pierre-diff--zsiHCCB.js → pierre-diff-sUAU-xeL.js} +1 -1
  57. package/dist/{pierre-theme-D9hnHv3Z.js → pierre-theme-CBAncKdH.js} +1 -1
  58. package/dist/{pierre-tree-BFxEuxwb.js → pierre-tree-DKN2eGlZ.js} +3 -3
  59. package/dist/{src-sU9b0oZW.js → src-3gzujMhN.js} +861 -319
  60. package/dist/{src-CBspCKfO.js → src-CI6KtN2w.js} +366 -307
  61. package/dist/{src-Cs0dRc4X.js → src-CVlgjAlw.js} +1 -1
  62. package/dist/src-DOzle5d4.js +1199 -0
  63. package/dist/tokens.js +38 -32
  64. package/package.json +1 -1
  65. package/packages/foundations/src/tokens.stylex.ts +61 -53
  66. package/dist/src-Be7NLG8c.js +0 -1242
package/README.md CHANGED
@@ -104,8 +104,10 @@ which view is active and when to unmount it; use this for a draft or reading pos
104
104
  `WorkbenchScroll` requires an accessible `label`; its `flush` mode leaves list insets to the table. Its
105
105
  `scrollRestorationId` identifies the actual scroll region for application-owned restoration.
106
106
 
107
- `DataTable` uses 48px rows by default and truncates text to preserve stable column and virtualization geometry. Set
108
- `rowSizing="content"` for records that need multiline cells; virtualization then measures those rows. Long content
107
+ Each `DataTable` column declares a role: `primary`, `text`, `status`, `number`, `timestamp`, or `actions`. Roles own
108
+ alignment and minimum sizing; the primary column uses available space. Headers and placeholders follow the same
109
+ geometry. The table uses 48px rows by default and truncates text to preserve stable column and virtualization geometry.
110
+ Set `rowSizing="content"` for records that need multiline cells; virtualization then measures those rows. Long content
109
111
  belongs in a detail view or a deliberately content-sized row, not behind a clipped control. Use `DataTableText` for a
110
112
  primary string and optional secondary string inside one cell; both text elements own their ellipsis. Arbitrary nested
111
113
  layouts do not inherit text truncation. Give dates and numeric values sufficient column width or explicit content
@@ -125,8 +127,10 @@ acknowledgement, and draft retention.
125
127
  record and store named choices rather than catalog indexes. Identity palettes remain separate from status colors.
126
128
 
127
129
  `MetricGrid layout="columns"` distributes supplied metrics by available container width. Its inline layout suits compact
128
- record summaries. `SettingsSection` keeps wide tables inside their scroll region; group sections with `Stack` and align
129
- form actions with `Row`.
130
+ record summaries. `PageContent` owns report insets and section gaps; keep full-width tables outside it so their cell
131
+ insets remain the only gutter. `SettingsSection` keeps wide tables inside their scroll region, and `SettingsRow` aligns
132
+ labels and controls. `FormActions` owns submission rows and their internal spacing. The enclosing section owns the gap
133
+ before and after the actions.
130
134
 
131
135
  The default theme is light, with system fonts and a compact spacing scale. Import `themeProps` from
132
136
  `@mechane-ai/elements/theme` and spread `themeProps.light` or `themeProps.dark` onto the document root. Portaled content
package/dist/ai.js CHANGED
@@ -1,7 +1,7 @@
1
- import { C as e, E as t, T as n, f as r, g as i, p as a, t as o, w as s } from "./src-sU9b0oZW.js";
2
- import { t as c } from "./content-link-BpSZeTNK.js";
3
- import { r as l, t as u } from "./src-Cs0dRc4X.js";
4
- import { c as d, u as f } from "./src-Be7NLG8c.js";
1
+ import { C as e, E as t, T as n, f as r, g as i, p as a, t as o, w as s } from "./src-3gzujMhN.js";
2
+ import { t as c } from "./content-link-C460m-O7.js";
3
+ import { r as l, t as u } from "./src-CVlgjAlw.js";
4
+ import { c as d, u as f } from "./src-DOzle5d4.js";
5
5
  import { t as p } from "./accessibility-C-aIZ1Yx.js";
6
6
  import * as m from "@stylexjs/stylex";
7
7
  import { createContext as h, useContext as g, useId as _, useRef as v } from "react";
@@ -43,10 +43,10 @@ function k(t) {
43
43
  }
44
44
  // packages/ai/src/conversation.tsx
45
45
  var A = h(void 0);
46
- function j({ children: e, initialPosition: t = "end", follow: n = !0 }) {
47
- let r = v(null);
46
+ function j({ children: e, initialPosition: t = "end", follow: n = !0, viewportRef: r }) {
47
+ let i = v(null), a = r ?? i;
48
48
  return /* @__PURE__ */ y(A.Provider, {
49
- value: r,
49
+ value: a,
50
50
  children: /* @__PURE__ */ y(E.Provider, {
51
51
  autoScroll: n,
52
52
  defaultScrollPosition: t,
@@ -83,28 +83,43 @@ function P({ messageId: e, children: t }) {
83
83
  children: t
84
84
  });
85
85
  }
86
- function F({ label: t = "Jump to latest" }) {
87
- let { scrollToEnd: n } = D(), { end: r } = O(), i = g(A);
88
- return r ? /* @__PURE__ */ y("div", {
86
+ function F({ children: e }) {
87
+ return /* @__PURE__ */ y("div", {
88
+ className: "x9f619 x2lah0s xeuugli xh8yej3 xe10afn xvueqy4 xn9t2bk x1m92p3w",
89
+ children: e
90
+ });
91
+ }
92
+ function I({ label: e = "Jump to latest" }) {
93
+ let { end: t } = O();
94
+ return t ? /* @__PURE__ */ y("div", {
89
95
  className: "x10l6tqk xwthv0x x1nrll8i xuuh30 x1tv4vx4 xeuugli",
90
- children: /* @__PURE__ */ b(e, {
91
- onClick: () => {
92
- n({ behavior: "instant" }), i?.current?.focus({ preventScroll: !0 });
93
- },
94
- children: [/* @__PURE__ */ y(x, {
95
- size: 16,
96
- "aria-hidden": !0
97
- }), t]
98
- })
96
+ children: /* @__PURE__ */ y(L, { label: e })
99
97
  }) : null;
100
98
  }
101
- var I = {
99
+ function L({ label: t, onActivate: n }) {
100
+ let { scrollToEnd: r } = D(), i = g(A);
101
+ return /* @__PURE__ */ b(e, {
102
+ onClick: () => {
103
+ n?.(), requestAnimationFrame(() => {
104
+ let e = i?.current;
105
+ e != null && (r({ behavior: "instant" }), e.focus({ preventScroll: !0 }));
106
+ });
107
+ },
108
+ children: [/* @__PURE__ */ y(x, {
109
+ size: 14,
110
+ "aria-hidden": !0
111
+ }), t]
112
+ });
113
+ }
114
+ var R = {
102
115
  Root: j,
103
116
  Viewport: M,
104
117
  Content: N,
105
118
  Item: P,
106
- JumpToLatest: F
107
- }, L = {
119
+ Controls: F,
120
+ LatestButton: L,
121
+ JumpToLatest: I
122
+ }, z = {
108
123
  root: {
109
124
  k1xSpc: "x78zum5",
110
125
  kXwgrk: "xdt5ytf",
@@ -130,19 +145,19 @@ var I = {
130
145
  k8WAf4: "xn9t2bk",
131
146
  $$css: !0
132
147
  }
133
- }, R = {
134
- user: L.user,
135
- assistant: L.assistant,
136
- system: L.system
137
- }, z = {
148
+ }, B = {
149
+ user: z.user,
150
+ assistant: z.assistant,
151
+ system: z.system
152
+ }, V = {
138
153
  "x-default-marker": "x-default-marker",
139
154
  $$css: !0
140
155
  };
141
- function B({ author: e, children: t, id: n, kind: r = "assistant", meta: i, avatar: a, actions: o, attachments: s }) {
156
+ function H({ author: e, children: t, id: n, kind: r = "assistant", meta: i, avatar: a, actions: o, attachments: s }) {
142
157
  return /* @__PURE__ */ b("article", {
143
158
  id: n,
144
159
  "aria-label": e,
145
- ...m.props(L.root, R[r], z),
160
+ ...m.props(z.root, B[r], V),
146
161
  children: [
147
162
  /* @__PURE__ */ b("header", {
148
163
  className: "x78zum5 x6s0dn4 x1hnptsi x1a02dak xeuugli",
@@ -176,7 +191,7 @@ function B({ author: e, children: t, id: n, kind: r = "assistant", meta: i, avat
176
191
  ]
177
192
  });
178
193
  }
179
- function V({ name: e, description: t, href: n, actions: r }) {
194
+ function U({ name: e, description: t, href: n, actions: r }) {
180
195
  return /* @__PURE__ */ b("div", {
181
196
  className: "x78zum5 x1a02dak x6s0dn4 x1n8ia3y xeuugli x193iq5w x1mvvolr xmkeg23 x1y0btm7 x1ey3b81 x1ok0vyi xpvm0e4 x1hz01jw xtqrqnz x1778rvt xj57cvi",
182
197
  children: [
@@ -203,7 +218,7 @@ function V({ name: e, description: t, href: n, actions: r }) {
203
218
  });
204
219
  }
205
220
  // packages/ai/src/message-action.tsx
206
- function H(e) {
221
+ function W(e) {
207
222
  if (e.kind === "link") {
208
223
  let { kind: t, label: r, ...i } = e;
209
224
  return /* @__PURE__ */ y(n, {
@@ -218,11 +233,11 @@ function H(e) {
218
233
  "aria-label": r
219
234
  });
220
235
  }
221
- function U(e) {
222
- return /* @__PURE__ */ b(u.Root, { children: [/* @__PURE__ */ y(u.Trigger, { render: H(e) }), /* @__PURE__ */ y(u.Portal, { children: /* @__PURE__ */ y(u.Positioner, { children: /* @__PURE__ */ y(u.Popup, { children: e.label }) }) })] });
236
+ function G(e) {
237
+ return /* @__PURE__ */ b(u.Root, { children: [/* @__PURE__ */ y(u.Trigger, { render: W(e) }), /* @__PURE__ */ y(u.Portal, { children: /* @__PURE__ */ y(u.Positioner, { children: /* @__PURE__ */ y(u.Popup, { children: e.label }) }) })] });
223
238
  }
224
239
  // packages/ai/src/message-boundary.tsx
225
- function W({ label: e, children: t }) {
240
+ function K({ label: e, children: t }) {
226
241
  return /* @__PURE__ */ b(i.Root, {
227
242
  className: "xeuugli x1kbiq1m xykt701 xpu655y",
228
243
  children: [/* @__PURE__ */ b(i.Trigger, {
@@ -242,11 +257,11 @@ function W({ label: e, children: t }) {
242
257
  });
243
258
  }
244
259
  // packages/ai/src/prompt-input.tsx
245
- var G = { action: {
260
+ var q = { action: {
246
261
  keTefX: "xvc5jky",
247
262
  $$css: !0
248
263
  } };
249
- function K({ label: e, value: t, onValueChange: n, onSubmit: r, name: i = "prompt", placeholder: a, maxLength: o, required: c = !0, pending: l = !1, disabled: h = !1, submitDisabled: g = !1, submitLabel: v = "Send message", pendingLabel: x = "Sending…", enterBehavior: C = "newline", compact: w = !1, description: E, error: D, controls: O, attachments: k, onStop: A, stopPending: j = !1, stopLabel: M = "Stop response" }) {
264
+ function J({ label: e, value: t, onValueChange: n, onSubmit: r, name: i = "prompt", placeholder: a, maxLength: o, required: c = !0, pending: l = !1, disabled: h = !1, submitDisabled: g = !1, submitLabel: v = "Send message", pendingLabel: x = "Sending…", enterBehavior: C = "newline", compact: w = !1, description: E, error: D, controls: O, attachments: k, onStop: A, stopPending: j = !1, stopLabel: M = "Stop response" }) {
250
265
  let N = _(), P = h || l, F = v;
251
266
  A === void 0 ? l ? F = x : C === "submit" && (F = `${v} · Enter`) : F = j ? "Stopping…" : M;
252
267
  function I(e) {
@@ -295,7 +310,7 @@ function K({ label: e, value: t, onValueChange: n, onSubmit: r, name: i = "promp
295
310
  className: "x78zum5 x1a02dak x6s0dn4 x1hnptsi xeuugli x12lumcd",
296
311
  children: O
297
312
  }), /* @__PURE__ */ b(u.Root, { children: [/* @__PURE__ */ y(u.Trigger, { render: A === void 0 ? /* @__PURE__ */ y(s, {
298
- xstyle: G.action,
313
+ xstyle: q.action,
299
314
  type: "submit",
300
315
  variant: "solid",
301
316
  "aria-label": l ? x : v,
@@ -306,7 +321,7 @@ function K({ label: e, value: t, onValueChange: n, onSubmit: r, name: i = "promp
306
321
  "aria-hidden": !0
307
322
  })
308
323
  }) : /* @__PURE__ */ y(s, {
309
- xstyle: G.action,
324
+ xstyle: q.action,
310
325
  type: "button",
311
326
  "aria-label": j ? "Stopping…" : M,
312
327
  onClick: (e) => {
@@ -334,7 +349,7 @@ function K({ label: e, value: t, onValueChange: n, onSubmit: r, name: i = "promp
334
349
  });
335
350
  }
336
351
  // packages/ai/src/sources.tsx
337
- function q({ sources: e, label: t = "Sources" }) {
352
+ function Y({ sources: e, label: t = "Sources" }) {
338
353
  return /* @__PURE__ */ b("section", {
339
354
  "aria-label": t,
340
355
  className: "x78zum5 xdt5ytf x1hnptsi xeuugli x1hz01jw xtqrqnz x1778rvt xj57cvi xbixft",
@@ -363,7 +378,7 @@ function q({ sources: e, label: t = "Sources" }) {
363
378
  ]
364
379
  });
365
380
  }
366
- function J({ source: e, label: n }) {
381
+ function X({ source: e, label: n }) {
367
382
  return /* @__PURE__ */ y("span", {
368
383
  className: "xt0psk2 x11njtxf xss6m8b",
369
384
  children: /* @__PURE__ */ b(l.Root, { children: [/* @__PURE__ */ y(l.Trigger, {
@@ -386,4 +401,4 @@ function J({ source: e, label: n }) {
386
401
  }) })] })
387
402
  });
388
403
  }
389
- export { k as Approval, I as Conversation, J as InlineCitation, B as Message, U as MessageAction, V as MessageAttachment, W as MessageBoundary, K as PromptInput, q as Sources };
404
+ export { k as Approval, R as Conversation, X as InlineCitation, H as Message, G as MessageAction, U as MessageAttachment, K as MessageBoundary, J as PromptInput, Y as Sources };
@@ -1,5 +1,5 @@
1
- import { n as e, s as t } from "./chart-frame-et6f6Vhg.js";
2
- import { n } from "./chart-input-CdLkFomi.js";
1
+ import { n as e, s as t } from "./chart-frame-38ES6kwK.js";
2
+ import { n } from "./chart-input-C9fu7f1Q.js";
3
3
  import * as r from "@stylexjs/stylex";
4
4
  import { jsx as i, jsxs as a } from "react/jsx-runtime";
5
5
  // packages/charts/src/categorical-values.tsx
@@ -1,4 +1,4 @@
1
- import { g as e } from "./src-sU9b0oZW.js";
1
+ import { g as e } from "./src-3gzujMhN.js";
2
2
  import { chartColors as t, colors as n } from "./tokens.js";
3
3
  import * as r from "@stylexjs/stylex";
4
4
  import { useId as i } from "react";
@@ -125,7 +125,7 @@ function f({ items: e, label: t = "Legend" }) {
125
125
  }
126
126
  function p({ label: e, selected: t = !1, onSelect: n, children: r }) {
127
127
  return n === void 0 ? /* @__PURE__ */ a("div", {
128
- className: "x78zum5 x1a02dak x6s0dn4 x1qughib x8zbtdt x1gkm1c7 xeuugli xaeotn9 xwu7q15 x9f619 xh8yej3 xc342km x1hmw7ec x5g2kb4 x1hz01jw xtqrqnz xj57cvi x1778rvt x1yc453h xj0a0fe xbixft xpvm0e4 xss6m8b",
128
+ className: "x78zum5 x1a02dak x6s0dn4 x1qughib x8zbtdt x1gkm1c7 xeuugli x17tes2r xwu7q15 x9f619 xh8yej3 xc342km x1hmw7ec x5g2kb4 x1hz01jw xtqrqnz xj57cvi x1778rvt x1yc453h xj0a0fe xbixft xpvm0e4 xss6m8b",
129
129
  children: r
130
130
  }) : /* @__PURE__ */ a("button", {
131
131
  type: "button",
@@ -133,8 +133,8 @@ function p({ label: e, selected: t = !1, onSelect: n, children: r }) {
133
133
  "aria-pressed": t,
134
134
  onClick: n,
135
135
  ...{
136
- 0: { className: "x78zum5 x1a02dak x6s0dn4 x1qughib x8zbtdt x1gkm1c7 xeuugli xaeotn9 xwu7q15 x9f619 xh8yej3 xc342km x1hmw7ec x5g2kb4 x1hz01jw xtqrqnz xj57cvi x1778rvt x1yc453h xj0a0fe xbixft xpvm0e4 xss6m8b x1ypdohk x1t137rt xzro8vx x1ecmtor x19rmrnh x9v5kkp x13qnu6 x1bqaal" },
137
- 1: { className: "x78zum5 x1a02dak x6s0dn4 x1qughib x8zbtdt x1gkm1c7 xeuugli xaeotn9 xwu7q15 x9f619 xh8yej3 xc342km x1hmw7ec x5g2kb4 x1hz01jw xtqrqnz xj57cvi x1778rvt x1yc453h xj0a0fe xbixft xss6m8b x1ypdohk x1t137rt xzro8vx x1ecmtor x19rmrnh x9v5kkp x13qnu6 x1bqaal x1r7kqkb x1jmj9dw" }
136
+ 0: { className: "x78zum5 x1a02dak x6s0dn4 x1qughib x8zbtdt x1gkm1c7 xeuugli x17tes2r xwu7q15 x9f619 xh8yej3 xc342km x1hmw7ec x5g2kb4 x1hz01jw xtqrqnz xj57cvi x1778rvt x1yc453h xj0a0fe xbixft xpvm0e4 xss6m8b x1ypdohk x1t137rt xzro8vx x1ecmtor x19rmrnh x9v5kkp x13qnu6 x1bqaal" },
137
+ 1: { className: "x78zum5 x1a02dak x6s0dn4 x1qughib x8zbtdt x1gkm1c7 xeuugli x17tes2r xwu7q15 x9f619 xh8yej3 xc342km x1hmw7ec x5g2kb4 x1hz01jw xtqrqnz xj57cvi x1778rvt x1yc453h xj0a0fe xbixft xss6m8b x1ypdohk x1t137rt xzro8vx x1ecmtor x19rmrnh x9v5kkp x13qnu6 x1bqaal x1r7kqkb xh3r7i3" }
138
138
  }[!!t | 0],
139
139
  children: r
140
140
  });
@@ -1,5 +1,5 @@
1
- import { f as e } from "./src-CBspCKfO.js";
2
- import { r as t } from "./chart-frame-et6f6Vhg.js";
1
+ import { m as e } from "./src-CI6KtN2w.js";
2
+ import { r as t } from "./chart-frame-38ES6kwK.js";
3
3
  import { jsx as n } from "react/jsx-runtime";
4
4
  // packages/charts/src/chart-input.tsx
5
5
  function r(e) {
@@ -1,10 +1,10 @@
1
- import { c as e } from "../src-CBspCKfO.js";
2
- import { i as t, n, r, t as i } from "../categorical-values-DLRE4EEW.js";
3
- import { a, i as o, n as s, o as c, r as l, s as u, t as d } from "../chart-frame-et6f6Vhg.js";
4
- import { n as f, r as p, t as m } from "../chart-input-CdLkFomi.js";
1
+ import { u as e } from "../src-CI6KtN2w.js";
2
+ import { i as t, n, r, t as i } from "../categorical-values-CTrHn9jH.js";
3
+ import { a, i as o, n as s, o as c, r as l, s as u, t as d } from "../chart-frame-38ES6kwK.js";
4
+ import { n as f, r as p, t as m } from "../chart-input-C9fu7f1Q.js";
5
5
  import { t as h } from "../plot-width--OgdohB5.js";
6
- import { E as g } from "../src-sU9b0oZW.js";
7
- import { h as _ } from "../src-Be7NLG8c.js";
6
+ import { E as g } from "../src-3gzujMhN.js";
7
+ import { g as _ } from "../src-DOzle5d4.js";
8
8
  import { colors as v } from "../tokens.js";
9
9
  import * as y from "@stylexjs/stylex";
10
10
  import { useEffect as b, useId as x, useMemo as S, useRef as C, useState as w } from "react";
@@ -1,5 +1,5 @@
1
- import { a as e, n as t, r as n, s as r, t as i } from "../chart-frame-et6f6Vhg.js";
2
- import { n as a, r as o, t as s } from "../chart-input-CdLkFomi.js";
1
+ import { a as e, n as t, r as n, s as r, t as i } from "../chart-frame-38ES6kwK.js";
2
+ import { n as a, r as o, t as s } from "../chart-input-C9fu7f1Q.js";
3
3
  import { t as c } from "../plot-width--OgdohB5.js";
4
4
  import * as l from "@stylexjs/stylex";
5
5
  import { Fragment as u, jsx as d, jsxs as f } from "react/jsx-runtime";
@@ -1,5 +1,5 @@
1
- import { a as e, n as t, r as n, s as r, t as i } from "../chart-frame-et6f6Vhg.js";
2
- import { n as a, t as o } from "../chart-input-CdLkFomi.js";
1
+ import { a as e, n as t, r as n, s as r, t as i } from "../chart-frame-38ES6kwK.js";
2
+ import { n as a, t as o } from "../chart-input-C9fu7f1Q.js";
3
3
  import * as s from "@stylexjs/stylex";
4
4
  import { useId as c } from "react";
5
5
  import { Fragment as l, jsx as u, jsxs as d } from "react/jsx-runtime";
@@ -38,7 +38,7 @@ var f = {
38
38
  k9WMMc: "x1yc453h",
39
39
  kMv6JI: "x1hz01jw",
40
40
  k63SB2: "xj57cvi",
41
- kAzted: "xaeotn9 xwu7q15",
41
+ kAzted: "x17tes2r xwu7q15",
42
42
  $$css: !0
43
43
  },
44
44
  position: (e, t) => [{
@@ -1,6 +1,6 @@
1
- import { i as e, r as t, t as n } from "../categorical-values-DLRE4EEW.js";
2
- import { o as r, r as i, s as a } from "../chart-frame-et6f6Vhg.js";
3
- import { t as o } from "../chart-input-CdLkFomi.js";
1
+ import { i as e, r as t, t as n } from "../categorical-values-CTrHn9jH.js";
2
+ import { o as r, r as i, s as a } from "../chart-frame-38ES6kwK.js";
3
+ import { t as o } from "../chart-input-C9fu7f1Q.js";
4
4
  import { t as s } from "../plot-width--OgdohB5.js";
5
5
  import * as c from "@stylexjs/stylex";
6
6
  import { jsx as l, jsxs as u } from "react/jsx-runtime";
@@ -1,6 +1,6 @@
1
1
  import { colors as e } from "../tokens.js";
2
- import { n as t, r as n, t as r } from "../chart-input-CdLkFomi.js";
3
- import { a as i, n as a, r as o, s, t as c } from "../chart-frame-et6f6Vhg.js";
2
+ import { n as t, r as n, t as r } from "../chart-input-C9fu7f1Q.js";
3
+ import { a as i, n as a, r as o, s, t as c } from "../chart-frame-38ES6kwK.js";
4
4
  import * as l from "@stylexjs/stylex";
5
5
  import { jsx as u, jsxs as d } from "react/jsx-runtime";
6
6
  // packages/charts/src/matrix/heatmap-scale.ts
@@ -1,5 +1,5 @@
1
- import { c as e } from "../src-sU9b0oZW.js";
2
- import { n as t, t as n } from "../chart-input-CdLkFomi.js";
1
+ import { c as e } from "../src-3gzujMhN.js";
2
+ import { n as t, t as n } from "../chart-input-C9fu7f1Q.js";
3
3
  import * as r from "@stylexjs/stylex";
4
4
  import { jsx as i, jsxs as a } from "react/jsx-runtime";
5
5
  import { scaleLinear as o } from "@visx/scale";
@@ -34,27 +34,27 @@ var c = {
34
34
  .5,
35
35
  1
36
36
  ], d = 100;
37
- function f({ items: t, start: s, end: f, label: g, rowLabel: _, summaryLabel: v, emptyLabel: y, selectedId: b, onSelect: x, formatOffset: S }) {
38
- let C = p({
37
+ function f({ items: t, start: s, end: f, label: g, rowLabel: _, summaryLabel: v, emptyLabel: y, selectedId: b, selectedRef: x, onSelect: S, formatOffset: C }) {
38
+ let w = p({
39
39
  items: t,
40
40
  start: s,
41
41
  end: f
42
42
  });
43
- if (C !== void 0) return /* @__PURE__ */ i(n, {
43
+ if (w !== void 0) return /* @__PURE__ */ i(n, {
44
44
  title: g,
45
- message: C
45
+ message: w
46
46
  });
47
- let w = f - s, T = o({
47
+ let T = f - s, E = o({
48
48
  domain: [s, f],
49
- range: [0, w === 0 ? 0 : d]
50
- }), E = w > 0 ? u : [0];
49
+ range: [0, T === 0 ? 0 : d]
50
+ }), D = T > 0 ? u : [0], O = t.some((e) => e.geometry.kind !== "unavailable");
51
51
  return /* @__PURE__ */ a("div", {
52
52
  role: "group",
53
53
  "aria-label": g,
54
54
  className: "xeuugli x1hz01jw x12h1iku",
55
55
  children: [
56
56
  /* @__PURE__ */ a("div", {
57
- className: "xrvj5dj x13sfnbj x1prkh4w x6s0dn4 x1gkm1c7 x1y1mm1b xh8yej3 x9f619 x1doqdfy x1uey4wk x153jb6y xy8obcc xso031l x1q0q8m5 x1qndepd",
57
+ className: "xrvj5dj x13sfnbj x1prkh4w x6s0dn4 x1gkm1c7 x1y1mm1b xh8yej3 x9f619 x1doqdfy x17tes2r x153jb6y xy8obcc xso031l x1q0q8m5 x1qndepd",
58
58
  children: [
59
59
  /* @__PURE__ */ i(e, {
60
60
  variant: "caption",
@@ -63,7 +63,7 @@ function f({ items: t, start: s, end: f, label: g, rowLabel: _, summaryLabel: v,
63
63
  }),
64
64
  /* @__PURE__ */ i("div", {
65
65
  className: "xeuugli xl4o6ss x1npkx4u x1v577k8 x1ms6mhf x1aa6nly x78zum5 x1qughib x6s0dn4 xy8obcc xas2l8k xss6m8b",
66
- children: E.map((e) => /* @__PURE__ */ i("span", { children: S(w * e) }, e))
66
+ children: O ? D.map((e) => /* @__PURE__ */ i("span", { children: C(T * e) }, e)) : /* @__PURE__ */ i("span", { children: "Timing unavailable" })
67
67
  }),
68
68
  /* @__PURE__ */ i("span", {
69
69
  className: "xrvj5dj xfko13i xeuugli x1k3v4rp x14r0xmm x1ms6mhf xp4054r xj0a0fe xss6m8b",
@@ -86,16 +86,17 @@ function f({ items: t, start: s, end: f, label: g, rowLabel: _, summaryLabel: v,
86
86
  let n = h({
87
87
  geometry: t.geometry,
88
88
  start: s,
89
- formatOffset: S
89
+ formatOffset: C
90
90
  });
91
91
  return /* @__PURE__ */ a("button", {
92
+ ref: b === t.id ? x : void 0,
92
93
  type: "button",
93
94
  "aria-pressed": b === t.id,
94
95
  "aria-label": `${t.label} · ${t.detail} · ${t.summary} · ${n}`,
95
- onClick: () => x(t.id),
96
+ onClick: () => S(t.id),
96
97
  ...{
97
98
  0: { className: "xrvj5dj x13sfnbj x1prkh4w x6s0dn4 x1gkm1c7 x1y1mm1b xh8yej3 x9f619 x1doqdfy xn9t2bk x1wiwyrm xc342km xso031l x1q0q8m5 x1qndepd xpvm0e4 xbixft x1hz01jw x1yc453h x1ypdohk x1t137rt xzro8vx x1ecmtor x19rmrnh x9v5kkp x13qnu6 x1bqaal x1t1lzn6" },
98
- 1: { className: "xrvj5dj x13sfnbj x1prkh4w x6s0dn4 x1gkm1c7 x1y1mm1b xh8yej3 x9f619 x1doqdfy xn9t2bk x1wiwyrm xc342km xso031l x1q0q8m5 x1qndepd xbixft x1hz01jw x1yc453h x1ypdohk x1t137rt xzro8vx x1ecmtor x19rmrnh x9v5kkp x13qnu6 x1bqaal x1t1lzn6 x1r7kqkb x1jmj9dw" }
99
+ 1: { className: "xrvj5dj x13sfnbj x1prkh4w x6s0dn4 x1gkm1c7 x1y1mm1b xh8yej3 x9f619 x1doqdfy xn9t2bk x1wiwyrm xc342km xso031l x1q0q8m5 x1qndepd xbixft x1hz01jw x1yc453h x1ypdohk x1t137rt xzro8vx x1ecmtor x19rmrnh x9v5kkp x13qnu6 x1bqaal x1t1lzn6 x1r7kqkb xh3r7i3" }
99
100
  }[b === t.id | 0],
100
101
  children: [
101
102
  /* @__PURE__ */ a("span", {
@@ -123,7 +124,7 @@ function f({ items: t, start: s, end: f, label: g, rowLabel: _, summaryLabel: v,
123
124
  }) : /* @__PURE__ */ a("svg", {
124
125
  "aria-hidden": !0,
125
126
  className: "x1lliihq xh8yej3 xmix8c7 x1rea2x4",
126
- children: [E.map((e) => /* @__PURE__ */ i("line", {
127
+ children: [D.map((e) => /* @__PURE__ */ i("line", {
127
128
  x1: `${e * d}%`,
128
129
  x2: `${e * d}%`,
129
130
  y1: "0",
@@ -131,7 +132,7 @@ function f({ items: t, start: s, end: f, label: g, rowLabel: _, summaryLabel: v,
131
132
  className: "x13hfdr1"
132
133
  }, e)), /* @__PURE__ */ i(m, {
133
134
  geometry: t.geometry,
134
- scale: T
135
+ scale: E
135
136
  })]
136
137
  })
137
138
  }),
package/dist/charts.js CHANGED
@@ -1 +1 @@
1
- export { r as ChartFrame, i as ChartLegend } from "./chart-frame-et6f6Vhg.js";
1
+ export { r as ChartFrame, i as ChartLegend } from "./chart-frame-38ES6kwK.js";
@@ -1,7 +1,7 @@
1
- import { _ as e } from "./src-sU9b0oZW.js";
1
+ import { _ as e } from "./src-3gzujMhN.js";
2
2
  import { colors as t } from "./tokens.js";
3
3
  import { t as n } from "./viewer-styles-CpHqp5Qv.js";
4
- import { t as r } from "./pierre-theme-D9hnHv3Z.js";
4
+ import { t as r } from "./pierre-theme-CBAncKdH.js";
5
5
  import * as i from "@stylexjs/stylex";
6
6
  import { useEffect as a, useRef as o, useState as s } from "react";
7
7
  import { jsx as c, jsxs as l } from "react/jsx-runtime";