@chat-lab/ui 0.1.0-beta.51 → 0.1.0-beta.53
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Chatkit/index.cjs +42 -18
- package/dist/components/Chatkit/index.cjs.map +1 -1
- package/dist/components/Chatkit/index.d.ts.map +1 -1
- package/dist/components/Chatkit/index.js +42 -18
- package/dist/components/Chatkit/index.js.map +1 -1
- package/dist/components/Chatkit/types.d.ts +1 -0
- package/dist/components/Chatkit/types.d.ts.map +1 -1
- package/dist/hooks/useSkillAgent/SkillAgentPlugin.cjs +30 -1
- package/dist/hooks/useSkillAgent/SkillAgentPlugin.cjs.map +1 -1
- package/dist/hooks/useSkillAgent/SkillAgentPlugin.d.ts +6 -2
- package/dist/hooks/useSkillAgent/SkillAgentPlugin.d.ts.map +1 -1
- package/dist/hooks/useSkillAgent/SkillAgentPlugin.js +30 -1
- package/dist/hooks/useSkillAgent/SkillAgentPlugin.js.map +1 -1
- package/dist/hooks/useSkillAgent/index.cjs +25 -3
- package/dist/hooks/useSkillAgent/index.cjs.map +1 -1
- package/dist/hooks/useSkillAgent/index.d.ts +3 -1
- package/dist/hooks/useSkillAgent/index.d.ts.map +1 -1
- package/dist/hooks/useSkillAgent/index.js +26 -4
- package/dist/hooks/useSkillAgent/index.js.map +1 -1
- package/dist/hooks/useThread.d.ts +24 -0
- package/dist/hooks/useThread.d.ts.map +1 -1
- package/dist/packages/core/dist/index.cjs +17 -9
- package/dist/packages/core/dist/index.cjs.map +1 -1
- package/dist/packages/core/dist/index.js +17 -9
- package/dist/packages/core/dist/index.js.map +1 -1
- package/dist/utils/convertToAssistantMessage.cjs +0 -1
- package/dist/utils/convertToAssistantMessage.cjs.map +1 -1
- package/dist/utils/convertToAssistantMessage.d.ts.map +1 -1
- package/dist/utils/convertToAssistantMessage.js +0 -1
- package/dist/utils/convertToAssistantMessage.js.map +1 -1
- package/dist/utils/deepAssign.cjs +31 -0
- package/dist/utils/deepAssign.cjs.map +1 -0
- package/dist/utils/deepAssign.d.ts +2 -0
- package/dist/utils/deepAssign.d.ts.map +1 -0
- package/dist/utils/deepAssign.js +29 -0
- package/dist/utils/deepAssign.js.map +1 -0
- package/package.json +1 -1
|
@@ -7,11 +7,29 @@ var index$1 = require('../../node_modules/.pnpm/ahooks@3.9.6_react-dom@17.0.2_re
|
|
|
7
7
|
|
|
8
8
|
const useSkillAgent = (options) => {
|
|
9
9
|
const chatControllerRef = React.useRef();
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
const pluginRef = React.useRef();
|
|
11
|
+
if (!pluginRef.current) {
|
|
12
|
+
pluginRef.current = new SkillAgentPlugin({
|
|
13
13
|
onStateChange: options.onStateChange,
|
|
14
|
+
onUploadFiles: options.onUploadFiles,
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
const adkPlugin = React.useRef();
|
|
18
|
+
if (!adkPlugin.current) {
|
|
19
|
+
adkPlugin.current = new index.AdkPlugin({
|
|
20
|
+
appName: options.adkOptions.appName,
|
|
21
|
+
userId: options.adkOptions.userID,
|
|
14
22
|
});
|
|
23
|
+
}
|
|
24
|
+
pluginRef.current.updateOptions(options);
|
|
25
|
+
adkPlugin.current.updateOptions({
|
|
26
|
+
appName: options.adkOptions.appName,
|
|
27
|
+
userId: options.adkOptions.userID,
|
|
28
|
+
onStateChange: options.onStateChange,
|
|
29
|
+
});
|
|
30
|
+
if (!chatControllerRef.current) {
|
|
31
|
+
const store = new index.ThreadMessageManager(index.createThreadManagerState());
|
|
32
|
+
const plugin = pluginRef.current;
|
|
15
33
|
const adlPlugin = new index.AdkPlugin({
|
|
16
34
|
appName: options.adkOptions.appName,
|
|
17
35
|
userId: options.adkOptions.userID,
|
|
@@ -57,10 +75,14 @@ const useSkillAgent = (options) => {
|
|
|
57
75
|
chatControllerRef.current?.setCurrentThread(sessionId);
|
|
58
76
|
});
|
|
59
77
|
});
|
|
78
|
+
const getState = index$1(() => {
|
|
79
|
+
return chatControllerRef.current?.getCurrentThread()?.metadata?.state;
|
|
80
|
+
});
|
|
60
81
|
return {
|
|
61
82
|
controllerRef: chatControllerRef,
|
|
62
83
|
sendMessage,
|
|
63
84
|
ready,
|
|
85
|
+
getState,
|
|
64
86
|
};
|
|
65
87
|
};
|
|
66
88
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../../../src/hooks/useSkillAgent/index.tsx"],"sourcesContent":["import {\n ChatController,\n createThreadManagerState,\n ThreadMessageManager,\n AdkPlugin,\n} from '@chat-lab/core';\nimport { useRef } from 'react';\nimport { v4 as uuid } from 'uuid';\nimport SkillAgentPlugin from './SkillAgentPlugin';\nimport { useMemoizedFn } from 'ahooks';\n\nexport interface SkillAgentOptions {\n api: string;\n sessionId?: string;\n adkOptions: {\n appName: string;\n userID: string;\n };\n query?: Record<string, string>;\n onError?: (error: Error) => void;\n onStateChange?: (state:
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../../src/hooks/useSkillAgent/index.tsx"],"sourcesContent":["import {\n ChatController,\n createThreadManagerState,\n ThreadMessageManager,\n AdkPlugin,\n} from '@chat-lab/core';\nimport { useRef } from 'react';\nimport { v4 as uuid } from 'uuid';\nimport SkillAgentPlugin from './SkillAgentPlugin';\nimport { useMemoizedFn } from 'ahooks';\n\nexport interface SkillAgentOptions {\n api: string;\n sessionId?: string;\n adkOptions: {\n appName: string;\n userID: string;\n };\n query?: Record<string, string>;\n onError?: (error: Error) => void;\n onStateChange?: (state: {}) => void;\n onUploadFiles?: (files: File[]) => Promise<string[]>;\n}\n\nconst useSkillAgent = (options: SkillAgentOptions) => {\n const chatControllerRef = useRef<ChatController>();\n const pluginRef = useRef<SkillAgentPlugin>();\n if (!pluginRef.current) {\n pluginRef.current = new SkillAgentPlugin({\n onStateChange: options.onStateChange,\n onUploadFiles: options.onUploadFiles,\n });\n }\n const adkPlugin = useRef<AdkPlugin>();\n if (!adkPlugin.current) {\n adkPlugin.current = new AdkPlugin({\n appName: options.adkOptions.appName,\n userId: options.adkOptions.userID,\n });\n }\n pluginRef.current.updateOptions(options);\n adkPlugin.current.updateOptions({\n appName: options.adkOptions.appName,\n userId: options.adkOptions.userID,\n onStateChange: options.onStateChange,\n });\n\n if (!chatControllerRef.current) {\n const store = new ThreadMessageManager(createThreadManagerState());\n const plugin = pluginRef.current;\n const adlPlugin = new AdkPlugin({\n appName: options.adkOptions.appName,\n userId: options.adkOptions.userID,\n });\n chatControllerRef.current = new ChatController({\n requestOptions: {\n api: options.api,\n meta: options.query,\n headers: {\n Authorization: 'Bearer',\n },\n defaultParams: {\n streaming: true,\n },\n },\n protocolOptions: {\n protocol: 'ADK',\n },\n storeManager: store,\n plugins: [plugin, adlPlugin],\n });\n }\n\n const sendMessage = useMemoizedFn(({ message }: { message: string }) => {\n chatControllerRef.current?.sendMessage({\n content: [\n {\n type: 'text',\n text: message,\n },\n ],\n });\n });\n const ready = useMemoizedFn(({ sessionId }: { sessionId: string }) => {\n chatControllerRef.current\n ?.addThread({\n id: sessionId,\n name: sessionId,\n metadata: {},\n sending: false,\n messages: [],\n })\n .then(() => {\n chatControllerRef.current?.setCurrentThread(sessionId);\n });\n });\n\n const getState = useMemoizedFn(() => {\n return chatControllerRef.current?.getCurrentThread()?.metadata?.state;\n });\n return {\n controllerRef: chatControllerRef,\n sendMessage,\n ready,\n getState,\n };\n};\n\nexport { useSkillAgent };\n"],"names":["useRef","AdkPlugin","ThreadMessageManager","createThreadManagerState","ChatController","useMemoizedFn"],"mappings":"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"}
|
|
@@ -8,7 +8,8 @@ export interface SkillAgentOptions {
|
|
|
8
8
|
};
|
|
9
9
|
query?: Record<string, string>;
|
|
10
10
|
onError?: (error: Error) => void;
|
|
11
|
-
onStateChange?: (state:
|
|
11
|
+
onStateChange?: (state: {}) => void;
|
|
12
|
+
onUploadFiles?: (files: File[]) => Promise<string[]>;
|
|
12
13
|
}
|
|
13
14
|
declare const useSkillAgent: (options: SkillAgentOptions) => {
|
|
14
15
|
controllerRef: import("react").MutableRefObject<ChatController<import("@chat-lab/core").ChatMessage<import("@chat-lab/core").BaseMessage>> | undefined>;
|
|
@@ -18,6 +19,7 @@ declare const useSkillAgent: (options: SkillAgentOptions) => {
|
|
|
18
19
|
ready: (this: unknown, args_0: {
|
|
19
20
|
sessionId: string;
|
|
20
21
|
}) => void;
|
|
22
|
+
getState: (this: unknown) => any;
|
|
21
23
|
};
|
|
22
24
|
export { useSkillAgent };
|
|
23
25
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSkillAgent/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAIf,MAAM,gBAAgB,CAAC;AAMxB,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSkillAgent/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAIf,MAAM,gBAAgB,CAAC;AAMxB,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,KAAK,IAAI,CAAC;IACpC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACtD;AAED,QAAA,MAAM,aAAa,GAAI,SAAS,iBAAiB;;;iBAiDY,MAAM;;;mBAUR,MAAM;;;CAuBhE,CAAC;AAEF,OAAO,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -1,15 +1,33 @@
|
|
|
1
|
-
import { ThreadMessageManager, createThreadManagerState,
|
|
1
|
+
import { AdkPlugin, ThreadMessageManager, createThreadManagerState, ChatController } from '../../packages/core/dist/index.js';
|
|
2
2
|
import { useRef } from 'react';
|
|
3
3
|
import SkillAgentPlugin from './SkillAgentPlugin.js';
|
|
4
4
|
import useMemoizedFn from '../../node_modules/.pnpm/ahooks@3.9.6_react-dom@17.0.2_react@17.0.2__react@17.0.2/node_modules/ahooks/es/useMemoizedFn/index.js';
|
|
5
5
|
|
|
6
6
|
const useSkillAgent = (options) => {
|
|
7
7
|
const chatControllerRef = useRef();
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
const pluginRef = useRef();
|
|
9
|
+
if (!pluginRef.current) {
|
|
10
|
+
pluginRef.current = new SkillAgentPlugin({
|
|
11
11
|
onStateChange: options.onStateChange,
|
|
12
|
+
onUploadFiles: options.onUploadFiles,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
const adkPlugin = useRef();
|
|
16
|
+
if (!adkPlugin.current) {
|
|
17
|
+
adkPlugin.current = new AdkPlugin({
|
|
18
|
+
appName: options.adkOptions.appName,
|
|
19
|
+
userId: options.adkOptions.userID,
|
|
12
20
|
});
|
|
21
|
+
}
|
|
22
|
+
pluginRef.current.updateOptions(options);
|
|
23
|
+
adkPlugin.current.updateOptions({
|
|
24
|
+
appName: options.adkOptions.appName,
|
|
25
|
+
userId: options.adkOptions.userID,
|
|
26
|
+
onStateChange: options.onStateChange,
|
|
27
|
+
});
|
|
28
|
+
if (!chatControllerRef.current) {
|
|
29
|
+
const store = new ThreadMessageManager(createThreadManagerState());
|
|
30
|
+
const plugin = pluginRef.current;
|
|
13
31
|
const adlPlugin = new AdkPlugin({
|
|
14
32
|
appName: options.adkOptions.appName,
|
|
15
33
|
userId: options.adkOptions.userID,
|
|
@@ -55,10 +73,14 @@ const useSkillAgent = (options) => {
|
|
|
55
73
|
chatControllerRef.current?.setCurrentThread(sessionId);
|
|
56
74
|
});
|
|
57
75
|
});
|
|
76
|
+
const getState = useMemoizedFn(() => {
|
|
77
|
+
return chatControllerRef.current?.getCurrentThread()?.metadata?.state;
|
|
78
|
+
});
|
|
58
79
|
return {
|
|
59
80
|
controllerRef: chatControllerRef,
|
|
60
81
|
sendMessage,
|
|
61
82
|
ready,
|
|
83
|
+
getState,
|
|
62
84
|
};
|
|
63
85
|
};
|
|
64
86
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/hooks/useSkillAgent/index.tsx"],"sourcesContent":["import {\n ChatController,\n createThreadManagerState,\n ThreadMessageManager,\n AdkPlugin,\n} from '@chat-lab/core';\nimport { useRef } from 'react';\nimport { v4 as uuid } from 'uuid';\nimport SkillAgentPlugin from './SkillAgentPlugin';\nimport { useMemoizedFn } from 'ahooks';\n\nexport interface SkillAgentOptions {\n api: string;\n sessionId?: string;\n adkOptions: {\n appName: string;\n userID: string;\n };\n query?: Record<string, string>;\n onError?: (error: Error) => void;\n onStateChange?: (state:
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/hooks/useSkillAgent/index.tsx"],"sourcesContent":["import {\n ChatController,\n createThreadManagerState,\n ThreadMessageManager,\n AdkPlugin,\n} from '@chat-lab/core';\nimport { useRef } from 'react';\nimport { v4 as uuid } from 'uuid';\nimport SkillAgentPlugin from './SkillAgentPlugin';\nimport { useMemoizedFn } from 'ahooks';\n\nexport interface SkillAgentOptions {\n api: string;\n sessionId?: string;\n adkOptions: {\n appName: string;\n userID: string;\n };\n query?: Record<string, string>;\n onError?: (error: Error) => void;\n onStateChange?: (state: {}) => void;\n onUploadFiles?: (files: File[]) => Promise<string[]>;\n}\n\nconst useSkillAgent = (options: SkillAgentOptions) => {\n const chatControllerRef = useRef<ChatController>();\n const pluginRef = useRef<SkillAgentPlugin>();\n if (!pluginRef.current) {\n pluginRef.current = new SkillAgentPlugin({\n onStateChange: options.onStateChange,\n onUploadFiles: options.onUploadFiles,\n });\n }\n const adkPlugin = useRef<AdkPlugin>();\n if (!adkPlugin.current) {\n adkPlugin.current = new AdkPlugin({\n appName: options.adkOptions.appName,\n userId: options.adkOptions.userID,\n });\n }\n pluginRef.current.updateOptions(options);\n adkPlugin.current.updateOptions({\n appName: options.adkOptions.appName,\n userId: options.adkOptions.userID,\n onStateChange: options.onStateChange,\n });\n\n if (!chatControllerRef.current) {\n const store = new ThreadMessageManager(createThreadManagerState());\n const plugin = pluginRef.current;\n const adlPlugin = new AdkPlugin({\n appName: options.adkOptions.appName,\n userId: options.adkOptions.userID,\n });\n chatControllerRef.current = new ChatController({\n requestOptions: {\n api: options.api,\n meta: options.query,\n headers: {\n Authorization: 'Bearer',\n },\n defaultParams: {\n streaming: true,\n },\n },\n protocolOptions: {\n protocol: 'ADK',\n },\n storeManager: store,\n plugins: [plugin, adlPlugin],\n });\n }\n\n const sendMessage = useMemoizedFn(({ message }: { message: string }) => {\n chatControllerRef.current?.sendMessage({\n content: [\n {\n type: 'text',\n text: message,\n },\n ],\n });\n });\n const ready = useMemoizedFn(({ sessionId }: { sessionId: string }) => {\n chatControllerRef.current\n ?.addThread({\n id: sessionId,\n name: sessionId,\n metadata: {},\n sending: false,\n messages: [],\n })\n .then(() => {\n chatControllerRef.current?.setCurrentThread(sessionId);\n });\n });\n\n const getState = useMemoizedFn(() => {\n return chatControllerRef.current?.getCurrentThread()?.metadata?.state;\n });\n return {\n controllerRef: chatControllerRef,\n sendMessage,\n ready,\n getState,\n };\n};\n\nexport { useSkillAgent };\n"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,18 @@ declare const useThread: () => {
|
|
|
24
24
|
readonly url: string;
|
|
25
25
|
readonly status: "init" | "uploading" | "success" | "error";
|
|
26
26
|
readonly type: string;
|
|
27
|
+
readonly file?: {
|
|
28
|
+
readonly lastModified: number;
|
|
29
|
+
readonly name: string;
|
|
30
|
+
readonly webkitRelativePath: string;
|
|
31
|
+
readonly size: number;
|
|
32
|
+
readonly type: string;
|
|
33
|
+
readonly arrayBuffer: () => Promise<ArrayBuffer>;
|
|
34
|
+
readonly bytes: () => Promise<Uint8Array<ArrayBuffer>>;
|
|
35
|
+
readonly slice: (start?: number, end?: number, contentType?: string) => Blob;
|
|
36
|
+
readonly stream: () => ReadableStream<Uint8Array<ArrayBuffer>>;
|
|
37
|
+
readonly text: () => Promise<string>;
|
|
38
|
+
} | undefined;
|
|
27
39
|
readonly mimeType: string;
|
|
28
40
|
readonly createdAt?: number | undefined;
|
|
29
41
|
}[] | undefined;
|
|
@@ -101,6 +113,18 @@ declare const useThread: () => {
|
|
|
101
113
|
readonly url: string;
|
|
102
114
|
readonly status: "init" | "uploading" | "success" | "error";
|
|
103
115
|
readonly type: string;
|
|
116
|
+
readonly file?: {
|
|
117
|
+
readonly lastModified: number;
|
|
118
|
+
readonly name: string;
|
|
119
|
+
readonly webkitRelativePath: string;
|
|
120
|
+
readonly size: number;
|
|
121
|
+
readonly type: string;
|
|
122
|
+
readonly arrayBuffer: () => Promise<ArrayBuffer>;
|
|
123
|
+
readonly bytes: () => Promise<Uint8Array<ArrayBuffer>>;
|
|
124
|
+
readonly slice: (start?: number, end?: number, contentType?: string) => Blob;
|
|
125
|
+
readonly stream: () => ReadableStream<Uint8Array<ArrayBuffer>>;
|
|
126
|
+
readonly text: () => Promise<string>;
|
|
127
|
+
} | undefined;
|
|
104
128
|
readonly mimeType: string;
|
|
105
129
|
readonly createdAt?: number | undefined;
|
|
106
130
|
}[] | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useThread.d.ts","sourceRoot":"","sources":["../../src/hooks/useThread.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,SAAS
|
|
1
|
+
{"version":3,"file":"useThread.d.ts","sourceRoot":"","sources":["../../src/hooks/useThread.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBd,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -6,6 +6,7 @@ var mitt = require('../../../node_modules/.pnpm/mitt@3.0.1/node_modules/mitt/dis
|
|
|
6
6
|
var vanilla = require('../../../node_modules/.pnpm/valtio@2.1.8_patch_hash_boxi3qpsg2dztwe4vz7tsjpr3m_@types_react@17.0.2_react@17.0.2/node_modules/valtio/esm/vanilla.cjs');
|
|
7
7
|
var v4 = require('../../../node_modules/.pnpm/uuid@13.0.0/node_modules/uuid/dist/v4.cjs');
|
|
8
8
|
var last = require('../../../node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/last.cjs');
|
|
9
|
+
var isNil = require('../../../node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isNil.cjs');
|
|
9
10
|
var throttle = require('../../../node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/throttle.cjs');
|
|
10
11
|
var keys = require('../../../node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/keys.cjs');
|
|
11
12
|
var compact = require('../../../node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/compact.cjs');
|
|
@@ -141,6 +142,7 @@ var AdkProtocol = class extends BaseProtocols_default {
|
|
|
141
142
|
this.protocol = ProtocolEnum.ADK;
|
|
142
143
|
this.authors = [];
|
|
143
144
|
this.omitCompleteText = options.omitCompleteText == true;
|
|
145
|
+
this.splitText = options.splitText || false;
|
|
144
146
|
this.protocolName = options.protocolName || options.protocol;
|
|
145
147
|
}
|
|
146
148
|
onStartSend() {
|
|
@@ -285,7 +287,7 @@ var AdkProtocol = class extends BaseProtocols_default {
|
|
|
285
287
|
generateRequestBody(request) {
|
|
286
288
|
const { userMessage, defaultParams, dynamicParams } = request;
|
|
287
289
|
const attachParts = userMessage.attaches?.map((item) => {
|
|
288
|
-
if (item.url.startsWith("https://") || item.url.startsWith("http://")) {
|
|
290
|
+
if (item.url.startsWith("https://") || item.url.startsWith("http://") || item.url.startsWith("/")) {
|
|
289
291
|
return {
|
|
290
292
|
fileData: {
|
|
291
293
|
displayName: item.attachId,
|
|
@@ -1446,6 +1448,9 @@ var AdkPlugin = class extends ChatkitPlugin {
|
|
|
1446
1448
|
this.setAppName = (appName) => {
|
|
1447
1449
|
this.options.appName = appName;
|
|
1448
1450
|
};
|
|
1451
|
+
this.updateOptions = (options) => {
|
|
1452
|
+
this.options = options;
|
|
1453
|
+
};
|
|
1449
1454
|
this.options = options;
|
|
1450
1455
|
this.adkProtocol = new Adk_default({
|
|
1451
1456
|
omitCompleteText: false,
|
|
@@ -1572,16 +1577,16 @@ var AdkPlugin = class extends ChatkitPlugin {
|
|
|
1572
1577
|
if (getFetchResponse.ok) {
|
|
1573
1578
|
const data = await getFetchResponse.json();
|
|
1574
1579
|
const xSessionId = getFetchResponse.headers.get("x-session-id");
|
|
1580
|
+
this.options.onStateChange?.(data.state);
|
|
1575
1581
|
this.chatController?.updateThread(threadId, {
|
|
1576
1582
|
metadata: {
|
|
1577
1583
|
...thread.metadata,
|
|
1578
1584
|
["sessionInited"]: true,
|
|
1579
1585
|
sessionId: data.id,
|
|
1580
1586
|
["isInitingSession"]: false,
|
|
1581
|
-
["x-session-id"]: xSessionId
|
|
1587
|
+
["x-session-id"]: xSessionId,
|
|
1588
|
+
state: data.state
|
|
1582
1589
|
},
|
|
1583
|
-
// messages: data?.events?.map(
|
|
1584
|
-
// (chunk: {
|
|
1585
1590
|
// id: string;
|
|
1586
1591
|
// author: string;
|
|
1587
1592
|
// content: { parts: any[] };
|
|
@@ -1819,8 +1824,6 @@ var toRaw = (obj) => {
|
|
|
1819
1824
|
return obj;
|
|
1820
1825
|
}
|
|
1821
1826
|
};
|
|
1822
|
-
|
|
1823
|
-
// src/ChatController.ts
|
|
1824
1827
|
var ChatController = class {
|
|
1825
1828
|
constructor(options) {
|
|
1826
1829
|
this.abortControllers = /* @__PURE__ */ new Map();
|
|
@@ -1892,7 +1895,11 @@ var ChatController = class {
|
|
|
1892
1895
|
this.store.setLoading(id, false);
|
|
1893
1896
|
}
|
|
1894
1897
|
getCurrentThread() {
|
|
1895
|
-
|
|
1898
|
+
const thread = this.store.getCurrentThread();
|
|
1899
|
+
if (isNil(thread)) {
|
|
1900
|
+
return null;
|
|
1901
|
+
}
|
|
1902
|
+
return toRaw(thread);
|
|
1896
1903
|
}
|
|
1897
1904
|
async setCurrentThread(threadId) {
|
|
1898
1905
|
this.store.setCurrentThread(threadId);
|
|
@@ -2026,7 +2033,8 @@ var ChatController = class {
|
|
|
2026
2033
|
}
|
|
2027
2034
|
const shouldSend = {
|
|
2028
2035
|
dynamicParams: hookContext.dynamicParams,
|
|
2029
|
-
requestOptions: hookContext.extraRequestOptions
|
|
2036
|
+
requestOptions: hookContext.extraRequestOptions,
|
|
2037
|
+
userMessage: hookContext.userMessage
|
|
2030
2038
|
};
|
|
2031
2039
|
const storeManager = this.store;
|
|
2032
2040
|
try {
|
|
@@ -2034,7 +2042,7 @@ var ChatController = class {
|
|
|
2034
2042
|
const requestBody = protocolAdaptor.generateRequestBody({
|
|
2035
2043
|
dynamicParams: shouldSend.dynamicParams,
|
|
2036
2044
|
defaultParams: this.requestOptions.defaultParams || {},
|
|
2037
|
-
userMessage,
|
|
2045
|
+
userMessage: shouldSend.userMessage,
|
|
2038
2046
|
thread,
|
|
2039
2047
|
contextMessages: allMessages
|
|
2040
2048
|
});
|