@pactor-app/ui 1.23.0 → 1.24.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/{chunk-VTCNWVKQ.js → chunk-WYRFTFYQ.js} +165 -65
- package/dist/components/index.cjs +159 -59
- package/dist/components/index.d.cts +35 -8
- package/dist/components/index.d.ts +35 -8
- package/dist/components/index.js +1 -1
- package/dist/index.cjs +159 -59
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/package.json +6 -6
- package/styles.css +14 -0
|
@@ -8146,7 +8146,7 @@ function ChatMessage({
|
|
|
8146
8146
|
|
|
8147
8147
|
// src/components/chat/ChatPage/index.tsx
|
|
8148
8148
|
import { useRenderer as useRenderer18 } from "@pactor-app/runtime";
|
|
8149
|
-
import { isValidElement as isValidElement2, useState as useState44 } from "react";
|
|
8149
|
+
import { isValidElement as isValidElement2, useEffect as useEffect36, useState as useState44 } from "react";
|
|
8150
8150
|
|
|
8151
8151
|
// src/components/chat/Composer/index.tsx
|
|
8152
8152
|
import {
|
|
@@ -8984,6 +8984,10 @@ function ChatPage({
|
|
|
8984
8984
|
conversationTitle,
|
|
8985
8985
|
conversationHeaderAction,
|
|
8986
8986
|
onConversationHeaderAction,
|
|
8987
|
+
conversationRailItems = [],
|
|
8988
|
+
hideArtifactRailItem = false,
|
|
8989
|
+
activeConversationRailKey,
|
|
8990
|
+
onConversationRailChange,
|
|
8987
8991
|
messages = [],
|
|
8988
8992
|
sending,
|
|
8989
8993
|
composerPlaceholder,
|
|
@@ -9024,6 +9028,51 @@ function ChatPage({
|
|
|
9024
9028
|
if (!controlled) setInnerOpen(next);
|
|
9025
9029
|
onArtifactOpenChange?.(next);
|
|
9026
9030
|
};
|
|
9031
|
+
const railControlled = activeConversationRailKey !== void 0;
|
|
9032
|
+
const [activeRailInner, setActiveRailInner] = useState44(null);
|
|
9033
|
+
const activeRailKey = railControlled ? activeConversationRailKey : activeRailInner;
|
|
9034
|
+
const setActiveRailKey = (next) => {
|
|
9035
|
+
if (!railControlled) setActiveRailInner(next);
|
|
9036
|
+
onConversationRailChange?.(next);
|
|
9037
|
+
};
|
|
9038
|
+
const visibleRailItems = conversationRailItems.filter((item) => item.hidden !== true);
|
|
9039
|
+
const activeRailItem = visibleRailItems.find(
|
|
9040
|
+
(item) => item.key === activeRailKey
|
|
9041
|
+
);
|
|
9042
|
+
const activePanelItem = activeRailItem?.display === "panel" && activeRailItem.content !== void 0 ? activeRailItem : void 0;
|
|
9043
|
+
const activePopoverItem = activeRailItem !== void 0 && activeRailItem.display !== "panel" && activeRailItem.content !== void 0 ? activeRailItem : void 0;
|
|
9044
|
+
const toggleRailItem = (item) => {
|
|
9045
|
+
const next = activeRailKey === item.key ? null : item.key;
|
|
9046
|
+
if (next !== null && item.display === "panel") {
|
|
9047
|
+
setOpen(false);
|
|
9048
|
+
}
|
|
9049
|
+
setActiveRailKey(next);
|
|
9050
|
+
};
|
|
9051
|
+
const toggleArtifact = () => {
|
|
9052
|
+
if (!open && activePanelItem) {
|
|
9053
|
+
setActiveRailKey(null);
|
|
9054
|
+
}
|
|
9055
|
+
setOpen(!open);
|
|
9056
|
+
};
|
|
9057
|
+
useEffect36(() => {
|
|
9058
|
+
if (!activePopoverItem) return;
|
|
9059
|
+
const onKeyDown = (event) => {
|
|
9060
|
+
if (event.key === "Escape") setActiveRailKey(null);
|
|
9061
|
+
};
|
|
9062
|
+
const onPointerDown = (event) => {
|
|
9063
|
+
const target = event.target;
|
|
9064
|
+
if (target.closest("[data-slot=chat-page-rail-popover]") || target.closest("[data-slot=chat-page-conv-rail]")) {
|
|
9065
|
+
return;
|
|
9066
|
+
}
|
|
9067
|
+
setActiveRailKey(null);
|
|
9068
|
+
};
|
|
9069
|
+
document.addEventListener("keydown", onKeyDown);
|
|
9070
|
+
document.addEventListener("mousedown", onPointerDown);
|
|
9071
|
+
return () => {
|
|
9072
|
+
document.removeEventListener("keydown", onKeyDown);
|
|
9073
|
+
document.removeEventListener("mousedown", onPointerDown);
|
|
9074
|
+
};
|
|
9075
|
+
});
|
|
9027
9076
|
const { renderChildren } = useRenderer18();
|
|
9028
9077
|
const renderSlot = (slot) => isValidElement2(slot) || typeof slot !== "object" || slot === null ? slot : renderChildren([slot]);
|
|
9029
9078
|
const convCollControlled = conversationSectionCollapsed !== void 0;
|
|
@@ -9055,10 +9104,58 @@ function ChatPage({
|
|
|
9055
9104
|
onClick: () => onMenuSelect?.(item.key)
|
|
9056
9105
|
}
|
|
9057
9106
|
) }, item.key);
|
|
9107
|
+
const convRailButton = (item, active, onClick) => {
|
|
9108
|
+
const button = /* @__PURE__ */ jsx127(
|
|
9109
|
+
Button2,
|
|
9110
|
+
{
|
|
9111
|
+
icon: item.icon,
|
|
9112
|
+
variant: "text",
|
|
9113
|
+
className: cn(active ? "bg-accent text-accent-foreground" : void 0, "px-2"),
|
|
9114
|
+
onClick
|
|
9115
|
+
}
|
|
9116
|
+
);
|
|
9117
|
+
return item.label !== void 0 ? /* @__PURE__ */ jsx127(Tooltip2, { content: item.label, side: "left", children: button }, item.key) : /* @__PURE__ */ jsx127("span", { children: button }, item.key);
|
|
9118
|
+
};
|
|
9119
|
+
const convRailVisible = !hideArtifactRailItem || visibleRailItems.length > 0;
|
|
9120
|
+
const convRail = convRailVisible ? /* @__PURE__ */ jsxs90(
|
|
9121
|
+
"div",
|
|
9122
|
+
{
|
|
9123
|
+
"data-slot": "chat-page-conv-rail",
|
|
9124
|
+
className: "relative flex w-(--pactor-chat-rail-width) shrink-0 flex-col items-center gap-1 px-1 py-2",
|
|
9125
|
+
children: [
|
|
9126
|
+
!hideArtifactRailItem ? convRailButton(
|
|
9127
|
+
{
|
|
9128
|
+
key: "artifact",
|
|
9129
|
+
icon: open ? "panel-right-close" : "package",
|
|
9130
|
+
label: open ? "\u6536\u8D77\u4EA7\u7269\u533A" : artifactTitle
|
|
9131
|
+
},
|
|
9132
|
+
open,
|
|
9133
|
+
toggleArtifact
|
|
9134
|
+
) : null,
|
|
9135
|
+
visibleRailItems.map(
|
|
9136
|
+
(item) => convRailButton(item, activeRailKey === item.key, () => toggleRailItem(item))
|
|
9137
|
+
),
|
|
9138
|
+
activePopoverItem ? /* @__PURE__ */ jsx127(
|
|
9139
|
+
"div",
|
|
9140
|
+
{
|
|
9141
|
+
"data-slot": "chat-page-rail-popover",
|
|
9142
|
+
className: "absolute right-full top-0 z-10 mr-2 overflow-auto rounded-lg border border-border bg-popover shadow-md",
|
|
9143
|
+
style: {
|
|
9144
|
+
width: "var(--pactor-chat-rail-popover-width)",
|
|
9145
|
+
maxWidth: "calc(100cqw - 2rem)",
|
|
9146
|
+
maxHeight: "calc(100% - 1rem)"
|
|
9147
|
+
},
|
|
9148
|
+
children: renderSlot(activePopoverItem.content)
|
|
9149
|
+
}
|
|
9150
|
+
) : null
|
|
9151
|
+
]
|
|
9152
|
+
}
|
|
9153
|
+
) : null;
|
|
9058
9154
|
const chatArea = /* @__PURE__ */ jsxs90("div", { "data-slot": "chat-page-conversation", className: "flex h-full min-w-0 flex-1 flex-col", children: [
|
|
9059
9155
|
/* @__PURE__ */ jsxs90(
|
|
9060
9156
|
"div",
|
|
9061
9157
|
{
|
|
9158
|
+
"data-slot": "chat-page-conversation-header",
|
|
9062
9159
|
className: "flex shrink-0 items-center justify-between border-b border-border px-4 py-2.5",
|
|
9063
9160
|
children: [
|
|
9064
9161
|
/* @__PURE__ */ jsx127(Text, { text: conversationTitle, strong: true }),
|
|
@@ -9070,66 +9167,62 @@ function ChatPage({
|
|
|
9070
9167
|
variant: "text",
|
|
9071
9168
|
onClick: () => onConversationHeaderAction?.()
|
|
9072
9169
|
}
|
|
9073
|
-
) }) :
|
|
9074
|
-
Button2,
|
|
9075
|
-
{
|
|
9076
|
-
icon: open ? "panel-right-close" : "panel-right-open",
|
|
9077
|
-
variant: "text",
|
|
9078
|
-
onClick: () => setOpen(!open)
|
|
9079
|
-
}
|
|
9080
|
-
) })
|
|
9170
|
+
) }) : null
|
|
9081
9171
|
]
|
|
9082
9172
|
}
|
|
9083
9173
|
),
|
|
9084
|
-
/* @__PURE__ */ jsxs90(
|
|
9085
|
-
|
|
9086
|
-
|
|
9087
|
-
|
|
9088
|
-
|
|
9089
|
-
|
|
9090
|
-
|
|
9091
|
-
|
|
9092
|
-
|
|
9093
|
-
|
|
9094
|
-
|
|
9095
|
-
|
|
9096
|
-
|
|
9097
|
-
|
|
9098
|
-
|
|
9099
|
-
|
|
9100
|
-
|
|
9101
|
-
|
|
9102
|
-
|
|
9103
|
-
|
|
9104
|
-
|
|
9105
|
-
|
|
9106
|
-
|
|
9107
|
-
|
|
9108
|
-
|
|
9109
|
-
|
|
9110
|
-
|
|
9111
|
-
|
|
9112
|
-
|
|
9113
|
-
|
|
9114
|
-
|
|
9115
|
-
|
|
9116
|
-
|
|
9117
|
-
|
|
9118
|
-
|
|
9119
|
-
|
|
9120
|
-
|
|
9121
|
-
|
|
9122
|
-
|
|
9123
|
-
|
|
9124
|
-
|
|
9125
|
-
|
|
9126
|
-
|
|
9127
|
-
|
|
9128
|
-
|
|
9129
|
-
|
|
9130
|
-
|
|
9131
|
-
|
|
9132
|
-
|
|
9174
|
+
/* @__PURE__ */ jsxs90("div", { className: "flex min-h-0 flex-1", children: [
|
|
9175
|
+
/* @__PURE__ */ jsxs90(
|
|
9176
|
+
"div",
|
|
9177
|
+
{
|
|
9178
|
+
"data-slot": "chat-page-conversation-body",
|
|
9179
|
+
className: "mx-auto flex min-h-0 w-[61.8cqw] max-w-full flex-col",
|
|
9180
|
+
children: [
|
|
9181
|
+
messages.length === 0 ? /* @__PURE__ */ jsx127(
|
|
9182
|
+
Welcome,
|
|
9183
|
+
{
|
|
9184
|
+
title: welcome?.title,
|
|
9185
|
+
description: welcome?.description,
|
|
9186
|
+
prompts: welcome?.prompts,
|
|
9187
|
+
style: { flex: 1 },
|
|
9188
|
+
onSelect: (value) => onSend?.(value)
|
|
9189
|
+
}
|
|
9190
|
+
) : /* @__PURE__ */ jsx127(
|
|
9191
|
+
MessageList,
|
|
9192
|
+
{
|
|
9193
|
+
messages,
|
|
9194
|
+
className: "scrollbar-subtle",
|
|
9195
|
+
style: { flex: 1, minHeight: 0, padding: 16 },
|
|
9196
|
+
onAction: onMessageAction,
|
|
9197
|
+
onOpenArtifacts: () => setOpen(true)
|
|
9198
|
+
}
|
|
9199
|
+
),
|
|
9200
|
+
/* @__PURE__ */ jsx127(
|
|
9201
|
+
Composer,
|
|
9202
|
+
{
|
|
9203
|
+
placeholder: composerPlaceholder,
|
|
9204
|
+
loading: sending,
|
|
9205
|
+
models,
|
|
9206
|
+
model,
|
|
9207
|
+
contexts,
|
|
9208
|
+
contextItems,
|
|
9209
|
+
attachments,
|
|
9210
|
+
footer: composerFooter,
|
|
9211
|
+
style: { padding: 16, paddingBottom: composerBottom ? 8 : 16, flexShrink: 0 },
|
|
9212
|
+
onModelChange,
|
|
9213
|
+
onContextItemsChange,
|
|
9214
|
+
onAttachFiles,
|
|
9215
|
+
onRemoveAttachment,
|
|
9216
|
+
onRetryAttachment,
|
|
9217
|
+
onSubmit: (text) => onSend?.(text)
|
|
9218
|
+
}
|
|
9219
|
+
),
|
|
9220
|
+
composerBottom ? /* @__PURE__ */ jsx127("div", { "data-slot": "chat-page-composer-bottom", className: "shrink-0 px-4 pb-2 text-center", children: renderSlot(composerBottom) }) : null
|
|
9221
|
+
]
|
|
9222
|
+
}
|
|
9223
|
+
),
|
|
9224
|
+
convRail
|
|
9225
|
+
] })
|
|
9133
9226
|
] });
|
|
9134
9227
|
const activeArtifact = artifacts.find((item) => item.id === activeArtifactId) ?? (activeArtifactId === void 0 || activeArtifactId === "" ? artifacts[artifacts.length - 1] : void 0);
|
|
9135
9228
|
const artifactPanel = /* @__PURE__ */ jsx127(
|
|
@@ -9261,10 +9354,17 @@ function ChatPage({
|
|
|
9261
9354
|
]
|
|
9262
9355
|
}
|
|
9263
9356
|
),
|
|
9264
|
-
/* @__PURE__ */ jsx127("div", { className: "@container h-full min-w-0 flex-1", children: open ? /* @__PURE__ */ jsxs90(PanelGroup, { orientation: "horizontal", style: { width: "100%", height: "100%" }, children: [
|
|
9357
|
+
/* @__PURE__ */ jsx127("div", { className: "@container h-full min-w-0 flex-1", children: open || activePanelItem ? /* @__PURE__ */ jsxs90(PanelGroup, { orientation: "horizontal", style: { width: "100%", height: "100%" }, children: [
|
|
9265
9358
|
/* @__PURE__ */ jsx127(Panel, { defaultSize: "62%", children: chatArea }),
|
|
9266
9359
|
/* @__PURE__ */ jsx127(ResizableHandle, { withHandle: true }),
|
|
9267
|
-
/* @__PURE__ */ jsx127(Panel, { defaultSize: "38%", minSize: "380px", maxSize: "760px", children:
|
|
9360
|
+
/* @__PURE__ */ jsx127(Panel, { defaultSize: "38%", minSize: "380px", maxSize: "760px", children: activePanelItem ? /* @__PURE__ */ jsx127(
|
|
9361
|
+
"div",
|
|
9362
|
+
{
|
|
9363
|
+
"data-slot": "chat-page-rail-panel",
|
|
9364
|
+
className: "flex h-full min-w-0 flex-col border-l border-border bg-muted",
|
|
9365
|
+
children: renderSlot(activePanelItem.content)
|
|
9366
|
+
}
|
|
9367
|
+
) : artifactPanel })
|
|
9268
9368
|
] }) : chatArea })
|
|
9269
9369
|
]
|
|
9270
9370
|
}
|
|
@@ -9340,7 +9440,7 @@ function Suggestion({ items = [], justify = "start", onSelect, className, style
|
|
|
9340
9440
|
}
|
|
9341
9441
|
|
|
9342
9442
|
// src/components/chart/EChartBase/index.tsx
|
|
9343
|
-
import { useEffect as
|
|
9443
|
+
import { useEffect as useEffect37, useRef as useRef11, useState as useState45 } from "react";
|
|
9344
9444
|
|
|
9345
9445
|
// src/components/chart/echarts-modules.ts
|
|
9346
9446
|
import * as echarts from "echarts/core";
|
|
@@ -9406,7 +9506,7 @@ function EChartBase({
|
|
|
9406
9506
|
const onSelectRef = useRef11(onSelect);
|
|
9407
9507
|
onSelectRef.current = onSelect;
|
|
9408
9508
|
const [failed, setFailed] = useState45(false);
|
|
9409
|
-
|
|
9509
|
+
useEffect37(() => {
|
|
9410
9510
|
const host = hostRef.current;
|
|
9411
9511
|
if (!host) return;
|
|
9412
9512
|
let chart = null;
|
|
@@ -9433,7 +9533,7 @@ function EChartBase({
|
|
|
9433
9533
|
chartRef.current = null;
|
|
9434
9534
|
};
|
|
9435
9535
|
}, []);
|
|
9436
|
-
|
|
9536
|
+
useEffect37(() => {
|
|
9437
9537
|
try {
|
|
9438
9538
|
chartRef.current?.setOption(option, { notMerge: true });
|
|
9439
9539
|
} catch {
|
|
@@ -10375,7 +10475,7 @@ function LineChart2({
|
|
|
10375
10475
|
}
|
|
10376
10476
|
|
|
10377
10477
|
// src/components/chart/MapChart/index.tsx
|
|
10378
|
-
import { useEffect as
|
|
10478
|
+
import { useEffect as useEffect38, useState as useState46 } from "react";
|
|
10379
10479
|
import { jsx as jsx141 } from "react/jsx-runtime";
|
|
10380
10480
|
var fetchedMaps = /* @__PURE__ */ new Set();
|
|
10381
10481
|
function hasRegisteredMap(mapName) {
|
|
@@ -10408,7 +10508,7 @@ function MapChart2({
|
|
|
10408
10508
|
} catch {
|
|
10409
10509
|
}
|
|
10410
10510
|
}
|
|
10411
|
-
|
|
10511
|
+
useEffect38(() => {
|
|
10412
10512
|
if (geoJson || !geoJsonUrl || hasRegisteredMap(mapName) || fetchedMaps.has(mapName)) {
|
|
10413
10513
|
setLoadState("idle");
|
|
10414
10514
|
return;
|
|
@@ -13240,6 +13240,10 @@ function ChatPage({
|
|
|
13240
13240
|
conversationTitle,
|
|
13241
13241
|
conversationHeaderAction,
|
|
13242
13242
|
onConversationHeaderAction,
|
|
13243
|
+
conversationRailItems = [],
|
|
13244
|
+
hideArtifactRailItem = false,
|
|
13245
|
+
activeConversationRailKey,
|
|
13246
|
+
onConversationRailChange,
|
|
13243
13247
|
messages = [],
|
|
13244
13248
|
sending,
|
|
13245
13249
|
composerPlaceholder,
|
|
@@ -13280,6 +13284,51 @@ function ChatPage({
|
|
|
13280
13284
|
if (!controlled) setInnerOpen(next);
|
|
13281
13285
|
onArtifactOpenChange?.(next);
|
|
13282
13286
|
};
|
|
13287
|
+
const railControlled = activeConversationRailKey !== void 0;
|
|
13288
|
+
const [activeRailInner, setActiveRailInner] = (0, import_react67.useState)(null);
|
|
13289
|
+
const activeRailKey = railControlled ? activeConversationRailKey : activeRailInner;
|
|
13290
|
+
const setActiveRailKey = (next) => {
|
|
13291
|
+
if (!railControlled) setActiveRailInner(next);
|
|
13292
|
+
onConversationRailChange?.(next);
|
|
13293
|
+
};
|
|
13294
|
+
const visibleRailItems = conversationRailItems.filter((item) => item.hidden !== true);
|
|
13295
|
+
const activeRailItem = visibleRailItems.find(
|
|
13296
|
+
(item) => item.key === activeRailKey
|
|
13297
|
+
);
|
|
13298
|
+
const activePanelItem = activeRailItem?.display === "panel" && activeRailItem.content !== void 0 ? activeRailItem : void 0;
|
|
13299
|
+
const activePopoverItem = activeRailItem !== void 0 && activeRailItem.display !== "panel" && activeRailItem.content !== void 0 ? activeRailItem : void 0;
|
|
13300
|
+
const toggleRailItem = (item) => {
|
|
13301
|
+
const next = activeRailKey === item.key ? null : item.key;
|
|
13302
|
+
if (next !== null && item.display === "panel") {
|
|
13303
|
+
setOpen(false);
|
|
13304
|
+
}
|
|
13305
|
+
setActiveRailKey(next);
|
|
13306
|
+
};
|
|
13307
|
+
const toggleArtifact = () => {
|
|
13308
|
+
if (!open && activePanelItem) {
|
|
13309
|
+
setActiveRailKey(null);
|
|
13310
|
+
}
|
|
13311
|
+
setOpen(!open);
|
|
13312
|
+
};
|
|
13313
|
+
(0, import_react67.useEffect)(() => {
|
|
13314
|
+
if (!activePopoverItem) return;
|
|
13315
|
+
const onKeyDown = (event) => {
|
|
13316
|
+
if (event.key === "Escape") setActiveRailKey(null);
|
|
13317
|
+
};
|
|
13318
|
+
const onPointerDown = (event) => {
|
|
13319
|
+
const target = event.target;
|
|
13320
|
+
if (target.closest("[data-slot=chat-page-rail-popover]") || target.closest("[data-slot=chat-page-conv-rail]")) {
|
|
13321
|
+
return;
|
|
13322
|
+
}
|
|
13323
|
+
setActiveRailKey(null);
|
|
13324
|
+
};
|
|
13325
|
+
document.addEventListener("keydown", onKeyDown);
|
|
13326
|
+
document.addEventListener("mousedown", onPointerDown);
|
|
13327
|
+
return () => {
|
|
13328
|
+
document.removeEventListener("keydown", onKeyDown);
|
|
13329
|
+
document.removeEventListener("mousedown", onPointerDown);
|
|
13330
|
+
};
|
|
13331
|
+
});
|
|
13283
13332
|
const { renderChildren } = (0, import_runtime26.useRenderer)();
|
|
13284
13333
|
const renderSlot = (slot) => (0, import_react67.isValidElement)(slot) || typeof slot !== "object" || slot === null ? slot : renderChildren([slot]);
|
|
13285
13334
|
const convCollControlled = conversationSectionCollapsed !== void 0;
|
|
@@ -13311,10 +13360,58 @@ function ChatPage({
|
|
|
13311
13360
|
onClick: () => onMenuSelect?.(item.key)
|
|
13312
13361
|
}
|
|
13313
13362
|
) }, item.key);
|
|
13363
|
+
const convRailButton = (item, active, onClick) => {
|
|
13364
|
+
const button = /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
13365
|
+
Button2,
|
|
13366
|
+
{
|
|
13367
|
+
icon: item.icon,
|
|
13368
|
+
variant: "text",
|
|
13369
|
+
className: cn(active ? "bg-accent text-accent-foreground" : void 0, "px-2"),
|
|
13370
|
+
onClick
|
|
13371
|
+
}
|
|
13372
|
+
);
|
|
13373
|
+
return item.label !== void 0 ? /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(Tooltip2, { content: item.label, side: "left", children: button }, item.key) : /* @__PURE__ */ (0, import_jsx_runtime185.jsx)("span", { children: button }, item.key);
|
|
13374
|
+
};
|
|
13375
|
+
const convRailVisible = !hideArtifactRailItem || visibleRailItems.length > 0;
|
|
13376
|
+
const convRail = convRailVisible ? /* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(
|
|
13377
|
+
"div",
|
|
13378
|
+
{
|
|
13379
|
+
"data-slot": "chat-page-conv-rail",
|
|
13380
|
+
className: "relative flex w-(--pactor-chat-rail-width) shrink-0 flex-col items-center gap-1 px-1 py-2",
|
|
13381
|
+
children: [
|
|
13382
|
+
!hideArtifactRailItem ? convRailButton(
|
|
13383
|
+
{
|
|
13384
|
+
key: "artifact",
|
|
13385
|
+
icon: open ? "panel-right-close" : "package",
|
|
13386
|
+
label: open ? "\u6536\u8D77\u4EA7\u7269\u533A" : artifactTitle
|
|
13387
|
+
},
|
|
13388
|
+
open,
|
|
13389
|
+
toggleArtifact
|
|
13390
|
+
) : null,
|
|
13391
|
+
visibleRailItems.map(
|
|
13392
|
+
(item) => convRailButton(item, activeRailKey === item.key, () => toggleRailItem(item))
|
|
13393
|
+
),
|
|
13394
|
+
activePopoverItem ? /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
13395
|
+
"div",
|
|
13396
|
+
{
|
|
13397
|
+
"data-slot": "chat-page-rail-popover",
|
|
13398
|
+
className: "absolute right-full top-0 z-10 mr-2 overflow-auto rounded-lg border border-border bg-popover shadow-md",
|
|
13399
|
+
style: {
|
|
13400
|
+
width: "var(--pactor-chat-rail-popover-width)",
|
|
13401
|
+
maxWidth: "calc(100cqw - 2rem)",
|
|
13402
|
+
maxHeight: "calc(100% - 1rem)"
|
|
13403
|
+
},
|
|
13404
|
+
children: renderSlot(activePopoverItem.content)
|
|
13405
|
+
}
|
|
13406
|
+
) : null
|
|
13407
|
+
]
|
|
13408
|
+
}
|
|
13409
|
+
) : null;
|
|
13314
13410
|
const chatArea = /* @__PURE__ */ (0, import_jsx_runtime185.jsxs)("div", { "data-slot": "chat-page-conversation", className: "flex h-full min-w-0 flex-1 flex-col", children: [
|
|
13315
13411
|
/* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(
|
|
13316
13412
|
"div",
|
|
13317
13413
|
{
|
|
13414
|
+
"data-slot": "chat-page-conversation-header",
|
|
13318
13415
|
className: "flex shrink-0 items-center justify-between border-b border-border px-4 py-2.5",
|
|
13319
13416
|
children: [
|
|
13320
13417
|
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)(Text, { text: conversationTitle, strong: true }),
|
|
@@ -13326,66 +13423,62 @@ function ChatPage({
|
|
|
13326
13423
|
variant: "text",
|
|
13327
13424
|
onClick: () => onConversationHeaderAction?.()
|
|
13328
13425
|
}
|
|
13329
|
-
) }) :
|
|
13330
|
-
Button2,
|
|
13331
|
-
{
|
|
13332
|
-
icon: open ? "panel-right-close" : "panel-right-open",
|
|
13333
|
-
variant: "text",
|
|
13334
|
-
onClick: () => setOpen(!open)
|
|
13335
|
-
}
|
|
13336
|
-
) })
|
|
13426
|
+
) }) : null
|
|
13337
13427
|
]
|
|
13338
13428
|
}
|
|
13339
13429
|
),
|
|
13340
|
-
/* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(
|
|
13341
|
-
|
|
13342
|
-
|
|
13343
|
-
|
|
13344
|
-
|
|
13345
|
-
|
|
13346
|
-
|
|
13347
|
-
|
|
13348
|
-
|
|
13349
|
-
|
|
13350
|
-
|
|
13351
|
-
|
|
13352
|
-
|
|
13353
|
-
|
|
13354
|
-
|
|
13355
|
-
|
|
13356
|
-
|
|
13357
|
-
|
|
13358
|
-
|
|
13359
|
-
|
|
13360
|
-
|
|
13361
|
-
|
|
13362
|
-
|
|
13363
|
-
|
|
13364
|
-
|
|
13365
|
-
|
|
13366
|
-
|
|
13367
|
-
|
|
13368
|
-
|
|
13369
|
-
|
|
13370
|
-
|
|
13371
|
-
|
|
13372
|
-
|
|
13373
|
-
|
|
13374
|
-
|
|
13375
|
-
|
|
13376
|
-
|
|
13377
|
-
|
|
13378
|
-
|
|
13379
|
-
|
|
13380
|
-
|
|
13381
|
-
|
|
13382
|
-
|
|
13383
|
-
|
|
13384
|
-
|
|
13385
|
-
|
|
13386
|
-
|
|
13387
|
-
|
|
13388
|
-
|
|
13430
|
+
/* @__PURE__ */ (0, import_jsx_runtime185.jsxs)("div", { className: "flex min-h-0 flex-1", children: [
|
|
13431
|
+
/* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(
|
|
13432
|
+
"div",
|
|
13433
|
+
{
|
|
13434
|
+
"data-slot": "chat-page-conversation-body",
|
|
13435
|
+
className: "mx-auto flex min-h-0 w-[61.8cqw] max-w-full flex-col",
|
|
13436
|
+
children: [
|
|
13437
|
+
messages.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
13438
|
+
Welcome,
|
|
13439
|
+
{
|
|
13440
|
+
title: welcome?.title,
|
|
13441
|
+
description: welcome?.description,
|
|
13442
|
+
prompts: welcome?.prompts,
|
|
13443
|
+
style: { flex: 1 },
|
|
13444
|
+
onSelect: (value) => onSend?.(value)
|
|
13445
|
+
}
|
|
13446
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
13447
|
+
MessageList,
|
|
13448
|
+
{
|
|
13449
|
+
messages,
|
|
13450
|
+
className: "scrollbar-subtle",
|
|
13451
|
+
style: { flex: 1, minHeight: 0, padding: 16 },
|
|
13452
|
+
onAction: onMessageAction,
|
|
13453
|
+
onOpenArtifacts: () => setOpen(true)
|
|
13454
|
+
}
|
|
13455
|
+
),
|
|
13456
|
+
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
13457
|
+
Composer,
|
|
13458
|
+
{
|
|
13459
|
+
placeholder: composerPlaceholder,
|
|
13460
|
+
loading: sending,
|
|
13461
|
+
models,
|
|
13462
|
+
model,
|
|
13463
|
+
contexts,
|
|
13464
|
+
contextItems,
|
|
13465
|
+
attachments,
|
|
13466
|
+
footer: composerFooter,
|
|
13467
|
+
style: { padding: 16, paddingBottom: composerBottom ? 8 : 16, flexShrink: 0 },
|
|
13468
|
+
onModelChange,
|
|
13469
|
+
onContextItemsChange,
|
|
13470
|
+
onAttachFiles,
|
|
13471
|
+
onRemoveAttachment,
|
|
13472
|
+
onRetryAttachment,
|
|
13473
|
+
onSubmit: (text) => onSend?.(text)
|
|
13474
|
+
}
|
|
13475
|
+
),
|
|
13476
|
+
composerBottom ? /* @__PURE__ */ (0, import_jsx_runtime185.jsx)("div", { "data-slot": "chat-page-composer-bottom", className: "shrink-0 px-4 pb-2 text-center", children: renderSlot(composerBottom) }) : null
|
|
13477
|
+
]
|
|
13478
|
+
}
|
|
13479
|
+
),
|
|
13480
|
+
convRail
|
|
13481
|
+
] })
|
|
13389
13482
|
] });
|
|
13390
13483
|
const activeArtifact = artifacts.find((item) => item.id === activeArtifactId) ?? (activeArtifactId === void 0 || activeArtifactId === "" ? artifacts[artifacts.length - 1] : void 0);
|
|
13391
13484
|
const artifactPanel = /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
@@ -13517,10 +13610,17 @@ function ChatPage({
|
|
|
13517
13610
|
]
|
|
13518
13611
|
}
|
|
13519
13612
|
),
|
|
13520
|
-
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)("div", { className: "@container h-full min-w-0 flex-1", children: open ? /* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(PanelGroup, { orientation: "horizontal", style: { width: "100%", height: "100%" }, children: [
|
|
13613
|
+
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)("div", { className: "@container h-full min-w-0 flex-1", children: open || activePanelItem ? /* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(PanelGroup, { orientation: "horizontal", style: { width: "100%", height: "100%" }, children: [
|
|
13521
13614
|
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)(Panel, { defaultSize: "62%", children: chatArea }),
|
|
13522
13615
|
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)(ResizableHandle, { withHandle: true }),
|
|
13523
|
-
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)(Panel, { defaultSize: "38%", minSize: "380px", maxSize: "760px", children:
|
|
13616
|
+
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)(Panel, { defaultSize: "38%", minSize: "380px", maxSize: "760px", children: activePanelItem ? /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
13617
|
+
"div",
|
|
13618
|
+
{
|
|
13619
|
+
"data-slot": "chat-page-rail-panel",
|
|
13620
|
+
className: "flex h-full min-w-0 flex-col border-l border-border bg-muted",
|
|
13621
|
+
children: renderSlot(activePanelItem.content)
|
|
13622
|
+
}
|
|
13623
|
+
) : artifactPanel })
|
|
13524
13624
|
] }) : chatArea })
|
|
13525
13625
|
]
|
|
13526
13626
|
}
|
|
@@ -3381,6 +3381,20 @@ interface ChatPageMenuItem {
|
|
|
3381
3381
|
/** 图标名(Icon 白名单) */
|
|
3382
3382
|
icon?: string;
|
|
3383
3383
|
}
|
|
3384
|
+
/** 对话图标栏项:点击 toggle 展示当前对话的附加内容(产物 / 执行步骤等) */
|
|
3385
|
+
interface ConversationRailItem {
|
|
3386
|
+
key: string;
|
|
3387
|
+
/** 提示文案(hover tooltip) */
|
|
3388
|
+
label?: string;
|
|
3389
|
+
/** 图标名(Icon 白名单) */
|
|
3390
|
+
icon?: string;
|
|
3391
|
+
/** 呈现形态:popover(图标栏旁悬浮弹框,缺省)/ panel(产物栏式右侧固定宽栏) */
|
|
3392
|
+
display?: 'panel' | 'popover';
|
|
3393
|
+
/** 附加内容(React 元素或 DslNode;缺省时点击仅触发状态事件,不渲染内容层) */
|
|
3394
|
+
content?: DslNode | ReactNode;
|
|
3395
|
+
/** 隐藏该项(如按当前会话有无对应内容动态显隐);隐藏时激活态一并失效 */
|
|
3396
|
+
hidden?: boolean;
|
|
3397
|
+
}
|
|
3384
3398
|
/** 品牌区(展开菜单区标题 / 版本) */
|
|
3385
3399
|
interface ChatPageBrand {
|
|
3386
3400
|
title: string;
|
|
@@ -3436,9 +3450,8 @@ interface ChatPageProps {
|
|
|
3436
3450
|
/** 对话区头部标题(通常为当前会话标题) */
|
|
3437
3451
|
conversationTitle?: string;
|
|
3438
3452
|
/**
|
|
3439
|
-
* 对话区头部右侧自定义操作(图标 +
|
|
3440
|
-
*
|
|
3441
|
-
* 受控 artifactOpen + onArtifactOpenChange 自行接线)
|
|
3453
|
+
* 对话区头部右侧自定义操作(图标 + 提示);提供才渲染(未配置时
|
|
3454
|
+
* header 不渲染任何按钮),点击经 onConversationHeaderAction 传出
|
|
3442
3455
|
*/
|
|
3443
3456
|
conversationHeaderAction?: {
|
|
3444
3457
|
icon?: string;
|
|
@@ -3447,6 +3460,17 @@ interface ChatPageProps {
|
|
|
3447
3460
|
};
|
|
3448
3461
|
/** 对话区头部右侧自定义操作点击事件 */
|
|
3449
3462
|
onConversationHeaderAction?: () => void;
|
|
3463
|
+
/**
|
|
3464
|
+
* 对话图标栏附加项(header 下方、对话区右缘纵向排列,产物内置项
|
|
3465
|
+
* 之后按序展示);点击 toggle 展示对应附加内容
|
|
3466
|
+
*/
|
|
3467
|
+
conversationRailItems?: ConversationRailItem[];
|
|
3468
|
+
/** 隐藏图标栏内置产物入口(缺省 false:产物开关为图标栏首项) */
|
|
3469
|
+
hideArtifactRailItem?: boolean;
|
|
3470
|
+
/** 图标栏激活项 key(提供即受控,配合 onConversationRailChange 闭环;null 为全部收起) */
|
|
3471
|
+
activeConversationRailKey?: string | null;
|
|
3472
|
+
/** 图标栏激活项变化事件,传出 key 或 null */
|
|
3473
|
+
onConversationRailChange?: (key: string | null) => void;
|
|
3450
3474
|
messages?: MessageListItem[];
|
|
3451
3475
|
/** 发送中(禁用 Composer 发送钮,由调用方完成后复位) */
|
|
3452
3476
|
sending?: boolean;
|
|
@@ -3526,13 +3550,16 @@ interface ChatPageProps {
|
|
|
3526
3550
|
* 行内提及(contexts:输入触发符在光标处弹菜单,选中替换为行内提及块,
|
|
3527
3551
|
* 退格整体删除;受控 contextItems)、附件
|
|
3528
3552
|
* 入口(onAttachFiles + 受控 attachments)与 composerFooter /
|
|
3529
|
-
* composerBottom
|
|
3553
|
+
* composerBottom 槽位)、对话图标栏(header 下方、对话区右缘纵向
|
|
3554
|
+
* 图标列:内置产物入口 + conversationRailItems 附加项,点击 toggle
|
|
3555
|
+
* 展示附加内容——popover 悬浮弹框或 panel 右侧分栏,与产物区互斥)、
|
|
3556
|
+
* 最右产物区(ArtifactPanel:内建产物预览、
|
|
3530
3557
|
* 目录树与下载,可显隐;展示时经 Resizable 拖拽调节与对话区的宽度)。
|
|
3531
3558
|
* 数据与行为全部经 props / events 进出,
|
|
3532
|
-
*
|
|
3533
|
-
*
|
|
3559
|
+
* 本组件不持有业务状态(产物区开关、图标栏激活项与分区折叠缺省非受控,
|
|
3560
|
+
* 均可经受控 prop + change 事件闭环)。
|
|
3534
3561
|
*/
|
|
3535
|
-
declare function ChatPage({ brand, menuItems, activeMenuKey, railItems, railFooterItems, menuAction, onMenuSelect, onMenuAction, conversationSectionTitle, conversationSectionCollapsed, defaultConversationSectionCollapsed, onConversationSectionToggle, conversations, activeConversationId, onSelectConversation, onDeleteConversation, moreLabel, onMore, footerSectionTitle, footerItems, footerSectionCollapsed, defaultFooterSectionCollapsed, onFooterSectionToggle, conversationTitle, conversationHeaderAction, onConversationHeaderAction, messages, sending, composerPlaceholder, welcome, onSend, onMessageAction, models, model, onModelChange, contexts, contextItems, onContextItemsChange, attachments, onAttachFiles, onRemoveAttachment, onRetryAttachment, composerFooter, composerBottom, artifactTitle, artifacts, activeArtifactId, onSelectArtifact, artifactEmptyText, safeRegistry, user, artifactViewers, onDownloadArtifact, artifactOpen, defaultArtifactOpen, onArtifactOpenChange, className, style, }: ChatPageProps): React.JSX.Element;
|
|
3562
|
+
declare function ChatPage({ brand, menuItems, activeMenuKey, railItems, railFooterItems, menuAction, onMenuSelect, onMenuAction, conversationSectionTitle, conversationSectionCollapsed, defaultConversationSectionCollapsed, onConversationSectionToggle, conversations, activeConversationId, onSelectConversation, onDeleteConversation, moreLabel, onMore, footerSectionTitle, footerItems, footerSectionCollapsed, defaultFooterSectionCollapsed, onFooterSectionToggle, conversationTitle, conversationHeaderAction, onConversationHeaderAction, conversationRailItems, hideArtifactRailItem, activeConversationRailKey, onConversationRailChange, messages, sending, composerPlaceholder, welcome, onSend, onMessageAction, models, model, onModelChange, contexts, contextItems, onContextItemsChange, attachments, onAttachFiles, onRemoveAttachment, onRetryAttachment, composerFooter, composerBottom, artifactTitle, artifacts, activeArtifactId, onSelectArtifact, artifactEmptyText, safeRegistry, user, artifactViewers, onDownloadArtifact, artifactOpen, defaultArtifactOpen, onArtifactOpenChange, className, style, }: ChatPageProps): React.JSX.Element;
|
|
3536
3563
|
|
|
3537
3564
|
/** 引用来源项 */
|
|
3538
3565
|
interface CitationItem {
|
|
@@ -4444,4 +4471,4 @@ interface FormContextValue {
|
|
|
4444
4471
|
/** 在字段组件内探测 Form 上下文;不在 Form 内时返回 null */
|
|
4445
4472
|
declare function useFormContext(): FormContextValue | null;
|
|
4446
4473
|
|
|
4447
|
-
export { Accordion, type AccordionItemData, type AccordionProps, Affix, type AffixProps, AgentStatus, type AgentStatusProps, type AgentStatusType, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, Anchor, type AnchorItemData, type AnchorProps, AreaChart, type AreaChartProps, ArtifactPanel, type ArtifactPanelProps, type ArtifactTreeNode, type ArtifactViewer, type ArtifactViewers, AspectRatio, type AspectRatioProps, Attachment, type AttachmentItemData, type AttachmentProps, Audio, type AudioProps, Avatar, type AvatarProps, BackTop, type BackTopProps, Badge, type BadgeProps, type BadgeVariant, BarChart, type BarChartProps, Breadcrumb, type BreadcrumbItemData, type BreadcrumbProps, Bubble, BubbleChart, type BubbleChartProps, type BubbleProps, type BubbleVariant, Button, ButtonGroup, type ButtonGroupProps, type ButtonProps, type ButtonSize, type ButtonVariant, Calendar, type CalendarProps, Card, type CardProps, Carousel, type CarouselImage, type CarouselItemData, type CarouselProps, Cascader, type CascaderOption, type CascaderProps, type ChartSelectPayload, ChatInput, type ChatInputProps, ChatMessage, type ChatMessageActionItem, type ChatMessageAgent, type ChatMessagePart, type ChatMessageProps, type ChatMessageStatus, ChatPage, type ChatPageArtifact, type ChatPageBrand, type ChatPageMenuItem, type ChatPageProps, Checkbox, type CheckboxProps, Citation, type CitationItem, type CitationProps, CodeBlock, type CodeBlockProps, Collapsible, type CollapsibleProps, ColorPicker, type ColorPickerProps, ColumnChart, type ColumnChartProps, Combobox, type ComboboxOption, type ComboboxProps, Command, type CommandGroupData, type CommandItemData, type CommandProps, ComposedChart, type ComposedChartProps, type ComposedSeriesItem, Composer, type ComposerContextItem, type ComposerContextSource, type ComposerModelOption, type ComposerProps, Container, type ContainerProps, type ContainerSize, Content, type ContentProps, ContextMenu, type ContextMenuItemData, type ContextMenuProps, type ConversationItemData, ConversationList, type ConversationListProps, DataTable, type DataTableColumn, type DataTablePagination, type DataTableProps, type DataTableSort, type DataTableSortOrder, DatePicker, type DatePickerPreset, type DatePickerPresetKey, type DatePickerProps, type DatePickerRangeProps, type DatePickerSingleProps, type DateRangeValue, Descriptions, type DescriptionsItemData, type DescriptionsProps, Dialog, type DialogProps, DiffViewer, type DiffViewerProps, type DocumentPageData, DocumentPreview, type DocumentPreviewProps, DonutChart, type DonutChartProps, Drawer, type DrawerPlacement, type DrawerProps, DropdownMenu, type DropdownMenuItemData, type DropdownMenuProps, EChartBase, type EChartBaseProps, Empty, type EmptyProps, Field, type FieldProps, type FieldRule, FilePreview, type FilePreviewKind, type FilePreviewProps, Flex, type FlexProps, Footer, type FooterProps, Form, type FormContextValue, type FormProps, FunnelChart, type FunnelChartProps, Gallery, type GalleryItemData, type GalleryProps, GaugeChart, type GaugeChartProps, Grid, type GridProps, Header, type HeaderBrandPosition, type HeaderDropdown, type HeaderDropdownItem, type HeaderLocale, type HeaderMenuItem, type HeaderProps, type HeaderTheme, type HeaderUser, type HeaderUserItem, Heatmap, type HeatmapProps, HoverCard, type HoverCardProps, ICONS, Icon, type IconProps, type IconSize, Image, ImageLightbox, type ImageLightboxProps, type ImageProps, ImageViewer, type ImageViewerProps, Input, InputGroup, type InputGroupProps, InputOTP, type InputOTPProps, type InputProps, Item, type ItemProps, JSONViewer, type JSONViewerProps, Kbd, type KbdProps, Label, type LabelProps, Layout, type LayoutProps, LineChart, type LineChartProps, Link, type LinkProps, List, type ListItemData, type ListProps, LoadingOverlay, type LoadingOverlayProps, MapChart, type MapChartProps, type MentionOption, Mentions, type MentionsProps, Menu, type MenuItem, type MenuProps, Menubar, type MenubarLeafItem, type MenubarMenuData, type MenubarProps, Message, MessageList, type MessageListItem, type MessageListProps, type MessageProps, MetricCard, type MetricCardProps, NavigationMenu, type NavigationMenuChildItem, type NavigationMenuItemData, type NavigationMenuProps, Notification, type NotificationProps, NumberInput, type NumberInputProps, Page, type PageProps, Pagination, type PaginationProps, PieChart, type PieChartProps, Popconfirm, type PopconfirmProps, Popover, type PopoverProps, Progress, type ProgressProps, Prompt, type PromptProps, QRCode, type QRCodeProps, RadarChart, type RadarChartProps, RadioGroup, type RadioGroupOption, type RadioGroupProps, RailTooltip, Rate, type RateProps, Resizable, type ResizablePanelData, type ResizableProps, Result, type ResultProps, type ResultStatus, RichText, type RichTextProps, SankeyChart, type SankeyChartProps, ScatterChart, type ScatterChartProps, ScrollArea, type ScrollAreaProps, Segmented, type SegmentedOption, type SegmentedProps, Select, type SelectOption, type SelectProps, Sender, type SenderProps, Separator, type SeparatorProps, Sheet, type SheetProps, type SheetSide, Sidebar, type SidebarBrand, type SidebarNavItem, type SidebarProps, Sider, type SiderProps, Skeleton, type SkeletonProps, type SkeletonShape, Slider, type SliderProps, Sonner, type SonnerProps, Space, type SpaceProps, Spinner, type SpinnerProps, type SpinnerSize, Statistic, type StatisticProps, Status, type StatusProps, type StatusType, type StepItemData, type StepStatus, Steps, type StepsProps, StreamingText, type StreamingTextProps, Suggestion, type SuggestionItem, type SuggestionProps, Switch, type SwitchProps, type TabItem, Table, type TableColumn, type TablePagination, type TablePaginationInfo, type TableProps, Tabs, type TabsProps, Tag, type TagColor, type TagProps, Text, type TextProps, type TextType, Textarea, type TextareaProps, Thinking, type ThinkingProps, type ThinkingStatus, TimePicker, type TimePickerProps, Timeline, type TimelineItemData, type TimelineProps, Toggle, ToggleGroup, type ToggleGroupOption, type ToggleGroupProps, type ToggleProps, ToolCall, type ToolCallProps, type ToolCallStatus, Tooltip, type TooltipProps, Tour, type TourProps, type TourStep, Transfer, type TransferOption, type TransferProps, Tree, TreeChart, type TreeChartProps, type TreeNodeData, type TreeProps, TreeSelect, type TreeSelectOption, type TreeSelectProps, Typography, type TypographyProps, type TypographyVariant, Upload, type UploadFileMeta, type UploadProps, Video, type VideoProps, Watermark, type WatermarkProps, Welcome, type WelcomePromptItem, type WelcomeProps, buildArtifactTree, builtinComponents, createComponentRegistry, diffLines, inferKind, normalizeIconName, registerBuiltinComponents, useFormContext, useSidebarDrawer };
|
|
4474
|
+
export { Accordion, type AccordionItemData, type AccordionProps, Affix, type AffixProps, AgentStatus, type AgentStatusProps, type AgentStatusType, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, Anchor, type AnchorItemData, type AnchorProps, AreaChart, type AreaChartProps, ArtifactPanel, type ArtifactPanelProps, type ArtifactTreeNode, type ArtifactViewer, type ArtifactViewers, AspectRatio, type AspectRatioProps, Attachment, type AttachmentItemData, type AttachmentProps, Audio, type AudioProps, Avatar, type AvatarProps, BackTop, type BackTopProps, Badge, type BadgeProps, type BadgeVariant, BarChart, type BarChartProps, Breadcrumb, type BreadcrumbItemData, type BreadcrumbProps, Bubble, BubbleChart, type BubbleChartProps, type BubbleProps, type BubbleVariant, Button, ButtonGroup, type ButtonGroupProps, type ButtonProps, type ButtonSize, type ButtonVariant, Calendar, type CalendarProps, Card, type CardProps, Carousel, type CarouselImage, type CarouselItemData, type CarouselProps, Cascader, type CascaderOption, type CascaderProps, type ChartSelectPayload, ChatInput, type ChatInputProps, ChatMessage, type ChatMessageActionItem, type ChatMessageAgent, type ChatMessagePart, type ChatMessageProps, type ChatMessageStatus, ChatPage, type ChatPageArtifact, type ChatPageBrand, type ChatPageMenuItem, type ChatPageProps, Checkbox, type CheckboxProps, Citation, type CitationItem, type CitationProps, CodeBlock, type CodeBlockProps, Collapsible, type CollapsibleProps, ColorPicker, type ColorPickerProps, ColumnChart, type ColumnChartProps, Combobox, type ComboboxOption, type ComboboxProps, Command, type CommandGroupData, type CommandItemData, type CommandProps, ComposedChart, type ComposedChartProps, type ComposedSeriesItem, Composer, type ComposerContextItem, type ComposerContextSource, type ComposerModelOption, type ComposerProps, Container, type ContainerProps, type ContainerSize, Content, type ContentProps, ContextMenu, type ContextMenuItemData, type ContextMenuProps, type ConversationItemData, ConversationList, type ConversationListProps, type ConversationRailItem, DataTable, type DataTableColumn, type DataTablePagination, type DataTableProps, type DataTableSort, type DataTableSortOrder, DatePicker, type DatePickerPreset, type DatePickerPresetKey, type DatePickerProps, type DatePickerRangeProps, type DatePickerSingleProps, type DateRangeValue, Descriptions, type DescriptionsItemData, type DescriptionsProps, Dialog, type DialogProps, DiffViewer, type DiffViewerProps, type DocumentPageData, DocumentPreview, type DocumentPreviewProps, DonutChart, type DonutChartProps, Drawer, type DrawerPlacement, type DrawerProps, DropdownMenu, type DropdownMenuItemData, type DropdownMenuProps, EChartBase, type EChartBaseProps, Empty, type EmptyProps, Field, type FieldProps, type FieldRule, FilePreview, type FilePreviewKind, type FilePreviewProps, Flex, type FlexProps, Footer, type FooterProps, Form, type FormContextValue, type FormProps, FunnelChart, type FunnelChartProps, Gallery, type GalleryItemData, type GalleryProps, GaugeChart, type GaugeChartProps, Grid, type GridProps, Header, type HeaderBrandPosition, type HeaderDropdown, type HeaderDropdownItem, type HeaderLocale, type HeaderMenuItem, type HeaderProps, type HeaderTheme, type HeaderUser, type HeaderUserItem, Heatmap, type HeatmapProps, HoverCard, type HoverCardProps, ICONS, Icon, type IconProps, type IconSize, Image, ImageLightbox, type ImageLightboxProps, type ImageProps, ImageViewer, type ImageViewerProps, Input, InputGroup, type InputGroupProps, InputOTP, type InputOTPProps, type InputProps, Item, type ItemProps, JSONViewer, type JSONViewerProps, Kbd, type KbdProps, Label, type LabelProps, Layout, type LayoutProps, LineChart, type LineChartProps, Link, type LinkProps, List, type ListItemData, type ListProps, LoadingOverlay, type LoadingOverlayProps, MapChart, type MapChartProps, type MentionOption, Mentions, type MentionsProps, Menu, type MenuItem, type MenuProps, Menubar, type MenubarLeafItem, type MenubarMenuData, type MenubarProps, Message, MessageList, type MessageListItem, type MessageListProps, type MessageProps, MetricCard, type MetricCardProps, NavigationMenu, type NavigationMenuChildItem, type NavigationMenuItemData, type NavigationMenuProps, Notification, type NotificationProps, NumberInput, type NumberInputProps, Page, type PageProps, Pagination, type PaginationProps, PieChart, type PieChartProps, Popconfirm, type PopconfirmProps, Popover, type PopoverProps, Progress, type ProgressProps, Prompt, type PromptProps, QRCode, type QRCodeProps, RadarChart, type RadarChartProps, RadioGroup, type RadioGroupOption, type RadioGroupProps, RailTooltip, Rate, type RateProps, Resizable, type ResizablePanelData, type ResizableProps, Result, type ResultProps, type ResultStatus, RichText, type RichTextProps, SankeyChart, type SankeyChartProps, ScatterChart, type ScatterChartProps, ScrollArea, type ScrollAreaProps, Segmented, type SegmentedOption, type SegmentedProps, Select, type SelectOption, type SelectProps, Sender, type SenderProps, Separator, type SeparatorProps, Sheet, type SheetProps, type SheetSide, Sidebar, type SidebarBrand, type SidebarNavItem, type SidebarProps, Sider, type SiderProps, Skeleton, type SkeletonProps, type SkeletonShape, Slider, type SliderProps, Sonner, type SonnerProps, Space, type SpaceProps, Spinner, type SpinnerProps, type SpinnerSize, Statistic, type StatisticProps, Status, type StatusProps, type StatusType, type StepItemData, type StepStatus, Steps, type StepsProps, StreamingText, type StreamingTextProps, Suggestion, type SuggestionItem, type SuggestionProps, Switch, type SwitchProps, type TabItem, Table, type TableColumn, type TablePagination, type TablePaginationInfo, type TableProps, Tabs, type TabsProps, Tag, type TagColor, type TagProps, Text, type TextProps, type TextType, Textarea, type TextareaProps, Thinking, type ThinkingProps, type ThinkingStatus, TimePicker, type TimePickerProps, Timeline, type TimelineItemData, type TimelineProps, Toggle, ToggleGroup, type ToggleGroupOption, type ToggleGroupProps, type ToggleProps, ToolCall, type ToolCallProps, type ToolCallStatus, Tooltip, type TooltipProps, Tour, type TourProps, type TourStep, Transfer, type TransferOption, type TransferProps, Tree, TreeChart, type TreeChartProps, type TreeNodeData, type TreeProps, TreeSelect, type TreeSelectOption, type TreeSelectProps, Typography, type TypographyProps, type TypographyVariant, Upload, type UploadFileMeta, type UploadProps, Video, type VideoProps, Watermark, type WatermarkProps, Welcome, type WelcomePromptItem, type WelcomeProps, buildArtifactTree, builtinComponents, createComponentRegistry, diffLines, inferKind, normalizeIconName, registerBuiltinComponents, useFormContext, useSidebarDrawer };
|
|
@@ -3381,6 +3381,20 @@ interface ChatPageMenuItem {
|
|
|
3381
3381
|
/** 图标名(Icon 白名单) */
|
|
3382
3382
|
icon?: string;
|
|
3383
3383
|
}
|
|
3384
|
+
/** 对话图标栏项:点击 toggle 展示当前对话的附加内容(产物 / 执行步骤等) */
|
|
3385
|
+
interface ConversationRailItem {
|
|
3386
|
+
key: string;
|
|
3387
|
+
/** 提示文案(hover tooltip) */
|
|
3388
|
+
label?: string;
|
|
3389
|
+
/** 图标名(Icon 白名单) */
|
|
3390
|
+
icon?: string;
|
|
3391
|
+
/** 呈现形态:popover(图标栏旁悬浮弹框,缺省)/ panel(产物栏式右侧固定宽栏) */
|
|
3392
|
+
display?: 'panel' | 'popover';
|
|
3393
|
+
/** 附加内容(React 元素或 DslNode;缺省时点击仅触发状态事件,不渲染内容层) */
|
|
3394
|
+
content?: DslNode | ReactNode;
|
|
3395
|
+
/** 隐藏该项(如按当前会话有无对应内容动态显隐);隐藏时激活态一并失效 */
|
|
3396
|
+
hidden?: boolean;
|
|
3397
|
+
}
|
|
3384
3398
|
/** 品牌区(展开菜单区标题 / 版本) */
|
|
3385
3399
|
interface ChatPageBrand {
|
|
3386
3400
|
title: string;
|
|
@@ -3436,9 +3450,8 @@ interface ChatPageProps {
|
|
|
3436
3450
|
/** 对话区头部标题(通常为当前会话标题) */
|
|
3437
3451
|
conversationTitle?: string;
|
|
3438
3452
|
/**
|
|
3439
|
-
* 对话区头部右侧自定义操作(图标 +
|
|
3440
|
-
*
|
|
3441
|
-
* 受控 artifactOpen + onArtifactOpenChange 自行接线)
|
|
3453
|
+
* 对话区头部右侧自定义操作(图标 + 提示);提供才渲染(未配置时
|
|
3454
|
+
* header 不渲染任何按钮),点击经 onConversationHeaderAction 传出
|
|
3442
3455
|
*/
|
|
3443
3456
|
conversationHeaderAction?: {
|
|
3444
3457
|
icon?: string;
|
|
@@ -3447,6 +3460,17 @@ interface ChatPageProps {
|
|
|
3447
3460
|
};
|
|
3448
3461
|
/** 对话区头部右侧自定义操作点击事件 */
|
|
3449
3462
|
onConversationHeaderAction?: () => void;
|
|
3463
|
+
/**
|
|
3464
|
+
* 对话图标栏附加项(header 下方、对话区右缘纵向排列,产物内置项
|
|
3465
|
+
* 之后按序展示);点击 toggle 展示对应附加内容
|
|
3466
|
+
*/
|
|
3467
|
+
conversationRailItems?: ConversationRailItem[];
|
|
3468
|
+
/** 隐藏图标栏内置产物入口(缺省 false:产物开关为图标栏首项) */
|
|
3469
|
+
hideArtifactRailItem?: boolean;
|
|
3470
|
+
/** 图标栏激活项 key(提供即受控,配合 onConversationRailChange 闭环;null 为全部收起) */
|
|
3471
|
+
activeConversationRailKey?: string | null;
|
|
3472
|
+
/** 图标栏激活项变化事件,传出 key 或 null */
|
|
3473
|
+
onConversationRailChange?: (key: string | null) => void;
|
|
3450
3474
|
messages?: MessageListItem[];
|
|
3451
3475
|
/** 发送中(禁用 Composer 发送钮,由调用方完成后复位) */
|
|
3452
3476
|
sending?: boolean;
|
|
@@ -3526,13 +3550,16 @@ interface ChatPageProps {
|
|
|
3526
3550
|
* 行内提及(contexts:输入触发符在光标处弹菜单,选中替换为行内提及块,
|
|
3527
3551
|
* 退格整体删除;受控 contextItems)、附件
|
|
3528
3552
|
* 入口(onAttachFiles + 受控 attachments)与 composerFooter /
|
|
3529
|
-
* composerBottom
|
|
3553
|
+
* composerBottom 槽位)、对话图标栏(header 下方、对话区右缘纵向
|
|
3554
|
+
* 图标列:内置产物入口 + conversationRailItems 附加项,点击 toggle
|
|
3555
|
+
* 展示附加内容——popover 悬浮弹框或 panel 右侧分栏,与产物区互斥)、
|
|
3556
|
+
* 最右产物区(ArtifactPanel:内建产物预览、
|
|
3530
3557
|
* 目录树与下载,可显隐;展示时经 Resizable 拖拽调节与对话区的宽度)。
|
|
3531
3558
|
* 数据与行为全部经 props / events 进出,
|
|
3532
|
-
*
|
|
3533
|
-
*
|
|
3559
|
+
* 本组件不持有业务状态(产物区开关、图标栏激活项与分区折叠缺省非受控,
|
|
3560
|
+
* 均可经受控 prop + change 事件闭环)。
|
|
3534
3561
|
*/
|
|
3535
|
-
declare function ChatPage({ brand, menuItems, activeMenuKey, railItems, railFooterItems, menuAction, onMenuSelect, onMenuAction, conversationSectionTitle, conversationSectionCollapsed, defaultConversationSectionCollapsed, onConversationSectionToggle, conversations, activeConversationId, onSelectConversation, onDeleteConversation, moreLabel, onMore, footerSectionTitle, footerItems, footerSectionCollapsed, defaultFooterSectionCollapsed, onFooterSectionToggle, conversationTitle, conversationHeaderAction, onConversationHeaderAction, messages, sending, composerPlaceholder, welcome, onSend, onMessageAction, models, model, onModelChange, contexts, contextItems, onContextItemsChange, attachments, onAttachFiles, onRemoveAttachment, onRetryAttachment, composerFooter, composerBottom, artifactTitle, artifacts, activeArtifactId, onSelectArtifact, artifactEmptyText, safeRegistry, user, artifactViewers, onDownloadArtifact, artifactOpen, defaultArtifactOpen, onArtifactOpenChange, className, style, }: ChatPageProps): React.JSX.Element;
|
|
3562
|
+
declare function ChatPage({ brand, menuItems, activeMenuKey, railItems, railFooterItems, menuAction, onMenuSelect, onMenuAction, conversationSectionTitle, conversationSectionCollapsed, defaultConversationSectionCollapsed, onConversationSectionToggle, conversations, activeConversationId, onSelectConversation, onDeleteConversation, moreLabel, onMore, footerSectionTitle, footerItems, footerSectionCollapsed, defaultFooterSectionCollapsed, onFooterSectionToggle, conversationTitle, conversationHeaderAction, onConversationHeaderAction, conversationRailItems, hideArtifactRailItem, activeConversationRailKey, onConversationRailChange, messages, sending, composerPlaceholder, welcome, onSend, onMessageAction, models, model, onModelChange, contexts, contextItems, onContextItemsChange, attachments, onAttachFiles, onRemoveAttachment, onRetryAttachment, composerFooter, composerBottom, artifactTitle, artifacts, activeArtifactId, onSelectArtifact, artifactEmptyText, safeRegistry, user, artifactViewers, onDownloadArtifact, artifactOpen, defaultArtifactOpen, onArtifactOpenChange, className, style, }: ChatPageProps): React.JSX.Element;
|
|
3536
3563
|
|
|
3537
3564
|
/** 引用来源项 */
|
|
3538
3565
|
interface CitationItem {
|
|
@@ -4444,4 +4471,4 @@ interface FormContextValue {
|
|
|
4444
4471
|
/** 在字段组件内探测 Form 上下文;不在 Form 内时返回 null */
|
|
4445
4472
|
declare function useFormContext(): FormContextValue | null;
|
|
4446
4473
|
|
|
4447
|
-
export { Accordion, type AccordionItemData, type AccordionProps, Affix, type AffixProps, AgentStatus, type AgentStatusProps, type AgentStatusType, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, Anchor, type AnchorItemData, type AnchorProps, AreaChart, type AreaChartProps, ArtifactPanel, type ArtifactPanelProps, type ArtifactTreeNode, type ArtifactViewer, type ArtifactViewers, AspectRatio, type AspectRatioProps, Attachment, type AttachmentItemData, type AttachmentProps, Audio, type AudioProps, Avatar, type AvatarProps, BackTop, type BackTopProps, Badge, type BadgeProps, type BadgeVariant, BarChart, type BarChartProps, Breadcrumb, type BreadcrumbItemData, type BreadcrumbProps, Bubble, BubbleChart, type BubbleChartProps, type BubbleProps, type BubbleVariant, Button, ButtonGroup, type ButtonGroupProps, type ButtonProps, type ButtonSize, type ButtonVariant, Calendar, type CalendarProps, Card, type CardProps, Carousel, type CarouselImage, type CarouselItemData, type CarouselProps, Cascader, type CascaderOption, type CascaderProps, type ChartSelectPayload, ChatInput, type ChatInputProps, ChatMessage, type ChatMessageActionItem, type ChatMessageAgent, type ChatMessagePart, type ChatMessageProps, type ChatMessageStatus, ChatPage, type ChatPageArtifact, type ChatPageBrand, type ChatPageMenuItem, type ChatPageProps, Checkbox, type CheckboxProps, Citation, type CitationItem, type CitationProps, CodeBlock, type CodeBlockProps, Collapsible, type CollapsibleProps, ColorPicker, type ColorPickerProps, ColumnChart, type ColumnChartProps, Combobox, type ComboboxOption, type ComboboxProps, Command, type CommandGroupData, type CommandItemData, type CommandProps, ComposedChart, type ComposedChartProps, type ComposedSeriesItem, Composer, type ComposerContextItem, type ComposerContextSource, type ComposerModelOption, type ComposerProps, Container, type ContainerProps, type ContainerSize, Content, type ContentProps, ContextMenu, type ContextMenuItemData, type ContextMenuProps, type ConversationItemData, ConversationList, type ConversationListProps, DataTable, type DataTableColumn, type DataTablePagination, type DataTableProps, type DataTableSort, type DataTableSortOrder, DatePicker, type DatePickerPreset, type DatePickerPresetKey, type DatePickerProps, type DatePickerRangeProps, type DatePickerSingleProps, type DateRangeValue, Descriptions, type DescriptionsItemData, type DescriptionsProps, Dialog, type DialogProps, DiffViewer, type DiffViewerProps, type DocumentPageData, DocumentPreview, type DocumentPreviewProps, DonutChart, type DonutChartProps, Drawer, type DrawerPlacement, type DrawerProps, DropdownMenu, type DropdownMenuItemData, type DropdownMenuProps, EChartBase, type EChartBaseProps, Empty, type EmptyProps, Field, type FieldProps, type FieldRule, FilePreview, type FilePreviewKind, type FilePreviewProps, Flex, type FlexProps, Footer, type FooterProps, Form, type FormContextValue, type FormProps, FunnelChart, type FunnelChartProps, Gallery, type GalleryItemData, type GalleryProps, GaugeChart, type GaugeChartProps, Grid, type GridProps, Header, type HeaderBrandPosition, type HeaderDropdown, type HeaderDropdownItem, type HeaderLocale, type HeaderMenuItem, type HeaderProps, type HeaderTheme, type HeaderUser, type HeaderUserItem, Heatmap, type HeatmapProps, HoverCard, type HoverCardProps, ICONS, Icon, type IconProps, type IconSize, Image, ImageLightbox, type ImageLightboxProps, type ImageProps, ImageViewer, type ImageViewerProps, Input, InputGroup, type InputGroupProps, InputOTP, type InputOTPProps, type InputProps, Item, type ItemProps, JSONViewer, type JSONViewerProps, Kbd, type KbdProps, Label, type LabelProps, Layout, type LayoutProps, LineChart, type LineChartProps, Link, type LinkProps, List, type ListItemData, type ListProps, LoadingOverlay, type LoadingOverlayProps, MapChart, type MapChartProps, type MentionOption, Mentions, type MentionsProps, Menu, type MenuItem, type MenuProps, Menubar, type MenubarLeafItem, type MenubarMenuData, type MenubarProps, Message, MessageList, type MessageListItem, type MessageListProps, type MessageProps, MetricCard, type MetricCardProps, NavigationMenu, type NavigationMenuChildItem, type NavigationMenuItemData, type NavigationMenuProps, Notification, type NotificationProps, NumberInput, type NumberInputProps, Page, type PageProps, Pagination, type PaginationProps, PieChart, type PieChartProps, Popconfirm, type PopconfirmProps, Popover, type PopoverProps, Progress, type ProgressProps, Prompt, type PromptProps, QRCode, type QRCodeProps, RadarChart, type RadarChartProps, RadioGroup, type RadioGroupOption, type RadioGroupProps, RailTooltip, Rate, type RateProps, Resizable, type ResizablePanelData, type ResizableProps, Result, type ResultProps, type ResultStatus, RichText, type RichTextProps, SankeyChart, type SankeyChartProps, ScatterChart, type ScatterChartProps, ScrollArea, type ScrollAreaProps, Segmented, type SegmentedOption, type SegmentedProps, Select, type SelectOption, type SelectProps, Sender, type SenderProps, Separator, type SeparatorProps, Sheet, type SheetProps, type SheetSide, Sidebar, type SidebarBrand, type SidebarNavItem, type SidebarProps, Sider, type SiderProps, Skeleton, type SkeletonProps, type SkeletonShape, Slider, type SliderProps, Sonner, type SonnerProps, Space, type SpaceProps, Spinner, type SpinnerProps, type SpinnerSize, Statistic, type StatisticProps, Status, type StatusProps, type StatusType, type StepItemData, type StepStatus, Steps, type StepsProps, StreamingText, type StreamingTextProps, Suggestion, type SuggestionItem, type SuggestionProps, Switch, type SwitchProps, type TabItem, Table, type TableColumn, type TablePagination, type TablePaginationInfo, type TableProps, Tabs, type TabsProps, Tag, type TagColor, type TagProps, Text, type TextProps, type TextType, Textarea, type TextareaProps, Thinking, type ThinkingProps, type ThinkingStatus, TimePicker, type TimePickerProps, Timeline, type TimelineItemData, type TimelineProps, Toggle, ToggleGroup, type ToggleGroupOption, type ToggleGroupProps, type ToggleProps, ToolCall, type ToolCallProps, type ToolCallStatus, Tooltip, type TooltipProps, Tour, type TourProps, type TourStep, Transfer, type TransferOption, type TransferProps, Tree, TreeChart, type TreeChartProps, type TreeNodeData, type TreeProps, TreeSelect, type TreeSelectOption, type TreeSelectProps, Typography, type TypographyProps, type TypographyVariant, Upload, type UploadFileMeta, type UploadProps, Video, type VideoProps, Watermark, type WatermarkProps, Welcome, type WelcomePromptItem, type WelcomeProps, buildArtifactTree, builtinComponents, createComponentRegistry, diffLines, inferKind, normalizeIconName, registerBuiltinComponents, useFormContext, useSidebarDrawer };
|
|
4474
|
+
export { Accordion, type AccordionItemData, type AccordionProps, Affix, type AffixProps, AgentStatus, type AgentStatusProps, type AgentStatusType, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, Anchor, type AnchorItemData, type AnchorProps, AreaChart, type AreaChartProps, ArtifactPanel, type ArtifactPanelProps, type ArtifactTreeNode, type ArtifactViewer, type ArtifactViewers, AspectRatio, type AspectRatioProps, Attachment, type AttachmentItemData, type AttachmentProps, Audio, type AudioProps, Avatar, type AvatarProps, BackTop, type BackTopProps, Badge, type BadgeProps, type BadgeVariant, BarChart, type BarChartProps, Breadcrumb, type BreadcrumbItemData, type BreadcrumbProps, Bubble, BubbleChart, type BubbleChartProps, type BubbleProps, type BubbleVariant, Button, ButtonGroup, type ButtonGroupProps, type ButtonProps, type ButtonSize, type ButtonVariant, Calendar, type CalendarProps, Card, type CardProps, Carousel, type CarouselImage, type CarouselItemData, type CarouselProps, Cascader, type CascaderOption, type CascaderProps, type ChartSelectPayload, ChatInput, type ChatInputProps, ChatMessage, type ChatMessageActionItem, type ChatMessageAgent, type ChatMessagePart, type ChatMessageProps, type ChatMessageStatus, ChatPage, type ChatPageArtifact, type ChatPageBrand, type ChatPageMenuItem, type ChatPageProps, Checkbox, type CheckboxProps, Citation, type CitationItem, type CitationProps, CodeBlock, type CodeBlockProps, Collapsible, type CollapsibleProps, ColorPicker, type ColorPickerProps, ColumnChart, type ColumnChartProps, Combobox, type ComboboxOption, type ComboboxProps, Command, type CommandGroupData, type CommandItemData, type CommandProps, ComposedChart, type ComposedChartProps, type ComposedSeriesItem, Composer, type ComposerContextItem, type ComposerContextSource, type ComposerModelOption, type ComposerProps, Container, type ContainerProps, type ContainerSize, Content, type ContentProps, ContextMenu, type ContextMenuItemData, type ContextMenuProps, type ConversationItemData, ConversationList, type ConversationListProps, type ConversationRailItem, DataTable, type DataTableColumn, type DataTablePagination, type DataTableProps, type DataTableSort, type DataTableSortOrder, DatePicker, type DatePickerPreset, type DatePickerPresetKey, type DatePickerProps, type DatePickerRangeProps, type DatePickerSingleProps, type DateRangeValue, Descriptions, type DescriptionsItemData, type DescriptionsProps, Dialog, type DialogProps, DiffViewer, type DiffViewerProps, type DocumentPageData, DocumentPreview, type DocumentPreviewProps, DonutChart, type DonutChartProps, Drawer, type DrawerPlacement, type DrawerProps, DropdownMenu, type DropdownMenuItemData, type DropdownMenuProps, EChartBase, type EChartBaseProps, Empty, type EmptyProps, Field, type FieldProps, type FieldRule, FilePreview, type FilePreviewKind, type FilePreviewProps, Flex, type FlexProps, Footer, type FooterProps, Form, type FormContextValue, type FormProps, FunnelChart, type FunnelChartProps, Gallery, type GalleryItemData, type GalleryProps, GaugeChart, type GaugeChartProps, Grid, type GridProps, Header, type HeaderBrandPosition, type HeaderDropdown, type HeaderDropdownItem, type HeaderLocale, type HeaderMenuItem, type HeaderProps, type HeaderTheme, type HeaderUser, type HeaderUserItem, Heatmap, type HeatmapProps, HoverCard, type HoverCardProps, ICONS, Icon, type IconProps, type IconSize, Image, ImageLightbox, type ImageLightboxProps, type ImageProps, ImageViewer, type ImageViewerProps, Input, InputGroup, type InputGroupProps, InputOTP, type InputOTPProps, type InputProps, Item, type ItemProps, JSONViewer, type JSONViewerProps, Kbd, type KbdProps, Label, type LabelProps, Layout, type LayoutProps, LineChart, type LineChartProps, Link, type LinkProps, List, type ListItemData, type ListProps, LoadingOverlay, type LoadingOverlayProps, MapChart, type MapChartProps, type MentionOption, Mentions, type MentionsProps, Menu, type MenuItem, type MenuProps, Menubar, type MenubarLeafItem, type MenubarMenuData, type MenubarProps, Message, MessageList, type MessageListItem, type MessageListProps, type MessageProps, MetricCard, type MetricCardProps, NavigationMenu, type NavigationMenuChildItem, type NavigationMenuItemData, type NavigationMenuProps, Notification, type NotificationProps, NumberInput, type NumberInputProps, Page, type PageProps, Pagination, type PaginationProps, PieChart, type PieChartProps, Popconfirm, type PopconfirmProps, Popover, type PopoverProps, Progress, type ProgressProps, Prompt, type PromptProps, QRCode, type QRCodeProps, RadarChart, type RadarChartProps, RadioGroup, type RadioGroupOption, type RadioGroupProps, RailTooltip, Rate, type RateProps, Resizable, type ResizablePanelData, type ResizableProps, Result, type ResultProps, type ResultStatus, RichText, type RichTextProps, SankeyChart, type SankeyChartProps, ScatterChart, type ScatterChartProps, ScrollArea, type ScrollAreaProps, Segmented, type SegmentedOption, type SegmentedProps, Select, type SelectOption, type SelectProps, Sender, type SenderProps, Separator, type SeparatorProps, Sheet, type SheetProps, type SheetSide, Sidebar, type SidebarBrand, type SidebarNavItem, type SidebarProps, Sider, type SiderProps, Skeleton, type SkeletonProps, type SkeletonShape, Slider, type SliderProps, Sonner, type SonnerProps, Space, type SpaceProps, Spinner, type SpinnerProps, type SpinnerSize, Statistic, type StatisticProps, Status, type StatusProps, type StatusType, type StepItemData, type StepStatus, Steps, type StepsProps, StreamingText, type StreamingTextProps, Suggestion, type SuggestionItem, type SuggestionProps, Switch, type SwitchProps, type TabItem, Table, type TableColumn, type TablePagination, type TablePaginationInfo, type TableProps, Tabs, type TabsProps, Tag, type TagColor, type TagProps, Text, type TextProps, type TextType, Textarea, type TextareaProps, Thinking, type ThinkingProps, type ThinkingStatus, TimePicker, type TimePickerProps, Timeline, type TimelineItemData, type TimelineProps, Toggle, ToggleGroup, type ToggleGroupOption, type ToggleGroupProps, type ToggleProps, ToolCall, type ToolCallProps, type ToolCallStatus, Tooltip, type TooltipProps, Tour, type TourProps, type TourStep, Transfer, type TransferOption, type TransferProps, Tree, TreeChart, type TreeChartProps, type TreeNodeData, type TreeProps, TreeSelect, type TreeSelectOption, type TreeSelectProps, Typography, type TypographyProps, type TypographyVariant, Upload, type UploadFileMeta, type UploadProps, Video, type VideoProps, Watermark, type WatermarkProps, Welcome, type WelcomePromptItem, type WelcomeProps, buildArtifactTree, builtinComponents, createComponentRegistry, diffLines, inferKind, normalizeIconName, registerBuiltinComponents, useFormContext, useSidebarDrawer };
|
package/dist/components/index.js
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -13279,6 +13279,10 @@ function ChatPage({
|
|
|
13279
13279
|
conversationTitle,
|
|
13280
13280
|
conversationHeaderAction,
|
|
13281
13281
|
onConversationHeaderAction,
|
|
13282
|
+
conversationRailItems = [],
|
|
13283
|
+
hideArtifactRailItem = false,
|
|
13284
|
+
activeConversationRailKey,
|
|
13285
|
+
onConversationRailChange,
|
|
13282
13286
|
messages = [],
|
|
13283
13287
|
sending,
|
|
13284
13288
|
composerPlaceholder,
|
|
@@ -13319,6 +13323,51 @@ function ChatPage({
|
|
|
13319
13323
|
if (!controlled) setInnerOpen(next);
|
|
13320
13324
|
onArtifactOpenChange?.(next);
|
|
13321
13325
|
};
|
|
13326
|
+
const railControlled = activeConversationRailKey !== void 0;
|
|
13327
|
+
const [activeRailInner, setActiveRailInner] = (0, import_react67.useState)(null);
|
|
13328
|
+
const activeRailKey = railControlled ? activeConversationRailKey : activeRailInner;
|
|
13329
|
+
const setActiveRailKey = (next) => {
|
|
13330
|
+
if (!railControlled) setActiveRailInner(next);
|
|
13331
|
+
onConversationRailChange?.(next);
|
|
13332
|
+
};
|
|
13333
|
+
const visibleRailItems = conversationRailItems.filter((item) => item.hidden !== true);
|
|
13334
|
+
const activeRailItem = visibleRailItems.find(
|
|
13335
|
+
(item) => item.key === activeRailKey
|
|
13336
|
+
);
|
|
13337
|
+
const activePanelItem = activeRailItem?.display === "panel" && activeRailItem.content !== void 0 ? activeRailItem : void 0;
|
|
13338
|
+
const activePopoverItem = activeRailItem !== void 0 && activeRailItem.display !== "panel" && activeRailItem.content !== void 0 ? activeRailItem : void 0;
|
|
13339
|
+
const toggleRailItem = (item) => {
|
|
13340
|
+
const next = activeRailKey === item.key ? null : item.key;
|
|
13341
|
+
if (next !== null && item.display === "panel") {
|
|
13342
|
+
setOpen(false);
|
|
13343
|
+
}
|
|
13344
|
+
setActiveRailKey(next);
|
|
13345
|
+
};
|
|
13346
|
+
const toggleArtifact = () => {
|
|
13347
|
+
if (!open && activePanelItem) {
|
|
13348
|
+
setActiveRailKey(null);
|
|
13349
|
+
}
|
|
13350
|
+
setOpen(!open);
|
|
13351
|
+
};
|
|
13352
|
+
(0, import_react67.useEffect)(() => {
|
|
13353
|
+
if (!activePopoverItem) return;
|
|
13354
|
+
const onKeyDown = (event) => {
|
|
13355
|
+
if (event.key === "Escape") setActiveRailKey(null);
|
|
13356
|
+
};
|
|
13357
|
+
const onPointerDown = (event) => {
|
|
13358
|
+
const target = event.target;
|
|
13359
|
+
if (target.closest("[data-slot=chat-page-rail-popover]") || target.closest("[data-slot=chat-page-conv-rail]")) {
|
|
13360
|
+
return;
|
|
13361
|
+
}
|
|
13362
|
+
setActiveRailKey(null);
|
|
13363
|
+
};
|
|
13364
|
+
document.addEventListener("keydown", onKeyDown);
|
|
13365
|
+
document.addEventListener("mousedown", onPointerDown);
|
|
13366
|
+
return () => {
|
|
13367
|
+
document.removeEventListener("keydown", onKeyDown);
|
|
13368
|
+
document.removeEventListener("mousedown", onPointerDown);
|
|
13369
|
+
};
|
|
13370
|
+
});
|
|
13322
13371
|
const { renderChildren } = (0, import_runtime26.useRenderer)();
|
|
13323
13372
|
const renderSlot = (slot) => (0, import_react67.isValidElement)(slot) || typeof slot !== "object" || slot === null ? slot : renderChildren([slot]);
|
|
13324
13373
|
const convCollControlled = conversationSectionCollapsed !== void 0;
|
|
@@ -13350,10 +13399,58 @@ function ChatPage({
|
|
|
13350
13399
|
onClick: () => onMenuSelect?.(item.key)
|
|
13351
13400
|
}
|
|
13352
13401
|
) }, item.key);
|
|
13402
|
+
const convRailButton = (item, active, onClick) => {
|
|
13403
|
+
const button = /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
13404
|
+
Button2,
|
|
13405
|
+
{
|
|
13406
|
+
icon: item.icon,
|
|
13407
|
+
variant: "text",
|
|
13408
|
+
className: cn(active ? "bg-accent text-accent-foreground" : void 0, "px-2"),
|
|
13409
|
+
onClick
|
|
13410
|
+
}
|
|
13411
|
+
);
|
|
13412
|
+
return item.label !== void 0 ? /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(Tooltip2, { content: item.label, side: "left", children: button }, item.key) : /* @__PURE__ */ (0, import_jsx_runtime185.jsx)("span", { children: button }, item.key);
|
|
13413
|
+
};
|
|
13414
|
+
const convRailVisible = !hideArtifactRailItem || visibleRailItems.length > 0;
|
|
13415
|
+
const convRail = convRailVisible ? /* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(
|
|
13416
|
+
"div",
|
|
13417
|
+
{
|
|
13418
|
+
"data-slot": "chat-page-conv-rail",
|
|
13419
|
+
className: "relative flex w-(--pactor-chat-rail-width) shrink-0 flex-col items-center gap-1 px-1 py-2",
|
|
13420
|
+
children: [
|
|
13421
|
+
!hideArtifactRailItem ? convRailButton(
|
|
13422
|
+
{
|
|
13423
|
+
key: "artifact",
|
|
13424
|
+
icon: open ? "panel-right-close" : "package",
|
|
13425
|
+
label: open ? "\u6536\u8D77\u4EA7\u7269\u533A" : artifactTitle
|
|
13426
|
+
},
|
|
13427
|
+
open,
|
|
13428
|
+
toggleArtifact
|
|
13429
|
+
) : null,
|
|
13430
|
+
visibleRailItems.map(
|
|
13431
|
+
(item) => convRailButton(item, activeRailKey === item.key, () => toggleRailItem(item))
|
|
13432
|
+
),
|
|
13433
|
+
activePopoverItem ? /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
13434
|
+
"div",
|
|
13435
|
+
{
|
|
13436
|
+
"data-slot": "chat-page-rail-popover",
|
|
13437
|
+
className: "absolute right-full top-0 z-10 mr-2 overflow-auto rounded-lg border border-border bg-popover shadow-md",
|
|
13438
|
+
style: {
|
|
13439
|
+
width: "var(--pactor-chat-rail-popover-width)",
|
|
13440
|
+
maxWidth: "calc(100cqw - 2rem)",
|
|
13441
|
+
maxHeight: "calc(100% - 1rem)"
|
|
13442
|
+
},
|
|
13443
|
+
children: renderSlot(activePopoverItem.content)
|
|
13444
|
+
}
|
|
13445
|
+
) : null
|
|
13446
|
+
]
|
|
13447
|
+
}
|
|
13448
|
+
) : null;
|
|
13353
13449
|
const chatArea = /* @__PURE__ */ (0, import_jsx_runtime185.jsxs)("div", { "data-slot": "chat-page-conversation", className: "flex h-full min-w-0 flex-1 flex-col", children: [
|
|
13354
13450
|
/* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(
|
|
13355
13451
|
"div",
|
|
13356
13452
|
{
|
|
13453
|
+
"data-slot": "chat-page-conversation-header",
|
|
13357
13454
|
className: "flex shrink-0 items-center justify-between border-b border-border px-4 py-2.5",
|
|
13358
13455
|
children: [
|
|
13359
13456
|
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)(Text, { text: conversationTitle, strong: true }),
|
|
@@ -13365,66 +13462,62 @@ function ChatPage({
|
|
|
13365
13462
|
variant: "text",
|
|
13366
13463
|
onClick: () => onConversationHeaderAction?.()
|
|
13367
13464
|
}
|
|
13368
|
-
) }) :
|
|
13369
|
-
Button2,
|
|
13370
|
-
{
|
|
13371
|
-
icon: open ? "panel-right-close" : "panel-right-open",
|
|
13372
|
-
variant: "text",
|
|
13373
|
-
onClick: () => setOpen(!open)
|
|
13374
|
-
}
|
|
13375
|
-
) })
|
|
13465
|
+
) }) : null
|
|
13376
13466
|
]
|
|
13377
13467
|
}
|
|
13378
13468
|
),
|
|
13379
|
-
/* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(
|
|
13380
|
-
|
|
13381
|
-
|
|
13382
|
-
|
|
13383
|
-
|
|
13384
|
-
|
|
13385
|
-
|
|
13386
|
-
|
|
13387
|
-
|
|
13388
|
-
|
|
13389
|
-
|
|
13390
|
-
|
|
13391
|
-
|
|
13392
|
-
|
|
13393
|
-
|
|
13394
|
-
|
|
13395
|
-
|
|
13396
|
-
|
|
13397
|
-
|
|
13398
|
-
|
|
13399
|
-
|
|
13400
|
-
|
|
13401
|
-
|
|
13402
|
-
|
|
13403
|
-
|
|
13404
|
-
|
|
13405
|
-
|
|
13406
|
-
|
|
13407
|
-
|
|
13408
|
-
|
|
13409
|
-
|
|
13410
|
-
|
|
13411
|
-
|
|
13412
|
-
|
|
13413
|
-
|
|
13414
|
-
|
|
13415
|
-
|
|
13416
|
-
|
|
13417
|
-
|
|
13418
|
-
|
|
13419
|
-
|
|
13420
|
-
|
|
13421
|
-
|
|
13422
|
-
|
|
13423
|
-
|
|
13424
|
-
|
|
13425
|
-
|
|
13426
|
-
|
|
13427
|
-
|
|
13469
|
+
/* @__PURE__ */ (0, import_jsx_runtime185.jsxs)("div", { className: "flex min-h-0 flex-1", children: [
|
|
13470
|
+
/* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(
|
|
13471
|
+
"div",
|
|
13472
|
+
{
|
|
13473
|
+
"data-slot": "chat-page-conversation-body",
|
|
13474
|
+
className: "mx-auto flex min-h-0 w-[61.8cqw] max-w-full flex-col",
|
|
13475
|
+
children: [
|
|
13476
|
+
messages.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
13477
|
+
Welcome,
|
|
13478
|
+
{
|
|
13479
|
+
title: welcome?.title,
|
|
13480
|
+
description: welcome?.description,
|
|
13481
|
+
prompts: welcome?.prompts,
|
|
13482
|
+
style: { flex: 1 },
|
|
13483
|
+
onSelect: (value) => onSend?.(value)
|
|
13484
|
+
}
|
|
13485
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
13486
|
+
MessageList,
|
|
13487
|
+
{
|
|
13488
|
+
messages,
|
|
13489
|
+
className: "scrollbar-subtle",
|
|
13490
|
+
style: { flex: 1, minHeight: 0, padding: 16 },
|
|
13491
|
+
onAction: onMessageAction,
|
|
13492
|
+
onOpenArtifacts: () => setOpen(true)
|
|
13493
|
+
}
|
|
13494
|
+
),
|
|
13495
|
+
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
13496
|
+
Composer,
|
|
13497
|
+
{
|
|
13498
|
+
placeholder: composerPlaceholder,
|
|
13499
|
+
loading: sending,
|
|
13500
|
+
models,
|
|
13501
|
+
model,
|
|
13502
|
+
contexts,
|
|
13503
|
+
contextItems,
|
|
13504
|
+
attachments,
|
|
13505
|
+
footer: composerFooter,
|
|
13506
|
+
style: { padding: 16, paddingBottom: composerBottom ? 8 : 16, flexShrink: 0 },
|
|
13507
|
+
onModelChange,
|
|
13508
|
+
onContextItemsChange,
|
|
13509
|
+
onAttachFiles,
|
|
13510
|
+
onRemoveAttachment,
|
|
13511
|
+
onRetryAttachment,
|
|
13512
|
+
onSubmit: (text) => onSend?.(text)
|
|
13513
|
+
}
|
|
13514
|
+
),
|
|
13515
|
+
composerBottom ? /* @__PURE__ */ (0, import_jsx_runtime185.jsx)("div", { "data-slot": "chat-page-composer-bottom", className: "shrink-0 px-4 pb-2 text-center", children: renderSlot(composerBottom) }) : null
|
|
13516
|
+
]
|
|
13517
|
+
}
|
|
13518
|
+
),
|
|
13519
|
+
convRail
|
|
13520
|
+
] })
|
|
13428
13521
|
] });
|
|
13429
13522
|
const activeArtifact = artifacts.find((item) => item.id === activeArtifactId) ?? (activeArtifactId === void 0 || activeArtifactId === "" ? artifacts[artifacts.length - 1] : void 0);
|
|
13430
13523
|
const artifactPanel = /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
@@ -13556,10 +13649,17 @@ function ChatPage({
|
|
|
13556
13649
|
]
|
|
13557
13650
|
}
|
|
13558
13651
|
),
|
|
13559
|
-
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)("div", { className: "@container h-full min-w-0 flex-1", children: open ? /* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(PanelGroup, { orientation: "horizontal", style: { width: "100%", height: "100%" }, children: [
|
|
13652
|
+
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)("div", { className: "@container h-full min-w-0 flex-1", children: open || activePanelItem ? /* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(PanelGroup, { orientation: "horizontal", style: { width: "100%", height: "100%" }, children: [
|
|
13560
13653
|
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)(Panel, { defaultSize: "62%", children: chatArea }),
|
|
13561
13654
|
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)(ResizableHandle, { withHandle: true }),
|
|
13562
|
-
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)(Panel, { defaultSize: "38%", minSize: "380px", maxSize: "760px", children:
|
|
13655
|
+
/* @__PURE__ */ (0, import_jsx_runtime185.jsx)(Panel, { defaultSize: "38%", minSize: "380px", maxSize: "760px", children: activePanelItem ? /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
13656
|
+
"div",
|
|
13657
|
+
{
|
|
13658
|
+
"data-slot": "chat-page-rail-panel",
|
|
13659
|
+
className: "flex h-full min-w-0 flex-col border-l border-border bg-muted",
|
|
13660
|
+
children: renderSlot(activePanelItem.content)
|
|
13661
|
+
}
|
|
13662
|
+
) : artifactPanel })
|
|
13563
13663
|
] }) : chatArea })
|
|
13564
13664
|
]
|
|
13565
13665
|
}
|
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { Accordion, AccordionItemData, AccordionProps, Affix, AffixProps, AgentStatus, AgentStatusProps, AgentStatusType, Alert, AlertDialog, AlertDialogProps, AlertProps, AlertVariant, Anchor, AnchorItemData, AnchorProps, AreaChart, AreaChartProps, ArtifactPanel, ArtifactPanelProps, ArtifactTreeNode, ArtifactViewer, ArtifactViewers, AspectRatio, AspectRatioProps, Attachment, AttachmentItemData, AttachmentProps, Audio, AudioProps, Avatar, AvatarProps, BackTop, BackTopProps, Badge, BadgeProps, BadgeVariant, BarChart, BarChartProps, Breadcrumb, BreadcrumbItemData, BreadcrumbProps, Bubble, BubbleChart, BubbleChartProps, BubbleProps, BubbleVariant, Button, ButtonGroup, ButtonGroupProps, ButtonProps, ButtonSize, ButtonVariant, Calendar, CalendarProps, Card, CardProps, Carousel, CarouselImage, CarouselItemData, CarouselProps, Cascader, CascaderOption, CascaderProps, ChartSelectPayload, ChatInput, ChatInputProps, ChatMessage, ChatMessageActionItem, ChatMessageAgent, ChatMessagePart, ChatMessageProps, ChatMessageStatus, ChatPage, ChatPageArtifact, ChatPageBrand, ChatPageMenuItem, ChatPageProps, Checkbox, CheckboxProps, Citation, CitationItem, CitationProps, CodeBlock, CodeBlockProps, Collapsible, CollapsibleProps, ColorPicker, ColorPickerProps, ColumnChart, ColumnChartProps, Combobox, ComboboxOption, ComboboxProps, Command, CommandGroupData, CommandItemData, CommandProps, ComposedChart, ComposedChartProps, ComposedSeriesItem, Composer, ComposerContextItem, ComposerContextSource, ComposerModelOption, ComposerProps, Container, ContainerProps, ContainerSize, Content, ContentProps, ContextMenu, ContextMenuItemData, ContextMenuProps, ConversationItemData, ConversationList, ConversationListProps, DataTable, DataTableColumn, DataTablePagination, DataTableProps, DataTableSort, DataTableSortOrder, DatePicker, DatePickerPreset, DatePickerPresetKey, DatePickerProps, DatePickerRangeProps, DatePickerSingleProps, DateRangeValue, Descriptions, DescriptionsItemData, DescriptionsProps, Dialog, DialogProps, DiffViewer, DiffViewerProps, DocumentPageData, DocumentPreview, DocumentPreviewProps, DonutChart, DonutChartProps, Drawer, DrawerPlacement, DrawerProps, DropdownMenu, DropdownMenuItemData, DropdownMenuProps, EChartBase, EChartBaseProps, Empty, EmptyProps, Field, FieldProps, FieldRule, FilePreview, FilePreviewKind, FilePreviewProps, Flex, FlexProps, Footer, FooterProps, Form, FormContextValue, FormProps, FunnelChart, FunnelChartProps, Gallery, GalleryItemData, GalleryProps, GaugeChart, GaugeChartProps, Grid, GridProps, Header, HeaderBrandPosition, HeaderDropdown, HeaderDropdownItem, HeaderLocale, HeaderMenuItem, HeaderProps, HeaderTheme, HeaderUser, HeaderUserItem, Heatmap, HeatmapProps, HoverCard, HoverCardProps, ICONS, Icon, IconProps, IconSize, Image, ImageLightbox, ImageLightboxProps, ImageProps, ImageViewer, ImageViewerProps, Input, InputGroup, InputGroupProps, InputOTP, InputOTPProps, InputProps, Item, ItemProps, JSONViewer, JSONViewerProps, Kbd, KbdProps, Label, LabelProps, Layout, LayoutProps, LineChart, LineChartProps, Link, LinkProps, List, ListItemData, ListProps, LoadingOverlay, LoadingOverlayProps, MapChart, MapChartProps, MentionOption, Mentions, MentionsProps, Menu, MenuItem, MenuProps, Menubar, MenubarLeafItem, MenubarMenuData, MenubarProps, Message, MessageList, MessageListItem, MessageListProps, MessageProps, MetricCard, MetricCardProps, NavigationMenu, NavigationMenuChildItem, NavigationMenuItemData, NavigationMenuProps, Notification, NotificationProps, NumberInput, NumberInputProps, Page, PageProps, Pagination, PaginationProps, PieChart, PieChartProps, Popconfirm, PopconfirmProps, Popover, PopoverProps, Progress, ProgressProps, Prompt, PromptProps, QRCode, QRCodeProps, RadarChart, RadarChartProps, RadioGroup, RadioGroupOption, RadioGroupProps, RailTooltip, Rate, RateProps, Resizable, ResizablePanelData, ResizableProps, Result, ResultProps, ResultStatus, RichText, RichTextProps, SankeyChart, SankeyChartProps, ScatterChart, ScatterChartProps, ScrollArea, ScrollAreaProps, Segmented, SegmentedOption, SegmentedProps, Select, SelectOption, SelectProps, Sender, SenderProps, Separator, SeparatorProps, Sheet, SheetProps, SheetSide, Sidebar, SidebarBrand, SidebarNavItem, SidebarProps, Sider, SiderProps, Skeleton, SkeletonProps, SkeletonShape, Slider, SliderProps, Sonner, SonnerProps, Space, SpaceProps, Spinner, SpinnerProps, SpinnerSize, Statistic, StatisticProps, Status, StatusProps, StatusType, StepItemData, StepStatus, Steps, StepsProps, StreamingText, StreamingTextProps, Suggestion, SuggestionItem, SuggestionProps, Switch, SwitchProps, TabItem, Table, TableColumn, TablePagination, TablePaginationInfo, TableProps, Tabs, TabsProps, Tag, TagColor, TagProps, Text, TextProps, TextType, Textarea, TextareaProps, Thinking, ThinkingProps, ThinkingStatus, TimePicker, TimePickerProps, Timeline, TimelineItemData, TimelineProps, Toggle, ToggleGroup, ToggleGroupOption, ToggleGroupProps, ToggleProps, ToolCall, ToolCallProps, ToolCallStatus, Tooltip, TooltipProps, Tour, TourProps, TourStep, Transfer, TransferOption, TransferProps, Tree, TreeChart, TreeChartProps, TreeNodeData, TreeProps, TreeSelect, TreeSelectOption, TreeSelectProps, Typography, TypographyProps, TypographyVariant, Upload, UploadFileMeta, UploadProps, Video, VideoProps, Watermark, WatermarkProps, Welcome, WelcomePromptItem, WelcomeProps, buildArtifactTree, builtinComponents, createComponentRegistry, diffLines, inferKind, normalizeIconName, registerBuiltinComponents, useFormContext, useSidebarDrawer } from './components/index.cjs';
|
|
1
|
+
export { Accordion, AccordionItemData, AccordionProps, Affix, AffixProps, AgentStatus, AgentStatusProps, AgentStatusType, Alert, AlertDialog, AlertDialogProps, AlertProps, AlertVariant, Anchor, AnchorItemData, AnchorProps, AreaChart, AreaChartProps, ArtifactPanel, ArtifactPanelProps, ArtifactTreeNode, ArtifactViewer, ArtifactViewers, AspectRatio, AspectRatioProps, Attachment, AttachmentItemData, AttachmentProps, Audio, AudioProps, Avatar, AvatarProps, BackTop, BackTopProps, Badge, BadgeProps, BadgeVariant, BarChart, BarChartProps, Breadcrumb, BreadcrumbItemData, BreadcrumbProps, Bubble, BubbleChart, BubbleChartProps, BubbleProps, BubbleVariant, Button, ButtonGroup, ButtonGroupProps, ButtonProps, ButtonSize, ButtonVariant, Calendar, CalendarProps, Card, CardProps, Carousel, CarouselImage, CarouselItemData, CarouselProps, Cascader, CascaderOption, CascaderProps, ChartSelectPayload, ChatInput, ChatInputProps, ChatMessage, ChatMessageActionItem, ChatMessageAgent, ChatMessagePart, ChatMessageProps, ChatMessageStatus, ChatPage, ChatPageArtifact, ChatPageBrand, ChatPageMenuItem, ChatPageProps, Checkbox, CheckboxProps, Citation, CitationItem, CitationProps, CodeBlock, CodeBlockProps, Collapsible, CollapsibleProps, ColorPicker, ColorPickerProps, ColumnChart, ColumnChartProps, Combobox, ComboboxOption, ComboboxProps, Command, CommandGroupData, CommandItemData, CommandProps, ComposedChart, ComposedChartProps, ComposedSeriesItem, Composer, ComposerContextItem, ComposerContextSource, ComposerModelOption, ComposerProps, Container, ContainerProps, ContainerSize, Content, ContentProps, ContextMenu, ContextMenuItemData, ContextMenuProps, ConversationItemData, ConversationList, ConversationListProps, ConversationRailItem, DataTable, DataTableColumn, DataTablePagination, DataTableProps, DataTableSort, DataTableSortOrder, DatePicker, DatePickerPreset, DatePickerPresetKey, DatePickerProps, DatePickerRangeProps, DatePickerSingleProps, DateRangeValue, Descriptions, DescriptionsItemData, DescriptionsProps, Dialog, DialogProps, DiffViewer, DiffViewerProps, DocumentPageData, DocumentPreview, DocumentPreviewProps, DonutChart, DonutChartProps, Drawer, DrawerPlacement, DrawerProps, DropdownMenu, DropdownMenuItemData, DropdownMenuProps, EChartBase, EChartBaseProps, Empty, EmptyProps, Field, FieldProps, FieldRule, FilePreview, FilePreviewKind, FilePreviewProps, Flex, FlexProps, Footer, FooterProps, Form, FormContextValue, FormProps, FunnelChart, FunnelChartProps, Gallery, GalleryItemData, GalleryProps, GaugeChart, GaugeChartProps, Grid, GridProps, Header, HeaderBrandPosition, HeaderDropdown, HeaderDropdownItem, HeaderLocale, HeaderMenuItem, HeaderProps, HeaderTheme, HeaderUser, HeaderUserItem, Heatmap, HeatmapProps, HoverCard, HoverCardProps, ICONS, Icon, IconProps, IconSize, Image, ImageLightbox, ImageLightboxProps, ImageProps, ImageViewer, ImageViewerProps, Input, InputGroup, InputGroupProps, InputOTP, InputOTPProps, InputProps, Item, ItemProps, JSONViewer, JSONViewerProps, Kbd, KbdProps, Label, LabelProps, Layout, LayoutProps, LineChart, LineChartProps, Link, LinkProps, List, ListItemData, ListProps, LoadingOverlay, LoadingOverlayProps, MapChart, MapChartProps, MentionOption, Mentions, MentionsProps, Menu, MenuItem, MenuProps, Menubar, MenubarLeafItem, MenubarMenuData, MenubarProps, Message, MessageList, MessageListItem, MessageListProps, MessageProps, MetricCard, MetricCardProps, NavigationMenu, NavigationMenuChildItem, NavigationMenuItemData, NavigationMenuProps, Notification, NotificationProps, NumberInput, NumberInputProps, Page, PageProps, Pagination, PaginationProps, PieChart, PieChartProps, Popconfirm, PopconfirmProps, Popover, PopoverProps, Progress, ProgressProps, Prompt, PromptProps, QRCode, QRCodeProps, RadarChart, RadarChartProps, RadioGroup, RadioGroupOption, RadioGroupProps, RailTooltip, Rate, RateProps, Resizable, ResizablePanelData, ResizableProps, Result, ResultProps, ResultStatus, RichText, RichTextProps, SankeyChart, SankeyChartProps, ScatterChart, ScatterChartProps, ScrollArea, ScrollAreaProps, Segmented, SegmentedOption, SegmentedProps, Select, SelectOption, SelectProps, Sender, SenderProps, Separator, SeparatorProps, Sheet, SheetProps, SheetSide, Sidebar, SidebarBrand, SidebarNavItem, SidebarProps, Sider, SiderProps, Skeleton, SkeletonProps, SkeletonShape, Slider, SliderProps, Sonner, SonnerProps, Space, SpaceProps, Spinner, SpinnerProps, SpinnerSize, Statistic, StatisticProps, Status, StatusProps, StatusType, StepItemData, StepStatus, Steps, StepsProps, StreamingText, StreamingTextProps, Suggestion, SuggestionItem, SuggestionProps, Switch, SwitchProps, TabItem, Table, TableColumn, TablePagination, TablePaginationInfo, TableProps, Tabs, TabsProps, Tag, TagColor, TagProps, Text, TextProps, TextType, Textarea, TextareaProps, Thinking, ThinkingProps, ThinkingStatus, TimePicker, TimePickerProps, Timeline, TimelineItemData, TimelineProps, Toggle, ToggleGroup, ToggleGroupOption, ToggleGroupProps, ToggleProps, ToolCall, ToolCallProps, ToolCallStatus, Tooltip, TooltipProps, Tour, TourProps, TourStep, Transfer, TransferOption, TransferProps, Tree, TreeChart, TreeChartProps, TreeNodeData, TreeProps, TreeSelect, TreeSelectOption, TreeSelectProps, Typography, TypographyProps, TypographyVariant, Upload, UploadFileMeta, UploadProps, Video, VideoProps, Watermark, WatermarkProps, Welcome, WelcomePromptItem, WelcomeProps, buildArtifactTree, builtinComponents, createComponentRegistry, diffLines, inferKind, normalizeIconName, registerBuiltinComponents, useFormContext, useSidebarDrawer } from './components/index.cjs';
|
|
2
2
|
export { MarkdownDslComponent as Markdown, MarkdownDslComponentProps as MarkdownProps } from '@pactor-app/markdown';
|
|
3
3
|
export { AdminBrand, AdminLayout, AdminLayoutBreakpoint, AdminLayoutConfig, AdminLayoutMode, AdminLayoutProps, BlankLayout, BlankLayoutProps, ChatLayout, ChatLayoutBrand, ChatLayoutMenuItem, ChatLayoutProps, LandingLayout, LandingLayoutProps, LayoutComponent, LayoutRegistry, LoginBrand, LoginLayout, LoginLayoutProps, collectDefaultOpenKeys, createLayoutRegistry, findMenuChain, registerBuiltinLayouts, resolveLayout } from './layout/index.cjs';
|
|
4
4
|
export { InteractionProvider, InteractionProviderProps, OVERLAY_CANCEL_PAYLOAD, OverlayConfig, OverlayEntry, OverlayHost, OverlayHostProps, OverlayListener, OverlayManager, ResolvePageFn, UiBridge, UiMessage, UiModal, createUiBridge, registerInteractionActions } from './interaction/index.cjs';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { Accordion, AccordionItemData, AccordionProps, Affix, AffixProps, AgentStatus, AgentStatusProps, AgentStatusType, Alert, AlertDialog, AlertDialogProps, AlertProps, AlertVariant, Anchor, AnchorItemData, AnchorProps, AreaChart, AreaChartProps, ArtifactPanel, ArtifactPanelProps, ArtifactTreeNode, ArtifactViewer, ArtifactViewers, AspectRatio, AspectRatioProps, Attachment, AttachmentItemData, AttachmentProps, Audio, AudioProps, Avatar, AvatarProps, BackTop, BackTopProps, Badge, BadgeProps, BadgeVariant, BarChart, BarChartProps, Breadcrumb, BreadcrumbItemData, BreadcrumbProps, Bubble, BubbleChart, BubbleChartProps, BubbleProps, BubbleVariant, Button, ButtonGroup, ButtonGroupProps, ButtonProps, ButtonSize, ButtonVariant, Calendar, CalendarProps, Card, CardProps, Carousel, CarouselImage, CarouselItemData, CarouselProps, Cascader, CascaderOption, CascaderProps, ChartSelectPayload, ChatInput, ChatInputProps, ChatMessage, ChatMessageActionItem, ChatMessageAgent, ChatMessagePart, ChatMessageProps, ChatMessageStatus, ChatPage, ChatPageArtifact, ChatPageBrand, ChatPageMenuItem, ChatPageProps, Checkbox, CheckboxProps, Citation, CitationItem, CitationProps, CodeBlock, CodeBlockProps, Collapsible, CollapsibleProps, ColorPicker, ColorPickerProps, ColumnChart, ColumnChartProps, Combobox, ComboboxOption, ComboboxProps, Command, CommandGroupData, CommandItemData, CommandProps, ComposedChart, ComposedChartProps, ComposedSeriesItem, Composer, ComposerContextItem, ComposerContextSource, ComposerModelOption, ComposerProps, Container, ContainerProps, ContainerSize, Content, ContentProps, ContextMenu, ContextMenuItemData, ContextMenuProps, ConversationItemData, ConversationList, ConversationListProps, DataTable, DataTableColumn, DataTablePagination, DataTableProps, DataTableSort, DataTableSortOrder, DatePicker, DatePickerPreset, DatePickerPresetKey, DatePickerProps, DatePickerRangeProps, DatePickerSingleProps, DateRangeValue, Descriptions, DescriptionsItemData, DescriptionsProps, Dialog, DialogProps, DiffViewer, DiffViewerProps, DocumentPageData, DocumentPreview, DocumentPreviewProps, DonutChart, DonutChartProps, Drawer, DrawerPlacement, DrawerProps, DropdownMenu, DropdownMenuItemData, DropdownMenuProps, EChartBase, EChartBaseProps, Empty, EmptyProps, Field, FieldProps, FieldRule, FilePreview, FilePreviewKind, FilePreviewProps, Flex, FlexProps, Footer, FooterProps, Form, FormContextValue, FormProps, FunnelChart, FunnelChartProps, Gallery, GalleryItemData, GalleryProps, GaugeChart, GaugeChartProps, Grid, GridProps, Header, HeaderBrandPosition, HeaderDropdown, HeaderDropdownItem, HeaderLocale, HeaderMenuItem, HeaderProps, HeaderTheme, HeaderUser, HeaderUserItem, Heatmap, HeatmapProps, HoverCard, HoverCardProps, ICONS, Icon, IconProps, IconSize, Image, ImageLightbox, ImageLightboxProps, ImageProps, ImageViewer, ImageViewerProps, Input, InputGroup, InputGroupProps, InputOTP, InputOTPProps, InputProps, Item, ItemProps, JSONViewer, JSONViewerProps, Kbd, KbdProps, Label, LabelProps, Layout, LayoutProps, LineChart, LineChartProps, Link, LinkProps, List, ListItemData, ListProps, LoadingOverlay, LoadingOverlayProps, MapChart, MapChartProps, MentionOption, Mentions, MentionsProps, Menu, MenuItem, MenuProps, Menubar, MenubarLeafItem, MenubarMenuData, MenubarProps, Message, MessageList, MessageListItem, MessageListProps, MessageProps, MetricCard, MetricCardProps, NavigationMenu, NavigationMenuChildItem, NavigationMenuItemData, NavigationMenuProps, Notification, NotificationProps, NumberInput, NumberInputProps, Page, PageProps, Pagination, PaginationProps, PieChart, PieChartProps, Popconfirm, PopconfirmProps, Popover, PopoverProps, Progress, ProgressProps, Prompt, PromptProps, QRCode, QRCodeProps, RadarChart, RadarChartProps, RadioGroup, RadioGroupOption, RadioGroupProps, RailTooltip, Rate, RateProps, Resizable, ResizablePanelData, ResizableProps, Result, ResultProps, ResultStatus, RichText, RichTextProps, SankeyChart, SankeyChartProps, ScatterChart, ScatterChartProps, ScrollArea, ScrollAreaProps, Segmented, SegmentedOption, SegmentedProps, Select, SelectOption, SelectProps, Sender, SenderProps, Separator, SeparatorProps, Sheet, SheetProps, SheetSide, Sidebar, SidebarBrand, SidebarNavItem, SidebarProps, Sider, SiderProps, Skeleton, SkeletonProps, SkeletonShape, Slider, SliderProps, Sonner, SonnerProps, Space, SpaceProps, Spinner, SpinnerProps, SpinnerSize, Statistic, StatisticProps, Status, StatusProps, StatusType, StepItemData, StepStatus, Steps, StepsProps, StreamingText, StreamingTextProps, Suggestion, SuggestionItem, SuggestionProps, Switch, SwitchProps, TabItem, Table, TableColumn, TablePagination, TablePaginationInfo, TableProps, Tabs, TabsProps, Tag, TagColor, TagProps, Text, TextProps, TextType, Textarea, TextareaProps, Thinking, ThinkingProps, ThinkingStatus, TimePicker, TimePickerProps, Timeline, TimelineItemData, TimelineProps, Toggle, ToggleGroup, ToggleGroupOption, ToggleGroupProps, ToggleProps, ToolCall, ToolCallProps, ToolCallStatus, Tooltip, TooltipProps, Tour, TourProps, TourStep, Transfer, TransferOption, TransferProps, Tree, TreeChart, TreeChartProps, TreeNodeData, TreeProps, TreeSelect, TreeSelectOption, TreeSelectProps, Typography, TypographyProps, TypographyVariant, Upload, UploadFileMeta, UploadProps, Video, VideoProps, Watermark, WatermarkProps, Welcome, WelcomePromptItem, WelcomeProps, buildArtifactTree, builtinComponents, createComponentRegistry, diffLines, inferKind, normalizeIconName, registerBuiltinComponents, useFormContext, useSidebarDrawer } from './components/index.js';
|
|
1
|
+
export { Accordion, AccordionItemData, AccordionProps, Affix, AffixProps, AgentStatus, AgentStatusProps, AgentStatusType, Alert, AlertDialog, AlertDialogProps, AlertProps, AlertVariant, Anchor, AnchorItemData, AnchorProps, AreaChart, AreaChartProps, ArtifactPanel, ArtifactPanelProps, ArtifactTreeNode, ArtifactViewer, ArtifactViewers, AspectRatio, AspectRatioProps, Attachment, AttachmentItemData, AttachmentProps, Audio, AudioProps, Avatar, AvatarProps, BackTop, BackTopProps, Badge, BadgeProps, BadgeVariant, BarChart, BarChartProps, Breadcrumb, BreadcrumbItemData, BreadcrumbProps, Bubble, BubbleChart, BubbleChartProps, BubbleProps, BubbleVariant, Button, ButtonGroup, ButtonGroupProps, ButtonProps, ButtonSize, ButtonVariant, Calendar, CalendarProps, Card, CardProps, Carousel, CarouselImage, CarouselItemData, CarouselProps, Cascader, CascaderOption, CascaderProps, ChartSelectPayload, ChatInput, ChatInputProps, ChatMessage, ChatMessageActionItem, ChatMessageAgent, ChatMessagePart, ChatMessageProps, ChatMessageStatus, ChatPage, ChatPageArtifact, ChatPageBrand, ChatPageMenuItem, ChatPageProps, Checkbox, CheckboxProps, Citation, CitationItem, CitationProps, CodeBlock, CodeBlockProps, Collapsible, CollapsibleProps, ColorPicker, ColorPickerProps, ColumnChart, ColumnChartProps, Combobox, ComboboxOption, ComboboxProps, Command, CommandGroupData, CommandItemData, CommandProps, ComposedChart, ComposedChartProps, ComposedSeriesItem, Composer, ComposerContextItem, ComposerContextSource, ComposerModelOption, ComposerProps, Container, ContainerProps, ContainerSize, Content, ContentProps, ContextMenu, ContextMenuItemData, ContextMenuProps, ConversationItemData, ConversationList, ConversationListProps, ConversationRailItem, DataTable, DataTableColumn, DataTablePagination, DataTableProps, DataTableSort, DataTableSortOrder, DatePicker, DatePickerPreset, DatePickerPresetKey, DatePickerProps, DatePickerRangeProps, DatePickerSingleProps, DateRangeValue, Descriptions, DescriptionsItemData, DescriptionsProps, Dialog, DialogProps, DiffViewer, DiffViewerProps, DocumentPageData, DocumentPreview, DocumentPreviewProps, DonutChart, DonutChartProps, Drawer, DrawerPlacement, DrawerProps, DropdownMenu, DropdownMenuItemData, DropdownMenuProps, EChartBase, EChartBaseProps, Empty, EmptyProps, Field, FieldProps, FieldRule, FilePreview, FilePreviewKind, FilePreviewProps, Flex, FlexProps, Footer, FooterProps, Form, FormContextValue, FormProps, FunnelChart, FunnelChartProps, Gallery, GalleryItemData, GalleryProps, GaugeChart, GaugeChartProps, Grid, GridProps, Header, HeaderBrandPosition, HeaderDropdown, HeaderDropdownItem, HeaderLocale, HeaderMenuItem, HeaderProps, HeaderTheme, HeaderUser, HeaderUserItem, Heatmap, HeatmapProps, HoverCard, HoverCardProps, ICONS, Icon, IconProps, IconSize, Image, ImageLightbox, ImageLightboxProps, ImageProps, ImageViewer, ImageViewerProps, Input, InputGroup, InputGroupProps, InputOTP, InputOTPProps, InputProps, Item, ItemProps, JSONViewer, JSONViewerProps, Kbd, KbdProps, Label, LabelProps, Layout, LayoutProps, LineChart, LineChartProps, Link, LinkProps, List, ListItemData, ListProps, LoadingOverlay, LoadingOverlayProps, MapChart, MapChartProps, MentionOption, Mentions, MentionsProps, Menu, MenuItem, MenuProps, Menubar, MenubarLeafItem, MenubarMenuData, MenubarProps, Message, MessageList, MessageListItem, MessageListProps, MessageProps, MetricCard, MetricCardProps, NavigationMenu, NavigationMenuChildItem, NavigationMenuItemData, NavigationMenuProps, Notification, NotificationProps, NumberInput, NumberInputProps, Page, PageProps, Pagination, PaginationProps, PieChart, PieChartProps, Popconfirm, PopconfirmProps, Popover, PopoverProps, Progress, ProgressProps, Prompt, PromptProps, QRCode, QRCodeProps, RadarChart, RadarChartProps, RadioGroup, RadioGroupOption, RadioGroupProps, RailTooltip, Rate, RateProps, Resizable, ResizablePanelData, ResizableProps, Result, ResultProps, ResultStatus, RichText, RichTextProps, SankeyChart, SankeyChartProps, ScatterChart, ScatterChartProps, ScrollArea, ScrollAreaProps, Segmented, SegmentedOption, SegmentedProps, Select, SelectOption, SelectProps, Sender, SenderProps, Separator, SeparatorProps, Sheet, SheetProps, SheetSide, Sidebar, SidebarBrand, SidebarNavItem, SidebarProps, Sider, SiderProps, Skeleton, SkeletonProps, SkeletonShape, Slider, SliderProps, Sonner, SonnerProps, Space, SpaceProps, Spinner, SpinnerProps, SpinnerSize, Statistic, StatisticProps, Status, StatusProps, StatusType, StepItemData, StepStatus, Steps, StepsProps, StreamingText, StreamingTextProps, Suggestion, SuggestionItem, SuggestionProps, Switch, SwitchProps, TabItem, Table, TableColumn, TablePagination, TablePaginationInfo, TableProps, Tabs, TabsProps, Tag, TagColor, TagProps, Text, TextProps, TextType, Textarea, TextareaProps, Thinking, ThinkingProps, ThinkingStatus, TimePicker, TimePickerProps, Timeline, TimelineItemData, TimelineProps, Toggle, ToggleGroup, ToggleGroupOption, ToggleGroupProps, ToggleProps, ToolCall, ToolCallProps, ToolCallStatus, Tooltip, TooltipProps, Tour, TourProps, TourStep, Transfer, TransferOption, TransferProps, Tree, TreeChart, TreeChartProps, TreeNodeData, TreeProps, TreeSelect, TreeSelectOption, TreeSelectProps, Typography, TypographyProps, TypographyVariant, Upload, UploadFileMeta, UploadProps, Video, VideoProps, Watermark, WatermarkProps, Welcome, WelcomePromptItem, WelcomeProps, buildArtifactTree, builtinComponents, createComponentRegistry, diffLines, inferKind, normalizeIconName, registerBuiltinComponents, useFormContext, useSidebarDrawer } from './components/index.js';
|
|
2
2
|
export { MarkdownDslComponent as Markdown, MarkdownDslComponentProps as MarkdownProps } from '@pactor-app/markdown';
|
|
3
3
|
export { AdminBrand, AdminLayout, AdminLayoutBreakpoint, AdminLayoutConfig, AdminLayoutMode, AdminLayoutProps, BlankLayout, BlankLayoutProps, ChatLayout, ChatLayoutBrand, ChatLayoutMenuItem, ChatLayoutProps, LandingLayout, LandingLayoutProps, LayoutComponent, LayoutRegistry, LoginBrand, LoginLayout, LoginLayoutProps, collectDefaultOpenKeys, createLayoutRegistry, findMenuChain, registerBuiltinLayouts, resolveLayout } from './layout/index.js';
|
|
4
4
|
export { InteractionProvider, InteractionProviderProps, OVERLAY_CANCEL_PAYLOAD, OverlayConfig, OverlayEntry, OverlayHost, OverlayHostProps, OverlayListener, OverlayManager, ResolvePageFn, UiBridge, UiMessage, UiModal, createUiBridge, registerInteractionActions } from './interaction/index.js';
|
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pactor-app/ui",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.24.0",
|
|
4
4
|
"description": "Pactor UI kit (shadcn): the single built-in UI kit — vendored shadcn/ui components (Base UI primitives + cva + tailwind-merge + lucide-react), props contracts, interaction core (OverlayManager / UiBridge) and layouts, with build-time Tailwind v4 prebuilt styles.css (zero consumer-side Tailwind config)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pactor",
|
|
@@ -107,11 +107,11 @@
|
|
|
107
107
|
"react-resizable-panels": "^4.12.3",
|
|
108
108
|
"tailwind-merge": "^3.6.0",
|
|
109
109
|
"vaul": "^1.1.2",
|
|
110
|
-
"@pactor-app/core": "1.
|
|
111
|
-
"@pactor-app/markdown": "1.
|
|
112
|
-
"@pactor-app/
|
|
113
|
-
"@pactor-app/
|
|
114
|
-
"@pactor-app/
|
|
110
|
+
"@pactor-app/core": "1.24.0",
|
|
111
|
+
"@pactor-app/markdown": "1.24.0",
|
|
112
|
+
"@pactor-app/router": "1.24.0",
|
|
113
|
+
"@pactor-app/permission": "1.24.0",
|
|
114
|
+
"@pactor-app/runtime": "1.24.0"
|
|
115
115
|
},
|
|
116
116
|
"peerDependencies": {
|
|
117
117
|
"react": ">=18",
|
package/styles.css
CHANGED
|
@@ -315,6 +315,9 @@
|
|
|
315
315
|
.right-10 {
|
|
316
316
|
right: calc(var(--spacing) * 10);
|
|
317
317
|
}
|
|
318
|
+
.right-full {
|
|
319
|
+
right: 100%;
|
|
320
|
+
}
|
|
318
321
|
.-bottom-12 {
|
|
319
322
|
bottom: calc(var(--spacing) * -12);
|
|
320
323
|
}
|
|
@@ -477,6 +480,9 @@
|
|
|
477
480
|
.-mr-0\.5 {
|
|
478
481
|
margin-right: calc(var(--spacing) * -0.5);
|
|
479
482
|
}
|
|
483
|
+
.mr-2 {
|
|
484
|
+
margin-right: calc(var(--spacing) * 2);
|
|
485
|
+
}
|
|
480
486
|
.mb-1 {
|
|
481
487
|
margin-bottom: var(--spacing);
|
|
482
488
|
}
|
|
@@ -807,6 +813,9 @@
|
|
|
807
813
|
.w-\(--anchor-width\) {
|
|
808
814
|
width: var(--anchor-width);
|
|
809
815
|
}
|
|
816
|
+
.w-\(--pactor-chat-rail-width\) {
|
|
817
|
+
width: var(--pactor-chat-rail-width);
|
|
818
|
+
}
|
|
810
819
|
.w-\(--sidebar-width\) {
|
|
811
820
|
width: var(--sidebar-width);
|
|
812
821
|
}
|
|
@@ -1899,6 +1908,9 @@
|
|
|
1899
1908
|
.text-\(--menu-active-foreground\) {
|
|
1900
1909
|
color: var(--menu-active-foreground);
|
|
1901
1910
|
}
|
|
1911
|
+
.text-accent-foreground {
|
|
1912
|
+
color: var(--accent-foreground);
|
|
1913
|
+
}
|
|
1902
1914
|
.text-card-foreground {
|
|
1903
1915
|
color: var(--card-foreground);
|
|
1904
1916
|
}
|
|
@@ -3984,6 +3996,8 @@
|
|
|
3984
3996
|
--flex-gap-md: calc(var(--flex-gap) * 1.33);
|
|
3985
3997
|
--flex-gap-lg: calc(var(--flex-gap) * 2);
|
|
3986
3998
|
--grid-gap: 16px;
|
|
3999
|
+
--pactor-chat-rail-width: 40px;
|
|
4000
|
+
--pactor-chat-rail-popover-width: 320px;
|
|
3987
4001
|
}
|
|
3988
4002
|
[data-pactor-theme='dark'] {
|
|
3989
4003
|
color-scheme: dark;
|