@mastra/playground-ui 55.0.0 → 55.1.0-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/dist/components/DataPanel.cjs.js +1 -1
- package/dist/components/DataPanel.es.js +1 -1
- package/dist/components/MainSidebar.cjs.js +26 -737
- package/dist/components/MainSidebar.cjs.js.map +1 -1
- package/dist/components/MainSidebar.es.js +4 -714
- package/dist/components/MainSidebar.es.js.map +1 -1
- package/dist/{data-panel-tSErqolu.cjs → data-panel-Bzws5n5c.cjs} +25 -8
- package/dist/data-panel-Bzws5n5c.cjs.map +1 -0
- package/dist/{data-panel-5iuux0r_.js → data-panel-C-H4tAEw.js} +25 -8
- package/dist/data-panel-C-H4tAEw.js.map +1 -0
- package/dist/domains/traces/components/span-data-panel-view.cjs.js +3 -2
- package/dist/domains/traces/components/span-data-panel-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/span-data-panel-view.es.js +3 -2
- package/dist/domains/traces/components/span-data-panel-view.es.js.map +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.cjs.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.es.js +1 -1
- package/dist/domains/traces/components/trace-data-panel-view.cjs.js +12 -11
- package/dist/domains/traces/components/trace-data-panel-view.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-data-panel-view.es.js +13 -12
- package/dist/domains/traces/components/trace-data-panel-view.es.js.map +1 -1
- package/dist/domains/traces/components/trace-span-timeline.cjs.js +1 -1
- package/dist/domains/traces/components/trace-span-timeline.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-span-timeline.es.js +1 -1
- package/dist/domains/traces/components/trace-span-timeline.es.js.map +1 -1
- package/dist/domains/traces/components/trace-span-tree.cjs.js +1 -1
- package/dist/domains/traces/components/trace-span-tree.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-span-tree.es.js +1 -1
- package/dist/domains/traces/components/trace-span-tree.es.js.map +1 -1
- package/dist/main-sidebar-link-active-BK4RR4Az.js +719 -0
- package/dist/main-sidebar-link-active-BK4RR4Az.js.map +1 -0
- package/dist/main-sidebar-link-active-DLGDYeTJ.cjs +736 -0
- package/dist/main-sidebar-link-active-DLGDYeTJ.cjs.map +1 -0
- package/dist/new/sidebar.cjs.js +457 -0
- package/dist/new/sidebar.cjs.js.map +1 -0
- package/dist/new/sidebar.d.ts +2 -0
- package/dist/new/sidebar.es.js +440 -0
- package/dist/new/sidebar.es.js.map +1 -0
- package/dist/src/ds/components/DataPanel/data-panel-close-button.d.ts +3 -1
- package/dist/src/ds/components/DataPanel/data-panel-content.d.ts +3 -1
- package/dist/src/ds/components/DataPanel/data-panel-next-prev-nav.d.ts +3 -1
- package/dist/src/ds/new/sidebar/index.d.ts +12 -0
- package/dist/src/ds/new/sidebar/sidebar-new-brand.d.ts +6 -0
- package/dist/src/ds/new/sidebar/sidebar-new-footer.d.ts +3 -0
- package/dist/src/ds/new/sidebar/sidebar-new-header.d.ts +3 -0
- package/dist/src/ds/new/sidebar/sidebar-new-meter.d.ts +34 -0
- package/dist/src/ds/new/sidebar/sidebar-new-nav-header.d.ts +11 -0
- package/dist/src/ds/new/sidebar/sidebar-new-nav-stack-context.d.ts +8 -0
- package/dist/src/ds/new/sidebar/sidebar-new-nav-stack-page-classes.d.ts +1 -0
- package/dist/src/ds/new/sidebar/sidebar-new-nav-stack-root-view.d.ts +3 -0
- package/dist/src/ds/new/sidebar/sidebar-new-nav-stack-root.d.ts +7 -0
- package/dist/src/ds/new/sidebar/sidebar-new-nav-stack-view.d.ts +9 -0
- package/dist/src/ds/new/sidebar/sidebar-new-nav-stack.d.ts +10 -0
- package/dist/src/ds/new/sidebar/sidebar-new-nav.d.ts +3 -0
- package/dist/src/ds/new/sidebar/sidebar-new-root.d.ts +5 -0
- package/dist/src/ds/new/sidebar/sidebar-new-section-link.d.ts +8 -0
- package/dist/src/ds/new/sidebar/sidebar-new-sections.d.ts +8 -0
- package/dist/src/ds/new/sidebar/sidebar-new-trigger.d.ts +3 -0
- package/dist/src/ds/new/sidebar/sidebar-new.d.ts +36 -0
- package/dist/src/ds/new/sidebar/sidebar-new.stories.d.ts +6 -0
- package/dist/style.css +118 -0
- package/package.json +13 -7
- package/theme.css +48 -0
- package/dist/data-panel-5iuux0r_.js.map +0 -1
- package/dist/data-panel-tSErqolu.cjs.map +0 -1
|
@@ -2,5 +2,7 @@ import { ReactNode, Ref } from 'react';
|
|
|
2
2
|
export interface DataPanelContentProps {
|
|
3
3
|
children: ReactNode;
|
|
4
4
|
ref?: Ref<HTMLDivElement>;
|
|
5
|
+
/** Layout overrides (e.g. padding) for the scroll container. */
|
|
6
|
+
className?: string;
|
|
5
7
|
}
|
|
6
|
-
export declare function DataPanelContent({ children, ref }: DataPanelContentProps): import("react").JSX.Element;
|
|
8
|
+
export declare function DataPanelContent({ children, ref, className }: DataPanelContentProps): import("react").JSX.Element;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import { ButtonProps } from '../Button';
|
|
1
2
|
export interface DataPanelNextPrevNavProps {
|
|
2
3
|
onPrevious?: () => void;
|
|
3
4
|
onNext?: () => void;
|
|
4
5
|
previousLabel?: string;
|
|
5
6
|
nextLabel?: string;
|
|
7
|
+
variant?: ButtonProps['variant'];
|
|
6
8
|
}
|
|
7
|
-
export declare function DataPanelNextPrevNav({ onPrevious, onNext, previousLabel, nextLabel, }: DataPanelNextPrevNavProps): import("react").JSX.Element;
|
|
9
|
+
export declare function DataPanelNextPrevNav({ onPrevious, onNext, previousLabel, nextLabel, variant, }: DataPanelNextPrevNavProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { SidebarNew } from './sidebar-new';
|
|
2
|
+
export { SidebarNewBrand, type SidebarNewBrandProps } from './sidebar-new-brand';
|
|
3
|
+
export { SidebarNewFooter, type SidebarNewFooterProps } from './sidebar-new-footer';
|
|
4
|
+
export { SidebarNewHeader, type SidebarNewHeaderProps } from './sidebar-new-header';
|
|
5
|
+
export { SidebarNewMeter, type SidebarNewMeterProps, type SidebarNewMeterTone } from './sidebar-new-meter';
|
|
6
|
+
export { SidebarNewNav, type SidebarNewNavProps } from './sidebar-new-nav';
|
|
7
|
+
export { SidebarNewNavHeader, type SidebarNewNavHeaderProps } from './sidebar-new-nav-header';
|
|
8
|
+
export { SidebarNewNavStack, type SidebarNewNavStackProps, type SidebarNewNavStackRootViewProps, type SidebarNewNavStackViewProps, } from './sidebar-new-nav-stack';
|
|
9
|
+
export { SidebarNewRoot, type SidebarNewRootProps } from './sidebar-new-root';
|
|
10
|
+
export { SidebarNewSections, type SidebarNewSectionsProps } from './sidebar-new-sections';
|
|
11
|
+
export { SidebarNewTrigger, type SidebarNewTriggerProps } from './sidebar-new-trigger';
|
|
12
|
+
export { getIsLinkActive, MainSidebarProvider as SidebarNewProvider, type MainSidebarProviderProps as SidebarNewProviderProps, navItemClasses, type MainSidebarNavItemSize as SidebarNewNavItemSize, type NavLink as SidebarNewLink, type NavSection as SidebarNewSection, useMainSidebar as useSidebarNew, } from '../../components/MainSidebar/main-sidebar';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
2
|
+
export type SidebarNewBrandProps = Omit<ComponentPropsWithoutRef<'div'>, 'title'> & {
|
|
3
|
+
logo?: ReactNode;
|
|
4
|
+
title: ReactNode;
|
|
5
|
+
};
|
|
6
|
+
export declare function SidebarNewBrand({ logo, title, className, ...props }: SidebarNewBrandProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
2
|
+
import { SidebarState } from '../../components/MainSidebar/main-sidebar-context';
|
|
3
|
+
import { LinkComponent } from '../../types/link-component';
|
|
4
|
+
export type SidebarNewMeterTone = 'neutral' | 'warning' | 'danger';
|
|
5
|
+
interface SidebarNewMeterBaseProps extends Omit<ComponentPropsWithoutRef<'div'>, 'children'> {
|
|
6
|
+
/** Short name for the measured thing, e.g. `Credits`. Hidden on a collapsed rail. */
|
|
7
|
+
label: ReactNode;
|
|
8
|
+
/** The figure itself. Rendered with tabular figures so it cannot shift width. */
|
|
9
|
+
value: ReactNode;
|
|
10
|
+
/** One line under the value. Truncates; the card height never changes. */
|
|
11
|
+
status?: ReactNode;
|
|
12
|
+
/** Drives the bloom hue. `neutral` is the only tone that carries grain. */
|
|
13
|
+
tone?: SidebarNewMeterTone;
|
|
14
|
+
/** Leading icon beside the label, shown only when the tone is not neutral. */
|
|
15
|
+
icon?: ReactNode;
|
|
16
|
+
/** Trailing control beside the label, kept outside the card link. */
|
|
17
|
+
action?: ReactNode;
|
|
18
|
+
/** Overrides the Provider-level LinkComponent. Defaults to `<a>` when neither is set. */
|
|
19
|
+
LinkComponent?: LinkComponent;
|
|
20
|
+
/** Defaults to the Provider's state; pass to override. */
|
|
21
|
+
state?: SidebarState;
|
|
22
|
+
}
|
|
23
|
+
type SidebarNewMeterLinkProps = {
|
|
24
|
+
/** Makes the whole card navigate. The link covers the card as an overlay. */
|
|
25
|
+
href: string;
|
|
26
|
+
/** Accessible name for the card link. Required whenever `href` is set. */
|
|
27
|
+
linkLabel: string;
|
|
28
|
+
} | {
|
|
29
|
+
href?: never;
|
|
30
|
+
linkLabel?: never;
|
|
31
|
+
};
|
|
32
|
+
export type SidebarNewMeterProps = SidebarNewMeterBaseProps & SidebarNewMeterLinkProps;
|
|
33
|
+
export declare const SidebarNewMeter: import('react').ForwardRefExoticComponent<SidebarNewMeterProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
34
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
import { SidebarState } from '../../components/MainSidebar/main-sidebar-context';
|
|
3
|
+
import { LinkComponent } from '../../types/link-component';
|
|
4
|
+
export type SidebarNewNavHeaderProps = Omit<ComponentPropsWithoutRef<'header'>, 'children'> & {
|
|
5
|
+
children?: React.ReactNode;
|
|
6
|
+
state?: SidebarState;
|
|
7
|
+
href?: string;
|
|
8
|
+
isActive?: boolean;
|
|
9
|
+
LinkComponent?: LinkComponent;
|
|
10
|
+
};
|
|
11
|
+
export declare function SidebarNewNavHeader({ children, className, state: stateProp, href, isActive, LinkComponent: LinkProp, ...props }: SidebarNewNavHeaderProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export type SidebarNewNavStackContextValue = {
|
|
3
|
+
activeValue: string;
|
|
4
|
+
rootValue: string;
|
|
5
|
+
closeView: (returnFocusRef?: React.RefObject<HTMLElement | null>) => void;
|
|
6
|
+
};
|
|
7
|
+
export declare const SidebarNewNavStackContext: React.Context<SidebarNewNavStackContextValue | undefined>;
|
|
8
|
+
export declare function useSidebarNewNavStack(): SidebarNewNavStackContextValue;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function sidebarNewNavStackPageClasses(active: boolean, page: 'root' | 'view', className?: string): string;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
export type SidebarNewNavStackRootViewProps = ComponentPropsWithoutRef<'div'>;
|
|
3
|
+
export declare function SidebarNewNavStackRootView({ children, className, ...props }: SidebarNewNavStackRootViewProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { default as React, ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
export type SidebarNewNavStackProps = ComponentPropsWithoutRef<'div'> & {
|
|
3
|
+
value: string;
|
|
4
|
+
rootValue?: string;
|
|
5
|
+
onValueChange: (value: string) => void;
|
|
6
|
+
};
|
|
7
|
+
export declare function SidebarNewNavStackRoot({ value, rootValue, onValueChange, children, className, ...props }: SidebarNewNavStackProps): React.JSX.Element;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { default as React, ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
export type SidebarNewNavStackViewProps = ComponentPropsWithoutRef<'div'> & {
|
|
3
|
+
value: string;
|
|
4
|
+
title: string;
|
|
5
|
+
backLabel?: string;
|
|
6
|
+
returnFocusRef?: React.RefObject<HTMLElement | null>;
|
|
7
|
+
onBack?: () => void;
|
|
8
|
+
};
|
|
9
|
+
export declare function SidebarNewNavStackView({ value, title, backLabel, returnFocusRef, onBack, children, className, ...props }: SidebarNewNavStackViewProps): React.JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { SidebarNewNavStackRoot } from './sidebar-new-nav-stack-root';
|
|
2
|
+
import { SidebarNewNavStackRootView } from './sidebar-new-nav-stack-root-view';
|
|
3
|
+
import { SidebarNewNavStackView } from './sidebar-new-nav-stack-view';
|
|
4
|
+
export type { SidebarNewNavStackProps } from './sidebar-new-nav-stack-root';
|
|
5
|
+
export type { SidebarNewNavStackRootViewProps } from './sidebar-new-nav-stack-root-view';
|
|
6
|
+
export type { SidebarNewNavStackViewProps } from './sidebar-new-nav-stack-view';
|
|
7
|
+
export declare const SidebarNewNavStack: typeof SidebarNewNavStackRoot & {
|
|
8
|
+
Root: typeof SidebarNewNavStackRootView;
|
|
9
|
+
View: typeof SidebarNewNavStackView;
|
|
10
|
+
};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { MainSidebarRootProps } from '../../components/MainSidebar/main-sidebar-root';
|
|
2
|
+
export type SidebarNewRootProps = MainSidebarRootProps & {
|
|
3
|
+
'aria-label'?: string;
|
|
4
|
+
};
|
|
5
|
+
export declare function SidebarNewRoot({ 'aria-label': ariaLabel, ...props }: SidebarNewRootProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NavLink } from '../../components/MainSidebar/main-sidebar-nav-link';
|
|
2
|
+
export type SidebarNewSectionLinkProps = {
|
|
3
|
+
link: NavLink;
|
|
4
|
+
activeCandidates: NavLink[];
|
|
5
|
+
level?: number;
|
|
6
|
+
isActive?: (link: NavLink, activeCandidates: NavLink[]) => boolean;
|
|
7
|
+
};
|
|
8
|
+
export declare function SidebarNewSectionLink({ link, activeCandidates, level, isActive }: SidebarNewSectionLinkProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NavLink } from '../../components/MainSidebar/main-sidebar-nav-link';
|
|
2
|
+
import { NavSection } from '../../components/MainSidebar/main-sidebar-nav-section';
|
|
3
|
+
export type SidebarNewSectionsProps = {
|
|
4
|
+
sections: NavSection[];
|
|
5
|
+
isActive?: (link: NavLink, activeCandidates: NavLink[]) => boolean;
|
|
6
|
+
className?: string;
|
|
7
|
+
};
|
|
8
|
+
export declare function SidebarNewSections({ sections, isActive, className }: SidebarNewSectionsProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { SidebarNewBrand } from './sidebar-new-brand';
|
|
2
|
+
import { SidebarNewFooter } from './sidebar-new-footer';
|
|
3
|
+
import { SidebarNewHeader } from './sidebar-new-header';
|
|
4
|
+
import { SidebarNewNav } from './sidebar-new-nav';
|
|
5
|
+
import { SidebarNewNavHeader } from './sidebar-new-nav-header';
|
|
6
|
+
import { SidebarNewRoot } from './sidebar-new-root';
|
|
7
|
+
import { SidebarNewSections } from './sidebar-new-sections';
|
|
8
|
+
import { SidebarNewTrigger } from './sidebar-new-trigger';
|
|
9
|
+
import { MainSidebarMobileTrigger } from '../../components/MainSidebar/main-sidebar-mobile-trigger';
|
|
10
|
+
import { MainSidebarNavLabel } from '../../components/MainSidebar/main-sidebar-nav-label';
|
|
11
|
+
import { MainSidebarNavLink } from '../../components/MainSidebar/main-sidebar-nav-link';
|
|
12
|
+
import { MainSidebarNavList } from '../../components/MainSidebar/main-sidebar-nav-list';
|
|
13
|
+
import { MainSidebarNavSection } from '../../components/MainSidebar/main-sidebar-nav-section';
|
|
14
|
+
import { MainSidebarNavSeparator } from '../../components/MainSidebar/main-sidebar-nav-separator';
|
|
15
|
+
import { MainSidebarProvider } from '../../components/MainSidebar/main-sidebar-provider';
|
|
16
|
+
export declare const SidebarNew: typeof SidebarNewRoot & {
|
|
17
|
+
Brand: typeof SidebarNewBrand;
|
|
18
|
+
Footer: typeof SidebarNewFooter;
|
|
19
|
+
Header: typeof SidebarNewHeader;
|
|
20
|
+
Meter: import('react').ForwardRefExoticComponent<import('./sidebar-new-meter').SidebarNewMeterProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
21
|
+
MobileTrigger: typeof MainSidebarMobileTrigger;
|
|
22
|
+
Nav: typeof SidebarNewNav;
|
|
23
|
+
NavHeader: typeof SidebarNewNavHeader;
|
|
24
|
+
NavLabel: typeof MainSidebarNavLabel;
|
|
25
|
+
NavLink: typeof MainSidebarNavLink;
|
|
26
|
+
NavList: typeof MainSidebarNavList;
|
|
27
|
+
NavSection: typeof MainSidebarNavSection;
|
|
28
|
+
NavSeparator: typeof MainSidebarNavSeparator;
|
|
29
|
+
NavStack: typeof import('./sidebar-new-nav-stack-root').SidebarNewNavStackRoot & {
|
|
30
|
+
Root: typeof import('./sidebar-new-nav-stack-root-view').SidebarNewNavStackRootView;
|
|
31
|
+
View: typeof import('./sidebar-new-nav-stack-view').SidebarNewNavStackView;
|
|
32
|
+
};
|
|
33
|
+
Provider: typeof MainSidebarProvider;
|
|
34
|
+
Sections: typeof SidebarNewSections;
|
|
35
|
+
Trigger: typeof SidebarNewTrigger;
|
|
36
|
+
};
|
package/dist/style.css
CHANGED
|
@@ -176,6 +176,7 @@
|
|
|
176
176
|
--tracking-wide: .025em;
|
|
177
177
|
--tracking-wider: .05em;
|
|
178
178
|
--tracking-widest: .1em;
|
|
179
|
+
--leading-tight: 1.25;
|
|
179
180
|
--leading-relaxed: 1.625;
|
|
180
181
|
--radius-xs: .125rem;
|
|
181
182
|
--radius-sm: 4px;
|
|
@@ -915,6 +916,10 @@
|
|
|
915
916
|
isolation: isolate;
|
|
916
917
|
}
|
|
917
918
|
|
|
919
|
+
.-z-10 {
|
|
920
|
+
z-index: calc(10 * -1);
|
|
921
|
+
}
|
|
922
|
+
|
|
918
923
|
.z-0 {
|
|
919
924
|
z-index: 0;
|
|
920
925
|
}
|
|
@@ -983,6 +988,10 @@
|
|
|
983
988
|
grid-column: 1 / -1;
|
|
984
989
|
}
|
|
985
990
|
|
|
991
|
+
.col-start-1 {
|
|
992
|
+
grid-column-start: 1;
|
|
993
|
+
}
|
|
994
|
+
|
|
986
995
|
.col-start-3 {
|
|
987
996
|
grid-column-start: 3;
|
|
988
997
|
}
|
|
@@ -1684,6 +1693,10 @@
|
|
|
1684
1693
|
margin-top: auto;
|
|
1685
1694
|
}
|
|
1686
1695
|
|
|
1696
|
+
.-mr-1\.5 {
|
|
1697
|
+
margin-right: calc(var(--spacing-1_5) * -1);
|
|
1698
|
+
}
|
|
1699
|
+
|
|
1687
1700
|
.-mr-3 {
|
|
1688
1701
|
margin-right: calc(var(--spacing-3) * -1);
|
|
1689
1702
|
}
|
|
@@ -3060,6 +3073,11 @@
|
|
|
3060
3073
|
translate: var(--tw-translate-x) var(--tw-translate-y);
|
|
3061
3074
|
}
|
|
3062
3075
|
|
|
3076
|
+
.-translate-x-2 {
|
|
3077
|
+
--tw-translate-x: calc(var(--spacing-2) * -1);
|
|
3078
|
+
translate: var(--tw-translate-x) var(--tw-translate-y);
|
|
3079
|
+
}
|
|
3080
|
+
|
|
3063
3081
|
.translate-x-0 {
|
|
3064
3082
|
--tw-translate-x: var(--spacing-0);
|
|
3065
3083
|
translate: var(--tw-translate-x) var(--tw-translate-y);
|
|
@@ -3070,6 +3088,11 @@
|
|
|
3070
3088
|
translate: var(--tw-translate-x) var(--tw-translate-y);
|
|
3071
3089
|
}
|
|
3072
3090
|
|
|
3091
|
+
.translate-x-2 {
|
|
3092
|
+
--tw-translate-x: var(--spacing-2);
|
|
3093
|
+
translate: var(--tw-translate-x) var(--tw-translate-y);
|
|
3094
|
+
}
|
|
3095
|
+
|
|
3073
3096
|
.-translate-y-1\/2 {
|
|
3074
3097
|
--tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
|
|
3075
3098
|
translate: var(--tw-translate-x) var(--tw-translate-y);
|
|
@@ -3297,6 +3320,10 @@
|
|
|
3297
3320
|
grid-template-columns: 1fr auto 1fr;
|
|
3298
3321
|
}
|
|
3299
3322
|
|
|
3323
|
+
.grid-cols-\[2rem_1fr_2rem\] {
|
|
3324
|
+
grid-template-columns: 2rem 1fr 2rem;
|
|
3325
|
+
}
|
|
3326
|
+
|
|
3300
3327
|
.grid-cols-\[5rem_repeat\(4\,minmax\(0\,1fr\)\)\] {
|
|
3301
3328
|
grid-template-columns: 5rem repeat(4, minmax(0, 1fr));
|
|
3302
3329
|
}
|
|
@@ -3745,6 +3772,10 @@
|
|
|
3745
3772
|
align-self: stretch;
|
|
3746
3773
|
}
|
|
3747
3774
|
|
|
3775
|
+
.justify-self-center {
|
|
3776
|
+
justify-self: center;
|
|
3777
|
+
}
|
|
3778
|
+
|
|
3748
3779
|
.justify-self-end {
|
|
3749
3780
|
justify-self: flex-end;
|
|
3750
3781
|
}
|
|
@@ -4791,6 +4822,16 @@
|
|
|
4791
4822
|
}
|
|
4792
4823
|
}
|
|
4793
4824
|
|
|
4825
|
+
.bg-neutral4\/40 {
|
|
4826
|
+
background-color: var(--color-neutral4);
|
|
4827
|
+
}
|
|
4828
|
+
|
|
4829
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
4830
|
+
.bg-neutral4\/40 {
|
|
4831
|
+
background-color: color-mix(in oklab, var(--color-neutral4) 40%, transparent);
|
|
4832
|
+
}
|
|
4833
|
+
}
|
|
4834
|
+
|
|
4794
4835
|
.bg-neutral5 {
|
|
4795
4836
|
background-color: var(--color-neutral5);
|
|
4796
4837
|
}
|
|
@@ -5803,6 +5844,11 @@
|
|
|
5803
5844
|
line-height: var(--leading-relaxed);
|
|
5804
5845
|
}
|
|
5805
5846
|
|
|
5847
|
+
.leading-tight {
|
|
5848
|
+
--tw-leading: var(--leading-tight);
|
|
5849
|
+
line-height: var(--leading-tight);
|
|
5850
|
+
}
|
|
5851
|
+
|
|
5806
5852
|
.leading-ui-lg {
|
|
5807
5853
|
--tw-leading: var(--leading-ui-lg);
|
|
5808
5854
|
line-height: var(--leading-ui-lg);
|
|
@@ -6171,6 +6217,10 @@
|
|
|
6171
6217
|
color: var(--color-notice-success-fg);
|
|
6172
6218
|
}
|
|
6173
6219
|
|
|
6220
|
+
.text-notice-warning {
|
|
6221
|
+
color: var(--color-notice-warning);
|
|
6222
|
+
}
|
|
6223
|
+
|
|
6174
6224
|
.text-notice-warning-fg {
|
|
6175
6225
|
color: var(--color-notice-warning-fg);
|
|
6176
6226
|
}
|
|
@@ -6708,6 +6758,12 @@
|
|
|
6708
6758
|
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
|
6709
6759
|
}
|
|
6710
6760
|
|
|
6761
|
+
.transition-\[opacity\,translate\] {
|
|
6762
|
+
transition-property: opacity, translate;
|
|
6763
|
+
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
6764
|
+
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
|
6765
|
+
}
|
|
6766
|
+
|
|
6711
6767
|
.transition-\[padding\] {
|
|
6712
6768
|
transition-property: padding;
|
|
6713
6769
|
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
@@ -6881,6 +6937,10 @@
|
|
|
6881
6937
|
will-change: opacity,filter,scale;
|
|
6882
6938
|
}
|
|
6883
6939
|
|
|
6940
|
+
.will-change-\[opacity\,translate\] {
|
|
6941
|
+
will-change: opacity,translate;
|
|
6942
|
+
}
|
|
6943
|
+
|
|
6884
6944
|
.will-change-transform {
|
|
6885
6945
|
will-change: transform;
|
|
6886
6946
|
}
|
|
@@ -10309,6 +10369,18 @@
|
|
|
10309
10369
|
height: var(--spacing-5);
|
|
10310
10370
|
}
|
|
10311
10371
|
|
|
10372
|
+
.\[\&_\[data-orientation\=vertical\]\]\:w-1 [data-orientation="vertical"] {
|
|
10373
|
+
width: var(--spacing-1);
|
|
10374
|
+
}
|
|
10375
|
+
|
|
10376
|
+
.\[\&_\[data-orientation\=vertical\]\]\:p-0 [data-orientation="vertical"] {
|
|
10377
|
+
padding: var(--spacing-0);
|
|
10378
|
+
}
|
|
10379
|
+
|
|
10380
|
+
.\[\&_\[data-orientation\=vertical\]\[data-has-overflow-y\]\]\:opacity-100 [data-orientation="vertical"][data-has-overflow-y] {
|
|
10381
|
+
opacity: 1;
|
|
10382
|
+
}
|
|
10383
|
+
|
|
10312
10384
|
.\[\&_\[data-slot\=command-input-wrapper\]\]\:h-11 [data-slot="command-input-wrapper"] {
|
|
10313
10385
|
height: var(--spacing-11);
|
|
10314
10386
|
}
|
|
@@ -11635,6 +11707,29 @@
|
|
|
11635
11707
|
--surface4: oklch(21.78% 0 0);
|
|
11636
11708
|
--surface5: oklch(24.35% 0 0 / .9);
|
|
11637
11709
|
--surface6: oklch(30.92% 0 0);
|
|
11710
|
+
--background-1: oklch(0% 0 0);
|
|
11711
|
+
--background-2: oklch(15.91% 0 0);
|
|
11712
|
+
--background-3: oklch(19.13% 0 0);
|
|
11713
|
+
--gray-1: oklch(21.78% 0 0);
|
|
11714
|
+
--gray-2: oklch(24.35% 0 0);
|
|
11715
|
+
--gray-3: oklch(26.86% 0 0);
|
|
11716
|
+
--gray-4: oklch(30.92% 0 0);
|
|
11717
|
+
--gray-5: oklch(37.15% 0 0);
|
|
11718
|
+
--gray-6: oklch(44.95% 0 0);
|
|
11719
|
+
--gray-7: oklch(52.08% 0 0);
|
|
11720
|
+
--gray-8: oklch(65% 0 0);
|
|
11721
|
+
--gray-9: oklch(76.99% 0 0);
|
|
11722
|
+
--gray-10: oklch(98.51% 0 0);
|
|
11723
|
+
--gray-alpha-1: #ffffff0a;
|
|
11724
|
+
--gray-alpha-2: #ffffff12;
|
|
11725
|
+
--gray-alpha-3: #ffffff1a;
|
|
11726
|
+
--gray-alpha-4: #ffffff24;
|
|
11727
|
+
--gray-alpha-5: #ffffff2e;
|
|
11728
|
+
--gray-alpha-6: #ffffff4d;
|
|
11729
|
+
--gray-alpha-7: #ffffff73;
|
|
11730
|
+
--gray-alpha-8: #fff9;
|
|
11731
|
+
--gray-alpha-9: #ffffffbf;
|
|
11732
|
+
--gray-alpha-10: #ffffffe6;
|
|
11638
11733
|
--accent1: oklch(72.3% .219 149.579);
|
|
11639
11734
|
--accent2: oklch(63.7% .237 25.331);
|
|
11640
11735
|
--accent3: oklch(62.3% .214 259.815);
|
|
@@ -11735,6 +11830,29 @@ html.light {
|
|
|
11735
11830
|
--surface4: oklch(96.5% 0 0);
|
|
11736
11831
|
--surface5: oklch(94.4% 0 0 / .94);
|
|
11737
11832
|
--surface6: oklch(89.5% 0 0);
|
|
11833
|
+
--background-1: oklch(96.42% 0 0);
|
|
11834
|
+
--background-2: oklch(98.51% 0 0);
|
|
11835
|
+
--background-3: oklch(100% 0 0);
|
|
11836
|
+
--gray-1: oklch(94.31% 0 0);
|
|
11837
|
+
--gray-2: oklch(91.89% 0 0);
|
|
11838
|
+
--gray-3: oklch(89.45% 0 0);
|
|
11839
|
+
--gray-4: oklch(84.52% 0 0);
|
|
11840
|
+
--gray-5: oklch(76.04% 0 0);
|
|
11841
|
+
--gray-6: oklch(62.01% 0 0);
|
|
11842
|
+
--gray-7: oklch(54.86% 0 0);
|
|
11843
|
+
--gray-8: oklch(44.59% 0 0);
|
|
11844
|
+
--gray-9: oklch(30.92% 0 0);
|
|
11845
|
+
--gray-10: oklch(12.86% 0 0);
|
|
11846
|
+
--gray-alpha-1: #0000000a;
|
|
11847
|
+
--gray-alpha-2: #00000012;
|
|
11848
|
+
--gray-alpha-3: #0000001a;
|
|
11849
|
+
--gray-alpha-4: #00000024;
|
|
11850
|
+
--gray-alpha-5: #0000002e;
|
|
11851
|
+
--gray-alpha-6: #0000004d;
|
|
11852
|
+
--gray-alpha-7: #00000073;
|
|
11853
|
+
--gray-alpha-8: #0009;
|
|
11854
|
+
--gray-alpha-9: #000000bf;
|
|
11855
|
+
--gray-alpha-10: #000000e6;
|
|
11738
11856
|
--accent1: oklch(62.7% .194 149.214);
|
|
11739
11857
|
--accent2: oklch(57.7% .245 27.325);
|
|
11740
11858
|
--accent3: oklch(54.6% .245 262.881);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/playground-ui",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "55.0.0",
|
|
4
|
+
"version": "55.1.0-alpha.0",
|
|
5
5
|
"description": "Mastra Playground components",
|
|
6
6
|
"sideEffects": [
|
|
7
7
|
"**/*.css"
|
|
@@ -118,6 +118,12 @@
|
|
|
118
118
|
"default": "./dist/new/settings.es.js"
|
|
119
119
|
}
|
|
120
120
|
},
|
|
121
|
+
"./new/sidebar": {
|
|
122
|
+
"import": {
|
|
123
|
+
"types": "./dist/new/sidebar.d.ts",
|
|
124
|
+
"default": "./dist/new/sidebar.es.js"
|
|
125
|
+
}
|
|
126
|
+
},
|
|
121
127
|
"./new/layout/app-shell": {
|
|
122
128
|
"import": {
|
|
123
129
|
"types": "./dist/new/layout/app-shell.d.ts",
|
|
@@ -183,8 +189,8 @@
|
|
|
183
189
|
"react": ">=19.0.0",
|
|
184
190
|
"react-dom": ">=19.0.0",
|
|
185
191
|
"tailwindcss": "^4.0.0",
|
|
186
|
-
"@mastra/client-js": "^1.46.0",
|
|
187
|
-
"@mastra/react": "1.5.0"
|
|
192
|
+
"@mastra/client-js": "^1.46.1-alpha.0",
|
|
193
|
+
"@mastra/react": "1.5.1-alpha.0"
|
|
188
194
|
},
|
|
189
195
|
"devDependencies": {
|
|
190
196
|
"@storybook/addon-a11y": "^10.4.1",
|
|
@@ -227,10 +233,10 @@
|
|
|
227
233
|
"vite-plugin-lib-inject-css": "^2.2.2",
|
|
228
234
|
"vitest": "4.1.10",
|
|
229
235
|
"@internal/lint": "0.0.133",
|
|
230
|
-
"@mastra/client-js": "^1.46.0",
|
|
231
|
-
"@mastra/
|
|
232
|
-
"@mastra/react": "1.5.0",
|
|
233
|
-
"@mastra/
|
|
236
|
+
"@mastra/client-js": "^1.46.1-alpha.0",
|
|
237
|
+
"@mastra/memory": "1.30.0",
|
|
238
|
+
"@mastra/react": "1.5.1-alpha.0",
|
|
239
|
+
"@mastra/core": "1.68.0-alpha.0"
|
|
234
240
|
},
|
|
235
241
|
"homepage": "https://mastra.ai",
|
|
236
242
|
"repository": {
|
package/theme.css
CHANGED
|
@@ -15,6 +15,30 @@
|
|
|
15
15
|
--surface5: oklch(24.35% 0 0deg / 90%);
|
|
16
16
|
--surface6: oklch(30.92% 0 0deg);
|
|
17
17
|
|
|
18
|
+
--background-1: oklch(0 0 0);
|
|
19
|
+
--background-2: oklch(0.1591 0 0);
|
|
20
|
+
--background-3: oklch(0.1913 0 0);
|
|
21
|
+
--gray-1: oklch(0.2178 0 0);
|
|
22
|
+
--gray-2: oklch(0.2435 0 0);
|
|
23
|
+
--gray-3: oklch(0.2686 0 0);
|
|
24
|
+
--gray-4: oklch(0.3092 0 0);
|
|
25
|
+
--gray-5: oklch(0.3715 0 0);
|
|
26
|
+
--gray-6: oklch(0.4495 0 0);
|
|
27
|
+
--gray-7: oklch(0.5208 0 0);
|
|
28
|
+
--gray-8: oklch(0.65 0 0);
|
|
29
|
+
--gray-9: oklch(0.7699 0 0);
|
|
30
|
+
--gray-10: oklch(0.9851 0 0);
|
|
31
|
+
--gray-alpha-1: rgb(255 255 255 / 4%);
|
|
32
|
+
--gray-alpha-2: rgb(255 255 255 / 7%);
|
|
33
|
+
--gray-alpha-3: rgb(255 255 255 / 10%);
|
|
34
|
+
--gray-alpha-4: rgb(255 255 255 / 14%);
|
|
35
|
+
--gray-alpha-5: rgb(255 255 255 / 18%);
|
|
36
|
+
--gray-alpha-6: rgb(255 255 255 / 30%);
|
|
37
|
+
--gray-alpha-7: rgb(255 255 255 / 45%);
|
|
38
|
+
--gray-alpha-8: rgb(255 255 255 / 60%);
|
|
39
|
+
--gray-alpha-9: rgb(255 255 255 / 75%);
|
|
40
|
+
--gray-alpha-10: rgb(255 255 255 / 90%);
|
|
41
|
+
|
|
18
42
|
--accent1: oklch(0.723 0.219 149.579);
|
|
19
43
|
--accent2: oklch(0.637 0.237 25.331);
|
|
20
44
|
--accent3: oklch(0.623 0.214 259.815);
|
|
@@ -132,6 +156,30 @@ html.light {
|
|
|
132
156
|
--surface5: oklch(94.4% 0 0deg / 94%);
|
|
133
157
|
--surface6: oklch(89.5% 0 0deg);
|
|
134
158
|
|
|
159
|
+
--background-1: oklch(0.9642 0 0);
|
|
160
|
+
--background-2: oklch(0.9851 0 0);
|
|
161
|
+
--background-3: oklch(1 0 0);
|
|
162
|
+
--gray-1: oklch(0.9431 0 0);
|
|
163
|
+
--gray-2: oklch(0.9189 0 0);
|
|
164
|
+
--gray-3: oklch(0.8945 0 0);
|
|
165
|
+
--gray-4: oklch(0.8452 0 0);
|
|
166
|
+
--gray-5: oklch(0.7604 0 0);
|
|
167
|
+
--gray-6: oklch(0.6201 0 0);
|
|
168
|
+
--gray-7: oklch(0.5486 0 0);
|
|
169
|
+
--gray-8: oklch(0.4459 0 0);
|
|
170
|
+
--gray-9: oklch(0.3092 0 0);
|
|
171
|
+
--gray-10: oklch(0.1286 0 0);
|
|
172
|
+
--gray-alpha-1: rgb(0 0 0 / 4%);
|
|
173
|
+
--gray-alpha-2: rgb(0 0 0 / 7%);
|
|
174
|
+
--gray-alpha-3: rgb(0 0 0 / 10%);
|
|
175
|
+
--gray-alpha-4: rgb(0 0 0 / 14%);
|
|
176
|
+
--gray-alpha-5: rgb(0 0 0 / 18%);
|
|
177
|
+
--gray-alpha-6: rgb(0 0 0 / 30%);
|
|
178
|
+
--gray-alpha-7: rgb(0 0 0 / 45%);
|
|
179
|
+
--gray-alpha-8: rgb(0 0 0 / 60%);
|
|
180
|
+
--gray-alpha-9: rgb(0 0 0 / 75%);
|
|
181
|
+
--gray-alpha-10: rgb(0 0 0 / 90%);
|
|
182
|
+
|
|
135
183
|
--accent1: oklch(0.627 0.194 149.214);
|
|
136
184
|
--accent2: oklch(0.577 0.245 27.325);
|
|
137
185
|
--accent3: oklch(0.546 0.245 262.881);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"data-panel-5iuux0r_.js","sources":["../src/ds/components/DataPanel/data-panel-close-button.tsx","../src/ds/components/DataPanel/data-panel-content.tsx","../src/ds/components/DataPanel/data-panel-header.tsx","../src/ds/components/DataPanel/data-panel-heading.tsx","../src/ds/components/DataPanel/data-panel-loading-data.tsx","../src/ds/components/DataPanel/data-panel-next-prev-nav.tsx","../src/ds/components/DataPanel/data-panel-no-data.tsx","../src/ds/components/DataPanel/data-panel-root.tsx","../src/ds/components/DataPanel/data-panel.tsx"],"sourcesContent":["import { XIcon } from 'lucide-react';\nimport { Button } from '@/ds/components/Button';\n\nexport interface DataPanelCloseButtonProps {\n onClick: () => void;\n tooltip?: string;\n className?: string;\n}\n\nexport function DataPanelCloseButton({ onClick, tooltip = 'Close panel', className }: DataPanelCloseButtonProps) {\n return (\n <Button size=\"md\" onClick={onClick} aria-label=\"Close Panel\" tooltip={tooltip} className={className}>\n <XIcon />\n </Button>\n );\n}\n","import type { ReactNode, Ref } from 'react';\n\nexport interface DataPanelContentProps {\n children: ReactNode;\n ref?: Ref<HTMLDivElement>;\n}\n\nexport function DataPanelContent({ children, ref }: DataPanelContentProps) {\n return (\n <div ref={ref} className=\"min-h-0 flex-1 overflow-y-auto p-3\">\n {children}\n </div>\n );\n}\n","import { cn } from '@/lib/utils';\n\nexport interface DataPanelHeaderProps {\n className?: string;\n children: React.ReactNode;\n}\n\nexport function DataPanelHeader({ className, children }: DataPanelHeaderProps) {\n return (\n <div\n className={cn(\n // Horizontal padding (not margin) so the bottom border spans the full card width.\n 'flex min-h-10 items-center justify-between gap-2 px-3 py-2',\n // Bottom border only when something follows the header (i.e. the panel is expanded).\n // When the panel is collapsed and the header is the only child, the border auto-hides.\n 'not-last:border-b not-last:border-border1',\n className,\n )}\n >\n {children}\n </div>\n );\n}\n","import { cn } from '@/lib/utils';\n\nexport interface DataPanelHeadingProps {\n className?: string;\n children: React.ReactNode;\n}\n\nexport function DataPanelHeading({ className, children }: DataPanelHeadingProps) {\n return (\n <h3 className={cn('flex gap-2 text-ui-md text-neutral3 [&>b]:font-normal [&>b]:text-neutral2', className)}>\n {children}\n </h3>\n );\n}\n","import type { ReactNode } from 'react';\nimport { Spinner } from '@/ds/components/Spinner';\n\nexport interface DataPanelLoadingDataProps {\n children?: ReactNode;\n}\n\nexport function DataPanelLoadingData({ children }: DataPanelLoadingDataProps) {\n return (\n <div className=\"text-ui-sm text-neutral2 flex min-h-32 items-center justify-center gap-2 px-3 py-4\">\n <Spinner size=\"sm\" variant=\"pulse\" className=\"text-neutral1\" /> {children ?? 'Loading...'}\n </div>\n );\n}\n","import { ArrowDownIcon, ArrowUpIcon } from 'lucide-react';\nimport { Button } from '@/ds/components/Button';\nimport { ButtonsGroup } from '@/ds/components/ButtonsGroup';\n\nexport interface DataPanelNextPrevNavProps {\n onPrevious?: () => void;\n onNext?: () => void;\n previousLabel?: string;\n nextLabel?: string;\n}\n\nexport function DataPanelNextPrevNav({\n onPrevious,\n onNext,\n previousLabel = 'Previous',\n nextLabel = 'Next',\n}: DataPanelNextPrevNavProps) {\n return (\n <ButtonsGroup spacing=\"close\">\n <Button size=\"md\" tooltip={previousLabel} onClick={onPrevious} disabled={!onPrevious}>\n <ArrowUpIcon />\n </Button>\n <Button size=\"md\" tooltip={nextLabel} onClick={onNext} disabled={!onNext}>\n <ArrowDownIcon />\n </Button>\n </ButtonsGroup>\n );\n}\n","export interface DataPanelNoDataProps {\n children?: React.ReactNode;\n}\n\nexport function DataPanelNoData({ children }: DataPanelNoDataProps) {\n return <p className=\"text-ui-sm text-neutral2 px-3 py-4\">{children ?? 'No data found.'}</p>;\n}\n","import { cn } from '@/lib/utils';\n\nexport interface DataPanelProps {\n collapsed?: boolean;\n children: React.ReactNode;\n className?: string;\n}\n\nexport function DataPanelRoot({ collapsed, children, className }: DataPanelProps) {\n return (\n <section\n className={cn(\n 'flex flex-col overflow-hidden rounded-xl border border-border1 bg-surface2',\n collapsed ? 'h-auto' : 'max-h-full',\n className,\n )}\n >\n {children}\n </section>\n );\n}\n","import { DataPanelCloseButton } from './data-panel-close-button';\nimport { DataPanelContent } from './data-panel-content';\nimport { DataPanelHeader } from './data-panel-header';\nimport { DataPanelHeading } from './data-panel-heading';\nimport { DataPanelLoadingData } from './data-panel-loading-data';\nimport { DataPanelNextPrevNav } from './data-panel-next-prev-nav';\nimport { DataPanelNoData } from './data-panel-no-data';\nimport { DataPanelRoot } from './data-panel-root';\nimport { DataPanelSectionHeading } from './data-panel-section-heading';\nimport { DataCodeSection } from '@/ds/components/DataCodeSection';\n\nexport const DataPanel = Object.assign(DataPanelRoot, {\n Header: DataPanelHeader,\n Heading: DataPanelHeading,\n CloseButton: DataPanelCloseButton,\n NextPrevNav: DataPanelNextPrevNav,\n LoadingData: DataPanelLoadingData,\n NoData: DataPanelNoData,\n Content: DataPanelContent,\n CodeSection: DataCodeSection,\n SectionHeading: DataPanelSectionHeading,\n});\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"data-panel-tSErqolu.cjs","sources":["../src/ds/components/DataPanel/data-panel-close-button.tsx","../src/ds/components/DataPanel/data-panel-content.tsx","../src/ds/components/DataPanel/data-panel-header.tsx","../src/ds/components/DataPanel/data-panel-heading.tsx","../src/ds/components/DataPanel/data-panel-loading-data.tsx","../src/ds/components/DataPanel/data-panel-next-prev-nav.tsx","../src/ds/components/DataPanel/data-panel-no-data.tsx","../src/ds/components/DataPanel/data-panel-root.tsx","../src/ds/components/DataPanel/data-panel.tsx"],"sourcesContent":["import { XIcon } from 'lucide-react';\nimport { Button } from '@/ds/components/Button';\n\nexport interface DataPanelCloseButtonProps {\n onClick: () => void;\n tooltip?: string;\n className?: string;\n}\n\nexport function DataPanelCloseButton({ onClick, tooltip = 'Close panel', className }: DataPanelCloseButtonProps) {\n return (\n <Button size=\"md\" onClick={onClick} aria-label=\"Close Panel\" tooltip={tooltip} className={className}>\n <XIcon />\n </Button>\n );\n}\n","import type { ReactNode, Ref } from 'react';\n\nexport interface DataPanelContentProps {\n children: ReactNode;\n ref?: Ref<HTMLDivElement>;\n}\n\nexport function DataPanelContent({ children, ref }: DataPanelContentProps) {\n return (\n <div ref={ref} className=\"min-h-0 flex-1 overflow-y-auto p-3\">\n {children}\n </div>\n );\n}\n","import { cn } from '@/lib/utils';\n\nexport interface DataPanelHeaderProps {\n className?: string;\n children: React.ReactNode;\n}\n\nexport function DataPanelHeader({ className, children }: DataPanelHeaderProps) {\n return (\n <div\n className={cn(\n // Horizontal padding (not margin) so the bottom border spans the full card width.\n 'flex min-h-10 items-center justify-between gap-2 px-3 py-2',\n // Bottom border only when something follows the header (i.e. the panel is expanded).\n // When the panel is collapsed and the header is the only child, the border auto-hides.\n 'not-last:border-b not-last:border-border1',\n className,\n )}\n >\n {children}\n </div>\n );\n}\n","import { cn } from '@/lib/utils';\n\nexport interface DataPanelHeadingProps {\n className?: string;\n children: React.ReactNode;\n}\n\nexport function DataPanelHeading({ className, children }: DataPanelHeadingProps) {\n return (\n <h3 className={cn('flex gap-2 text-ui-md text-neutral3 [&>b]:font-normal [&>b]:text-neutral2', className)}>\n {children}\n </h3>\n );\n}\n","import type { ReactNode } from 'react';\nimport { Spinner } from '@/ds/components/Spinner';\n\nexport interface DataPanelLoadingDataProps {\n children?: ReactNode;\n}\n\nexport function DataPanelLoadingData({ children }: DataPanelLoadingDataProps) {\n return (\n <div className=\"text-ui-sm text-neutral2 flex min-h-32 items-center justify-center gap-2 px-3 py-4\">\n <Spinner size=\"sm\" variant=\"pulse\" className=\"text-neutral1\" /> {children ?? 'Loading...'}\n </div>\n );\n}\n","import { ArrowDownIcon, ArrowUpIcon } from 'lucide-react';\nimport { Button } from '@/ds/components/Button';\nimport { ButtonsGroup } from '@/ds/components/ButtonsGroup';\n\nexport interface DataPanelNextPrevNavProps {\n onPrevious?: () => void;\n onNext?: () => void;\n previousLabel?: string;\n nextLabel?: string;\n}\n\nexport function DataPanelNextPrevNav({\n onPrevious,\n onNext,\n previousLabel = 'Previous',\n nextLabel = 'Next',\n}: DataPanelNextPrevNavProps) {\n return (\n <ButtonsGroup spacing=\"close\">\n <Button size=\"md\" tooltip={previousLabel} onClick={onPrevious} disabled={!onPrevious}>\n <ArrowUpIcon />\n </Button>\n <Button size=\"md\" tooltip={nextLabel} onClick={onNext} disabled={!onNext}>\n <ArrowDownIcon />\n </Button>\n </ButtonsGroup>\n );\n}\n","export interface DataPanelNoDataProps {\n children?: React.ReactNode;\n}\n\nexport function DataPanelNoData({ children }: DataPanelNoDataProps) {\n return <p className=\"text-ui-sm text-neutral2 px-3 py-4\">{children ?? 'No data found.'}</p>;\n}\n","import { cn } from '@/lib/utils';\n\nexport interface DataPanelProps {\n collapsed?: boolean;\n children: React.ReactNode;\n className?: string;\n}\n\nexport function DataPanelRoot({ collapsed, children, className }: DataPanelProps) {\n return (\n <section\n className={cn(\n 'flex flex-col overflow-hidden rounded-xl border border-border1 bg-surface2',\n collapsed ? 'h-auto' : 'max-h-full',\n className,\n )}\n >\n {children}\n </section>\n );\n}\n","import { DataPanelCloseButton } from './data-panel-close-button';\nimport { DataPanelContent } from './data-panel-content';\nimport { DataPanelHeader } from './data-panel-header';\nimport { DataPanelHeading } from './data-panel-heading';\nimport { DataPanelLoadingData } from './data-panel-loading-data';\nimport { DataPanelNextPrevNav } from './data-panel-next-prev-nav';\nimport { DataPanelNoData } from './data-panel-no-data';\nimport { DataPanelRoot } from './data-panel-root';\nimport { DataPanelSectionHeading } from './data-panel-section-heading';\nimport { DataCodeSection } from '@/ds/components/DataCodeSection';\n\nexport const DataPanel = Object.assign(DataPanelRoot, {\n Header: DataPanelHeader,\n Heading: DataPanelHeading,\n CloseButton: DataPanelCloseButton,\n NextPrevNav: DataPanelNextPrevNav,\n LoadingData: DataPanelLoadingData,\n NoData: DataPanelNoData,\n Content: DataPanelContent,\n CodeSection: DataCodeSection,\n SectionHeading: DataPanelSectionHeading,\n});\n"],"names":["jsx","Button","XIcon","cn","jsxs","Spinner","ButtonsGroup","ArrowUpIcon","ArrowDownIcon","DataCodeSection","DataPanelSectionHeading"],"mappings":";;;;;;;;;;AASO,SAAS,qBAAqB,EAAE,OAAA,EAAS,OAAA,GAAU,aAAA,EAAe,WAAU,EAA8B;AAC/G,EAAA,uBACEA,cAAA,CAACC,aAAA,EAAA,EAAO,IAAA,EAAK,IAAA,EAAK,OAAA,EAAkB,YAAA,EAAW,aAAA,EAAc,OAAA,EAAkB,SAAA,EAC7E,QAAA,kBAAAD,cAAA,CAACE,iBAAA,EAAA,EAAM,CAAA,EACT,CAAA;AAEJ;;ACRO,SAAS,gBAAA,CAAiB,EAAE,QAAA,EAAU,GAAA,EAAI,EAA0B;AACzE,EAAA,uBACEF,cAAA,CAAC,KAAA,EAAA,EAAI,GAAA,EAAU,SAAA,EAAU,sCACtB,QAAA,EACH,CAAA;AAEJ;;ACNO,SAAS,eAAA,CAAgB,EAAE,SAAA,EAAW,QAAA,EAAS,EAAyB;AAC7E,EAAA,uBACEA,cAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAWG,WAAA;AAAA;AAAA,QAET,4DAAA;AAAA;AAAA;AAAA,QAGA,2CAAA;AAAA,QACA;AAAA,OACF;AAAA,MAEC;AAAA;AAAA,GACH;AAEJ;;ACfO,SAAS,gBAAA,CAAiB,EAAE,SAAA,EAAW,QAAA,EAAS,EAA0B;AAC/E,EAAA,sCACG,IAAA,EAAA,EAAG,SAAA,EAAWA,YAAG,2EAAA,EAA6E,SAAS,GACrG,QAAA,EACH,CAAA;AAEJ;;ACNO,SAAS,oBAAA,CAAqB,EAAE,QAAA,EAAS,EAA8B;AAC5E,EAAA,uBACEC,eAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,oFAAA,EACb,QAAA,EAAA;AAAA,oBAAAJ,cAAA,CAACK,mBAAQ,IAAA,EAAK,IAAA,EAAK,OAAA,EAAQ,OAAA,EAAQ,WAAU,eAAA,EAAgB,CAAA;AAAA,IAAE,GAAA;AAAA,IAAE,QAAA,IAAY;AAAA,GAAA,EAC/E,CAAA;AAEJ;;ACFO,SAAS,oBAAA,CAAqB;AAAA,EACnC,UAAA;AAAA,EACA,MAAA;AAAA,EACA,aAAA,GAAgB,UAAA;AAAA,EAChB,SAAA,GAAY;AACd,CAAA,EAA8B;AAC5B,EAAA,uBACED,eAAA,CAACE,yBAAA,EAAA,EAAa,OAAA,EAAQ,OAAA,EACpB,QAAA,EAAA;AAAA,oBAAAN,cAAA,CAACC,aAAA,EAAA,EAAO,IAAA,EAAK,IAAA,EAAK,OAAA,EAAS,aAAA,EAAe,OAAA,EAAS,UAAA,EAAY,QAAA,EAAU,CAAC,UAAA,EACxE,QAAA,kBAAAD,cAAA,CAACO,uBAAA,EAAA,EAAY,CAAA,EACf,CAAA;AAAA,oBACAP,cAAA,CAACC,aAAA,EAAA,EAAO,IAAA,EAAK,IAAA,EAAK,OAAA,EAAS,SAAA,EAAW,OAAA,EAAS,MAAA,EAAQ,QAAA,EAAU,CAAC,MAAA,EAChE,QAAA,kBAAAD,cAAA,CAACQ,6BAAc,CAAA,EACjB;AAAA,GAAA,EACF,CAAA;AAEJ;;ACvBO,SAAS,eAAA,CAAgB,EAAE,QAAA,EAAS,EAAyB;AAClE,EAAA,uBAAOR,cAAA,CAAC,GAAA,EAAA,EAAE,SAAA,EAAU,oCAAA,EAAsC,sBAAY,gBAAA,EAAiB,CAAA;AACzF;;ACEO,SAAS,aAAA,CAAc,EAAE,SAAA,EAAW,QAAA,EAAU,WAAU,EAAmB;AAChF,EAAA,uBACEA,cAAA;AAAA,IAAC,SAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAWG,WAAA;AAAA,QACT,4EAAA;AAAA,QACA,YAAY,QAAA,GAAW,YAAA;AAAA,QACvB;AAAA,OACF;AAAA,MAEC;AAAA;AAAA,GACH;AAEJ;;ACTO,MAAM,SAAA,GAAY,MAAA,CAAO,MAAA,CAAO,aAAA,EAAe;AAAA,EACpD,MAAA,EAAQ,eAAA;AAAA,EACR,OAAA,EAAS,gBAAA;AAAA,EACT,WAAA,EAAa,oBAAA;AAAA,EACb,WAAA,EAAa,oBAAA;AAAA,EACb,WAAA,EAAa,oBAAA;AAAA,EACb,MAAA,EAAQ,eAAA;AAAA,EACR,OAAA,EAAS,gBAAA;AAAA,EACT,WAAA,EAAaM,+BAAA;AAAA,EACb,cAAA,EAAgBC;AAClB,CAAC;;;;"}
|