@pstdio/ui 0.14.0 → 0.15.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/{MermaidComponent-CatfVUxA.js → MermaidComponent-DBJsTOmj.js} +3 -3
- package/dist/{MermaidComponent-CatfVUxA.js.map → MermaidComponent-DBJsTOmj.js.map} +1 -1
- package/dist/chat-ui.js +441 -442
- package/dist/chat-ui.js.map +1 -1
- package/dist/components/bubble-button.d.ts +1 -1
- package/dist/components/data-renderer/data-renderer-enum-helpers.d.ts +3 -3
- package/dist/components/data-renderer/data-renderer-helpers.d.ts +2 -0
- package/dist/components/diff-viewer/diff-viewer-options-menu.d.ts +16 -0
- package/dist/components/icon-color-picker.d.ts +2 -6
- package/dist/components/list-row/list-row.types.d.ts +1 -1
- package/dist/components/notification-center/index.d.ts +2 -0
- package/dist/components/notification-center/notification-center.d.ts +2 -0
- package/dist/components/notification-center/notification-center.types.d.ts +37 -0
- package/dist/components/search-modal-content.d.ts +20 -0
- package/dist/components/style-guide-data.d.ts +0 -6
- package/dist/components/tab-strip/tab-visibility-filter.d.ts +4 -2
- package/dist/components/tree-list/tree-list-visibility-filter.d.ts +11 -3
- package/dist/components/tree-list/tree-list.types.d.ts +7 -2
- package/dist/index.d.ts +6 -2
- package/dist/index.js +4471 -4328
- package/dist/index.js.map +1 -1
- package/dist/mermaid-renderer-CPGj6vsb.js +570 -0
- package/dist/mermaid-renderer-CPGj6vsb.js.map +1 -0
- package/dist/{resource-badge-D33IFv74.js → resource-badge-CeJTOn8F.js} +41 -41
- package/dist/resource-badge-CeJTOn8F.js.map +1 -0
- package/dist/{rich-message-BFtvH9H7.js → rich-message-DNSEhxXh.js} +4 -4
- package/dist/{rich-message-BFtvH9H7.js.map → rich-message-DNSEhxXh.js.map} +1 -1
- package/dist/rich-text.js +405 -399
- package/dist/rich-text.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/theme/shadowless-default-config.d.ts +2 -0
- package/dist/{theme-C5qHTCU9.js → theme-25P7ij4C.js} +209 -239
- package/dist/theme-25P7ij4C.js.map +1 -0
- package/dist/theme.js +1 -1
- package/package.json +1 -1
- package/dist/components/sidebar/sidebar-project-menu.d.ts +0 -7
- package/dist/mermaid-renderer-DYEiYmYQ.js +0 -411
- package/dist/mermaid-renderer-DYEiYmYQ.js.map +0 -1
- package/dist/resource-badge-D33IFv74.js.map +0 -1
- package/dist/theme/tokens/shadows.d.ts +0 -64
- package/dist/theme-C5qHTCU9.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { HTMLChakraProps, IconButtonProps } from '@chakra-ui/react';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
|
-
type BubbleButtonStyleProps = "
|
|
3
|
+
type BubbleButtonStyleProps = "transition" | "_hover" | "_active" | "borderColor" | "borderWidth";
|
|
4
4
|
export interface BubbleButtonProps extends Omit<IconButtonProps, BubbleButtonStyleProps> {
|
|
5
5
|
containerProps?: HTMLChakraProps<"div">;
|
|
6
6
|
isOpen?: boolean;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { AttributeType } from './types';
|
|
1
|
+
import { AttributeType, EnumOption } from './types';
|
|
2
2
|
/**
|
|
3
3
|
* Normalize an enum / enum-multi attribute's `options` to a plain option list.
|
|
4
4
|
* Sources resolve via `getSnapshot()` on every call, so callers naturally see
|
|
5
5
|
* the latest values.
|
|
6
6
|
*/
|
|
7
|
-
export declare const getEnumOptions: (type: AttributeType) =>
|
|
7
|
+
export declare const getEnumOptions: (type: AttributeType) => EnumOption[];
|
|
8
8
|
export declare const toTitleCase: (value: string) => string;
|
|
9
|
-
export declare const findEnumOption: (type: AttributeType, value: string) =>
|
|
9
|
+
export declare const findEnumOption: (type: AttributeType, value: string) => EnumOption | undefined;
|
|
10
10
|
export declare const enumOptionLabel: (type: AttributeType, value: string) => string;
|
|
@@ -20,6 +20,7 @@ export declare const collectDisplayCustomSlots: (row: DataRendererRow, attribute
|
|
|
20
20
|
export interface FilterCategoryView {
|
|
21
21
|
id: string;
|
|
22
22
|
label: string;
|
|
23
|
+
selectionMode: "multiple";
|
|
23
24
|
options: {
|
|
24
25
|
value: string;
|
|
25
26
|
label: string;
|
|
@@ -45,6 +46,7 @@ export declare const resolveListDropTargetColumnKey: (columnGrouping: string, pl
|
|
|
45
46
|
columnKey?: string;
|
|
46
47
|
}) => string | undefined;
|
|
47
48
|
export declare const resolveKnownColumnKeys: (columnGrouping: string, attributes: AttributeDescriptor[], filters?: DataRendererFilterState) => string[] | undefined;
|
|
49
|
+
export declare const normalizeFilterValues: (_descriptor: AttributeDescriptor, values: string[]) => string[];
|
|
48
50
|
export declare const omitFilterCategory: (filters: DataRendererFilterState, id: string) => DataRendererFilterState;
|
|
49
51
|
/**
|
|
50
52
|
* Drop persisted settings entries that reference attribute ids no longer
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ChangedFilesViewMode, DiffViewMode } from './types';
|
|
2
|
+
interface DiffViewerOptionsMenuProps {
|
|
3
|
+
isTreePanelOpen: boolean;
|
|
4
|
+
hasFilePaths: boolean;
|
|
5
|
+
viewMode: ChangedFilesViewMode;
|
|
6
|
+
diffViewMode: DiffViewMode;
|
|
7
|
+
isExpandAllDisabled: boolean;
|
|
8
|
+
isCollapseAllDisabled: boolean;
|
|
9
|
+
onToggleTreePanel: () => void;
|
|
10
|
+
onViewModeChange: (viewMode: ChangedFilesViewMode) => void;
|
|
11
|
+
onDiffViewModeChange: (diffViewMode: DiffViewMode) => void;
|
|
12
|
+
onExpandAll: () => void;
|
|
13
|
+
onCollapseAll: () => void;
|
|
14
|
+
}
|
|
15
|
+
export declare const DiffViewerOptionsMenu: (props: DiffViewerOptionsMenuProps) => import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export {};
|
|
@@ -5,15 +5,11 @@ export interface IconColorPickerIconOption {
|
|
|
5
5
|
icon: ComponentType;
|
|
6
6
|
}
|
|
7
7
|
export declare const optionColors: readonly ["gray", "red", "orange", "yellow", "green", "teal", "blue", "cyan", "purple", "pink"];
|
|
8
|
-
export declare const optionIcons:
|
|
9
|
-
value: null;
|
|
10
|
-
label: string;
|
|
11
|
-
icon: import('react').ForwardRefExoticComponent<Omit<import('lucide-react').LucideProps, "ref"> & import('react').RefAttributes<SVGSVGElement>>;
|
|
12
|
-
} | {
|
|
8
|
+
export declare const optionIcons: {
|
|
13
9
|
value: string;
|
|
14
10
|
label: string;
|
|
15
11
|
icon: import('react').ForwardRefExoticComponent<Omit<import('lucide-react').LucideProps, "ref"> & import('react').RefAttributes<SVGSVGElement>>;
|
|
16
|
-
}
|
|
12
|
+
}[];
|
|
17
13
|
export declare const getIconComponent: (name: string | null | undefined, iconOptions?: readonly IconColorPickerIconOption[]) => ComponentType;
|
|
18
14
|
export interface IconColorPickerProps {
|
|
19
15
|
color: string;
|
|
@@ -37,7 +37,7 @@ export interface ListRowAction {
|
|
|
37
37
|
menuItems?: ListRowActionMenuItem[];
|
|
38
38
|
onAction?: (context: ListRowActionContext) => void;
|
|
39
39
|
}
|
|
40
|
-
export type ListRowVariant = "default" | "compact" | "tree";
|
|
40
|
+
export type ListRowVariant = "default" | "compact" | "tree" | "empty-state";
|
|
41
41
|
export type ListRowTone = "default" | "danger";
|
|
42
42
|
export type ListRowMenuPlacement = "top" | "top-start" | "top-end" | "bottom" | "bottom-start" | "bottom-end" | "right" | "right-start" | "right-end" | "left" | "left-start" | "left-end";
|
|
43
43
|
/** Data model for one reusable row, including labels, icons, menus, actions, and children. */
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export type NotificationCenterPriority = "low" | "normal" | "high" | "urgent";
|
|
3
|
+
export type NotificationCenterStatus = "open" | "read" | "snoozed" | "done" | "dismissed" | "expired";
|
|
4
|
+
export interface NotificationCenterAction {
|
|
5
|
+
id: string;
|
|
6
|
+
label: string;
|
|
7
|
+
primary?: boolean;
|
|
8
|
+
destructive?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface NotificationCenterItem {
|
|
11
|
+
id: string;
|
|
12
|
+
title: string;
|
|
13
|
+
body?: string | null;
|
|
14
|
+
kind?: string;
|
|
15
|
+
priority: NotificationCenterPriority;
|
|
16
|
+
status: NotificationCenterStatus;
|
|
17
|
+
sourceLabel?: string | null;
|
|
18
|
+
targetLabel?: string | null;
|
|
19
|
+
timeLabel?: string | null;
|
|
20
|
+
actions?: NotificationCenterAction[];
|
|
21
|
+
searchText?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface NotificationCenterProps {
|
|
24
|
+
items: NotificationCenterItem[];
|
|
25
|
+
loading?: boolean;
|
|
26
|
+
error?: string | null;
|
|
27
|
+
autoFocus?: boolean;
|
|
28
|
+
emptyLabel?: string;
|
|
29
|
+
query?: string;
|
|
30
|
+
onQueryChange?: (query: string) => void;
|
|
31
|
+
onActivateItem?: (item: NotificationCenterItem) => void;
|
|
32
|
+
onRunAction?: (item: NotificationCenterItem, action: NotificationCenterAction) => void;
|
|
33
|
+
onDismiss?: (item: NotificationCenterItem) => void;
|
|
34
|
+
onEscape?: () => void;
|
|
35
|
+
footerStart?: ReactNode;
|
|
36
|
+
footerEnd?: ReactNode;
|
|
37
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { KeyboardEventHandler, ReactNode, Ref } from 'react';
|
|
2
|
+
import { ScrollAreaProps } from './scroll-area';
|
|
3
|
+
export interface SearchModalContentProps {
|
|
4
|
+
children: ReactNode;
|
|
5
|
+
searchValue: string;
|
|
6
|
+
searchPlaceholder: string;
|
|
7
|
+
searchAriaLabel?: string;
|
|
8
|
+
searchIcon?: ReactNode;
|
|
9
|
+
searchInputRef?: Ref<HTMLInputElement>;
|
|
10
|
+
searchAutoFocus?: boolean;
|
|
11
|
+
showCloseButton?: boolean;
|
|
12
|
+
closeButtonLabel?: string;
|
|
13
|
+
bodyBefore?: ReactNode;
|
|
14
|
+
footerStart?: ReactNode;
|
|
15
|
+
footerEnd?: ReactNode;
|
|
16
|
+
scrollAreaProps?: Omit<ScrollAreaProps, "children">;
|
|
17
|
+
onSearchChange: (value: string) => void;
|
|
18
|
+
onSearchKeyDown?: KeyboardEventHandler<HTMLInputElement>;
|
|
19
|
+
}
|
|
20
|
+
export declare const SearchModalContent: (props: SearchModalContentProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -33,14 +33,8 @@ export interface RadiusSample {
|
|
|
33
33
|
token: string;
|
|
34
34
|
helper: string;
|
|
35
35
|
}
|
|
36
|
-
export interface ShadowSample {
|
|
37
|
-
label: string;
|
|
38
|
-
token: string;
|
|
39
|
-
helper: string;
|
|
40
|
-
}
|
|
41
36
|
export declare const fontSamples: FontSample[];
|
|
42
37
|
export declare const typographySamples: TypographySample[];
|
|
43
38
|
export declare const colorGroups: ColorGroup[];
|
|
44
39
|
export declare const spacingSamples: SpacingSample[];
|
|
45
40
|
export declare const radiusSamples: RadiusSample[];
|
|
46
|
-
export declare const shadowSamples: ShadowSample[];
|
|
@@ -13,7 +13,9 @@ export interface TabVisibilityMenuActions {
|
|
|
13
13
|
onResetAll: () => void;
|
|
14
14
|
}
|
|
15
15
|
interface BuildTabMenuOptions {
|
|
16
|
-
|
|
16
|
+
visibleIcon: ReactNode;
|
|
17
|
+
hiddenIcon: ReactNode;
|
|
18
|
+
resetIcon?: ReactNode;
|
|
17
19
|
}
|
|
18
|
-
export declare const buildTabVisibilityMenuActions: <T extends TabVisibilityPlacement>(placements: T[], tabOverrides: Record<string, VisibilityOverride>, actions: TabVisibilityMenuActions, getKey: (placement: T) => string, options: BuildTabMenuOptions) => ResourceContextAction[];
|
|
20
|
+
export declare const buildTabVisibilityMenuActions: <T extends TabVisibilityPlacement>(placements: T[], tabOverrides: Record<string, VisibilityOverride>, actions: TabVisibilityMenuActions, getKey: (placement: T) => string, options: BuildTabMenuOptions, getIcon?: (placement: T) => ReactNode) => ResourceContextAction[];
|
|
19
21
|
export {};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { ResourceContextAction } from '../resource-context-menu';
|
|
3
|
-
import { TreeListSection } from './tree-list.types';
|
|
3
|
+
import { TreeListNode, TreeListSection } from './tree-list.types';
|
|
4
4
|
import { VisibilityOverride } from './tree-list-visibility.store';
|
|
5
5
|
export declare const resolveVisibility: (override: VisibilityOverride | undefined, hiddenByDefault: boolean | undefined) => VisibilityOverride;
|
|
6
|
+
export declare const filterVisibleNodes: (nodes: TreeListNode[], nodeOverrides: Record<string, VisibilityOverride>) => TreeListNode[];
|
|
6
7
|
export declare const filterVisibleSections: (sections: TreeListSection[], sectionOverrides: Record<string, VisibilityOverride>, nodeOverrides: Record<string, VisibilityOverride>) => TreeListSection[];
|
|
7
8
|
export interface TreeVisibilityMenuActions {
|
|
8
9
|
onToggleSection: (id: string, hiddenByDefault: boolean) => void;
|
|
@@ -11,7 +12,14 @@ export interface TreeVisibilityMenuActions {
|
|
|
11
12
|
onResetOrder?: () => void;
|
|
12
13
|
}
|
|
13
14
|
interface BuildMenuOptions {
|
|
14
|
-
|
|
15
|
+
visibleIcon: ReactNode;
|
|
16
|
+
hiddenIcon: ReactNode;
|
|
17
|
+
resetIcon?: ReactNode;
|
|
15
18
|
}
|
|
16
|
-
export
|
|
19
|
+
export interface TreeVisibilityMenuItems {
|
|
20
|
+
headerNodes?: TreeListNode[];
|
|
21
|
+
sections: TreeListSection[];
|
|
22
|
+
footerNodes?: TreeListNode[];
|
|
23
|
+
}
|
|
24
|
+
export declare const buildTreeVisibilityMenuActions: (items: TreeVisibilityMenuItems, sectionOverrides: Record<string, VisibilityOverride>, nodeOverrides: Record<string, VisibilityOverride>, actions: TreeVisibilityMenuActions, options: BuildMenuOptions) => ResourceContextAction[];
|
|
17
25
|
export {};
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
import { ComponentType, ReactNode } from 'react';
|
|
2
|
-
import { ListRowAction, ListRowActionContext, ListRowActionMenuItem, ListRowItem, ListRowNavigationIntent } from '../list-row/list-row.types';
|
|
2
|
+
import { ListRowAction, ListRowActionContext, ListRowActionMenuItem, ListRowItem, ListRowNavigationIntent, ListRowVariant } from '../list-row/list-row.types';
|
|
3
3
|
export type TreeListNavigationIntent = ListRowNavigationIntent;
|
|
4
4
|
export type TreeListActionContext = ListRowActionContext;
|
|
5
5
|
export type TreeListActionMenuItem = ListRowActionMenuItem;
|
|
6
6
|
export type TreeListAction = ListRowAction;
|
|
7
|
+
export type TreeListNodeRowVariant = Extract<ListRowVariant, "empty-state">;
|
|
7
8
|
/** Tree node data rendered by `TreeList`; extends the row API used by `ListRow`. */
|
|
8
9
|
export type TreeListNode = ListRowItem & {
|
|
9
10
|
id: string;
|
|
10
11
|
children?: TreeListNode[];
|
|
12
|
+
/** Per-node visual row variant. Used for non-interactive placeholder rows. */
|
|
13
|
+
rowVariant?: TreeListNodeRowVariant;
|
|
11
14
|
hiddenByDefault?: boolean;
|
|
12
|
-
/**
|
|
15
|
+
/** Opt in to the tree-customization (hide/show) menu. Items are non-hideable unless this is true. */
|
|
13
16
|
canHide?: boolean;
|
|
14
17
|
};
|
|
15
18
|
/** Top-level tree section with optional header, actions, empty state, and child nodes. */
|
|
@@ -21,6 +24,8 @@ export interface TreeListSection {
|
|
|
21
24
|
emptyState?: ReactNode;
|
|
22
25
|
nodes: TreeListNode[];
|
|
23
26
|
hiddenByDefault?: boolean;
|
|
27
|
+
/** Opt in to the tree-customization (hide/show) menu. Sections are non-hideable unless this is true. */
|
|
28
|
+
canHide?: boolean;
|
|
24
29
|
}
|
|
25
30
|
/** Navigation payload emitted when a navigable tree node is activated. */
|
|
26
31
|
export interface TreeListNavigateEvent {
|
package/dist/index.d.ts
CHANGED
|
@@ -50,6 +50,8 @@ export { ListRow } from './components/list-row/list-row';
|
|
|
50
50
|
export type { ListRowAction, ListRowActionContext, ListRowActionMenuItem, ListRowItem, ListRowNavigationIntent, } from './components/list-row/list-row.types';
|
|
51
51
|
export type { MermaidRendererProps } from './components/mermaid-renderer';
|
|
52
52
|
export { MermaidRenderer } from './components/mermaid-renderer';
|
|
53
|
+
export type { NotificationCenterAction, NotificationCenterItem, NotificationCenterPriority, NotificationCenterProps, NotificationCenterStatus, } from './components/notification-center';
|
|
54
|
+
export { NotificationCenter } from './components/notification-center';
|
|
53
55
|
export type { OpenSourceNotice, OpenSourceNoticesScreenProps, } from './components/open-source-notices-screen';
|
|
54
56
|
export { OpenSourceNoticesScreen } from './components/open-source-notices-screen';
|
|
55
57
|
export type { FilterPaletteEntriesOptions, PaletteEntry, PaletteEscapeContext, PaletteMode, PaletteProps, PaletteSearchEntry, PaletteState, PaletteStateValue, } from './components/palette';
|
|
@@ -67,6 +69,8 @@ export { ResourceBadge } from './components/resource-badge';
|
|
|
67
69
|
export type { ResourceContextAction } from './components/resource-context-menu';
|
|
68
70
|
export { ResourceContextMenu } from './components/resource-context-menu';
|
|
69
71
|
export { ScrollArea } from './components/scroll-area';
|
|
72
|
+
export type { SearchModalContentProps } from './components/search-modal-content';
|
|
73
|
+
export { SearchModalContent } from './components/search-modal-content';
|
|
70
74
|
export type { SearchableMenuItem, SearchableMenuParentList } from './components/searchable-menu';
|
|
71
75
|
export { SearchableMenu } from './components/searchable-menu';
|
|
72
76
|
export type { SessionCompletionStatus } from './components/session-indicator';
|
|
@@ -74,7 +78,6 @@ export { resolveSessionIndicatorColor, resolveSessionIndicatorIcon, SessionIndic
|
|
|
74
78
|
export { Sidebar } from './components/sidebar/sidebar';
|
|
75
79
|
export { useSidebarStore } from './components/sidebar/sidebar.store';
|
|
76
80
|
export type { SidebarProps } from './components/sidebar/sidebar.types';
|
|
77
|
-
export { SidebarProjectMenu } from './components/sidebar/sidebar-project-menu';
|
|
78
81
|
export type { SimpleCardBodyProps, SimpleCardProps } from './components/simple-card';
|
|
79
82
|
export { SimpleCard, SimpleCardBody } from './components/simple-card';
|
|
80
83
|
export type { SwitchProps } from './components/switch';
|
|
@@ -92,7 +95,8 @@ export { getTreeListOrderStore, useTreeListOrderStore, } from './components/tree
|
|
|
92
95
|
export { applyTreeListOrder } from './components/tree-list/tree-list-order-filter';
|
|
93
96
|
export type { VisibilityOverride } from './components/tree-list/tree-list-visibility.store';
|
|
94
97
|
export { getTreeListVisibilityStore, useTreeListVisibilityStore, } from './components/tree-list/tree-list-visibility.store';
|
|
95
|
-
export {
|
|
98
|
+
export type { TreeVisibilityMenuItems } from './components/tree-list/tree-list-visibility-filter';
|
|
99
|
+
export { buildTreeVisibilityMenuActions, filterVisibleNodes, filterVisibleSections, resolveVisibility, } from './components/tree-list/tree-list-visibility-filter';
|
|
96
100
|
export type { WorkspaceBadgeProps } from './components/workspace-badge';
|
|
97
101
|
export { WorkspaceBadge } from './components/workspace-badge';
|
|
98
102
|
export type { MonacoThemeData, VsCodeColorTheme } from './theme';
|