Skip to content

Releases: xmtp/xmtp-js

@xmtp/[email protected]

23 Nov 01:30
a0997d0
Compare
Choose a tag to compare

Patch Changes

  • 9324310:
    • Added installationIdBytes to Client
    • Refactored Client.verifySignedWithInstallationKey to return a boolean
    • Changed Client.verifySignedWithPublicKey to a static method

@xmtp/[email protected]

23 Nov 18:10
4e393d2
Compare
Choose a tag to compare

BREAKING CHANGE

  • 86a8f9f: Added support for validating V3 frames

validateFramesPost is now async to support fetching the inbox ID of an account address when validating V3 frames. It also accepts a second parameter to specify the environment to use when looking up inbox IDs. In production, this parameter must be set to production.

import { XmtpValidator, validateFramesPost } from "@xmtp/frames-validator";

const validator = new XmtpValidator();
// environment must be set in production (default: "dev")
const validation = await validator(payload, "production");

// now async, also requires environment in production (default: "dev")
const validation = await validateFramesPost(payload, "production");

@xmtp/[email protected]

23 Nov 18:10
4e393d2
Compare
Choose a tag to compare

BREAKING CHANGE

  • 86a8f9f: Refactored signing process using a new FramesSigner type

The FramesClient class now accepts a FramesSigner that handles signing of the frame actions. It supports both V2 and V3 signers.

type V2FramesSigner = {
  address: () => Promise<string> | string;
  getPublicKeyBundle: () => Promise<publicKeyProto.PublicKeyBundle>;
  sign: (message: Uint8Array) => Promise<signatureProto.Signature>;
};

type V3FramesSigner = {
  installationId: () => Promise<Uint8Array> | Uint8Array;
  inboxId: () => Promise<string> | string;
  address: () => Promise<string> | string;
  sign: (message: Uint8Array) => Promise<Uint8Array> | Uint8Array;
};

type FramesSigner = V2FramesSigner | V3FramesSigner;

@xmtp/[email protected]

23 Nov 01:30
a0997d0
Compare
Choose a tag to compare

Patch Changes

  • 9324310:
    • Added installationIdBytes to Client
    • Added Conversations.syncAll method
    • Added signWithInstallationKey, verifySignedWithInstallationKey, and verifySignedWithPublicKey methods to Client

@xmtp/[email protected]

20 Nov 00:18
f6166fe
Compare
Choose a tag to compare

Patch Changes

  • 7661f78:
    • Added syncAll method to Conversations
    • Added signWithInstallationKey, verifySignedWithInstallationKey, and verifySignedWithPublicKey to Client

@xmtp/[email protected]

19 Nov 20:46
9f27c38
Compare
Choose a tag to compare

Patch Changes

@xmtp/[email protected]

15 Nov 18:07
8919458
Compare
Choose a tag to compare

Patch Changes

  • a1a16a0:
    • Added Signer interface
    • Refactored Client.create to accept a Signer instead of account address
    • Refactored client creation to automatically register and identity
    • Added disableAutoRegister to ClientOptions to allow disabling of client registration after creation
    • Removed direct access to all signature functions
    • Added Client.register method for registering a client
    • Added Client.addAccount method for adding another account to an installation
    • Added Client.removeAccount method for removing an account from an installation
    • Added Client.revokeInstallations method for revoking all other installations
    • Added static Client.canMessage for checking if an address is on the network without a client
    • Added environment to DB path

@xmtp/[email protected]

15 Nov 18:07
8919458
Compare
Choose a tag to compare

Patch Changes

  • a1a16a0:
    • Added Signer interface
    • Refactored Client.create to accept a Signer instead of account address
    • Refactored client creation to automatically register and identity
    • Added disableAutoRegister to ClientOptions to allow disabling of client registration after creation
    • Removed direct access to all signature functions
    • Added Client.register method for registering a client
    • Added Client.addAccount method for adding another account to an installation
    • Added Client.removeAccount method for removing an account from an installation
    • Added Client.revokeInstallations method for revoking all other installations
    • Added static Client.canMessage for checking if an address is on the network without a client

@xmtp/[email protected]

13 Nov 18:18
083aba0
Compare
Choose a tag to compare

Patch Changes

  • 31ca82d:
    • Updated return type of Client.canMessage from Record to Map
    • Added requirement of encryption key when creating a client
    • Updated logging options
    • Added smart contract wallet support
    • Updated exports

@xmtp/[email protected]

12 Nov 22:11
b2a03b1
Compare
Choose a tag to compare

Patch Changes

  • f3734c8:
    • Upgraded to latest WASM bindings
    • Required encryptionKey when creating a new client
    • Added smart contract wallet signature support
    • Added more logging options
    • Updated WASM bindings re-exports