@xmtp/node-sdk 3.2.2 → 4.0.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/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { ContentCodec, ContentTypeId, EncodedContent } from '@xmtp/content-type-primitives';
2
2
  import * as _xmtp_node_bindings from '@xmtp/node-bindings';
3
- import { LogLevel, Message, Conversation as Conversation$1, ListMessagesOptions, ConsentState, PermissionUpdateType, PermissionPolicy, MetadataField, Identifier, Conversations as Conversations$1, CreateGroupOptions, CreateDmOptions, ListConversationsOptions, ConversationType, Client as Client$1, Consent, ConsentEntityType, SignatureRequestHandle } from '@xmtp/node-bindings';
3
+ import { LogLevel, Message, StreamCloser, Conversation as Conversation$1, ListMessagesOptions, ConsentState, PermissionUpdateType, PermissionPolicy, MetadataField, Identifier, Conversations as Conversations$1, CreateGroupOptions, CreateDmOptions, ListConversationsOptions, ConversationType, Client as Client$1, Consent, ConsentEntityType, SignatureRequestHandle } from '@xmtp/node-bindings';
4
4
  export { Consent, ConsentEntityType, ConsentState, ContentType, ContentTypeId, ConversationListItem, ConversationType, CreateDmOptions, CreateGroupOptions, DeliveryStatus, EncodedContent, GroupMember, GroupMembershipState, GroupMessageKind, GroupMetadata, GroupPermissions, GroupPermissionsOptions, HmacKey, Identifier, IdentifierKind, InboxState, Installation, KeyPackageStatus, Lifetime, ListConversationsOptions, ListMessagesOptions, LogLevel, LogOptions, Message, MessageDisappearingSettings, MetadataField, PermissionLevel, PermissionPolicy, PermissionPolicySet, PermissionUpdateType, SignatureRequestHandle, SortDirection } from '@xmtp/node-bindings';
5
5
  import { GroupUpdatedCodec } from '@xmtp/content-type-group-updated';
6
6
  import { TextCodec } from '@xmtp/content-type-text';
@@ -109,23 +109,14 @@ type OtherOptions = {
109
109
  type ClientOptions = NetworkOptions & StorageOptions & ContentOptions & OtherOptions;
110
110
 
111
111
  type ResolveValue<T> = {
112
- value: T | undefined;
112
+ value: T;
113
113
  done: boolean;
114
114
  };
115
- type StreamCallback<T> = (err: Error | null, value: T | undefined) => void;
116
- declare class AsyncStream<T> {
117
- #private;
118
- constructor();
119
- get error(): Error | undefined;
120
- get isDone(): boolean;
121
- set onReturn(callback: () => void);
122
- set onError(callback: (error: Error) => void);
123
- set onDone(callback: () => void);
124
- callback: StreamCallback<T>;
125
- next: () => Promise<ResolveValue<T>>;
126
- return: (value?: T) => Promise<ResolveValue<T>>;
127
- end: () => Promise<ResolveValue<T>>;
128
- [Symbol.asyncIterator](): this;
115
+ interface AsyncStreamProxy<T> extends AsyncIterable<T> {
116
+ next(): Promise<ResolveValue<T>>;
117
+ return(): Promise<ResolveValue<undefined>>;
118
+ end(): Promise<ResolveValue<undefined>>;
119
+ isDone: boolean;
129
120
  }
130
121
 
131
122
  type MessageKind = "application" | "membership_change";
@@ -167,6 +158,69 @@ declare class DecodedMessage<ContentTypes = unknown> {
167
158
  constructor(client: Client<ContentTypes>, message: Message);
168
159
  }
169
160
 
161
+ declare const DEFAULT_RETRY_DELAY = 10000;
162
+ declare const DEFAULT_RETRY_ATTEMPTS = 6;
163
+ type StreamOptions<T = unknown, V = T> = {
164
+ /**
165
+ * Called when the stream ends
166
+ */
167
+ onEnd?: () => void;
168
+ /**
169
+ * Called when a stream error occurs
170
+ */
171
+ onError?: (error: Error) => void;
172
+ /**
173
+ * Called when the stream fails
174
+ */
175
+ onFail?: () => void;
176
+ /**
177
+ * Called when the stream is restarted
178
+ */
179
+ onRestart?: () => void;
180
+ /**
181
+ * Called when the stream is retried
182
+ */
183
+ onRetry?: (attempts: number, maxAttempts: number) => void;
184
+ /**
185
+ * Called when a value is emitted from the stream
186
+ */
187
+ onValue?: (value: V) => void;
188
+ /**
189
+ * The number of times to retry the stream
190
+ * (default: 6)
191
+ */
192
+ retryAttempts?: number;
193
+ /**
194
+ * The delay between retries (in milliseconds)
195
+ * (default: 10000)
196
+ */
197
+ retryDelay?: number;
198
+ /**
199
+ * Whether to retry the stream if it fails
200
+ * (default: true)
201
+ */
202
+ retryOnFail?: boolean;
203
+ };
204
+ type StreamCallback<T = unknown> = (error: Error | null, value: T | undefined) => void;
205
+ type StreamFunction<T = unknown> = (callback: StreamCallback<T>, onFail: () => void) => Promise<StreamCloser>;
206
+ type StreamValueMutator<T = unknown, V = T> = (value: T) => V | Promise<V>;
207
+ /**
208
+ * Creates a stream from a stream function
209
+ *
210
+ * If the stream fails, an attempt will be made to restart it.
211
+ *
212
+ * This function is not intended to be used directly.
213
+ *
214
+ * @param streamFunction - The stream function to create a stream from
215
+ * @param streamValueMutator - An optional function to mutate the value emitted from the stream
216
+ * @param options - The options for the stream
217
+ * @param args - Additional arguments to pass to the stream function
218
+ * @returns An async iterable stream proxy
219
+ * @throws {StreamInvalidRetryAttemptsError} if the retryAttempts option is less than 0 and retryOnFail is true
220
+ * @throws {StreamFailedError} if the stream fails and can't be restarted
221
+ */
222
+ declare const createStream: <T = unknown, V = T>(streamFunction: StreamFunction<T>, streamValueMutator?: StreamValueMutator<T, V>, options?: StreamOptions<T, V>) => Promise<AsyncStreamProxy<V>>;
223
+
170
224
  /**
171
225
  * Represents a conversation
172
226
  *
@@ -226,10 +280,10 @@ declare class Conversation<ContentTypes = unknown> {
226
280
  /**
227
281
  * Creates a stream for new messages in this conversation
228
282
  *
229
- * @param callback - Optional callback function for handling new stream values
283
+ * @param options - Optional stream options
230
284
  * @returns Stream instance for new messages
231
285
  */
232
- stream(callback?: StreamCallback<DecodedMessage<ContentTypes>>, onFail?: () => void): AsyncStream<DecodedMessage<ContentTypes>>;
286
+ stream(options?: StreamOptions<Message, DecodedMessage<ContentTypes>>): Promise<AsyncStreamProxy<DecodedMessage<ContentTypes>>>;
233
287
  /**
234
288
  * Publishes pending messages that were sent optimistically
235
289
  *
@@ -586,45 +640,59 @@ declare class Conversations<ContentTypes = unknown> {
586
640
  /**
587
641
  * Creates a stream for new conversations
588
642
  *
589
- * @param callback - Optional callback function for handling new stream value
643
+ * @param options - Optional stream options
644
+ * @param options.conversationType - Optional conversation type to filter by
590
645
  * @returns Stream instance for new conversations
591
646
  */
592
- stream(callback?: StreamCallback<Group<ContentTypes> | Dm<ContentTypes>>, onFail?: () => void): AsyncStream<Group<ContentTypes> | Dm<ContentTypes>>;
647
+ stream(options?: StreamOptions<Conversation$1, Group<ContentTypes> | Dm<ContentTypes> | undefined> & {
648
+ conversationType?: ConversationType;
649
+ }): Promise<AsyncStreamProxy<Group<ContentTypes> | Dm<ContentTypes> | undefined>>;
593
650
  /**
594
651
  * Creates a stream for new group conversations
595
652
  *
596
- * @param callback - Optional callback function for handling new stream value
653
+ * @param options - Optional stream options
597
654
  * @returns Stream instance for new group conversations
598
655
  */
599
- streamGroups(callback?: StreamCallback<Group<ContentTypes>>, onFail?: () => void): AsyncStream<Group<ContentTypes>>;
656
+ streamGroups(options?: StreamOptions<Conversation$1, Group<ContentTypes>>): Promise<AsyncStreamProxy<Group<ContentTypes>>>;
600
657
  /**
601
658
  * Creates a stream for new DM conversations
602
659
  *
603
- * @param callback - Optional callback function for handling new stream value
660
+ * @param options - Optional stream options
604
661
  * @returns Stream instance for new DM conversations
605
662
  */
606
- streamDms(callback?: StreamCallback<Dm<ContentTypes>>, onFail?: () => void): AsyncStream<Dm<ContentTypes>>;
663
+ streamDms(options?: StreamOptions<Conversation$1, Dm<ContentTypes>>): Promise<AsyncStreamProxy<Dm<ContentTypes>>>;
607
664
  /**
608
665
  * Creates a stream for all new messages
609
666
  *
610
- * @param callback - Optional callback function for handling new stream value
667
+ * @param options - Optional stream options
668
+ * @param options.conversationType - Optional conversation type to filter by
669
+ * @param options.consentStates - Optional array of consent states to filter by
611
670
  * @returns Stream instance for new messages
612
671
  */
613
- streamAllMessages(callback?: StreamCallback<DecodedMessage<ContentTypes>>, conversationType?: ConversationType, consentStates?: ConsentState[], onFail?: () => void): Promise<AsyncStream<DecodedMessage<ContentTypes>>>;
672
+ streamAllMessages(options?: StreamOptions<Message, DecodedMessage<ContentTypes>> & {
673
+ conversationType?: ConversationType;
674
+ consentStates?: ConsentState[];
675
+ }): Promise<AsyncStreamProxy<DecodedMessage<ContentTypes>>>;
614
676
  /**
615
677
  * Creates a stream for all new group messages
616
678
  *
617
- * @param callback - Optional callback function for handling new stream value
679
+ * @param options - Optional stream options
680
+ * @param options.consentStates - Optional array of consent states to filter by
618
681
  * @returns Stream instance for new group messages
619
682
  */
620
- streamAllGroupMessages(callback?: StreamCallback<DecodedMessage<ContentTypes>>, consentStates?: ConsentState[], onFail?: () => void): Promise<AsyncStream<DecodedMessage<ContentTypes>>>;
683
+ streamAllGroupMessages(options?: StreamOptions<Message, DecodedMessage<ContentTypes>> & {
684
+ consentStates?: ConsentState[];
685
+ }): Promise<AsyncStreamProxy<DecodedMessage<ContentTypes>>>;
621
686
  /**
622
687
  * Creates a stream for all new DM messages
623
688
  *
624
- * @param callback - Optional callback function for handling new stream value
689
+ * @param options - Optional stream options
690
+ * @param options.consentStates - Optional array of consent states to filter by
625
691
  * @returns Stream instance for new DM messages
626
692
  */
627
- streamAllDmMessages(callback?: StreamCallback<DecodedMessage<ContentTypes>>, consentStates?: ConsentState[], onFail?: () => void): Promise<AsyncStream<DecodedMessage<ContentTypes>>>;
693
+ streamAllDmMessages(options?: StreamOptions<Message, DecodedMessage<ContentTypes>> & {
694
+ consentStates?: ConsentState[];
695
+ }): Promise<AsyncStreamProxy<DecodedMessage<ContentTypes>>>;
628
696
  /**
629
697
  * Retrieves HMAC keys for all conversations
630
698
  *
@@ -709,17 +777,17 @@ declare class Preferences {
709
777
  /**
710
778
  * Creates a stream of consent state updates
711
779
  *
712
- * @param callback - Optional callback function for handling stream updates
780
+ * @param options - Optional stream options
713
781
  * @returns Stream instance for consent updates
714
782
  */
715
- streamConsent(callback?: StreamCallback<Consent[]>, onFail?: () => void): AsyncStream<Consent[]>;
783
+ streamConsent(options?: StreamOptions<Consent[]>): Promise<AsyncStreamProxy<Consent[]>>;
716
784
  /**
717
785
  * Creates a stream of user preference updates
718
786
  *
719
- * @param callback - Optional callback function for handling stream updates
787
+ * @param options - Optional stream options
720
788
  * @returns Stream instance for preference updates
721
789
  */
722
- streamPreferences(callback?: StreamCallback<PreferenceUpdate>, onFail?: () => void): AsyncStream<PreferenceUpdate>;
790
+ streamPreferences(options?: StreamOptions<PreferenceUpdate>): Promise<AsyncStreamProxy<PreferenceUpdate>>;
723
791
  }
724
792
 
725
793
  type SignMessage = (message: string) => Promise<Uint8Array> | Uint8Array;
@@ -1175,6 +1243,12 @@ declare class SignerUnavailableError extends Error {
1175
1243
  declare class ClientNotInitializedError extends Error {
1176
1244
  constructor();
1177
1245
  }
1246
+ declare class StreamFailedError extends Error {
1247
+ constructor(retryAttempts: number);
1248
+ }
1249
+ declare class StreamInvalidRetryAttemptsError extends Error {
1250
+ constructor();
1251
+ }
1178
1252
 
1179
- export { AccountAlreadyAssociatedError, ApiUrls, AsyncStream, Client, ClientNotInitializedError, CodecNotFoundError, Conversation, Conversations, DecodedMessage, Dm, Group, HistorySyncUrls, InboxReassignError, InvalidGroupMembershipChangeError, MissingContentTypeError, SignerUnavailableError, generateInboxId, getInboxIdForIdentifier };
1180
- export type { ClientOptions, ExtractCodecContentTypes, NetworkOptions, OtherOptions, PreferenceUpdate, Signer, StorageOptions, StreamCallback, XmtpEnv };
1253
+ export { AccountAlreadyAssociatedError, ApiUrls, Client, ClientNotInitializedError, CodecNotFoundError, Conversation, Conversations, DEFAULT_RETRY_ATTEMPTS, DEFAULT_RETRY_DELAY, DecodedMessage, Dm, Group, HistorySyncUrls, InboxReassignError, InvalidGroupMembershipChangeError, MissingContentTypeError, SignerUnavailableError, StreamFailedError, StreamInvalidRetryAttemptsError, createStream, generateInboxId, getInboxIdForIdentifier };
1254
+ export type { AsyncStreamProxy, ClientOptions, ExtractCodecContentTypes, NetworkOptions, OtherOptions, PreferenceUpdate, Signer, StorageOptions, StreamCallback, StreamFunction, StreamOptions, StreamValueMutator, XmtpEnv };
package/dist/index.js CHANGED
@@ -3,6 +3,7 @@ import { ContentTypeText, TextCodec } from '@xmtp/content-type-text';
3
3
  import { generateInboxId as generateInboxId$1, getInboxIdForIdentifier as getInboxIdForIdentifier$1, createClient as createClient$1, revokeInstallationsSignatureRequest, applySignatureRequest, inboxStateFromInboxIds, verifySignedWithPublicKey, isAddressAuthorized, isInstallationAuthorized } from '@xmtp/node-bindings';
4
4
  export { ConsentEntityType, ConsentState, ConversationType, DeliveryStatus, GroupMember, GroupMembershipState, GroupMessageKind, GroupMetadata, GroupPermissions, GroupPermissionsOptions, IdentifierKind, LogLevel, MetadataField, PermissionLevel, PermissionPolicy, PermissionUpdateType, SignatureRequestHandle, SortDirection } from '@xmtp/node-bindings';
5
5
  import { ContentTypeId } from '@xmtp/content-type-primitives';
6
+ import { isPromise } from 'node:util/types';
6
7
  import { join } from 'node:path';
7
8
  import process from 'node:process';
8
9
  import bindingsVersion from '@xmtp/node-bindings/version.json' with { type: 'json' };
@@ -34,111 +35,6 @@ const HistorySyncUrls = {
34
35
  production: "https://message-history.production.ephemera.network",
35
36
  };
36
37
 
37
- class AsyncStream {
38
- #isDone = false;
39
- #pendingPromises = [];
40
- #queue;
41
- #error;
42
- #onDone;
43
- #onReturn;
44
- #onError;
45
- constructor() {
46
- this.#queue = [];
47
- this.#isDone = false;
48
- }
49
- #flush(value) {
50
- while (this.#pendingPromises.length > 0) {
51
- const nextPendingPromise = this.#pendingPromises.shift();
52
- if (nextPendingPromise) {
53
- nextPendingPromise.resolve({ done: true, value });
54
- }
55
- }
56
- }
57
- #done(value) {
58
- this.#flush(value);
59
- this.#queue = [];
60
- this.#pendingPromises = [];
61
- this.#isDone = true;
62
- this.#onDone?.();
63
- if (this.#error) {
64
- this.#onError?.(this.#error);
65
- }
66
- }
67
- get error() {
68
- return this.#error;
69
- }
70
- get isDone() {
71
- return this.#isDone;
72
- }
73
- set onReturn(callback) {
74
- this.#onReturn = callback;
75
- }
76
- set onError(callback) {
77
- this.#onError = callback;
78
- }
79
- set onDone(callback) {
80
- this.#onDone = callback;
81
- }
82
- callback = (error, value) => {
83
- if (this.#isDone) {
84
- return;
85
- }
86
- const nextPendingPromise = this.#pendingPromises.shift();
87
- if (nextPendingPromise) {
88
- const { resolve, reject } = nextPendingPromise;
89
- if (error) {
90
- this.#error = error;
91
- reject(error);
92
- this.#done();
93
- }
94
- else {
95
- resolve({
96
- done: false,
97
- value,
98
- });
99
- }
100
- }
101
- else {
102
- this.#queue.push(error ?? value);
103
- }
104
- };
105
- next = () => {
106
- if (this.#isDone) {
107
- return Promise.resolve({
108
- done: true,
109
- value: undefined,
110
- });
111
- }
112
- if (this.#queue.length > 0) {
113
- const value = this.#queue.shift();
114
- if (value instanceof Error) {
115
- this.#error = value;
116
- this.#done();
117
- return Promise.reject(value);
118
- }
119
- return Promise.resolve({
120
- done: false,
121
- value,
122
- });
123
- }
124
- return new Promise((resolve, reject) => {
125
- this.#pendingPromises.push({ resolve, reject });
126
- });
127
- };
128
- return = (value) => {
129
- this.#onReturn?.();
130
- this.#done(value);
131
- return Promise.resolve({
132
- done: true,
133
- value,
134
- });
135
- };
136
- end = () => this.return();
137
- [Symbol.asyncIterator]() {
138
- return this;
139
- }
140
- }
141
-
142
38
  function nsToDate(ns) {
143
39
  return new Date(ns / 1_000_000);
144
40
  }
@@ -258,6 +154,300 @@ class ClientNotInitializedError extends Error {
258
154
  super("Client not initialized, use Client.create or Client.build to create a client");
259
155
  }
260
156
  }
157
+ class StreamFailedError extends Error {
158
+ constructor(retryAttempts) {
159
+ const times = `time${retryAttempts !== 1 ? "s" : ""}`;
160
+ super(`Stream failed, retried ${retryAttempts} ${times}`);
161
+ }
162
+ }
163
+ class StreamInvalidRetryAttemptsError extends Error {
164
+ constructor() {
165
+ super("Stream retry attempts must be greater than 0");
166
+ }
167
+ }
168
+
169
+ /**
170
+ * AsyncStream provides an async iterable interface for streaming data.
171
+ *
172
+ * This class implements a producer-consumer pattern where:
173
+ * - Producers can push values using the `push()` method
174
+ * - Consumers can iterate over values asynchronously using `for await` loops or `next()`
175
+ * - Values are queued internally when no consumers are waiting
176
+ * - Consumers are resolved immediately when values are available
177
+ * - The stream can be terminated using `done()`, `return()`, or `end()`
178
+ *
179
+ * @example
180
+ * ```typescript
181
+ * const stream = new AsyncStream<string>();
182
+ *
183
+ * stream.push("hello");
184
+ * stream.push("world");
185
+ *
186
+ * for await (const value of stream) {
187
+ * console.log(value); // "hello", "world"
188
+ * }
189
+ * ```
190
+ */
191
+ class AsyncStream {
192
+ isDone = false;
193
+ #pendingResolves = [];
194
+ #queue;
195
+ onDone;
196
+ onReturn;
197
+ constructor() {
198
+ this.#queue = [];
199
+ this.isDone = false;
200
+ }
201
+ flush() {
202
+ while (this.#pendingResolves.length > 0) {
203
+ const nextResolve = this.#pendingResolves.shift();
204
+ if (nextResolve) {
205
+ nextResolve({ done: true, value: undefined });
206
+ }
207
+ }
208
+ }
209
+ done() {
210
+ this.flush();
211
+ this.#queue = [];
212
+ this.#pendingResolves = [];
213
+ this.isDone = true;
214
+ this.onDone?.();
215
+ }
216
+ push = (value) => {
217
+ if (this.isDone) {
218
+ return;
219
+ }
220
+ const nextResolve = this.#pendingResolves.shift();
221
+ if (nextResolve) {
222
+ nextResolve({
223
+ done: false,
224
+ value,
225
+ });
226
+ }
227
+ else {
228
+ this.#queue.push(value);
229
+ }
230
+ };
231
+ next = () => {
232
+ if (this.isDone) {
233
+ return Promise.resolve({ done: true, value: undefined });
234
+ }
235
+ if (this.#queue.length > 0) {
236
+ return Promise.resolve({
237
+ done: false,
238
+ value: this.#queue.shift(),
239
+ });
240
+ }
241
+ return new Promise((resolve) => {
242
+ this.#pendingResolves.push(resolve);
243
+ });
244
+ };
245
+ return = () => {
246
+ this.onReturn?.();
247
+ this.done();
248
+ return Promise.resolve({
249
+ done: true,
250
+ value: undefined,
251
+ });
252
+ };
253
+ end = () => this.return();
254
+ [Symbol.asyncIterator]() {
255
+ return this;
256
+ }
257
+ }
258
+ const usableProperties = [
259
+ "end",
260
+ "isDone",
261
+ "next",
262
+ "return",
263
+ Symbol.asyncIterator,
264
+ ];
265
+ const isUsableProperty = (prop) => {
266
+ return usableProperties.includes(prop);
267
+ };
268
+ /**
269
+ * Creates a read-only proxy for AsyncStream instances that restricts access to consumer-only methods.
270
+ *
271
+ * This proxy only exposes the following properties and methods:
272
+ * - `next()`: Get the next value from the stream
273
+ * - `end()`: Terminate the stream and stop iteration
274
+ * - `return()`: Same as end(), terminates the stream
275
+ * - `isDone`: Boolean indicating if the stream has been terminated
276
+ * - `Symbol.asyncIterator`: Enables `for await` loop iteration
277
+ *
278
+ * Producer methods like `push()`, `done()`, and `flush()` are hidden to prevent
279
+ * consumers from accidentally modifying the stream state.
280
+ *
281
+ * @param stream - The AsyncStream instance to create a proxy for
282
+ * @returns A read-only proxy that implements AsyncStreamProxy<T>
283
+ *
284
+ * @example
285
+ * ```typescript
286
+ * const stream = new AsyncStream<string>();
287
+ * const proxy = createAsyncStreamProxy(stream);
288
+ *
289
+ * stream.push("hello");
290
+ * stream.push("world");
291
+ *
292
+ * for await (const value of proxy) {
293
+ * console.log(value); // "hello", "world"
294
+ * }
295
+ * ```
296
+ */
297
+ function createAsyncStreamProxy(stream) {
298
+ return new Proxy(stream, {
299
+ get(target, prop, receiver) {
300
+ if (isUsableProperty(prop)) {
301
+ return Reflect.get(target, prop, receiver);
302
+ }
303
+ },
304
+ set() {
305
+ return true;
306
+ },
307
+ has(_target, prop) {
308
+ return isUsableProperty(prop);
309
+ },
310
+ ownKeys() {
311
+ return usableProperties;
312
+ },
313
+ getOwnPropertyDescriptor(target, prop) {
314
+ if (isUsableProperty(prop)) {
315
+ return {
316
+ enumerable: true,
317
+ configurable: true,
318
+ value: Reflect.get(target, prop),
319
+ };
320
+ }
321
+ return undefined;
322
+ },
323
+ });
324
+ }
325
+
326
+ const wait = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
327
+ const DEFAULT_RETRY_DELAY = 10000; // milliseconds
328
+ const DEFAULT_RETRY_ATTEMPTS = 6;
329
+ /**
330
+ * Creates a stream from a stream function
331
+ *
332
+ * If the stream fails, an attempt will be made to restart it.
333
+ *
334
+ * This function is not intended to be used directly.
335
+ *
336
+ * @param streamFunction - The stream function to create a stream from
337
+ * @param streamValueMutator - An optional function to mutate the value emitted from the stream
338
+ * @param options - The options for the stream
339
+ * @param args - Additional arguments to pass to the stream function
340
+ * @returns An async iterable stream proxy
341
+ * @throws {StreamInvalidRetryAttemptsError} if the retryAttempts option is less than 0 and retryOnFail is true
342
+ * @throws {StreamFailedError} if the stream fails and can't be restarted
343
+ */
344
+ const createStream = async (streamFunction, streamValueMutator, options) => {
345
+ const { onError, onFail, onRestart, onRetry, onValue, retryAttempts = DEFAULT_RETRY_ATTEMPTS, retryDelay = DEFAULT_RETRY_DELAY, retryOnFail = true, } = options ?? {};
346
+ // retry attempts must be greater than 0
347
+ if (retryOnFail && retryAttempts < 0) {
348
+ throw new StreamInvalidRetryAttemptsError();
349
+ }
350
+ const asyncStream = new AsyncStream();
351
+ const streamCallback = (error, value) => {
352
+ // if a stream error occurs, call the onError callback
353
+ if (error) {
354
+ onError?.(error);
355
+ return;
356
+ }
357
+ // ensure the value is not undefined
358
+ if (value !== undefined) {
359
+ try {
360
+ // if a streamValueMutator is provided, mutate the value
361
+ if (streamValueMutator) {
362
+ const mutatedValue = streamValueMutator(value);
363
+ if (isPromise(mutatedValue)) {
364
+ void mutatedValue
365
+ .then((mutatedValue) => {
366
+ asyncStream.push(mutatedValue);
367
+ onValue?.(mutatedValue);
368
+ })
369
+ .catch((error) => {
370
+ onError?.(error);
371
+ });
372
+ }
373
+ else {
374
+ asyncStream.push(mutatedValue);
375
+ onValue?.(mutatedValue);
376
+ }
377
+ }
378
+ else {
379
+ asyncStream.push(value);
380
+ onValue?.(value);
381
+ }
382
+ }
383
+ catch (error) {
384
+ onError?.(error);
385
+ }
386
+ }
387
+ };
388
+ const retry = async (retries = retryAttempts) => {
389
+ // if the stream has been retried the maximum number of times without
390
+ // success, throw an error
391
+ if (retries === 0) {
392
+ void asyncStream.end();
393
+ throw new StreamFailedError(retryAttempts);
394
+ }
395
+ // wait for the retry delay before attempting to restart the stream
396
+ await wait(retryDelay);
397
+ // call the onRetry callback
398
+ onRetry?.(retryAttempts - retries + 1, retryAttempts);
399
+ try {
400
+ // attempt to restart the stream
401
+ const streamCloser = await streamFunction(streamCallback, () => {
402
+ // call the onFail callback
403
+ onFail?.();
404
+ void retry();
405
+ });
406
+ await streamCloser.waitForReady();
407
+ // when the async stream is done, end the stream
408
+ asyncStream.onDone = () => {
409
+ streamCloser.end();
410
+ };
411
+ // stream restarted, call the onRestart callback
412
+ onRestart?.();
413
+ }
414
+ catch (error) {
415
+ onError?.(error);
416
+ // retry
417
+ void retry(retries - 1);
418
+ }
419
+ };
420
+ const startRetry = () => {
421
+ // if the stream should be retried, start the process
422
+ if (retryOnFail) {
423
+ void retry();
424
+ }
425
+ else {
426
+ void asyncStream.end();
427
+ // stream failed and should not be retried, throw an error
428
+ throw new StreamFailedError(0);
429
+ }
430
+ };
431
+ try {
432
+ // create the stream
433
+ const streamCloser = await streamFunction(streamCallback, () => {
434
+ // call the onFail callback
435
+ onFail?.();
436
+ startRetry();
437
+ });
438
+ await streamCloser.waitForReady();
439
+ // when the async stream is done, end the stream
440
+ asyncStream.onDone = () => {
441
+ streamCloser.end();
442
+ };
443
+ }
444
+ catch (error) {
445
+ onError?.(error);
446
+ startRetry();
447
+ }
448
+ // return a proxy for the async stream
449
+ return createAsyncStreamProxy(asyncStream);
450
+ };
261
451
 
262
452
  /**
263
453
  * Represents a conversation
@@ -343,29 +533,18 @@ class Conversation {
343
533
  /**
344
534
  * Creates a stream for new messages in this conversation
345
535
  *
346
- * @param callback - Optional callback function for handling new stream values
536
+ * @param options - Optional stream options
347
537
  * @returns Stream instance for new messages
348
538
  */
349
- stream(callback, onFail) {
350
- const asyncStream = new AsyncStream();
351
- const stream = this.#conversation.stream((error, value) => {
352
- let err = error;
353
- let message;
354
- if (value) {
355
- try {
356
- message = new DecodedMessage(this.#client, value);
357
- }
358
- catch (error) {
359
- err = error;
360
- }
361
- }
362
- asyncStream.callback(err, message);
363
- callback?.(err, message);
364
- }, onFail ?? (() => { }));
365
- asyncStream.onDone = () => {
366
- stream.end();
539
+ async stream(options) {
540
+ const stream = async (callback, onFail) => {
541
+ await this.sync();
542
+ return this.#conversation.stream(callback, onFail);
367
543
  };
368
- return asyncStream;
544
+ const convertMessage = (value) => {
545
+ return new DecodedMessage(this.#client, value);
546
+ };
547
+ return createStream(stream, convertMessage, options);
369
548
  }
370
549
  /**
371
550
  * Publishes pending messages that were sent optimistically
@@ -913,145 +1092,108 @@ class Conversations {
913
1092
  /**
914
1093
  * Creates a stream for new conversations
915
1094
  *
916
- * @param callback - Optional callback function for handling new stream value
1095
+ * @param options - Optional stream options
1096
+ * @param options.conversationType - Optional conversation type to filter by
917
1097
  * @returns Stream instance for new conversations
918
1098
  */
919
- stream(callback, onFail) {
920
- const asyncStream = new AsyncStream();
921
- const stream = this.#conversations.stream((err, value) => {
922
- if (err) {
923
- asyncStream.callback(err, undefined);
924
- callback?.(err, undefined);
925
- return;
1099
+ async stream(options) {
1100
+ const stream = async (callback, onFail) => {
1101
+ await this.sync();
1102
+ return this.#conversations.stream(callback, onFail, options?.conversationType);
1103
+ };
1104
+ const convertConversation = async (value) => {
1105
+ const metadata = await value.groupMetadata();
1106
+ const conversationType = metadata.conversationType();
1107
+ let conversation;
1108
+ switch (conversationType) {
1109
+ case "dm":
1110
+ conversation = new Dm(this.#client, value);
1111
+ break;
1112
+ case "group":
1113
+ conversation = new Group(this.#client, value);
1114
+ break;
926
1115
  }
927
- value
928
- ?.groupMetadata()
929
- .then((metadata) => {
930
- const conversationType = metadata.conversationType();
931
- let conversation;
932
- switch (conversationType) {
933
- case "dm":
934
- conversation = new Dm(this.#client, value);
935
- break;
936
- case "group":
937
- conversation = new Group(this.#client, value);
938
- break;
939
- }
940
- if (conversation) {
941
- asyncStream.callback(null, conversation);
942
- callback?.(null, conversation);
943
- }
944
- })
945
- .catch((error) => {
946
- asyncStream.callback(error, undefined);
947
- callback?.(error, undefined);
948
- });
949
- }, onFail ?? (() => { }));
950
- asyncStream.onDone = () => {
951
- stream.end();
1116
+ return conversation;
952
1117
  };
953
- return asyncStream;
1118
+ return createStream(stream, convertConversation, options);
954
1119
  }
955
1120
  /**
956
1121
  * Creates a stream for new group conversations
957
1122
  *
958
- * @param callback - Optional callback function for handling new stream value
1123
+ * @param options - Optional stream options
959
1124
  * @returns Stream instance for new group conversations
960
1125
  */
961
- streamGroups(callback, onFail) {
962
- const asyncStream = new AsyncStream();
963
- const stream = this.#conversations.stream((error, value) => {
964
- let err = error;
965
- let group;
966
- if (value) {
967
- try {
968
- group = new Group(this.#client, value);
969
- }
970
- catch (error) {
971
- err = error;
972
- }
973
- }
974
- asyncStream.callback(err, group);
975
- callback?.(err, group);
976
- }, onFail ?? (() => { }), 1 /* ConversationType.Group */);
977
- asyncStream.onDone = () => {
978
- stream.end();
1126
+ async streamGroups(options) {
1127
+ const stream = async (callback, onFail) => {
1128
+ await this.sync();
1129
+ return this.#conversations.stream(callback, onFail, 1 /* ConversationType.Group */);
1130
+ };
1131
+ const convertConversation = (value) => {
1132
+ return new Group(this.#client, value);
979
1133
  };
980
- return asyncStream;
1134
+ return createStream(stream, convertConversation, options);
981
1135
  }
982
1136
  /**
983
1137
  * Creates a stream for new DM conversations
984
1138
  *
985
- * @param callback - Optional callback function for handling new stream value
1139
+ * @param options - Optional stream options
986
1140
  * @returns Stream instance for new DM conversations
987
1141
  */
988
- streamDms(callback, onFail) {
989
- const asyncStream = new AsyncStream();
990
- const stream = this.#conversations.stream((error, value) => {
991
- let err = error;
992
- let dm;
993
- if (value) {
994
- try {
995
- dm = new Dm(this.#client, value);
996
- }
997
- catch (error) {
998
- err = error;
999
- }
1000
- }
1001
- asyncStream.callback(err, dm);
1002
- callback?.(err, dm);
1003
- }, onFail ?? (() => { }), 0 /* ConversationType.Dm */);
1004
- asyncStream.onDone = () => {
1005
- stream.end();
1142
+ async streamDms(options) {
1143
+ const stream = async (callback, onFail) => {
1144
+ await this.sync();
1145
+ return this.#conversations.stream(callback, onFail, 0 /* ConversationType.Dm */);
1006
1146
  };
1007
- return asyncStream;
1147
+ const convertConversation = (value) => {
1148
+ return new Dm(this.#client, value);
1149
+ };
1150
+ return createStream(stream, convertConversation, options);
1008
1151
  }
1009
1152
  /**
1010
1153
  * Creates a stream for all new messages
1011
1154
  *
1012
- * @param callback - Optional callback function for handling new stream value
1155
+ * @param options - Optional stream options
1156
+ * @param options.conversationType - Optional conversation type to filter by
1157
+ * @param options.consentStates - Optional array of consent states to filter by
1013
1158
  * @returns Stream instance for new messages
1014
1159
  */
1015
- async streamAllMessages(callback, conversationType, consentStates, onFail) {
1016
- // sync conversations first
1017
- await this.sync();
1018
- const asyncStream = new AsyncStream();
1019
- const stream = this.#conversations.streamAllMessages((error, value) => {
1020
- let err = error;
1021
- let message;
1022
- if (value) {
1023
- try {
1024
- message = new DecodedMessage(this.#client, value);
1025
- }
1026
- catch (error) {
1027
- err = error;
1028
- }
1029
- }
1030
- asyncStream.callback(err, message);
1031
- callback?.(err, message);
1032
- }, onFail ?? (() => { }), conversationType, consentStates);
1033
- asyncStream.onDone = () => {
1034
- stream.end();
1160
+ async streamAllMessages(options) {
1161
+ const streamAllMessages = async (callback, onFail) => {
1162
+ await this.sync();
1163
+ return this.#conversations.streamAllMessages(callback, onFail, options?.conversationType, options?.consentStates);
1035
1164
  };
1036
- return asyncStream;
1165
+ const convertMessage = (value) => {
1166
+ return new DecodedMessage(this.#client, value);
1167
+ };
1168
+ return createStream(streamAllMessages, convertMessage, options);
1037
1169
  }
1038
1170
  /**
1039
1171
  * Creates a stream for all new group messages
1040
1172
  *
1041
- * @param callback - Optional callback function for handling new stream value
1173
+ * @param options - Optional stream options
1174
+ * @param options.consentStates - Optional array of consent states to filter by
1042
1175
  * @returns Stream instance for new group messages
1043
1176
  */
1044
- async streamAllGroupMessages(callback, consentStates, onFail) {
1045
- return this.streamAllMessages(callback, 1 /* ConversationType.Group */, consentStates, onFail);
1177
+ async streamAllGroupMessages(options) {
1178
+ return this.streamAllMessages({
1179
+ ...(options ?? {}),
1180
+ conversationType: 1 /* ConversationType.Group */,
1181
+ consentStates: options?.consentStates,
1182
+ });
1046
1183
  }
1047
1184
  /**
1048
1185
  * Creates a stream for all new DM messages
1049
1186
  *
1050
- * @param callback - Optional callback function for handling new stream value
1187
+ * @param options - Optional stream options
1188
+ * @param options.consentStates - Optional array of consent states to filter by
1051
1189
  * @returns Stream instance for new DM messages
1052
1190
  */
1053
- async streamAllDmMessages(callback, consentStates, onFail) {
1054
- return this.streamAllMessages(callback, 0 /* ConversationType.Dm */, consentStates, onFail);
1191
+ async streamAllDmMessages(options) {
1192
+ return this.streamAllMessages({
1193
+ ...(options ?? {}),
1194
+ conversationType: 0 /* ConversationType.Dm */,
1195
+ consentStates: options?.consentStates,
1196
+ });
1055
1197
  }
1056
1198
  /**
1057
1199
  * Retrieves HMAC keys for all conversations
@@ -1165,47 +1307,28 @@ class Preferences {
1165
1307
  /**
1166
1308
  * Creates a stream of consent state updates
1167
1309
  *
1168
- * @param callback - Optional callback function for handling stream updates
1310
+ * @param options - Optional stream options
1169
1311
  * @returns Stream instance for consent updates
1170
1312
  */
1171
- streamConsent(callback, onFail) {
1172
- const asyncStream = new AsyncStream();
1173
- const stream = this.#conversations.streamConsent((err, value) => {
1174
- if (err) {
1175
- asyncStream.callback(err, undefined);
1176
- callback?.(err, undefined);
1177
- return;
1178
- }
1179
- asyncStream.callback(null, value);
1180
- callback?.(null, value);
1181
- }, onFail ?? (() => { }));
1182
- asyncStream.onDone = () => {
1183
- stream.end();
1313
+ streamConsent(options) {
1314
+ const streamConsent = async (callback, onFail) => {
1315
+ await this.sync();
1316
+ return this.#conversations.streamConsent(callback, onFail);
1184
1317
  };
1185
- return asyncStream;
1318
+ return createStream(streamConsent, undefined, options);
1186
1319
  }
1187
1320
  /**
1188
1321
  * Creates a stream of user preference updates
1189
1322
  *
1190
- * @param callback - Optional callback function for handling stream updates
1323
+ * @param options - Optional stream options
1191
1324
  * @returns Stream instance for preference updates
1192
1325
  */
1193
- streamPreferences(callback, onFail) {
1194
- const asyncStream = new AsyncStream();
1195
- const stream = this.#conversations.streamPreferences((err, value) => {
1196
- if (err) {
1197
- asyncStream.callback(err, undefined);
1198
- callback?.(err, undefined);
1199
- return;
1200
- }
1201
- // TODO: remove this once the node bindings type is updated
1202
- asyncStream.callback(null, value);
1203
- callback?.(null, value);
1204
- }, onFail ?? (() => { }));
1205
- asyncStream.onDone = () => {
1206
- stream.end();
1326
+ streamPreferences(options) {
1327
+ const streamPreferences = async (callback, onFail) => {
1328
+ await this.sync();
1329
+ return this.#conversations.streamPreferences(callback, onFail);
1207
1330
  };
1208
- return asyncStream;
1331
+ return createStream(streamPreferences, undefined, options);
1209
1332
  }
1210
1333
  }
1211
1334
 
@@ -1914,5 +2037,5 @@ class Client {
1914
2037
  }
1915
2038
  }
1916
2039
 
1917
- export { AccountAlreadyAssociatedError, ApiUrls, Client, ClientNotInitializedError, CodecNotFoundError, Conversation, Conversations, DecodedMessage, Dm, Group, HistorySyncUrls, InboxReassignError, InvalidGroupMembershipChangeError, MissingContentTypeError, SignerUnavailableError, generateInboxId, getInboxIdForIdentifier };
2040
+ export { AccountAlreadyAssociatedError, ApiUrls, Client, ClientNotInitializedError, CodecNotFoundError, Conversation, Conversations, DecodedMessage, Dm, Group, HistorySyncUrls, InboxReassignError, InvalidGroupMembershipChangeError, MissingContentTypeError, SignerUnavailableError, StreamFailedError, StreamInvalidRetryAttemptsError, generateInboxId, getInboxIdForIdentifier };
1918
2041
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/constants.ts","../src/AsyncStream.ts","../src/utils/date.ts","../src/DecodedMessage.ts","../src/utils/errors.ts","../src/Conversation.ts","../src/Dm.ts","../src/Group.ts","../src/Conversations.ts","../src/DebugInformation.ts","../src/Preferences.ts","../src/utils/inboxId.ts","../src/utils/createClient.ts","../src/utils/version.ts","../src/Client.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["generateInboxIdBinding","getInboxIdForIdentifierBinding","createNodeClient","verifySignedWithPublicKeyBinding","isAddressAuthorizedBinding","isInstallationAuthorizedBinding"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/constants.ts","../src/utils/date.ts","../src/DecodedMessage.ts","../src/utils/errors.ts","../src/AsyncStream.ts","../src/utils/streams.ts","../src/Conversation.ts","../src/Dm.ts","../src/Group.ts","../src/Conversations.ts","../src/DebugInformation.ts","../src/Preferences.ts","../src/utils/inboxId.ts","../src/utils/createClient.ts","../src/utils/version.ts","../src/Client.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["generateInboxIdBinding","getInboxIdForIdentifierBinding","createNodeClient","verifySignedWithPublicKeyBinding","isAddressAuthorizedBinding","isInstallationAuthorizedBinding"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xmtp/node-sdk",
3
- "version": "3.2.2",
3
+ "version": "4.0.1",
4
4
  "description": "XMTP Node client SDK for interacting with XMTP networks",
5
5
  "keywords": [
6
6
  "xmtp",
@@ -52,7 +52,7 @@
52
52
  "@xmtp/content-type-group-updated": "^2.0.2",
53
53
  "@xmtp/content-type-primitives": "^2.0.2",
54
54
  "@xmtp/content-type-text": "^2.0.2",
55
- "@xmtp/node-bindings": "1.3.3"
55
+ "@xmtp/node-bindings": "1.3.4"
56
56
  },
57
57
  "devDependencies": {
58
58
  "@rollup/plugin-json": "^6.1.0",