@inkbox/sdk 0.7.25 → 0.7.26

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 (49) hide show
  1. package/README.md +18 -0
  2. package/dist/_http.d.ts +2 -0
  3. package/dist/_http.d.ts.map +1 -1
  4. package/dist/_http.js +2 -2
  5. package/dist/_http.js.map +1 -1
  6. package/dist/agent_identity.d.ts +23 -0
  7. package/dist/agent_identity.d.ts.map +1 -1
  8. package/dist/agent_identity.js +54 -0
  9. package/dist/agent_identity.js.map +1 -1
  10. package/dist/contacts/correspondence.d.ts +21 -3
  11. package/dist/contacts/correspondence.d.ts.map +1 -1
  12. package/dist/contacts/correspondence.js +2 -0
  13. package/dist/contacts/correspondence.js.map +1 -1
  14. package/dist/contacts/resources/correspondence.d.ts +1 -0
  15. package/dist/contacts/resources/correspondence.d.ts.map +1 -1
  16. package/dist/contacts/resources/correspondence.js +1 -0
  17. package/dist/contacts/resources/correspondence.js.map +1 -1
  18. package/dist/identities/resources/identities.d.ts +2 -0
  19. package/dist/identities/resources/identities.d.ts.map +1 -1
  20. package/dist/identities/resources/identities.js +5 -0
  21. package/dist/identities/resources/identities.js.map +1 -1
  22. package/dist/identities/types.d.ts +8 -0
  23. package/dist/identities/types.d.ts.map +1 -1
  24. package/dist/identities/types.js +3 -0
  25. package/dist/identities/types.js.map +1 -1
  26. package/dist/index.d.ts +3 -1
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +1 -0
  29. package/dist/index.js.map +1 -1
  30. package/dist/inkbox.d.ts +2 -0
  31. package/dist/inkbox.d.ts.map +1 -1
  32. package/dist/inkbox.js +4 -0
  33. package/dist/inkbox.js.map +1 -1
  34. package/dist/message_sends.d.ts +1 -1
  35. package/dist/message_sends.d.ts.map +1 -1
  36. package/dist/tunnels/client/_runtime.d.ts.map +1 -1
  37. package/dist/tunnels/client/_runtime.js +4 -3
  38. package/dist/tunnels/client/_runtime.js.map +1 -1
  39. package/dist/version.d.ts +1 -1
  40. package/dist/version.js +1 -1
  41. package/dist/webhooks/subscriptions.js +1 -1
  42. package/dist/webhooks/subscriptions.js.map +1 -1
  43. package/dist/webhooks/types.d.ts +19 -1
  44. package/dist/webhooks/types.d.ts.map +1 -1
  45. package/dist/whatsapp.d.ts +306 -0
  46. package/dist/whatsapp.d.ts.map +1 -0
  47. package/dist/whatsapp.js +264 -0
  48. package/dist/whatsapp.js.map +1 -0
  49. package/package.json +1 -1
@@ -0,0 +1,306 @@
1
+ /** Approved WhatsApp conversations, quoted replies, reactions, and owned media. */
2
+ import { HttpTransport } from "./_http.js";
3
+ export type WhatsAppDirection = "inbound" | "outbound";
4
+ export type WhatsAppMessageStatus = "received" | "queued" | "sending" | "sent" | "delivered" | "failed" | "uncertain" | "cancelled";
5
+ export type WhatsAppDeliveryState = "pending" | "delivered" | "unknown";
6
+ export type WhatsAppReactionType = "love" | "like" | "dislike" | "laugh" | "emphasize" | "question" | "eyes";
7
+ export type WhatsAppReactionStatus = "queued" | "sending" | "applied" | "removed" | "failed" | "uncertain" | "superseded";
8
+ export interface WhatsAppReaction {
9
+ id: string;
10
+ targetMessageId: string;
11
+ conversationId: string;
12
+ agentIdentityId: string;
13
+ direction: WhatsAppDirection;
14
+ remoteNumber: string | null;
15
+ reaction: WhatsAppReactionType | "custom";
16
+ customEmoji: string | null;
17
+ emoji: string;
18
+ status: WhatsAppReactionStatus;
19
+ revision: number;
20
+ createdAt: Date;
21
+ updatedAt: Date;
22
+ removedAt: Date | null;
23
+ }
24
+ export interface RawWhatsAppReaction {
25
+ id: string;
26
+ target_message_id: string;
27
+ conversation_id: string;
28
+ agent_identity_id: string;
29
+ direction: WhatsAppDirection;
30
+ remote_number: string | null;
31
+ reaction: WhatsAppReactionType | "custom";
32
+ custom_emoji: string | null;
33
+ emoji: string;
34
+ status: WhatsAppReactionStatus;
35
+ revision: number;
36
+ created_at: string;
37
+ updated_at: string;
38
+ removed_at: string | null;
39
+ }
40
+ export declare function parseWhatsAppReaction(r: RawWhatsAppReaction): WhatsAppReaction;
41
+ export interface WhatsAppReactionOptions {
42
+ messageId: string;
43
+ reaction?: WhatsAppReactionType;
44
+ customEmoji?: string;
45
+ idempotencyKey: string;
46
+ agentIdentityId?: string;
47
+ }
48
+ export type WhatsAppMediaStatus = "pending" | "ready" | "unavailable";
49
+ export interface WhatsAppMedia {
50
+ id: string;
51
+ filename: string;
52
+ contentType: string;
53
+ size: number | null;
54
+ status: WhatsAppMediaStatus;
55
+ url: string | null;
56
+ }
57
+ export interface RawWhatsAppMedia {
58
+ id: string;
59
+ filename: string;
60
+ content_type: string;
61
+ size: number | null;
62
+ status: WhatsAppMediaStatus;
63
+ url: string | null;
64
+ }
65
+ export declare function parseWhatsAppMedia(r: RawWhatsAppMedia): WhatsAppMedia;
66
+ export interface WhatsAppRecipient {
67
+ remoteNumber: string;
68
+ deliveryStatus: WhatsAppMessageStatus;
69
+ deliveryState: WhatsAppDeliveryState;
70
+ errorCode: string | null;
71
+ errorDetail: string | null;
72
+ sentAt: Date | null;
73
+ deliveredAt: Date | null;
74
+ failedAt: Date | null;
75
+ }
76
+ export interface RawWhatsAppRecipient {
77
+ remote_number: string;
78
+ delivery_status: WhatsAppMessageStatus;
79
+ delivery_state: WhatsAppDeliveryState;
80
+ error_code: string | null;
81
+ error_detail: string | null;
82
+ sent_at: string | null;
83
+ delivered_at: string | null;
84
+ failed_at: string | null;
85
+ }
86
+ export declare function parseWhatsAppRecipient(r: RawWhatsAppRecipient): WhatsAppRecipient;
87
+ export interface WhatsAppMessage {
88
+ id: string;
89
+ agentIdentityId: string;
90
+ conversationId: string;
91
+ direction: WhatsAppDirection;
92
+ localNumber: string;
93
+ remoteNumber: string;
94
+ senderNumber: string;
95
+ participants: string[];
96
+ content: string | null;
97
+ media: WhatsAppMedia[];
98
+ status: WhatsAppMessageStatus;
99
+ deliveryState: WhatsAppDeliveryState | null;
100
+ recipients: WhatsAppRecipient[];
101
+ isRead: boolean;
102
+ isBlocked: boolean;
103
+ errorCode: string | null;
104
+ errorDetail: string | null;
105
+ sourceAt: Date | null;
106
+ createdAt: Date;
107
+ updatedAt: Date;
108
+ sentAt: Date | null;
109
+ deliveredAt: Date | null;
110
+ failedAt: Date | null;
111
+ statusObservedAt: Date | null;
112
+ statusRefreshPending: boolean;
113
+ replyToMessageId: string | null;
114
+ threadId: string | null;
115
+ threadRootMessageId: string | null;
116
+ reactions: WhatsAppReaction[];
117
+ }
118
+ export interface RawWhatsAppMessage {
119
+ id: string;
120
+ agent_identity_id: string;
121
+ conversation_id: string;
122
+ direction: WhatsAppDirection;
123
+ local_number: string;
124
+ remote_number: string;
125
+ sender_number: string;
126
+ participants: string[];
127
+ content: string | null;
128
+ media: RawWhatsAppMedia[];
129
+ status: WhatsAppMessageStatus;
130
+ delivery_state: WhatsAppDeliveryState | null;
131
+ recipients: RawWhatsAppRecipient[];
132
+ is_read: boolean;
133
+ is_blocked: boolean;
134
+ error_code: string | null;
135
+ error_detail: string | null;
136
+ source_at: string | null;
137
+ created_at: string;
138
+ updated_at: string;
139
+ sent_at: string | null;
140
+ delivered_at: string | null;
141
+ failed_at: string | null;
142
+ status_observed_at: string | null;
143
+ status_refresh_pending: boolean;
144
+ reply_to_message_id?: string | null;
145
+ thread_id?: string | null;
146
+ thread_root_message_id?: string | null;
147
+ reactions?: RawWhatsAppReaction[];
148
+ }
149
+ export declare function parseWhatsAppMessage(r: RawWhatsAppMessage): WhatsAppMessage;
150
+ export interface WhatsAppConversation {
151
+ id: string;
152
+ agentIdentityId: string;
153
+ localNumber: string;
154
+ remoteNumber: string;
155
+ participants: string[];
156
+ createdAt: Date;
157
+ updatedAt: Date;
158
+ }
159
+ export interface RawWhatsAppConversation {
160
+ id: string;
161
+ agent_identity_id: string;
162
+ local_number: string;
163
+ remote_number: string;
164
+ participants: string[];
165
+ created_at: string;
166
+ updated_at: string;
167
+ }
168
+ export declare function parseWhatsAppConversation(r: RawWhatsAppConversation): WhatsAppConversation;
169
+ export interface WhatsAppConversationSummary extends WhatsAppConversation {
170
+ latestText: string | null;
171
+ latestMessageAt: Date | null;
172
+ latestDirection: WhatsAppDirection | null;
173
+ latestHasMedia: boolean;
174
+ unreadCount: number;
175
+ totalCount: number;
176
+ }
177
+ export interface RawWhatsAppConversationSummary extends RawWhatsAppConversation {
178
+ latest_text: string | null;
179
+ latest_message_at: string | null;
180
+ latest_direction: WhatsAppDirection | null;
181
+ latest_has_media: boolean;
182
+ unread_count: number;
183
+ total_count: number;
184
+ }
185
+ export declare function parseWhatsAppConversationSummary(r: RawWhatsAppConversationSummary): WhatsAppConversationSummary;
186
+ export interface WhatsAppMarkReadResult {
187
+ conversationId: string;
188
+ updatedCount: number;
189
+ }
190
+ export interface RawWhatsAppMarkReadResult {
191
+ conversation_id: string;
192
+ updated_count: number;
193
+ }
194
+ export declare function parseWhatsAppMarkReadResult(r: RawWhatsAppMarkReadResult): WhatsAppMarkReadResult;
195
+ export interface WhatsAppChannelStatus {
196
+ enabled: boolean;
197
+ number: string | null;
198
+ status: string;
199
+ }
200
+ export interface RawWhatsAppChannelStatus {
201
+ enabled: boolean;
202
+ number: string | null;
203
+ status: string;
204
+ }
205
+ export declare function parseWhatsAppChannelStatus(r: RawWhatsAppChannelStatus): WhatsAppChannelStatus;
206
+ export interface WhatsAppSendOptions {
207
+ to?: string;
208
+ conversationId?: string;
209
+ replyToMessageId?: string;
210
+ /** Defaults true; false requires native quoting. Missing evidence or uncertain sends never trigger a plain replacement. */
211
+ plainReplyFallback?: boolean;
212
+ text?: string;
213
+ mediaIds?: string[];
214
+ agentIdentityId?: string;
215
+ idempotencyKey?: string;
216
+ }
217
+ export interface WhatsAppListOptions {
218
+ agentIdentityId?: string;
219
+ conversationId?: string;
220
+ threadId?: string;
221
+ startDatetime?: string;
222
+ endDatetime?: string;
223
+ tz?: string;
224
+ limit?: number;
225
+ offset?: number;
226
+ isRead?: boolean;
227
+ isBlocked?: boolean;
228
+ }
229
+ export type WhatsAppConversationListOptions = Omit<WhatsAppListOptions, "conversationId" | "threadId" | "isRead">;
230
+ export interface WhatsAppLimits {
231
+ agentIdentityId: string;
232
+ limits: Record<string, number>;
233
+ usage: Record<string, number>;
234
+ }
235
+ export interface RawWhatsAppLimits {
236
+ agent_identity_id: string;
237
+ limits: Record<string, number>;
238
+ usage: Record<string, number>;
239
+ }
240
+ export declare function parseWhatsAppLimits(row: RawWhatsAppLimits): WhatsAppLimits;
241
+ export declare class WhatsAppResource {
242
+ private readonly http;
243
+ constructor(http: HttpTransport);
244
+ /** Queue one message. Reuse its key and owned media IDs after uncertainty. */
245
+ send(o: WhatsAppSendOptions): Promise<WhatsAppMessage>;
246
+ get(id: string, o?: {
247
+ agentIdentityId?: string;
248
+ }): Promise<WhatsAppMessage>;
249
+ list(o?: WhatsAppListOptions): Promise<WhatsAppMessage[]>;
250
+ listConversations(o?: WhatsAppConversationListOptions): Promise<WhatsAppConversationSummary[]>;
251
+ getConversation(id: string, o?: {
252
+ agentIdentityId?: string;
253
+ }): Promise<WhatsAppConversation>;
254
+ /** Read a chronological page of visible quote-chain messages. */
255
+ getThread(messageId: string, o?: WhatsAppThreadOptions): Promise<WhatsAppThread>;
256
+ getConversationThread(conversationId: string, threadId: string, o?: WhatsAppThreadOptions): Promise<WhatsAppThread>;
257
+ private getThreadPage;
258
+ /** The receipt may be queued or uncertain; only applied reactions are live. */
259
+ sendReaction(o: WhatsAppReactionOptions): Promise<WhatsAppReaction>;
260
+ getReaction(id: string, o?: {
261
+ agentIdentityId?: string;
262
+ }): Promise<WhatsAppReaction>;
263
+ /** Replay a removal with its original key; a superseded receipt removes nothing newer. */
264
+ removeReaction(id: string, o: {
265
+ idempotencyKey: string;
266
+ agentIdentityId?: string;
267
+ }): Promise<WhatsAppReaction>;
268
+ uploadMedia(o: {
269
+ content: Uint8Array | Blob;
270
+ filename: string;
271
+ contentType?: string;
272
+ agentIdentityId?: string;
273
+ }): Promise<WhatsAppMedia>;
274
+ /** Reauthorize an attachment and obtain a fresh temporary URL. */
275
+ getMedia(id: string, o?: {
276
+ agentIdentityId?: string;
277
+ }): Promise<WhatsAppMedia>;
278
+ /** Local read state only; this sends no remote receipt. */
279
+ markRead(conversationId: string, throughMessageId: string, o?: {
280
+ agentIdentityId?: string;
281
+ }): Promise<WhatsAppMarkReadResult>;
282
+ /** Effective server limits and independent usage; protocol maxima are not entitlements. */
283
+ getLimits(o?: {
284
+ agentIdentityId?: string;
285
+ }): Promise<WhatsAppLimits>;
286
+ }
287
+ export interface WhatsAppThreadOptions {
288
+ agentIdentityId?: string;
289
+ limit?: number;
290
+ cursor?: string;
291
+ }
292
+ export interface WhatsAppThread {
293
+ conversationId: string;
294
+ threadId: string | null;
295
+ threadRootMessageId: string | null;
296
+ messages: WhatsAppMessage[];
297
+ nextCursor: string | null;
298
+ }
299
+ export interface RawWhatsAppThread {
300
+ conversation_id: string;
301
+ thread_id: string | null;
302
+ thread_root_message_id: string | null;
303
+ messages: RawWhatsAppMessage[];
304
+ next_cursor: string | null;
305
+ }
306
+ //# sourceMappingURL=whatsapp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whatsapp.d.ts","sourceRoot":"","sources":["../src/whatsapp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,264 @@
1
+ import { messageKey, postMessage } from "./message_sends.js";
2
+ export function parseWhatsAppReaction(r) {
3
+ return { id: r.id, targetMessageId: r.target_message_id, conversationId: r.conversation_id,
4
+ agentIdentityId: r.agent_identity_id, direction: r.direction, remoteNumber: r.remote_number,
5
+ reaction: r.reaction, customEmoji: r.custom_emoji, emoji: r.emoji, status: r.status, revision: r.revision,
6
+ createdAt: new Date(r.created_at), updatedAt: new Date(r.updated_at), removedAt: r.removed_at ? new Date(r.removed_at) : null };
7
+ }
8
+ const reactionTypes = new Set(["love", "like", "dislike", "laugh", "emphasize", "question", "eyes"]);
9
+ const validUuid = (value) => /^[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i.test(value);
10
+ const validPhone = (value) => /^\+[1-9][0-9]{6,14}$/.test(value);
11
+ function reactionKey(value) {
12
+ if (typeof value !== "string" || !value.trim() || value.length > 255)
13
+ throw new Error("A stable idempotencyKey is required");
14
+ return { "Idempotency-Key": value };
15
+ }
16
+ function reactionBody(o) {
17
+ if (!validUuid(o.messageId) || (o.reaction == null) === (o.customEmoji == null))
18
+ throw new Error("Provide messageId and exactly one of reaction or customEmoji");
19
+ if (o.reaction != null && !reactionTypes.has(o.reaction))
20
+ throw new Error("Unsupported WhatsApp reaction");
21
+ if (o.customEmoji != null && (!o.customEmoji || Array.from(o.customEmoji).length > 32 || /[\s\p{Cc}\p{Cs}]/u.test(o.customEmoji)))
22
+ throw new Error("customEmoji must contain 1–32 non-whitespace characters");
23
+ return { message_id: o.messageId, ...(o.reaction != null ? { reaction: o.reaction } : { custom_emoji: o.customEmoji }) };
24
+ }
25
+ export function parseWhatsAppMedia(r) {
26
+ return {
27
+ id: r.id,
28
+ filename: r.filename,
29
+ contentType: r.content_type,
30
+ size: r.size,
31
+ status: r.status,
32
+ url: r.url,
33
+ };
34
+ }
35
+ export function parseWhatsAppRecipient(r) {
36
+ return {
37
+ remoteNumber: r.remote_number,
38
+ deliveryStatus: r.delivery_status,
39
+ deliveryState: r.delivery_state,
40
+ errorCode: r.error_code,
41
+ errorDetail: r.error_detail,
42
+ sentAt: r.sent_at ? new Date(r.sent_at) : null,
43
+ deliveredAt: r.delivered_at ? new Date(r.delivered_at) : null,
44
+ failedAt: r.failed_at ? new Date(r.failed_at) : null,
45
+ };
46
+ }
47
+ export function parseWhatsAppMessage(r) {
48
+ return {
49
+ id: r.id,
50
+ agentIdentityId: r.agent_identity_id,
51
+ conversationId: r.conversation_id,
52
+ direction: r.direction,
53
+ localNumber: r.local_number,
54
+ remoteNumber: r.remote_number,
55
+ senderNumber: r.sender_number,
56
+ participants: r.participants,
57
+ content: r.content,
58
+ media: r.media.map(parseWhatsAppMedia),
59
+ status: r.status,
60
+ deliveryState: r.delivery_state,
61
+ recipients: r.recipients.map(parseWhatsAppRecipient),
62
+ isRead: r.is_read,
63
+ isBlocked: r.is_blocked,
64
+ errorCode: r.error_code,
65
+ errorDetail: r.error_detail,
66
+ sourceAt: r.source_at ? new Date(r.source_at) : null,
67
+ createdAt: new Date(r.created_at),
68
+ updatedAt: new Date(r.updated_at),
69
+ sentAt: r.sent_at ? new Date(r.sent_at) : null,
70
+ deliveredAt: r.delivered_at ? new Date(r.delivered_at) : null,
71
+ failedAt: r.failed_at ? new Date(r.failed_at) : null,
72
+ statusObservedAt: r.status_observed_at
73
+ ? new Date(r.status_observed_at)
74
+ : null,
75
+ statusRefreshPending: r.status_refresh_pending,
76
+ replyToMessageId: r.reply_to_message_id ?? null,
77
+ threadId: r.thread_id ?? null,
78
+ threadRootMessageId: r.thread_root_message_id ?? null,
79
+ reactions: (r.reactions ?? []).map(parseWhatsAppReaction),
80
+ };
81
+ }
82
+ export function parseWhatsAppConversation(r) {
83
+ return {
84
+ id: r.id,
85
+ agentIdentityId: r.agent_identity_id,
86
+ localNumber: r.local_number,
87
+ remoteNumber: r.remote_number,
88
+ participants: r.participants,
89
+ createdAt: new Date(r.created_at),
90
+ updatedAt: new Date(r.updated_at),
91
+ };
92
+ }
93
+ export function parseWhatsAppConversationSummary(r) {
94
+ return {
95
+ ...parseWhatsAppConversation(r),
96
+ latestText: r.latest_text,
97
+ latestMessageAt: r.latest_message_at ? new Date(r.latest_message_at) : null,
98
+ latestDirection: r.latest_direction,
99
+ latestHasMedia: r.latest_has_media,
100
+ unreadCount: r.unread_count,
101
+ totalCount: r.total_count,
102
+ };
103
+ }
104
+ export function parseWhatsAppMarkReadResult(r) {
105
+ return {
106
+ conversationId: r.conversation_id,
107
+ updatedCount: r.updated_count,
108
+ };
109
+ }
110
+ export function parseWhatsAppChannelStatus(r) {
111
+ return {
112
+ enabled: r.enabled,
113
+ number: r.number,
114
+ status: r.status,
115
+ };
116
+ }
117
+ const owner = (id) => id === undefined ? {} : { agent_identity_id: id };
118
+ export function parseWhatsAppLimits(row) {
119
+ return {
120
+ agentIdentityId: row.agent_identity_id,
121
+ limits: { ...row.limits },
122
+ usage: { ...row.usage },
123
+ };
124
+ }
125
+ export class WhatsAppResource {
126
+ http;
127
+ constructor(http) {
128
+ this.http = http;
129
+ }
130
+ /** Queue one message. Reuse its key and owned media IDs after uncertainty. */
131
+ async send(o) {
132
+ if (o.plainReplyFallback !== undefined && typeof o.plainReplyFallback !== "boolean")
133
+ throw new Error("plainReplyFallback must be a boolean");
134
+ if ((o.to == null) === (o.conversationId == null))
135
+ throw new Error("Specify exactly one of to or conversationId");
136
+ if (o.to != null && (typeof o.to !== "string" || !validPhone(o.to)))
137
+ throw new Error("Provide one E.164 recipient");
138
+ if (o.replyToMessageId != null && (!o.conversationId || !validUuid(o.replyToMessageId)))
139
+ throw new Error("replyToMessageId requires conversationId and a valid message UUID");
140
+ if ((o.mediaIds?.length ?? 0) > 1)
141
+ throw new Error("WhatsApp supports at most one attachment");
142
+ if (!o.text?.trim() && !o.mediaIds?.length)
143
+ throw new Error("Provide text or one media ID");
144
+ if (o.text != null && Array.from(o.text).length > 4000)
145
+ throw new Error("WhatsApp text must be at most 4000 characters");
146
+ const body = {
147
+ ...(o.to != null ? { to: o.to } : {}),
148
+ ...(o.conversationId != null
149
+ ? { conversation_id: o.conversationId }
150
+ : {}),
151
+ ...(o.replyToMessageId != null ? { reply_to_message_id: o.replyToMessageId } : {}),
152
+ ...(o.replyToMessageId != null && o.plainReplyFallback === false ? { plain_reply_fallback: false } : {}),
153
+ ...(o.text != null ? { text: o.text } : {}),
154
+ ...(o.mediaIds != null ? { media_ids: o.mediaIds } : {}),
155
+ };
156
+ const key = messageKey(o.idempotencyKey);
157
+ const data = await postMessage(this.http, "/messages", body, key, owner(o.agentIdentityId));
158
+ try {
159
+ return parseWhatsAppMessage(data.message);
160
+ }
161
+ catch (error) {
162
+ // Keep recovery possible when an accepted response cannot be decoded.
163
+ if (error instanceof Error)
164
+ Object.assign(error, { idempotencyKey: key });
165
+ throw error;
166
+ }
167
+ }
168
+ async get(id, o = {}) {
169
+ return parseWhatsAppMessage(await this.http.get(`/messages/${encodeURIComponent(id)}`, owner(o.agentIdentityId)));
170
+ }
171
+ async list(o = {}) {
172
+ if (o.threadId != null && o.conversationId == null)
173
+ throw new Error("threadId requires conversationId");
174
+ const rows = await this.http.get("/messages", {
175
+ ...owner(o.agentIdentityId),
176
+ limit: o.limit ?? 50,
177
+ offset: o.offset ?? 0,
178
+ ...(o.conversationId != null
179
+ ? { conversation_id: o.conversationId }
180
+ : {}),
181
+ ...(o.threadId != null ? { thread_id: o.threadId } : {}),
182
+ ...(o.startDatetime != null ? { start_datetime: o.startDatetime } : {}),
183
+ ...(o.endDatetime != null ? { end_datetime: o.endDatetime } : {}),
184
+ ...(o.tz != null ? { tz: o.tz } : {}),
185
+ ...(o.isRead != null ? { is_read: o.isRead } : {}),
186
+ ...(o.isBlocked != null ? { is_blocked: o.isBlocked } : {}),
187
+ });
188
+ return rows.map(parseWhatsAppMessage);
189
+ }
190
+ async listConversations(o = {}) {
191
+ const rows = await this.http.get("/conversations", {
192
+ ...owner(o.agentIdentityId),
193
+ limit: o.limit ?? 50,
194
+ offset: o.offset ?? 0,
195
+ ...(o.startDatetime != null ? { start_datetime: o.startDatetime } : {}),
196
+ ...(o.endDatetime != null ? { end_datetime: o.endDatetime } : {}),
197
+ ...(o.tz != null ? { tz: o.tz } : {}),
198
+ ...(o.isBlocked != null ? { is_blocked: o.isBlocked } : {}),
199
+ });
200
+ return rows.map(parseWhatsAppConversationSummary);
201
+ }
202
+ async getConversation(id, o = {}) {
203
+ return parseWhatsAppConversation(await this.http.get(`/conversations/${encodeURIComponent(id)}`, owner(o.agentIdentityId)));
204
+ }
205
+ /** Read a chronological page of visible quote-chain messages. */
206
+ async getThread(messageId, o = {}) {
207
+ return this.getThreadPage(`/messages/${encodeURIComponent(messageId)}/thread`, o);
208
+ }
209
+ async getConversationThread(conversationId, threadId, o = {}) {
210
+ return this.getThreadPage(`/conversations/${encodeURIComponent(conversationId)}/threads/${encodeURIComponent(threadId)}`, o);
211
+ }
212
+ async getThreadPage(path, o) {
213
+ const limit = o.limit ?? 50;
214
+ if (!Number.isInteger(limit) || limit < 1 || limit > 200)
215
+ throw new Error("Thread limit must be 1–200");
216
+ const r = await this.http.get(path, { ...owner(o.agentIdentityId), limit, ...(o.cursor != null ? { cursor: o.cursor } : {}) });
217
+ return { conversationId: r.conversation_id, threadId: r.thread_id, threadRootMessageId: r.thread_root_message_id, messages: r.messages.map(parseWhatsAppMessage), nextCursor: r.next_cursor };
218
+ }
219
+ /** The receipt may be queued or uncertain; only applied reactions are live. */
220
+ async sendReaction(o) {
221
+ const body = reactionBody(o), headers = reactionKey(o.idempotencyKey);
222
+ const result = await this.http.post("/reactions", body, { params: owner(o.agentIdentityId), headers });
223
+ return parseWhatsAppReaction(result.reaction);
224
+ }
225
+ async getReaction(id, o = {}) {
226
+ const result = await this.http.get(`/reactions/${encodeURIComponent(id)}`, owner(o.agentIdentityId));
227
+ return parseWhatsAppReaction(result.reaction);
228
+ }
229
+ /** Replay a removal with its original key; a superseded receipt removes nothing newer. */
230
+ async removeReaction(id, o) {
231
+ const result = await this.http.deleteWithResponse(`/reactions/${encodeURIComponent(id)}`, { params: owner(o.agentIdentityId), headers: reactionKey(o.idempotencyKey) });
232
+ return parseWhatsAppReaction(result.reaction);
233
+ }
234
+ async uploadMedia(o) {
235
+ const size = o.content instanceof Blob ? o.content.size : o.content.byteLength;
236
+ if (size > 20 * 1024 * 1024)
237
+ throw new Error("WhatsApp media must be at most 20 MiB");
238
+ const row = await this.http.postMultipart("/media", {
239
+ fieldName: "file",
240
+ filename: o.filename,
241
+ content: o.content instanceof Blob && o.contentType !== undefined
242
+ ? new Blob([o.content], { type: o.contentType })
243
+ : o.content,
244
+ contentType: o.contentType ?? "application/octet-stream",
245
+ }, { params: owner(o.agentIdentityId) });
246
+ return parseWhatsAppMedia(row);
247
+ }
248
+ /** Reauthorize an attachment and obtain a fresh temporary URL. */
249
+ async getMedia(id, o = {}) {
250
+ return parseWhatsAppMedia(await this.http.get(`/media/${encodeURIComponent(id)}`, owner(o.agentIdentityId)));
251
+ }
252
+ /** Local read state only; this sends no remote receipt. */
253
+ async markRead(conversationId, throughMessageId, o = {}) {
254
+ return parseWhatsAppMarkReadResult(await this.http.post("/mark-read", {
255
+ conversation_id: conversationId,
256
+ through_message_id: throughMessageId,
257
+ }, { params: owner(o.agentIdentityId) }));
258
+ }
259
+ /** Effective server limits and independent usage; protocol maxima are not entitlements. */
260
+ async getLimits(o = {}) {
261
+ return parseWhatsAppLimits(await this.http.get("/limits", owner(o.agentIdentityId)));
262
+ }
263
+ }
264
+ //# sourceMappingURL=whatsapp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whatsapp.js","sourceRoot":"","sources":["../src/whatsapp.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AA0B7D,MAAM,UAAU,qBAAqB,CAAC,CAAsB;IAC1D,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC,iBAAiB,EAAE,cAAc,EAAE,CAAC,CAAC,eAAe;QACxF,eAAe,EAAE,CAAC,CAAC,iBAAiB,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,YAAY,EAAE,CAAC,CAAC,aAAa;QAC3F,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACzG,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACpI,CAAC;AAKD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;AACrG,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,gDAAgD,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClG,MAAM,UAAU,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACzE,SAAS,WAAW,CAAC,KAAa;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IAC7H,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC;AACtC,CAAC;AACD,SAAS,YAAY,CAAC,CAA0B;IAC9C,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,IAAI,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IACjK,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAC3G,IAAI,CAAC,CAAC,WAAW,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,EAAE,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC9M,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,WAAY,EAAE,CAAC,EAAE,CAAC;AAC5H,CAAC;AAkBD,MAAM,UAAU,kBAAkB,CAAC,CAAmB;IACpD,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,WAAW,EAAE,CAAC,CAAC,YAAY;QAC3B,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,GAAG,EAAE,CAAC,CAAC,GAAG;KACX,CAAC;AACJ,CAAC;AAqBD,MAAM,UAAU,sBAAsB,CACpC,CAAuB;IAEvB,OAAO;QACL,YAAY,EAAE,CAAC,CAAC,aAAa;QAC7B,cAAc,EAAE,CAAC,CAAC,eAAe;QACjC,aAAa,EAAE,CAAC,CAAC,cAAc;QAC/B,SAAS,EAAE,CAAC,CAAC,UAAU;QACvB,WAAW,EAAE,CAAC,CAAC,YAAY;QAC3B,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;QAC9C,WAAW,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;QAC7D,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI;KACrD,CAAC;AACJ,CAAC;AA+DD,MAAM,UAAU,oBAAoB,CAAC,CAAqB;IACxD,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,iBAAiB;QACpC,cAAc,EAAE,CAAC,CAAC,eAAe;QACjC,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,WAAW,EAAE,CAAC,CAAC,YAAY;QAC3B,YAAY,EAAE,CAAC,CAAC,aAAa;QAC7B,YAAY,EAAE,CAAC,CAAC,aAAa;QAC7B,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC;QACtC,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,aAAa,EAAE,CAAC,CAAC,cAAc;QAC/B,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,sBAAsB,CAAC;QACpD,MAAM,EAAE,CAAC,CAAC,OAAO;QACjB,SAAS,EAAE,CAAC,CAAC,UAAU;QACvB,SAAS,EAAE,CAAC,CAAC,UAAU;QACvB,WAAW,EAAE,CAAC,CAAC,YAAY;QAC3B,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI;QACpD,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;QACjC,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;QACjC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;QAC9C,WAAW,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;QAC7D,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI;QACpD,gBAAgB,EAAE,CAAC,CAAC,kBAAkB;YACpC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC;YAChC,CAAC,CAAC,IAAI;QACR,oBAAoB,EAAE,CAAC,CAAC,sBAAsB;QAC9C,gBAAgB,EAAE,CAAC,CAAC,mBAAmB,IAAI,IAAI;QAC/C,QAAQ,EAAE,CAAC,CAAC,SAAS,IAAI,IAAI;QAC7B,mBAAmB,EAAE,CAAC,CAAC,sBAAsB,IAAI,IAAI;QACrD,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC;KAC1D,CAAC;AACJ,CAAC;AAmBD,MAAM,UAAU,yBAAyB,CACvC,CAA0B;IAE1B,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,iBAAiB;QACpC,WAAW,EAAE,CAAC,CAAC,YAAY;QAC3B,YAAY,EAAE,CAAC,CAAC,aAAa;QAC7B,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;QACjC,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;KAClC,CAAC;AACJ,CAAC;AAiBD,MAAM,UAAU,gCAAgC,CAC9C,CAAiC;IAEjC,OAAO;QACL,GAAG,yBAAyB,CAAC,CAAC,CAAC;QAC/B,UAAU,EAAE,CAAC,CAAC,WAAW;QACzB,eAAe,EAAE,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI;QAC3E,eAAe,EAAE,CAAC,CAAC,gBAAgB;QACnC,cAAc,EAAE,CAAC,CAAC,gBAAgB;QAClC,WAAW,EAAE,CAAC,CAAC,YAAY;QAC3B,UAAU,EAAE,CAAC,CAAC,WAAW;KAC1B,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,2BAA2B,CACzC,CAA4B;IAE5B,OAAO;QACL,cAAc,EAAE,CAAC,CAAC,eAAe;QACjC,YAAY,EAAE,CAAC,CAAC,aAAa;KAC9B,CAAC;AACJ,CAAC;AAWD,MAAM,UAAU,0BAA0B,CACxC,CAA2B;IAE3B,OAAO;QACL,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,MAAM,EAAE,CAAC,CAAC,MAAM;KACjB,CAAC;AACJ,CAAC;AA6BD,MAAM,KAAK,GAAG,CAAC,EAAW,EAA0B,EAAE,CACpD,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC;AAWpD,MAAM,UAAU,mBAAmB,CAAC,GAAsB;IACxD,OAAO;QACL,eAAe,EAAE,GAAG,CAAC,iBAAiB;QACtC,MAAM,EAAE,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE;QACzB,KAAK,EAAE,EAAE,GAAG,GAAG,CAAC,KAAK,EAAE;KACxB,CAAC;AACJ,CAAC;AACD,MAAM,OAAO,gBAAgB;IACE;IAA7B,YAA6B,IAAmB;QAAnB,SAAI,GAAJ,IAAI,CAAe;IAAG,CAAC;IACpD,8EAA8E;IAC9E,KAAK,CAAC,IAAI,CAAC,CAAsB;QAC/B,IAAI,CAAC,CAAC,kBAAkB,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,kBAAkB,KAAK,SAAS;YACjF,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,IAAI,IAAI,CAAC;YAC/C,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,IAAI,CAAC,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACjE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,IAAI,CAAC,CAAC,gBAAgB,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QAC9K,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM;YACxC,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI;YACpD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG;YACX,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,GAAG,CAAC,CAAC,CAAC,cAAc,IAAI,IAAI;gBAC1B,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,cAAc,EAAE;gBACvC,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,CAAC,CAAC,gBAAgB,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,GAAG,CAAC,CAAC,CAAC,gBAAgB,IAAI,IAAI,IAAI,CAAC,CAAC,kBAAkB,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxG,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzD,CAAC;QACF,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,MAAM,WAAW,CAC5B,IAAI,CAAC,IAAI,EACT,WAAW,EACX,IAAI,EACJ,GAAG,EACH,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CACzB,CAAC;QACF,IAAI,CAAC;YACH,OAAO,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,sEAAsE;YACtE,IAAI,KAAK,YAAY,KAAK;gBAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;YAC1E,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IACD,KAAK,CAAC,GAAG,CACP,EAAU,EACV,IAAkC,EAAE;QAEpC,OAAO,oBAAoB,CACzB,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CACjB,aAAa,kBAAkB,CAAC,EAAE,CAAC,EAAE,EACrC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CACzB,CACF,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,IAAyB,EAAE;QACpC,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,IAAI,CAAC,CAAC,cAAc,IAAI,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACxG,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAuB,WAAW,EAAE;YAClE,GAAG,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC;YAC3B,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC;YACrB,GAAG,CAAC,CAAC,CAAC,cAAc,IAAI,IAAI;gBAC1B,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,cAAc,EAAE;gBACvC,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,GAAG,CAAC,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,GAAG,CAAC,CAAC,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClD,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5D,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IACD,KAAK,CAAC,iBAAiB,CACrB,IAAqC,EAAE;QAEvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAC9B,gBAAgB,EAChB;YACE,GAAG,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC;YAC3B,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC;YACrB,GAAG,CAAC,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,GAAG,CAAC,CAAC,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5D,CACF,CAAC;QACF,OAAO,IAAI,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IACD,KAAK,CAAC,eAAe,CACnB,EAAU,EACV,IAAkC,EAAE;QAEpC,OAAO,yBAAyB,CAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CACjB,kBAAkB,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAC1C,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CACzB,CACF,CAAC;IACJ,CAAC;IACD,iEAAiE;IACjE,KAAK,CAAC,SAAS,CAAC,SAAiB,EAAE,IAA2B,EAAE;QAC9D,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,kBAAkB,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IACpF,CAAC;IACD,KAAK,CAAC,qBAAqB,CAAC,cAAsB,EAAE,QAAgB,EAAE,IAA2B,EAAE;QACjG,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,kBAAkB,CAAC,cAAc,CAAC,YAAY,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC/H,CAAC;IACO,KAAK,CAAC,aAAa,CAAC,IAAY,EAAE,CAAwB;QAChE,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACxG,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAoB,IAAI,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAClJ,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,mBAAmB,EAAE,CAAC,CAAC,sBAAsB,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAChM,CAAC;IACD,+EAA+E;IAC/E,KAAK,CAAC,YAAY,CAAC,CAA0B;QAC3C,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QACtE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAoC,YAAY,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1I,OAAO,qBAAqB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IACD,KAAK,CAAC,WAAW,CAAC,EAAU,EAAE,IAAkC,EAAE;QAChE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAoC,cAAc,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;QACxI,OAAO,qBAAqB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IACD,0FAA0F;IAC1F,KAAK,CAAC,cAAc,CAAC,EAAU,EAAE,CAAuD;QACtF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAoC,cAAc,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QAC3M,OAAO,qBAAqB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IACD,KAAK,CAAC,WAAW,CAAC,CAKjB;QACC,MAAM,IAAI,GACR,CAAC,CAAC,OAAO,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QACpE,IAAI,IAAI,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI;YACzB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CACvC,QAAQ,EACR;YACE,SAAS,EAAE,MAAM;YACjB,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,OAAO,EAAE,CAAC,CAAC,OAAO,YAAY,IAAI,IAAI,CAAC,CAAC,WAAW,KAAK,SAAS;gBAC/D,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;gBAChD,CAAC,CAAC,CAAC,CAAC,OAAO;YACb,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,0BAA0B;SACzD,EACD,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CACrC,CAAC;QACF,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IACD,kEAAkE;IAClE,KAAK,CAAC,QAAQ,CACZ,EAAU,EACV,IAAkC,EAAE;QAEpC,OAAO,kBAAkB,CACvB,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CACjB,UAAU,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAClC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CACzB,CACF,CAAC;IACJ,CAAC;IACD,2DAA2D;IAC3D,KAAK,CAAC,QAAQ,CACZ,cAAsB,EACtB,gBAAwB,EACxB,IAAkC,EAAE;QAEpC,OAAO,2BAA2B,CAChC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAClB,YAAY,EACZ;YACE,eAAe,EAAE,cAAc;YAC/B,kBAAkB,EAAE,gBAAgB;SACrC,EACD,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CACrC,CACF,CAAC;IACJ,CAAC;IACD,2FAA2F;IAC3F,KAAK,CAAC,SAAS,CACb,IAAkC,EAAE;QAEpC,OAAO,mBAAmB,CACxB,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CACjB,SAAS,EACT,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CACzB,CACF,CAAC;IACJ,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inkbox/sdk",
3
- "version": "0.7.25",
3
+ "version": "0.7.26",
4
4
  "description": "TypeScript SDK for the Inkbox API",
5
5
  "license": "MIT",
6
6
  "type": "module",