@xmtp/browser-sdk 7.0.0 → 7.1.0-nightly.20260612.578abea
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 +69 -4
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/workers/client.js +1 -1
- package/dist/workers/client.js.map +1 -1
- package/package.json +8 -7
- package/src/Client.ts +105 -0
- package/src/WorkerClient.ts +23 -2
- package/src/WorkerConversation.ts +20 -18
- package/src/index.ts +3 -0
- package/src/types/actions/client.ts +19 -1
- package/src/types/options.ts +19 -0
- package/src/utils/WorkerBridge.ts +1 -1
- package/src/utils/createClient.ts +11 -4
- package/src/workers/client.ts +15 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as _xmtp_wasm_bindings from '@xmtp/wasm-bindings';
|
|
2
|
-
import { ContentTypeId as ContentTypeId$1, DeliveryStatus, GroupMessageKind, Reaction, DecodedMessage as DecodedMessage$1, LeaveRequest, ReadReceipt, Attachment, RemoteAttachment, TransactionReference, WalletSendCalls, Actions, Intent, MultiRemoteAttachment, GroupUpdated, DeletedMessage, Backend, LogLevel, Identifier, Conversations as Conversations$1, ConsentState, ListConversationsOptions, CreateGroupOptions, CreateDmOptions, Conversation as Conversation$1, ConversationType, Message, Client as Client$1, Consent, ConsentEntityType, UserPreferenceUpdate, SignatureRequestHandle, KeyPackageStatus, ArchiveOptions, AvailableArchiveInfo, ArchiveMetadata, GroupSyncSummary, GroupMember, PermissionUpdateType, PermissionPolicy, MetadataField, EncodedContent, SendMessageOpts, Reply, ListMessagesOptions, MessageDisappearingSettings, HmacKey, ConversationDebugInfo, GroupPermissionsOptions, PermissionPolicySet, GroupMetadata, ApiStats, IdentityStats, InboxState } from '@xmtp/wasm-bindings';
|
|
3
|
-
export { Action, ActionStyle, Actions, ApiStats, ArchiveMetadata, ArchiveOptions, Attachment, AvailableArchiveInfo, Backend, BackendBuilder, BackupElementSelectionOption, Consent, ConsentEntityType, ConsentState, ContentType, ConversationDebugInfo, ConversationListItem, ConversationType, CreateDmOptions, CreateGroupOptions, Cursor, DeliveryStatus, EncryptedAttachment, GroupMember, GroupMembershipState, GroupMessageKind, GroupMetadata, GroupPermissions, GroupPermissionsOptions, GroupSyncSummary, GroupUpdated, HmacKey, Identifier, IdentifierKind, IdentityStats, Inbox, InboxState, Installation, Intent, KeyPackageStatus, LeaveRequest, Lifetime, ListConversationsOptions, ListConversationsOrderBy, ListMessagesOptions, LogLevel, LogOptions, Message, MessageDisappearingSettings, MessageSortBy, MetadataField, MetadataFieldChange, MultiRemoteAttachment, PermissionLevel, PermissionPolicy, PermissionPolicySet, PermissionUpdateType, Reaction, ReactionAction, ReactionSchema, ReadReceipt, RemoteAttachment, Reply, SendMessageOpts, SignatureRequestHandle, SortDirection, TransactionMetadata, TransactionReference, UserPreferenceUpdate, WalletCall, WalletSendCalls } from '@xmtp/wasm-bindings';
|
|
2
|
+
import { ContentTypeId as ContentTypeId$1, DeliveryStatus, GroupMessageKind, Reaction, DecodedMessage as DecodedMessage$1, LeaveRequest, ReadReceipt, Attachment, RemoteAttachment, TransactionReference, WalletSendCalls, Actions, Intent, MultiRemoteAttachment, GroupUpdated, DeletedMessage, Backend, LogLevel, WorkerConfigOptions, WasmVisibilityConfirmationOptions, Identifier, Conversations as Conversations$1, ConsentState, ListConversationsOptions, CreateGroupOptions, CreateDmOptions, Conversation as Conversation$1, ConversationType, Message, Client as Client$1, Consent, ConsentEntityType, UserPreferenceUpdate, SignatureRequestHandle, KeyPackageStatus, ArchiveOptions, AvailableArchiveInfo, ArchiveMetadata, GroupSyncSummary, GroupMember, PermissionUpdateType, PermissionPolicy, MetadataField, EncodedContent, SendMessageOpts, Reply, ListMessagesOptions, MessageDisappearingSettings, HmacKey, ConversationDebugInfo, GroupPermissionsOptions, PermissionPolicySet, GroupMetadata, ApiStats, IdentityStats, InboxState } from '@xmtp/wasm-bindings';
|
|
3
|
+
export { Action, ActionStyle, Actions, ApiStats, ArchiveMetadata, ArchiveOptions, Attachment, AvailableArchiveInfo, Backend, BackendBuilder, BackupElementSelectionOption, Consent, ConsentEntityType, ConsentState, ContentType, ConversationDebugInfo, ConversationListItem, ConversationType, CreateDmOptions, CreateGroupOptions, Cursor, DeliveryStatus, EncryptedAttachment, GroupMember, GroupMembershipState, GroupMessageKind, GroupMetadata, GroupPermissions, GroupPermissionsOptions, GroupSyncSummary, GroupUpdated, HmacKey, Identifier, IdentifierKind, IdentityStats, Inbox, InboxState, Installation, Intent, KeyPackageStatus, LeaveRequest, Lifetime, ListConversationsOptions, ListConversationsOrderBy, ListMessagesOptions, LogLevel, LogOptions, Message, MessageDisappearingSettings, MessageSortBy, MetadataField, MetadataFieldChange, MultiRemoteAttachment, PermissionLevel, PermissionPolicy, PermissionPolicySet, PermissionUpdateType, Reaction, ReactionAction, ReactionSchema, ReadReceipt, RemoteAttachment, Reply, SendMessageOpts, SignatureRequestHandle, SortDirection, TransactionMetadata, TransactionReference, UserPreferenceUpdate, WalletCall, WalletSendCalls, WorkerConfigOptions, WorkerIntervalOverride, WorkerKind } from '@xmtp/wasm-bindings';
|
|
4
4
|
import { ContentCodec, ContentTypeId } from '@xmtp/content-type-primitives';
|
|
5
5
|
|
|
6
6
|
type ResolveValue<T> = {
|
|
@@ -131,6 +131,7 @@ declare class DecodedMessage<ContentTypes = unknown> {
|
|
|
131
131
|
constructor(codecRegistry: CodecRegistry, message: DecodedMessage$1);
|
|
132
132
|
}
|
|
133
133
|
|
|
134
|
+
type VisibilityConfirmationOptions = WasmVisibilityConfirmationOptions;
|
|
134
135
|
type XmtpEnv = "local" | "dev" | "production" | "testnet-staging" | "testnet-dev" | "testnet" | "mainnet";
|
|
135
136
|
/**
|
|
136
137
|
* Network options
|
|
@@ -214,10 +215,25 @@ type OtherOptions = {
|
|
|
214
215
|
* Logging level
|
|
215
216
|
*/
|
|
216
217
|
loggingLevel?: LogLevel;
|
|
218
|
+
/**
|
|
219
|
+
* Tuning for the background worker scheduler (intervals, jitter, per-worker
|
|
220
|
+
* overrides, and disabled workers). All fields are optional; omitting this
|
|
221
|
+
* object preserves the default worker behavior.
|
|
222
|
+
*
|
|
223
|
+
* Intervals are specified in nanoseconds.
|
|
224
|
+
*/
|
|
225
|
+
workerConfig?: WorkerConfigOptions;
|
|
217
226
|
/**
|
|
218
227
|
* Disable automatic registration when creating a client
|
|
219
228
|
*/
|
|
220
229
|
disableAutoRegister?: boolean;
|
|
230
|
+
/**
|
|
231
|
+
* Options for waiting until client registration is visible on the network.
|
|
232
|
+
*
|
|
233
|
+
* When set, `registerIdentity` will wait for the specified quorum of nodes
|
|
234
|
+
* to confirm the registration before resolving.
|
|
235
|
+
*/
|
|
236
|
+
waitForRegistrationVisible?: VisibilityConfirmationOptions;
|
|
221
237
|
};
|
|
222
238
|
type ClientOptions = (NetworkOptions | {
|
|
223
239
|
backend: Backend;
|
|
@@ -333,6 +349,8 @@ declare class WorkerClient {
|
|
|
333
349
|
get debugInformation(): WorkerDebugInformation;
|
|
334
350
|
get preferences(): WorkerPreferences;
|
|
335
351
|
canMessage(identifiers: Identifier[]): Promise<Map<string, boolean>>;
|
|
352
|
+
fetchLatestInboxUpdatesCount(inboxIds: string[]): Promise<Record<string, number>>;
|
|
353
|
+
fetchOwnInboxUpdatesCount(): Promise<number>;
|
|
336
354
|
addSignature(signatureRequest: SignatureRequestHandle, signer: SafeSigner): Promise<void>;
|
|
337
355
|
applySignatureRequest(signatureRequest: SignatureRequestHandle): Promise<void>;
|
|
338
356
|
processSignatureRequest(signer: SafeSigner, signatureRequest: SignatureRequestHandle): Promise<void>;
|
|
@@ -342,7 +360,7 @@ declare class WorkerClient {
|
|
|
342
360
|
revokeAllOtherInstallationsSignatureRequest(): Promise<SignatureRequestHandle | undefined>;
|
|
343
361
|
revokeInstallationsSignatureRequest(installationIds: Uint8Array[]): Promise<SignatureRequestHandle>;
|
|
344
362
|
changeRecoveryIdentifierSignatureRequest(identifier: Identifier): Promise<SignatureRequestHandle>;
|
|
345
|
-
registerIdentity(signer: SafeSigner, signatureRequest: SignatureRequestHandle): Promise<void>;
|
|
363
|
+
registerIdentity(signer: SafeSigner, signatureRequest: SignatureRequestHandle, visibilityConfirmationOptions?: VisibilityConfirmationOptions): Promise<void>;
|
|
346
364
|
getInboxIdByIdentifier(identifier: Identifier): Promise<string | undefined>;
|
|
347
365
|
signWithInstallationKey(signatureText: string): Uint8Array<ArrayBufferLike>;
|
|
348
366
|
verifySignedWithInstallationKey(signatureText: string, signatureBytes: Uint8Array): boolean;
|
|
@@ -542,6 +560,7 @@ type ClientAction = {
|
|
|
542
560
|
data: {
|
|
543
561
|
signer: SafeSigner;
|
|
544
562
|
signatureRequestId: string;
|
|
563
|
+
waitForRegistrationVisible?: VisibilityConfirmationOptions;
|
|
545
564
|
};
|
|
546
565
|
} | {
|
|
547
566
|
action: "client.addAccount";
|
|
@@ -599,6 +618,18 @@ type ClientAction = {
|
|
|
599
618
|
data: {
|
|
600
619
|
identifiers: Identifier[];
|
|
601
620
|
};
|
|
621
|
+
} | {
|
|
622
|
+
action: "client.fetchLatestInboxUpdatesCount";
|
|
623
|
+
id: string;
|
|
624
|
+
result: Record<string, number>;
|
|
625
|
+
data: {
|
|
626
|
+
inboxIds: string[];
|
|
627
|
+
};
|
|
628
|
+
} | {
|
|
629
|
+
action: "client.fetchOwnInboxUpdatesCount";
|
|
630
|
+
id: string;
|
|
631
|
+
result: number;
|
|
632
|
+
data: Record<string, never>;
|
|
602
633
|
} | {
|
|
603
634
|
action: "client.getInboxIdByIdentifier";
|
|
604
635
|
id: string;
|
|
@@ -2478,6 +2509,19 @@ declare class Client<ContentTypes = ExtractCodecContentTypes> {
|
|
|
2478
2509
|
* @returns Whether the client can message the identifiers
|
|
2479
2510
|
*/
|
|
2480
2511
|
canMessage(identifiers: Identifier[]): Promise<Map<string, boolean>>;
|
|
2512
|
+
/**
|
|
2513
|
+
* Fetches the latest inbox updates count for the specified inbox IDs
|
|
2514
|
+
*
|
|
2515
|
+
* @param inboxIds - The inbox IDs to check
|
|
2516
|
+
* @returns Map of inbox IDs to their updates count
|
|
2517
|
+
*/
|
|
2518
|
+
fetchLatestInboxUpdatesCount(inboxIds: string[]): Promise<Map<string, number>>;
|
|
2519
|
+
/**
|
|
2520
|
+
* Fetches the latest inbox updates count for the client's inbox
|
|
2521
|
+
*
|
|
2522
|
+
* @returns The latest inbox updates count
|
|
2523
|
+
*/
|
|
2524
|
+
fetchOwnInboxUpdatesCount(): Promise<number>;
|
|
2481
2525
|
/**
|
|
2482
2526
|
* Checks if the specified identifiers can be messaged
|
|
2483
2527
|
*
|
|
@@ -2496,6 +2540,27 @@ declare class Client<ContentTypes = ExtractCodecContentTypes> {
|
|
|
2496
2540
|
* of `XmtpEnv`.
|
|
2497
2541
|
*/
|
|
2498
2542
|
static canMessage(identifiers: Identifier[], env?: XmtpEnv): Promise<Map<string, boolean>>;
|
|
2543
|
+
/**
|
|
2544
|
+
* Fetches the latest inbox updates count for the specified inbox IDs
|
|
2545
|
+
* without a client
|
|
2546
|
+
*
|
|
2547
|
+
* @param inboxIds - The inbox IDs to check
|
|
2548
|
+
* @param backend - Optional `Backend` instance created with `createBackend()`
|
|
2549
|
+
* @returns Map of inbox IDs to their updates count
|
|
2550
|
+
*/
|
|
2551
|
+
static fetchLatestInboxUpdatesCount(inboxIds: string[], backendOrEnv?: Backend | XmtpEnv): Promise<Map<string, number>>;
|
|
2552
|
+
/**
|
|
2553
|
+
* Fetches the latest inbox updates count for the specified inbox IDs
|
|
2554
|
+
* without a client
|
|
2555
|
+
*
|
|
2556
|
+
* @param inboxIds - The inbox IDs to check
|
|
2557
|
+
* @param env - Optional XMTP environment
|
|
2558
|
+
* @param gatewayHost - Optional gateway host
|
|
2559
|
+
* @returns Map of inbox IDs to their updates count
|
|
2560
|
+
* @deprecated Pass a `Backend` instance created with `createBackend()` instead
|
|
2561
|
+
* of `XmtpEnv` and `gatewayHost`.
|
|
2562
|
+
*/
|
|
2563
|
+
static fetchLatestInboxUpdatesCount(inboxIds: string[], env?: XmtpEnv, gatewayHost?: string): Promise<Map<string, number>>;
|
|
2499
2564
|
/**
|
|
2500
2565
|
* Fetches the inbox ID for a given identifier from the local database
|
|
2501
2566
|
* If not found, fetches from the network
|
|
@@ -2753,4 +2818,4 @@ declare const isActions: (m: DecodedMessage) => m is DecodedMessage<Actions>;
|
|
|
2753
2818
|
declare const isMarkdown: (m: DecodedMessage) => m is DecodedMessage<string>;
|
|
2754
2819
|
|
|
2755
2820
|
export { AccountAlreadyAssociatedError, ApiUrls, Client, ClientNotInitializedError, Conversation, Conversations, DEFAULT_RETRY_ATTEMPTS, DEFAULT_RETRY_DELAY, DecodedMessage, Dm, Group, GroupNotFoundError, HistorySyncUrls, InboxReassignError, Opfs, OpfsInitializationError, OpfsNotInitializedError, SignerUnavailableError, StreamFailedError, StreamInvalidRetryAttemptsError, StreamNotFoundError, contentTypeActions, contentTypeAttachment, contentTypeGroupUpdated, contentTypeIntent, contentTypeLeaveRequest, contentTypeMarkdown, contentTypeMultiRemoteAttachment, contentTypeReaction, contentTypeReadReceipt, contentTypeRemoteAttachment, contentTypeReply, contentTypeText, contentTypeTransactionReference, contentTypeWalletSendCalls, createBackend, createEOASigner, createSCWSigner, createStream, decryptAttachment, encodeActions, encodeAttachment, encodeIntent, encodeMarkdown, encodeMultiRemoteAttachment, encodeReaction, encodeReadReceipt, encodeRemoteAttachment, encodeText, encodeTransactionReference, encodeWalletSendCalls, encryptAttachment, generateInboxId, getInboxIdForIdentifier, isActions, isAttachment, isGroupUpdated, isIntent, isLeaveRequest, isMarkdown, isMultiRemoteAttachment, isReaction, isReadReceipt, isRemoteAttachment, isReply, isText, isTextReply, isTransactionReference, isWalletSendCalls, metadataFieldName, toSafeConversation, toSafeSigner };
|
|
2756
|
-
export type { AsyncStreamProxy, BuiltInContentTypes, ClientOptions, ContentOptions, DeviceSyncOptions, EOASigner, EnrichedReply, ExtractCodecContentTypes, HmacKeys, LastReadTimes, NetworkOptions, OtherOptions, SCWSigner, SafeConversation, SafeSigner, Signer, StorageOptions, StreamCallback, StreamFunction, StreamOptions, StreamValueMutator, XmtpEnv };
|
|
2821
|
+
export type { AsyncStreamProxy, BuiltInContentTypes, ClientOptions, ContentOptions, DeviceSyncOptions, EOASigner, EnrichedReply, ExtractCodecContentTypes, HmacKeys, LastReadTimes, NetworkOptions, OtherOptions, SCWSigner, SafeConversation, SafeSigner, Signer, StorageOptions, StreamCallback, StreamFunction, StreamOptions, StreamValueMutator, VisibilityConfirmationOptions, XmtpEnv };
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e,{encodeActions as t,encodeAttachment as n,encodeIntent as s,encodeMarkdown as i,encodeMultiRemoteAttachment as r,encodeReaction as a,encodeReadReceipt as o,encodeRemoteAttachment as c,encodeText as d,encodeTransactionReference as u,encodeWalletSendCalls as h,contentTypeActions as p,contentTypeAttachment as l,contentTypeGroupUpdated as y,contentTypeIntent as g,contentTypeLeaveRequest as w,contentTypeMarkdown as m,contentTypeMultiRemoteAttachment as v,contentTypeReaction as k,contentTypeReadReceipt as I,contentTypeRemoteAttachment as f,contentTypeReply as x,contentTypeText as R,contentTypeTransactionReference as A,contentTypeWalletSendCalls as b,encryptAttachment as S,decryptAttachment as T,ConversationType as D,XmtpEnv as M,BackendBuilder as C,generateInboxId as q,getInboxIdForIdentifier as E,inboxStateFromInboxIds as O,applySignatureRequest as B,revokeInstallationsSignatureRequest as N,IdentifierKind as P,LogLevel as U,BackupElementSelectionOption as L,Backend as F,metadataFieldName as G}from"@xmtp/wasm-bindings";export{ActionStyle,BackupElementSelectionOption,ConsentEntityType,ConsentState,ContentType,ConversationType,DeliveryStatus,GroupMembershipState,GroupMessageKind,GroupPermissionsOptions,IdentifierKind,ListConversationsOrderBy,LogLevel,MessageSortBy,MetadataField,PermissionLevel,PermissionPolicy,PermissionUpdateType,ReactionAction,ReactionSchema,SortDirection}from"@xmtp/wasm-bindings";import{contentTypeToString as W}from"@xmtp/content-type-primitives";import{toBytes as K}from"viem";import{privateKeyToAccount as V,generatePrivateKey as _}from"viem/accounts";class ${#e;constructor(e){this.#e=new Map(e.map(e=>[W(e.contentType),e]))}getCodec(e){return this.#e.get(W(e))}}const j={local:"http://localhost:5557",dev:"https://api.dev.xmtp.network:5558",production:"https://api.production.xmtp.network:5558"},H={local:"http://localhost:5558",dev:"https://message-history.dev.ephemera.network",production:"https://message-history.production.ephemera.network","testnet-staging":"https://message-history.dev.ephemera.network","testnet-dev":"https://message-history.dev.ephemera.network",testnet:"https://message-history.dev.ephemera.network",mainnet:"https://message-history.production.ephemera.network"},z=t=>async(...n)=>(await e(),t(...n)),X=z(t),J=z(n),Q=z(s),Y=z(i),Z=z(r),ee=z(a),te=z(o),ne=z(c),se=z(d),ie=z(u),re=z(h),ae=z(p),oe=z(l),ce=z(y),de=z(g),ue=z(w),he=z(m),pe=z(v),le=z(k),ye=z(I),ge=z(f),we=z(x),me=z(R),ve=z(A),ke=z(b),Ie=z(S),fe=z(T);function xe(e){return new Date(Number(e/1000000n))}const Re=e=>{switch(e.type){case"text":case"markdown":case"reply":case"reaction":case"attachment":case"remoteAttachment":case"multiRemoteAttachment":case"transactionReference":case"groupUpdated":case"readReceipt":case"leaveRequest":case"walletSendCalls":case"intent":case"actions":case"deletedMessage":case"custom":return e.content;default:return null}};class Ae{content;contentType;conversationId;deliveryStatus;expiresAtNs;expiresAt;fallback;id;kind;numReplies;reactions;senderInboxId;sentAt;sentAtNs;constructor(e,t){switch(this.id=t.id,this.expiresAtNs=t.expiresAtNs,this.expiresAt=t.expiresAtNs?xe(t.expiresAtNs):void 0,this.sentAtNs=t.sentAtNs,this.sentAt=xe(t.sentAtNs),this.conversationId=t.conversationId,this.senderInboxId=t.senderInboxId,this.contentType=t.contentType,this.fallback=t.fallback??void 0,this.kind=t.kind,this.deliveryStatus=t.deliveryStatus,this.numReplies=t.numReplies,this.reactions=t.reactions.map(t=>new Ae(e,t)),this.content=Re(t.content)??void 0,t.content.type){case"reply":{const n=t.content.content;let s=Re(n.content);if("custom"===n.content.type){const t=e.getCodec(n.content.content.type);if(t)try{s=t.decode(s)}catch(e){e instanceof Error?console.warn(`Error decoding custom content: ${e.message}`):console.warn("Error decoding custom content")}}this.content={referenceId:n.referenceId,content:s,contentType:()=>(async e=>{switch(e.type){case"text":return me();case"markdown":return he();case"reply":return we();case"reaction":return le();case"attachment":return oe();case"remoteAttachment":return ge();case"multiRemoteAttachment":return pe();case"transactionReference":return ve();case"groupUpdated":return ce();case"readReceipt":return ye();case"leaveRequest":return ue();case"walletSendCalls":return ke();case"intent":return de();case"actions":return ae();case"deletedMessage":default:return;case"custom":return e.content.type}})(n.content),inReplyTo:n.inReplyTo?new Ae(e,n.inReplyTo):null};break}case"custom":{const n=t.content.content,s=e.getCodec(this.contentType);if(s)try{this.content=s.decode(n)}catch(e){e instanceof Error?console.warn(`Error decoding custom content: ${e.message}`):console.warn("Error decoding custom content"),this.content=void 0}else console.warn(`No codec found for content type "${W(this.contentType)}"`),this.content=void 0;break}}}}class be{isDone=!1;#t=[];#n;onDone;onReturn;constructor(){this.#n=[],this.isDone=!1}flush(){for(;this.#t.length>0;){const e=this.#t.shift();e&&e({done:!0,value:void 0})}}done(){this.flush(),this.#n=[],this.#t=[],this.isDone=!0,this.onDone?.()}push=e=>{if(this.isDone)return;const t=this.#t.shift();t?t({done:!1,value:e}):this.#n.push(e)};next=()=>this.isDone?Promise.resolve({done:!0,value:void 0}):this.#n.length>0?Promise.resolve({done:!1,value:this.#n.shift()}):new Promise(e=>{this.#t.push(e)});return=()=>(this.onReturn?.(),this.done(),Promise.resolve({done:!0,value:void 0}));end=()=>this.return();[Symbol.asyncIterator](){return this}}const Se=["end","isDone","next","return",Symbol.asyncIterator],Te=e=>Se.includes(e);class De extends Error{constructor(){super("Client not initialized, use Client.create or Client.build to create a client")}}class Me extends Error{constructor(){super("Signer unavailable, use Client.create to create a client with a signer")}}class Ce extends Error{constructor(){super("Unable to create add account signature text, `allowInboxReassign` must be true")}}class qe extends Error{constructor(e){super(`Account already associated with inbox ${e}`)}}class Ee extends Error{constructor(e){super(`Group "${e}" not found`)}}class Oe extends Error{constructor(e){super(`Stream "${e}" not found`)}}class Be extends Error{constructor(e){super(`Stream failed, retried ${e} ${"time"+(1!==e?"s":"")}`)}}class Ne extends Error{constructor(){super("Stream retry attempts must be greater than 0")}}class Pe extends Error{constructor(){super("OPFS must be initialized before accessing its methods")}}class Ue extends Error{constructor(){super("Failed to initialize OPFS, ensure that there are no other active XMTP clients or Opfs instances")}}const Le=1e4,Fe=6,Ge=async(e,t,n)=>{const{onEnd:s,onError:i,onFail:r,onRestart:a,onRetry:o,onValue:c,retryAttempts:d=Fe,retryDelay:u=Le,retryOnFail:h=!0}=n??{};if(h&&d<0)throw new Ne;const p=new be,l=(e,n)=>{if(e)i?.(e);else if(void 0!==n)try{if(t){const e=t(n);(e=>!!e&&("object"==typeof e||"function"==typeof e)&&"then"in e&&"function"==typeof e.then)(e)?e.then(e=>{void 0!==e&&(p.push(e),c?.(e))}).catch(e=>{i?.(e)}):void 0!==e&&(p.push(e),c?.(e))}else p.push(n),c?.(n)}catch(e){i?.(e)}},y=async(t=d)=>{try{if(0===t)throw p.end(),new Be(d);await(n=u,new Promise(e=>setTimeout(e,n))),o?.(d-t+1,d);const i=await e(l,()=>{r?.(),y()});p.onDone=()=>{i(),s?.()},a?.()}catch(e){i?.(e),y(t-1)}var n},g=()=>{if(!h)throw p.end(),new Be(0);y()};try{const t=await e(l,()=>{r?.(),g()});p.onDone=()=>{t(),s?.()}}catch(e){i?.(e),g()}return new Proxy(p,{get(e,t,n){if(Te(t))return Reflect.get(e,t,n)},set:()=>!0,has:(e,t)=>Te(t),ownKeys:()=>Se,getOwnPropertyDescriptor(e,t){if(Te(t))return{enumerable:!0,configurable:!0,value:Reflect.get(e,t)}}})},We=()=>{const e=new Uint8Array(16);return crypto.getRandomValues(e),Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")};class Ke{#s;#i;#r;#a;#o;#c;constructor(e,t,n,s){this.#c=e,this.#i=t,this.#a=n,this.#d(s)}#d(e){this.#s=e?.addedByInboxId,this.#o=e?.metadata,this.#r=e?.createdAtNs}get id(){return this.#a}get addedByInboxId(){return this.#s}get createdAtNs(){return this.#r}get createdAt(){return this.#r?xe(this.#r):void 0}get metadata(){return this.#o}get topic(){return`/xmtp/mls/1/g-${this.id}/proto`}async lastMessage(){const e=await this.#c.action("conversation.lastMessage",{id:this.#a});return e?new Ae(this.#i,e):void 0}async isActive(){return this.#c.action("conversation.isActive",{id:this.#a})}async members(){return this.#c.action("conversation.members",{id:this.#a})}async sync(){const e=await this.#c.action("conversation.sync",{id:this.#a});return this.#d(e),e}async publishMessages(){return this.#c.action("conversation.publishMessages",{id:this.#a})}async processStreamedMessage(e){return this.#c.action("conversation.processStreamedMessage",{id:this.#a,envelopeBytes:e})}async send(e,t){return this.#c.action("conversation.send",{id:this.#a,content:e,options:t})}async sendText(e,t){return this.#c.action("conversation.sendText",{id:this.#a,text:e,isOptimistic:t})}async sendMarkdown(e,t){return this.#c.action("conversation.sendMarkdown",{id:this.#a,markdown:e,isOptimistic:t})}async sendReaction(e,t){return this.#c.action("conversation.sendReaction",{id:this.#a,reaction:e,isOptimistic:t})}async sendReadReceipt(e){return this.#c.action("conversation.sendReadReceipt",{id:this.#a,isOptimistic:e})}async sendReply(e,t){return this.#c.action("conversation.sendReply",{id:this.#a,reply:e,isOptimistic:t})}async sendTransactionReference(e,t){return this.#c.action("conversation.sendTransactionReference",{id:this.#a,transactionReference:e,isOptimistic:t})}async sendWalletSendCalls(e,t){return this.#c.action("conversation.sendWalletSendCalls",{id:this.#a,walletSendCalls:e,isOptimistic:t})}async sendActions(e,t){return this.#c.action("conversation.sendActions",{id:this.#a,actions:e,isOptimistic:t})}async sendIntent(e,t){return this.#c.action("conversation.sendIntent",{id:this.#a,intent:e,isOptimistic:t})}async sendAttachment(e,t){return this.#c.action("conversation.sendAttachment",{id:this.#a,attachment:e,isOptimistic:t})}async sendMultiRemoteAttachment(e,t){return this.#c.action("conversation.sendMultiRemoteAttachment",{id:this.#a,multiRemoteAttachment:e,isOptimistic:t})}async sendRemoteAttachment(e,t){return this.#c.action("conversation.sendRemoteAttachment",{id:this.#a,remoteAttachment:e,isOptimistic:t})}async messages(e){return(await this.#c.action("conversation.messages",{id:this.#a,options:e})).map(e=>new Ae(this.#i,e))}async countMessages(e){return await this.#c.action("conversation.countMessages",{id:this.#a,options:e})}async consentState(){return this.#c.action("conversation.consentState",{id:this.#a})}async updateConsentState(e){return this.#c.action("conversation.updateConsentState",{id:this.#a,state:e})}async messageDisappearingSettings(){return this.#c.action("conversation.messageDisappearingSettings",{id:this.#a})}async updateMessageDisappearingSettings(e,t){return this.#c.action("conversation.updateMessageDisappearingSettings",{id:this.#a,fromNs:e,inNs:t})}async removeMessageDisappearingSettings(){return this.#c.action("conversation.removeMessageDisappearingSettings",{id:this.#a})}async isMessageDisappearingEnabled(){return this.#c.action("conversation.isMessageDisappearingEnabled",{id:this.#a})}async stream(e){return Ge(async(t,n)=>{const s=We();return e?.disableSync||await this.sync(),await this.#c.action("conversation.stream",{groupId:this.#a,streamId:s}),this.#c.handleStreamMessage(s,t,{...e,onFail:n})},e=>new Ae(this.#i,e),e)}async pausedForVersion(){return this.#c.action("conversation.pausedForVersion",{id:this.#a})}async hmacKeys(){return this.#c.action("conversation.hmacKeys",{id:this.#a})}async debugInfo(){return this.#c.action("conversation.debugInfo",{id:this.#a})}async lastReadTimes(){return this.#c.action("conversation.lastReadTimes",{id:this.#a})}}class Ve extends Ke{#i;#c;#a;constructor(e,t,n,s){super(e,t,n,s),this.#c=e,this.#i=t,this.#a=n}async peerInboxId(){return this.#c.action("dm.peerInboxId",{id:this.#a})}async duplicateDms(){return(await this.#c.action("dm.duplicateDms",{id:this.#a})).map(e=>new Ve(this.#c,this.#i,e.id,e))}}class _e extends Ke{#u=[];#h;#c;#p;#a;#l;#y;#g=[];#d(e){this.#y=e?.name??"",this.#l=e?.imageUrl??"",this.#p=e?.description??"",this.#h=e?.appData??"",this.#u=e?.admins??[],this.#g=e?.superAdmins??[]}constructor(e,t,n,s){super(e,t,n,s),this.#c=e,this.#a=n,this.#d(s)}async sync(){const e=await super.sync();return this.#d(e),e}get name(){return this.#y}async updateName(e){await this.#c.action("group.updateName",{id:this.#a,name:e}),this.#y=e}get imageUrl(){return this.#l}async updateImageUrl(e){await this.#c.action("group.updateImageUrl",{id:this.#a,imageUrl:e}),this.#l=e}get description(){return this.#p}async updateDescription(e){await this.#c.action("group.updateDescription",{id:this.#a,description:e}),this.#p=e}get appData(){return this.#h}async updateAppData(e){await this.#c.action("group.updateAppData",{id:this.#a,appData:e}),this.#h=e}get admins(){return this.#u}get superAdmins(){return this.#g}async listAdmins(){const e=await this.#c.action("group.listAdmins",{id:this.#a});return this.#u=e,e}async listSuperAdmins(){const e=await this.#c.action("group.listSuperAdmins",{id:this.#a});return this.#g=e,e}async permissions(){return this.#c.action("group.permissions",{id:this.#a})}async updatePermission(e,t,n){return this.#c.action("group.updatePermission",{id:this.#a,permissionType:e,policy:t,metadataField:n})}async isAdmin(e){return(await this.listAdmins()).includes(e)}async isSuperAdmin(e){return(await this.listSuperAdmins()).includes(e)}async addMembersByIdentifiers(e){return this.#c.action("group.addMembersByIdentifiers",{id:this.#a,identifiers:e})}async addMembers(e){return this.#c.action("group.addMembers",{id:this.#a,inboxIds:e})}async removeMembersByIdentifiers(e){return this.#c.action("group.removeMembersByIdentifiers",{id:this.#a,identifiers:e})}async removeMembers(e){return this.#c.action("group.removeMembers",{id:this.#a,inboxIds:e})}async addAdmin(e){return this.#c.action("group.addAdmin",{id:this.#a,inboxId:e})}async removeAdmin(e){return this.#c.action("group.removeAdmin",{id:this.#a,inboxId:e})}async addSuperAdmin(e){return this.#c.action("group.addSuperAdmin",{id:this.#a,inboxId:e})}async removeSuperAdmin(e){return this.#c.action("group.removeSuperAdmin",{id:this.#a,inboxId:e})}async requestRemoval(){return this.#c.action("group.requestRemoval",{id:this.#a})}async isPendingRemoval(){return this.#c.action("group.isPendingRemoval",{id:this.#a})}}class $e{#w;#i;#c;constructor(e,t,n){this.#w=e,this.#c=t,this.#i=n}get topic(){return this.#w.installationId?`/xmtp/mls/1/w-${this.#w.installationId}/proto`:void 0}async sync(){return this.#c.action("conversations.sync")}async syncAll(e){return this.#c.action("conversations.syncAll",{consentStates:e})}async getConversationById(e){const t=await this.#c.action("conversations.getConversationById",{id:e});if(t)switch(t.metadata.conversationType){case D.Group:return new _e(this.#c,this.#i,t.id,t);case D.Dm:return new Ve(this.#c,this.#i,t.id,t);default:return}}async getMessageById(e){const t=await this.#c.action("conversations.getMessageById",{id:e});return t?new Ae(this.#i,t):void 0}async getDmByInboxId(e){const t=await this.#c.action("conversations.getDmByInboxId",{inboxId:e});return t?new Ve(this.#c,this.#i,t.id,t):void 0}async fetchDmByIdentifier(e){const t=await this.#c.action("client.getInboxIdByIdentifier",{identifier:e});if(t)return this.getDmByInboxId(t)}async list(e){return(await this.#c.action("conversations.list",{options:e})).map(e=>{switch(e.metadata.conversationType){case D.Dm:return new Ve(this.#c,this.#i,e.id,e);case D.Group:return new _e(this.#c,this.#i,e.id,e);default:return}}).filter(e=>void 0!==e)}async listGroups(e){return(await this.#c.action("conversations.listGroups",{options:e})).map(e=>new _e(this.#c,this.#i,e.id,e))}async listDms(e){return(await this.#c.action("conversations.listDms",{options:e})).map(e=>new Ve(this.#c,this.#i,e.id,e))}async createGroupOptimistic(e){const t=await this.#c.action("conversations.createGroupOptimistic",{options:e});return new _e(this.#c,this.#i,t.id,t)}async createGroupWithIdentifiers(e,t){const n=await this.#c.action("conversations.createGroupWithIdentifiers",{identifiers:e,options:t});return new _e(this.#c,this.#i,n.id,n)}async createGroup(e,t){const n=await this.#c.action("conversations.createGroup",{inboxIds:e,options:t});return new _e(this.#c,this.#i,n.id,n)}async createDmWithIdentifier(e,t){const n=await this.#c.action("conversations.createDmWithIdentifier",{identifier:e,options:t});return new Ve(this.#c,this.#i,n.id,n)}async createDm(e,t){const n=await this.#c.action("conversations.createDm",{inboxId:e,options:t});return new Ve(this.#c,this.#i,n.id,n)}async hmacKeys(){return this.#c.action("conversations.hmacKeys")}async stream(e){return Ge(async(t,n)=>{const s=We();return e?.disableSync||await this.sync(),await this.#c.action("conversations.stream",{streamId:s,conversationType:e?.conversationType}),this.#c.handleStreamMessage(s,t,{...e,onFail:n})},e=>{switch(e.metadata.conversationType){case D.Group:return new _e(this.#c,this.#i,e.id,e);case D.Dm:return new Ve(this.#c,this.#i,e.id,e);default:return void console.warn(`Unknown conversation type: ${e.metadata.conversationType}`)}},e)}async streamGroups(e){return this.stream({...e,conversationType:D.Group})}async streamDms(e){return this.stream({...e,conversationType:D.Dm})}async streamAllMessages(e){return Ge(async(t,n)=>{const s=We();return e?.disableSync||await this.sync(),await this.#c.action("conversations.streamAllMessages",{streamId:s,conversationType:e?.conversationType,consentStates:e?.consentStates}),this.#c.handleStreamMessage(s,t,{...e,onFail:n})},e=>new Ae(this.#i,e),e)}async streamAllGroupMessages(e){return this.streamAllMessages({...e,conversationType:D.Group})}async streamAllDmMessages(e){return this.streamAllMessages({...e,conversationType:D.Dm})}async streamMessageDeletions(e){return Ge(async t=>{const n=We();return await this.#c.action("conversations.streamDeletedMessages",{streamId:n}),this.#c.handleStreamMessage(n,t,e)},e=>e.id,e)}async streamDeletedMessages(e){return Ge(async t=>{const n=We();return await this.#c.action("conversations.streamDeletedMessages",{streamId:n}),this.#c.handleStreamMessage(n,t,e)},e=>new Ae(this.#i,e),e)}}class je{#c;constructor(e){this.#c=e}apiStatistics(){return this.#c.action("debugInformation.apiStatistics")}apiIdentityStatistics(){return this.#c.action("debugInformation.apiIdentityStatistics")}apiAggregateStatistics(){return this.#c.action("debugInformation.apiAggregateStatistics")}clearAllStatistics(){return this.#c.action("debugInformation.clearAllStatistics")}}class He{#c;constructor(e){this.#c=e}sync(){return this.#c.action("preferences.sync")}async inboxState(){return this.#c.action("preferences.inboxState",{refreshFromNetwork:!1})}async fetchInboxState(){return this.#c.action("preferences.inboxState",{refreshFromNetwork:!0})}async getInboxStates(e){return this.#c.action("preferences.getInboxStates",{inboxIds:e,refreshFromNetwork:!1})}async fetchInboxStates(e){return this.#c.action("preferences.getInboxStates",{inboxIds:e,refreshFromNetwork:!0})}async setConsentStates(e){return this.#c.action("preferences.setConsentStates",{records:e})}async getConsentState(e,t){return this.#c.action("preferences.getConsentState",{entityType:e,entity:t})}async streamConsent(e){return Ge(async(t,n)=>{const s=We();return e?.disableSync||await this.sync(),await this.#c.action("preferences.streamConsent",{streamId:s}),this.#c.handleStreamMessage(s,t,{...e,onFail:n})},void 0,e)}async streamPreferences(e){return Ge(async(t,n)=>{const s=We();return e?.disableSync||await this.sync(),await this.#c.action("preferences.streamPreferences",{streamId:s}),this.#c.handleStreamMessage(s,t,{...e,onFail:n})},void 0,e)}}const ze={local:M.Local,dev:M.Dev,production:M.Production,"testnet-staging":M.TestnetStaging,"testnet-dev":M.TestnetDev,testnet:M.Testnet,mainnet:M.Mainnet};M.Local,M.Dev,M.Production,M.TestnetStaging,M.TestnetDev,M.Testnet,M.Mainnet;const Xe=async t=>{await e();let n=new C(ze[t?.env??"dev"]);return t?.apiUrl&&(n=n.setApiUrl(t.apiUrl)),t?.gatewayHost&&(n=n.setGatewayHost(t.gatewayHost)),t?.appVersion&&(n=n.setAppVersion(t.appVersion)),n.build()},Je=async(t,n)=>(await e(),q(t,n)),Qe=async(t,n)=>(await e(),E(t,n)),Ye=async(t,n,s,i)=>{await e();const r=await n.getIdentifier(),{signatureText:a,signatureRequest:o}=await(async(t,n,s,i)=>{await e();const r=N(t,n,s,i);return{signatureText:await r.signatureText(),signatureRequest:r}})(t,r,s,i),c=await n.signMessage(a);switch(n.type){case"EOA":await o.addEcdsaSignature(c);break;case"SCW":await o.addScwSignature(r,c,n.getChainId(),n.getBlockNumber?.())}await B(t,o)},Ze=(e=_())=>{const t=V(e);return{type:"EOA",getIdentifier:()=>({identifier:t.address.toLowerCase(),identifierKind:P.Ethereum}),signMessage:async e=>{const n=await t.signMessage({message:e});return K(n)}}},et=(e,t,n)=>({type:"SCW",getIdentifier:()=>({identifier:e.toLowerCase(),identifierKind:P.Ethereum}),signMessage:async e=>{const n=await t(e);return K(n)},getChainId:()=>n}),tt=async(e,t)=>{switch(e.type){case"EOA":return{type:"EOA",identifier:await e.getIdentifier(),signature:t};case"SCW":return{type:"SCW",identifier:await e.getIdentifier(),signature:t,chainId:e.getChainId(),blockNumber:e.getBlockNumber?.()}}},nt=e=>{console.error(`[worker] error: ${e.message}`)};class st{#c;#m;#v=new Map;constructor(e,t){this.#c=e,this.#c.addEventListener("message",this.handleMessage),this.#c.addEventListener("error",nt),this.#m=t??!1}action(e,...t){const n=We();this.#c.postMessage({action:e,id:n,data:t[0]});return new Promise((e,t)=>{this.#v.set(n,{resolve:e,reject:t})})}handleMessage=e=>{const t=e.data;this.#m&&console.log("[worker] client received event data",t);const n=this.#v.get(t.id);n&&(this.#v.delete(t.id),"error"in t?n.reject(t.error):n.resolve(t.result))};handleStreamMessage=(e,t,n)=>{const s=s=>{const i=s.data;if(i.streamId===e){if("stream.fail"===i.action)return void n?.onFail?.();"error"in i?t(i.error,void 0):t(null,i.result)}};return this.#c.addEventListener("message",s),async()=>{await this.action("endStream",{streamId:e}),this.#c.removeEventListener("message",s)}};close(){this.#c.removeEventListener("message",this.handleMessage),this.#c.removeEventListener("error",nt),this.#c.terminate()}}const it=async(e,t)=>e instanceof F?e:Xe({env:e,gatewayHost:t});class rt{#k;#i;#I;#f;#x;#R;#A;#b;#S;#T=!1;#D;#M;#C;#q;#c;constructor(e){e&&Object.defineProperty(e,"codecs",{value:e.codecs,enumerable:!1});const t=new Worker(new URL("./workers/client",import.meta.url),{type:"module"}),n=void 0!==e?.loggingLevel&&e.loggingLevel!==U.Off;this.#c=new st(t,n),this.#i=new $([...e?.codecs??[]]),this.#M=e,this.#I=new $e(this,this.#c,this.#i),this.#f=new je(this.#c),this.#C=new He(this.#c)}async init(e){const t=await this.#c.action("client.init",{identifier:e,options:this.#M});this.#k=t.appVersion,this.#x=t.env,this.#R=e,this.#A=t.inboxId,this.#b=t.installationId,this.#S=t.installationIdBytes,this.#D=t.libxmtpVersion,this.#T=!0}close(){this.#c.close(),this.#T=!1}static async create(e,t){const n=new rt(t);return n.#q=e,await n.init(await e.getIdentifier()),t?.disableAutoRegister||await n.register(),n}static async build(e,t){const n=new rt({...t,disableAutoRegister:!0});return await n.init(e),n}get options(){return this.#M}get signer(){return this.#q}get isReady(){return this.#T}get inboxId(){return this.#A}get accountIdentifier(){return this.#R}get installationId(){return this.#b}get installationIdBytes(){return this.#S}get conversations(){return this.#I}get debugInformation(){return this.#f}get preferences(){return this.#C}get libxmtpVersion(){return this.#D}get appVersion(){return this.#k}get env(){return this.#x}async unsafe_createInboxSignatureText(){return this.#c.action("client.createInboxSignatureText",{signatureRequestId:We()})}async unsafe_addAccountSignatureText(e,t=!1){if(!t)throw new Ce;return this.#c.action("client.addAccountSignatureText",{newIdentifier:e,signatureRequestId:We()})}async unsafe_removeAccountSignatureText(e){return this.#c.action("client.removeAccountSignatureText",{identifier:e,signatureRequestId:We()})}async unsafe_revokeAllOtherInstallationsSignatureText(){return this.#c.action("client.revokeAllOtherInstallationsSignatureText",{signatureRequestId:We()})}async unsafe_revokeInstallationsSignatureText(e){return this.#c.action("client.revokeInstallationsSignatureText",{installationIds:e,signatureRequestId:We()})}async unsafe_changeRecoveryIdentifierSignatureText(e){return this.#c.action("client.changeRecoveryIdentifierSignatureText",{identifier:e,signatureRequestId:We()})}async unsafe_applySignatureRequest(e,t){return this.#c.action("client.applySignatureRequest",{signer:e,signatureRequestId:t})}async register(){if(!this.#q)throw new Me;const{signatureText:e,signatureRequestId:t}=await this.unsafe_createInboxSignatureText();if(!e||!t)return;const n=await this.#q.signMessage(e),s=await tt(this.#q,n);return this.#c.action("client.registerIdentity",{signer:s,signatureRequestId:t})}async unsafe_addAccount(e,t=!1){if(!this.#q)throw new Me;if(!t)throw new Ce;const n=await this.fetchInboxIdByIdentifier(await e.getIdentifier());if(n)throw new qe(n);const{signatureText:s,signatureRequestId:i}=await this.unsafe_addAccountSignatureText(await e.getIdentifier(),!0),r=await e.signMessage(s),a=await tt(e,r);return this.#c.action("client.addAccount",{identifier:a.identifier,signer:a,signatureRequestId:i})}async removeAccount(e){if(!this.#q)throw new Me;const{signatureText:t,signatureRequestId:n}=await this.unsafe_removeAccountSignatureText(e),s=await this.#q.signMessage(t),i=await tt(this.#q,s);return this.#c.action("client.removeAccount",{identifier:e,signer:i,signatureRequestId:n})}async revokeAllOtherInstallations(){if(!this.#q)throw new Me;const{signatureText:e,signatureRequestId:t}=await this.unsafe_revokeAllOtherInstallationsSignatureText();if(!e)return;const n=await this.#q.signMessage(e),s=await tt(this.#q,n);return this.#c.action("client.revokeAllOtherInstallations",{signer:s,signatureRequestId:t})}async revokeInstallations(e){if(!this.#q)throw new Me;const{signatureText:t,signatureRequestId:n}=await this.unsafe_revokeInstallationsSignatureText(e),s=await this.#q.signMessage(t),i=await tt(this.#q,s);return this.#c.action("client.revokeInstallations",{installationIds:e,signer:i,signatureRequestId:n})}static async revokeInstallations(e,t,n,s,i){const r=await it(s,i);await Ye(r,e,t,n)}static async fetchInboxStates(t,n,s){return(async(t,n)=>(await e(),O(t,n)))(await it(n,s),t)}async changeRecoveryIdentifier(e){if(!this.#q)throw new Me;const{signatureText:t,signatureRequestId:n}=await this.unsafe_changeRecoveryIdentifierSignatureText(e),s=await this.#q.signMessage(t),i=await tt(this.#q,s);return this.#c.action("client.changeRecoveryIdentifier",{identifier:e,signer:i,signatureRequestId:n})}async isRegistered(){return this.#c.action("client.isRegistered")}async canMessage(e){return this.#c.action("client.canMessage",{identifiers:e})}static async canMessage(e,t){const n=await it(t),s=new Map;for(const t of e){const e=await Qe(n,t);s.set(t.identifier.toLowerCase(),void 0!==e)}return s}async fetchInboxIdByIdentifier(e){return this.#c.action("client.getInboxIdByIdentifier",{identifier:e})}signWithInstallationKey(e){return this.#c.action("client.signWithInstallationKey",{signatureText:e})}verifySignedWithInstallationKey(e,t){return this.#c.action("client.verifySignedWithInstallationKey",{signatureText:e,signatureBytes:t})}verifySignedWithPublicKey(e,t,n){return this.#c.action("client.verifySignedWithPublicKey",{signatureText:e,signatureBytes:t,publicKey:n})}async fetchKeyPackageStatuses(e){return this.#c.action("client.fetchKeyPackageStatuses",{installationIds:e})}#E(){return{elements:[L.Consent,L.Messages],excludeDisappearingMessages:!1}}#O(){const e=this.#x??"dev";return H[e]}async sendSyncRequest(e,t){const n=e??this.#E(),s=t??this.#O();return this.#c.action("client.sendSyncRequest",{options:n,serverUrl:s})}async sendSyncArchive(e,t,n){const s=t??this.#E(),i=n??this.#O();return this.#c.action("client.sendSyncArchive",{options:s,serverUrl:i,pin:e})}async processSyncArchive(e){return this.#c.action("client.processSyncArchive",{archivePin:e})}async listAvailableArchives(e){return this.#c.action("client.listAvailableArchives",{daysCutoff:e})}async createArchive(e,t){const n=t??this.#E();return this.#c.action("client.createArchive",{opts:n,key:e})}async importArchive(e,t){return this.#c.action("client.importArchive",{data:e,key:t})}async archiveMetadata(e,t){return this.#c.action("client.archiveMetadata",{data:e,key:t})}async syncAllDeviceSyncGroups(){return this.#c.action("client.syncAllDeviceSyncGroups")}}class at{#c;#m;constructor(e){const t=new Worker(new URL("./workers/opfs",import.meta.url),{type:"module"});this.#c=new st(t,e),this.#m=e??!1}async init(){await this.#c.action("opfs.init",{enableLogging:this.#m})}close(){this.#c.close()}static async create(e){const t=new at(e);return await t.init(),t}async listFiles(){return this.#c.action("opfs.listFiles")}async fileCount(){return this.#c.action("opfs.fileCount")}async poolCapacity(){return this.#c.action("opfs.poolCapacity")}async fileExists(e){return this.#c.action("opfs.fileExists",{path:e})}async deleteFile(e){return this.#c.action("opfs.deleteFile",{path:e})}async exportDb(e){return this.#c.action("opfs.exportDb",{path:e})}async importDb(e,t){return this.#c.action("opfs.importDb",{path:e,data:t})}async clearAll(){return this.#c.action("opfs.clearAll")}}const ot=async t=>(await e(),G(t)),ct=async e=>({id:e.id,name:e.name,imageUrl:e.imageUrl,description:e.description,appData:e.appData,permissions:e.permissions(),addedByInboxId:e.addedByInboxId,metadata:await e.metadata(),admins:e.listAdmins(),superAdmins:e.listSuperAdmins(),createdAtNs:e.createdAtNs}),dt=e=>"xmtp.org"===e.contentType.authorityId&&"reaction"===e.contentType.typeId,ut=e=>"xmtp.org"===e.contentType.authorityId&&"reply"===e.contentType.typeId,ht=e=>ut(e)&&"string"==typeof e.content?.content,pt=e=>"xmtp.org"===e.contentType.authorityId&&"text"===e.contentType.typeId,lt=e=>"xmtp.org"===e.contentType.authorityId&&"remoteStaticAttachment"===e.contentType.typeId,yt=e=>"xmtp.org"===e.contentType.authorityId&&"attachment"===e.contentType.typeId,gt=e=>"xmtp.org"===e.contentType.authorityId&&"multiRemoteStaticAttachment"===e.contentType.typeId,wt=e=>"xmtp.org"===e.contentType.authorityId&&"transactionReference"===e.contentType.typeId,mt=e=>"xmtp.org"===e.contentType.authorityId&&"group_updated"===e.contentType.typeId,vt=e=>"xmtp.org"===e.contentType.authorityId&&"readReceipt"===e.contentType.typeId,kt=e=>"xmtp.org"===e.contentType.authorityId&&"leave_request"===e.contentType.typeId,It=e=>"xmtp.org"===e.contentType.authorityId&&"walletSendCalls"===e.contentType.typeId,ft=e=>"coinbase.com"===e.contentType.authorityId&&"intent"===e.contentType.typeId,xt=e=>"coinbase.com"===e.contentType.authorityId&&"actions"===e.contentType.typeId,Rt=e=>"xmtp.org"===e.contentType.authorityId&&"markdown"===e.contentType.typeId;export{qe as AccountAlreadyAssociatedError,j as ApiUrls,rt as Client,De as ClientNotInitializedError,Ke as Conversation,$e as Conversations,Ae as DecodedMessage,Ve as Dm,_e as Group,Ee as GroupNotFoundError,H as HistorySyncUrls,Ce as InboxReassignError,at as Opfs,Ue as OpfsInitializationError,Pe as OpfsNotInitializedError,Me as SignerUnavailableError,Be as StreamFailedError,Ne as StreamInvalidRetryAttemptsError,Oe as StreamNotFoundError,ae as contentTypeActions,oe as contentTypeAttachment,ce as contentTypeGroupUpdated,de as contentTypeIntent,ue as contentTypeLeaveRequest,he as contentTypeMarkdown,pe as contentTypeMultiRemoteAttachment,le as contentTypeReaction,ye as contentTypeReadReceipt,ge as contentTypeRemoteAttachment,we as contentTypeReply,me as contentTypeText,ve as contentTypeTransactionReference,ke as contentTypeWalletSendCalls,Xe as createBackend,Ze as createEOASigner,et as createSCWSigner,fe as decryptAttachment,X as encodeActions,J as encodeAttachment,Q as encodeIntent,Y as encodeMarkdown,Z as encodeMultiRemoteAttachment,ee as encodeReaction,te as encodeReadReceipt,ne as encodeRemoteAttachment,se as encodeText,ie as encodeTransactionReference,re as encodeWalletSendCalls,Ie as encryptAttachment,Je as generateInboxId,Qe as getInboxIdForIdentifier,xt as isActions,yt as isAttachment,mt as isGroupUpdated,ft as isIntent,kt as isLeaveRequest,Rt as isMarkdown,gt as isMultiRemoteAttachment,dt as isReaction,vt as isReadReceipt,lt as isRemoteAttachment,ut as isReply,pt as isText,ht as isTextReply,wt as isTransactionReference,It as isWalletSendCalls,ot as metadataFieldName,ct as toSafeConversation,tt as toSafeSigner};
|
|
1
|
+
import e,{encodeActions as t,encodeAttachment as n,encodeIntent as s,encodeMarkdown as i,encodeMultiRemoteAttachment as r,encodeReaction as a,encodeReadReceipt as o,encodeRemoteAttachment as c,encodeText as d,encodeTransactionReference as u,encodeWalletSendCalls as h,contentTypeActions as p,contentTypeAttachment as l,contentTypeGroupUpdated as y,contentTypeIntent as g,contentTypeLeaveRequest as w,contentTypeMarkdown as m,contentTypeMultiRemoteAttachment as v,contentTypeReaction as k,contentTypeReadReceipt as f,contentTypeRemoteAttachment as I,contentTypeReply as b,contentTypeText as x,contentTypeTransactionReference as R,contentTypeWalletSendCalls as A,encryptAttachment as S,decryptAttachment as T,ConversationType as D,XmtpEnv as M,BackendBuilder as C,getInboxIdForIdentifier as E,generateInboxId as O,DeviceSyncMode as q,createClientWithBackend as B,inboxStateFromInboxIds as L,applySignatureRequest as U,revokeInstallationsSignatureRequest as P,IdentifierKind as N,LogLevel as F,BackupElementSelectionOption as G,Backend as K,metadataFieldName as V}from"@xmtp/wasm-bindings";export{ActionStyle,BackupElementSelectionOption,ConsentEntityType,ConsentState,ContentType,ConversationType,DeliveryStatus,GroupMembershipState,GroupMessageKind,GroupPermissionsOptions,IdentifierKind,ListConversationsOrderBy,LogLevel,MessageSortBy,MetadataField,PermissionLevel,PermissionPolicy,PermissionUpdateType,ReactionAction,ReactionSchema,SortDirection,WorkerKind}from"@xmtp/wasm-bindings";import{contentTypeToString as W}from"@xmtp/content-type-primitives";import{toBytes as $}from"viem";import{privateKeyToAccount as _,generatePrivateKey as j}from"viem/accounts";class H{#e;constructor(e){this.#e=new Map(e.map(e=>[W(e.contentType),e]))}getCodec(e){return this.#e.get(W(e))}}const z={local:"http://localhost:5557",dev:"https://api.dev.xmtp.network:5558",production:"https://api.production.xmtp.network:5558"},X={local:"http://localhost:5558",dev:"https://message-history.dev.ephemera.network",production:"https://message-history.production.ephemera.network","testnet-staging":"https://message-history.dev.ephemera.network","testnet-dev":"https://message-history.dev.ephemera.network",testnet:"https://message-history.dev.ephemera.network",mainnet:"https://message-history.production.ephemera.network"},J=t=>async(...n)=>(await e(),t(...n)),Q=J(t),Y=J(n),Z=J(s),ee=J(i),te=J(r),ne=J(a),se=J(o),ie=J(c),re=J(d),ae=J(u),oe=J(h),ce=J(p),de=J(l),ue=J(y),he=J(g),pe=J(w),le=J(m),ye=J(v),ge=J(k),we=J(f),me=J(I),ve=J(b),ke=J(x),fe=J(R),Ie=J(A),be=J(S),xe=J(T);function Re(e){return new Date(Number(e/1000000n))}const Ae=e=>{switch(e.type){case"text":case"markdown":case"reply":case"reaction":case"attachment":case"remoteAttachment":case"multiRemoteAttachment":case"transactionReference":case"groupUpdated":case"readReceipt":case"leaveRequest":case"walletSendCalls":case"intent":case"actions":case"deletedMessage":case"custom":return e.content;default:return null}};class Se{content;contentType;conversationId;deliveryStatus;expiresAtNs;expiresAt;fallback;id;kind;numReplies;reactions;senderInboxId;sentAt;sentAtNs;constructor(e,t){switch(this.id=t.id,this.expiresAtNs=t.expiresAtNs,this.expiresAt=t.expiresAtNs?Re(t.expiresAtNs):void 0,this.sentAtNs=t.sentAtNs,this.sentAt=Re(t.sentAtNs),this.conversationId=t.conversationId,this.senderInboxId=t.senderInboxId,this.contentType=t.contentType,this.fallback=t.fallback??void 0,this.kind=t.kind,this.deliveryStatus=t.deliveryStatus,this.numReplies=t.numReplies,this.reactions=t.reactions.map(t=>new Se(e,t)),this.content=Ae(t.content)??void 0,t.content.type){case"reply":{const n=t.content.content;let s=Ae(n.content);if("custom"===n.content.type){const t=e.getCodec(n.content.content.type);if(t)try{s=t.decode(s)}catch(e){e instanceof Error?console.warn(`Error decoding custom content: ${e.message}`):console.warn("Error decoding custom content")}}this.content={referenceId:n.referenceId,content:s,contentType:()=>(async e=>{switch(e.type){case"text":return ke();case"markdown":return le();case"reply":return ve();case"reaction":return ge();case"attachment":return de();case"remoteAttachment":return me();case"multiRemoteAttachment":return ye();case"transactionReference":return fe();case"groupUpdated":return ue();case"readReceipt":return we();case"leaveRequest":return pe();case"walletSendCalls":return Ie();case"intent":return he();case"actions":return ce();case"deletedMessage":default:return;case"custom":return e.content.type}})(n.content),inReplyTo:n.inReplyTo?new Se(e,n.inReplyTo):null};break}case"custom":{const n=t.content.content,s=e.getCodec(this.contentType);if(s)try{this.content=s.decode(n)}catch(e){e instanceof Error?console.warn(`Error decoding custom content: ${e.message}`):console.warn("Error decoding custom content"),this.content=void 0}else console.warn(`No codec found for content type "${W(this.contentType)}"`),this.content=void 0;break}}}}class Te{isDone=!1;#t=[];#n;onDone;onReturn;constructor(){this.#n=[],this.isDone=!1}flush(){for(;this.#t.length>0;){const e=this.#t.shift();e&&e({done:!0,value:void 0})}}done(){this.flush(),this.#n=[],this.#t=[],this.isDone=!0,this.onDone?.()}push=e=>{if(this.isDone)return;const t=this.#t.shift();t?t({done:!1,value:e}):this.#n.push(e)};next=()=>this.isDone?Promise.resolve({done:!0,value:void 0}):this.#n.length>0?Promise.resolve({done:!1,value:this.#n.shift()}):new Promise(e=>{this.#t.push(e)});return=()=>(this.onReturn?.(),this.done(),Promise.resolve({done:!0,value:void 0}));end=()=>this.return();[Symbol.asyncIterator](){return this}}const De=["end","isDone","next","return",Symbol.asyncIterator],Me=e=>De.includes(e);class Ce extends Error{constructor(){super("Client not initialized, use Client.create or Client.build to create a client")}}class Ee extends Error{constructor(){super("Signer unavailable, use Client.create to create a client with a signer")}}class Oe extends Error{constructor(){super("Unable to create add account signature text, `allowInboxReassign` must be true")}}class qe extends Error{constructor(e){super(`Account already associated with inbox ${e}`)}}class Be extends Error{constructor(e){super(`Group "${e}" not found`)}}class Le extends Error{constructor(e){super(`Stream "${e}" not found`)}}class Ue extends Error{constructor(e){super(`Stream failed, retried ${e} ${"time"+(1!==e?"s":"")}`)}}class Pe extends Error{constructor(){super("Stream retry attempts must be greater than 0")}}class Ne extends Error{constructor(){super("OPFS must be initialized before accessing its methods")}}class Fe extends Error{constructor(){super("Failed to initialize OPFS, ensure that there are no other active XMTP clients or Opfs instances")}}const Ge=1e4,Ke=6,Ve=async(e,t,n)=>{const{onEnd:s,onError:i,onFail:r,onRestart:a,onRetry:o,onValue:c,retryAttempts:d=Ke,retryDelay:u=Ge,retryOnFail:h=!0}=n??{};if(h&&d<0)throw new Pe;const p=new Te,l=(e,n)=>{if(e)i?.(e);else if(void 0!==n)try{if(t){const e=t(n);(e=>!!e&&("object"==typeof e||"function"==typeof e)&&"then"in e&&"function"==typeof e.then)(e)?e.then(e=>{void 0!==e&&(p.push(e),c?.(e))}).catch(e=>{i?.(e)}):void 0!==e&&(p.push(e),c?.(e))}else p.push(n),c?.(n)}catch(e){i?.(e)}},y=async(t=d)=>{try{if(0===t)throw p.end(),new Ue(d);await(n=u,new Promise(e=>setTimeout(e,n))),o?.(d-t+1,d);const i=await e(l,()=>{r?.(),y()});p.onDone=()=>{i(),s?.()},a?.()}catch(e){i?.(e),y(t-1)}var n},g=()=>{if(!h)throw p.end(),new Ue(0);y()};try{const t=await e(l,()=>{r?.(),g()});p.onDone=()=>{t(),s?.()}}catch(e){i?.(e),g()}return new Proxy(p,{get(e,t,n){if(Me(t))return Reflect.get(e,t,n)},set:()=>!0,has:(e,t)=>Me(t),ownKeys:()=>De,getOwnPropertyDescriptor(e,t){if(Me(t))return{enumerable:!0,configurable:!0,value:Reflect.get(e,t)}}})},We=()=>{const e=new Uint8Array(16);return crypto.getRandomValues(e),Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")};class $e{#s;#i;#r;#a;#o;#c;constructor(e,t,n,s){this.#c=e,this.#i=t,this.#a=n,this.#d(s)}#d(e){this.#s=e?.addedByInboxId,this.#o=e?.metadata,this.#r=e?.createdAtNs}get id(){return this.#a}get addedByInboxId(){return this.#s}get createdAtNs(){return this.#r}get createdAt(){return this.#r?Re(this.#r):void 0}get metadata(){return this.#o}get topic(){return`/xmtp/mls/1/g-${this.id}/proto`}async lastMessage(){const e=await this.#c.action("conversation.lastMessage",{id:this.#a});return e?new Se(this.#i,e):void 0}async isActive(){return this.#c.action("conversation.isActive",{id:this.#a})}async members(){return this.#c.action("conversation.members",{id:this.#a})}async sync(){const e=await this.#c.action("conversation.sync",{id:this.#a});return this.#d(e),e}async publishMessages(){return this.#c.action("conversation.publishMessages",{id:this.#a})}async processStreamedMessage(e){return this.#c.action("conversation.processStreamedMessage",{id:this.#a,envelopeBytes:e})}async send(e,t){return this.#c.action("conversation.send",{id:this.#a,content:e,options:t})}async sendText(e,t){return this.#c.action("conversation.sendText",{id:this.#a,text:e,isOptimistic:t})}async sendMarkdown(e,t){return this.#c.action("conversation.sendMarkdown",{id:this.#a,markdown:e,isOptimistic:t})}async sendReaction(e,t){return this.#c.action("conversation.sendReaction",{id:this.#a,reaction:e,isOptimistic:t})}async sendReadReceipt(e){return this.#c.action("conversation.sendReadReceipt",{id:this.#a,isOptimistic:e})}async sendReply(e,t){return this.#c.action("conversation.sendReply",{id:this.#a,reply:e,isOptimistic:t})}async sendTransactionReference(e,t){return this.#c.action("conversation.sendTransactionReference",{id:this.#a,transactionReference:e,isOptimistic:t})}async sendWalletSendCalls(e,t){return this.#c.action("conversation.sendWalletSendCalls",{id:this.#a,walletSendCalls:e,isOptimistic:t})}async sendActions(e,t){return this.#c.action("conversation.sendActions",{id:this.#a,actions:e,isOptimistic:t})}async sendIntent(e,t){return this.#c.action("conversation.sendIntent",{id:this.#a,intent:e,isOptimistic:t})}async sendAttachment(e,t){return this.#c.action("conversation.sendAttachment",{id:this.#a,attachment:e,isOptimistic:t})}async sendMultiRemoteAttachment(e,t){return this.#c.action("conversation.sendMultiRemoteAttachment",{id:this.#a,multiRemoteAttachment:e,isOptimistic:t})}async sendRemoteAttachment(e,t){return this.#c.action("conversation.sendRemoteAttachment",{id:this.#a,remoteAttachment:e,isOptimistic:t})}async messages(e){return(await this.#c.action("conversation.messages",{id:this.#a,options:e})).map(e=>new Se(this.#i,e))}async countMessages(e){return await this.#c.action("conversation.countMessages",{id:this.#a,options:e})}async consentState(){return this.#c.action("conversation.consentState",{id:this.#a})}async updateConsentState(e){return this.#c.action("conversation.updateConsentState",{id:this.#a,state:e})}async messageDisappearingSettings(){return this.#c.action("conversation.messageDisappearingSettings",{id:this.#a})}async updateMessageDisappearingSettings(e,t){return this.#c.action("conversation.updateMessageDisappearingSettings",{id:this.#a,fromNs:e,inNs:t})}async removeMessageDisappearingSettings(){return this.#c.action("conversation.removeMessageDisappearingSettings",{id:this.#a})}async isMessageDisappearingEnabled(){return this.#c.action("conversation.isMessageDisappearingEnabled",{id:this.#a})}async stream(e){return Ve(async(t,n)=>{const s=We();return e?.disableSync||await this.sync(),await this.#c.action("conversation.stream",{groupId:this.#a,streamId:s}),this.#c.handleStreamMessage(s,t,{...e,onFail:n})},e=>new Se(this.#i,e),e)}async pausedForVersion(){return this.#c.action("conversation.pausedForVersion",{id:this.#a})}async hmacKeys(){return this.#c.action("conversation.hmacKeys",{id:this.#a})}async debugInfo(){return this.#c.action("conversation.debugInfo",{id:this.#a})}async lastReadTimes(){return this.#c.action("conversation.lastReadTimes",{id:this.#a})}}class _e extends $e{#i;#c;#a;constructor(e,t,n,s){super(e,t,n,s),this.#c=e,this.#i=t,this.#a=n}async peerInboxId(){return this.#c.action("dm.peerInboxId",{id:this.#a})}async duplicateDms(){return(await this.#c.action("dm.duplicateDms",{id:this.#a})).map(e=>new _e(this.#c,this.#i,e.id,e))}}class je extends $e{#u=[];#h;#c;#p;#a;#l;#y;#g=[];#d(e){this.#y=e?.name??"",this.#l=e?.imageUrl??"",this.#p=e?.description??"",this.#h=e?.appData??"",this.#u=e?.admins??[],this.#g=e?.superAdmins??[]}constructor(e,t,n,s){super(e,t,n,s),this.#c=e,this.#a=n,this.#d(s)}async sync(){const e=await super.sync();return this.#d(e),e}get name(){return this.#y}async updateName(e){await this.#c.action("group.updateName",{id:this.#a,name:e}),this.#y=e}get imageUrl(){return this.#l}async updateImageUrl(e){await this.#c.action("group.updateImageUrl",{id:this.#a,imageUrl:e}),this.#l=e}get description(){return this.#p}async updateDescription(e){await this.#c.action("group.updateDescription",{id:this.#a,description:e}),this.#p=e}get appData(){return this.#h}async updateAppData(e){await this.#c.action("group.updateAppData",{id:this.#a,appData:e}),this.#h=e}get admins(){return this.#u}get superAdmins(){return this.#g}async listAdmins(){const e=await this.#c.action("group.listAdmins",{id:this.#a});return this.#u=e,e}async listSuperAdmins(){const e=await this.#c.action("group.listSuperAdmins",{id:this.#a});return this.#g=e,e}async permissions(){return this.#c.action("group.permissions",{id:this.#a})}async updatePermission(e,t,n){return this.#c.action("group.updatePermission",{id:this.#a,permissionType:e,policy:t,metadataField:n})}async isAdmin(e){return(await this.listAdmins()).includes(e)}async isSuperAdmin(e){return(await this.listSuperAdmins()).includes(e)}async addMembersByIdentifiers(e){return this.#c.action("group.addMembersByIdentifiers",{id:this.#a,identifiers:e})}async addMembers(e){return this.#c.action("group.addMembers",{id:this.#a,inboxIds:e})}async removeMembersByIdentifiers(e){return this.#c.action("group.removeMembersByIdentifiers",{id:this.#a,identifiers:e})}async removeMembers(e){return this.#c.action("group.removeMembers",{id:this.#a,inboxIds:e})}async addAdmin(e){return this.#c.action("group.addAdmin",{id:this.#a,inboxId:e})}async removeAdmin(e){return this.#c.action("group.removeAdmin",{id:this.#a,inboxId:e})}async addSuperAdmin(e){return this.#c.action("group.addSuperAdmin",{id:this.#a,inboxId:e})}async removeSuperAdmin(e){return this.#c.action("group.removeSuperAdmin",{id:this.#a,inboxId:e})}async requestRemoval(){return this.#c.action("group.requestRemoval",{id:this.#a})}async isPendingRemoval(){return this.#c.action("group.isPendingRemoval",{id:this.#a})}}class He{#w;#i;#c;constructor(e,t,n){this.#w=e,this.#c=t,this.#i=n}get topic(){return this.#w.installationId?`/xmtp/mls/1/w-${this.#w.installationId}/proto`:void 0}async sync(){return this.#c.action("conversations.sync")}async syncAll(e){return this.#c.action("conversations.syncAll",{consentStates:e})}async getConversationById(e){const t=await this.#c.action("conversations.getConversationById",{id:e});if(t)switch(t.metadata.conversationType){case D.Group:return new je(this.#c,this.#i,t.id,t);case D.Dm:return new _e(this.#c,this.#i,t.id,t);default:return}}async getMessageById(e){const t=await this.#c.action("conversations.getMessageById",{id:e});return t?new Se(this.#i,t):void 0}async getDmByInboxId(e){const t=await this.#c.action("conversations.getDmByInboxId",{inboxId:e});return t?new _e(this.#c,this.#i,t.id,t):void 0}async fetchDmByIdentifier(e){const t=await this.#c.action("client.getInboxIdByIdentifier",{identifier:e});if(t)return this.getDmByInboxId(t)}async list(e){return(await this.#c.action("conversations.list",{options:e})).map(e=>{switch(e.metadata.conversationType){case D.Dm:return new _e(this.#c,this.#i,e.id,e);case D.Group:return new je(this.#c,this.#i,e.id,e);default:return}}).filter(e=>void 0!==e)}async listGroups(e){return(await this.#c.action("conversations.listGroups",{options:e})).map(e=>new je(this.#c,this.#i,e.id,e))}async listDms(e){return(await this.#c.action("conversations.listDms",{options:e})).map(e=>new _e(this.#c,this.#i,e.id,e))}async createGroupOptimistic(e){const t=await this.#c.action("conversations.createGroupOptimistic",{options:e});return new je(this.#c,this.#i,t.id,t)}async createGroupWithIdentifiers(e,t){const n=await this.#c.action("conversations.createGroupWithIdentifiers",{identifiers:e,options:t});return new je(this.#c,this.#i,n.id,n)}async createGroup(e,t){const n=await this.#c.action("conversations.createGroup",{inboxIds:e,options:t});return new je(this.#c,this.#i,n.id,n)}async createDmWithIdentifier(e,t){const n=await this.#c.action("conversations.createDmWithIdentifier",{identifier:e,options:t});return new _e(this.#c,this.#i,n.id,n)}async createDm(e,t){const n=await this.#c.action("conversations.createDm",{inboxId:e,options:t});return new _e(this.#c,this.#i,n.id,n)}async hmacKeys(){return this.#c.action("conversations.hmacKeys")}async stream(e){return Ve(async(t,n)=>{const s=We();return e?.disableSync||await this.sync(),await this.#c.action("conversations.stream",{streamId:s,conversationType:e?.conversationType}),this.#c.handleStreamMessage(s,t,{...e,onFail:n})},e=>{switch(e.metadata.conversationType){case D.Group:return new je(this.#c,this.#i,e.id,e);case D.Dm:return new _e(this.#c,this.#i,e.id,e);default:return void console.warn(`Unknown conversation type: ${e.metadata.conversationType}`)}},e)}async streamGroups(e){return this.stream({...e,conversationType:D.Group})}async streamDms(e){return this.stream({...e,conversationType:D.Dm})}async streamAllMessages(e){return Ve(async(t,n)=>{const s=We();return e?.disableSync||await this.sync(),await this.#c.action("conversations.streamAllMessages",{streamId:s,conversationType:e?.conversationType,consentStates:e?.consentStates}),this.#c.handleStreamMessage(s,t,{...e,onFail:n})},e=>new Se(this.#i,e),e)}async streamAllGroupMessages(e){return this.streamAllMessages({...e,conversationType:D.Group})}async streamAllDmMessages(e){return this.streamAllMessages({...e,conversationType:D.Dm})}async streamMessageDeletions(e){return Ve(async t=>{const n=We();return await this.#c.action("conversations.streamDeletedMessages",{streamId:n}),this.#c.handleStreamMessage(n,t,e)},e=>e.id,e)}async streamDeletedMessages(e){return Ve(async t=>{const n=We();return await this.#c.action("conversations.streamDeletedMessages",{streamId:n}),this.#c.handleStreamMessage(n,t,e)},e=>new Se(this.#i,e),e)}}class ze{#c;constructor(e){this.#c=e}apiStatistics(){return this.#c.action("debugInformation.apiStatistics")}apiIdentityStatistics(){return this.#c.action("debugInformation.apiIdentityStatistics")}apiAggregateStatistics(){return this.#c.action("debugInformation.apiAggregateStatistics")}clearAllStatistics(){return this.#c.action("debugInformation.clearAllStatistics")}}class Xe{#c;constructor(e){this.#c=e}sync(){return this.#c.action("preferences.sync")}async inboxState(){return this.#c.action("preferences.inboxState",{refreshFromNetwork:!1})}async fetchInboxState(){return this.#c.action("preferences.inboxState",{refreshFromNetwork:!0})}async getInboxStates(e){return this.#c.action("preferences.getInboxStates",{inboxIds:e,refreshFromNetwork:!1})}async fetchInboxStates(e){return this.#c.action("preferences.getInboxStates",{inboxIds:e,refreshFromNetwork:!0})}async setConsentStates(e){return this.#c.action("preferences.setConsentStates",{records:e})}async getConsentState(e,t){return this.#c.action("preferences.getConsentState",{entityType:e,entity:t})}async streamConsent(e){return Ve(async(t,n)=>{const s=We();return e?.disableSync||await this.sync(),await this.#c.action("preferences.streamConsent",{streamId:s}),this.#c.handleStreamMessage(s,t,{...e,onFail:n})},void 0,e)}async streamPreferences(e){return Ve(async(t,n)=>{const s=We();return e?.disableSync||await this.sync(),await this.#c.action("preferences.streamPreferences",{streamId:s}),this.#c.handleStreamMessage(s,t,{...e,onFail:n})},void 0,e)}}const Je={local:M.Local,dev:M.Dev,production:M.Production,"testnet-staging":M.TestnetStaging,"testnet-dev":M.TestnetDev,testnet:M.Testnet,mainnet:M.Mainnet},Qe={[M.Local]:"local",[M.Dev]:"dev",[M.Production]:"production",[M.TestnetStaging]:"testnet-staging",[M.TestnetDev]:"testnet-dev",[M.Testnet]:"testnet",[M.Mainnet]:"mainnet"},Ye=async t=>{await e();let n=new C(Je[t?.env??"dev"]);return t?.apiUrl&&(n=n.setApiUrl(t.apiUrl)),t?.gatewayHost&&(n=n.setGatewayHost(t.gatewayHost)),t?.appVersion&&(n=n.setAppVersion(t.appVersion)),n.build()},Ze=["env","apiUrl","gatewayHost","appVersion"],et=async(e,t)=>{const n=await(async e=>{if(!e)return Ye();if((e=>"backend"in e)(e)){const t=Ze.filter(t=>t in e&&null!=e[t]);if(t.length>0)throw new Error(`Cannot specify both 'backend' and network options (${t.join(", ")}). Use either a pre-built Backend or network options, not both.`);return e.backend}return Ye(e)})(t),s=await E(n,e)||O(e),i=(r=n.env,Qe[r]);var r;const a=void 0===t?.dbPath?`xmtp-${i}-${s}.db3`:t.dbPath,o=t&&(void 0!==t.loggingLevel||t.structuredLogging||t.performanceLogging),c=t?.disableDeviceSync?q.Disabled:q.Enabled;return{client:await B(n,s,e,a,t?.dbEncryptionKey,c,t?.workerConfig,o?{structured:t.structuredLogging??!1,performance:t.performanceLogging??!1,level:t.loggingLevel}:void 0,void 0,void 0),env:i}},tt=async(t,n)=>(await e(),O(t,n)),nt=async(t,n)=>(await e(),E(t,n)),st=async(t,n,s,i)=>{await e();const r=await n.getIdentifier(),{signatureText:a,signatureRequest:o}=await(async(t,n,s,i)=>{await e();const r=P(t,n,s,i);return{signatureText:await r.signatureText(),signatureRequest:r}})(t,r,s,i),c=await n.signMessage(a);switch(n.type){case"EOA":await o.addEcdsaSignature(c);break;case"SCW":await o.addScwSignature(r,c,n.getChainId(),n.getBlockNumber?.())}await U(t,o)},it=(e=j())=>{const t=_(e);return{type:"EOA",getIdentifier:()=>({identifier:t.address.toLowerCase(),identifierKind:N.Ethereum}),signMessage:async e=>{const n=await t.signMessage({message:e});return $(n)}}},rt=(e,t,n)=>({type:"SCW",getIdentifier:()=>({identifier:e.toLowerCase(),identifierKind:N.Ethereum}),signMessage:async e=>{const n=await t(e);return $(n)},getChainId:()=>n}),at=async(e,t)=>{switch(e.type){case"EOA":return{type:"EOA",identifier:await e.getIdentifier(),signature:t};case"SCW":return{type:"SCW",identifier:await e.getIdentifier(),signature:t,chainId:e.getChainId(),blockNumber:e.getBlockNumber?.()}}},ot=e=>{console.error(`[worker] error: ${e.message}`)};class ct{#c;#m;#v=new Map;constructor(e,t){this.#c=e,this.#c.addEventListener("message",this.handleMessage),this.#c.addEventListener("error",ot),this.#m=t??!1}action(e,...t){const n=We();this.#c.postMessage({action:e,id:n,data:t[0]});return new Promise((e,t)=>{this.#v.set(n,{resolve:e,reject:t})})}handleMessage=e=>{const t=e.data;this.#m&&console.log("[worker] client received event data",t);const n=this.#v.get(t.id);n&&(this.#v.delete(t.id),"error"in t?n.reject(t.error):n.resolve(t.result))};handleStreamMessage=(e,t,n)=>{const s=s=>{const i=s.data;if(i.streamId===e){if("stream.fail"===i.action)return void n?.onFail?.();"error"in i?t(i.error,void 0):t(null,i.result)}};return this.#c.addEventListener("message",s),async()=>{await this.action("endStream",{streamId:e}),this.#c.removeEventListener("message",s)}};close(){this.#c.removeEventListener("message",this.handleMessage),this.#c.removeEventListener("error",ot),this.#c.terminate()}}const dt=async(e,t)=>e instanceof K?e:Ye({env:e,gatewayHost:t}),ut=e=>e instanceof Map?e:new Map(Object.entries(e));class ht{#k;#i;#f;#I;#b;#x;#R;#A;#S;#T=!1;#D;#M;#C;#E;#c;constructor(e){e&&Object.defineProperty(e,"codecs",{value:e.codecs,enumerable:!1});const t=new Worker(new URL("./workers/client",import.meta.url),{type:"module"}),n=void 0!==e?.loggingLevel&&e.loggingLevel!==F.Off;this.#c=new ct(t,n),this.#i=new H([...e?.codecs??[]]),this.#M=e,this.#f=new He(this,this.#c,this.#i),this.#I=new ze(this.#c),this.#C=new Xe(this.#c)}async init(e){const t=await this.#c.action("client.init",{identifier:e,options:this.#M});this.#k=t.appVersion,this.#b=t.env,this.#x=e,this.#R=t.inboxId,this.#A=t.installationId,this.#S=t.installationIdBytes,this.#D=t.libxmtpVersion,this.#T=!0}close(){this.#c.close(),this.#T=!1}static async create(e,t){const n=new ht(t);return n.#E=e,await n.init(await e.getIdentifier()),t?.disableAutoRegister||await n.register(),n}static async build(e,t){const n=new ht({...t,disableAutoRegister:!0});return await n.init(e),n}get options(){return this.#M}get signer(){return this.#E}get isReady(){return this.#T}get inboxId(){return this.#R}get accountIdentifier(){return this.#x}get installationId(){return this.#A}get installationIdBytes(){return this.#S}get conversations(){return this.#f}get debugInformation(){return this.#I}get preferences(){return this.#C}get libxmtpVersion(){return this.#D}get appVersion(){return this.#k}get env(){return this.#b}async unsafe_createInboxSignatureText(){return this.#c.action("client.createInboxSignatureText",{signatureRequestId:We()})}async unsafe_addAccountSignatureText(e,t=!1){if(!t)throw new Oe;return this.#c.action("client.addAccountSignatureText",{newIdentifier:e,signatureRequestId:We()})}async unsafe_removeAccountSignatureText(e){return this.#c.action("client.removeAccountSignatureText",{identifier:e,signatureRequestId:We()})}async unsafe_revokeAllOtherInstallationsSignatureText(){return this.#c.action("client.revokeAllOtherInstallationsSignatureText",{signatureRequestId:We()})}async unsafe_revokeInstallationsSignatureText(e){return this.#c.action("client.revokeInstallationsSignatureText",{installationIds:e,signatureRequestId:We()})}async unsafe_changeRecoveryIdentifierSignatureText(e){return this.#c.action("client.changeRecoveryIdentifierSignatureText",{identifier:e,signatureRequestId:We()})}async unsafe_applySignatureRequest(e,t){return this.#c.action("client.applySignatureRequest",{signer:e,signatureRequestId:t})}async register(){if(!this.#E)throw new Ee;const{signatureText:e,signatureRequestId:t}=await this.unsafe_createInboxSignatureText();if(!e||!t)return;const n=await this.#E.signMessage(e),s=await at(this.#E,n);return this.#c.action("client.registerIdentity",{signer:s,signatureRequestId:t,waitForRegistrationVisible:this.#M?.waitForRegistrationVisible})}async unsafe_addAccount(e,t=!1){if(!this.#E)throw new Ee;if(!t)throw new Oe;const n=await this.fetchInboxIdByIdentifier(await e.getIdentifier());if(n)throw new qe(n);const{signatureText:s,signatureRequestId:i}=await this.unsafe_addAccountSignatureText(await e.getIdentifier(),!0),r=await e.signMessage(s),a=await at(e,r);return this.#c.action("client.addAccount",{identifier:a.identifier,signer:a,signatureRequestId:i})}async removeAccount(e){if(!this.#E)throw new Ee;const{signatureText:t,signatureRequestId:n}=await this.unsafe_removeAccountSignatureText(e),s=await this.#E.signMessage(t),i=await at(this.#E,s);return this.#c.action("client.removeAccount",{identifier:e,signer:i,signatureRequestId:n})}async revokeAllOtherInstallations(){if(!this.#E)throw new Ee;const{signatureText:e,signatureRequestId:t}=await this.unsafe_revokeAllOtherInstallationsSignatureText();if(!e)return;const n=await this.#E.signMessage(e),s=await at(this.#E,n);return this.#c.action("client.revokeAllOtherInstallations",{signer:s,signatureRequestId:t})}async revokeInstallations(e){if(!this.#E)throw new Ee;const{signatureText:t,signatureRequestId:n}=await this.unsafe_revokeInstallationsSignatureText(e),s=await this.#E.signMessage(t),i=await at(this.#E,s);return this.#c.action("client.revokeInstallations",{installationIds:e,signer:i,signatureRequestId:n})}static async revokeInstallations(e,t,n,s,i){const r=await dt(s,i);await st(r,e,t,n)}static async fetchInboxStates(t,n,s){return(async(t,n)=>(await e(),L(t,n)))(await dt(n,s),t)}async changeRecoveryIdentifier(e){if(!this.#E)throw new Ee;const{signatureText:t,signatureRequestId:n}=await this.unsafe_changeRecoveryIdentifierSignatureText(e),s=await this.#E.signMessage(t),i=await at(this.#E,s);return this.#c.action("client.changeRecoveryIdentifier",{identifier:e,signer:i,signatureRequestId:n})}async isRegistered(){return this.#c.action("client.isRegistered")}async canMessage(e){return this.#c.action("client.canMessage",{identifiers:e})}async fetchLatestInboxUpdatesCount(e){const t=await this.#c.action("client.fetchLatestInboxUpdatesCount",{inboxIds:e});return ut(t)}async fetchOwnInboxUpdatesCount(){return this.#c.action("client.fetchOwnInboxUpdatesCount",{})}static async canMessage(e,t){const n=await dt(t),s=new Map;for(const t of e){const e=await nt(n,t);s.set(t.identifier.toLowerCase(),void 0!==e)}return s}static async fetchLatestInboxUpdatesCount(e,t,n){const s=await dt(t,n),{client:i}=await et((()=>{const e=new Uint8Array(20);return globalThis.crypto.getRandomValues(e),{identifier:`0x${Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")}`,identifierKind:N.Ethereum}})(),{backend:s,dbPath:null,disableDeviceSync:!0});try{const t=await i.fetchLatestInboxUpdatesCount(!0,e);return ut(t)}finally{i.free()}}async fetchInboxIdByIdentifier(e){return this.#c.action("client.getInboxIdByIdentifier",{identifier:e})}signWithInstallationKey(e){return this.#c.action("client.signWithInstallationKey",{signatureText:e})}verifySignedWithInstallationKey(e,t){return this.#c.action("client.verifySignedWithInstallationKey",{signatureText:e,signatureBytes:t})}verifySignedWithPublicKey(e,t,n){return this.#c.action("client.verifySignedWithPublicKey",{signatureText:e,signatureBytes:t,publicKey:n})}async fetchKeyPackageStatuses(e){return this.#c.action("client.fetchKeyPackageStatuses",{installationIds:e})}#O(){return{elements:[G.Consent,G.Messages],excludeDisappearingMessages:!1}}#q(){const e=this.#b??"dev";return X[e]}async sendSyncRequest(e,t){const n=e??this.#O(),s=t??this.#q();return this.#c.action("client.sendSyncRequest",{options:n,serverUrl:s})}async sendSyncArchive(e,t,n){const s=t??this.#O(),i=n??this.#q();return this.#c.action("client.sendSyncArchive",{options:s,serverUrl:i,pin:e})}async processSyncArchive(e){return this.#c.action("client.processSyncArchive",{archivePin:e})}async listAvailableArchives(e){return this.#c.action("client.listAvailableArchives",{daysCutoff:e})}async createArchive(e,t){const n=t??this.#O();return this.#c.action("client.createArchive",{opts:n,key:e})}async importArchive(e,t){return this.#c.action("client.importArchive",{data:e,key:t})}async archiveMetadata(e,t){return this.#c.action("client.archiveMetadata",{data:e,key:t})}async syncAllDeviceSyncGroups(){return this.#c.action("client.syncAllDeviceSyncGroups")}}class pt{#c;#m;constructor(e){const t=new Worker(new URL("./workers/opfs",import.meta.url),{type:"module"});this.#c=new ct(t,e),this.#m=e??!1}async init(){await this.#c.action("opfs.init",{enableLogging:this.#m})}close(){this.#c.close()}static async create(e){const t=new pt(e);return await t.init(),t}async listFiles(){return this.#c.action("opfs.listFiles")}async fileCount(){return this.#c.action("opfs.fileCount")}async poolCapacity(){return this.#c.action("opfs.poolCapacity")}async fileExists(e){return this.#c.action("opfs.fileExists",{path:e})}async deleteFile(e){return this.#c.action("opfs.deleteFile",{path:e})}async exportDb(e){return this.#c.action("opfs.exportDb",{path:e})}async importDb(e,t){return this.#c.action("opfs.importDb",{path:e,data:t})}async clearAll(){return this.#c.action("opfs.clearAll")}}const lt=async t=>(await e(),V(t)),yt=async e=>({id:e.id,name:e.name,imageUrl:e.imageUrl,description:e.description,appData:e.appData,permissions:e.permissions(),addedByInboxId:e.addedByInboxId,metadata:await e.metadata(),admins:e.listAdmins(),superAdmins:e.listSuperAdmins(),createdAtNs:e.createdAtNs}),gt=e=>"xmtp.org"===e.contentType.authorityId&&"reaction"===e.contentType.typeId,wt=e=>"xmtp.org"===e.contentType.authorityId&&"reply"===e.contentType.typeId,mt=e=>wt(e)&&"string"==typeof e.content?.content,vt=e=>"xmtp.org"===e.contentType.authorityId&&"text"===e.contentType.typeId,kt=e=>"xmtp.org"===e.contentType.authorityId&&"remoteStaticAttachment"===e.contentType.typeId,ft=e=>"xmtp.org"===e.contentType.authorityId&&"attachment"===e.contentType.typeId,It=e=>"xmtp.org"===e.contentType.authorityId&&"multiRemoteStaticAttachment"===e.contentType.typeId,bt=e=>"xmtp.org"===e.contentType.authorityId&&"transactionReference"===e.contentType.typeId,xt=e=>"xmtp.org"===e.contentType.authorityId&&"group_updated"===e.contentType.typeId,Rt=e=>"xmtp.org"===e.contentType.authorityId&&"readReceipt"===e.contentType.typeId,At=e=>"xmtp.org"===e.contentType.authorityId&&"leave_request"===e.contentType.typeId,St=e=>"xmtp.org"===e.contentType.authorityId&&"walletSendCalls"===e.contentType.typeId,Tt=e=>"coinbase.com"===e.contentType.authorityId&&"intent"===e.contentType.typeId,Dt=e=>"coinbase.com"===e.contentType.authorityId&&"actions"===e.contentType.typeId,Mt=e=>"xmtp.org"===e.contentType.authorityId&&"markdown"===e.contentType.typeId;export{qe as AccountAlreadyAssociatedError,z as ApiUrls,ht as Client,Ce as ClientNotInitializedError,$e as Conversation,He as Conversations,Se as DecodedMessage,_e as Dm,je as Group,Be as GroupNotFoundError,X as HistorySyncUrls,Oe as InboxReassignError,pt as Opfs,Fe as OpfsInitializationError,Ne as OpfsNotInitializedError,Ee as SignerUnavailableError,Ue as StreamFailedError,Pe as StreamInvalidRetryAttemptsError,Le as StreamNotFoundError,ce as contentTypeActions,de as contentTypeAttachment,ue as contentTypeGroupUpdated,he as contentTypeIntent,pe as contentTypeLeaveRequest,le as contentTypeMarkdown,ye as contentTypeMultiRemoteAttachment,ge as contentTypeReaction,we as contentTypeReadReceipt,me as contentTypeRemoteAttachment,ve as contentTypeReply,ke as contentTypeText,fe as contentTypeTransactionReference,Ie as contentTypeWalletSendCalls,Ye as createBackend,it as createEOASigner,rt as createSCWSigner,xe as decryptAttachment,Q as encodeActions,Y as encodeAttachment,Z as encodeIntent,ee as encodeMarkdown,te as encodeMultiRemoteAttachment,ne as encodeReaction,se as encodeReadReceipt,ie as encodeRemoteAttachment,re as encodeText,ae as encodeTransactionReference,oe as encodeWalletSendCalls,be as encryptAttachment,tt as generateInboxId,nt as getInboxIdForIdentifier,Dt as isActions,ft as isAttachment,xt as isGroupUpdated,Tt as isIntent,At as isLeaveRequest,Mt as isMarkdown,It as isMultiRemoteAttachment,gt as isReaction,Rt as isReadReceipt,kt as isRemoteAttachment,wt as isReply,vt as isText,mt as isTextReply,bt as isTransactionReference,St as isWalletSendCalls,lt as metadataFieldName,yt as toSafeConversation,at as toSafeSigner};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/CodecRegistry.ts","../src/constants.ts","../src/utils/contentTypes.ts","../src/utils/date.ts","../src/DecodedMessage.ts","../src/AsyncStream.ts","../src/utils/errors.ts","../src/utils/streams.ts","../src/utils/uuid.ts","../src/Conversation.ts","../src/Dm.ts","../src/Group.ts","../src/Conversations.ts","../src/DebugInformation.ts","../src/Preferences.ts","../src/utils/createBackend.ts","../src/utils/inboxId.ts","../src/utils/installations.ts","../src/utils/signer.ts","../src/utils/WorkerBridge.ts","../src/Client.ts","../src/utils/inboxState.ts","../src/Opfs.ts","../src/utils/metadata.ts","../src/utils/conversions.ts","../src/utils/messages.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["CodecRegistry","codecs","constructor","this","Map","map","codec","contentTypeToString","contentType","getCodec","get","ApiUrls","local","dev","production","HistorySyncUrls","testnet","mainnet","wrap","fn","async","args","init","encodeActions","wasmEncodeActions","encodeAttachment","wasmEncodeAttachment","encodeIntent","wasmEncodeIntent","encodeMarkdown","wasmEncodeMarkdown","encodeMultiRemoteAttachment","wasmEncodeMultiRemoteAttachment","encodeReaction","wasmEncodeReaction","encodeReadReceipt","wasmEncodeReadReceipt","encodeRemoteAttachment","wasmEncodeRemoteAttachment","encodeText","wasmEncodeText","encodeTransactionReference","wasmEncodeTransactionReference","encodeWalletSendCalls","wasmEncodeWalletSendCalls","contentTypeActions","wasmContentTypeActions","contentTypeAttachment","wasmContentTypeAttachment","contentTypeGroupUpdated","wasmContentTypeGroupUpdated","contentTypeIntent","wasmContentTypeIntent","contentTypeLeaveRequest","wasmContentTypeLeaveRequest","contentTypeMarkdown","wasmContentTypeMarkdown","contentTypeMultiRemoteAttachment","wasmContentTypeMultiRemoteAttachment","contentTypeReaction","wasmContentTypeReaction","contentTypeReadReceipt","wasmContentTypeReadReceipt","contentTypeRemoteAttachment","wasmContentTypeRemoteAttachment","contentTypeReply","wasmContentTypeReply","contentTypeText","wasmContentTypeText","contentTypeTransactionReference","wasmContentTypeTransactionReference","contentTypeWalletSendCalls","wasmContentTypeWalletSendCalls","encryptAttachment","wasmEncryptAttachment","decryptAttachment","wasmDecryptAttachment","nsToDate","ns","Date","Number","getContentFromDecodedMessageContent","content","type","DecodedMessage","conversationId","deliveryStatus","expiresAtNs","expiresAt","fallback","id","kind","numReplies","reactions","senderInboxId","sentAt","sentAtNs","codecRegistry","message","undefined","reaction","reply","replyContent","decode","error","Error","console","warn","referenceId","getContentTypeFromDecodedMessageContent","inReplyTo","encodedContent","AsyncStream","isDone","pendingResolves","queue","onDone","onReturn","flush","length","nextResolve","shift","done","value","push","next","Promise","resolve","return","end","Symbol","asyncIterator","usableProperties","isUsableProperty","prop","includes","ClientNotInitializedError","super","SignerUnavailableError","InboxReassignError","AccountAlreadyAssociatedError","inboxId","GroupNotFoundError","groupId","StreamNotFoundError","streamId","StreamFailedError","retryAttempts","StreamInvalidRetryAttemptsError","OpfsNotInitializedError","OpfsInitializationError","DEFAULT_RETRY_DELAY","DEFAULT_RETRY_ATTEMPTS","createStream","streamFunction","streamValueMutator","options","onEnd","onError","onFail","onRestart","onRetry","onValue","retryDelay","retryOnFail","asyncStream","streamCallback","mutatedValue","then","isPromise","catch","retry","retries","ms","setTimeout","streamCloser","startRetry","Proxy","target","receiver","Reflect","set","has","_target","ownKeys","getOwnPropertyDescriptor","enumerable","configurable","uuid","bytes","Uint8Array","crypto","getRandomValues","Array","from","b","toString","padStart","join","Conversation","addedByInboxId","createdAtNs","metadata","worker","data","syncData","createdAt","topic","lastMessage","action","isActive","members","sync","publishMessages","processStreamedMessage","envelopeBytes","send","sendText","text","isOptimistic","sendMarkdown","markdown","sendReaction","sendReadReceipt","sendReply","sendTransactionReference","transactionReference","sendWalletSendCalls","walletSendCalls","sendActions","actions","sendIntent","intent","sendAttachment","attachment","sendMultiRemoteAttachment","multiRemoteAttachment","sendRemoteAttachment","remoteAttachment","messages","countMessages","consentState","updateConsentState","state","messageDisappearingSettings","updateMessageDisappearingSettings","fromNs","inNs","removeMessageDisappearingSettings","isMessageDisappearingEnabled","stream","callback","disableSync","handleStreamMessage","pausedForVersion","hmacKeys","debugInfo","lastReadTimes","Dm","peerInboxId","duplicateDms","conversation","Group","admins","appData","description","imageUrl","name","superAdmins","updateName","updateImageUrl","updateDescription","updateAppData","listAdmins","listSuperAdmins","permissions","updatePermission","permissionType","policy","metadataField","isAdmin","isSuperAdmin","addMembersByIdentifiers","identifiers","addMembers","inboxIds","removeMembersByIdentifiers","removeMembers","addAdmin","removeAdmin","addSuperAdmin","removeSuperAdmin","requestRemoval","isPendingRemoval","Conversations","client","installationId","syncAll","consentStates","getConversationById","conversationType","ConversationType","getMessageById","getDmByInboxId","fetchDmByIdentifier","identifier","list","filter","listGroups","listDms","createGroupOptimistic","createGroupWithIdentifiers","createGroup","createDmWithIdentifier","createDm","streamGroups","streamDms","streamAllMessages","streamAllGroupMessages","streamAllDmMessages","streamMessageDeletions","streamDeletedMessages","DebugInformation","apiStatistics","apiIdentityStatistics","apiAggregateStatistics","clearAllStatistics","Preferences","inboxState","refreshFromNetwork","fetchInboxState","getInboxStates","fetchInboxStates","setConsentStates","records","getConsentState","entityType","entity","streamConsent","streamPreferences","envMap","BindingsEnv","Local","Dev","Production","TestnetStaging","TestnetDev","Testnet","Mainnet","createBackend","builder","BackendBuilder","env","apiUrl","setApiUrl","gatewayHost","setGatewayHost","appVersion","setAppVersion","build","generateInboxId","nonce","wasmGenerateInboxId","getInboxIdForIdentifier","backend","wasmGetInboxIdForIdentifier","revokeInstallations","signer","installationIds","getIdentifier","signatureText","signatureRequest","revokeInstallationsSignatureRequest","revokeInstallationsSignatureText","signature","signMessage","addEcdsaSignature","addScwSignature","getChainId","getBlockNumber","applySignatureRequest","createEOASigner","key","generatePrivateKey","account","privateKeyToAccount","address","toLowerCase","identifierKind","IdentifierKind","Ethereum","toBytes","createSCWSigner","chainId","toSafeSigner","blockNumber","handleError","event","WorkerBridge","enableLogging","promises","addEventListener","handleMessage","promiseId","postMessage","reject","eventData","log","promise","delete","result","streamHandler","removeEventListener","close","terminate","resolveBackend","envOrBackend","Backend","Client","conversations","debugInformation","installationIdBytes","isReady","libxmtpVersion","preferences","Object","defineProperty","Worker","URL","url","loggingLevel","LogLevel","Off","create","disableAutoRegister","register","accountIdentifier","unsafe_createInboxSignatureText","signatureRequestId","unsafe_addAccountSignatureText","newIdentifier","allowInboxReassign","unsafe_removeAccountSignatureText","unsafe_revokeAllOtherInstallationsSignatureText","unsafe_revokeInstallationsSignatureText","unsafe_changeRecoveryIdentifierSignatureText","unsafe_applySignatureRequest","unsafe_addAccount","newAccountSigner","existingInboxId","fetchInboxIdByIdentifier","removeAccount","revokeAllOtherInstallations","utilsRevokeInstallations","wasmInboxStateFromInboxIds","utilsInboxStateFromInboxIds","changeRecoveryIdentifier","isRegistered","canMessage","canMessageMap","signWithInstallationKey","verifySignedWithInstallationKey","signatureBytes","verifySignedWithPublicKey","publicKey","fetchKeyPackageStatuses","getDefaultArchiveOptions","elements","BackupElementSelectionOption","Consent","Messages","excludeDisappearingMessages","getDefaultServerUrl","sendSyncRequest","serverUrl","resolvedOptions","resolvedServerUrl","sendSyncArchive","pin","processSyncArchive","archivePin","listAvailableArchives","daysCutoff","createArchive","opts","resolvedOpts","importArchive","archiveMetadata","syncAllDeviceSyncGroups","Opfs","opfs","listFiles","fileCount","poolCapacity","fileExists","path","deleteFile","exportDb","importDb","clearAll","metadataFieldName","field","wasmMetadataFieldName","toSafeConversation","isReaction","m","authorityId","typeId","isReply","isTextReply","isText","isRemoteAttachment","isAttachment","isMultiRemoteAttachment","isTransactionReference","isGroupUpdated","isReadReceipt","isLeaveRequest","isWalletSendCalls","isIntent","isActions","isMarkdown"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/CodecRegistry.ts","../src/constants.ts","../src/utils/contentTypes.ts","../src/utils/date.ts","../src/DecodedMessage.ts","../src/AsyncStream.ts","../src/utils/errors.ts","../src/utils/streams.ts","../src/utils/uuid.ts","../src/Conversation.ts","../src/Dm.ts","../src/Group.ts","../src/Conversations.ts","../src/DebugInformation.ts","../src/Preferences.ts","../src/utils/createBackend.ts","../src/utils/createClient.ts","../src/utils/inboxId.ts","../src/utils/installations.ts","../src/utils/signer.ts","../src/utils/WorkerBridge.ts","../src/Client.ts","../src/utils/inboxState.ts","../src/Opfs.ts","../src/utils/metadata.ts","../src/utils/conversions.ts","../src/utils/messages.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["CodecRegistry","codecs","constructor","this","Map","map","codec","contentTypeToString","contentType","getCodec","get","ApiUrls","local","dev","production","HistorySyncUrls","testnet","mainnet","wrap","fn","async","args","init","encodeActions","wasmEncodeActions","encodeAttachment","wasmEncodeAttachment","encodeIntent","wasmEncodeIntent","encodeMarkdown","wasmEncodeMarkdown","encodeMultiRemoteAttachment","wasmEncodeMultiRemoteAttachment","encodeReaction","wasmEncodeReaction","encodeReadReceipt","wasmEncodeReadReceipt","encodeRemoteAttachment","wasmEncodeRemoteAttachment","encodeText","wasmEncodeText","encodeTransactionReference","wasmEncodeTransactionReference","encodeWalletSendCalls","wasmEncodeWalletSendCalls","contentTypeActions","wasmContentTypeActions","contentTypeAttachment","wasmContentTypeAttachment","contentTypeGroupUpdated","wasmContentTypeGroupUpdated","contentTypeIntent","wasmContentTypeIntent","contentTypeLeaveRequest","wasmContentTypeLeaveRequest","contentTypeMarkdown","wasmContentTypeMarkdown","contentTypeMultiRemoteAttachment","wasmContentTypeMultiRemoteAttachment","contentTypeReaction","wasmContentTypeReaction","contentTypeReadReceipt","wasmContentTypeReadReceipt","contentTypeRemoteAttachment","wasmContentTypeRemoteAttachment","contentTypeReply","wasmContentTypeReply","contentTypeText","wasmContentTypeText","contentTypeTransactionReference","wasmContentTypeTransactionReference","contentTypeWalletSendCalls","wasmContentTypeWalletSendCalls","encryptAttachment","wasmEncryptAttachment","decryptAttachment","wasmDecryptAttachment","nsToDate","ns","Date","Number","getContentFromDecodedMessageContent","content","type","DecodedMessage","conversationId","deliveryStatus","expiresAtNs","expiresAt","fallback","id","kind","numReplies","reactions","senderInboxId","sentAt","sentAtNs","codecRegistry","message","undefined","reaction","reply","replyContent","decode","error","Error","console","warn","referenceId","getContentTypeFromDecodedMessageContent","inReplyTo","encodedContent","AsyncStream","isDone","pendingResolves","queue","onDone","onReturn","flush","length","nextResolve","shift","done","value","push","next","Promise","resolve","return","end","Symbol","asyncIterator","usableProperties","isUsableProperty","prop","includes","ClientNotInitializedError","super","SignerUnavailableError","InboxReassignError","AccountAlreadyAssociatedError","inboxId","GroupNotFoundError","groupId","StreamNotFoundError","streamId","StreamFailedError","retryAttempts","StreamInvalidRetryAttemptsError","OpfsNotInitializedError","OpfsInitializationError","DEFAULT_RETRY_DELAY","DEFAULT_RETRY_ATTEMPTS","createStream","streamFunction","streamValueMutator","options","onEnd","onError","onFail","onRestart","onRetry","onValue","retryDelay","retryOnFail","asyncStream","streamCallback","mutatedValue","then","isPromise","catch","retry","retries","ms","setTimeout","streamCloser","startRetry","Proxy","target","receiver","Reflect","set","has","_target","ownKeys","getOwnPropertyDescriptor","enumerable","configurable","uuid","bytes","Uint8Array","crypto","getRandomValues","Array","from","b","toString","padStart","join","Conversation","addedByInboxId","createdAtNs","metadata","worker","data","syncData","createdAt","topic","lastMessage","action","isActive","members","sync","publishMessages","processStreamedMessage","envelopeBytes","send","sendText","text","isOptimistic","sendMarkdown","markdown","sendReaction","sendReadReceipt","sendReply","sendTransactionReference","transactionReference","sendWalletSendCalls","walletSendCalls","sendActions","actions","sendIntent","intent","sendAttachment","attachment","sendMultiRemoteAttachment","multiRemoteAttachment","sendRemoteAttachment","remoteAttachment","messages","countMessages","consentState","updateConsentState","state","messageDisappearingSettings","updateMessageDisappearingSettings","fromNs","inNs","removeMessageDisappearingSettings","isMessageDisappearingEnabled","stream","callback","disableSync","handleStreamMessage","pausedForVersion","hmacKeys","debugInfo","lastReadTimes","Dm","peerInboxId","duplicateDms","conversation","Group","admins","appData","description","imageUrl","name","superAdmins","updateName","updateImageUrl","updateDescription","updateAppData","listAdmins","listSuperAdmins","permissions","updatePermission","permissionType","policy","metadataField","isAdmin","isSuperAdmin","addMembersByIdentifiers","identifiers","addMembers","inboxIds","removeMembersByIdentifiers","removeMembers","addAdmin","removeAdmin","addSuperAdmin","removeSuperAdmin","requestRemoval","isPendingRemoval","Conversations","client","installationId","syncAll","consentStates","getConversationById","conversationType","ConversationType","getMessageById","getDmByInboxId","fetchDmByIdentifier","identifier","list","filter","listGroups","listDms","createGroupOptimistic","createGroupWithIdentifiers","createGroup","createDmWithIdentifier","createDm","streamGroups","streamDms","streamAllMessages","streamAllGroupMessages","streamAllDmMessages","streamMessageDeletions","streamDeletedMessages","DebugInformation","apiStatistics","apiIdentityStatistics","apiAggregateStatistics","clearAllStatistics","Preferences","inboxState","refreshFromNetwork","fetchInboxState","getInboxStates","fetchInboxStates","setConsentStates","records","getConsentState","entityType","entity","streamConsent","streamPreferences","envMap","BindingsEnv","Local","Dev","Production","TestnetStaging","TestnetDev","Testnet","Mainnet","reverseEnvMap","createBackend","builder","BackendBuilder","env","apiUrl","setApiUrl","gatewayHost","setGatewayHost","appVersion","setAppVersion","build","networkOptionKeys","createClient","backend","hasBackend","conflicting","key","resolveBackend","getInboxIdForIdentifier","generateInboxId","envString","dbPath","isLogging","loggingLevel","structuredLogging","performanceLogging","deviceSyncMode","disableDeviceSync","DeviceSyncMode","Disabled","Enabled","createClientWithBackend","dbEncryptionKey","workerConfig","structured","performance","level","nonce","wasmGenerateInboxId","wasmGetInboxIdForIdentifier","revokeInstallations","signer","installationIds","getIdentifier","signatureText","signatureRequest","revokeInstallationsSignatureRequest","revokeInstallationsSignatureText","signature","signMessage","addEcdsaSignature","addScwSignature","getChainId","getBlockNumber","applySignatureRequest","createEOASigner","generatePrivateKey","account","privateKeyToAccount","address","toLowerCase","identifierKind","IdentifierKind","Ethereum","toBytes","createSCWSigner","chainId","toSafeSigner","blockNumber","handleError","event","WorkerBridge","enableLogging","promises","addEventListener","handleMessage","promiseId","postMessage","reject","eventData","log","promise","delete","result","streamHandler","removeEventListener","close","terminate","envOrBackend","Backend","toInboxUpdatesCountMap","Object","entries","Client","conversations","debugInformation","installationIdBytes","isReady","libxmtpVersion","preferences","defineProperty","Worker","URL","url","LogLevel","Off","create","disableAutoRegister","register","accountIdentifier","unsafe_createInboxSignatureText","signatureRequestId","unsafe_addAccountSignatureText","newIdentifier","allowInboxReassign","unsafe_removeAccountSignatureText","unsafe_revokeAllOtherInstallationsSignatureText","unsafe_revokeInstallationsSignatureText","unsafe_changeRecoveryIdentifierSignatureText","unsafe_applySignatureRequest","waitForRegistrationVisible","unsafe_addAccount","newAccountSigner","existingInboxId","fetchInboxIdByIdentifier","removeAccount","revokeAllOtherInstallations","utilsRevokeInstallations","wasmInboxStateFromInboxIds","utilsInboxStateFromInboxIds","changeRecoveryIdentifier","isRegistered","canMessage","fetchLatestInboxUpdatesCount","fetchOwnInboxUpdatesCount","canMessageMap","createLowLevelClient","globalThis","byte","createEphemeralIdentifier","free","signWithInstallationKey","verifySignedWithInstallationKey","signatureBytes","verifySignedWithPublicKey","publicKey","fetchKeyPackageStatuses","getDefaultArchiveOptions","elements","BackupElementSelectionOption","Consent","Messages","excludeDisappearingMessages","getDefaultServerUrl","sendSyncRequest","serverUrl","resolvedOptions","resolvedServerUrl","sendSyncArchive","pin","processSyncArchive","archivePin","listAvailableArchives","daysCutoff","createArchive","opts","resolvedOpts","importArchive","archiveMetadata","syncAllDeviceSyncGroups","Opfs","opfs","listFiles","fileCount","poolCapacity","fileExists","path","deleteFile","exportDb","importDb","clearAll","metadataFieldName","field","wasmMetadataFieldName","toSafeConversation","isReaction","m","authorityId","typeId","isReply","isTextReply","isText","isRemoteAttachment","isAttachment","isMultiRemoteAttachment","isTransactionReference","isGroupUpdated","isReadReceipt","isLeaveRequest","isWalletSendCalls","isIntent","isActions","isMarkdown"],"mappings":"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"}
|