@mastra/playground-ui 64.0.0-alpha.7 → 64.0.0-alpha.9
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/dist/combobox-BNlVCFgY.cjs +718 -0
- package/dist/combobox-BNlVCFgY.cjs.map +1 -0
- package/dist/combobox-Bw13EcK0.js +676 -0
- package/dist/combobox-Bw13EcK0.js.map +1 -0
- package/dist/{combobox-styles-B3jftCXY.js → combobox-styles-Dr66ofEp.js} +2 -2
- package/dist/{combobox-styles-B3jftCXY.js.map → combobox-styles-Dr66ofEp.js.map} +1 -1
- package/dist/components/Combobox.cjs.js +22 -1
- package/dist/components/Combobox.cjs.js.map +1 -1
- package/dist/components/Combobox.es.js +2 -2
- package/dist/components/DateTimeRangePicker.cjs.js +1 -1
- package/dist/components/DateTimeRangePicker.es.js +1 -1
- package/dist/components/FilterBar.es.js +3 -3
- package/dist/components/PropertyFilter.cjs.js +1 -1
- package/dist/components/PropertyFilter.es.js +1 -1
- package/dist/components/SavedViews.es.js +1 -1
- package/dist/components/Section.cjs.js +1 -1
- package/dist/components/Section.es.js +1 -1
- package/dist/components/SideDialog.cjs.js +1 -1
- package/dist/components/SideDialog.es.js +1 -1
- package/dist/{date-time-range-picker-B3qORFfa.cjs → date-time-range-picker-BjQVCVUM.cjs} +12 -3
- package/dist/date-time-range-picker-BjQVCVUM.cjs.map +1 -0
- package/dist/{date-time-range-picker-CmtCmIrU.js → date-time-range-picker-D-EECKzz.js} +13 -4
- package/dist/date-time-range-picker-D-EECKzz.js.map +1 -0
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.cjs.js +1 -1
- package/dist/domains/datasets/components/save-as-dataset-item-dialog.es.js +1 -1
- package/dist/domains/metrics/components/date-range-selector.cjs.js +1 -1
- package/dist/domains/metrics/components/date-range-selector.es.js +1 -1
- package/dist/domains/observability/components/add-trace-mocks-to-item-dialog.cjs.js +1 -1
- package/dist/domains/observability/components/add-trace-mocks-to-item-dialog.es.js +1 -1
- package/dist/domains/scores/components/span-scoring.cjs.js +1 -1
- package/dist/domains/scores/components/span-scoring.es.js +1 -1
- package/dist/domains/traces/components/trace-columns-menu.cjs.js +1 -1
- package/dist/domains/traces/components/trace-columns-menu.es.js +1 -1
- package/dist/domains/traces/components/trace-time-range-chip.cjs.js +1 -1
- package/dist/domains/traces/components/trace-time-range-chip.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-time-range-chip.es.js +2 -2
- package/dist/domains/traces/components/trace-time-range-chip.es.js.map +1 -1
- package/dist/domains/workflows/components/workflow-combobox.cjs.js +1 -1
- package/dist/domains/workflows/components/workflow-combobox.es.js +1 -1
- package/dist/{filter-bar-chip-BAqmNIeE.js → filter-bar-chip-BarAq1S2.js} +2 -2
- package/dist/{filter-bar-chip-BAqmNIeE.js.map → filter-bar-chip-BarAq1S2.js.map} +1 -1
- package/dist/layout/tabbed-container.cjs.js +1 -1
- package/dist/layout/tabbed-container.es.js +1 -1
- package/dist/new/settings.cjs.js +1 -1
- package/dist/new/settings.es.js +1 -1
- package/dist/{section-BPhTrzbk.cjs → section-CctlZIXp.cjs} +2 -2
- package/dist/{section-BPhTrzbk.cjs.map → section-CctlZIXp.cjs.map} +1 -1
- package/dist/{section-87-fGU29.js → section-D0hKTVXt.js} +2 -2
- package/dist/{section-87-fGU29.js.map → section-D0hKTVXt.js.map} +1 -1
- package/dist/{settings-row-DdLpZXM4.cjs → settings-row-m_4gDCwS.cjs} +16 -4
- package/dist/settings-row-m_4gDCwS.cjs.map +1 -0
- package/dist/{settings-row-Cm7IBGvT.js → settings-row-yuQjwWTl.js} +16 -4
- package/dist/settings-row-yuQjwWTl.js.map +1 -0
- package/dist/{side-dialog-qfaOhtjK.cjs → side-dialog-BzULMBaH.cjs} +2 -2
- package/dist/{side-dialog-qfaOhtjK.cjs.map → side-dialog-BzULMBaH.cjs.map} +1 -1
- package/dist/{side-dialog-QTPa70zU.js → side-dialog-bm8NPDXy.js} +2 -2
- package/dist/{side-dialog-QTPa70zU.js.map → side-dialog-bm8NPDXy.js.map} +1 -1
- package/dist/src/domains/traces/components/trace-time-range-chip.d.ts +1 -1
- package/dist/src/ds/components/Combobox/combobox-parts.d.ts +102 -0
- package/dist/src/ds/components/Combobox/combobox.d.ts +17 -3
- package/dist/src/ds/components/Combobox/index.d.ts +1 -0
- package/dist/src/ds/components/DateTimeRangePicker/custom-range-editor.d.ts +3 -1
- package/dist/src/ds/components/DateTimeRangePicker/date-time-range-picker.d.ts +3 -1
- package/dist/src/ds/new/settings/index.d.ts +1 -1
- package/dist/src/ds/new/settings/settings-container.d.ts +5 -1
- package/dist/style.css +113 -1
- package/package.json +9 -9
- package/dist/combobox-DlKD-Q3M.js +0 -208
- package/dist/combobox-DlKD-Q3M.js.map +0 -1
- package/dist/combobox-VHtZQcl9.cjs +0 -229
- package/dist/combobox-VHtZQcl9.cjs.map +0 -1
- package/dist/date-time-range-picker-B3qORFfa.cjs.map +0 -1
- package/dist/date-time-range-picker-CmtCmIrU.js.map +0 -1
- package/dist/settings-row-Cm7IBGvT.js.map +0 -1
- package/dist/settings-row-DdLpZXM4.cjs.map +0 -1
|
@@ -8,7 +8,7 @@ export declare const TRACE_TIME_RANGE_FIELD_ID = "timeRange";
|
|
|
8
8
|
*/
|
|
9
9
|
export declare const TRACE_TIME_RANGE_FIELD: FilterBarField;
|
|
10
10
|
export declare const TRACE_TIME_RANGE_ITEM: FilterBarItem;
|
|
11
|
-
export type TraceTimeRangeChipProps = Pick<DateTimeRangePickerProps, 'preset' | 'onPresetChange' | 'dateFrom' | 'dateTo' | 'onDateChange' | 'onDateRangeChange' | 'disabled' | 'maxRangeMs' | 'presets'>;
|
|
11
|
+
export type TraceTimeRangeChipProps = Pick<DateTimeRangePickerProps, 'preset' | 'onPresetChange' | 'dateFrom' | 'dateTo' | 'onDateChange' | 'onDateRangeChange' | 'disabled' | 'maxRangeMs' | 'minDate' | 'presets'>;
|
|
12
12
|
/**
|
|
13
13
|
* The trace list's date range rendered as a FilterBar chip: `Time <preset>`. Always
|
|
14
14
|
* present and non-removable; the value segment opens the regular DateTimeRangePicker
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { Combobox as BaseCombobox } from '@base-ui/react/combobox';
|
|
2
|
+
import { ComboboxVariant } from './combobox-styles';
|
|
3
|
+
import { ButtonSize, TextButtonSize } from '../Button/Button';
|
|
4
|
+
import { PortalContainer } from '../../primitives/portal-container';
|
|
5
|
+
import * as React from 'react';
|
|
6
|
+
/**
|
|
7
|
+
* Root. Same props as Base UI's `Combobox.Root` (`items`, `value`, `onValueChange`, `multiple`,
|
|
8
|
+
* `autoHighlight`, `filter`, ...). Pick one of three shapes:
|
|
9
|
+
* - Search in the field: `ComboboxInput` + `ComboboxContent`.
|
|
10
|
+
* - Multiple, chips in the field: `ComboboxChips` (chips + `ComboboxChipsInput`) + `ComboboxContent`.
|
|
11
|
+
* - Compact trigger, search in the popup: `ComboboxTrigger` + `ComboboxContent` starting with
|
|
12
|
+
* `ComboboxSearch`. For small triggers (an icon, a ghost button in a toolbar).
|
|
13
|
+
*/
|
|
14
|
+
declare function ComboboxRoot<Value, Multiple extends boolean | undefined = false>(props: BaseCombobox.Root.Props<Value, Multiple>): React.JSX.Element;
|
|
15
|
+
/**
|
|
16
|
+
* The selected value, for a compact `ComboboxTrigger` or a custom display. `children` can be a
|
|
17
|
+
* function of the value; `placeholder` shows while nothing is selected.
|
|
18
|
+
*/
|
|
19
|
+
declare function ComboboxValue(props: BaseCombobox.Value.Props): React.JSX.Element;
|
|
20
|
+
type ComboboxTriggerProps = Omit<BaseCombobox.Trigger.Props, 'className'> & {
|
|
21
|
+
className?: string;
|
|
22
|
+
/** The Button-recipe look, like Select: `default` (field surface), `outline` or `ghost`. */
|
|
23
|
+
variant?: ComboboxVariant;
|
|
24
|
+
/** Icon sizes (`icon-*`) show only `icon` (or the chevron); `children` stay as accessible text. */
|
|
25
|
+
size?: ButtonSize;
|
|
26
|
+
/** Shown before the value, or alone at icon sizes (e.g. a filter icon), replacing the chevron there. */
|
|
27
|
+
icon?: React.ReactNode;
|
|
28
|
+
showChevron?: boolean;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* A compact trigger that opens the list, with the search inside the popup (`ComboboxSearch`). For
|
|
32
|
+
* small triggers such as an icon or a ghost button; a form field uses ComboboxInput instead.
|
|
33
|
+
* `children` is what the trigger shows, usually `<ComboboxValue placeholder="…" />`.
|
|
34
|
+
*/
|
|
35
|
+
declare function ComboboxTrigger({ className, children, variant, size, icon, showChevron, ...props }: ComboboxTriggerProps): React.JSX.Element;
|
|
36
|
+
/** An × that clears the value. ComboboxInput renders it with `showClear`. */
|
|
37
|
+
declare function ComboboxClear({ className, ...props }: BaseCombobox.Clear.Props): React.JSX.Element;
|
|
38
|
+
type ComboboxInputProps = Omit<BaseCombobox.Input.Props, 'size'> & {
|
|
39
|
+
/** The field height, from the control sizes. `md` by default. */
|
|
40
|
+
size?: TextButtonSize;
|
|
41
|
+
/** Shown before the text, e.g. the selected item's icon. */
|
|
42
|
+
start?: React.ReactNode;
|
|
43
|
+
/** The chevron button at the end. On by default. */
|
|
44
|
+
showTrigger?: boolean;
|
|
45
|
+
/** An × before the chevron that clears the value. */
|
|
46
|
+
showClear?: boolean;
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* The field you type in to filter, showing the selected value while it's closed. `children` render
|
|
50
|
+
* inside the field before the chevron (e.g. a muted "4 items" detail). The list opens at the
|
|
51
|
+
* field's width. Inside a `Field`, the label and errors link to it.
|
|
52
|
+
*/
|
|
53
|
+
declare function ComboboxInput({ className, children, showTrigger, showClear, size, start, onFocus, ...props }: ComboboxInputProps): React.JSX.Element;
|
|
54
|
+
/**
|
|
55
|
+
* The search row at the top of the popup, for a compact `ComboboxTrigger`. The same row as today's
|
|
56
|
+
* Combobox: a search icon, a borderless input and a hairline under it.
|
|
57
|
+
*/
|
|
58
|
+
declare function ComboboxSearch({ className, ...props }: BaseCombobox.Input.Props): React.JSX.Element;
|
|
59
|
+
type ComboboxContentProps = BaseCombobox.Popup.Props & Pick<BaseCombobox.Positioner.Props, 'side' | 'align' | 'sideOffset' | 'alignOffset' | 'anchor'> & {
|
|
60
|
+
/** Where the popup portals to. Defaults to the nearest dialog or drawer, so it stays interactive there. */
|
|
61
|
+
container?: PortalContainer;
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* The popup. Under a field (ComboboxInput or ComboboxChips) it opens at the field's width; under a
|
|
65
|
+
* compact ComboboxTrigger it takes the trigger's width, at least 11rem. Either way the width never
|
|
66
|
+
* follows the filtered items, so it holds still while you type; long labels truncate.
|
|
67
|
+
*/
|
|
68
|
+
declare function ComboboxContent({ className, side, sideOffset, align, alignOffset, anchor, container, ...props }: ComboboxContentProps): React.JSX.Element;
|
|
69
|
+
/** The scrolling list. Children: a render function per item (or per group), like Base UI's List. */
|
|
70
|
+
declare function ComboboxList({ className, ...props }: BaseCombobox.List.Props): React.JSX.Element;
|
|
71
|
+
/** One option. A check shows on the right while it's selected; the hover highlight slides between items. */
|
|
72
|
+
declare function ComboboxItem({ className, children, ref, ...props }: BaseCombobox.Item.Props): React.JSX.Element;
|
|
73
|
+
/** Title over a description inside an item (shadcn's Item / ItemTitle / ItemDescription). */
|
|
74
|
+
declare function ComboboxItemContent({ className, ...props }: React.ComponentProps<'span'>): React.JSX.Element;
|
|
75
|
+
declare function ComboboxItemTitle({ className, ...props }: React.ComponentProps<'span'>): React.JSX.Element;
|
|
76
|
+
/** Muted, up to two lines. */
|
|
77
|
+
declare function ComboboxItemDescription({ className, ...props }: React.ComponentProps<'span'>): React.JSX.Element;
|
|
78
|
+
/** Muted text at the end of an item, e.g. its kind ("Agent"). */
|
|
79
|
+
declare function ComboboxItemEnd({ className, ...props }: React.ComponentProps<'span'>): React.JSX.Element;
|
|
80
|
+
/** A section of items. Pass the section's `items`; render them with ComboboxCollection. */
|
|
81
|
+
declare function ComboboxGroup(props: BaseCombobox.Group.Props): React.JSX.Element;
|
|
82
|
+
/** A group's heading, styled like menu section labels. */
|
|
83
|
+
declare function ComboboxLabel({ className, ...props }: BaseCombobox.GroupLabel.Props): React.JSX.Element;
|
|
84
|
+
/** Renders a group's filtered items, one render function call per item. */
|
|
85
|
+
declare function ComboboxCollection(props: BaseCombobox.Collection.Props): React.JSX.Element;
|
|
86
|
+
/** Shows its children only when the filter matches nothing. */
|
|
87
|
+
declare function ComboboxEmpty({ className, ...props }: BaseCombobox.Empty.Props): React.JSX.Element;
|
|
88
|
+
declare function ComboboxSeparator({ className, ...props }: BaseCombobox.Separator.Props): React.JSX.Element;
|
|
89
|
+
/**
|
|
90
|
+
* Multi-select field: chips for the picked items, then ComboboxChipsInput. The chips and input wrap
|
|
91
|
+
* inside their own area so the chevron keeps its place on the first row. While the field is one
|
|
92
|
+
* line it keeps the pill shape of every other field; once chips wrap it takes the Textarea corner.
|
|
93
|
+
*/
|
|
94
|
+
declare function ComboboxChips({ className, children, ...props }: BaseCombobox.Chips.Props): React.JSX.Element;
|
|
95
|
+
/** One picked item inside ComboboxChips. The × (or Backspace in the input) removes it. */
|
|
96
|
+
declare function ComboboxChip({ className, children, showRemove, ...props }: BaseCombobox.Chip.Props & {
|
|
97
|
+
showRemove?: boolean;
|
|
98
|
+
}): React.JSX.Element;
|
|
99
|
+
/** The text input after the chips in ComboboxChips. */
|
|
100
|
+
declare function ComboboxChipsInput({ className, onFocus, ...props }: BaseCombobox.Input.Props): React.JSX.Element;
|
|
101
|
+
export type { ComboboxTriggerProps, ComboboxInputProps, ComboboxContentProps };
|
|
102
|
+
export { ComboboxRoot, ComboboxInput, ComboboxTrigger, ComboboxSearch, ComboboxValue, ComboboxClear, ComboboxContent, ComboboxList, ComboboxItem, ComboboxItemContent, ComboboxItemTitle, ComboboxItemDescription, ComboboxItemEnd, ComboboxGroup, ComboboxLabel, ComboboxCollection, ComboboxEmpty, ComboboxSeparator, ComboboxChips, ComboboxChip, ComboboxChipsInput, };
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ComboboxVariant } from './combobox-styles';
|
|
2
2
|
import { ButtonSize } from '../Button/Button';
|
|
3
|
+
import { PortalContainer } from '../../primitives/portal-container';
|
|
3
4
|
import * as React from 'react';
|
|
4
5
|
export type { ComboboxVariant } from './combobox-styles';
|
|
5
6
|
export type ComboboxOption = {
|
|
@@ -15,16 +16,21 @@ export type ComboboxOption = {
|
|
|
15
16
|
type ComboboxSharedProps = {
|
|
16
17
|
options: ComboboxOption[];
|
|
17
18
|
placeholder?: React.ReactNode;
|
|
19
|
+
/** The search row's placeholder for compact triggers. A field (inside a `Field`) searches in itself and shows `placeholder`. */
|
|
18
20
|
searchPlaceholder?: string;
|
|
19
21
|
emptyText?: string;
|
|
20
22
|
className?: string;
|
|
21
23
|
disabled?: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* `default` inside a `Field` is a form field you type in to search. `ghost` (and the legacy `outline`/`link`),
|
|
26
|
+
* or any variant outside a `Field`, is a compact trigger with the search inside the popup.
|
|
27
|
+
*/
|
|
22
28
|
variant?: ComboboxVariant;
|
|
23
|
-
/** Icon sizes (`icon-*`) render a chevron-only trigger; pass `aria-label` to name it. */
|
|
29
|
+
/** Icon sizes (`icon-*`) render a chevron-only trigger with the search in the popup; pass `aria-label` to name it. */
|
|
24
30
|
size?: ButtonSize;
|
|
25
31
|
open?: boolean;
|
|
26
32
|
onOpenChange?: (open: boolean) => void;
|
|
27
|
-
container?:
|
|
33
|
+
container?: PortalContainer;
|
|
28
34
|
id?: string;
|
|
29
35
|
'aria-label'?: string;
|
|
30
36
|
'aria-describedby'?: string;
|
|
@@ -33,7 +39,7 @@ type ComboboxSharedProps = {
|
|
|
33
39
|
showChevron?: boolean;
|
|
34
40
|
iconOnlyValue?: boolean;
|
|
35
41
|
allowCustomValue?: boolean;
|
|
36
|
-
/** Called with the search
|
|
42
|
+
/** Called with the search text as it changes (and with `''` after a compact trigger's selection resets it). */
|
|
37
43
|
onInputValueChange?: (value: string) => void;
|
|
38
44
|
/** @deprecated Wrap the combobox in `<Field invalid>` with a `FieldError`. */
|
|
39
45
|
error?: string;
|
|
@@ -52,4 +58,12 @@ export type ComboboxMultipleProps = ComboboxSharedProps & {
|
|
|
52
58
|
clearLabel?: string;
|
|
53
59
|
};
|
|
54
60
|
export type ComboboxProps = ComboboxSingleProps | ComboboxMultipleProps;
|
|
61
|
+
/**
|
|
62
|
+
* A searchable select driven by `options`, built on the Combobox parts.
|
|
63
|
+
*
|
|
64
|
+
* Inside a `Field`, a `default` combobox searches right in the field: a text field for a single value,
|
|
65
|
+
* removable chips for `multiple`. Everywhere else (outside a `Field`, `ghost` and icon-size triggers,
|
|
66
|
+
* custom non-text placeholders) it keeps a compact trigger with the search inside the popup. For anything
|
|
67
|
+
* these props don't cover (groups, rich items), compose the parts directly (`ComboboxRoot`, ...).
|
|
68
|
+
*/
|
|
55
69
|
export declare function Combobox(props: ComboboxProps): React.JSX.Element;
|
|
@@ -4,6 +4,8 @@ export interface CustomRangeEditorProps {
|
|
|
4
4
|
disabled?: boolean;
|
|
5
5
|
/** Widest range that can be applied, in milliseconds. */
|
|
6
6
|
maxRangeMs?: number;
|
|
7
|
+
/** Earliest day a range can start on. Days before it are disabled. */
|
|
8
|
+
minDate?: Date;
|
|
7
9
|
onApply: (from: Date | undefined, to: Date | undefined) => void;
|
|
8
10
|
onShowPresets: () => void;
|
|
9
11
|
}
|
|
@@ -11,4 +13,4 @@ export interface CustomRangeEditorProps {
|
|
|
11
13
|
* The custom range popover body. It mounts each time the popover opens, so its drafts
|
|
12
14
|
* start from the current range without the picker resetting them.
|
|
13
15
|
*/
|
|
14
|
-
export declare function CustomRangeEditor({ dateFrom, dateTo, disabled, maxRangeMs, onApply, onShowPresets, }: CustomRangeEditorProps): import("react").JSX.Element;
|
|
16
|
+
export declare function CustomRangeEditor({ dateFrom, dateTo, disabled, maxRangeMs, minDate, onApply, onShowPresets, }: CustomRangeEditorProps): import("react").JSX.Element;
|
|
@@ -15,6 +15,8 @@ export interface DateTimeRangePickerProps {
|
|
|
15
15
|
disabled?: boolean;
|
|
16
16
|
/** Widest custom range that can be applied, in milliseconds. Presets are unaffected. */
|
|
17
17
|
maxRangeMs?: number;
|
|
18
|
+
/** Earliest day a custom range can start on, e.g. the oldest data still kept. Earlier days are disabled. */
|
|
19
|
+
minDate?: Date;
|
|
18
20
|
/** Subset of presets to show. If omitted, all presets are shown. */
|
|
19
21
|
presets?: readonly DateRangePreset[];
|
|
20
22
|
/** Size passed through to the trigger Button. Defaults to 'md'. */
|
|
@@ -28,4 +30,4 @@ export interface DateTimeRangePickerProps {
|
|
|
28
30
|
disabled?: boolean;
|
|
29
31
|
}) => ReactElement;
|
|
30
32
|
}
|
|
31
|
-
export declare function DateTimeRangePicker({ preset, onPresetChange, dateFrom, dateTo, onDateChange, onDateRangeChange, disabled, maxRangeMs, presets, size, renderTrigger, }: DateTimeRangePickerProps): import("react").JSX.Element;
|
|
33
|
+
export declare function DateTimeRangePicker({ preset, onPresetChange, dateFrom, dateTo, onDateChange, onDateRangeChange, disabled, maxRangeMs, minDate, presets, size, renderTrigger, }: DateTimeRangePickerProps): import("react").JSX.Element;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { SettingsContainer } from './settings-container';
|
|
1
|
+
export { SettingsContainer, type SettingsContainerProps, type SettingsContainerVariant } from './settings-container';
|
|
2
2
|
export { SettingsDescription, SettingsGroup, SettingsHeader, SettingsTitle } from './settings-header';
|
|
3
3
|
export { SettingsFieldsetRow, SettingsRow, type SettingsFieldsetRowProps, type SettingsRowProps } from './settings-row';
|
|
4
4
|
export { SettingsLayout, type SettingsLayoutProps } from './settings-layout';
|
|
@@ -2,4 +2,8 @@ import { ComponentProps } from 'react';
|
|
|
2
2
|
export declare function SettingsContainerLayout({ layout, className, ...props }: ComponentProps<'div'> & {
|
|
3
3
|
layout: 'factory' | 'section';
|
|
4
4
|
}): import("react").JSX.Element;
|
|
5
|
-
export
|
|
5
|
+
export type SettingsContainerVariant = 'default' | 'inset';
|
|
6
|
+
export type SettingsContainerProps = ComponentProps<'div'> & {
|
|
7
|
+
variant?: SettingsContainerVariant;
|
|
8
|
+
};
|
|
9
|
+
export declare function SettingsContainer({ variant, className, ...props }: SettingsContainerProps): import("react").JSX.Element;
|
package/dist/style.css
CHANGED
|
@@ -1986,6 +1986,11 @@
|
|
|
1986
1986
|
height: calc(var(--spacing) * 5);
|
|
1987
1987
|
}
|
|
1988
1988
|
|
|
1989
|
+
.size-5\.5 {
|
|
1990
|
+
width: calc(var(--spacing) * 5.5);
|
|
1991
|
+
height: calc(var(--spacing) * 5.5);
|
|
1992
|
+
}
|
|
1993
|
+
|
|
1989
1994
|
.size-6 {
|
|
1990
1995
|
width: calc(var(--spacing) * 6);
|
|
1991
1996
|
height: calc(var(--spacing) * 6);
|
|
@@ -2163,6 +2168,10 @@
|
|
|
2163
2168
|
height: calc(var(--spacing) * 5);
|
|
2164
2169
|
}
|
|
2165
2170
|
|
|
2171
|
+
.h-5\.5 {
|
|
2172
|
+
height: calc(var(--spacing) * 5.5);
|
|
2173
|
+
}
|
|
2174
|
+
|
|
2166
2175
|
.h-6 {
|
|
2167
2176
|
height: calc(var(--spacing) * 6);
|
|
2168
2177
|
}
|
|
@@ -2731,6 +2740,10 @@
|
|
|
2731
2740
|
min-height: 100vh;
|
|
2732
2741
|
}
|
|
2733
2742
|
|
|
2743
|
+
.w-\(--anchor-width\) {
|
|
2744
|
+
width: var(--anchor-width);
|
|
2745
|
+
}
|
|
2746
|
+
|
|
2734
2747
|
.w-\(--attachment-action-width\) {
|
|
2735
2748
|
width: var(--attachment-action-width);
|
|
2736
2749
|
}
|
|
@@ -3155,6 +3168,10 @@
|
|
|
3155
3168
|
width: calc(var(--sidebar-width) - 1rem);
|
|
3156
3169
|
}
|
|
3157
3170
|
|
|
3171
|
+
.w-\[max\(11rem\,var\(--anchor-width\)\)\] {
|
|
3172
|
+
width: max(11rem, var(--anchor-width));
|
|
3173
|
+
}
|
|
3174
|
+
|
|
3158
3175
|
.w-\[min\(24rem\,calc\(100vw-2rem\)\)\] {
|
|
3159
3176
|
width: min(24rem, 100vw - 2rem);
|
|
3160
3177
|
}
|
|
@@ -4301,6 +4318,10 @@
|
|
|
4301
4318
|
gap: .75em;
|
|
4302
4319
|
}
|
|
4303
4320
|
|
|
4321
|
+
.gap-\[3px\] {
|
|
4322
|
+
gap: 3px;
|
|
4323
|
+
}
|
|
4324
|
+
|
|
4304
4325
|
.gap-\[6px\] {
|
|
4305
4326
|
gap: 6px;
|
|
4306
4327
|
}
|
|
@@ -4656,6 +4677,11 @@
|
|
|
4656
4677
|
border-bottom-right-radius: var(--radius-3xl);
|
|
4657
4678
|
}
|
|
4658
4679
|
|
|
4680
|
+
.rounded-r-full {
|
|
4681
|
+
border-top-right-radius: 3.40282e38px;
|
|
4682
|
+
border-bottom-right-radius: 3.40282e38px;
|
|
4683
|
+
}
|
|
4684
|
+
|
|
4659
4685
|
.rounded-r-md {
|
|
4660
4686
|
border-top-right-radius: var(--radius-md);
|
|
4661
4687
|
border-bottom-right-radius: var(--radius-md);
|
|
@@ -6298,6 +6324,10 @@
|
|
|
6298
6324
|
padding-right: calc(var(--spacing) * 12);
|
|
6299
6325
|
}
|
|
6300
6326
|
|
|
6327
|
+
.pr-\[5\.5px\] {
|
|
6328
|
+
padding-right: 5.5px;
|
|
6329
|
+
}
|
|
6330
|
+
|
|
6301
6331
|
.pb-\(--chat-gutter\) {
|
|
6302
6332
|
padding-bottom: var(--chat-gutter);
|
|
6303
6333
|
}
|
|
@@ -6414,6 +6444,10 @@
|
|
|
6414
6444
|
padding-left: .9em;
|
|
6415
6445
|
}
|
|
6416
6446
|
|
|
6447
|
+
.pl-\[3\.5px\] {
|
|
6448
|
+
padding-left: 3.5px;
|
|
6449
|
+
}
|
|
6450
|
+
|
|
6417
6451
|
.pl-\[18px\] {
|
|
6418
6452
|
padding-left: 18px;
|
|
6419
6453
|
}
|
|
@@ -6422,6 +6456,10 @@
|
|
|
6422
6456
|
padding-left: 2.75em;
|
|
6423
6457
|
}
|
|
6424
6458
|
|
|
6459
|
+
.pl-\[calc\(0\.9em_-_4px\)\] {
|
|
6460
|
+
padding-left: calc(.9em - 4px);
|
|
6461
|
+
}
|
|
6462
|
+
|
|
6425
6463
|
.pl-\[calc\(var\(--text-label\)\*2\.75\+1px\)\] {
|
|
6426
6464
|
padding-left: calc(var(--text-label) * 2.75 + 1px);
|
|
6427
6465
|
}
|
|
@@ -9460,6 +9498,14 @@
|
|
|
9460
9498
|
.not-disabled\:hover\:text-foreground:not(:disabled):hover {
|
|
9461
9499
|
color: var(--foreground);
|
|
9462
9500
|
}
|
|
9501
|
+
|
|
9502
|
+
.not-data-disabled\:hover\:bg-fill:not([data-disabled]):hover {
|
|
9503
|
+
background-color: var(--fill);
|
|
9504
|
+
}
|
|
9505
|
+
|
|
9506
|
+
.not-data-disabled\:hover\:text-foreground:not([data-disabled]):hover {
|
|
9507
|
+
color: var(--foreground);
|
|
9508
|
+
}
|
|
9463
9509
|
}
|
|
9464
9510
|
|
|
9465
9511
|
.focus\:border-border-focus:focus {
|
|
@@ -9949,6 +9995,14 @@
|
|
|
9949
9995
|
cursor: pointer;
|
|
9950
9996
|
}
|
|
9951
9997
|
|
|
9998
|
+
.has-\[input\:disabled\]\:cursor-not-allowed:has(:is(input:disabled)) {
|
|
9999
|
+
cursor: not-allowed;
|
|
10000
|
+
}
|
|
10001
|
+
|
|
10002
|
+
.has-\[input\:disabled\]\:bg-field-disabled:has(:is(input:disabled)) {
|
|
10003
|
+
background-color: var(--field-disabled);
|
|
10004
|
+
}
|
|
10005
|
+
|
|
9952
10006
|
.has-\[textarea\]\:h-auto:has(:is(textarea)) {
|
|
9953
10007
|
height: auto;
|
|
9954
10008
|
}
|
|
@@ -10168,7 +10222,15 @@
|
|
|
10168
10222
|
color: var(--destructive-foreground);
|
|
10169
10223
|
}
|
|
10170
10224
|
|
|
10171
|
-
.data-highlighted\:text-foreground[data-highlighted]
|
|
10225
|
+
.data-highlighted\:text-foreground[data-highlighted] {
|
|
10226
|
+
color: var(--foreground);
|
|
10227
|
+
}
|
|
10228
|
+
|
|
10229
|
+
.data-multiline\:rounded-xl[data-multiline] {
|
|
10230
|
+
border-radius: var(--radius-xl);
|
|
10231
|
+
}
|
|
10232
|
+
|
|
10233
|
+
.data-selected\:text-foreground[data-selected], .data-sorted\:text-foreground[data-sorted], .data-\[active\]\:text-foreground[data-active] {
|
|
10172
10234
|
color: var(--foreground);
|
|
10173
10235
|
}
|
|
10174
10236
|
|
|
@@ -10330,6 +10392,14 @@
|
|
|
10330
10392
|
--tw-exit-scale: .95;
|
|
10331
10393
|
}
|
|
10332
10394
|
|
|
10395
|
+
.data-\[current\=true\]\:rounded-xl[data-current="true"] {
|
|
10396
|
+
border-radius: var(--radius-xl);
|
|
10397
|
+
}
|
|
10398
|
+
|
|
10399
|
+
.data-\[current\=true\]\:bg-fill-subtle[data-current="true"] {
|
|
10400
|
+
background-color: var(--fill-subtle);
|
|
10401
|
+
}
|
|
10402
|
+
|
|
10333
10403
|
.data-\[direction\=end\]\:bottom-4[data-direction="end"] {
|
|
10334
10404
|
bottom: calc(var(--spacing) * 4);
|
|
10335
10405
|
}
|
|
@@ -11879,6 +11949,14 @@
|
|
|
11879
11949
|
}
|
|
11880
11950
|
}
|
|
11881
11951
|
|
|
11952
|
+
.has-\[input\:disabled\]\:\[\&_\*\]\:cursor-not-allowed:has(:is(input:disabled)) * {
|
|
11953
|
+
cursor: not-allowed;
|
|
11954
|
+
}
|
|
11955
|
+
|
|
11956
|
+
.has-\[input\:disabled\]\:\[\&_\*\]\:text-muted-foreground:has(:is(input:disabled)) * {
|
|
11957
|
+
color: var(--muted-foreground);
|
|
11958
|
+
}
|
|
11959
|
+
|
|
11882
11960
|
.\[\&_\*\:focus\:not\(\:focus-visible\)\]\:outline-none :focus:not(:focus-visible) {
|
|
11883
11961
|
--tw-outline-style: none;
|
|
11884
11962
|
outline-style: none;
|
|
@@ -12172,6 +12250,10 @@
|
|
|
12172
12250
|
.not-disabled\:hover\:\[\&_svg\]\:text-foreground:not(:disabled):hover svg {
|
|
12173
12251
|
color: var(--foreground);
|
|
12174
12252
|
}
|
|
12253
|
+
|
|
12254
|
+
.not-disabled\:hover\:\[\&_svg\]\:text-muted-foreground:not(:disabled):hover svg {
|
|
12255
|
+
color: var(--muted-foreground);
|
|
12256
|
+
}
|
|
12175
12257
|
}
|
|
12176
12258
|
|
|
12177
12259
|
.aria-disabled\:\[\&_svg\]\:text-muted-foreground[aria-disabled="true"] svg {
|
|
@@ -12515,6 +12597,10 @@
|
|
|
12515
12597
|
pointer-events: auto;
|
|
12516
12598
|
}
|
|
12517
12599
|
|
|
12600
|
+
.\[\&\>\*\]\:min-h-14 > * {
|
|
12601
|
+
min-height: calc(var(--spacing) * 14);
|
|
12602
|
+
}
|
|
12603
|
+
|
|
12518
12604
|
.\[\&\>\*\]\:max-w-full > * {
|
|
12519
12605
|
max-width: 100%;
|
|
12520
12606
|
}
|
|
@@ -12527,6 +12613,18 @@
|
|
|
12527
12613
|
overflow: hidden;
|
|
12528
12614
|
}
|
|
12529
12615
|
|
|
12616
|
+
.\[\&\>\*\]\:bg-background > * {
|
|
12617
|
+
background-color: var(--background);
|
|
12618
|
+
}
|
|
12619
|
+
|
|
12620
|
+
.\[\&\>\*\]\:px-3\.5 > * {
|
|
12621
|
+
padding-inline: calc(var(--spacing) * 3.5);
|
|
12622
|
+
}
|
|
12623
|
+
|
|
12624
|
+
.\[\&\>\*\]\:py-2\.5 > * {
|
|
12625
|
+
padding-block: calc(var(--spacing) * 2.5);
|
|
12626
|
+
}
|
|
12627
|
+
|
|
12530
12628
|
.\[\&\>\*\]\:text-ellipsis > * {
|
|
12531
12629
|
text-overflow: ellipsis;
|
|
12532
12630
|
}
|
|
@@ -12555,10 +12653,20 @@
|
|
|
12555
12653
|
flex: 1;
|
|
12556
12654
|
}
|
|
12557
12655
|
|
|
12656
|
+
.\[\&\>\:first-child\]\:rounded-t-lg > :first-child {
|
|
12657
|
+
border-top-left-radius: var(--radius-lg);
|
|
12658
|
+
border-top-right-radius: var(--radius-lg);
|
|
12659
|
+
}
|
|
12660
|
+
|
|
12558
12661
|
.\[\&\>\:last-child\]\:mb-0 > :last-child {
|
|
12559
12662
|
margin-bottom: 0;
|
|
12560
12663
|
}
|
|
12561
12664
|
|
|
12665
|
+
.\[\&\>\:last-child\]\:rounded-b-lg > :last-child {
|
|
12666
|
+
border-bottom-right-radius: var(--radius-lg);
|
|
12667
|
+
border-bottom-left-radius: var(--radius-lg);
|
|
12668
|
+
}
|
|
12669
|
+
|
|
12562
12670
|
.\[\&\>\:not\(\.data-list-row\)\]\:col-span-full > :not(.data-list-row) {
|
|
12563
12671
|
grid-column: 1 / -1;
|
|
12564
12672
|
}
|
|
@@ -13064,6 +13172,10 @@
|
|
|
13064
13172
|
display: none;
|
|
13065
13173
|
}
|
|
13066
13174
|
|
|
13175
|
+
[data-slot="combobox-chip"] ~ .\[\[data-slot\=combobox-chip\]\~\&\]\:pl-1 {
|
|
13176
|
+
padding-left: var(--spacing);
|
|
13177
|
+
}
|
|
13178
|
+
|
|
13067
13179
|
.shiki-token {
|
|
13068
13180
|
color: var(--shiki-light, var(--foreground));
|
|
13069
13181
|
background-color: var(--shiki-light-bg, transparent);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/playground-ui",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "64.0.0-alpha.
|
|
4
|
+
"version": "64.0.0-alpha.9",
|
|
5
5
|
"description": "Mastra Playground components",
|
|
6
6
|
"sideEffects": [
|
|
7
7
|
"**/*.css"
|
|
@@ -202,9 +202,9 @@
|
|
|
202
202
|
"react": ">=19.0.0",
|
|
203
203
|
"react-dom": ">=19.0.0",
|
|
204
204
|
"tailwindcss": "^4.0.0",
|
|
205
|
-
"@mastra/
|
|
206
|
-
"@mastra/react": "1.
|
|
207
|
-
"@mastra/
|
|
205
|
+
"@mastra/client-js": "^1.55.0-alpha.9",
|
|
206
|
+
"@mastra/react": "1.11.0-alpha.9",
|
|
207
|
+
"@mastra/ai-sdk": "^1.11.1"
|
|
208
208
|
},
|
|
209
209
|
"devDependencies": {
|
|
210
210
|
"@modelcontextprotocol/sdk": "^1.32.1",
|
|
@@ -249,13 +249,13 @@
|
|
|
249
249
|
"vite-plugin-dts": "^4.5.4",
|
|
250
250
|
"vite-plugin-lib-inject-css": "^2.2.2",
|
|
251
251
|
"vitest": "4.1.11",
|
|
252
|
+
"@mastra/client-js": "^1.55.0-alpha.9",
|
|
252
253
|
"@internal/lint": "0.0.143",
|
|
253
|
-
"@mastra/ai-sdk": "1.11.1",
|
|
254
|
-
"@mastra/client-js": "^1.55.0-alpha.7",
|
|
255
|
-
"@mastra/core": "1.78.0-alpha.7",
|
|
256
254
|
"@mastra/memory": "1.38.0-alpha.0",
|
|
257
|
-
"@mastra/
|
|
258
|
-
"@mastra/schema-compat": "1.3.15-alpha.0"
|
|
255
|
+
"@mastra/core": "1.78.0-alpha.9",
|
|
256
|
+
"@mastra/schema-compat": "1.3.15-alpha.0",
|
|
257
|
+
"@mastra/ai-sdk": "1.11.1",
|
|
258
|
+
"@mastra/react": "1.11.0-alpha.9"
|
|
259
259
|
},
|
|
260
260
|
"homepage": "https://mastra.ai",
|
|
261
261
|
"repository": {
|