@zero-library/chat-agent 2.2.14 → 2.2.16

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
@@ -282,7 +282,7 @@ var classifyTime = (timestamp) => {
282
282
  }
283
283
  };
284
284
  var replaceMarkdownTags = (str) => {
285
- return str.replace(/<think>/g, ":::alert type=think data={content:'").replace(/<\/think>/g, "'} :::");
285
+ return str.replace(/<think>/g, ":::alert type=think data={content:'").replace(/<\/think>/g, "'} :::\n");
286
286
  };
287
287
  var getChatSocketUrl = (baseURL, params) => {
288
288
  return common.buildUrlParams(params, common.getWebSocketUrl(`${baseURL}/lolr/conversation/ws/subscribe`), "comma");
@@ -689,8 +689,13 @@ function createChatStore() {
689
689
  const setSpeakHuman = (speakHuman) => {
690
690
  conversation.messages[conversation.active.id].speakHuman = speakHuman;
691
691
  };
692
- const setReferences = (references) => {
692
+ const setReferences = async (references) => {
693
+ const canProceed = await config.hooks?.onBeforeSetReferences?.(references);
694
+ if (canProceed === false) {
695
+ throw new Error("\u64CD\u4F5C\u88AB\u963B\u6B62");
696
+ }
693
697
  conversation.messages[conversation.active.id].references = references;
698
+ config.hooks?.onAfterSetReferences?.(references);
694
699
  };
695
700
  const setContent = (content) => {
696
701
  conversation.messages[conversation.active.id].content = content;
@@ -1193,13 +1198,6 @@ var MessageRender_default = ({ message: message2, placement, onFilePreview }) =>
1193
1198
  ] }) });
1194
1199
  };
1195
1200
 
1196
- // src/core/constants.ts
1197
- var MEMBER_TYPE = {
1198
- 1: "user",
1199
- 2: "other",
1200
- 3: "agent"
1201
- };
1202
-
1203
1201
  // src/ui/common/BubbleListItems.tsx
1204
1202
  init_Context();
1205
1203
 
@@ -1284,6 +1282,7 @@ var BubbleListItems_default = ({ firstMessage = false, welcomeMessage = true, av
1284
1282
  const roles = {};
1285
1283
  if (conversationState.active.member.user) {
1286
1284
  roles.user = {
1285
+ id: conversationState.active.member.user.memberId,
1287
1286
  user: "user",
1288
1287
  placement: "end",
1289
1288
  avatar: (common.isBoolean(avatar) ? avatar : avatar?.user) ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -1298,6 +1297,7 @@ var BubbleListItems_default = ({ firstMessage = false, welcomeMessage = true, av
1298
1297
  }
1299
1298
  if (conversationState.active.member.agent) {
1300
1299
  roles.agent = {
1300
+ id: conversationState.active.member.agent.memberId,
1301
1301
  user: "agent",
1302
1302
  placement: "start",
1303
1303
  avatar: (common.isBoolean(avatar) ? avatar : avatar?.agent) ? { src: conversationState.active.member.agent?.memberAvatar, icon: /* @__PURE__ */ jsxRuntime.jsx(icons.OpenAIOutlined, {}) } : null
@@ -1305,6 +1305,7 @@ var BubbleListItems_default = ({ firstMessage = false, welcomeMessage = true, av
1305
1305
  }
1306
1306
  if (conversationState.active.member.other) {
1307
1307
  roles.other = {
1308
+ id: conversationState.active.member.other.memberId,
1308
1309
  user: "other",
1309
1310
  placement: "start",
1310
1311
  avatar: (common.isBoolean(avatar) ? avatar : avatar?.other) ? { src: conversationState.active.member.other?.memberAvatar, icon: /* @__PURE__ */ jsxRuntime.jsx(icons.OpenAIOutlined, {}) } : null
@@ -1352,9 +1353,13 @@ var BubbleListItems_default = ({ firstMessage = false, welcomeMessage = true, av
1352
1353
  ] : [],
1353
1354
  [chatMessage?.questionList]
1354
1355
  );
1356
+ const getRole = (sender) => {
1357
+ const roleKey = Object.keys(conversationRoles).find((key) => conversationRoles[key].id === sender.id);
1358
+ return conversationRoles[roleKey] || {};
1359
+ };
1355
1360
  const chatRecords = react.useMemo(() => {
1356
1361
  return (chatMessage?.message || []).map((message2, index) => {
1357
- const role = conversationRoles[MEMBER_TYPE[message2.sender.type]] || {};
1362
+ const role = getRole(message2.sender);
1358
1363
  return {
1359
1364
  key: message2.id,
1360
1365
  placement: role.placement,