@pstdio/ui 0.5.2 → 0.7.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-DDCxR-Gs.js → MermaidComponent-D7Baqkwx.js} +2 -2
- package/dist/{MermaidComponent-DDCxR-Gs.js.map → MermaidComponent-D7Baqkwx.js.map} +1 -1
- package/dist/chat-ui.js +1272 -1080
- package/dist/chat-ui.js.map +1 -1
- package/dist/components/activity/activity-avatar.d.ts +9 -0
- package/dist/components/activity/activity-comment.d.ts +19 -0
- package/dist/components/activity/activity-composer.d.ts +18 -0
- package/dist/components/activity/activity-event.d.ts +12 -0
- package/dist/components/activity/activity-root.d.ts +15 -0
- package/dist/components/activity/activity-timeline.d.ts +6 -0
- package/dist/components/activity/activity.types.d.ts +5 -0
- package/dist/components/activity/index.d.ts +25 -0
- package/dist/components/chat-ui/components/ai-conversation.d.ts +4 -4
- package/dist/components/chat-ui/components/ai-message.d.ts +2 -0
- package/dist/components/chat-ui/components/chat-message-list.d.ts +12 -0
- package/dist/components/chat-ui/components/chat-panel.d.ts +3 -1
- package/dist/components/chat-ui/components/message-action-panel.d.ts +10 -0
- package/dist/components/chat-ui/performance/chat-mount-metrics.d.ts +37 -0
- package/dist/components/chat-ui/performance/chat-panel.perf.d.ts +18 -0
- package/dist/components/chat-ui/performance/chat-performance-fixtures.d.ts +29 -0
- package/dist/components/chat-ui/performance/chat-performance-panel.d.ts +23 -0
- package/dist/components/chat-ui/performance/chat-performance-story-utils.d.ts +30 -0
- package/dist/components/code-editor.d.ts +1 -1
- package/dist/components/diff-viewer/build-changed-files-tree.d.ts +4 -0
- package/dist/components/diff-viewer/diff-card-body.d.ts +34 -0
- package/dist/components/diff-viewer/diff-card-content.d.ts +22 -0
- package/dist/components/diff-viewer/diff-card-load-state.d.ts +9 -0
- package/dist/components/diff-viewer/diff-card.d.ts +43 -0
- package/dist/components/diff-viewer/diff-drawer.d.ts +33 -0
- package/dist/components/diff-viewer/diff-editor.d.ts +20 -0
- package/dist/components/diff-viewer/diff-size.d.ts +14 -0
- package/dist/components/diff-viewer/diff-view-adapter.d.ts +27 -0
- package/dist/components/diff-viewer/diff-viewer.d.ts +14 -0
- package/dist/components/diff-viewer/diff-viewer.store.d.ts +21 -0
- package/dist/components/diff-viewer/file-list-panel.d.ts +19 -0
- package/dist/components/diff-viewer/index.d.ts +5 -0
- package/dist/components/diff-viewer/types.d.ts +13 -0
- package/dist/components/integration-card.d.ts +12 -0
- package/dist/components/list-row/list-row-menu.d.ts +12 -0
- package/dist/components/list-row/list-row.types.d.ts +8 -0
- package/dist/components/palette-filter.d.ts +23 -0
- package/dist/components/palette-list.d.ts +11 -0
- package/dist/components/palette-shortcut.d.ts +4 -0
- package/dist/components/palette.d.ts +47 -0
- package/dist/components/panel-sidebar-registration-context.d.ts +12 -0
- package/dist/components/param-editor-label.d.ts +6 -0
- package/dist/components/param-editor.d.ts +2 -2
- package/dist/components/param-editor.types.d.ts +6 -1
- package/dist/components/performance-panel.d.ts +40 -0
- package/dist/components/{folder-picker-dialog.d.ts → repo-picker-dialog.d.ts} +6 -6
- package/dist/components/resizable-split-layout.d.ts +20 -0
- package/dist/components/resizable-split-layout.handle.d.ts +17 -0
- package/dist/components/resource-context-menu.d.ts +1 -0
- package/dist/components/rich-text/shared/editor-config.d.ts +1 -0
- package/dist/components/rich-text/shared/plugins/FloatingTextFormatToolbarPlugin/floating-toolbar-buttons.d.ts +16 -0
- package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/commands.d.ts +2 -0
- package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/index.d.ts +3 -0
- package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/link-editor-content.d.ts +18 -0
- package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/utils/link-edit-state.d.ts +1 -0
- package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/utils/selection-link-url.d.ts +2 -0
- package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/utils/setFloatingElemPos.d.ts +1 -1
- package/dist/components/rich-text/shared/transformers/markdown-transformers-test-utils.d.ts +3 -0
- package/dist/components/rich-text/shared/transformers/markdown-transformers.d.ts +1 -0
- package/dist/components/session-indicator.d.ts +2 -2
- package/dist/components/sidebar/sidebar-header.d.ts +0 -1
- package/dist/components/sidebar/sidebar.types.d.ts +7 -1
- package/dist/components/simple-card.d.ts +5 -0
- package/dist/components/tree-list/tree-list.d.ts +28 -1
- package/dist/index.d.ts +20 -8
- package/dist/index.js +4771 -2446
- package/dist/index.js.map +1 -1
- package/dist/radio-DJtQY9po.js +286 -0
- package/dist/radio-DJtQY9po.js.map +1 -0
- package/dist/{rich-message-DeJwzVeV.js → rich-message-33DPxuWJ.js} +502 -464
- package/dist/rich-message-33DPxuWJ.js.map +1 -0
- package/dist/rich-text.js +738 -414
- package/dist/rich-text.js.map +1 -1
- package/dist/style.css +1 -1
- package/dist/theme/custom/index.d.ts +2 -0
- package/dist/theme/custom/vscode-theme.d.ts +32 -0
- package/dist/theme/index.d.ts +2 -1
- package/dist/theme/recipes/alert.d.ts +1 -1
- package/dist/theme/recipes/dialog.d.ts +1 -1
- package/dist/theme/recipes/drawer.d.ts +1 -1
- package/dist/theme/recipes/menu.d.ts +1 -1
- package/dist/theme/recipes/popover.d.ts +1 -1
- package/dist/theme/recipes/tabs.d.ts +18 -0
- package/dist/theme/tokens/borders.d.ts +6 -24
- package/dist/theme/tokens/colors.d.ts +168 -168
- package/dist/theme/tokens/shadows.d.ts +5 -5
- package/dist/{theme-Dq4r3aRE.js → theme-D-aCJqTf.js} +295 -236
- package/dist/theme-D-aCJqTf.js.map +1 -0
- package/dist/theme.js +6 -4
- package/dist/utils/apply-theme-preference.d.ts +2 -0
- package/package.json +4 -1
- package/dist/components/app-shell/app-shell.d.ts +0 -1
- package/dist/components/app-shell/command-palette.d.ts +0 -16
- package/dist/components/app-shell/file-tree.d.ts +0 -7
- package/dist/components/app-shell/mock-chat.d.ts +0 -2
- package/dist/components/app-shell/mock-data.d.ts +0 -37
- package/dist/components/app-shell/pages/project-list-page.d.ts +0 -7
- package/dist/components/app-shell/pages/sessions-page.d.ts +0 -6
- package/dist/components/app-shell/pages/settings-page.d.ts +0 -5
- package/dist/components/app-shell/pages/ticket-details-page.d.ts +0 -7
- package/dist/components/app-shell/pages/tickets-page.d.ts +0 -7
- package/dist/components/app-shell/pages/workspace-page.d.ts +0 -1
- package/dist/components/app-shell/resizable-panel.d.ts +0 -13
- package/dist/components/attached-panel.utils.d.ts +0 -6
- package/dist/components/diff-card.d.ts +0 -17
- package/dist/components/diff-drawer.d.ts +0 -7
- package/dist/components/diff-editor.d.ts +0 -11
- package/dist/components/diff-view-adapter.d.ts +0 -14
- package/dist/components/properties.d.ts +0 -18
- package/dist/radio-C42qncrD.js +0 -236
- package/dist/radio-C42qncrD.js.map +0 -1
- package/dist/rich-message-DeJwzVeV.js.map +0 -1
- package/dist/theme-Dq4r3aRE.js.map +0 -1
- /package/dist/components/{diff-bubble.d.ts → diff-viewer/diff-bubble.d.ts} +0 -0
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export type { Diff } from './diff-card';
|
|
2
|
+
export { DiffDrawer } from './diff-drawer';
|
|
3
|
+
export { DiffViewer, type DiffViewerProps } from './diff-viewer';
|
|
4
|
+
export { useDiffViewerStore } from './diff-viewer.store';
|
|
5
|
+
export type { ChangedFilesViewMode, DiffViewMode, FileIconInfo } from './types';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export type ChangedFilesViewMode = "nested" | "flat";
|
|
3
|
+
export type DiffViewMode = "unified" | "split";
|
|
4
|
+
export interface ChangedFileTreeNode {
|
|
5
|
+
id: string;
|
|
6
|
+
name: string;
|
|
7
|
+
type: "folder" | "file";
|
|
8
|
+
children?: ChangedFileTreeNode[];
|
|
9
|
+
}
|
|
10
|
+
export interface FileIconInfo {
|
|
11
|
+
icon: ReactNode;
|
|
12
|
+
color: string;
|
|
13
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface IntegrationCardProps {
|
|
3
|
+
icon: ReactNode;
|
|
4
|
+
name: string;
|
|
5
|
+
description: string;
|
|
6
|
+
id: string;
|
|
7
|
+
version?: string;
|
|
8
|
+
category?: string;
|
|
9
|
+
active?: boolean;
|
|
10
|
+
actionLabel?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare const IntegrationCard: (props: IntegrationCardProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ReactElement } from 'react';
|
|
2
|
+
import { ListRowActionMenuItem, ListRowMenuPlacement } from './list-row.types';
|
|
3
|
+
interface ListRowMenuProps {
|
|
4
|
+
items: ListRowActionMenuItem[];
|
|
5
|
+
open: boolean;
|
|
6
|
+
placement?: ListRowMenuPlacement;
|
|
7
|
+
children: ReactElement;
|
|
8
|
+
onOpenChange: (open: boolean) => void;
|
|
9
|
+
onSelect: (item: ListRowActionMenuItem) => void;
|
|
10
|
+
}
|
|
11
|
+
export declare const ListRowMenu: (props: ListRowMenuProps) => import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
|
@@ -16,12 +16,16 @@ export interface ListRowActionMenuItem {
|
|
|
16
16
|
size?: number | string;
|
|
17
17
|
}>;
|
|
18
18
|
disabled?: boolean;
|
|
19
|
+
/** Trailing content rendered after the label. Use for Kbd shortcuts, counts, or badges. */
|
|
20
|
+
endContent?: ReactNode;
|
|
19
21
|
onAction?: () => void;
|
|
20
22
|
}
|
|
21
23
|
export interface ListRowAction {
|
|
22
24
|
id: string;
|
|
23
25
|
label: string;
|
|
24
26
|
icon?: ReactNode;
|
|
27
|
+
/** Tooltip shown when the action button is hovered or focused. Can include label + Kbd hint. */
|
|
28
|
+
tooltip?: ReactNode;
|
|
25
29
|
searchPlaceholder?: string;
|
|
26
30
|
emptyMenuLabel?: string;
|
|
27
31
|
menuItems?: ListRowActionMenuItem[];
|
|
@@ -29,6 +33,7 @@ export interface ListRowAction {
|
|
|
29
33
|
}
|
|
30
34
|
export type ListRowVariant = "default" | "compact" | "tree";
|
|
31
35
|
export type ListRowTone = "default" | "danger";
|
|
36
|
+
export type ListRowMenuPlacement = "top" | "top-start" | "top-end" | "bottom" | "bottom-start" | "bottom-end" | "right" | "right-start" | "right-end" | "left" | "left-start" | "left-end";
|
|
32
37
|
export interface ListRowItem {
|
|
33
38
|
id?: string;
|
|
34
39
|
label: ReactNode;
|
|
@@ -51,6 +56,9 @@ export interface ListRowItem {
|
|
|
51
56
|
href?: string;
|
|
52
57
|
navigationIntent?: ListRowNavigationIntent;
|
|
53
58
|
onActivate?: () => void;
|
|
59
|
+
/** Left-click menu opened from the row surface. */
|
|
60
|
+
menuItems?: ListRowActionMenuItem[];
|
|
61
|
+
menuPlacement?: ListRowMenuPlacement;
|
|
54
62
|
contextMenuItems?: ListRowActionMenuItem[];
|
|
55
63
|
actions?: ListRowAction[];
|
|
56
64
|
children?: ListRowItem[];
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export declare const DEFAULT_PALETTE_ASSET_LIMIT = 48;
|
|
3
|
+
export interface PaletteSearchEntry {
|
|
4
|
+
id: string;
|
|
5
|
+
mode?: string;
|
|
6
|
+
label: ReactNode;
|
|
7
|
+
searchText?: string;
|
|
8
|
+
secondaryLabel?: ReactNode;
|
|
9
|
+
assetType?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface PaletteMode {
|
|
12
|
+
id: string;
|
|
13
|
+
inputPrefix?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface FilterPaletteEntriesOptions {
|
|
16
|
+
query: string;
|
|
17
|
+
mode?: string;
|
|
18
|
+
getEffectiveQuery?: (query: string) => string;
|
|
19
|
+
defaultAssetLimit?: number;
|
|
20
|
+
}
|
|
21
|
+
export declare const resolvePaletteMode: (query: string, modes?: readonly PaletteMode[], fallbackMode?: string) => string;
|
|
22
|
+
export declare const getPaletteEffectiveQuery: (query: string, modes?: readonly PaletteMode[], modeId?: string) => string;
|
|
23
|
+
export declare const filterPaletteEntries: <T extends PaletteSearchEntry>(entries: T[], options: FilterPaletteEntriesOptions) => T[];
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
import { PaletteEntry } from './palette';
|
|
3
|
+
interface PaletteListProps<T extends PaletteEntry> {
|
|
4
|
+
entries: T[];
|
|
5
|
+
activeIndex: number;
|
|
6
|
+
emptyLabel: string;
|
|
7
|
+
onHover: (index: number) => void;
|
|
8
|
+
scrollRef: RefObject<HTMLDivElement | null>;
|
|
9
|
+
}
|
|
10
|
+
export declare const PaletteList: <T extends PaletteEntry>(props: PaletteListProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ReactNode, SetStateAction } from 'react';
|
|
2
|
+
import { DEFAULT_PALETTE_ASSET_LIMIT, FilterPaletteEntriesOptions, filterPaletteEntries, PaletteMode, PaletteSearchEntry } from './palette-filter';
|
|
3
|
+
export type { FilterPaletteEntriesOptions, PaletteMode, PaletteSearchEntry };
|
|
4
|
+
export { DEFAULT_PALETTE_ASSET_LIMIT, filterPaletteEntries };
|
|
5
|
+
export interface PaletteEntry extends PaletteSearchEntry {
|
|
6
|
+
description?: ReactNode;
|
|
7
|
+
icon?: ReactNode;
|
|
8
|
+
shortcut?: ReactNode;
|
|
9
|
+
endContent?: ReactNode;
|
|
10
|
+
group?: string;
|
|
11
|
+
isSelected?: boolean;
|
|
12
|
+
onActivate: () => void;
|
|
13
|
+
}
|
|
14
|
+
export interface PaletteState<T extends PaletteEntry> {
|
|
15
|
+
query: string;
|
|
16
|
+
mode?: string;
|
|
17
|
+
activeIndex: number;
|
|
18
|
+
entries: T[];
|
|
19
|
+
}
|
|
20
|
+
export interface PaletteEscapeContext<T extends PaletteEntry> extends PaletteState<T> {
|
|
21
|
+
activeEntry: T | null;
|
|
22
|
+
entryCount: number;
|
|
23
|
+
setQuery: (query: string) => void;
|
|
24
|
+
setActiveIndex: (index: SetStateAction<number>) => void;
|
|
25
|
+
runActiveEntry: () => void;
|
|
26
|
+
closePalette: () => void;
|
|
27
|
+
}
|
|
28
|
+
export type PaletteStateValue<T extends PaletteEntry, TValue> = TValue | ((state: PaletteState<T>) => TValue);
|
|
29
|
+
export interface PaletteProps<T extends PaletteEntry = PaletteEntry> {
|
|
30
|
+
open: boolean;
|
|
31
|
+
entries: T[];
|
|
32
|
+
initialQuery?: string;
|
|
33
|
+
initialActiveIndex?: number;
|
|
34
|
+
mode?: string;
|
|
35
|
+
modes?: PaletteMode[];
|
|
36
|
+
resetKey?: string;
|
|
37
|
+
inputIcon?: PaletteStateValue<T, ReactNode>;
|
|
38
|
+
placeholder?: PaletteStateValue<T, string>;
|
|
39
|
+
emptyLabel?: string;
|
|
40
|
+
footerStart?: ReactNode;
|
|
41
|
+
footerEnd?: ReactNode;
|
|
42
|
+
filterEntries?: (entries: T[], query: string, mode?: string) => T[];
|
|
43
|
+
onActiveEntryChange?: (entry: T | null, index: number) => void;
|
|
44
|
+
onClose: () => void;
|
|
45
|
+
onEscape?: (ctx: PaletteEscapeContext<T>) => boolean | undefined;
|
|
46
|
+
}
|
|
47
|
+
export declare const Palette: <T extends PaletteEntry>(props: PaletteProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Dispatch, SetStateAction } from 'react';
|
|
2
|
+
export interface PanelSidebarRegistration {
|
|
3
|
+
open: boolean;
|
|
4
|
+
resizable: boolean;
|
|
5
|
+
width: number;
|
|
6
|
+
minWidth: number;
|
|
7
|
+
maxWidth: number;
|
|
8
|
+
onWidthChange: (width: number) => void;
|
|
9
|
+
onOpenChange: (open: boolean) => void;
|
|
10
|
+
}
|
|
11
|
+
export declare const PanelSidebarRegistrationContext: import('react').Context<Dispatch<SetStateAction<PanelSidebarRegistration | null>> | null>;
|
|
12
|
+
export declare const usePanelSidebarRegistration: (registration: PanelSidebarRegistration) => boolean;
|
|
@@ -2,8 +2,8 @@ import { InputGroup, Param, ParamValue, ParamValueMap } from './param-editor.typ
|
|
|
2
2
|
export interface ParamEditorProps {
|
|
3
3
|
params?: Param[];
|
|
4
4
|
groups?: InputGroup[];
|
|
5
|
-
defaultValues
|
|
6
|
-
onChange
|
|
5
|
+
defaultValues?: ParamValueMap;
|
|
6
|
+
onChange?: (id: string, value: ParamValue) => void;
|
|
7
7
|
readOnly?: boolean;
|
|
8
8
|
fullWidth?: boolean;
|
|
9
9
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
1
2
|
export interface BaseParam {
|
|
2
3
|
id: string;
|
|
3
4
|
name: string;
|
|
@@ -36,6 +37,10 @@ export interface ColorParam extends BaseParam {
|
|
|
36
37
|
type: "color";
|
|
37
38
|
defaultValue: string;
|
|
38
39
|
}
|
|
40
|
+
export interface PropertyParam extends BaseParam {
|
|
41
|
+
type: "property";
|
|
42
|
+
value: ReactNode;
|
|
43
|
+
}
|
|
39
44
|
export type ObjectDefinition = (NumberParam | TextParam)[];
|
|
40
45
|
export interface ObjectParam extends BaseParam {
|
|
41
46
|
type: "object";
|
|
@@ -60,7 +65,7 @@ export interface InputGroup {
|
|
|
60
65
|
defaultCollapsed?: boolean;
|
|
61
66
|
}
|
|
62
67
|
export type ParamValue = number | string | null | ObjectDefinition | Array<number> | Array<string>;
|
|
63
|
-
export type Param = NumberParam | TextParam | SelectionParam | DateParam | ColorParam | ObjectParam | ListParam | VectorParam;
|
|
68
|
+
export type Param = NumberParam | TextParam | SelectionParam | DateParam | ColorParam | PropertyParam | ObjectParam | ListParam | VectorParam;
|
|
64
69
|
export type ParamValueMap = Record<string, ParamValue>;
|
|
65
70
|
type WithOptionalDefault<T extends {
|
|
66
71
|
defaultValue: unknown;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { BoxProps } from '@chakra-ui/react';
|
|
2
|
+
type PerformanceFrameRate = {
|
|
3
|
+
value: number | null;
|
|
4
|
+
averageValue: number | null;
|
|
5
|
+
samples: number[];
|
|
6
|
+
startedAtMs: number;
|
|
7
|
+
totalFrames: number;
|
|
8
|
+
};
|
|
9
|
+
export interface PerformanceFrameRateSnapshot {
|
|
10
|
+
framesPerSecond: number | null;
|
|
11
|
+
averageFramesPerSecond: number | null;
|
|
12
|
+
frameRateSamples: number[];
|
|
13
|
+
}
|
|
14
|
+
declare global {
|
|
15
|
+
interface Window {
|
|
16
|
+
__performancePanelFrameRate?: PerformanceFrameRate;
|
|
17
|
+
__performancePanelFrameRateSamplerInstalled?: boolean;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
export interface PerformancePanelMetric {
|
|
21
|
+
label: string;
|
|
22
|
+
value: string;
|
|
23
|
+
}
|
|
24
|
+
interface PerformancePanelProps {
|
|
25
|
+
title?: string;
|
|
26
|
+
subtitle: string;
|
|
27
|
+
badgeLabel: string;
|
|
28
|
+
metrics: PerformancePanelMetric[];
|
|
29
|
+
framesPerSecond?: number | null;
|
|
30
|
+
averageFramesPerSecond?: number | null;
|
|
31
|
+
frameRateSamples?: number[];
|
|
32
|
+
rootProps?: BoxProps;
|
|
33
|
+
testId?: string;
|
|
34
|
+
}
|
|
35
|
+
export declare const formatPerformanceMs: (value: number | null) => string;
|
|
36
|
+
export declare const formatPerformanceFps: (value: number | null) => string;
|
|
37
|
+
export declare const installPerformanceFrameRateSampler: () => void;
|
|
38
|
+
export declare const readPerformanceFrameRateSnapshot: () => PerformanceFrameRateSnapshot;
|
|
39
|
+
export declare const PerformancePanel: (props: PerformancePanelProps) => import("react/jsx-runtime").JSX.Element;
|
|
40
|
+
export {};
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
export interface
|
|
1
|
+
export interface RepoPickerDialogEntry {
|
|
2
2
|
name: string;
|
|
3
3
|
path: string;
|
|
4
4
|
isDirectory: boolean;
|
|
5
5
|
isGitRepo: boolean;
|
|
6
6
|
}
|
|
7
|
-
interface
|
|
7
|
+
interface RepoPickerDialogProps {
|
|
8
8
|
open: boolean;
|
|
9
9
|
title?: string;
|
|
10
10
|
description?: string;
|
|
11
11
|
currentPath?: string;
|
|
12
|
-
entries:
|
|
12
|
+
entries: RepoPickerDialogEntry[];
|
|
13
13
|
selectedPath?: string | null;
|
|
14
14
|
selectedPaths?: string[];
|
|
15
15
|
isLoading?: boolean;
|
|
@@ -19,7 +19,7 @@ interface FolderPickerDialogProps {
|
|
|
19
19
|
onSelect: () => void;
|
|
20
20
|
onSelectHomeDirectory: () => void;
|
|
21
21
|
onSelectParentDirectory: () => void;
|
|
22
|
-
onEntryClick: (entry:
|
|
22
|
+
onEntryClick: (entry: RepoPickerDialogEntry) => void;
|
|
23
23
|
}
|
|
24
|
-
export type {
|
|
25
|
-
export declare const
|
|
24
|
+
export type { RepoPickerDialogProps };
|
|
25
|
+
export declare const RepoPickerDialog: (props: RepoPickerDialogProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { FlexProps } from '@chakra-ui/react';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import { ResizableSplitSide } from './resizable-split-layout.handle';
|
|
4
|
+
interface ResizableSplitLayoutProps extends Omit<FlexProps, "children" | "onResize"> {
|
|
5
|
+
resizablePanel: ReactNode;
|
|
6
|
+
contentPanel: ReactNode;
|
|
7
|
+
resizableSide?: ResizableSplitSide;
|
|
8
|
+
defaultSizePx?: number;
|
|
9
|
+
minSizePx?: number;
|
|
10
|
+
maxSizePx?: number;
|
|
11
|
+
contentMinSizePx?: number;
|
|
12
|
+
collapsed?: boolean;
|
|
13
|
+
collapsible?: boolean;
|
|
14
|
+
resizeLabel?: string;
|
|
15
|
+
showResizeSeparator?: boolean;
|
|
16
|
+
onSizeChange?: (width: number) => void;
|
|
17
|
+
onCollapsedChange?: (collapsed: boolean) => void;
|
|
18
|
+
}
|
|
19
|
+
export declare const ResizableSplitLayout: (props: ResizableSplitLayoutProps) => import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { KeyboardEvent as ReactKeyboardEvent, PointerEvent as ReactPointerEvent } from 'react';
|
|
2
|
+
export type ResizableSplitSide = "left" | "right";
|
|
3
|
+
interface ResizeHandleProps {
|
|
4
|
+
bounds: {
|
|
5
|
+
minSize: number;
|
|
6
|
+
maxSize: number;
|
|
7
|
+
};
|
|
8
|
+
contentPanelId: string;
|
|
9
|
+
resizablePanelId: string;
|
|
10
|
+
resizeLabel: string;
|
|
11
|
+
resolvedPanelWidth: number;
|
|
12
|
+
showResizeSeparator: boolean;
|
|
13
|
+
onResizeKeyDown: (event: ReactKeyboardEvent<HTMLDivElement>) => void;
|
|
14
|
+
onResizeStart: (event: ReactPointerEvent<HTMLDivElement>) => void;
|
|
15
|
+
}
|
|
16
|
+
export declare const ResizeHandle: (props: ResizeHandleProps) => import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export {};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Klass, LexicalNode } from 'lexical';
|
|
2
2
|
export declare const editorNodes: Array<Klass<LexicalNode>>;
|
|
3
|
+
export declare const baseEditorTransformers: import('@lexical/markdown').Transformer[];
|
|
3
4
|
export declare const editorTransformers: import('@lexical/markdown').Transformer[];
|
|
4
5
|
export declare const editorTheme: import('lexical').EditorThemeClasses;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { LexicalEditor } from 'lexical';
|
|
2
|
+
import { BlockType } from './resolve-block-type';
|
|
3
|
+
interface FloatingToolbarButtonsProps {
|
|
4
|
+
editor: LexicalEditor;
|
|
5
|
+
blockType: BlockType;
|
|
6
|
+
isBold: boolean;
|
|
7
|
+
isItalic: boolean;
|
|
8
|
+
isUnderline: boolean;
|
|
9
|
+
isLink: boolean;
|
|
10
|
+
formatHeading: (headingSize: "h1" | "h2" | "h3") => void;
|
|
11
|
+
formatList: (type: "bullet" | "number" | "check") => void;
|
|
12
|
+
formatCodeBlock: () => void;
|
|
13
|
+
insertLink: () => void;
|
|
14
|
+
}
|
|
15
|
+
export declare function FloatingToolbarButtons(props: FloatingToolbarButtonsProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
interface LinkEditorContentProps {
|
|
3
|
+
isActive: boolean;
|
|
4
|
+
isLinkEditMode: boolean;
|
|
5
|
+
editedLinkUrl: string;
|
|
6
|
+
editedLinkUrlIsValid: boolean;
|
|
7
|
+
linkUrl: string;
|
|
8
|
+
href: string;
|
|
9
|
+
inputRef: React.RefObject<HTMLInputElement | null>;
|
|
10
|
+
onEditedLinkUrlChange: (url: string) => void;
|
|
11
|
+
onInputKeyDown: (event: React.KeyboardEvent<HTMLInputElement>) => void;
|
|
12
|
+
onClose: () => void;
|
|
13
|
+
onSubmit: () => void;
|
|
14
|
+
onEdit: () => void;
|
|
15
|
+
onRemove: () => void;
|
|
16
|
+
}
|
|
17
|
+
export declare function LinkEditorContent(props: LinkEditorContentProps): import("react/jsx-runtime").JSX.Element | null;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function shouldCancelLinkEdit(isLinkEditMode: boolean, isLink: boolean, linkUrl: string): boolean;
|
package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/utils/setFloatingElemPos.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function setFloatingElemPos(targetRect: DOMRect | null, floatingElem: HTMLElement, anchorElem: HTMLElement, verticalGap?: number, horizontalOffset?: number): void;
|
|
1
|
+
export declare function setFloatingElemPos(targetRect: DOMRect | null, floatingElem: HTMLElement, anchorElem: HTMLElement, verticalGap?: number, horizontalOffset?: number, placement?: "above" | "legacy"): void;
|
|
@@ -3,6 +3,7 @@ import { TextNode } from 'lexical';
|
|
|
3
3
|
export declare const TABLE: ElementTransformer;
|
|
4
4
|
export declare const UNDERLINE_INS_TAG: TextMatchTransformer;
|
|
5
5
|
export declare const UNDERLINE_U_TAG: TextMatchTransformer;
|
|
6
|
+
export declare const LINK: TextMatchTransformer;
|
|
6
7
|
export declare const BARE_URL: TextMatchTransformer;
|
|
7
8
|
export declare const TRANSFORMERS_EXTENDED: (Readonly<{
|
|
8
9
|
dependencies: Array<import('lexical').Klass<import('lexical').LexicalNode>>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Icon } from '@chakra-ui/react';
|
|
2
2
|
import { ComponentProps } from 'react';
|
|
3
|
-
export type SessionCompletionStatus = "in_progress" | "awaiting_input" | "completed" | "failed" | "cancelled" | "disconnected";
|
|
3
|
+
export type SessionCompletionStatus = "in_progress" | "awaiting_input" | "queued" | "completed" | "failed" | "cancelled" | "disconnected";
|
|
4
4
|
export declare const resolveSessionIndicatorIcon: (status: SessionCompletionStatus | undefined) => import('react').ForwardRefExoticComponent<Omit<import('lucide-react').LucideProps, "ref"> & import('react').RefAttributes<SVGSVGElement>>;
|
|
5
|
-
export declare const resolveSessionIndicatorColor: (status: SessionCompletionStatus | undefined) => "fg.muted" | "fg.error" | "fg.warning" | "fg.success";
|
|
5
|
+
export declare const resolveSessionIndicatorColor: (status: SessionCompletionStatus | undefined) => "fg.muted" | "fg.error" | "fg.warning" | "fg.success" | "fg.info";
|
|
6
6
|
interface SessionIndicatorProps {
|
|
7
7
|
status?: SessionCompletionStatus;
|
|
8
8
|
boxSize?: ComponentProps<typeof Icon>["boxSize"];
|
|
@@ -14,9 +14,15 @@ export interface SidebarProps {
|
|
|
14
14
|
onNavigate?: (event: TreeListNavigateEvent) => void;
|
|
15
15
|
closable?: boolean;
|
|
16
16
|
onOpenChange?: (open: boolean) => void;
|
|
17
|
-
/** Allow
|
|
17
|
+
/** Allow split layouts to resize the sidebar. Defaults to `true`. */
|
|
18
18
|
resizable?: boolean;
|
|
19
19
|
defaultWidth?: number;
|
|
20
20
|
minWidth?: number;
|
|
21
21
|
maxWidth?: number;
|
|
22
|
+
/**
|
|
23
|
+
* When enabled, the scroll content is virtualized — only nodes near the viewport
|
|
24
|
+
* are mounted. Use for sidebars that may contain hundreds of entries. Requires
|
|
25
|
+
* sections with flat nodes (no expandable children).
|
|
26
|
+
*/
|
|
27
|
+
virtualize?: boolean;
|
|
22
28
|
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { BoxProps } from '@chakra-ui/react';
|
|
2
|
+
export type SimpleCardProps = BoxProps;
|
|
3
|
+
export declare const SimpleCard: (props: SimpleCardProps) => import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
export type SimpleCardBodyProps = BoxProps;
|
|
5
|
+
export declare const SimpleCardBody: (props: SimpleCardBodyProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { StackProps } from '@chakra-ui/react';
|
|
2
|
-
import {
|
|
2
|
+
import { RefObject } from 'react';
|
|
3
|
+
import { TreeListLinkComponent, TreeListNavigateEvent, TreeListNode, TreeListSection } from './tree-list.types';
|
|
3
4
|
type TreeListRowVariant = "compact" | "tree";
|
|
4
5
|
interface TreeListProps {
|
|
5
6
|
sections: TreeListSection[];
|
|
@@ -13,6 +14,32 @@ interface TreeListProps {
|
|
|
13
14
|
onNavigate?: (event: TreeListNavigateEvent) => void;
|
|
14
15
|
onToggleSection?: (sectionId: string) => void;
|
|
15
16
|
onToggleNode?: (nodeId: string) => void;
|
|
17
|
+
/**
|
|
18
|
+
* When set, the tree's rows are virtualized via @tanstack/react-virtual.
|
|
19
|
+
* Requires `scrollRef` to point at the ancestor scroll viewport.
|
|
20
|
+
*/
|
|
21
|
+
virtualize?: boolean;
|
|
22
|
+
scrollRef?: RefObject<HTMLDivElement | null>;
|
|
16
23
|
}
|
|
24
|
+
export type VirtualRow = {
|
|
25
|
+
kind: "section-header";
|
|
26
|
+
key: string;
|
|
27
|
+
sectionId: string;
|
|
28
|
+
section: TreeListSection;
|
|
29
|
+
collapsible: boolean;
|
|
30
|
+
expanded: boolean;
|
|
31
|
+
} | {
|
|
32
|
+
kind: "node";
|
|
33
|
+
key: string;
|
|
34
|
+
sectionId: string;
|
|
35
|
+
node: TreeListNode;
|
|
36
|
+
level: number;
|
|
37
|
+
} | {
|
|
38
|
+
kind: "section-empty";
|
|
39
|
+
key: string;
|
|
40
|
+
sectionId: string;
|
|
41
|
+
emptyState: TreeListSection["emptyState"];
|
|
42
|
+
};
|
|
43
|
+
export declare const buildVirtualRows: (sections: TreeListSection[], expandedSectionIds: string[], expandedNodeIds: string[]) => VirtualRow[];
|
|
17
44
|
export declare const TreeList: (props: TreeListProps) => import("react/jsx-runtime").JSX.Element;
|
|
18
45
|
export {};
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { ChakraProvider } from '@chakra-ui/react';
|
|
2
|
+
export type { ActivityActor, ActivityAvatarProps, ActivityCommentProps, ActivityComposerProps, ActivityEventProps, ActivityFeedProps, ActivityHeaderProps, ActivityReplyProps, ActivityRootProps, ActivityTimelineProps, } from './components/activity';
|
|
3
|
+
export { Activity, ActivityAvatar, ActivityComment, ActivityComposer, ActivityEvent, ActivityFeed, ActivityHeader, ActivityReply, ActivityRoot, ActivityTimeline, } from './components/activity';
|
|
2
4
|
export type { AlertProps } from './components/alert';
|
|
3
5
|
export { AlertMessage } from './components/alert';
|
|
4
6
|
export { AttachedPanel } from './components/attached-panel';
|
|
@@ -11,17 +13,17 @@ export { Checkbox } from './components/checkbox';
|
|
|
11
13
|
export { CodeDiffEditor, CodeEditor } from './components/code-editor';
|
|
12
14
|
export { ContentPlaceholder, Label as ContentPlaceholderLabel, } from './components/content-placeholder';
|
|
13
15
|
export { DeleteConfirmationModal } from './components/delete-confirmation-modal';
|
|
14
|
-
export {
|
|
15
|
-
export
|
|
16
|
-
export {
|
|
16
|
+
export type { ChangedFilesViewMode, Diff, DiffViewerProps, DiffViewMode, FileIconInfo } from './components/diff-viewer';
|
|
17
|
+
export { DiffDrawer, DiffViewer, useDiffViewerStore } from './components/diff-viewer';
|
|
18
|
+
export { DiffBubble } from './components/diff-viewer/diff-bubble';
|
|
17
19
|
export type { EmptyStateProps } from './components/empty-state';
|
|
18
20
|
export { EmptyState } from './components/empty-state';
|
|
19
21
|
export { ErrorBoundary } from './components/error-boundary';
|
|
20
|
-
export type { FolderPickerDialogEntry, FolderPickerDialogProps, } from './components/folder-picker-dialog';
|
|
21
|
-
export { FolderPickerDialog } from './components/folder-picker-dialog';
|
|
22
22
|
export type { HeaderProps, HeaderVariant } from './components/header';
|
|
23
23
|
export { Header } from './components/header';
|
|
24
24
|
export { HorizontalMenuStack } from './components/horizontal-menu-stack';
|
|
25
|
+
export type { IntegrationCardProps } from './components/integration-card';
|
|
26
|
+
export { IntegrationCard } from './components/integration-card';
|
|
25
27
|
export type { ItemSectionProps } from './components/item-section';
|
|
26
28
|
export { ItemSection } from './components/item-section';
|
|
27
29
|
export { PanelLayout, PanelSectionLayout } from './components/layout';
|
|
@@ -29,10 +31,17 @@ export { ListRow } from './components/list-row/list-row';
|
|
|
29
31
|
export type { ListRowAction, ListRowActionContext, ListRowActionMenuItem, ListRowItem, ListRowNavigationIntent, } from './components/list-row/list-row.types';
|
|
30
32
|
export type { OpenSourceNotice, OpenSourceNoticesScreenProps, } from './components/open-source-notices-screen';
|
|
31
33
|
export { OpenSourceNoticesScreen } from './components/open-source-notices-screen';
|
|
32
|
-
export type {
|
|
33
|
-
export {
|
|
34
|
+
export type { FilterPaletteEntriesOptions, PaletteEntry, PaletteEscapeContext, PaletteMode, PaletteProps, PaletteSearchEntry, PaletteState, PaletteStateValue, } from './components/palette';
|
|
35
|
+
export { DEFAULT_PALETTE_ASSET_LIMIT, filterPaletteEntries, Palette, } from './components/palette';
|
|
36
|
+
export type { PaletteShortcutBinding } from './components/palette-shortcut';
|
|
37
|
+
export { PaletteShortcut } from './components/palette-shortcut';
|
|
38
|
+
export type { ParamEditorProps } from './components/param-editor';
|
|
39
|
+
export { ParamEditor } from './components/param-editor';
|
|
34
40
|
export type { RadioProps } from './components/radio';
|
|
35
41
|
export { Radio, RadioGroup } from './components/radio';
|
|
42
|
+
export type { RepoPickerDialogEntry, RepoPickerDialogProps } from './components/repo-picker-dialog';
|
|
43
|
+
export { RepoPickerDialog } from './components/repo-picker-dialog';
|
|
44
|
+
export { ResizableSplitLayout } from './components/resizable-split-layout';
|
|
36
45
|
export type { ResourceContextAction } from './components/resource-context-menu';
|
|
37
46
|
export { ResourceContextMenu } from './components/resource-context-menu';
|
|
38
47
|
export { ScrollArea } from './components/scroll-area';
|
|
@@ -44,6 +53,8 @@ export { Sidebar } from './components/sidebar/sidebar';
|
|
|
44
53
|
export { useSidebarStore } from './components/sidebar/sidebar.store';
|
|
45
54
|
export type { SidebarProps } from './components/sidebar/sidebar.types';
|
|
46
55
|
export { SidebarProjectMenu } from './components/sidebar/sidebar-project-menu';
|
|
56
|
+
export type { SimpleCardBodyProps, SimpleCardProps } from './components/simple-card';
|
|
57
|
+
export { SimpleCard, SimpleCardBody } from './components/simple-card';
|
|
47
58
|
export type { SwitchProps } from './components/switch';
|
|
48
59
|
export { Switch } from './components/switch';
|
|
49
60
|
export { DisplayMenu } from './components/tickets/display-menu';
|
|
@@ -63,7 +74,8 @@ export { TreeList } from './components/tree-list/tree-list';
|
|
|
63
74
|
export type { TreeListAction, TreeListActionContext, TreeListActionMenuItem, TreeListLinkComponent, TreeListNavigateEvent, TreeListNavigationIntent, TreeListNode, TreeListSection, } from './components/tree-list/tree-list.types';
|
|
64
75
|
export type { WorkspaceBadgeProps } from './components/workspace-badge';
|
|
65
76
|
export { WorkspaceBadge } from './components/workspace-badge';
|
|
66
|
-
export {
|
|
77
|
+
export type { MonacoThemeData, VsCodeColorTheme } from './theme';
|
|
78
|
+
export { createMonacoThemeFromVsCodeTheme, createThemePreferenceFromVsCodeTheme, customThemePreferences, monokaiThemePreference, psTheme, } from './theme';
|
|
67
79
|
export { applyThemePreference, defaultThemePreferences, getThemePreferenceClassName, getThemePreferenceClassNames, getThemePreferenceMode, isThemePreference, type ThemePreference, type ThemePreferenceMode, type ThemePreferenceOption, type ThemePreferenceTokens, } from './utils/apply-theme-preference';
|
|
68
80
|
export { getFileTypeIcon } from './utils/get-file-type-icon';
|
|
69
81
|
export { getInitialThemePreference, ThemePreferenceProvider, useThemePreference, } from './utils/theme-preference';
|