@mastra/playground-ui 37.0.0-alpha.6 → 37.0.1-alpha.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,123 @@
1
1
  # @mastra/playground-ui
2
2
 
3
+ ## 37.0.1-alpha.0
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [[`b9a2961`](https://github.com/mastra-ai/mastra/commit/b9a2961c1be81e3639c0879e58588c26dd0ae866), [`1274eb3`](https://github.com/mastra-ai/mastra/commit/1274eb3a9508f579ceb3187fbce34408222d4b71), [`1274eb3`](https://github.com/mastra-ai/mastra/commit/1274eb3a9508f579ceb3187fbce34408222d4b71), [`9566d27`](https://github.com/mastra-ai/mastra/commit/9566d27ead3d95bdbe5a69e5a082a68222829cf2)]:
8
+ - @mastra/core@1.48.0-alpha.0
9
+ - @mastra/client-js@1.28.1-alpha.0
10
+ - @mastra/react@1.2.1-alpha.0
11
+
12
+ ## 37.0.0
13
+
14
+ ### Minor Changes
15
+
16
+ - Added a reusable environment variables editor with .env import, bulk paste support, and custom-row hook support. ([#18371](https://github.com/mastra-ai/mastra/pull/18371))
17
+
18
+ ```tsx
19
+ import { EnvironmentVariablesEditor, useEnvironmentVariablesEditor } from '@mastra/playground-ui';
20
+
21
+ function SettingsEnvVars() {
22
+ const editor = useEnvironmentVariablesEditor({
23
+ initialRows: [{ key: 'PUBLIC_BASE_URL', value: 'https://example.com' }],
24
+ });
25
+
26
+ return (
27
+ <EnvironmentVariablesEditor
28
+ editor={editor}
29
+ actions={
30
+ <button type="button" onClick={() => editor.getEnvironmentVariablesForSubmit()}>
31
+ Save
32
+ </button>
33
+ }
34
+ />
35
+ );
36
+ }
37
+ ```
38
+
39
+ - Added sticky row headers to DataList. ([#18222](https://github.com/mastra-ai/mastra/pull/18222))
40
+
41
+ Use `sticky="start"` on the leading `DataList.TopCell` and render matching row cells with `DataList.RowHeaderCell`:
42
+
43
+ ```tsx
44
+ <DataList columns="auto auto auto" variant="lined">
45
+ <DataList.Top>
46
+ <DataList.TopCell sticky="start">Model</DataList.TopCell>
47
+ <DataList.TopCell>Input</DataList.TopCell>
48
+ <DataList.TopCell>Output</DataList.TopCell>
49
+ </DataList.Top>
50
+ <DataList.RowStatic>
51
+ <DataList.RowHeaderCell>Model A</DataList.RowHeaderCell>
52
+ <DataList.Cell>1,200</DataList.Cell>
53
+ <DataList.Cell>800</DataList.Cell>
54
+ </DataList.RowStatic>
55
+ </DataList>
56
+ ```
57
+
58
+ Metrics tables now render directly through DataList so sticky row headers share the same header colors and hover treatment as the rest of the list system. Metrics tables also follow the default DataList variant, and sticky row headers use the same neutral header treatment as column headers.
59
+
60
+ DataList now exposes `stickyHeaderBackground` to keep the top header and sticky row-header fill in sync, and forwards `mask` to the underlying ScrollArea so sticky-start tables can disable the left edge fade.
61
+
62
+ Added `DataList.NumberCell` for right-aligned numeric columns. It bakes in the tabular-figure, compact metric-table styling, with a `highlight` prop for the emphasized value:
63
+
64
+ ```tsx
65
+ <DataList.NumberCell>1,200</DataList.NumberCell>
66
+ <DataList.NumberCell highlight>$0.42</DataList.NumberCell>
67
+ ```
68
+
69
+ The metrics-specific `MetricsDataTable` wrapper was removed. Use DataList for DS-owned metrics table layouts.
70
+
71
+ - Add the experimental Signals observability experience to Studio. Introduces a route-driven enterprise topics/signals trace explorer (topic, subtopic, and trace panels) and a reusable scatter plot chart component in `@mastra/playground-ui`, with the reusable Signals UI and data placed behind the playground-ui EE export boundary. The Signals page is gated behind a server-injected `MASTRA_SIGNALS_UI` runtime flag: the Studio HTML exposes `window.MASTRA_SIGNALS_UI`, which the CLI and deployers populate from the `MASTRA_SIGNALS_UI` env var (default off). When disabled, the Signals sidebar item and `/signals` routes are not registered. ([#18138](https://github.com/mastra-ai/mastra/pull/18138))
72
+
73
+ ### Patch Changes
74
+
75
+ - Fixed overlay content components to support Base UI positioning options. ([#18431](https://github.com/mastra-ai/mastra/pull/18431))
76
+
77
+ - Added direct Playground UI subpaths for shared helpers so apps can avoid the root barrel when importing existing utility and rule builder APIs. ([#18502](https://github.com/mastra-ai/mastra/pull/18502))
78
+
79
+ ```ts
80
+ import { is401UnauthorizedError } from '@mastra/playground-ui/utils/errors';
81
+ import type { JsonSchema } from '@mastra/playground-ui/utils/json-schema';
82
+ import { RuleBuilder } from '@mastra/playground-ui/components/RuleBuilder';
83
+ ```
84
+
85
+ - Show an unavailable state when the configured observability storage does not support listing logs, and stop polling the logs endpoint for that non-transient capability error. ([#18375](https://github.com/mastra-ai/mastra/pull/18375))
86
+
87
+ - Added a direct utility import for the class name helper so applications can avoid the root Playground UI barrel. ([#18458](https://github.com/mastra-ai/mastra/pull/18458))
88
+
89
+ ```ts
90
+ import { cn } from '@mastra/playground-ui/utils/cn';
91
+ ```
92
+
93
+ - Added direct import paths for toast and Playground UI icons so apps can avoid the root Playground UI barrel when using high-traffic utilities and icon components. ([#18470](https://github.com/mastra-ai/mastra/pull/18470))
94
+
95
+ ```ts
96
+ import { Toaster } from '@mastra/playground-ui/components/Toaster';
97
+ import { AgentIcon } from '@mastra/playground-ui/icons/AgentIcon';
98
+ import { toast } from '@mastra/playground-ui/utils/toast';
99
+ ```
100
+
101
+ - Move the Memory Studio (timeline, flamegraph, and observational-memory detail) into the agent chat view as an opt-in panel. ([#18272](https://github.com/mastra-ai/mastra/pull/18272))
102
+ - The standalone Memory nav entry, `/memory` routes, and the separate thread/chat list are removed; the studio is now opened from the chat view and shown inside the Memory sidepanel, with the agent layout's left resizable panel expanding when the detail opens. Clicking the flamegraph timeline drives a replay cursor that highlights the matching observational-memory record. Marker types are imported from `@mastra/memory` instead of being redeclared in the UI so the studio stays in sync with the stream format.
103
+ - `MemoryStudioPanel` gains an optional `contextWindow` prop so callers can supply authoritative message/observation token counts and thresholds; when provided these take precedence over values re-derived from message markers, keeping the panel's MESSAGES/OBSERVATIONS readout in sync with the observational-memory sidebar (marker-derived values remain the fallback for standalone usage).
104
+ - `MemoryStudioPanel` now shows both Messages and Observations progress bars, matching the collapsed memory sidebar. The FlameGraph zoom range is lifted into the panel and filters the observation list: collapsing the range hides out-of-range observations and "Reset zoom" restores the full list. `FlameGraph` gains optional controlled `zoomRange`/`onZoomRangeChange` props (uncontrolled usage is unchanged).
105
+
106
+ - Updated dependencies [[`86623c1`](https://github.com/mastra-ai/mastra/commit/86623c1adf7d22de32cc916dda17f4155184db36), [`023766f`](https://github.com/mastra-ai/mastra/commit/023766f44d59b30a50f3a381e33eddde8ab56c00), [`0200e75`](https://github.com/mastra-ai/mastra/commit/0200e7552d02d4221cd6040bf4eddf189a97a156), [`7c9dd77`](https://github.com/mastra-ai/mastra/commit/7c9dd77bd18cb8dc72797e25f1a0fbdc71a11347), [`7f9ae70`](https://github.com/mastra-ai/mastra/commit/7f9ae70826b047e5a66218f9e92f20e54a2d791f), [`b4e97e6`](https://github.com/mastra-ai/mastra/commit/b4e97e676232a3a398ef32d3e78faa0c91c5fa1c), [`a0509c7`](https://github.com/mastra-ai/mastra/commit/a0509c731a08aa3ed626557c5338126362856f57), [`06e0d63`](https://github.com/mastra-ai/mastra/commit/06e0d63d42bc2a202e18bc091f3781f409f5e6fb), [`bf3fe49`](https://github.com/mastra-ai/mastra/commit/bf3fe49f9467dbbdb8f9eaf74e0f7971ffb19559), [`01caf93`](https://github.com/mastra-ai/mastra/commit/01caf93d71ae2c1e65f49735cafb531975187426), [`438a971`](https://github.com/mastra-ai/mastra/commit/438a9715c8b4398e5eaf8914a1f19dc8a85dc1de), [`9990965`](https://github.com/mastra-ai/mastra/commit/999096571635a83b42ef40841fd7028cfa630779), [`77518cc`](https://github.com/mastra-ai/mastra/commit/77518ccb5bb8cc684875081e64213dc85cffdbee), [`fbeda0c`](https://github.com/mastra-ai/mastra/commit/fbeda0c0f35def07e6837936dd3a003b2b7c5172), [`8a68844`](https://github.com/mastra-ai/mastra/commit/8a688443013816105a09f89c6afa34b5ff13e26d), [`bb2a13b`](https://github.com/mastra-ai/mastra/commit/bb2a13bb4b32e6bb807200fe7b18ae8fa4322118), [`24ceaea`](https://github.com/mastra-ai/mastra/commit/24ceaea0bdd8609cabbab764380608ca6621a194), [`a73cd1a`](https://github.com/mastra-ai/mastra/commit/a73cd1a62a5e4ca023dcc39ba150029f4f1f74c1), [`c0ffa3c`](https://github.com/mastra-ai/mastra/commit/c0ffa3c897ccd326de880df734740a7f0681a18f), [`462a769`](https://github.com/mastra-ai/mastra/commit/462a769da61850862ca1be3d74134d33078ee6a7), [`0504bf5`](https://github.com/mastra-ai/mastra/commit/0504bf5e8cffc571a4b343326178de371e6f859b), [`9e45902`](https://github.com/mastra-ai/mastra/commit/9e4590208e745055cecca202e2db0e5c65e17d3c), [`0b5cc47`](https://github.com/mastra-ai/mastra/commit/0b5cc4726dc18d9a685a27520db39ff1b36bb89a), [`87f38a3`](https://github.com/mastra-ai/mastra/commit/87f38a3de03e24731f2dd6f8ed6a60b6722b85a1), [`d5fa3cd`](https://github.com/mastra-ai/mastra/commit/d5fa3cda1788c3cb93a361a3c6ec47de6ba21e98), [`fe98ef2`](https://github.com/mastra-ai/mastra/commit/fe98ef2e66dbfcbd7d645c88c9ee1e67b458a136), [`6ccf67b`](https://github.com/mastra-ai/mastra/commit/6ccf67bf075753754927a57bc2e1734ba2c820c5), [`793ea0f`](https://github.com/mastra-ai/mastra/commit/793ea0f52f831178837f21c83af6af93bf4ce638), [`825d8de`](https://github.com/mastra-ai/mastra/commit/825d8def9fa64c2bcc3d8dd6b49e09342c3ac5c7), [`507a5c4`](https://github.com/mastra-ai/mastra/commit/507a5c461bdc3136ad80744c0efbb55ce1f18f97), [`5afe423`](https://github.com/mastra-ai/mastra/commit/5afe423e4badf040f1b0d4525183a856fcb8146e), [`307573b`](https://github.com/mastra-ai/mastra/commit/307573b9ff3149b70c79540dbc86f1319b180f29), [`79b3626`](https://github.com/mastra-ai/mastra/commit/79b3626f8d647307eb07c8da14c9073c2699719d), [`c2c1d7b`](https://github.com/mastra-ai/mastra/commit/c2c1d7bb61d2602955f14ed3952f807c2d6eb576), [`86623c1`](https://github.com/mastra-ai/mastra/commit/86623c1adf7d22de32cc916dda17f4155184db36), [`1505c07`](https://github.com/mastra-ai/mastra/commit/1505c07603f6346bae12aa82f140e8b88ffea9ab), [`f328049`](https://github.com/mastra-ai/mastra/commit/f3280498c324afd2a8d36cd828f5b9f94a2dddc1), [`e545228`](https://github.com/mastra-ai/mastra/commit/e54522856934a5dc030b7b6385771e3548020d59), [`3eb852e`](https://github.com/mastra-ai/mastra/commit/3eb852e5435bc908b800193498103dc724f455b0), [`ffa09e7`](https://github.com/mastra-ai/mastra/commit/ffa09e772a5c92270eabe2090fc42d45bd8ec4b7), [`8c9f1c0`](https://github.com/mastra-ai/mastra/commit/8c9f1c0361d89066f9bcd14a2f69e761b01766c8), [`461a7c5`](https://github.com/mastra-ai/mastra/commit/461a7c501449295287f4f0ee4b0b42344f39fcf8), [`0200e75`](https://github.com/mastra-ai/mastra/commit/0200e7552d02d4221cd6040bf4eddf189a97a156), [`4211472`](https://github.com/mastra-ai/mastra/commit/4211472a5a2bd319c60cd2e42d9109c3eef7ac1c), [`9e45902`](https://github.com/mastra-ai/mastra/commit/9e4590208e745055cecca202e2db0e5c65e17d3c), [`5c0df77`](https://github.com/mastra-ai/mastra/commit/5c0df776c40efa420f8c07a2f3ee66010296618e), [`e940f09`](https://github.com/mastra-ai/mastra/commit/e940f099ef5d18b403e6f2b4937e086a4da857b1)]:
107
+ - @mastra/core@1.47.0
108
+ - @mastra/client-js@1.28.0
109
+ - @mastra/react@1.2.0
110
+ - @mastra/memory@1.21.2
111
+
112
+ ## 37.0.0-alpha.7
113
+
114
+ ### Patch Changes
115
+
116
+ - Updated dependencies [[`8a68844`](https://github.com/mastra-ai/mastra/commit/8a688443013816105a09f89c6afa34b5ff13e26d)]:
117
+ - @mastra/core@1.47.0-alpha.7
118
+ - @mastra/client-js@1.28.0-alpha.7
119
+ - @mastra/react@1.2.0-alpha.7
120
+
3
121
  ## 37.0.0-alpha.6
4
122
 
5
123
  ### Patch Changes
package/dist/index.cjs.js CHANGED
@@ -134,6 +134,7 @@ const lucideReact = require('lucide-react');
134
134
  const React = require('react');
135
135
  const reactResizablePanels = require('react-resizable-panels');
136
136
  const icons_Icon = require('./icons/Icon.cjs.js');
137
+ const envFile = require('./env-file-NaBwN1WJ.cjs');
137
138
  const zustand = require('zustand');
138
139
  const middleware = require('zustand/middleware');
139
140
  const icons_AgentCoinIcon = require('./icons/AgentCoinIcon.cjs.js');
@@ -154,7 +155,6 @@ const icons_CommitIcon = require('./icons/CommitIcon.cjs.js');
154
155
  const icons_CrossIcon = require('./icons/CrossIcon.cjs.js');
155
156
  const dateFns = require('date-fns');
156
157
  const observability = require('@mastra/core/observability');
157
- const envFile = require('./env-file-NaBwN1WJ.cjs');
158
158
  const icons_DatasetsIcon = require('./icons/DatasetsIcon.cjs.js');
159
159
  const icons_DbIcon = require('./icons/DbIcon.cjs.js');
160
160
  const icons_DebugIcon = require('./icons/DebugIcon.cjs.js');
@@ -8519,6 +8519,16 @@ exports.shouldRetryQuery = utils_queryUtils.shouldRetryQuery;
8519
8519
  exports.Toaster = toast.Toaster;
8520
8520
  exports.toast = toast.toast;
8521
8521
  exports.Icon = icons_Icon.Icon;
8522
+ exports.DUPLICATE_ENVIRONMENT_VARIABLE_MESSAGE = envFile.DUPLICATE_ENVIRONMENT_VARIABLE_MESSAGE;
8523
+ exports.DuplicateEnvironmentVariableKeyError = envFile.DuplicateEnvironmentVariableKeyError;
8524
+ exports.ENV_FILE_MAX_SIZE = envFile.ENV_FILE_MAX_SIZE;
8525
+ exports.collectEnvironmentVariables = envFile.collectEnvironmentVariables;
8526
+ exports.createEmptyEnvironmentVariableEntry = envFile.createEmptyEnvironmentVariableEntry;
8527
+ exports.getDuplicateEnvironmentVariableKeys = envFile.getDuplicateEnvironmentVariableKeys;
8528
+ exports.parseEnvFileText = envFile.parseEnvFileText;
8529
+ exports.readEnvFile = envFile.readEnvFile;
8530
+ exports.rowsFromEnvironmentVariables = envFile.rowsFromEnvironmentVariables;
8531
+ exports.rowsToEnvFileText = envFile.rowsToEnvFileText;
8522
8532
  exports.AgentCoinIcon = icons_AgentCoinIcon.AgentCoinIcon;
8523
8533
  exports.AgentIcon = icons_AgentIcon.AgentIcon;
8524
8534
  exports.AgentNetworkCoinIcon = icons_AgentNetworkCoinIcon.AgentNetworkCoinIcon;
@@ -8544,16 +8554,6 @@ exports.ChevronIcon = icons_ChevronIcon.ChevronIcon;
8544
8554
  exports.CohereIcon = icons_CohereIcon.CohereIcon;
8545
8555
  exports.CommitIcon = icons_CommitIcon.CommitIcon;
8546
8556
  exports.CrossIcon = icons_CrossIcon.CrossIcon;
8547
- exports.DUPLICATE_ENVIRONMENT_VARIABLE_MESSAGE = envFile.DUPLICATE_ENVIRONMENT_VARIABLE_MESSAGE;
8548
- exports.DuplicateEnvironmentVariableKeyError = envFile.DuplicateEnvironmentVariableKeyError;
8549
- exports.ENV_FILE_MAX_SIZE = envFile.ENV_FILE_MAX_SIZE;
8550
- exports.collectEnvironmentVariables = envFile.collectEnvironmentVariables;
8551
- exports.createEmptyEnvironmentVariableEntry = envFile.createEmptyEnvironmentVariableEntry;
8552
- exports.getDuplicateEnvironmentVariableKeys = envFile.getDuplicateEnvironmentVariableKeys;
8553
- exports.parseEnvFileText = envFile.parseEnvFileText;
8554
- exports.readEnvFile = envFile.readEnvFile;
8555
- exports.rowsFromEnvironmentVariables = envFile.rowsFromEnvironmentVariables;
8556
- exports.rowsToEnvFileText = envFile.rowsToEnvFileText;
8557
8557
  exports.DatasetsIcon = icons_DatasetsIcon.DatasetsIcon;
8558
8558
  exports.DbIcon = icons_DbIcon.DbIcon;
8559
8559
  exports.DebugIcon = icons_DebugIcon.DebugIcon;
package/dist/index.es.js CHANGED
@@ -142,6 +142,7 @@ import { ChevronRight, ChevronLeft, LogsIcon, EyeIcon, GaugeIcon, BrainIcon, Che
142
142
  import { useRef, useCallback, useState, useEffect, useMemo, useContext, createContext, Fragment as Fragment$1 } from 'react';
143
143
  import { usePanelRef, Panel, Separator, Group } from 'react-resizable-panels';
144
144
  import { Icon } from './icons/Icon.es.js';
145
+ export { D as DUPLICATE_ENVIRONMENT_VARIABLE_MESSAGE, b as DuplicateEnvironmentVariableKeyError, E as ENV_FILE_MAX_SIZE, c as collectEnvironmentVariables, a as createEmptyEnvironmentVariableEntry, g as getDuplicateEnvironmentVariableKeys, p as parseEnvFileText, r as readEnvFile, d as rowsFromEnvironmentVariables, e as rowsToEnvFileText } from './env-file-BF23giwP.js';
145
146
  import { create } from 'zustand';
146
147
  import { persist } from 'zustand/middleware';
147
148
  export { AgentCoinIcon } from './icons/AgentCoinIcon.es.js';
@@ -163,7 +164,6 @@ export { CommitIcon } from './icons/CommitIcon.es.js';
163
164
  export { CrossIcon } from './icons/CrossIcon.es.js';
164
165
  import { format } from 'date-fns';
165
166
  import { EntityType } from '@mastra/core/observability';
166
- export { D as DUPLICATE_ENVIRONMENT_VARIABLE_MESSAGE, b as DuplicateEnvironmentVariableKeyError, E as ENV_FILE_MAX_SIZE, c as collectEnvironmentVariables, a as createEmptyEnvironmentVariableEntry, g as getDuplicateEnvironmentVariableKeys, p as parseEnvFileText, r as readEnvFile, d as rowsFromEnvironmentVariables, e as rowsToEnvFileText } from './env-file-BF23giwP.js';
167
167
  export { DatasetsIcon } from './icons/DatasetsIcon.es.js';
168
168
  export { DbIcon } from './icons/DbIcon.es.js';
169
169
  export { DebugIcon } from './icons/DebugIcon.es.js';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mastra/playground-ui",
3
3
  "type": "module",
4
- "version": "37.0.0-alpha.6",
4
+ "version": "37.0.1-alpha.0",
5
5
  "description": "Mastra Playground components",
6
6
  "main": "dist/index.umd.js",
7
7
  "module": "dist/index.es.js",
@@ -119,8 +119,8 @@
119
119
  "react": ">=19.0.0",
120
120
  "react-dom": ">=19.0.0",
121
121
  "tailwindcss": "^4.0.0",
122
- "@mastra/client-js": "^1.28.0-alpha.6",
123
- "@mastra/react": "1.2.0-alpha.6"
122
+ "@mastra/client-js": "^1.28.1-alpha.0",
123
+ "@mastra/react": "1.2.1-alpha.0"
124
124
  },
125
125
  "devDependencies": {
126
126
  "@storybook/addon-a11y": "^10.4.1",
@@ -157,11 +157,11 @@
157
157
  "vite-plugin-dts": "^4.5.4",
158
158
  "vite-plugin-lib-inject-css": "^2.2.2",
159
159
  "vitest": "4.1.8",
160
- "@internal/lint": "0.0.108",
161
- "@mastra/core": "1.47.0-alpha.6",
162
- "@mastra/react": "1.2.0-alpha.6",
163
- "@mastra/client-js": "^1.28.0-alpha.6",
164
- "@mastra/memory": "1.21.2-alpha.1"
160
+ "@internal/lint": "0.0.109",
161
+ "@mastra/client-js": "^1.28.1-alpha.0",
162
+ "@mastra/core": "1.48.0-alpha.0",
163
+ "@mastra/memory": "1.21.2",
164
+ "@mastra/react": "1.2.1-alpha.0"
165
165
  },
166
166
  "homepage": "https://mastra.ai",
167
167
  "repository": {