@arcadeai/design-system 3.33.2 → 3.34.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/index.js +595 -567
- package/dist/components/ui/atoms/avatar-notification-badge.d.ts +34 -0
- package/dist/components/ui/atoms/avatar-notification-badge.d.ts.map +1 -0
- package/dist/components/ui/atoms/avatar-notification-badge.js +78 -0
- package/dist/components/ui/atoms/index.d.ts +3 -0
- package/dist/components/ui/atoms/index.d.ts.map +1 -1
- package/dist/components/ui/atoms/index.js +512 -504
- package/dist/components/ui/atoms/json-highlight.d.ts +60 -0
- package/dist/components/ui/atoms/json-highlight.d.ts.map +1 -0
- package/dist/components/ui/atoms/json-highlight.js +77 -0
- package/dist/components/ui/atoms/scroll-button.js +8 -8
- package/dist/components/ui/atoms/view-tools-control.d.ts +1 -1
- package/dist/components/ui/atoms/view-tools-control.d.ts.map +1 -1
- package/dist/components/ui/atoms/view-tools-control.js +20 -19
- package/dist/components/ui/index.js +595 -567
- package/dist/components/ui/molecules/chat-message-list.d.ts +5 -2
- package/dist/components/ui/molecules/chat-message-list.d.ts.map +1 -1
- package/dist/components/ui/molecules/chat-message-list.js +2 -2
- package/dist/components/ui/molecules/index.d.ts +8 -0
- package/dist/components/ui/molecules/index.d.ts.map +1 -1
- package/dist/components/ui/molecules/index.js +48 -28
- package/dist/components/ui/molecules/prompt-input.js +20 -20
- package/dist/components/ui/molecules/requirement-badges.js +8 -4
- package/dist/components/ui/molecules/switcher.d.ts +83 -0
- package/dist/components/ui/molecules/switcher.d.ts.map +1 -0
- package/dist/components/ui/molecules/switcher.js +164 -0
- package/dist/components/ui/molecules/tool-authorization.d.ts +56 -0
- package/dist/components/ui/molecules/tool-authorization.d.ts.map +1 -0
- package/dist/components/ui/molecules/tool-authorization.js +160 -0
- package/dist/components/ui/molecules/tool-call-accordion.d.ts +36 -0
- package/dist/components/ui/molecules/tool-call-accordion.d.ts.map +1 -0
- package/dist/components/ui/molecules/tool-call-accordion.js +301 -0
- package/dist/components/ui/molecules/toolkit-card.js +1 -1
- package/dist/components/ui/molecules/user-nav.d.ts +65 -0
- package/dist/components/ui/molecules/user-nav.d.ts.map +1 -0
- package/dist/components/ui/molecules/user-nav.js +154 -0
- package/dist/components/ui/pages/chat-page.d.ts +18 -10
- package/dist/components/ui/pages/chat-page.d.ts.map +1 -1
- package/dist/components/ui/pages/chat-page.js +328 -243
- package/dist/components/ui/templates/chat-template.d.ts +1 -1
- package/dist/components/ui/templates/chat-template.d.ts.map +1 -1
- package/dist/components/ui/templates/chat-template.js +11 -11
- package/dist/main.js +621 -593
- package/dist/{toolkit-card-k8jio69G.js → toolkit-card-DAgQXF93.js} +13 -10
- package/package.json +1 -1
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { jsx as e, jsxs as r, Fragment as b } from "react/jsx-runtime";
|
|
2
|
+
import { ChevronsUpDownIcon as y } from "lucide-react";
|
|
3
|
+
import { Avatar as D, AvatarImage as C, AvatarFallback as j } from "../atoms/avatar.js";
|
|
4
|
+
import { Button as M } from "../atoms/button.js";
|
|
5
|
+
import { DropdownMenu as I, DropdownMenuTrigger as k, DropdownMenuContent as z, DropdownMenuLabel as A, DropdownMenuSeparator as U } from "../atoms/dropdown-menu.js";
|
|
6
|
+
import { cn as a } from "../../../lib/utils.js";
|
|
7
|
+
function B(t) {
|
|
8
|
+
return t.split(" ").filter(Boolean).map((n) => n[0]).join("").slice(0, 2).toUpperCase();
|
|
9
|
+
}
|
|
10
|
+
const F = {
|
|
11
|
+
sm: "size-9",
|
|
12
|
+
lg: "size-10"
|
|
13
|
+
};
|
|
14
|
+
function f({
|
|
15
|
+
name: t,
|
|
16
|
+
avatarUrl: n,
|
|
17
|
+
avatarSize: o,
|
|
18
|
+
avatarClassName: i,
|
|
19
|
+
badge: s,
|
|
20
|
+
secondaryContent: l,
|
|
21
|
+
hideDetails: u = !1
|
|
22
|
+
}) {
|
|
23
|
+
const c = B(t) || "U";
|
|
24
|
+
return /* @__PURE__ */ r(b, { children: [
|
|
25
|
+
/* @__PURE__ */ r("div", { className: "relative shrink-0", children: [
|
|
26
|
+
/* @__PURE__ */ r(D, { className: a(F[o], "rounded-lg"), children: [
|
|
27
|
+
n && /* @__PURE__ */ e(C, { alt: t, src: n }),
|
|
28
|
+
/* @__PURE__ */ e(
|
|
29
|
+
j,
|
|
30
|
+
{
|
|
31
|
+
className: a(
|
|
32
|
+
"rounded-lg bg-purple-600 font-semibold text-white text-xs",
|
|
33
|
+
i
|
|
34
|
+
),
|
|
35
|
+
children: c
|
|
36
|
+
}
|
|
37
|
+
)
|
|
38
|
+
] }),
|
|
39
|
+
s
|
|
40
|
+
] }),
|
|
41
|
+
/* @__PURE__ */ r(
|
|
42
|
+
"div",
|
|
43
|
+
{
|
|
44
|
+
className: a(
|
|
45
|
+
"flex min-w-0 flex-1 flex-col items-start gap-px text-left leading-tight",
|
|
46
|
+
u && "hidden"
|
|
47
|
+
),
|
|
48
|
+
children: [
|
|
49
|
+
/* @__PURE__ */ e("span", { className: "truncate font-semibold text-foreground text-sm", children: t }),
|
|
50
|
+
l
|
|
51
|
+
]
|
|
52
|
+
}
|
|
53
|
+
)
|
|
54
|
+
] });
|
|
55
|
+
}
|
|
56
|
+
function G({
|
|
57
|
+
name: t,
|
|
58
|
+
email: n,
|
|
59
|
+
avatarUrl: o,
|
|
60
|
+
avatarSize: i = "sm",
|
|
61
|
+
avatarClassName: s,
|
|
62
|
+
badge: l,
|
|
63
|
+
menuBadge: u,
|
|
64
|
+
secondary: c,
|
|
65
|
+
menuSecondary: g,
|
|
66
|
+
compact: m = !1,
|
|
67
|
+
children: h,
|
|
68
|
+
dropdownSide: w = "top",
|
|
69
|
+
dropdownAlign: N = "end",
|
|
70
|
+
className: x
|
|
71
|
+
}) {
|
|
72
|
+
const p = t ?? "User";
|
|
73
|
+
let d = null;
|
|
74
|
+
c !== void 0 ? d = c : n && (d = /* @__PURE__ */ e("span", { className: "truncate text-muted-foreground text-xs", children: n }));
|
|
75
|
+
const v = g !== void 0 ? g : d;
|
|
76
|
+
return h ? /* @__PURE__ */ r(I, { children: [
|
|
77
|
+
/* @__PURE__ */ e(k, { asChild: !0, children: /* @__PURE__ */ r(
|
|
78
|
+
M,
|
|
79
|
+
{
|
|
80
|
+
"aria-label": `${p} menu`,
|
|
81
|
+
className: a(
|
|
82
|
+
"h-auto w-full cursor-pointer justify-start gap-3 overflow-visible rounded-lg px-1.5 py-2 transition-colors",
|
|
83
|
+
"hover:bg-accent hover:text-accent-foreground",
|
|
84
|
+
"data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",
|
|
85
|
+
m && "size-10 justify-center px-0",
|
|
86
|
+
x
|
|
87
|
+
),
|
|
88
|
+
variant: "ghost",
|
|
89
|
+
children: [
|
|
90
|
+
/* @__PURE__ */ e(
|
|
91
|
+
f,
|
|
92
|
+
{
|
|
93
|
+
avatarClassName: s,
|
|
94
|
+
avatarSize: i,
|
|
95
|
+
avatarUrl: o,
|
|
96
|
+
badge: l,
|
|
97
|
+
hideDetails: m,
|
|
98
|
+
name: p,
|
|
99
|
+
secondaryContent: d
|
|
100
|
+
}
|
|
101
|
+
),
|
|
102
|
+
!m && /* @__PURE__ */ e(y, { className: "ml-auto size-4 shrink-0 text-muted-foreground" })
|
|
103
|
+
]
|
|
104
|
+
}
|
|
105
|
+
) }),
|
|
106
|
+
/* @__PURE__ */ r(
|
|
107
|
+
z,
|
|
108
|
+
{
|
|
109
|
+
align: N,
|
|
110
|
+
className: "w-(--radix-dropdown-menu-trigger-width) min-w-56",
|
|
111
|
+
side: w,
|
|
112
|
+
sideOffset: 4,
|
|
113
|
+
children: [
|
|
114
|
+
/* @__PURE__ */ e(A, { className: "p-0 font-normal", children: /* @__PURE__ */ e("div", { className: "flex items-center gap-3 px-3 py-2.5", children: /* @__PURE__ */ e(
|
|
115
|
+
f,
|
|
116
|
+
{
|
|
117
|
+
avatarClassName: s,
|
|
118
|
+
avatarSize: i,
|
|
119
|
+
avatarUrl: o,
|
|
120
|
+
badge: u ?? l,
|
|
121
|
+
name: p,
|
|
122
|
+
secondaryContent: v
|
|
123
|
+
}
|
|
124
|
+
) }) }),
|
|
125
|
+
/* @__PURE__ */ e(U, {}),
|
|
126
|
+
h
|
|
127
|
+
]
|
|
128
|
+
}
|
|
129
|
+
)
|
|
130
|
+
] }) : /* @__PURE__ */ e(
|
|
131
|
+
"div",
|
|
132
|
+
{
|
|
133
|
+
className: a(
|
|
134
|
+
"flex w-full items-center gap-3 rounded-lg px-1.5 py-2",
|
|
135
|
+
x
|
|
136
|
+
),
|
|
137
|
+
children: /* @__PURE__ */ e(
|
|
138
|
+
f,
|
|
139
|
+
{
|
|
140
|
+
avatarClassName: s,
|
|
141
|
+
avatarSize: i,
|
|
142
|
+
avatarUrl: o,
|
|
143
|
+
badge: l,
|
|
144
|
+
hideDetails: m,
|
|
145
|
+
name: p,
|
|
146
|
+
secondaryContent: d
|
|
147
|
+
}
|
|
148
|
+
)
|
|
149
|
+
}
|
|
150
|
+
);
|
|
151
|
+
}
|
|
152
|
+
export {
|
|
153
|
+
G as UserNav
|
|
154
|
+
};
|
|
@@ -34,6 +34,8 @@ export type ChatPageProps = {
|
|
|
34
34
|
inputValue?: string;
|
|
35
35
|
/** Callback when input changes */
|
|
36
36
|
onInputChange?: (value: string) => void;
|
|
37
|
+
/** Disables the composer while the caller is hydrating or otherwise blocking input. */
|
|
38
|
+
inputDisabled?: boolean;
|
|
37
39
|
/** Callback when message is submitted */
|
|
38
40
|
onSubmit?: () => void;
|
|
39
41
|
/** Whether a response is loading / streaming */
|
|
@@ -46,18 +48,19 @@ export type ChatPageProps = {
|
|
|
46
48
|
onDeleteAll?: () => void;
|
|
47
49
|
/** Callback for sign out */
|
|
48
50
|
onSignOut?: () => void;
|
|
49
|
-
/**
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
isActive?: boolean;
|
|
51
|
+
/** Chat history items for the sidebar, pre-grouped by date (use groupHistory from @arcadeai/ui-kit) */
|
|
52
|
+
chatHistoryGroups?: Array<{
|
|
53
|
+
label: string;
|
|
54
|
+
items: Array<{
|
|
55
|
+
id: string;
|
|
56
|
+
title: string;
|
|
57
|
+
isActive?: boolean;
|
|
58
|
+
}>;
|
|
58
59
|
}>;
|
|
59
60
|
/** Callback when a chat history item is selected */
|
|
60
61
|
onSelectChat?: (id: string) => void;
|
|
62
|
+
/** Callback to delete a single chat history item */
|
|
63
|
+
onDeleteChat?: (id: string) => void;
|
|
61
64
|
/** Whether the sidebar is open by default */
|
|
62
65
|
defaultSidebarOpen?: boolean;
|
|
63
66
|
/** Whether to show the sidebar. When false, the chat takes the full width. */
|
|
@@ -70,6 +73,11 @@ export type ChatPageProps = {
|
|
|
70
73
|
loadingIndicator?: React.ReactNode;
|
|
71
74
|
/** Children rendered in the body area. Overrides `messages` prop when present. */
|
|
72
75
|
children?: React.ReactNode;
|
|
76
|
+
/**
|
|
77
|
+
* Key for the scroll container. Change this value (e.g. pass the active chat ID)
|
|
78
|
+
* to remount the container and jump instantly to the bottom instead of animating.
|
|
79
|
+
*/
|
|
80
|
+
scrollKey?: string | number;
|
|
73
81
|
};
|
|
74
|
-
export declare function ChatPage({ user, logo, suggestedActions, onSuggestionAction, models, selectedModelId, onModelChange, inputValue, onInputChange, onSubmit, isLoading, onStop, onNewChat, onDeleteAll, onSignOut,
|
|
82
|
+
export declare function ChatPage({ user, logo, suggestedActions, onSuggestionAction, models, selectedModelId, onModelChange, inputValue, onInputChange, inputDisabled, onSubmit, isLoading, onStop, onNewChat, onDeleteAll, onSignOut, chatHistoryGroups, onSelectChat, onDeleteChat, defaultSidebarOpen, showSidebar, messages, renderMessage, loadingIndicator, children, scrollKey, }: ChatPageProps): import("react/jsx-runtime").JSX.Element;
|
|
75
83
|
//# sourceMappingURL=chat-page.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-page.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/pages/chat-page.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"chat-page.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/pages/chat-page.tsx"],"names":[],"mappings":"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"}
|