2.0.0-experimental.f9b30bb • Published 5 months ago

@mcintyre94/compat v2.0.0-experimental.f9b30bb

Weekly downloads
-
License
MIT
Repository
github
Last release
5 months ago

npm npm-downloads semantic-release code-style-prettier

@solana/compat

This package contains utilities for converting from legacy web3js classes to the new data structures. It can be used standalone, but it is also exported as part of the Solana JavaScript SDK @solana/web3.js@experimental.

Functions

fromLegacyPublicKey()

This can be used to convert a legacy PublicKey object to an Address type

import { fromLegacyPublicKey } from '@solana/compat';
const address = fromLegacyPublicKey(new PublicKey('49XBVQsvSW44ULKL9qufS9YqQPbdcps1TQRijx4FQ9sH'));

fromLegacyKeypair()

This can be used to convert a legacy Keypair object to a native Ed25519 CryptoKeyPair object

import { fromLegaycKeypair } from '@solana/compat';
const { privateKey, publicKey } = await fromLegacyKeypair(Keypair.generate());

fromVersionedTransactionWithBlockhash()

This can be used to convert a legacy VersionedTransaction object that uses a blockhash lifetime to a Transaction object. The returned transaction fulfils both the ITransactionWithFeePayer and ITransactionWithBlockhash interfaces.

import { fromVersionedTransactionWithBlockhash } from '@solana/compat';

// imagine a function that returns a legacy `VersionedTransaction`
const legacyVersionedTransaction = getMyLegacyVersionedTransaction();
const transaction = fromVersionedTransactionWithBlockhash(legacyVersionedTransaction);

fromVersionedTransactionWithDurableNonce()

This can be used to convert a legacy VersionedTransaction object that uses a durable nonce lifetime to a Transaction object. The returned transaction fulfils both the ITransactionWithFeePayer and IDurableNonceTransaction interfaces.

import { fromVersionedTransactionWithDurableNonce } from '@solana/compat';

// imagine a function that returns a legacy `VersionedTransaction`
const legacyVersionedTransaction = getMyLegacyVersionedTransaction();
const transaction = fromVersionedTransactionWithDurableNonce(legacyVersionedTransaction);