@useago/sdk 1.0.1 → 1.0.2
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/CHANGELOG.md +44 -0
- package/README.md +1 -1
- package/dist/AgoClient-_fig8FoN.cjs +6 -0
- package/dist/{AgoClient-CZYNL25R.js → AgoClient-bQozE6-A.js} +172 -141
- package/dist/angular.cjs +1 -1
- package/dist/angular.d.cts +42 -1
- package/dist/angular.d.ts +42 -1
- package/dist/angular.js +1 -1
- package/dist/{createConversationSession-Bmqj2rSS.js → createConversationSession-BbK3ou1k.js} +1 -1
- package/dist/{createConversationSession-BLZvXMmM.cjs → createConversationSession-DJUFgOXy.cjs} +1 -1
- package/dist/{createFormCollector-Ca8wRrxc.cjs → createFormCollector-CdQjGAl_.cjs} +1 -1
- package/dist/{createFormCollector-Bk0DRhUf.js → createFormCollector-D-TpSd9x.js} +1 -1
- package/dist/devtools.d.cts +42 -1
- package/dist/devtools.d.ts +42 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +79 -4
- package/dist/index.d.ts +79 -4
- package/dist/index.js +60 -59
- package/dist/react.cjs +19 -19
- package/dist/react.d.cts +51 -7
- package/dist/react.d.ts +51 -7
- package/dist/react.js +1268 -1275
- package/dist/testing.d.cts +42 -1
- package/dist/testing.d.ts +42 -1
- package/dist/vue.cjs +1 -1
- package/dist/vue.d.cts +42 -1
- package/dist/vue.d.ts +42 -1
- package/dist/vue.js +1 -1
- package/dist/widget.cjs +4 -4
- package/dist/widget.d.cts +42 -1
- package/dist/widget.d.ts +42 -1
- package/dist/widget.js +194 -201
- package/package.json +2 -2
- package/dist/AgoClient-0x2Du_62.cjs +0 -6
package/dist/widget.d.ts
CHANGED
|
@@ -16,12 +16,26 @@ declare class AgoClient {
|
|
|
16
16
|
private contextRegistry;
|
|
17
17
|
private eventEmitter;
|
|
18
18
|
private config;
|
|
19
|
+
/** Conversations already warned about an empty reply (one warning each). */
|
|
20
|
+
private warnedEmptyConversations;
|
|
19
21
|
constructor(config: AgoConfig);
|
|
20
22
|
/**
|
|
21
23
|
* Send a message and receive a streaming response
|
|
22
24
|
*/
|
|
23
25
|
sendMessage(content: string, options?: SendMessageOptions): Promise<AgoMessage>;
|
|
24
26
|
private processSSEResponse;
|
|
27
|
+
/**
|
|
28
|
+
* Detect a reply that completed as DONE with no content and no activity —
|
|
29
|
+
* today's backend answers an unknown `agent` slug with an empty 200, which
|
|
30
|
+
* otherwise fails silently. Emits `message:empty` (always) and warns on the
|
|
31
|
+
* console once per conversation (unless `warnOnEmptyReply: false`).
|
|
32
|
+
*
|
|
33
|
+
* Deferred with setTimeout(0) so both land AFTER `sendMessage` resolves:
|
|
34
|
+
* `await client.sendMessage(...)` followed by `client.waitFor("message:empty")`
|
|
35
|
+
* must not race. TEMPORARY heuristic: remove once the backend returns an
|
|
36
|
+
* explicit error for unknown agents (see TODOS.md, backend issue).
|
|
37
|
+
*/
|
|
38
|
+
private maybeFlagEmptyReply;
|
|
25
39
|
private handleClientFunctionInvocation;
|
|
26
40
|
/**
|
|
27
41
|
* Get list of conversations
|
|
@@ -194,6 +208,11 @@ declare class AgoClient {
|
|
|
194
208
|
}): Promise<AgoClientEvents[K]>;
|
|
195
209
|
/**
|
|
196
210
|
* Update client configuration
|
|
211
|
+
*
|
|
212
|
+
* Validates the MERGED config before committing: omitting a key (or passing
|
|
213
|
+
* it as `undefined`, common with spread-built partials) keeps the current
|
|
214
|
+
* value; an explicit empty/non-string `baseUrl` throws `config_missing_base_url`
|
|
215
|
+
* and leaves the client unchanged (no half-updated state).
|
|
197
216
|
*/
|
|
198
217
|
updateConfig(config: Partial<AgoConfig>): void;
|
|
199
218
|
/**
|
|
@@ -229,8 +248,23 @@ declare interface AgoClientEvents {
|
|
|
229
248
|
*/
|
|
230
249
|
"message:answer-complete": AgoMessage;
|
|
231
250
|
"message:complete": AgoMessage;
|
|
251
|
+
/**
|
|
252
|
+
* A reply finished as `DONE` with empty content and no tool calls, client
|
|
253
|
+
* functions, or follow-up replies — usually an unknown `agent` slug (the
|
|
254
|
+
* backend currently answers those with an empty 200). Fires after
|
|
255
|
+
* `message:complete` AND after `sendMessage` resolves, so subscribing right
|
|
256
|
+
* after `await sendMessage(...)` still catches it. `messageId` and
|
|
257
|
+
* `conversationId` are empty strings when the stream completed without any
|
|
258
|
+
* message data at all (e.g. a proxy stripped the SSE stream).
|
|
259
|
+
*/
|
|
260
|
+
"message:empty": {
|
|
261
|
+
conversationId: string;
|
|
262
|
+
messageId: string;
|
|
263
|
+
};
|
|
232
264
|
"message:error": {
|
|
233
265
|
error: string;
|
|
266
|
+
/** Stable error code (see configuration.md#error-codes) when the failure was an AgoError. */
|
|
267
|
+
code?: string;
|
|
234
268
|
conversationId?: string;
|
|
235
269
|
messageId?: string;
|
|
236
270
|
};
|
|
@@ -259,7 +293,7 @@ declare interface AgoClientEvents {
|
|
|
259
293
|
declare interface AgoConfig {
|
|
260
294
|
/** API base URL (e.g., https://YOUR-DOMAIN.useago.com) */
|
|
261
295
|
baseUrl: string;
|
|
262
|
-
/**
|
|
296
|
+
/** Per-visitor anonymous ID (X-User-Anon-Id header). Auto-generated if not provided. */
|
|
263
297
|
widgetId?: string;
|
|
264
298
|
/** Default agent (id or slug) for new conversations. Shorthand for `defaultAgentId`. */
|
|
265
299
|
agent?: string;
|
|
@@ -273,6 +307,13 @@ declare interface AgoConfig {
|
|
|
273
307
|
userJwt?: string;
|
|
274
308
|
/** Enable debug logging */
|
|
275
309
|
debug?: boolean;
|
|
310
|
+
/**
|
|
311
|
+
* Warn on the console when a reply completes with empty content and no tool
|
|
312
|
+
* calls (the usual cause is an unknown `agent` slug, which the backend
|
|
313
|
+
* currently answers with an empty 200). Default `true`. The `message:empty`
|
|
314
|
+
* event fires regardless of this setting.
|
|
315
|
+
*/
|
|
316
|
+
warnOnEmptyReply?: boolean;
|
|
276
317
|
}
|
|
277
318
|
|
|
278
319
|
declare type AgoEventHandler<K extends AgoEventName> = (data: AgoClientEvents[K]) => void;
|