@zero-library/chat-copilot 3.1.13 → 3.1.15

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/index.cjs.js CHANGED
@@ -19,7 +19,8 @@ var LexicalTypeaheadMenuPlugin = require('@lexical/react/LexicalTypeaheadMenuPlu
19
19
  var utils = require('@lexical/utils');
20
20
  var ReactDOM = require('react-dom');
21
21
  var dayjs = require('dayjs');
22
- var classNames = require('classnames');
22
+ var classNames2 = require('classnames');
23
+ var console2 = require('console');
23
24
  var InfiniteScroll = require('react-infinite-scroll-component');
24
25
  var xCard = require('@ant-design/x-card');
25
26
  require('@ant-design/x-markdown/themes/light.css');
@@ -49,7 +50,8 @@ function _interopNamespace(e) {
49
50
  var React10__namespace = /*#__PURE__*/_interopNamespace(React10);
50
51
  var ReactDOM__namespace = /*#__PURE__*/_interopNamespace(ReactDOM);
51
52
  var dayjs__default = /*#__PURE__*/_interopDefault(dayjs);
52
- var classNames__default = /*#__PURE__*/_interopDefault(classNames);
53
+ var classNames2__default = /*#__PURE__*/_interopDefault(classNames2);
54
+ var console2__default = /*#__PURE__*/_interopDefault(console2);
53
55
  var InfiniteScroll__default = /*#__PURE__*/_interopDefault(InfiniteScroll);
54
56
  var XMarkdown__default = /*#__PURE__*/_interopDefault(XMarkdown);
55
57
  var Latex__default = /*#__PURE__*/_interopDefault(Latex);
@@ -74,7 +76,7 @@ var styles_module_default = {
74
76
  var Attachments_default = React10.forwardRef(({ fileUpload, fileUploadConfig, fileList = [], onChange, extraParams }, ref) => {
75
77
  const { message: message3 } = antd.App.useApp();
76
78
  const chatStore = useChatStore();
77
- valtio.useSnapshot(chatStore.agent);
79
+ const configState = valtio.useSnapshot(chatStore.config);
78
80
  const fileListRef = React10.useRef([]);
79
81
  const [attachedFiles, setAttachedFiles, getAttachedFiles] = common.useRefState([]);
80
82
  React10.useEffect(() => {
@@ -193,8 +195,8 @@ var Attachments_default = React10.forwardRef(({ fileUpload, fileUploadConfig, fi
193
195
  currentFile.abortController.abort();
194
196
  }
195
197
  setAttachedFiles(attachedFiles.filter((f) => f.uid !== file.uid));
196
- chatStore.config.params.convMeta?.libraryId;
197
- file.path;
198
+ const filePath = file.path;
199
+ configState.hooks?.onAfterRemoveFile?.(filePath);
198
200
  };
199
201
  React10.useImperativeHandle(
200
202
  ref,
@@ -1257,6 +1259,7 @@ function createChatStore() {
1257
1259
  await config.services.request.deleteConversation(conversationId);
1258
1260
  antd.message.success("\u5220\u9664\u6210\u529F");
1259
1261
  conversations.list.items = conversations.list.items.filter((item) => item.key !== conversationId);
1262
+ favorite.list.items = favorite.list.items.filter((item) => item.id !== conversationId);
1260
1263
  delete conversation.messages[conversationId];
1261
1264
  if (conversation.active.id === conversationId) {
1262
1265
  createConversation();
@@ -1302,6 +1305,7 @@ function createChatStore() {
1302
1305
  id: "id",
1303
1306
  label: "title",
1304
1307
  spec: "spec",
1308
+ isFavorite: "isFavorite",
1305
1309
  group: (c) => {
1306
1310
  return classifyTime(c.updatedAt);
1307
1311
  }
@@ -1356,7 +1360,9 @@ function createChatStore() {
1356
1360
  item.isFavorite = isFavorite;
1357
1361
  }
1358
1362
  }
1359
- if (!isFavorite && favorite.list.items.length) {
1363
+ if (isFavorite) {
1364
+ await getConversationFavorite();
1365
+ } else if (favorite.list.items.length) {
1360
1366
  favorite.list.items = favorite.list.items.filter((item) => item.id !== conversationId);
1361
1367
  }
1362
1368
  antd.message.success(isFavorite ? "\u6536\u85CF\u6210\u529F" : "\u5DF2\u53D6\u6D88\u6536\u85CF");
@@ -2229,109 +2235,34 @@ window._iconfont_svg_string_5021436 = '<svg><symbol id="icon-Ollama" viewBox="0
2229
2235
  // src/components/IconFont/index.ts
2230
2236
  var IconFont = icons.createFromIconfontCN({});
2231
2237
  var IconFont_default = IconFont;
2232
-
2233
- // src/ui/common/FeatureComponents/style.module.less
2234
- var style_module_default = {
2235
- popover: "style_module_popover",
2236
- resourceBtn: "style_module_resourceBtn",
2237
- divider: "style_module_divider",
2238
- count: "style_module_count",
2239
- resourceBtnActive: "style_module_resourceBtnActive",
2240
- customModal: "style_module_customModal",
2241
- layout: "style_module_layout",
2242
- sider: "style_module_sider",
2243
- categoryName: "style_module_categoryName",
2244
- siderContent: "style_module_siderContent",
2245
- categoryItem: "style_module_categoryItem",
2246
- categoryActive: "style_module_categoryActive",
2247
- roundCheckbox: "style_module_roundCheckbox",
2248
- content: "style_module_content",
2249
- searchInput: "style_module_searchInput",
2250
- selectedCount: "style_module_selectedCount",
2251
- tagsArea: "style_module_tagsArea",
2252
- tagContainer: "style_module_tagContainer",
2253
- tag: "style_module_tag",
2254
- expandBtnWrapper: "style_module_expandBtnWrapper",
2255
- expandBtn: "style_module_expandBtn",
2256
- tagsExpanded: "style_module_tagsExpanded",
2257
- listArea: "style_module_listArea",
2258
- listInner: "style_module_listInner",
2259
- listItem: "style_module_listItem",
2260
- listItemSelected: "style_module_listItemSelected",
2261
- itemIconWrapper: "style_module_itemIconWrapper",
2262
- itemInfo: "style_module_itemInfo",
2263
- itemDesc: "style_module_itemDesc",
2264
- footer: "style_module_footer",
2265
- titleContainer: "style_module_titleContainer",
2266
- favoriteCard: "style_module_favoriteCard",
2267
- favoriteCardActive: "style_module_favoriteCardActive",
2268
- favoriteCardTitle: "style_module_favoriteCardTitle",
2269
- favoriteCardActions: "style_module_favoriteCardActions"};
2270
2238
  var ConversationFavoritesBtn_default = ({ icon, ...rest }) => {
2271
2239
  const chatStore = useChatStore();
2240
+ const conversationsState = valtio.useSnapshot(chatStore.conversations);
2272
2241
  const conversationState = valtio.useSnapshot(chatStore.conversation);
2273
- const favoriteState = valtio.useSnapshot(chatStore.favorite);
2274
- const getFavoriteList = common.useDebounce(() => {
2275
- chatStore.getConversationFavorite();
2276
- }, 300);
2277
- const renderFavoriteList = React10.useMemo(() => {
2278
- return /* @__PURE__ */ jsxRuntime.jsx(antd.Flex, { vertical: true, gap: 4, className: classNames__default.default("height-full", "scroll-fade-in"), children: favoriteState.list.items.length ? favoriteState.list.items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
2279
- "div",
2280
- {
2281
- className: classNames__default.default(style_module_default.favoriteCard, { [style_module_default.favoriteCardActive]: conversationState.active.id === item.id }),
2282
- onClick: () => chatStore.switchConversation(item.id),
2283
- children: /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { gap: 8, align: "center", children: [
2284
- /* @__PURE__ */ jsxRuntime.jsx(antd.Flex, { flex: 1, className: classNames__default.default(style_module_default.favoriteCardTitle, "text-ellipsis"), children: item.title }),
2285
- /* @__PURE__ */ jsxRuntime.jsx(antd.Flex, { gap: 8, align: "center", className: style_module_default.favoriteCardActions, children: /* @__PURE__ */ jsxRuntime.jsx(
2286
- antd.Popconfirm,
2287
- {
2288
- title: "\u63D0\u793A",
2289
- okText: "\u786E\u5B9A",
2290
- cancelText: "\u53D6\u6D88",
2291
- description: "\u786E\u8BA4\u53D6\u6D88\u6536\u85CF\u8BE5\u4F1A\u8BDD\u5417\uFF1F",
2292
- onConfirm: (e) => {
2293
- e.stopPropagation();
2294
- chatStore.collectConversation(item.id, false);
2295
- },
2296
- onCancel: (e) => e.stopPropagation(),
2297
- children: /* @__PURE__ */ jsxRuntime.jsx(
2298
- antd.Button,
2299
- {
2300
- icon: /* @__PURE__ */ jsxRuntime.jsx(icons.DeleteOutlined, {}),
2301
- title: "\u5220\u9664",
2302
- type: "text",
2303
- onClick: (e) => {
2304
- e.stopPropagation();
2305
- }
2306
- }
2307
- )
2308
- }
2309
- ) })
2310
- ] })
2311
- },
2312
- item.id
2313
- )) : /* @__PURE__ */ jsxRuntime.jsx(antd.Empty, { description: "\u6682\u65E0\u6536\u85CF", image: antd.Empty.PRESENTED_IMAGE_SIMPLE }) });
2314
- }, [favoriteState.list.items, conversationState.active.id]);
2315
- const handlePopoverVisibleChange = (visible) => {
2316
- if (!visible) return;
2317
- getFavoriteList();
2242
+ const activeConversation = React10.useMemo(() => {
2243
+ return conversationsState.list.items.find((item) => item.id === conversationState.active.id);
2244
+ }, [conversationsState.list.items, conversationState.active.id]);
2245
+ const isFavorite = Boolean(activeConversation?.isFavorite);
2246
+ const handleToggleFavorite = () => {
2247
+ if (!conversationState.active.id) return;
2248
+ chatStore.collectConversation(conversationState.active.id, !isFavorite);
2318
2249
  };
2319
2250
  return /* @__PURE__ */ jsxRuntime.jsx(
2320
- antd.Popover,
2251
+ antd.Button,
2321
2252
  {
2322
- classNames: { container: style_module_default.popover },
2323
- getPopupContainer: (e) => e,
2324
- placement: "bottom",
2325
- content: renderFavoriteList,
2326
- trigger: ["click"],
2327
- onOpenChange: handlePopoverVisibleChange,
2328
- children: /* @__PURE__ */ jsxRuntime.jsx(antd.Button, { title: "\u6536\u85CF\u5939", type: "text", size: "large", icon: icon?.() || /* @__PURE__ */ jsxRuntime.jsx(icons.StarOutlined, {}), ...rest })
2253
+ title: isFavorite ? "\u53D6\u6D88\u6536\u85CF" : "\u6536\u85CF",
2254
+ type: "text",
2255
+ size: "small",
2256
+ disabled: !conversationState.active.id,
2257
+ icon: icon?.() || (isFavorite ? /* @__PURE__ */ jsxRuntime.jsx(icons.StarFilled, { className: "primary-text" }) : /* @__PURE__ */ jsxRuntime.jsx(icons.StarOutlined, {})),
2258
+ onClick: handleToggleFavorite,
2259
+ ...rest
2329
2260
  }
2330
2261
  );
2331
2262
  };
2332
2263
  var CreateBtn_default = ({ icon, ...rest }) => {
2333
2264
  const chatStore = useChatStore();
2334
- return /* @__PURE__ */ jsxRuntime.jsx(antd.Button, { title: "\u65B0\u5EFA\u4F1A\u8BDD", size: "large", type: "text", icon: icon?.() || /* @__PURE__ */ jsxRuntime.jsx(icons.PlusOutlined, {}), onClick: () => chatStore.createConversation(), ...rest });
2265
+ return /* @__PURE__ */ jsxRuntime.jsx(antd.Button, { title: "\u65B0\u5EFA\u4F1A\u8BDD", size: "small", type: "text", icon: icon?.() || /* @__PURE__ */ jsxRuntime.jsx(icons.PlusOutlined, {}), onClick: () => chatStore.createConversation(), ...rest });
2335
2266
  };
2336
2267
 
2337
2268
  // src/ui/common/styles.module.less
@@ -2344,6 +2275,10 @@ var styles_module_default2 = {
2344
2275
  conversationListPanel: "styles_module_conversationListPanel",
2345
2276
  createConversationButton: "styles_module_createConversationButton",
2346
2277
  conversations: "styles_module_conversations",
2278
+ conversationTabs: "styles_module_conversationTabs",
2279
+ conversationTabPane: "styles_module_conversationTabPane",
2280
+ conversationEmpty: "styles_module_conversationEmpty",
2281
+ conversationScrollArea: "styles_module_conversationScrollArea",
2347
2282
  chatWelcomeWrap: "styles_module_chatWelcomeWrap",
2348
2283
  chatWelcome: "styles_module_chatWelcome",
2349
2284
  promptItem: "styles_module_promptItem",
@@ -2362,12 +2297,30 @@ var styles_module_default2 = {
2362
2297
  };
2363
2298
  var ConversationList_default = () => {
2364
2299
  const chatStore = useChatStore();
2300
+ const agentState = valtio.useSnapshot(chatStore.agent);
2365
2301
  const conversationsState = valtio.useSnapshot(chatStore.conversations);
2366
2302
  const conversationState = valtio.useSnapshot(chatStore.conversation);
2303
+ const favoriteState = valtio.useSnapshot(chatStore.favorite);
2304
+ const [activeTabKey, setActiveTabKey] = React10.useState("history");
2305
+ React10.useEffect(() => {
2306
+ if (!agentState.agentInfo.id) return;
2307
+ chatStore.getConversationFavorite();
2308
+ }, [agentState.agentInfo.id, chatStore]);
2367
2309
  const conversationList = React10.useMemo(() => {
2368
2310
  return conversationsState.list.items.filter((item) => item.label);
2369
2311
  }, [conversationsState.list.items]);
2370
- const menuConfig = (conversation) => ({
2312
+ const favoriteConversationList = React10.useMemo(() => {
2313
+ return favoriteState.list.items.filter((item) => item.title).map((item) => ({
2314
+ ...item,
2315
+ key: item.id,
2316
+ id: item.id,
2317
+ label: item.title,
2318
+ spec: item.spec,
2319
+ isFavorite: true,
2320
+ group: classifyTime(item.updatedAt)
2321
+ }));
2322
+ }, [favoriteState.list.items]);
2323
+ const historyMenuConfig = (conversation) => ({
2371
2324
  items: [
2372
2325
  {
2373
2326
  label: `${conversation.isFavorite ? "\u53D6\u6D88\u6536\u85CF" : "\u6536\u85CF"}`,
@@ -2390,31 +2343,135 @@ var ConversationList_default = () => {
2390
2343
  }
2391
2344
  }
2392
2345
  });
2393
- return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "height-full scroll-fade-in", id: "scrollableDiv", children: conversationList.length ? /* @__PURE__ */ jsxRuntime.jsx(
2394
- InfiniteScroll__default.default,
2346
+ const favoriteMenuConfig = (conversation) => ({
2347
+ trigger: /* @__PURE__ */ jsxRuntime.jsx(
2348
+ antd.Popconfirm,
2349
+ {
2350
+ title: "\u63D0\u793A",
2351
+ okText: "\u786E\u5B9A",
2352
+ cancelText: "\u53D6\u6D88",
2353
+ description: "\u786E\u8BA4\u53D6\u6D88\u6536\u85CF\u8BE5\u4F1A\u8BDD\u5417\uFF1F",
2354
+ onConfirm: (e) => {
2355
+ e.stopPropagation();
2356
+ chatStore.collectConversation(conversation.id, false);
2357
+ },
2358
+ onCancel: (e) => e.stopPropagation(),
2359
+ children: /* @__PURE__ */ jsxRuntime.jsx(
2360
+ antd.Button,
2361
+ {
2362
+ icon: /* @__PURE__ */ jsxRuntime.jsx(icons.DeleteOutlined, {}),
2363
+ title: "\u5220\u9664",
2364
+ type: "text",
2365
+ onClick: (e) => {
2366
+ e.stopPropagation();
2367
+ }
2368
+ }
2369
+ )
2370
+ }
2371
+ ),
2372
+ items: []
2373
+ });
2374
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles_module_default2.conversationTabs, children: /* @__PURE__ */ jsxRuntime.jsx(
2375
+ antd.Tabs,
2395
2376
  {
2396
- dataLength: conversationList.length,
2397
- hasMore: false,
2398
- next: () => {
2399
- console.log("next");
2400
- },
2401
- loader: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-center", children: /* @__PURE__ */ jsxRuntime.jsx(antd.Spin, { indicator: /* @__PURE__ */ jsxRuntime.jsx(icons.RedoOutlined, { spin: true }), size: "small" }) }),
2402
- style: { overflow: "hidden" },
2403
- scrollableTarget: "scrollableDiv",
2404
- children: /* @__PURE__ */ jsxRuntime.jsx(
2405
- xV2.Conversations,
2377
+ activeKey: activeTabKey,
2378
+ centered: true,
2379
+ onChange: setActiveTabKey,
2380
+ items: [
2381
+ {
2382
+ key: "history",
2383
+ label: "\u5386\u53F2\u4F1A\u8BDD",
2384
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles_module_default2.conversationTabPane, children: conversationList.length ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles_module_default2.conversationScrollArea, id: "historyConversationScrollableDiv", children: /* @__PURE__ */ jsxRuntime.jsx(
2385
+ InfiniteScroll__default.default,
2386
+ {
2387
+ dataLength: conversationList.length,
2388
+ hasMore: false,
2389
+ next: () => {
2390
+ console2__default.default.log("next");
2391
+ },
2392
+ loader: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-center", children: /* @__PURE__ */ jsxRuntime.jsx(antd.Spin, { indicator: /* @__PURE__ */ jsxRuntime.jsx(icons.RedoOutlined, { spin: true }), size: "small" }) }),
2393
+ style: { overflow: "hidden" },
2394
+ scrollableTarget: "historyConversationScrollableDiv",
2395
+ children: /* @__PURE__ */ jsxRuntime.jsx(
2396
+ xV2.Conversations,
2397
+ {
2398
+ className: styles_module_default2.conversations,
2399
+ items: conversationList,
2400
+ activeKey: conversationState.active.id,
2401
+ onActiveChange: async (id) => chatStore.switchConversation(id),
2402
+ groupable: true,
2403
+ menu: historyMenuConfig
2404
+ }
2405
+ )
2406
+ }
2407
+ ) }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles_module_default2.conversationEmpty, children: /* @__PURE__ */ jsxRuntime.jsx(antd.Empty, { description: "\u6682\u65E0\u4F1A\u8BDD\u8BB0\u5F55", image: antd.Empty.PRESENTED_IMAGE_SIMPLE }) }) })
2408
+ },
2406
2409
  {
2407
- className: styles_module_default2.conversations,
2408
- items: conversationList,
2409
- activeKey: conversationState.active.id,
2410
- onActiveChange: async (id) => chatStore.switchConversation(id),
2411
- groupable: true,
2412
- menu: menuConfig
2410
+ key: "favorite",
2411
+ label: "\u6536\u85CF\u4F1A\u8BDD",
2412
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles_module_default2.conversationTabPane, children: favoriteConversationList.length ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles_module_default2.conversationScrollArea, id: "favoriteConversationScrollableDiv", children: /* @__PURE__ */ jsxRuntime.jsx(
2413
+ InfiniteScroll__default.default,
2414
+ {
2415
+ dataLength: favoriteConversationList.length,
2416
+ hasMore: false,
2417
+ next: () => {
2418
+ console2__default.default.log("next");
2419
+ },
2420
+ loader: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-center", children: /* @__PURE__ */ jsxRuntime.jsx(antd.Spin, { indicator: /* @__PURE__ */ jsxRuntime.jsx(icons.RedoOutlined, { spin: true }), size: "small" }) }),
2421
+ style: { overflow: "hidden" },
2422
+ scrollableTarget: "favoriteConversationScrollableDiv",
2423
+ children: /* @__PURE__ */ jsxRuntime.jsx(
2424
+ xV2.Conversations,
2425
+ {
2426
+ className: styles_module_default2.conversations,
2427
+ items: favoriteConversationList,
2428
+ activeKey: conversationState.active.id,
2429
+ onActiveChange: async (id) => chatStore.switchConversation(id),
2430
+ groupable: true,
2431
+ menu: favoriteMenuConfig
2432
+ }
2433
+ )
2434
+ }
2435
+ ) }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles_module_default2.conversationEmpty, children: /* @__PURE__ */ jsxRuntime.jsx(antd.Empty, { description: "\u6682\u65E0\u6536\u85CF\u4F1A\u8BDD", image: antd.Empty.PRESENTED_IMAGE_SIMPLE }) }) })
2413
2436
  }
2414
- )
2437
+ ]
2415
2438
  }
2416
- ) : /* @__PURE__ */ jsxRuntime.jsx(antd.Empty, { description: "\u6682\u65E0\u4F1A\u8BDD\u8BB0\u5F55", image: antd.Empty.PRESENTED_IMAGE_SIMPLE }) }) });
2439
+ ) });
2417
2440
  };
2441
+
2442
+ // src/ui/common/FeatureComponents/style.module.less
2443
+ var style_module_default = {
2444
+ popover: "style_module_popover",
2445
+ resourceBtn: "style_module_resourceBtn",
2446
+ divider: "style_module_divider",
2447
+ count: "style_module_count",
2448
+ resourceBtnActive: "style_module_resourceBtnActive",
2449
+ customModal: "style_module_customModal",
2450
+ layout: "style_module_layout",
2451
+ sider: "style_module_sider",
2452
+ categoryName: "style_module_categoryName",
2453
+ siderContent: "style_module_siderContent",
2454
+ categoryItem: "style_module_categoryItem",
2455
+ categoryActive: "style_module_categoryActive",
2456
+ roundCheckbox: "style_module_roundCheckbox",
2457
+ content: "style_module_content",
2458
+ searchInput: "style_module_searchInput",
2459
+ selectedCount: "style_module_selectedCount",
2460
+ tagsArea: "style_module_tagsArea",
2461
+ tagContainer: "style_module_tagContainer",
2462
+ tag: "style_module_tag",
2463
+ expandBtnWrapper: "style_module_expandBtnWrapper",
2464
+ expandBtn: "style_module_expandBtn",
2465
+ tagsExpanded: "style_module_tagsExpanded",
2466
+ listArea: "style_module_listArea",
2467
+ listInner: "style_module_listInner",
2468
+ listItem: "style_module_listItem",
2469
+ listItemSelected: "style_module_listItemSelected",
2470
+ itemIconWrapper: "style_module_itemIconWrapper",
2471
+ itemInfo: "style_module_itemInfo",
2472
+ itemDesc: "style_module_itemDesc",
2473
+ footer: "style_module_footer",
2474
+ titleContainer: "style_module_titleContainer"};
2418
2475
  var HistoryBtn_default = ({ icon, ...rest }) => {
2419
2476
  return /* @__PURE__ */ jsxRuntime.jsx(
2420
2477
  antd.Popover,
@@ -2424,7 +2481,7 @@ var HistoryBtn_default = ({ icon, ...rest }) => {
2424
2481
  classNames: { container: style_module_default.popover },
2425
2482
  content: /* @__PURE__ */ jsxRuntime.jsx(ConversationList_default, {}),
2426
2483
  trigger: ["click"],
2427
- children: /* @__PURE__ */ jsxRuntime.jsx(antd.Button, { title: "\u5386\u53F2\u4F1A\u8BDD", size: "large", type: "text", icon: icon?.() || /* @__PURE__ */ jsxRuntime.jsx(icons.CommentOutlined, {}), ...rest })
2484
+ children: /* @__PURE__ */ jsxRuntime.jsx(antd.Button, { title: "\u5386\u53F2\u4F1A\u8BDD", size: "small", type: "text", icon: icon?.() || /* @__PURE__ */ jsxRuntime.jsx(icons.CommentOutlined, {}), ...rest })
2428
2485
  }
2429
2486
  );
2430
2487
  };
@@ -2439,7 +2496,7 @@ var ChatHeader_default = ({
2439
2496
  const chatStore = useChatStore();
2440
2497
  const agentState = valtio.useSnapshot(chatStore.agent);
2441
2498
  const configState = valtio.useSnapshot(chatStore.config);
2442
- return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: classNames__default.default(styles_module_default2.chatHeader, "zero-chat-header"), children: [
2499
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: classNames2__default.default(styles_module_default2.chatHeader, "zero-chat-header"), children: [
2443
2500
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles_module_default2.chatHeaderContent, children: [
2444
2501
  /* @__PURE__ */ jsxRuntime.jsx(
2445
2502
  common.RenderWrapper,
@@ -2485,8 +2542,8 @@ var ConversationListHeader_default = ({ title = true, avatar = true, newConversa
2485
2542
  {
2486
2543
  control: title,
2487
2544
  DefaultComponent: /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { vertical: true, gap: 4, flex: 1, style: { minWidth: 0 }, children: [
2488
- /* @__PURE__ */ jsxRuntime.jsx(Text, { strong: true, className: classNames__default.default("fz-16"), children: agentState.agentInfo.name }),
2489
- /* @__PURE__ */ jsxRuntime.jsx(Text, { type: "secondary", ellipsis: true, className: classNames__default.default("fz-12"), children: agentState.agentInfo.description })
2545
+ /* @__PURE__ */ jsxRuntime.jsx(Text, { strong: true, className: classNames2__default.default("fz-16"), children: agentState.agentInfo.name }),
2546
+ /* @__PURE__ */ jsxRuntime.jsx(Text, { type: "secondary", ellipsis: true, className: classNames2__default.default("fz-12"), children: agentState.agentInfo.description })
2490
2547
  ] }) })
2491
2548
  }
2492
2549
  )
@@ -2501,7 +2558,7 @@ var ConversationListHeader_default = ({ title = true, avatar = true, newConversa
2501
2558
  block: true,
2502
2559
  type: "primary",
2503
2560
  onClick: () => chatStore.createConversation(),
2504
- className: classNames__default.default(styles_module_default2.createConversationButton),
2561
+ className: classNames2__default.default(styles_module_default2.createConversationButton),
2505
2562
  icon: /* @__PURE__ */ jsxRuntime.jsx(icons.PlusOutlined, {}),
2506
2563
  children: "\u65B0\u5EFA\u4F1A\u8BDD"
2507
2564
  }
@@ -2511,7 +2568,7 @@ var ConversationListHeader_default = ({ title = true, avatar = true, newConversa
2511
2568
  ] });
2512
2569
  };
2513
2570
  var ConversationListPanel = ({ header }) => {
2514
- return /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { vertical: true, className: classNames__default.default("height-full", "zero-chat-conversations", styles_module_default2.conversationListPanel), children: [
2571
+ return /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { vertical: true, className: classNames2__default.default("height-full", "zero-chat-conversations", styles_module_default2.conversationListPanel), children: [
2515
2572
  /* @__PURE__ */ jsxRuntime.jsx(common.RenderWrapper, { control: header, DefaultComponent: ConversationListHeader_default }),
2516
2573
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "full-scroll", children: /* @__PURE__ */ jsxRuntime.jsx(ConversationList_default, {}) })
2517
2574
  ] });
@@ -2980,7 +3037,7 @@ var CHART_COMPONENTS = Object.fromEntries(
2980
3037
  );
2981
3038
  var Charts_default = ({ data, loading }) => {
2982
3039
  const { type, config } = data;
2983
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames__default.default(styles_module_default3.chart, "scroll-fade-in"), children: loading ? (
3040
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames2__default.default(styles_module_default3.chart, "scroll-fade-in"), children: loading ? (
2984
3041
  // Antd 骨架屏
2985
3042
  /* @__PURE__ */ jsxRuntime.jsx(antd.Skeleton.Node, { active: true, className: styles_module_default3.chartSkeleton, children: /* @__PURE__ */ jsxRuntime.jsx(icons.DotChartOutlined, { className: styles_module_default3.chartSkeletonIcon }) })
2986
3043
  ) : /* @__PURE__ */ jsxRuntime.jsx(
@@ -3275,7 +3332,7 @@ var XMarkdown_default = React10.memo(({ message: message3, components = {}, cont
3275
3332
  return /* @__PURE__ */ jsxRuntime.jsx(
3276
3333
  XMarkdown__default.default,
3277
3334
  {
3278
- className: classNames__default.default("x-markdown-light", styles_module_default4.xMarkdownStyle),
3335
+ className: classNames2__default.default("x-markdown-light", styles_module_default4.xMarkdownStyle),
3279
3336
  config,
3280
3337
  ...rest,
3281
3338
  content: processedContent,
@@ -3620,7 +3677,7 @@ var Switch = ({ id, label, value, bind_path_token, onChange, onDataChange }) =>
3620
3677
  /* @__PURE__ */ jsxRuntime.jsx("span", { style: { fontSize: 13, color: "#555" }, children: label })
3621
3678
  ] });
3622
3679
  };
3623
- var Button10 = ({ label, variant = "default", onClick, action, onAction }) => {
3680
+ var Button11 = ({ label, variant = "default", onClick, action, onAction }) => {
3624
3681
  const handleClick = () => {
3625
3682
  if (onClick) {
3626
3683
  onClick();
@@ -3650,7 +3707,7 @@ var A2uiComponents = {
3650
3707
  TextField,
3651
3708
  Select,
3652
3709
  Switch,
3653
- Button: Button10,
3710
+ Button: Button11,
3654
3711
  Divider,
3655
3712
  Tag: Tag3,
3656
3713
  Progress,
@@ -4927,7 +4984,7 @@ var TextNode2 = React10__namespace.default.memo(
4927
4984
  }
4928
4985
  const markdownContent = typeof content === "string" ? transformResourceText(content) : content;
4929
4986
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
4930
- !!item.reasoningContent && /* @__PURE__ */ jsxRuntime.jsx(xV2.Think, { title: "\u6DF1\u5EA6\u601D\u8003", children: item.reasoningContent }),
4987
+ !!item.reasoningContent && /* @__PURE__ */ jsxRuntime.jsx(xV2.Think, { title: "\u6DF1\u5EA6\u601D\u8003", style: { marginBottom: "16px" }, children: item.reasoningContent }),
4931
4988
  !!markdownContent && /* @__PURE__ */ jsxRuntime.jsx(XMarkdown_default, { message: message3, components: markdownComponents, content: markdownContent })
4932
4989
  ] });
4933
4990
  }
@@ -4936,15 +4993,17 @@ var TextNode2 = React10__namespace.default.memo(
4936
4993
  // src/components/CustomComponents/ToolRenders/index.module.less
4937
4994
  var index_module_default2 = {
4938
4995
  toolCollapse: "index_module_toolCollapse",
4939
- iconContainer: "index_module_iconContainer",
4996
+ toolCallItem: "index_module_toolCallItem",
4997
+ toolIcon: "index_module_toolIcon",
4940
4998
  toolName: "index_module_toolName",
4999
+ statusIcon: "index_module_statusIcon",
5000
+ duration: "index_module_duration",
4941
5001
  toolNamePending: "index_module_toolNamePending",
4942
5002
  dot: "index_module_dot",
4943
5003
  dotBlink: "index_module_dotBlink",
4944
- duration: "index_module_duration",
4945
- statusIcon: "index_module_statusIcon",
4946
5004
  expandIcon: "index_module_expandIcon",
4947
5005
  expanded: "index_module_expanded",
5006
+ contentScrollContainer: "index_module_contentScrollContainer",
4948
5007
  sectionLabel: "index_module_sectionLabel",
4949
5008
  plainTextContainer: "index_module_plainTextContainer",
4950
5009
  markdownContainer: "index_module_markdownContainer",
@@ -4967,7 +5026,6 @@ var index_module_default2 = {
4967
5026
  errorDisplay: "index_module_errorDisplay",
4968
5027
  sectionBlock: "index_module_sectionBlock",
4969
5028
  compactSectionBlock: "index_module_compactSectionBlock",
4970
- contentScrollContainer: "index_module_contentScrollContainer",
4971
5029
  subAgentContainer: "index_module_subAgentContainer",
4972
5030
  subAgentHeader: "index_module_subAgentHeader",
4973
5031
  subAgentName: "index_module_subAgentName",
@@ -5207,13 +5265,13 @@ var ToolCallItem = ({ item }) => {
5207
5265
  const displayName = item.title || (showLoading ? "" : item.toolName || "Unknown Tool");
5208
5266
  const renderIcon = () => {
5209
5267
  if (!item.toolIcon) {
5210
- return /* @__PURE__ */ jsxRuntime.jsx(icons.ToolOutlined, { style: { fontSize: 14, color: token.colorTextSecondary } });
5268
+ return /* @__PURE__ */ jsxRuntime.jsx(icons.ToolOutlined, { style: { fontSize: 14 } });
5211
5269
  }
5212
5270
  const isUrl = /^(http|\/)/.test(item.toolIcon);
5213
5271
  if (isUrl) {
5214
5272
  return /* @__PURE__ */ jsxRuntime.jsx("img", { src: item.toolIcon, alt: "tool-icon", style: { width: "100%", height: "100%", objectFit: "contain" } });
5215
5273
  }
5216
- return /* @__PURE__ */ jsxRuntime.jsx("span", { style: { fontSize: 14, lineHeight: 1 }, children: item.toolIcon });
5274
+ return /* @__PURE__ */ jsxRuntime.jsx("span", { className: index_module_default2.toolIcon, children: item.toolIcon });
5217
5275
  };
5218
5276
  return /* @__PURE__ */ jsxRuntime.jsx(
5219
5277
  antd.Collapse,
@@ -5224,31 +5282,18 @@ var ToolCallItem = ({ item }) => {
5224
5282
  defaultActiveKey: isDefaultExpanded && hasContent ? [item.toolCallId || "fallback-key"] : void 0,
5225
5283
  expandIconPlacement: "end",
5226
5284
  expandIcon: ({ isActive }) => hasContent ? /* @__PURE__ */ jsxRuntime.jsx(icons.RightOutlined, { className: `${index_module_default2.expandIcon} ${isActive ? index_module_default2.expanded : ""}` }) : null,
5227
- styles: {
5228
- header: {
5229
- padding: "4px 8px",
5230
- overflow: "hidden"
5231
- },
5232
- body: {
5233
- padding: "0 8px 8px"
5234
- }
5235
- },
5236
5285
  items: [
5237
5286
  {
5238
5287
  key: item.toolCallId || "fallback-key",
5239
5288
  showArrow: hasContent,
5240
- label: /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { align: "center", gap: 8, style: { flex: 1, minWidth: 0 }, children: [
5241
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: index_module_default2.iconContainer, children: renderIcon() }),
5242
- displayName ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: index_module_default2.toolName, children: displayName }) : /* @__PURE__ */ jsxRuntime.jsxs("span", { className: index_module_default2.toolNamePending, children: [
5289
+ label: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: index_module_default2.toolCallItem, children: [
5290
+ /* @__PURE__ */ jsxRuntime.jsx("div", { children: renderIcon() }),
5291
+ displayName ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: `${index_module_default2.toolName} text-ellipsis`, children: displayName }) : /* @__PURE__ */ jsxRuntime.jsxs("span", { className: index_module_default2.toolNamePending, children: [
5243
5292
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: index_module_default2.dot }),
5244
5293
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: index_module_default2.dot }),
5245
5294
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: index_module_default2.dot })
5246
5295
  ] }),
5247
- showLoading && /* @__PURE__ */ jsxRuntime.jsx("div", { className: index_module_default2.statusIcon, style: { color: token.colorPrimary }, children: /* @__PURE__ */ jsxRuntime.jsx(icons.LoadingOutlined, {}) }),
5248
- item.duration && /* @__PURE__ */ jsxRuntime.jsxs(antd.Typography.Text, { className: index_module_default2.duration, children: [
5249
- item.duration,
5250
- "ms"
5251
- ] })
5296
+ showLoading && /* @__PURE__ */ jsxRuntime.jsx("div", { className: index_module_default2.statusIcon, style: { color: token.colorPrimary }, children: /* @__PURE__ */ jsxRuntime.jsx(icons.LoadingOutlined, {}) })
5252
5297
  ] }),
5253
5298
  children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: index_module_default2.contentScrollContainer, children: /* @__PURE__ */ jsxRuntime.jsx(
5254
5299
  CustomRender,
@@ -5335,7 +5380,7 @@ var MessageRender_default = React10__namespace.default.memo(({ role, message: me
5335
5380
  ),
5336
5381
  index === lastToolCallIndex && messageIndex >= 0 ? /* @__PURE__ */ jsxRuntime.jsx(A2uiMessageCards, { messageIndex, message: message3 }) : null
5337
5382
  ] }, `message-${index}`)),
5338
- showPending && /* @__PURE__ */ jsxRuntime.jsx(xV2.Bubble, { role: role.user, placement: role.placement, content: /* @__PURE__ */ jsxRuntime.jsx(RunStartedNode, {}) }),
5383
+ showPending && role.user === "agent" && /* @__PURE__ */ jsxRuntime.jsx(xV2.Bubble, { role: role.user, placement: role.placement, content: /* @__PURE__ */ jsxRuntime.jsx(RunStartedNode, {}) }),
5339
5384
  quoteMsg && /* @__PURE__ */ jsxRuntime.jsx(QuoteMsgNode, { quoteMsg, role })
5340
5385
  ] });
5341
5386
  });
@@ -5352,7 +5397,7 @@ var WelcomeItem_default = ({ icon = true, title = true, description = true, prom
5352
5397
  /* @__PURE__ */ jsxRuntime.jsx(
5353
5398
  xV2.Welcome,
5354
5399
  {
5355
- className: classNames__default.default(styles_module_default2.chatWelcome, "p-t-32"),
5400
+ className: classNames2__default.default(styles_module_default2.chatWelcome, "p-t-32"),
5356
5401
  variant: "borderless",
5357
5402
  icon: /* @__PURE__ */ jsxRuntime.jsx(
5358
5403
  common.RenderWrapper,
@@ -5378,7 +5423,7 @@ var WelcomeItem_default = ({ icon = true, title = true, description = true, prom
5378
5423
  DefaultComponent: /* @__PURE__ */ jsxRuntime.jsx(
5379
5424
  xV2.Prompts,
5380
5425
  {
5381
- className: classNames__default.default("m-t-16", styles_module_default2.promptItem),
5426
+ className: classNames2__default.default("m-t-16", styles_module_default2.promptItem),
5382
5427
  wrap: true,
5383
5428
  onItemClick: (info) => chatStore.sendMessage(info.data.description),
5384
5429
  items: recommendQuestions
@@ -5587,7 +5632,7 @@ var BubbleListItems_default = ({
5587
5632
  autoScroll: false,
5588
5633
  ref: listRef,
5589
5634
  items: bubbleListItems,
5590
- className: classNames__default.default(styles_module_default2.bubbleList, "height-full", "scroll-fade-in"),
5635
+ className: classNames2__default.default(styles_module_default2.bubbleList, "height-full", "scroll-fade-in"),
5591
5636
  onScroll: handleScroll
5592
5637
  },
5593
5638
  conversationState.active.id
@@ -5738,7 +5783,7 @@ var ResourceSelectorModal_default = ({ open, type, onCancel }) => {
5738
5783
  return /* @__PURE__ */ jsxRuntime.jsxs(
5739
5784
  antd.Flex,
5740
5785
  {
5741
- className: classNames__default.default(style_module_default.categoryItem, { [style_module_default.categoryActive]: isChecked }),
5786
+ className: classNames2__default.default(style_module_default.categoryItem, { [style_module_default.categoryActive]: isChecked }),
5742
5787
  onClick: () => handleCategoryChange(cat.id, !isChecked),
5743
5788
  children: [
5744
5789
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -5773,7 +5818,7 @@ var ResourceSelectorModal_default = ({ open, type, onCancel }) => {
5773
5818
  "\u5DF2\u9009 ",
5774
5819
  selectedIds.length
5775
5820
  ] }) }),
5776
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: classNames__default.default(style_module_default.tagsArea, { [style_module_default.tagsExpanded]: tagsExpanded }), children: [
5821
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: classNames2__default.default(style_module_default.tagsArea, { [style_module_default.tagsExpanded]: tagsExpanded }), children: [
5777
5822
  /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { gap: 8, className: style_module_default.tagContainer, wrap: true, ref: tagsContainerRef, children: [
5778
5823
  selectedIds.map((id) => /* @__PURE__ */ jsxRuntime.jsx(
5779
5824
  antd.Tag,
@@ -5803,7 +5848,7 @@ var ResourceSelectorModal_default = ({ open, type, onCancel }) => {
5803
5848
  return /* @__PURE__ */ jsxRuntime.jsxs(
5804
5849
  "div",
5805
5850
  {
5806
- className: classNames__default.default(style_module_default.listItem, { [style_module_default.listItemSelected]: isSelected }),
5851
+ className: classNames2__default.default(style_module_default.listItem, { [style_module_default.listItemSelected]: isSelected }),
5807
5852
  onClick: () => toggleItemSelection(item.id),
5808
5853
  children: [
5809
5854
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: style_module_default.itemIconWrapper, children: /* @__PURE__ */ jsxRuntime.jsx(IconFont_default, { type: iconType }) }),
@@ -5933,7 +5978,7 @@ var ReasonBtn_default = ({}) => {
5933
5978
  return /* @__PURE__ */ jsxRuntime.jsxs(
5934
5979
  "div",
5935
5980
  {
5936
- className: classNames__default.default(style_module_default.resourceBtn, { [style_module_default.resourceBtnActive]: agentState.model.reasoning }),
5981
+ className: classNames2__default.default(style_module_default.resourceBtn, { [style_module_default.resourceBtnActive]: agentState.model.reasoning }),
5937
5982
  onClick: () => chatStore.setAgentModel({ ...agentState.model, reasoning: !agentState.model.reasoning }),
5938
5983
  children: [
5939
5984
  /* @__PURE__ */ jsxRuntime.jsx(IconFont_default, { type: "icon-reason" }),
@@ -6406,9 +6451,9 @@ var ChatMainPanel = React10.memo(
6406
6451
  );
6407
6452
  const configState = valtio.useSnapshot(chatStore.config);
6408
6453
  const agentState = valtio.useSnapshot(chatStore.agent);
6409
- return /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { vertical: true, className: classNames__default.default("height-full"), children: [
6454
+ return /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { vertical: true, className: classNames2__default.default("height-full"), children: [
6410
6455
  /* @__PURE__ */ jsxRuntime.jsx(common.RenderWrapper, { control: configState.layout.chatHeader, DefaultComponent: ChatHeader_default }),
6411
- /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { align: "center", vertical: true, gap: 24, className: classNames__default.default("height-full", styles_module_default5.bodyWidth), children: [
6456
+ /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { align: "center", vertical: true, gap: 24, className: classNames2__default.default("height-full", styles_module_default5.bodyWidth), children: [
6412
6457
  common.shouldRender(agentState.agentInfo.userInput && agentState.agentInfo.userInput.length > 0) && /* @__PURE__ */ jsxRuntime.jsx(common.RenderWrapper, { control: configState.layout.userInput, DefaultComponent: UserInputPanel_default }),
6413
6458
  common.shouldRender(configState.layout.messageList) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "full-scroll", style: { width: "100%" }, children: /* @__PURE__ */ jsxRuntime.jsx(common.RenderWrapper, { control: configState.layout.messageList, DefaultComponent: BubbleListItems_default }) }),
6414
6459
  /* @__PURE__ */ jsxRuntime.jsx(common.RenderWrapper, { control: configState.layout.senderHeader, DefaultComponent: /* @__PURE__ */ jsxRuntime.jsx(ChatSenderHeader_default, {}) }),
@@ -6443,7 +6488,7 @@ var ChatPreviewPanel = React10.memo(({ file }) => {
6443
6488
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
6444
6489
  file.fileUrl && /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { vertical: true, className: "height-full", children: [
6445
6490
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles_module_default5.previewHeader, children: [
6446
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames__default.default(styles_module_default5.previewHeaderTitle, "text-ellipsis"), title: file.fileName, children: file.fileName }),
6491
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames2__default.default(styles_module_default5.previewHeaderTitle, "text-ellipsis"), title: file.fileName, children: file.fileName }),
6447
6492
  /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { gap: 8, justify: "center", align: "center", children: [
6448
6493
  /* @__PURE__ */ jsxRuntime.jsx(
6449
6494
  antd.Button,
@@ -6579,12 +6624,12 @@ var layouts_default = React10.forwardRef(({ theme: theme5, params, hooks, layout
6579
6624
  React10.useEffect(() => {
6580
6625
  hooks?.onBeforeInit?.();
6581
6626
  }, []);
6582
- return /* @__PURE__ */ jsxRuntime.jsx(xV2.XProvider, { theme: { cssVar: {}, ...theme5 }, children: /* @__PURE__ */ jsxRuntime.jsx(ChatProvider, { store: chatStore, children: /* @__PURE__ */ jsxRuntime.jsx(antd.Spin, { spinning: configState.loading, classNames: { root: "full-spin" }, children: /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { vertical: true, className: classNames__default.default(index_module_default3.chatLayout, "zero-chat-layout", "height-full"), children: [
6627
+ return /* @__PURE__ */ jsxRuntime.jsx(xV2.XProvider, { theme: { cssVar: {}, ...theme5 }, children: /* @__PURE__ */ jsxRuntime.jsx(ChatProvider, { store: chatStore, children: /* @__PURE__ */ jsxRuntime.jsx(antd.Spin, { spinning: configState.loading, classNames: { root: "full-spin" }, children: /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { vertical: true, className: classNames2__default.default(index_module_default3.chatLayout, "zero-chat-layout", "height-full"), children: [
6583
6628
  /* @__PURE__ */ jsxRuntime.jsx(common.RenderWrapper, { control: configState.layout.globalHeader, DefaultComponent: ChatHeader_default }),
6584
6629
  /* @__PURE__ */ jsxRuntime.jsxs(antd.Flex, { ref: containerRef, className: "full-scroll", children: [
6585
6630
  /* @__PURE__ */ jsxRuntime.jsx(common.RenderWrapper, { control: configState.layout.leftPanel }),
6586
6631
  /* @__PURE__ */ jsxRuntime.jsx(common.RenderWrapper, { control: configState.layout.conversationList, DefaultComponent: ConversationListPanel_default }),
6587
- /* @__PURE__ */ jsxRuntime.jsxs(antd.Splitter, { className: classNames__default.default("flex-1", index_module_default3.animatedSplitter, { [index_module_default3.hideSplitterBar]: !hasPreView }), children: [
6632
+ /* @__PURE__ */ jsxRuntime.jsxs(antd.Splitter, { className: classNames2__default.default("flex-1", index_module_default3.animatedSplitter, { [index_module_default3.hideSplitterBar]: !hasPreView }), children: [
6588
6633
  /* @__PURE__ */ jsxRuntime.jsx(antd.Splitter.Panel, { collapsible: false, max: 800, min: 400, size: sizes[1], children: /* @__PURE__ */ jsxRuntime.jsx(ChatMainPanel_default, { ref: senderRef }) }),
6589
6634
  /* @__PURE__ */ jsxRuntime.jsx(antd.Splitter.Panel, { collapsible: false, min: 600, size: sizes[0], children: /* @__PURE__ */ jsxRuntime.jsx(ChatPreviewPanel_default, { file: configState.preview.file }) })
6590
6635
  ] })