cheshirecat-typescript-client 1.6.1 → 1.7.1
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/clients/httpclient.d.ts +3 -2
- package/dist/clients/httpclient.js +12 -4
- package/dist/clients/httpclient.js.map +1 -1
- package/dist/clients/wsclient.d.ts +6 -4
- package/dist/clients/wsclient.js +27 -16
- package/dist/clients/wsclient.js.map +1 -1
- package/dist/endpoints/abstract.d.ts +3 -3
- package/dist/endpoints/abstract.js +6 -6
- package/dist/endpoints/abstract.js.map +1 -1
- package/dist/endpoints/conversation.d.ts +13 -18
- package/dist/endpoints/conversation.js +21 -26
- package/dist/endpoints/conversation.js.map +1 -1
- package/dist/endpoints/message.d.ts +4 -2
- package/dist/endpoints/message.js +6 -4
- package/dist/endpoints/message.js.map +1 -1
- package/dist/models/api/conversations.d.ts +11 -3
- package/dist/models/api/conversations.js +11 -1
- package/dist/models/api/conversations.js.map +1 -1
- package/dist/models/api/nested/memories.d.ts +1 -1
- package/dist/models/api/nested/memories.js +3 -3
- package/dist/models/api/nested/memories.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,13 +5,14 @@ export declare class HttpClient {
|
|
|
5
5
|
protected httpUri: Uri;
|
|
6
6
|
protected apikey?: string | null;
|
|
7
7
|
protected token?: string | null;
|
|
8
|
-
protected userId?: string | null;
|
|
9
8
|
protected agentId?: string | null;
|
|
9
|
+
protected userId?: string | null;
|
|
10
|
+
protected chatId?: string | null;
|
|
10
11
|
protected middlewares: Record<string, (config: InternalAxiosRequestConfig) => InternalAxiosRequestConfig>;
|
|
11
12
|
constructor(host: string, port?: number | null, apikey?: string | null, isHTTPs?: boolean);
|
|
12
13
|
createHttpClient(config?: AxiosRequestConfig): AxiosInstance;
|
|
13
14
|
setToken(token: string): this;
|
|
14
|
-
getClient(agentId?: string | null, userId?: string | null): AxiosInstance;
|
|
15
|
+
getClient(agentId?: string | null, userId?: string | null, chatId?: string | null): AxiosInstance;
|
|
15
16
|
getHttpUri(): Uri;
|
|
16
17
|
protected beforeSecureRequest(config: InternalAxiosRequestConfig): InternalAxiosRequestConfig;
|
|
17
18
|
protected beforeJwtRequest(config: InternalAxiosRequestConfig): InternalAxiosRequestConfig;
|
|
@@ -41,8 +41,9 @@ class HttpClient {
|
|
|
41
41
|
httpUri;
|
|
42
42
|
apikey;
|
|
43
43
|
token;
|
|
44
|
-
userId = null;
|
|
45
44
|
agentId = null;
|
|
45
|
+
userId = null;
|
|
46
|
+
chatId = null;
|
|
46
47
|
middlewares;
|
|
47
48
|
constructor(host, port, apikey, isHTTPs = false) {
|
|
48
49
|
this.apikey = apikey;
|
|
@@ -73,12 +74,13 @@ class HttpClient {
|
|
|
73
74
|
this.token = token;
|
|
74
75
|
return this;
|
|
75
76
|
}
|
|
76
|
-
getClient(agentId, userId) {
|
|
77
|
+
getClient(agentId, userId, chatId) {
|
|
77
78
|
if (!this.apikey && !this.token) {
|
|
78
79
|
throw new Error("You must provide an apikey or a token");
|
|
79
80
|
}
|
|
80
81
|
this.agentId = agentId;
|
|
81
82
|
this.userId = userId;
|
|
83
|
+
this.chatId = chatId;
|
|
82
84
|
return this.httpClient;
|
|
83
85
|
}
|
|
84
86
|
getHttpUri() {
|
|
@@ -91,11 +93,14 @@ class HttpClient {
|
|
|
91
93
|
if (this.apikey) {
|
|
92
94
|
config.headers.set("Authorization", `Bearer ${this.apikey}`);
|
|
93
95
|
}
|
|
96
|
+
if (this.agentId) {
|
|
97
|
+
config.headers.set("agent_id", this.agentId);
|
|
98
|
+
}
|
|
94
99
|
if (this.userId) {
|
|
95
100
|
config.headers.set("user_id", this.userId);
|
|
96
101
|
}
|
|
97
|
-
if (this.
|
|
98
|
-
config.headers.set("
|
|
102
|
+
if (this.chatId) {
|
|
103
|
+
config.headers.set("chat_id", this.chatId);
|
|
99
104
|
}
|
|
100
105
|
return config;
|
|
101
106
|
}
|
|
@@ -109,6 +114,9 @@ class HttpClient {
|
|
|
109
114
|
if (this.agentId) {
|
|
110
115
|
config.headers.set("agent_id", this.agentId);
|
|
111
116
|
}
|
|
117
|
+
if (this.chatId) {
|
|
118
|
+
config.headers.set("chat_id", this.chatId);
|
|
119
|
+
}
|
|
112
120
|
return config;
|
|
113
121
|
}
|
|
114
122
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpclient.js","sourceRoot":"","sources":["../../src/clients/httpclient.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAyG;AACzG,+BAA0B;AAE1B,MAAa,UAAU;IACT,UAAU,CAAgB;IAC1B,OAAO,CAAM;IACb,MAAM,CAAiB;IACvB,KAAK,CAAiB;IACtB,MAAM,GAAmB,IAAI,CAAC;IAC9B,
|
|
1
|
+
{"version":3,"file":"httpclient.js","sourceRoot":"","sources":["../../src/clients/httpclient.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAyG;AACzG,+BAA0B;AAE1B,MAAa,UAAU;IACT,UAAU,CAAgB;IAC1B,OAAO,CAAM;IACb,MAAM,CAAiB;IACvB,KAAK,CAAiB;IACtB,OAAO,GAAmB,IAAI,CAAC;IAC/B,MAAM,GAAmB,IAAI,CAAC;IAC9B,MAAM,GAAmB,IAAI,CAAC;IAC9B,WAAW,CAAqF;IAE1G,YACI,IAAY,EACZ,IAAoB,EACpB,MAAsB,EACtB,UAAmB,KAAK;QAExB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QAEvB,IAAI,CAAC,WAAW,GAAG;YACf,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;YACxD,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;SACrD,CAAC;QAEF,IAAI,CAAC,OAAO,GAAG,IAAI,SAAG,EAAE;aACnB,QAAQ,CAAC,IAAI,CAAC;aACd,QAAQ,CAAC,IAAI,CAAC;aACd,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAE5C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC9C,CAAC;IAEM,gBAAgB,CAAC,SAA6B,EAAE;QACnD,MAAM,MAAM,GAAG,eAAK,CAAC,MAAM,CAAC;YACxB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;YAChC,GAAG,MAAM;SACZ,CAAC,CAAC;QAEH,wBAAwB;QACxB,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1F,iBAAiB,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YACnC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,QAAQ,CAAC,KAAa;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,SAAS,CAAC,OAAuB,EAAE,MAAsB,EAAE,MAAsB;QACpF,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAES,mBAAmB,CAAC,MAAkC;QAC5D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,CAAC,OAAO,GAAG,IAAI,oBAAY,EAAE,CAAC;QACxC,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAES,gBAAgB,CAAC,MAAkC;QACzD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,CAAC,OAAO,GAAG,IAAI,oBAAY,EAAE,CAAC;QACxC,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AA1GD,gCA0GC"}
|
|
@@ -11,9 +11,9 @@ export declare class WSClient {
|
|
|
11
11
|
protected wsClient?: WebSocketClient;
|
|
12
12
|
constructor(host: string, port?: number | null, apikey?: string | null, isWSS?: boolean);
|
|
13
13
|
setToken(token: string): this;
|
|
14
|
-
getClient(agentId: string, userId: string): WebSocketClient;
|
|
15
|
-
getWsUri(agentId: string, userId: string): Uri;
|
|
16
|
-
protected createWsClient(agentId: string, userId: string): WebSocketClient;
|
|
14
|
+
getClient(agentId: string, userId: string, chatId?: string | null): WebSocketClient;
|
|
15
|
+
getWsUri(agentId: string, userId: string, chatId?: string | null): Uri;
|
|
16
|
+
protected createWsClient(agentId: string, userId: string, chatId?: string | null): WebSocketClient;
|
|
17
17
|
}
|
|
18
18
|
interface WebSocketClientEvents {
|
|
19
19
|
open: () => void;
|
|
@@ -24,13 +24,15 @@ interface WebSocketClientEvents {
|
|
|
24
24
|
}
|
|
25
25
|
export declare class WebSocketClient extends EventEmitter {
|
|
26
26
|
private ws;
|
|
27
|
+
private url;
|
|
28
|
+
private headers?;
|
|
27
29
|
private pingInterval?;
|
|
28
30
|
private pongTimeout?;
|
|
29
31
|
private reconnectAttempts;
|
|
30
32
|
private readonly maxReconnectAttempts;
|
|
31
33
|
private readonly pingIntervalMs;
|
|
32
34
|
private readonly pongTimeoutMs;
|
|
33
|
-
constructor(url: string);
|
|
35
|
+
constructor(url: string, headers?: Record<string, string>);
|
|
34
36
|
on<K extends keyof WebSocketClientEvents>(event: K, listener: WebSocketClientEvents[K]): this;
|
|
35
37
|
emit<K extends keyof WebSocketClientEvents>(event: K, ...args: Parameters<WebSocketClientEvents[K]>): boolean;
|
|
36
38
|
private connect;
|
package/dist/clients/wsclient.js
CHANGED
|
@@ -25,47 +25,53 @@ class WSClient {
|
|
|
25
25
|
this.token = token;
|
|
26
26
|
return this;
|
|
27
27
|
}
|
|
28
|
-
getClient(agentId, userId) {
|
|
28
|
+
getClient(agentId, userId, chatId) {
|
|
29
29
|
if (!this.apikey && !this.token) {
|
|
30
30
|
throw new Error("You must provide an apikey or a token");
|
|
31
31
|
}
|
|
32
32
|
if (!this.wsClient) {
|
|
33
|
-
this.wsClient = this.createWsClient(agentId, userId);
|
|
33
|
+
this.wsClient = this.createWsClient(agentId, userId, chatId);
|
|
34
34
|
}
|
|
35
35
|
return this.wsClient;
|
|
36
36
|
}
|
|
37
|
-
getWsUri(agentId, userId) {
|
|
37
|
+
getWsUri(agentId, userId, chatId) {
|
|
38
38
|
const query = {};
|
|
39
39
|
query["user_id"] = userId;
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
else {
|
|
44
|
-
query["apikey"] = this.apikey;
|
|
40
|
+
let path = `ws/${agentId}`;
|
|
41
|
+
if (chatId) {
|
|
42
|
+
path += `/${chatId}`;
|
|
45
43
|
}
|
|
46
44
|
return new uri_1.Uri()
|
|
47
45
|
.withScheme(this.isWSS ? "wss" : "ws")
|
|
48
46
|
.withHost(this.host)
|
|
49
|
-
.withPath(
|
|
47
|
+
.withPath(path)
|
|
50
48
|
.withQueryItems(query)
|
|
51
49
|
.withPort(this.port);
|
|
52
50
|
}
|
|
53
|
-
createWsClient(agentId, userId) {
|
|
54
|
-
|
|
51
|
+
createWsClient(agentId, userId, chatId) {
|
|
52
|
+
const bearerToken = this.token ?? this.apikey;
|
|
53
|
+
const headers = {
|
|
54
|
+
Authorization: `Bearer ${bearerToken}`
|
|
55
|
+
};
|
|
56
|
+
return new WebSocketClient(this.getWsUri(agentId, userId, chatId).toString(), headers);
|
|
55
57
|
}
|
|
56
58
|
}
|
|
57
59
|
exports.WSClient = WSClient;
|
|
58
60
|
class WebSocketClient extends events_1.EventEmitter {
|
|
59
61
|
ws;
|
|
62
|
+
url;
|
|
63
|
+
headers;
|
|
60
64
|
pingInterval;
|
|
61
65
|
pongTimeout;
|
|
62
66
|
reconnectAttempts = 0;
|
|
63
67
|
maxReconnectAttempts = 5;
|
|
64
68
|
pingIntervalMs = 30000;
|
|
65
69
|
pongTimeoutMs = 5000;
|
|
66
|
-
constructor(url) {
|
|
70
|
+
constructor(url, headers) {
|
|
67
71
|
super();
|
|
68
|
-
this.
|
|
72
|
+
this.url = url;
|
|
73
|
+
this.headers = headers;
|
|
74
|
+
this.ws = this.connect(url, headers);
|
|
69
75
|
this.setupPingPong();
|
|
70
76
|
this.setupEventHandlers();
|
|
71
77
|
}
|
|
@@ -75,7 +81,12 @@ class WebSocketClient extends events_1.EventEmitter {
|
|
|
75
81
|
emit(event, ...args) {
|
|
76
82
|
return super.emit(event, ...args);
|
|
77
83
|
}
|
|
78
|
-
connect(url) {
|
|
84
|
+
connect(url, headers) {
|
|
85
|
+
if (headers) {
|
|
86
|
+
return new isomorphic_ws_1.default(url, {
|
|
87
|
+
headers: headers
|
|
88
|
+
});
|
|
89
|
+
}
|
|
79
90
|
return new isomorphic_ws_1.default(url);
|
|
80
91
|
}
|
|
81
92
|
setupPingPong() {
|
|
@@ -101,7 +112,7 @@ class WebSocketClient extends events_1.EventEmitter {
|
|
|
101
112
|
if (this.reconnectAttempts < this.maxReconnectAttempts) {
|
|
102
113
|
this.reconnectAttempts++;
|
|
103
114
|
setTimeout(() => {
|
|
104
|
-
this.ws = this.connect(this.
|
|
115
|
+
this.ws = this.connect(this.url, this.headers);
|
|
105
116
|
this.setupEventHandlers();
|
|
106
117
|
}, 1000 * this.reconnectAttempts);
|
|
107
118
|
}
|
|
@@ -165,7 +176,7 @@ class WebSocketClient extends events_1.EventEmitter {
|
|
|
165
176
|
if (this.reconnectAttempts < this.maxReconnectAttempts) {
|
|
166
177
|
this.reconnectAttempts++;
|
|
167
178
|
setTimeout(() => {
|
|
168
|
-
this.ws = this.connect(this.
|
|
179
|
+
this.ws = this.connect(this.url, this.headers);
|
|
169
180
|
this.setupEventHandlers();
|
|
170
181
|
}, 1000 * this.reconnectAttempts);
|
|
171
182
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wsclient.js","sourceRoot":"","sources":["../../src/clients/wsclient.ts"],"names":[],"mappings":";;;;;;AAAA,kEAAsC;AACtC,+BAA0B;AAC1B,mCAAoC;AAGpC,MAAa,QAAQ;IACP,IAAI,CAAS;IACb,IAAI,GAAmB,IAAI,CAAC;IAC5B,MAAM,GAAmB,IAAI,CAAC;IAC9B,KAAK,GAAmB,IAAI,CAAC;IAC7B,KAAK,CAAU;IACf,QAAQ,CAAmB;IAErC,YACI,IAAY,EACZ,IAAoB,EACpB,MAAsB,EACtB,QAAiB,KAAK;QAEtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAEM,QAAQ,CAAC,KAAa;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,SAAS,CAAC,OAAe,EAAE,MAAc;
|
|
1
|
+
{"version":3,"file":"wsclient.js","sourceRoot":"","sources":["../../src/clients/wsclient.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,11 +7,11 @@ export declare abstract class AbstractEndpoint {
|
|
|
7
7
|
protected systemId: string;
|
|
8
8
|
constructor(client: CheshireCatClient);
|
|
9
9
|
protected formatUrl(endpoint: string): string;
|
|
10
|
-
protected getHttpClient(agentId?: string | null, userId?: string | null): AxiosInstance;
|
|
11
|
-
protected getWsClient(agentId: string, userId: string): WebSocketClient;
|
|
10
|
+
protected getHttpClient(agentId?: string | null, userId?: string | null, chatId?: string | null): AxiosInstance;
|
|
11
|
+
protected getWsClient(agentId: string, userId: string, chatId?: string | null): WebSocketClient;
|
|
12
12
|
protected deserialize<T>(data: string): T;
|
|
13
13
|
protected get<T>(endpoint: string, agentId: string | null, userId?: string | null, query?: any): Promise<T>;
|
|
14
|
-
protected post<T>(endpoint: string, agentId: string, payload?: any, userId?: string | null): Promise<T>;
|
|
14
|
+
protected post<T>(endpoint: string, agentId: string, payload?: any, userId?: string | null, chatId?: string | null): Promise<T>;
|
|
15
15
|
protected put<T>(endpoint: string, agentId: string, payload?: any, userId?: string | null): Promise<T>;
|
|
16
16
|
protected delete<T>(endpoint: string, agentId: string, userId?: string | null, payload?: any): Promise<T>;
|
|
17
17
|
}
|
|
@@ -11,11 +11,11 @@ class AbstractEndpoint {
|
|
|
11
11
|
formatUrl(endpoint) {
|
|
12
12
|
return `/${this.prefix}/${endpoint}`.replace(/\/+/g, "/");
|
|
13
13
|
}
|
|
14
|
-
getHttpClient(agentId, userId) {
|
|
15
|
-
return this.client.getHttpClient().getClient(agentId, userId);
|
|
14
|
+
getHttpClient(agentId, userId, chatId) {
|
|
15
|
+
return this.client.getHttpClient().getClient(agentId, userId, chatId);
|
|
16
16
|
}
|
|
17
|
-
getWsClient(agentId, userId) {
|
|
18
|
-
return this.client.getWsClient().getClient(agentId, userId);
|
|
17
|
+
getWsClient(agentId, userId, chatId) {
|
|
18
|
+
return this.client.getWsClient().getClient(agentId, userId, chatId);
|
|
19
19
|
}
|
|
20
20
|
deserialize(data) {
|
|
21
21
|
return this.client.getSerializer().deserialize(data);
|
|
@@ -31,12 +31,12 @@ class AbstractEndpoint {
|
|
|
31
31
|
}
|
|
32
32
|
return this.deserialize(response.data);
|
|
33
33
|
}
|
|
34
|
-
async post(endpoint, agentId, payload, userId) {
|
|
34
|
+
async post(endpoint, agentId, payload, userId, chatId) {
|
|
35
35
|
const options = {};
|
|
36
36
|
if (payload) {
|
|
37
37
|
options.json = payload;
|
|
38
38
|
}
|
|
39
|
-
const response = await this.getHttpClient(agentId, userId).post(endpoint, options);
|
|
39
|
+
const response = await this.getHttpClient(agentId, userId, chatId).post(endpoint, options);
|
|
40
40
|
if (response.status !== 200) {
|
|
41
41
|
throw new Error(`Failed to post data to ${endpoint}: ${response.statusText}`);
|
|
42
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../src/endpoints/abstract.ts"],"names":[],"mappings":";;;AAIA,MAAsB,gBAAgB;IACxB,MAAM,CAAoB;IAC1B,MAAM,CAAS;IACf,QAAQ,GAAW,QAAQ,CAAC;IAEtC,YAAY,MAAyB;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAES,SAAS,CAAC,QAAgB;QAChC,OAAO,IAAI,IAAI,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9D,CAAC;IAES,aAAa,CAAC,OAAuB,EAAE,MAAsB;
|
|
1
|
+
{"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../src/endpoints/abstract.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { AbstractEndpoint } from "./abstract";
|
|
2
|
-
import {
|
|
3
|
-
import { Role } from "../types";
|
|
4
|
-
import { Why } from "../models/dtos";
|
|
2
|
+
import { ConversationDeleteOutput, ConversationHistoryOutput, ConversationNameChangeOutput, ConversationsResponse } from "../models/api/conversations";
|
|
5
3
|
export declare class ConversationEndpoint extends AbstractEndpoint {
|
|
6
4
|
protected prefix: string;
|
|
7
5
|
/**
|
|
@@ -15,36 +13,33 @@ export declare class ConversationEndpoint extends AbstractEndpoint {
|
|
|
15
13
|
*/
|
|
16
14
|
getConversationHistory(agentId: string, userId: string, chatId: string): Promise<ConversationHistoryOutput>;
|
|
17
15
|
/**
|
|
18
|
-
* This endpoint returns all conversation
|
|
16
|
+
* This endpoint returns all conversation attributes for a given agent and user.
|
|
19
17
|
*
|
|
20
18
|
* @param agentId The agent ID.
|
|
21
|
-
* @param userId The user ID to filter the conversation
|
|
19
|
+
* @param userId The user ID to filter the conversation attributes by.
|
|
22
20
|
*
|
|
23
|
-
* @returns An
|
|
21
|
+
* @returns An array of conversation attributes.
|
|
24
22
|
*/
|
|
25
|
-
|
|
23
|
+
getConversations(agentId: string, userId: string): Promise<ConversationsResponse[]>;
|
|
26
24
|
/**
|
|
27
|
-
* This endpoint deletes the conversation
|
|
25
|
+
* This endpoint deletes the conversation.
|
|
28
26
|
*
|
|
29
27
|
* @param agentId The agent ID.
|
|
30
|
-
* @param userId The user ID to filter the conversation
|
|
31
|
-
* @param chatId The chat ID to filter the conversation
|
|
28
|
+
* @param userId The user ID to filter the conversation by.
|
|
29
|
+
* @param chatId The chat ID to filter the conversation by.
|
|
32
30
|
*
|
|
33
31
|
* @returns The output of the deletion operation.
|
|
34
32
|
*/
|
|
35
|
-
|
|
33
|
+
deleteConversation(agentId: string, userId: string, chatId: string): Promise<ConversationDeleteOutput>;
|
|
36
34
|
/**
|
|
37
|
-
* This endpoint
|
|
35
|
+
* This endpoint changes the name of the conversation.
|
|
38
36
|
*
|
|
39
|
-
* @param
|
|
40
|
-
* @param text The text of the conversation history.
|
|
37
|
+
* @param name The new name of the conversation.
|
|
41
38
|
* @param agentId The agent ID.
|
|
42
39
|
* @param userId The user ID to add the conversation history to.
|
|
43
40
|
* @param chatId The chat ID to add the conversation history to.
|
|
44
|
-
* @param image The image of the conversation history.
|
|
45
|
-
* @param why The reason for the conversation history.
|
|
46
41
|
*
|
|
47
|
-
* @returns The
|
|
42
|
+
* @returns The output of the change operation.
|
|
48
43
|
*/
|
|
49
|
-
|
|
44
|
+
postConversationName(name: string, agentId: string, userId: string, chatId: string): Promise<ConversationNameChangeOutput>;
|
|
50
45
|
}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ConversationEndpoint = void 0;
|
|
4
4
|
const abstract_1 = require("./abstract");
|
|
5
|
+
const conversations_1 = require("../models/api/conversations");
|
|
5
6
|
class ConversationEndpoint extends abstract_1.AbstractEndpoint {
|
|
6
7
|
prefix = "/conversation";
|
|
7
8
|
/**
|
|
@@ -17,56 +18,50 @@ class ConversationEndpoint extends abstract_1.AbstractEndpoint {
|
|
|
17
18
|
return this.get(this.formatUrl(chatId), agentId, userId);
|
|
18
19
|
}
|
|
19
20
|
/**
|
|
20
|
-
* This endpoint returns all conversation
|
|
21
|
+
* This endpoint returns all conversation attributes for a given agent and user.
|
|
21
22
|
*
|
|
22
23
|
* @param agentId The agent ID.
|
|
23
|
-
* @param userId The user ID to filter the conversation
|
|
24
|
+
* @param userId The user ID to filter the conversation attributes by.
|
|
24
25
|
*
|
|
25
|
-
* @returns An
|
|
26
|
+
* @returns An array of conversation attributes.
|
|
26
27
|
*/
|
|
27
|
-
async
|
|
28
|
+
async getConversations(agentId, userId) {
|
|
28
29
|
const response = await this.getHttpClient(agentId, userId).get(this.prefix);
|
|
29
30
|
if (response.status !== 200) {
|
|
30
31
|
throw new Error(`Failed to fetch data from ${this.prefix}: ${response.statusText}`);
|
|
31
32
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
return response.data.map((item) => {
|
|
34
|
+
const conversation = new conversations_1.ConversationsResponse();
|
|
35
|
+
conversation.chat_id = item.chat_id;
|
|
36
|
+
conversation.name = item.name;
|
|
37
|
+
conversation.num_messages = item.num_messages;
|
|
38
|
+
return conversation;
|
|
39
|
+
});
|
|
37
40
|
}
|
|
38
41
|
/**
|
|
39
|
-
* This endpoint deletes the conversation
|
|
42
|
+
* This endpoint deletes the conversation.
|
|
40
43
|
*
|
|
41
44
|
* @param agentId The agent ID.
|
|
42
|
-
* @param userId The user ID to filter the conversation
|
|
43
|
-
* @param chatId The chat ID to filter the conversation
|
|
45
|
+
* @param userId The user ID to filter the conversation by.
|
|
46
|
+
* @param chatId The chat ID to filter the conversation by.
|
|
44
47
|
*
|
|
45
48
|
* @returns The output of the deletion operation.
|
|
46
49
|
*/
|
|
47
|
-
async
|
|
50
|
+
async deleteConversation(agentId, userId, chatId) {
|
|
48
51
|
return this.delete(this.formatUrl(chatId), agentId, userId);
|
|
49
52
|
}
|
|
50
53
|
/**
|
|
51
|
-
* This endpoint
|
|
54
|
+
* This endpoint changes the name of the conversation.
|
|
52
55
|
*
|
|
53
|
-
* @param
|
|
54
|
-
* @param text The text of the conversation history.
|
|
56
|
+
* @param name The new name of the conversation.
|
|
55
57
|
* @param agentId The agent ID.
|
|
56
58
|
* @param userId The user ID to add the conversation history to.
|
|
57
59
|
* @param chatId The chat ID to add the conversation history to.
|
|
58
|
-
* @param image The image of the conversation history.
|
|
59
|
-
* @param why The reason for the conversation history.
|
|
60
60
|
*
|
|
61
|
-
* @returns The
|
|
61
|
+
* @returns The output of the change operation.
|
|
62
62
|
*/
|
|
63
|
-
async
|
|
64
|
-
const payload = {
|
|
65
|
-
who: who,
|
|
66
|
-
text,
|
|
67
|
-
...(image && { image }),
|
|
68
|
-
...(why && { why: why.toArray() }),
|
|
69
|
-
};
|
|
63
|
+
async postConversationName(name, agentId, userId, chatId) {
|
|
64
|
+
const payload = { name };
|
|
70
65
|
return this.post(this.formatUrl(chatId), agentId, payload, userId);
|
|
71
66
|
}
|
|
72
67
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../src/endpoints/conversation.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;
|
|
1
|
+
{"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../src/endpoints/conversation.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAC5C,+DAKqC;AAIrC,MAAa,oBAAqB,SAAQ,2BAAgB;IAC5C,MAAM,GAAG,eAAe,CAAC;IAEnC;;;;;;;;OAQG;IACH,KAAK,CAAC,sBAAsB,CACxB,OAAe,EACf,MAAc,EACd,MAAc;QAEd,OAAO,IAAI,CAAC,GAAG,CAA4B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACxF,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,gBAAgB,CAAC,OAAe,EAAE,MAAc;QAClD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5E,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACxF,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE;YACnC,MAAM,YAAY,GAAG,IAAI,qCAAqB,EAAE,CAAC;YACjD,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YACpC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YAC9B,YAAY,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YAC9C,OAAO,YAAY,CAAC;QACxB,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,kBAAkB,CACpB,OAAe,EACf,MAAc,EACd,MAAc;QAEd,OAAO,IAAI,CAAC,MAAM,CACd,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EACtB,OAAO,EACP,MAAM,CACT,CAAC;IACN,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,oBAAoB,CACtB,IAAY,EACZ,OAAe,EACf,MAAc,EACd,MAAc;QAEd,MAAM,OAAO,GAAG,EAAC,IAAI,EAAC,CAAC;QAEvB,OAAO,IAAI,CAAC,IAAI,CAA+B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACrG,CAAC;CACJ;AApFD,oDAoFC"}
|
|
@@ -8,19 +8,21 @@ export declare class MessageEndpoint extends AbstractEndpoint {
|
|
|
8
8
|
* @param message The message to send
|
|
9
9
|
* @param agentId The ID of the agent to send the message to
|
|
10
10
|
* @param userId The ID of the user sending the message
|
|
11
|
+
* @param chatId The ID of the chat session (optional)
|
|
11
12
|
*
|
|
12
13
|
* @returns The response from the server
|
|
13
14
|
*/
|
|
14
|
-
sendHttpMessage(message: Message, agentId: string, userId: string): Promise<MessageOutput>;
|
|
15
|
+
sendHttpMessage(message: Message, agentId: string, userId: string, chatId?: string | null): Promise<MessageOutput>;
|
|
15
16
|
/**
|
|
16
17
|
* This endpoint sends a message to the agent identified by the agentId parameter. The message is sent via WebSocket.
|
|
17
18
|
*
|
|
18
19
|
* @param message The message to send
|
|
19
20
|
* @param agentId The ID of the agent to send the message to
|
|
20
21
|
* @param userId The ID of the user sending the message
|
|
22
|
+
* @param chatId The ID of the chat session (optional)
|
|
21
23
|
* @param closure A closure that is called when a non-chat message is received
|
|
22
24
|
*
|
|
23
25
|
* @returns The response from the server
|
|
24
26
|
*/
|
|
25
|
-
sendWebsocketMessage(message: Message, agentId: string, userId: string, closure?: (content: string) => void | null): Promise<MessageOutput>;
|
|
27
|
+
sendWebsocketMessage(message: Message, agentId: string, userId: string, chatId?: string | null, closure?: (content: string) => void | null): Promise<MessageOutput>;
|
|
26
28
|
}
|
|
@@ -9,11 +9,12 @@ class MessageEndpoint extends abstract_1.AbstractEndpoint {
|
|
|
9
9
|
* @param message The message to send
|
|
10
10
|
* @param agentId The ID of the agent to send the message to
|
|
11
11
|
* @param userId The ID of the user sending the message
|
|
12
|
+
* @param chatId The ID of the chat session (optional)
|
|
12
13
|
*
|
|
13
14
|
* @returns The response from the server
|
|
14
15
|
*/
|
|
15
|
-
async sendHttpMessage(message, agentId, userId) {
|
|
16
|
-
return this.post("/message", agentId, message.toJSON(), userId);
|
|
16
|
+
async sendHttpMessage(message, agentId, userId, chatId) {
|
|
17
|
+
return this.post("/message", agentId, message.toJSON(), userId, chatId);
|
|
17
18
|
}
|
|
18
19
|
/**
|
|
19
20
|
* This endpoint sends a message to the agent identified by the agentId parameter. The message is sent via WebSocket.
|
|
@@ -21,16 +22,17 @@ class MessageEndpoint extends abstract_1.AbstractEndpoint {
|
|
|
21
22
|
* @param message The message to send
|
|
22
23
|
* @param agentId The ID of the agent to send the message to
|
|
23
24
|
* @param userId The ID of the user sending the message
|
|
25
|
+
* @param chatId The ID of the chat session (optional)
|
|
24
26
|
* @param closure A closure that is called when a non-chat message is received
|
|
25
27
|
*
|
|
26
28
|
* @returns The response from the server
|
|
27
29
|
*/
|
|
28
|
-
async sendWebsocketMessage(message, agentId, userId, closure) {
|
|
30
|
+
async sendWebsocketMessage(message, agentId, userId, chatId, closure) {
|
|
29
31
|
const json = JSON.stringify(message.toJSON());
|
|
30
32
|
if (!json) {
|
|
31
33
|
throw new Error("Error encoding message");
|
|
32
34
|
}
|
|
33
|
-
const client = this.getWsClient(agentId, userId);
|
|
35
|
+
const client = this.getWsClient(agentId, userId, chatId);
|
|
34
36
|
return new Promise((resolve, reject) => {
|
|
35
37
|
client.on("open", () => {
|
|
36
38
|
client.send(json);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../src/endpoints/message.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAK5C,MAAa,eAAgB,SAAQ,2BAAgB;IACjD
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../src/endpoints/message.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAK5C,MAAa,eAAgB,SAAQ,2BAAgB;IACjD;;;;;;;;;OASG;IACH,KAAK,CAAC,eAAe,CACjB,OAAgB,EAChB,OAAe,EACf,MAAc,EACd,MAAsB;QAEtB,OAAO,IAAI,CAAC,IAAI,CACZ,UAAU,EACV,OAAO,EACP,OAAO,CAAC,MAAM,EAAE,EAChB,MAAM,EACN,MAAM,CACT,CAAC;IACN,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,oBAAoB,CACtB,OAAgB,EAChB,OAAe,EACf,MAAc,EACd,MAAsB,EACtB,OAA0C;QAE1C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAEzD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;gBACnB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAmB,EAAE,EAAE;gBACzC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAEhC,2BAA2B;gBAC3B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;oBACrC,IAAI,OAAO;wBAAE,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC9B,OAAO;gBACX,CAAC;gBAED,MAAM,CAAC,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC;oBACD,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAgB,OAAO,CAAC,CAAC;oBAC/D,OAAO,CAAC,aAAa,CAAC,CAAC;gBAC3B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,MAAM,CAAC,IAAI,KAAK,CAAC,+BAA+B,GAAG,KAAK,CAAC,CAAC,CAAC;gBAC/D,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACzB,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;gBACpB,MAAM,CAAC,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC,CAAC;YAClE,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AAnFD,0CAmFC"}
|
|
@@ -1,8 +1,16 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export interface
|
|
1
|
+
import { ConversationMessage } from "./nested/memories";
|
|
2
|
+
export interface ConversationDeleteOutput {
|
|
3
3
|
deleted: boolean;
|
|
4
4
|
}
|
|
5
5
|
export declare class ConversationHistoryOutput {
|
|
6
|
-
history:
|
|
6
|
+
history: ConversationMessage[];
|
|
7
7
|
toArray(): Record<string, unknown>;
|
|
8
8
|
}
|
|
9
|
+
export declare class ConversationsResponse {
|
|
10
|
+
chat_id: string;
|
|
11
|
+
name: string;
|
|
12
|
+
num_messages: number;
|
|
13
|
+
}
|
|
14
|
+
export declare class ConversationNameChangeOutput {
|
|
15
|
+
changed: boolean;
|
|
16
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ConversationHistoryOutput = void 0;
|
|
3
|
+
exports.ConversationNameChangeOutput = exports.ConversationsResponse = exports.ConversationHistoryOutput = void 0;
|
|
4
4
|
class ConversationHistoryOutput {
|
|
5
5
|
history;
|
|
6
6
|
toArray() {
|
|
@@ -9,4 +9,14 @@ class ConversationHistoryOutput {
|
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
11
|
exports.ConversationHistoryOutput = ConversationHistoryOutput;
|
|
12
|
+
class ConversationsResponse {
|
|
13
|
+
chat_id;
|
|
14
|
+
name;
|
|
15
|
+
num_messages;
|
|
16
|
+
}
|
|
17
|
+
exports.ConversationsResponse = ConversationsResponse;
|
|
18
|
+
class ConversationNameChangeOutput {
|
|
19
|
+
changed;
|
|
20
|
+
}
|
|
21
|
+
exports.ConversationNameChangeOutput = ConversationNameChangeOutput;
|
|
12
22
|
//# sourceMappingURL=conversations.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversations.js","sourceRoot":"","sources":["../../../src/models/api/conversations.ts"],"names":[],"mappings":";;;AAMA,MAAa,yBAAyB;IAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"conversations.js","sourceRoot":"","sources":["../../../src/models/api/conversations.ts"],"names":[],"mappings":";;;AAMA,MAAa,yBAAyB;IAClC,OAAO,CAAwB;IAExB,OAAO;QACV,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACnD,OAAO,EAAE,OAAO,EAAE,CAAC;IACvB,CAAC;CACJ;AAPD,8DAOC;AAED,MAAa,qBAAqB;IAC9B,OAAO,CAAS;IAChB,IAAI,CAAS;IACb,YAAY,CAAS;CACxB;AAJD,sDAIC;AAED,MAAa,4BAA4B;IACrC,OAAO,CAAU;CACpB;AAFD,oEAEC"}
|
|
@@ -7,7 +7,7 @@ export declare class ConversationHistoryItemContent extends MessageBase {
|
|
|
7
7
|
why?: Why | null;
|
|
8
8
|
toArray(): object;
|
|
9
9
|
}
|
|
10
|
-
export declare class
|
|
10
|
+
export declare class ConversationMessage {
|
|
11
11
|
who: string;
|
|
12
12
|
when: number;
|
|
13
13
|
content: ConversationHistoryItemContent;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.ConversationMessage = exports.ConversationHistoryItemContent = void 0;
|
|
4
4
|
const dtos_1 = require("../../dtos");
|
|
5
5
|
class ConversationHistoryItemContent extends dtos_1.MessageBase {
|
|
6
6
|
why = null;
|
|
@@ -19,7 +19,7 @@ class ConversationHistoryItemContent extends dtos_1.MessageBase {
|
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
21
|
exports.ConversationHistoryItemContent = ConversationHistoryItemContent;
|
|
22
|
-
class
|
|
22
|
+
class ConversationMessage {
|
|
23
23
|
who;
|
|
24
24
|
when;
|
|
25
25
|
content;
|
|
@@ -31,5 +31,5 @@ class ConversationHistoryItem {
|
|
|
31
31
|
};
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
|
-
exports.
|
|
34
|
+
exports.ConversationMessage = ConversationMessage;
|
|
35
35
|
//# sourceMappingURL=memories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memories.js","sourceRoot":"","sources":["../../../../src/models/api/nested/memories.ts"],"names":[],"mappings":";;;AAAA,qCAA4C;AAO5C,MAAa,8BAA+B,SAAQ,kBAAW;IAC3D,GAAG,GAAgB,IAAI,CAAC;IAEjB,OAAO;QACV,IAAI,IAAI,GAAW;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;SACpB,CAAC;QAEF,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;YACpB,IAAI,GAAG;gBACH,GAAG,IAAI;gBACP,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE;aAC3B,CAAC;QACN,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAlBD,wEAkBC;AAED,MAAa,
|
|
1
|
+
{"version":3,"file":"memories.js","sourceRoot":"","sources":["../../../../src/models/api/nested/memories.ts"],"names":[],"mappings":";;;AAAA,qCAA4C;AAO5C,MAAa,8BAA+B,SAAQ,kBAAW;IAC3D,GAAG,GAAgB,IAAI,CAAC;IAEjB,OAAO;QACV,IAAI,IAAI,GAAW;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;SACpB,CAAC;QAEF,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;YACpB,IAAI,GAAG;gBACH,GAAG,IAAI;gBACP,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE;aAC3B,CAAC;QACN,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAlBD,wEAkBC;AAED,MAAa,mBAAmB;IAC5B,GAAG,CAAS;IACZ,IAAI,CAAS;IACb,OAAO,CAAiC;IAEjC,OAAO;QACV,OAAO;YACH,KAAK,EAAE,IAAI,CAAC,GAAG;YACf,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACjC,MAAM,EAAE,IAAI,CAAC,IAAI;SACpB,CAAC;IACN,CAAC;CACJ;AAZD,kDAYC"}
|