diff --git a/basics/account-data/anchor/package.json b/basics/account-data/anchor/package.json
index cafc3a500..0b9590932 100644
--- a/basics/account-data/anchor/package.json
+++ b/basics/account-data/anchor/package.json
@@ -4,7 +4,6 @@
"@solana/web3.js": "^1.98.4"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/basics/account-data/anchor/pnpm-lock.yaml b/basics/account-data/anchor/pnpm-lock.yaml
index f8580db79..48c790104 100644
--- a/basics/account-data/anchor/pnpm-lock.yaml
+++ b/basics/account-data/anchor/pnpm-lock.yaml
@@ -15,9 +15,6 @@ importers:
specifier: ^1.98.4
version: 1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -267,9 +264,6 @@ packages:
'@swc/helpers@0.5.12':
resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1022,10 +1016,6 @@ snapshots:
dependencies:
tslib: 2.6.2
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/basics/account-data/native/package.json b/basics/account-data/native/package.json
index 6154a1f6d..b2544926a 100644
--- a/basics/account-data/native/package.json
+++ b/basics/account-data/native/package.json
@@ -8,8 +8,7 @@
},
"dependencies": {
"@solana/kit": "^7.0.0",
- "@solana-program/system": "^0.13.0",
- "borsh": "^2.0.0"
+ "@solana-program/system": "^0.13.0"
},
"devDependencies": {
"@types/chai": "^5.2.3",
diff --git a/basics/account-data/native/pnpm-lock.yaml b/basics/account-data/native/pnpm-lock.yaml
index 882d62a26..0fc905212 100644
--- a/basics/account-data/native/pnpm-lock.yaml
+++ b/basics/account-data/native/pnpm-lock.yaml
@@ -14,9 +14,6 @@ importers:
'@solana/kit':
specifier: ^7.0.0
version: 7.0.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
devDependencies:
'@types/chai':
specifier: ^5.2.3
@@ -1036,9 +1033,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2512,8 +2506,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/basics/account-data/native/tests/test.ts b/basics/account-data/native/tests/test.ts
index d721d3d66..d915c9ca5 100644
--- a/basics/account-data/native/tests/test.ts
+++ b/basics/account-data/native/tests/test.ts
@@ -1,6 +1,4 @@
-import { Buffer } from 'node:buffer';
import {
- AccountRole,
type Address,
appendTransactionMessageInstruction,
createTransactionMessage,
@@ -11,33 +9,18 @@ import {
setTransactionMessageFeePayerSigner,
signTransactionMessageWithSigners,
} from '@solana/kit';
-import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
-import * as borsh from 'borsh';
import { assert } from 'chai';
import { FailedTransactionMetadata, LiteSVM } from 'litesvm';
-
-const AddressInfoSchema = {
- struct: {
- name: 'string',
- house_number: 'u8',
- street: 'string',
- city: 'string',
- },
-};
-
-type AddressInfo = {
- name: string;
- house_number: number;
- street: string;
- city: string;
-};
-
-function borshSerialize(schema: borsh.Schema, data: object): Buffer {
- return Buffer.from(borsh.serialize(schema, data));
-}
+import { type AddressInfo, addressInfoDecoder, createCreateAddressInfoInstruction } from '../ts';
describe('Account Data!', () => {
const svm = new LiteSVM();
+ const addressInfo: AddressInfo = {
+ name: 'Joe C',
+ houseNumber: 136,
+ street: 'Mile High Dr.',
+ city: 'Solana Beach',
+ };
let programId: Address;
let payer: KeyPairSigner;
let addressInfoAccount: KeyPairSigner;
@@ -51,30 +34,7 @@ describe('Account Data!', () => {
});
it('Create the address info account', async () => {
- console.log(`Program Address : ${programId}`);
- console.log(`Payer Address : ${payer.address}`);
- console.log(`Address Info Acct : ${addressInfoAccount.address}`);
-
- const ix = {
- programAddress: programId,
- accounts: [
- {
- address: addressInfoAccount.address,
- role: AccountRole.WRITABLE_SIGNER,
- signer: addressInfoAccount,
- },
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(
- borshSerialize(AddressInfoSchema, {
- name: 'Joe C',
- house_number: 136,
- street: 'Mile High Dr.',
- city: 'Solana Beach',
- }),
- ),
- };
+ const ix = createCreateAddressInfoInstruction(addressInfoAccount, payer, programId, addressInfo);
const transactionMessage = pipe(
createTransactionMessage({ version: 0 }),
@@ -92,10 +52,6 @@ describe('Account Data!', () => {
const accountInfo = svm.getAccount(addressInfoAccount.address);
assert(accountInfo.exists, 'address info account not found');
- const readAddressInfo = borsh.deserialize(AddressInfoSchema, Buffer.from(accountInfo.data)) as AddressInfo;
- console.log(`Name : ${readAddressInfo.name}`);
- console.log(`House Num: ${readAddressInfo.house_number}`);
- console.log(`Street : ${readAddressInfo.street}`);
- console.log(`City : ${readAddressInfo.city}`);
+ assert.deepEqual(addressInfoDecoder.decode(accountInfo.data), addressInfo);
});
});
diff --git a/basics/account-data/native/ts/index.ts b/basics/account-data/native/ts/index.ts
new file mode 100644
index 000000000..898deed08
--- /dev/null
+++ b/basics/account-data/native/ts/index.ts
@@ -0,0 +1,2 @@
+export * from './instructions';
+export * from './state';
diff --git a/basics/account-data/native/ts/instructions/create.ts b/basics/account-data/native/ts/instructions/create.ts
new file mode 100644
index 000000000..536307c37
--- /dev/null
+++ b/basics/account-data/native/ts/instructions/create.ts
@@ -0,0 +1,41 @@
+import {
+ AccountRole,
+ addEncoderSizePrefix,
+ type Address,
+ getStructEncoder,
+ getU8Encoder,
+ getU32Encoder,
+ getUtf8Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+import type { AddressInfo } from '../state';
+
+// Instruction data layout: the program deserializes the whole payload as an `AddressInfo`.
+export const createAddressInfoEncoder = getStructEncoder([
+ ['name', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['houseNumber', getU8Encoder()],
+ ['street', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['city', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+]);
+
+export function createCreateAddressInfoInstruction(
+ addressInfoAccount: TransactionSigner,
+ payer: TransactionSigner,
+ programId: Address,
+ addressInfo: AddressInfo,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ {
+ address: addressInfoAccount.address,
+ role: AccountRole.WRITABLE_SIGNER,
+ signer: addressInfoAccount,
+ },
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: createAddressInfoEncoder.encode(addressInfo),
+ };
+}
diff --git a/basics/account-data/native/ts/instructions/index.ts b/basics/account-data/native/ts/instructions/index.ts
new file mode 100644
index 000000000..1e03cceb8
--- /dev/null
+++ b/basics/account-data/native/ts/instructions/index.ts
@@ -0,0 +1 @@
+export * from './create';
diff --git a/basics/account-data/native/ts/state/index.ts b/basics/account-data/native/ts/state/index.ts
new file mode 100644
index 000000000..9ef894faf
--- /dev/null
+++ b/basics/account-data/native/ts/state/index.ts
@@ -0,0 +1,16 @@
+import { addDecoderSizePrefix, getStructDecoder, getU8Decoder, getU32Decoder, getUtf8Decoder } from '@solana/kit';
+
+export type AddressInfo = {
+ name: string;
+ houseNumber: number;
+ street: string;
+ city: string;
+};
+
+// Account data layout, matching the program's `AddressInfo` struct.
+export const addressInfoDecoder = getStructDecoder([
+ ['name', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+ ['houseNumber', getU8Decoder()],
+ ['street', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+ ['city', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+]);
diff --git a/basics/checking-accounts/anchor/package.json b/basics/checking-accounts/anchor/package.json
index d32dce8d4..3206e744b 100644
--- a/basics/checking-accounts/anchor/package.json
+++ b/basics/checking-accounts/anchor/package.json
@@ -10,7 +10,6 @@
"@solana/web3.js": "^1.98.4"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"anchor-litesvm": "^0.2.1",
diff --git a/basics/checking-accounts/anchor/pnpm-lock.yaml b/basics/checking-accounts/anchor/pnpm-lock.yaml
index 97f69a705..09233d09a 100644
--- a/basics/checking-accounts/anchor/pnpm-lock.yaml
+++ b/basics/checking-accounts/anchor/pnpm-lock.yaml
@@ -18,9 +18,6 @@ importers:
specifier: ^1.98.4
version: 1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -290,9 +287,6 @@ packages:
'@swc/helpers@0.5.12':
resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1080,10 +1074,6 @@ snapshots:
dependencies:
tslib: 2.6.2
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/basics/close-account/anchor/package.json b/basics/close-account/anchor/package.json
index 61dd5cf27..dd77656e1 100644
--- a/basics/close-account/anchor/package.json
+++ b/basics/close-account/anchor/package.json
@@ -9,7 +9,6 @@
"litesvm": "^0.8.0"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/basics/close-account/anchor/pnpm-lock.yaml b/basics/close-account/anchor/pnpm-lock.yaml
index 32bd703bd..1f49c0df6 100644
--- a/basics/close-account/anchor/pnpm-lock.yaml
+++ b/basics/close-account/anchor/pnpm-lock.yaml
@@ -18,9 +18,6 @@ importers:
specifier: ^0.8.0
version: 0.8.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -267,9 +264,6 @@ packages:
'@swc/helpers@0.5.12':
resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1025,10 +1019,6 @@ snapshots:
dependencies:
tslib: 2.6.2
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/basics/cross-program-invocation/anchor/package.json b/basics/cross-program-invocation/anchor/package.json
index e58ba0b2a..734bda4bd 100644
--- a/basics/cross-program-invocation/anchor/package.json
+++ b/basics/cross-program-invocation/anchor/package.json
@@ -10,7 +10,6 @@
"litesvm": "^0.8.0"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/basics/cross-program-invocation/anchor/pnpm-lock.yaml b/basics/cross-program-invocation/anchor/pnpm-lock.yaml
index d5fe3ec2c..6c9cc41e7 100644
--- a/basics/cross-program-invocation/anchor/pnpm-lock.yaml
+++ b/basics/cross-program-invocation/anchor/pnpm-lock.yaml
@@ -18,9 +18,6 @@ importers:
specifier: ^0.8.0
version: 0.8.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -270,9 +267,6 @@ packages:
'@swc/helpers@0.5.12':
resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1033,10 +1027,6 @@ snapshots:
dependencies:
tslib: 2.6.2
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/basics/cross-program-invocation/native/package.json b/basics/cross-program-invocation/native/package.json
index a265d993c..2ddeedd8d 100644
--- a/basics/cross-program-invocation/native/package.json
+++ b/basics/cross-program-invocation/native/package.json
@@ -9,7 +9,6 @@
"dependencies": {
"@solana/kit": "^7.0.0",
"@solana-program/system": "^0.13.0",
- "borsh": "^2.0.0",
"litesvm": "^1.3.0"
},
"devDependencies": {
diff --git a/basics/cross-program-invocation/native/pnpm-lock.yaml b/basics/cross-program-invocation/native/pnpm-lock.yaml
index ecae779ae..ed1324526 100644
--- a/basics/cross-program-invocation/native/pnpm-lock.yaml
+++ b/basics/cross-program-invocation/native/pnpm-lock.yaml
@@ -14,9 +14,6 @@ importers:
'@solana/kit':
specifier: ^7.0.0
version: 7.0.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
litesvm:
specifier: ^1.3.0
version: 1.3.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
@@ -1036,9 +1033,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2512,8 +2506,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/basics/cross-program-invocation/native/tests/test.ts b/basics/cross-program-invocation/native/tests/test.ts
index ca530e8fa..e95f6d76c 100644
--- a/basics/cross-program-invocation/native/tests/test.ts
+++ b/basics/cross-program-invocation/native/tests/test.ts
@@ -1,29 +1,20 @@
-import { Buffer } from 'node:buffer';
import * as fs from 'node:fs';
import * as path from 'node:path';
import {
- AccountRole,
type Address,
appendTransactionMessageInstruction,
createKeyPairSignerFromBytes,
createTransactionMessage,
generateKeyPairSigner,
+ type Instruction,
type KeyPairSigner,
lamports,
pipe,
setTransactionMessageFeePayerSigner,
signTransactionMessageWithSigners,
} from '@solana/kit';
-import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
-import * as borsh from 'borsh';
import { LiteSVM, TransactionMetadata } from 'litesvm';
-
-const PowerStatusSchema = { struct: { is_on: 'u8' } };
-const SetPowerStatusSchema = { struct: { name: 'string' } };
-
-function borshSerialize(schema: borsh.Schema, data: object): Buffer {
- return Buffer.from(borsh.serialize(schema, data));
-}
+import { createInitializeInstruction, createPullLeverInstruction } from '../ts';
async function programAddressFromKeypairFile(keypairPath: string): Promise
{
const bytes = Uint8Array.from(JSON.parse(fs.readFileSync(keypairPath, 'utf-8')));
@@ -59,17 +50,7 @@ describe('Native CPI Example', () => {
powerAccount = await generateKeyPairSigner();
});
- it('Initialize the lever!', async () => {
- const ix = {
- programAddress: leverProgramId,
- accounts: [
- { address: powerAccount.address, role: AccountRole.WRITABLE_SIGNER, signer: powerAccount },
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(borshSerialize(PowerStatusSchema, { is_on: 1 })),
- };
-
+ async function sendTransaction(ix: Instruction) {
const transactionMessage = pipe(
createTransactionMessage({ version: 0 }),
m => setTransactionMessageFeePayerSigner(payer, m),
@@ -82,53 +63,19 @@ describe('Native CPI Example', () => {
if (!(res instanceof TransactionMetadata)) {
throw new Error(`Transaction failed: ${JSON.stringify(res)}`);
}
+ }
+
+ it('Initialize the lever!', async () => {
+ await sendTransaction(createInitializeInstruction(powerAccount, payer, leverProgramId, true));
});
it('Pull the lever!', async () => {
- const ix = {
- programAddress: handProgramId,
- accounts: [
- { address: powerAccount.address, role: AccountRole.WRITABLE },
- { address: leverProgramId, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(borshSerialize(SetPowerStatusSchema, { name: 'Chris' })),
- };
-
- const transactionMessage = pipe(
- createTransactionMessage({ version: 0 }),
- m => setTransactionMessageFeePayerSigner(payer, m),
- m => svm.setTransactionMessageLifetimeUsingLatestBlockhash(m),
- m => appendTransactionMessageInstruction(ix, m),
- );
- const signedTx = await signTransactionMessageWithSigners(transactionMessage);
-
- const res = svm.sendTransaction(signedTx);
- if (!(res instanceof TransactionMetadata)) {
- throw new Error(`Transaction failed: ${JSON.stringify(res)}`);
- }
+ await sendTransaction(createPullLeverInstruction(powerAccount.address, leverProgramId, handProgramId, 'Chris'));
});
it('Pull it again!', async () => {
- const ix = {
- programAddress: handProgramId,
- accounts: [
- { address: powerAccount.address, role: AccountRole.WRITABLE },
- { address: leverProgramId, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(borshSerialize(SetPowerStatusSchema, { name: 'Ashley' })),
- };
-
- const transactionMessage = pipe(
- createTransactionMessage({ version: 0 }),
- m => setTransactionMessageFeePayerSigner(payer, m),
- m => svm.setTransactionMessageLifetimeUsingLatestBlockhash(m),
- m => appendTransactionMessageInstruction(ix, m),
+ await sendTransaction(
+ createPullLeverInstruction(powerAccount.address, leverProgramId, handProgramId, 'Ashley'),
);
- const signedTx = await signTransactionMessageWithSigners(transactionMessage);
-
- const res = svm.sendTransaction(signedTx);
- if (!(res instanceof TransactionMetadata)) {
- throw new Error(`Transaction failed: ${JSON.stringify(res)}`);
- }
});
});
diff --git a/basics/cross-program-invocation/native/ts/index.ts b/basics/cross-program-invocation/native/ts/index.ts
new file mode 100644
index 000000000..32b452fa4
--- /dev/null
+++ b/basics/cross-program-invocation/native/ts/index.ts
@@ -0,0 +1 @@
+export * from './instructions';
diff --git a/basics/cross-program-invocation/native/ts/instructions/index.ts b/basics/cross-program-invocation/native/ts/instructions/index.ts
new file mode 100644
index 000000000..91d6063e5
--- /dev/null
+++ b/basics/cross-program-invocation/native/ts/instructions/index.ts
@@ -0,0 +1,2 @@
+export * from './initialize';
+export * from './pull-lever';
diff --git a/basics/cross-program-invocation/native/ts/instructions/initialize.ts b/basics/cross-program-invocation/native/ts/instructions/initialize.ts
new file mode 100644
index 000000000..e1fea0994
--- /dev/null
+++ b/basics/cross-program-invocation/native/ts/instructions/initialize.ts
@@ -0,0 +1,23 @@
+import { AccountRole, type Address, getBooleanEncoder, getStructEncoder, type TransactionSigner } from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+
+// Instruction data layout, matching the lever program's `PowerStatus` struct. The lever
+// program tells its two instructions apart by which struct the data deserializes into.
+export const initializeEncoder = getStructEncoder([['isOn', getBooleanEncoder()]]);
+
+export function createInitializeInstruction(
+ power: TransactionSigner,
+ payer: TransactionSigner,
+ leverProgramId: Address,
+ isOn: boolean,
+) {
+ return {
+ programAddress: leverProgramId,
+ accounts: [
+ { address: power.address, role: AccountRole.WRITABLE_SIGNER, signer: power },
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: initializeEncoder.encode({ isOn }),
+ };
+}
diff --git a/basics/cross-program-invocation/native/ts/instructions/pull-lever.ts b/basics/cross-program-invocation/native/ts/instructions/pull-lever.ts
new file mode 100644
index 000000000..b8d42975b
--- /dev/null
+++ b/basics/cross-program-invocation/native/ts/instructions/pull-lever.ts
@@ -0,0 +1,28 @@
+import {
+ AccountRole,
+ addEncoderSizePrefix,
+ type Address,
+ getStructEncoder,
+ getU32Encoder,
+ getUtf8Encoder,
+} from '@solana/kit';
+
+// Instruction data layout, matching the lever program's `SetPowerStatus` struct. The hand
+// program deserializes this same struct and forwards it unchanged to the lever program.
+export const pullLeverEncoder = getStructEncoder([['name', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())]]);
+
+export function createPullLeverInstruction(
+ power: Address,
+ leverProgramId: Address,
+ handProgramId: Address,
+ name: string,
+) {
+ return {
+ programAddress: handProgramId,
+ accounts: [
+ { address: power, role: AccountRole.WRITABLE },
+ { address: leverProgramId, role: AccountRole.READONLY },
+ ],
+ data: pullLeverEncoder.encode({ name }),
+ };
+}
diff --git a/basics/favorites/anchor/tests/test.ts b/basics/favorites/anchor/tests/test.ts
index b5d00a574..6c8fec4dc 100644
--- a/basics/favorites/anchor/tests/test.ts
+++ b/basics/favorites/anchor/tests/test.ts
@@ -1,6 +1,5 @@
import type { Program } from '@anchor-lang/core';
import * as anchor from '@anchor-lang/core';
-import { BN } from 'bn.js';
import { assert } from 'chai';
import type { Favorites } from '../target/types/favorites.ts';
@@ -15,7 +14,7 @@ describe('Anchor: Favorites', () => {
const program = anchor.workspace.Favorites as Program;
// Here's what we want to write to the blockchain
- const favoriteNumber = new BN(23);
+ const favoriteNumber = new anchor.BN(23);
const favoriteColor = 'purple';
const favoriteHobbies = ['skiing', 'skydiving', 'biking'];
diff --git a/basics/favorites/native/package.json b/basics/favorites/native/package.json
index 618b9cdd4..cc047755a 100644
--- a/basics/favorites/native/package.json
+++ b/basics/favorites/native/package.json
@@ -8,8 +8,7 @@
},
"dependencies": {
"@solana/kit": "^7.0.0",
- "@solana-program/system": "^0.13.0",
- "borsh": "^2.0.0"
+ "@solana-program/system": "^0.13.0"
},
"devDependencies": {
"@types/chai": "^5.2.3",
diff --git a/basics/favorites/native/pnpm-lock.yaml b/basics/favorites/native/pnpm-lock.yaml
index 882d62a26..0fc905212 100644
--- a/basics/favorites/native/pnpm-lock.yaml
+++ b/basics/favorites/native/pnpm-lock.yaml
@@ -14,9 +14,6 @@ importers:
'@solana/kit':
specifier: ^7.0.0
version: 7.0.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
devDependencies:
'@types/chai':
specifier: ^5.2.3
@@ -1036,9 +1033,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2512,8 +2506,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/basics/favorites/native/tests/test.ts b/basics/favorites/native/tests/test.ts
index 901793186..3e594896a 100644
--- a/basics/favorites/native/tests/test.ts
+++ b/basics/favorites/native/tests/test.ts
@@ -1,6 +1,4 @@
-import { Buffer } from 'node:buffer';
import {
- AccountRole,
type Address,
appendTransactionMessageInstruction,
createTransactionMessage,
@@ -14,49 +12,10 @@ import {
setTransactionMessageFeePayerSigner,
signTransactionMessageWithSigners,
} from '@solana/kit';
-import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
-import * as borsh from 'borsh';
import { assert, expect } from 'chai';
import { FailedTransactionMetadata, LiteSVM } from 'litesvm';
import { describe, test } from 'mocha';
-
-const MyInstruction = {
- CreateFav: 0,
- GetFav: 1,
-} as const;
-
-const CreateFavSchema = {
- struct: {
- instruction: 'u8',
- number: 'u64',
- color: 'string',
- hobbies: { array: { type: 'string' } },
- },
-};
-
-const FavoritesDataSchema = {
- struct: {
- number: 'u64',
- color: 'string',
- hobbies: { array: { type: 'string' } },
- },
-};
-
-const GetFavSchema = {
- struct: {
- instruction: 'u8',
- },
-};
-
-type FavoritesData = {
- number: number | bigint;
- color: string;
- hobbies: string[];
-};
-
-function borshSerialize(schema: borsh.Schema, data: object): Buffer {
- return Buffer.from(borsh.serialize(schema, data));
-}
+import { createCreatePdaInstruction, createGetPdaInstruction, type Favorites, favoritesDecoder } from '../ts';
const addressEncoder = getAddressEncoder();
@@ -90,108 +49,59 @@ describe('Favorites Solana Native', () => {
return svm.sendTransaction(signedTx);
}
- test('Set the favorite pda and cross-check the updated data', async () => {
- const [favoritesPda] = await getProgramDerivedAddress({
+ function deriveFavoritesPda(seed: string) {
+ return getProgramDerivedAddress({
programAddress: programId,
- seeds: ['favorite', addressEncoder.encode(payer.address)],
+ seeds: [seed, addressEncoder.encode(payer.address)],
});
- const favData = {
- instruction: MyInstruction.CreateFav,
- number: 42,
+ }
+
+ test('Set the favorite pda and cross-check the updated data', async () => {
+ const [favoritesPda] = await deriveFavoritesPda('favorite');
+ const favData: Favorites = {
+ number: 42n,
color: 'blue',
hobbies: ['coding', 'reading', 'traveling'],
};
- const ix = {
- programAddress: programId,
- accounts: [
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
- { address: favoritesPda, role: AccountRole.WRITABLE },
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(borshSerialize(CreateFavSchema, favData)),
- };
-
- const result = await sendInstruction(ix);
+ const result = await sendInstruction(createCreatePdaInstruction(payer, favoritesPda, programId, favData));
assert(!(result instanceof FailedTransactionMetadata), `transaction failed: ${result.toString()}`);
const account = svm.getAccount(favoritesPda);
assert(account.exists, 'favorites account not found');
- const data = Buffer.from(account.data);
-
- const favoritesData = borsh.deserialize(FavoritesDataSchema, data) as FavoritesData;
- console.log('Deserialized data:', favoritesData);
-
- expect(Number(favoritesData.number)).to.equal(favData.number);
+ const favoritesData = favoritesDecoder.decode(account.data);
+ expect(favoritesData.number).to.equal(favData.number);
expect(favoritesData.color).to.equal(favData.color);
expect(favoritesData.hobbies).to.deep.equal(favData.hobbies);
});
test("Check if the test fails if the pda seeds aren't same", async () => {
// Derive a PDA using WRONG seeds so the program's on-chain seed check rejects it
- const [wrongPda] = await getProgramDerivedAddress({
- programAddress: programId,
- seeds: ['wrong_seed', addressEncoder.encode(payer.address)],
- });
- const favData = {
- instruction: MyInstruction.CreateFav,
- number: 42,
+ const [wrongPda] = await deriveFavoritesPda('wrong_seed');
+ const favData: Favorites = {
+ number: 42n,
color: 'blue',
hobbies: ['coding', 'reading', 'traveling'],
};
- const ix = {
- programAddress: programId,
- accounts: [
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
- { address: wrongPda, role: AccountRole.WRITABLE },
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(borshSerialize(CreateFavSchema, favData)),
- };
-
- const result = await sendInstruction(ix);
+ const result = await sendInstruction(createCreatePdaInstruction(payer, wrongPda, programId, favData));
assert(result instanceof FailedTransactionMetadata, 'Expected transaction to fail with wrong PDA seeds');
});
test('Get the favorite pda and cross-check the data', async () => {
- // Creating a new account with payer's pubkey
- const [favoritesPda] = await getProgramDerivedAddress({
- programAddress: programId,
- seeds: ['favorite', addressEncoder.encode(payer.address)],
- });
- const favData = {
- instruction: MyInstruction.CreateFav,
- number: 42,
+ const [favoritesPda] = await deriveFavoritesPda('favorite');
+ const favData: Favorites = {
+ number: 42n,
color: 'hazel',
hobbies: ['singing', 'dancing', 'skydiving'],
};
- const ix = {
- programAddress: programId,
- accounts: [
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
- { address: favoritesPda, role: AccountRole.WRITABLE },
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(borshSerialize(CreateFavSchema, favData)),
- };
-
- const result1 = await sendInstruction(ix);
+ const result1 = await sendInstruction(createCreatePdaInstruction(payer, favoritesPda, programId, favData));
assert(!(result1 instanceof FailedTransactionMetadata), `transaction failed: ${result1.toString()}`);
// Getting the user's data through the get_pda instruction
- const ix2 = {
- programAddress: programId,
- accounts: [
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
- { address: favoritesPda, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(borshSerialize(GetFavSchema, { instruction: MyInstruction.GetFav })),
- };
-
- const result = await sendInstruction(ix2);
+ const result = await sendInstruction(createGetPdaInstruction(payer, favoritesPda, programId));
assert(!(result instanceof FailedTransactionMetadata), `transaction failed: ${result.toString()}`);
});
});
diff --git a/basics/favorites/native/ts/index.ts b/basics/favorites/native/ts/index.ts
new file mode 100644
index 000000000..898deed08
--- /dev/null
+++ b/basics/favorites/native/ts/index.ts
@@ -0,0 +1,2 @@
+export * from './instructions';
+export * from './state';
diff --git a/basics/favorites/native/ts/instructions/create-pda.ts b/basics/favorites/native/ts/instructions/create-pda.ts
new file mode 100644
index 000000000..50717c605
--- /dev/null
+++ b/basics/favorites/native/ts/instructions/create-pda.ts
@@ -0,0 +1,40 @@
+import {
+ AccountRole,
+ addEncoderSizePrefix,
+ type Address,
+ getArrayEncoder,
+ getStructEncoder,
+ getU8Encoder,
+ getU32Encoder,
+ getU64Encoder,
+ getUtf8Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+import { FavoritesInstruction } from '.';
+import type { Favorites } from '../state';
+
+// Instruction data layout, matching the program's `FavoritesInstruction::CreatePda(Favorites)` variant.
+export const createPdaEncoder = getStructEncoder([
+ ['instruction', getU8Encoder()],
+ ['number', getU64Encoder()],
+ ['color', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['hobbies', getArrayEncoder(addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder()), { size: getU32Encoder() })],
+]);
+
+export function createCreatePdaInstruction(
+ user: TransactionSigner,
+ favoritesPda: Address,
+ programId: Address,
+ favorites: Favorites,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: user.address, role: AccountRole.WRITABLE_SIGNER, signer: user },
+ { address: favoritesPda, role: AccountRole.WRITABLE },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: createPdaEncoder.encode({ instruction: FavoritesInstruction.CreatePda, ...favorites }),
+ };
+}
diff --git a/basics/favorites/native/ts/instructions/get-pda.ts b/basics/favorites/native/ts/instructions/get-pda.ts
new file mode 100644
index 000000000..99eb20b0e
--- /dev/null
+++ b/basics/favorites/native/ts/instructions/get-pda.ts
@@ -0,0 +1,16 @@
+import { AccountRole, type Address, getStructEncoder, getU8Encoder, type TransactionSigner } from '@solana/kit';
+import { FavoritesInstruction } from '.';
+
+// Instruction data layout, matching the program's `FavoritesInstruction::GetPda` variant.
+export const getPdaEncoder = getStructEncoder([['instruction', getU8Encoder()]]);
+
+export function createGetPdaInstruction(user: TransactionSigner, favoritesPda: Address, programId: Address) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: user.address, role: AccountRole.WRITABLE_SIGNER, signer: user },
+ { address: favoritesPda, role: AccountRole.READONLY },
+ ],
+ data: getPdaEncoder.encode({ instruction: FavoritesInstruction.GetPda }),
+ };
+}
diff --git a/basics/favorites/native/ts/instructions/index.ts b/basics/favorites/native/ts/instructions/index.ts
new file mode 100644
index 000000000..3068422f0
--- /dev/null
+++ b/basics/favorites/native/ts/instructions/index.ts
@@ -0,0 +1,9 @@
+export * from './create-pda';
+export * from './get-pda';
+
+export const FavoritesInstruction = {
+ CreatePda: 0,
+ GetPda: 1,
+} as const;
+
+export type FavoritesInstruction = (typeof FavoritesInstruction)[keyof typeof FavoritesInstruction];
diff --git a/basics/favorites/native/ts/state/index.ts b/basics/favorites/native/ts/state/index.ts
new file mode 100644
index 000000000..480088a9d
--- /dev/null
+++ b/basics/favorites/native/ts/state/index.ts
@@ -0,0 +1,21 @@
+import {
+ addDecoderSizePrefix,
+ getArrayDecoder,
+ getStructDecoder,
+ getU32Decoder,
+ getU64Decoder,
+ getUtf8Decoder,
+} from '@solana/kit';
+
+export type Favorites = {
+ number: bigint;
+ color: string;
+ hobbies: string[];
+};
+
+// Account data layout, matching the program's `Favorites` struct.
+export const favoritesDecoder = getStructDecoder([
+ ['number', getU64Decoder()],
+ ['color', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+ ['hobbies', getArrayDecoder(addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder()), { size: getU32Decoder() })],
+]);
diff --git a/basics/hello-solana/anchor/package.json b/basics/hello-solana/anchor/package.json
index 2407e16f8..4a4db24a0 100644
--- a/basics/hello-solana/anchor/package.json
+++ b/basics/hello-solana/anchor/package.json
@@ -6,7 +6,6 @@
"litesvm": "^0.8.0"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/basics/hello-solana/anchor/pnpm-lock.yaml b/basics/hello-solana/anchor/pnpm-lock.yaml
index 32bd703bd..1f49c0df6 100644
--- a/basics/hello-solana/anchor/pnpm-lock.yaml
+++ b/basics/hello-solana/anchor/pnpm-lock.yaml
@@ -18,9 +18,6 @@ importers:
specifier: ^0.8.0
version: 0.8.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -267,9 +264,6 @@ packages:
'@swc/helpers@0.5.12':
resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1025,10 +1019,6 @@ snapshots:
dependencies:
tslib: 2.6.2
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/basics/pda-rent-payer/anchor/tests/test.ts b/basics/pda-rent-payer/anchor/tests/test.ts
index 09631f264..8bf16cbdf 100644
--- a/basics/pda-rent-payer/anchor/tests/test.ts
+++ b/basics/pda-rent-payer/anchor/tests/test.ts
@@ -1,6 +1,5 @@
import * as anchor from '@anchor-lang/core';
import { Keypair, LAMPORTS_PER_SOL, PublicKey } from '@solana/web3.js';
-import BN from 'bn.js';
import { assert } from 'chai';
import type { PdaRentPayer } from '../target/types/pda_rent_payer.ts';
@@ -16,7 +15,7 @@ describe('PDA Rent-Payer', () => {
it('Initialize the Rent Vault', async () => {
// 1 SOL
- const fundAmount = new BN(LAMPORTS_PER_SOL);
+ const fundAmount = new anchor.BN(LAMPORTS_PER_SOL);
await program.methods
.initRentVault(fundAmount)
diff --git a/basics/pda-rent-payer/native/package.json b/basics/pda-rent-payer/native/package.json
index 6154a1f6d..b2544926a 100644
--- a/basics/pda-rent-payer/native/package.json
+++ b/basics/pda-rent-payer/native/package.json
@@ -8,8 +8,7 @@
},
"dependencies": {
"@solana/kit": "^7.0.0",
- "@solana-program/system": "^0.13.0",
- "borsh": "^2.0.0"
+ "@solana-program/system": "^0.13.0"
},
"devDependencies": {
"@types/chai": "^5.2.3",
diff --git a/basics/pda-rent-payer/native/pnpm-lock.yaml b/basics/pda-rent-payer/native/pnpm-lock.yaml
index 882d62a26..0fc905212 100644
--- a/basics/pda-rent-payer/native/pnpm-lock.yaml
+++ b/basics/pda-rent-payer/native/pnpm-lock.yaml
@@ -14,9 +14,6 @@ importers:
'@solana/kit':
specifier: ^7.0.0
version: 7.0.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
devDependencies:
'@types/chai':
specifier: ^5.2.3
@@ -1036,9 +1033,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2512,8 +2506,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/basics/pda-rent-payer/native/tests/test.ts b/basics/pda-rent-payer/native/tests/test.ts
index d5ce91d19..42eaf6dfa 100644
--- a/basics/pda-rent-payer/native/tests/test.ts
+++ b/basics/pda-rent-payer/native/tests/test.ts
@@ -1,6 +1,4 @@
-import { Buffer } from 'node:buffer';
import {
- AccountRole,
type Address,
appendTransactionMessageInstruction,
createTransactionMessage,
@@ -12,10 +10,9 @@ import {
setTransactionMessageFeePayerSigner,
signTransactionMessageWithSigners,
} from '@solana/kit';
-import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
-import * as borsh from 'borsh';
import { assert } from 'chai';
import { FailedTransactionMetadata, LiteSVM } from 'litesvm';
+import { createCreateNewAccountInstruction, createInitRentVaultInstruction } from '../ts';
describe('PDA Rent-Payer', () => {
const svm = new LiteSVM();
@@ -29,53 +26,17 @@ describe('PDA Rent-Payer', () => {
svm.airdrop(payer.address, lamports(2_000_000_000n));
});
- const MyInstruction = {
- InitRentVault: 0,
- CreateNewAccount: 1,
- } as const;
-
- const InitRentVaultSchema = {
- struct: {
- instruction: 'u8',
- fund_lamports: 'u64',
- },
- };
-
- const CreateNewAccountSchema = {
- struct: {
- instruction: 'u8',
- },
- };
-
- function borshSerialize(schema: borsh.Schema, data: object): Buffer {
- return Buffer.from(borsh.serialize(schema, data));
- }
-
async function deriveRentVaultPda() {
- const pda = await getProgramDerivedAddress({
+ const [pda] = await getProgramDerivedAddress({
programAddress: programId,
seeds: ['rent_vault'],
});
- console.log(`PDA: ${pda[0]}`);
return pda;
}
it('Initialize the Rent Vault', async () => {
- const [rentVaultPda, _] = await deriveRentVaultPda();
- const ix = {
- programAddress: programId,
- accounts: [
- { address: rentVaultPda, role: AccountRole.WRITABLE },
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(
- borshSerialize(InitRentVaultSchema, {
- instruction: MyInstruction.InitRentVault,
- fund_lamports: 1000000000,
- }),
- ),
- };
+ const rentVaultPda = await deriveRentVaultPda();
+ const ix = createInitRentVaultInstruction(rentVaultPda, payer, programId, 1_000_000_000n);
const transactionMessage = pipe(
createTransactionMessage({ version: 0 }),
@@ -91,20 +52,8 @@ describe('PDA Rent-Payer', () => {
it('Create a new account using the Rent Vault', async () => {
const newAccount = await generateKeyPairSigner();
- const [rentVaultPda, _] = await deriveRentVaultPda();
- const ix = {
- programAddress: programId,
- accounts: [
- { address: newAccount.address, role: AccountRole.WRITABLE_SIGNER, signer: newAccount },
- { address: rentVaultPda, role: AccountRole.WRITABLE },
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(
- borshSerialize(CreateNewAccountSchema, {
- instruction: MyInstruction.CreateNewAccount,
- }),
- ),
- };
+ const rentVaultPda = await deriveRentVaultPda();
+ const ix = createCreateNewAccountInstruction(newAccount, rentVaultPda, programId);
const transactionMessage = pipe(
createTransactionMessage({ version: 0 }),
@@ -114,7 +63,6 @@ describe('PDA Rent-Payer', () => {
);
const signedTx = await signTransactionMessageWithSigners(transactionMessage);
- // Now we process the transaction
const result = svm.sendTransaction(signedTx);
assert(!(result instanceof FailedTransactionMetadata), `transaction failed: ${result.toString()}`);
});
diff --git a/basics/pda-rent-payer/native/ts/index.ts b/basics/pda-rent-payer/native/ts/index.ts
new file mode 100644
index 000000000..32b452fa4
--- /dev/null
+++ b/basics/pda-rent-payer/native/ts/index.ts
@@ -0,0 +1 @@
+export * from './instructions';
diff --git a/basics/pda-rent-payer/native/ts/instructions/create-new-account.ts b/basics/pda-rent-payer/native/ts/instructions/create-new-account.ts
new file mode 100644
index 000000000..27b7b2e50
--- /dev/null
+++ b/basics/pda-rent-payer/native/ts/instructions/create-new-account.ts
@@ -0,0 +1,22 @@
+import { AccountRole, type Address, getStructEncoder, getU8Encoder, type TransactionSigner } from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+import { MyInstruction } from '.';
+
+// Instruction data layout, matching the program's `MyInstruction::CreateNewAccount` variant.
+export const createNewAccountEncoder = getStructEncoder([['instruction', getU8Encoder()]]);
+
+export function createCreateNewAccountInstruction(
+ newAccount: TransactionSigner,
+ rentVault: Address,
+ programId: Address,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: newAccount.address, role: AccountRole.WRITABLE_SIGNER, signer: newAccount },
+ { address: rentVault, role: AccountRole.WRITABLE },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: createNewAccountEncoder.encode({ instruction: MyInstruction.CreateNewAccount }),
+ };
+}
diff --git a/basics/pda-rent-payer/native/ts/instructions/index.ts b/basics/pda-rent-payer/native/ts/instructions/index.ts
new file mode 100644
index 000000000..7b7d015a7
--- /dev/null
+++ b/basics/pda-rent-payer/native/ts/instructions/index.ts
@@ -0,0 +1,9 @@
+export * from './create-new-account';
+export * from './init-rent-vault';
+
+export const MyInstruction = {
+ InitRentVault: 0,
+ CreateNewAccount: 1,
+} as const;
+
+export type MyInstruction = (typeof MyInstruction)[keyof typeof MyInstruction];
diff --git a/basics/pda-rent-payer/native/ts/instructions/init-rent-vault.ts b/basics/pda-rent-payer/native/ts/instructions/init-rent-vault.ts
new file mode 100644
index 000000000..13957da80
--- /dev/null
+++ b/basics/pda-rent-payer/native/ts/instructions/init-rent-vault.ts
@@ -0,0 +1,33 @@
+import {
+ AccountRole,
+ type Address,
+ getStructEncoder,
+ getU8Encoder,
+ getU64Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+import { MyInstruction } from '.';
+
+// Instruction data layout, matching the program's `MyInstruction::InitRentVault(InitRentVaultArgs)` variant.
+export const initRentVaultEncoder = getStructEncoder([
+ ['instruction', getU8Encoder()],
+ ['fundLamports', getU64Encoder()],
+]);
+
+export function createInitRentVaultInstruction(
+ rentVault: Address,
+ payer: TransactionSigner,
+ programId: Address,
+ fundLamports: bigint,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: rentVault, role: AccountRole.WRITABLE },
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: initRentVaultEncoder.encode({ instruction: MyInstruction.InitRentVault, fundLamports }),
+ };
+}
diff --git a/basics/processing-instructions/anchor/package.json b/basics/processing-instructions/anchor/package.json
index 2407e16f8..4a4db24a0 100644
--- a/basics/processing-instructions/anchor/package.json
+++ b/basics/processing-instructions/anchor/package.json
@@ -6,7 +6,6 @@
"litesvm": "^0.8.0"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/basics/processing-instructions/anchor/pnpm-lock.yaml b/basics/processing-instructions/anchor/pnpm-lock.yaml
index 0d706c3ea..cc961e29f 100644
--- a/basics/processing-instructions/anchor/pnpm-lock.yaml
+++ b/basics/processing-instructions/anchor/pnpm-lock.yaml
@@ -18,9 +18,6 @@ importers:
specifier: ^0.8.0
version: 0.8.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -267,9 +264,6 @@ packages:
'@swc/helpers@0.5.12':
resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1022,10 +1016,6 @@ snapshots:
dependencies:
tslib: 2.6.2
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/basics/processing-instructions/native/package.json b/basics/processing-instructions/native/package.json
index eb551e615..4bf1e26e1 100644
--- a/basics/processing-instructions/native/package.json
+++ b/basics/processing-instructions/native/package.json
@@ -7,8 +7,7 @@
"deploy": "solana program deploy ./program/target/so/program.so"
},
"dependencies": {
- "@solana/kit": "^7.0.0",
- "borsh": "^2.0.0"
+ "@solana/kit": "^7.0.0"
},
"devDependencies": {
"@types/chai": "^5.2.3",
diff --git a/basics/processing-instructions/native/pnpm-lock.yaml b/basics/processing-instructions/native/pnpm-lock.yaml
index 7d95a9c76..6832a2433 100644
--- a/basics/processing-instructions/native/pnpm-lock.yaml
+++ b/basics/processing-instructions/native/pnpm-lock.yaml
@@ -11,9 +11,6 @@ importers:
'@solana/kit':
specifier: ^7.0.0
version: 7.0.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
devDependencies:
'@types/chai':
specifier: ^5.2.3
@@ -1028,9 +1025,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2500,8 +2494,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/basics/processing-instructions/native/tests/test.ts b/basics/processing-instructions/native/tests/test.ts
index 9a95405bc..3dceeb32d 100644
--- a/basics/processing-instructions/native/tests/test.ts
+++ b/basics/processing-instructions/native/tests/test.ts
@@ -1,6 +1,4 @@
-import { Buffer } from 'node:buffer';
import {
- AccountRole,
type Address,
appendTransactionMessageInstructions,
createTransactionMessage,
@@ -11,9 +9,9 @@ import {
setTransactionMessageFeePayerSigner,
signTransactionMessageWithSigners,
} from '@solana/kit';
-import * as borsh from 'borsh';
import { assert } from 'chai';
import { FailedTransactionMetadata, LiteSVM } from 'litesvm';
+import { createVisitParkInstruction } from '../ts';
describe('custom-instruction-data', () => {
const svm = new LiteSVM();
@@ -27,37 +25,9 @@ describe('custom-instruction-data', () => {
svm.airdrop(payer.address, lamports(1_000_000_000n));
});
- const InstructionDataSchema = {
- struct: {
- name: 'string',
- height: 'u32',
- },
- };
-
- function borshSerialize(schema: borsh.Schema, data: object): Buffer {
- return Buffer.from(borsh.serialize(schema, data));
- }
-
it('Go to the park!', async () => {
- const jimmy = borshSerialize(InstructionDataSchema, {
- name: 'Jimmy',
- height: 3,
- });
- const mary = borshSerialize(InstructionDataSchema, {
- name: 'Mary',
- height: 10,
- });
-
- const ix1 = {
- programAddress: programId,
- accounts: [{ address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }],
- data: new Uint8Array(jimmy),
- };
-
- const ix2 = {
- ...ix1,
- data: new Uint8Array(mary),
- };
+ const ix1 = createVisitParkInstruction(payer, programId, 'Jimmy', 3);
+ const ix2 = createVisitParkInstruction(payer, programId, 'Mary', 10);
const transactionMessage = pipe(
createTransactionMessage({ version: 0 }),
diff --git a/basics/processing-instructions/native/ts/index.ts b/basics/processing-instructions/native/ts/index.ts
new file mode 100644
index 000000000..32b452fa4
--- /dev/null
+++ b/basics/processing-instructions/native/ts/index.ts
@@ -0,0 +1 @@
+export * from './instructions';
diff --git a/basics/processing-instructions/native/ts/instructions/index.ts b/basics/processing-instructions/native/ts/instructions/index.ts
new file mode 100644
index 000000000..1e4db9e77
--- /dev/null
+++ b/basics/processing-instructions/native/ts/instructions/index.ts
@@ -0,0 +1 @@
+export * from './visit-park';
diff --git a/basics/processing-instructions/native/ts/instructions/visit-park.ts b/basics/processing-instructions/native/ts/instructions/visit-park.ts
new file mode 100644
index 000000000..a14ba2207
--- /dev/null
+++ b/basics/processing-instructions/native/ts/instructions/visit-park.ts
@@ -0,0 +1,23 @@
+import {
+ AccountRole,
+ addEncoderSizePrefix,
+ type Address,
+ getStructEncoder,
+ getU32Encoder,
+ getUtf8Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
+
+// Instruction data layout, matching the program's `InstructionData` struct.
+export const visitParkEncoder = getStructEncoder([
+ ['name', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['height', getU32Encoder()],
+]);
+
+export function createVisitParkInstruction(payer: TransactionSigner, programId: Address, name: string, height: number) {
+ return {
+ programAddress: programId,
+ accounts: [{ address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }],
+ data: visitParkEncoder.encode({ name, height }),
+ };
+}
diff --git a/basics/program-derived-addresses/anchor/package.json b/basics/program-derived-addresses/anchor/package.json
index 2407e16f8..4a4db24a0 100644
--- a/basics/program-derived-addresses/anchor/package.json
+++ b/basics/program-derived-addresses/anchor/package.json
@@ -6,7 +6,6 @@
"litesvm": "^0.8.0"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/basics/program-derived-addresses/anchor/pnpm-lock.yaml b/basics/program-derived-addresses/anchor/pnpm-lock.yaml
index 32bd703bd..1f49c0df6 100644
--- a/basics/program-derived-addresses/anchor/pnpm-lock.yaml
+++ b/basics/program-derived-addresses/anchor/pnpm-lock.yaml
@@ -18,9 +18,6 @@ importers:
specifier: ^0.8.0
version: 0.8.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -267,9 +264,6 @@ packages:
'@swc/helpers@0.5.12':
resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1025,10 +1019,6 @@ snapshots:
dependencies:
tslib: 2.6.2
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/basics/program-derived-addresses/native/package.json b/basics/program-derived-addresses/native/package.json
index d0f11dcbf..9b5fb1a50 100644
--- a/basics/program-derived-addresses/native/package.json
+++ b/basics/program-derived-addresses/native/package.json
@@ -8,8 +8,7 @@
},
"dependencies": {
"@solana/kit": "^7.0.0",
- "@solana-program/system": "^0.13.0",
- "borsh": "^2.0.0"
+ "@solana-program/system": "^0.13.0"
},
"devDependencies": {
"@types/chai": "^5.2.3",
diff --git a/basics/program-derived-addresses/native/pnpm-lock.yaml b/basics/program-derived-addresses/native/pnpm-lock.yaml
index 882d62a26..0fc905212 100644
--- a/basics/program-derived-addresses/native/pnpm-lock.yaml
+++ b/basics/program-derived-addresses/native/pnpm-lock.yaml
@@ -14,9 +14,6 @@ importers:
'@solana/kit':
specifier: ^7.0.0
version: 7.0.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
devDependencies:
'@types/chai':
specifier: ^5.2.3
@@ -1036,9 +1033,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2512,8 +2506,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/basics/program-derived-addresses/native/tests/test.ts b/basics/program-derived-addresses/native/tests/test.ts
index 903bfec73..e3d192f93 100644
--- a/basics/program-derived-addresses/native/tests/test.ts
+++ b/basics/program-derived-addresses/native/tests/test.ts
@@ -1,7 +1,5 @@
import assert from 'node:assert';
-import { Buffer } from 'node:buffer';
import {
- AccountRole,
type Address,
appendTransactionMessageInstruction,
createTransactionMessage,
@@ -16,8 +14,8 @@ import {
signTransactionMessageWithSigners,
} from '@solana/kit';
import { getCreateAccountInstruction, SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
-import * as borsh from 'borsh';
import { FailedTransactionMetadata, LiteSVM } from 'litesvm';
+import { createCreatePageVisitsInstruction, createIncrementPageVisitsInstruction, pageVisitsDecoder } from '../ts';
describe('PDAs', () => {
const svm = new LiteSVM();
@@ -33,20 +31,6 @@ describe('PDAs', () => {
testUser = await generateKeyPairSigner();
});
- const PageVisitsSchema = {
- struct: {
- page_visits: 'u32',
- bump: 'u8',
- },
- };
-
- // Empty struct — just needs to serialize to zero bytes
- const IncrementPageVisitsSchema = { struct: {} };
-
- function borshSerialize(schema: borsh.Schema, data: object): Buffer {
- return Buffer.from(borsh.serialize(schema, data));
- }
-
async function sendTransaction(ix: Instruction) {
const transactionMessage = pipe(
createTransactionMessage({ version: 0 }),
@@ -82,62 +66,31 @@ describe('PDAs', () => {
it('Create the page visits tracking PDA', async () => {
const [pageVisitsPda, pageVisitsBump] = await derivePageVisitsPda(testUser.address);
- const ix = {
- programAddress: programId,
- accounts: [
- { address: pageVisitsPda, role: AccountRole.WRITABLE },
- { address: testUser.address, role: AccountRole.READONLY },
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(
- borshSerialize(PageVisitsSchema, {
- page_visits: 0,
- bump: pageVisitsBump,
- }),
- ),
- };
+ const ix = createCreatePageVisitsInstruction(pageVisitsPda, testUser.address, payer, programId, pageVisitsBump);
await sendTransaction(ix);
});
it('Visit the page!', async () => {
- const [pageVisitsPda, _] = await derivePageVisitsPda(testUser.address);
- const ix = {
- programAddress: programId,
- accounts: [
- { address: pageVisitsPda, role: AccountRole.WRITABLE },
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
- ],
- data: new Uint8Array(borshSerialize(IncrementPageVisitsSchema, {})),
- };
+ const [pageVisitsPda] = await derivePageVisitsPda(testUser.address);
+ const ix = createIncrementPageVisitsInstruction(pageVisitsPda, payer, programId);
await sendTransaction(ix);
});
it('Visit the page!', async () => {
- const [pageVisitsPda, _] = await derivePageVisitsPda(testUser.address);
- const ix = {
- programAddress: programId,
- accounts: [
- { address: pageVisitsPda, role: AccountRole.WRITABLE },
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
- ],
- data: new Uint8Array(borshSerialize(IncrementPageVisitsSchema, {})),
- };
+ const [pageVisitsPda] = await derivePageVisitsPda(testUser.address);
+ const ix = createIncrementPageVisitsInstruction(pageVisitsPda, payer, programId);
svm.expireBlockhash();
await sendTransaction(ix);
});
it('Read page visits', async () => {
- const [pageVisitsPda, _] = await derivePageVisitsPda(testUser.address);
+ const [pageVisitsPda] = await derivePageVisitsPda(testUser.address);
const accountInfo = svm.getAccount(pageVisitsPda);
assert(accountInfo.exists, 'page visits account not found');
- const readPageVisits = borsh.deserialize(PageVisitsSchema, Buffer.from(accountInfo.data)) as {
- page_visits: number;
- bump: number;
- };
- console.log(`Number of page visits: ${readPageVisits.page_visits}`);
+ const readPageVisits = pageVisitsDecoder.decode(accountInfo.data);
+ console.log(`Number of page visits: ${readPageVisits.pageVisits}`);
});
});
diff --git a/basics/program-derived-addresses/native/ts/index.ts b/basics/program-derived-addresses/native/ts/index.ts
new file mode 100644
index 000000000..898deed08
--- /dev/null
+++ b/basics/program-derived-addresses/native/ts/index.ts
@@ -0,0 +1,2 @@
+export * from './instructions';
+export * from './state';
diff --git a/basics/program-derived-addresses/native/ts/instructions/create.ts b/basics/program-derived-addresses/native/ts/instructions/create.ts
new file mode 100644
index 000000000..f19d51c1d
--- /dev/null
+++ b/basics/program-derived-addresses/native/ts/instructions/create.ts
@@ -0,0 +1,36 @@
+import {
+ AccountRole,
+ type Address,
+ getStructEncoder,
+ getU32Encoder,
+ getU8Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+
+// Instruction data layout, matching the program's `PageVisits` struct. The program
+// tells its two instructions apart by which struct the data deserializes into.
+export const createPageVisitsEncoder = getStructEncoder([
+ ['pageVisits', getU32Encoder()],
+ ['bump', getU8Encoder()],
+]);
+
+export function createCreatePageVisitsInstruction(
+ pageVisitsAddress: Address,
+ user: Address,
+ payer: TransactionSigner,
+ programId: Address,
+ bump: number,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: pageVisitsAddress, role: AccountRole.WRITABLE },
+ { address: user, role: AccountRole.READONLY },
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ // A freshly created tracker starts with no visits recorded.
+ data: createPageVisitsEncoder.encode({ pageVisits: 0, bump }),
+ };
+}
diff --git a/basics/program-derived-addresses/native/ts/instructions/increment.ts b/basics/program-derived-addresses/native/ts/instructions/increment.ts
new file mode 100644
index 000000000..341ae37fd
--- /dev/null
+++ b/basics/program-derived-addresses/native/ts/instructions/increment.ts
@@ -0,0 +1,20 @@
+import { AccountRole, type Address, getStructEncoder, type TransactionSigner } from '@solana/kit';
+
+// Instruction data layout, matching the program's `IncrementPageVisits` struct,
+// which has no fields and therefore encodes to zero bytes.
+export const incrementPageVisitsEncoder = getStructEncoder([]);
+
+export function createIncrementPageVisitsInstruction(
+ pageVisitsAddress: Address,
+ payer: TransactionSigner,
+ programId: Address,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: pageVisitsAddress, role: AccountRole.WRITABLE },
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ ],
+ data: incrementPageVisitsEncoder.encode({}),
+ };
+}
diff --git a/basics/program-derived-addresses/native/ts/instructions/index.ts b/basics/program-derived-addresses/native/ts/instructions/index.ts
new file mode 100644
index 000000000..6d5115a1b
--- /dev/null
+++ b/basics/program-derived-addresses/native/ts/instructions/index.ts
@@ -0,0 +1,2 @@
+export * from './create';
+export * from './increment';
diff --git a/basics/program-derived-addresses/native/ts/state/index.ts b/basics/program-derived-addresses/native/ts/state/index.ts
new file mode 100644
index 000000000..b942ef89e
--- /dev/null
+++ b/basics/program-derived-addresses/native/ts/state/index.ts
@@ -0,0 +1,7 @@
+import { getStructDecoder, getU32Decoder, getU8Decoder } from '@solana/kit';
+
+// Account data layout, matching the program's `PageVisits` struct.
+export const pageVisitsDecoder = getStructDecoder([
+ ['pageVisits', getU32Decoder()],
+ ['bump', getU8Decoder()],
+]);
diff --git a/basics/realloc/anchor/package.json b/basics/realloc/anchor/package.json
index e58ba0b2a..734bda4bd 100644
--- a/basics/realloc/anchor/package.json
+++ b/basics/realloc/anchor/package.json
@@ -10,7 +10,6 @@
"litesvm": "^0.8.0"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/basics/realloc/anchor/pnpm-lock.yaml b/basics/realloc/anchor/pnpm-lock.yaml
index d5fe3ec2c..6c9cc41e7 100644
--- a/basics/realloc/anchor/pnpm-lock.yaml
+++ b/basics/realloc/anchor/pnpm-lock.yaml
@@ -18,9 +18,6 @@ importers:
specifier: ^0.8.0
version: 0.8.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -270,9 +267,6 @@ packages:
'@swc/helpers@0.5.12':
resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1033,10 +1027,6 @@ snapshots:
dependencies:
tslib: 2.6.2
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/basics/realloc/native/package.json b/basics/realloc/native/package.json
index 381bc6de7..05b455fc7 100644
--- a/basics/realloc/native/package.json
+++ b/basics/realloc/native/package.json
@@ -8,8 +8,7 @@
},
"dependencies": {
"@solana/kit": "^7.0.0",
- "@solana-program/system": "^0.13.0",
- "borsh": "^2.0.0"
+ "@solana-program/system": "^0.13.0"
},
"devDependencies": {
"@types/chai": "^5.2.3",
diff --git a/basics/realloc/native/pnpm-lock.yaml b/basics/realloc/native/pnpm-lock.yaml
index 882d62a26..0fc905212 100644
--- a/basics/realloc/native/pnpm-lock.yaml
+++ b/basics/realloc/native/pnpm-lock.yaml
@@ -14,9 +14,6 @@ importers:
'@solana/kit':
specifier: ^7.0.0
version: 7.0.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
devDependencies:
'@types/chai':
specifier: ^5.2.3
@@ -1036,9 +1033,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2512,8 +2506,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/basics/realloc/native/tests/realloc.test.ts b/basics/realloc/native/tests/realloc.test.ts
index 05b062847..4f73711fe 100644
--- a/basics/realloc/native/tests/realloc.test.ts
+++ b/basics/realloc/native/tests/realloc.test.ts
@@ -1,4 +1,3 @@
-import { Buffer } from 'node:buffer';
import {
type Address,
appendTransactionMessageInstruction,
@@ -14,12 +13,12 @@ import {
import { assert } from 'chai';
import { FailedTransactionMetadata, LiteSVM } from 'litesvm';
import {
- AddressInfo,
+ addressInfoDecoder,
createCreateInstruction,
createReallocateWithoutZeroInitInstruction,
createReallocateZeroInitInstruction,
- EnhancedAddressInfo,
- WorkInfo,
+ enhancedAddressInfoDecoder,
+ workInfoDecoder,
} from '../ts';
describe('Realloc!', () => {
@@ -84,7 +83,7 @@ describe('Realloc!', () => {
function printAddressInfo(address: Address): void {
const account = svm.getAccount(address);
if (account.exists) {
- const addressInfo = AddressInfo.fromBuffer(Buffer.from(account.data));
+ const addressInfo = addressInfoDecoder.decode(account.data);
console.log('Address info:');
console.log(` Name: ${addressInfo.name}`);
console.log(` House Num: ${addressInfo.house_number}`);
@@ -96,7 +95,7 @@ describe('Realloc!', () => {
function printEnhancedAddressInfo(address: Address): void {
const account = svm.getAccount(address);
if (account.exists) {
- const enhancedAddressInfo = EnhancedAddressInfo.fromBuffer(Buffer.from(account.data));
+ const enhancedAddressInfo = enhancedAddressInfoDecoder.decode(account.data);
console.log('Enhanced Address info:');
console.log(` Name: ${enhancedAddressInfo.name}`);
console.log(` House Num: ${enhancedAddressInfo.house_number}`);
@@ -110,7 +109,7 @@ describe('Realloc!', () => {
function printWorkInfo(address: Address): void {
const account = svm.getAccount(address);
if (account.exists) {
- const workInfo = WorkInfo.fromBuffer(Buffer.from(account.data));
+ const workInfo = workInfoDecoder.decode(account.data);
console.log('Work info:');
console.log(` Name: ${workInfo.name}`);
console.log(` Position: ${workInfo.position}`);
diff --git a/basics/realloc/native/ts/index.ts b/basics/realloc/native/ts/index.ts
index 70c7f3510..9a5cbc81d 100644
--- a/basics/realloc/native/ts/index.ts
+++ b/basics/realloc/native/ts/index.ts
@@ -1,7 +1,3 @@
-export * from './instructions/create';
-export * from './instructions/instruction';
-export * from './instructions/reallocate';
-export * from './state/address-info';
-export * from './state/enhanced-address-info';
-export * from './state/work-info';
-export * from './util/util';
+export * from './instructions';
+export * from './state';
+export * from './util';
diff --git a/basics/realloc/native/ts/instructions/create.ts b/basics/realloc/native/ts/instructions/create.ts
index 2d4647aba..c54cca377 100644
--- a/basics/realloc/native/ts/instructions/create.ts
+++ b/basics/realloc/native/ts/instructions/create.ts
@@ -1,18 +1,24 @@
-import { Buffer } from 'node:buffer';
-import { AccountRole, type Address, type TransactionSigner } from '@solana/kit';
+import {
+ AccountRole,
+ addEncoderSizePrefix,
+ type Address,
+ getStructEncoder,
+ getU8Encoder,
+ getU32Encoder,
+ getUtf8Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
-import * as borsh from 'borsh';
-import { ReallocInstruction } from './instruction';
+import { ReallocInstruction } from '.';
-const CreateSchema = {
- struct: {
- instruction: 'u8',
- name: 'string',
- house_number: 'u8',
- street: 'string',
- city: 'string',
- },
-} as const;
+// Instruction data layout, matching the program's `ReallocInstruction::Create(AddressInfo)` variant.
+export const createEncoder = getStructEncoder([
+ ['instruction', getU8Encoder()],
+ ['name', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['house_number', getU8Encoder()],
+ ['street', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['city', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+]);
export function createCreateInstruction(
target: TransactionSigner,
@@ -23,16 +29,6 @@ export function createCreateInstruction(
street: string,
city: string,
) {
- const data = Buffer.from(
- borsh.serialize(CreateSchema, {
- instruction: ReallocInstruction.Create,
- name,
- house_number,
- street,
- city,
- }),
- );
-
return {
programAddress: programId,
accounts: [
@@ -40,6 +36,12 @@ export function createCreateInstruction(
{ address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
{ address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
],
- data: new Uint8Array(data),
+ data: createEncoder.encode({
+ instruction: ReallocInstruction.Create,
+ name,
+ house_number,
+ street,
+ city,
+ }),
};
}
diff --git a/basics/realloc/native/ts/instructions/index.ts b/basics/realloc/native/ts/instructions/index.ts
index a0876a284..4b879c800 100644
--- a/basics/realloc/native/ts/instructions/index.ts
+++ b/basics/realloc/native/ts/instructions/index.ts
@@ -1,3 +1,10 @@
export * from './create';
-export * from './instruction';
export * from './reallocate';
+
+export const ReallocInstruction = {
+ Create: 0,
+ ReallocateWithoutZeroInit: 1,
+ ReallocateZeroInit: 2,
+} as const;
+
+export type ReallocInstruction = (typeof ReallocInstruction)[keyof typeof ReallocInstruction];
diff --git a/basics/realloc/native/ts/instructions/instruction.ts b/basics/realloc/native/ts/instructions/instruction.ts
deleted file mode 100644
index cbb264c96..000000000
--- a/basics/realloc/native/ts/instructions/instruction.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export enum ReallocInstruction {
- Create = 0,
- ReallocateWithoutZeroInit = 1,
- ReallocateZeroInit = 2,
-}
diff --git a/basics/realloc/native/ts/instructions/reallocate.ts b/basics/realloc/native/ts/instructions/reallocate.ts
index cb1ad805f..6cd83bfd6 100644
--- a/basics/realloc/native/ts/instructions/reallocate.ts
+++ b/basics/realloc/native/ts/instructions/reallocate.ts
@@ -1,16 +1,23 @@
-import { Buffer } from 'node:buffer';
-import { AccountRole, type Address, type TransactionSigner } from '@solana/kit';
+import {
+ AccountRole,
+ addEncoderSizePrefix,
+ type Address,
+ getStructEncoder,
+ getU8Encoder,
+ getU32Encoder,
+ getUtf8Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
-import * as borsh from 'borsh';
-import { ReallocInstruction } from './instruction';
+import { ReallocInstruction } from '.';
-const ReallocateWithoutZeroInitSchema = {
- struct: {
- instruction: 'u8',
- state: 'string',
- zip: 'u32',
- },
-} as const;
+// Instruction data layout, matching the program's
+// `ReallocInstruction::ReallocateWithoutZeroInit(EnhancedAddressInfoExtender)` variant.
+export const reallocateWithoutZeroInitEncoder = getStructEncoder([
+ ['instruction', getU8Encoder()],
+ ['state', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['zip', getU32Encoder()],
+]);
export function createReallocateWithoutZeroInitInstruction(
target: Address,
@@ -19,14 +26,6 @@ export function createReallocateWithoutZeroInitInstruction(
state: string,
zip: number,
) {
- const data = Buffer.from(
- borsh.serialize(ReallocateWithoutZeroInitSchema, {
- instruction: ReallocInstruction.ReallocateWithoutZeroInit,
- state,
- zip,
- }),
- );
-
return {
programAddress: programId,
accounts: [
@@ -34,19 +33,23 @@ export function createReallocateWithoutZeroInitInstruction(
{ address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
{ address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
],
- data: new Uint8Array(data),
+ data: reallocateWithoutZeroInitEncoder.encode({
+ instruction: ReallocInstruction.ReallocateWithoutZeroInit,
+ state,
+ zip,
+ }),
};
}
-const ReallocateZeroInitSchema = {
- struct: {
- instruction: 'u8',
- name: 'string',
- position: 'string',
- company: 'string',
- years_employed: 'u8',
- },
-} as const;
+// Instruction data layout, matching the program's
+// `ReallocInstruction::ReallocateZeroInit(WorkInfo)` variant.
+export const reallocateZeroInitEncoder = getStructEncoder([
+ ['instruction', getU8Encoder()],
+ ['name', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['position', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['company', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['years_employed', getU8Encoder()],
+]);
export function createReallocateZeroInitInstruction(
target: Address,
@@ -57,19 +60,15 @@ export function createReallocateZeroInitInstruction(
company: string,
years_employed: number,
) {
- const data = Buffer.from(
- borsh.serialize(ReallocateZeroInitSchema, {
+ return {
+ programAddress: programId,
+ accounts: [{ address: target, role: AccountRole.WRITABLE }],
+ data: reallocateZeroInitEncoder.encode({
instruction: ReallocInstruction.ReallocateZeroInit,
name,
position,
company,
years_employed,
}),
- );
-
- return {
- programAddress: programId,
- accounts: [{ address: target, role: AccountRole.WRITABLE }],
- data: new Uint8Array(data),
};
}
diff --git a/basics/realloc/native/ts/state/address-info.ts b/basics/realloc/native/ts/state/address-info.ts
index 2eb14431c..e90b1138b 100644
--- a/basics/realloc/native/ts/state/address-info.ts
+++ b/basics/realloc/native/ts/state/address-info.ts
@@ -1,33 +1,9 @@
-import { Buffer } from 'node:buffer';
-import * as borsh from 'borsh';
-
-export const AddressInfoSchema = {
- struct: {
- name: 'string',
- house_number: 'u8',
- street: 'string',
- city: 'string',
- },
-} as const;
-
-export class AddressInfo {
- name: string;
- house_number: number;
- street: string;
- city: string;
-
- constructor(props: { name: string; house_number: number; street: string; city: string }) {
- this.name = props.name;
- this.house_number = props.house_number;
- this.street = props.street;
- this.city = props.city;
- }
-
- toBuffer() {
- return Buffer.from(borsh.serialize(AddressInfoSchema, this));
- }
-
- static fromBuffer(buffer: Buffer): AddressInfo {
- return borsh.deserialize(AddressInfoSchema, buffer) as AddressInfo;
- }
-}
+import { addDecoderSizePrefix, getStructDecoder, getU8Decoder, getU32Decoder, getUtf8Decoder } from '@solana/kit';
+
+// Account data layout, matching the program's `AddressInfo` struct.
+export const addressInfoDecoder = getStructDecoder([
+ ['name', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+ ['house_number', getU8Decoder()],
+ ['street', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+ ['city', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+]);
diff --git a/basics/realloc/native/ts/state/enhanced-address-info.ts b/basics/realloc/native/ts/state/enhanced-address-info.ts
index de11d1687..1c1636e4b 100644
--- a/basics/realloc/native/ts/state/enhanced-address-info.ts
+++ b/basics/realloc/native/ts/state/enhanced-address-info.ts
@@ -1,46 +1,11 @@
-import { Buffer } from 'node:buffer';
-import * as borsh from 'borsh';
-
-export const EnhancedAddressInfoSchema = {
- struct: {
- name: 'string',
- house_number: 'u8',
- street: 'string',
- city: 'string',
- state: 'string',
- zip: 'u32',
- },
-} as const;
-
-export class EnhancedAddressInfo {
- name: string;
- house_number: number;
- street: string;
- city: string;
- state: string;
- zip: number;
-
- constructor(props: {
- name: string;
- house_number: number;
- street: string;
- city: string;
- state: string;
- zip: number;
- }) {
- this.name = props.name;
- this.house_number = props.house_number;
- this.street = props.street;
- this.city = props.city;
- this.state = props.state;
- this.zip = props.zip;
- }
-
- toBuffer() {
- return Buffer.from(borsh.serialize(EnhancedAddressInfoSchema, this));
- }
-
- static fromBuffer(buffer: Buffer): EnhancedAddressInfo {
- return borsh.deserialize(EnhancedAddressInfoSchema, buffer) as EnhancedAddressInfo;
- }
-}
+import { addDecoderSizePrefix, getStructDecoder, getU8Decoder, getU32Decoder, getUtf8Decoder } from '@solana/kit';
+
+// Account data layout, matching the program's `EnhancedAddressInfo` struct.
+export const enhancedAddressInfoDecoder = getStructDecoder([
+ ['name', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+ ['house_number', getU8Decoder()],
+ ['street', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+ ['city', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+ ['state', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+ ['zip', getU32Decoder()],
+]);
diff --git a/basics/realloc/native/ts/state/work-info.ts b/basics/realloc/native/ts/state/work-info.ts
index 638537883..3b1bf2f38 100644
--- a/basics/realloc/native/ts/state/work-info.ts
+++ b/basics/realloc/native/ts/state/work-info.ts
@@ -1,33 +1,9 @@
-import { Buffer } from 'node:buffer';
-import * as borsh from 'borsh';
-
-export const WorkInfoSchema = {
- struct: {
- name: 'string',
- position: 'string',
- company: 'string',
- years_employed: 'u8',
- },
-} as const;
-
-export class WorkInfo {
- name: string;
- position: string;
- company: string;
- years_employed: number;
-
- constructor(props: { name: string; position: string; company: string; years_employed: number }) {
- this.name = props.name;
- this.position = props.position;
- this.company = props.company;
- this.years_employed = props.years_employed;
- }
-
- toBuffer() {
- return Buffer.from(borsh.serialize(WorkInfoSchema, this));
- }
-
- static fromBuffer(buffer: Buffer): WorkInfo {
- return borsh.deserialize(WorkInfoSchema, buffer) as WorkInfo;
- }
-}
+import { addDecoderSizePrefix, getStructDecoder, getU8Decoder, getU32Decoder, getUtf8Decoder } from '@solana/kit';
+
+// Account data layout, matching the program's `WorkInfo` struct.
+export const workInfoDecoder = getStructDecoder([
+ ['name', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+ ['position', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+ ['company', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
+ ['years_employed', getU8Decoder()],
+]);
diff --git a/basics/repository-layout/anchor/package.json b/basics/repository-layout/anchor/package.json
index 2407e16f8..4a4db24a0 100644
--- a/basics/repository-layout/anchor/package.json
+++ b/basics/repository-layout/anchor/package.json
@@ -6,7 +6,6 @@
"litesvm": "^0.8.0"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/basics/repository-layout/anchor/pnpm-lock.yaml b/basics/repository-layout/anchor/pnpm-lock.yaml
index 688918273..7994511fe 100644
--- a/basics/repository-layout/anchor/pnpm-lock.yaml
+++ b/basics/repository-layout/anchor/pnpm-lock.yaml
@@ -18,9 +18,6 @@ importers:
specifier: ^0.8.0
version: 0.8.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -267,9 +264,6 @@ packages:
'@swc/helpers@0.5.12':
resolution: {integrity: sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1022,10 +1016,6 @@ snapshots:
dependencies:
tslib: 2.6.2
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/basics/repository-layout/native/package.json b/basics/repository-layout/native/package.json
index eb551e615..4bf1e26e1 100644
--- a/basics/repository-layout/native/package.json
+++ b/basics/repository-layout/native/package.json
@@ -7,8 +7,7 @@
"deploy": "solana program deploy ./program/target/so/program.so"
},
"dependencies": {
- "@solana/kit": "^7.0.0",
- "borsh": "^2.0.0"
+ "@solana/kit": "^7.0.0"
},
"devDependencies": {
"@types/chai": "^5.2.3",
diff --git a/basics/repository-layout/native/pnpm-lock.yaml b/basics/repository-layout/native/pnpm-lock.yaml
index 7d95a9c76..6832a2433 100644
--- a/basics/repository-layout/native/pnpm-lock.yaml
+++ b/basics/repository-layout/native/pnpm-lock.yaml
@@ -11,9 +11,6 @@ importers:
'@solana/kit':
specifier: ^7.0.0
version: 7.0.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
devDependencies:
'@types/chai':
specifier: ^5.2.3
@@ -1028,9 +1025,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2500,8 +2494,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/basics/repository-layout/native/tests/test.ts b/basics/repository-layout/native/tests/test.ts
index 61b181721..e0be27f61 100644
--- a/basics/repository-layout/native/tests/test.ts
+++ b/basics/repository-layout/native/tests/test.ts
@@ -1,6 +1,4 @@
-import { Buffer } from 'node:buffer';
import {
- AccountRole,
type Address,
appendTransactionMessageInstructions,
createTransactionMessage,
@@ -11,9 +9,9 @@ import {
setTransactionMessageFeePayerSigner,
signTransactionMessageWithSigners,
} from '@solana/kit';
-import * as borsh from 'borsh';
import { assert } from 'chai';
import { FailedTransactionMetadata, LiteSVM } from 'litesvm';
+import { type CarnivalInstructionData, createCarnivalInstruction } from '../ts';
describe('Carnival', () => {
const svm = new LiteSVM();
@@ -27,34 +25,8 @@ describe('Carnival', () => {
svm.airdrop(payer.address, lamports(1_000_000_000n));
});
- const CarnivalInstructionSchema = {
- struct: {
- name: 'string',
- height: 'u32',
- ticket_count: 'u32',
- attraction: 'string',
- attraction_name: 'string',
- },
- };
-
- type CarnivalInstruction = {
- name: string;
- height: number;
- ticket_count: number;
- attraction: string;
- attraction_name: string;
- };
-
- function borshSerialize(schema: borsh.Schema, data: object): Buffer {
- return Buffer.from(borsh.serialize(schema, data));
- }
-
- async function sendCarnivalInstructions(instructionsList: CarnivalInstruction[]) {
- const instructions = instructionsList.map(ix => ({
- programAddress: programId,
- accounts: [{ address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }],
- data: new Uint8Array(borshSerialize(CarnivalInstructionSchema, ix)),
- }));
+ async function sendCarnivalInstructions(instructionsList: CarnivalInstructionData[]) {
+ const instructions = instructionsList.map(data => createCarnivalInstruction(payer, programId, data));
const transactionMessage = pipe(
createTransactionMessage({ version: 0 }),
@@ -73,30 +45,30 @@ describe('Carnival', () => {
{
name: 'Jimmy',
height: 36,
- ticket_count: 15,
+ ticketCount: 15,
attraction: 'ride',
- attraction_name: 'Scrambler',
+ attractionName: 'Scrambler',
},
{
name: 'Mary',
height: 52,
- ticket_count: 1,
+ ticketCount: 1,
attraction: 'ride',
- attraction_name: 'Ferris Wheel',
+ attractionName: 'Ferris Wheel',
},
{
name: 'Alice',
height: 56,
- ticket_count: 15,
+ ticketCount: 15,
attraction: 'ride',
- attraction_name: 'Scrambler',
+ attractionName: 'Scrambler',
},
{
name: 'Bob',
height: 49,
- ticket_count: 6,
+ ticketCount: 6,
attraction: 'ride',
- attraction_name: 'Tilt-a-Whirl',
+ attractionName: 'Tilt-a-Whirl',
},
]);
});
@@ -106,30 +78,30 @@ describe('Carnival', () => {
{
name: 'Jimmy',
height: 36,
- ticket_count: 15,
+ ticketCount: 15,
attraction: 'game',
- attraction_name: 'I Got It!',
+ attractionName: 'I Got It!',
},
{
name: 'Mary',
height: 52,
- ticket_count: 1,
+ ticketCount: 1,
attraction: 'game',
- attraction_name: 'Ring Toss',
+ attractionName: 'Ring Toss',
},
{
name: 'Alice',
height: 56,
- ticket_count: 15,
+ ticketCount: 15,
attraction: 'game',
- attraction_name: 'Ladder Climb',
+ attractionName: 'Ladder Climb',
},
{
name: 'Bob',
height: 49,
- ticket_count: 6,
+ ticketCount: 6,
attraction: 'game',
- attraction_name: 'Ring Toss',
+ attractionName: 'Ring Toss',
},
]);
});
@@ -139,30 +111,30 @@ describe('Carnival', () => {
{
name: 'Jimmy',
height: 36,
- ticket_count: 15,
+ ticketCount: 15,
attraction: 'food',
- attraction_name: 'Taco Shack',
+ attractionName: 'Taco Shack',
},
{
name: 'Mary',
height: 52,
- ticket_count: 1,
+ ticketCount: 1,
attraction: 'food',
- attraction_name: "Larry's Pizza",
+ attractionName: "Larry's Pizza",
},
{
name: 'Alice',
height: 56,
- ticket_count: 15,
+ ticketCount: 15,
attraction: 'food',
- attraction_name: "Dough Boy's",
+ attractionName: "Dough Boy's",
},
{
name: 'Bob',
height: 49,
- ticket_count: 6,
+ ticketCount: 6,
attraction: 'food',
- attraction_name: "Dough Boy's",
+ attractionName: "Dough Boy's",
},
]);
});
diff --git a/basics/repository-layout/native/ts/index.ts b/basics/repository-layout/native/ts/index.ts
new file mode 100644
index 000000000..32b452fa4
--- /dev/null
+++ b/basics/repository-layout/native/ts/index.ts
@@ -0,0 +1 @@
+export * from './instructions';
diff --git a/basics/repository-layout/native/ts/instructions/carnival.ts b/basics/repository-layout/native/ts/instructions/carnival.ts
new file mode 100644
index 000000000..1a099ea5c
--- /dev/null
+++ b/basics/repository-layout/native/ts/instructions/carnival.ts
@@ -0,0 +1,37 @@
+import {
+ AccountRole,
+ addEncoderSizePrefix,
+ type Address,
+ getStructEncoder,
+ getU32Encoder,
+ getUtf8Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
+
+// Instruction data layout, matching the program's `CarnivalInstructionData` struct.
+export const carnivalEncoder = getStructEncoder([
+ ['name', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['height', getU32Encoder()],
+ ['ticketCount', getU32Encoder()],
+ ['attraction', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['attractionName', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+]);
+
+// The attraction the visitor is headed to, which selects the instruction handler.
+export type Attraction = 'food' | 'game' | 'ride';
+
+export type CarnivalInstructionData = {
+ name: string;
+ height: number;
+ ticketCount: number;
+ attraction: Attraction;
+ attractionName: string;
+};
+
+export function createCarnivalInstruction(payer: TransactionSigner, programId: Address, data: CarnivalInstructionData) {
+ return {
+ programAddress: programId,
+ accounts: [{ address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }],
+ data: carnivalEncoder.encode(data),
+ };
+}
diff --git a/basics/repository-layout/native/ts/instructions/index.ts b/basics/repository-layout/native/ts/instructions/index.ts
new file mode 100644
index 000000000..c2ae68813
--- /dev/null
+++ b/basics/repository-layout/native/ts/instructions/index.ts
@@ -0,0 +1 @@
+export * from './carnival';
diff --git a/basics/repository-layout/pinocchio/package.json b/basics/repository-layout/pinocchio/package.json
index eb551e615..4bf1e26e1 100644
--- a/basics/repository-layout/pinocchio/package.json
+++ b/basics/repository-layout/pinocchio/package.json
@@ -7,8 +7,7 @@
"deploy": "solana program deploy ./program/target/so/program.so"
},
"dependencies": {
- "@solana/kit": "^7.0.0",
- "borsh": "^2.0.0"
+ "@solana/kit": "^7.0.0"
},
"devDependencies": {
"@types/chai": "^5.2.3",
diff --git a/basics/repository-layout/pinocchio/pnpm-lock.yaml b/basics/repository-layout/pinocchio/pnpm-lock.yaml
index 811d2aab0..57b1f98ea 100644
--- a/basics/repository-layout/pinocchio/pnpm-lock.yaml
+++ b/basics/repository-layout/pinocchio/pnpm-lock.yaml
@@ -11,9 +11,6 @@ importers:
'@solana/kit':
specifier: ^7.0.0
version: 7.0.0(bufferutil@4.1.0)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
devDependencies:
'@types/chai':
specifier: ^5.2.3
@@ -1028,9 +1025,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2500,8 +2494,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/basics/repository-layout/pinocchio/tests/test.ts b/basics/repository-layout/pinocchio/tests/test.ts
index 298df684e..53352cd81 100644
--- a/basics/repository-layout/pinocchio/tests/test.ts
+++ b/basics/repository-layout/pinocchio/tests/test.ts
@@ -1,6 +1,4 @@
-import { Buffer } from 'node:buffer';
import {
- AccountRole,
type Address,
appendTransactionMessageInstructions,
createTransactionMessage,
@@ -11,9 +9,9 @@ import {
setTransactionMessageFeePayerSigner,
signTransactionMessageWithSigners,
} from '@solana/kit';
-import * as borsh from 'borsh';
import { assert } from 'chai';
import { FailedTransactionMetadata, LiteSVM } from 'litesvm';
+import { type CarnivalInstructionData, createCarnivalInstruction } from '../ts';
describe('Carnival (Pinocchio)', () => {
const svm = new LiteSVM();
@@ -23,39 +21,12 @@ describe('Carnival (Pinocchio)', () => {
before(async () => {
programId = (await generateKeyPairSigner()).address;
svm.addProgramFromFile(programId, 'tests/fixtures/repository_layout_pinocchio_program.so');
-
payer = await generateKeyPairSigner();
svm.airdrop(payer.address, lamports(1_000_000_000n));
});
- const CarnivalInstructionSchema = {
- struct: {
- name: 'string',
- height: 'u32',
- ticket_count: 'u32',
- attraction: 'string',
- attraction_name: 'string',
- },
- };
-
- type CarnivalInstruction = {
- name: string;
- height: number;
- ticket_count: number;
- attraction: string;
- attraction_name: string;
- };
-
- function borshSerialize(schema: borsh.Schema, data: object): Buffer {
- return Buffer.from(borsh.serialize(schema, data));
- }
-
- async function sendCarnivalInstructions(instructionsList: CarnivalInstruction[]) {
- const instructions = instructionsList.map(ix => ({
- programAddress: programId,
- accounts: [{ address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }],
- data: new Uint8Array(borshSerialize(CarnivalInstructionSchema, ix)),
- }));
+ async function sendCarnivalInstructions(instructionsList: CarnivalInstructionData[]) {
+ const instructions = instructionsList.map(data => createCarnivalInstruction(payer, programId, data));
const transactionMessage = pipe(
createTransactionMessage({ version: 0 }),
@@ -74,30 +45,30 @@ describe('Carnival (Pinocchio)', () => {
{
name: 'Jimmy',
height: 36,
- ticket_count: 15,
+ ticketCount: 15,
attraction: 'ride',
- attraction_name: 'Scrambler',
+ attractionName: 'Scrambler',
},
{
name: 'Mary',
height: 52,
- ticket_count: 1,
+ ticketCount: 1,
attraction: 'ride',
- attraction_name: 'Ferris Wheel',
+ attractionName: 'Ferris Wheel',
},
{
name: 'Alice',
height: 56,
- ticket_count: 15,
+ ticketCount: 15,
attraction: 'ride',
- attraction_name: 'Scrambler',
+ attractionName: 'Scrambler',
},
{
name: 'Bob',
height: 49,
- ticket_count: 6,
+ ticketCount: 6,
attraction: 'ride',
- attraction_name: 'Tilt-a-Whirl',
+ attractionName: 'Tilt-a-Whirl',
},
]);
});
@@ -107,30 +78,30 @@ describe('Carnival (Pinocchio)', () => {
{
name: 'Jimmy',
height: 36,
- ticket_count: 15,
+ ticketCount: 15,
attraction: 'game',
- attraction_name: 'I Got It!',
+ attractionName: 'I Got It!',
},
{
name: 'Mary',
height: 52,
- ticket_count: 1,
+ ticketCount: 1,
attraction: 'game',
- attraction_name: 'Ring Toss',
+ attractionName: 'Ring Toss',
},
{
name: 'Alice',
height: 56,
- ticket_count: 15,
+ ticketCount: 15,
attraction: 'game',
- attraction_name: 'Ladder Climb',
+ attractionName: 'Ladder Climb',
},
{
name: 'Bob',
height: 49,
- ticket_count: 6,
+ ticketCount: 6,
attraction: 'game',
- attraction_name: 'Ring Toss',
+ attractionName: 'Ring Toss',
},
]);
});
@@ -140,30 +111,30 @@ describe('Carnival (Pinocchio)', () => {
{
name: 'Jimmy',
height: 36,
- ticket_count: 15,
+ ticketCount: 15,
attraction: 'food',
- attraction_name: 'Taco Shack',
+ attractionName: 'Taco Shack',
},
{
name: 'Mary',
height: 52,
- ticket_count: 1,
+ ticketCount: 1,
attraction: 'food',
- attraction_name: "Larry's Pizza",
+ attractionName: "Larry's Pizza",
},
{
name: 'Alice',
height: 56,
- ticket_count: 15,
+ ticketCount: 15,
attraction: 'food',
- attraction_name: "Dough Boy's",
+ attractionName: "Dough Boy's",
},
{
name: 'Bob',
height: 49,
- ticket_count: 6,
+ ticketCount: 6,
attraction: 'food',
- attraction_name: "Dough Boy's",
+ attractionName: "Dough Boy's",
},
]);
});
diff --git a/basics/repository-layout/pinocchio/ts/index.ts b/basics/repository-layout/pinocchio/ts/index.ts
new file mode 100644
index 000000000..32b452fa4
--- /dev/null
+++ b/basics/repository-layout/pinocchio/ts/index.ts
@@ -0,0 +1 @@
+export * from './instructions';
diff --git a/basics/repository-layout/pinocchio/ts/instructions/carnival.ts b/basics/repository-layout/pinocchio/ts/instructions/carnival.ts
new file mode 100644
index 000000000..92e789a63
--- /dev/null
+++ b/basics/repository-layout/pinocchio/ts/instructions/carnival.ts
@@ -0,0 +1,37 @@
+import {
+ AccountRole,
+ addEncoderSizePrefix,
+ type Address,
+ getStructEncoder,
+ getU32Encoder,
+ getUtf8Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
+
+// Instruction data layout, matching the field order the program's `process_instruction` reads.
+export const carnivalEncoder = getStructEncoder([
+ ['name', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['height', getU32Encoder()],
+ ['ticketCount', getU32Encoder()],
+ ['attraction', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['attractionName', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+]);
+
+// The attraction the visitor is headed to, which selects the instruction handler.
+export type Attraction = 'food' | 'game' | 'ride';
+
+export type CarnivalInstructionData = {
+ name: string;
+ height: number;
+ ticketCount: number;
+ attraction: Attraction;
+ attractionName: string;
+};
+
+export function createCarnivalInstruction(payer: TransactionSigner, programId: Address, data: CarnivalInstructionData) {
+ return {
+ programAddress: programId,
+ accounts: [{ address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }],
+ data: carnivalEncoder.encode(data),
+ };
+}
diff --git a/basics/repository-layout/pinocchio/ts/instructions/index.ts b/basics/repository-layout/pinocchio/ts/instructions/index.ts
new file mode 100644
index 000000000..c2ae68813
--- /dev/null
+++ b/basics/repository-layout/pinocchio/ts/instructions/index.ts
@@ -0,0 +1 @@
+export * from './carnival';
diff --git a/basics/transfer-sol/anchor/tests/test.ts b/basics/transfer-sol/anchor/tests/test.ts
index f6073f3c9..62039457b 100644
--- a/basics/transfer-sol/anchor/tests/test.ts
+++ b/basics/transfer-sol/anchor/tests/test.ts
@@ -1,6 +1,5 @@
import * as anchor from '@anchor-lang/core';
import { Keypair, LAMPORTS_PER_SOL, SystemProgram, sendAndConfirmTransaction, Transaction } from '@solana/web3.js';
-import { BN } from 'bn.js';
import { assert } from 'chai';
import type { TransferSol } from '../target/types/transfer_sol.ts';
@@ -14,7 +13,7 @@ describe('Anchor: Transfer SOL', () => {
const recipient = Keypair.generate();
await program.methods
- .transferSolWithCpi(new BN(LAMPORTS_PER_SOL))
+ .transferSolWithCpi(new anchor.BN(LAMPORTS_PER_SOL))
.accounts({
payer: payer.publicKey,
recipient: recipient.publicKey,
@@ -41,7 +40,7 @@ describe('Anchor: Transfer SOL', () => {
const recipientAccount = Keypair.generate();
await program.methods
- .transferSolWithProgram(new BN(LAMPORTS_PER_SOL))
+ .transferSolWithProgram(new anchor.BN(LAMPORTS_PER_SOL))
.accounts({
payer: payerAccount.publicKey,
recipient: recipientAccount.publicKey,
diff --git a/basics/transfer-sol/native/package.json b/basics/transfer-sol/native/package.json
index c95dfa050..dfa896bb6 100644
--- a/basics/transfer-sol/native/package.json
+++ b/basics/transfer-sol/native/package.json
@@ -8,8 +8,7 @@
},
"dependencies": {
"@solana/kit": "^7.0.0",
- "@solana-program/system": "^0.13.0",
- "borsh": "^2.0.0"
+ "@solana-program/system": "^0.13.0"
},
"devDependencies": {
"@types/chai": "^5.2.3",
diff --git a/basics/transfer-sol/native/pnpm-lock.yaml b/basics/transfer-sol/native/pnpm-lock.yaml
index 882d62a26..0fc905212 100644
--- a/basics/transfer-sol/native/pnpm-lock.yaml
+++ b/basics/transfer-sol/native/pnpm-lock.yaml
@@ -14,9 +14,6 @@ importers:
'@solana/kit':
specifier: ^7.0.0
version: 7.0.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
devDependencies:
'@types/chai':
specifier: ^5.2.3
@@ -1036,9 +1033,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2512,8 +2506,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/basics/transfer-sol/native/tests/instruction.ts b/basics/transfer-sol/native/tests/instruction.ts
deleted file mode 100644
index 4ca4458a3..000000000
--- a/basics/transfer-sol/native/tests/instruction.ts
+++ /dev/null
@@ -1,41 +0,0 @@
-import { Buffer } from 'node:buffer';
-import { AccountRole, type Address, type TransactionSigner } from '@solana/kit';
-import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
-import * as borsh from 'borsh';
-
-export enum InstructionType {
- CpiTransfer = 0,
- ProgramTransfer = 1,
-}
-
-const TransferInstructionSchema = {
- struct: {
- instruction: 'u8',
- amount: 'u64',
- },
-};
-
-export function createTransferInstruction(
- payer: TransactionSigner,
- recipientAddress: Address,
- programId: Address,
- instruction: InstructionType,
- amount: number,
-) {
- const data = Buffer.from(
- borsh.serialize(TransferInstructionSchema, {
- instruction,
- amount,
- }),
- );
-
- return {
- programAddress: programId,
- accounts: [
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
- { address: recipientAddress, role: AccountRole.WRITABLE },
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(data),
- };
-}
diff --git a/basics/transfer-sol/native/tests/test.ts b/basics/transfer-sol/native/tests/test.ts
index 3f5459432..35a90bfa1 100644
--- a/basics/transfer-sol/native/tests/test.ts
+++ b/basics/transfer-sol/native/tests/test.ts
@@ -14,7 +14,7 @@ import {
import { getCreateAccountInstruction } from '@solana-program/system';
import { assert } from 'chai';
import { FailedTransactionMetadata, LiteSVM } from 'litesvm';
-import { createTransferInstruction, InstructionType } from './instruction';
+import { createCpiTransferInstruction, createProgramTransferInstruction } from '../ts';
const LAMPORTS_PER_SOL = 1_000_000_000;
@@ -53,13 +53,7 @@ describe('transfer-sol', () => {
it('Transfer between accounts using the system program', async () => {
getBalances(payer.address, test1Recipient.address, 'Beginning');
- const ix = createTransferInstruction(
- payer,
- test1Recipient.address,
- programId,
- InstructionType.CpiTransfer,
- transferAmount,
- );
+ const ix = createCpiTransferInstruction(payer, test1Recipient.address, programId, transferAmount);
await sendTransaction([ix]);
@@ -83,11 +77,10 @@ describe('transfer-sol', () => {
it('Transfer between accounts using our program', async () => {
getBalances(test2Recipient1.address, test2Recipient2.address, 'Beginning');
- const ix = createTransferInstruction(
+ const ix = createProgramTransferInstruction(
test2Recipient1,
test2Recipient2.address,
programId,
- InstructionType.ProgramTransfer,
transferAmount,
);
@@ -112,11 +105,10 @@ describe('transfer-sol', () => {
// The attacker never has victimAccount's private key. They build the
// instruction with victimAccount marked as a non-signer and only
// sign with their own (unrelated) fee-payer key.
- const legitIx = createTransferInstruction(
+ const legitIx = createProgramTransferInstruction(
victimAccount,
attackerRecipient.address,
programId,
- InstructionType.ProgramTransfer,
transferAmount,
);
const attackIx = {
diff --git a/basics/transfer-sol/native/ts/index.ts b/basics/transfer-sol/native/ts/index.ts
new file mode 100644
index 000000000..32b452fa4
--- /dev/null
+++ b/basics/transfer-sol/native/ts/index.ts
@@ -0,0 +1 @@
+export * from './instructions';
diff --git a/basics/transfer-sol/native/ts/instructions/index.ts b/basics/transfer-sol/native/ts/instructions/index.ts
new file mode 100644
index 000000000..dd1295acb
--- /dev/null
+++ b/basics/transfer-sol/native/ts/instructions/index.ts
@@ -0,0 +1,8 @@
+export * from './transfer';
+
+export const TransferInstruction = {
+ CpiTransfer: 0,
+ ProgramTransfer: 1,
+} as const;
+
+export type TransferInstruction = (typeof TransferInstruction)[keyof typeof TransferInstruction];
diff --git a/basics/transfer-sol/native/ts/instructions/transfer.ts b/basics/transfer-sol/native/ts/instructions/transfer.ts
new file mode 100644
index 000000000..acdecaf66
--- /dev/null
+++ b/basics/transfer-sol/native/ts/instructions/transfer.ts
@@ -0,0 +1,53 @@
+import {
+ AccountRole,
+ type Address,
+ getStructEncoder,
+ getU8Encoder,
+ getU64Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+import { TransferInstruction } from '.';
+
+// Instruction data layout, shared by the program's `TransferInstruction::CpiTransfer(u64)`
+// and `TransferInstruction::ProgramTransfer(u64)` variants.
+export const transferEncoder = getStructEncoder([
+ ['instruction', getU8Encoder()],
+ ['amount', getU64Encoder()],
+]);
+
+// Moves lamports from the payer to the recipient by way of a System Program CPI.
+export function createCpiTransferInstruction(
+ payer: TransactionSigner,
+ recipientAddress: Address,
+ programId: Address,
+ amount: bigint | number,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: recipientAddress, role: AccountRole.WRITABLE },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: transferEncoder.encode({ instruction: TransferInstruction.CpiTransfer, amount }),
+ };
+}
+
+// Moves lamports by directly editing the balances of two accounts the program owns.
+export function createProgramTransferInstruction(
+ payer: TransactionSigner,
+ recipientAddress: Address,
+ programId: Address,
+ amount: bigint | number,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: recipientAddress, role: AccountRole.WRITABLE },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: transferEncoder.encode({ instruction: TransferInstruction.ProgramTransfer, amount }),
+ };
+}
diff --git a/compression/cnft-burn/anchor/package.json b/compression/cnft-burn/anchor/package.json
index b3d09fe32..57c8a6b0d 100644
--- a/compression/cnft-burn/anchor/package.json
+++ b/compression/cnft-burn/anchor/package.json
@@ -9,7 +9,7 @@
"@metaplex-foundation/js": "^0.19.4",
"@metaplex-foundation/mpl-bubblegum": "^0.7.0",
"@metaplex-foundation/mpl-token-metadata": "^2.12.0",
- "@metaplex-foundation/umi": "^0.9.0",
+ "@solana/kit": "^7.0.0",
"@solana/spl-account-compression": "^0.2.0",
"@solana/web3.js": "^1.98.4",
"axios": "^1.6.5"
diff --git a/compression/cnft-burn/anchor/pnpm-lock.yaml b/compression/cnft-burn/anchor/pnpm-lock.yaml
index 92f5c2f9b..4a1938b94 100644
--- a/compression/cnft-burn/anchor/pnpm-lock.yaml
+++ b/compression/cnft-burn/anchor/pnpm-lock.yaml
@@ -20,9 +20,9 @@ importers:
'@metaplex-foundation/mpl-token-metadata':
specifier: ^2.12.0
version: 2.13.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/umi':
- specifier: ^0.9.0
- version: 0.9.1
+ '@solana/kit':
+ specifier: ^7.0.0
+ version: 7.1.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
'@solana/spl-account-compression':
specifier: ^0.2.0
version: 0.2.1(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
@@ -375,6 +375,7 @@ packages:
'@metaplex-foundation/js@0.19.5':
resolution: {integrity: sha512-OXGX0zr4rpr4vpFt6+tO+bEQ7yN5fqyKpAWYzxPb0yGM0Rj6JKlvj0Eaiymvwmm5XtLPK+98M8y9jxZiQEtsEA==}
+ deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
'@metaplex-foundation/mpl-auction-house@2.5.1':
resolution: {integrity: sha512-O+IAdYVaoOvgACB8pm+1lF5BNEjl0COkqny2Ho8KQZwka6aC/vHbZ239yRwAMtJhf5992BPFdT4oifjyE0O+Mw==}
@@ -397,27 +398,6 @@ packages:
'@metaplex-foundation/mpl-token-metadata@2.13.0':
resolution: {integrity: sha512-Fl/8I0L9rv4bKTV/RAl5YIbJe9SnQPInKvLz+xR1fEc4/VQkuCn3RPgypfUMEKWmCznzaw4sApDxy6CFS4qmJw==}
- '@metaplex-foundation/umi-options@0.8.9':
- resolution: {integrity: sha512-jSQ61sZMPSAk/TXn8v8fPqtz3x8d0/blVZXLLbpVbo2/T5XobiI6/MfmlUosAjAUaQl6bHRF8aIIqZEFkJiy4A==}
-
- '@metaplex-foundation/umi-public-keys@0.8.9':
- resolution: {integrity: sha512-CxMzN7dgVGOq9OcNCJe2casKUpJ3RmTVoOvDFyeoTQuK+vkZ1YSSahbqC1iGuHEtKTLSjtWjKvUU6O7zWFTw3Q==}
-
- '@metaplex-foundation/umi-serializers-core@0.8.9':
- resolution: {integrity: sha512-WT82tkiYJ0Qmscp7uTj1Hz6aWQPETwaKLAENAUN5DeWghkuBKtuxyBKVvEOuoXerJSdhiAk0e8DWA4cxcTTQ/w==}
-
- '@metaplex-foundation/umi-serializers-encodings@0.8.9':
- resolution: {integrity: sha512-N3VWLDTJ0bzzMKcJDL08U3FaqRmwlN79FyE4BHj6bbAaJ9LEHjDQ9RJijZyWqTm0jE7I750fU7Ow5EZL38Xi6Q==}
-
- '@metaplex-foundation/umi-serializers-numbers@0.8.9':
- resolution: {integrity: sha512-NtBf1fnVNQJHFQjLFzRu2i9GGnigb9hOm/Gfrk628d0q0tRJB7BOM3bs5C61VAs7kJs4yd+pDNVAERJkknQ7Lg==}
-
- '@metaplex-foundation/umi-serializers@0.9.0':
- resolution: {integrity: sha512-hAOW9Djl4w4ioKeR4erDZl5IG4iJdP0xA19ZomdaCbMhYAAmG/FEs5khh0uT2mq53/MnzWcXSUPoO8WBN4Q+Vg==}
-
- '@metaplex-foundation/umi@0.9.1':
- resolution: {integrity: sha512-IhHoOvp4vfO/++YL+78+iVuLM53+FDwUOZDYgH6lx0jYXyQ27BeaieeR5i+q3A9dz4KxQo5Nzc5aCA1109QGCQ==}
-
'@noble/curves@1.3.0':
resolution: {integrity: sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA==}
@@ -459,6 +439,33 @@ packages:
'@scure/bip39@1.2.2':
resolution: {integrity: sha512-HYf9TUXG80beW+hGAt3TRM8wU6pQoYur9iNypTROm42dorCGmLnFe3eWjz3gOq6G62H2WRh0FCzAR1PI+29zIA==}
+ '@solana/accounts@7.1.0':
+ resolution: {integrity: sha512-0Vp2advYsTb7eb0jZveXZJaux6OSYcI3nitwoXOTZzCuzjbIjiHI/bpn3CcqfKBPW/1dnCIWAW7VW1otqH0a1w==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/addresses@7.1.0':
+ resolution: {integrity: sha512-kA/aav0TdyhrXCG6VCGG/fTuGu4ix5UW2PxtsbpBdZcyi+3TznLS1xKzIZBzqn0DL0q6HKdud6Ene7DWZDH1lw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/assertions@7.1.0':
+ resolution: {integrity: sha512-LD9+fhZb/xBECl27gfxDEX+qyj4PRV6700RJuprJWNMvGd8v0eoO0N+0QwnopK7o7O4w3DaW9/a3jH+iiwEqzw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/buffer-layout-utils@0.2.0':
resolution: {integrity: sha512-szG4sxgJGktbuZYDg2FfNmkMi0DYQoVjN2h7ta1W1hPrwzarcFLBq9UpX1UjNXsNpT9dn+chgprtWGioUAr4/g==}
engines: {node: '>= 10'}
@@ -476,9 +483,27 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/codecs-core@7.1.0':
+ resolution: {integrity: sha512-pl1gCCvviKekrijEDieZ1ps3LjC6ova2pZ/ZBXEJJa46nF7M0hwdZe/KzbMxKQ8WtT/WqW8Uyh6JQt8IJcMgRw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-data-structures@2.0.0-preview.2':
resolution: {integrity: sha512-Xf5vIfromOZo94Q8HbR04TbgTwzigqrKII0GjYr21K7rb3nba4hUW2ir8kguY7HWFBcjHGlU5x3MevKBOLp3Zg==}
+ '@solana/codecs-data-structures@7.1.0':
+ resolution: {integrity: sha512-yCwyXCD1qtj0qJwCLQVS9aojKDio7t8kqXQVhLfasYFsckvecK+OObkoILkBXBJVmpOXI8nRYwNAb63+CvJo/g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-numbers@2.0.0-preview.2':
resolution: {integrity: sha512-aLZnDTf43z4qOnpTcDsUVy1Ci9im1Md8thWipSWbE+WM9ojZAx528oAql+Cv8M8N+6ALKwgVRhPZkto6E59ARw==}
@@ -488,14 +513,44 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/codecs-numbers@7.1.0':
+ resolution: {integrity: sha512-Hfw5OXx7tbSJ4iQ0r1ar6D+7XixkX8K36ni9cHDrunpiTo9SLIE0Lzj9/889aPNv4J4JggW1bpqzcrz3RI/o5g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-strings@2.0.0-preview.2':
resolution: {integrity: sha512-EgBwY+lIaHHgMJIqVOGHfIfpdmmUDNoNO/GAUGeFPf+q0dF+DtwhJPEMShhzh64X2MeCZcmSO6Kinx0Bvmmz2g==}
peerDependencies:
fastestsmallesttextencoderdecoder: ^1.0.22
+ '@solana/codecs-strings@7.1.0':
+ resolution: {integrity: sha512-YIv/XVDYTzkYiFRdbjK6tI1BUKNlV1ta5hl9oK6+CoCDZn7nECfAN96KPYs94jzbN5VgMgbEqi6tlQcdy5KuCg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ fastestsmallesttextencoderdecoder: ^1.0.22
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ fastestsmallesttextencoderdecoder:
+ optional: true
+ typescript:
+ optional: true
+
'@solana/codecs@2.0.0-preview.2':
resolution: {integrity: sha512-4HHzCD5+pOSmSB71X6w9ptweV48Zj1Vqhe732+pcAQ2cMNnN0gMPMdDq7j3YwaZDZ7yrILVV/3+HTnfT77t2yA==}
+ '@solana/codecs@7.1.0':
+ resolution: {integrity: sha512-4M1MgIiRX46qMUnrUjVnRnTxETmCZ7VLWddMdf+t6y3aVsMzz8kd9ngH7NloFhHtnAO0n3qJjs2rdgx/Dxd3Zg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/errors@2.0.0-preview.2':
resolution: {integrity: sha512-H2DZ1l3iYF5Rp5pPbJpmmtCauWeQXRJapkDg8epQ8BJ7cA2Ut/QEtC3CMmw/iMTcuS6uemFNLcWvlOfoQhvQuA==}
hasBin: true
@@ -507,9 +562,271 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/errors@7.1.0':
+ resolution: {integrity: sha512-sJ0mM6SHN7fa6auHARRAGjjDpkFzhx6jmgHZAjliC/xADMfI2IYrTnAwguRV9dVBOsEHicylIXszvsyRb6BmEw==}
+ engines: {node: '>=20.18.0'}
+ hasBin: true
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/fast-stable-stringify@7.1.0':
+ resolution: {integrity: sha512-DV35b2DoqFwQlO7acwi0WG47oLSORGep7/lTkd/VrCB/MdM0J5TggQ0gRqc9v3ORBDQHcOYmMx6ym4Obqd1EFg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/fixed-points@7.1.0':
+ resolution: {integrity: sha512-xyVO7h8woz53L5dz9pV5akdf/EcluEvtV85cYtca1pp0ZpdcdnGQ2yve3mN/GuOEb+Ixzthrew2p0c5h9w4Bhg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/functional@7.1.0':
+ resolution: {integrity: sha512-1yfUFHkeMvrD/6yTDu3op3CgWIfr1KAvHo3XQL6yBvz0miEbiQ6tAEZbrwHpudES43sG8ZvlgrkL0Oiu5KwC9g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/instruction-plans@7.1.0':
+ resolution: {integrity: sha512-Ug7YSchE8Oq8PsaKYlr8IH0woYjmAgi7JdVwd1wtE1pReHvufH63WUsE6B6guqIkQPxiLZL/tmODzKas2zlVtA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/instructions@7.1.0':
+ resolution: {integrity: sha512-KnXUtSIbKCUjlposzfikAO3qSVliOSoMBzglQYSn3e0x0PpJ2MsVH6tzzI6v124YVhs0OSs5wFwYjENTedPgcg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/keys@7.1.0':
+ resolution: {integrity: sha512-BGRkTPeBIKPojwVEdYaBXtLMQ0fp8xtQiRxDhOSyYpd1bz52K4bmvrugVtSqfjWLVO+I8SRZGpSZq2G5+DgR1Q==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/kit@7.1.0':
+ resolution: {integrity: sha512-UvzQhbn7ITjoBIinGz7rrdPSfkE8/bl+c6TISTLOXiW5hZw16mKOAkK28duP6bJutgQ57L0oJ4HYu5BTzAznOg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/nominal-types@7.1.0':
+ resolution: {integrity: sha512-oN+gGAqBnGc/iGIq5i4Q/+VFyTqbh0wpLnWTtMbFpXmevrdX3IPPBW5Z76ysZtTtv+M4Ha64kqc2upLJBUGM0A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/offchain-messages@7.1.0':
+ resolution: {integrity: sha512-nQBqXNLjDvUybc6oRS936gHLGzKwKy9fSlUV4OPo1mLG5V8TcW+jhCc1UOJdmfj0FYDDq5rzqmFTVK4yEu7brw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/options@2.0.0-preview.2':
resolution: {integrity: sha512-FAHqEeH0cVsUOTzjl5OfUBw2cyT8d5Oekx4xcn5hn+NyPAfQJgM3CEThzgRD6Q/4mM5pVUnND3oK/Mt1RzSE/w==}
+ '@solana/options@7.1.0':
+ resolution: {integrity: sha512-6Z6NYrnDB7qQXE7liHVpf0+5ytJogNw6QGsO8On/csX4f5WGBLxeP0JJQNnkOvuTrBkUMEq6YtTFxp4/Plqx9A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/plugin-core@7.1.0':
+ resolution: {integrity: sha512-2UhReZOhFoUMcYz+72EDM3UIrrONZBpP8uhofPKNDmKPslDuJHc8q4RRlO1llGgrfV6dMIsk9j8uV4q3DjWu5g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/plugin-interfaces@7.1.0':
+ resolution: {integrity: sha512-5QXBy1RnbWmHRCIDZRZ0W2lMnWEw65lw9X+geJmiEfbLnTPKZdpYe+5YSClz26RMcp8X2ETovkgp0E8y0Zz0yg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/program-client-core@7.1.0':
+ resolution: {integrity: sha512-81CmiYVovOElru2E7ZpBg3aAaCOdgEB4FqRatxr3EUKcP8xzsM/gti7sZxmZCd6wyLLAQQokNxpLYBjspC4ZEw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/programs@7.1.0':
+ resolution: {integrity: sha512-SiHIxX4lbHD36tOFNWyE9T984+yq9X+EOhxg3P2LKDg7nZep9F6L7Qhgw4R+aXF/Zqpy2q8XzO7NYLeT6piQ3g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/promises@7.1.0':
+ resolution: {integrity: sha512-4I0tTa0Peh9U6cEJUR3Y0VyQneFGA2C8dL+sw00Dtfr/4hVGr03wmjHUq6CcCiH6e7WqNuznNKsqahe3BgrOMg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-api@7.1.0':
+ resolution: {integrity: sha512-mluuAalyk5mfdi2lnPLDCPj6RElgZ0DCaNZmQZhnVM0SabvWxpBIzvTYqmy56Z/b9yiycfkVG3h6ISMZMddNuA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-parsed-types@7.1.0':
+ resolution: {integrity: sha512-WVHfz/VmqZpPbpyTgqz6W4Yk1rKa7tfjSqa77KbWi+yXDzZ+Oha+bAscXxY/yg/w6auu7/JY5+t7Qd0qIjrGmQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-spec-types@7.1.0':
+ resolution: {integrity: sha512-nEKJARQq8x9YQB/TBptw99bNU9KsmsObu51VleXwTi+PCowHbU7yaNad1lxg81iiX9Z4Lwvvo4c5UdVA4xkYFQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-spec@7.1.0':
+ resolution: {integrity: sha512-vmFN/HNK0bUV+sDPqs7+NV/orY23PByWN82J1Q4PFZKCOCnyFO/A06pd/MCVuPjmcaJ62xFhTcORrit6dTQL3A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions-api@7.1.0':
+ resolution: {integrity: sha512-lzi8sPWuMyT89/L1ebY+MTzOma/6vsRdFTFcY5pe4pO4Sfi59j4p+HeYUu/NS0E6+/7Ng3BHFeTtuKD6QkhPDg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions-channel-websocket@7.1.0':
+ resolution: {integrity: sha512-eW0JCgwSM7YV1YKkZN4rtfIGhh5WSJkCf2+JV1wscF6Zn4hK/9kr8MJ0Y0LWtoDMIuX0W3RCJnYG4T/Pcm1v6w==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions-spec@7.1.0':
+ resolution: {integrity: sha512-f+s6qIzUHxUTyoZoOvz2uw8Y6tYyUefLxxJtavMZEDXEjsAQ0Zv+yhmPZ5tQCo1JyHGS6EKvaw9AjxVC68NHDA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions@7.1.0':
+ resolution: {integrity: sha512-Vjs6d1AagH9r52smhX9zxSwprPKvqsWw8XFmvtGbUNI5lxtX1W4TIukscpXiau7dqe6zH6q6cfs9UtuOgY5sXA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-transformers@7.1.0':
+ resolution: {integrity: sha512-3sSO13m25IkkS1mXnWFZYwgSOSturEGFQMIs37vdqgiJFAYJjmossOozE+fqOY0CI1oebyURhm5gM86ATuHDYw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-transport-http@7.1.0':
+ resolution: {integrity: sha512-9zT58Ahfhd/sdYNMKvVOmPLpIMsdrZOrJlnuK0nmB+D8KWbqswDUV46H2HGxRFjvGgKep/CtOSx4RM+kt14ezQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-types@7.1.0':
+ resolution: {integrity: sha512-pZO8+EroeRv7kb/d42qQeKHvUmm5tBvH0tXe8Kl2QkqG9+BCZ8NXXd+K7GbYWfVz3XtYmV3W/1B67s1DnzRldQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc@7.1.0':
+ resolution: {integrity: sha512-K9PvA39IQ+Z5/GYuDv4xXDPwk1KAPegnMu97b999yH09lBfsWpkHTGCCmNNy7bJAD346IQ/90/KgIbB/YnMEkw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/signers@7.1.0':
+ resolution: {integrity: sha512-sGGEOhPQLn+M9Y5QF3BgzAh9ECoq+XxIOUhyEpCSoUB725oMerir7lgsuyHvSkANhnoGnVxMhy/3b9wzVIazig==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/spl-account-compression@0.1.10':
resolution: {integrity: sha512-IQAOJrVOUo6LCgeWW9lHuXo6JDbi4g3/RkQtvY0SyalvSWk9BIkHHe4IkAzaQw8q/BxEVBIjz8e9bNYWIAESNw==}
engines: {node: '>=16'}
@@ -538,9 +855,63 @@ packages:
peerDependencies:
'@solana/web3.js': ^1.88.0
- '@solana/spl-type-length-value@0.1.0':
- resolution: {integrity: sha512-JBMGB0oR4lPttOZ5XiUGyvylwLQjt1CPJa6qQ5oM+MBCndfjz2TKKkw0eATlLLcYmq1jBVsNlJ2cD6ns2GR7lA==}
- engines: {node: '>=16'}
+ '@solana/spl-type-length-value@0.1.0':
+ resolution: {integrity: sha512-JBMGB0oR4lPttOZ5XiUGyvylwLQjt1CPJa6qQ5oM+MBCndfjz2TKKkw0eATlLLcYmq1jBVsNlJ2cD6ns2GR7lA==}
+ engines: {node: '>=16'}
+
+ '@solana/subscribable@7.1.0':
+ resolution: {integrity: sha512-8YnZV34WRN/AHP1B2XUlLIkINI9AYGcv1lqc2pFswS4VEL0c4iXyCfCXg9D1FM/obEhlU73h+ZJK4deg8yasgA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/sysvars@7.1.0':
+ resolution: {integrity: sha512-8UZsIsHS0JcYTy41QK9eewWj34mSkahsgD5TQPk/M69W34ElQOLKLkooj4iwXdnV2tMlNniKMIDoIQUhGCfhZw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transaction-confirmation@7.1.0':
+ resolution: {integrity: sha512-IZd2eEvhIdIaIkZAd6ugeTLB1f8pB5iwu+NmSk2vH0FUGVf3wJui8NzZyj/8+5a6Ps2WUa79JIIizVdvIOzV8A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transaction-introspection@7.1.0':
+ resolution: {integrity: sha512-AKev/afwQpkTjjNPUsYrZ7lwI76wNiZGy5T5m9FBhVrncg8evMjUHhVrnTvLTLkqMGuVgteR2BH9e2S+igwxPg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transaction-messages@7.1.0':
+ resolution: {integrity: sha512-5JKj7mCppHBzJQF67n5YVaPR3nLNe5+sbgJcSbD2woyR7pdUhjNYyzG2HFeWDghbROpQzy9Dy7Km9iTjw3ry5A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transactions@7.1.0':
+ resolution: {integrity: sha512-J/31jUwrbmJkk4vHnyenbF8iz2dHnhTW0HEzOp86YzVHbm171g5ujL1mmOP4nh8r/UA6xH4QbEJ4kTrID6cN5w==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
'@solana/wallet-adapter-base@0.9.23':
resolution: {integrity: sha512-apqMuYwFp1jFi55NxDfvXUX2x1T0Zh07MxhZ/nCCTGys5raSfYUh82zen2BLv8BSDj/JxZ2P/s7jrQZGrX8uAw==}
@@ -803,10 +1174,6 @@ packages:
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
engines: {node: '>=10'}
- chalk@5.3.0:
- resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
- engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
-
chalk@5.6.2:
resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==}
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
@@ -860,6 +1227,10 @@ packages:
resolution: {integrity: sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==}
engines: {node: '>=20'}
+ commander@15.0.0:
+ resolution: {integrity: sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg==}
+ engines: {node: '>=22.12.0'}
+
commander@2.20.3:
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
@@ -1004,6 +1375,7 @@ packages:
ethereum-bloom-filters@1.1.0:
resolution: {integrity: sha512-J1gDRkLpuGNvWYzWslBQR9cDV4nd4kfvVTE/Wy4Kkm4yb3EYRSlyi0eB/inTsSTTVyA0+HyzHgbr95Fn/Z1fSw==}
+ deprecated: do not use this package use package versions above as this can miss some topics
ethereum-cryptography@2.1.3:
resolution: {integrity: sha512-BlwbIL7/P45W8FGW2r7LGuvoEZ+7PWsniMvQ4p5s2xCyw9tmaDlpfsN9HjAucbF+t/qpVHwZUisgfK24TCW8aA==}
@@ -1012,7 +1384,7 @@ packages:
resolution: {integrity: sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==}
ethjs-unit@0.1.6:
- resolution: {integrity: sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk=}
+ resolution: {integrity: sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==}
engines: {node: '>=6.5.0', npm: '>=3'}
eventemitter3@4.0.7:
@@ -1175,7 +1547,7 @@ packages:
engines: {node: '>= 0.4'}
is-hex-prefixed@1.0.0:
- resolution: {integrity: sha1-fY035q135dEnFIkTxXPggtd39VQ=}
+ resolution: {integrity: sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==}
engines: {node: '>=6.5.0', npm: '>=3'}
is-interactive@1.0.0:
@@ -1352,7 +1724,7 @@ packages:
hasBin: true
number-to-bn@1.7.0:
- resolution: {integrity: sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA=}
+ resolution: {integrity: sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==}
engines: {node: '>=6.5.0', npm: '>=3'}
o3@1.0.3:
@@ -1548,7 +1920,7 @@ packages:
engines: {node: '>=12'}
strip-hex-prefix@1.0.0:
- resolution: {integrity: sha1-DF8VX+8RUTczd96du1iNoFUA428=}
+ resolution: {integrity: sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==}
engines: {node: '>=6.5.0', npm: '>=3'}
strip-json-comments@3.1.1:
@@ -1630,6 +2002,9 @@ packages:
u3@0.1.1:
resolution: {integrity: sha512-+J5D5ir763y+Am/QY6hXNRlwljIeRMZMGs0cT6qqZVVzzT3X3nFPXVyPOFRMOR4kupB0T8JnCdpWdp6Q/iXn3w==}
+ undici-types@8.10.0:
+ resolution: {integrity: sha512-ibvdovq3nCFs8Msrd95BW+zUOq+aOVbT+wpHUoPWhztbHEoPc6oof51iFDB6Es8lTKvNvVW9jNSAB8dwrKTMGg==}
+
undici-types@8.3.0:
resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==}
@@ -1733,6 +2108,18 @@ packages:
utf-8-validate:
optional: true
+ ws@8.21.3:
+ resolution: {integrity: sha512-201TZ/kPWxoPr/OKWjquZR1SWKXcvxdH+e1xrx89b3YbmzLMFCLfnaG1HFIgWzJOEWZ7MvpK++odZufgYR50Rw==}
+ engines: {node: '>=10.0.0'}
+ peerDependencies:
+ bufferutil: ^4.0.1
+ utf-8-validate: '>=5.0.2'
+ peerDependenciesMeta:
+ bufferutil:
+ optional: true
+ utf-8-validate:
+ optional: true
+
y18n@5.0.8:
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
engines: {node: '>=10'}
@@ -2389,36 +2776,6 @@ snapshots:
- typescript
- utf-8-validate
- '@metaplex-foundation/umi-options@0.8.9': {}
-
- '@metaplex-foundation/umi-public-keys@0.8.9':
- dependencies:
- '@metaplex-foundation/umi-serializers-encodings': 0.8.9
-
- '@metaplex-foundation/umi-serializers-core@0.8.9': {}
-
- '@metaplex-foundation/umi-serializers-encodings@0.8.9':
- dependencies:
- '@metaplex-foundation/umi-serializers-core': 0.8.9
-
- '@metaplex-foundation/umi-serializers-numbers@0.8.9':
- dependencies:
- '@metaplex-foundation/umi-serializers-core': 0.8.9
-
- '@metaplex-foundation/umi-serializers@0.9.0':
- dependencies:
- '@metaplex-foundation/umi-options': 0.8.9
- '@metaplex-foundation/umi-public-keys': 0.8.9
- '@metaplex-foundation/umi-serializers-core': 0.8.9
- '@metaplex-foundation/umi-serializers-encodings': 0.8.9
- '@metaplex-foundation/umi-serializers-numbers': 0.8.9
-
- '@metaplex-foundation/umi@0.9.1':
- dependencies:
- '@metaplex-foundation/umi-options': 0.8.9
- '@metaplex-foundation/umi-public-keys': 0.8.9
- '@metaplex-foundation/umi-serializers': 0.9.0
-
'@noble/curves@1.3.0':
dependencies:
'@noble/hashes': 1.3.3
@@ -2457,6 +2814,37 @@ snapshots:
'@noble/hashes': 1.3.3
'@scure/base': 1.1.6
+ '@solana/accounts@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/addresses@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/assertions': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/assertions@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/buffer-layout-utils@0.2.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)':
dependencies:
'@solana/buffer-layout': 4.0.1
@@ -2482,12 +2870,26 @@ snapshots:
'@solana/errors': 2.3.0(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/codecs-core@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-data-structures@2.0.0-preview.2':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
'@solana/codecs-numbers': 2.0.0-preview.2
'@solana/errors': 2.0.0-preview.2
+ '@solana/codecs-data-structures@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-numbers@2.0.0-preview.2':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
@@ -2499,6 +2901,13 @@ snapshots:
'@solana/errors': 2.3.0(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/codecs-numbers@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-strings@2.0.0-preview.2(fastestsmallesttextencoderdecoder@1.0.22)':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
@@ -2506,6 +2915,15 @@ snapshots:
'@solana/errors': 2.0.0-preview.2
fastestsmallesttextencoderdecoder: 1.0.22
+ '@solana/codecs-strings@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ fastestsmallesttextencoderdecoder: 1.0.22
+ typescript: 5.9.3
+
'@solana/codecs@2.0.0-preview.2(fastestsmallesttextencoderdecoder@1.0.22)':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
@@ -2516,9 +2934,22 @@ snapshots:
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
+ '@solana/codecs@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/fixed-points': 7.1.0(typescript@5.9.3)
+ '@solana/options': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/errors@2.0.0-preview.2':
dependencies:
- chalk: 5.3.0
+ chalk: 5.6.2
commander: 12.1.0
'@solana/errors@2.3.0(typescript@5.9.3)':
@@ -2527,11 +2958,340 @@ snapshots:
commander: 14.0.3
typescript: 5.9.3
+ '@solana/errors@7.1.0(typescript@5.9.3)':
+ dependencies:
+ chalk: 5.6.2
+ commander: 15.0.0
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/fast-stable-stringify@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/fixed-points@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/functional@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/instruction-plans@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/instructions@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/keys@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/assertions': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/kit@7.1.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/instruction-plans': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/offchain-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/plugin-core': 7.1.0(typescript@5.9.3)
+ '@solana/plugin-interfaces': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/program-client-core': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/programs': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-parsed-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions': 7.1.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ '@solana/sysvars': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-confirmation': 7.1.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
+ '@solana/transaction-introspection': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - fastestsmallesttextencoderdecoder
+ - utf-8-validate
+
+ '@solana/nominal-types@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/offchain-messages@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/options@2.0.0-preview.2':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
'@solana/codecs-numbers': 2.0.0-preview.2
+ '@solana/options@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/plugin-core@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/plugin-interfaces@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/instruction-plans': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/program-client-core@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instruction-plans': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/plugin-interfaces': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/programs@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/promises@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-api@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-parsed-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc-parsed-types@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-spec-types@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-spec@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-subscriptions-api@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc-subscriptions-channel-websocket@7.1.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ ws: 8.21.3(bufferutil@4.0.8)(utf-8-validate@6.0.6)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - utf-8-validate
+
+ '@solana/rpc-subscriptions-spec@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-subscriptions@7.1.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/fast-stable-stringify': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-subscriptions-channel-websocket': 7.1.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - fastestsmallesttextencoderdecoder
+ - utf-8-validate
+
+ '@solana/rpc-transformers@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc-transport-http@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ undici-types: 8.10.0
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-types@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/fixed-points': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/fast-stable-stringify': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-transport-http': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/signers@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/offchain-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/spl-account-compression@0.1.10(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)':
dependencies:
'@metaplex-foundation/beet': 0.7.1
@@ -2603,6 +3363,95 @@ snapshots:
dependencies:
buffer: 6.0.3
+ '@solana/subscribable@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/sysvars@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/transaction-confirmation@7.1.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-subscriptions': 7.1.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - fastestsmallesttextencoderdecoder
+ - utf-8-validate
+
+ '@solana/transaction-introspection@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/transaction-messages@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/transactions@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/wallet-adapter-base@0.9.23(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))':
dependencies:
'@solana/wallet-standard-features': 1.2.0
@@ -2935,8 +3784,6 @@ snapshots:
ansi-styles: 4.3.0
supports-color: 7.2.0
- chalk@5.3.0: {}
-
chalk@5.6.2: {}
chardet@0.7.0: {}
@@ -2980,6 +3827,8 @@ snapshots:
commander@14.0.3: {}
+ commander@15.0.0: {}
+
commander@2.20.3: {}
commander@8.3.0: {}
@@ -3834,6 +4683,8 @@ snapshots:
u3@0.1.1: {}
+ undici-types@8.10.0: {}
+
undici-types@8.3.0: {}
utf-8-validate@6.0.6:
@@ -3930,6 +4781,11 @@ snapshots:
bufferutil: 4.0.8
utf-8-validate: 6.0.6
+ ws@8.21.3(bufferutil@4.0.8)(utf-8-validate@6.0.6):
+ optionalDependencies:
+ bufferutil: 4.0.8
+ utf-8-validate: 6.0.6
+
y18n@5.0.8: {}
yargs-parser@21.1.1: {}
diff --git a/compression/cnft-burn/anchor/tests/ReadApi/WrapperConnection.ts b/compression/cnft-burn/anchor/tests/ReadApi/WrapperConnection.ts
index f490a5779..00710c698 100644
--- a/compression/cnft-burn/anchor/tests/ReadApi/WrapperConnection.ts
+++ b/compression/cnft-burn/anchor/tests/ReadApi/WrapperConnection.ts
@@ -5,8 +5,8 @@ import type { Metadata, Mint, NftOriginalEdition, SplTokenCurrency } from '@meta
import { amount, MetaplexError, Pda, toBigNumber } from '@metaplex-foundation/js';
import { PROGRAM_ID as BUBBLEGUM_PROGRAM_ID } from '@metaplex-foundation/mpl-bubblegum';
import { TokenStandard } from '@metaplex-foundation/mpl-token-metadata';
+import { getU64Encoder } from '@solana/kit';
import { Connection, PublicKey } from '@solana/web3.js';
-import BN from 'bn.js';
import type {
GetAssetProofRpcInput,
GetAssetProofRpcResponse,
@@ -87,7 +87,7 @@ export const toMetadataFromReadApiAsset = (input: ReadApiAsset): Metadata => {
address: Pda.find(BUBBLEGUM_PROGRAM_ID, [
Buffer.from('asset', 'utf-8'),
new PublicKey(input.compression.tree).toBuffer(),
- Uint8Array.from(new BN(input.compression.leaf_id).toArray('le', 8)),
+ Uint8Array.from(getU64Encoder().encode(BigInt(input.compression.leaf_id))),
]),
mintAddress: new PublicKey(input.id),
updateAuthorityAddress: new PublicKey(updateAuthority?.address),
diff --git a/compression/cutils/anchor/package.json b/compression/cutils/anchor/package.json
index f486215c4..6e83b4a94 100644
--- a/compression/cutils/anchor/package.json
+++ b/compression/cutils/anchor/package.json
@@ -6,7 +6,6 @@
},
"dependencies": {
"@anchor-lang/core": "1.0.0-rc.5",
- "@metaplex-foundation/js": "^0.19.4",
"@metaplex-foundation/mpl-bubblegum": "^0.7.0",
"@solana/spl-account-compression": "^0.1.8",
"@solana/spl-token": "^0.3.8",
diff --git a/compression/cutils/anchor/pnpm-lock.yaml b/compression/cutils/anchor/pnpm-lock.yaml
index e67c1a6df..8ebe23111 100644
--- a/compression/cutils/anchor/pnpm-lock.yaml
+++ b/compression/cutils/anchor/pnpm-lock.yaml
@@ -11,9 +11,6 @@ importers:
'@anchor-lang/core':
specifier: 1.0.0-rc.5
version: 1.0.0-rc.5(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/js':
- specifier: ^0.19.4
- version: 0.19.5(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
'@metaplex-foundation/mpl-bubblegum':
specifier: ^0.7.0
version: 0.7.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
@@ -82,11 +79,6 @@ packages:
resolution: {integrity: sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==}
engines: {node: '>=6.9.0'}
- '@bundlr-network/client@0.8.9':
- resolution: {integrity: sha512-SJ7BAt/KhONeFQ0+nbqrw2DUWrsev6y6cmlXt+3x7fPCkw7OJwudtxV/h2nBteZd65NXjqw8yzkmLiLfZ7CCRA==}
- deprecated: Bundlr is now Irys - please switch to @irys/sdk - this package will remain compatible with Irys for the foreseeable future.
- hasBin: true
-
'@esbuild/aix-ppc64@0.28.1':
resolution: {integrity: sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==}
engines: {node: '>=18'}
@@ -243,124 +235,16 @@ packages:
cpu: [x64]
os: [win32]
- '@ethereumjs/rlp@4.0.1':
- resolution: {integrity: sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw==}
- engines: {node: '>=14'}
- hasBin: true
-
- '@ethereumjs/util@8.1.0':
- resolution: {integrity: sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA==}
- engines: {node: '>=14'}
-
- '@ethersproject/abi@5.7.0':
- resolution: {integrity: sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==}
-
- '@ethersproject/abstract-provider@5.7.0':
- resolution: {integrity: sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==}
-
- '@ethersproject/abstract-signer@5.7.0':
- resolution: {integrity: sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==}
-
- '@ethersproject/address@5.7.0':
- resolution: {integrity: sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==}
-
- '@ethersproject/base64@5.7.0':
- resolution: {integrity: sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==}
-
- '@ethersproject/basex@5.7.0':
- resolution: {integrity: sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==}
-
- '@ethersproject/bignumber@5.7.0':
- resolution: {integrity: sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==}
-
- '@ethersproject/bytes@5.7.0':
- resolution: {integrity: sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==}
-
- '@ethersproject/constants@5.7.0':
- resolution: {integrity: sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==}
-
- '@ethersproject/contracts@5.7.0':
- resolution: {integrity: sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg==}
-
- '@ethersproject/hash@5.7.0':
- resolution: {integrity: sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==}
-
- '@ethersproject/hdnode@5.7.0':
- resolution: {integrity: sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==}
-
- '@ethersproject/json-wallets@5.7.0':
- resolution: {integrity: sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g==}
-
- '@ethersproject/keccak256@5.7.0':
- resolution: {integrity: sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==}
-
- '@ethersproject/logger@5.7.0':
- resolution: {integrity: sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==}
-
- '@ethersproject/networks@5.7.1':
- resolution: {integrity: sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==}
-
- '@ethersproject/pbkdf2@5.7.0':
- resolution: {integrity: sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==}
-
- '@ethersproject/properties@5.7.0':
- resolution: {integrity: sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==}
-
- '@ethersproject/providers@5.7.2':
- resolution: {integrity: sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==}
-
- '@ethersproject/random@5.7.0':
- resolution: {integrity: sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==}
-
- '@ethersproject/rlp@5.7.0':
- resolution: {integrity: sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==}
-
- '@ethersproject/sha2@5.7.0':
- resolution: {integrity: sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw==}
-
- '@ethersproject/signing-key@5.7.0':
- resolution: {integrity: sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==}
-
- '@ethersproject/solidity@5.7.0':
- resolution: {integrity: sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA==}
-
- '@ethersproject/strings@5.7.0':
- resolution: {integrity: sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==}
-
- '@ethersproject/transactions@5.7.0':
- resolution: {integrity: sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==}
-
- '@ethersproject/units@5.7.0':
- resolution: {integrity: sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==}
-
- '@ethersproject/wallet@5.7.0':
- resolution: {integrity: sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA==}
-
- '@ethersproject/web@5.7.1':
- resolution: {integrity: sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==}
-
- '@ethersproject/wordlists@5.7.0':
- resolution: {integrity: sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==}
-
'@isaacs/cliui@8.0.2':
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
engines: {node: '>=12'}
- '@metaplex-foundation/beet-solana@0.3.1':
- resolution: {integrity: sha512-tgyEl6dvtLln8XX81JyBvWjIiEcjTkUwZbrM5dIobTmoqMuGewSyk9CClno8qsMsFdB5T3jC91Rjeqmu/6xk2g==}
-
'@metaplex-foundation/beet-solana@0.4.0':
resolution: {integrity: sha512-B1L94N3ZGMo53b0uOSoznbuM5GBNJ8LwSeznxBxJ+OThvfHQ4B5oMUqb+0zdLRfkKGS7Q6tpHK9P+QK0j3w2cQ==}
'@metaplex-foundation/beet-solana@0.4.1':
resolution: {integrity: sha512-/6o32FNUtwK8tjhotrvU/vorP7umBuRFvBZrC6XCk51aKidBHe5LPVPA5AjGPbV3oftMfRuXPNd9yAGeEqeCDQ==}
- '@metaplex-foundation/beet@0.4.0':
- resolution: {integrity: sha512-2OAKJnLatCc3mBXNL0QmWVQKAWK2C7XDfepgL0p/9+8oSx4bmRAFHFqptl1A/C0U5O3dxGwKfmKluW161OVGcA==}
-
- '@metaplex-foundation/beet@0.6.1':
- resolution: {integrity: sha512-OYgnijLFzw0cdUlRKH5POp0unQECPOW9muJ2X3QIVyak5G6I6l/rKo72sICgPLIFKdmsi2jmnkuLY7wp14iXdw==}
-
'@metaplex-foundation/beet@0.7.1':
resolution: {integrity: sha512-hNCEnS2WyCiYyko82rwuISsBY3KYpe828ubsd2ckeqZr7tl0WVLivGkoyA/qdiaaHEBGdGl71OpfWa2rqL3DiA==}
@@ -370,48 +254,16 @@ packages:
'@metaplex-foundation/cusper@0.0.2':
resolution: {integrity: sha512-S9RulC2fFCFOQraz61bij+5YCHhSO9llJegK8c8Y6731fSi6snUSQJdCUqYS8AIgR0TKbQvdvgSyIIdbDFZbBA==}
- '@metaplex-foundation/js@0.19.5':
- resolution: {integrity: sha512-OXGX0zr4rpr4vpFt6+tO+bEQ7yN5fqyKpAWYzxPb0yGM0Rj6JKlvj0Eaiymvwmm5XtLPK+98M8y9jxZiQEtsEA==}
-
- '@metaplex-foundation/mpl-auction-house@2.5.1':
- resolution: {integrity: sha512-O+IAdYVaoOvgACB8pm+1lF5BNEjl0COkqny2Ho8KQZwka6aC/vHbZ239yRwAMtJhf5992BPFdT4oifjyE0O+Mw==}
-
- '@metaplex-foundation/mpl-bubblegum@0.6.2':
- resolution: {integrity: sha512-4tF7/FFSNtpozuIGD7gMKcqK2D49eVXZ144xiowC5H1iBeu009/oj2m8Tj6n4DpYFKWJ2JQhhhk0a2q7x0Begw==}
-
'@metaplex-foundation/mpl-bubblegum@0.7.0':
resolution: {integrity: sha512-HCo6q+nh8M3KRv9/aUaZcJo5/vPJEeZwPGRDWkqN7lUXoMIvhd83fZi7MB1rIg1gwpVHfHqim0A02LCYKisWFg==}
- '@metaplex-foundation/mpl-candy-guard@0.3.2':
- resolution: {integrity: sha512-QWXzPDz+6OR3957LtfW6/rcGvFWS/0AeHJa/BUO2VEVQxN769dupsKGtrsS8o5RzXCeap3wrCtDSNxN3dnWu4Q==}
-
- '@metaplex-foundation/mpl-candy-machine-core@0.1.2':
- resolution: {integrity: sha512-jjDkRvMR+iykt7guQ7qVnOHTZedql0lq3xqWDMaenAUCH3Xrf2zKATThhJppIVNX1/YtgBOO3lGqhaFbaI4pCw==}
-
- '@metaplex-foundation/mpl-candy-machine@5.1.0':
- resolution: {integrity: sha512-pjHpUpWVOCDxK3l6dXxfmJKNQmbjBqnm5ElOl1mJAygnzO8NIPQvrP89y6xSNyo8qZsJyt4ZMYUyD0TdbtKZXQ==}
-
'@metaplex-foundation/mpl-token-metadata@2.13.0':
resolution: {integrity: sha512-Fl/8I0L9rv4bKTV/RAl5YIbJe9SnQPInKvLz+xR1fEc4/VQkuCn3RPgypfUMEKWmCznzaw4sApDxy6CFS4qmJw==}
- '@noble/curves@1.3.0':
- resolution: {integrity: sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA==}
-
'@noble/curves@1.9.7':
resolution: {integrity: sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==}
engines: {node: ^14.21.3 || >=16}
- '@noble/ed25519@1.7.3':
- resolution: {integrity: sha512-iR8GBkDt0Q3GyaVcIu7mSsVIqnFbkbRzGLWlvhwunacoLwt4J3swfKhfaM6rN6WY+TBGoYT1GtT1mIh2/jGbRQ==}
-
- '@noble/hashes@1.3.3':
- resolution: {integrity: sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==}
- engines: {node: '>= 16'}
-
- '@noble/hashes@1.4.0':
- resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==}
- engines: {node: '>= 16'}
-
'@noble/hashes@1.8.0':
resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==}
engines: {node: ^14.21.3 || >=16}
@@ -420,21 +272,6 @@ packages:
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
- '@randlabs/communication-bridge@1.0.1':
- resolution: {integrity: sha512-CzS0U8IFfXNK7QaJFE4pjbxDGfPjbXBEsEaCn9FN15F+ouSAEUQkva3Gl66hrkBZOGexKFEWMwUHIDKpZ2hfVg==}
-
- '@randlabs/myalgo-connect@1.4.2':
- resolution: {integrity: sha512-K9hEyUi7G8tqOp7kWIALJLVbGCByhilcy6123WfcorxWwiE1sbQupPyIU5f3YdQK6wMjBsyTWiLW52ZBMp7sXA==}
-
- '@scure/base@1.1.6':
- resolution: {integrity: sha512-ok9AWwhcgYuGG3Zfhyqg+zwl+Wn5uE+dwC0NV/2qQkx4dABbb/bx96vWu8NSj+BNjjSjno+JRYRjle1jV08k3g==}
-
- '@scure/bip32@1.3.3':
- resolution: {integrity: sha512-LJaN3HwRbfQK0X1xFSi0Q9amqOgzQnnDngIt+ZlsBC3Bm7/nE7K0kwshZHyaru79yIVRv/e1mQAjZyuZG6jOFQ==}
-
- '@scure/bip39@1.2.2':
- resolution: {integrity: sha512-HYf9TUXG80beW+hGAt3TRM8wU6pQoYur9iNypTROm42dorCGmLnFe3eWjz3gOq6G62H2WRh0FCzAR1PI+29zIA==}
-
'@solana/buffer-layout-utils@0.2.0':
resolution: {integrity: sha512-szG4sxgJGktbuZYDg2FfNmkMi0DYQoVjN2h7ta1W1hPrwzarcFLBq9UpX1UjNXsNpT9dn+chgprtWGioUAr4/g==}
engines: {node: '>= 10'}
@@ -512,23 +349,9 @@ packages:
resolution: {integrity: sha512-JBMGB0oR4lPttOZ5XiUGyvylwLQjt1CPJa6qQ5oM+MBCndfjz2TKKkw0eATlLLcYmq1jBVsNlJ2cD6ns2GR7lA==}
engines: {node: '>=16'}
- '@solana/wallet-adapter-base@0.9.23':
- resolution: {integrity: sha512-apqMuYwFp1jFi55NxDfvXUX2x1T0Zh07MxhZ/nCCTGys5raSfYUh82zen2BLv8BSDj/JxZ2P/s7jrQZGrX8uAw==}
- engines: {node: '>=16'}
- peerDependencies:
- '@solana/web3.js': ^1.77.3
-
- '@solana/wallet-standard-features@1.2.0':
- resolution: {integrity: sha512-tUd9srDLkRpe1BYg7we+c4UhRQkq+XQWswsr/L1xfGmoRDF47BPSXf4zE7ZU2GRBGvxtGt7lwJVAufQyQYhxTQ==}
- engines: {node: '>=16'}
-
'@solana/web3.js@1.98.4':
resolution: {integrity: sha512-vv9lfnvjUsRiq//+j5pBdXig0IQdtzA0BRZ3bXEP4KaIyF1CcaydWqgyzQgfZMNIsWNWmG+AUHwPy4AHOD6gpw==}
- '@supercharge/promise-pool@2.4.0':
- resolution: {integrity: sha512-O9CMipBlq5OObdt1uKJGIzm9cdjpPWfj+a+Zw9EgWKxaMNHKC7EU7X9taj3H0EGQNLOSq2jAcOa3EzxlfHsD6w==}
- engines: {node: '>=8'}
-
'@swc/helpers@0.5.19':
resolution: {integrity: sha512-QamiFeIK3txNjgUTNppE6MiG3p7TdninpZu0E0PbqVh1a9FNLT2FRhisaa4NcaX52XVhA5l7Pk58Ft7Sqi/2sA==}
@@ -547,9 +370,6 @@ packages:
'@types/mocha@10.0.10':
resolution: {integrity: sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==}
- '@types/node@11.11.6':
- resolution: {integrity: sha512-Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ==}
-
'@types/node@12.20.55':
resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==}
@@ -565,33 +385,10 @@ packages:
'@types/ws@8.18.1':
resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==}
- '@wallet-standard/base@1.0.1':
- resolution: {integrity: sha512-1To3ekMfzhYxe0Yhkpri+Fedq0SYcfrOfJi3vbLjMwF2qiKPjTGLwZkf2C9ftdQmxES+hmxhBzTwF4KgcOwf8w==}
- engines: {node: '>=16'}
-
- '@wallet-standard/features@1.0.3':
- resolution: {integrity: sha512-m8475I6W5LTatTZuUz5JJNK42wFRgkJTB0I9tkruMwfqBF2UN2eomkYNVf9RbrsROelCRzSFmugqjKZBFaubsA==}
- engines: {node: '>=16'}
-
- aes-js@3.0.0:
- resolution: {integrity: sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==}
-
agentkeepalive@4.5.0:
resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==}
engines: {node: '>= 8.0.0'}
- algo-msgpack-with-bigint@2.1.1:
- resolution: {integrity: sha512-F1tGh056XczEaEAqu7s+hlZUDWwOBT70Eq0lfMpBP2YguSQVyxRbprLq5rELXKQOyOaixTWYhMeMQMzP0U5FoQ==}
- engines: {node: '>= 10'}
-
- algosdk@1.24.1:
- resolution: {integrity: sha512-9moZxdqeJ6GdE4N6fA/GlUP4LrbLZMYcYkt141J4Ss68OfEgH9qW0wBuZ3ZOKEx/xjc5bg7mLP2Gjg7nwrkmww==}
- engines: {node: '>=14.0.0'}
-
- ansi-escapes@4.3.2:
- resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
- engines: {node: '>=8'}
-
ansi-regex@5.0.1:
resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
engines: {node: '>=8'}
@@ -611,27 +408,9 @@ packages:
ansicolors@0.3.2:
resolution: {integrity: sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==}
- arbundles@0.6.23:
- resolution: {integrity: sha512-+gr93F3fivN+6dhiImT6BQNaXz4oECPn2GYjCZjS2yEoq7hM78FRvVp6kQyjEdhnuBFQr/q4oS/nkjnQlHdj9Q==}
-
- arconnect@0.4.2:
- resolution: {integrity: sha512-Jkpd4QL3TVqnd3U683gzXmZUVqBUy17DdJDuL/3D9rkysLgX6ymJ2e+sR+xyZF5Rh42CBqDXWNMmCjBXeP7Gbw==}
-
argparse@2.0.1:
resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
- arweave-stream-tx@1.2.2:
- resolution: {integrity: sha512-bNt9rj0hbAEzoUZEF2s6WJbIz8nasZlZpxIw03Xm8fzb9gRiiZlZGW3lxQLjfc9Z0VRUWDzwtqoYeEoB/JDToQ==}
- peerDependencies:
- arweave: ^1.10.0
-
- arweave@1.15.1:
- resolution: {integrity: sha512-rT7FOwqdudd5npqp4xOYdDT2035LtpcqePjwirh4wjRiEtVsz1FZkRiM2Yj+fOAwYzOm/hNG0GDOipDSaiEGGQ==}
- engines: {node: '>=18'}
-
- asn1.js@5.4.1:
- resolution: {integrity: sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==}
-
assert@2.1.0:
resolution: {integrity: sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==}
@@ -639,9 +418,6 @@ packages:
resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
engines: {node: '>=12'}
- async-retry@1.3.3:
- resolution: {integrity: sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==}
-
asynckit@0.4.0:
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
@@ -649,17 +425,6 @@ packages:
resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
engines: {node: '>= 0.4'}
- avsc@https://codeload.github.com/Irys-xyz/avsc/tar.gz/a730cc8018b79e114b6a3381bbb57760a24c6cef:
- resolution: {tarball: https://codeload.github.com/Irys-xyz/avsc/tar.gz/a730cc8018b79e114b6a3381bbb57760a24c6cef}
- version: 5.4.7
- engines: {node: '>=0.11'}
-
- axios@0.21.4:
- resolution: {integrity: sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==}
-
- axios@0.25.0:
- resolution: {integrity: sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==}
-
axios@1.7.2:
resolution: {integrity: sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==}
@@ -675,13 +440,6 @@ packages:
base64-js@1.5.1:
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
- base64url@3.0.1:
- resolution: {integrity: sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==}
- engines: {node: '>=6.0.0'}
-
- bech32@1.1.4:
- resolution: {integrity: sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==}
-
bigint-buffer@1.1.5:
resolution: {integrity: sha512-trfYco6AoZ+rKhKnxA0hgX0HAbVP/s808/EuDSe2JDzUnCp/xAsli35Orvk67UrTEcwuxZqYZDmfA2RXJgxVvA==}
engines: {node: '>= 10.0.0'}
@@ -692,42 +450,18 @@ packages:
bindings@1.5.0:
resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==}
- bip39-light@1.0.7:
- resolution: {integrity: sha512-WDTmLRQUsiioBdTs9BmSEmkJza+8xfJmptsNJjxnoq3EydSa/ZBXT6rm66KoT3PJIRYMnhSKNR7S9YL1l7R40Q==}
-
- bip39@3.0.2:
- resolution: {integrity: sha512-J4E1r2N0tUylTKt07ibXvhpT2c5pyAFgvuA5q1H9uDy6dEGpjV8jmymh3MTYJDLCNbIVClSB9FbND49I6N24MQ==}
-
- bl@4.1.0:
- resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==}
-
- bn.js@4.11.6:
- resolution: {integrity: sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==}
-
- bn.js@4.12.2:
- resolution: {integrity: sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw==}
-
- bn.js@5.2.0:
- resolution: {integrity: sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==}
-
bn.js@5.2.1:
resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==}
bn.js@5.2.2:
resolution: {integrity: sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw==}
- borsh@0.6.0:
- resolution: {integrity: sha512-sl5k89ViqsThXQpYa9XDtz1sBl3l1lI313cFUY1HKr+wvMILnb+58xpkqTNrYbelh99dY7K8usxoCusQmqix9Q==}
-
borsh@0.7.0:
resolution: {integrity: sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA==}
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
- brorand@1.1.0:
- resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==}
-
browser-stdout@1.3.1:
resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==}
@@ -741,12 +475,6 @@ packages:
resolution: {integrity: sha512-kWSuLN694+KTk8SrYvCqwP2WcgQjoRCiF5b4QDvkkz8EmgD+aWAIceGFKMIAdmF/pH+vpgNV3d3kAKorcdAmWA==}
engines: {node: '>=4.5'}
- buffer-reverse@1.0.1:
- resolution: {integrity: sha512-M87YIUBsZ6N924W57vDwT/aOu8hw7ZgdByz6ijksLjmHJELBASmYTTlNHRgjE+pTsT9oJXGaDSgqqwfdHotDUg==}
-
- buffer@5.7.1:
- resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==}
-
buffer@6.0.3:
resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==}
@@ -762,9 +490,6 @@ packages:
resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
engines: {node: '>=10'}
- capability@0.2.5:
- resolution: {integrity: sha512-rsJZYVCgXd08sPqwmaIqjAd5SUTfonV0z/gDJ8D6cN8wQphky1kkAYEqQ+hmDxTw7UihvBfjUVUSY+DBEe44jg==}
-
chai@6.2.2:
resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==}
engines: {node: '>=18'}
@@ -781,36 +506,14 @@ packages:
resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==}
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
- chardet@0.7.0:
- resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==}
-
chokidar@4.0.3:
resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
engines: {node: '>= 14.16.0'}
- cipher-base@1.0.4:
- resolution: {integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==}
-
- cli-cursor@3.1.0:
- resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==}
- engines: {node: '>=8'}
-
- cli-spinners@2.9.2:
- resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==}
- engines: {node: '>=6'}
-
- cli-width@3.0.0:
- resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==}
- engines: {node: '>= 10'}
-
cliui@8.0.1:
resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
engines: {node: '>=12'}
- clone@1.0.4:
- resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==}
- engines: {node: '>=0.8'}
-
color-convert@2.0.1:
resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
engines: {node: '>=7.0.0'}
@@ -833,16 +536,6 @@ packages:
commander@2.20.3:
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
- commander@8.3.0:
- resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==}
- engines: {node: '>= 12'}
-
- create-hash@1.2.0:
- resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==}
-
- create-hmac@1.1.7:
- resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==}
-
cross-fetch@3.2.0:
resolution: {integrity: sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==}
@@ -850,22 +543,6 @@ packages:
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
engines: {node: '>= 8'}
- crypto-js@3.3.0:
- resolution: {integrity: sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q==}
-
- csv-generate@4.4.1:
- resolution: {integrity: sha512-O/einO0v4zPmXaOV+sYqGa02VkST4GP5GLpWBNHEouIU7pF3kpGf3D0kCCvX82ydIY4EKkOK+R8b1BYsRXravg==}
-
- csv-parse@5.5.6:
- resolution: {integrity: sha512-uNpm30m/AGSkLxxy7d9yRXpJQFrZzVWLFBkS+6ngPcZkw/5k3L/jjFuj7tVnEpRn+QgmiXr21nDlhCiUK4ij2A==}
-
- csv-stringify@6.5.0:
- resolution: {integrity: sha512-edlXFVKcUx7r8Vx5zQucsuMg4wb/xT6qyz+Sr1vnLrdXqlLD1+UKyWNyZ9zn6mUW1ewmGxrpVwAcChGF0HQ/2Q==}
-
- csv@6.3.9:
- resolution: {integrity: sha512-eiN+Qu8NwSLxZYia6WzB8xlX/rAQ/8EgK5A4dIF7Bz96mzcr5dW1jlcNmjG0QWySWKfPdCerH3RQ96ZqqsE8cA==}
- engines: {node: '>= 0.1.90'}
-
debug@4.3.4:
resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
engines: {node: '>=6.0'}
@@ -888,9 +565,6 @@ packages:
resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==}
engines: {node: '>=10'}
- defaults@1.0.4:
- resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
-
define-data-property@1.1.4:
resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
engines: {node: '>= 0.4'}
@@ -907,14 +581,6 @@ packages:
resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
engines: {node: '>=0.4.0'}
- depd@1.1.2:
- resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==}
- engines: {node: '>= 0.6'}
-
- depd@2.0.0:
- resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==}
- engines: {node: '>= 0.8'}
-
diff@7.0.0:
resolution: {integrity: sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==}
engines: {node: '>=0.3.1'}
@@ -926,21 +592,12 @@ packages:
eastasianwidth@0.2.0:
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
- elliptic@6.5.4:
- resolution: {integrity: sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==}
-
- elliptic@6.5.5:
- resolution: {integrity: sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw==}
-
emoji-regex@8.0.0:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
emoji-regex@9.2.2:
resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
- error-polyfill@0.1.3:
- resolution: {integrity: sha512-XHJk60ufE+TG/ydwp4lilOog549iiQF2OAPhkk9DdiYWMrltz5yhDz/xnKuenNwP7gy3dsibssO5QpVhkrSzzg==}
-
es-define-property@1.0.0:
resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==}
engines: {node: '>= 0.4'}
@@ -964,40 +621,16 @@ packages:
resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==}
engines: {node: '>=6'}
- escape-string-regexp@1.0.5:
- resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
- engines: {node: '>=0.8.0'}
-
escape-string-regexp@4.0.0:
resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
engines: {node: '>=10'}
- ethereum-bloom-filters@1.1.0:
- resolution: {integrity: sha512-J1gDRkLpuGNvWYzWslBQR9cDV4nd4kfvVTE/Wy4Kkm4yb3EYRSlyi0eB/inTsSTTVyA0+HyzHgbr95Fn/Z1fSw==}
-
- ethereum-cryptography@2.1.3:
- resolution: {integrity: sha512-BlwbIL7/P45W8FGW2r7LGuvoEZ+7PWsniMvQ4p5s2xCyw9tmaDlpfsN9HjAucbF+t/qpVHwZUisgfK24TCW8aA==}
-
- ethers@5.7.2:
- resolution: {integrity: sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==}
-
- ethjs-unit@0.1.6:
- resolution: {integrity: sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk=}
- engines: {node: '>=6.5.0', npm: '>=3'}
-
eventemitter3@4.0.7:
resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==}
eventemitter3@5.0.4:
resolution: {integrity: sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==}
- exponential-backoff@3.1.1:
- resolution: {integrity: sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==}
-
- external-editor@3.1.0:
- resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==}
- engines: {node: '>=4'}
-
eyes@0.1.8:
resolution: {integrity: sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==}
engines: {node: '> 0.1.90'}
@@ -1008,10 +641,6 @@ packages:
fastestsmallesttextencoderdecoder@1.0.22:
resolution: {integrity: sha512-Pb8d48e+oIuY4MaM64Cd7OW1gt4nxCHs7/ddPPZ/Ic3sg8yVGM7O9wDvZ7us6ScaUupzM+pfBolwtYhN1IxBIw==}
- figures@3.2.0:
- resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==}
- engines: {node: '>=8'}
-
file-uri-to-path@1.0.0:
resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==}
@@ -1086,13 +715,6 @@ packages:
resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
engines: {node: '>= 0.4'}
- hash-base@3.1.0:
- resolution: {integrity: sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==}
- engines: {node: '>=4'}
-
- hash.js@1.1.7:
- resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==}
-
hasown@2.0.2:
resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
engines: {node: '>= 0.4'}
@@ -1101,33 +723,15 @@ packages:
resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
hasBin: true
- hi-base32@0.5.1:
- resolution: {integrity: sha512-EmBBpvdYh/4XxsnUybsPag6VikPYnN30td+vQk+GI3qpahVEG9+gTkG0aXVxTjBqQ5T6ijbWIu77O+C5WFWsnA==}
-
- hmac-drbg@1.0.1:
- resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==}
-
- http-errors@1.8.1:
- resolution: {integrity: sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==}
- engines: {node: '>= 0.6'}
-
humanize-ms@1.2.1:
resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==}
- iconv-lite@0.4.24:
- resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
- engines: {node: '>=0.10.0'}
-
ieee754@1.2.1:
resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
inherits@2.0.4:
resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
- inquirer@8.2.6:
- resolution: {integrity: sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==}
- engines: {node: '>=12.0.0'}
-
is-arguments@1.1.1:
resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==}
engines: {node: '>= 0.4'}
@@ -1144,14 +748,6 @@ packages:
resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==}
engines: {node: '>= 0.4'}
- is-hex-prefixed@1.0.0:
- resolution: {integrity: sha1-fY035q135dEnFIkTxXPggtd39VQ=}
- engines: {node: '>=6.5.0', npm: '>=3'}
-
- is-interactive@1.0.0:
- resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==}
- engines: {node: '>=8'}
-
is-nan@1.3.2:
resolution: {integrity: sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==}
engines: {node: '>= 0.4'}
@@ -1188,42 +784,20 @@ packages:
engines: {node: '>=8'}
hasBin: true
- js-sha256@0.9.0:
- resolution: {integrity: sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==}
-
js-sha3@0.8.0:
resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==}
- js-sha512@0.8.0:
- resolution: {integrity: sha512-PWsmefG6Jkodqt+ePTvBZCSMFgN7Clckjd0O7su3I0+BW2QWUTJNzjktHsztGLhncP2h8mcF9V9Y2Ha59pAViQ==}
-
js-yaml@4.1.0:
resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
hasBin: true
- json-bigint@1.0.0:
- resolution: {integrity: sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==}
-
json-stringify-safe@5.0.1:
resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==}
- keccak@3.0.4:
- resolution: {integrity: sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q==}
- engines: {node: '>=10.0.0'}
-
locate-path@6.0.0:
resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
engines: {node: '>=10'}
- lodash.clonedeep@4.5.0:
- resolution: {integrity: sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==}
-
- lodash.isequal@4.5.0:
- resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==}
-
- lodash@4.17.21:
- resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
-
log-symbols@4.1.0:
resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==}
engines: {node: '>=10'}
@@ -1231,16 +805,6 @@ packages:
lru-cache@10.4.3:
resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
- md5.js@1.3.5:
- resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==}
-
- merkletreejs@0.2.32:
- resolution: {integrity: sha512-TostQBiwYRIwSE5++jGmacu3ODcKAgqb0Y/pnIohXS7sWxh1gCkSptbmF1a43faehRDpcHf7J/kv0Ml2D/zblQ==}
- engines: {node: '>= 7.6.0'}
-
- micro-ftch@0.3.1:
- resolution: {integrity: sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==}
-
mime-db@1.52.0:
resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
engines: {node: '>= 0.6'}
@@ -1249,21 +813,6 @@ packages:
resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
engines: {node: '>= 0.6'}
- mime@3.0.0:
- resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==}
- engines: {node: '>=10.0.0'}
- hasBin: true
-
- mimic-fn@2.1.0:
- resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
- engines: {node: '>=6'}
-
- minimalistic-assert@1.0.1:
- resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
-
- minimalistic-crypto-utils@1.0.1:
- resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==}
-
minimatch@9.0.9:
resolution: {integrity: sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -1283,28 +832,6 @@ packages:
ms@2.1.3:
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
- multistream@4.1.0:
- resolution: {integrity: sha512-J1XDiAmmNpRCBfIWJv+n0ymC4ABcf/Pl+5YvC5B/D2f/2+8PtHvCNxMPKiQcZyi922Hq69J2YOpb1pTywfifyw==}
-
- mustache@4.2.0:
- resolution: {integrity: sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==}
- hasBin: true
-
- mute-stream@0.0.8:
- resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==}
-
- near-api-js@0.44.2:
- resolution: {integrity: sha512-eMnc4V+geggapEUa3nU2p8HSHn/njtloI4P2mceHQWO8vDE1NGpnAw8FuTBrLmXSgIv9m6oocgFc9t3VNf5zwg==}
-
- near-hd-key@1.2.1:
- resolution: {integrity: sha512-SIrthcL5Wc0sps+2e1xGj3zceEa68TgNZDLuCx0daxmfTP7sFTB3/mtE2pYhlFsCxWoMn+JfID5E1NlzvvbRJg==}
-
- near-seed-phrase@0.2.0:
- resolution: {integrity: sha512-NpmrnejpY1AdlRpDZ0schJQJtfBaoUheRfiYtQpcq9TkwPgqKZCRULV5L3hHmLc0ep7KRtikbPQ9R2ztN/3cyQ==}
-
- node-addon-api@2.0.2:
- resolution: {integrity: sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==}
-
node-fetch@2.7.0:
resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
engines: {node: 4.x || >=6.0.0}
@@ -1318,13 +845,6 @@ packages:
resolution: {integrity: sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw==}
hasBin: true
- number-to-bn@1.7.0:
- resolution: {integrity: sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA=}
- engines: {node: '>=6.5.0', npm: '>=3'}
-
- o3@1.0.3:
- resolution: {integrity: sha512-f+4n+vC6s4ysy7YO7O2gslWZBUu8Qj2i2OUJOvjRxQva7jVjYjB29jrr9NCjmxZQR0gzrOcv1RnqoYOeMs5VRQ==}
-
object-is@1.1.6:
resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==}
engines: {node: '>= 0.4'}
@@ -1337,21 +857,6 @@ packages:
resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==}
engines: {node: '>= 0.4'}
- once@1.4.0:
- resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
-
- onetime@5.1.2:
- resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
- engines: {node: '>=6'}
-
- ora@5.4.1:
- resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==}
- engines: {node: '>=10'}
-
- os-tmpdir@1.0.2:
- resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==}
- engines: {node: '>=0.10.0'}
-
p-limit@3.1.0:
resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
engines: {node: '>=10'}
@@ -1378,10 +883,6 @@ packages:
resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
engines: {node: '>=16 || 14 >=14.18'}
- pbkdf2@3.1.2:
- resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==}
- engines: {node: '>=0.12'}
-
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
@@ -1394,20 +895,12 @@ packages:
engines: {node: '>=10.13.0'}
hasBin: true
- process@0.11.10:
- resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
- engines: {node: '>= 0.6.0'}
-
proxy-from-env@1.1.0:
resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
randombytes@2.1.0:
resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
- readable-stream@3.6.2:
- resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==}
- engines: {node: '>= 6'}
-
readdirp@4.1.2:
resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
engines: {node: '>= 14.18.0'}
@@ -1419,40 +912,12 @@ packages:
resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
engines: {node: '>=0.10.0'}
- restore-cursor@3.1.0:
- resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==}
- engines: {node: '>=8'}
-
- retry@0.13.1:
- resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==}
- engines: {node: '>= 4'}
-
- ripemd160@2.0.2:
- resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==}
-
rpc-websockets@9.3.5:
resolution: {integrity: sha512-4mAmr+AEhPYJ9TmDtxF3r3ZcbWy7W8kvZ4PoZYw/Xgp2J7WixjwTgiQZsoTDvch5nimmg3Ay6/0Kuh9oIvVs9A==}
- run-async@2.4.1:
- resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==}
- engines: {node: '>=0.12.0'}
-
- rxjs@7.8.1:
- resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==}
-
safe-buffer@5.2.1:
resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
- safer-buffer@2.1.2:
- resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
-
- scrypt-js@3.0.1:
- resolution: {integrity: sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==}
-
- secp256k1@4.0.3:
- resolution: {integrity: sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==}
- engines: {node: '>=10.0.0'}
-
serialize-javascript@6.0.2:
resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
@@ -1460,13 +925,6 @@ packages:
resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
engines: {node: '>= 0.4'}
- setprototypeof@1.2.0:
- resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
-
- sha.js@2.4.11:
- resolution: {integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==}
- hasBin: true
-
shebang-command@2.0.0:
resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
engines: {node: '>=8'}
@@ -1475,26 +933,16 @@ packages:
resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
engines: {node: '>=8'}
- signal-exit@3.0.7:
- resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
-
signal-exit@4.1.0:
resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
engines: {node: '>=14'}
- statuses@1.5.0:
- resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==}
- engines: {node: '>= 0.6'}
-
stream-chain@2.2.5:
resolution: {integrity: sha512-1TJmBx6aSWqZ4tx7aTpBDXK0/e2hhcNSTV8+CbFJtDjbb+I1mZ8lHit0Grw9GRT+6JbIrrDd8esncgBi8aBXGA==}
stream-json@1.9.1:
resolution: {integrity: sha512-uWkjJ+2Nt/LO9Z/JyKZbMusL8Dkh97uUBTv3AJQ74y07lVahLY4eEFsPsE97pxYBwr8nnjMAIch5eqI0gPShyw==}
- stream-transform@3.3.2:
- resolution: {integrity: sha512-v64PUnPy9Qw94NGuaEMo+9RHQe4jTBYf+NkTtqkCgeuiNo8NlL0LtLR7fkKWNVFtp3RhIm5Dlxkgm5uz7TDimQ==}
-
string-width@4.2.3:
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
engines: {node: '>=8'}
@@ -1503,9 +951,6 @@ packages:
resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
engines: {node: '>=12'}
- string_decoder@1.3.0:
- resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
-
strip-ansi@6.0.1:
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
engines: {node: '>=8'}
@@ -1514,10 +959,6 @@ packages:
resolution: {integrity: sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==}
engines: {node: '>=12'}
- strip-hex-prefix@1.0.0:
- resolution: {integrity: sha1-DF8VX+8RUTczd96du1iNoFUA428=}
- engines: {node: '>=6.5.0', npm: '>=3'}
-
strip-json-comments@3.1.1:
resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
engines: {node: '>=8'}
@@ -1540,37 +981,12 @@ packages:
text-encoding-utf-8@1.0.2:
resolution: {integrity: sha512-8bw4MY9WjdsD2aMtO0OzOCY3pXGYNx2d2FfHRVUKkiCPDWjKuOlhLVASS+pD7VkLTVjW268LYJHwsnPFlBpbAg==}
- through@2.3.8:
- resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
-
- tmp-promise@3.0.3:
- resolution: {integrity: sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==}
-
- tmp@0.0.33:
- resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==}
- engines: {node: '>=0.6.0'}
-
- tmp@0.2.3:
- resolution: {integrity: sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==}
- engines: {node: '>=14.14'}
-
- toidentifier@1.0.1:
- resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==}
- engines: {node: '>=0.6'}
-
toml@3.0.0:
resolution: {integrity: sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==}
tr46@0.0.3:
resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
- treeify@1.1.0:
- resolution: {integrity: sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==}
- engines: {node: '>=0.6'}
-
- tslib@2.6.2:
- resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
-
tslib@2.8.1:
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
@@ -1579,13 +995,6 @@ packages:
engines: {node: '>=18.0.0'}
hasBin: true
- tweetnacl@1.0.3:
- resolution: {integrity: sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==}
-
- type-fest@0.21.3:
- resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
- engines: {node: '>=10'}
-
typescript-collections@1.3.3:
resolution: {integrity: sha512-7sI4e/bZijOzyURng88oOFZCISQPTHozfE2sUu5AviFYk5QV7fYGb6YiDl+vKjF/pICA354JImBImL9XJWUvdQ==}
@@ -1594,9 +1003,6 @@ packages:
engines: {node: '>=14.17'}
hasBin: true
- u3@0.1.1:
- resolution: {integrity: sha512-+J5D5ir763y+Am/QY6hXNRlwljIeRMZMGs0cT6qqZVVzzT3X3nFPXVyPOFRMOR4kupB0T8JnCdpWdp6Q/iXn3w==}
-
undici-types@8.3.0:
resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==}
@@ -1604,12 +1010,6 @@ packages:
resolution: {integrity: sha512-q3l3P9UtEEiAHcsgsqTgf9PPjctrDWoIXW3NpOHFdRDbLvu4DLIcxHangJ4RLrWkBcKjmcs/6NkerI8T/rE4LA==}
engines: {node: '>=6.14.2'}
- utf8@3.0.0:
- resolution: {integrity: sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==}
-
- util-deprecate@1.0.2:
- resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
-
util@0.12.5:
resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==}
@@ -1621,16 +1021,6 @@ packages:
resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==}
hasBin: true
- vlq@2.0.4:
- resolution: {integrity: sha512-aodjPa2wPQFkra1G8CzJBTHXhgk3EVSwxSWXNPr1fgdFLUb8kvLV1iEb6rFgasIsjP82HWI6dsb5Io26DDnasA==}
-
- wcwidth@1.0.1:
- resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==}
-
- web3-utils@1.10.4:
- resolution: {integrity: sha512-tsu8FiKJLk2PzhDl9fXbGUWTkkVXYhtTA+SmEFkKft+9BgwLxfCRpU96sWv7ICC8zixBNd3JURVoiR3dUXgP8A==}
- engines: {node: '>=8.0.0'}
-
webidl-conversions@3.0.1:
resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
@@ -1649,10 +1039,6 @@ packages:
workerpool@9.3.4:
resolution: {integrity: sha512-TmPRQYYSAnnDiEB0P/Ytip7bFGvqnSU6I2BcuSw7Hx+JSg/DsUi5ebYfc8GYaSdpuvOcEs6dXxPurOYpe9QFwg==}
- wrap-ansi@6.2.0:
- resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
- engines: {node: '>=8'}
-
wrap-ansi@7.0.0:
resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
engines: {node: '>=10'}
@@ -1661,21 +1047,6 @@ packages:
resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
engines: {node: '>=12'}
- wrappy@1.0.2:
- resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
-
- ws@7.4.6:
- resolution: {integrity: sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==}
- engines: {node: '>=8.3.0'}
- peerDependencies:
- bufferutil: ^4.0.1
- utf-8-validate: ^5.0.2
- peerDependenciesMeta:
- bufferutil:
- optional: true
- utf-8-validate:
- optional: true
-
ws@7.5.10:
resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==}
engines: {node: '>=8.3.0'}
@@ -1757,34 +1128,6 @@ snapshots:
'@babel/runtime@7.29.2': {}
- '@bundlr-network/client@0.8.9(bufferutil@4.0.8)(debug@4.3.4)(typescript@5.9.3)(utf-8-validate@6.0.6)':
- dependencies:
- '@solana/wallet-adapter-base': 0.9.23(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))
- '@solana/web3.js': 1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@supercharge/promise-pool': 2.4.0
- algosdk: 1.24.1
- arbundles: 0.6.23(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))(bufferutil@4.0.8)(debug@4.3.4)(utf-8-validate@6.0.6)
- arweave: 1.15.1
- async-retry: 1.3.3
- axios: 0.25.0(debug@4.3.4)
- base64url: 3.0.1
- bignumber.js: 9.1.2
- bs58: 4.0.1
- commander: 8.3.0
- csv: 6.3.9
- ethers: 5.7.2(bufferutil@4.0.8)(utf-8-validate@6.0.6)
- inquirer: 8.2.6
- js-sha256: 0.9.0
- mime-types: 2.1.35
- near-api-js: 0.44.2
- near-seed-phrase: 0.2.0
- transitivePeerDependencies:
- - bufferutil
- - debug
- - encoding
- - typescript
- - utf-8-validate
-
'@esbuild/aix-ppc64@0.28.1':
optional: true
@@ -1863,292 +1206,16 @@ snapshots:
'@esbuild/win32-x64@0.28.1':
optional: true
- '@ethereumjs/rlp@4.0.1': {}
-
- '@ethereumjs/util@8.1.0':
- dependencies:
- '@ethereumjs/rlp': 4.0.1
- ethereum-cryptography: 2.1.3
- micro-ftch: 0.3.1
-
- '@ethersproject/abi@5.7.0':
- dependencies:
- '@ethersproject/address': 5.7.0
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/constants': 5.7.0
- '@ethersproject/hash': 5.7.0
- '@ethersproject/keccak256': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/properties': 5.7.0
- '@ethersproject/strings': 5.7.0
-
- '@ethersproject/abstract-provider@5.7.0':
+ '@isaacs/cliui@8.0.2':
dependencies:
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/networks': 5.7.1
- '@ethersproject/properties': 5.7.0
- '@ethersproject/transactions': 5.7.0
- '@ethersproject/web': 5.7.1
+ string-width: 5.1.2
+ string-width-cjs: string-width@4.2.3
+ strip-ansi: 7.2.0
+ strip-ansi-cjs: strip-ansi@6.0.1
+ wrap-ansi: 8.1.0
+ wrap-ansi-cjs: wrap-ansi@7.0.0
- '@ethersproject/abstract-signer@5.7.0':
- dependencies:
- '@ethersproject/abstract-provider': 5.7.0
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/properties': 5.7.0
-
- '@ethersproject/address@5.7.0':
- dependencies:
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/keccak256': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/rlp': 5.7.0
-
- '@ethersproject/base64@5.7.0':
- dependencies:
- '@ethersproject/bytes': 5.7.0
-
- '@ethersproject/basex@5.7.0':
- dependencies:
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/properties': 5.7.0
-
- '@ethersproject/bignumber@5.7.0':
- dependencies:
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/logger': 5.7.0
- bn.js: 5.2.2
-
- '@ethersproject/bytes@5.7.0':
- dependencies:
- '@ethersproject/logger': 5.7.0
-
- '@ethersproject/constants@5.7.0':
- dependencies:
- '@ethersproject/bignumber': 5.7.0
-
- '@ethersproject/contracts@5.7.0':
- dependencies:
- '@ethersproject/abi': 5.7.0
- '@ethersproject/abstract-provider': 5.7.0
- '@ethersproject/abstract-signer': 5.7.0
- '@ethersproject/address': 5.7.0
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/constants': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/properties': 5.7.0
- '@ethersproject/transactions': 5.7.0
-
- '@ethersproject/hash@5.7.0':
- dependencies:
- '@ethersproject/abstract-signer': 5.7.0
- '@ethersproject/address': 5.7.0
- '@ethersproject/base64': 5.7.0
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/keccak256': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/properties': 5.7.0
- '@ethersproject/strings': 5.7.0
-
- '@ethersproject/hdnode@5.7.0':
- dependencies:
- '@ethersproject/abstract-signer': 5.7.0
- '@ethersproject/basex': 5.7.0
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/pbkdf2': 5.7.0
- '@ethersproject/properties': 5.7.0
- '@ethersproject/sha2': 5.7.0
- '@ethersproject/signing-key': 5.7.0
- '@ethersproject/strings': 5.7.0
- '@ethersproject/transactions': 5.7.0
- '@ethersproject/wordlists': 5.7.0
-
- '@ethersproject/json-wallets@5.7.0':
- dependencies:
- '@ethersproject/abstract-signer': 5.7.0
- '@ethersproject/address': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/hdnode': 5.7.0
- '@ethersproject/keccak256': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/pbkdf2': 5.7.0
- '@ethersproject/properties': 5.7.0
- '@ethersproject/random': 5.7.0
- '@ethersproject/strings': 5.7.0
- '@ethersproject/transactions': 5.7.0
- aes-js: 3.0.0
- scrypt-js: 3.0.1
-
- '@ethersproject/keccak256@5.7.0':
- dependencies:
- '@ethersproject/bytes': 5.7.0
- js-sha3: 0.8.0
-
- '@ethersproject/logger@5.7.0': {}
-
- '@ethersproject/networks@5.7.1':
- dependencies:
- '@ethersproject/logger': 5.7.0
-
- '@ethersproject/pbkdf2@5.7.0':
- dependencies:
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/sha2': 5.7.0
-
- '@ethersproject/properties@5.7.0':
- dependencies:
- '@ethersproject/logger': 5.7.0
-
- '@ethersproject/providers@5.7.2(bufferutil@4.0.8)(utf-8-validate@6.0.6)':
- dependencies:
- '@ethersproject/abstract-provider': 5.7.0
- '@ethersproject/abstract-signer': 5.7.0
- '@ethersproject/address': 5.7.0
- '@ethersproject/base64': 5.7.0
- '@ethersproject/basex': 5.7.0
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/constants': 5.7.0
- '@ethersproject/hash': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/networks': 5.7.1
- '@ethersproject/properties': 5.7.0
- '@ethersproject/random': 5.7.0
- '@ethersproject/rlp': 5.7.0
- '@ethersproject/sha2': 5.7.0
- '@ethersproject/strings': 5.7.0
- '@ethersproject/transactions': 5.7.0
- '@ethersproject/web': 5.7.1
- bech32: 1.1.4
- ws: 7.4.6(bufferutil@4.0.8)(utf-8-validate@6.0.6)
- transitivePeerDependencies:
- - bufferutil
- - utf-8-validate
-
- '@ethersproject/random@5.7.0':
- dependencies:
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/logger': 5.7.0
-
- '@ethersproject/rlp@5.7.0':
- dependencies:
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/logger': 5.7.0
-
- '@ethersproject/sha2@5.7.0':
- dependencies:
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/logger': 5.7.0
- hash.js: 1.1.7
-
- '@ethersproject/signing-key@5.7.0':
- dependencies:
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/properties': 5.7.0
- bn.js: 5.2.2
- elliptic: 6.5.4
- hash.js: 1.1.7
-
- '@ethersproject/solidity@5.7.0':
- dependencies:
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/keccak256': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/sha2': 5.7.0
- '@ethersproject/strings': 5.7.0
-
- '@ethersproject/strings@5.7.0':
- dependencies:
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/constants': 5.7.0
- '@ethersproject/logger': 5.7.0
-
- '@ethersproject/transactions@5.7.0':
- dependencies:
- '@ethersproject/address': 5.7.0
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/constants': 5.7.0
- '@ethersproject/keccak256': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/properties': 5.7.0
- '@ethersproject/rlp': 5.7.0
- '@ethersproject/signing-key': 5.7.0
-
- '@ethersproject/units@5.7.0':
- dependencies:
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/constants': 5.7.0
- '@ethersproject/logger': 5.7.0
-
- '@ethersproject/wallet@5.7.0':
- dependencies:
- '@ethersproject/abstract-provider': 5.7.0
- '@ethersproject/abstract-signer': 5.7.0
- '@ethersproject/address': 5.7.0
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/hash': 5.7.0
- '@ethersproject/hdnode': 5.7.0
- '@ethersproject/json-wallets': 5.7.0
- '@ethersproject/keccak256': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/properties': 5.7.0
- '@ethersproject/random': 5.7.0
- '@ethersproject/signing-key': 5.7.0
- '@ethersproject/transactions': 5.7.0
- '@ethersproject/wordlists': 5.7.0
-
- '@ethersproject/web@5.7.1':
- dependencies:
- '@ethersproject/base64': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/properties': 5.7.0
- '@ethersproject/strings': 5.7.0
-
- '@ethersproject/wordlists@5.7.0':
- dependencies:
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/hash': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/properties': 5.7.0
- '@ethersproject/strings': 5.7.0
-
- '@isaacs/cliui@8.0.2':
- dependencies:
- string-width: 5.1.2
- string-width-cjs: string-width@4.2.3
- strip-ansi: 7.2.0
- strip-ansi-cjs: strip-ansi@6.0.1
- wrap-ansi: 8.1.0
- wrap-ansi-cjs: wrap-ansi@7.0.0
-
- '@metaplex-foundation/beet-solana@0.3.1(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)':
- dependencies:
- '@metaplex-foundation/beet': 0.7.1
- '@solana/web3.js': 1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- bs58: 5.0.0
- debug: 4.3.4
- transitivePeerDependencies:
- - bufferutil
- - encoding
- - supports-color
- - typescript
- - utf-8-validate
-
- '@metaplex-foundation/beet-solana@0.4.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)':
+ '@metaplex-foundation/beet-solana@0.4.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)':
dependencies:
'@metaplex-foundation/beet': 0.7.1
'@solana/web3.js': 1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
@@ -2174,22 +1241,6 @@ snapshots:
- typescript
- utf-8-validate
- '@metaplex-foundation/beet@0.4.0':
- dependencies:
- ansicolors: 0.3.2
- bn.js: 5.2.2
- debug: 4.3.4
- transitivePeerDependencies:
- - supports-color
-
- '@metaplex-foundation/beet@0.6.1':
- dependencies:
- ansicolors: 0.3.2
- bn.js: 5.2.2
- debug: 4.3.4
- transitivePeerDependencies:
- - supports-color
-
'@metaplex-foundation/beet@0.7.1':
dependencies:
ansicolors: 0.3.2
@@ -2209,75 +1260,6 @@ snapshots:
'@metaplex-foundation/cusper@0.0.2': {}
- '@metaplex-foundation/js@0.19.5(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)':
- dependencies:
- '@bundlr-network/client': 0.8.9(bufferutil@4.0.8)(debug@4.3.4)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/beet': 0.7.1
- '@metaplex-foundation/mpl-auction-house': 2.5.1(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/mpl-bubblegum': 0.6.2(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/mpl-candy-guard': 0.3.2(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/mpl-candy-machine': 5.1.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/mpl-candy-machine-core': 0.1.2(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/mpl-token-metadata': 2.13.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@noble/ed25519': 1.7.3
- '@noble/hashes': 1.4.0
- '@solana/spl-account-compression': 0.1.10(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@solana/spl-token': 0.3.11(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@solana/web3.js': 1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- bignumber.js: 9.1.2
- bn.js: 5.2.1
- bs58: 5.0.0
- buffer: 6.0.3
- debug: 4.3.4
- eventemitter3: 4.0.7
- lodash.clonedeep: 4.5.0
- lodash.isequal: 4.5.0
- merkletreejs: 0.2.32
- mime: 3.0.0
- node-fetch: 2.7.0
- transitivePeerDependencies:
- - bufferutil
- - encoding
- - fastestsmallesttextencoderdecoder
- - supports-color
- - typescript
- - utf-8-validate
-
- '@metaplex-foundation/mpl-auction-house@2.5.1(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)':
- dependencies:
- '@metaplex-foundation/beet': 0.6.1
- '@metaplex-foundation/beet-solana': 0.3.1(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/cusper': 0.0.2
- '@solana/spl-token': 0.3.11(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@solana/web3.js': 1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- bn.js: 5.2.1
- transitivePeerDependencies:
- - bufferutil
- - encoding
- - fastestsmallesttextencoderdecoder
- - supports-color
- - typescript
- - utf-8-validate
-
- '@metaplex-foundation/mpl-bubblegum@0.6.2(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)':
- dependencies:
- '@metaplex-foundation/beet': 0.7.1
- '@metaplex-foundation/beet-solana': 0.4.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/cusper': 0.0.2
- '@metaplex-foundation/mpl-token-metadata': 2.13.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@solana/spl-account-compression': 0.1.10(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@solana/spl-token': 0.1.8(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@solana/web3.js': 1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- bn.js: 5.2.1
- js-sha3: 0.8.0
- transitivePeerDependencies:
- - bufferutil
- - encoding
- - fastestsmallesttextencoderdecoder
- - supports-color
- - typescript
- - utf-8-validate
-
'@metaplex-foundation/mpl-bubblegum@0.7.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)':
dependencies:
'@metaplex-foundation/beet': 0.7.1
@@ -2296,49 +1278,6 @@ snapshots:
- typescript
- utf-8-validate
- '@metaplex-foundation/mpl-candy-guard@0.3.2(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)':
- dependencies:
- '@metaplex-foundation/beet': 0.4.0
- '@metaplex-foundation/beet-solana': 0.3.1(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/cusper': 0.0.2
- '@solana/web3.js': 1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- bn.js: 5.2.1
- transitivePeerDependencies:
- - bufferutil
- - encoding
- - supports-color
- - typescript
- - utf-8-validate
-
- '@metaplex-foundation/mpl-candy-machine-core@0.1.2(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)':
- dependencies:
- '@metaplex-foundation/beet': 0.4.0
- '@metaplex-foundation/beet-solana': 0.3.1(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/cusper': 0.0.2
- '@solana/web3.js': 1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- bn.js: 5.2.1
- transitivePeerDependencies:
- - bufferutil
- - encoding
- - supports-color
- - typescript
- - utf-8-validate
-
- '@metaplex-foundation/mpl-candy-machine@5.1.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)':
- dependencies:
- '@metaplex-foundation/beet': 0.7.1
- '@metaplex-foundation/beet-solana': 0.4.1(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@metaplex-foundation/cusper': 0.0.2
- '@solana/spl-token': 0.3.11(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@solana/web3.js': 1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- transitivePeerDependencies:
- - bufferutil
- - encoding
- - fastestsmallesttextencoderdecoder
- - supports-color
- - typescript
- - utf-8-validate
-
'@metaplex-foundation/mpl-token-metadata@2.13.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)':
dependencies:
'@metaplex-foundation/beet': 0.7.1
@@ -2356,44 +1295,15 @@ snapshots:
- typescript
- utf-8-validate
- '@noble/curves@1.3.0':
- dependencies:
- '@noble/hashes': 1.3.3
-
'@noble/curves@1.9.7':
dependencies:
'@noble/hashes': 1.8.0
- '@noble/ed25519@1.7.3': {}
-
- '@noble/hashes@1.3.3': {}
-
- '@noble/hashes@1.4.0': {}
-
'@noble/hashes@1.8.0': {}
'@pkgjs/parseargs@0.11.0':
optional: true
- '@randlabs/communication-bridge@1.0.1': {}
-
- '@randlabs/myalgo-connect@1.4.2':
- dependencies:
- '@randlabs/communication-bridge': 1.0.1
-
- '@scure/base@1.1.6': {}
-
- '@scure/bip32@1.3.3':
- dependencies:
- '@noble/curves': 1.3.0
- '@noble/hashes': 1.3.3
- '@scure/base': 1.1.6
-
- '@scure/bip39@1.2.2':
- dependencies:
- '@noble/hashes': 1.3.3
- '@scure/base': 1.1.6
-
'@solana/buffer-layout-utils@0.2.0(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)':
dependencies:
'@solana/buffer-layout': 4.0.1
@@ -2525,19 +1435,6 @@ snapshots:
dependencies:
buffer: 6.0.3
- '@solana/wallet-adapter-base@0.9.23(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))':
- dependencies:
- '@solana/wallet-standard-features': 1.2.0
- '@solana/web3.js': 1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)
- '@wallet-standard/base': 1.0.1
- '@wallet-standard/features': 1.0.3
- eventemitter3: 4.0.7
-
- '@solana/wallet-standard-features@1.2.0':
- dependencies:
- '@wallet-standard/base': 1.0.1
- '@wallet-standard/features': 1.0.3
-
'@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6)':
dependencies:
'@babel/runtime': 7.29.2
@@ -2561,8 +1458,6 @@ snapshots:
- typescript
- utf-8-validate
- '@supercharge/promise-pool@2.4.0': {}
-
'@swc/helpers@0.5.19':
dependencies:
tslib: 2.8.1
@@ -2584,8 +1479,6 @@ snapshots:
'@types/mocha@10.0.10': {}
- '@types/node@11.11.6': {}
-
'@types/node@12.20.55': {}
'@types/node@26.1.2':
@@ -2602,39 +1495,10 @@ snapshots:
dependencies:
'@types/node': 26.1.2
- '@wallet-standard/base@1.0.1': {}
-
- '@wallet-standard/features@1.0.3':
- dependencies:
- '@wallet-standard/base': 1.0.1
-
- aes-js@3.0.0: {}
-
agentkeepalive@4.5.0:
dependencies:
humanize-ms: 1.2.1
- algo-msgpack-with-bigint@2.1.1: {}
-
- algosdk@1.24.1:
- dependencies:
- algo-msgpack-with-bigint: 2.1.1
- buffer: 6.0.3
- cross-fetch: 3.2.0
- hi-base32: 0.5.1
- js-sha256: 0.9.0
- js-sha3: 0.8.0
- js-sha512: 0.8.0
- json-bigint: 1.0.0
- tweetnacl: 1.0.3
- vlq: 2.0.4
- transitivePeerDependencies:
- - encoding
-
- ansi-escapes@4.3.2:
- dependencies:
- type-fest: 0.21.3
-
ansi-regex@5.0.1: {}
ansi-regex@6.2.2: {}
@@ -2647,56 +1511,8 @@ snapshots:
ansicolors@0.3.2: {}
- arbundles@0.6.23(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))(bufferutil@4.0.8)(debug@4.3.4)(utf-8-validate@6.0.6):
- dependencies:
- '@noble/ed25519': 1.7.3
- '@randlabs/myalgo-connect': 1.4.2
- '@solana/wallet-adapter-base': 0.9.23(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@6.0.6))
- algosdk: 1.24.1
- arweave: 1.15.1
- arweave-stream-tx: 1.2.2(arweave@1.15.1)
- avsc: https://codeload.github.com/Irys-xyz/avsc/tar.gz/a730cc8018b79e114b6a3381bbb57760a24c6cef
- axios: 0.21.4(debug@4.3.4)
- base64url: 3.0.1
- bs58: 4.0.1
- ethers: 5.7.2(bufferutil@4.0.8)(utf-8-validate@6.0.6)
- keccak: 3.0.4
- multistream: 4.1.0
- process: 0.11.10
- secp256k1: 4.0.3
- tmp-promise: 3.0.3
- transitivePeerDependencies:
- - '@solana/web3.js'
- - bufferutil
- - debug
- - encoding
- - utf-8-validate
-
- arconnect@0.4.2:
- dependencies:
- arweave: 1.15.1
-
argparse@2.0.1: {}
- arweave-stream-tx@1.2.2(arweave@1.15.1):
- dependencies:
- arweave: 1.15.1
- exponential-backoff: 3.1.1
-
- arweave@1.15.1:
- dependencies:
- arconnect: 0.4.2
- asn1.js: 5.4.1
- base64-js: 1.5.1
- bignumber.js: 9.1.2
-
- asn1.js@5.4.1:
- dependencies:
- bn.js: 4.12.2
- inherits: 2.0.4
- minimalistic-assert: 1.0.1
- safer-buffer: 2.1.2
-
assert@2.1.0:
dependencies:
call-bind: 1.0.7
@@ -2707,33 +1523,15 @@ snapshots:
assertion-error@2.0.1: {}
- async-retry@1.3.3:
- dependencies:
- retry: 0.13.1
-
asynckit@0.4.0: {}
available-typed-arrays@1.0.7:
dependencies:
possible-typed-array-names: 1.0.0
- avsc@https://codeload.github.com/Irys-xyz/avsc/tar.gz/a730cc8018b79e114b6a3381bbb57760a24c6cef: {}
-
- axios@0.21.4(debug@4.3.4):
- dependencies:
- follow-redirects: 1.15.6(debug@4.3.4)
- transitivePeerDependencies:
- - debug
-
- axios@0.25.0(debug@4.3.4):
- dependencies:
- follow-redirects: 1.15.6(debug@4.3.4)
- transitivePeerDependencies:
- - debug
-
axios@1.7.2:
dependencies:
- follow-redirects: 1.15.6(debug@4.3.4)
+ follow-redirects: 1.15.6
form-data: 4.0.0
proxy-from-env: 1.1.0
transitivePeerDependencies:
@@ -2749,10 +1547,6 @@ snapshots:
base64-js@1.5.1: {}
- base64url@3.0.1: {}
-
- bech32@1.1.4: {}
-
bigint-buffer@1.1.5:
dependencies:
bindings: 1.5.0
@@ -2763,40 +1557,10 @@ snapshots:
dependencies:
file-uri-to-path: 1.0.0
- bip39-light@1.0.7:
- dependencies:
- create-hash: 1.2.0
- pbkdf2: 3.1.2
-
- bip39@3.0.2:
- dependencies:
- '@types/node': 11.11.6
- create-hash: 1.2.0
- pbkdf2: 3.1.2
- randombytes: 2.1.0
-
- bl@4.1.0:
- dependencies:
- buffer: 5.7.1
- inherits: 2.0.4
- readable-stream: 3.6.2
-
- bn.js@4.11.6: {}
-
- bn.js@4.12.2: {}
-
- bn.js@5.2.0: {}
-
bn.js@5.2.1: {}
bn.js@5.2.2: {}
- borsh@0.6.0:
- dependencies:
- bn.js: 5.2.2
- bs58: 4.0.1
- text-encoding-utf-8: 1.0.2
-
borsh@0.7.0:
dependencies:
bn.js: 5.2.2
@@ -2807,8 +1571,6 @@ snapshots:
dependencies:
balanced-match: 1.0.2
- brorand@1.1.0: {}
-
browser-stdout@1.3.1: {}
bs58@4.0.1:
@@ -2821,13 +1583,6 @@ snapshots:
buffer-layout@1.2.2: {}
- buffer-reverse@1.0.1: {}
-
- buffer@5.7.1:
- dependencies:
- base64-js: 1.5.1
- ieee754: 1.2.1
-
buffer@6.0.3:
dependencies:
base64-js: 1.5.1
@@ -2848,8 +1603,6 @@ snapshots:
camelcase@6.3.0: {}
- capability@0.2.5: {}
-
chai@6.2.2: {}
chalk@4.1.2:
@@ -2861,33 +1614,16 @@ snapshots:
chalk@5.6.2: {}
- chardet@0.7.0: {}
-
chokidar@4.0.3:
dependencies:
readdirp: 4.1.2
- cipher-base@1.0.4:
- dependencies:
- inherits: 2.0.4
- safe-buffer: 5.2.1
-
- cli-cursor@3.1.0:
- dependencies:
- restore-cursor: 3.1.0
-
- cli-spinners@2.9.2: {}
-
- cli-width@3.0.0: {}
-
cliui@8.0.1:
dependencies:
string-width: 4.2.3
strip-ansi: 6.0.1
wrap-ansi: 7.0.0
- clone@1.0.4: {}
-
color-convert@2.0.1:
dependencies:
color-name: 1.1.4
@@ -2904,25 +1640,6 @@ snapshots:
commander@2.20.3: {}
- commander@8.3.0: {}
-
- create-hash@1.2.0:
- dependencies:
- cipher-base: 1.0.4
- inherits: 2.0.4
- md5.js: 1.3.5
- ripemd160: 2.0.2
- sha.js: 2.4.11
-
- create-hmac@1.1.7:
- dependencies:
- cipher-base: 1.0.4
- create-hash: 1.2.0
- inherits: 2.0.4
- ripemd160: 2.0.2
- safe-buffer: 5.2.1
- sha.js: 2.4.11
-
cross-fetch@3.2.0:
dependencies:
node-fetch: 2.7.0
@@ -2935,21 +1652,6 @@ snapshots:
shebang-command: 2.0.0
which: 2.0.2
- crypto-js@3.3.0: {}
-
- csv-generate@4.4.1: {}
-
- csv-parse@5.5.6: {}
-
- csv-stringify@6.5.0: {}
-
- csv@6.3.9:
- dependencies:
- csv-generate: 4.4.1
- csv-parse: 5.5.6
- csv-stringify: 6.5.0
- stream-transform: 3.3.2
-
debug@4.3.4:
dependencies:
ms: 2.1.2
@@ -2962,10 +1664,6 @@ snapshots:
decamelize@4.0.0: {}
- defaults@1.0.4:
- dependencies:
- clone: 1.0.4
-
define-data-property@1.1.4:
dependencies:
es-define-property: 1.0.0
@@ -2982,46 +1680,16 @@ snapshots:
delayed-stream@1.0.0: {}
- depd@1.1.2: {}
-
- depd@2.0.0: {}
-
diff@7.0.0: {}
dotenv@10.0.0: {}
eastasianwidth@0.2.0: {}
- elliptic@6.5.4:
- dependencies:
- bn.js: 4.12.2
- brorand: 1.1.0
- hash.js: 1.1.7
- hmac-drbg: 1.0.1
- inherits: 2.0.4
- minimalistic-assert: 1.0.1
- minimalistic-crypto-utils: 1.0.1
-
- elliptic@6.5.5:
- dependencies:
- bn.js: 4.12.2
- brorand: 1.1.0
- hash.js: 1.1.7
- hmac-drbg: 1.0.1
- inherits: 2.0.4
- minimalistic-assert: 1.0.1
- minimalistic-crypto-utils: 1.0.1
-
emoji-regex@8.0.0: {}
emoji-regex@9.2.2: {}
- error-polyfill@0.1.3:
- dependencies:
- capability: 0.2.5
- o3: 1.0.3
- u3: 0.1.1
-
es-define-property@1.0.0:
dependencies:
get-intrinsic: 1.2.4
@@ -3065,84 +1733,18 @@ snapshots:
escalade@3.1.2: {}
- escape-string-regexp@1.0.5: {}
-
escape-string-regexp@4.0.0: {}
- ethereum-bloom-filters@1.1.0:
- dependencies:
- '@noble/hashes': 1.8.0
-
- ethereum-cryptography@2.1.3:
- dependencies:
- '@noble/curves': 1.3.0
- '@noble/hashes': 1.3.3
- '@scure/bip32': 1.3.3
- '@scure/bip39': 1.2.2
-
- ethers@5.7.2(bufferutil@4.0.8)(utf-8-validate@6.0.6):
- dependencies:
- '@ethersproject/abi': 5.7.0
- '@ethersproject/abstract-provider': 5.7.0
- '@ethersproject/abstract-signer': 5.7.0
- '@ethersproject/address': 5.7.0
- '@ethersproject/base64': 5.7.0
- '@ethersproject/basex': 5.7.0
- '@ethersproject/bignumber': 5.7.0
- '@ethersproject/bytes': 5.7.0
- '@ethersproject/constants': 5.7.0
- '@ethersproject/contracts': 5.7.0
- '@ethersproject/hash': 5.7.0
- '@ethersproject/hdnode': 5.7.0
- '@ethersproject/json-wallets': 5.7.0
- '@ethersproject/keccak256': 5.7.0
- '@ethersproject/logger': 5.7.0
- '@ethersproject/networks': 5.7.1
- '@ethersproject/pbkdf2': 5.7.0
- '@ethersproject/properties': 5.7.0
- '@ethersproject/providers': 5.7.2(bufferutil@4.0.8)(utf-8-validate@6.0.6)
- '@ethersproject/random': 5.7.0
- '@ethersproject/rlp': 5.7.0
- '@ethersproject/sha2': 5.7.0
- '@ethersproject/signing-key': 5.7.0
- '@ethersproject/solidity': 5.7.0
- '@ethersproject/strings': 5.7.0
- '@ethersproject/transactions': 5.7.0
- '@ethersproject/units': 5.7.0
- '@ethersproject/wallet': 5.7.0
- '@ethersproject/web': 5.7.1
- '@ethersproject/wordlists': 5.7.0
- transitivePeerDependencies:
- - bufferutil
- - utf-8-validate
-
- ethjs-unit@0.1.6:
- dependencies:
- bn.js: 4.11.6
- number-to-bn: 1.7.0
-
eventemitter3@4.0.7: {}
eventemitter3@5.0.4: {}
- exponential-backoff@3.1.1: {}
-
- external-editor@3.1.0:
- dependencies:
- chardet: 0.7.0
- iconv-lite: 0.4.24
- tmp: 0.0.33
-
eyes@0.1.8: {}
fast-stable-stringify@1.0.0: {}
fastestsmallesttextencoderdecoder@1.0.22: {}
- figures@3.2.0:
- dependencies:
- escape-string-regexp: 1.0.5
-
file-uri-to-path@1.0.0: {}
find-up@5.0.0:
@@ -3152,9 +1754,7 @@ snapshots:
flat@5.0.2: {}
- follow-redirects@1.15.6(debug@4.3.4):
- optionalDependencies:
- debug: 4.3.4
+ follow-redirects@1.15.6: {}
for-each@0.3.3:
dependencies:
@@ -3213,69 +1813,20 @@ snapshots:
dependencies:
has-symbols: 1.0.3
- hash-base@3.1.0:
- dependencies:
- inherits: 2.0.4
- readable-stream: 3.6.2
- safe-buffer: 5.2.1
-
- hash.js@1.1.7:
- dependencies:
- inherits: 2.0.4
- minimalistic-assert: 1.0.1
-
hasown@2.0.2:
dependencies:
function-bind: 1.1.2
he@1.2.0: {}
- hi-base32@0.5.1: {}
-
- hmac-drbg@1.0.1:
- dependencies:
- hash.js: 1.1.7
- minimalistic-assert: 1.0.1
- minimalistic-crypto-utils: 1.0.1
-
- http-errors@1.8.1:
- dependencies:
- depd: 1.1.2
- inherits: 2.0.4
- setprototypeof: 1.2.0
- statuses: 1.5.0
- toidentifier: 1.0.1
-
humanize-ms@1.2.1:
dependencies:
ms: 2.1.3
- iconv-lite@0.4.24:
- dependencies:
- safer-buffer: 2.1.2
-
ieee754@1.2.1: {}
inherits@2.0.4: {}
- inquirer@8.2.6:
- dependencies:
- ansi-escapes: 4.3.2
- chalk: 4.1.2
- cli-cursor: 3.1.0
- cli-width: 3.0.0
- external-editor: 3.1.0
- figures: 3.2.0
- lodash: 4.17.21
- mute-stream: 0.0.8
- ora: 5.4.1
- run-async: 2.4.1
- rxjs: 7.8.1
- string-width: 4.2.3
- strip-ansi: 6.0.1
- through: 2.3.8
- wrap-ansi: 6.2.0
-
is-arguments@1.1.1:
dependencies:
call-bind: 1.0.7
@@ -3289,10 +1840,6 @@ snapshots:
dependencies:
has-tostringtag: 1.0.2
- is-hex-prefixed@1.0.0: {}
-
- is-interactive@1.0.0: {}
-
is-nan@1.3.2:
dependencies:
call-bind: 1.0.7
@@ -3338,38 +1885,18 @@ snapshots:
- bufferutil
- utf-8-validate
- js-sha256@0.9.0: {}
-
js-sha3@0.8.0: {}
- js-sha512@0.8.0: {}
-
js-yaml@4.1.0:
dependencies:
argparse: 2.0.1
- json-bigint@1.0.0:
- dependencies:
- bignumber.js: 9.1.2
-
json-stringify-safe@5.0.1: {}
- keccak@3.0.4:
- dependencies:
- node-addon-api: 2.0.2
- node-gyp-build: 4.8.1
- readable-stream: 3.6.2
-
locate-path@6.0.0:
dependencies:
p-locate: 5.0.0
- lodash.clonedeep@4.5.0: {}
-
- lodash.isequal@4.5.0: {}
-
- lodash@4.17.21: {}
-
log-symbols@4.1.0:
dependencies:
chalk: 4.1.2
@@ -3377,36 +1904,12 @@ snapshots:
lru-cache@10.4.3: {}
- md5.js@1.3.5:
- dependencies:
- hash-base: 3.1.0
- inherits: 2.0.4
- safe-buffer: 5.2.1
-
- merkletreejs@0.2.32:
- dependencies:
- bignumber.js: 9.1.2
- buffer-reverse: 1.0.1
- crypto-js: 3.3.0
- treeify: 1.1.0
- web3-utils: 1.10.4
-
- micro-ftch@0.3.1: {}
-
mime-db@1.52.0: {}
mime-types@2.1.35:
dependencies:
mime-db: 1.52.0
- mime@3.0.0: {}
-
- mimic-fn@2.1.0: {}
-
- minimalistic-assert@1.0.1: {}
-
- minimalistic-crypto-utils@1.0.1: {}
-
minimatch@9.0.9:
dependencies:
brace-expansion: 2.1.3
@@ -3441,60 +1944,12 @@ snapshots:
ms@2.1.3: {}
- multistream@4.1.0:
- dependencies:
- once: 1.4.0
- readable-stream: 3.6.2
-
- mustache@4.2.0: {}
-
- mute-stream@0.0.8: {}
-
- near-api-js@0.44.2:
- dependencies:
- bn.js: 5.2.0
- borsh: 0.6.0
- bs58: 4.0.1
- depd: 2.0.0
- error-polyfill: 0.1.3
- http-errors: 1.8.1
- js-sha256: 0.9.0
- mustache: 4.2.0
- node-fetch: 2.7.0
- text-encoding-utf-8: 1.0.2
- tweetnacl: 1.0.3
- transitivePeerDependencies:
- - encoding
-
- near-hd-key@1.2.1:
- dependencies:
- bip39: 3.0.2
- create-hmac: 1.1.7
- tweetnacl: 1.0.3
-
- near-seed-phrase@0.2.0:
- dependencies:
- bip39-light: 1.0.7
- bs58: 4.0.1
- near-hd-key: 1.2.1
- tweetnacl: 1.0.3
-
- node-addon-api@2.0.2: {}
-
node-fetch@2.7.0:
dependencies:
whatwg-url: 5.0.0
- node-gyp-build@4.8.1: {}
-
- number-to-bn@1.7.0:
- dependencies:
- bn.js: 4.11.6
- strip-hex-prefix: 1.0.0
-
- o3@1.0.3:
- dependencies:
- capability: 0.2.5
+ node-gyp-build@4.8.1:
+ optional: true
object-is@1.1.6:
dependencies:
@@ -3510,28 +1965,6 @@ snapshots:
has-symbols: 1.0.3
object-keys: 1.1.1
- once@1.4.0:
- dependencies:
- wrappy: 1.0.2
-
- onetime@5.1.2:
- dependencies:
- mimic-fn: 2.1.0
-
- ora@5.4.1:
- dependencies:
- bl: 4.1.0
- chalk: 4.1.2
- cli-cursor: 3.1.0
- cli-spinners: 2.9.2
- is-interactive: 1.0.0
- is-unicode-supported: 0.1.0
- log-symbols: 4.1.0
- strip-ansi: 6.0.1
- wcwidth: 1.0.1
-
- os-tmpdir@1.0.2: {}
-
p-limit@3.1.0:
dependencies:
yocto-queue: 0.1.0
@@ -3553,52 +1986,24 @@ snapshots:
lru-cache: 10.4.3
minipass: 7.1.3
- pbkdf2@3.1.2:
- dependencies:
- create-hash: 1.2.0
- create-hmac: 1.1.7
- ripemd160: 2.0.2
- safe-buffer: 5.2.1
- sha.js: 2.4.11
-
picocolors@1.1.1: {}
possible-typed-array-names@1.0.0: {}
prettier@2.8.8: {}
- process@0.11.10: {}
-
proxy-from-env@1.1.0: {}
randombytes@2.1.0:
dependencies:
safe-buffer: 5.2.1
- readable-stream@3.6.2:
- dependencies:
- inherits: 2.0.4
- string_decoder: 1.3.0
- util-deprecate: 1.0.2
-
readdirp@4.1.2: {}
regenerator-runtime@0.14.1: {}
require-directory@2.1.1: {}
- restore-cursor@3.1.0:
- dependencies:
- onetime: 5.1.2
- signal-exit: 3.0.7
-
- retry@0.13.1: {}
-
- ripemd160@2.0.2:
- dependencies:
- hash-base: 3.1.0
- inherits: 2.0.4
-
rpc-websockets@9.3.5:
dependencies:
'@swc/helpers': 0.5.19
@@ -3612,24 +2017,8 @@ snapshots:
bufferutil: 4.0.8
utf-8-validate: 6.0.6
- run-async@2.4.1: {}
-
- rxjs@7.8.1:
- dependencies:
- tslib: 2.6.2
-
safe-buffer@5.2.1: {}
- safer-buffer@2.1.2: {}
-
- scrypt-js@3.0.1: {}
-
- secp256k1@4.0.3:
- dependencies:
- elliptic: 6.5.5
- node-addon-api: 2.0.2
- node-gyp-build: 4.8.1
-
serialize-javascript@6.0.2:
dependencies:
randombytes: 2.1.0
@@ -3643,33 +2032,20 @@ snapshots:
gopd: 1.0.1
has-property-descriptors: 1.0.2
- setprototypeof@1.2.0: {}
-
- sha.js@2.4.11:
- dependencies:
- inherits: 2.0.4
- safe-buffer: 5.2.1
-
shebang-command@2.0.0:
dependencies:
shebang-regex: 3.0.0
shebang-regex@3.0.0: {}
- signal-exit@3.0.7: {}
-
signal-exit@4.1.0: {}
- statuses@1.5.0: {}
-
stream-chain@2.2.5: {}
stream-json@1.9.1:
dependencies:
stream-chain: 2.2.5
- stream-transform@3.3.2: {}
-
string-width@4.2.3:
dependencies:
emoji-regex: 8.0.0
@@ -3682,10 +2058,6 @@ snapshots:
emoji-regex: 9.2.2
strip-ansi: 7.2.0
- string_decoder@1.3.0:
- dependencies:
- safe-buffer: 5.2.1
-
strip-ansi@6.0.1:
dependencies:
ansi-regex: 5.0.1
@@ -3694,10 +2066,6 @@ snapshots:
dependencies:
ansi-regex: 6.2.2
- strip-hex-prefix@1.0.0:
- dependencies:
- is-hex-prefixed: 1.0.0
-
strip-json-comments@3.1.1: {}
superstruct@0.15.5: {}
@@ -3714,28 +2082,10 @@ snapshots:
text-encoding-utf-8@1.0.2: {}
- through@2.3.8: {}
-
- tmp-promise@3.0.3:
- dependencies:
- tmp: 0.2.3
-
- tmp@0.0.33:
- dependencies:
- os-tmpdir: 1.0.2
-
- tmp@0.2.3: {}
-
- toidentifier@1.0.1: {}
-
toml@3.0.0: {}
tr46@0.0.3: {}
- treeify@1.1.0: {}
-
- tslib@2.6.2: {}
-
tslib@2.8.1: {}
tsx@4.23.1:
@@ -3744,16 +2094,10 @@ snapshots:
optionalDependencies:
fsevents: 2.3.3
- tweetnacl@1.0.3: {}
-
- type-fest@0.21.3: {}
-
typescript-collections@1.3.3: {}
typescript@5.9.3: {}
- u3@0.1.1: {}
-
undici-types@8.3.0: {}
utf-8-validate@6.0.6:
@@ -3761,10 +2105,6 @@ snapshots:
node-gyp-build: 4.8.1
optional: true
- utf8@3.0.0: {}
-
- util-deprecate@1.0.2: {}
-
util@0.12.5:
dependencies:
inherits: 2.0.4
@@ -3777,23 +2117,6 @@ snapshots:
uuid@8.3.2: {}
- vlq@2.0.4: {}
-
- wcwidth@1.0.1:
- dependencies:
- defaults: 1.0.4
-
- web3-utils@1.10.4:
- dependencies:
- '@ethereumjs/util': 8.1.0
- bn.js: 5.2.2
- ethereum-bloom-filters: 1.1.0
- ethereum-cryptography: 2.1.3
- ethjs-unit: 0.1.6
- number-to-bn: 1.7.0
- randombytes: 2.1.0
- utf8: 3.0.0
-
webidl-conversions@3.0.1: {}
whatwg-url@5.0.0:
@@ -3815,12 +2138,6 @@ snapshots:
workerpool@9.3.4: {}
- wrap-ansi@6.2.0:
- dependencies:
- ansi-styles: 4.3.0
- string-width: 4.2.3
- strip-ansi: 6.0.1
-
wrap-ansi@7.0.0:
dependencies:
ansi-styles: 4.3.0
@@ -3833,13 +2150,6 @@ snapshots:
string-width: 5.1.2
strip-ansi: 7.2.0
- wrappy@1.0.2: {}
-
- ws@7.4.6(bufferutil@4.0.8)(utf-8-validate@6.0.6):
- optionalDependencies:
- bufferutil: 4.0.8
- utf-8-validate: 6.0.6
-
ws@7.5.10(bufferutil@4.0.8)(utf-8-validate@6.0.6):
optionalDependencies:
bufferutil: 4.0.8
diff --git a/tokens/create-token/anchor/package.json b/tokens/create-token/anchor/package.json
index 53a30a96b..14012eec6 100644
--- a/tokens/create-token/anchor/package.json
+++ b/tokens/create-token/anchor/package.json
@@ -13,7 +13,6 @@
"postinstall": "zx prepare.mjs"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"@types/node": "^26.1.0",
diff --git a/tokens/create-token/anchor/pnpm-lock.yaml b/tokens/create-token/anchor/pnpm-lock.yaml
index 184558ed4..32f99dbca 100644
--- a/tokens/create-token/anchor/pnpm-lock.yaml
+++ b/tokens/create-token/anchor/pnpm-lock.yaml
@@ -18,9 +18,6 @@ importers:
specifier: ^1.98.4
version: 1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.2.0
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -290,9 +287,6 @@ packages:
'@swc/helpers@0.5.17':
resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==}
- '@types/bn.js@5.2.0':
- resolution: {integrity: sha512-DLbJ1BPqxvQhIGbeu8VbUC1DiAiahHtAYvA0ZEAa4P31F7IaArc8z3C3BRQdWX4mtLQuABG4yzp76ZrS02Ui1Q==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1074,10 +1068,6 @@ snapshots:
dependencies:
tslib: 2.8.1
- '@types/bn.js@5.2.0':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/tokens/escrow/native/package.json b/tokens/escrow/native/package.json
index 07e96691c..887eefe3a 100644
--- a/tokens/escrow/native/package.json
+++ b/tokens/escrow/native/package.json
@@ -14,7 +14,6 @@
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"@types/node": "^26.1.0",
- "borsh": "^2.0.0",
"chai": "^6.2.2",
"mocha": "^11.7.5",
"litesvm": "^1.3.0",
diff --git a/tokens/escrow/native/pnpm-lock.yaml b/tokens/escrow/native/pnpm-lock.yaml
index 49079fec6..d90f44d38 100644
--- a/tokens/escrow/native/pnpm-lock.yaml
+++ b/tokens/escrow/native/pnpm-lock.yaml
@@ -27,9 +27,6 @@ importers:
'@types/node':
specifier: ^26.1.0
version: 26.1.2
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
chai:
specifier: ^6.2.2
version: 6.2.2
@@ -1045,9 +1042,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2526,8 +2520,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/tokens/escrow/native/tests/account.ts b/tokens/escrow/native/tests/account.ts
index 6004d17fb..c7234ab99 100644
--- a/tokens/escrow/native/tests/account.ts
+++ b/tokens/escrow/native/tests/account.ts
@@ -1,25 +1,11 @@
-import * as borsh from 'borsh';
+import { getAddressDecoder, getStructDecoder, getU8Decoder, getU64Decoder } from '@solana/kit';
-export const OfferSchema = {
- struct: {
- id: 'u64',
- maker: { array: { type: 'u8', len: 32 } },
- token_mint_a: { array: { type: 'u8', len: 32 } },
- token_mint_b: { array: { type: 'u8', len: 32 } },
- token_b_wanted_amount: 'u64',
- bump: 'u8',
- },
-};
-
-export type OfferRaw = {
- id: bigint;
- maker: Uint8Array;
- token_mint_a: Uint8Array;
- token_mint_b: Uint8Array;
- token_b_wanted_amount: bigint;
- bump: number;
-};
-
-export function borshSerialize(schema: borsh.Schema, data: object): Buffer {
- return Buffer.from(borsh.serialize(schema, data));
-}
+// Account data layout, matching the program's `Offer` struct.
+export const offerDecoder = getStructDecoder([
+ ['id', getU64Decoder()],
+ ['maker', getAddressDecoder()],
+ ['token_mint_a', getAddressDecoder()],
+ ['token_mint_b', getAddressDecoder()],
+ ['token_b_wanted_amount', getU64Decoder()],
+ ['bump', getU8Decoder()],
+]);
diff --git a/tokens/escrow/native/tests/instruction.ts b/tokens/escrow/native/tests/instruction.ts
index 61da1eda2..f08f0125f 100644
--- a/tokens/escrow/native/tests/instruction.ts
+++ b/tokens/escrow/native/tests/instruction.ts
@@ -1,7 +1,13 @@
-import { AccountRole, type Address, type TransactionSigner } from '@solana/kit';
+import {
+ AccountRole,
+ type Address,
+ getStructEncoder,
+ getU8Encoder,
+ getU64Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS, TOKEN_PROGRAM_ADDRESS } from '@solana-program/token';
-import * as borsh from 'borsh';
enum EscrowInstruction {
MakeOffer = 0,
@@ -9,30 +15,19 @@ enum EscrowInstruction {
RefundOffer = 2,
}
-const MakeOfferSchema = {
- struct: {
- instruction: 'u8',
- id: 'u64',
- token_a_offered_amount: 'u64',
- token_b_wanted_amount: 'u64',
- },
-};
+// Instruction data layout, matching the program's `EscrowInstruction::MakeOffer(MakeOffer)` variant.
+const makeOfferEncoder = getStructEncoder([
+ ['instruction', getU8Encoder()],
+ ['id', getU64Encoder()],
+ ['token_a_offered_amount', getU64Encoder()],
+ ['token_b_wanted_amount', getU64Encoder()],
+]);
-const TakeOfferSchema = {
- struct: {
- instruction: 'u8',
- },
-};
+// Instruction data layout, matching the program's `EscrowInstruction::TakeOffer` variant.
+const takeOfferEncoder = getStructEncoder([['instruction', getU8Encoder()]]);
-const RefundOfferSchema = {
- struct: {
- instruction: 'u8',
- },
-};
-
-function borshSerialize(schema: borsh.Schema, data: object): Uint8Array {
- return borsh.serialize(schema, data);
-}
+// Instruction data layout, matching the program's `EscrowInstruction::RefundOffer` variant.
+const refundOfferEncoder = getStructEncoder([['instruction', getU8Encoder()]]);
export function buildMakeOffer(props: {
id: bigint;
@@ -47,7 +42,7 @@ export function buildMakeOffer(props: {
payer: TransactionSigner;
programId: Address;
}) {
- const data = borshSerialize(MakeOfferSchema, {
+ const data = makeOfferEncoder.encode({
instruction: EscrowInstruction.MakeOffer,
id: props.id,
token_a_offered_amount: props.token_a_offered_amount,
@@ -85,7 +80,7 @@ export function buildTakeOffer(props: {
payer: TransactionSigner;
programId: Address;
}) {
- const data = borshSerialize(TakeOfferSchema, {
+ const data = takeOfferEncoder.encode({
instruction: EscrowInstruction.TakeOffer,
});
@@ -118,7 +113,7 @@ export function buildRefundOffer(props: {
maker: TransactionSigner;
programId: Address;
}) {
- const data = borshSerialize(RefundOfferSchema, {
+ const data = refundOfferEncoder.encode({
instruction: EscrowInstruction.RefundOffer,
});
diff --git a/tokens/escrow/native/tests/test.ts b/tokens/escrow/native/tests/test.ts
index c7767713b..4d773581b 100644
--- a/tokens/escrow/native/tests/test.ts
+++ b/tokens/escrow/native/tests/test.ts
@@ -1,9 +1,7 @@
-import { Buffer } from 'node:buffer';
import {
appendTransactionMessageInstruction,
createTransactionMessage,
generateKeyPairSigner,
- getAddressDecoder,
type Instruction,
type KeyPairSigner,
lamports,
@@ -20,17 +18,14 @@ import {
TOKEN_PROGRAM_ADDRESS,
} from '@solana-program/token';
import { getCreateAccountInstruction } from '@solana-program/system';
-import * as borsh from 'borsh';
import { assert } from 'chai';
import { FailedTransactionMetadata, LiteSVM } from 'litesvm';
-import { type OfferRaw, OfferSchema } from './account';
+import { offerDecoder } from './account';
import { buildMakeOffer, buildRefundOffer, buildTakeOffer } from './instruction';
import { createValues, type TestValues, mintingTokens } from './utils';
const LAMPORTS_PER_SOL = 1_000_000_000n;
-const addressDecoder = getAddressDecoder();
-
describe('Escrow!', () => {
const svm = new LiteSVM();
let values: TestValues;
@@ -97,17 +92,16 @@ describe('Escrow!', () => {
const offerInfo = svm.getAccount(values.offer);
assert(offerInfo.exists, 'offer account not created');
- const offer = borsh.deserialize(OfferSchema, Buffer.from(offerInfo.data)) as OfferRaw;
+ const offer = offerDecoder.decode(offerInfo.data);
const vaultInfo = svm.getAccount(values.vault);
assert(vaultInfo.exists, 'vault account not created');
const vaultTokenAccount = getTokenDecoder().decode(vaultInfo.data);
assert(offer.id.toString() === values.id.toString(), 'wrong id');
- // borsh deserializes pubkeys as raw byte arrays, decode them into addresses for comparison
- assert(addressDecoder.decode(offer.maker) === values.maker.address, 'maker key does not match');
- assert(addressDecoder.decode(offer.token_mint_a) === values.mintAKeypair.address, 'wrong mint A');
- assert(addressDecoder.decode(offer.token_mint_b) === values.mintBKeypair.address, 'wrong mint B');
+ assert(offer.maker === values.maker.address, 'maker key does not match');
+ assert(offer.token_mint_a === values.mintAKeypair.address, 'wrong mint A');
+ assert(offer.token_mint_b === values.mintBKeypair.address, 'wrong mint B');
assert(offer.token_b_wanted_amount.toString() === values.amountB.toString(), 'unexpected amount B');
assert(vaultTokenAccount.amount.toString() === values.amountA.toString(), 'unexpected amount A');
});
diff --git a/tokens/escrow/pinocchio/package.json b/tokens/escrow/pinocchio/package.json
index 6e76f757f..8bf88a02a 100644
--- a/tokens/escrow/pinocchio/package.json
+++ b/tokens/escrow/pinocchio/package.json
@@ -14,7 +14,6 @@
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"@types/node": "^26.1.0",
- "borsh": "^2.0.0",
"chai": "^6.2.2",
"mocha": "^11.7.5",
"litesvm": "^1.3.0",
diff --git a/tokens/escrow/pinocchio/pnpm-lock.yaml b/tokens/escrow/pinocchio/pnpm-lock.yaml
index 57b74f496..07f8de9c8 100644
--- a/tokens/escrow/pinocchio/pnpm-lock.yaml
+++ b/tokens/escrow/pinocchio/pnpm-lock.yaml
@@ -27,9 +27,6 @@ importers:
'@types/node':
specifier: ^26.1.0
version: 26.1.2
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
chai:
specifier: ^6.2.2
version: 6.2.2
@@ -1034,9 +1031,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2515,8 +2509,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/tokens/escrow/pinocchio/tests/account.ts b/tokens/escrow/pinocchio/tests/account.ts
index 6004d17fb..c7234ab99 100644
--- a/tokens/escrow/pinocchio/tests/account.ts
+++ b/tokens/escrow/pinocchio/tests/account.ts
@@ -1,25 +1,11 @@
-import * as borsh from 'borsh';
+import { getAddressDecoder, getStructDecoder, getU8Decoder, getU64Decoder } from '@solana/kit';
-export const OfferSchema = {
- struct: {
- id: 'u64',
- maker: { array: { type: 'u8', len: 32 } },
- token_mint_a: { array: { type: 'u8', len: 32 } },
- token_mint_b: { array: { type: 'u8', len: 32 } },
- token_b_wanted_amount: 'u64',
- bump: 'u8',
- },
-};
-
-export type OfferRaw = {
- id: bigint;
- maker: Uint8Array;
- token_mint_a: Uint8Array;
- token_mint_b: Uint8Array;
- token_b_wanted_amount: bigint;
- bump: number;
-};
-
-export function borshSerialize(schema: borsh.Schema, data: object): Buffer {
- return Buffer.from(borsh.serialize(schema, data));
-}
+// Account data layout, matching the program's `Offer` struct.
+export const offerDecoder = getStructDecoder([
+ ['id', getU64Decoder()],
+ ['maker', getAddressDecoder()],
+ ['token_mint_a', getAddressDecoder()],
+ ['token_mint_b', getAddressDecoder()],
+ ['token_b_wanted_amount', getU64Decoder()],
+ ['bump', getU8Decoder()],
+]);
diff --git a/tokens/escrow/pinocchio/tests/instruction.ts b/tokens/escrow/pinocchio/tests/instruction.ts
index 50bfd64ce..79d4a3f06 100644
--- a/tokens/escrow/pinocchio/tests/instruction.ts
+++ b/tokens/escrow/pinocchio/tests/instruction.ts
@@ -1,7 +1,13 @@
-import { AccountRole, type Address, type KeyPairSigner } from '@solana/kit';
+import {
+ AccountRole,
+ type Address,
+ getStructEncoder,
+ getU8Encoder,
+ getU64Encoder,
+ type KeyPairSigner,
+} from '@solana/kit';
import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS, TOKEN_PROGRAM_ADDRESS } from '@solana-program/token';
-import * as borsh from 'borsh';
enum EscrowInstruction {
MakeOffer = 0,
@@ -9,29 +15,22 @@ enum EscrowInstruction {
RefundOffer = 2,
}
-// Unlike the native example, the Pinocchio program receives the offer PDA bump
-// in the instruction data (and stores it) instead of deriving it on-chain.
-const MakeOfferSchema = {
- struct: {
- instruction: 'u8',
- id: 'u64',
- token_a_offered_amount: 'u64',
- token_b_wanted_amount: 'u64',
- bump: 'u8',
- },
-};
+// Instruction data layout for the MakeOffer discriminator. Unlike the native
+// example, the Pinocchio program receives the offer PDA bump in the instruction
+// data (and stores it) instead of deriving it on-chain.
+const makeOfferEncoder = getStructEncoder([
+ ['instruction', getU8Encoder()],
+ ['id', getU64Encoder()],
+ ['token_a_offered_amount', getU64Encoder()],
+ ['token_b_wanted_amount', getU64Encoder()],
+ ['bump', getU8Encoder()],
+]);
-const TakeOfferSchema = {
- struct: {
- instruction: 'u8',
- },
-};
+// Instruction data layout for the TakeOffer discriminator, which takes no args.
+const takeOfferEncoder = getStructEncoder([['instruction', getU8Encoder()]]);
-const RefundOfferSchema = {
- struct: {
- instruction: 'u8',
- },
-};
+// Instruction data layout for the RefundOffer discriminator, which takes no args.
+const refundOfferEncoder = getStructEncoder([['instruction', getU8Encoder()]]);
export function buildMakeOffer(props: {
id: bigint;
@@ -47,7 +46,7 @@ export function buildMakeOffer(props: {
payer: KeyPairSigner;
programId: Address;
}) {
- const data = borsh.serialize(MakeOfferSchema, {
+ const data = makeOfferEncoder.encode({
instruction: EscrowInstruction.MakeOffer,
id: props.id,
token_a_offered_amount: props.token_a_offered_amount,
@@ -86,7 +85,7 @@ export function buildTakeOffer(props: {
payer: KeyPairSigner;
programId: Address;
}) {
- const data = borsh.serialize(TakeOfferSchema, {
+ const data = takeOfferEncoder.encode({
instruction: EscrowInstruction.TakeOffer,
});
@@ -119,7 +118,7 @@ export function buildRefundOffer(props: {
maker: KeyPairSigner;
programId: Address;
}) {
- const data = borsh.serialize(RefundOfferSchema, {
+ const data = refundOfferEncoder.encode({
instruction: EscrowInstruction.RefundOffer,
});
diff --git a/tokens/escrow/pinocchio/tests/test.ts b/tokens/escrow/pinocchio/tests/test.ts
index a79f785d3..e8549fa59 100644
--- a/tokens/escrow/pinocchio/tests/test.ts
+++ b/tokens/escrow/pinocchio/tests/test.ts
@@ -1,4 +1,4 @@
-import { generateKeyPairSigner, getAddressDecoder, type KeyPairSigner, lamports } from '@solana/kit';
+import { generateKeyPairSigner, type KeyPairSigner, lamports } from '@solana/kit';
import { getCreateAccountInstruction } from '@solana-program/system';
import {
getInitializeAccount3Instruction,
@@ -6,15 +6,12 @@ import {
getTokenSize,
TOKEN_PROGRAM_ADDRESS,
} from '@solana-program/token';
-import * as borsh from 'borsh';
import { assert } from 'chai';
import { LiteSVM } from 'litesvm';
-import { type OfferRaw, OfferSchema } from './account';
+import { offerDecoder } from './account';
import { buildMakeOffer, buildRefundOffer, buildTakeOffer } from './instruction';
import { createValues, expectRevert, mintingTokens, sendInstructions, type TestValues } from './utils';
-const addressDecoder = getAddressDecoder();
-
describe('Escrow (Pinocchio)', () => {
let svm: LiteSVM;
let payer: KeyPairSigner;
@@ -54,26 +51,16 @@ describe('Escrow (Pinocchio)', () => {
const offerInfo = svm.getAccount(values.offer);
if (!offerInfo.exists) throw new Error('Offer account not found');
- const offer = borsh.deserialize(OfferSchema, new Uint8Array(offerInfo.data)) as OfferRaw;
+ const offer = offerDecoder.decode(offerInfo.data);
const vaultInfo = svm.getAccount(values.vault);
if (!vaultInfo.exists) throw new Error('Vault account not found');
const vaultTokenAccount = getTokenDecoder().decode(vaultInfo.data);
assert(offer.id === values.id, 'wrong id');
- // borsh deserializes pubkeys as raw byte arrays, decode into addresses for comparison
- assert(
- addressDecoder.decode(Uint8Array.from(offer.maker)) === values.maker.address,
- 'maker key does not match',
- );
- assert(
- addressDecoder.decode(Uint8Array.from(offer.token_mint_a)) === values.mintAKeypair.address,
- 'wrong mint A',
- );
- assert(
- addressDecoder.decode(Uint8Array.from(offer.token_mint_b)) === values.mintBKeypair.address,
- 'wrong mint B',
- );
+ assert(offer.maker === values.maker.address, 'maker key does not match');
+ assert(offer.token_mint_a === values.mintAKeypair.address, 'wrong mint A');
+ assert(offer.token_mint_b === values.mintBKeypair.address, 'wrong mint B');
assert(offer.token_b_wanted_amount === values.amountB, 'unexpected amount B');
assert(vaultTokenAccount.amount === values.amountA, 'unexpected amount A');
});
diff --git a/tokens/external-delegate-token-master/anchor/package.json b/tokens/external-delegate-token-master/anchor/package.json
index de0f93127..b364ec843 100644
--- a/tokens/external-delegate-token-master/anchor/package.json
+++ b/tokens/external-delegate-token-master/anchor/package.json
@@ -11,10 +11,9 @@
},
"dependencies": {
"@anchor-lang/core": "1.0.0-rc.5",
+ "@solana-program/token": "^0.15.0",
"@solana/spl-token": "^0.3.9",
- "@solana/web3.js": "^1.98.4",
- "bn.js": "^5.2.1",
- "ethers": "^5.7.2"
+ "@solana/web3.js": "^1.98.4"
},
"devDependencies": {
"@types/bn.js": "^5.1.0",
diff --git a/tokens/external-delegate-token-master/anchor/pnpm-lock.yaml b/tokens/external-delegate-token-master/anchor/pnpm-lock.yaml
index bd06d88b5..50bb02794 100644
--- a/tokens/external-delegate-token-master/anchor/pnpm-lock.yaml
+++ b/tokens/external-delegate-token-master/anchor/pnpm-lock.yaml
@@ -14,18 +14,15 @@ importers:
'@anchor-lang/core':
specifier: 1.0.0-rc.5
version: 1.0.0-rc.5(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana-program/token':
+ specifier: ^0.15.0
+ version: 0.15.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))
'@solana/spl-token':
specifier: ^0.3.9
version: 0.3.11(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
'@solana/web3.js':
specifier: ^1.98.4
version: 1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
- bn.js:
- specifier: ^5.2.1
- version: 5.2.2
- ethers:
- specifier: ^5.7.2
- version: 5.8.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)
devDependencies:
'@types/bn.js':
specifier: ^5.1.0
@@ -251,96 +248,6 @@ packages:
cpu: [x64]
os: [win32]
- '@ethersproject/abi@5.8.0':
- resolution: {integrity: sha512-b9YS/43ObplgyV6SlyQsG53/vkSal0MNA1fskSC4mbnCMi8R+NkcH8K9FPYNESf6jUefBUniE4SOKms0E/KK1Q==}
-
- '@ethersproject/abstract-provider@5.8.0':
- resolution: {integrity: sha512-wC9SFcmh4UK0oKuLJQItoQdzS/qZ51EJegK6EmAWlh+OptpQ/npECOR3QqECd8iGHC0RJb4WKbVdSfif4ammrg==}
-
- '@ethersproject/abstract-signer@5.8.0':
- resolution: {integrity: sha512-N0XhZTswXcmIZQdYtUnd79VJzvEwXQw6PK0dTl9VoYrEBxxCPXqS0Eod7q5TNKRxe1/5WUMuR0u0nqTF/avdCA==}
-
- '@ethersproject/address@5.8.0':
- resolution: {integrity: sha512-GhH/abcC46LJwshoN+uBNoKVFPxUuZm6dA257z0vZkKmU1+t8xTn8oK7B9qrj8W2rFRMch4gbJl6PmVxjxBEBA==}
-
- '@ethersproject/base64@5.8.0':
- resolution: {integrity: sha512-lN0oIwfkYj9LbPx4xEkie6rAMJtySbpOAFXSDVQaBnAzYfB4X2Qr+FXJGxMoc3Bxp2Sm8OwvzMrywxyw0gLjIQ==}
-
- '@ethersproject/basex@5.8.0':
- resolution: {integrity: sha512-PIgTszMlDRmNwW9nhS6iqtVfdTAKosA7llYXNmGPw4YAI1PUyMv28988wAb41/gHF/WqGdoLv0erHaRcHRKW2Q==}
-
- '@ethersproject/bignumber@5.8.0':
- resolution: {integrity: sha512-ZyaT24bHaSeJon2tGPKIiHszWjD/54Sz8t57Toch475lCLljC6MgPmxk7Gtzz+ddNN5LuHea9qhAe0x3D+uYPA==}
-
- '@ethersproject/bytes@5.8.0':
- resolution: {integrity: sha512-vTkeohgJVCPVHu5c25XWaWQOZ4v+DkGoC42/TS2ond+PARCxTJvgTFUNDZovyQ/uAQ4EcpqqowKydcdmRKjg7A==}
-
- '@ethersproject/constants@5.8.0':
- resolution: {integrity: sha512-wigX4lrf5Vu+axVTIvNsuL6YrV4O5AXl5ubcURKMEME5TnWBouUh0CDTWxZ2GpnRn1kcCgE7l8O5+VbV9QTTcg==}
-
- '@ethersproject/contracts@5.8.0':
- resolution: {integrity: sha512-0eFjGz9GtuAi6MZwhb4uvUM216F38xiuR0yYCjKJpNfSEy4HUM8hvqqBj9Jmm0IUz8l0xKEhWwLIhPgxNY0yvQ==}
-
- '@ethersproject/hash@5.8.0':
- resolution: {integrity: sha512-ac/lBcTbEWW/VGJij0CNSw/wPcw9bSRgCB0AIBz8CvED/jfvDoV9hsIIiWfvWmFEi8RcXtlNwp2jv6ozWOsooA==}
-
- '@ethersproject/hdnode@5.8.0':
- resolution: {integrity: sha512-4bK1VF6E83/3/Im0ERnnUeWOY3P1BZml4ZD3wcH8Ys0/d1h1xaFt6Zc+Dh9zXf9TapGro0T4wvO71UTCp3/uoA==}
-
- '@ethersproject/json-wallets@5.8.0':
- resolution: {integrity: sha512-HxblNck8FVUtNxS3VTEYJAcwiKYsBIF77W15HufqlBF9gGfhmYOJtYZp8fSDZtn9y5EaXTE87zDwzxRoTFk11w==}
-
- '@ethersproject/keccak256@5.8.0':
- resolution: {integrity: sha512-A1pkKLZSz8pDaQ1ftutZoaN46I6+jvuqugx5KYNeQOPqq+JZ0Txm7dlWesCHB5cndJSu5vP2VKptKf7cksERng==}
-
- '@ethersproject/logger@5.8.0':
- resolution: {integrity: sha512-Qe6knGmY+zPPWTC+wQrpitodgBfH7XoceCGL5bJVejmH+yCS3R8jJm8iiWuvWbG76RUmyEG53oqv6GMVWqunjA==}
-
- '@ethersproject/networks@5.8.0':
- resolution: {integrity: sha512-egPJh3aPVAzbHwq8DD7Po53J4OUSsA1MjQp8Vf/OZPav5rlmWUaFLiq8cvQiGK0Z5K6LYzm29+VA/p4RL1FzNg==}
-
- '@ethersproject/pbkdf2@5.8.0':
- resolution: {integrity: sha512-wuHiv97BrzCmfEaPbUFpMjlVg/IDkZThp9Ri88BpjRleg4iePJaj2SW8AIyE8cXn5V1tuAaMj6lzvsGJkGWskg==}
-
- '@ethersproject/properties@5.8.0':
- resolution: {integrity: sha512-PYuiEoQ+FMaZZNGrStmN7+lWjlsoufGIHdww7454FIaGdbe/p5rnaCXTr5MtBYl3NkeoVhHZuyzChPeGeKIpQw==}
-
- '@ethersproject/providers@5.8.0':
- resolution: {integrity: sha512-3Il3oTzEx3o6kzcg9ZzbE+oCZYyY+3Zh83sKkn4s1DZfTUjIegHnN2Cm0kbn9YFy45FDVcuCLLONhU7ny0SsCw==}
-
- '@ethersproject/random@5.8.0':
- resolution: {integrity: sha512-E4I5TDl7SVqyg4/kkA/qTfuLWAQGXmSOgYyO01So8hLfwgKvYK5snIlzxJMk72IFdG/7oh8yuSqY2KX7MMwg+A==}
-
- '@ethersproject/rlp@5.8.0':
- resolution: {integrity: sha512-LqZgAznqDbiEunaUvykH2JAoXTT9NV0Atqk8rQN9nx9SEgThA/WMx5DnW8a9FOufo//6FZOCHZ+XiClzgbqV9Q==}
-
- '@ethersproject/sha2@5.8.0':
- resolution: {integrity: sha512-dDOUrXr9wF/YFltgTBYS0tKslPEKr6AekjqDW2dbn1L1xmjGR+9GiKu4ajxovnrDbwxAKdHjW8jNcwfz8PAz4A==}
-
- '@ethersproject/signing-key@5.8.0':
- resolution: {integrity: sha512-LrPW2ZxoigFi6U6aVkFN/fa9Yx/+4AtIUe4/HACTvKJdhm0eeb107EVCIQcrLZkxaSIgc/eCrX8Q1GtbH+9n3w==}
-
- '@ethersproject/solidity@5.8.0':
- resolution: {integrity: sha512-4CxFeCgmIWamOHwYN9d+QWGxye9qQLilpgTU0XhYs1OahkclF+ewO+3V1U0mvpiuQxm5EHHmv8f7ClVII8EHsA==}
-
- '@ethersproject/strings@5.8.0':
- resolution: {integrity: sha512-qWEAk0MAvl0LszjdfnZ2uC8xbR2wdv4cDabyHiBh3Cldq/T8dPH3V4BbBsAYJUeonwD+8afVXld274Ls+Y1xXg==}
-
- '@ethersproject/transactions@5.8.0':
- resolution: {integrity: sha512-UglxSDjByHG0TuU17bDfCemZ3AnKO2vYrL5/2n2oXvKzvb7Cz+W9gOWXKARjp2URVwcWlQlPOEQyAviKwT4AHg==}
-
- '@ethersproject/units@5.8.0':
- resolution: {integrity: sha512-lxq0CAnc5kMGIiWW4Mr041VT8IhNM+Pn5T3haO74XZWFulk7wH1Gv64HqE96hT4a7iiNMdOCFEBgaxWuk8ETKQ==}
-
- '@ethersproject/wallet@5.8.0':
- resolution: {integrity: sha512-G+jnzmgg6UxurVKRKvw27h0kvG75YKXZKdlLYmAHeF32TGUzHkOFd7Zn6QHOTYRFWnfjtSSFjBowKo7vfrXzPA==}
-
- '@ethersproject/web@5.8.0':
- resolution: {integrity: sha512-j7+Ksi/9KfGviws6Qtf9Q7KCqRhpwrYKQPs+JBA/rKVFF/yaWLHJEH3zfVP2plVu+eys0d2DlFmhoQJayFewcw==}
-
- '@ethersproject/wordlists@5.8.0':
- resolution: {integrity: sha512-2df9bbXicZws2Sb5S6ET493uJ0Z84Fjr3pC4tu/qlnZERibZCeUVuqdtt+7Tv9xxhUxHoIekIA7avrKUWHrezg==}
-
'@iarna/toml@2.2.5':
resolution: {integrity: sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==}
@@ -360,6 +267,44 @@ packages:
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
+ '@solana-program/system@0.13.0':
+ resolution: {integrity: sha512-Id6QQxCG7ByImXPD5X/c3Ag2kySD+49aJ9waIkfxyUFyokhMQgxYQAx2rKuaygaBlaBQY6VVfBS46pqxZV+99A==}
+ peerDependencies:
+ '@solana/kit': ^7.0.0
+
+ '@solana-program/token@0.15.0':
+ resolution: {integrity: sha512-SeLm08EYIfT453I6lo7wTGgfMbz1s7bJ1jSHFHBFebSJHD3xF46zRgMxq3YKRlr/RM8jN0cG8SjZVu+IDvMxEA==}
+ engines: {node: '>=24.0.0'}
+ peerDependencies:
+ '@solana/kit': ^7.0.0
+
+ '@solana/accounts@7.1.0':
+ resolution: {integrity: sha512-0Vp2advYsTb7eb0jZveXZJaux6OSYcI3nitwoXOTZzCuzjbIjiHI/bpn3CcqfKBPW/1dnCIWAW7VW1otqH0a1w==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/addresses@7.1.0':
+ resolution: {integrity: sha512-kA/aav0TdyhrXCG6VCGG/fTuGu4ix5UW2PxtsbpBdZcyi+3TznLS1xKzIZBzqn0DL0q6HKdud6Ene7DWZDH1lw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/assertions@7.1.0':
+ resolution: {integrity: sha512-LD9+fhZb/xBECl27gfxDEX+qyj4PRV6700RJuprJWNMvGd8v0eoO0N+0QwnopK7o7O4w3DaW9/a3jH+iiwEqzw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/buffer-layout-utils@0.2.0':
resolution: {integrity: sha512-szG4sxgJGktbuZYDg2FfNmkMi0DYQoVjN2h7ta1W1hPrwzarcFLBq9UpX1UjNXsNpT9dn+chgprtWGioUAr4/g==}
engines: {node: '>= 10'}
@@ -379,11 +324,29 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/codecs-core@7.1.0':
+ resolution: {integrity: sha512-pl1gCCvviKekrijEDieZ1ps3LjC6ova2pZ/ZBXEJJa46nF7M0hwdZe/KzbMxKQ8WtT/WqW8Uyh6JQt8IJcMgRw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-data-structures@2.0.0-rc.1':
resolution: {integrity: sha512-rinCv0RrAVJ9rE/rmaibWJQxMwC5lSaORSZuwjopSUE6T0nb/MVg6Z1siNCXhh/HFTOg0l8bNvZHgBcN/yvXog==}
peerDependencies:
typescript: '>=5'
+ '@solana/codecs-data-structures@7.1.0':
+ resolution: {integrity: sha512-yCwyXCD1qtj0qJwCLQVS9aojKDio7t8kqXQVhLfasYFsckvecK+OObkoILkBXBJVmpOXI8nRYwNAb63+CvJo/g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-numbers@2.0.0-rc.1':
resolution: {integrity: sha512-J5i5mOkvukXn8E3Z7sGIPxsThRCgSdgTWJDQeZvucQ9PT6Y3HiVXJ0pcWiOWAoQ3RX8e/f4I3IC+wE6pZiJzDQ==}
peerDependencies:
@@ -395,17 +358,47 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/codecs-numbers@7.1.0':
+ resolution: {integrity: sha512-Hfw5OXx7tbSJ4iQ0r1ar6D+7XixkX8K36ni9cHDrunpiTo9SLIE0Lzj9/889aPNv4J4JggW1bpqzcrz3RI/o5g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-strings@2.0.0-rc.1':
resolution: {integrity: sha512-9/wPhw8TbGRTt6mHC4Zz1RqOnuPTqq1Nb4EyuvpZ39GW6O2t2Q7Q0XxiB3+BdoEjwA2XgPw6e2iRfvYgqty44g==}
peerDependencies:
fastestsmallesttextencoderdecoder: ^1.0.22
typescript: '>=5'
+ '@solana/codecs-strings@7.1.0':
+ resolution: {integrity: sha512-YIv/XVDYTzkYiFRdbjK6tI1BUKNlV1ta5hl9oK6+CoCDZn7nECfAN96KPYs94jzbN5VgMgbEqi6tlQcdy5KuCg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ fastestsmallesttextencoderdecoder: ^1.0.22
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ fastestsmallesttextencoderdecoder:
+ optional: true
+ typescript:
+ optional: true
+
'@solana/codecs@2.0.0-rc.1':
resolution: {integrity: sha512-qxoR7VybNJixV51L0G1RD2boZTcxmwUWnKCaJJExQ5qNKwbpSyDdWfFJfM5JhGyKe9DnPVOZB+JHWXnpbZBqrQ==}
peerDependencies:
typescript: '>=5'
+ '@solana/codecs@7.1.0':
+ resolution: {integrity: sha512-4M1MgIiRX46qMUnrUjVnRnTxETmCZ7VLWddMdf+t6y3aVsMzz8kd9ngH7NloFhHtnAO0n3qJjs2rdgx/Dxd3Zg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/errors@2.0.0-rc.1':
resolution: {integrity: sha512-ejNvQ2oJ7+bcFAYWj225lyRkHnixuAeb7RQCixm+5mH4n1IA4Qya/9Bmfy5RAAHQzxK43clu3kZmL5eF9VGtYQ==}
hasBin: true
@@ -419,11 +412,273 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/errors@7.1.0':
+ resolution: {integrity: sha512-sJ0mM6SHN7fa6auHARRAGjjDpkFzhx6jmgHZAjliC/xADMfI2IYrTnAwguRV9dVBOsEHicylIXszvsyRb6BmEw==}
+ engines: {node: '>=20.18.0'}
+ hasBin: true
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/fast-stable-stringify@7.1.0':
+ resolution: {integrity: sha512-DV35b2DoqFwQlO7acwi0WG47oLSORGep7/lTkd/VrCB/MdM0J5TggQ0gRqc9v3ORBDQHcOYmMx6ym4Obqd1EFg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/fixed-points@7.1.0':
+ resolution: {integrity: sha512-xyVO7h8woz53L5dz9pV5akdf/EcluEvtV85cYtca1pp0ZpdcdnGQ2yve3mN/GuOEb+Ixzthrew2p0c5h9w4Bhg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/functional@7.1.0':
+ resolution: {integrity: sha512-1yfUFHkeMvrD/6yTDu3op3CgWIfr1KAvHo3XQL6yBvz0miEbiQ6tAEZbrwHpudES43sG8ZvlgrkL0Oiu5KwC9g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/instruction-plans@7.1.0':
+ resolution: {integrity: sha512-Ug7YSchE8Oq8PsaKYlr8IH0woYjmAgi7JdVwd1wtE1pReHvufH63WUsE6B6guqIkQPxiLZL/tmODzKas2zlVtA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/instructions@7.1.0':
+ resolution: {integrity: sha512-KnXUtSIbKCUjlposzfikAO3qSVliOSoMBzglQYSn3e0x0PpJ2MsVH6tzzI6v124YVhs0OSs5wFwYjENTedPgcg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/keys@7.1.0':
+ resolution: {integrity: sha512-BGRkTPeBIKPojwVEdYaBXtLMQ0fp8xtQiRxDhOSyYpd1bz52K4bmvrugVtSqfjWLVO+I8SRZGpSZq2G5+DgR1Q==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/kit@7.1.0':
+ resolution: {integrity: sha512-UvzQhbn7ITjoBIinGz7rrdPSfkE8/bl+c6TISTLOXiW5hZw16mKOAkK28duP6bJutgQ57L0oJ4HYu5BTzAznOg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/nominal-types@7.1.0':
+ resolution: {integrity: sha512-oN+gGAqBnGc/iGIq5i4Q/+VFyTqbh0wpLnWTtMbFpXmevrdX3IPPBW5Z76ysZtTtv+M4Ha64kqc2upLJBUGM0A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/offchain-messages@7.1.0':
+ resolution: {integrity: sha512-nQBqXNLjDvUybc6oRS936gHLGzKwKy9fSlUV4OPo1mLG5V8TcW+jhCc1UOJdmfj0FYDDq5rzqmFTVK4yEu7brw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/options@2.0.0-rc.1':
resolution: {integrity: sha512-mLUcR9mZ3qfHlmMnREdIFPf9dpMc/Bl66tLSOOWxw4ml5xMT2ohFn7WGqoKcu/UHkT9CrC6+amEdqCNvUqI7AA==}
peerDependencies:
typescript: '>=5'
+ '@solana/options@7.1.0':
+ resolution: {integrity: sha512-6Z6NYrnDB7qQXE7liHVpf0+5ytJogNw6QGsO8On/csX4f5WGBLxeP0JJQNnkOvuTrBkUMEq6YtTFxp4/Plqx9A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/plugin-core@7.1.0':
+ resolution: {integrity: sha512-2UhReZOhFoUMcYz+72EDM3UIrrONZBpP8uhofPKNDmKPslDuJHc8q4RRlO1llGgrfV6dMIsk9j8uV4q3DjWu5g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/plugin-interfaces@7.1.0':
+ resolution: {integrity: sha512-5QXBy1RnbWmHRCIDZRZ0W2lMnWEw65lw9X+geJmiEfbLnTPKZdpYe+5YSClz26RMcp8X2ETovkgp0E8y0Zz0yg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/program-client-core@7.1.0':
+ resolution: {integrity: sha512-81CmiYVovOElru2E7ZpBg3aAaCOdgEB4FqRatxr3EUKcP8xzsM/gti7sZxmZCd6wyLLAQQokNxpLYBjspC4ZEw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/programs@7.1.0':
+ resolution: {integrity: sha512-SiHIxX4lbHD36tOFNWyE9T984+yq9X+EOhxg3P2LKDg7nZep9F6L7Qhgw4R+aXF/Zqpy2q8XzO7NYLeT6piQ3g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/promises@7.1.0':
+ resolution: {integrity: sha512-4I0tTa0Peh9U6cEJUR3Y0VyQneFGA2C8dL+sw00Dtfr/4hVGr03wmjHUq6CcCiH6e7WqNuznNKsqahe3BgrOMg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-api@7.1.0':
+ resolution: {integrity: sha512-mluuAalyk5mfdi2lnPLDCPj6RElgZ0DCaNZmQZhnVM0SabvWxpBIzvTYqmy56Z/b9yiycfkVG3h6ISMZMddNuA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-parsed-types@7.1.0':
+ resolution: {integrity: sha512-WVHfz/VmqZpPbpyTgqz6W4Yk1rKa7tfjSqa77KbWi+yXDzZ+Oha+bAscXxY/yg/w6auu7/JY5+t7Qd0qIjrGmQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-spec-types@7.1.0':
+ resolution: {integrity: sha512-nEKJARQq8x9YQB/TBptw99bNU9KsmsObu51VleXwTi+PCowHbU7yaNad1lxg81iiX9Z4Lwvvo4c5UdVA4xkYFQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-spec@7.1.0':
+ resolution: {integrity: sha512-vmFN/HNK0bUV+sDPqs7+NV/orY23PByWN82J1Q4PFZKCOCnyFO/A06pd/MCVuPjmcaJ62xFhTcORrit6dTQL3A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions-api@7.1.0':
+ resolution: {integrity: sha512-lzi8sPWuMyT89/L1ebY+MTzOma/6vsRdFTFcY5pe4pO4Sfi59j4p+HeYUu/NS0E6+/7Ng3BHFeTtuKD6QkhPDg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions-channel-websocket@7.1.0':
+ resolution: {integrity: sha512-eW0JCgwSM7YV1YKkZN4rtfIGhh5WSJkCf2+JV1wscF6Zn4hK/9kr8MJ0Y0LWtoDMIuX0W3RCJnYG4T/Pcm1v6w==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions-spec@7.1.0':
+ resolution: {integrity: sha512-f+s6qIzUHxUTyoZoOvz2uw8Y6tYyUefLxxJtavMZEDXEjsAQ0Zv+yhmPZ5tQCo1JyHGS6EKvaw9AjxVC68NHDA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions@7.1.0':
+ resolution: {integrity: sha512-Vjs6d1AagH9r52smhX9zxSwprPKvqsWw8XFmvtGbUNI5lxtX1W4TIukscpXiau7dqe6zH6q6cfs9UtuOgY5sXA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-transformers@7.1.0':
+ resolution: {integrity: sha512-3sSO13m25IkkS1mXnWFZYwgSOSturEGFQMIs37vdqgiJFAYJjmossOozE+fqOY0CI1oebyURhm5gM86ATuHDYw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-transport-http@7.1.0':
+ resolution: {integrity: sha512-9zT58Ahfhd/sdYNMKvVOmPLpIMsdrZOrJlnuK0nmB+D8KWbqswDUV46H2HGxRFjvGgKep/CtOSx4RM+kt14ezQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-types@7.1.0':
+ resolution: {integrity: sha512-pZO8+EroeRv7kb/d42qQeKHvUmm5tBvH0tXe8Kl2QkqG9+BCZ8NXXd+K7GbYWfVz3XtYmV3W/1B67s1DnzRldQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc@7.1.0':
+ resolution: {integrity: sha512-K9PvA39IQ+Z5/GYuDv4xXDPwk1KAPegnMu97b999yH09lBfsWpkHTGCCmNNy7bJAD346IQ/90/KgIbB/YnMEkw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/signers@7.1.0':
+ resolution: {integrity: sha512-sGGEOhPQLn+M9Y5QF3BgzAh9ECoq+XxIOUhyEpCSoUB725oMerir7lgsuyHvSkANhnoGnVxMhy/3b9wzVIazig==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/spl-token-metadata@0.1.6':
resolution: {integrity: sha512-7sMt1rsm/zQOQcUWllQX9mD2O6KhSAtY1hFR2hfFwgqfFWzSY9E9GDvFVNYUI1F0iQKcm6HmePU9QbKRXTEBiA==}
engines: {node: '>=16'}
@@ -436,6 +691,60 @@ packages:
peerDependencies:
'@solana/web3.js': ^1.88.0
+ '@solana/subscribable@7.1.0':
+ resolution: {integrity: sha512-8YnZV34WRN/AHP1B2XUlLIkINI9AYGcv1lqc2pFswS4VEL0c4iXyCfCXg9D1FM/obEhlU73h+ZJK4deg8yasgA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/sysvars@7.1.0':
+ resolution: {integrity: sha512-8UZsIsHS0JcYTy41QK9eewWj34mSkahsgD5TQPk/M69W34ElQOLKLkooj4iwXdnV2tMlNniKMIDoIQUhGCfhZw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transaction-confirmation@7.1.0':
+ resolution: {integrity: sha512-IZd2eEvhIdIaIkZAd6ugeTLB1f8pB5iwu+NmSk2vH0FUGVf3wJui8NzZyj/8+5a6Ps2WUa79JIIizVdvIOzV8A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transaction-introspection@7.1.0':
+ resolution: {integrity: sha512-AKev/afwQpkTjjNPUsYrZ7lwI76wNiZGy5T5m9FBhVrncg8evMjUHhVrnTvLTLkqMGuVgteR2BH9e2S+igwxPg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transaction-messages@7.1.0':
+ resolution: {integrity: sha512-5JKj7mCppHBzJQF67n5YVaPR3nLNe5+sbgJcSbD2woyR7pdUhjNYyzG2HFeWDghbROpQzy9Dy7Km9iTjw3ry5A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transactions@7.1.0':
+ resolution: {integrity: sha512-J/31jUwrbmJkk4vHnyenbF8iz2dHnhTW0HEzOp86YzVHbm171g5ujL1mmOP4nh8r/UA6xH4QbEJ4kTrID6cN5w==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/web3.js@1.98.4':
resolution: {integrity: sha512-vv9lfnvjUsRiq//+j5pBdXig0IQdtzA0BRZ3bXEP4KaIyF1CcaydWqgyzQgfZMNIsWNWmG+AUHwPy4AHOD6gpw==}
@@ -472,9 +781,6 @@ packages:
'@types/ws@8.18.1':
resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==}
- aes-js@3.0.0:
- resolution: {integrity: sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==}
-
agentkeepalive@4.6.0:
resolution: {integrity: sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ==}
engines: {node: '>= 8.0.0'}
@@ -515,9 +821,6 @@ packages:
base64-js@1.5.1:
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
- bech32@1.1.4:
- resolution: {integrity: sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==}
-
bigint-buffer@1.1.5:
resolution: {integrity: sha512-trfYco6AoZ+rKhKnxA0hgX0HAbVP/s808/EuDSe2JDzUnCp/xAsli35Orvk67UrTEcwuxZqYZDmfA2RXJgxVvA==}
engines: {node: '>= 10.0.0'}
@@ -528,9 +831,6 @@ packages:
bindings@1.5.0:
resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==}
- bn.js@4.12.2:
- resolution: {integrity: sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw==}
-
bn.js@5.2.2:
resolution: {integrity: sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw==}
@@ -540,9 +840,6 @@ packages:
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
- brorand@1.1.0:
- resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==}
-
browser-stdout@1.3.1:
resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==}
@@ -576,6 +873,10 @@ packages:
resolution: {integrity: sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==}
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
+ chalk@5.6.2:
+ resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==}
+ engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
+
chokidar@4.0.3:
resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
engines: {node: '>= 14.16.0'}
@@ -599,6 +900,10 @@ packages:
resolution: {integrity: sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw==}
engines: {node: '>=18'}
+ commander@15.0.0:
+ resolution: {integrity: sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg==}
+ engines: {node: '>=22.12.0'}
+
commander@2.20.3:
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
@@ -633,9 +938,6 @@ packages:
eastasianwidth@0.2.0:
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
- elliptic@6.6.1:
- resolution: {integrity: sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==}
-
emoji-regex@8.0.0:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
@@ -661,9 +963,6 @@ packages:
resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
engines: {node: '>=10'}
- ethers@5.8.0:
- resolution: {integrity: sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg==}
-
eventemitter3@4.0.7:
resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==}
@@ -713,25 +1012,16 @@ packages:
resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
engines: {node: '>=8'}
- hash.js@1.1.7:
- resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==}
-
he@1.2.0:
resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
hasBin: true
- hmac-drbg@1.0.1:
- resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==}
-
humanize-ms@1.2.1:
resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==}
ieee754@1.2.1:
resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
- inherits@2.0.4:
- resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
-
is-fullwidth-code-point@3.0.0:
resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
engines: {node: '>=8'}
@@ -764,9 +1054,6 @@ packages:
engines: {node: '>=8'}
hasBin: true
- js-sha3@0.8.0:
- resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==}
-
js-yaml@4.1.0:
resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
hasBin: true
@@ -829,12 +1116,6 @@ packages:
lru-cache@10.4.3:
resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
- minimalistic-assert@1.0.1:
- resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
-
- minimalistic-crypto-utils@1.0.1:
- resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==}
-
minimatch@9.0.9:
resolution: {integrity: sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -915,9 +1196,6 @@ packages:
safe-buffer@5.2.1:
resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
- scrypt-js@3.0.1:
- resolution: {integrity: sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==}
-
serialize-javascript@6.0.2:
resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
@@ -996,6 +1274,9 @@ packages:
engines: {node: '>=14.17'}
hasBin: true
+ undici-types@8.10.0:
+ resolution: {integrity: sha512-ibvdovq3nCFs8Msrd95BW+zUOq+aOVbT+wpHUoPWhztbHEoPc6oof51iFDB6Es8lTKvNvVW9jNSAB8dwrKTMGg==}
+
undici-types@8.3.0:
resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==}
@@ -1041,8 +1322,8 @@ packages:
utf-8-validate:
optional: true
- ws@8.18.0:
- resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==}
+ ws@8.18.2:
+ resolution: {integrity: sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==}
engines: {node: '>=10.0.0'}
peerDependencies:
bufferutil: ^4.0.1
@@ -1053,8 +1334,8 @@ packages:
utf-8-validate:
optional: true
- ws@8.18.2:
- resolution: {integrity: sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==}
+ ws@8.21.3:
+ resolution: {integrity: sha512-201TZ/kPWxoPr/OKWjquZR1SWKXcvxdH+e1xrx89b3YbmzLMFCLfnaG1HFIgWzJOEWZ7MvpK++odZufgYR50Rw==}
engines: {node: '>=10.0.0'}
peerDependencies:
bufferutil: ^4.0.1
@@ -1210,275 +1491,20 @@ snapshots:
'@esbuild/openbsd-x64@0.28.1':
optional: true
- '@esbuild/openharmony-arm64@0.28.1':
- optional: true
-
- '@esbuild/sunos-x64@0.28.1':
- optional: true
-
- '@esbuild/win32-arm64@0.28.1':
- optional: true
-
- '@esbuild/win32-ia32@0.28.1':
- optional: true
-
- '@esbuild/win32-x64@0.28.1':
- optional: true
-
- '@ethersproject/abi@5.8.0':
- dependencies:
- '@ethersproject/address': 5.8.0
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/constants': 5.8.0
- '@ethersproject/hash': 5.8.0
- '@ethersproject/keccak256': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/properties': 5.8.0
- '@ethersproject/strings': 5.8.0
-
- '@ethersproject/abstract-provider@5.8.0':
- dependencies:
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/networks': 5.8.0
- '@ethersproject/properties': 5.8.0
- '@ethersproject/transactions': 5.8.0
- '@ethersproject/web': 5.8.0
-
- '@ethersproject/abstract-signer@5.8.0':
- dependencies:
- '@ethersproject/abstract-provider': 5.8.0
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/properties': 5.8.0
-
- '@ethersproject/address@5.8.0':
- dependencies:
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/keccak256': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/rlp': 5.8.0
-
- '@ethersproject/base64@5.8.0':
- dependencies:
- '@ethersproject/bytes': 5.8.0
-
- '@ethersproject/basex@5.8.0':
- dependencies:
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/properties': 5.8.0
-
- '@ethersproject/bignumber@5.8.0':
- dependencies:
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/logger': 5.8.0
- bn.js: 5.2.2
-
- '@ethersproject/bytes@5.8.0':
- dependencies:
- '@ethersproject/logger': 5.8.0
-
- '@ethersproject/constants@5.8.0':
- dependencies:
- '@ethersproject/bignumber': 5.8.0
-
- '@ethersproject/contracts@5.8.0':
- dependencies:
- '@ethersproject/abi': 5.8.0
- '@ethersproject/abstract-provider': 5.8.0
- '@ethersproject/abstract-signer': 5.8.0
- '@ethersproject/address': 5.8.0
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/constants': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/properties': 5.8.0
- '@ethersproject/transactions': 5.8.0
-
- '@ethersproject/hash@5.8.0':
- dependencies:
- '@ethersproject/abstract-signer': 5.8.0
- '@ethersproject/address': 5.8.0
- '@ethersproject/base64': 5.8.0
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/keccak256': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/properties': 5.8.0
- '@ethersproject/strings': 5.8.0
-
- '@ethersproject/hdnode@5.8.0':
- dependencies:
- '@ethersproject/abstract-signer': 5.8.0
- '@ethersproject/basex': 5.8.0
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/pbkdf2': 5.8.0
- '@ethersproject/properties': 5.8.0
- '@ethersproject/sha2': 5.8.0
- '@ethersproject/signing-key': 5.8.0
- '@ethersproject/strings': 5.8.0
- '@ethersproject/transactions': 5.8.0
- '@ethersproject/wordlists': 5.8.0
-
- '@ethersproject/json-wallets@5.8.0':
- dependencies:
- '@ethersproject/abstract-signer': 5.8.0
- '@ethersproject/address': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/hdnode': 5.8.0
- '@ethersproject/keccak256': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/pbkdf2': 5.8.0
- '@ethersproject/properties': 5.8.0
- '@ethersproject/random': 5.8.0
- '@ethersproject/strings': 5.8.0
- '@ethersproject/transactions': 5.8.0
- aes-js: 3.0.0
- scrypt-js: 3.0.1
-
- '@ethersproject/keccak256@5.8.0':
- dependencies:
- '@ethersproject/bytes': 5.8.0
- js-sha3: 0.8.0
-
- '@ethersproject/logger@5.8.0': {}
-
- '@ethersproject/networks@5.8.0':
- dependencies:
- '@ethersproject/logger': 5.8.0
-
- '@ethersproject/pbkdf2@5.8.0':
- dependencies:
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/sha2': 5.8.0
-
- '@ethersproject/properties@5.8.0':
- dependencies:
- '@ethersproject/logger': 5.8.0
-
- '@ethersproject/providers@5.8.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)':
- dependencies:
- '@ethersproject/abstract-provider': 5.8.0
- '@ethersproject/abstract-signer': 5.8.0
- '@ethersproject/address': 5.8.0
- '@ethersproject/base64': 5.8.0
- '@ethersproject/basex': 5.8.0
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/constants': 5.8.0
- '@ethersproject/hash': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/networks': 5.8.0
- '@ethersproject/properties': 5.8.0
- '@ethersproject/random': 5.8.0
- '@ethersproject/rlp': 5.8.0
- '@ethersproject/sha2': 5.8.0
- '@ethersproject/strings': 5.8.0
- '@ethersproject/transactions': 5.8.0
- '@ethersproject/web': 5.8.0
- bech32: 1.1.4
- ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)
- transitivePeerDependencies:
- - bufferutil
- - utf-8-validate
+ '@esbuild/openharmony-arm64@0.28.1':
+ optional: true
- '@ethersproject/random@5.8.0':
- dependencies:
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/logger': 5.8.0
+ '@esbuild/sunos-x64@0.28.1':
+ optional: true
- '@ethersproject/rlp@5.8.0':
- dependencies:
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/logger': 5.8.0
+ '@esbuild/win32-arm64@0.28.1':
+ optional: true
- '@ethersproject/sha2@5.8.0':
- dependencies:
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/logger': 5.8.0
- hash.js: 1.1.7
+ '@esbuild/win32-ia32@0.28.1':
+ optional: true
- '@ethersproject/signing-key@5.8.0':
- dependencies:
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/properties': 5.8.0
- bn.js: 5.2.2
- elliptic: 6.6.1
- hash.js: 1.1.7
-
- '@ethersproject/solidity@5.8.0':
- dependencies:
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/keccak256': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/sha2': 5.8.0
- '@ethersproject/strings': 5.8.0
-
- '@ethersproject/strings@5.8.0':
- dependencies:
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/constants': 5.8.0
- '@ethersproject/logger': 5.8.0
-
- '@ethersproject/transactions@5.8.0':
- dependencies:
- '@ethersproject/address': 5.8.0
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/constants': 5.8.0
- '@ethersproject/keccak256': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/properties': 5.8.0
- '@ethersproject/rlp': 5.8.0
- '@ethersproject/signing-key': 5.8.0
-
- '@ethersproject/units@5.8.0':
- dependencies:
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/constants': 5.8.0
- '@ethersproject/logger': 5.8.0
-
- '@ethersproject/wallet@5.8.0':
- dependencies:
- '@ethersproject/abstract-provider': 5.8.0
- '@ethersproject/abstract-signer': 5.8.0
- '@ethersproject/address': 5.8.0
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/hash': 5.8.0
- '@ethersproject/hdnode': 5.8.0
- '@ethersproject/json-wallets': 5.8.0
- '@ethersproject/keccak256': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/properties': 5.8.0
- '@ethersproject/random': 5.8.0
- '@ethersproject/signing-key': 5.8.0
- '@ethersproject/transactions': 5.8.0
- '@ethersproject/wordlists': 5.8.0
-
- '@ethersproject/web@5.8.0':
- dependencies:
- '@ethersproject/base64': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/properties': 5.8.0
- '@ethersproject/strings': 5.8.0
-
- '@ethersproject/wordlists@5.8.0':
- dependencies:
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/hash': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/properties': 5.8.0
- '@ethersproject/strings': 5.8.0
+ '@esbuild/win32-x64@0.28.1':
+ optional: true
'@iarna/toml@2.2.5': {}
@@ -1500,6 +1526,46 @@ snapshots:
'@pkgjs/parseargs@0.11.0':
optional: true
+ '@solana-program/system@0.13.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))':
+ dependencies:
+ '@solana/kit': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+
+ '@solana-program/token@0.15.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))':
+ dependencies:
+ '@solana-program/system': 0.13.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))
+ '@solana/kit': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+
+ '@solana/accounts@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/addresses@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/assertions': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/assertions@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/buffer-layout-utils@0.2.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
dependencies:
'@solana/buffer-layout': 4.0.1
@@ -1526,6 +1592,12 @@ snapshots:
'@solana/errors': 2.1.1(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/codecs-core@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-data-structures@2.0.0-rc.1(typescript@5.9.3)':
dependencies:
'@solana/codecs-core': 2.0.0-rc.1(typescript@5.9.3)
@@ -1533,6 +1605,14 @@ snapshots:
'@solana/errors': 2.0.0-rc.1(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/codecs-data-structures@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-numbers@2.0.0-rc.1(typescript@5.9.3)':
dependencies:
'@solana/codecs-core': 2.0.0-rc.1(typescript@5.9.3)
@@ -1545,6 +1625,13 @@ snapshots:
'@solana/errors': 2.1.1(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/codecs-numbers@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-strings@2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
'@solana/codecs-core': 2.0.0-rc.1(typescript@5.9.3)
@@ -1553,6 +1640,15 @@ snapshots:
fastestsmallesttextencoderdecoder: 1.0.22
typescript: 5.9.3
+ '@solana/codecs-strings@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ fastestsmallesttextencoderdecoder: 1.0.22
+ typescript: 5.9.3
+
'@solana/codecs@2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
'@solana/codecs-core': 2.0.0-rc.1(typescript@5.9.3)
@@ -1564,6 +1660,19 @@ snapshots:
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
+ '@solana/codecs@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/fixed-points': 7.1.0(typescript@5.9.3)
+ '@solana/options': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/errors@2.0.0-rc.1(typescript@5.9.3)':
dependencies:
chalk: 5.4.1
@@ -1576,6 +1685,116 @@ snapshots:
commander: 13.1.0
typescript: 5.9.3
+ '@solana/errors@7.1.0(typescript@5.9.3)':
+ dependencies:
+ chalk: 5.6.2
+ commander: 15.0.0
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/fast-stable-stringify@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/fixed-points@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/functional@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/instruction-plans@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/instructions@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/keys@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/assertions': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/instruction-plans': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/offchain-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/plugin-core': 7.1.0(typescript@5.9.3)
+ '@solana/plugin-interfaces': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/program-client-core': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/programs': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-parsed-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ '@solana/sysvars': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-confirmation': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/transaction-introspection': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - fastestsmallesttextencoderdecoder
+ - utf-8-validate
+
+ '@solana/nominal-types@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/offchain-messages@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/options@2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
'@solana/codecs-core': 2.0.0-rc.1(typescript@5.9.3)
@@ -1587,6 +1806,225 @@ snapshots:
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
+ '@solana/options@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/plugin-core@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/plugin-interfaces@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/instruction-plans': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/program-client-core@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instruction-plans': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/plugin-interfaces': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/programs@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/promises@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-api@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-parsed-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc-parsed-types@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-spec-types@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-spec@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-subscriptions-api@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc-subscriptions-channel-websocket@7.1.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ ws: 8.21.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - utf-8-validate
+
+ '@solana/rpc-subscriptions-spec@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-subscriptions@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/fast-stable-stringify': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-subscriptions-channel-websocket': 7.1.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - fastestsmallesttextencoderdecoder
+ - utf-8-validate
+
+ '@solana/rpc-transformers@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc-transport-http@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ undici-types: 8.10.0
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-types@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/fixed-points': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/fast-stable-stringify': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-transport-http': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/signers@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/offchain-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/spl-token-metadata@0.1.6(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
'@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
@@ -1609,6 +2047,95 @@ snapshots:
- typescript
- utf-8-validate
+ '@solana/subscribable@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/sysvars@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/transaction-confirmation@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-subscriptions': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - fastestsmallesttextencoderdecoder
+ - utf-8-validate
+
+ '@solana/transaction-introspection@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/transaction-messages@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/transactions@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
dependencies:
'@babel/runtime': 7.27.1
@@ -1669,8 +2196,6 @@ snapshots:
dependencies:
'@types/node': 26.1.2
- aes-js@3.0.0: {}
-
agentkeepalive@4.6.0:
dependencies:
humanize-ms: 1.2.1
@@ -1709,8 +2234,6 @@ snapshots:
base64-js@1.5.1: {}
- bech32@1.1.4: {}
-
bigint-buffer@1.1.5:
dependencies:
bindings: 1.5.0
@@ -1721,8 +2244,6 @@ snapshots:
dependencies:
file-uri-to-path: 1.0.0
- bn.js@4.12.2: {}
-
bn.js@5.2.2: {}
borsh@0.7.0:
@@ -1735,8 +2256,6 @@ snapshots:
dependencies:
balanced-match: 1.0.2
- brorand@1.1.0: {}
-
browser-stdout@1.3.1: {}
bs58@4.0.1:
@@ -1766,6 +2285,8 @@ snapshots:
chalk@5.4.1: {}
+ chalk@5.6.2: {}
+
chokidar@4.0.3:
dependencies:
readdirp: 4.1.2
@@ -1786,6 +2307,8 @@ snapshots:
commander@13.1.0: {}
+ commander@15.0.0: {}
+
commander@2.20.3: {}
cross-fetch@3.2.0:
@@ -1814,16 +2337,6 @@ snapshots:
eastasianwidth@0.2.0: {}
- elliptic@6.6.1:
- dependencies:
- bn.js: 4.12.2
- brorand: 1.1.0
- hash.js: 1.1.7
- hmac-drbg: 1.0.1
- inherits: 2.0.4
- minimalistic-assert: 1.0.1
- minimalistic-crypto-utils: 1.0.1
-
emoji-regex@8.0.0: {}
emoji-regex@9.2.2: {}
@@ -1867,42 +2380,6 @@ snapshots:
escape-string-regexp@4.0.0: {}
- ethers@5.8.0(bufferutil@4.0.9)(utf-8-validate@5.0.10):
- dependencies:
- '@ethersproject/abi': 5.8.0
- '@ethersproject/abstract-provider': 5.8.0
- '@ethersproject/abstract-signer': 5.8.0
- '@ethersproject/address': 5.8.0
- '@ethersproject/base64': 5.8.0
- '@ethersproject/basex': 5.8.0
- '@ethersproject/bignumber': 5.8.0
- '@ethersproject/bytes': 5.8.0
- '@ethersproject/constants': 5.8.0
- '@ethersproject/contracts': 5.8.0
- '@ethersproject/hash': 5.8.0
- '@ethersproject/hdnode': 5.8.0
- '@ethersproject/json-wallets': 5.8.0
- '@ethersproject/keccak256': 5.8.0
- '@ethersproject/logger': 5.8.0
- '@ethersproject/networks': 5.8.0
- '@ethersproject/pbkdf2': 5.8.0
- '@ethersproject/properties': 5.8.0
- '@ethersproject/providers': 5.8.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)
- '@ethersproject/random': 5.8.0
- '@ethersproject/rlp': 5.8.0
- '@ethersproject/sha2': 5.8.0
- '@ethersproject/signing-key': 5.8.0
- '@ethersproject/solidity': 5.8.0
- '@ethersproject/strings': 5.8.0
- '@ethersproject/transactions': 5.8.0
- '@ethersproject/units': 5.8.0
- '@ethersproject/wallet': 5.8.0
- '@ethersproject/web': 5.8.0
- '@ethersproject/wordlists': 5.8.0
- transitivePeerDependencies:
- - bufferutil
- - utf-8-validate
-
eventemitter3@4.0.7: {}
eventemitter3@5.0.1: {}
@@ -1943,27 +2420,14 @@ snapshots:
has-flag@4.0.0: {}
- hash.js@1.1.7:
- dependencies:
- inherits: 2.0.4
- minimalistic-assert: 1.0.1
-
he@1.2.0: {}
- hmac-drbg@1.0.1:
- dependencies:
- hash.js: 1.1.7
- minimalistic-assert: 1.0.1
- minimalistic-crypto-utils: 1.0.1
-
humanize-ms@1.2.1:
dependencies:
ms: 2.1.3
ieee754@1.2.1: {}
- inherits@2.0.4: {}
-
is-fullwidth-code-point@3.0.0: {}
is-path-inside@3.0.3: {}
@@ -2002,8 +2466,6 @@ snapshots:
- bufferutil
- utf-8-validate
- js-sha3@0.8.0: {}
-
js-yaml@4.1.0:
dependencies:
argparse: 2.0.1
@@ -2056,10 +2518,6 @@ snapshots:
lru-cache@10.4.3: {}
- minimalistic-assert@1.0.1: {}
-
- minimalistic-crypto-utils@1.0.1: {}
-
minimatch@9.0.9:
dependencies:
brace-expansion: 2.1.3
@@ -2147,8 +2605,6 @@ snapshots:
safe-buffer@5.2.1: {}
- scrypt-js@3.0.1: {}
-
serialize-javascript@6.0.2:
dependencies:
randombytes: 2.1.0
@@ -2217,6 +2673,8 @@ snapshots:
typescript@5.9.3: {}
+ undici-types@8.10.0: {}
+
undici-types@8.3.0: {}
utf-8-validate@5.0.10:
@@ -2256,12 +2714,12 @@ snapshots:
bufferutil: 4.0.9
utf-8-validate: 5.0.10
- ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10):
+ ws@8.18.2(bufferutil@4.0.9)(utf-8-validate@5.0.10):
optionalDependencies:
bufferutil: 4.0.9
utf-8-validate: 5.0.10
- ws@8.18.2(bufferutil@4.0.9)(utf-8-validate@5.0.10):
+ ws@8.21.3(bufferutil@4.0.9)(utf-8-validate@5.0.10):
optionalDependencies:
bufferutil: 4.0.9
utf-8-validate: 5.0.10
diff --git a/tokens/external-delegate-token-master/anchor/tests/litesvm.test.ts b/tokens/external-delegate-token-master/anchor/tests/litesvm.test.ts
index 8f4906ac2..3a85f7b13 100644
--- a/tokens/external-delegate-token-master/anchor/tests/litesvm.test.ts
+++ b/tokens/external-delegate-token-master/anchor/tests/litesvm.test.ts
@@ -1,6 +1,5 @@
import * as anchor from '@anchor-lang/core';
import {
- AccountLayout,
createAssociatedTokenAccountInstruction,
createInitializeMint2Instruction,
createMintToInstruction,
@@ -9,8 +8,8 @@ import {
TOKEN_PROGRAM_ID,
} from '@solana/spl-token';
import { Keypair, LAMPORTS_PER_SOL, PublicKey, SystemProgram, Transaction } from '@solana/web3.js';
+import { getTokenDecoder } from '@solana-program/token';
import { LiteSVMProvider } from 'anchor-litesvm';
-import BN from 'bn.js';
import { expect } from 'chai';
import { LiteSVM } from 'litesvm';
import IDL from '../target/idl/external_delegate_token_master.json';
@@ -88,7 +87,7 @@ describe('External Delegate Token Master Tests', () => {
await provider.sendAndConfirm!(setupTx, [mintKeypair, authority]);
await program.methods
- .authorityTransfer(new BN(250))
+ .authorityTransfer(new anchor.BN(250))
.accountsPartial({
userAccount: userAccount.publicKey,
authority: authority.publicKey,
@@ -100,10 +99,10 @@ describe('External Delegate Token Master Tests', () => {
.signers([authority])
.rpc();
- const recipientBalance = AccountLayout.decode(client.getAccount(recipientTokenAccount)!.data).amount;
+ const recipientBalance = getTokenDecoder().decode(client.getAccount(recipientTokenAccount)!.data).amount;
expect(recipientBalance).to.equal(BigInt(250));
- const userBalance = AccountLayout.decode(client.getAccount(userTokenAccount)!.data).amount;
+ const userBalance = getTokenDecoder().decode(client.getAccount(userTokenAccount)!.data).amount;
expect(userBalance).to.equal(BigInt(1_000_000_000 - 250));
});
});
diff --git a/tokens/nft-operations/anchor/package.json b/tokens/nft-operations/anchor/package.json
index a23a3b02e..a5635ce2b 100644
--- a/tokens/nft-operations/anchor/package.json
+++ b/tokens/nft-operations/anchor/package.json
@@ -12,15 +12,10 @@
},
"dependencies": {
"@anchor-lang/core": "1.0.0-rc.5",
- "@metaplex-foundation/mpl-token-metadata": "^3.1.2",
- "@metaplex-foundation/umi": "^0.9.0",
"@solana/spl-token": "^0.4.6",
- "axios": "^1.6.7",
- "node-fetch": "^3.3.2",
"@solana/web3.js": "^1.98.4"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"@types/node": "^26.1.0",
diff --git a/tokens/nft-operations/anchor/pnpm-lock.yaml b/tokens/nft-operations/anchor/pnpm-lock.yaml
index 5a581d4bf..c4eb4cbb7 100644
--- a/tokens/nft-operations/anchor/pnpm-lock.yaml
+++ b/tokens/nft-operations/anchor/pnpm-lock.yaml
@@ -14,28 +14,13 @@ importers:
'@anchor-lang/core':
specifier: 1.0.0-rc.5
version: 1.0.0-rc.5(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
- '@metaplex-foundation/mpl-token-metadata':
- specifier: ^3.1.2
- version: 3.2.1(@metaplex-foundation/umi@0.9.2)
- '@metaplex-foundation/umi':
- specifier: ^0.9.0
- version: 0.9.2
'@solana/spl-token':
specifier: ^0.4.6
version: 0.4.8(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
'@solana/web3.js':
specifier: ^1.98.4
version: 1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
- axios:
- specifier: ^1.6.7
- version: 1.7.2
- node-fetch:
- specifier: ^3.3.2
- version: 3.3.2
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -267,37 +252,6 @@ packages:
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
engines: {node: '>=12'}
- '@metaplex-foundation/mpl-token-metadata@3.2.1':
- resolution: {integrity: sha512-26W1NhQwDWmLOg/pBRYut7x/vEs/5kFS2sWVEY5/X0f2jJOLhnd4NaZQcq+5u+XZsXvm1jq2AtrRGPNK43oqWQ==}
- peerDependencies:
- '@metaplex-foundation/umi': '>= 0.8.2 < 1'
-
- '@metaplex-foundation/mpl-toolbox@0.9.4':
- resolution: {integrity: sha512-fd6JxfoLbj/MM8FG2x91KYVy1U6AjBQw4qjt7+Da3trzQaWnSaYHDcYRG/53xqfvZ9qofY1T2t53GXPlD87lnQ==}
- peerDependencies:
- '@metaplex-foundation/umi': '>= 0.8.2 < 1'
-
- '@metaplex-foundation/umi-options@0.8.9':
- resolution: {integrity: sha512-jSQ61sZMPSAk/TXn8v8fPqtz3x8d0/blVZXLLbpVbo2/T5XobiI6/MfmlUosAjAUaQl6bHRF8aIIqZEFkJiy4A==}
-
- '@metaplex-foundation/umi-public-keys@0.8.9':
- resolution: {integrity: sha512-CxMzN7dgVGOq9OcNCJe2casKUpJ3RmTVoOvDFyeoTQuK+vkZ1YSSahbqC1iGuHEtKTLSjtWjKvUU6O7zWFTw3Q==}
-
- '@metaplex-foundation/umi-serializers-core@0.8.9':
- resolution: {integrity: sha512-WT82tkiYJ0Qmscp7uTj1Hz6aWQPETwaKLAENAUN5DeWghkuBKtuxyBKVvEOuoXerJSdhiAk0e8DWA4cxcTTQ/w==}
-
- '@metaplex-foundation/umi-serializers-encodings@0.8.9':
- resolution: {integrity: sha512-N3VWLDTJ0bzzMKcJDL08U3FaqRmwlN79FyE4BHj6bbAaJ9LEHjDQ9RJijZyWqTm0jE7I750fU7Ow5EZL38Xi6Q==}
-
- '@metaplex-foundation/umi-serializers-numbers@0.8.9':
- resolution: {integrity: sha512-NtBf1fnVNQJHFQjLFzRu2i9GGnigb9hOm/Gfrk628d0q0tRJB7BOM3bs5C61VAs7kJs4yd+pDNVAERJkknQ7Lg==}
-
- '@metaplex-foundation/umi-serializers@0.9.0':
- resolution: {integrity: sha512-hAOW9Djl4w4ioKeR4erDZl5IG4iJdP0xA19ZomdaCbMhYAAmG/FEs5khh0uT2mq53/MnzWcXSUPoO8WBN4Q+Vg==}
-
- '@metaplex-foundation/umi@0.9.2':
- resolution: {integrity: sha512-9i4Acm4pruQfJcpRrc2EauPBwkfDN0I9QTvJyZocIlKgoZwD6A6wH0PViH1AjOVG5CQCd1YI3tJd5XjYE1ElBw==}
-
'@noble/curves@1.9.7':
resolution: {integrity: sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==}
engines: {node: ^14.21.3 || >=16}
@@ -426,9 +380,6 @@ packages:
'@swc/helpers@0.5.17':
resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -493,12 +444,6 @@ packages:
resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
engines: {node: '>=12'}
- asynckit@0.4.0:
- resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
-
- axios@1.7.2:
- resolution: {integrity: sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==}
-
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
@@ -579,10 +524,6 @@ packages:
color-name@1.1.4:
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
- combined-stream@1.0.8:
- resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
- engines: {node: '>= 0.8'}
-
commander@12.1.0:
resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==}
engines: {node: '>=18'}
@@ -601,10 +542,6 @@ packages:
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
engines: {node: '>= 8'}
- data-uri-to-buffer@4.0.1:
- resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==}
- engines: {node: '>= 12'}
-
debug@4.4.3:
resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==}
engines: {node: '>=6.0'}
@@ -622,10 +559,6 @@ packages:
resolution: {integrity: sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw==}
engines: {node: '>=10'}
- delayed-stream@1.0.0:
- resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
- engines: {node: '>=0.4.0'}
-
diff@7.0.0:
resolution: {integrity: sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==}
engines: {node: '>=0.3.1'}
@@ -674,10 +607,6 @@ packages:
fastestsmallesttextencoderdecoder@1.0.22:
resolution: {integrity: sha512-Pb8d48e+oIuY4MaM64Cd7OW1gt4nxCHs7/ddPPZ/Ic3sg8yVGM7O9wDvZ7us6ScaUupzM+pfBolwtYhN1IxBIw==}
- fetch-blob@3.2.0:
- resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==}
- engines: {node: ^12.20 || >= 14.13}
-
file-uri-to-path@1.0.0:
resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==}
@@ -689,27 +618,10 @@ packages:
resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==}
hasBin: true
- follow-redirects@1.15.6:
- resolution: {integrity: sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==}
- engines: {node: '>=4.0'}
- peerDependencies:
- debug: '*'
- peerDependenciesMeta:
- debug:
- optional: true
-
foreground-child@3.3.1:
resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==}
engines: {node: '>=14'}
- form-data@4.0.0:
- resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
- engines: {node: '>= 6'}
-
- formdata-polyfill@4.0.10:
- resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==}
- engines: {node: '>=12.20.0'}
-
fsevents@2.3.3:
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
@@ -832,14 +744,6 @@ packages:
lru-cache@10.4.3:
resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
- mime-db@1.52.0:
- resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
- engines: {node: '>= 0.6'}
-
- mime-types@2.1.35:
- resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
- engines: {node: '>= 0.6'}
-
minimatch@9.0.9:
resolution: {integrity: sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -856,10 +760,6 @@ packages:
ms@2.1.3:
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
- node-domexception@1.0.0:
- resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==}
- engines: {node: '>=10.5.0'}
-
node-fetch@2.7.0:
resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
engines: {node: 4.x || >=6.0.0}
@@ -869,10 +769,6 @@ packages:
encoding:
optional: true
- node-fetch@3.3.2:
- resolution: {integrity: sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
node-gyp-build@4.8.4:
resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==}
hasBin: true
@@ -911,9 +807,6 @@ packages:
engines: {node: '>=10.13.0'}
hasBin: true
- proxy-from-env@1.1.0:
- resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
-
randombytes@2.1.0:
resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
@@ -1021,10 +914,6 @@ packages:
deprecated: uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028).
hasBin: true
- web-streams-polyfill@3.3.3:
- resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==}
- engines: {node: '>= 8'}
-
webidl-conversions@3.0.1:
resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
@@ -1247,45 +1136,6 @@ snapshots:
wrap-ansi: 8.1.0
wrap-ansi-cjs: wrap-ansi@7.0.0
- '@metaplex-foundation/mpl-token-metadata@3.2.1(@metaplex-foundation/umi@0.9.2)':
- dependencies:
- '@metaplex-foundation/mpl-toolbox': 0.9.4(@metaplex-foundation/umi@0.9.2)
- '@metaplex-foundation/umi': 0.9.2
-
- '@metaplex-foundation/mpl-toolbox@0.9.4(@metaplex-foundation/umi@0.9.2)':
- dependencies:
- '@metaplex-foundation/umi': 0.9.2
-
- '@metaplex-foundation/umi-options@0.8.9': {}
-
- '@metaplex-foundation/umi-public-keys@0.8.9':
- dependencies:
- '@metaplex-foundation/umi-serializers-encodings': 0.8.9
-
- '@metaplex-foundation/umi-serializers-core@0.8.9': {}
-
- '@metaplex-foundation/umi-serializers-encodings@0.8.9':
- dependencies:
- '@metaplex-foundation/umi-serializers-core': 0.8.9
-
- '@metaplex-foundation/umi-serializers-numbers@0.8.9':
- dependencies:
- '@metaplex-foundation/umi-serializers-core': 0.8.9
-
- '@metaplex-foundation/umi-serializers@0.9.0':
- dependencies:
- '@metaplex-foundation/umi-options': 0.8.9
- '@metaplex-foundation/umi-public-keys': 0.8.9
- '@metaplex-foundation/umi-serializers-core': 0.8.9
- '@metaplex-foundation/umi-serializers-encodings': 0.8.9
- '@metaplex-foundation/umi-serializers-numbers': 0.8.9
-
- '@metaplex-foundation/umi@0.9.2':
- dependencies:
- '@metaplex-foundation/umi-options': 0.8.9
- '@metaplex-foundation/umi-public-keys': 0.8.9
- '@metaplex-foundation/umi-serializers': 0.9.0
-
'@noble/curves@1.9.7':
dependencies:
'@noble/hashes': 1.8.0
@@ -1487,10 +1337,6 @@ snapshots:
dependencies:
tslib: 2.8.1
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
@@ -1561,16 +1407,6 @@ snapshots:
assertion-error@2.0.1: {}
- asynckit@0.4.0: {}
-
- axios@1.7.2:
- dependencies:
- follow-redirects: 1.15.6
- form-data: 4.0.0
- proxy-from-env: 1.1.0
- transitivePeerDependencies:
- - debug
-
balanced-match@1.0.2: {}
base-x@3.0.10:
@@ -1648,10 +1484,6 @@ snapshots:
color-name@1.1.4: {}
- combined-stream@1.0.8:
- dependencies:
- delayed-stream: 1.0.0
-
commander@12.1.0: {}
commander@14.0.1: {}
@@ -1670,8 +1502,6 @@ snapshots:
shebang-command: 2.0.0
which: 2.0.2
- data-uri-to-buffer@4.0.1: {}
-
debug@4.4.3(supports-color@8.1.1):
dependencies:
ms: 2.1.3
@@ -1682,8 +1512,6 @@ snapshots:
delay@5.0.0: {}
- delayed-stream@1.0.0: {}
-
diff@7.0.0: {}
eastasianwidth@0.2.0: {}
@@ -1741,11 +1569,6 @@ snapshots:
fastestsmallesttextencoderdecoder@1.0.22: {}
- fetch-blob@3.2.0:
- dependencies:
- node-domexception: 1.0.0
- web-streams-polyfill: 3.3.3
-
file-uri-to-path@1.0.0: {}
find-up@5.0.0:
@@ -1755,23 +1578,11 @@ snapshots:
flat@5.0.2: {}
- follow-redirects@1.15.6: {}
-
foreground-child@3.3.1:
dependencies:
cross-spawn: 7.0.6
signal-exit: 4.1.0
- form-data@4.0.0:
- dependencies:
- asynckit: 0.4.0
- combined-stream: 1.0.8
- mime-types: 2.1.35
-
- formdata-polyfill@4.0.10:
- dependencies:
- fetch-blob: 3.2.0
-
fsevents@2.3.3:
optional: true
@@ -1886,12 +1697,6 @@ snapshots:
lru-cache@10.4.3: {}
- mime-db@1.52.0: {}
-
- mime-types@2.1.35:
- dependencies:
- mime-db: 1.52.0
-
minimatch@9.0.9:
dependencies:
brace-expansion: 2.1.3
@@ -1924,18 +1729,10 @@ snapshots:
ms@2.1.3: {}
- node-domexception@1.0.0: {}
-
node-fetch@2.7.0:
dependencies:
whatwg-url: 5.0.0
- node-fetch@3.3.2:
- dependencies:
- data-uri-to-buffer: 4.0.1
- fetch-blob: 3.2.0
- formdata-polyfill: 4.0.10
-
node-gyp-build@4.8.4:
optional: true
@@ -1964,8 +1761,6 @@ snapshots:
prettier@2.8.8: {}
- proxy-from-env@1.1.0: {}
-
randombytes@2.1.0:
dependencies:
safe-buffer: 5.2.1
@@ -2066,8 +1861,6 @@ snapshots:
uuid@8.3.2: {}
- web-streams-polyfill@3.3.3: {}
-
webidl-conversions@3.0.1: {}
whatwg-url@5.0.0:
diff --git a/tokens/pda-mint-authority/anchor/tests/litesvm.test.ts b/tokens/pda-mint-authority/anchor/tests/litesvm.test.ts
index c13015159..0896f726f 100644
--- a/tokens/pda-mint-authority/anchor/tests/litesvm.test.ts
+++ b/tokens/pda-mint-authority/anchor/tests/litesvm.test.ts
@@ -2,7 +2,6 @@ import * as anchor from '@anchor-lang/core';
import { getAssociatedTokenAddressSync } from '@solana/spl-token';
import { PublicKey } from '@solana/web3.js';
import { LiteSVMProvider } from 'anchor-litesvm';
-import { BN } from 'bn.js';
import { LiteSVM } from 'litesvm';
import IDL from '../target/idl/token_minter.json';
import type { TokenMinter } from '../target/types/token_minter';
@@ -47,7 +46,7 @@ describe('NFT Minter', () => {
const associatedTokenAccountAddress = getAssociatedTokenAddressSync(mintPDA, payer.publicKey);
// Amount of tokens to mint.
- const amount = new BN(100);
+ const amount = new anchor.BN(100);
const transactionSignature = await program.methods
.mintToken(amount)
diff --git a/tokens/pda-mint-authority/anchor/tests/test.ts b/tokens/pda-mint-authority/anchor/tests/test.ts
index ae26e9096..141b79dae 100644
--- a/tokens/pda-mint-authority/anchor/tests/test.ts
+++ b/tokens/pda-mint-authority/anchor/tests/test.ts
@@ -1,7 +1,6 @@
import * as anchor from '@anchor-lang/core';
import { getAssociatedTokenAddressSync } from '@solana/spl-token';
import { PublicKey } from '@solana/web3.js';
-import { BN } from 'bn.js';
import type { TokenMinter } from '../target/types/token_minter';
describe('NFT Minter', () => {
@@ -38,7 +37,7 @@ describe('NFT Minter', () => {
const associatedTokenAccountAddress = getAssociatedTokenAddressSync(mintPDA, payer.publicKey);
// Amount of tokens to mint.
- const amount = new BN(100);
+ const amount = new anchor.BN(100);
const transactionSignature = await program.methods
.mintToken(amount)
diff --git a/tokens/pda-mint-authority/native/package.json b/tokens/pda-mint-authority/native/package.json
index 7816436f4..2fce1b1d7 100644
--- a/tokens/pda-mint-authority/native/package.json
+++ b/tokens/pda-mint-authority/native/package.json
@@ -9,8 +9,7 @@
"dependencies": {
"@solana-program/system": "^0.13.0",
"@solana-program/token": "^0.15.0",
- "@solana/kit": "^7.0.0",
- "borsh": "^2.0.0"
+ "@solana/kit": "^7.0.0"
},
"devDependencies": {
"@types/chai": "^5.2.3",
diff --git a/tokens/pda-mint-authority/native/pnpm-lock.yaml b/tokens/pda-mint-authority/native/pnpm-lock.yaml
index ae89b471b..32b2268cc 100644
--- a/tokens/pda-mint-authority/native/pnpm-lock.yaml
+++ b/tokens/pda-mint-authority/native/pnpm-lock.yaml
@@ -17,9 +17,6 @@ importers:
'@solana/kit':
specifier: ^7.0.0
version: 7.0.0(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@6.0.6)
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
devDependencies:
'@types/chai':
specifier: ^5.2.3
@@ -1048,9 +1045,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2534,8 +2528,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/tokens/pda-mint-authority/native/tests/instructions.ts b/tokens/pda-mint-authority/native/tests/instructions.ts
deleted file mode 100644
index 01f7889aa..000000000
--- a/tokens/pda-mint-authority/native/tests/instructions.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-import * as borsh from 'borsh';
-
-export enum NftMinterInstruction {
- Init = 0,
- Create = 1,
- Mint = 2,
-}
-
-export const InitArgsSchema = { struct: { instruction: 'u8' } };
-
-export const CreateTokenArgsSchema = {
- struct: {
- instruction: 'u8',
- nft_title: 'string',
- nft_symbol: 'string',
- nft_uri: 'string',
- },
-};
-
-export const MintToArgsSchema = { struct: { instruction: 'u8' } };
-
-export function borshSerialize(schema: borsh.Schema, data: object): Buffer {
- return Buffer.from(borsh.serialize(schema, data));
-}
diff --git a/tokens/pda-mint-authority/native/tests/test.ts b/tokens/pda-mint-authority/native/tests/test.ts
index 991c753a8..4a03a53a8 100644
--- a/tokens/pda-mint-authority/native/tests/test.ts
+++ b/tokens/pda-mint-authority/native/tests/test.ts
@@ -1,6 +1,4 @@
import {
- AccountRole,
- address,
type Address,
appendTransactionMessageInstruction,
createTransactionMessage,
@@ -15,26 +13,15 @@ import {
signTransactionMessageWithSigners,
unwrapOption,
} from '@solana/kit';
-import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
-import {
- ASSOCIATED_TOKEN_PROGRAM_ADDRESS,
- findAssociatedTokenPda,
- getMintDecoder,
- getTokenDecoder,
- TOKEN_PROGRAM_ADDRESS,
-} from '@solana-program/token';
+import { findAssociatedTokenPda, getMintDecoder, getTokenDecoder, TOKEN_PROGRAM_ADDRESS } from '@solana-program/token';
import { assert } from 'chai';
import { FailedTransactionMetadata, LiteSVM } from 'litesvm';
import {
- borshSerialize,
- CreateTokenArgsSchema,
- InitArgsSchema,
- MintToArgsSchema,
- NftMinterInstruction,
-} from './instructions';
-
-const TOKEN_METADATA_PROGRAM_ID = address('metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s');
-const SYSVAR_RENT_ADDRESS = address('SysvarRent111111111111111111111111111111111');
+ createCreateInstruction,
+ createInitInstruction,
+ createMintInstruction,
+ TOKEN_METADATA_PROGRAM_ADDRESS,
+} from '../ts';
const addressEncoder = getAddressEncoder();
@@ -51,7 +38,7 @@ describe('NFT Minter', () => {
before(async () => {
programId = (await generateKeyPairSigner()).address;
svm.addProgramFromFile(programId, 'tests/fixtures/pda_mint_authority_native_program.so');
- svm.addProgramFromFile(TOKEN_METADATA_PROGRAM_ID, 'tests/fixtures/token_metadata.so');
+ svm.addProgramFromFile(TOKEN_METADATA_PROGRAM_ADDRESS, 'tests/fixtures/token_metadata.so');
payer = await generateKeyPairSigner();
svm.airdrop(payer.address, lamports(10_000_000_000n));
@@ -64,19 +51,19 @@ describe('NFT Minter', () => {
mintKeypair = await generateKeyPairSigner();
[metadataAddress] = await getProgramDerivedAddress({
- programAddress: TOKEN_METADATA_PROGRAM_ID,
+ programAddress: TOKEN_METADATA_PROGRAM_ADDRESS,
seeds: [
'metadata',
- addressEncoder.encode(TOKEN_METADATA_PROGRAM_ID),
+ addressEncoder.encode(TOKEN_METADATA_PROGRAM_ADDRESS),
addressEncoder.encode(mintKeypair.address),
],
});
[editionAddress] = await getProgramDerivedAddress({
- programAddress: TOKEN_METADATA_PROGRAM_ID,
+ programAddress: TOKEN_METADATA_PROGRAM_ADDRESS,
seeds: [
'metadata',
- addressEncoder.encode(TOKEN_METADATA_PROGRAM_ID),
+ addressEncoder.encode(TOKEN_METADATA_PROGRAM_ADDRESS),
addressEncoder.encode(mintKeypair.address),
'edition',
],
@@ -96,19 +83,7 @@ describe('NFT Minter', () => {
}
it('Init Mint Authority PDA', async () => {
- const instructionData = borshSerialize(InitArgsSchema, {
- instruction: NftMinterInstruction.Init,
- });
-
- const ix = {
- programAddress: programId,
- accounts: [
- { address: mintAuthorityAddress, role: AccountRole.WRITABLE },
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
- ],
- data: new Uint8Array(instructionData),
- };
+ const ix = createInitInstruction(mintAuthorityAddress, payer, programId);
await sendTransaction(ix);
@@ -119,28 +94,16 @@ describe('NFT Minter', () => {
});
it('Create an NFT!', async () => {
- const instructionData = borshSerialize(CreateTokenArgsSchema, {
- instruction: NftMinterInstruction.Create,
- nft_title: 'Homer NFT',
- nft_symbol: 'HOMR',
- nft_uri:
- 'https://raw.githubusercontent.com/solana-developers/program-examples/new-examples/tokens/tokens/.assets/nft.json',
- });
-
- const ix = {
- programAddress: programId,
- accounts: [
- { address: mintKeypair.address, role: AccountRole.WRITABLE_SIGNER, signer: mintKeypair }, // Mint account
- { address: mintAuthorityAddress, role: AccountRole.WRITABLE }, // Mint authority account
- { address: metadataAddress, role: AccountRole.WRITABLE }, // Metadata account
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }, // Payer
- { address: SYSVAR_RENT_ADDRESS, role: AccountRole.READONLY }, // Rent account
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // System program
- { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // Token program
- { address: TOKEN_METADATA_PROGRAM_ID, role: AccountRole.READONLY }, // Token metadata program
- ],
- data: new Uint8Array(instructionData),
- };
+ const ix = createCreateInstruction(
+ mintKeypair,
+ mintAuthorityAddress,
+ metadataAddress,
+ payer,
+ programId,
+ 'Homer NFT',
+ 'HOMR',
+ 'https://raw.githubusercontent.com/solana-developers/program-examples/new-examples/tokens/tokens/.assets/nft.json',
+ );
await sendTransaction(ix);
@@ -154,7 +117,7 @@ describe('NFT Minter', () => {
const metadataInfo = svm.getAccount(metadataAddress);
assert(metadataInfo.exists, 'metadata account not created');
- assert(metadataInfo.programAddress === TOKEN_METADATA_PROGRAM_ID, 'metadata account has wrong owner');
+ assert(metadataInfo.programAddress === TOKEN_METADATA_PROGRAM_ADDRESS, 'metadata account has wrong owner');
});
it('Mint the NFT to your wallet!', async () => {
@@ -164,27 +127,15 @@ describe('NFT Minter', () => {
tokenProgram: TOKEN_PROGRAM_ADDRESS,
});
- const instructionData = borshSerialize(MintToArgsSchema, {
- instruction: NftMinterInstruction.Mint,
- });
-
- const ix = {
- programAddress: programId,
- accounts: [
- { address: mintKeypair.address, role: AccountRole.WRITABLE }, // Mint account
- { address: metadataAddress, role: AccountRole.WRITABLE }, // Metadata account
- { address: editionAddress, role: AccountRole.WRITABLE }, // Edition account
- { address: mintAuthorityAddress, role: AccountRole.WRITABLE }, // Mint authority account
- { address: associatedTokenAccountAddress, role: AccountRole.WRITABLE }, // ATA
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }, // Payer
- { address: SYSVAR_RENT_ADDRESS, role: AccountRole.READONLY }, // Rent account
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // System program
- { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // Token program
- { address: ASSOCIATED_TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // Associated token program
- { address: TOKEN_METADATA_PROGRAM_ID, role: AccountRole.READONLY }, // Token metadata program
- ],
- data: new Uint8Array(instructionData),
- };
+ const ix = createMintInstruction(
+ mintKeypair.address,
+ metadataAddress,
+ editionAddress,
+ mintAuthorityAddress,
+ associatedTokenAccountAddress,
+ payer,
+ programId,
+ );
await sendTransaction(ix);
@@ -195,6 +146,6 @@ describe('NFT Minter', () => {
const editionInfo = svm.getAccount(editionAddress);
assert(editionInfo.exists, 'edition account not created');
- assert(editionInfo.programAddress === TOKEN_METADATA_PROGRAM_ID, 'edition account has wrong owner');
+ assert(editionInfo.programAddress === TOKEN_METADATA_PROGRAM_ADDRESS, 'edition account has wrong owner');
});
});
diff --git a/tokens/pda-mint-authority/native/ts/constants.ts b/tokens/pda-mint-authority/native/ts/constants.ts
new file mode 100644
index 000000000..fc2601414
--- /dev/null
+++ b/tokens/pda-mint-authority/native/ts/constants.ts
@@ -0,0 +1,4 @@
+import { address } from '@solana/kit';
+
+export const TOKEN_METADATA_PROGRAM_ADDRESS = address('metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s');
+export const SYSVAR_RENT_ADDRESS = address('SysvarRent111111111111111111111111111111111');
diff --git a/tokens/pda-mint-authority/native/ts/index.ts b/tokens/pda-mint-authority/native/ts/index.ts
new file mode 100644
index 000000000..b4b5e9f91
--- /dev/null
+++ b/tokens/pda-mint-authority/native/ts/index.ts
@@ -0,0 +1,2 @@
+export * from './constants';
+export * from './instructions';
diff --git a/tokens/pda-mint-authority/native/ts/instructions/create.ts b/tokens/pda-mint-authority/native/ts/instructions/create.ts
new file mode 100644
index 000000000..dfc5b6c11
--- /dev/null
+++ b/tokens/pda-mint-authority/native/ts/instructions/create.ts
@@ -0,0 +1,53 @@
+import {
+ AccountRole,
+ addEncoderSizePrefix,
+ type Address,
+ getStructEncoder,
+ getU8Encoder,
+ getU32Encoder,
+ getUtf8Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+import { TOKEN_PROGRAM_ADDRESS } from '@solana-program/token';
+import { MyInstruction } from '.';
+import { SYSVAR_RENT_ADDRESS, TOKEN_METADATA_PROGRAM_ADDRESS } from '../constants';
+
+// Instruction data layout, matching the program's `MyInstruction::Create(CreateTokenArgs)` variant.
+export const createEncoder = getStructEncoder([
+ ['instruction', getU8Encoder()],
+ ['nft_title', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['nft_symbol', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['nft_uri', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+]);
+
+export function createCreateInstruction(
+ mint: TransactionSigner,
+ mintAuthority: Address,
+ metadata: Address,
+ payer: TransactionSigner,
+ programId: Address,
+ nftTitle: string,
+ nftSymbol: string,
+ nftUri: string,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: mint.address, role: AccountRole.WRITABLE_SIGNER, signer: mint },
+ { address: mintAuthority, role: AccountRole.WRITABLE },
+ { address: metadata, role: AccountRole.WRITABLE },
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: SYSVAR_RENT_ADDRESS, role: AccountRole.READONLY },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: TOKEN_METADATA_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: createEncoder.encode({
+ instruction: MyInstruction.Create,
+ nft_title: nftTitle,
+ nft_symbol: nftSymbol,
+ nft_uri: nftUri,
+ }),
+ };
+}
diff --git a/tokens/pda-mint-authority/native/ts/instructions/index.ts b/tokens/pda-mint-authority/native/ts/instructions/index.ts
new file mode 100644
index 000000000..18fcfc6f3
--- /dev/null
+++ b/tokens/pda-mint-authority/native/ts/instructions/index.ts
@@ -0,0 +1,11 @@
+export * from './create';
+export * from './init';
+export * from './mint';
+
+export const MyInstruction = {
+ Init: 0,
+ Create: 1,
+ Mint: 2,
+} as const;
+
+export type MyInstruction = (typeof MyInstruction)[keyof typeof MyInstruction];
diff --git a/tokens/pda-mint-authority/native/ts/instructions/init.ts b/tokens/pda-mint-authority/native/ts/instructions/init.ts
new file mode 100644
index 000000000..b5fc5836e
--- /dev/null
+++ b/tokens/pda-mint-authority/native/ts/instructions/init.ts
@@ -0,0 +1,18 @@
+import { AccountRole, type Address, getStructEncoder, getU8Encoder, type TransactionSigner } from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+import { MyInstruction } from '.';
+
+// Instruction data layout, matching the program's `MyInstruction::Init` variant.
+export const initEncoder = getStructEncoder([['instruction', getU8Encoder()]]);
+
+export function createInitInstruction(mintAuthority: Address, payer: TransactionSigner, programId: Address) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: mintAuthority, role: AccountRole.WRITABLE },
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: initEncoder.encode({ instruction: MyInstruction.Init }),
+ };
+}
diff --git a/tokens/pda-mint-authority/native/ts/instructions/mint.ts b/tokens/pda-mint-authority/native/ts/instructions/mint.ts
new file mode 100644
index 000000000..b73361538
--- /dev/null
+++ b/tokens/pda-mint-authority/native/ts/instructions/mint.ts
@@ -0,0 +1,36 @@
+import { AccountRole, type Address, getStructEncoder, getU8Encoder, type TransactionSigner } from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS, TOKEN_PROGRAM_ADDRESS } from '@solana-program/token';
+import { MyInstruction } from '.';
+import { SYSVAR_RENT_ADDRESS, TOKEN_METADATA_PROGRAM_ADDRESS } from '../constants';
+
+// Instruction data layout, matching the program's `MyInstruction::Mint` variant.
+export const mintEncoder = getStructEncoder([['instruction', getU8Encoder()]]);
+
+export function createMintInstruction(
+ mint: Address,
+ metadata: Address,
+ edition: Address,
+ mintAuthority: Address,
+ associatedTokenAccount: Address,
+ payer: TransactionSigner,
+ programId: Address,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: mint, role: AccountRole.WRITABLE },
+ { address: metadata, role: AccountRole.WRITABLE },
+ { address: edition, role: AccountRole.WRITABLE },
+ { address: mintAuthority, role: AccountRole.WRITABLE },
+ { address: associatedTokenAccount, role: AccountRole.WRITABLE },
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: SYSVAR_RENT_ADDRESS, role: AccountRole.READONLY },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: ASSOCIATED_TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: TOKEN_METADATA_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: mintEncoder.encode({ instruction: MyInstruction.Mint }),
+ };
+}
diff --git a/tokens/token-2022/basics/anchor/tests/anchor.ts b/tokens/token-2022/basics/anchor/tests/anchor.ts
index cee9fb29b..e37d86dc2 100644
--- a/tokens/token-2022/basics/anchor/tests/anchor.ts
+++ b/tokens/token-2022/basics/anchor/tests/anchor.ts
@@ -1,7 +1,6 @@
import type { Program } from '@anchor-lang/core';
import * as anchor from '@anchor-lang/core';
import { sendAndConfirmTransaction } from '@solana/web3.js';
-import BN from 'bn.js';
import type { Anchor } from '../target/types/anchor.ts';
describe('anchor', () => {
@@ -99,7 +98,7 @@ describe('anchor', () => {
const tx = new anchor.web3.Transaction();
const ix = await program.methods
- .mintToken(new BN(200000000))
+ .mintToken(new anchor.BN(200000000))
.accountsPartial({
mint: mint,
signer: wallet.publicKey,
@@ -119,7 +118,7 @@ describe('anchor', () => {
const tx = new anchor.web3.Transaction();
const ix = await program.methods
- .transferToken(new BN(100))
+ .transferToken(new anchor.BN(100))
.accountsPartial({
mint: mint,
signer: wallet.publicKey,
diff --git a/tokens/token-2022/basics/anchor/tests/litesvm.test.ts b/tokens/token-2022/basics/anchor/tests/litesvm.test.ts
index cd1c1a2f1..6b07983f0 100644
--- a/tokens/token-2022/basics/anchor/tests/litesvm.test.ts
+++ b/tokens/token-2022/basics/anchor/tests/litesvm.test.ts
@@ -1,7 +1,6 @@
import * as anchor from '@anchor-lang/core';
import { PublicKey } from '@solana/web3.js';
import { LiteSVMProvider } from 'anchor-litesvm';
-import BN from 'bn.js';
import { LiteSVM } from 'litesvm';
import IDL from '../target/idl/anchor.json' with { type: 'json' };
import type { Anchor } from '../target/types/anchor.ts';
@@ -98,7 +97,7 @@ describe('anchor', () => {
const tx = new anchor.web3.Transaction();
const ix = await program.methods
- .mintToken(new BN(200000000))
+ .mintToken(new anchor.BN(200000000))
.accountsPartial({
mint: mint,
signer: wallet.publicKey,
@@ -117,7 +116,7 @@ describe('anchor', () => {
const tx = new anchor.web3.Transaction();
const ix = await program.methods
- .transferToken(new BN(100))
+ .transferToken(new anchor.BN(100))
.accountsPartial({
mint: mint,
signer: wallet.publicKey,
diff --git a/tokens/token-2022/cpi-guard/anchor/package.json b/tokens/token-2022/cpi-guard/anchor/package.json
index 2bf532b3d..31cf18fc5 100644
--- a/tokens/token-2022/cpi-guard/anchor/package.json
+++ b/tokens/token-2022/cpi-guard/anchor/package.json
@@ -10,7 +10,6 @@
"@solana/web3.js": "^1.98.4"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/tokens/token-2022/cpi-guard/anchor/pnpm-lock.yaml b/tokens/token-2022/cpi-guard/anchor/pnpm-lock.yaml
index 2534def6e..24d1ab764 100644
--- a/tokens/token-2022/cpi-guard/anchor/pnpm-lock.yaml
+++ b/tokens/token-2022/cpi-guard/anchor/pnpm-lock.yaml
@@ -18,9 +18,6 @@ importers:
specifier: ^1.98.4
version: 1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.2.0
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -326,9 +323,6 @@ packages:
'@swc/helpers@0.5.17':
resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==}
- '@types/bn.js@5.2.0':
- resolution: {integrity: sha512-DLbJ1BPqxvQhIGbeu8VbUC1DiAiahHtAYvA0ZEAa4P31F7IaArc8z3C3BRQdWX4mtLQuABG4yzp76ZrS02Ui1Q==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1145,10 +1139,6 @@ snapshots:
dependencies:
tslib: 2.8.1
- '@types/bn.js@5.2.0':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/tokens/token-2022/group/anchor/package.json b/tokens/token-2022/group/anchor/package.json
index 1876ee677..dad1b80cd 100644
--- a/tokens/token-2022/group/anchor/package.json
+++ b/tokens/token-2022/group/anchor/package.json
@@ -8,7 +8,6 @@
"@anchor-lang/core": "1.0.0-rc.5"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/tokens/token-2022/group/anchor/pnpm-lock.yaml b/tokens/token-2022/group/anchor/pnpm-lock.yaml
index b0669e040..4442025d9 100644
--- a/tokens/token-2022/group/anchor/pnpm-lock.yaml
+++ b/tokens/token-2022/group/anchor/pnpm-lock.yaml
@@ -12,9 +12,6 @@ importers:
specifier: 1.0.0-rc.5
version: 1.0.0-rc.5(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -261,9 +258,6 @@ packages:
'@swc/helpers@0.5.17':
resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -962,10 +956,6 @@ snapshots:
dependencies:
tslib: 2.8.1
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/tokens/token-2022/metadata/anchor/package.json b/tokens/token-2022/metadata/anchor/package.json
index 7ba8c39ea..3088d0a10 100644
--- a/tokens/token-2022/metadata/anchor/package.json
+++ b/tokens/token-2022/metadata/anchor/package.json
@@ -9,7 +9,6 @@
"@solana/spl-token-metadata": "^0.1.6"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/tokens/token-2022/metadata/anchor/pnpm-lock.yaml b/tokens/token-2022/metadata/anchor/pnpm-lock.yaml
index 59e93d519..583797356 100644
--- a/tokens/token-2022/metadata/anchor/pnpm-lock.yaml
+++ b/tokens/token-2022/metadata/anchor/pnpm-lock.yaml
@@ -15,9 +15,6 @@ importers:
specifier: ^0.1.6
version: 0.1.6(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -307,9 +304,6 @@ packages:
'@swc/helpers@0.5.17':
resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -1077,10 +1071,6 @@ snapshots:
dependencies:
tslib: 2.8.1
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/tokens/token-2022/mint-close-authority/anchor/package.json b/tokens/token-2022/mint-close-authority/anchor/package.json
index 51e8c8892..37cc6ff87 100644
--- a/tokens/token-2022/mint-close-authority/anchor/package.json
+++ b/tokens/token-2022/mint-close-authority/anchor/package.json
@@ -9,7 +9,6 @@
"@solana/spl-token": "^0.4.6"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/tokens/token-2022/mint-close-authority/anchor/pnpm-lock.yaml b/tokens/token-2022/mint-close-authority/anchor/pnpm-lock.yaml
index 9994dc9d6..07e64e626 100644
--- a/tokens/token-2022/mint-close-authority/anchor/pnpm-lock.yaml
+++ b/tokens/token-2022/mint-close-authority/anchor/pnpm-lock.yaml
@@ -15,9 +15,6 @@ importers:
specifier: ^0.4.6
version: 0.4.6(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@5.0.10))(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -328,9 +325,6 @@ packages:
'@swc/helpers@0.5.17':
resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -748,6 +742,7 @@ packages:
rpc-websockets@7.11.0:
resolution: {integrity: sha512-IkLYjayPv6Io8C/TdCL5gwgzd1hFz2vmBZrjMw/SPEXo51ETOhnzgS4Qy5GWi2JQN7HKHa66J3+2mv0fgNh/7w==}
+ deprecated: deprecate 7.11.0
rpc-websockets@9.2.0:
resolution: {integrity: sha512-DS/XHdPxplQTtNRKiBCRWGBJfjOk56W7fyFUpiYi9fSTWTzoEMbUkn3J4gB0IMniIEVeAGR1/rzFQogzD5MxvQ==}
@@ -1236,10 +1231,6 @@ snapshots:
dependencies:
tslib: 2.8.1
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/tokens/token-2022/nft-meta-data-pointer/anchor/package.json b/tokens/token-2022/nft-meta-data-pointer/anchor/package.json
index 43ab369cb..77685e2ec 100644
--- a/tokens/token-2022/nft-meta-data-pointer/anchor/package.json
+++ b/tokens/token-2022/nft-meta-data-pointer/anchor/package.json
@@ -6,7 +6,6 @@
},
"dependencies": {
"@anchor-lang/core": "1.0.0-rc.5",
- "@coral-xyz/spl-token": "0.30.0",
"@solana/spl-token": "^0.4.14",
"@solana/web3.js": "^1.98.4"
},
@@ -14,9 +13,7 @@
"@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
- "browserify-sign": ">=4.2.2",
"chai": "^6.2.2",
- "crypto-js": ">=4.2.0",
"mocha": "^11.7.5",
"prettier": "^2.6.2",
"typescript": "^5.9.3",
diff --git a/tokens/token-2022/nft-meta-data-pointer/anchor/pnpm-lock.yaml b/tokens/token-2022/nft-meta-data-pointer/anchor/pnpm-lock.yaml
index a99018323..e474f5071 100644
--- a/tokens/token-2022/nft-meta-data-pointer/anchor/pnpm-lock.yaml
+++ b/tokens/token-2022/nft-meta-data-pointer/anchor/pnpm-lock.yaml
@@ -11,9 +11,6 @@ importers:
'@anchor-lang/core':
specifier: 1.0.0-rc.5
version: 1.0.0-rc.5(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
- '@coral-xyz/spl-token':
- specifier: 0.30.0
- version: 0.30.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
'@solana/spl-token':
specifier: ^0.4.14
version: 0.4.15(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
@@ -33,15 +30,9 @@ importers:
'@types/node':
specifier: ^26.1.0
version: 26.1.2
- browserify-sign:
- specifier: '>=4.2.2'
- version: 4.2.3
chai:
specifier: ^6.2.2
version: 6.2.2
- crypto-js:
- specifier: '>=4.2.0'
- version: 4.2.0
mocha:
specifier: ^11.7.5
version: 11.7.6
@@ -75,19 +66,6 @@ packages:
resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==}
engines: {node: '>=6.9.0'}
- '@coral-xyz/anchor@0.30.0':
- resolution: {integrity: sha512-qreDh5ztiRHVnCbJ+RS70NJ6aSTPBYDAgFeQ7Z5QvaT5DcDIhNyt4onOciVz2ieIE1XWePOJDDu9SbNvPGBkvQ==}
- engines: {node: '>=11'}
-
- '@coral-xyz/borsh@0.30.1':
- resolution: {integrity: sha512-aaxswpPrCFKl8vZTbxLssA2RvwX2zmKLlRCIktJOwW+VpVwYtXRtlWiIP+c2pPRKneiTiWCN2GEMSH9j1zTlWQ==}
- engines: {node: '>=10'}
- peerDependencies:
- '@solana/web3.js': ^1.68.0
-
- '@coral-xyz/spl-token@0.30.0':
- resolution: {integrity: sha512-NIGhvqeImeLT4Y30ZymU066dKL95/ssa3hs0hCwBBumhIdH77P6ESXjuhoBuU89EYrARXHlWscq8+wEIEItggw==}
-
'@esbuild/aix-ppc64@0.28.1':
resolution: {integrity: sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==}
engines: {node: '>=18'}
@@ -248,9 +226,6 @@ packages:
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
engines: {node: '>=12'}
- '@native-to-anchor/buffer-layout@0.1.0':
- resolution: {integrity: sha512-7Ykz9KRAm53XqHj5blDUKPX+OXAPO4GZBW4zJhfHGIAbzmqsUFh9kMqR66Bak3mp6wyv1OVTwSr8ZGHKswPxDg==}
-
'@noble/curves@1.9.7':
resolution: {integrity: sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==}
engines: {node: ^14.21.3 || >=16}
@@ -263,18 +238,10 @@ packages:
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
- '@solana/buffer-layout-utils@0.2.0':
- resolution: {integrity: sha512-szG4sxgJGktbuZYDg2FfNmkMi0DYQoVjN2h7ta1W1hPrwzarcFLBq9UpX1UjNXsNpT9dn+chgprtWGioUAr4/g==}
- engines: {node: '>= 10'}
-
'@solana/buffer-layout-utils@0.3.0':
resolution: {integrity: sha512-MuQOCC1j0np1xH9yAv0ZWWfwvr7Bt7Sz4LId11Wi4wDdAmJ+lobE+vHg/mZmGcihF0BIkqVBNxGmlv8QE5DrtA==}
engines: {node: '>= 10'}
- '@solana/buffer-layout@4.0.0':
- resolution: {integrity: sha512-lR0EMP2HC3+Mxwd4YcnZb0smnaDw7Bl2IQWZiTevRH5ZZBZn6VRWn3/92E3qdU4SSImJkA6IDHawOHAnx/qUvQ==}
- engines: {node: '>=5.10'}
-
'@solana/buffer-layout@4.0.1':
resolution: {integrity: sha512-E1ImOIAD1tBZFRdjeM4/pzTiTApC0AOBGwyAMS4fwIodCWArzJ3DWdoh8cKxeFM2fElkxBh2Aqts1BPC373rHA==}
engines: {node: '>=5.10'}
@@ -412,9 +379,6 @@ packages:
argparse@2.0.1:
resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
- asn1.js@4.10.1:
- resolution: {integrity: sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==}
-
assertion-error@2.0.1:
resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
engines: {node: '>=12'}
@@ -438,12 +402,6 @@ packages:
bindings@1.5.0:
resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==}
- bn.js@4.12.0:
- resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==}
-
- bn.js@5.2.1:
- resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==}
-
bn.js@5.2.2:
resolution: {integrity: sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw==}
@@ -453,22 +411,9 @@ packages:
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
- brorand@1.1.0:
- resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==}
-
browser-stdout@1.3.1:
resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==}
- browserify-aes@1.2.0:
- resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==}
-
- browserify-rsa@4.1.0:
- resolution: {integrity: sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==}
-
- browserify-sign@4.2.3:
- resolution: {integrity: sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==}
- engines: {node: '>= 0.12'}
-
bs58@4.0.1:
resolution: {integrity: sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==}
@@ -476,9 +421,6 @@ packages:
resolution: {integrity: sha512-kWSuLN694+KTk8SrYvCqwP2WcgQjoRCiF5b4QDvkkz8EmgD+aWAIceGFKMIAdmF/pH+vpgNV3d3kAKorcdAmWA==}
engines: {node: '>=4.5'}
- buffer-xor@1.0.3:
- resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==}
-
buffer@6.0.3:
resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==}
@@ -506,9 +448,6 @@ packages:
resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
engines: {node: '>= 14.16.0'}
- cipher-base@1.0.4:
- resolution: {integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==}
-
cliui@8.0.1:
resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
engines: {node: '>=12'}
@@ -531,15 +470,6 @@ packages:
commander@2.20.3:
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
- core-util-is@1.0.3:
- resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
-
- create-hash@1.2.0:
- resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==}
-
- create-hmac@1.1.7:
- resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==}
-
cross-fetch@3.2.0:
resolution: {integrity: sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==}
@@ -547,13 +477,6 @@ packages:
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
engines: {node: '>= 8'}
- crypto-hash@1.3.0:
- resolution: {integrity: sha512-lyAZ0EMyjDkVvz8WOeVnuCPvKVBXcMv1l5SVqO1yC7PzTwrD/pPje/BIRbWhMoPe436U+Y2nD7f5bFx0kt+Sbg==}
- engines: {node: '>=8'}
-
- crypto-js@4.2.0:
- resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==}
-
debug@4.4.3:
resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==}
engines: {node: '>=6.0'}
@@ -575,15 +498,9 @@ packages:
resolution: {integrity: sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==}
engines: {node: '>=0.3.1'}
- dot-case@3.0.4:
- resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==}
-
eastasianwidth@0.2.0:
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
- elliptic@6.5.5:
- resolution: {integrity: sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw==}
-
emoji-regex@8.0.0:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
@@ -615,9 +532,6 @@ packages:
eventemitter3@5.0.1:
resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
- evp_bytestokey@1.0.3:
- resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==}
-
eyes@0.1.8:
resolution: {integrity: sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==}
engines: {node: '> 0.1.90'}
@@ -661,29 +575,16 @@ packages:
resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
engines: {node: '>=8'}
- hash-base@3.0.4:
- resolution: {integrity: sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==}
- engines: {node: '>=4'}
-
- hash.js@1.1.7:
- resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==}
-
he@1.2.0:
resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
hasBin: true
- hmac-drbg@1.0.1:
- resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==}
-
humanize-ms@1.2.1:
resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==}
ieee754@1.2.1:
resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
- inherits@2.0.4:
- resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
-
is-fullwidth-code-point@3.0.0:
resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
engines: {node: '>=8'}
@@ -700,9 +601,6 @@ packages:
resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==}
engines: {node: '>=10'}
- isarray@1.0.0:
- resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
-
isexe@2.0.0:
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
@@ -734,21 +632,9 @@ packages:
resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==}
engines: {node: '>=10'}
- lower-case@2.0.2:
- resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==}
-
lru-cache@10.4.3:
resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
- md5.js@1.3.5:
- resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==}
-
- minimalistic-assert@1.0.1:
- resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
-
- minimalistic-crypto-utils@1.0.1:
- resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==}
-
minimatch@9.0.9:
resolution: {integrity: sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -765,9 +651,6 @@ packages:
ms@2.1.3:
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
- no-case@3.0.4:
- resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==}
-
node-fetch@2.7.0:
resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
engines: {node: 4.x || >=6.0.0}
@@ -795,10 +678,6 @@ packages:
pako@2.1.0:
resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==}
- parse-asn1@5.1.7:
- resolution: {integrity: sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==}
- engines: {node: '>= 0.10'}
-
path-exists@4.0.0:
resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
engines: {node: '>=8'}
@@ -811,10 +690,6 @@ packages:
resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
engines: {node: '>=16 || 14 >=14.18'}
- pbkdf2@3.1.2:
- resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==}
- engines: {node: '>=0.12'}
-
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
@@ -823,15 +698,9 @@ packages:
engines: {node: '>=10.13.0'}
hasBin: true
- process-nextick-args@2.0.1:
- resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
-
randombytes@2.1.0:
resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
- readable-stream@2.3.8:
- resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
-
readdirp@4.1.2:
resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
engines: {node: '>= 14.18.0'}
@@ -840,25 +709,15 @@ packages:
resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
engines: {node: '>=0.10.0'}
- ripemd160@2.0.2:
- resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==}
-
rpc-websockets@9.2.0:
resolution: {integrity: sha512-DS/XHdPxplQTtNRKiBCRWGBJfjOk56W7fyFUpiYi9fSTWTzoEMbUkn3J4gB0IMniIEVeAGR1/rzFQogzD5MxvQ==}
- safe-buffer@5.1.2:
- resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
-
safe-buffer@5.2.1:
resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
serialize-javascript@6.0.2:
resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
- sha.js@2.4.11:
- resolution: {integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==}
- hasBin: true
-
shebang-command@2.0.0:
resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
engines: {node: '>=8'}
@@ -871,9 +730,6 @@ packages:
resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
engines: {node: '>=14'}
- snake-case@3.0.4:
- resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==}
-
stream-chain@2.2.5:
resolution: {integrity: sha512-1TJmBx6aSWqZ4tx7aTpBDXK0/e2hhcNSTV8+CbFJtDjbb+I1mZ8lHit0Grw9GRT+6JbIrrDd8esncgBi8aBXGA==}
@@ -888,9 +744,6 @@ packages:
resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
engines: {node: '>=12'}
- string_decoder@1.1.1:
- resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==}
-
strip-ansi@6.0.1:
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
engines: {node: '>=8'}
@@ -927,9 +780,6 @@ packages:
tr46@0.0.3:
resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
- tslib@2.6.2:
- resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
-
tslib@2.8.1:
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
@@ -950,9 +800,6 @@ packages:
resolution: {integrity: sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==}
engines: {node: '>=6.14.2'}
- util-deprecate@1.0.2:
- resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
-
uuid@8.3.2:
resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==}
deprecated: uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028).
@@ -1057,44 +904,6 @@ snapshots:
'@babel/runtime@7.28.4': {}
- '@coral-xyz/anchor@0.30.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
- dependencies:
- '@coral-xyz/borsh': 0.30.1(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10))
- '@noble/hashes': 1.8.0
- '@solana/web3.js': 1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
- bn.js: 5.2.2
- bs58: 4.0.1
- buffer-layout: 1.2.2
- camelcase: 6.3.0
- cross-fetch: 3.2.0
- crypto-hash: 1.3.0
- eventemitter3: 4.0.7
- pako: 2.1.0
- snake-case: 3.0.4
- superstruct: 0.15.5
- toml: 3.0.0
- transitivePeerDependencies:
- - bufferutil
- - encoding
- - typescript
- - utf-8-validate
-
- '@coral-xyz/borsh@0.30.1(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10))':
- dependencies:
- '@solana/web3.js': 1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
- bn.js: 5.2.2
- buffer-layout: 1.2.2
-
- '@coral-xyz/spl-token@0.30.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
- dependencies:
- '@coral-xyz/anchor': 0.30.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
- '@native-to-anchor/buffer-layout': 0.1.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
- transitivePeerDependencies:
- - bufferutil
- - encoding
- - typescript
- - utf-8-validate
-
'@esbuild/aix-ppc64@0.28.1':
optional: true
@@ -1182,16 +991,6 @@ snapshots:
wrap-ansi: 8.1.0
wrap-ansi-cjs: wrap-ansi@7.0.0
- '@native-to-anchor/buffer-layout@0.1.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
- dependencies:
- '@solana/buffer-layout': 4.0.0
- '@solana/buffer-layout-utils': 0.2.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
- transitivePeerDependencies:
- - bufferutil
- - encoding
- - typescript
- - utf-8-validate
-
'@noble/curves@1.9.7':
dependencies:
'@noble/hashes': 1.8.0
@@ -1201,18 +1000,6 @@ snapshots:
'@pkgjs/parseargs@0.11.0':
optional: true
- '@solana/buffer-layout-utils@0.2.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
- dependencies:
- '@solana/buffer-layout': 4.0.1
- '@solana/web3.js': 1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
- bigint-buffer: 1.1.5
- bignumber.js: 9.1.2
- transitivePeerDependencies:
- - bufferutil
- - encoding
- - typescript
- - utf-8-validate
-
'@solana/buffer-layout-utils@0.3.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
dependencies:
'@solana/buffer-layout': 4.0.1
@@ -1225,10 +1012,6 @@ snapshots:
- typescript
- utf-8-validate
- '@solana/buffer-layout@4.0.0':
- dependencies:
- buffer: 6.0.3
-
'@solana/buffer-layout@4.0.1':
dependencies:
buffer: 6.0.3
@@ -1411,12 +1194,6 @@ snapshots:
argparse@2.0.1: {}
- asn1.js@4.10.1:
- dependencies:
- bn.js: 4.12.0
- inherits: 2.0.4
- minimalistic-assert: 1.0.1
-
assertion-error@2.0.1: {}
balanced-match@1.0.2: {}
@@ -1437,10 +1214,6 @@ snapshots:
dependencies:
file-uri-to-path: 1.0.0
- bn.js@4.12.0: {}
-
- bn.js@5.2.1: {}
-
bn.js@5.2.2: {}
borsh@0.7.0:
@@ -1453,45 +1226,14 @@ snapshots:
dependencies:
balanced-match: 1.0.2
- brorand@1.1.0: {}
-
browser-stdout@1.3.1: {}
- browserify-aes@1.2.0:
- dependencies:
- buffer-xor: 1.0.3
- cipher-base: 1.0.4
- create-hash: 1.2.0
- evp_bytestokey: 1.0.3
- inherits: 2.0.4
- safe-buffer: 5.2.1
-
- browserify-rsa@4.1.0:
- dependencies:
- bn.js: 5.2.1
- randombytes: 2.1.0
-
- browserify-sign@4.2.3:
- dependencies:
- bn.js: 5.2.1
- browserify-rsa: 4.1.0
- create-hash: 1.2.0
- create-hmac: 1.1.7
- elliptic: 6.5.5
- hash-base: 3.0.4
- inherits: 2.0.4
- parse-asn1: 5.1.7
- readable-stream: 2.3.8
- safe-buffer: 5.2.1
-
bs58@4.0.1:
dependencies:
base-x: 3.0.9
buffer-layout@1.2.2: {}
- buffer-xor@1.0.3: {}
-
buffer@6.0.3:
dependencies:
base64-js: 1.5.1
@@ -1517,11 +1259,6 @@ snapshots:
dependencies:
readdirp: 4.1.2
- cipher-base@1.0.4:
- dependencies:
- inherits: 2.0.4
- safe-buffer: 5.2.1
-
cliui@8.0.1:
dependencies:
string-width: 4.2.3
@@ -1540,25 +1277,6 @@ snapshots:
commander@2.20.3: {}
- core-util-is@1.0.3: {}
-
- create-hash@1.2.0:
- dependencies:
- cipher-base: 1.0.4
- inherits: 2.0.4
- md5.js: 1.3.5
- ripemd160: 2.0.2
- sha.js: 2.4.11
-
- create-hmac@1.1.7:
- dependencies:
- cipher-base: 1.0.4
- create-hash: 1.2.0
- inherits: 2.0.4
- ripemd160: 2.0.2
- safe-buffer: 5.2.1
- sha.js: 2.4.11
-
cross-fetch@3.2.0:
dependencies:
node-fetch: 2.7.0
@@ -1571,10 +1289,6 @@ snapshots:
shebang-command: 2.0.0
which: 2.0.2
- crypto-hash@1.3.0: {}
-
- crypto-js@4.2.0: {}
-
debug@4.4.3(supports-color@8.1.1):
dependencies:
ms: 2.1.3
@@ -1587,23 +1301,8 @@ snapshots:
diff@7.0.0: {}
- dot-case@3.0.4:
- dependencies:
- no-case: 3.0.4
- tslib: 2.6.2
-
eastasianwidth@0.2.0: {}
- elliptic@6.5.5:
- dependencies:
- bn.js: 4.12.0
- brorand: 1.1.0
- hash.js: 1.1.7
- hmac-drbg: 1.0.1
- inherits: 2.0.4
- minimalistic-assert: 1.0.1
- minimalistic-crypto-utils: 1.0.1
-
emoji-regex@8.0.0: {}
emoji-regex@9.2.2: {}
@@ -1651,11 +1350,6 @@ snapshots:
eventemitter3@5.0.1: {}
- evp_bytestokey@1.0.3:
- dependencies:
- md5.js: 1.3.5
- safe-buffer: 5.2.1
-
eyes@0.1.8: {}
fast-stable-stringify@1.0.0: {}
@@ -1692,32 +1386,14 @@ snapshots:
has-flag@4.0.0: {}
- hash-base@3.0.4:
- dependencies:
- inherits: 2.0.4
- safe-buffer: 5.2.1
-
- hash.js@1.1.7:
- dependencies:
- inherits: 2.0.4
- minimalistic-assert: 1.0.1
-
he@1.2.0: {}
- hmac-drbg@1.0.1:
- dependencies:
- hash.js: 1.1.7
- minimalistic-assert: 1.0.1
- minimalistic-crypto-utils: 1.0.1
-
humanize-ms@1.2.1:
dependencies:
ms: 2.1.3
ieee754@1.2.1: {}
- inherits@2.0.4: {}
-
is-fullwidth-code-point@3.0.0: {}
is-path-inside@3.0.3: {}
@@ -1726,8 +1402,6 @@ snapshots:
is-unicode-supported@0.1.0: {}
- isarray@1.0.0: {}
-
isexe@2.0.0: {}
isomorphic-ws@4.0.1(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10)):
@@ -1773,22 +1447,8 @@ snapshots:
chalk: 4.1.2
is-unicode-supported: 0.1.0
- lower-case@2.0.2:
- dependencies:
- tslib: 2.6.2
-
lru-cache@10.4.3: {}
- md5.js@1.3.5:
- dependencies:
- hash-base: 3.0.4
- inherits: 2.0.4
- safe-buffer: 5.2.1
-
- minimalistic-assert@1.0.1: {}
-
- minimalistic-crypto-utils@1.0.1: {}
-
minimatch@9.0.9:
dependencies:
brace-expansion: 2.1.3
@@ -1821,11 +1481,6 @@ snapshots:
ms@2.1.3: {}
- no-case@3.0.4:
- dependencies:
- lower-case: 2.0.2
- tslib: 2.6.2
-
node-fetch@2.7.0:
dependencies:
whatwg-url: 5.0.0
@@ -1845,15 +1500,6 @@ snapshots:
pako@2.1.0: {}
- parse-asn1@5.1.7:
- dependencies:
- asn1.js: 4.10.1
- browserify-aes: 1.2.0
- evp_bytestokey: 1.0.3
- hash-base: 3.0.4
- pbkdf2: 3.1.2
- safe-buffer: 5.2.1
-
path-exists@4.0.0: {}
path-key@3.1.1: {}
@@ -1863,43 +1509,18 @@ snapshots:
lru-cache: 10.4.3
minipass: 7.1.3
- pbkdf2@3.1.2:
- dependencies:
- create-hash: 1.2.0
- create-hmac: 1.1.7
- ripemd160: 2.0.2
- safe-buffer: 5.2.1
- sha.js: 2.4.11
-
picocolors@1.1.1: {}
prettier@2.8.8: {}
- process-nextick-args@2.0.1: {}
-
randombytes@2.1.0:
dependencies:
safe-buffer: 5.2.1
- readable-stream@2.3.8:
- dependencies:
- core-util-is: 1.0.3
- inherits: 2.0.4
- isarray: 1.0.0
- process-nextick-args: 2.0.1
- safe-buffer: 5.1.2
- string_decoder: 1.1.1
- util-deprecate: 1.0.2
-
readdirp@4.1.2: {}
require-directory@2.1.1: {}
- ripemd160@2.0.2:
- dependencies:
- hash-base: 3.0.4
- inherits: 2.0.4
-
rpc-websockets@9.2.0:
dependencies:
'@swc/helpers': 0.5.17
@@ -1913,19 +1534,12 @@ snapshots:
bufferutil: 4.0.9
utf-8-validate: 5.0.10
- safe-buffer@5.1.2: {}
-
safe-buffer@5.2.1: {}
serialize-javascript@6.0.2:
dependencies:
randombytes: 2.1.0
- sha.js@2.4.11:
- dependencies:
- inherits: 2.0.4
- safe-buffer: 5.2.1
-
shebang-command@2.0.0:
dependencies:
shebang-regex: 3.0.0
@@ -1934,11 +1548,6 @@ snapshots:
signal-exit@4.1.0: {}
- snake-case@3.0.4:
- dependencies:
- dot-case: 3.0.4
- tslib: 2.6.2
-
stream-chain@2.2.5: {}
stream-json@1.9.1:
@@ -1957,10 +1566,6 @@ snapshots:
emoji-regex: 9.2.2
strip-ansi: 7.2.0
- string_decoder@1.1.1:
- dependencies:
- safe-buffer: 5.1.2
-
strip-ansi@6.0.1:
dependencies:
ansi-regex: 5.0.1
@@ -1989,8 +1594,6 @@ snapshots:
tr46@0.0.3: {}
- tslib@2.6.2: {}
-
tslib@2.8.1: {}
tsx@4.23.1:
@@ -2008,8 +1611,6 @@ snapshots:
node-gyp-build: 4.8.4
optional: true
- util-deprecate@1.0.2: {}
-
uuid@8.3.2: {}
webidl-conversions@3.0.1: {}
diff --git a/tokens/token-2022/nft-meta-data-pointer/app/package.json b/tokens/token-2022/nft-meta-data-pointer/app/package.json
index baf502553..31dc2387f 100644
--- a/tokens/token-2022/nft-meta-data-pointer/app/package.json
+++ b/tokens/token-2022/nft-meta-data-pointer/app/package.json
@@ -13,7 +13,6 @@
"typecheck": "pnpm run generate-client && tsc --noEmit"
},
"dependencies": {
- "@chakra-ui/next-js": "^2.1.3",
"@chakra-ui/react": "^2.6.1",
"@magicblock-labs/gum-react-sdk": "^3.0.4",
"@magicblock-labs/gum-sdk": "^3.0.5",
@@ -28,8 +27,6 @@
"@types/node": "20.2.5",
"@types/react": "18.3.31",
"@types/react-dom": "18.3.7",
- "browserify-sign": ">=4.2.2",
- "crypto-js": ">=4.2.0",
"eslint": "^9.39.5",
"eslint-config-next": "16.2.12",
"framer-motion": "^10.12.16",
diff --git a/tokens/token-2022/nft-meta-data-pointer/app/pnpm-lock.yaml b/tokens/token-2022/nft-meta-data-pointer/app/pnpm-lock.yaml
index 0d0d9ebb2..da077e276 100644
--- a/tokens/token-2022/nft-meta-data-pointer/app/pnpm-lock.yaml
+++ b/tokens/token-2022/nft-meta-data-pointer/app/pnpm-lock.yaml
@@ -8,9 +8,6 @@ importers:
.:
dependencies:
- '@chakra-ui/next-js':
- specifier: ^2.1.3
- version: 2.4.2(@chakra-ui/react@2.10.10(@emotion/react@11.14.0(@types/react@18.3.31)(react@18.3.1))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.31)(react@18.3.1))(@types/react@18.3.31)(react@18.3.1))(@types/react@18.3.31)(framer-motion@10.18.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@emotion/react@11.14.0(@types/react@18.3.31)(react@18.3.1))(next@16.2.12(@babel/core@7.29.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
'@chakra-ui/react':
specifier: ^2.6.1
version: 2.10.10(@emotion/react@11.14.0(@types/react@18.3.31)(react@18.3.1))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.31)(react@18.3.1))(@types/react@18.3.31)(react@18.3.1))(@types/react@18.3.31)(framer-motion@10.18.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -53,12 +50,6 @@ importers:
'@types/react-dom':
specifier: 18.3.7
version: 18.3.7(@types/react@18.3.31)
- browserify-sign:
- specifier: '>=4.2.2'
- version: 4.2.6
- crypto-js:
- specifier: '>=4.2.0'
- version: 4.2.0
eslint:
specifier: ^9.39.5
version: 9.39.5
@@ -175,14 +166,6 @@ packages:
peerDependencies:
react: '>=18'
- '@chakra-ui/next-js@2.4.2':
- resolution: {integrity: sha512-loo82RyPbMyvJwRhhZVZovut9v2hFBSkqd1vQoNXgMrCRApLwrrttu5Iuodns15gLE3mqI+it5oEhxTtO5DrxA==}
- peerDependencies:
- '@chakra-ui/react': '>=2.4.0'
- '@emotion/react': '>=11'
- next: '>=13'
- react: '>=18'
-
'@chakra-ui/react@2.10.10':
resolution: {integrity: sha512-uahxAfb83/O9fcgBm3ew/nVeQiNgE0uQf8NdQQp3I6u/PCuR2OjSEneV4Ba86W8z50Ppwcxvf9XDk5btYceggQ==}
peerDependencies:
@@ -2293,9 +2276,6 @@ packages:
asap@2.0.6:
resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==}
- asn1.js@4.10.1:
- resolution: {integrity: sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==}
-
ast-types-flow@0.0.8:
resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==}
@@ -2349,9 +2329,6 @@ packages:
engines: {node: '>=6.0.0'}
hasBin: true
- bn.js@4.12.5:
- resolution: {integrity: sha512-3aRg6/JxfffFD+OlOjOFR3Vo79l39ooBTFucxx+MT3dhCtzn3EmiUPQo+6/OZuI2jbXi3YKgmiTFBgChQMwIRQ==}
-
bn.js@5.2.5:
resolution: {integrity: sha512-Vq886eXykuP5E6HcKSSStP3bJgrE6In5WKxVUvJ8XGpWWYs2xZHWqUwzCtGgEtBcxyd57KBFDPFoUfNzdaHCNg==}
@@ -2369,20 +2346,6 @@ packages:
resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
engines: {node: '>=8'}
- brorand@1.1.0:
- resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==}
-
- browserify-aes@1.2.0:
- resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==}
-
- browserify-rsa@4.1.1:
- resolution: {integrity: sha512-YBjSAiTqM04ZVei6sXighu679a3SqWORA3qZTEqZImnlkDIFtKc6pNutpjyZ8RJTjQtuYfeetkxM11GwoYXMIQ==}
- engines: {node: '>= 0.10'}
-
- browserify-sign@4.2.6:
- resolution: {integrity: sha512-sd+Q65fjlWCYWtZKXiKfrUc8d+4jtp/8f0W2NkwzLtoW4bI6UDnWusLWIurHnmurW0XShIRxpwiOX4EoPtXUAg==}
- engines: {node: '>= 0.10'}
-
browserslist@4.28.7:
resolution: {integrity: sha512-JxV13hNrFxqjOc8alRbq9dK1MM79NEXYpma2B2J4wAtpWS5zIEIKqWPGCl7N4o7Uc7B7itylh7SuDujATRyyTw==}
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
@@ -2404,9 +2367,6 @@ packages:
resolution: {integrity: sha512-kWSuLN694+KTk8SrYvCqwP2WcgQjoRCiF5b4QDvkkz8EmgD+aWAIceGFKMIAdmF/pH+vpgNV3d3kAKorcdAmWA==}
engines: {node: '>=4.5'}
- buffer-xor@1.0.3:
- resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==}
-
buffer@6.0.3:
resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==}
@@ -2464,10 +2424,6 @@ packages:
resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==}
engines: {node: '>=8'}
- cipher-base@1.0.7:
- resolution: {integrity: sha512-Mz9QMT5fJe7bKI7MH31UilT5cEK5EHHRCccw/YRFsRY47AuNgaV6HY3rscp0/I4Q+tTW/5zoqpSeRRI54TkDWA==}
- engines: {node: '>= 0.10'}
-
client-only@0.0.1:
resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==}
@@ -2535,19 +2491,10 @@ packages:
copy-to-clipboard@3.3.3:
resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==}
- core-util-is@1.0.3:
- resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
-
cosmiconfig@7.1.0:
resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==}
engines: {node: '>=10'}
- create-hash@1.2.0:
- resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==}
-
- create-hmac@1.1.7:
- resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==}
-
cross-fetch@3.2.0:
resolution: {integrity: sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==}
@@ -2666,9 +2613,6 @@ packages:
electron-to-chromium@1.5.396:
resolution: {integrity: sha512-yHiw2Y3C3H9U6TMbOfoWK/BPreiOPXRfTWPBwQBoZG6/8TB6eOPnsy5oaRYuatR7Fw2SJ4kKforgufeo7fq0EQ==}
- elliptic@6.6.1:
- resolution: {integrity: sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==}
-
emoji-regex@8.0.0:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
@@ -2881,9 +2825,6 @@ packages:
eventemitter3@5.0.4:
resolution: {integrity: sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==}
- evp_bytestokey@1.0.3:
- resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==}
-
exponential-backoff@3.1.3:
resolution: {integrity: sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==}
@@ -3115,13 +3056,6 @@ packages:
resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
engines: {node: '>= 0.4'}
- hash-base@3.1.2:
- resolution: {integrity: sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg==}
- engines: {node: '>= 0.8'}
-
- hash.js@1.1.7:
- resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==}
-
hasown@2.0.4:
resolution: {integrity: sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==}
engines: {node: '>= 0.4'}
@@ -3147,9 +3081,6 @@ packages:
hermes-parser@0.36.0:
resolution: {integrity: sha512-GdpwMmH5x6IpC1cijvcvYnlPB60Mh6kTSF/NFdYV/j56gYdi+0RIakYs+eqOV+bbO0SW7mgVVGSsTJxyPQfo3w==}
- hmac-drbg@1.0.1:
- resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==}
-
hoist-non-react-statics@3.3.2:
resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==}
@@ -3329,9 +3260,6 @@ packages:
resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
engines: {node: '>=8'}
- isarray@1.0.0:
- resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
-
isarray@2.0.5:
resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
@@ -3486,9 +3414,6 @@ packages:
resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
engines: {node: '>= 0.4'}
- md5.js@1.3.5:
- resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==}
-
memoize-one@5.2.1:
resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==}
@@ -3586,12 +3511,6 @@ packages:
engines: {node: '>=4'}
hasBin: true
- minimalistic-assert@1.0.1:
- resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
-
- minimalistic-crypto-utils@1.0.1:
- resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==}
-
minimatch@10.2.5:
resolution: {integrity: sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==}
engines: {node: 18 || 20 || >=22}
@@ -3768,10 +3687,6 @@ packages:
resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
engines: {node: '>=6'}
- parse-asn1@5.1.9:
- resolution: {integrity: sha512-fIYNuZ/HastSb80baGOuPRo1O9cf4baWw5WsAp7dBuUzeTD/BoaG8sVTdlPFksBE2lF21dN+A1AnrpIjSWqHHg==}
- engines: {node: '>= 0.10'}
-
parse-json@5.2.0:
resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
engines: {node: '>=8'}
@@ -3795,10 +3710,6 @@ packages:
resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
engines: {node: '>=8'}
- pbkdf2@3.1.6:
- resolution: {integrity: sha512-BT6eelPB1EyGHo8pC0o9Bl6k6SYVhKO1jEbd3lcTrtr7XHdjP8BW1YpfCV3G9Kwkxgattk+S5q2/RvuttCsS1g==}
- engines: {node: '>= 0.10'}
-
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
@@ -3835,9 +3746,6 @@ packages:
resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
- process-nextick-args@2.0.1:
- resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
-
promise@8.3.0:
resolution: {integrity: sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==}
@@ -3961,9 +3869,6 @@ packages:
resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==}
engines: {node: '>=0.10.0'}
- readable-stream@2.3.8:
- resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
-
reflect.getprototypeof@1.0.10:
resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==}
engines: {node: '>= 0.4'}
@@ -4003,10 +3908,6 @@ packages:
resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==}
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
- ripemd160@2.0.3:
- resolution: {integrity: sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA==}
- engines: {node: '>= 0.8'}
-
rpc-websockets@9.3.9:
resolution: {integrity: sha512-2iQDaTB4g5fDB2ihrTFSJSibCEuxaRi1q7qTW7ZO9/M5/TC+ToHA4D9/ffNLEbAoHNNrcdeP05oATNk44SKZXA==}
@@ -4017,9 +3918,6 @@ packages:
resolution: {integrity: sha512-wtZlHyOje6OZTGqAoaDKxFkgRtkF9CnHAVnCHKfuj200wAgL+bSJhdsCD2l0Qx/2ekEXjPWcyKkfGb5CPboslg==}
engines: {node: '>=0.4'}
- safe-buffer@5.1.2:
- resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
-
safe-buffer@5.2.1:
resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
@@ -4076,11 +3974,6 @@ packages:
setprototypeof@1.2.0:
resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
- sha.js@2.4.12:
- resolution: {integrity: sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w==}
- engines: {node: '>= 0.10'}
- hasBin: true
-
sharp@0.34.5:
resolution: {integrity: sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
@@ -4189,9 +4082,6 @@ packages:
resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==}
engines: {node: '>= 0.4'}
- string_decoder@1.1.1:
- resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==}
-
strip-ansi@6.0.1:
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
engines: {node: '>=8'}
@@ -4257,10 +4147,6 @@ packages:
tmpl@1.0.5:
resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==}
- to-buffer@1.2.2:
- resolution: {integrity: sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw==}
- engines: {node: '>= 0.4'}
-
to-regex-range@5.0.1:
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
engines: {node: '>=8.0'}
@@ -4384,9 +4270,6 @@ packages:
resolution: {integrity: sha512-q3l3P9UtEEiAHcsgsqTgf9PPjctrDWoIXW3NpOHFdRDbLvu4DLIcxHangJ4RLrWkBcKjmcs/6NkerI8T/rE4LA==}
engines: {node: '>=6.14.2'}
- util-deprecate@1.0.2:
- resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
-
utils-merge@1.0.1:
resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==}
engines: {node: '>= 0.4.0'}
@@ -4637,14 +4520,6 @@ snapshots:
framesync: 6.1.2
react: 18.3.1
- '@chakra-ui/next-js@2.4.2(@chakra-ui/react@2.10.10(@emotion/react@11.14.0(@types/react@18.3.31)(react@18.3.1))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.31)(react@18.3.1))(@types/react@18.3.31)(react@18.3.1))(@types/react@18.3.31)(framer-motion@10.18.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@emotion/react@11.14.0(@types/react@18.3.31)(react@18.3.1))(next@16.2.12(@babel/core@7.29.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)':
- dependencies:
- '@chakra-ui/react': 2.10.10(@emotion/react@11.14.0(@types/react@18.3.31)(react@18.3.1))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.31)(react@18.3.1))(@types/react@18.3.31)(react@18.3.1))(@types/react@18.3.31)(framer-motion@10.18.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- '@emotion/cache': 11.14.0
- '@emotion/react': 11.14.0(@types/react@18.3.31)(react@18.3.1)
- next: 16.2.12(@babel/core@7.29.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- react: 18.3.1
-
'@chakra-ui/react@2.10.10(@emotion/react@11.14.0(@types/react@18.3.31)(react@18.3.1))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@18.3.31)(react@18.3.1))(@types/react@18.3.31)(react@18.3.1))(@types/react@18.3.31)(framer-motion@10.18.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
'@chakra-ui/hooks': 2.4.6(react@18.3.1)
@@ -7020,12 +6895,6 @@ snapshots:
asap@2.0.6: {}
- asn1.js@4.10.1:
- dependencies:
- bn.js: 4.12.5
- inherits: 2.0.4
- minimalistic-assert: 1.0.1
-
ast-types-flow@0.0.8: {}
async-function@1.0.0: {}
@@ -7074,8 +6943,6 @@ snapshots:
baseline-browser-mapping@2.11.5: {}
- bn.js@4.12.5: {}
-
bn.js@5.2.5: {}
borsh@0.7.0:
@@ -7097,35 +6964,6 @@ snapshots:
dependencies:
fill-range: 7.1.1
- brorand@1.1.0: {}
-
- browserify-aes@1.2.0:
- dependencies:
- buffer-xor: 1.0.3
- cipher-base: 1.0.7
- create-hash: 1.2.0
- evp_bytestokey: 1.0.3
- inherits: 2.0.4
- safe-buffer: 5.2.1
-
- browserify-rsa@4.1.1:
- dependencies:
- bn.js: 5.2.5
- randombytes: 2.1.0
- safe-buffer: 5.2.1
-
- browserify-sign@4.2.6:
- dependencies:
- bn.js: 5.2.5
- browserify-rsa: 4.1.1
- create-hash: 1.2.0
- create-hmac: 1.1.7
- elliptic: 6.6.1
- inherits: 2.0.4
- parse-asn1: 5.1.9
- readable-stream: 2.3.8
- safe-buffer: 5.2.1
-
browserslist@4.28.7:
dependencies:
baseline-browser-mapping: 2.11.5
@@ -7150,8 +6988,6 @@ snapshots:
buffer-layout@1.2.2: {}
- buffer-xor@1.0.3: {}
-
buffer@6.0.3:
dependencies:
base64-js: 1.5.1
@@ -7217,12 +7053,6 @@ snapshots:
ci-info@3.9.0: {}
- cipher-base@1.0.7:
- dependencies:
- inherits: 2.0.4
- safe-buffer: 5.2.1
- to-buffer: 1.2.2
-
client-only@0.0.1: {}
cliui@6.0.0:
@@ -7288,8 +7118,6 @@ snapshots:
dependencies:
toggle-selection: 1.0.6
- core-util-is@1.0.3: {}
-
cosmiconfig@7.1.0:
dependencies:
'@types/parse-json': 4.0.2
@@ -7298,23 +7126,6 @@ snapshots:
path-type: 4.0.0
yaml: 1.10.3
- create-hash@1.2.0:
- dependencies:
- cipher-base: 1.0.7
- inherits: 2.0.4
- md5.js: 1.3.5
- ripemd160: 2.0.3
- sha.js: 2.4.12
-
- create-hmac@1.1.7:
- dependencies:
- cipher-base: 1.0.7
- create-hash: 1.2.0
- inherits: 2.0.4
- ripemd160: 2.0.3
- safe-buffer: 5.2.1
- sha.js: 2.4.12
-
cross-fetch@3.2.0:
dependencies:
node-fetch: 2.7.0
@@ -7417,16 +7228,6 @@ snapshots:
electron-to-chromium@1.5.396: {}
- elliptic@6.6.1:
- dependencies:
- bn.js: 4.12.5
- brorand: 1.1.0
- hash.js: 1.1.7
- hmac-drbg: 1.0.1
- inherits: 2.0.4
- minimalistic-assert: 1.0.1
- minimalistic-crypto-utils: 1.0.1
-
emoji-regex@8.0.0: {}
emoji-regex@9.2.2: {}
@@ -7806,11 +7607,6 @@ snapshots:
eventemitter3@5.0.4: {}
- evp_bytestokey@1.0.3:
- dependencies:
- md5.js: 1.3.5
- safe-buffer: 5.2.1
-
exponential-backoff@3.1.3: {}
extract-files@9.0.0: {}
@@ -8037,18 +7833,6 @@ snapshots:
dependencies:
has-symbols: 1.1.0
- hash-base@3.1.2:
- dependencies:
- inherits: 2.0.4
- readable-stream: 2.3.8
- safe-buffer: 5.2.1
- to-buffer: 1.2.2
-
- hash.js@1.1.7:
- dependencies:
- inherits: 2.0.4
- minimalistic-assert: 1.0.1
-
hasown@2.0.4:
dependencies:
function-bind: 1.1.2
@@ -8073,12 +7857,6 @@ snapshots:
dependencies:
hermes-estree: 0.36.0
- hmac-drbg@1.0.1:
- dependencies:
- hash.js: 1.1.7
- minimalistic-assert: 1.0.1
- minimalistic-crypto-utils: 1.0.1
-
hoist-non-react-statics@3.3.2:
dependencies:
react-is: 16.13.1
@@ -8267,8 +8045,6 @@ snapshots:
dependencies:
is-docker: 2.2.1
- isarray@1.0.0: {}
-
isarray@2.0.5: {}
isexe@2.0.0: {}
@@ -8438,12 +8214,6 @@ snapshots:
math-intrinsics@1.1.0: {}
- md5.js@1.3.5:
- dependencies:
- hash-base: 3.1.2
- inherits: 2.0.4
- safe-buffer: 5.2.1
-
memoize-one@5.2.1: {}
merge-options@3.0.4:
@@ -8648,10 +8418,6 @@ snapshots:
mime@1.6.0: {}
- minimalistic-assert@1.0.1: {}
-
- minimalistic-crypto-utils@1.0.1: {}
-
minimatch@10.2.5:
dependencies:
brace-expansion: 5.0.8
@@ -8826,14 +8592,6 @@ snapshots:
dependencies:
callsites: 3.1.0
- parse-asn1@5.1.9:
- dependencies:
- asn1.js: 4.10.1
- browserify-aes: 1.2.0
- evp_bytestokey: 1.0.3
- pbkdf2: 3.1.6
- safe-buffer: 5.2.1
-
parse-json@5.2.0:
dependencies:
'@babel/code-frame': 7.29.7
@@ -8851,15 +8609,6 @@ snapshots:
path-type@4.0.0: {}
- pbkdf2@3.1.6:
- dependencies:
- create-hash: 1.2.0
- create-hmac: 1.1.7
- ripemd160: 2.0.3
- safe-buffer: 5.2.1
- sha.js: 2.4.12
- to-buffer: 1.2.2
-
picocolors@1.1.1: {}
picomatch@2.3.2: {}
@@ -8886,8 +8635,6 @@ snapshots:
ansi-styles: 5.2.0
react-is: 18.3.1
- process-nextick-args@2.0.1: {}
-
promise@8.3.0:
dependencies:
asap: 2.0.6
@@ -9042,16 +8789,6 @@ snapshots:
dependencies:
loose-envify: 1.4.0
- readable-stream@2.3.8:
- dependencies:
- core-util-is: 1.0.3
- inherits: 2.0.4
- isarray: 1.0.0
- process-nextick-args: 2.0.1
- safe-buffer: 5.1.2
- string_decoder: 1.1.1
- util-deprecate: 1.0.2
-
reflect.getprototypeof@1.0.10:
dependencies:
call-bind: 1.0.9
@@ -9100,11 +8837,6 @@ snapshots:
reusify@1.1.0: {}
- ripemd160@2.0.3:
- dependencies:
- hash-base: 3.1.2
- inherits: 2.0.4
-
rpc-websockets@9.3.9:
dependencies:
'@swc/helpers': 0.5.23
@@ -9130,8 +8862,6 @@ snapshots:
has-symbols: 1.1.0
isarray: 2.0.5
- safe-buffer@5.1.2: {}
-
safe-buffer@5.2.1: {}
safe-push-apply@1.0.0:
@@ -9210,12 +8940,6 @@ snapshots:
setprototypeof@1.2.0: {}
- sha.js@2.4.12:
- dependencies:
- inherits: 2.0.4
- safe-buffer: 5.2.1
- to-buffer: 1.2.2
-
sharp@0.34.5:
dependencies:
'@img/colour': 1.1.0
@@ -9382,10 +9106,6 @@ snapshots:
define-properties: 1.2.1
es-object-atoms: 1.1.2
- string_decoder@1.1.1:
- dependencies:
- safe-buffer: 5.1.2
-
strip-ansi@6.0.1:
dependencies:
ansi-regex: 5.0.1
@@ -9435,12 +9155,6 @@ snapshots:
tmpl@1.0.5: {}
- to-buffer@1.2.2:
- dependencies:
- isarray: 2.0.5
- safe-buffer: 5.2.1
- typed-array-buffer: 1.0.3
-
to-regex-range@5.0.1:
dependencies:
is-number: 7.0.0
@@ -9596,8 +9310,6 @@ snapshots:
node-gyp-build: 4.8.4
optional: true
- util-deprecate@1.0.2: {}
-
utils-merge@1.0.1: {}
uuid@14.0.1: {}
diff --git a/tokens/token-2022/permanent-delegate/anchor/package.json b/tokens/token-2022/permanent-delegate/anchor/package.json
index 51e8c8892..37cc6ff87 100644
--- a/tokens/token-2022/permanent-delegate/anchor/package.json
+++ b/tokens/token-2022/permanent-delegate/anchor/package.json
@@ -9,7 +9,6 @@
"@solana/spl-token": "^0.4.6"
},
"devDependencies": {
- "@types/bn.js": "^5.1.0",
"@types/chai": "^5.2.3",
"@types/mocha": "^10.0.10",
"chai": "^6.2.2",
diff --git a/tokens/token-2022/permanent-delegate/anchor/pnpm-lock.yaml b/tokens/token-2022/permanent-delegate/anchor/pnpm-lock.yaml
index 9994dc9d6..07e64e626 100644
--- a/tokens/token-2022/permanent-delegate/anchor/pnpm-lock.yaml
+++ b/tokens/token-2022/permanent-delegate/anchor/pnpm-lock.yaml
@@ -15,9 +15,6 @@ importers:
specifier: ^0.4.6
version: 0.4.6(@solana/web3.js@1.98.4(bufferutil@4.0.8)(typescript@5.9.3)(utf-8-validate@5.0.10))(bufferutil@4.0.8)(fastestsmallesttextencoderdecoder@1.0.22)(utf-8-validate@5.0.10)
devDependencies:
- '@types/bn.js':
- specifier: ^5.1.0
- version: 5.1.5
'@types/chai':
specifier: ^5.2.3
version: 5.2.3
@@ -328,9 +325,6 @@ packages:
'@swc/helpers@0.5.17':
resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==}
- '@types/bn.js@5.1.5':
- resolution: {integrity: sha512-V46N0zwKRF5Q00AZ6hWtN0T8gGmDUaUzLWQvHFo5yThtVwK/VCenFY3wXVbOvNfajEpsTfQM4IN9k/d6gUVX3A==}
-
'@types/chai@5.2.3':
resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
@@ -748,6 +742,7 @@ packages:
rpc-websockets@7.11.0:
resolution: {integrity: sha512-IkLYjayPv6Io8C/TdCL5gwgzd1hFz2vmBZrjMw/SPEXo51ETOhnzgS4Qy5GWi2JQN7HKHa66J3+2mv0fgNh/7w==}
+ deprecated: deprecate 7.11.0
rpc-websockets@9.2.0:
resolution: {integrity: sha512-DS/XHdPxplQTtNRKiBCRWGBJfjOk56W7fyFUpiYi9fSTWTzoEMbUkn3J4gB0IMniIEVeAGR1/rzFQogzD5MxvQ==}
@@ -1236,10 +1231,6 @@ snapshots:
dependencies:
tslib: 2.8.1
- '@types/bn.js@5.1.5':
- dependencies:
- '@types/node': 26.1.2
-
'@types/chai@5.2.3':
dependencies:
'@types/deep-eql': 4.0.2
diff --git a/tokens/token-2022/transfer-hook/account-data-as-seed/anchor/tests/transfer-hook.ts b/tokens/token-2022/transfer-hook/account-data-as-seed/anchor/tests/transfer-hook.ts
index ace7fc49b..ae31fc6b5 100644
--- a/tokens/token-2022/transfer-hook/account-data-as-seed/anchor/tests/transfer-hook.ts
+++ b/tokens/token-2022/transfer-hook/account-data-as-seed/anchor/tests/transfer-hook.ts
@@ -20,7 +20,6 @@ import {
sendAndConfirmTransaction,
Transaction,
} from '@solana/web3.js';
-import { BN } from 'bn.js';
import { expect, use } from 'chai';
import chaiAsPromised from 'chai-as-promised';
import type { TransferHook } from '../target/types/transfer_hook';
@@ -193,7 +192,7 @@ describe('transfer-hook', () => {
it('Try call transfer hook without transfer', async () => {
const transferHookIx = await program.methods
- .transferHook(new BN(1))
+ .transferHook(new anchor.BN(1))
.accounts({
sourceToken: sourceTokenAccount,
mint: mint.publicKey,
diff --git a/tokens/token-2022/transfer-hook/counter/anchor/tests/transfer-hook.ts b/tokens/token-2022/transfer-hook/counter/anchor/tests/transfer-hook.ts
index a51eab0f5..5967de613 100644
--- a/tokens/token-2022/transfer-hook/counter/anchor/tests/transfer-hook.ts
+++ b/tokens/token-2022/transfer-hook/counter/anchor/tests/transfer-hook.ts
@@ -20,7 +20,6 @@ import {
sendAndConfirmTransaction,
Transaction,
} from '@solana/web3.js';
-import { BN } from 'bn.js';
import { expect, use } from 'chai';
import chaiAsPromised from 'chai-as-promised';
import type { TransferHook } from '../target/types/transfer_hook';
@@ -190,7 +189,7 @@ describe('transfer-hook', () => {
it('Try call transfer hook without transfer', async () => {
const transferHookIx = await program.methods
- .transferHook(new BN(1))
+ .transferHook(new anchor.BN(1))
.accounts({
sourceToken: sourceTokenAccount,
mint: mint.publicKey,
diff --git a/tokens/token-2022/transfer-hook/hello-world/anchor/tests/transfer-hook.ts b/tokens/token-2022/transfer-hook/hello-world/anchor/tests/transfer-hook.ts
index a5760a34a..6141d9092 100644
--- a/tokens/token-2022/transfer-hook/hello-world/anchor/tests/transfer-hook.ts
+++ b/tokens/token-2022/transfer-hook/hello-world/anchor/tests/transfer-hook.ts
@@ -9,7 +9,6 @@ import {
TOKEN_2022_PROGRAM_ID,
} from '@solana/spl-token';
import { Keypair, SendTransactionError, sendAndConfirmTransaction, Transaction } from '@solana/web3.js';
-import { BN } from 'bn.js';
import { expect, use } from 'chai';
import chaiAsPromised from 'chai-as-promised';
import type { TransferHook } from '../target/types/transfer_hook';
@@ -140,7 +139,7 @@ describe('transfer-hook', () => {
it('Try call transfer hook without transfer', async () => {
const transferHookIx = await program.methods
- .transferHook(new BN(1))
+ .transferHook(new anchor.BN(1))
.accounts({
sourceToken: sourceTokenAccount,
mint: mint.publicKey,
diff --git a/tokens/token-2022/transfer-hook/transfer-switch/anchor/package.json b/tokens/token-2022/transfer-hook/transfer-switch/anchor/package.json
index 38b7dac66..de7e4ea83 100644
--- a/tokens/token-2022/transfer-hook/transfer-switch/anchor/package.json
+++ b/tokens/token-2022/transfer-hook/transfer-switch/anchor/package.json
@@ -2,7 +2,10 @@
"type": "module",
"dependencies": {
"@anchor-lang/core": "1.0.0-rc.5",
+ "@solana-program/token-2022": "^0.15.0",
+ "@solana/kit": "^7.0.0",
"@solana/spl-token": "^0.4.0",
+ "@solana/sysvars": "^7.0.0",
"@solana/web3.js": "^1.98.4"
},
"devDependencies": {
diff --git a/tokens/token-2022/transfer-hook/transfer-switch/anchor/pnpm-lock.yaml b/tokens/token-2022/transfer-hook/transfer-switch/anchor/pnpm-lock.yaml
index e47b06cbe..90de638d2 100644
--- a/tokens/token-2022/transfer-hook/transfer-switch/anchor/pnpm-lock.yaml
+++ b/tokens/token-2022/transfer-hook/transfer-switch/anchor/pnpm-lock.yaml
@@ -14,9 +14,18 @@ importers:
'@anchor-lang/core':
specifier: 1.0.0-rc.5
version: 1.0.0-rc.5(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana-program/token-2022':
+ specifier: ^0.15.0
+ version: 0.15.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))(@solana/sysvars@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))
+ '@solana/kit':
+ specifier: ^7.0.0
+ version: 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
'@solana/spl-token':
specifier: ^0.4.0
version: 0.4.6(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/sysvars':
+ specifier: ^7.0.0
+ version: 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
'@solana/web3.js':
specifier: ^1.98.4
version: 1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
@@ -264,6 +273,60 @@ packages:
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
+ '@solana-program/record@0.3.0':
+ resolution: {integrity: sha512-q8z86INfXRQ5357qgVBrw05vC+u3xg8Vb4E1gEwnYUvAkL3cbJSjWVfTlGRiGWYmPNq/FYIWbsFrhsxXyhaJ+w==}
+ engines: {node: '>=24.0.0'}
+ peerDependencies:
+ '@solana/kit': ^7.0.0
+
+ '@solana-program/system@0.13.0':
+ resolution: {integrity: sha512-Id6QQxCG7ByImXPD5X/c3Ag2kySD+49aJ9waIkfxyUFyokhMQgxYQAx2rKuaygaBlaBQY6VVfBS46pqxZV+99A==}
+ peerDependencies:
+ '@solana/kit': ^7.0.0
+
+ '@solana-program/token-2022@0.15.0':
+ resolution: {integrity: sha512-Q9vR9kzP+l9AVWt2Uj5nH44BrnotiLFmX3AYDgsFQfuTla9n66RokNPGaSrCMUvQS0xRBv/u9BhH4p39qdB9Hw==}
+ engines: {node: '>=24.0.0'}
+ peerDependencies:
+ '@solana/kit': ^7.0.0
+ '@solana/sysvars': ^7.0.0
+ '@solana/zk-sdk': ^0.5.1
+ peerDependenciesMeta:
+ '@solana/zk-sdk':
+ optional: true
+
+ '@solana-program/zk-elgamal-proof@0.3.2':
+ resolution: {integrity: sha512-bCiRVKtqYZpajgC2RVypZL4A0xHjQYVEsVSNMTtPJ1jjE5KOUvsXhnngGMYShK6BHv+fQP4F8QKvEVW/HOSFAg==}
+ peerDependencies:
+ '@solana/kit': ^7.0.0
+
+ '@solana/accounts@7.1.0':
+ resolution: {integrity: sha512-0Vp2advYsTb7eb0jZveXZJaux6OSYcI3nitwoXOTZzCuzjbIjiHI/bpn3CcqfKBPW/1dnCIWAW7VW1otqH0a1w==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/addresses@7.1.0':
+ resolution: {integrity: sha512-kA/aav0TdyhrXCG6VCGG/fTuGu4ix5UW2PxtsbpBdZcyi+3TznLS1xKzIZBzqn0DL0q6HKdud6Ene7DWZDH1lw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/assertions@7.1.0':
+ resolution: {integrity: sha512-LD9+fhZb/xBECl27gfxDEX+qyj4PRV6700RJuprJWNMvGd8v0eoO0N+0QwnopK7o7O4w3DaW9/a3jH+iiwEqzw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/buffer-layout-utils@0.2.0':
resolution: {integrity: sha512-szG4sxgJGktbuZYDg2FfNmkMi0DYQoVjN2h7ta1W1hPrwzarcFLBq9UpX1UjNXsNpT9dn+chgprtWGioUAr4/g==}
engines: {node: '>= 10'}
@@ -281,9 +344,27 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/codecs-core@7.1.0':
+ resolution: {integrity: sha512-pl1gCCvviKekrijEDieZ1ps3LjC6ova2pZ/ZBXEJJa46nF7M0hwdZe/KzbMxKQ8WtT/WqW8Uyh6JQt8IJcMgRw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-data-structures@2.0.0-preview.2':
resolution: {integrity: sha512-Xf5vIfromOZo94Q8HbR04TbgTwzigqrKII0GjYr21K7rb3nba4hUW2ir8kguY7HWFBcjHGlU5x3MevKBOLp3Zg==}
+ '@solana/codecs-data-structures@7.1.0':
+ resolution: {integrity: sha512-yCwyXCD1qtj0qJwCLQVS9aojKDio7t8kqXQVhLfasYFsckvecK+OObkoILkBXBJVmpOXI8nRYwNAb63+CvJo/g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-numbers@2.0.0-preview.2':
resolution: {integrity: sha512-aLZnDTf43z4qOnpTcDsUVy1Ci9im1Md8thWipSWbE+WM9ojZAx528oAql+Cv8M8N+6ALKwgVRhPZkto6E59ARw==}
@@ -293,14 +374,44 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/codecs-numbers@7.1.0':
+ resolution: {integrity: sha512-Hfw5OXx7tbSJ4iQ0r1ar6D+7XixkX8K36ni9cHDrunpiTo9SLIE0Lzj9/889aPNv4J4JggW1bpqzcrz3RI/o5g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-strings@2.0.0-preview.2':
resolution: {integrity: sha512-EgBwY+lIaHHgMJIqVOGHfIfpdmmUDNoNO/GAUGeFPf+q0dF+DtwhJPEMShhzh64X2MeCZcmSO6Kinx0Bvmmz2g==}
peerDependencies:
fastestsmallesttextencoderdecoder: ^1.0.22
+ '@solana/codecs-strings@7.1.0':
+ resolution: {integrity: sha512-YIv/XVDYTzkYiFRdbjK6tI1BUKNlV1ta5hl9oK6+CoCDZn7nECfAN96KPYs94jzbN5VgMgbEqi6tlQcdy5KuCg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ fastestsmallesttextencoderdecoder: ^1.0.22
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ fastestsmallesttextencoderdecoder:
+ optional: true
+ typescript:
+ optional: true
+
'@solana/codecs@2.0.0-preview.2':
resolution: {integrity: sha512-4HHzCD5+pOSmSB71X6w9ptweV48Zj1Vqhe732+pcAQ2cMNnN0gMPMdDq7j3YwaZDZ7yrILVV/3+HTnfT77t2yA==}
+ '@solana/codecs@7.1.0':
+ resolution: {integrity: sha512-4M1MgIiRX46qMUnrUjVnRnTxETmCZ7VLWddMdf+t6y3aVsMzz8kd9ngH7NloFhHtnAO0n3qJjs2rdgx/Dxd3Zg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/errors@2.0.0-preview.2':
resolution: {integrity: sha512-H2DZ1l3iYF5Rp5pPbJpmmtCauWeQXRJapkDg8epQ8BJ7cA2Ut/QEtC3CMmw/iMTcuS6uemFNLcWvlOfoQhvQuA==}
hasBin: true
@@ -312,9 +423,271 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/errors@7.1.0':
+ resolution: {integrity: sha512-sJ0mM6SHN7fa6auHARRAGjjDpkFzhx6jmgHZAjliC/xADMfI2IYrTnAwguRV9dVBOsEHicylIXszvsyRb6BmEw==}
+ engines: {node: '>=20.18.0'}
+ hasBin: true
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/fast-stable-stringify@7.1.0':
+ resolution: {integrity: sha512-DV35b2DoqFwQlO7acwi0WG47oLSORGep7/lTkd/VrCB/MdM0J5TggQ0gRqc9v3ORBDQHcOYmMx6ym4Obqd1EFg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/fixed-points@7.1.0':
+ resolution: {integrity: sha512-xyVO7h8woz53L5dz9pV5akdf/EcluEvtV85cYtca1pp0ZpdcdnGQ2yve3mN/GuOEb+Ixzthrew2p0c5h9w4Bhg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/functional@7.1.0':
+ resolution: {integrity: sha512-1yfUFHkeMvrD/6yTDu3op3CgWIfr1KAvHo3XQL6yBvz0miEbiQ6tAEZbrwHpudES43sG8ZvlgrkL0Oiu5KwC9g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/instruction-plans@7.1.0':
+ resolution: {integrity: sha512-Ug7YSchE8Oq8PsaKYlr8IH0woYjmAgi7JdVwd1wtE1pReHvufH63WUsE6B6guqIkQPxiLZL/tmODzKas2zlVtA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/instructions@7.1.0':
+ resolution: {integrity: sha512-KnXUtSIbKCUjlposzfikAO3qSVliOSoMBzglQYSn3e0x0PpJ2MsVH6tzzI6v124YVhs0OSs5wFwYjENTedPgcg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/keys@7.1.0':
+ resolution: {integrity: sha512-BGRkTPeBIKPojwVEdYaBXtLMQ0fp8xtQiRxDhOSyYpd1bz52K4bmvrugVtSqfjWLVO+I8SRZGpSZq2G5+DgR1Q==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/kit@7.1.0':
+ resolution: {integrity: sha512-UvzQhbn7ITjoBIinGz7rrdPSfkE8/bl+c6TISTLOXiW5hZw16mKOAkK28duP6bJutgQ57L0oJ4HYu5BTzAznOg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/nominal-types@7.1.0':
+ resolution: {integrity: sha512-oN+gGAqBnGc/iGIq5i4Q/+VFyTqbh0wpLnWTtMbFpXmevrdX3IPPBW5Z76ysZtTtv+M4Ha64kqc2upLJBUGM0A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/offchain-messages@7.1.0':
+ resolution: {integrity: sha512-nQBqXNLjDvUybc6oRS936gHLGzKwKy9fSlUV4OPo1mLG5V8TcW+jhCc1UOJdmfj0FYDDq5rzqmFTVK4yEu7brw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/options@2.0.0-preview.2':
resolution: {integrity: sha512-FAHqEeH0cVsUOTzjl5OfUBw2cyT8d5Oekx4xcn5hn+NyPAfQJgM3CEThzgRD6Q/4mM5pVUnND3oK/Mt1RzSE/w==}
+ '@solana/options@7.1.0':
+ resolution: {integrity: sha512-6Z6NYrnDB7qQXE7liHVpf0+5ytJogNw6QGsO8On/csX4f5WGBLxeP0JJQNnkOvuTrBkUMEq6YtTFxp4/Plqx9A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/plugin-core@7.1.0':
+ resolution: {integrity: sha512-2UhReZOhFoUMcYz+72EDM3UIrrONZBpP8uhofPKNDmKPslDuJHc8q4RRlO1llGgrfV6dMIsk9j8uV4q3DjWu5g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/plugin-interfaces@7.1.0':
+ resolution: {integrity: sha512-5QXBy1RnbWmHRCIDZRZ0W2lMnWEw65lw9X+geJmiEfbLnTPKZdpYe+5YSClz26RMcp8X2ETovkgp0E8y0Zz0yg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/program-client-core@7.1.0':
+ resolution: {integrity: sha512-81CmiYVovOElru2E7ZpBg3aAaCOdgEB4FqRatxr3EUKcP8xzsM/gti7sZxmZCd6wyLLAQQokNxpLYBjspC4ZEw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/programs@7.1.0':
+ resolution: {integrity: sha512-SiHIxX4lbHD36tOFNWyE9T984+yq9X+EOhxg3P2LKDg7nZep9F6L7Qhgw4R+aXF/Zqpy2q8XzO7NYLeT6piQ3g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/promises@7.1.0':
+ resolution: {integrity: sha512-4I0tTa0Peh9U6cEJUR3Y0VyQneFGA2C8dL+sw00Dtfr/4hVGr03wmjHUq6CcCiH6e7WqNuznNKsqahe3BgrOMg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-api@7.1.0':
+ resolution: {integrity: sha512-mluuAalyk5mfdi2lnPLDCPj6RElgZ0DCaNZmQZhnVM0SabvWxpBIzvTYqmy56Z/b9yiycfkVG3h6ISMZMddNuA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-parsed-types@7.1.0':
+ resolution: {integrity: sha512-WVHfz/VmqZpPbpyTgqz6W4Yk1rKa7tfjSqa77KbWi+yXDzZ+Oha+bAscXxY/yg/w6auu7/JY5+t7Qd0qIjrGmQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-spec-types@7.1.0':
+ resolution: {integrity: sha512-nEKJARQq8x9YQB/TBptw99bNU9KsmsObu51VleXwTi+PCowHbU7yaNad1lxg81iiX9Z4Lwvvo4c5UdVA4xkYFQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-spec@7.1.0':
+ resolution: {integrity: sha512-vmFN/HNK0bUV+sDPqs7+NV/orY23PByWN82J1Q4PFZKCOCnyFO/A06pd/MCVuPjmcaJ62xFhTcORrit6dTQL3A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions-api@7.1.0':
+ resolution: {integrity: sha512-lzi8sPWuMyT89/L1ebY+MTzOma/6vsRdFTFcY5pe4pO4Sfi59j4p+HeYUu/NS0E6+/7Ng3BHFeTtuKD6QkhPDg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions-channel-websocket@7.1.0':
+ resolution: {integrity: sha512-eW0JCgwSM7YV1YKkZN4rtfIGhh5WSJkCf2+JV1wscF6Zn4hK/9kr8MJ0Y0LWtoDMIuX0W3RCJnYG4T/Pcm1v6w==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions-spec@7.1.0':
+ resolution: {integrity: sha512-f+s6qIzUHxUTyoZoOvz2uw8Y6tYyUefLxxJtavMZEDXEjsAQ0Zv+yhmPZ5tQCo1JyHGS6EKvaw9AjxVC68NHDA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions@7.1.0':
+ resolution: {integrity: sha512-Vjs6d1AagH9r52smhX9zxSwprPKvqsWw8XFmvtGbUNI5lxtX1W4TIukscpXiau7dqe6zH6q6cfs9UtuOgY5sXA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-transformers@7.1.0':
+ resolution: {integrity: sha512-3sSO13m25IkkS1mXnWFZYwgSOSturEGFQMIs37vdqgiJFAYJjmossOozE+fqOY0CI1oebyURhm5gM86ATuHDYw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-transport-http@7.1.0':
+ resolution: {integrity: sha512-9zT58Ahfhd/sdYNMKvVOmPLpIMsdrZOrJlnuK0nmB+D8KWbqswDUV46H2HGxRFjvGgKep/CtOSx4RM+kt14ezQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-types@7.1.0':
+ resolution: {integrity: sha512-pZO8+EroeRv7kb/d42qQeKHvUmm5tBvH0tXe8Kl2QkqG9+BCZ8NXXd+K7GbYWfVz3XtYmV3W/1B67s1DnzRldQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc@7.1.0':
+ resolution: {integrity: sha512-K9PvA39IQ+Z5/GYuDv4xXDPwk1KAPegnMu97b999yH09lBfsWpkHTGCCmNNy7bJAD346IQ/90/KgIbB/YnMEkw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/signers@7.1.0':
+ resolution: {integrity: sha512-sGGEOhPQLn+M9Y5QF3BgzAh9ECoq+XxIOUhyEpCSoUB725oMerir7lgsuyHvSkANhnoGnVxMhy/3b9wzVIazig==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/spl-token-group@0.0.4':
resolution: {integrity: sha512-7+80nrEMdUKlK37V6kOe024+T7J4nNss0F8LQ9OOPYdWCCfJmsGUzVx2W3oeizZR4IHM6N4yC9v1Xqwc3BTPWw==}
engines: {node: '>=16'}
@@ -337,6 +710,60 @@ packages:
resolution: {integrity: sha512-JBMGB0oR4lPttOZ5XiUGyvylwLQjt1CPJa6qQ5oM+MBCndfjz2TKKkw0eATlLLcYmq1jBVsNlJ2cD6ns2GR7lA==}
engines: {node: '>=16'}
+ '@solana/subscribable@7.1.0':
+ resolution: {integrity: sha512-8YnZV34WRN/AHP1B2XUlLIkINI9AYGcv1lqc2pFswS4VEL0c4iXyCfCXg9D1FM/obEhlU73h+ZJK4deg8yasgA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/sysvars@7.1.0':
+ resolution: {integrity: sha512-8UZsIsHS0JcYTy41QK9eewWj34mSkahsgD5TQPk/M69W34ElQOLKLkooj4iwXdnV2tMlNniKMIDoIQUhGCfhZw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transaction-confirmation@7.1.0':
+ resolution: {integrity: sha512-IZd2eEvhIdIaIkZAd6ugeTLB1f8pB5iwu+NmSk2vH0FUGVf3wJui8NzZyj/8+5a6Ps2WUa79JIIizVdvIOzV8A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transaction-introspection@7.1.0':
+ resolution: {integrity: sha512-AKev/afwQpkTjjNPUsYrZ7lwI76wNiZGy5T5m9FBhVrncg8evMjUHhVrnTvLTLkqMGuVgteR2BH9e2S+igwxPg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transaction-messages@7.1.0':
+ resolution: {integrity: sha512-5JKj7mCppHBzJQF67n5YVaPR3nLNe5+sbgJcSbD2woyR7pdUhjNYyzG2HFeWDghbROpQzy9Dy7Km9iTjw3ry5A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transactions@7.1.0':
+ resolution: {integrity: sha512-J/31jUwrbmJkk4vHnyenbF8iz2dHnhTW0HEzOp86YzVHbm171g5ujL1mmOP4nh8r/UA6xH4QbEJ4kTrID6cN5w==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/web3.js@1.98.4':
resolution: {integrity: sha512-vv9lfnvjUsRiq//+j5pBdXig0IQdtzA0BRZ3bXEP4KaIyF1CcaydWqgyzQgfZMNIsWNWmG+AUHwPy4AHOD6gpw==}
@@ -492,6 +919,10 @@ packages:
resolution: {integrity: sha512-2JkV3gUZUVrbNA+1sjBOYLsMZ5cEEl8GTFP2a4AVz5hvasAMCQ1D2l2le/cX+pV4N6ZU17zjUahLpIXRrnWL8A==}
engines: {node: '>=20'}
+ commander@15.0.0:
+ resolution: {integrity: sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg==}
+ engines: {node: '>=22.12.0'}
+
commander@2.20.3:
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
@@ -862,6 +1293,9 @@ packages:
engines: {node: '>=14.17'}
hasBin: true
+ undici-types@8.10.0:
+ resolution: {integrity: sha512-ibvdovq3nCFs8Msrd95BW+zUOq+aOVbT+wpHUoPWhztbHEoPc6oof51iFDB6Es8lTKvNvVW9jNSAB8dwrKTMGg==}
+
undici-types@8.3.0:
resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==}
@@ -920,6 +1354,18 @@ packages:
utf-8-validate:
optional: true
+ ws@8.21.3:
+ resolution: {integrity: sha512-201TZ/kPWxoPr/OKWjquZR1SWKXcvxdH+e1xrx89b3YbmzLMFCLfnaG1HFIgWzJOEWZ7MvpK++odZufgYR50Rw==}
+ engines: {node: '>=10.0.0'}
+ peerDependencies:
+ bufferutil: ^4.0.1
+ utf-8-validate: '>=5.0.2'
+ peerDependenciesMeta:
+ bufferutil:
+ optional: true
+ utf-8-validate:
+ optional: true
+
y18n@5.0.8:
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
engines: {node: '>=10'}
@@ -1100,6 +1546,58 @@ snapshots:
'@pkgjs/parseargs@0.11.0':
optional: true
+ '@solana-program/record@0.3.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))':
+ dependencies:
+ '@solana/kit': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+
+ '@solana-program/system@0.13.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))':
+ dependencies:
+ '@solana/kit': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+
+ '@solana-program/token-2022@0.15.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))(@solana/sysvars@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))':
+ dependencies:
+ '@noble/curves': 1.9.7
+ '@solana-program/record': 0.3.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))
+ '@solana-program/zk-elgamal-proof': 0.3.2(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))
+ '@solana/kit': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/sysvars': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+
+ '@solana-program/zk-elgamal-proof@0.3.2(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))':
+ dependencies:
+ '@solana-program/system': 0.13.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))
+ '@solana/kit': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+
+ '@solana/accounts@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/addresses@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/assertions': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/assertions@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/buffer-layout-utils@0.2.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
dependencies:
'@solana/buffer-layout': 4.0.1
@@ -1125,12 +1623,26 @@ snapshots:
'@solana/errors': 2.3.0(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/codecs-core@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-data-structures@2.0.0-preview.2':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
'@solana/codecs-numbers': 2.0.0-preview.2
'@solana/errors': 2.0.0-preview.2
+ '@solana/codecs-data-structures@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-numbers@2.0.0-preview.2':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
@@ -1142,6 +1654,13 @@ snapshots:
'@solana/errors': 2.3.0(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/codecs-numbers@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-strings@2.0.0-preview.2(fastestsmallesttextencoderdecoder@1.0.22)':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
@@ -1149,6 +1668,15 @@ snapshots:
'@solana/errors': 2.0.0-preview.2
fastestsmallesttextencoderdecoder: 1.0.22
+ '@solana/codecs-strings@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ fastestsmallesttextencoderdecoder: 1.0.22
+ typescript: 5.9.3
+
'@solana/codecs@2.0.0-preview.2(fastestsmallesttextencoderdecoder@1.0.22)':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
@@ -1159,6 +1687,19 @@ snapshots:
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
+ '@solana/codecs@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/fixed-points': 7.1.0(typescript@5.9.3)
+ '@solana/options': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/errors@2.0.0-preview.2':
dependencies:
chalk: 5.3.0
@@ -1170,11 +1711,340 @@ snapshots:
commander: 14.0.1
typescript: 5.9.3
+ '@solana/errors@7.1.0(typescript@5.9.3)':
+ dependencies:
+ chalk: 5.6.2
+ commander: 15.0.0
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/fast-stable-stringify@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/fixed-points@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/functional@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/instruction-plans@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/instructions@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/keys@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/assertions': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/instruction-plans': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/offchain-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/plugin-core': 7.1.0(typescript@5.9.3)
+ '@solana/plugin-interfaces': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/program-client-core': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/programs': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-parsed-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ '@solana/sysvars': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-confirmation': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/transaction-introspection': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - fastestsmallesttextencoderdecoder
+ - utf-8-validate
+
+ '@solana/nominal-types@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/offchain-messages@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/options@2.0.0-preview.2':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
'@solana/codecs-numbers': 2.0.0-preview.2
+ '@solana/options@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/plugin-core@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/plugin-interfaces@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/instruction-plans': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/program-client-core@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instruction-plans': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/plugin-interfaces': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/programs@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/promises@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-api@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-parsed-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc-parsed-types@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-spec-types@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-spec@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-subscriptions-api@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc-subscriptions-channel-websocket@7.1.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ ws: 8.21.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - utf-8-validate
+
+ '@solana/rpc-subscriptions-spec@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-subscriptions@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/fast-stable-stringify': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-subscriptions-channel-websocket': 7.1.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - fastestsmallesttextencoderdecoder
+ - utf-8-validate
+
+ '@solana/rpc-transformers@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc-transport-http@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ undici-types: 8.10.0
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-types@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/fixed-points': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/fast-stable-stringify': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-transport-http': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/signers@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/offchain-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/spl-token-group@0.0.4(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)':
dependencies:
'@solana/codecs': 2.0.0-preview.2(fastestsmallesttextencoderdecoder@1.0.22)
@@ -1210,6 +2080,95 @@ snapshots:
dependencies:
buffer: 6.0.3
+ '@solana/subscribable@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/sysvars@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/transaction-confirmation@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-subscriptions': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - fastestsmallesttextencoderdecoder
+ - utf-8-validate
+
+ '@solana/transaction-introspection@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/transaction-messages@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/transactions@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
dependencies:
'@babel/runtime': 7.28.4
@@ -1381,6 +2340,8 @@ snapshots:
commander@14.0.1: {}
+ commander@15.0.0: {}
+
commander@2.20.3: {}
cross-fetch@3.2.0:
@@ -1745,6 +2706,8 @@ snapshots:
typescript@5.9.3: {}
+ undici-types@8.10.0: {}
+
undici-types@8.3.0: {}
utf-8-validate@5.0.10:
@@ -1789,6 +2752,11 @@ snapshots:
bufferutil: 4.0.9
utf-8-validate: 5.0.10
+ ws@8.21.3(bufferutil@4.0.9)(utf-8-validate@5.0.10):
+ optionalDependencies:
+ bufferutil: 4.0.9
+ utf-8-validate: 5.0.10
+
y18n@5.0.8: {}
yargs-parser@21.1.1: {}
diff --git a/tokens/token-2022/transfer-hook/transfer-switch/anchor/tests/litesvm.test.ts b/tokens/token-2022/transfer-hook/transfer-switch/anchor/tests/litesvm.test.ts
index bb49ea539..3f48a470e 100644
--- a/tokens/token-2022/transfer-hook/transfer-switch/anchor/tests/litesvm.test.ts
+++ b/tokens/token-2022/transfer-hook/transfer-switch/anchor/tests/litesvm.test.ts
@@ -1,6 +1,5 @@
import * as anchor from '@anchor-lang/core';
import {
- AccountLayout,
ASSOCIATED_TOKEN_PROGRAM_ID,
createAssociatedTokenAccountInstruction,
createInitializeMintInstruction,
@@ -13,6 +12,7 @@ import {
TOKEN_2022_PROGRAM_ID,
} from '@solana/spl-token';
import { Keypair, PublicKey, SystemProgram, Transaction, type TransactionInstruction } from '@solana/web3.js';
+import { getTokenDecoder } from '@solana-program/token-2022';
import { LiteSVMProvider } from 'anchor-litesvm';
import { assert } from 'chai';
import { LiteSVM } from 'litesvm';
@@ -206,7 +206,7 @@ describe('Transfer switch', () => {
await expectRevert(provider.sendAndConfirm(transaction, [sender]));
const recipientTokenAccountData = client.getAccount(recipientTokenAccount).data;
- const recipientBalance = AccountLayout.decode(recipientTokenAccountData).amount;
+ const recipientBalance = getTokenDecoder().decode(recipientTokenAccountData).amount;
assert(recipientBalance === BigInt(0), 'transfer was successful');
});
@@ -255,7 +255,7 @@ describe('Transfer switch', () => {
const recipientTokenAccountData = client.getAccount(recipientTokenAccount).data;
- const recipientBalance = AccountLayout.decode(recipientTokenAccountData).amount;
+ const recipientBalance = getTokenDecoder().decode(recipientTokenAccountData).amount;
assert(recipientBalance === bigIntAmount, 'transfer was not successful');
});
diff --git a/tokens/token-fundraiser/anchor/package.json b/tokens/token-fundraiser/anchor/package.json
index 0c225a54c..143bc18cf 100644
--- a/tokens/token-fundraiser/anchor/package.json
+++ b/tokens/token-fundraiser/anchor/package.json
@@ -6,6 +6,8 @@
},
"dependencies": {
"@anchor-lang/core": "1.0.0-rc.5",
+ "@solana-program/token": "^0.15.0",
+ "@solana/kit": "^7.0.0",
"@solana/spl-token": "^0.4.6",
"@solana/web3.js": "^1.98.4"
},
diff --git a/tokens/token-fundraiser/anchor/pnpm-lock.yaml b/tokens/token-fundraiser/anchor/pnpm-lock.yaml
index 7f7ea27e8..86ed79a07 100644
--- a/tokens/token-fundraiser/anchor/pnpm-lock.yaml
+++ b/tokens/token-fundraiser/anchor/pnpm-lock.yaml
@@ -14,6 +14,12 @@ importers:
'@anchor-lang/core':
specifier: 1.0.0-rc.5
version: 1.0.0-rc.5(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana-program/token':
+ specifier: ^0.15.0
+ version: 0.15.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))
+ '@solana/kit':
+ specifier: ^7.0.0
+ version: 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
'@solana/spl-token':
specifier: ^0.4.6
version: 0.4.6(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
@@ -264,6 +270,44 @@ packages:
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
+ '@solana-program/system@0.13.0':
+ resolution: {integrity: sha512-Id6QQxCG7ByImXPD5X/c3Ag2kySD+49aJ9waIkfxyUFyokhMQgxYQAx2rKuaygaBlaBQY6VVfBS46pqxZV+99A==}
+ peerDependencies:
+ '@solana/kit': ^7.0.0
+
+ '@solana-program/token@0.15.0':
+ resolution: {integrity: sha512-SeLm08EYIfT453I6lo7wTGgfMbz1s7bJ1jSHFHBFebSJHD3xF46zRgMxq3YKRlr/RM8jN0cG8SjZVu+IDvMxEA==}
+ engines: {node: '>=24.0.0'}
+ peerDependencies:
+ '@solana/kit': ^7.0.0
+
+ '@solana/accounts@7.1.0':
+ resolution: {integrity: sha512-0Vp2advYsTb7eb0jZveXZJaux6OSYcI3nitwoXOTZzCuzjbIjiHI/bpn3CcqfKBPW/1dnCIWAW7VW1otqH0a1w==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/addresses@7.1.0':
+ resolution: {integrity: sha512-kA/aav0TdyhrXCG6VCGG/fTuGu4ix5UW2PxtsbpBdZcyi+3TznLS1xKzIZBzqn0DL0q6HKdud6Ene7DWZDH1lw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/assertions@7.1.0':
+ resolution: {integrity: sha512-LD9+fhZb/xBECl27gfxDEX+qyj4PRV6700RJuprJWNMvGd8v0eoO0N+0QwnopK7o7O4w3DaW9/a3jH+iiwEqzw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/buffer-layout-utils@0.2.0':
resolution: {integrity: sha512-szG4sxgJGktbuZYDg2FfNmkMi0DYQoVjN2h7ta1W1hPrwzarcFLBq9UpX1UjNXsNpT9dn+chgprtWGioUAr4/g==}
engines: {node: '>= 10'}
@@ -281,9 +325,27 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/codecs-core@7.1.0':
+ resolution: {integrity: sha512-pl1gCCvviKekrijEDieZ1ps3LjC6ova2pZ/ZBXEJJa46nF7M0hwdZe/KzbMxKQ8WtT/WqW8Uyh6JQt8IJcMgRw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-data-structures@2.0.0-preview.2':
resolution: {integrity: sha512-Xf5vIfromOZo94Q8HbR04TbgTwzigqrKII0GjYr21K7rb3nba4hUW2ir8kguY7HWFBcjHGlU5x3MevKBOLp3Zg==}
+ '@solana/codecs-data-structures@7.1.0':
+ resolution: {integrity: sha512-yCwyXCD1qtj0qJwCLQVS9aojKDio7t8kqXQVhLfasYFsckvecK+OObkoILkBXBJVmpOXI8nRYwNAb63+CvJo/g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-numbers@2.0.0-preview.2':
resolution: {integrity: sha512-aLZnDTf43z4qOnpTcDsUVy1Ci9im1Md8thWipSWbE+WM9ojZAx528oAql+Cv8M8N+6ALKwgVRhPZkto6E59ARw==}
@@ -293,14 +355,44 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/codecs-numbers@7.1.0':
+ resolution: {integrity: sha512-Hfw5OXx7tbSJ4iQ0r1ar6D+7XixkX8K36ni9cHDrunpiTo9SLIE0Lzj9/889aPNv4J4JggW1bpqzcrz3RI/o5g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-strings@2.0.0-preview.2':
resolution: {integrity: sha512-EgBwY+lIaHHgMJIqVOGHfIfpdmmUDNoNO/GAUGeFPf+q0dF+DtwhJPEMShhzh64X2MeCZcmSO6Kinx0Bvmmz2g==}
peerDependencies:
fastestsmallesttextencoderdecoder: ^1.0.22
+ '@solana/codecs-strings@7.1.0':
+ resolution: {integrity: sha512-YIv/XVDYTzkYiFRdbjK6tI1BUKNlV1ta5hl9oK6+CoCDZn7nECfAN96KPYs94jzbN5VgMgbEqi6tlQcdy5KuCg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ fastestsmallesttextencoderdecoder: ^1.0.22
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ fastestsmallesttextencoderdecoder:
+ optional: true
+ typescript:
+ optional: true
+
'@solana/codecs@2.0.0-preview.2':
resolution: {integrity: sha512-4HHzCD5+pOSmSB71X6w9ptweV48Zj1Vqhe732+pcAQ2cMNnN0gMPMdDq7j3YwaZDZ7yrILVV/3+HTnfT77t2yA==}
+ '@solana/codecs@7.1.0':
+ resolution: {integrity: sha512-4M1MgIiRX46qMUnrUjVnRnTxETmCZ7VLWddMdf+t6y3aVsMzz8kd9ngH7NloFhHtnAO0n3qJjs2rdgx/Dxd3Zg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/errors@2.0.0-preview.2':
resolution: {integrity: sha512-H2DZ1l3iYF5Rp5pPbJpmmtCauWeQXRJapkDg8epQ8BJ7cA2Ut/QEtC3CMmw/iMTcuS6uemFNLcWvlOfoQhvQuA==}
hasBin: true
@@ -312,9 +404,271 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/errors@7.1.0':
+ resolution: {integrity: sha512-sJ0mM6SHN7fa6auHARRAGjjDpkFzhx6jmgHZAjliC/xADMfI2IYrTnAwguRV9dVBOsEHicylIXszvsyRb6BmEw==}
+ engines: {node: '>=20.18.0'}
+ hasBin: true
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/fast-stable-stringify@7.1.0':
+ resolution: {integrity: sha512-DV35b2DoqFwQlO7acwi0WG47oLSORGep7/lTkd/VrCB/MdM0J5TggQ0gRqc9v3ORBDQHcOYmMx6ym4Obqd1EFg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/fixed-points@7.1.0':
+ resolution: {integrity: sha512-xyVO7h8woz53L5dz9pV5akdf/EcluEvtV85cYtca1pp0ZpdcdnGQ2yve3mN/GuOEb+Ixzthrew2p0c5h9w4Bhg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/functional@7.1.0':
+ resolution: {integrity: sha512-1yfUFHkeMvrD/6yTDu3op3CgWIfr1KAvHo3XQL6yBvz0miEbiQ6tAEZbrwHpudES43sG8ZvlgrkL0Oiu5KwC9g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/instruction-plans@7.1.0':
+ resolution: {integrity: sha512-Ug7YSchE8Oq8PsaKYlr8IH0woYjmAgi7JdVwd1wtE1pReHvufH63WUsE6B6guqIkQPxiLZL/tmODzKas2zlVtA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/instructions@7.1.0':
+ resolution: {integrity: sha512-KnXUtSIbKCUjlposzfikAO3qSVliOSoMBzglQYSn3e0x0PpJ2MsVH6tzzI6v124YVhs0OSs5wFwYjENTedPgcg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/keys@7.1.0':
+ resolution: {integrity: sha512-BGRkTPeBIKPojwVEdYaBXtLMQ0fp8xtQiRxDhOSyYpd1bz52K4bmvrugVtSqfjWLVO+I8SRZGpSZq2G5+DgR1Q==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/kit@7.1.0':
+ resolution: {integrity: sha512-UvzQhbn7ITjoBIinGz7rrdPSfkE8/bl+c6TISTLOXiW5hZw16mKOAkK28duP6bJutgQ57L0oJ4HYu5BTzAznOg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/nominal-types@7.1.0':
+ resolution: {integrity: sha512-oN+gGAqBnGc/iGIq5i4Q/+VFyTqbh0wpLnWTtMbFpXmevrdX3IPPBW5Z76ysZtTtv+M4Ha64kqc2upLJBUGM0A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/offchain-messages@7.1.0':
+ resolution: {integrity: sha512-nQBqXNLjDvUybc6oRS936gHLGzKwKy9fSlUV4OPo1mLG5V8TcW+jhCc1UOJdmfj0FYDDq5rzqmFTVK4yEu7brw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/options@2.0.0-preview.2':
resolution: {integrity: sha512-FAHqEeH0cVsUOTzjl5OfUBw2cyT8d5Oekx4xcn5hn+NyPAfQJgM3CEThzgRD6Q/4mM5pVUnND3oK/Mt1RzSE/w==}
+ '@solana/options@7.1.0':
+ resolution: {integrity: sha512-6Z6NYrnDB7qQXE7liHVpf0+5ytJogNw6QGsO8On/csX4f5WGBLxeP0JJQNnkOvuTrBkUMEq6YtTFxp4/Plqx9A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/plugin-core@7.1.0':
+ resolution: {integrity: sha512-2UhReZOhFoUMcYz+72EDM3UIrrONZBpP8uhofPKNDmKPslDuJHc8q4RRlO1llGgrfV6dMIsk9j8uV4q3DjWu5g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/plugin-interfaces@7.1.0':
+ resolution: {integrity: sha512-5QXBy1RnbWmHRCIDZRZ0W2lMnWEw65lw9X+geJmiEfbLnTPKZdpYe+5YSClz26RMcp8X2ETovkgp0E8y0Zz0yg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/program-client-core@7.1.0':
+ resolution: {integrity: sha512-81CmiYVovOElru2E7ZpBg3aAaCOdgEB4FqRatxr3EUKcP8xzsM/gti7sZxmZCd6wyLLAQQokNxpLYBjspC4ZEw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/programs@7.1.0':
+ resolution: {integrity: sha512-SiHIxX4lbHD36tOFNWyE9T984+yq9X+EOhxg3P2LKDg7nZep9F6L7Qhgw4R+aXF/Zqpy2q8XzO7NYLeT6piQ3g==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/promises@7.1.0':
+ resolution: {integrity: sha512-4I0tTa0Peh9U6cEJUR3Y0VyQneFGA2C8dL+sw00Dtfr/4hVGr03wmjHUq6CcCiH6e7WqNuznNKsqahe3BgrOMg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-api@7.1.0':
+ resolution: {integrity: sha512-mluuAalyk5mfdi2lnPLDCPj6RElgZ0DCaNZmQZhnVM0SabvWxpBIzvTYqmy56Z/b9yiycfkVG3h6ISMZMddNuA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-parsed-types@7.1.0':
+ resolution: {integrity: sha512-WVHfz/VmqZpPbpyTgqz6W4Yk1rKa7tfjSqa77KbWi+yXDzZ+Oha+bAscXxY/yg/w6auu7/JY5+t7Qd0qIjrGmQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-spec-types@7.1.0':
+ resolution: {integrity: sha512-nEKJARQq8x9YQB/TBptw99bNU9KsmsObu51VleXwTi+PCowHbU7yaNad1lxg81iiX9Z4Lwvvo4c5UdVA4xkYFQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-spec@7.1.0':
+ resolution: {integrity: sha512-vmFN/HNK0bUV+sDPqs7+NV/orY23PByWN82J1Q4PFZKCOCnyFO/A06pd/MCVuPjmcaJ62xFhTcORrit6dTQL3A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions-api@7.1.0':
+ resolution: {integrity: sha512-lzi8sPWuMyT89/L1ebY+MTzOma/6vsRdFTFcY5pe4pO4Sfi59j4p+HeYUu/NS0E6+/7Ng3BHFeTtuKD6QkhPDg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions-channel-websocket@7.1.0':
+ resolution: {integrity: sha512-eW0JCgwSM7YV1YKkZN4rtfIGhh5WSJkCf2+JV1wscF6Zn4hK/9kr8MJ0Y0LWtoDMIuX0W3RCJnYG4T/Pcm1v6w==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions-spec@7.1.0':
+ resolution: {integrity: sha512-f+s6qIzUHxUTyoZoOvz2uw8Y6tYyUefLxxJtavMZEDXEjsAQ0Zv+yhmPZ5tQCo1JyHGS6EKvaw9AjxVC68NHDA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-subscriptions@7.1.0':
+ resolution: {integrity: sha512-Vjs6d1AagH9r52smhX9zxSwprPKvqsWw8XFmvtGbUNI5lxtX1W4TIukscpXiau7dqe6zH6q6cfs9UtuOgY5sXA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-transformers@7.1.0':
+ resolution: {integrity: sha512-3sSO13m25IkkS1mXnWFZYwgSOSturEGFQMIs37vdqgiJFAYJjmossOozE+fqOY0CI1oebyURhm5gM86ATuHDYw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-transport-http@7.1.0':
+ resolution: {integrity: sha512-9zT58Ahfhd/sdYNMKvVOmPLpIMsdrZOrJlnuK0nmB+D8KWbqswDUV46H2HGxRFjvGgKep/CtOSx4RM+kt14ezQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc-types@7.1.0':
+ resolution: {integrity: sha512-pZO8+EroeRv7kb/d42qQeKHvUmm5tBvH0tXe8Kl2QkqG9+BCZ8NXXd+K7GbYWfVz3XtYmV3W/1B67s1DnzRldQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/rpc@7.1.0':
+ resolution: {integrity: sha512-K9PvA39IQ+Z5/GYuDv4xXDPwk1KAPegnMu97b999yH09lBfsWpkHTGCCmNNy7bJAD346IQ/90/KgIbB/YnMEkw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/signers@7.1.0':
+ resolution: {integrity: sha512-sGGEOhPQLn+M9Y5QF3BgzAh9ECoq+XxIOUhyEpCSoUB725oMerir7lgsuyHvSkANhnoGnVxMhy/3b9wzVIazig==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/spl-token-group@0.0.4':
resolution: {integrity: sha512-7+80nrEMdUKlK37V6kOe024+T7J4nNss0F8LQ9OOPYdWCCfJmsGUzVx2W3oeizZR4IHM6N4yC9v1Xqwc3BTPWw==}
engines: {node: '>=16'}
@@ -337,6 +691,60 @@ packages:
resolution: {integrity: sha512-JBMGB0oR4lPttOZ5XiUGyvylwLQjt1CPJa6qQ5oM+MBCndfjz2TKKkw0eATlLLcYmq1jBVsNlJ2cD6ns2GR7lA==}
engines: {node: '>=16'}
+ '@solana/subscribable@7.1.0':
+ resolution: {integrity: sha512-8YnZV34WRN/AHP1B2XUlLIkINI9AYGcv1lqc2pFswS4VEL0c4iXyCfCXg9D1FM/obEhlU73h+ZJK4deg8yasgA==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/sysvars@7.1.0':
+ resolution: {integrity: sha512-8UZsIsHS0JcYTy41QK9eewWj34mSkahsgD5TQPk/M69W34ElQOLKLkooj4iwXdnV2tMlNniKMIDoIQUhGCfhZw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transaction-confirmation@7.1.0':
+ resolution: {integrity: sha512-IZd2eEvhIdIaIkZAd6ugeTLB1f8pB5iwu+NmSk2vH0FUGVf3wJui8NzZyj/8+5a6Ps2WUa79JIIizVdvIOzV8A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transaction-introspection@7.1.0':
+ resolution: {integrity: sha512-AKev/afwQpkTjjNPUsYrZ7lwI76wNiZGy5T5m9FBhVrncg8evMjUHhVrnTvLTLkqMGuVgteR2BH9e2S+igwxPg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transaction-messages@7.1.0':
+ resolution: {integrity: sha512-5JKj7mCppHBzJQF67n5YVaPR3nLNe5+sbgJcSbD2woyR7pdUhjNYyzG2HFeWDghbROpQzy9Dy7Km9iTjw3ry5A==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/transactions@7.1.0':
+ resolution: {integrity: sha512-J/31jUwrbmJkk4vHnyenbF8iz2dHnhTW0HEzOp86YzVHbm171g5ujL1mmOP4nh8r/UA6xH4QbEJ4kTrID6cN5w==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/web3.js@1.98.4':
resolution: {integrity: sha512-vv9lfnvjUsRiq//+j5pBdXig0IQdtzA0BRZ3bXEP4KaIyF1CcaydWqgyzQgfZMNIsWNWmG+AUHwPy4AHOD6gpw==}
@@ -461,10 +869,6 @@ packages:
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
engines: {node: '>=10'}
- chalk@5.3.0:
- resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
- engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
-
chalk@5.6.2:
resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==}
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
@@ -492,6 +896,10 @@ packages:
resolution: {integrity: sha512-2JkV3gUZUVrbNA+1sjBOYLsMZ5cEEl8GTFP2a4AVz5hvasAMCQ1D2l2le/cX+pV4N6ZU17zjUahLpIXRrnWL8A==}
engines: {node: '>=20'}
+ commander@15.0.0:
+ resolution: {integrity: sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg==}
+ engines: {node: '>=22.12.0'}
+
commander@2.20.3:
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
@@ -862,6 +1270,9 @@ packages:
engines: {node: '>=14.17'}
hasBin: true
+ undici-types@8.10.0:
+ resolution: {integrity: sha512-ibvdovq3nCFs8Msrd95BW+zUOq+aOVbT+wpHUoPWhztbHEoPc6oof51iFDB6Es8lTKvNvVW9jNSAB8dwrKTMGg==}
+
undici-types@8.3.0:
resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==}
@@ -920,6 +1331,18 @@ packages:
utf-8-validate:
optional: true
+ ws@8.21.3:
+ resolution: {integrity: sha512-201TZ/kPWxoPr/OKWjquZR1SWKXcvxdH+e1xrx89b3YbmzLMFCLfnaG1HFIgWzJOEWZ7MvpK++odZufgYR50Rw==}
+ engines: {node: '>=10.0.0'}
+ peerDependencies:
+ bufferutil: ^4.0.1
+ utf-8-validate: '>=5.0.2'
+ peerDependenciesMeta:
+ bufferutil:
+ optional: true
+ utf-8-validate:
+ optional: true
+
y18n@5.0.8:
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
engines: {node: '>=10'}
@@ -1100,6 +1523,46 @@ snapshots:
'@pkgjs/parseargs@0.11.0':
optional: true
+ '@solana-program/system@0.13.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))':
+ dependencies:
+ '@solana/kit': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+
+ '@solana-program/token@0.15.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))':
+ dependencies:
+ '@solana-program/system': 0.13.0(@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10))
+ '@solana/kit': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+
+ '@solana/accounts@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/addresses@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/assertions': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/assertions@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/buffer-layout-utils@0.2.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
dependencies:
'@solana/buffer-layout': 4.0.1
@@ -1125,12 +1588,26 @@ snapshots:
'@solana/errors': 2.3.0(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/codecs-core@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-data-structures@2.0.0-preview.2':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
'@solana/codecs-numbers': 2.0.0-preview.2
'@solana/errors': 2.0.0-preview.2
+ '@solana/codecs-data-structures@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-numbers@2.0.0-preview.2':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
@@ -1142,6 +1619,13 @@ snapshots:
'@solana/errors': 2.3.0(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/codecs-numbers@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-strings@2.0.0-preview.2(fastestsmallesttextencoderdecoder@1.0.22)':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
@@ -1149,6 +1633,15 @@ snapshots:
'@solana/errors': 2.0.0-preview.2
fastestsmallesttextencoderdecoder: 1.0.22
+ '@solana/codecs-strings@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ fastestsmallesttextencoderdecoder: 1.0.22
+ typescript: 5.9.3
+
'@solana/codecs@2.0.0-preview.2(fastestsmallesttextencoderdecoder@1.0.22)':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
@@ -1159,9 +1652,22 @@ snapshots:
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
+ '@solana/codecs@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/fixed-points': 7.1.0(typescript@5.9.3)
+ '@solana/options': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/errors@2.0.0-preview.2':
dependencies:
- chalk: 5.3.0
+ chalk: 5.6.2
commander: 12.1.0
'@solana/errors@2.3.0(typescript@5.9.3)':
@@ -1170,11 +1676,340 @@ snapshots:
commander: 14.0.1
typescript: 5.9.3
+ '@solana/errors@7.1.0(typescript@5.9.3)':
+ dependencies:
+ chalk: 5.6.2
+ commander: 15.0.0
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/fast-stable-stringify@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/fixed-points@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/functional@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/instruction-plans@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/instructions@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/keys@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/assertions': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/kit@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/instruction-plans': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/offchain-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/plugin-core': 7.1.0(typescript@5.9.3)
+ '@solana/plugin-interfaces': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/program-client-core': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/programs': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-parsed-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ '@solana/sysvars': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-confirmation': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/transaction-introspection': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - fastestsmallesttextencoderdecoder
+ - utf-8-validate
+
+ '@solana/nominal-types@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/offchain-messages@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/options@2.0.0-preview.2':
dependencies:
'@solana/codecs-core': 2.0.0-preview.2
'@solana/codecs-numbers': 2.0.0-preview.2
+ '@solana/options@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/plugin-core@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/plugin-interfaces@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/instruction-plans': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/program-client-core@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instruction-plans': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/plugin-interfaces': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/programs@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/promises@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-api@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-parsed-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc-parsed-types@7.1.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-spec-types@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-spec@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-subscriptions-api@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc-subscriptions-channel-websocket@7.1.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ ws: 8.21.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - utf-8-validate
+
+ '@solana/rpc-subscriptions-spec@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-subscriptions@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/fast-stable-stringify': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-subscriptions-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-subscriptions-channel-websocket': 7.1.0(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/rpc-subscriptions-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/subscribable': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - fastestsmallesttextencoderdecoder
+ - utf-8-validate
+
+ '@solana/rpc-transformers@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc-transport-http@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ undici-types: 8.10.0
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/rpc-types@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/fixed-points': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/rpc@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/fast-stable-stringify': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-api': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-spec': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-spec-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-transformers': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-transport-http': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/signers@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/offchain-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/spl-token-group@0.0.4(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)':
dependencies:
'@solana/codecs': 2.0.0-preview.2(fastestsmallesttextencoderdecoder@1.0.22)
@@ -1210,6 +2045,95 @@ snapshots:
dependencies:
buffer: 6.0.3
+ '@solana/subscribable@7.1.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/sysvars@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/accounts': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/transaction-confirmation@7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/promises': 7.1.0(typescript@5.9.3)
+ '@solana/rpc': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/rpc-subscriptions': 7.1.0(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - bufferutil
+ - fastestsmallesttextencoderdecoder
+ - utf-8-validate
+
+ '@solana/transaction-introspection@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/transaction-messages@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
+ '@solana/transactions@7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 7.1.0(typescript@5.9.3)
+ '@solana/codecs-strings': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 7.1.0(typescript@5.9.3)
+ '@solana/functional': 7.1.0(typescript@5.9.3)
+ '@solana/instructions': 7.1.0(typescript@5.9.3)
+ '@solana/keys': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 7.1.0(typescript@5.9.3)
+ '@solana/rpc-types': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 7.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)':
dependencies:
'@babel/runtime': 7.28.4
@@ -1357,8 +2281,6 @@ snapshots:
ansi-styles: 4.3.0
supports-color: 7.2.0
- chalk@5.3.0: {}
-
chalk@5.6.2: {}
chokidar@4.0.3:
@@ -1381,6 +2303,8 @@ snapshots:
commander@14.0.1: {}
+ commander@15.0.0: {}
+
commander@2.20.3: {}
cross-fetch@3.2.0:
@@ -1745,6 +2669,8 @@ snapshots:
typescript@5.9.3: {}
+ undici-types@8.10.0: {}
+
undici-types@8.3.0: {}
utf-8-validate@5.0.10:
@@ -1789,6 +2715,11 @@ snapshots:
bufferutil: 4.0.9
utf-8-validate: 5.0.10
+ ws@8.21.3(bufferutil@4.0.9)(utf-8-validate@5.0.10):
+ optionalDependencies:
+ bufferutil: 4.0.9
+ utf-8-validate: 5.0.10
+
y18n@5.0.8: {}
yargs-parser@21.1.1: {}
diff --git a/tokens/token-fundraiser/anchor/tests/fundraiser.ts b/tokens/token-fundraiser/anchor/tests/fundraiser.ts
index 72d0043e2..ba8895d5a 100644
--- a/tokens/token-fundraiser/anchor/tests/fundraiser.ts
+++ b/tokens/token-fundraiser/anchor/tests/fundraiser.ts
@@ -9,7 +9,6 @@ import {
mintTo,
TOKEN_PROGRAM_ID,
} from '@solana/spl-token';
-import BN from 'bn.js';
import { assert } from 'chai';
import type { Fundraiser } from '../target/types/fundraiser';
import { expectAnchorError } from './utils';
@@ -83,7 +82,7 @@ describe('fundraiser', () => {
// duration=1 day. No clock-warping here (real validator) - the
// post-deadline happy path is covered in litesvm.test.ts instead.
const tx = await program.methods
- .initialize(new BN(30000000), 1)
+ .initialize(new anchor.BN(30000000), 1)
.accountsPartial({
maker: maker.publicKey,
fundraiser,
@@ -105,7 +104,7 @@ describe('fundraiser', () => {
const vault = getAssociatedTokenAddressSync(mint, fundraiser, true);
const tx = await program.methods
- .contribute(new BN(1000000))
+ .contribute(new anchor.BN(1000000))
.accountsPartial({
contributor: provider.publicKey,
fundraiser,
@@ -128,7 +127,7 @@ describe('fundraiser', () => {
const vault = getAssociatedTokenAddressSync(mint, fundraiser, true);
const tx = await program.methods
- .contribute(new BN(1000000))
+ .contribute(new anchor.BN(1000000))
.accountsPartial({
contributor: provider.publicKey,
fundraiser,
@@ -155,7 +154,7 @@ describe('fundraiser', () => {
await expectAnchorError(
program.methods
- .contribute(new BN(2000000))
+ .contribute(new anchor.BN(2000000))
.accountsPartial({
contributor: provider.publicKey,
fundraiser,
diff --git a/tokens/token-fundraiser/anchor/tests/litesvm.test.ts b/tokens/token-fundraiser/anchor/tests/litesvm.test.ts
index c28201507..9c2a5994b 100644
--- a/tokens/token-fundraiser/anchor/tests/litesvm.test.ts
+++ b/tokens/token-fundraiser/anchor/tests/litesvm.test.ts
@@ -1,6 +1,5 @@
import * as anchor from '@anchor-lang/core';
import {
- AccountLayout,
ASSOCIATED_TOKEN_PROGRAM_ID,
createAssociatedTokenAccountInstruction,
createInitializeMint2Instruction,
@@ -10,8 +9,8 @@ import {
TOKEN_PROGRAM_ID,
} from '@solana/spl-token';
import { PublicKey } from '@solana/web3.js';
+import { getTokenDecoder } from '@solana-program/token';
import { LiteSVMProvider } from 'anchor-litesvm';
-import BN from 'bn.js';
import { assert } from 'chai';
import { LiteSVM } from 'litesvm';
import IDL from '../target/idl/fundraiser.json';
@@ -48,7 +47,7 @@ describe('fundraiser litesvm', () => {
)[0];
const tokenBalance = (account: anchor.web3.PublicKey) =>
- AccountLayout.decode(client.getAccount(account).data).amount;
+ getTokenDecoder().decode(client.getAccount(account).data).amount;
it('Test Preparation', async () => {
client.airdrop(maker.publicKey, BigInt(anchor.web3.LAMPORTS_PER_SOL));
@@ -84,7 +83,7 @@ describe('fundraiser litesvm', () => {
// duration=1 day. This suite can warp its own clock, so it covers
// the full lifecycle (see the tests below).
const tx = await program.methods
- .initialize(new BN(30000000), 1)
+ .initialize(new anchor.BN(30000000), 1)
.accountsPartial({
maker: maker.publicKey,
fundraiser,
@@ -105,7 +104,7 @@ describe('fundraiser litesvm', () => {
const vault = getAssociatedTokenAddressSync(mint, fundraiser, true);
const tx = await program.methods
- .contribute(new BN(1000000))
+ .contribute(new anchor.BN(1000000))
.accountsPartial({
contributor: provider.publicKey,
fundraiser,
@@ -128,7 +127,7 @@ describe('fundraiser litesvm', () => {
const vault = getAssociatedTokenAddressSync(mint, fundraiser, true);
const tx = await program.methods
- .contribute(new BN(1000000))
+ .contribute(new anchor.BN(1000000))
.accountsPartial({
contributor: provider.publicKey,
fundraiser,
@@ -154,7 +153,7 @@ describe('fundraiser litesvm', () => {
await expectAnchorError(
program.methods
- .contribute(new BN(2000000))
+ .contribute(new anchor.BN(2000000))
.accountsPartial({
contributor: provider.publicKey,
fundraiser,
@@ -237,7 +236,7 @@ describe('fundraiser litesvm', () => {
// the time check can reject this - proving it's the deadline.
await expectAnchorError(
program.methods
- .contribute(new BN(1000000))
+ .contribute(new anchor.BN(1000000))
.accountsPartial({
contributor: provider.publicKey,
fundraiser,
diff --git a/tokens/token-swap/anchor/tests/swap.ts b/tokens/token-swap/anchor/tests/swap.ts
index 5030fb584..f809ac5f0 100644
--- a/tokens/token-swap/anchor/tests/swap.ts
+++ b/tokens/token-swap/anchor/tests/swap.ts
@@ -1,6 +1,5 @@
import type { Program } from '@anchor-lang/core';
import * as anchor from '@anchor-lang/core';
-import { BN } from 'bn.js';
import { expect } from 'chai';
import type { SwapExample } from '../target/types/swap_example';
import { createValues, mintingTokens, type TestValues } from './utils';
@@ -63,9 +62,9 @@ describe('Swap', () => {
});
it('Swap from A to B', async () => {
- const input = new BN(10 ** 6);
+ const input = new anchor.BN(10 ** 6);
await program.methods
- .swapExactTokensForTokens(true, input, new BN(100))
+ .swapExactTokensForTokens(true, input, new anchor.BN(100))
.accountsPartial({
amm: values.ammKey,
pool: values.poolKey,
diff --git a/tokens/token-swap/anchor/tests/utils.ts b/tokens/token-swap/anchor/tests/utils.ts
index e1e345906..6ae5c99ed 100644
--- a/tokens/token-swap/anchor/tests/utils.ts
+++ b/tokens/token-swap/anchor/tests/utils.ts
@@ -6,7 +6,6 @@ import {
mintTo,
} from '@solana/spl-token';
import { type Connection, Keypair, PublicKey, type Signer } from '@solana/web3.js';
-import { BN } from 'bn.js';
export async function sleep(seconds: number) {
new Promise(resolve => setTimeout(resolve, seconds * 1000));
@@ -98,7 +97,7 @@ export function createValues(defaults?: TestValuesDefaults): TestValues {
// Making sure tokens are in the right order
const mintAKeypair = Keypair.generate();
let mintBKeypair = Keypair.generate();
- while (new BN(mintBKeypair.publicKey.toBytes()).lt(new BN(mintAKeypair.publicKey.toBytes()))) {
+ while (new anchor.BN(mintBKeypair.publicKey.toBytes()).lt(new anchor.BN(mintAKeypair.publicKey.toBytes()))) {
mintBKeypair = Keypair.generate();
}
@@ -139,9 +138,9 @@ export function createValues(defaults?: TestValuesDefaults): TestValues {
liquidityAccount: getAssociatedTokenAddressSync(mintLiquidity, admin.publicKey, true),
holderAccountA: getAssociatedTokenAddressSync(mintAKeypair.publicKey, admin.publicKey, true),
holderAccountB: getAssociatedTokenAddressSync(mintBKeypair.publicKey, admin.publicKey, true),
- depositAmountA: new BN(4 * 10 ** 6),
- depositAmountB: new BN(1 * 10 ** 6),
- minimumLiquidity: new BN(100),
- defaultSupply: new BN(100 * 10 ** 6),
+ depositAmountA: new anchor.BN(4 * 10 ** 6),
+ depositAmountB: new anchor.BN(1 * 10 ** 6),
+ minimumLiquidity: new anchor.BN(100),
+ defaultSupply: new anchor.BN(100 * 10 ** 6),
};
}
diff --git a/tokens/transfer-tokens/anchor/package.json b/tokens/transfer-tokens/anchor/package.json
index 1b86d9305..24a9f3544 100644
--- a/tokens/transfer-tokens/anchor/package.json
+++ b/tokens/transfer-tokens/anchor/package.json
@@ -3,7 +3,6 @@
"dependencies": {
"@anchor-lang/core": "1.0.0-rc.5",
"@solana/spl-token": "^0.3.8",
- "bn.js": "^5.2.1",
"@solana/web3.js": "^1.98.4"
},
"scripts": {
diff --git a/tokens/transfer-tokens/anchor/pnpm-lock.yaml b/tokens/transfer-tokens/anchor/pnpm-lock.yaml
index 3b7729b16..5cf34d35c 100644
--- a/tokens/transfer-tokens/anchor/pnpm-lock.yaml
+++ b/tokens/transfer-tokens/anchor/pnpm-lock.yaml
@@ -20,9 +20,6 @@ importers:
'@solana/web3.js':
specifier: ^1.98.4
version: 1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10)
- bn.js:
- specifier: ^5.2.1
- version: 5.2.1
devDependencies:
'@types/bn.js':
specifier: ^5.1.0
diff --git a/tokens/transfer-tokens/anchor/tests/litesvm.test.ts b/tokens/transfer-tokens/anchor/tests/litesvm.test.ts
index b0735bb86..dd2fb982b 100644
--- a/tokens/transfer-tokens/anchor/tests/litesvm.test.ts
+++ b/tokens/transfer-tokens/anchor/tests/litesvm.test.ts
@@ -2,7 +2,6 @@ import * as anchor from '@anchor-lang/core';
import { getAssociatedTokenAddressSync } from '@solana/spl-token';
import { Keypair, PublicKey } from '@solana/web3.js';
import { LiteSVMProvider } from 'anchor-litesvm';
-import BN from 'bn.js';
import { LiteSVM } from 'litesvm';
import IDL from '../target/idl/transfer_tokens.json';
import type { TransferTokens } from '../target/types/transfer_tokens';
@@ -54,7 +53,7 @@ describe('Transfer Tokens LiteSVM', () => {
it('Mint tokens!', async () => {
// Amount of tokens to mint.
- const amount = new BN(100);
+ const amount = new anchor.BN(100);
// Mint the tokens to the associated token account.
const transactionSignature = await program.methods
@@ -74,7 +73,7 @@ describe('Transfer Tokens LiteSVM', () => {
it('Transfer tokens!', async () => {
// Amount of tokens to transfer.
- const amount = new BN(50);
+ const amount = new anchor.BN(50);
const transactionSignature = await program.methods
.transferTokens(amount)
diff --git a/tokens/transfer-tokens/anchor/tests/test.ts b/tokens/transfer-tokens/anchor/tests/test.ts
index 8d0753e27..a84cc9d99 100644
--- a/tokens/transfer-tokens/anchor/tests/test.ts
+++ b/tokens/transfer-tokens/anchor/tests/test.ts
@@ -1,7 +1,6 @@
import * as anchor from '@anchor-lang/core';
import { getAssociatedTokenAddressSync } from '@solana/spl-token';
import { Keypair } from '@solana/web3.js';
-import { BN } from 'bn.js';
import type { TransferTokens } from '../target/types/transfer_tokens';
describe('Transfer Tokens', () => {
@@ -45,7 +44,7 @@ describe('Transfer Tokens', () => {
it('Mint tokens!', async () => {
// Amount of tokens to mint.
- const amount = new BN(100);
+ const amount = new anchor.BN(100);
// Mint the tokens to the associated token account.
const transactionSignature = await program.methods
@@ -65,7 +64,7 @@ describe('Transfer Tokens', () => {
it('Transfer tokens!', async () => {
// Amount of tokens to transfer.
- const amount = new BN(50);
+ const amount = new anchor.BN(50);
const transactionSignature = await program.methods
.transferTokens(amount)
diff --git a/tokens/transfer-tokens/native/package.json b/tokens/transfer-tokens/native/package.json
index bf3f18e75..91fddaafa 100644
--- a/tokens/transfer-tokens/native/package.json
+++ b/tokens/transfer-tokens/native/package.json
@@ -9,8 +9,7 @@
"dependencies": {
"@solana-program/system": "^0.13.0",
"@solana-program/token": "^0.15.0",
- "@solana/kit": "^7.0.0",
- "borsh": "^2.0.0"
+ "@solana/kit": "^7.0.0"
},
"devDependencies": {
"@types/chai": "^5.2.3",
diff --git a/tokens/transfer-tokens/native/pnpm-lock.yaml b/tokens/transfer-tokens/native/pnpm-lock.yaml
index 7f7c58c3e..77eae66bc 100644
--- a/tokens/transfer-tokens/native/pnpm-lock.yaml
+++ b/tokens/transfer-tokens/native/pnpm-lock.yaml
@@ -17,9 +17,6 @@ importers:
'@solana/kit':
specifier: ^7.0.0
version: 7.0.0(bufferutil@4.1.0)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(utf-8-validate@5.0.10)
- borsh:
- specifier: ^2.0.0
- version: 2.0.0
devDependencies:
'@types/chai':
specifier: ^5.2.3
@@ -1048,9 +1045,6 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- borsh@2.0.0:
- resolution: {integrity: sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==}
-
brace-expansion@2.1.3:
resolution: {integrity: sha512-DRdx5neNsG/QXbniLFWi2YmC/68oeOOmKz6zOjVk6ZS1ZLXgLIKqVEc6hWsmkjBbgii0SwaBTcJ5XKj5gzY/4A==}
@@ -2534,8 +2528,6 @@ snapshots:
balanced-match@1.0.2: {}
- borsh@2.0.0: {}
-
brace-expansion@2.1.3:
dependencies:
balanced-match: 1.0.2
diff --git a/tokens/transfer-tokens/native/tests/instructions.ts b/tokens/transfer-tokens/native/tests/instructions.ts
deleted file mode 100644
index 22cd047f7..000000000
--- a/tokens/transfer-tokens/native/tests/instructions.ts
+++ /dev/null
@@ -1,38 +0,0 @@
-import * as borsh from 'borsh';
-
-export enum MyInstruction {
- Create = 0,
- MintNft = 1,
- MintSpl = 2,
- TransferTokens = 3,
-}
-
-export const CreateTokenArgsSchema = {
- struct: {
- instruction: 'u8',
- token_title: 'string',
- token_symbol: 'string',
- token_uri: 'string',
- decimals: 'u8',
- },
-};
-
-export const MintNftArgsSchema = { struct: { instruction: 'u8' } };
-
-export const MintSplArgsSchema = {
- struct: {
- instruction: 'u8',
- quantity: 'u64',
- },
-};
-
-export const TransferTokensArgsSchema = {
- struct: {
- instruction: 'u8',
- quantity: 'u64',
- },
-};
-
-export function borshSerialize(schema: borsh.Schema, data: object): Buffer {
- return Buffer.from(borsh.serialize(schema, data));
-}
diff --git a/tokens/transfer-tokens/native/tests/test.ts b/tokens/transfer-tokens/native/tests/test.ts
index 0da92c7e0..de2704d44 100644
--- a/tokens/transfer-tokens/native/tests/test.ts
+++ b/tokens/transfer-tokens/native/tests/test.ts
@@ -1,6 +1,4 @@
import {
- AccountRole,
- address,
type Address,
appendTransactionMessageInstruction,
createTransactionMessage,
@@ -15,27 +13,16 @@ import {
signTransactionMessageWithSigners,
unwrapOption,
} from '@solana/kit';
-import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
-import {
- ASSOCIATED_TOKEN_PROGRAM_ADDRESS,
- findAssociatedTokenPda,
- getMintDecoder,
- getTokenDecoder,
- TOKEN_PROGRAM_ADDRESS,
-} from '@solana-program/token';
+import { findAssociatedTokenPda, getMintDecoder, getTokenDecoder, TOKEN_PROGRAM_ADDRESS } from '@solana-program/token';
import { assert } from 'chai';
import { FailedTransactionMetadata, LiteSVM } from 'litesvm';
import {
- borshSerialize,
- CreateTokenArgsSchema,
- MintNftArgsSchema,
- MintSplArgsSchema,
- MyInstruction,
- TransferTokensArgsSchema,
-} from './instructions';
-
-const TOKEN_METADATA_PROGRAM_ID = address('metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s');
-const SYSVAR_RENT_ADDRESS = address('SysvarRent111111111111111111111111111111111');
+ createCreateInstruction,
+ createMintNftInstruction,
+ createMintSplInstruction,
+ createTransferTokensInstruction,
+ TOKEN_METADATA_PROGRAM_ADDRESS,
+} from '../ts';
const addressEncoder = getAddressEncoder();
@@ -50,7 +37,7 @@ describe('Transferring Tokens', () => {
before(async () => {
programId = (await generateKeyPairSigner()).address;
svm.addProgramFromFile(programId, 'tests/fixtures/transfer_tokens_program.so');
- svm.addProgramFromFile(TOKEN_METADATA_PROGRAM_ID, 'tests/fixtures/token_metadata.so');
+ svm.addProgramFromFile(TOKEN_METADATA_PROGRAM_ADDRESS, 'tests/fixtures/token_metadata.so');
payer = await generateKeyPairSigner();
svm.airdrop(payer.address, lamports(10_000_000_000n));
@@ -76,18 +63,18 @@ describe('Transferring Tokens', () => {
async function findMetadataPda(mint: Address): Promise {
const [metadataAddress] = await getProgramDerivedAddress({
- programAddress: TOKEN_METADATA_PROGRAM_ID,
- seeds: ['metadata', addressEncoder.encode(TOKEN_METADATA_PROGRAM_ID), addressEncoder.encode(mint)],
+ programAddress: TOKEN_METADATA_PROGRAM_ADDRESS,
+ seeds: ['metadata', addressEncoder.encode(TOKEN_METADATA_PROGRAM_ADDRESS), addressEncoder.encode(mint)],
});
return metadataAddress;
}
async function findEditionPda(mint: Address): Promise {
const [editionAddress] = await getProgramDerivedAddress({
- programAddress: TOKEN_METADATA_PROGRAM_ID,
+ programAddress: TOKEN_METADATA_PROGRAM_ADDRESS,
seeds: [
'metadata',
- addressEncoder.encode(TOKEN_METADATA_PROGRAM_ID),
+ addressEncoder.encode(TOKEN_METADATA_PROGRAM_ADDRESS),
addressEncoder.encode(mint),
'edition',
],
@@ -117,28 +104,17 @@ describe('Transferring Tokens', () => {
symbol: string,
uri: string,
) {
- const instructionData = borshSerialize(CreateTokenArgsSchema, {
- instruction: MyInstruction.Create,
- token_title: title,
- token_symbol: symbol,
- token_uri: uri,
+ const ix = createCreateInstruction(
+ mintKeypair,
+ payer.address,
+ await findMetadataPda(mintKeypair.address),
+ payer,
+ programId,
+ title,
+ symbol,
+ uri,
decimals,
- });
-
- const ix = {
- programAddress: programId,
- accounts: [
- { address: mintKeypair.address, role: AccountRole.WRITABLE_SIGNER, signer: mintKeypair }, // Mint account
- { address: payer.address, role: AccountRole.WRITABLE }, // Mint authority account
- { address: await findMetadataPda(mintKeypair.address), role: AccountRole.WRITABLE }, // Metadata account
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }, // Payer
- { address: SYSVAR_RENT_ADDRESS, role: AccountRole.READONLY }, // Rent account
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // System program
- { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // Token program
- { address: TOKEN_METADATA_PROGRAM_ID, role: AccountRole.READONLY }, // Token metadata program
- ],
- data: new Uint8Array(instructionData),
- };
+ );
await sendTransaction(ix);
}
@@ -162,7 +138,7 @@ describe('Transferring Tokens', () => {
const metadataInfo = svm.getAccount(await findMetadataPda(tokenMintKeypair.address));
assert(metadataInfo.exists, 'metadata account not created');
- assert(metadataInfo.programAddress === TOKEN_METADATA_PROGRAM_ID, 'metadata account has wrong owner');
+ assert(metadataInfo.programAddress === TOKEN_METADATA_PROGRAM_ADDRESS, 'metadata account has wrong owner');
});
it('Create an NFT!', async () => {
@@ -187,24 +163,14 @@ describe('Transferring Tokens', () => {
it('Mint some tokens to your wallet!', async () => {
const associatedTokenAccountAddress = await findAssociatedTokenAddress(tokenMintKeypair.address, payer.address);
- const instructionData = borshSerialize(MintSplArgsSchema, {
- instruction: MyInstruction.MintSpl,
- quantity: BigInt(150),
- });
-
- const ix = {
- programAddress: programId,
- accounts: [
- { address: tokenMintKeypair.address, role: AccountRole.WRITABLE }, // Mint account
- { address: payer.address, role: AccountRole.WRITABLE }, // Mint authority account
- { address: associatedTokenAccountAddress, role: AccountRole.WRITABLE }, // ATA
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }, // Payer
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // System program
- { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // Token program
- { address: ASSOCIATED_TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // Associated token program
- ],
- data: new Uint8Array(instructionData),
- };
+ const ix = createMintSplInstruction(
+ tokenMintKeypair.address,
+ payer.address,
+ associatedTokenAccountAddress,
+ payer,
+ programId,
+ 150n,
+ );
await sendTransaction(ix);
@@ -220,27 +186,15 @@ describe('Transferring Tokens', () => {
const editionAddress = await findEditionPda(nftMintKeypair.address);
const associatedTokenAccountAddress = await findAssociatedTokenAddress(nftMintKeypair.address, payer.address);
- const instructionData = borshSerialize(MintNftArgsSchema, {
- instruction: MyInstruction.MintNft,
- });
-
- const ix = {
- programAddress: programId,
- accounts: [
- { address: nftMintKeypair.address, role: AccountRole.WRITABLE }, // Mint account
- { address: await findMetadataPda(nftMintKeypair.address), role: AccountRole.WRITABLE }, // Metadata account
- { address: editionAddress, role: AccountRole.WRITABLE }, // Edition account
- { address: payer.address, role: AccountRole.WRITABLE }, // Mint authority account
- { address: associatedTokenAccountAddress, role: AccountRole.WRITABLE }, // ATA
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }, // Payer
- { address: SYSVAR_RENT_ADDRESS, role: AccountRole.READONLY }, // Rent account
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // System program
- { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // Token program
- { address: ASSOCIATED_TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // Associated token program
- { address: TOKEN_METADATA_PROGRAM_ID, role: AccountRole.READONLY }, // Token metadata program
- ],
- data: new Uint8Array(instructionData),
- };
+ const ix = createMintNftInstruction(
+ nftMintKeypair.address,
+ await findMetadataPda(nftMintKeypair.address),
+ editionAddress,
+ payer.address,
+ associatedTokenAccountAddress,
+ payer,
+ programId,
+ );
await sendTransaction(ix);
@@ -248,7 +202,7 @@ describe('Transferring Tokens', () => {
const editionInfo = svm.getAccount(editionAddress);
assert(editionInfo.exists, 'edition account not created');
- assert(editionInfo.programAddress === TOKEN_METADATA_PROGRAM_ID, 'edition account has wrong owner');
+ assert(editionInfo.programAddress === TOKEN_METADATA_PROGRAM_ADDRESS, 'edition account has wrong owner');
const mintInfo = svm.getAccount(nftMintKeypair.address);
assert(mintInfo.exists, 'mint account not found');
@@ -257,35 +211,22 @@ describe('Transferring Tokens', () => {
});
async function transferTokens(mint: Address, quantity: bigint) {
- const fromAssociatedTokenAddress = await findAssociatedTokenAddress(mint, payer.address);
- const toAssociatedTokenAddress = await findAssociatedTokenAddress(mint, recipientWallet.address);
-
- const instructionData = borshSerialize(TransferTokensArgsSchema, {
- instruction: MyInstruction.TransferTokens,
+ const ix = createTransferTokensInstruction(
+ mint,
+ await findAssociatedTokenAddress(mint, payer.address),
+ await findAssociatedTokenAddress(mint, recipientWallet.address),
+ payer,
+ recipientWallet,
+ payer,
+ programId,
quantity,
- });
-
- const ix = {
- programAddress: programId,
- accounts: [
- { address: mint, role: AccountRole.WRITABLE }, // Mint account
- { address: fromAssociatedTokenAddress, role: AccountRole.WRITABLE }, // Owner Token account
- { address: toAssociatedTokenAddress, role: AccountRole.WRITABLE }, // Recipient Token account
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }, // Owner
- { address: recipientWallet.address, role: AccountRole.WRITABLE_SIGNER, signer: recipientWallet }, // Recipient
- { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer }, // Payer
- { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // System program
- { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // Token program
- { address: ASSOCIATED_TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY }, // Associated token program
- ],
- data: new Uint8Array(instructionData),
- };
+ );
await sendTransaction(ix);
}
it('Transfer tokens to another wallet!', async () => {
- await transferTokens(tokenMintKeypair.address, BigInt(15));
+ await transferTokens(tokenMintKeypair.address, 15n);
const fromAta = await findAssociatedTokenAddress(tokenMintKeypair.address, payer.address);
const toAta = await findAssociatedTokenAddress(tokenMintKeypair.address, recipientWallet.address);
@@ -294,7 +235,7 @@ describe('Transferring Tokens', () => {
});
it('Transfer NFT to another wallet!', async () => {
- await transferTokens(nftMintKeypair.address, BigInt(1));
+ await transferTokens(nftMintKeypair.address, 1n);
const fromAta = await findAssociatedTokenAddress(nftMintKeypair.address, payer.address);
const toAta = await findAssociatedTokenAddress(nftMintKeypair.address, recipientWallet.address);
diff --git a/tokens/transfer-tokens/native/ts/constants.ts b/tokens/transfer-tokens/native/ts/constants.ts
new file mode 100644
index 000000000..fc2601414
--- /dev/null
+++ b/tokens/transfer-tokens/native/ts/constants.ts
@@ -0,0 +1,4 @@
+import { address } from '@solana/kit';
+
+export const TOKEN_METADATA_PROGRAM_ADDRESS = address('metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s');
+export const SYSVAR_RENT_ADDRESS = address('SysvarRent111111111111111111111111111111111');
diff --git a/tokens/transfer-tokens/native/ts/index.ts b/tokens/transfer-tokens/native/ts/index.ts
new file mode 100644
index 000000000..b4b5e9f91
--- /dev/null
+++ b/tokens/transfer-tokens/native/ts/index.ts
@@ -0,0 +1,2 @@
+export * from './constants';
+export * from './instructions';
diff --git a/tokens/transfer-tokens/native/ts/instructions/create.ts b/tokens/transfer-tokens/native/ts/instructions/create.ts
new file mode 100644
index 000000000..f26a3c700
--- /dev/null
+++ b/tokens/transfer-tokens/native/ts/instructions/create.ts
@@ -0,0 +1,56 @@
+import {
+ AccountRole,
+ addEncoderSizePrefix,
+ type Address,
+ getStructEncoder,
+ getU8Encoder,
+ getU32Encoder,
+ getUtf8Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+import { TOKEN_PROGRAM_ADDRESS } from '@solana-program/token';
+import { MyInstruction } from '.';
+import { SYSVAR_RENT_ADDRESS, TOKEN_METADATA_PROGRAM_ADDRESS } from '../constants';
+
+// Instruction data layout, matching the program's `MyInstruction::Create(CreateTokenArgs)` variant.
+export const createEncoder = getStructEncoder([
+ ['instruction', getU8Encoder()],
+ ['token_title', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['token_symbol', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['token_uri', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
+ ['decimals', getU8Encoder()],
+]);
+
+export function createCreateInstruction(
+ mint: TransactionSigner,
+ mintAuthority: Address,
+ metadata: Address,
+ payer: TransactionSigner,
+ programId: Address,
+ tokenTitle: string,
+ tokenSymbol: string,
+ tokenUri: string,
+ decimals: number,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: mint.address, role: AccountRole.WRITABLE_SIGNER, signer: mint },
+ { address: mintAuthority, role: AccountRole.WRITABLE },
+ { address: metadata, role: AccountRole.WRITABLE },
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: SYSVAR_RENT_ADDRESS, role: AccountRole.READONLY },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: TOKEN_METADATA_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: createEncoder.encode({
+ instruction: MyInstruction.Create,
+ token_title: tokenTitle,
+ token_symbol: tokenSymbol,
+ token_uri: tokenUri,
+ decimals,
+ }),
+ };
+}
diff --git a/tokens/transfer-tokens/native/ts/instructions/index.ts b/tokens/transfer-tokens/native/ts/instructions/index.ts
new file mode 100644
index 000000000..2509a4fc2
--- /dev/null
+++ b/tokens/transfer-tokens/native/ts/instructions/index.ts
@@ -0,0 +1,13 @@
+export * from './create';
+export * from './mint-nft';
+export * from './mint-spl';
+export * from './transfer';
+
+export const MyInstruction = {
+ Create: 0,
+ MintNft: 1,
+ MintSpl: 2,
+ TransferTokens: 3,
+} as const;
+
+export type MyInstruction = (typeof MyInstruction)[keyof typeof MyInstruction];
diff --git a/tokens/transfer-tokens/native/ts/instructions/mint-nft.ts b/tokens/transfer-tokens/native/ts/instructions/mint-nft.ts
new file mode 100644
index 000000000..8ab0ba809
--- /dev/null
+++ b/tokens/transfer-tokens/native/ts/instructions/mint-nft.ts
@@ -0,0 +1,36 @@
+import { AccountRole, type Address, getStructEncoder, getU8Encoder, type TransactionSigner } from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS, TOKEN_PROGRAM_ADDRESS } from '@solana-program/token';
+import { MyInstruction } from '.';
+import { SYSVAR_RENT_ADDRESS, TOKEN_METADATA_PROGRAM_ADDRESS } from '../constants';
+
+// Instruction data layout, matching the program's `MyInstruction::MintNft` variant.
+export const mintNftEncoder = getStructEncoder([['instruction', getU8Encoder()]]);
+
+export function createMintNftInstruction(
+ mint: Address,
+ metadata: Address,
+ edition: Address,
+ mintAuthority: Address,
+ associatedTokenAccount: Address,
+ payer: TransactionSigner,
+ programId: Address,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: mint, role: AccountRole.WRITABLE },
+ { address: metadata, role: AccountRole.WRITABLE },
+ { address: edition, role: AccountRole.WRITABLE },
+ { address: mintAuthority, role: AccountRole.WRITABLE },
+ { address: associatedTokenAccount, role: AccountRole.WRITABLE },
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: SYSVAR_RENT_ADDRESS, role: AccountRole.READONLY },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: ASSOCIATED_TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: TOKEN_METADATA_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: mintNftEncoder.encode({ instruction: MyInstruction.MintNft }),
+ };
+}
diff --git a/tokens/transfer-tokens/native/ts/instructions/mint-spl.ts b/tokens/transfer-tokens/native/ts/instructions/mint-spl.ts
new file mode 100644
index 000000000..664a86b5a
--- /dev/null
+++ b/tokens/transfer-tokens/native/ts/instructions/mint-spl.ts
@@ -0,0 +1,40 @@
+import {
+ AccountRole,
+ type Address,
+ getStructEncoder,
+ getU8Encoder,
+ getU64Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS, TOKEN_PROGRAM_ADDRESS } from '@solana-program/token';
+import { MyInstruction } from '.';
+
+// Instruction data layout, matching the program's `MyInstruction::MintSpl(MintSplArgs)` variant.
+export const mintSplEncoder = getStructEncoder([
+ ['instruction', getU8Encoder()],
+ ['quantity', getU64Encoder()],
+]);
+
+export function createMintSplInstruction(
+ mint: Address,
+ mintAuthority: Address,
+ associatedTokenAccount: Address,
+ payer: TransactionSigner,
+ programId: Address,
+ quantity: bigint,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: mint, role: AccountRole.WRITABLE },
+ { address: mintAuthority, role: AccountRole.WRITABLE },
+ { address: associatedTokenAccount, role: AccountRole.WRITABLE },
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: ASSOCIATED_TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: mintSplEncoder.encode({ instruction: MyInstruction.MintSpl, quantity }),
+ };
+}
diff --git a/tokens/transfer-tokens/native/ts/instructions/transfer.ts b/tokens/transfer-tokens/native/ts/instructions/transfer.ts
new file mode 100644
index 000000000..8b60694f3
--- /dev/null
+++ b/tokens/transfer-tokens/native/ts/instructions/transfer.ts
@@ -0,0 +1,44 @@
+import {
+ AccountRole,
+ type Address,
+ getStructEncoder,
+ getU8Encoder,
+ getU64Encoder,
+ type TransactionSigner,
+} from '@solana/kit';
+import { SYSTEM_PROGRAM_ADDRESS } from '@solana-program/system';
+import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS, TOKEN_PROGRAM_ADDRESS } from '@solana-program/token';
+import { MyInstruction } from '.';
+
+// Instruction data layout, matching the program's `MyInstruction::TransferTokens(TransferTokensArgs)` variant.
+export const transferTokensEncoder = getStructEncoder([
+ ['instruction', getU8Encoder()],
+ ['quantity', getU64Encoder()],
+]);
+
+export function createTransferTokensInstruction(
+ mint: Address,
+ fromAssociatedTokenAccount: Address,
+ toAssociatedTokenAccount: Address,
+ owner: TransactionSigner,
+ recipient: TransactionSigner,
+ payer: TransactionSigner,
+ programId: Address,
+ quantity: bigint,
+) {
+ return {
+ programAddress: programId,
+ accounts: [
+ { address: mint, role: AccountRole.WRITABLE },
+ { address: fromAssociatedTokenAccount, role: AccountRole.WRITABLE },
+ { address: toAssociatedTokenAccount, role: AccountRole.WRITABLE },
+ { address: owner.address, role: AccountRole.WRITABLE_SIGNER, signer: owner },
+ { address: recipient.address, role: AccountRole.WRITABLE_SIGNER, signer: recipient },
+ { address: payer.address, role: AccountRole.WRITABLE_SIGNER, signer: payer },
+ { address: SYSTEM_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ { address: ASSOCIATED_TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY },
+ ],
+ data: transferTokensEncoder.encode({ instruction: MyInstruction.TransferTokens, quantity }),
+ };
+}