@mastra/playground-ui 51.2.0-alpha.1 → 51.2.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,85 @@
1
1
  # @mastra/playground-ui
2
2
 
3
+ ## 51.2.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Refreshed the DataList look: rows no longer draw separators, the sticky header and group subheaders share one lighter, theme-tuned band, and every corner uses the same radius. ([#22383](https://github.com/mastra-ai/mastra/pull/22383))
8
+
9
+ **Every row in a list is now the same height.** Row height used to be whatever the tallest cell happened to be, so a list with an actions column or a roomier cell drifted a few pixels away from the list next to it. The row owns its height now, and skeleton rows match the real ones — no jump when data lands.
10
+
11
+ **Typography follows the content.** Headers and name cells are medium weight instead of semibold, and the letter-spacing tightening is gone. IDs and timestamps left the monospace face — IDs get wider tracking to stay scannable, timestamps get tabular figures so their columns still line up.
12
+
13
+ **Row controls only appear on hover.** Selection checkboxes on unselected rows, and the new `DataList.ActionsCell`, stay hidden until you hover the row or reach it with the keyboard, so a resting list reads as content. The column keeps its width, so nothing shifts. On a touch screen, where nothing ever hovers, they stay visible.
14
+
15
+ ```tsx
16
+ // Trailing row actions — alignment, spacing and the hover reveal come with the cell
17
+ <DataList.RowWrapper>
18
+ <DataList.RowButton colEnd={-2} onClick={open}>
19
+ {cells}
20
+ </DataList.RowButton>
21
+ <DataList.ActionsCell>
22
+ <Button variant="ghost" size="icon-xs" aria-label="Delete">
23
+ <Trash2 />
24
+ </Button>
25
+ </DataList.ActionsCell>
26
+ </DataList.RowWrapper>
27
+ ```
28
+
29
+ **Breaking:** a variant, three props and a component that no longer decide anything are gone.
30
+
31
+ ```tsx
32
+ // Before
33
+ <DataList columns={columns} variant="lined">
34
+ <DataList.RowButton flushLeft flushRight colEnd={-2}>
35
+ <DataList.Cell height="compact">{status}</DataList.Cell>
36
+ <DataList.MonoCell>{path}</DataList.MonoCell>
37
+
38
+ // After — rows are borderless, full-bleed and uniformly tall by default
39
+ <DataList columns={columns}>
40
+ <DataList.RowButton colEnd={-2}>
41
+ <DataList.Cell>{status}</DataList.Cell>
42
+ <DataList.TextCell font="mono">{path}</DataList.TextCell>
43
+ ```
44
+
45
+ - `variant="lined"` existed only to draw row separators. Lists that want row banding can still ask for `variant="striped"`.
46
+ - `height` on cells set row height one cell at a time, which is what let rows drift apart.
47
+ - `flushLeft` / `flushRight` dropped a row margin that no longer exists.
48
+ - `DataList.MonoCell` was a cell that only changed the typeface. `DataList.TextCell font="mono"` replaces it — same rendering, one less component.
49
+
50
+ ### Patch Changes
51
+
52
+ - Added a `Comment` family of compound components for text-only comment threads: `Comment`, `CommentList`, `CommentItem` (with header, author, timestamp, body and actions slots) and `CommentComposer` (input + send button). The root `variant` prop switches between `default`, a flat thread with hover-revealed per-item actions, and `embed`, the same thread on a bordered card surface with a compact composer and no per-item actions. ([#22396](https://github.com/mastra-ai/mastra/pull/22396))
53
+
54
+ - Improved the experiment page in Studio with a horizontal metadata bar showing when the run started, how long it took, the dataset it ran against, and which scorers were used ([#22377](https://github.com/mastra-ai/mastra/pull/22377))
55
+
56
+ - **Composer** — the ring keeps its geometry on the element, so a consumer can restyle its radius and width through `className` like any other component. Its idle edge colour now reads `--composer-ring-edge`, for apps whose chat surface needs a different one; unset, it keeps the current blend. ([#22403](https://github.com/mastra-ai/mastra/pull/22403))
57
+
58
+ **Tool call** — output blocks sit one step above the surface behind them instead of painting a fixed dark grey, so they stay visible on any chat background and in both themes.
59
+
60
+ - Sidebar links read a touch heavier, so they stay legible next to their icons instead of looking washed out. ([#22399](https://github.com/mastra-ai/mastra/pull/22399))
61
+
62
+ - Fixed the span Feedback tab in Studio's observability view showing the same list and count for every span of a trace: it now loads feedback strictly for the selected trace and span pair, so switching spans shows that span's own feedback. Trace-level feedback — including everything produced by the dataset review flows — now lives in a new Feedback tab on the trace panel, next to Details and Evaluations, which lists only records that aren't attached to a span. The span panel tabs also use the same pill styling as the rest of Studio instead of the deprecated underline variant. ([#22401](https://github.com/mastra-ai/mastra/pull/22401))
63
+
64
+ To see each kind of feedback:
65
+
66
+ 1. Run `mastra dev` and open **Observability** in Studio.
67
+ 2. Open a trace and select its **Feedback** tab — it lists trace-level feedback only, such as records left by dataset review.
68
+ 3. Select a span in the trace tree and open the span's **Feedback** tab — it lists only that span's feedback, and the list changes as you select other spans.
69
+
70
+ - Added a `factory` variant to the `SettingsRow` component so settings rows can render the denser card-row layout (row padding, 12px description text) instead of only the studio spacing. ([#22375](https://github.com/mastra-ai/mastra/pull/22375))
71
+
72
+ ```tsx
73
+ <SettingsRow variant="factory" label="Auto-approve tools" description="Run tool calls without asking">
74
+ <Switch checked={autoApprove} onCheckedChange={setAutoApprove} />
75
+ </SettingsRow>
76
+ ```
77
+
78
+ - Updated dependencies [[`7176362`](https://github.com/mastra-ai/mastra/commit/717636281a3339911a05ea2cc8ae38afe4fd2cef), [`9045b8f`](https://github.com/mastra-ai/mastra/commit/9045b8fdf622e1d735b96ddd6500bd32556636d9), [`7677a2c`](https://github.com/mastra-ai/mastra/commit/7677a2cd47729221ca28afc5067d26e22d925b59), [`e3b796d`](https://github.com/mastra-ai/mastra/commit/e3b796d29a63f0d5c97dd815aadec40687346d70), [`f7a7467`](https://github.com/mastra-ai/mastra/commit/f7a74678193921e7ea4790232d707b3237626cac), [`49ccd14`](https://github.com/mastra-ai/mastra/commit/49ccd142268a61fb55ea75bc76287643a21f3677), [`f9c56f3`](https://github.com/mastra-ai/mastra/commit/f9c56f336ee8c250763a438990f8e60a428353c9), [`3855b38`](https://github.com/mastra-ai/mastra/commit/3855b38c4c25af32ab8e298e148becc963abe92c)]:
79
+ - @mastra/core@1.63.0
80
+ - @mastra/client-js@1.42.2
81
+ - @mastra/react@1.4.7
82
+
3
83
  ## 51.2.0-alpha.1
4
84
 
5
85
  ### Patch Changes
@@ -4,6 +4,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const logsDataList = require('../logs-data-list-Xayqbjw4.cjs');
6
6
  const dataListSkeleton = require('../data-list-skeleton-BHBSIQHN.cjs');
7
+ require('react');
7
8
 
8
9
 
9
10
 
@@ -1 +1 @@
1
- {"version":3,"file":"LogsDataList.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
1
+ {"version":3,"file":"LogsDataList.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -1,3 +1,4 @@
1
1
  export { L as LogsDataList } from '../logs-data-list-DRXJ89IZ.js';
2
2
  export { D as LogsDataListSkeleton } from '../data-list-skeleton-DDO_OE14.js';
3
+ import 'react';
3
4
  //# sourceMappingURL=LogsDataList.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LogsDataList.es.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"LogsDataList.es.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mastra/playground-ui",
3
3
  "type": "module",
4
- "version": "51.2.0-alpha.1",
4
+ "version": "51.2.0",
5
5
  "description": "Mastra Playground components",
6
6
  "sideEffects": [
7
7
  "**/*.css"
@@ -161,8 +161,8 @@
161
161
  "react": ">=19.0.0",
162
162
  "react-dom": ">=19.0.0",
163
163
  "tailwindcss": "^4.0.0",
164
- "@mastra/client-js": "^1.42.2-alpha.1",
165
- "@mastra/react": "1.4.7-alpha.1"
164
+ "@mastra/client-js": "^1.42.2",
165
+ "@mastra/react": "1.4.7"
166
166
  },
167
167
  "devDependencies": {
168
168
  "@storybook/addon-a11y": "^10.4.1",
@@ -202,11 +202,11 @@
202
202
  "vite-plugin-dts": "^4.5.4",
203
203
  "vite-plugin-lib-inject-css": "^2.2.2",
204
204
  "vitest": "4.1.10",
205
- "@mastra/client-js": "^1.42.2-alpha.1",
206
- "@internal/lint": "0.0.126",
207
- "@mastra/core": "1.63.0-alpha.1",
208
- "@mastra/react": "1.4.7-alpha.1",
209
- "@mastra/memory": "1.28.0"
205
+ "@mastra/client-js": "^1.42.2",
206
+ "@internal/lint": "0.0.127",
207
+ "@mastra/memory": "1.28.0",
208
+ "@mastra/react": "1.4.7",
209
+ "@mastra/core": "1.63.0"
210
210
  },
211
211
  "homepage": "https://mastra.ai",
212
212
  "repository": {