@convai/web-sdk 1.6.1 → 1.7.0-beta.0

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.
Files changed (38) hide show
  1. package/README.md +3 -1
  2. package/dist/core/CharacterRoster.d.ts +68 -0
  3. package/dist/core/CharacterRoster.d.ts.map +1 -0
  4. package/dist/core/CharacterRoster.js +235 -0
  5. package/dist/core/CharacterRoster.js.map +1 -0
  6. package/dist/core/ConvaiClient.d.ts +39 -1
  7. package/dist/core/ConvaiClient.d.ts.map +1 -1
  8. package/dist/core/ConvaiClient.js +228 -6
  9. package/dist/core/ConvaiClient.js.map +1 -1
  10. package/dist/core/MessageHandler.d.ts.map +1 -1
  11. package/dist/core/MessageHandler.js +26 -4
  12. package/dist/core/MessageHandler.js.map +1 -1
  13. package/dist/core/types.d.ts +160 -2
  14. package/dist/core/types.d.ts.map +1 -1
  15. package/dist/lipsync-helpers/index.d.ts +4 -0
  16. package/dist/lipsync-helpers/index.d.ts.map +1 -1
  17. package/dist/lipsync-helpers/index.js +7 -0
  18. package/dist/lipsync-helpers/index.js.map +1 -1
  19. package/dist/lipsync-helpers/mhaLimitDrivers.d.ts +33 -0
  20. package/dist/lipsync-helpers/mhaLimitDrivers.d.ts.map +1 -0
  21. package/dist/lipsync-helpers/mhaLimitDrivers.js +60 -0
  22. package/dist/lipsync-helpers/mhaLimitDrivers.js.map +1 -0
  23. package/dist/lipsync-helpers/naturalness/processor.d.ts +24 -0
  24. package/dist/lipsync-helpers/naturalness/processor.d.ts.map +1 -0
  25. package/dist/lipsync-helpers/naturalness/processor.js +162 -0
  26. package/dist/lipsync-helpers/naturalness/processor.js.map +1 -0
  27. package/dist/lipsync-helpers/naturalness/profiles/mha.d.ts +7 -0
  28. package/dist/lipsync-helpers/naturalness/profiles/mha.d.ts.map +1 -0
  29. package/dist/lipsync-helpers/naturalness/profiles/mha.js +105 -0
  30. package/dist/lipsync-helpers/naturalness/profiles/mha.js.map +1 -0
  31. package/dist/lipsync-helpers/naturalness/types.d.ts +68 -0
  32. package/dist/lipsync-helpers/naturalness/types.d.ts.map +1 -0
  33. package/dist/lipsync-helpers/naturalness/types.js +11 -0
  34. package/dist/lipsync-helpers/naturalness/types.js.map +1 -0
  35. package/dist/react/hooks/useConvaiClient.d.ts.map +1 -1
  36. package/dist/react/hooks/useConvaiClient.js +3 -0
  37. package/dist/react/hooks/useConvaiClient.js.map +1 -1
  38. package/package.json +2 -2
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  **Real-time conversational AI characters for the web.**
4
4
 
5
- [![npm](https://img.shields.io/badge/npm-1.6.0-blue)](https://www.npmjs.com/package/@convai/web-sdk)
5
+ [![npm](https://img.shields.io/badge/npm-1.6.0--beta-blue)](https://www.npmjs.com/package/@convai/web-sdk)
6
6
  [![TypeScript](https://img.shields.io/badge/TypeScript-first-3178C6)](https://www.typescriptlang.org/)
7
7
  [![License](https://img.shields.io/badge/license-Apache--2.0-green)](./LICENSE)
8
8
 
@@ -12,6 +12,8 @@ TypeScript-first SDK for embedding Convai AI characters into React and vanilla J
12
12
 
13
13
  ## What's new in 1.6.0
14
14
 
15
+ > Currently in beta — `npm install @convai/web-sdk@beta`. Stable 1.6.0 follows.
16
+
15
17
  - **Narrative Design template keys** — personalize one narrative graph per session: seed values at connect with the `narrativeTemplateKeys` config option, replace them mid-session with `updateTemplateKeys()`. [Usage below.](#narrative-design-template-keys)
16
18
  - **Typed parameterized actions** — `actionResponse` is now typed via the exported `ConvaiAction` / `ActionResponseEvent`, including the `target` of parameterized actions. [Usage below.](#actions)
17
19
  - **Vision dynamic context** — camera, screen, canvas, and custom tracks feed unified vision context on WebRTC, with hardened WebSocket vision handling. [Usage below.](#vision-dynamic-context-beta)
@@ -0,0 +1,68 @@
1
+ import type { ActiveCharacterChange, CharacterRosterChange, ConvaiCharacterInstance, ServerResponseExtras, UpdateCharacterRosterOptions } from "./types";
2
+ /**
3
+ * Roster state for a multi-character room: which character instances exist,
4
+ * which one receives user turns, and the routing/roster epochs that fence
5
+ * concurrent changes.
6
+ *
7
+ * Pure state plus command construction — it owns no transport. ConvaiClient
8
+ * feeds it from three sources (the connect response, per-instance bot-ready,
9
+ * and server responses) and publishes the commands it builds.
10
+ */
11
+ export declare class CharacterRoster {
12
+ private _characters;
13
+ private _activeMembershipId;
14
+ private _roomSessionId;
15
+ private _routeEpoch;
16
+ private _rosterEpoch;
17
+ /** Character instances in roster order. Empty in single-character mode. */
18
+ get characters(): ConvaiCharacterInstance[];
19
+ /** Membership currently receiving user turns, or null. */
20
+ get activeMembershipId(): string | null;
21
+ /** Room session the roster belongs to. */
22
+ get roomSessionId(): string | null;
23
+ get routeEpoch(): number;
24
+ get rosterEpoch(): number;
25
+ /** True once a multi-character connect response has been applied. */
26
+ get isMultiCharacter(): boolean;
27
+ find(membershipId: string): ConvaiCharacterInstance | undefined;
28
+ reset(): void;
29
+ /**
30
+ * Seed the roster from the /connect response. A response without a
31
+ * `characters` array is a single-character session and leaves the roster
32
+ * empty.
33
+ */
34
+ applyConnectResponse(data: Record<string, unknown>): boolean;
35
+ /**
36
+ * Fill in details from a per-instance bot-ready `about` block. Instances are
37
+ * already known from the connect response; this refreshes session ids and
38
+ * catches instances added by a roster update.
39
+ */
40
+ applyBotReady(about: Record<string, unknown> | undefined): boolean;
41
+ /**
42
+ * Pick a survivor to take over routing when the active instance is being
43
+ * removed. The server refuses an instance that has not sent bot-ready
44
+ * (`replacement_target_unavailable`), so prefer ready ones.
45
+ */
46
+ pickReplacement(removing: string[]): string | undefined;
47
+ /** Build the data-channel payload that switches the active character. */
48
+ buildInteractionTarget(membershipId: string, commandId: string): Record<string, unknown>;
49
+ /** Build the data-channel payload that adds/removes instances. */
50
+ buildRosterUpdate(options: UpdateCharacterRosterOptions, commandId: string): Record<string, unknown>;
51
+ /**
52
+ * Adopt the server's authoritative epochs from any response, including
53
+ * errors — a `stale_route_epoch` rejection carries the real value, which is
54
+ * what makes a retry meaningful.
55
+ */
56
+ adoptEpochs(extras: ServerResponseExtras | null): void;
57
+ /**
58
+ * Apply a successful interaction-target response. Returns the change, or
59
+ * null when the active character did not move.
60
+ */
61
+ applyInteractionTarget(extras: ServerResponseExtras | null): ActiveCharacterChange | null;
62
+ /**
63
+ * Apply a successful character-roster-update response, mutating the roster
64
+ * to match. Returns the change, or null when nothing moved.
65
+ */
66
+ applyRosterUpdate(extras: ServerResponseExtras | null): CharacterRosterChange | null;
67
+ }
68
+ //# sourceMappingURL=CharacterRoster.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CharacterRoster.d.ts","sourceRoot":"","sources":["../../src/core/CharacterRoster.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EAEvB,oBAAoB,EACpB,4BAA4B,EAC7B,MAAM,SAAS,CAAC;AA+BjB;;;;;;;;GAQG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,WAAW,CAAiC;IACpD,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,YAAY,CAAK;IAEzB,2EAA2E;IAC3E,IAAI,UAAU,IAAI,uBAAuB,EAAE,CAE1C;IAED,0DAA0D;IAC1D,IAAI,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAEtC;IAED,0CAA0C;IAC1C,IAAI,aAAa,IAAI,MAAM,GAAG,IAAI,CAEjC;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,qEAAqE;IACrE,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS;IAI/D,KAAK,IAAI,IAAI;IAQb;;;;OAIG;IACH,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO;IAkB5D;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,OAAO;IAwClE;;;;OAIG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS;IAWvD,yEAAyE;IACzE,sBAAsB,CACpB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,GAChB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAS1B,kEAAkE;IAClE,iBAAiB,CACf,OAAO,EAAE,4BAA4B,EACrC,SAAS,EAAE,MAAM,GAChB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAgB1B;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,GAAG,IAAI;IAatD;;;OAGG;IACH,sBAAsB,CACpB,MAAM,EAAE,oBAAoB,GAAG,IAAI,GAClC,qBAAqB,GAAG,IAAI;IAW/B;;;OAGG;IACH,iBAAiB,CACf,MAAM,EAAE,oBAAoB,GAAG,IAAI,GAClC,qBAAqB,GAAG,IAAI;CAoDhC"}
@@ -0,0 +1,235 @@
1
+ function toInstance(raw) {
2
+ if (!raw?.membership_id)
3
+ return null;
4
+ return {
5
+ membershipId: raw.membership_id,
6
+ characterId: raw.character_id ?? "",
7
+ characterSessionId: raw.character_session_id ?? null,
8
+ participantIdentity: raw.participant_identity ?? `character:${raw.membership_id}`,
9
+ isInitial: raw.is_initial === true,
10
+ provisioningStatus: raw.provisioning_status ?? "unknown",
11
+ failureCode: raw.failure_code ?? null,
12
+ isReady: false,
13
+ };
14
+ }
15
+ /**
16
+ * Roster state for a multi-character room: which character instances exist,
17
+ * which one receives user turns, and the routing/roster epochs that fence
18
+ * concurrent changes.
19
+ *
20
+ * Pure state plus command construction — it owns no transport. ConvaiClient
21
+ * feeds it from three sources (the connect response, per-instance bot-ready,
22
+ * and server responses) and publishes the commands it builds.
23
+ */
24
+ export class CharacterRoster {
25
+ constructor() {
26
+ this._characters = [];
27
+ this._activeMembershipId = null;
28
+ this._roomSessionId = null;
29
+ this._routeEpoch = 0;
30
+ this._rosterEpoch = 0;
31
+ }
32
+ /** Character instances in roster order. Empty in single-character mode. */
33
+ get characters() {
34
+ return this._characters;
35
+ }
36
+ /** Membership currently receiving user turns, or null. */
37
+ get activeMembershipId() {
38
+ return this._activeMembershipId;
39
+ }
40
+ /** Room session the roster belongs to. */
41
+ get roomSessionId() {
42
+ return this._roomSessionId;
43
+ }
44
+ get routeEpoch() {
45
+ return this._routeEpoch;
46
+ }
47
+ get rosterEpoch() {
48
+ return this._rosterEpoch;
49
+ }
50
+ /** True once a multi-character connect response has been applied. */
51
+ get isMultiCharacter() {
52
+ return this._characters.length > 0;
53
+ }
54
+ find(membershipId) {
55
+ return this._characters.find((c) => c.membershipId === membershipId);
56
+ }
57
+ reset() {
58
+ this._characters = [];
59
+ this._activeMembershipId = null;
60
+ this._roomSessionId = null;
61
+ this._routeEpoch = 0;
62
+ this._rosterEpoch = 0;
63
+ }
64
+ /**
65
+ * Seed the roster from the /connect response. A response without a
66
+ * `characters` array is a single-character session and leaves the roster
67
+ * empty.
68
+ */
69
+ applyConnectResponse(data) {
70
+ const raw = data?.characters;
71
+ this._roomSessionId = data?.room_session_id ?? null;
72
+ if (!Array.isArray(raw) || raw.length === 0)
73
+ return false;
74
+ this._characters = raw
75
+ .map((c) => toInstance(c))
76
+ .filter((c) => c !== null);
77
+ this._activeMembershipId =
78
+ data?.active_membership_id ??
79
+ this._characters.find((c) => c.isInitial)?.membershipId ??
80
+ this._characters[0]?.membershipId ??
81
+ null;
82
+ this._routeEpoch = data?.route_epoch ?? 0;
83
+ this._rosterEpoch = data?.roster_epoch ?? 0;
84
+ return true;
85
+ }
86
+ /**
87
+ * Fill in details from a per-instance bot-ready `about` block. Instances are
88
+ * already known from the connect response; this refreshes session ids and
89
+ * catches instances added by a roster update.
90
+ */
91
+ applyBotReady(about) {
92
+ if (!about)
93
+ return false;
94
+ const incoming = toInstance(about);
95
+ if (!incoming)
96
+ return false;
97
+ const index = this._characters.findIndex((c) => c.membershipId === incoming.membershipId);
98
+ if (index === -1) {
99
+ // Only track instances once we know this is a multi-character room;
100
+ // a single-character bot-ready also carries these fields.
101
+ if (!this.isMultiCharacter)
102
+ return false;
103
+ this._characters = [...this._characters, { ...incoming, isReady: true }];
104
+ return true;
105
+ }
106
+ const existing = this._characters[index];
107
+ const merged = {
108
+ ...existing,
109
+ characterSessionId: incoming.characterSessionId ?? existing.characterSessionId,
110
+ participantIdentity: incoming.participantIdentity || existing.participantIdentity,
111
+ isReady: true,
112
+ };
113
+ if (merged.characterSessionId === existing.characterSessionId &&
114
+ merged.participantIdentity === existing.participantIdentity &&
115
+ existing.isReady) {
116
+ return false;
117
+ }
118
+ this._characters = [
119
+ ...this._characters.slice(0, index),
120
+ merged,
121
+ ...this._characters.slice(index + 1),
122
+ ];
123
+ return true;
124
+ }
125
+ /**
126
+ * Pick a survivor to take over routing when the active instance is being
127
+ * removed. The server refuses an instance that has not sent bot-ready
128
+ * (`replacement_target_unavailable`), so prefer ready ones.
129
+ */
130
+ pickReplacement(removing) {
131
+ const removed = new Set(removing);
132
+ const survivors = this._characters.filter((c) => !removed.has(c.membershipId));
133
+ return (survivors.find((c) => c.isReady)?.membershipId ??
134
+ survivors[0]?.membershipId);
135
+ }
136
+ /** Build the data-channel payload that switches the active character. */
137
+ buildInteractionTarget(membershipId, commandId) {
138
+ return {
139
+ room_session_id: this._roomSessionId,
140
+ target_membership_id: membershipId,
141
+ expected_route_epoch: this._routeEpoch,
142
+ command_id: commandId,
143
+ };
144
+ }
145
+ /** Build the data-channel payload that adds/removes instances. */
146
+ buildRosterUpdate(options, commandId) {
147
+ const add = (options.add ?? []).map((spec) => ({
148
+ character_id: spec.characterId,
149
+ }));
150
+ return {
151
+ room_session_id: this._roomSessionId,
152
+ expected_roster_epoch: this._rosterEpoch,
153
+ command_id: commandId,
154
+ ...(add.length > 0 && { add }),
155
+ ...(options.remove?.length && { remove_membership_ids: options.remove }),
156
+ ...(options.replacementTarget && {
157
+ replacement_target_membership_id: options.replacementTarget,
158
+ }),
159
+ };
160
+ }
161
+ /**
162
+ * Adopt the server's authoritative epochs from any response, including
163
+ * errors — a `stale_route_epoch` rejection carries the real value, which is
164
+ * what makes a retry meaningful.
165
+ */
166
+ adoptEpochs(extras) {
167
+ if (!extras)
168
+ return;
169
+ if (typeof extras.route_epoch === "number") {
170
+ this._routeEpoch = extras.route_epoch;
171
+ }
172
+ if (typeof extras.roster_epoch === "number") {
173
+ this._rosterEpoch = extras.roster_epoch;
174
+ }
175
+ if (typeof extras.active_membership_id === "string") {
176
+ this._activeMembershipId = extras.active_membership_id;
177
+ }
178
+ }
179
+ /**
180
+ * Apply a successful interaction-target response. Returns the change, or
181
+ * null when the active character did not move.
182
+ */
183
+ applyInteractionTarget(extras) {
184
+ if (!extras)
185
+ return null;
186
+ const previous = extras.previous_membership_id ?? this._activeMembershipId;
187
+ const active = extras.active_membership_id ?? this._activeMembershipId;
188
+ this.adoptEpochs(extras);
189
+ if (previous === active)
190
+ return null;
191
+ return { previous, active, routeEpoch: this._routeEpoch };
192
+ }
193
+ /**
194
+ * Apply a successful character-roster-update response, mutating the roster
195
+ * to match. Returns the change, or null when nothing moved.
196
+ */
197
+ applyRosterUpdate(extras) {
198
+ if (!extras)
199
+ return null;
200
+ const added = (Array.isArray(extras.added) ? extras.added : [])
201
+ .map((c) => toInstance(c))
202
+ .filter((c) => c !== null);
203
+ const removedRaw = Array.isArray(extras.removed) ? extras.removed : [];
204
+ const removedIds = new Set((Array.isArray(extras.removed_membership_ids)
205
+ ? extras.removed_membership_ids
206
+ : removedRaw
207
+ .map((c) => c?.membership_id)
208
+ .filter((id) => typeof id === "string")));
209
+ // Prefer the roster's own records for removed instances — the response
210
+ // echoes only a subset of each instance's fields.
211
+ const removed = [...removedIds].map((id) => this.find(id) ??
212
+ toInstance(removedRaw.find((c) => c?.membership_id === id)) ?? {
213
+ membershipId: id,
214
+ characterId: "",
215
+ characterSessionId: null,
216
+ participantIdentity: `character:${id}`,
217
+ isInitial: false,
218
+ provisioningStatus: "removed",
219
+ failureCode: null,
220
+ isReady: false,
221
+ });
222
+ if (added.length === 0 && removed.length === 0) {
223
+ this.adoptEpochs(extras);
224
+ return null;
225
+ }
226
+ const addedIds = new Set(added.map((c) => c.membershipId));
227
+ this._characters = [
228
+ ...this._characters.filter((c) => !removedIds.has(c.membershipId) && !addedIds.has(c.membershipId)),
229
+ ...added,
230
+ ];
231
+ this.adoptEpochs(extras);
232
+ return { added, removed, characters: this._characters };
233
+ }
234
+ }
235
+ //# sourceMappingURL=CharacterRoster.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CharacterRoster.js","sourceRoot":"","sources":["../../src/core/CharacterRoster.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Room } from "livekit-client";
2
- import { ConvaiConfig, ConvaiClientState, ChatMessage, IConvaiClient, AudioControls, VideoControls, ScreenShareControls, DynamicInfo, ContextUpdateOptions, UploadFileOptions, WebSocketSessionFactory, RespondModeUpdateOptions, UpdateSceneMetadataOptions, VisionStatusOptions, VisionTriggerOptions } from "./types";
2
+ import { ConvaiConfig, ConvaiClientState, ChatMessage, IConvaiClient, AudioControls, VideoControls, ScreenShareControls, DynamicInfo, ContextUpdateOptions, UploadFileOptions, WebSocketSessionFactory, RespondModeUpdateOptions, UpdateSceneMetadataOptions, VisionStatusOptions, VisionTriggerOptions, ConvaiCharacterInstance, UpdateCharacterRosterOptions, CharacterRosterChange } from "./types";
3
3
  import { EventEmitter } from "./EventEmitter";
4
4
  import { BlendshapeQueue } from "./BlendshapeQueue";
5
5
  import { MemoryManager } from "./MemoryManager";
@@ -52,6 +52,16 @@ export declare class ConvaiClient extends EventEmitter implements IConvaiClient
52
52
  private _participantSid;
53
53
  private _audioSettings;
54
54
  private _storedConfig;
55
+ /**
56
+ * Runtime state of mind. Source of truth for the value sent on connect,
57
+ * so updateEmotion() called before any config is stored is not lost.
58
+ */
59
+ private _stateOfMind;
60
+ /** Roster state for multi-character rooms. Empty for single-character sessions. */
61
+ private _roster;
62
+ /** Pending setInteractionTarget/updateCharacterRoster commands, keyed by command_id. */
63
+ private _pendingRosterCommands;
64
+ private _rosterCommandSeq;
55
65
  private _endUserId;
56
66
  private _endUserMetadata;
57
67
  private _wsSession;
@@ -209,6 +219,34 @@ export declare class ConvaiClient extends EventEmitter implements IConvaiClient
209
219
  visionStatus(options?: VisionStatusOptions): string | null;
210
220
  visionTrigger(options?: VisionTriggerOptions): string | null;
211
221
  respondModeUpdate(options: RespondModeUpdateOptions): string | null;
222
+ /**
223
+ * Set or clear the character's temporary state of mind.
224
+ * This is silent: it affects the next response and does not trigger one.
225
+ */
226
+ updateEmotion(stateOfMind: string | null): void;
227
+ /** Timeout for a roster command to be acknowledged by the server. */
228
+ private static readonly ROSTER_COMMAND_TIMEOUT_MS;
229
+ /**
230
+ * Correlate interaction-target / character-roster-update acks back to the
231
+ * promise returned by the method that issued them, and keep roster state and
232
+ * the two roster events in sync — including for changes we did not initiate.
233
+ */
234
+ private _handleRosterServerResponse;
235
+ /**
236
+ * Publish a roster command and resolve when its ack arrives.
237
+ */
238
+ private _sendRosterCommand;
239
+ /**
240
+ * Route subsequent user turns to a different character instance.
241
+ *
242
+ * Retries once against the server's authoritative epoch if the routing epoch
243
+ * was stale, which happens when another participant switched first.
244
+ */
245
+ setInteractionTarget(membershipId: string): Promise<ConvaiCharacterInstance>;
246
+ /**
247
+ * Add or remove character instances on a live room, without reconnecting.
248
+ */
249
+ updateCharacterRoster(options: UpdateCharacterRosterOptions): Promise<CharacterRosterChange>;
212
250
  /**
213
251
  * Send descriptive scene updates. Use when environment description changes
214
252
  * and the bot should know what is visible or nearby. Does not modify action_config.
@@ -1 +1 @@
1
- {"version":3,"file":"ConvaiClient.d.ts","sourceRoot":"","sources":["../../src/core/ConvaiClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConvaiClient.d.ts","sourceRoot":"","sources":["../../src/core/ConvaiClient.ts"],"names":[],"mappings":"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"}