@blueking/ai-ui-sdk 0.0.7-beta.6 → 0.0.7-beta.8

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.
@@ -17,3 +17,10 @@ export declare function durationFormatter(val: number): string;
17
17
  */
18
18
  export declare function handleDownLoad(source: string, filename?: string): void;
19
19
  export declare const handleCopy: (text: string) => void;
20
+ /**
21
+ * 处理提示词模板,替换模板中的变量
22
+ * @param prompt 提示词模板
23
+ * @param selectedText 选中的文本
24
+ * @returns 处理后的提示词
25
+ */
26
+ export declare const processPromptTemplate: (prompt: string, selectedText: string) => string;
@@ -1,4 +1,4 @@
1
- import type { ISessionContent, ISession, ISessionPrompt, ChatCallbacks } from '../types/type.ts';
1
+ import type { ISessionContent, ISession, ISessionPrompt, ChatCallbacks, BasicChatContent, ShortcutChatContent } from '../types/type.ts';
2
2
  import { SessionContentRole, SessionContentStatus } from '../types/enum';
3
3
  type SessionContentsMap = {
4
4
  [key: string]: ISessionContent[];
@@ -6,7 +6,7 @@ type SessionContentsMap = {
6
6
  type SessionLoadingMap = {
7
7
  [key: string]: boolean;
8
8
  };
9
- export declare const useChat: <T extends ISession = ISession>({ handleStart, handleText, handleReferenceDoc, handleThink, handleEnd, handleError, }?: ChatCallbacks) => {
9
+ export declare const useChat: <T extends ISession = ISession>({ handleStart, handleText, handleReferenceDoc, handleThink, handleEnd, handleError, requestOptions, }?: ChatCallbacks) => {
10
10
  currentSession: import("vue").Ref<T | undefined, T | undefined>;
11
11
  sessionContents: import("vue").Ref<{
12
12
  id?: number | undefined;
@@ -21,6 +21,8 @@ export declare const useChat: <T extends ISession = ISession>({ handleStart, han
21
21
  rate?: number | undefined;
22
22
  status?: SessionContentStatus | undefined;
23
23
  sessionCode: string;
24
+ cite?: string | undefined;
25
+ time?: string | undefined;
24
26
  }[], ISessionContent[] | {
25
27
  id?: number | undefined;
26
28
  createdAt?: string | undefined;
@@ -34,16 +36,20 @@ export declare const useChat: <T extends ISession = ISession>({ handleStart, han
34
36
  rate?: number | undefined;
35
37
  status?: SessionContentStatus | undefined;
36
38
  sessionCode: string;
39
+ cite?: string | undefined;
40
+ time?: string | undefined;
37
41
  }[]>;
38
42
  sessionContentsMap: SessionContentsMap;
39
43
  sessionLoadingMap: import("vue").Ref<SessionLoadingMap, SessionLoadingMap>;
40
44
  prompts: import("vue").ComputedRef<ISessionPrompt[]>;
45
+ currentSessionLoading: import("vue").ComputedRef<boolean>;
41
46
  chat: ({ sessionCode, data, url, headers, }: {
42
47
  sessionCode: string;
43
48
  data?: Record<string, any>;
44
49
  url: string;
45
50
  headers?: Record<string, string>;
46
51
  }) => void;
52
+ sendChat: (content: BasicChatContent | ShortcutChatContent, callback?: () => void) => void;
47
53
  stopChat: (sessionCode: string) => void;
48
54
  plusSessionContent: (sessionCode: string, sessionContent: ISessionContent) => void;
49
55
  updateSessionContent: (sessionContent: ISessionContent) => void;
@@ -56,5 +62,11 @@ export declare const useChat: <T extends ISession = ISession>({ handleStart, han
56
62
  deleteSessionContents: (sessionCode: string, contentIds: number[]) => number[];
57
63
  handleStartChat: (sessionCode: string) => void | undefined;
58
64
  handleErrorChat: (sessionCode: string, message: string, code?: string) => void | undefined;
65
+ reGenerateChat: (chatIndex: number) => void;
66
+ reSendChat: (index: number, { message, cite }: {
67
+ message: string;
68
+ cite?: string;
69
+ }, callback?: () => void) => void;
70
+ deleteChat: (index: number) => void;
59
71
  };
60
72
  export {};
package/dist/main.js CHANGED
@@ -35,13 +35,6 @@ var update = add("31b80a08", content, true, {});
35
35
 
36
36
  /***/ }),
37
37
 
38
- /***/ 89:
39
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
40
-
41
- module.exports = __webpack_require__.p + "svg/iconcool.99d41d1a.svg";
42
-
43
- /***/ }),
44
-
45
38
  /***/ 106:
46
39
  /***/ ((module) => {
47
40
 
@@ -448,6 +441,13 @@ module.exports = function (i) {
448
441
 
449
442
  /***/ }),
450
443
 
444
+ /***/ 705:
445
+ /***/ ((module) => {
446
+
447
+ module.exports = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PgogIDwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCIgPgogIDxzdmc+CiAgPG1ldGFkYXRhPgogIENyZWF0ZWQgYnkgZm9udC1jYXJyaWVyCiAgPC9tZXRhZGF0YT4KICA8ZGVmcz4KICA8Zm9udCBpZD0iaWNvbmZvbnQiIGhvcml6LWFkdi14PSIxMDI0IiB2ZXJ0LWFkdi15PSIxMDI0IiA+CiAgICA8Zm9udC1mYWNlCiAgICAgIAogICAgICBmb250LWZhbWlseT0iaWNvbmZvbnQiCiAgICAgIAogICAgICBmb250LXdlaWdodD0iNDAwIgogICAgICAKICAgICAgZm9udC1zdHJldGNoPSJub3JtYWwiCiAgICAgIAogICAgICB1bml0cy1wZXItZW09IjEwMjQiCiAgICAgIAogICAgICBhc2NlbnQ9IjgxMiIKICAgICAgCiAgICAgIGRlc2NlbnQ9Ii0yMTIiCiAgICAgIAogICAgLz4KICAgICAgPG1pc3NpbmctZ2x5cGggLz4KCiAgICAgIAogICAgICA8Z2x5cGggZ2x5cGgtbmFtZT0ieCIgdW5pY29kZT0iJiN4Nzg7IiBob3Jpei1hZHYteD0iMTAwIgogICAgICAgIGQ9Ik0yMCAyMCBMNTAgMjAgTDUwIC0yMCBaIiAvPgogICAgICAKCiAgICAgIAogICAgICA8Z2x5cGggZ2x5cGgtbmFtZT0idW5pRTEwMyIgdW5pY29kZT0iJiN4RTEwMzsiIGQ9Ik01MTIgNDQ0TDczNiAyMjAgNjg4IDE3MiA1MTIgMzQ4IDMzNiAxNzIgMjg4IDIyMCA1MTIgNDQ0WiIgIGhvcml6LWFkdi14PSIxMDI0IiB2ZXJ0LWFkdi15PSIxMDI0IiAgLz4KCiAgICAgIAogICAgICA8Z2x5cGggZ2x5cGgtbmFtZT0idW5pRTEwNSIgdW5pY29kZT0iJiN4RTEwNTsiIGQ9Ik0yNjMuMDQgNTEuMDRBMTQ4LjQ4IDE0OC40OCAwIDAgMCAyNjEuMTIgMjc1LjA0TDM1My42IDM2Ny41MiAzMDguNDggNDEzLjI4IDIxNiAzMjAuOEEyMTIuOCAyMTIuOCAwIDAgMSAyMTcuOTIgNS45MiAyMTIuOCAyMTIuOCAwIDAgMSA1MzIuOCA0TDYyNS4yOCA5Ni40OCA1NzkuODQgMTQwIDQ4Ny4zNiA0Ny41MkExNDguNDggMTQ4LjQ4IDAgMCAwIDI2My4wNCA1MS4wNFpNNDkxLjIgNTk2TDM5OC43MiA1MDMuNTIgNDQ0LjE2IDQ1OC40IDUzNi42NCA1NTAuODhBMTQ4LjQ4IDE0OC40OCAwIDAgMCA3NjAuNjQgNTQ4Ljk2IDE0OC40OCAxNDguNDggMCAwIDAgNzYyLjU2IDMyNC45Nkw2NzIgMjMyLjE2IDcxNy4xMiAxODYuNzIgODA5LjYgMjc5LjJBMjEyLjggMjEyLjggMCAwIDEgODA3LjY4IDU5NC4wOCAyMTIuOCAyMTIuOCAwIDAgMSA0OTEuMiA1OTZaTTM5OC43ODU3IDIzMi4xMTIzTDU3OS44MDUgNDEzLjEzMTYgNjI1LjA1OTggMzY3Ljg3NjggNDQ0LjA0MDUgMTg2Ljg1NzQgMzk4Ljc4NTcgMjMyLjExMjNaIiAgaG9yaXotYWR2LXg9IjEwMjQiIHZlcnQtYWR2LXk9IjEwMjQiICAvPgoKICAgICAgCiAgICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJ1bmlFMTA0IiB1bmljb2RlPSImI3hFMTA0OyIgZD0iTTMyMC45ODYzIDYwOC42ODQ2TDE5MS42MjIzIDYwOC42ODQ2QzE3NC4zNzM4IDYwOC42ODQ2IDE2MCA1OTQuMTgyNSAxNjAgNTc2Ljc4TDE2MC02Mi43NjIxQzE2MC04MC4xNjQ2IDE3NC4zNzM4LTk0LjY2NjcgMTkxLjYyMjMtOTQuNjY2N0wzMjAuOTg2My05NC42NjY3QzMzOC4yMzQ4LTk0LjY2NjcgMzUyLjYwODYtODAuMTY0NiAzNTIuNjA4Ni02Mi43NjIxTDM1Mi42MDg2IDU3Ni43OEMzNTIuNjA4NiA1OTQuMTgyNSAzMzguMjM0OCA2MDguNjg0NiAzMjAuOTg2MyA2MDguNjg0NlpNMjg1LjA1MTkgNDc4LjE2NThMMjI3LjU1NjggNDc4LjE2NThDMjExLjc0NTYgNDc4LjE2NTggMTk4LjgwOTIgNDkxLjIxNzYgMTk4LjgwOTIgNTA3LjE2OTkgMTk4LjgwOTIgNTIzLjEyMjIgMjExLjc0NTYgNTM2LjE3NDEgMjI3LjU1NjggNTM2LjE3NDFMMjg1LjA1MTkgNTM2LjE3NDFDMzAwLjg2MyA1MzYuMTc0MSAzMTMuNzk5NCA1MjMuMTIyMiAzMTMuNzk5NCA1MDcuMTY5OSAzMTMuNzk5NCA0OTEuMjE3NyAzMDAuODYzIDQ3OC4xNjU4IDI4NS4wNTE5IDQ3OC4xNjU4Wk01NzguMjc2OSA3MTZMNDQ4LjkxMjkgNzE2QzQzMS42NjQ0IDcxNiA0MTcuMjkwNiA3MDEuNDk3OSA0MTcuMjkwNiA2ODQuMDk1NEw0MTcuMjkwNi02Mi43NjIxQzQxNy4yOTA2LTgwLjE2NDYgNDMxLjY2NDQtOTQuNjY2NyA0NDguOTEyOS05NC42NjY3TDU3OC4yNzY5LTk0LjY2NjdDNTk1LjUyNTUtOTQuNjY2NyA2MDkuODk5My04MC4xNjQ2IDYwOS44OTkzLTYyLjc2MjFMNjA5Ljg5OTMgNjg0LjA5NTRDNjExLjMzNjYgNzAxLjQ5NzkgNTk2Ljk2MjkgNzE2IDU3OC4yNzY5IDcxNlpNNTQzLjc3OTkgNTg0LjAzMUw0ODYuMjg0OCA1ODQuMDMxQzQ3MC40NzM2IDU4NC4wMzEgNDU3LjUzNzIgNTk3LjA4MjkgNDU3LjUzNzIgNjEzLjAzNTIgNDU3LjUzNzIgNjI4Ljk4NzUgNDcwLjQ3MzYgNjQyLjAzOTQgNDg2LjI4NDggNjQyLjAzOTRMNTQzLjc3OTkgNjQyLjAzOTRDNTU5LjU5MSA2NDIuMDM5NCA1NzIuNTI3NCA2MjguOTg3NSA1NzIuNTI3NCA2MTMuMDM1MiA1NzIuNTI3NCA1OTcuMDgyOSA1NTkuNTkxIDU4NC4wMzEgNTQzLjc3OTkgNTg0LjAzMVpNOTI3LjU1OTgtMjkuNDA3M0w4MDYuODIgNTk4LjUzMzFDODAyLjUwNzkgNjE0LjQ4NTQgNzg5LjU3MTUgNjI0LjYzNjkgNzczLjc2MDMgNjI0LjYzNjlMNzY4LjAxMDggNjI0LjYzNjkgNjQxLjUyMTYgNTk5Ljk4MzNDNjI0LjI3MyA1OTcuMDgyOSA2MTIuNzc0IDU3OS42ODA0IDYxNS42NDg4IDU2Mi4yNzc5TDczNy44MjU5LTY3LjExMjdDNzQwLjcwMDYtODMuMDY1IDc1My42MzctOTMuMjE2NSA3NjkuNDQ4Mi05My4yMTY1TDc3NS4xOTc3LTkzLjIxNjUgOTAxLjY4NjktNjguNTYyOUM5MTguOTM1NS02NC4yMTIzIDkzMC40MzQ1LTQ2LjgwOTggOTI3LjU1OTgtMjkuNDA3M0w5MjcuNTU5OC0yOS40MDczWk03NjIuMjYxMyA0OTkuOTE4OUw3MDQuNzY2MiA0ODguMzE3MiA2OTkuMDE2NyA0ODguMzE3MkM2ODYuMDgwMyA0ODguMzE3MiA2NzMuMTQzOSA0OTguNDY4NyA2NzAuMjY5MSA1MTEuNTIwNiA2NjcuMzk0NCA1MjcuNDcyOSA2NzcuNDU2IDU0My40MjUyIDY5My4yNjcyIDU0Ni4zMjU2TDc1MC43NjIzIDU1Ny45MjczQzc2Ni41NzM0IDU2MC44Mjc3IDc4Mi4zODQ2IDU1MC42NzYyIDc4NS4yNTkzIDUzNC43MjM5IDc4OC4xMzQxIDUxOC43NzE2IDc3OC4wNzI1IDUwMi44MTkzIDc2Mi4yNjEzIDQ5OS45MTg5TDc2Mi4yNjEzIDQ5OS45MTg5WiIgIGhvcml6LWFkdi14PSIxMDI0IiB2ZXJ0LWFkdi15PSIxMDI0IiAgLz4KCiAgICAgIAogICAgICA8Z2x5cGggZ2x5cGgtbmFtZT0idW5pRTEwMiIgdW5pY29kZT0iJiN4RTEwMjsiIGQ9Ik01MjggNzE2QzU4OS44NTU5IDcxNiA2NDAgNjY1Ljg1NTkgNjQwIDYwNCA2NDAgNjAzLjYyNDEgNjM5Ljk5ODEgNjAzLjI0ODcgNjM5Ljk5NDUgNjAyLjg3MzcgNzc0LjcyOTEgNTUxLjMzNDEgODcwLjQgNDIwLjgzOTYgODcwLjQgMjY4IDg3MC40IDI0NS40NTA3IDg2OC4zMTc2IDIyMy4zODc4IDg2NC4zMzQ1IDIwMS45OTMxIDg4My45Mzg4IDE4MS44NTYxIDg5NiAxNTQuMzM2NiA4OTYgMTI0IDg5NiA2Mi4xNDQxIDg0NS44NTU5IDEyIDc4NCAxMiA3NzcuMzUyNSAxMiA3NzAuODQwMiAxMi41NzkxIDc2NC41MTA5IDEzLjY4OTcgNjk5Ljc1MjYtNTAuNjQ5NSA2MTAuNTE4NC05MC40IDUxMi05MC40IDQxMy40ODE2LTkwLjQgMzI0LjI0NzQtNTAuNjQ5NSAyNTkuNDYxMiAxMy42ODc3IDI1My4xNTk4IDEyLjU3OTEgMjQ2LjY0NzUgMTIgMjQwIDEyIDE3OC4xNDQxIDEyIDEyOCA2Mi4xNDQxIDEyOCAxMjQgMTI4IDE1NC4zMzY2IDE0MC4wNjEyIDE4MS44NTYxIDE1OS42NDk5IDIwMi4wMjQ5IDE1NS42ODI0IDIyMy4zODc4IDE1My42IDI0NS40NTA3IDE1My42IDI2OCAxNTMuNiA0MzIuODQ0OCAyNjQuODkwNSA1NzEuNjk2MyA0MTYuNDM1NSA2MTMuNTE4NCA0MjEuMjMxNiA2NzAuOTIxMiA0NjkuMzUxNCA3MTYgNTI4IDcxNlpNNDM2LjUyMDEgNTM5LjM2NjVMNDMyLjA1MTEgNTM4LjA4OTNDMzE1LjQ2OTYgNTAzLjYzMzYgMjMwLjQgMzk1Ljc1MTQgMjMwLjQgMjY4IDIzMC40IDI1Ny4wNzcxIDIzMS4wMjE5IDI0Ni4yOTk0IDIzMi4yMzIyIDIzNS43MDA0TDIzMy44NTQ5IDIzNS44MzQzIDI0MCAyMzZDMzAxLjg1NTkgMjM2IDM1MiAxODUuODU1OSAzNTIgMTI0IDM1MiA5Ny44Njg0IDM0My4wNTA3IDczLjgyNzEgMzI4LjA0OTggNTQuNzczNyAzNzcuMzYxMSAxMi4xODI3IDQ0MS42Njk2LTEzLjYgNTEyLTEzLjYgNTgyLjMzMDQtMTMuNiA2NDYuNjM4OSAxMi4xODI3IDY5NS45ODkzIDU0LjgxMiA2ODAuOTQ5MyA3My44MjcxIDY3MiA5Ny44Njg0IDY3MiAxMjQgNjcyIDE4NS44NTU5IDcyMi4xNDQxIDIzNiA3ODQgMjM2IDc4Ni42MDczIDIzNiA3ODkuMTkzOCAyMzUuOTEwOSA3OTEuNzU2NyAyMzUuNzM1NiA3OTIuOTc4MSAyNDYuMjk5NCA3OTMuNiAyNTcuMDc3MSA3OTMuNiAyNjggNzkzLjYgMzg3Ljk3MjggNzE4LjU3NDYgNDkwLjQyMjQgNjEyLjg4MTcgNTMwLjk5MDkgNTkyLjM1MDMgNTA3LjA5NDkgNTYxLjkzOCA0OTIgNTI4IDQ5MiA0OTAuMjE3OCA0OTIgNDU2LjgwNTEgNTEwLjcwODMgNDM2LjUyMDEgNTM5LjM2NjVaIiAgaG9yaXotYWR2LXg9IjEwMjQiIHZlcnQtYWR2LXk9IjEwMjQiICAvPgoKICAgICAgCiAgICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJ1bmlFMTAxIiB1bmljb2RlPSImI3hFMTAxOyIgZD0iTTcwOC45MjMxIDY1NC40NjE1TDk4NC42MTU0IDY1NC40NjE1QzEwMDYuMzY2OSA2NTQuNDYxNSAxMDI0IDYzNi44Mjg0IDEwMjQgNjE1LjA3NjlMMTAyNC0xMzMuMjMwOEMxMDI0LTE3Ni43MzM4IDk4OC43MzM4LTIxMiA5NDUuMjMwOC0yMTJMNzA4LjkyMzEtMjEyIDcwOC45MjMxIDY1NC40NjE1IDcwOC45MjMxIDY1NC40NjE1Wk0wLTE3Mi42MTU0QzAtMTgzLjA2MDggNC4xNDk0LTE5My4wNzg1IDExLjUzNTUtMjAwLjQ2NDUgMTguOTIxNS0yMDcuODUwNiAyOC45MzkyLTIxMiAzOS4zODQ2LTIxMkw5NDUuMjMwOC0yMTJDOTAxLjcyNzctMjEyIDg2Ni40NjE1LTE3Ni43MzM4IDg2Ni40NjE1LTEzMy4yMzA4TDg2Ni40NjE1IDc3Mi42MTU0Qzg2Ni40NjE1IDc5NC4zNjY5IDg0OC44Mjg0IDgxMiA4MjcuMDc2OSA4MTJMMzkuMzg0NiA4MTJDMTcuNjMzMSA4MTIgMCA3OTQuMzY2OSAwIDc3Mi42MTU0TDAtMTcyLjYxNTRaTTE5Ni45MjMxIDUyMy4xNzk1QzE3NS4xNzE2IDUyMy4xNzk1IDE1Ny41Mzg1IDUwNS41NDY0IDE1Ny41Mzg1IDQ4My43OTQ5IDE1Ny41Mzg1IDQ2Mi4wNDMzIDE3NS4xNzE2IDQ0NC40MTAzIDE5Ni45MjMxIDQ0NC40MTAzTDM1NC40NjE1IDQ0NC40MTAzQzM3Ni4yMTMxIDQ0NC40MTAzIDM5My44NDYyIDQ2Mi4wNDMzIDM5My44NDYyIDQ4My43OTQ5IDM5My44NDYyIDUwNS41NDY0IDM3Ni4yMTMxIDUyMy4xNzk1IDM1NC40NjE1IDUyMy4xNzk1TDE5Ni45MjMxIDUyMy4xNzk1Wk0xOTYuOTIzMSAyODYuODcxOEMxNzUuMTcxNiAyODYuODcxOCAxNTcuNTM4NSAyNjkuMjM4NyAxNTcuNTM4NSAyNDcuNDg3MiAxNTcuNTM4NSAyMjUuNzM1NyAxNzUuMTcxNiAyMDguMTAyNiAxOTYuOTIzMSAyMDguMTAyNkw2NjkuNTM4NSAyMDguMTAyNkM2OTEuMjkgMjA4LjEwMjYgNzA4LjkyMzEgMjI1LjczNTcgNzA4LjkyMzEgMjQ3LjQ4NzIgNzA4LjkyMzEgMjY5LjIzODcgNjkxLjI5IDI4Ni44NzE4IDY2OS41Mzg1IDI4Ni44NzE4TDE5Ni45MjMxIDI4Ni44NzE4Wk0xOTYuOTIzMSA1MC41NjQxQzE3NS4xNzE2IDUwLjU2NDEgMTU3LjUzODUgMzIuOTMxIDE1Ny41Mzg1IDExLjE3OTUgMTU3LjUzODUtMTAuNTcyIDE3NS4xNzE2LTI4LjIwNTEgMTk2LjkyMzEtMjguMjA1MUw0MzMuMjMwOC0yOC4yMDUxQzQ1NC45ODIzLTI4LjIwNTEgNDcyLjYxNTQtMTAuNTcyIDQ3Mi42MTU0IDExLjE3OTUgNDcyLjYxNTQgMzIuOTMxIDQ1NC45ODIzIDUwLjU2NDEgNDMzLjIzMDggNTAuNTY0MUwxOTYuOTIzMSA1MC41NjQxIDE5Ni45MjMxIDUwLjU2NDFaIiAgaG9yaXotYWR2LXg9IjEwMjQiIHZlcnQtYWR2LXk9IjEwMjQiICAvPgoKICAgICAgCiAgICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJ1bmlFMTA2IiB1bmljb2RlPSImI3hFMTA2OyIgZD0iTTUxMiA2MjBDNzU5LjQgNjIwIDk2MCA0NzYuNyA5NjAgMzAwIDk2MCAxMjMuMyA3NTkuNC0yMCA1MTItMjAgMjY0LjYtMjAgNjQgMTIzLjMgNjQgMzAwIDY0IDQ3Ni43IDI2NC42IDYyMCA1MTIgNjIwWk01MTIgNTU2QzQ1Ny44IDU1NiA0MDUuNCA1NDguNSAzNTYuMSA1MzMuNiAzMDkuNSA1MTkuNSAyNjcuOCA0OTkuNSAyMzIuNCA0NzQuMiAxNjUuMSA0MjYuMSAxMjggMzY0LjIgMTI4IDMwMCAxMjggMjM1LjggMTY1LjEgMTczLjkgMjMyLjQgMTI1LjggMjY3LjggMTAwLjUgMzA5LjUgODAuNSAzNTYuMSA2Ni40IDQwNS40IDUxLjUgNDU3LjggNDQgNTEyIDQ0IDU2Ni4yIDQ0IDYxOC42IDUxLjUgNjY3LjkgNjYuNCA3MTQuNSA4MC41IDc1Ni4yIDEwMC41IDc5MS42IDEyNS44IDg1OC45IDE3My45IDg5NiAyMzUuOCA4OTYgMzAwIDg5NiAzNjQuMiA4NTguOSA0MjYuMSA3OTEuNiA0NzQuMiA3NTYuMiA0OTkuNSA3MTQuNSA1MTkuNSA2NjcuOSA1MzMuNiA2MTguNiA1NDguNSA1NjYuMiA1NTYgNTEyIDU1NlpNNTEyIDQ2MEM2MDAuNCA0NjAgNjcyIDM4OC40IDY3MiAzMDAgNjcyIDIxMS42IDYwMC40IDE0MCA1MTIgMTQwIDQyMy42IDE0MCAzNTIgMjExLjYgMzUyIDMwMCAzNTIgMzg4LjQgNDIzLjYgNDYwIDUxMiA0NjBaTTUxMiAzOTZDNDU5LjEgMzk2IDQxNiAzNTIuOSA0MTYgMzAwIDQxNiAyNDcuMSA0NTkuMSAyMDQgNTEyIDIwNCA1NjQuOSAyMDQgNjA4IDI0Ny4xIDYwOCAzMDAgNjA4IDM1Mi45IDU2NC45IDM5NiA1MTIgMzk2WiIgIGhvcml6LWFkdi14PSIxMDI0IiB2ZXJ0LWFkdi15PSIxMDI0IiAgLz4KCiAgICAgIAoKICA8L2ZvbnQ+CiAgPC9kZWZzPgo8L3N2Zz4=";
448
+
449
+ /***/ }),
450
+
451
451
  /***/ 802:
452
452
  /***/ ((module) => {
453
453
 
@@ -479,7 +479,7 @@ __webpack_require__.r(__webpack_exports__);
479
479
 
480
480
 
481
481
 
482
- var ___CSS_LOADER_URL_IMPORT_0___ = new URL(/* asset import */ __webpack_require__(89), __webpack_require__.b);
482
+ var ___CSS_LOADER_URL_IMPORT_0___ = new URL(/* asset import */ __webpack_require__(705), __webpack_require__.b);
483
483
  var ___CSS_LOADER_URL_IMPORT_1___ = new URL(/* asset import */ __webpack_require__(106), __webpack_require__.b);
484
484
  var ___CSS_LOADER_URL_IMPORT_2___ = new URL(/* asset import */ __webpack_require__(802), __webpack_require__.b);
485
485
  var ___CSS_LOADER_URL_IMPORT_3___ = new URL(/* asset import */ __webpack_require__(912), __webpack_require__.b);
@@ -844,6 +844,14 @@ const handleCopy = (text)=>{
844
844
  });
845
845
  document.body.removeChild(textarea);
846
846
  };
847
+ /**
848
+ * 处理提示词模板,替换模板中的变量
849
+ * @param prompt 提示词模板
850
+ * @param selectedText 选中的文本
851
+ * @returns 处理后的提示词
852
+ */ const processPromptTemplate = (prompt, selectedText)=>{
853
+ return prompt.replace(/\{\{\s*SELECTED_TEXT\s*\}\}/g, selectedText || '');
854
+ };
847
855
 
848
856
  ;// ./src/hooks/use-click-proxy.ts
849
857
 
@@ -1434,8 +1442,9 @@ class ChatHelper {
1434
1442
 
1435
1443
 
1436
1444
 
1445
+
1437
1446
  // ai 聊天
1438
- const useChat = ({ handleStart, handleText, handleReferenceDoc, handleThink, handleEnd, handleError } = {})=>{
1447
+ const useChat = ({ handleStart, handleText, handleReferenceDoc, handleThink, handleEnd, handleError, requestOptions } = {})=>{
1439
1448
  const startMessage = '内容正在生成中...';
1440
1449
  // 聊天上下文
1441
1450
  const currentSession = (0,external_vue_namespaceObject.ref)();
@@ -1477,6 +1486,12 @@ const useChat = ({ handleStart, handleText, handleReferenceDoc, handleThink, han
1477
1486
  }
1478
1487
  return calculatedSessionContents;
1479
1488
  });
1489
+ // 当前会话是否正在加载
1490
+ const currentSessionLoading = (0,external_vue_namespaceObject.computed)(()=>{
1491
+ var _currentSession_value;
1492
+ const sessionCode = (_currentSession_value = currentSession.value) === null || _currentSession_value === void 0 ? void 0 : _currentSession_value.sessionCode;
1493
+ return sessionCode ? sessionLoadingMap.value[sessionCode] : false;
1494
+ });
1480
1495
  // 计算当前的 prompt
1481
1496
  const prompts = (0,external_vue_namespaceObject.computed)(()=>{
1482
1497
  var _currentSession_value_roleInfo_content, _currentSession_value_roleInfo, _currentSession_value;
@@ -1738,15 +1753,89 @@ const useChat = ({ handleStart, handleText, handleReferenceDoc, handleThink, han
1738
1753
  // 调用cb
1739
1754
  return handleError === null || handleError === void 0 ? void 0 : handleError(sessionCode, sessionContent, code);
1740
1755
  }
1756
+ // 重新生成对话 仅支持重新生成 ai 的回复
1757
+ function reGenerateChat(chatIndex) {
1758
+ const chat = sessionContents.value[chatIndex];
1759
+ if (chat.role !== SessionContentRole.Ai) {
1760
+ return;
1761
+ }
1762
+ const message = sessionContents.value[chatIndex - 1].content;
1763
+ const cite = sessionContents.value[chatIndex - 1].cite;
1764
+ sessionContents.value.splice(chatIndex - 1, 2);
1765
+ sendChat({
1766
+ message,
1767
+ cite
1768
+ });
1769
+ }
1741
1770
  // 聊天
1742
1771
  function chat({ sessionCode, data, url, headers }) {
1743
1772
  // 发送请求
1744
1773
  chatHelper.stream({
1745
1774
  sessionCode,
1746
- url,
1775
+ url: url,
1747
1776
  data,
1748
- headers
1777
+ headers: headers || (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers)
1778
+ });
1779
+ }
1780
+ // 重新发送聊天, 需要将当前聊天内容以及下方的所有内容删除
1781
+ function reSendChat(index, { message, cite }, callback) {
1782
+ const chat = sessionContents.value[index];
1783
+ if (chat.role !== SessionContentRole.User) {
1784
+ return;
1785
+ }
1786
+ sessionContents.value.splice(index, sessionContents.value.length - index);
1787
+ sendChat({
1788
+ message,
1789
+ cite
1790
+ }, callback);
1791
+ }
1792
+ // 发送聊天
1793
+ function sendChat(content, callback) {
1794
+ var _currentSession_value, _currentSession_value1, _currentSession_value2;
1795
+ if (!((_currentSession_value = currentSession.value) === null || _currentSession_value === void 0 ? void 0 : _currentSession_value.sessionCode) || !(requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.url) || currentSessionLoading.value) {
1796
+ return;
1797
+ }
1798
+ const { message, cite, shortcut } = content;
1799
+ let input = '';
1800
+ if (shortcut) {
1801
+ input = processPromptTemplate(shortcut.prompt, cite);
1802
+ } else {
1803
+ input = cite ? `${message}: "${cite}"` : message;
1804
+ }
1805
+ sessionContents.value.push({
1806
+ sessionCode: (_currentSession_value1 = currentSession.value) === null || _currentSession_value1 === void 0 ? void 0 : _currentSession_value1.sessionCode,
1807
+ content: message,
1808
+ role: SessionContentRole.User,
1809
+ status: SessionContentStatus.Success,
1810
+ cite
1749
1811
  });
1812
+ // 发送请求
1813
+ chatHelper.stream({
1814
+ sessionCode: (_currentSession_value2 = currentSession.value) === null || _currentSession_value2 === void 0 ? void 0 : _currentSession_value2.sessionCode,
1815
+ url: requestOptions.url,
1816
+ headers: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers,
1817
+ data: {
1818
+ inputs: {
1819
+ chat_history: prompts.value.slice(0, prompts.value.length - 1),
1820
+ input
1821
+ }
1822
+ }
1823
+ });
1824
+ callback === null || callback === void 0 ? void 0 : callback();
1825
+ }
1826
+ /**
1827
+ * 删除聊天内容
1828
+ * @param index 要删除的聊天内容索引
1829
+ * @description
1830
+ * - 如果删除的是用户消息,则同时删除该消息及其对应的AI回复(共2条)
1831
+ * - 如果删除的是其他类型消息(如AI回复),则只删除该条消息
1832
+ */ function deleteChat(index) {
1833
+ const chat = sessionContents.value[index];
1834
+ if (chat.role === SessionContentRole.User) {
1835
+ sessionContents.value.splice(index, 2);
1836
+ return;
1837
+ }
1838
+ sessionContents.value.splice(index - 1, 2);
1750
1839
  }
1751
1840
  // 停止聊天
1752
1841
  function stopChat(sessionCode) {
@@ -1758,7 +1847,9 @@ const useChat = ({ handleStart, handleText, handleReferenceDoc, handleThink, han
1758
1847
  sessionContentsMap,
1759
1848
  sessionLoadingMap,
1760
1849
  prompts,
1850
+ currentSessionLoading,
1761
1851
  chat,
1852
+ sendChat,
1762
1853
  stopChat,
1763
1854
  plusSessionContent,
1764
1855
  updateSessionContent,
@@ -1770,7 +1861,10 @@ const useChat = ({ handleStart, handleText, handleReferenceDoc, handleThink, han
1770
1861
  deleteSessionContent,
1771
1862
  deleteSessionContents,
1772
1863
  handleStartChat,
1773
- handleErrorChat
1864
+ handleErrorChat,
1865
+ reGenerateChat,
1866
+ reSendChat,
1867
+ deleteChat
1774
1868
  };
1775
1869
  };
1776
1870
 
@@ -34,6 +34,8 @@ export interface ISessionContent {
34
34
  rate?: number;
35
35
  status?: SessionContentStatus;
36
36
  sessionCode: string;
37
+ cite?: string;
38
+ time?: string;
37
39
  }
38
40
  export interface ISessionPrompt {
39
41
  content: string;
@@ -46,9 +48,33 @@ export interface ChatCallbacks {
46
48
  handleThink?: (sessionCode: string, sessionContent: ISessionContent) => void;
47
49
  handleEnd?: (sessionCode: string, sessionContent: ISessionContent) => void;
48
50
  handleError?: (sessionCode: string, sessionContent: ISessionContent, code: string | undefined) => void;
51
+ requestOptions?: {
52
+ url: string;
53
+ headers?: Record<string, string>;
54
+ };
49
55
  }
50
56
  export interface SummaryCallbacks {
51
57
  handleStart?: () => void;
52
58
  handleEnd?: (text: string) => void;
53
59
  handleError?: (message: string, code?: string) => void;
54
60
  }
61
+ export type BasicChatContent = {
62
+ message: string;
63
+ cite?: string;
64
+ shortcut?: never;
65
+ };
66
+ export type ShortcutChatContent = {
67
+ message: string;
68
+ cite: string;
69
+ shortcut: ShortCut;
70
+ };
71
+ export interface ShortCut {
72
+ label: string;
73
+ key: string;
74
+ prompt: string;
75
+ icon?: string;
76
+ }
77
+ export type ISendChat = {
78
+ content: BasicChatContent | ShortcutChatContent;
79
+ callback?: () => void;
80
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blueking/ai-ui-sdk",
3
- "version": "0.0.7-beta.6",
3
+ "version": "0.0.7-beta.8",
4
4
  "description": "蓝鲸AI UI SDK",
5
5
  "module": "dist/main.js",
6
6
  "types": "dist/main.d.ts",
@@ -1,53 +0,0 @@
1
- <?xml version="1.0" standalone="no"?>
2
- <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
3
- <svg>
4
- <metadata>
5
- Created by font-carrier
6
- </metadata>
7
- <defs>
8
- <font id="iconfont" horiz-adv-x="1024" vert-adv-y="1024" >
9
- <font-face
10
-
11
- font-family="iconfont"
12
-
13
- font-weight="400"
14
-
15
- font-stretch="normal"
16
-
17
- units-per-em="1024"
18
-
19
- ascent="812"
20
-
21
- descent="-212"
22
-
23
- />
24
- <missing-glyph />
25
-
26
-
27
- <glyph glyph-name="x" unicode="&#x78;" horiz-adv-x="100"
28
- d="M20 20 L50 20 L50 -20 Z" />
29
-
30
-
31
-
32
- <glyph glyph-name="uniE103" unicode="&#xE103;" d="M512 444L736 220 688 172 512 348 336 172 288 220 512 444Z" horiz-adv-x="1024" vert-adv-y="1024" />
33
-
34
-
35
- <glyph glyph-name="uniE105" unicode="&#xE105;" d="M263.04 51.04A148.48 148.48 0 0 0 261.12 275.04L353.6 367.52 308.48 413.28 216 320.8A212.8 212.8 0 0 1 217.92 5.92 212.8 212.8 0 0 1 532.8 4L625.28 96.48 579.84 140 487.36 47.52A148.48 148.48 0 0 0 263.04 51.04ZM491.2 596L398.72 503.52 444.16 458.4 536.64 550.88A148.48 148.48 0 0 0 760.64 548.96 148.48 148.48 0 0 0 762.56 324.96L672 232.16 717.12 186.72 809.6 279.2A212.8 212.8 0 0 1 807.68 594.08 212.8 212.8 0 0 1 491.2 596ZM398.7857 232.1123L579.805 413.1316 625.0598 367.8768 444.0405 186.8574 398.7857 232.1123Z" horiz-adv-x="1024" vert-adv-y="1024" />
36
-
37
-
38
- <glyph glyph-name="uniE104" unicode="&#xE104;" d="M320.9863 608.6846L191.6223 608.6846C174.3738 608.6846 160 594.1825 160 576.78L160-62.7621C160-80.1646 174.3738-94.6667 191.6223-94.6667L320.9863-94.6667C338.2348-94.6667 352.6086-80.1646 352.6086-62.7621L352.6086 576.78C352.6086 594.1825 338.2348 608.6846 320.9863 608.6846ZM285.0519 478.1658L227.5568 478.1658C211.7456 478.1658 198.8092 491.2176 198.8092 507.1699 198.8092 523.1222 211.7456 536.1741 227.5568 536.1741L285.0519 536.1741C300.863 536.1741 313.7994 523.1222 313.7994 507.1699 313.7994 491.2177 300.863 478.1658 285.0519 478.1658ZM578.2769 716L448.9129 716C431.6644 716 417.2906 701.4979 417.2906 684.0954L417.2906-62.7621C417.2906-80.1646 431.6644-94.6667 448.9129-94.6667L578.2769-94.6667C595.5255-94.6667 609.8993-80.1646 609.8993-62.7621L609.8993 684.0954C611.3366 701.4979 596.9629 716 578.2769 716ZM543.7799 584.031L486.2848 584.031C470.4736 584.031 457.5372 597.0829 457.5372 613.0352 457.5372 628.9875 470.4736 642.0394 486.2848 642.0394L543.7799 642.0394C559.591 642.0394 572.5274 628.9875 572.5274 613.0352 572.5274 597.0829 559.591 584.031 543.7799 584.031ZM927.5598-29.4073L806.82 598.5331C802.5079 614.4854 789.5715 624.6369 773.7603 624.6369L768.0108 624.6369 641.5216 599.9833C624.273 597.0829 612.774 579.6804 615.6488 562.2779L737.8259-67.1127C740.7006-83.065 753.637-93.2165 769.4482-93.2165L775.1977-93.2165 901.6869-68.5629C918.9355-64.2123 930.4345-46.8098 927.5598-29.4073L927.5598-29.4073ZM762.2613 499.9189L704.7662 488.3172 699.0167 488.3172C686.0803 488.3172 673.1439 498.4687 670.2691 511.5206 667.3944 527.4729 677.456 543.4252 693.2672 546.3256L750.7623 557.9273C766.5734 560.8277 782.3846 550.6762 785.2593 534.7239 788.1341 518.7716 778.0725 502.8193 762.2613 499.9189L762.2613 499.9189Z" horiz-adv-x="1024" vert-adv-y="1024" />
39
-
40
-
41
- <glyph glyph-name="uniE102" unicode="&#xE102;" d="M528 716C589.8559 716 640 665.8559 640 604 640 603.6241 639.9981 603.2487 639.9945 602.8737 774.7291 551.3341 870.4 420.8396 870.4 268 870.4 245.4507 868.3176 223.3878 864.3345 201.9931 883.9388 181.8561 896 154.3366 896 124 896 62.1441 845.8559 12 784 12 777.3525 12 770.8402 12.5791 764.5109 13.6897 699.7526-50.6495 610.5184-90.4 512-90.4 413.4816-90.4 324.2474-50.6495 259.4612 13.6877 253.1598 12.5791 246.6475 12 240 12 178.1441 12 128 62.1441 128 124 128 154.3366 140.0612 181.8561 159.6499 202.0249 155.6824 223.3878 153.6 245.4507 153.6 268 153.6 432.8448 264.8905 571.6963 416.4355 613.5184 421.2316 670.9212 469.3514 716 528 716ZM436.5201 539.3665L432.0511 538.0893C315.4696 503.6336 230.4 395.7514 230.4 268 230.4 257.0771 231.0219 246.2994 232.2322 235.7004L233.8549 235.8343 240 236C301.8559 236 352 185.8559 352 124 352 97.8684 343.0507 73.8271 328.0498 54.7737 377.3611 12.1827 441.6696-13.6 512-13.6 582.3304-13.6 646.6389 12.1827 695.9893 54.812 680.9493 73.8271 672 97.8684 672 124 672 185.8559 722.1441 236 784 236 786.6073 236 789.1938 235.9109 791.7567 235.7356 792.9781 246.2994 793.6 257.0771 793.6 268 793.6 387.9728 718.5746 490.4224 612.8817 530.9909 592.3503 507.0949 561.938 492 528 492 490.2178 492 456.8051 510.7083 436.5201 539.3665Z" horiz-adv-x="1024" vert-adv-y="1024" />
42
-
43
-
44
- <glyph glyph-name="uniE101" unicode="&#xE101;" d="M708.9231 654.4615L984.6154 654.4615C1006.3669 654.4615 1024 636.8284 1024 615.0769L1024-133.2308C1024-176.7338 988.7338-212 945.2308-212L708.9231-212 708.9231 654.4615 708.9231 654.4615ZM0-172.6154C0-183.0608 4.1494-193.0785 11.5355-200.4645 18.9215-207.8506 28.9392-212 39.3846-212L945.2308-212C901.7277-212 866.4615-176.7338 866.4615-133.2308L866.4615 772.6154C866.4615 794.3669 848.8284 812 827.0769 812L39.3846 812C17.6331 812 0 794.3669 0 772.6154L0-172.6154ZM196.9231 523.1795C175.1716 523.1795 157.5385 505.5464 157.5385 483.7949 157.5385 462.0433 175.1716 444.4103 196.9231 444.4103L354.4615 444.4103C376.2131 444.4103 393.8462 462.0433 393.8462 483.7949 393.8462 505.5464 376.2131 523.1795 354.4615 523.1795L196.9231 523.1795ZM196.9231 286.8718C175.1716 286.8718 157.5385 269.2387 157.5385 247.4872 157.5385 225.7357 175.1716 208.1026 196.9231 208.1026L669.5385 208.1026C691.29 208.1026 708.9231 225.7357 708.9231 247.4872 708.9231 269.2387 691.29 286.8718 669.5385 286.8718L196.9231 286.8718ZM196.9231 50.5641C175.1716 50.5641 157.5385 32.931 157.5385 11.1795 157.5385-10.572 175.1716-28.2051 196.9231-28.2051L433.2308-28.2051C454.9823-28.2051 472.6154-10.572 472.6154 11.1795 472.6154 32.931 454.9823 50.5641 433.2308 50.5641L196.9231 50.5641 196.9231 50.5641Z" horiz-adv-x="1024" vert-adv-y="1024" />
45
-
46
-
47
- <glyph glyph-name="uniE106" unicode="&#xE106;" d="M512 620C759.4 620 960 476.7 960 300 960 123.3 759.4-20 512-20 264.6-20 64 123.3 64 300 64 476.7 264.6 620 512 620ZM512 556C457.8 556 405.4 548.5 356.1 533.6 309.5 519.5 267.8 499.5 232.4 474.2 165.1 426.1 128 364.2 128 300 128 235.8 165.1 173.9 232.4 125.8 267.8 100.5 309.5 80.5 356.1 66.4 405.4 51.5 457.8 44 512 44 566.2 44 618.6 51.5 667.9 66.4 714.5 80.5 756.2 100.5 791.6 125.8 858.9 173.9 896 235.8 896 300 896 364.2 858.9 426.1 791.6 474.2 756.2 499.5 714.5 519.5 667.9 533.6 618.6 548.5 566.2 556 512 556ZM512 460C600.4 460 672 388.4 672 300 672 211.6 600.4 140 512 140 423.6 140 352 211.6 352 300 352 388.4 423.6 460 512 460ZM512 396C459.1 396 416 352.9 416 300 416 247.1 459.1 204 512 204 564.9 204 608 247.1 608 300 608 352.9 564.9 396 512 396Z" horiz-adv-x="1024" vert-adv-y="1024" />
48
-
49
-
50
-
51
- </font>
52
- </defs>
53
- </svg>