@across-protocol/sdk 4.3.3 → 4.3.5

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.
Files changed (80) hide show
  1. package/dist/cjs/arch/svm/SpokeUtils.d.ts +13 -5
  2. package/dist/cjs/arch/svm/SpokeUtils.js +74 -5
  3. package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -1
  4. package/dist/cjs/arch/svm/utils.d.ts +6 -1
  5. package/dist/cjs/arch/svm/utils.js +67 -1
  6. package/dist/cjs/arch/svm/utils.js.map +1 -1
  7. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +22 -16
  8. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  9. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts +2 -2
  10. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +45 -19
  11. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  12. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.d.ts +1 -1
  13. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js +4 -3
  14. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js.map +1 -1
  15. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.d.ts +1 -1
  16. package/dist/cjs/interfaces/SpokePool.d.ts +18 -0
  17. package/dist/cjs/interfaces/SpokePool.js.map +1 -1
  18. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.d.ts +2 -1
  19. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js +7 -68
  20. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
  21. package/dist/cjs/utils/AddressUtils.d.ts +2 -0
  22. package/dist/cjs/utils/AddressUtils.js +4 -0
  23. package/dist/cjs/utils/AddressUtils.js.map +1 -1
  24. package/dist/cjs/utils/DepositUtils.d.ts +3 -1
  25. package/dist/cjs/utils/DepositUtils.js +9 -1
  26. package/dist/cjs/utils/DepositUtils.js.map +1 -1
  27. package/dist/esm/arch/svm/SpokeUtils.d.ts +23 -5
  28. package/dist/esm/arch/svm/SpokeUtils.js +86 -5
  29. package/dist/esm/arch/svm/SpokeUtils.js.map +1 -1
  30. package/dist/esm/arch/svm/utils.d.ts +20 -1
  31. package/dist/esm/arch/svm/utils.js +76 -1
  32. package/dist/esm/arch/svm/utils.js.map +1 -1
  33. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +24 -18
  34. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  35. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts +2 -2
  36. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +55 -32
  37. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  38. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.d.ts +1 -1
  39. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js +5 -4
  40. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js.map +1 -1
  41. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.d.ts +1 -1
  42. package/dist/esm/interfaces/SpokePool.d.ts +18 -0
  43. package/dist/esm/interfaces/SpokePool.js.map +1 -1
  44. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.d.ts +2 -1
  45. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js +9 -73
  46. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
  47. package/dist/esm/utils/AddressUtils.d.ts +2 -0
  48. package/dist/esm/utils/AddressUtils.js +4 -0
  49. package/dist/esm/utils/AddressUtils.js.map +1 -1
  50. package/dist/esm/utils/DepositUtils.d.ts +15 -1
  51. package/dist/esm/utils/DepositUtils.js +19 -1
  52. package/dist/esm/utils/DepositUtils.js.map +1 -1
  53. package/dist/types/arch/svm/SpokeUtils.d.ts +23 -5
  54. package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -1
  55. package/dist/types/arch/svm/utils.d.ts +20 -1
  56. package/dist/types/arch/svm/utils.d.ts.map +1 -1
  57. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  58. package/dist/types/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts +2 -2
  59. package/dist/types/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts.map +1 -1
  60. package/dist/types/clients/mocks/MockSvmCpiEventsClient.d.ts +1 -1
  61. package/dist/types/clients/mocks/MockSvmCpiEventsClient.d.ts.map +1 -1
  62. package/dist/types/clients/mocks/MockSvmSpokePoolClient.d.ts +1 -1
  63. package/dist/types/interfaces/SpokePool.d.ts +18 -0
  64. package/dist/types/interfaces/SpokePool.d.ts.map +1 -1
  65. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts +2 -1
  66. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts.map +1 -1
  67. package/dist/types/utils/AddressUtils.d.ts +2 -0
  68. package/dist/types/utils/AddressUtils.d.ts.map +1 -1
  69. package/dist/types/utils/DepositUtils.d.ts +15 -1
  70. package/dist/types/utils/DepositUtils.d.ts.map +1 -1
  71. package/package.json +2 -2
  72. package/src/arch/svm/SpokeUtils.ts +97 -6
  73. package/src/arch/svm/utils.ts +61 -1
  74. package/src/clients/BundleDataClient/BundleDataClient.ts +12 -6
  75. package/src/clients/BundleDataClient/utils/PoolRebalanceUtils.ts +52 -29
  76. package/src/clients/mocks/MockSvmCpiEventsClient.ts +5 -3
  77. package/src/interfaces/SpokePool.ts +23 -0
  78. package/src/relayFeeCalculator/chain-queries/svmQuery.ts +7 -93
  79. package/src/utils/AddressUtils.ts +5 -0
  80. package/src/utils/DepositUtils.ts +49 -1
@@ -8,12 +8,14 @@ export declare function toEvmAddress(hexString: string): string;
8
8
  export declare function isValidEvmAddress(address: string): boolean;
9
9
  export declare function toAddressType(address: string, chainId: number): Address;
10
10
  export declare abstract class Address {
11
+ readonly __address_type_brand = true;
11
12
  readonly rawAddress: Uint8Array;
12
13
  evmAddress: string | undefined;
13
14
  bytes32Address: string | undefined;
14
15
  svmAddress: string | undefined;
15
16
  bnAddress: BigNumber | undefined;
16
17
  constructor(_rawAddress: Uint8Array);
18
+ static isAddress(obj: unknown): obj is Address;
17
19
  toBytes32(): string;
18
20
  truncateToBytes20(): string;
19
21
  toBase58(): string;
@@ -77,6 +77,7 @@ function toAddressType(address, chainId) {
77
77
  exports.toAddressType = toAddressType;
78
78
  var Address = (function () {
79
79
  function Address(_rawAddress) {
80
+ this.__address_type_brand = true;
80
81
  this.evmAddress = undefined;
81
82
  this.bytes32Address = undefined;
82
83
  this.svmAddress = undefined;
@@ -86,6 +87,9 @@ var Address = (function () {
86
87
  }
87
88
  this.rawAddress = ethers_1.utils.zeroPad(_rawAddress, 32);
88
89
  }
90
+ Address.isAddress = function (obj) {
91
+ return "__address_type_brand" in obj;
92
+ };
89
93
  Address.prototype.toBytes32 = function () {
90
94
  var _a;
91
95
  return ((_a = this.bytes32Address) !== null && _a !== void 0 ? _a : (this.bytes32Address = ethers_1.utils.hexZeroPad(ethers_1.utils.hexlify(this.rawAddress), 32).toLowerCase()));
@@ -1 +1 @@
1
- {"version":3,"file":"AddressUtils.js","sourceRoot":"","sources":["../../../src/utils/AddressUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AddressUtils.js","sourceRoot":"","sources":["../../../src/utils/AddressUtils.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { SpokePoolClient } from "../clients";
2
- import { CachingMechanismInterface, Deposit, DepositWithBlock, Fill, RelayData, SlowFillRequest } from "../interfaces";
2
+ import { CachingMechanismInterface, Deposit, DepositWithBlock, Fill, RelayData, SlowFillRequest, ConvertedRelayData, ConvertedFill } from "../interfaces";
3
3
  export declare enum InvalidFill {
4
4
  DepositIdInvalid = 0,
5
5
  DepositIdNotFound = 1,
@@ -35,3 +35,5 @@ export declare function isMessageEmpty(message?: string): boolean;
35
35
  export declare function isFillOrSlowFillRequestMessageEmpty(message: string): boolean;
36
36
  export declare function isDepositSpedUp(deposit: Deposit): boolean;
37
37
  export declare function resolveDepositMessage(deposit: Deposit): string;
38
+ export declare function convertRelayDataParamsToBytes32(relayData: RelayData): ConvertedRelayData;
39
+ export declare function convertFillParamsToBytes32(fill: Fill): ConvertedFill;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resolveDepositMessage = exports.isDepositSpedUp = exports.isFillOrSlowFillRequestMessageEmpty = exports.isMessageEmpty = exports.isZeroValueFillOrSlowFillRequest = exports.invalidOutputToken = exports.isZeroValueDeposit = exports.validateFillForDeposit = exports.getRelayEventKey = exports.queryHistoricalDepositForFill = exports.InvalidFill = void 0;
3
+ exports.convertFillParamsToBytes32 = exports.convertRelayDataParamsToBytes32 = exports.resolveDepositMessage = exports.isDepositSpedUp = exports.isFillOrSlowFillRequestMessageEmpty = exports.isMessageEmpty = exports.isZeroValueFillOrSlowFillRequest = exports.invalidOutputToken = exports.isZeroValueDeposit = exports.validateFillForDeposit = exports.getRelayEventKey = exports.queryHistoricalDepositForFill = exports.InvalidFill = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var assert_1 = tslib_1.__importDefault(require("assert"));
6
6
  var constants_1 = require("../constants");
@@ -178,4 +178,12 @@ function resolveDepositMessage(deposit) {
178
178
  return message;
179
179
  }
180
180
  exports.resolveDepositMessage = resolveDepositMessage;
181
+ function convertRelayDataParamsToBytes32(relayData) {
182
+ return tslib_1.__assign(tslib_1.__assign({}, relayData), { depositor: relayData.depositor.toBytes32(), recipient: relayData.recipient.toBytes32(), inputToken: relayData.inputToken.toBytes32(), outputToken: relayData.outputToken.toBytes32(), exclusiveRelayer: relayData.exclusiveRelayer.toBytes32() });
183
+ }
184
+ exports.convertRelayDataParamsToBytes32 = convertRelayDataParamsToBytes32;
185
+ function convertFillParamsToBytes32(fill) {
186
+ return tslib_1.__assign(tslib_1.__assign({}, fill), { depositor: fill.depositor.toBytes32(), recipient: fill.recipient.toBytes32(), inputToken: fill.inputToken.toBytes32(), outputToken: fill.outputToken.toBytes32(), exclusiveRelayer: fill.exclusiveRelayer.toBytes32(), relayer: fill.relayer.toBytes32(), relayExecutionInfo: tslib_1.__assign(tslib_1.__assign({}, fill.relayExecutionInfo), { updatedRecipient: fill.relayExecutionInfo.updatedRecipient.toBytes32() }) });
187
+ }
188
+ exports.convertFillParamsToBytes32 = convertFillParamsToBytes32;
181
189
  //# sourceMappingURL=DepositUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DepositUtils.js","sourceRoot":"","sources":["../../../src/utils/DepositUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DepositUtils.js","sourceRoot":"","sources":["../../../src/utils/DepositUtils.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { SvmSpokeClient } from "@across-protocol/contracts";
2
- import { Address, type TransactionSigner } from "@solana/kit";
2
+ import { Address, ReadonlyUint8Array, type TransactionSigner } from "@solana/kit";
3
3
  import { Logger } from "winston";
4
4
  import { DepositWithBlock, FillStatus, FillWithBlock, RelayData } from "../../interfaces";
5
- import { BigNumber, EvmAddress, SvmAddress } from "../../utils";
5
+ import { BigNumber, EvmAddress, SvmAddress, Address as SdkAddress } from "../../utils";
6
6
  import { SvmCpiEventsClient } from "./";
7
7
  import { SVMProvider } from "./types";
8
8
  /**
@@ -108,13 +108,31 @@ export declare function findFillEvent(relayData: RelayData, destinationChainId:
108
108
  * @param repaymentChainId Optional repaymentChainId (defaults to destinationChainId).
109
109
  * @returns An Ethers UnsignedTransaction instance.
110
110
  */
111
- export declare function fillRelayInstruction(spokePool: SvmAddress, relayData: ProtoFill, signer: TransactionSigner<string>, recipientTokenAccount: Address<string>, repaymentAddress?: EvmAddress | SvmAddress, repaymentChainId?: number): Promise<SvmSpokeClient.FillRelayInstruction<Address<"JAZWcGrpSWNPTBj8QtJ9UyQqhJCDhG9GJkDeMf5NQBiq">, string, string, string, string, string, string, string, string, string, string, string, string, string, []>>;
111
+ export declare function fillRelayInstruction(spokePool: SvmAddress, relayData: ProtoFill, signer: TransactionSigner<string>, recipientTokenAccount: Address<string>, repaymentAddress?: EvmAddress | SvmAddress, repaymentChainId?: number): Promise<SvmSpokeClient.FillRelayInstruction<Address<"DLv3NggMiSaef97YCkew5xKUHDh13tVGZ7tydt3ZeAru">, string, string, string, string, string, string, string, string, string, string, string, string, string, []>>;
112
112
  /**
113
113
  * @param mint Address of the token corresponding to the account being made.
114
114
  * @param relayer Address of the relayer filling the deposit.
115
115
  * @returns An instruction for creating a new token account.
116
116
  */
117
117
  export declare function createTokenAccountsInstruction(mint: SvmAddress, relayer: TransactionSigner<string>): SvmSpokeClient.CreateTokenAccountsInstruction;
118
+ /**
119
+ * @notice Return the fillRelay transaction for a given deposit
120
+ * @param spokePoolAddr Address of the spoke pool we're trying to fill through
121
+ * @param solanaClient RPC client to interact with Solana chain
122
+ * @param relayData RelayData instance, supplemented with destinationChainId
123
+ * @param signer signer associated with the relayer creating a Fill. Can be VoidSigner for gas estimation
124
+ * @param repaymentChainId Chain id where relayer repayment is desired
125
+ * @param repaymentAddress Address to which repayment will go to on repaymentChainId
126
+ * @returns FillRelay transaction
127
+ */
128
+ export declare function getFillRelayTx(spokePoolAddr: SvmAddress, solanaClient: SVMProvider, relayData: Omit<RelayData, "recipent" | "outputToken"> & {
129
+ destinationChainId: number;
130
+ recipient: SvmAddress;
131
+ outputToken: SvmAddress;
132
+ }, signer: TransactionSigner, repaymentChainId: number, repaymentAddress: SdkAddress): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
133
+ instructions: readonly import("@solana/kit").IInstruction<string, readonly (import("@solana/kit").IAccountLookupMeta<string, string> | import("@solana/kit").IAccountMeta<string>)[]>[];
134
+ version: 0;
135
+ }>, "feePayer">>;
118
136
  /**
119
137
  * Creates a fill instruction.
120
138
  * @param signer - The signer of the transaction.
@@ -174,7 +192,7 @@ export declare function getDepositDelegatePda(depositData: {
174
192
  inputToken: Address<string>;
175
193
  outputToken: Address<string>;
176
194
  inputAmount: bigint;
177
- outputAmount: bigint;
195
+ outputAmount: ReadonlyUint8Array;
178
196
  destinationChainId: bigint;
179
197
  exclusiveRelayer: Address<string>;
180
198
  quoteTimestamp: bigint;
@@ -191,7 +209,7 @@ export declare function getDepositNowDelegatePda(depositData: {
191
209
  inputToken: Address<string>;
192
210
  outputToken: Address<string>;
193
211
  inputAmount: bigint;
194
- outputAmount: bigint;
212
+ outputAmount: ReadonlyUint8Array;
195
213
  destinationChainId: bigint;
196
214
  exclusiveRelayer: Address<string>;
197
215
  fillDeadlineOffset: bigint;
@@ -1,6 +1,7 @@
1
1
  import { __assign, __awaiter, __generator } from "tslib";
2
2
  import { SvmSpokeClient } from "@across-protocol/contracts";
3
3
  import { decodeFillStatusAccount, fetchState } from "@across-protocol/contracts/dist/src/svm/clients/SvmSpoke";
4
+ import { intToU8Array32 } from "@across-protocol/contracts/dist/src/svm/web3-v1/conversionUtils";
4
5
  import { hashNonEmptyMessage } from "@across-protocol/contracts/dist/src/svm/web3-v1";
5
6
  import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS, TOKEN_PROGRAM_ADDRESS, fetchMint, getApproveCheckedInstruction, getCreateAssociatedTokenIdempotentInstruction, } from "@solana-program/token";
6
7
  import { appendTransactionMessageInstruction, fetchEncodedAccount, fetchEncodedAccounts, getAddressEncoder, getProgramDerivedAddress, getU32Encoder, getU64Encoder, pipe, some, } from "@solana/kit";
@@ -9,7 +10,7 @@ import { arrayify, hexZeroPad, hexlify } from "ethers/lib/utils";
9
10
  import { SYSTEM_PROGRAM_ADDRESS } from "@solana-program/system";
10
11
  import { FillStatus } from "../../interfaces";
11
12
  import { SvmAddress, chainIsSvm, chunk, isUnsafeDepositId, keccak256, toAddressType, } from "../../utils";
12
- import { createDefaultTransaction, getEventAuthority, getFillStatusPda, getStatePda, toAddress, unwrapEventData, } from "./";
13
+ import { bigToU8a32, createDefaultTransaction, getEventAuthority, getFillStatusPda, getStatePda, toAddress, unwrapEventData, } from "./";
13
14
  import { CHAIN_IDs } from "../../constants";
14
15
  import { SVMEventNames } from "./types";
15
16
  /**
@@ -385,7 +386,7 @@ export function fillRelayInstruction(spokePool, relayData, signer, recipientToke
385
386
  exclusiveRelayer: exclusiveRelayer,
386
387
  inputToken: inputToken,
387
388
  outputToken: outputToken,
388
- inputAmount: relayData.inputAmount.toBigInt(),
389
+ inputAmount: bigToU8a32(relayData.inputAmount.toBigInt()),
389
390
  outputAmount: relayData.outputAmount.toBigInt(),
390
391
  originChainId: BigInt(relayData.originChainId),
391
392
  fillDeadline: relayData.fillDeadline,
@@ -411,6 +412,86 @@ export function createTokenAccountsInstruction(mint, relayer) {
411
412
  mint: toAddress(mint),
412
413
  });
413
414
  }
415
+ /**
416
+ * @notice Return the fillRelay transaction for a given deposit
417
+ * @param spokePoolAddr Address of the spoke pool we're trying to fill through
418
+ * @param solanaClient RPC client to interact with Solana chain
419
+ * @param relayData RelayData instance, supplemented with destinationChainId
420
+ * @param signer signer associated with the relayer creating a Fill. Can be VoidSigner for gas estimation
421
+ * @param repaymentChainId Chain id where relayer repayment is desired
422
+ * @param repaymentAddress Address to which repayment will go to on repaymentChainId
423
+ * @returns FillRelay transaction
424
+ */
425
+ export function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymentChainId, repaymentAddress) {
426
+ return __awaiter(this, void 0, void 0, function () {
427
+ var depositor, recipient, inputToken, outputToken, exclusiveRelayer, destinationChainId, program, _relayDataHash, relayDataHash, _a, state, delegate, mint, mintInfo, _b, recipientAta, relayerAta, fillStatus, eventAuthority, svmRelayData, fillInput;
428
+ return __generator(this, function (_c) {
429
+ switch (_c.label) {
430
+ case 0:
431
+ depositor = relayData.depositor, recipient = relayData.recipient, inputToken = relayData.inputToken, outputToken = relayData.outputToken, exclusiveRelayer = relayData.exclusiveRelayer, destinationChainId = relayData.destinationChainId;
432
+ // tsc appeasement...should be unnecessary, but isn't. @todo Identify why.
433
+ assert(recipient.isSVM(), "getFillRelayTx: recipient not an SVM address (".concat(recipient, ")"));
434
+ assert(repaymentAddress.isValidOn(repaymentChainId), "getFillRelayTx: repayment address ".concat(repaymentAddress, " not valid on chain ").concat(repaymentChainId, ")"));
435
+ program = toAddress(spokePoolAddr);
436
+ _relayDataHash = getRelayDataHash(relayData, destinationChainId);
437
+ relayDataHash = new Uint8Array(Buffer.from(_relayDataHash.slice(2), "hex"));
438
+ return [4 /*yield*/, Promise.all([
439
+ getStatePda(program),
440
+ getFillRelayDelegatePda(relayDataHash, BigInt(repaymentChainId), toAddress(repaymentAddress), program),
441
+ ])];
442
+ case 1:
443
+ _a = _c.sent(), state = _a[0], delegate = _a[1];
444
+ mint = toAddress(outputToken);
445
+ return [4 /*yield*/, fetchMint(solanaClient, mint)];
446
+ case 2:
447
+ mintInfo = _c.sent();
448
+ return [4 /*yield*/, Promise.all([
449
+ getAssociatedTokenAddress(recipient, outputToken, mintInfo.programAddress),
450
+ getAssociatedTokenAddress(SvmAddress.from(signer.address), outputToken, mintInfo.programAddress),
451
+ getFillStatusPda(program, relayData, destinationChainId),
452
+ getEventAuthority(program),
453
+ ])];
454
+ case 3:
455
+ _b = _c.sent(), recipientAta = _b[0], relayerAta = _b[1], fillStatus = _b[2], eventAuthority = _b[3];
456
+ svmRelayData = {
457
+ depositor: toAddress(depositor),
458
+ recipient: toAddress(recipient),
459
+ exclusiveRelayer: toAddress(exclusiveRelayer),
460
+ inputToken: toAddress(inputToken),
461
+ outputToken: mint,
462
+ inputAmount: bigToU8a32(relayData.inputAmount.toBigInt()),
463
+ outputAmount: relayData.outputAmount.toBigInt(),
464
+ originChainId: relayData.originChainId,
465
+ depositId: new Uint8Array(intToU8Array32(relayData.depositId.toNumber())),
466
+ fillDeadline: relayData.fillDeadline,
467
+ exclusivityDeadline: relayData.exclusivityDeadline,
468
+ message: new Uint8Array(Buffer.from(relayData.message, "hex")),
469
+ };
470
+ fillInput = {
471
+ signer: signer,
472
+ state: state,
473
+ delegate: delegate,
474
+ mint: mint,
475
+ relayerTokenAccount: relayerAta,
476
+ recipientTokenAccount: recipientAta,
477
+ fillStatus: fillStatus,
478
+ tokenProgram: mintInfo.programAddress,
479
+ associatedTokenProgram: ASSOCIATED_TOKEN_PROGRAM_ADDRESS,
480
+ systemProgram: SYSTEM_PROGRAM_ADDRESS,
481
+ eventAuthority: eventAuthority,
482
+ program: program,
483
+ relayHash: relayDataHash,
484
+ relayData: svmRelayData,
485
+ repaymentChainId: BigInt(repaymentChainId),
486
+ repaymentAddress: toAddress(repaymentAddress),
487
+ };
488
+ // Pass createRecipientAtaIfNeeded =true to the createFillInstruction function to create the recipient token account
489
+ // if it doesn't exist.
490
+ return [2 /*return*/, createFillInstruction(signer, solanaClient, fillInput, mintInfo.data.decimals, true)];
491
+ }
492
+ });
493
+ });
494
+ }
414
495
  /**
415
496
  * Creates a fill instruction.
416
497
  * @param signer - The signer of the transaction.
@@ -594,7 +675,7 @@ export function getRelayDataHash(relayData, destinationChainId) {
594
675
  encodeAddress(relayData.exclusiveRelayer),
595
676
  encodeAddress(relayData.inputToken),
596
677
  encodeAddress(relayData.outputToken),
597
- Uint8Array.from(uint64Encoder.encode(BigInt(relayData.inputAmount.toString()))),
678
+ arrayify(hexZeroPad(hexlify(relayData.inputAmount), 32)),
598
679
  Uint8Array.from(uint64Encoder.encode(BigInt(relayData.outputAmount.toString()))),
599
680
  Uint8Array.from(uint64Encoder.encode(BigInt(relayData.originChainId.toString()))),
600
681
  arrayify(hexZeroPad(hexlify(relayData.depositId), 32)),
@@ -706,7 +787,7 @@ export function getDepositDelegatePda(depositData, programId) {
706
787
  Uint8Array.from(addrEnc.encode(depositData.inputToken)),
707
788
  Uint8Array.from(addrEnc.encode(depositData.outputToken)),
708
789
  Uint8Array.from(u64.encode(depositData.inputAmount)),
709
- Uint8Array.from(u64.encode(depositData.outputAmount)),
790
+ Uint8Array.from(depositData.outputAmount),
710
791
  Uint8Array.from(u64.encode(depositData.destinationChainId)),
711
792
  Uint8Array.from(addrEnc.encode(depositData.exclusiveRelayer)),
712
793
  Uint8Array.from(u32.encode(depositData.quoteTimestamp)),
@@ -745,7 +826,7 @@ export function getDepositNowDelegatePda(depositData, programId) {
745
826
  Uint8Array.from(addrEnc.encode(depositData.inputToken)),
746
827
  Uint8Array.from(addrEnc.encode(depositData.outputToken)),
747
828
  Uint8Array.from(u64.encode(depositData.inputAmount)),
748
- Uint8Array.from(u64.encode(depositData.outputAmount)),
829
+ Uint8Array.from(depositData.outputAmount),
749
830
  Uint8Array.from(u64.encode(depositData.destinationChainId)),
750
831
  Uint8Array.from(addrEnc.encode(depositData.exclusiveRelayer)),
751
832
  Uint8Array.from(u32.encode(depositData.fillDeadlineOffset)),
@@ -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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"}
@@ -1,7 +1,7 @@
1
1
  import { Idl } from "@coral-xyz/anchor";
2
2
  import { Address, type TransactionSigner } from "@solana/kit";
3
3
  import { RelayData } from "../../interfaces";
4
- import { Address as SdkAddress } from "../../utils";
4
+ import { BigNumber, Address as SdkAddress } from "../../utils";
5
5
  import { EventName, SVMProvider } from "./types";
6
6
  /**
7
7
  * Basic void TransactionSigner type
@@ -15,6 +15,12 @@ export declare function isDevnet(rpc: SVMProvider): Promise<boolean>;
15
15
  * Small utility to convert an Address to a Solana Kit branded type.
16
16
  */
17
17
  export declare function toAddress(address: SdkAddress): Address<string>;
18
+ /**
19
+ * Resolve the latest finalized slot, and then work backwards to find the nearest slot containing a block.
20
+ * In most cases the first-resolved slot should also have a block. Avoid making arbitrary decisions about
21
+ * how many slots to rotate through.
22
+ */
23
+ export declare function getLatestFinalizedSlotWithBlock(provider: SVMProvider, maxSlot: bigint, maxLookback?: number): Promise<number>;
18
24
  /**
19
25
  * Parses event data from a transaction.
20
26
  */
@@ -76,6 +82,13 @@ export declare function getRootBundlePda(programId: Address, state: Address, roo
76
82
  * @param signer the signer of the authenticated call.
77
83
  */
78
84
  export declare function getInstructionParamsPda(programId: Address, signer: Address): Promise<Address>;
85
+ /**
86
+ * Returns the PDA for an individual's claim account.
87
+ * @param programId the address of the spoke pool.
88
+ * @param mint the address of the token.
89
+ * @param tokenOwner the address of the signer which owns the claim account.
90
+ */
91
+ export declare function getClaimAccountPda(programId: Address, mint: Address, tokenOwner: Address): Promise<Address>;
79
92
  /**
80
93
  * Returns the PDA for the Event Authority.
81
94
  * @returns The PDA for the Event Authority.
@@ -95,3 +108,9 @@ export declare const createDefaultTransaction: (rpcClient: SVMProvider, signer:
95
108
  instructions: readonly import("@solana/kit").IInstruction<string, readonly (import("@solana/kit").IAccountLookupMeta<string, string> | import("@solana/kit").IAccountMeta<string>)[]>[];
96
109
  version: 0;
97
110
  }>, "feePayer">>;
111
+ /**
112
+ * Convert a bigint (0 ≤ n < 2^256) to a 32-byte Uint8Array (big-endian).
113
+ */
114
+ export declare function bigintToU8a32(n: bigint): Uint8Array;
115
+ export declare const bigToU8a32: (bn: bigint | BigNumber) => Uint8Array;
116
+ export declare const numberToU8a32: (n: number) => Uint8Array;
@@ -5,7 +5,7 @@ import { BN, BorshEventCoder } from "@coral-xyz/anchor";
5
5
  import { address, getAddressEncoder, getProgramDerivedAddress, getU64Encoder, getU32Encoder, isAddress, pipe, createTransactionMessage, setTransactionMessageFeePayerSigner, setTransactionMessageLifetimeUsingBlockhash, } from "@solana/kit";
6
6
  import { SvmSpokeClient } from "@across-protocol/contracts";
7
7
  import { FillType } from "../../interfaces";
8
- import { BigNumber, getRelayDataHash, isUint8Array } from "../../utils";
8
+ import { BigNumber, getRelayDataHash, isDefined, isUint8Array } from "../../utils";
9
9
  import { SVMEventNames } from "./types";
10
10
  /**
11
11
  * Basic void TransactionSigner type
@@ -45,6 +45,43 @@ export function isDevnet(rpc) {
45
45
  export function toAddress(address) {
46
46
  return address.toBase58();
47
47
  }
48
+ /**
49
+ * Resolve the latest finalized slot, and then work backwards to find the nearest slot containing a block.
50
+ * In most cases the first-resolved slot should also have a block. Avoid making arbitrary decisions about
51
+ * how many slots to rotate through.
52
+ */
53
+ export function getLatestFinalizedSlotWithBlock(provider, maxSlot, maxLookback) {
54
+ if (maxLookback === void 0) { maxLookback = 1000; }
55
+ return __awaiter(this, void 0, void 0, function () {
56
+ var finalizedSlot, endSlot, opts, slot, block;
57
+ return __generator(this, function (_a) {
58
+ switch (_a.label) {
59
+ case 0: return [4 /*yield*/, provider.getSlot({ commitment: "finalized" }).send()];
60
+ case 1:
61
+ finalizedSlot = _a.sent();
62
+ endSlot = Math.min(Number(maxSlot), Number(finalizedSlot));
63
+ opts = { maxSupportedTransactionVersion: 0, transactionDetails: "none", rewards: false };
64
+ slot = BigInt(endSlot);
65
+ _a.label = 2;
66
+ case 2: return [4 /*yield*/, provider.getBlock(slot, opts).send()];
67
+ case 3:
68
+ block = _a.sent();
69
+ if (isDefined(block) && [block.blockHeight, block.blockTime].every(isDefined)) {
70
+ return [3 /*break*/, 5];
71
+ }
72
+ _a.label = 4;
73
+ case 4:
74
+ if (--maxLookback > 0 && --slot > 0) return [3 /*break*/, 2];
75
+ _a.label = 5;
76
+ case 5:
77
+ if (maxLookback === 0) {
78
+ throw new Error("Unable to find Solana block between slots [".concat(slot, ", ").concat(endSlot, "]"));
79
+ }
80
+ return [2 /*return*/, Number(slot)];
81
+ }
82
+ });
83
+ });
84
+ }
48
85
  /**
49
86
  * Parses event data from a transaction.
50
87
  */
@@ -313,6 +350,30 @@ export function getInstructionParamsPda(programId, signer) {
313
350
  });
314
351
  });
315
352
  }
353
+ /**
354
+ * Returns the PDA for an individual's claim account.
355
+ * @param programId the address of the spoke pool.
356
+ * @param mint the address of the token.
357
+ * @param tokenOwner the address of the signer which owns the claim account.
358
+ */
359
+ export function getClaimAccountPda(programId, mint, tokenOwner) {
360
+ return __awaiter(this, void 0, void 0, function () {
361
+ var addressEncoder, pda;
362
+ return __generator(this, function (_a) {
363
+ switch (_a.label) {
364
+ case 0:
365
+ addressEncoder = getAddressEncoder();
366
+ return [4 /*yield*/, getProgramDerivedAddress({
367
+ programAddress: programId,
368
+ seeds: ["claim_account", addressEncoder.encode(mint), addressEncoder.encode(tokenOwner)],
369
+ })];
370
+ case 1:
371
+ pda = (_a.sent())[0];
372
+ return [2 /*return*/, pda];
373
+ }
374
+ });
375
+ });
376
+ }
316
377
  /**
317
378
  * Returns the PDA for the Event Authority.
318
379
  * @returns The PDA for the Event Authority.
@@ -358,4 +419,18 @@ export var createDefaultTransaction = function (rpcClient, signer) { return __aw
358
419
  }
359
420
  });
360
421
  }); };
422
+ /**
423
+ * Convert a bigint (0 ≤ n < 2^256) to a 32-byte Uint8Array (big-endian).
424
+ */
425
+ export function bigintToU8a32(n) {
426
+ if (n < BigInt(0) || n > ethers.constants.MaxUint256.toBigInt()) {
427
+ throw new RangeError("Value must fit in 256 bits");
428
+ }
429
+ var hexPadded = ethers.utils.hexZeroPad("0x" + n.toString(16), 32);
430
+ return ethers.utils.arrayify(hexPadded);
431
+ }
432
+ export var bigToU8a32 = function (bn) {
433
+ return bigintToU8a32(typeof bn === "bigint" ? bn : BigInt(bn.toString()));
434
+ };
435
+ export var numberToU8a32 = function (n) { return bigintToU8a32(BigInt(n)); };
361
436
  //# sourceMappingURL=utils.js.map