@pstdio/ui 0.2.4 → 0.3.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/chat-ui.js +705 -690
- package/dist/chat-ui.js.map +1 -1
- package/dist/components/chat-ui/agent-types.d.ts +11 -1
- package/dist/components/chat-ui/components/ai-message.d.ts +3 -10
- package/dist/components/chat-ui/components/chat-panel-alerts.stories.d.ts +9 -0
- package/dist/components/chat-ui/components/chat-panel.d.ts +2 -0
- package/dist/components/chat-ui/components/message-parts-renderer.stories.d.ts +1 -0
- package/dist/components/chat-ui/components/workspace-hub.d.ts +3 -0
- package/dist/components/chat-ui/index.d.ts +1 -0
- package/dist/components/menu-item.d.ts +0 -1
- package/dist/components/searchable-menu.d.ts +32 -0
- package/dist/components/searchable-menu.stories.d.ts +6 -0
- package/dist/components/searchable-menu.test.d.ts +1 -0
- package/dist/components/sidebar-tree/searchable-action-menu.d.ts +6 -0
- package/dist/components/sidebar-tree/sidebar-tree-searchable-action-menu.stories.d.ts +6 -0
- package/dist/components/sidebar-tree/sidebar-tree.types.d.ts +2 -0
- package/dist/components/tickets/ticket-card.stories.d.ts +1 -0
- package/dist/empty-state-yGspgiPl.js +185 -0
- package/dist/empty-state-yGspgiPl.js.map +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.js +1497 -1417
- package/dist/index.js.map +1 -1
- package/dist/theme/global.d.ts +10 -0
- package/dist/{theme-C7CIuIPZ.js → theme-BFV2Q048.js} +18 -8
- package/dist/theme-BFV2Q048.js.map +1 -0
- package/dist/theme.js +1 -1
- package/package.json +7 -7
- package/dist/empty-state-DHSKuwia.js +0 -160
- package/dist/empty-state-DHSKuwia.js.map +0 -1
- package/dist/theme-C7CIuIPZ.js.map +0 -1
|
@@ -61,7 +61,13 @@ export type TokenUsagePart = {
|
|
|
61
61
|
cacheReadTokens?: number;
|
|
62
62
|
cacheWriteTokens?: number;
|
|
63
63
|
};
|
|
64
|
-
export type
|
|
64
|
+
export type AlertPart = {
|
|
65
|
+
type: "alert";
|
|
66
|
+
status: "info" | "warning" | "error" | "success" | "loading";
|
|
67
|
+
title: string;
|
|
68
|
+
message?: string;
|
|
69
|
+
};
|
|
70
|
+
export type SessionMessagePart = TextPart | ReasoningPart | ToolPart | StepStartPart | StepFinishPart | PatchPart | FilePart | LoadingPart | ErrorPart | TokenUsagePart | AlertPart;
|
|
65
71
|
export type SessionMessage = {
|
|
66
72
|
id: string;
|
|
67
73
|
role: SessionMessageRole;
|
|
@@ -155,6 +161,10 @@ export type EventStore = {
|
|
|
155
161
|
getHistory(): JsonPatch[];
|
|
156
162
|
subscribe(): AsyncIterable<JsonPatch>;
|
|
157
163
|
historyPlusStream(): AsyncIterable<JsonPatch>;
|
|
164
|
+
snapshotAndSubscribe(): {
|
|
165
|
+
history: JsonPatch[];
|
|
166
|
+
stream: AsyncIterable<JsonPatch>;
|
|
167
|
+
};
|
|
158
168
|
};
|
|
159
169
|
export type SpawnedProcess = {
|
|
160
170
|
sessionId: string;
|
|
@@ -10,6 +10,8 @@ declare const recipe: import('@chakra-ui/react').SlotRecipeDefinition<"content"
|
|
|
10
10
|
border: "1px solid";
|
|
11
11
|
borderColor: "border.muted";
|
|
12
12
|
bg: "bg.subtle";
|
|
13
|
+
px: "xs";
|
|
14
|
+
py: "xs";
|
|
13
15
|
width: "full";
|
|
14
16
|
borderBottomRightRadius: number;
|
|
15
17
|
};
|
|
@@ -40,24 +42,15 @@ declare const recipe: import('@chakra-ui/react').SlotRecipeDefinition<"content"
|
|
|
40
42
|
gap: "xs";
|
|
41
43
|
};
|
|
42
44
|
content: {
|
|
43
|
-
px: "xs";
|
|
44
|
-
py: "xs";
|
|
45
45
|
textStyle: "xs";
|
|
46
46
|
};
|
|
47
47
|
};
|
|
48
|
-
md: {
|
|
49
|
-
content: {
|
|
50
|
-
px: "xs";
|
|
51
|
-
py: "xs";
|
|
52
|
-
};
|
|
53
|
-
};
|
|
48
|
+
md: {};
|
|
54
49
|
lg: {
|
|
55
50
|
root: {
|
|
56
51
|
gap: "md";
|
|
57
52
|
};
|
|
58
53
|
content: {
|
|
59
|
-
px: "sm";
|
|
60
|
-
py: "xs";
|
|
61
54
|
textStyle: "md";
|
|
62
55
|
};
|
|
63
56
|
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { ChatPanel } from './chat-panel';
|
|
3
|
+
declare const meta: Meta<typeof ChatPanel>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof ChatPanel>;
|
|
6
|
+
export declare const AlertVariants: Story;
|
|
7
|
+
export declare const WorkspaceInitializing: Story;
|
|
8
|
+
export declare const WorkspaceReady: Story;
|
|
9
|
+
export declare const WorkspaceSetupFailed: Story;
|
|
@@ -18,6 +18,8 @@ interface ChatPanelProps {
|
|
|
18
18
|
attachmentList?: ReactNode;
|
|
19
19
|
approvalPrompt?: ReactNode;
|
|
20
20
|
workspaceHub?: ReactNode;
|
|
21
|
+
workspaceInitializing?: boolean;
|
|
22
|
+
inputDisabled?: boolean;
|
|
21
23
|
}
|
|
22
24
|
export declare const ChatPanel: (props: ChatPanelProps) => import("react/jsx-runtime").JSX.Element;
|
|
23
25
|
export {};
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
+
type WorkspaceHubStatus = "ready" | "loading" | "error";
|
|
2
3
|
interface ChatWorkspaceHubProps {
|
|
3
4
|
changesLabel: string;
|
|
4
5
|
additions: number;
|
|
5
6
|
deletions: number;
|
|
6
7
|
action?: ReactNode;
|
|
8
|
+
status?: WorkspaceHubStatus;
|
|
9
|
+
statusLabel?: string;
|
|
7
10
|
}
|
|
8
11
|
export declare const ChatWorkspaceHub: (props: ChatWorkspaceHubProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
12
|
export {};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export type { AlertPart } from '../chat-ui/agent-types';
|
|
1
2
|
export type { ConversationContentProps, ConversationRootProps, ConversationScrollButtonProps, } from './components/ai-conversation';
|
|
2
3
|
export { ChatPrimitives } from './components/ai-conversation';
|
|
3
4
|
export type { MessageContentProps, MessageRootProps } from './components/ai-message';
|
|
@@ -17,7 +17,6 @@ export interface MenuItemProps {
|
|
|
17
17
|
secondaryLabel?: string;
|
|
18
18
|
tooltipLabel?: ReactNode;
|
|
19
19
|
leftIcon?: MenuItemIcon | null;
|
|
20
|
-
leftSlot?: ReactNode;
|
|
21
20
|
rightIcon?: MenuItemIcon | null;
|
|
22
21
|
leftIconColor?: MenuItemIconColor;
|
|
23
22
|
rightIconColor?: MenuItemIconColor;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Menu } from '@chakra-ui/react';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
type MenuRootProps = React.ComponentProps<typeof Menu.Root>;
|
|
4
|
+
type MenuContentProps = React.ComponentProps<typeof Menu.Content>;
|
|
5
|
+
export interface SearchableMenuItem {
|
|
6
|
+
id: string;
|
|
7
|
+
label: string;
|
|
8
|
+
searchText?: string;
|
|
9
|
+
}
|
|
10
|
+
interface SearchableMenuProps<T extends SearchableMenuItem> {
|
|
11
|
+
trigger: ReactNode;
|
|
12
|
+
items: T[];
|
|
13
|
+
searchPlaceholder: string;
|
|
14
|
+
emptyState: ReactNode;
|
|
15
|
+
renderItem: (item: T) => ReactNode;
|
|
16
|
+
filterItems?: (items: T[], query: string) => T[];
|
|
17
|
+
header?: ReactNode;
|
|
18
|
+
width?: MenuContentProps["width"];
|
|
19
|
+
maxListHeight?: string;
|
|
20
|
+
showSearch?: boolean;
|
|
21
|
+
closeOnSelect?: MenuRootProps["closeOnSelect"];
|
|
22
|
+
lazyMount?: MenuRootProps["lazyMount"];
|
|
23
|
+
open?: MenuRootProps["open"];
|
|
24
|
+
positioning?: MenuRootProps["positioning"];
|
|
25
|
+
onOpenChange?: MenuRootProps["onOpenChange"];
|
|
26
|
+
onFocusOutside?: MenuRootProps["onFocusOutside"];
|
|
27
|
+
contentTestId?: string;
|
|
28
|
+
portalled?: boolean;
|
|
29
|
+
}
|
|
30
|
+
export declare const filterSearchableMenuItems: <T extends SearchableMenuItem>(items: T[], query: string) => T[];
|
|
31
|
+
export declare const SearchableMenu: <T extends SearchableMenuItem>(props: SearchableMenuProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
32
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { SearchableMenu } from './searchable-menu';
|
|
3
|
+
declare const meta: Meta<typeof SearchableMenu>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof SearchableMenu>;
|
|
6
|
+
export declare const BranchSelector: Story;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -10,6 +10,7 @@ export declare const WithMultipleBadges: Story;
|
|
|
10
10
|
export declare const WithParentAndStatus: Story;
|
|
11
11
|
export declare const WithAllBadgeColors: Story;
|
|
12
12
|
export declare const LongTitle: Story;
|
|
13
|
+
export declare const LongUnbrokenUrlLikeTitle: Story;
|
|
13
14
|
export declare const NoBadges: Story;
|
|
14
15
|
export declare const WithDiffBadge: Story;
|
|
15
16
|
export declare const WithSessionIndicator: Story;
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import { jsx as u, jsxs as k } from "react/jsx-runtime";
|
|
2
|
+
import { c as F } from "react/compiler-runtime";
|
|
3
|
+
import { Alert as D, Span as E, Box as V, EmptyState as L, VStack as $ } from "@chakra-ui/react";
|
|
4
|
+
import * as N from "react";
|
|
5
|
+
import { DiffModeEnum as j, DiffView as R } from "@git-diff-view/react";
|
|
6
|
+
import "@git-diff-view/react/styles/diff-view.css";
|
|
7
|
+
import { generateDiffFile as B } from "@git-diff-view/file";
|
|
8
|
+
const G = N.forwardRef(function(t, c) {
|
|
9
|
+
const e = F(19);
|
|
10
|
+
let n, i, o, r, l, s;
|
|
11
|
+
e[0] !== t ? ({
|
|
12
|
+
title: s,
|
|
13
|
+
children: n,
|
|
14
|
+
icon: o,
|
|
15
|
+
startElement: l,
|
|
16
|
+
endElement: i,
|
|
17
|
+
...r
|
|
18
|
+
} = t, e[0] = t, e[1] = n, e[2] = i, e[3] = o, e[4] = r, e[5] = l, e[6] = s) : (n = e[1], i = e[2], o = e[3], r = e[4], l = e[5], s = e[6]);
|
|
19
|
+
let a;
|
|
20
|
+
e[7] !== o || e[8] !== l ? (a = l || /* @__PURE__ */ u(D.Indicator, { children: o }), e[7] = o, e[8] = l, e[9] = a) : a = e[9];
|
|
21
|
+
let d;
|
|
22
|
+
e[10] !== n || e[11] !== s ? (d = n ? /* @__PURE__ */ k(D.Content, { children: [
|
|
23
|
+
/* @__PURE__ */ u(D.Title, { children: s }),
|
|
24
|
+
/* @__PURE__ */ u(D.Description, { children: n })
|
|
25
|
+
] }) : /* @__PURE__ */ u(D.Title, { flex: "1", children: s }), e[10] = n, e[11] = s, e[12] = d) : d = e[12];
|
|
26
|
+
let f;
|
|
27
|
+
return e[13] !== i || e[14] !== c || e[15] !== r || e[16] !== a || e[17] !== d ? (f = /* @__PURE__ */ k(D.Root, { ref: c, ...r, children: [
|
|
28
|
+
a,
|
|
29
|
+
d,
|
|
30
|
+
i
|
|
31
|
+
] }), e[13] = i, e[14] = c, e[15] = r, e[16] = a, e[17] = d, e[18] = f) : f = e[18], f;
|
|
32
|
+
}), J = (m) => {
|
|
33
|
+
const t = F(20), {
|
|
34
|
+
fileName: c,
|
|
35
|
+
additions: e,
|
|
36
|
+
deletions: n,
|
|
37
|
+
label: i,
|
|
38
|
+
variant: o,
|
|
39
|
+
size: r,
|
|
40
|
+
onClick: l,
|
|
41
|
+
onClickFileLink: s
|
|
42
|
+
} = m, a = o === void 0 ? "outline" : o, f = (r === void 0 ? "default" : r) === "small", x = a === "outline" ? "1px solid" : "none", b = a === "outline" ? f ? "3xs" : "2xs" : "2px", h = f ? "label/S/regular" : void 0, p = l ? "pointer" : "default", g = l ? "bg.muted" : "none";
|
|
43
|
+
let y;
|
|
44
|
+
t[0] !== g ? (y = {
|
|
45
|
+
background: g
|
|
46
|
+
}, t[0] = g, t[1] = y) : y = t[1];
|
|
47
|
+
let S;
|
|
48
|
+
t[2] !== c || t[3] !== s ? (S = c && /* @__PURE__ */ u(E, { display: "inline-block", maxW: "24ch", truncate: !0, mr: "xs", title: c, onClick: (T) => {
|
|
49
|
+
T.stopPropagation(), s?.();
|
|
50
|
+
}, cursor: s ? "pointer" : "default", _hover: {
|
|
51
|
+
textDecoration: s ? "underline" : "none",
|
|
52
|
+
color: s ? "fg.blue-dark" : "fg.muted"
|
|
53
|
+
}, children: c }), t[2] = c, t[3] = s, t[4] = S) : S = t[4];
|
|
54
|
+
const C = `+${e}`;
|
|
55
|
+
let v;
|
|
56
|
+
t[5] !== C ? (v = /* @__PURE__ */ u(E, { color: "fg.success", children: C }), t[5] = C, t[6] = v) : v = t[6];
|
|
57
|
+
const _ = `-${n}`;
|
|
58
|
+
let w;
|
|
59
|
+
t[7] !== _ ? (w = /* @__PURE__ */ u(E, { color: "fg.error", children: _ }), t[7] = _, t[8] = w) : w = t[8];
|
|
60
|
+
let A;
|
|
61
|
+
return t[9] !== i || t[10] !== l || t[11] !== v || t[12] !== w || t[13] !== x || t[14] !== b || t[15] !== h || t[16] !== p || t[17] !== y || t[18] !== S ? (A = /* @__PURE__ */ k(E, { display: "inline-flex", alignItems: "center", gap: "2xs", border: x, borderColor: "border.muted", color: "fg.muted", paddingX: b, paddingY: "1px", borderRadius: "xs", textStyle: h, cursor: p, onClick: l, _hover: y, children: [
|
|
62
|
+
i,
|
|
63
|
+
S,
|
|
64
|
+
v,
|
|
65
|
+
w
|
|
66
|
+
] }), t[9] = i, t[10] = l, t[11] = v, t[12] = w, t[13] = x, t[14] = b, t[15] = h, t[16] = p, t[17] = y, t[18] = S, t[19] = A) : A = t[19], A;
|
|
67
|
+
}, z = "before.txt", W = "after.txt", H = {
|
|
68
|
+
ts: "typescript",
|
|
69
|
+
tsx: "typescript",
|
|
70
|
+
js: "javascript",
|
|
71
|
+
jsx: "javascript",
|
|
72
|
+
json: "json",
|
|
73
|
+
md: "markdown",
|
|
74
|
+
py: "python",
|
|
75
|
+
go: "go",
|
|
76
|
+
rs: "rust",
|
|
77
|
+
css: "css",
|
|
78
|
+
html: "html",
|
|
79
|
+
sh: "shell",
|
|
80
|
+
yml: "yaml",
|
|
81
|
+
yaml: "yaml"
|
|
82
|
+
}, I = (m) => (m.split(/[\\/]/).pop() ?? m).split(".").pop()?.toLowerCase(), M = ({
|
|
83
|
+
language: m,
|
|
84
|
+
oldPath: t,
|
|
85
|
+
newPath: c
|
|
86
|
+
}) => {
|
|
87
|
+
if (m)
|
|
88
|
+
return m;
|
|
89
|
+
const e = I(c ?? t ?? "");
|
|
90
|
+
return e ? H[e] ?? "plaintext" : "plaintext";
|
|
91
|
+
}, K = ({
|
|
92
|
+
original: m,
|
|
93
|
+
modified: t,
|
|
94
|
+
language: c,
|
|
95
|
+
oldPath: e,
|
|
96
|
+
newPath: n
|
|
97
|
+
}) => {
|
|
98
|
+
const i = e ?? n ?? z, o = n ?? e ?? W, r = M({
|
|
99
|
+
language: c,
|
|
100
|
+
oldPath: e,
|
|
101
|
+
newPath: n
|
|
102
|
+
}), l = B(i, m, o, t, r, r, {
|
|
103
|
+
context: 3
|
|
104
|
+
}, "pstdio-diff-view");
|
|
105
|
+
return {
|
|
106
|
+
oldFile: {
|
|
107
|
+
fileName: i,
|
|
108
|
+
fileLang: r,
|
|
109
|
+
content: m
|
|
110
|
+
},
|
|
111
|
+
newFile: {
|
|
112
|
+
fileName: o,
|
|
113
|
+
fileLang: r,
|
|
114
|
+
content: t
|
|
115
|
+
},
|
|
116
|
+
hunks: l._diffList
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
function Q(m) {
|
|
120
|
+
const t = F(13), {
|
|
121
|
+
original: c,
|
|
122
|
+
modified: e,
|
|
123
|
+
language: n,
|
|
124
|
+
oldPath: i,
|
|
125
|
+
newPath: o,
|
|
126
|
+
sideBySide: r,
|
|
127
|
+
disableScroll: l
|
|
128
|
+
} = m, s = r === void 0 ? !1 : r, a = l === void 0 ? !0 : l;
|
|
129
|
+
let d;
|
|
130
|
+
t[0] !== n || t[1] !== e || t[2] !== o || t[3] !== i || t[4] !== c ? (d = K({
|
|
131
|
+
original: c,
|
|
132
|
+
modified: e,
|
|
133
|
+
language: n,
|
|
134
|
+
oldPath: i,
|
|
135
|
+
newPath: o
|
|
136
|
+
}), t[0] = n, t[1] = e, t[2] = o, t[3] = i, t[4] = c, t[5] = d) : d = t[5];
|
|
137
|
+
const f = d, x = s ? j.Split : j.Unified, b = a ? "hidden" : "auto";
|
|
138
|
+
let h;
|
|
139
|
+
t[6] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (h = {
|
|
140
|
+
"& .gdv-root": {
|
|
141
|
+
border: "none",
|
|
142
|
+
borderRadius: "0"
|
|
143
|
+
},
|
|
144
|
+
"& .gdv-line-number": {
|
|
145
|
+
fontSize: "11px"
|
|
146
|
+
}
|
|
147
|
+
}, t[6] = h) : h = t[6];
|
|
148
|
+
let p;
|
|
149
|
+
t[7] !== f || t[8] !== x ? (p = /* @__PURE__ */ u(R, { data: f, diffViewMode: x, diffViewTheme: "dark", diffViewHighlight: !0, diffViewWrap: !0, diffViewFontSize: 11 }), t[7] = f, t[8] = x, t[9] = p) : p = t[9];
|
|
150
|
+
let g;
|
|
151
|
+
return t[10] !== b || t[11] !== p ? (g = /* @__PURE__ */ u(V, { height: "100%", width: "100%", overflow: b, css: h, children: p }), t[10] = b, t[11] = p, t[12] = g) : g = t[12], g;
|
|
152
|
+
}
|
|
153
|
+
const Z = N.forwardRef(function(t, c) {
|
|
154
|
+
const e = F(19);
|
|
155
|
+
let n, i, o, r, l;
|
|
156
|
+
e[0] !== t ? ({
|
|
157
|
+
title: l,
|
|
158
|
+
description: i,
|
|
159
|
+
icon: o,
|
|
160
|
+
children: n,
|
|
161
|
+
...r
|
|
162
|
+
} = t, e[0] = t, e[1] = n, e[2] = i, e[3] = o, e[4] = r, e[5] = l) : (n = e[1], i = e[2], o = e[3], r = e[4], l = e[5]);
|
|
163
|
+
let s;
|
|
164
|
+
e[6] !== o ? (s = o && /* @__PURE__ */ u(L.Indicator, { children: o }), e[6] = o, e[7] = s) : s = e[7];
|
|
165
|
+
let a;
|
|
166
|
+
e[8] !== i || e[9] !== l ? (a = i ? /* @__PURE__ */ k($, { textAlign: "center", children: [
|
|
167
|
+
/* @__PURE__ */ u(L.Title, { fontWeight: "normal", children: l }),
|
|
168
|
+
/* @__PURE__ */ u(L.Description, { children: i })
|
|
169
|
+
] }) : /* @__PURE__ */ u(L.Title, { fontWeight: "normal", children: l }), e[8] = i, e[9] = l, e[10] = a) : a = e[10];
|
|
170
|
+
let d;
|
|
171
|
+
e[11] !== n || e[12] !== s || e[13] !== a ? (d = /* @__PURE__ */ k(L.Content, { children: [
|
|
172
|
+
s,
|
|
173
|
+
a,
|
|
174
|
+
n
|
|
175
|
+
] }), e[11] = n, e[12] = s, e[13] = a, e[14] = d) : d = e[14];
|
|
176
|
+
let f;
|
|
177
|
+
return e[15] !== c || e[16] !== r || e[17] !== d ? (f = /* @__PURE__ */ u(L.Root, { ref: c, ...r, children: d }), e[15] = c, e[16] = r, e[17] = d, e[18] = f) : f = e[18], f;
|
|
178
|
+
});
|
|
179
|
+
export {
|
|
180
|
+
G as A,
|
|
181
|
+
Q as D,
|
|
182
|
+
Z as E,
|
|
183
|
+
J as a
|
|
184
|
+
};
|
|
185
|
+
//# sourceMappingURL=empty-state-yGspgiPl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"empty-state-yGspgiPl.js","sources":["../src/components/alert.tsx","../src/components/diff-bubble.tsx","../src/components/diff-view-adapter.ts","../src/components/diff-editor.tsx","../src/components/empty-state.tsx"],"sourcesContent":["import { Alert as ChakraAlert } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface AlertProps extends Omit<ChakraAlert.RootProps, \"title\"> {\n startElement?: React.ReactNode;\n endElement?: React.ReactNode;\n title?: React.ReactNode;\n icon?: React.ReactElement;\n}\n\nexport const AlertMessage = React.forwardRef<HTMLDivElement, AlertProps>(function Alert(props, ref) {\n const { title, children, icon, startElement, endElement, ...rest } = props;\n return (\n <ChakraAlert.Root ref={ref} {...rest}>\n {startElement || <ChakraAlert.Indicator>{icon}</ChakraAlert.Indicator>}\n {children ? (\n <ChakraAlert.Content>\n <ChakraAlert.Title>{title}</ChakraAlert.Title>\n <ChakraAlert.Description>{children}</ChakraAlert.Description>\n </ChakraAlert.Content>\n ) : (\n <ChakraAlert.Title flex=\"1\">{title}</ChakraAlert.Title>\n )}\n {endElement}\n </ChakraAlert.Root>\n );\n});\n","import { Span } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { ComponentProps, MouseEvent } from \"react\";\n\ninterface DiffBubbleProps extends Omit<ComponentProps<typeof Span>, \"onClick\"> {\n fileName?: string;\n additions: number;\n deletions: number;\n label?: React.ReactNode;\n variant?: \"outline\" | \"ghost\";\n size?: \"default\" | \"small\";\n onClick?: (event: MouseEvent<HTMLSpanElement>) => void;\n onClickFileLink?: () => void;\n}\n\nexport const DiffBubble = (props: DiffBubbleProps) => {\n const {\n fileName,\n additions,\n deletions,\n label,\n variant = \"outline\",\n size = \"default\",\n onClick,\n onClickFileLink,\n } = props;\n\n const isSmall = size === \"small\";\n\n return (\n <Span\n display=\"inline-flex\"\n alignItems=\"center\"\n gap={\"2xs\"}\n border={variant === \"outline\" ? \"1px solid\" : \"none\"}\n borderColor=\"border.muted\"\n color=\"fg.muted\"\n paddingX={variant === \"outline\" ? (isSmall ? \"3xs\" : \"2xs\") : \"2px\"}\n paddingY=\"1px\"\n borderRadius=\"xs\"\n textStyle={isSmall ? \"label/S/regular\" : undefined}\n cursor={onClick ? \"pointer\" : \"default\"}\n onClick={onClick}\n _hover={{\n background: onClick ? \"bg.muted\" : \"none\",\n }}\n >\n {label}\n {fileName && (\n <Span\n display=\"inline-block\"\n maxW=\"24ch\"\n truncate\n mr=\"xs\"\n title={fileName}\n onClick={(e) => {\n e.stopPropagation();\n onClickFileLink?.();\n }}\n cursor={onClickFileLink ? \"pointer\" : \"default\"}\n _hover={{\n textDecoration: onClickFileLink ? \"underline\" : \"none\",\n color: onClickFileLink ? \"fg.blue-dark\" : \"fg.muted\",\n }}\n >\n {fileName}\n </Span>\n )}\n <Span color=\"fg.success\">{`+${additions}`}</Span>\n <Span color=\"fg.error\">{`-${deletions}`}</Span>\n </Span>\n );\n};\n","import { generateDiffFile } from \"@git-diff-view/file\";\nimport type { DiffViewProps } from \"@git-diff-view/react\";\n\nconst FALLBACK_OLD_PATH = \"before.txt\";\nconst FALLBACK_NEW_PATH = \"after.txt\";\n\ninterface ResolveDiffLanguageInput {\n language?: string;\n oldPath?: string;\n newPath?: string;\n}\n\ninterface BuildDiffViewDataInput extends ResolveDiffLanguageInput {\n original: string;\n modified: string;\n}\n\ntype DiffViewData = NonNullable<DiffViewProps<unknown>[\"data\"]>;\n\nconst extToLanguage: Record<string, string> = {\n ts: \"typescript\",\n tsx: \"typescript\",\n js: \"javascript\",\n jsx: \"javascript\",\n json: \"json\",\n md: \"markdown\",\n py: \"python\",\n go: \"go\",\n rs: \"rust\",\n css: \"css\",\n html: \"html\",\n sh: \"shell\",\n yml: \"yaml\",\n yaml: \"yaml\",\n};\n\nconst getExtension = (path: string) => {\n const fileName = path.split(/[\\\\/]/).pop() ?? path;\n const ext = fileName.split(\".\").pop();\n\n return ext?.toLowerCase();\n};\n\nexport const resolveDiffLanguage = ({ language, oldPath, newPath }: ResolveDiffLanguageInput) => {\n if (language) {\n return language;\n }\n\n const extension = getExtension(newPath ?? oldPath ?? \"\");\n\n if (!extension) {\n return \"plaintext\";\n }\n\n return extToLanguage[extension] ?? \"plaintext\";\n};\n\nexport const buildDiffViewData = ({\n original,\n modified,\n language,\n oldPath,\n newPath,\n}: BuildDiffViewDataInput): DiffViewData => {\n const oldFileName = oldPath ?? newPath ?? FALLBACK_OLD_PATH;\n const newFileName = newPath ?? oldPath ?? FALLBACK_NEW_PATH;\n const fileLanguage = resolveDiffLanguage({ language, oldPath, newPath });\n\n const diffFile = generateDiffFile(\n oldFileName,\n original,\n newFileName,\n modified,\n fileLanguage,\n fileLanguage,\n { context: 3 },\n \"pstdio-diff-view\",\n );\n\n return {\n oldFile: {\n fileName: oldFileName,\n fileLang: fileLanguage,\n content: original,\n },\n newFile: {\n fileName: newFileName,\n fileLang: fileLanguage,\n content: modified,\n },\n hunks: diffFile._diffList,\n };\n};\n","import { DiffModeEnum, DiffView } from \"@git-diff-view/react\";\nimport \"@git-diff-view/react/styles/diff-view.css\";\nimport { Box } from \"@chakra-ui/react\";\nimport { buildDiffViewData } from \"./diff-view-adapter\";\n\ninterface DiffEditorProps {\n original: string;\n modified: string;\n language?: string;\n oldPath?: string;\n newPath?: string;\n sideBySide?: boolean;\n disableScroll?: boolean;\n}\n\nexport function DiffEditor(props: DiffEditorProps) {\n const { original, modified, language, oldPath, newPath, sideBySide = false, disableScroll = true } = props;\n\n const data = buildDiffViewData({\n original,\n modified,\n language,\n oldPath,\n newPath,\n });\n\n const mode = sideBySide ? DiffModeEnum.Split : DiffModeEnum.Unified;\n\n return (\n <Box\n height=\"100%\"\n width=\"100%\"\n overflow={disableScroll ? \"hidden\" : \"auto\"}\n css={{\n \"& .gdv-root\": {\n border: \"none\",\n borderRadius: \"0\",\n },\n \"& .gdv-line-number\": {\n fontSize: \"11px\",\n },\n }}\n >\n <DiffView\n data={data}\n diffViewMode={mode}\n diffViewTheme=\"dark\"\n diffViewHighlight={true}\n diffViewWrap={true}\n diffViewFontSize={11}\n />\n </Box>\n );\n}\n","import { EmptyState as ChakraEmptyState, VStack } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface EmptyStateProps extends ChakraEmptyState.RootProps {\n title: string;\n description?: string;\n icon?: React.ReactNode;\n}\n\nexport const EmptyState = React.forwardRef<HTMLDivElement, EmptyStateProps>(function EmptyState(props, ref) {\n const { title, description, icon, children, ...rest } = props;\n return (\n <ChakraEmptyState.Root ref={ref} {...rest}>\n <ChakraEmptyState.Content>\n {icon && <ChakraEmptyState.Indicator>{icon}</ChakraEmptyState.Indicator>}\n {description ? (\n <VStack textAlign=\"center\">\n <ChakraEmptyState.Title fontWeight=\"normal\">{title}</ChakraEmptyState.Title>\n <ChakraEmptyState.Description>{description}</ChakraEmptyState.Description>\n </VStack>\n ) : (\n <ChakraEmptyState.Title fontWeight=\"normal\">{title}</ChakraEmptyState.Title>\n )}\n {children}\n </ChakraEmptyState.Content>\n </ChakraEmptyState.Root>\n );\n});\n"],"names":["AlertMessage","React","forwardRef","props","ref","$","_c","children","endElement","icon","rest","startElement","title","t0","jsx","ChakraAlert","t1","jsxs","t2","DiffBubble","fileName","additions","deletions","label","variant","size","onClick","onClickFileLink","undefined","isSmall","t3","t4","t5","t6","t7","background","t8","Span","e","stopPropagation","textDecoration","color","t9","t10","t11","t12","t13","FALLBACK_OLD_PATH","FALLBACK_NEW_PATH","extToLanguage","ts","tsx","js","json","md","py","go","rs","css","html","sh","yml","yaml","getExtension","path","split","pop","toLowerCase","resolveDiffLanguage","language","oldPath","newPath","extension","buildDiffViewData","original","modified","oldFileName","newFileName","fileLanguage","diffFile","generateDiffFile","context","oldFile","fileLang","content","newFile","hunks","_diffList","DiffEditor","sideBySide","disableScroll","data","mode","DiffModeEnum","Split","Unified","Symbol","for","border","borderRadius","fontSize","DiffView","Box","EmptyState","description","ChakraEmptyState","VStack"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -34,8 +34,10 @@ export { PanelMenu } from './components/panel-menu';
|
|
|
34
34
|
export type { PropertiesProps, PropertyItem } from './components/properties';
|
|
35
35
|
export { Properties } from './components/properties';
|
|
36
36
|
export { ScrollArea } from './components/scroll-area';
|
|
37
|
+
export type { SearchableMenuItem } from './components/searchable-menu';
|
|
38
|
+
export { SearchableMenu } from './components/searchable-menu';
|
|
37
39
|
export type { SessionCompletionStatus } from './components/session-indicator';
|
|
38
|
-
export { SessionIndicator } from './components/session-indicator';
|
|
40
|
+
export { resolveSessionIndicatorColor, resolveSessionIndicatorIcon, SessionIndicator, } from './components/session-indicator';
|
|
39
41
|
export { SidebarNext } from './components/sidebar-next/sidebar-next';
|
|
40
42
|
export { useSidebarNextStore } from './components/sidebar-next/sidebar-next.store';
|
|
41
43
|
export type { SidebarNextProps } from './components/sidebar-next/sidebar-next.types';
|