@across-protocol/sdk 4.3.34-alpha.0 → 4.3.34-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/arch/svm/SpokeUtils.d.ts +11 -1
- package/dist/cjs/arch/svm/SpokeUtils.js +76 -11
- package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -1
- package/dist/esm/arch/svm/SpokeUtils.d.ts +21 -1
- package/dist/esm/arch/svm/SpokeUtils.js +89 -10
- package/dist/esm/arch/svm/SpokeUtils.js.map +1 -1
- package/dist/types/arch/svm/SpokeUtils.d.ts +21 -1
- package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/arch/svm/SpokeUtils.ts +114 -8
|
@@ -4,6 +4,7 @@ import { Account, Address, FetchAccountConfig, IAccountMeta, IInstruction, KeyPa
|
|
|
4
4
|
import { Logger } from "winston";
|
|
5
5
|
import { DepositWithBlock, FillStatus, FillWithBlock, RelayData } from "../../interfaces";
|
|
6
6
|
import { BigNumber, EvmAddress, Address as SdkAddress, SvmAddress } from "../../utils";
|
|
7
|
+
import { type AcrossPlusMessage } from "./";
|
|
7
8
|
import { SvmCpiEventsClient } from "./eventsClient";
|
|
8
9
|
import { AttestedCCTPMessage, SVMProvider } from "./types";
|
|
9
10
|
export declare const SLOT_DURATION_MS = 400;
|
|
@@ -29,10 +30,19 @@ export declare function getFillRelayTx(spokePoolAddr: SvmAddress, solanaClient:
|
|
|
29
30
|
instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
|
|
30
31
|
version: 0;
|
|
31
32
|
}>, "feePayer">>;
|
|
32
|
-
export declare
|
|
33
|
+
export declare function getIPFillRelayTx(spokePoolAddr: SvmAddress, solanaClient: SVMProvider, relayData: Omit<RelayData, "recipient" | "outputToken"> & {
|
|
34
|
+
destinationChainId: number;
|
|
35
|
+
recipient: SvmAddress;
|
|
36
|
+
outputToken: SvmAddress;
|
|
37
|
+
}, signer: TransactionSigner, repaymentChainId: number, repaymentAddress: SdkAddress): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
|
|
38
|
+
instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
|
|
39
|
+
version: 0;
|
|
40
|
+
}>, "feePayer">>;
|
|
41
|
+
export declare const createFillInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, fillInput: SvmSpokeClient.FillRelayInput, relayData: Pick<SvmSpokeClient.RelayDataArgs, "outputAmount" | "recipient">, tokenDecimals: number, createRecipientAtaIfNeeded?: boolean, remainingAccounts?: (WritableAccount | ReadonlyAccount)[]) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
|
|
33
42
|
instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
|
|
34
43
|
version: 0;
|
|
35
44
|
}>, "feePayer">>;
|
|
45
|
+
export declare function deserializeMessage(_message: string): AcrossPlusMessage;
|
|
36
46
|
export declare const createDepositInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, depositInput: SvmSpokeClient.DepositInput, tokenDecimals: number, createVaultAtaIfNeeded?: boolean) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
|
|
37
47
|
instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
|
|
38
48
|
version: 0;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getMintInfo = exports.finalizeCCTPV1Messages = exports.getCCTPV1ReceiveMessageTx = exports.getAccountMetasForTokenlessMessage = exports.hasCCTPV1MessageBeenProcessed = exports.getFillRelayDelegatePda = exports.getDepositNowDelegatePda = exports.getDepositDelegatePda = exports.getFillRelayViaInstructionParamsInstructions = exports.getRelayDataHash = exports.getAssociatedTokenAddress = exports.createReceiveMessageInstruction = exports.createCloseFillPdaInstruction = exports.getSlowFillRequestTx = exports.createRequestSlowFillInstruction = exports.createDepositInstruction = exports.createFillInstruction = exports.getFillRelayTx = exports.createTokenAccountsInstruction = exports.fillRelayInstruction = exports.findFillEvent = exports.fillStatusArray = exports.relayFillStatus = exports.findDeposit = exports.getDepositIdAtBlock = exports.getFillDeadline = exports.getTimestampForSlot = exports.SLOT_DURATION_MS = void 0;
|
|
3
|
+
exports.getMintInfo = exports.finalizeCCTPV1Messages = exports.getCCTPV1ReceiveMessageTx = exports.getAccountMetasForTokenlessMessage = exports.hasCCTPV1MessageBeenProcessed = exports.getFillRelayDelegatePda = exports.getDepositNowDelegatePda = exports.getDepositDelegatePda = exports.getFillRelayViaInstructionParamsInstructions = exports.getRelayDataHash = exports.getAssociatedTokenAddress = exports.createReceiveMessageInstruction = exports.createCloseFillPdaInstruction = exports.getSlowFillRequestTx = exports.createRequestSlowFillInstruction = exports.createDepositInstruction = exports.deserializeMessage = exports.createFillInstruction = exports.getIPFillRelayTx = exports.getFillRelayTx = exports.createTokenAccountsInstruction = exports.fillRelayInstruction = exports.findFillEvent = exports.fillStatusArray = exports.relayFillStatus = exports.findDeposit = exports.getDepositIdAtBlock = exports.getFillDeadline = exports.getTimestampForSlot = exports.SLOT_DURATION_MS = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var contracts_1 = require("@across-protocol/contracts");
|
|
6
6
|
var SvmSpoke_1 = require("@across-protocol/contracts/dist/src/svm/clients/SvmSpoke");
|
|
@@ -358,7 +358,7 @@ function createTokenAccountsInstruction(mint, relayer) {
|
|
|
358
358
|
exports.createTokenAccountsInstruction = createTokenAccountsInstruction;
|
|
359
359
|
function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymentChainId, repaymentAddress) {
|
|
360
360
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
361
|
-
var depositor, recipient, inputToken, outputToken, exclusiveRelayer, destinationChainId, program, _relayDataHash, relayDataHash, _a, state, delegate, mint, mintInfo, _b, recipientAta, relayerAta, fillStatus, eventAuthority,
|
|
361
|
+
var depositor, recipient, inputToken, outputToken, exclusiveRelayer, destinationChainId, program, _relayDataHash, relayDataHash, _a, state, delegate, mint, mintInfo, _b, recipientAta, relayerAta, fillStatus, eventAuthority, message, svmRelayData, remainingAccounts, acrossPlusMessage_1, fillInput;
|
|
362
362
|
return tslib_1.__generator(this, function (_c) {
|
|
363
363
|
switch (_c.label) {
|
|
364
364
|
case 0:
|
|
@@ -385,8 +385,7 @@ function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymen
|
|
|
385
385
|
])];
|
|
386
386
|
case 3:
|
|
387
387
|
_b = _c.sent(), recipientAta = _b[0], relayerAta = _b[1], fillStatus = _b[2], eventAuthority = _b[3];
|
|
388
|
-
|
|
389
|
-
message = new Uint8Array(Buffer.from(_message, "hex"));
|
|
388
|
+
message = new Uint8Array(Buffer.from(relayData.message.slice(2), "hex"));
|
|
390
389
|
svmRelayData = {
|
|
391
390
|
depositor: (0, _1.toAddress)(depositor),
|
|
392
391
|
recipient: (0, _1.toAddress)(recipient),
|
|
@@ -402,9 +401,8 @@ function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymen
|
|
|
402
401
|
message: message,
|
|
403
402
|
};
|
|
404
403
|
remainingAccounts = [];
|
|
405
|
-
if (message
|
|
406
|
-
|
|
407
|
-
acrossPlusMessage_1 = acrossPlusMessageDecoder.decode(message);
|
|
404
|
+
if (relayData.message !== "0x") {
|
|
405
|
+
acrossPlusMessage_1 = deserializeMessage(relayData.message);
|
|
408
406
|
remainingAccounts.push((0, _1.getAccountMeta)(acrossPlusMessage_1.handler, true));
|
|
409
407
|
remainingAccounts.push.apply(remainingAccounts, acrossPlusMessage_1.accounts.map(function (account, idx) {
|
|
410
408
|
return (0, _1.getAccountMeta)(account, idx < acrossPlusMessage_1.accounts.length - acrossPlusMessage_1.read_only_len);
|
|
@@ -428,13 +426,74 @@ function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymen
|
|
|
428
426
|
repaymentChainId: BigInt(repaymentChainId),
|
|
429
427
|
repaymentAddress: (0, _1.toAddress)(repaymentAddress),
|
|
430
428
|
};
|
|
431
|
-
return [2, (0, exports.createFillInstruction)(signer, solanaClient, fillInput, mintInfo.data.decimals, true, remainingAccounts)];
|
|
429
|
+
return [2, (0, exports.createFillInstruction)(signer, solanaClient, fillInput, svmRelayData, mintInfo.data.decimals, true, remainingAccounts)];
|
|
432
430
|
}
|
|
433
431
|
});
|
|
434
432
|
});
|
|
435
433
|
}
|
|
436
434
|
exports.getFillRelayTx = getFillRelayTx;
|
|
437
|
-
|
|
435
|
+
function getIPFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymentChainId, repaymentAddress) {
|
|
436
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
437
|
+
var program, _relayDataHash, relayDataHash, _a, state, delegate, instructionParams, mint, mintInfo, _b, recipientAta, relayerAta, fillStatus, eventAuthority, remainingAccounts, acrossPlusMessage_2, fillInput;
|
|
438
|
+
return tslib_1.__generator(this, function (_c) {
|
|
439
|
+
switch (_c.label) {
|
|
440
|
+
case 0:
|
|
441
|
+
program = (0, _1.toAddress)(spokePoolAddr);
|
|
442
|
+
_relayDataHash = getRelayDataHash(relayData, relayData.destinationChainId);
|
|
443
|
+
relayDataHash = new Uint8Array(Buffer.from(_relayDataHash.slice(2), "hex"));
|
|
444
|
+
return [4, Promise.all([
|
|
445
|
+
(0, _1.getStatePda)(program),
|
|
446
|
+
getFillRelayDelegatePda(relayDataHash, BigInt(repaymentChainId), (0, _1.toAddress)(repaymentAddress), program),
|
|
447
|
+
(0, _1.getInstructionParamsPda)(program, signer.address),
|
|
448
|
+
])];
|
|
449
|
+
case 1:
|
|
450
|
+
_a = _c.sent(), state = _a[0], delegate = _a[1], instructionParams = _a[2];
|
|
451
|
+
mint = (0, _1.toAddress)(relayData.outputToken);
|
|
452
|
+
return [4, getMintInfo(solanaClient, mint)];
|
|
453
|
+
case 2:
|
|
454
|
+
mintInfo = _c.sent();
|
|
455
|
+
return [4, Promise.all([
|
|
456
|
+
getAssociatedTokenAddress(relayData.recipient, relayData.outputToken, mintInfo.programAddress),
|
|
457
|
+
getAssociatedTokenAddress(utils_2.SvmAddress.from(signer.address), relayData.outputToken, mintInfo.programAddress),
|
|
458
|
+
(0, _1.getFillStatusPda)(program, relayData, relayData.destinationChainId),
|
|
459
|
+
(0, _1.getEventAuthority)(program),
|
|
460
|
+
])];
|
|
461
|
+
case 3:
|
|
462
|
+
_b = _c.sent(), recipientAta = _b[0], relayerAta = _b[1], fillStatus = _b[2], eventAuthority = _b[3];
|
|
463
|
+
remainingAccounts = [];
|
|
464
|
+
if (relayData.message !== "0x") {
|
|
465
|
+
acrossPlusMessage_2 = deserializeMessage(relayData.message);
|
|
466
|
+
remainingAccounts.push((0, _1.getAccountMeta)(acrossPlusMessage_2.handler, true));
|
|
467
|
+
remainingAccounts.push.apply(remainingAccounts, acrossPlusMessage_2.accounts.map(function (account, idx) {
|
|
468
|
+
return (0, _1.getAccountMeta)(account, idx < acrossPlusMessage_2.accounts.length - acrossPlusMessage_2.read_only_len);
|
|
469
|
+
}));
|
|
470
|
+
}
|
|
471
|
+
fillInput = {
|
|
472
|
+
signer: signer,
|
|
473
|
+
state: state,
|
|
474
|
+
delegate: delegate,
|
|
475
|
+
mint: mint,
|
|
476
|
+
relayerTokenAccount: relayerAta,
|
|
477
|
+
recipientTokenAccount: recipientAta,
|
|
478
|
+
fillStatus: fillStatus,
|
|
479
|
+
tokenProgram: mintInfo.programAddress,
|
|
480
|
+
associatedTokenProgram: token_1.ASSOCIATED_TOKEN_PROGRAM_ADDRESS,
|
|
481
|
+
systemProgram: system_1.SYSTEM_PROGRAM_ADDRESS,
|
|
482
|
+
eventAuthority: eventAuthority,
|
|
483
|
+
program: program,
|
|
484
|
+
instructionParams: instructionParams,
|
|
485
|
+
relayHash: relayDataHash,
|
|
486
|
+
relayData: null,
|
|
487
|
+
repaymentChainId: null,
|
|
488
|
+
repaymentAddress: null,
|
|
489
|
+
};
|
|
490
|
+
return [2, (0, exports.createFillInstruction)(signer, solanaClient, fillInput, { outputAmount: relayData.outputAmount.toBigInt(), recipient: (0, _1.toAddress)(relayData.recipient) }, mintInfo.data.decimals, true, remainingAccounts)];
|
|
491
|
+
}
|
|
492
|
+
});
|
|
493
|
+
});
|
|
494
|
+
}
|
|
495
|
+
exports.getIPFillRelayTx = getIPFillRelayTx;
|
|
496
|
+
var createFillInstruction = function (signer, solanaClient, fillInput, relayData, tokenDecimals, createRecipientAtaIfNeeded, remainingAccounts) {
|
|
438
497
|
if (createRecipientAtaIfNeeded === void 0) { createRecipientAtaIfNeeded = true; }
|
|
439
498
|
if (remainingAccounts === void 0) { remainingAccounts = []; }
|
|
440
499
|
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
@@ -450,7 +509,7 @@ var createFillInstruction = function (signer, solanaClient, fillInput, tokenDeci
|
|
|
450
509
|
mint: fillInput.mint,
|
|
451
510
|
delegate: fillInput.delegate,
|
|
452
511
|
owner: fillInput.signer,
|
|
453
|
-
amount:
|
|
512
|
+
amount: relayData.outputAmount,
|
|
454
513
|
decimals: tokenDecimals,
|
|
455
514
|
}, {
|
|
456
515
|
programAddress: mintInfo.programAddress,
|
|
@@ -458,7 +517,7 @@ var createFillInstruction = function (signer, solanaClient, fillInput, tokenDeci
|
|
|
458
517
|
getCreateAssociatedTokenIdempotentIx = function () {
|
|
459
518
|
return (0, token_1.getCreateAssociatedTokenIdempotentInstruction)({
|
|
460
519
|
payer: signer,
|
|
461
|
-
owner:
|
|
520
|
+
owner: relayData.recipient,
|
|
462
521
|
mint: fillInput.mint,
|
|
463
522
|
ata: fillInput.recipientTokenAccount,
|
|
464
523
|
systemProgram: system_1.SYSTEM_PROGRAM_ADDRESS,
|
|
@@ -479,6 +538,12 @@ var createFillInstruction = function (signer, solanaClient, fillInput, tokenDeci
|
|
|
479
538
|
});
|
|
480
539
|
};
|
|
481
540
|
exports.createFillInstruction = createFillInstruction;
|
|
541
|
+
function deserializeMessage(_message) {
|
|
542
|
+
var message = new Uint8Array(Buffer.from(_message.slice(2), "hex"));
|
|
543
|
+
var acrossPlusMessageDecoder = (0, _1.getAcrossPlusMessageDecoder)();
|
|
544
|
+
return acrossPlusMessageDecoder.decode(message);
|
|
545
|
+
}
|
|
546
|
+
exports.deserializeMessage = deserializeMessage;
|
|
482
547
|
var createDepositInstruction = function (signer, solanaClient, depositInput, tokenDecimals, createVaultAtaIfNeeded) {
|
|
483
548
|
if (createVaultAtaIfNeeded === void 0) { createVaultAtaIfNeeded = true; }
|
|
484
549
|
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../../src/arch/svm/SpokeUtils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../../src/arch/svm/SpokeUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import { Account, Address, FetchAccountConfig, IAccountMeta, IInstruction, KeyPa
|
|
|
4
4
|
import { Logger } from "winston";
|
|
5
5
|
import { DepositWithBlock, FillStatus, FillWithBlock, RelayData } from "../../interfaces";
|
|
6
6
|
import { BigNumber, EvmAddress, Address as SdkAddress, SvmAddress } from "../../utils";
|
|
7
|
+
import { type AcrossPlusMessage } from "./";
|
|
7
8
|
import { SvmCpiEventsClient } from "./eventsClient";
|
|
8
9
|
import { AttestedCCTPMessage, SVMProvider } from "./types";
|
|
9
10
|
/**
|
|
@@ -134,6 +135,24 @@ export declare function getFillRelayTx(spokePoolAddr: SvmAddress, solanaClient:
|
|
|
134
135
|
instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
|
|
135
136
|
version: 0;
|
|
136
137
|
}>, "feePayer">>;
|
|
138
|
+
/**
|
|
139
|
+
* Creates a fill instruction with an instruction params PDA as the relayData input.
|
|
140
|
+
* @param spokePoolAddr Address of the spoke pool we're trying to fill through
|
|
141
|
+
* @param solanaClient RPC client to interact with Solana chain
|
|
142
|
+
* @param relayData RelayData instance, supplemented with destinationChainId
|
|
143
|
+
* @param signer signer associated with the relayer creating a Fill. Can be VoidSigner for gas estimation
|
|
144
|
+
* @param repaymentChainId Chain id where relayer repayment is desired
|
|
145
|
+
* @param repaymentAddress Address to which repayment will go to on repaymentChainId
|
|
146
|
+
* @returns FillRelay transaction
|
|
147
|
+
*/
|
|
148
|
+
export declare function getIPFillRelayTx(spokePoolAddr: SvmAddress, solanaClient: SVMProvider, relayData: Omit<RelayData, "recipient" | "outputToken"> & {
|
|
149
|
+
destinationChainId: number;
|
|
150
|
+
recipient: SvmAddress;
|
|
151
|
+
outputToken: SvmAddress;
|
|
152
|
+
}, signer: TransactionSigner, repaymentChainId: number, repaymentAddress: SdkAddress): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
|
|
153
|
+
instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
|
|
154
|
+
version: 0;
|
|
155
|
+
}>, "feePayer">>;
|
|
137
156
|
/**
|
|
138
157
|
* Creates a fill instruction.
|
|
139
158
|
* @param signer - The signer of the transaction.
|
|
@@ -143,10 +162,11 @@ export declare function getFillRelayTx(spokePoolAddr: SvmAddress, solanaClient:
|
|
|
143
162
|
* @param createRecipientAtaIfNeeded - Whether to create a recipient token account.
|
|
144
163
|
* @returns The fill instruction.
|
|
145
164
|
*/
|
|
146
|
-
export declare const createFillInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, fillInput: SvmSpokeClient.FillRelayInput, tokenDecimals: number, createRecipientAtaIfNeeded?: boolean, remainingAccounts?: (WritableAccount | ReadonlyAccount)[]) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
|
|
165
|
+
export declare const createFillInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, fillInput: SvmSpokeClient.FillRelayInput, relayData: Pick<SvmSpokeClient.RelayDataArgs, "outputAmount" | "recipient">, tokenDecimals: number, createRecipientAtaIfNeeded?: boolean, remainingAccounts?: (WritableAccount | ReadonlyAccount)[]) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
|
|
147
166
|
instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
|
|
148
167
|
version: 0;
|
|
149
168
|
}>, "feePayer">>;
|
|
169
|
+
export declare function deserializeMessage(_message: string): AcrossPlusMessage;
|
|
150
170
|
/**
|
|
151
171
|
* Creates a deposit instruction.
|
|
152
172
|
* @param signer - The signer of the transaction.
|
|
@@ -461,7 +461,7 @@ export function createTokenAccountsInstruction(mint, relayer) {
|
|
|
461
461
|
*/
|
|
462
462
|
export function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymentChainId, repaymentAddress) {
|
|
463
463
|
return __awaiter(this, void 0, void 0, function () {
|
|
464
|
-
var depositor, recipient, inputToken, outputToken, exclusiveRelayer, destinationChainId, program, _relayDataHash, relayDataHash, _a, state, delegate, mint, mintInfo, _b, recipientAta, relayerAta, fillStatus, eventAuthority,
|
|
464
|
+
var depositor, recipient, inputToken, outputToken, exclusiveRelayer, destinationChainId, program, _relayDataHash, relayDataHash, _a, state, delegate, mint, mintInfo, _b, recipientAta, relayerAta, fillStatus, eventAuthority, message, svmRelayData, remainingAccounts, acrossPlusMessage_1, fillInput;
|
|
465
465
|
return __generator(this, function (_c) {
|
|
466
466
|
switch (_c.label) {
|
|
467
467
|
case 0:
|
|
@@ -488,8 +488,7 @@ export function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, r
|
|
|
488
488
|
])];
|
|
489
489
|
case 3:
|
|
490
490
|
_b = _c.sent(), recipientAta = _b[0], relayerAta = _b[1], fillStatus = _b[2], eventAuthority = _b[3];
|
|
491
|
-
|
|
492
|
-
message = new Uint8Array(Buffer.from(_message, "hex"));
|
|
491
|
+
message = new Uint8Array(Buffer.from(relayData.message.slice(2), "hex"));
|
|
493
492
|
svmRelayData = {
|
|
494
493
|
depositor: toAddress(depositor),
|
|
495
494
|
recipient: toAddress(recipient),
|
|
@@ -505,9 +504,8 @@ export function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, r
|
|
|
505
504
|
message: message,
|
|
506
505
|
};
|
|
507
506
|
remainingAccounts = [];
|
|
508
|
-
if (message
|
|
509
|
-
|
|
510
|
-
acrossPlusMessage_1 = acrossPlusMessageDecoder.decode(message);
|
|
507
|
+
if (relayData.message !== "0x") {
|
|
508
|
+
acrossPlusMessage_1 = deserializeMessage(relayData.message);
|
|
511
509
|
// The first `remainingAccount` _must_ be the handler address.
|
|
512
510
|
// https://github.com/across-protocol/contracts/blob/3310f8dc716407a5f97ef5fd2eae63df83251f2f/programs/svm-spoke/src/utils/message_utils.rs#L36.
|
|
513
511
|
remainingAccounts.push(getAccountMeta(acrossPlusMessage_1.handler, true));
|
|
@@ -535,7 +533,81 @@ export function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, r
|
|
|
535
533
|
};
|
|
536
534
|
// Pass createRecipientAtaIfNeeded =true to the createFillInstruction function to create the recipient token account
|
|
537
535
|
// if it doesn't exist.
|
|
538
|
-
return [2 /*return*/, createFillInstruction(signer, solanaClient, fillInput, mintInfo.data.decimals, true, remainingAccounts)];
|
|
536
|
+
return [2 /*return*/, createFillInstruction(signer, solanaClient, fillInput, svmRelayData, mintInfo.data.decimals, true, remainingAccounts)];
|
|
537
|
+
}
|
|
538
|
+
});
|
|
539
|
+
});
|
|
540
|
+
}
|
|
541
|
+
/**
|
|
542
|
+
* Creates a fill instruction with an instruction params PDA as the relayData input.
|
|
543
|
+
* @param spokePoolAddr Address of the spoke pool we're trying to fill through
|
|
544
|
+
* @param solanaClient RPC client to interact with Solana chain
|
|
545
|
+
* @param relayData RelayData instance, supplemented with destinationChainId
|
|
546
|
+
* @param signer signer associated with the relayer creating a Fill. Can be VoidSigner for gas estimation
|
|
547
|
+
* @param repaymentChainId Chain id where relayer repayment is desired
|
|
548
|
+
* @param repaymentAddress Address to which repayment will go to on repaymentChainId
|
|
549
|
+
* @returns FillRelay transaction
|
|
550
|
+
*/
|
|
551
|
+
export function getIPFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymentChainId, repaymentAddress) {
|
|
552
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
553
|
+
var program, _relayDataHash, relayDataHash, _a, state, delegate, instructionParams, mint, mintInfo, _b, recipientAta, relayerAta, fillStatus, eventAuthority, remainingAccounts, acrossPlusMessage_2, fillInput;
|
|
554
|
+
return __generator(this, function (_c) {
|
|
555
|
+
switch (_c.label) {
|
|
556
|
+
case 0:
|
|
557
|
+
program = toAddress(spokePoolAddr);
|
|
558
|
+
_relayDataHash = getRelayDataHash(relayData, relayData.destinationChainId);
|
|
559
|
+
relayDataHash = new Uint8Array(Buffer.from(_relayDataHash.slice(2), "hex"));
|
|
560
|
+
return [4 /*yield*/, Promise.all([
|
|
561
|
+
getStatePda(program),
|
|
562
|
+
getFillRelayDelegatePda(relayDataHash, BigInt(repaymentChainId), toAddress(repaymentAddress), program),
|
|
563
|
+
getInstructionParamsPda(program, signer.address),
|
|
564
|
+
])];
|
|
565
|
+
case 1:
|
|
566
|
+
_a = _c.sent(), state = _a[0], delegate = _a[1], instructionParams = _a[2];
|
|
567
|
+
mint = toAddress(relayData.outputToken);
|
|
568
|
+
return [4 /*yield*/, getMintInfo(solanaClient, mint)];
|
|
569
|
+
case 2:
|
|
570
|
+
mintInfo = _c.sent();
|
|
571
|
+
return [4 /*yield*/, Promise.all([
|
|
572
|
+
getAssociatedTokenAddress(relayData.recipient, relayData.outputToken, mintInfo.programAddress),
|
|
573
|
+
getAssociatedTokenAddress(SvmAddress.from(signer.address), relayData.outputToken, mintInfo.programAddress),
|
|
574
|
+
getFillStatusPda(program, relayData, relayData.destinationChainId),
|
|
575
|
+
getEventAuthority(program),
|
|
576
|
+
])];
|
|
577
|
+
case 3:
|
|
578
|
+
_b = _c.sent(), recipientAta = _b[0], relayerAta = _b[1], fillStatus = _b[2], eventAuthority = _b[3];
|
|
579
|
+
remainingAccounts = [];
|
|
580
|
+
if (relayData.message !== "0x") {
|
|
581
|
+
acrossPlusMessage_2 = deserializeMessage(relayData.message);
|
|
582
|
+
// The first `remainingAccount` _must_ be the handler address.
|
|
583
|
+
// https://github.com/across-protocol/contracts/blob/3310f8dc716407a5f97ef5fd2eae63df83251f2f/programs/svm-spoke/src/utils/message_utils.rs#L36.
|
|
584
|
+
remainingAccounts.push(getAccountMeta(acrossPlusMessage_2.handler, true));
|
|
585
|
+
remainingAccounts.push.apply(remainingAccounts, acrossPlusMessage_2.accounts.map(function (account, idx) {
|
|
586
|
+
return getAccountMeta(account, idx < acrossPlusMessage_2.accounts.length - acrossPlusMessage_2.read_only_len);
|
|
587
|
+
}));
|
|
588
|
+
}
|
|
589
|
+
fillInput = {
|
|
590
|
+
signer: signer,
|
|
591
|
+
state: state,
|
|
592
|
+
delegate: delegate,
|
|
593
|
+
mint: mint,
|
|
594
|
+
relayerTokenAccount: relayerAta,
|
|
595
|
+
recipientTokenAccount: recipientAta,
|
|
596
|
+
fillStatus: fillStatus,
|
|
597
|
+
tokenProgram: mintInfo.programAddress,
|
|
598
|
+
associatedTokenProgram: ASSOCIATED_TOKEN_PROGRAM_ADDRESS,
|
|
599
|
+
systemProgram: SYSTEM_PROGRAM_ADDRESS,
|
|
600
|
+
eventAuthority: eventAuthority,
|
|
601
|
+
program: program,
|
|
602
|
+
instructionParams: instructionParams,
|
|
603
|
+
relayHash: relayDataHash,
|
|
604
|
+
relayData: null,
|
|
605
|
+
repaymentChainId: null,
|
|
606
|
+
repaymentAddress: null,
|
|
607
|
+
};
|
|
608
|
+
// Pass createRecipientAtaIfNeeded =true to the createFillInstruction function to create the recipient token account
|
|
609
|
+
// if it doesn't exist.
|
|
610
|
+
return [2 /*return*/, createFillInstruction(signer, solanaClient, fillInput, { outputAmount: relayData.outputAmount.toBigInt(), recipient: toAddress(relayData.recipient) }, mintInfo.data.decimals, true, remainingAccounts)];
|
|
539
611
|
}
|
|
540
612
|
});
|
|
541
613
|
});
|
|
@@ -549,7 +621,7 @@ export function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, r
|
|
|
549
621
|
* @param createRecipientAtaIfNeeded - Whether to create a recipient token account.
|
|
550
622
|
* @returns The fill instruction.
|
|
551
623
|
*/
|
|
552
|
-
export var createFillInstruction = function (signer, solanaClient, fillInput, tokenDecimals, createRecipientAtaIfNeeded, remainingAccounts) {
|
|
624
|
+
export var createFillInstruction = function (signer, solanaClient, fillInput, relayData, tokenDecimals, createRecipientAtaIfNeeded, remainingAccounts) {
|
|
553
625
|
if (createRecipientAtaIfNeeded === void 0) { createRecipientAtaIfNeeded = true; }
|
|
554
626
|
if (remainingAccounts === void 0) { remainingAccounts = []; }
|
|
555
627
|
return __awaiter(void 0, void 0, void 0, function () {
|
|
@@ -565,7 +637,7 @@ export var createFillInstruction = function (signer, solanaClient, fillInput, to
|
|
|
565
637
|
mint: fillInput.mint,
|
|
566
638
|
delegate: fillInput.delegate,
|
|
567
639
|
owner: fillInput.signer,
|
|
568
|
-
amount:
|
|
640
|
+
amount: relayData.outputAmount,
|
|
569
641
|
decimals: tokenDecimals,
|
|
570
642
|
}, {
|
|
571
643
|
programAddress: mintInfo.programAddress,
|
|
@@ -573,7 +645,7 @@ export var createFillInstruction = function (signer, solanaClient, fillInput, to
|
|
|
573
645
|
getCreateAssociatedTokenIdempotentIx = function () {
|
|
574
646
|
return getCreateAssociatedTokenIdempotentInstruction({
|
|
575
647
|
payer: signer,
|
|
576
|
-
owner:
|
|
648
|
+
owner: relayData.recipient,
|
|
577
649
|
mint: fillInput.mint,
|
|
578
650
|
ata: fillInput.recipientTokenAccount,
|
|
579
651
|
systemProgram: SYSTEM_PROGRAM_ADDRESS,
|
|
@@ -594,6 +666,13 @@ export var createFillInstruction = function (signer, solanaClient, fillInput, to
|
|
|
594
666
|
});
|
|
595
667
|
});
|
|
596
668
|
};
|
|
669
|
+
export function deserializeMessage(_message) {
|
|
670
|
+
var message = new Uint8Array(Buffer.from(_message.slice(2), "hex"));
|
|
671
|
+
// Add remaining accounts if the relayData has a non-empty message.
|
|
672
|
+
// @dev ! since in the context of creating a `fillRelayTx`, `relayData` must be defined.
|
|
673
|
+
var acrossPlusMessageDecoder = getAcrossPlusMessageDecoder();
|
|
674
|
+
return acrossPlusMessageDecoder.decode(message);
|
|
675
|
+
}
|
|
597
676
|
/**
|
|
598
677
|
* Creates a deposit instruction.
|
|
599
678
|
* @param signer - The signer of the transaction.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../../src/arch/svm/SpokeUtils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../../src/arch/svm/SpokeUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import { Account, Address, FetchAccountConfig, IAccountMeta, IInstruction, KeyPa
|
|
|
4
4
|
import { Logger } from "winston";
|
|
5
5
|
import { DepositWithBlock, FillStatus, FillWithBlock, RelayData } from "../../interfaces";
|
|
6
6
|
import { BigNumber, EvmAddress, Address as SdkAddress, SvmAddress } from "../../utils";
|
|
7
|
+
import { type AcrossPlusMessage } from "./";
|
|
7
8
|
import { SvmCpiEventsClient } from "./eventsClient";
|
|
8
9
|
import { AttestedCCTPMessage, SVMProvider } from "./types";
|
|
9
10
|
/**
|
|
@@ -134,6 +135,24 @@ export declare function getFillRelayTx(spokePoolAddr: SvmAddress, solanaClient:
|
|
|
134
135
|
instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
|
|
135
136
|
version: 0;
|
|
136
137
|
}>, "feePayer">>;
|
|
138
|
+
/**
|
|
139
|
+
* Creates a fill instruction with an instruction params PDA as the relayData input.
|
|
140
|
+
* @param spokePoolAddr Address of the spoke pool we're trying to fill through
|
|
141
|
+
* @param solanaClient RPC client to interact with Solana chain
|
|
142
|
+
* @param relayData RelayData instance, supplemented with destinationChainId
|
|
143
|
+
* @param signer signer associated with the relayer creating a Fill. Can be VoidSigner for gas estimation
|
|
144
|
+
* @param repaymentChainId Chain id where relayer repayment is desired
|
|
145
|
+
* @param repaymentAddress Address to which repayment will go to on repaymentChainId
|
|
146
|
+
* @returns FillRelay transaction
|
|
147
|
+
*/
|
|
148
|
+
export declare function getIPFillRelayTx(spokePoolAddr: SvmAddress, solanaClient: SVMProvider, relayData: Omit<RelayData, "recipient" | "outputToken"> & {
|
|
149
|
+
destinationChainId: number;
|
|
150
|
+
recipient: SvmAddress;
|
|
151
|
+
outputToken: SvmAddress;
|
|
152
|
+
}, signer: TransactionSigner, repaymentChainId: number, repaymentAddress: SdkAddress): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
|
|
153
|
+
instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
|
|
154
|
+
version: 0;
|
|
155
|
+
}>, "feePayer">>;
|
|
137
156
|
/**
|
|
138
157
|
* Creates a fill instruction.
|
|
139
158
|
* @param signer - The signer of the transaction.
|
|
@@ -143,10 +162,11 @@ export declare function getFillRelayTx(spokePoolAddr: SvmAddress, solanaClient:
|
|
|
143
162
|
* @param createRecipientAtaIfNeeded - Whether to create a recipient token account.
|
|
144
163
|
* @returns The fill instruction.
|
|
145
164
|
*/
|
|
146
|
-
export declare const createFillInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, fillInput: SvmSpokeClient.FillRelayInput, tokenDecimals: number, createRecipientAtaIfNeeded?: boolean, remainingAccounts?: (WritableAccount | ReadonlyAccount)[]) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
|
|
165
|
+
export declare const createFillInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, fillInput: SvmSpokeClient.FillRelayInput, relayData: Pick<SvmSpokeClient.RelayDataArgs, "outputAmount" | "recipient">, tokenDecimals: number, createRecipientAtaIfNeeded?: boolean, remainingAccounts?: (WritableAccount | ReadonlyAccount)[]) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
|
|
147
166
|
instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
|
|
148
167
|
version: 0;
|
|
149
168
|
}>, "feePayer">>;
|
|
169
|
+
export declare function deserializeMessage(_message: string): AcrossPlusMessage;
|
|
150
170
|
/**
|
|
151
171
|
* Creates a deposit instruction.
|
|
152
172
|
* @param signer - The signer of the transaction.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpokeUtils.d.ts","sourceRoot":"","sources":["../../../../src/arch/svm/SpokeUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAA8B,MAAM,4BAA4B,CAAC;AAKlH,OAAO,EAEL,IAAI,EAKL,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,OAAO,EAEP,OAAO,EACP,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,kBAAkB,EAalB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAA2B,MAAM,kBAAkB,CAAC;AACnH,OAAO,EACL,SAAS,EACT,UAAU,EACV,OAAO,IAAI,UAAU,EACrB,UAAU,EAUX,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"SpokeUtils.d.ts","sourceRoot":"","sources":["../../../../src/arch/svm/SpokeUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAA8B,MAAM,4BAA4B,CAAC;AAKlH,OAAO,EAEL,IAAI,EAKL,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,OAAO,EAEP,OAAO,EACP,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,kBAAkB,EAalB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAA2B,MAAM,kBAAkB,CAAC;AACnH,OAAO,EACL,SAAS,EACT,UAAU,EACV,OAAO,IAAI,UAAU,EACrB,UAAU,EAUX,MAAM,aAAa,CAAC;AACrB,OAAO,EAiBL,KAAK,iBAAiB,EACvB,MAAM,IAAI,CAAC;AACZ,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,EAAE,mBAAmB,EAAiB,WAAW,EAAE,MAAM,SAAS,CAAC;AAQ1E;;;GAGG;AACH,eAAO,MAAM,gBAAgB,MAAM,CAAC;AAEpC,KAAK,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,WAAW,GAAG,aAAa,CAAC,GAAG;IAC9D,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,UAAU,CAAC;IACtB,WAAW,EAAE,UAAU,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,WAAW,EACrB,UAAU,EAAE,MAAM,EAClB,UAAU,SAAI,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7B;AA8CD;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAG/F;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAE7F;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,kBAAkB,EAC/B,SAAS,EAAE,SAAS,EACpB,IAAI,CAAC,EAAE,MAAM,EACb,eAAe,SAAmB,GACjC,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CA6CvC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,OAAO,EAClB,SAAS,EAAE,SAAS,EACpB,kBAAkB,EAAE,MAAM,EAC1B,eAAe,EAAE,kBAAkB,EACnC,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,UAAU,CAAC,CA8BrB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,OAAO,EAClB,SAAS,EAAE,SAAS,EAAE,EACtB,kBAAkB,EAAE,MAAM,EAC1B,eAAe,EAAE,kBAAkB,EACnC,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,CAAC,UAAU,GAAG,SAAS,CAAC,EAAE,CAAC,CAiErC;AAED;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,SAAS,EACpB,kBAAkB,EAAE,MAAM,EAC1B,eAAe,EAAE,kBAAkB,EACnC,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAoDpC;AAED;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACjC,qBAAqB,EAAE,OAAO,CAAC,MAAM,CAAC,EACtC,gBAAgB,GAAE,UAAU,GAAG,UAA4C,EAC3E,gBAAgB,SAA+B,qNAsEhD;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC,GACjC,cAAc,CAAC,8BAA8B,CAK/C;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAClC,aAAa,EAAE,UAAU,EACzB,YAAY,EAAE,WAAW,EACzB,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,WAAW,GAAG,aAAa,CAAC,GAAG;IACxD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,UAAU,CAAC;IACtB,WAAW,EAAE,UAAU,CAAC;CACzB,EACD,MAAM,EAAE,iBAAiB,EACzB,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,UAAU;;;iBAwF7B;AAED;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,UAAU,EACzB,YAAY,EAAE,WAAW,EACzB,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,WAAW,GAAG,aAAa,CAAC,GAAG;IACxD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,UAAU,CAAC;IACtB,WAAW,EAAE,UAAU,CAAC;CACzB,EACD,MAAM,EAAE,iBAAiB,EACzB,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,UAAU;;;iBAoE7B;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,WACxB,iBAAiB,gBACX,WAAW,aACd,eAAe,cAAc,aAC7B,KAAK,eAAe,aAAa,EAAE,cAAc,GAAG,WAAW,CAAC,iBAC5D,MAAM,+BACO,OAAO,sBAChB,CAAC,eAAe,GAAG,eAAe,CAAC,EAAE;;;gBAuCzD,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAMtE;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,WAC3B,iBAAiB,gBACX,WAAW,gBACX,eAAe,YAAY,iBAC1B,MAAM,2BACG,OAAO;;;gBAiChC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gCAAgC,WACnC,iBAAiB,gBACX,WAAW,wBACH,eAAe,oBAAoB;;;gBAO1D,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,aAAa,EAAE,UAAU,EACzB,YAAY,EAAE,WAAW,EACzB,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,WAAW,GAAG,aAAa,CAAC,GAAG;IACxD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,UAAU,CAAC;IACtB,WAAW,EAAE,UAAU,CAAC;CACzB,EACD,MAAM,EAAE,iBAAiB;;;iBAwD1B;AAED;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B,WAChC,iBAAiB,gBACX,WAAW,iBACV,OAAO;;;gBAUvB,CAAC;AAEF,eAAO,MAAM,+BAA+B,WAClC,iBAAiB,gBACX,WAAW,SAClB,yBAAyB,mBAAmB,qBAChC,aAAa,MAAM,CAAC,EAAE;;;gBAO1C,CAAC;AAEF,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,UAAU,EAChB,cAAc,GAAE,OAAO,CAAC,MAAM,CAAyB,GACtD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAO1B;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,GAAG,MAAM,CAmBzF;AAsFD;;;;;;GAMG;AACH,wBAAsB,4CAA4C,CAChE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAC1B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACjC,YAAY,SAAM,GACjB,OAAO,CAAC,YAAY,EAAE,CAAC,CA2BzB;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,WAAW,EAAE;IACX,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3B,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,kBAAkB,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,OAAO,EAAE,UAAU,CAAC;CACrB,EACD,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,GACzB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CA6B1B;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,WAAW,EAAE;IACX,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3B,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,kBAAkB,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,UAAU,CAAC;CACrB,EACD,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,GACzB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CA4B1B;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,UAAU,EACrB,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,EACjC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,GACzB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAkB1B;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,6BAA6B,iBAC1B,WAAW,UACjB,aAAa,SACd,MAAM,gBACC,MAAM,KACnB,QAAQ,OAAO,CAajB,CAAC;AAEF;;;GAGG;AACH,wBAAsB,kCAAkC,CACtD,YAAY,EAAE,WAAW,EACzB,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAmDjC;AA2ED;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAC7C,YAAY,EAAE,WAAW,EACzB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,mBAAmB,EAC5B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,UAAU;;;iBAqDzB;AAED;;;;;;;;;;GAUG;AAEH,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,WAAW,EACzB,gBAAgB,EAAE,mBAAmB,EAAE,EACvC,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,UAAU,EACxB,QAAQ,UAAQ,EAChB,UAAU,SAAI,GACb,OAAO,CAAC,MAAM,EAAE,CAAC,CA4BnB;AAED,wBAAsB,WAAW,CAC/B,YAAY,EAAE,WAAW,EACzB,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EACrB,MAAM,CAAC,EAAE,kBAAkB,GAC1B,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAEhC"}
|
package/package.json
CHANGED
|
@@ -73,6 +73,7 @@ import {
|
|
|
73
73
|
getAccountMeta,
|
|
74
74
|
toSvmRelayData,
|
|
75
75
|
getInstructionParamsPda,
|
|
76
|
+
type AcrossPlusMessage,
|
|
76
77
|
} from "./";
|
|
77
78
|
import { SvmCpiEventsClient } from "./eventsClient";
|
|
78
79
|
import { SVM_BLOCK_NOT_AVAILABLE, SVM_SLOT_SKIPPED, isSolanaError } from "./provider";
|
|
@@ -608,8 +609,7 @@ export async function getFillRelayTx(
|
|
|
608
609
|
getEventAuthority(program),
|
|
609
610
|
]);
|
|
610
611
|
|
|
611
|
-
const
|
|
612
|
-
const message = new Uint8Array(Buffer.from(_message, "hex"));
|
|
612
|
+
const message = new Uint8Array(Buffer.from(relayData.message.slice(2), "hex"));
|
|
613
613
|
const svmRelayData: SvmSpokeClient.FillRelayInput["relayData"] = {
|
|
614
614
|
depositor: toAddress(depositor),
|
|
615
615
|
recipient: toAddress(recipient),
|
|
@@ -628,9 +628,8 @@ export async function getFillRelayTx(
|
|
|
628
628
|
// Add remaining accounts if the relayData has a non-empty message.
|
|
629
629
|
// @dev ! since in the context of creating a `fillRelayTx`, `relayData` must be defined.
|
|
630
630
|
const remainingAccounts: (WritableAccount | ReadonlyAccount)[] = [];
|
|
631
|
-
if (message
|
|
632
|
-
const
|
|
633
|
-
const acrossPlusMessage = acrossPlusMessageDecoder.decode(message);
|
|
631
|
+
if (relayData.message !== "0x") {
|
|
632
|
+
const acrossPlusMessage = deserializeMessage(relayData.message);
|
|
634
633
|
// The first `remainingAccount` _must_ be the handler address.
|
|
635
634
|
// https://github.com/across-protocol/contracts/blob/3310f8dc716407a5f97ef5fd2eae63df83251f2f/programs/svm-spoke/src/utils/message_utils.rs#L36.
|
|
636
635
|
remainingAccounts.push(getAccountMeta(acrossPlusMessage.handler, true));
|
|
@@ -661,7 +660,105 @@ export async function getFillRelayTx(
|
|
|
661
660
|
};
|
|
662
661
|
// Pass createRecipientAtaIfNeeded =true to the createFillInstruction function to create the recipient token account
|
|
663
662
|
// if it doesn't exist.
|
|
664
|
-
return createFillInstruction(
|
|
663
|
+
return createFillInstruction(
|
|
664
|
+
signer,
|
|
665
|
+
solanaClient,
|
|
666
|
+
fillInput,
|
|
667
|
+
svmRelayData,
|
|
668
|
+
mintInfo.data.decimals,
|
|
669
|
+
true,
|
|
670
|
+
remainingAccounts
|
|
671
|
+
);
|
|
672
|
+
}
|
|
673
|
+
|
|
674
|
+
/**
|
|
675
|
+
* Creates a fill instruction with an instruction params PDA as the relayData input.
|
|
676
|
+
* @param spokePoolAddr Address of the spoke pool we're trying to fill through
|
|
677
|
+
* @param solanaClient RPC client to interact with Solana chain
|
|
678
|
+
* @param relayData RelayData instance, supplemented with destinationChainId
|
|
679
|
+
* @param signer signer associated with the relayer creating a Fill. Can be VoidSigner for gas estimation
|
|
680
|
+
* @param repaymentChainId Chain id where relayer repayment is desired
|
|
681
|
+
* @param repaymentAddress Address to which repayment will go to on repaymentChainId
|
|
682
|
+
* @returns FillRelay transaction
|
|
683
|
+
*/
|
|
684
|
+
export async function getIPFillRelayTx(
|
|
685
|
+
spokePoolAddr: SvmAddress,
|
|
686
|
+
solanaClient: SVMProvider,
|
|
687
|
+
relayData: Omit<RelayData, "recipient" | "outputToken"> & {
|
|
688
|
+
destinationChainId: number;
|
|
689
|
+
recipient: SvmAddress;
|
|
690
|
+
outputToken: SvmAddress;
|
|
691
|
+
},
|
|
692
|
+
signer: TransactionSigner,
|
|
693
|
+
repaymentChainId: number,
|
|
694
|
+
repaymentAddress: SdkAddress
|
|
695
|
+
) {
|
|
696
|
+
const program = toAddress(spokePoolAddr);
|
|
697
|
+
const _relayDataHash = getRelayDataHash(relayData, relayData.destinationChainId);
|
|
698
|
+
const relayDataHash = new Uint8Array(Buffer.from(_relayDataHash.slice(2), "hex"));
|
|
699
|
+
|
|
700
|
+
const [state, delegate, instructionParams] = await Promise.all([
|
|
701
|
+
getStatePda(program),
|
|
702
|
+
getFillRelayDelegatePda(relayDataHash, BigInt(repaymentChainId), toAddress(repaymentAddress), program),
|
|
703
|
+
getInstructionParamsPda(program, signer.address),
|
|
704
|
+
]);
|
|
705
|
+
|
|
706
|
+
const mint = toAddress(relayData.outputToken);
|
|
707
|
+
const mintInfo = await getMintInfo(solanaClient, mint);
|
|
708
|
+
|
|
709
|
+
const [recipientAta, relayerAta, fillStatus, eventAuthority] = await Promise.all([
|
|
710
|
+
getAssociatedTokenAddress(relayData.recipient, relayData.outputToken, mintInfo.programAddress),
|
|
711
|
+
getAssociatedTokenAddress(SvmAddress.from(signer.address), relayData.outputToken, mintInfo.programAddress),
|
|
712
|
+
getFillStatusPda(program, relayData, relayData.destinationChainId),
|
|
713
|
+
getEventAuthority(program),
|
|
714
|
+
]);
|
|
715
|
+
|
|
716
|
+
// Add remaining accounts if the relayData has a non-empty message.
|
|
717
|
+
// @dev ! since in the context of creating a `fillRelayTx`, `relayData` must be defined.
|
|
718
|
+
const remainingAccounts: (WritableAccount | ReadonlyAccount)[] = [];
|
|
719
|
+
if (relayData.message !== "0x") {
|
|
720
|
+
const acrossPlusMessage = deserializeMessage(relayData.message);
|
|
721
|
+
// The first `remainingAccount` _must_ be the handler address.
|
|
722
|
+
// https://github.com/across-protocol/contracts/blob/3310f8dc716407a5f97ef5fd2eae63df83251f2f/programs/svm-spoke/src/utils/message_utils.rs#L36.
|
|
723
|
+
remainingAccounts.push(getAccountMeta(acrossPlusMessage.handler, true));
|
|
724
|
+
remainingAccounts.push(
|
|
725
|
+
...acrossPlusMessage.accounts.map((account, idx) =>
|
|
726
|
+
getAccountMeta(account, idx < acrossPlusMessage.accounts.length - acrossPlusMessage.read_only_len)
|
|
727
|
+
)
|
|
728
|
+
);
|
|
729
|
+
}
|
|
730
|
+
|
|
731
|
+
const fillInput: SvmSpokeClient.FillRelayInput = {
|
|
732
|
+
signer: signer,
|
|
733
|
+
state,
|
|
734
|
+
delegate,
|
|
735
|
+
mint,
|
|
736
|
+
relayerTokenAccount: relayerAta,
|
|
737
|
+
recipientTokenAccount: recipientAta,
|
|
738
|
+
fillStatus,
|
|
739
|
+
tokenProgram: mintInfo.programAddress,
|
|
740
|
+
associatedTokenProgram: ASSOCIATED_TOKEN_PROGRAM_ADDRESS,
|
|
741
|
+
systemProgram: SYSTEM_PROGRAM_ADDRESS,
|
|
742
|
+
eventAuthority,
|
|
743
|
+
program,
|
|
744
|
+
instructionParams,
|
|
745
|
+
relayHash: relayDataHash,
|
|
746
|
+
relayData: null,
|
|
747
|
+
repaymentChainId: null,
|
|
748
|
+
repaymentAddress: null,
|
|
749
|
+
};
|
|
750
|
+
|
|
751
|
+
// Pass createRecipientAtaIfNeeded =true to the createFillInstruction function to create the recipient token account
|
|
752
|
+
// if it doesn't exist.
|
|
753
|
+
return createFillInstruction(
|
|
754
|
+
signer,
|
|
755
|
+
solanaClient,
|
|
756
|
+
fillInput,
|
|
757
|
+
{ outputAmount: relayData.outputAmount.toBigInt(), recipient: toAddress(relayData.recipient) },
|
|
758
|
+
mintInfo.data.decimals,
|
|
759
|
+
true,
|
|
760
|
+
remainingAccounts
|
|
761
|
+
);
|
|
665
762
|
}
|
|
666
763
|
|
|
667
764
|
/**
|
|
@@ -677,6 +774,7 @@ export const createFillInstruction = async (
|
|
|
677
774
|
signer: TransactionSigner,
|
|
678
775
|
solanaClient: SVMProvider,
|
|
679
776
|
fillInput: SvmSpokeClient.FillRelayInput,
|
|
777
|
+
relayData: Pick<SvmSpokeClient.RelayDataArgs, "outputAmount" | "recipient">,
|
|
680
778
|
tokenDecimals: number,
|
|
681
779
|
createRecipientAtaIfNeeded: boolean = true,
|
|
682
780
|
remainingAccounts: (WritableAccount | ReadonlyAccount)[] = []
|
|
@@ -688,7 +786,7 @@ export const createFillInstruction = async (
|
|
|
688
786
|
mint: fillInput.mint,
|
|
689
787
|
delegate: fillInput.delegate,
|
|
690
788
|
owner: fillInput.signer,
|
|
691
|
-
amount:
|
|
789
|
+
amount: relayData.outputAmount,
|
|
692
790
|
decimals: tokenDecimals,
|
|
693
791
|
},
|
|
694
792
|
{
|
|
@@ -699,7 +797,7 @@ export const createFillInstruction = async (
|
|
|
699
797
|
const getCreateAssociatedTokenIdempotentIx = () =>
|
|
700
798
|
getCreateAssociatedTokenIdempotentInstruction({
|
|
701
799
|
payer: signer,
|
|
702
|
-
owner:
|
|
800
|
+
owner: relayData.recipient,
|
|
703
801
|
mint: fillInput.mint,
|
|
704
802
|
ata: fillInput.recipientTokenAccount,
|
|
705
803
|
systemProgram: SYSTEM_PROGRAM_ADDRESS,
|
|
@@ -720,6 +818,14 @@ export const createFillInstruction = async (
|
|
|
720
818
|
);
|
|
721
819
|
};
|
|
722
820
|
|
|
821
|
+
export function deserializeMessage(_message: string): AcrossPlusMessage {
|
|
822
|
+
const message = new Uint8Array(Buffer.from(_message.slice(2), "hex"));
|
|
823
|
+
// Add remaining accounts if the relayData has a non-empty message.
|
|
824
|
+
// @dev ! since in the context of creating a `fillRelayTx`, `relayData` must be defined.
|
|
825
|
+
const acrossPlusMessageDecoder = getAcrossPlusMessageDecoder();
|
|
826
|
+
return acrossPlusMessageDecoder.decode(message);
|
|
827
|
+
}
|
|
828
|
+
|
|
723
829
|
/**
|
|
724
830
|
* Creates a deposit instruction.
|
|
725
831
|
* @param signer - The signer of the transaction.
|