diff --git a/ts-sdk/package.json b/ts-sdk/package.json index 5b1a108..a2d9e59 100644 --- a/ts-sdk/package.json +++ b/ts-sdk/package.json @@ -22,7 +22,7 @@ "license": "MIT", "dependencies": { "@coral-xyz/anchor": "^0.29.0", - "@solana/spl-token": "0.1.8", + "@solana/spl-token": "^0.4.9", "@solana/web3.js": "~1.87.6", "prettier": "^3.2.5", "ts-node": "^10.9.2" diff --git a/ts-sdk/src/index.ts b/ts-sdk/src/index.ts index 8c195fe..cc54bc4 100644 --- a/ts-sdk/src/index.ts +++ b/ts-sdk/src/index.ts @@ -1,5 +1,5 @@ import { AnchorProvider, BN, Program, Wallet } from '@coral-xyz/anchor'; -import { ASSOCIATED_TOKEN_PROGRAM_ID, Token, TOKEN_PROGRAM_ID } from '@solana/spl-token'; +import { createAssociatedTokenAccountInstruction, getAssociatedTokenAddress, TOKEN_PROGRAM_ID } from '@solana/spl-token'; import { Connection, PublicKey, SystemProgram, TransactionInstruction } from '@solana/web3.js'; import { MerkleDistributor, IDL } from '../../target/types/merkle_distributor'; @@ -69,22 +69,18 @@ export const getOrCreateATAInstruction = async ( ): Promise<[PublicKey, TransactionInstruction?]> => { let toAccount; try { - toAccount = await Token.getAssociatedTokenAddress( - ASSOCIATED_TOKEN_PROGRAM_ID, - TOKEN_PROGRAM_ID, + toAccount = await getAssociatedTokenAddress( tokenMint, owner, allowOwnerOffCurve, ); const account = await connection.getAccountInfo(toAccount); if (!account) { - const ix = Token.createAssociatedTokenAccountInstruction( - ASSOCIATED_TOKEN_PROGRAM_ID, - TOKEN_PROGRAM_ID, - tokenMint, + const ix = createAssociatedTokenAccountInstruction( + payer, toAccount, owner, - payer, + tokenMint, ); return [toAccount, ix]; }