24
24
*/
25
25
26
26
import * as anchor from "@coral-xyz/anchor" ;
27
- import { AnchorProvider , BN , Program } from "@coral-xyz/anchor" ;
27
+ import { AnchorProvider , BN } from "@coral-xyz/anchor" ;
28
28
import { ASSOCIATED_TOKEN_PROGRAM_ID , getAssociatedTokenAddressSync , TOKEN_PROGRAM_ID } from "@solana/spl-token" ;
29
29
import { PublicKey , SystemProgram } from "@solana/web3.js" ;
30
30
// eslint-disable-next-line camelcase
31
- import { MessageTransmitter } from "../../target/types/message_transmitter" ;
32
- import { SvmSpoke } from "../../target/types/svm_spoke" ;
33
- // eslint-disable-next-line camelcase
34
31
import {
35
32
CIRCLE_IRIS_API_URL_DEVNET ,
36
33
CIRCLE_IRIS_API_URL_MAINNET ,
@@ -46,7 +43,7 @@ import {
46
43
import { TOKEN_SYMBOLS_MAP } from "@across-protocol/constants" ;
47
44
import { getNodeUrl } from "@uma/common" ;
48
45
import { BigNumber , ethers } from "ethers" ;
49
- import { TokenMessengerMinter } from "../../target/types/token_messenger_minter " ;
46
+ import { getMessageTransmitterProgram , getSpokePoolProgram , getTokenMessengerMinterProgram } from "../../src/svm " ;
50
47
import { BondToken__factory } from "../../typechain" ;
51
48
import { formatUsdc , requireEnv } from "./utils/helpers" ;
52
49
@@ -55,10 +52,7 @@ const provider = AnchorProvider.env();
55
52
anchor . setProvider ( provider ) ;
56
53
57
54
// Get Solana programs and IDLs.
58
- const svmSpokeIdl = require ( "../../target/idl/svm_spoke.json" ) ;
59
- const svmSpokeProgram = new Program < SvmSpoke > ( svmSpokeIdl , provider ) ;
60
- const messageTransmitterIdl = require ( "../../target/idl/message_transmitter.json" ) ;
61
- const tokenMessengerMinterIdl = require ( "../../target/idl/token_messenger_minter.json" ) ;
55
+ const svmSpokeProgram = getSpokePoolProgram ( provider ) ;
62
56
63
57
// CCTP domains.
64
58
const ethereumDomain = 0 ; // Ethereum
@@ -200,7 +194,7 @@ async function bridgeLiabilityToHubPool(): Promise<void> {
200
194
}
201
195
202
196
async function bridgeTokensToHubPool ( amount : BN , signer : anchor . Wallet , statePda : PublicKey , inputToken : PublicKey ) {
203
- const messageTransmitterProgram = new Program < MessageTransmitter > ( messageTransmitterIdl , provider ) ;
197
+ const messageTransmitterProgram = getMessageTransmitterProgram ( provider ) ;
204
198
205
199
const vault = getAssociatedTokenAddressSync (
206
200
inputToken ,
@@ -215,7 +209,7 @@ async function bridgeTokensToHubPool(amount: BN, signer: anchor.Wallet, statePda
215
209
[ Buffer . from ( "transfer_liability" ) , inputToken . toBuffer ( ) ] ,
216
210
svmSpokeProgram . programId
217
211
) ;
218
- const tokenMessengerMinterProgram = new Program < TokenMessengerMinter > ( tokenMessengerMinterIdl , provider ) ;
212
+ const tokenMessengerMinterProgram = getTokenMessengerMinterProgram ( provider ) ;
219
213
220
214
const [ tokenMessengerMinterSenderAuthority ] = PublicKey . findProgramAddressSync (
221
215
[ Buffer . from ( "sender_authority" ) ] ,
0 commit comments