@across-protocol/sdk 4.3.44 → 4.3.46

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 (91) hide show
  1. package/dist/cjs/arch/svm/SpokeUtils.d.ts +21 -10
  2. package/dist/cjs/arch/svm/SpokeUtils.js +128 -10
  3. package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -1
  4. package/dist/cjs/arch/svm/encoders.d.ts +19 -0
  5. package/dist/cjs/arch/svm/encoders.js +52 -0
  6. package/dist/cjs/arch/svm/encoders.js.map +1 -0
  7. package/dist/cjs/arch/svm/index.d.ts +1 -0
  8. package/dist/cjs/arch/svm/index.js +1 -0
  9. package/dist/cjs/arch/svm/index.js.map +1 -1
  10. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js +6 -4
  11. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  12. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js +5 -0
  13. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
  14. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +1 -0
  15. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  16. package/dist/cjs/clients/HubPoolClient.d.ts +3 -9
  17. package/dist/cjs/clients/HubPoolClient.js +56 -81
  18. package/dist/cjs/clients/HubPoolClient.js.map +1 -1
  19. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js +4 -3
  20. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  21. package/dist/cjs/clients/mocks/MockHubPoolClient.d.ts +2 -2
  22. package/dist/cjs/clients/mocks/MockHubPoolClient.js +1 -1
  23. package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -1
  24. package/dist/cjs/providers/solana/retryRpcFactory.js +14 -10
  25. package/dist/cjs/providers/solana/retryRpcFactory.js.map +1 -1
  26. package/dist/cjs/utils/BlockExplorerUtils.js +25 -15
  27. package/dist/cjs/utils/BlockExplorerUtils.js.map +1 -1
  28. package/dist/cjs/utils/FormattingUtils.d.ts +1 -1
  29. package/dist/cjs/utils/FormattingUtils.js +4 -4
  30. package/dist/cjs/utils/FormattingUtils.js.map +1 -1
  31. package/dist/esm/arch/svm/SpokeUtils.d.ts +38 -10
  32. package/dist/esm/arch/svm/SpokeUtils.js +151 -10
  33. package/dist/esm/arch/svm/SpokeUtils.js.map +1 -1
  34. package/dist/esm/arch/svm/encoders.d.ts +19 -0
  35. package/dist/esm/arch/svm/encoders.js +43 -0
  36. package/dist/esm/arch/svm/encoders.js.map +1 -0
  37. package/dist/esm/arch/svm/index.d.ts +1 -0
  38. package/dist/esm/arch/svm/index.js +1 -0
  39. package/dist/esm/arch/svm/index.js.map +1 -1
  40. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js +7 -5
  41. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  42. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js +6 -1
  43. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
  44. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +1 -0
  45. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  46. package/dist/esm/clients/HubPoolClient.d.ts +3 -9
  47. package/dist/esm/clients/HubPoolClient.js +60 -87
  48. package/dist/esm/clients/HubPoolClient.js.map +1 -1
  49. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js +4 -3
  50. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  51. package/dist/esm/clients/mocks/MockHubPoolClient.d.ts +2 -2
  52. package/dist/esm/clients/mocks/MockHubPoolClient.js +1 -1
  53. package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -1
  54. package/dist/esm/providers/solana/retryRpcFactory.js +15 -10
  55. package/dist/esm/providers/solana/retryRpcFactory.js.map +1 -1
  56. package/dist/esm/utils/BlockExplorerUtils.js +27 -19
  57. package/dist/esm/utils/BlockExplorerUtils.js.map +1 -1
  58. package/dist/esm/utils/FormattingUtils.d.ts +3 -3
  59. package/dist/esm/utils/FormattingUtils.js +4 -4
  60. package/dist/esm/utils/FormattingUtils.js.map +1 -1
  61. package/dist/types/arch/svm/SpokeUtils.d.ts +38 -10
  62. package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -1
  63. package/dist/types/arch/svm/encoders.d.ts +20 -0
  64. package/dist/types/arch/svm/encoders.d.ts.map +1 -0
  65. package/dist/types/arch/svm/index.d.ts +1 -0
  66. package/dist/types/arch/svm/index.d.ts.map +1 -1
  67. package/dist/types/clients/BundleDataClient/utils/DataworkerUtils.d.ts.map +1 -1
  68. package/dist/types/clients/BundleDataClient/utils/FillUtils.d.ts.map +1 -1
  69. package/dist/types/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts.map +1 -1
  70. package/dist/types/clients/HubPoolClient.d.ts +3 -9
  71. package/dist/types/clients/HubPoolClient.d.ts.map +1 -1
  72. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts.map +1 -1
  73. package/dist/types/clients/mocks/MockHubPoolClient.d.ts +2 -2
  74. package/dist/types/clients/mocks/MockHubPoolClient.d.ts.map +1 -1
  75. package/dist/types/providers/solana/retryRpcFactory.d.ts.map +1 -1
  76. package/dist/types/utils/BlockExplorerUtils.d.ts.map +1 -1
  77. package/dist/types/utils/FormattingUtils.d.ts +3 -3
  78. package/dist/types/utils/FormattingUtils.d.ts.map +1 -1
  79. package/package.json +2 -2
  80. package/src/arch/svm/SpokeUtils.ts +187 -4
  81. package/src/arch/svm/encoders.ts +86 -0
  82. package/src/arch/svm/index.ts +1 -0
  83. package/src/clients/BundleDataClient/utils/DataworkerUtils.ts +14 -20
  84. package/src/clients/BundleDataClient/utils/FillUtils.ts +7 -1
  85. package/src/clients/BundleDataClient/utils/PoolRebalanceUtils.ts +2 -0
  86. package/src/clients/HubPoolClient.ts +50 -79
  87. package/src/clients/SpokePoolClient/SpokePoolClient.ts +15 -11
  88. package/src/clients/mocks/MockHubPoolClient.ts +3 -3
  89. package/src/providers/solana/retryRpcFactory.ts +6 -2
  90. package/src/utils/BlockExplorerUtils.ts +25 -18
  91. package/src/utils/FormattingUtils.ts +4 -4
@@ -1,9 +1,10 @@
1
1
  import { MessageTransmitterClient, SvmSpokeClient } from "@across-protocol/contracts";
2
2
  import { Mint } from "@solana-program/token";
3
- import { Account, Address, FetchAccountConfig, IAccountMeta, KeyPairSigner, ReadonlyUint8Array, type TransactionSigner, type Commitment } from "@solana/kit";
3
+ import { Account, Address, FetchAccountConfig, IAccountMeta, IInstruction, KeyPairSigner, ReadonlyUint8Array, type TransactionSigner, type WritableAccount, type ReadonlyAccount, type Commitment } from "@solana/kit";
4
4
  import winston from "winston";
5
5
  import { DepositWithBlock, FillStatus, FillWithBlock, RelayData, RelayDataWithMessageHash } 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;
@@ -27,19 +28,28 @@ export declare function getFillRelayTx(spokePoolAddr: SvmAddress, solanaClient:
27
28
  recipient: SvmAddress;
28
29
  outputToken: SvmAddress;
29
30
  }, signer: TransactionSigner, repaymentChainId: number, repaymentAddress: SdkAddress): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
30
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
31
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
31
32
  version: 0;
32
33
  }>, "feePayer">>;
33
- export declare const createFillInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, fillInput: SvmSpokeClient.FillRelayInput, tokenDecimals: number, createRecipientAtaIfNeeded?: boolean) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
34
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
34
+ export declare function getIPFillRelayTx(spokePoolAddr: SvmAddress, solanaClient: SVMProvider, relayData: Omit<RelayData, "recipient" | "outputToken"> & {
35
+ destinationChainId: number;
36
+ recipient: SvmAddress;
37
+ outputToken: SvmAddress;
38
+ }, signer: TransactionSigner, repaymentChainId: number, repaymentAddress: SdkAddress): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
39
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
40
+ version: 0;
41
+ }>, "feePayer">>;
42
+ 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<{
43
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
35
44
  version: 0;
36
45
  }>, "feePayer">>;
46
+ export declare function deserializeMessage(_message: string): AcrossPlusMessage;
37
47
  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<{
38
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
48
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
39
49
  version: 0;
40
50
  }>, "feePayer">>;
41
51
  export declare const createRequestSlowFillInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, requestSlowFillInput: SvmSpokeClient.RequestSlowFillInput) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
42
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
52
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
43
53
  version: 0;
44
54
  }>, "feePayer">>;
45
55
  export declare function getSlowFillRequestTx(spokePoolAddr: SvmAddress, solanaClient: SVMProvider, relayData: Omit<RelayData, "recipient" | "outputToken"> & {
@@ -47,21 +57,22 @@ export declare function getSlowFillRequestTx(spokePoolAddr: SvmAddress, solanaCl
47
57
  recipient: SvmAddress;
48
58
  outputToken: SvmAddress;
49
59
  }, signer: TransactionSigner): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
50
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
60
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
51
61
  version: 0;
52
62
  }>, "feePayer">>;
53
63
  export declare const createCloseFillPdaInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, fillStatusPda: Address) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
54
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
64
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
55
65
  version: 0;
56
66
  }>, "feePayer">>;
57
67
  export declare const createReceiveMessageInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, input: MessageTransmitterClient.ReceiveMessageInput, remainingAccounts: IAccountMeta<string>[]) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
58
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
68
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
59
69
  version: 0;
60
70
  }>, "feePayer">>;
61
71
  export declare function getAssociatedTokenAddress(owner: SvmAddress, mint: SvmAddress, tokenProgramId?: Address<string>): Promise<Address<string>>;
62
72
  export declare function getRelayDataHash(relayData: RelayData & {
63
73
  messageHash: string;
64
74
  }, destinationChainId: number): string;
75
+ export declare function getFillRelayViaInstructionParamsInstructions(spokePool: Address<string>, relayData: RelayData, repaymentChainId: number, repaymentAddress: SdkAddress, signer: TransactionSigner<string>, maxWriteSize?: number): Promise<IInstruction[]>;
65
76
  export declare function getDepositDelegatePda(depositData: {
66
77
  depositor: Address<string>;
67
78
  recipient: Address<string>;
@@ -93,7 +104,7 @@ export declare function getFillRelayDelegatePda(relayHash: Uint8Array, repayment
93
104
  export declare const hasCCTPV1MessageBeenProcessed: (solanaClient: SVMProvider, signer: KeyPairSigner, nonce: number, sourceDomain: number) => Promise<boolean>;
94
105
  export declare function getAccountMetasForTokenlessMessage(solanaClient: SVMProvider, signer: KeyPairSigner, messageBytes: string): Promise<IAccountMeta<string>[]>;
95
106
  export declare function getCCTPV1ReceiveMessageTx(solanaClient: SVMProvider, signer: KeyPairSigner, message: AttestedCCTPMessage, hubChainId: number, recipientAta: SvmAddress): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
96
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
107
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
97
108
  version: 0;
98
109
  }>, "feePayer">>;
99
110
  export declare function finalizeCCTPV1Messages(solanaClient: SVMProvider, attestedMessages: AttestedCCTPMessage[], signer: KeyPairSigner, recipientAta: SvmAddress, simulate?: boolean, hubChainId?: number): Promise<string[]>;
@@ -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.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.getSlot = 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.getSlot = 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");
@@ -380,7 +380,7 @@ function createTokenAccountsInstruction(mint, relayer) {
380
380
  exports.createTokenAccountsInstruction = createTokenAccountsInstruction;
381
381
  function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymentChainId, repaymentAddress) {
382
382
  return tslib_1.__awaiter(this, void 0, void 0, function () {
383
- var svmRelayData, program, messageHash, _relayDataHash, relayDataHash, _a, state, delegate, mintInfo, fillStatus, eventAuthority, _b, recipientAta, relayerAta, fillInput;
383
+ var svmRelayData, program, messageHash, _relayDataHash, relayDataHash, _a, state, delegate, mintInfo, fillStatus, eventAuthority, _b, recipientAta, relayerAta, remainingAccounts, acrossPlusMessage_1, fillInput;
384
384
  return tslib_1.__generator(this, function (_c) {
385
385
  switch (_c.label) {
386
386
  case 0:
@@ -405,6 +405,14 @@ function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymen
405
405
  ])];
406
406
  case 2:
407
407
  _b = _c.sent(), recipientAta = _b[0], relayerAta = _b[1];
408
+ remainingAccounts = [];
409
+ if (relayData.message !== "0x") {
410
+ acrossPlusMessage_1 = deserializeMessage(relayData.message);
411
+ remainingAccounts.push((0, _1.getAccountMeta)(acrossPlusMessage_1.handler, true));
412
+ remainingAccounts.push.apply(remainingAccounts, acrossPlusMessage_1.accounts.map(function (account, idx) {
413
+ return (0, _1.getAccountMeta)(account, idx < acrossPlusMessage_1.accounts.length - acrossPlusMessage_1.read_only_len);
414
+ }));
415
+ }
408
416
  fillInput = {
409
417
  signer: signer,
410
418
  state: state,
@@ -423,27 +431,90 @@ function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymen
423
431
  repaymentChainId: BigInt(repaymentChainId),
424
432
  repaymentAddress: (0, _1.toAddress)(repaymentAddress),
425
433
  };
426
- return [2, (0, exports.createFillInstruction)(signer, solanaClient, fillInput, mintInfo.data.decimals, true)];
434
+ return [2, (0, exports.createFillInstruction)(signer, solanaClient, fillInput, svmRelayData, mintInfo.data.decimals, true, remainingAccounts)];
427
435
  }
428
436
  });
429
437
  });
430
438
  }
431
439
  exports.getFillRelayTx = getFillRelayTx;
432
- var createFillInstruction = function (signer, solanaClient, fillInput, tokenDecimals, createRecipientAtaIfNeeded) {
440
+ function getIPFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymentChainId, repaymentAddress) {
441
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
442
+ var program, _relayDataHash, relayDataHash, _a, state, delegate, instructionParams, mint, mintInfo, _b, recipientAta, relayerAta, fillStatus, eventAuthority, remainingAccounts, acrossPlusMessage_2, fillInput;
443
+ return tslib_1.__generator(this, function (_c) {
444
+ switch (_c.label) {
445
+ case 0:
446
+ program = (0, _1.toAddress)(spokePoolAddr);
447
+ _relayDataHash = getRelayDataHash(tslib_1.__assign(tslib_1.__assign({}, relayData), { messageHash: (0, utils_2.getMessageHash)(relayData.message) }), relayData.destinationChainId);
448
+ relayDataHash = new Uint8Array(Buffer.from(_relayDataHash.slice(2), "hex"));
449
+ return [4, Promise.all([
450
+ (0, _1.getStatePda)(program),
451
+ getFillRelayDelegatePda(relayDataHash, BigInt(repaymentChainId), (0, _1.toAddress)(repaymentAddress), program),
452
+ (0, _1.getInstructionParamsPda)(program, signer.address),
453
+ ])];
454
+ case 1:
455
+ _a = _c.sent(), state = _a[0], delegate = _a[1], instructionParams = _a[2];
456
+ mint = (0, _1.toAddress)(relayData.outputToken);
457
+ return [4, getMintInfo(solanaClient, mint)];
458
+ case 2:
459
+ mintInfo = _c.sent();
460
+ return [4, Promise.all([
461
+ getAssociatedTokenAddress(relayData.recipient, relayData.outputToken, mintInfo.programAddress),
462
+ getAssociatedTokenAddress(utils_2.SvmAddress.from(signer.address), relayData.outputToken, mintInfo.programAddress),
463
+ (0, _1.getFillStatusPda)(program, relayData, relayData.destinationChainId),
464
+ (0, _1.getEventAuthority)(program),
465
+ ])];
466
+ case 3:
467
+ _b = _c.sent(), recipientAta = _b[0], relayerAta = _b[1], fillStatus = _b[2], eventAuthority = _b[3];
468
+ remainingAccounts = [];
469
+ if (relayData.message !== "0x") {
470
+ acrossPlusMessage_2 = deserializeMessage(relayData.message);
471
+ remainingAccounts.push((0, _1.getAccountMeta)(acrossPlusMessage_2.handler, true));
472
+ remainingAccounts.push.apply(remainingAccounts, acrossPlusMessage_2.accounts.map(function (account, idx) {
473
+ return (0, _1.getAccountMeta)(account, idx < acrossPlusMessage_2.accounts.length - acrossPlusMessage_2.read_only_len);
474
+ }));
475
+ }
476
+ fillInput = {
477
+ signer: signer,
478
+ state: state,
479
+ delegate: delegate,
480
+ mint: mint,
481
+ relayerTokenAccount: relayerAta,
482
+ recipientTokenAccount: recipientAta,
483
+ fillStatus: fillStatus,
484
+ tokenProgram: mintInfo.programAddress,
485
+ associatedTokenProgram: token_1.ASSOCIATED_TOKEN_PROGRAM_ADDRESS,
486
+ systemProgram: system_1.SYSTEM_PROGRAM_ADDRESS,
487
+ eventAuthority: eventAuthority,
488
+ program: program,
489
+ instructionParams: instructionParams,
490
+ relayHash: relayDataHash,
491
+ relayData: null,
492
+ repaymentChainId: null,
493
+ repaymentAddress: null,
494
+ };
495
+ return [2, (0, exports.createFillInstruction)(signer, solanaClient, fillInput, { outputAmount: relayData.outputAmount.toBigInt(), recipient: (0, _1.toAddress)(relayData.recipient) }, mintInfo.data.decimals, true, remainingAccounts)];
496
+ }
497
+ });
498
+ });
499
+ }
500
+ exports.getIPFillRelayTx = getIPFillRelayTx;
501
+ var createFillInstruction = function (signer, solanaClient, fillInput, relayData, tokenDecimals, createRecipientAtaIfNeeded, remainingAccounts) {
433
502
  if (createRecipientAtaIfNeeded === void 0) { createRecipientAtaIfNeeded = true; }
503
+ if (remainingAccounts === void 0) { remainingAccounts = []; }
434
504
  return tslib_1.__awaiter(void 0, void 0, void 0, function () {
435
505
  var mintInfo, approveIx, getCreateAssociatedTokenIdempotentIx, createFillIx, _a;
436
- return tslib_1.__generator(this, function (_b) {
437
- switch (_b.label) {
506
+ var _b;
507
+ return tslib_1.__generator(this, function (_c) {
508
+ switch (_c.label) {
438
509
  case 0: return [4, getMintInfo(solanaClient, fillInput.mint)];
439
510
  case 1:
440
- mintInfo = _b.sent();
511
+ mintInfo = _c.sent();
441
512
  approveIx = (0, token_1.getApproveCheckedInstruction)({
442
513
  source: fillInput.relayerTokenAccount,
443
514
  mint: fillInput.mint,
444
515
  delegate: fillInput.delegate,
445
516
  owner: fillInput.signer,
446
- amount: fillInput.relayData.outputAmount,
517
+ amount: relayData.outputAmount,
447
518
  decimals: tokenDecimals,
448
519
  }, {
449
520
  programAddress: mintInfo.programAddress,
@@ -451,7 +522,7 @@ var createFillInstruction = function (signer, solanaClient, fillInput, tokenDeci
451
522
  getCreateAssociatedTokenIdempotentIx = function () {
452
523
  return (0, token_1.getCreateAssociatedTokenIdempotentInstruction)({
453
524
  payer: signer,
454
- owner: fillInput.relayData.recipient,
525
+ owner: relayData.recipient,
455
526
  mint: fillInput.mint,
456
527
  ata: fillInput.recipientTokenAccount,
457
528
  systemProgram: system_1.SYSTEM_PROGRAM_ADDRESS,
@@ -459,9 +530,10 @@ var createFillInstruction = function (signer, solanaClient, fillInput, tokenDeci
459
530
  });
460
531
  };
461
532
  createFillIx = contracts_1.SvmSpokeClient.getFillRelayInstruction(fillInput);
533
+ (_b = createFillIx.accounts).push.apply(_b, remainingAccounts);
462
534
  _a = kit_1.pipe;
463
535
  return [4, (0, _1.createDefaultTransaction)(solanaClient, signer)];
464
- case 2: return [2, _a.apply(void 0, [_b.sent(), function (tx) {
536
+ case 2: return [2, _a.apply(void 0, [_c.sent(), function (tx) {
465
537
  return createRecipientAtaIfNeeded ? (0, kit_1.appendTransactionMessageInstruction)(getCreateAssociatedTokenIdempotentIx(), tx) : tx;
466
538
  },
467
539
  function (tx) { return (0, kit_1.appendTransactionMessageInstruction)(approveIx, tx); },
@@ -471,6 +543,12 @@ var createFillInstruction = function (signer, solanaClient, fillInput, tokenDeci
471
543
  });
472
544
  };
473
545
  exports.createFillInstruction = createFillInstruction;
546
+ function deserializeMessage(_message) {
547
+ var message = new Uint8Array(Buffer.from(_message.startsWith("0x") ? _message.slice(2) : _message, "hex"));
548
+ var acrossPlusMessageDecoder = (0, _1.getAcrossPlusMessageDecoder)();
549
+ return acrossPlusMessageDecoder.decode(message);
550
+ }
551
+ exports.deserializeMessage = deserializeMessage;
474
552
  var createDepositInstruction = function (signer, solanaClient, depositInput, tokenDecimals, createVaultAtaIfNeeded) {
475
553
  if (createVaultAtaIfNeeded === void 0) { createVaultAtaIfNeeded = true; }
476
554
  return tslib_1.__awaiter(void 0, void 0, void 0, function () {
@@ -699,6 +777,46 @@ function fetchBatchFillStatusFromPdaAccounts(provider, fillStatusPdas, relayData
699
777
  });
700
778
  });
701
779
  }
780
+ function getFillRelayViaInstructionParamsInstructions(spokePool, relayData, repaymentChainId, repaymentAddress, signer, maxWriteSize) {
781
+ if (maxWriteSize === void 0) { maxWriteSize = 450; }
782
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
783
+ var instructionParams, relayDataEncoder, svmRelayData, encodedRelayData, initInstructionParamsIx, instructions, i, offset, offsetEnd, fragment, writeInstructionParamsIx;
784
+ return tslib_1.__generator(this, function (_a) {
785
+ switch (_a.label) {
786
+ case 0: return [4, (0, _1.getInstructionParamsPda)(spokePool, signer.address)];
787
+ case 1:
788
+ instructionParams = _a.sent();
789
+ relayDataEncoder = contracts_1.SvmSpokeClient.getFillRelayParamsEncoder();
790
+ svmRelayData = (0, _1.toSvmRelayData)(relayData);
791
+ encodedRelayData = relayDataEncoder.encode({
792
+ relayData: svmRelayData,
793
+ repaymentChainId: repaymentChainId,
794
+ repaymentAddress: (0, _1.toAddress)(repaymentAddress),
795
+ });
796
+ initInstructionParamsIx = contracts_1.SvmSpokeClient.getInitializeInstructionParamsInstruction({
797
+ signer: signer,
798
+ instructionParams: instructionParams,
799
+ totalSize: encodedRelayData.length,
800
+ });
801
+ instructions = [initInstructionParamsIx];
802
+ for (i = 0; i <= encodedRelayData.length / maxWriteSize; ++i) {
803
+ offset = i * maxWriteSize;
804
+ offsetEnd = Math.min(offset + maxWriteSize, encodedRelayData.length);
805
+ fragment = encodedRelayData.slice(offset, offsetEnd);
806
+ writeInstructionParamsIx = contracts_1.SvmSpokeClient.getWriteInstructionParamsFragmentInstruction({
807
+ signer: signer,
808
+ instructionParams: instructionParams,
809
+ offset: offset,
810
+ fragment: fragment,
811
+ });
812
+ instructions.push(writeInstructionParamsIx);
813
+ }
814
+ return [2, instructions];
815
+ }
816
+ });
817
+ });
818
+ }
819
+ exports.getFillRelayViaInstructionParamsInstructions = getFillRelayViaInstructionParamsInstructions;
702
820
  function getDepositDelegatePda(depositData, programId) {
703
821
  return tslib_1.__awaiter(this, void 0, void 0, function () {
704
822
  var addrEnc, u64, u32, parts, seedHash, pda;
@@ -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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"}
@@ -0,0 +1,19 @@
1
+ import { type Address, type Decoder, type Encoder, type ReadonlyUint8Array, type WritableAccount, type ReadonlyAccount } from "@solana/kit";
2
+ export type AcrossPlusMessage = {
3
+ handler: Address;
4
+ read_only_len: number;
5
+ value_amount: bigint;
6
+ accounts: Array<Address>;
7
+ handler_message: ReadonlyUint8Array;
8
+ };
9
+ export type CompiledIx = {
10
+ program_id_index: number;
11
+ account_key_indexes: Array<number>;
12
+ data: ReadonlyUint8Array;
13
+ };
14
+ export declare function getAcrossPlusMessageEncoder(): Encoder<AcrossPlusMessage>;
15
+ export declare function getAcrossPlusMessageDecoder(): Decoder<AcrossPlusMessage>;
16
+ export declare function getHandlerMessageEncoder(): Encoder<Array<CompiledIx>>;
17
+ export declare function getCompiledIxEncoder(): Encoder<CompiledIx>;
18
+ export declare function getCompiledIxDecoder(): Decoder<CompiledIx>;
19
+ export declare function getAccountMeta(value: Address, isWritable: boolean): WritableAccount | ReadonlyAccount;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAccountMeta = exports.getCompiledIxDecoder = exports.getCompiledIxEncoder = exports.getHandlerMessageEncoder = exports.getAcrossPlusMessageDecoder = exports.getAcrossPlusMessageEncoder = void 0;
4
+ var kit_1 = require("@solana/kit");
5
+ function getAcrossPlusMessageEncoder() {
6
+ return (0, kit_1.getStructEncoder)([
7
+ ["handler", (0, kit_1.getAddressEncoder)()],
8
+ ["read_only_len", (0, kit_1.getU8Encoder)()],
9
+ ["value_amount", (0, kit_1.getU64Encoder)()],
10
+ ["accounts", (0, kit_1.getArrayEncoder)((0, kit_1.getAddressEncoder)())],
11
+ ["handler_message", (0, kit_1.addEncoderSizePrefix)((0, kit_1.getBytesEncoder)(), (0, kit_1.getU32Encoder)())],
12
+ ]);
13
+ }
14
+ exports.getAcrossPlusMessageEncoder = getAcrossPlusMessageEncoder;
15
+ function getAcrossPlusMessageDecoder() {
16
+ return (0, kit_1.getStructDecoder)([
17
+ ["handler", (0, kit_1.getAddressDecoder)()],
18
+ ["read_only_len", (0, kit_1.getU8Decoder)()],
19
+ ["value_amount", (0, kit_1.getU64Decoder)()],
20
+ ["accounts", (0, kit_1.getArrayDecoder)((0, kit_1.getAddressDecoder)())],
21
+ ["handler_message", (0, kit_1.addDecoderSizePrefix)((0, kit_1.getBytesDecoder)(), (0, kit_1.getU32Decoder)())],
22
+ ]);
23
+ }
24
+ exports.getAcrossPlusMessageDecoder = getAcrossPlusMessageDecoder;
25
+ function getHandlerMessageEncoder() {
26
+ return (0, kit_1.getArrayEncoder)(getCompiledIxEncoder());
27
+ }
28
+ exports.getHandlerMessageEncoder = getHandlerMessageEncoder;
29
+ function getCompiledIxEncoder() {
30
+ return (0, kit_1.getStructEncoder)([
31
+ ["program_id_index", (0, kit_1.getU8Encoder)()],
32
+ ["account_key_indexes", (0, kit_1.getArrayEncoder)((0, kit_1.getU8Encoder)())],
33
+ ["data", (0, kit_1.addEncoderSizePrefix)((0, kit_1.getBytesEncoder)(), (0, kit_1.getU32Encoder)())],
34
+ ]);
35
+ }
36
+ exports.getCompiledIxEncoder = getCompiledIxEncoder;
37
+ function getCompiledIxDecoder() {
38
+ return (0, kit_1.getStructDecoder)([
39
+ ["program_id_index", (0, kit_1.getU8Decoder)()],
40
+ ["account_key_indexes", (0, kit_1.getArrayDecoder)((0, kit_1.getU8Decoder)())],
41
+ ["data", (0, kit_1.addDecoderSizePrefix)((0, kit_1.getBytesDecoder)(), (0, kit_1.getU32Decoder)())],
42
+ ]);
43
+ }
44
+ exports.getCompiledIxDecoder = getCompiledIxDecoder;
45
+ function getAccountMeta(value, isWritable) {
46
+ return Object.freeze({
47
+ address: value,
48
+ role: isWritable ? kit_1.AccountRole.WRITABLE : kit_1.AccountRole.READONLY,
49
+ });
50
+ }
51
+ exports.getAccountMeta = getAccountMeta;
52
+ //# sourceMappingURL=encoders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encoders.js","sourceRoot":"","sources":["../../../../src/arch/svm/encoders.ts"],"names":[],"mappings":";;;AAAA,mCAwBqB;AAgBrB,SAAgB,2BAA2B;IACzC,OAAO,IAAA,sBAAgB,EAAC;QACtB,CAAC,SAAS,EAAE,IAAA,uBAAiB,GAAE,CAAC;QAChC,CAAC,eAAe,EAAE,IAAA,kBAAY,GAAE,CAAC;QACjC,CAAC,cAAc,EAAE,IAAA,mBAAa,GAAE,CAAC;QACjC,CAAC,UAAU,EAAE,IAAA,qBAAe,EAAC,IAAA,uBAAiB,GAAE,CAAC,CAAC;QAClD,CAAC,iBAAiB,EAAE,IAAA,0BAAoB,EAAC,IAAA,qBAAe,GAAE,EAAE,IAAA,mBAAa,GAAE,CAAC,CAAC;KAC9E,CAAC,CAAC;AACL,CAAC;AARD,kEAQC;AAED,SAAgB,2BAA2B;IACzC,OAAO,IAAA,sBAAgB,EAAC;QACtB,CAAC,SAAS,EAAE,IAAA,uBAAiB,GAAE,CAAC;QAChC,CAAC,eAAe,EAAE,IAAA,kBAAY,GAAE,CAAC;QACjC,CAAC,cAAc,EAAE,IAAA,mBAAa,GAAE,CAAC;QACjC,CAAC,UAAU,EAAE,IAAA,qBAAe,EAAC,IAAA,uBAAiB,GAAE,CAAC,CAAC;QAClD,CAAC,iBAAiB,EAAE,IAAA,0BAAoB,EAAC,IAAA,qBAAe,GAAE,EAAE,IAAA,mBAAa,GAAE,CAAC,CAAC;KAC9E,CAAC,CAAC;AACL,CAAC;AARD,kEAQC;AAED,SAAgB,wBAAwB;IACtC,OAAO,IAAA,qBAAe,EAAC,oBAAoB,EAAE,CAAC,CAAC;AACjD,CAAC;AAFD,4DAEC;AAED,SAAgB,oBAAoB;IAClC,OAAO,IAAA,sBAAgB,EAAC;QACtB,CAAC,kBAAkB,EAAE,IAAA,kBAAY,GAAE,CAAC;QACpC,CAAC,qBAAqB,EAAE,IAAA,qBAAe,EAAC,IAAA,kBAAY,GAAE,CAAC,CAAC;QACxD,CAAC,MAAM,EAAE,IAAA,0BAAoB,EAAC,IAAA,qBAAe,GAAE,EAAE,IAAA,mBAAa,GAAE,CAAC,CAAC;KACnE,CAAC,CAAC;AACL,CAAC;AAND,oDAMC;AAED,SAAgB,oBAAoB;IAClC,OAAO,IAAA,sBAAgB,EAAC;QACtB,CAAC,kBAAkB,EAAE,IAAA,kBAAY,GAAE,CAAC;QACpC,CAAC,qBAAqB,EAAE,IAAA,qBAAe,EAAC,IAAA,kBAAY,GAAE,CAAC,CAAC;QACxD,CAAC,MAAM,EAAE,IAAA,0BAAoB,EAAC,IAAA,qBAAe,GAAE,EAAE,IAAA,mBAAa,GAAE,CAAC,CAAC;KACnE,CAAC,CAAC;AACL,CAAC;AAND,oDAMC;AAED,SAAgB,cAAc,CAAC,KAAc,EAAE,UAAmB;IAChE,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,iBAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,iBAAW,CAAC,QAAQ;KAC/D,CAAC,CAAC;AACL,CAAC;AALD,wCAKC"}
@@ -5,3 +5,4 @@ export * from "./utils";
5
5
  export * from "./constants";
6
6
  export * from "./BlockUtils";
7
7
  export * from "./provider";
8
+ export * from "./encoders";
@@ -8,4 +8,5 @@ tslib_1.__exportStar(require("./utils"), exports);
8
8
  tslib_1.__exportStar(require("./constants"), exports);
9
9
  tslib_1.__exportStar(require("./BlockUtils"), exports);
10
10
  tslib_1.__exportStar(require("./provider"), exports);
11
+ tslib_1.__exportStar(require("./encoders"), exports);
11
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/arch/svm/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,uDAA6B;AAC7B,kDAAwB;AACxB,kDAAwB;AACxB,sDAA4B;AAC5B,uDAA6B;AAC7B,qDAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/arch/svm/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,uDAA6B;AAC7B,kDAAwB;AACxB,kDAAwB;AACxB,sDAA4B;AAC5B,uDAA6B;AAC7B,qDAA2B;AAC3B,qDAA2B"}
@@ -70,11 +70,11 @@ function _buildPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bund
70
70
  var repaymentChainId = Number(_repaymentChainId);
71
71
  Object.entries(fillsForChain).forEach(function (_a) {
72
72
  var l2TokenAddress = _a[0], _b = _a[1], totalRealizedLpFee = _b.realizedLpFees, totalRefundAmount = _b.totalRefundAmount;
73
- if (!clients.hubPoolClient.l2TokenHasPoolRebalanceRoute((0, utils_1.toAddressType)(l2TokenAddress, repaymentChainId), repaymentChainId, mainnetBundleEndBlock)) {
73
+ var l1Token = clients.hubPoolClient.getL1TokenForL2TokenAtBlock((0, utils_1.toAddressType)(l2TokenAddress, repaymentChainId), repaymentChainId, mainnetBundleEndBlock);
74
+ if (!l1Token) {
74
75
  chainWithRefundsOnly.add(repaymentChainId);
75
76
  return;
76
77
  }
77
- var l1Token = clients.hubPoolClient.getL1TokenForL2TokenAtBlock((0, utils_1.toAddressType)(l2TokenAddress, repaymentChainId), repaymentChainId, mainnetBundleEndBlock);
78
78
  var l1TokenAddr = l1Token.toNative();
79
79
  (0, assert_1.default)(l1Token.isEVM(), "Expected an EVM address: ".concat(l1TokenAddr));
80
80
  (0, PoolRebalanceUtils_1.updateRunningBalance)(runningBalances, repaymentChainId, l1TokenAddr, totalRefundAmount);
@@ -88,6 +88,7 @@ function _buildPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bund
88
88
  var outputToken = _a[0], deposits = _a[1];
89
89
  deposits.forEach(function (deposit) {
90
90
  var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock((0, utils_1.toAddressType)(outputToken, destinationChainId), destinationChainId, mainnetBundleEndBlock);
91
+ (0, assert_1.default)((0, utils_1.isDefined)(l1TokenCounterpart), "getRefundInformationFromFill: l1TokenCounterpart is undefined");
91
92
  var lpFee = deposit.lpFeePct.mul(deposit.inputAmount).div(utils_1.fixedPointAdjustment);
92
93
  (0, PoolRebalanceUtils_1.updateRunningBalance)(runningBalances, destinationChainId, l1TokenCounterpart.toEvmAddress(), deposit.inputAmount.sub(lpFee));
93
94
  });
@@ -100,6 +101,7 @@ function _buildPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bund
100
101
  var outputToken = _a[0], slowFilledDeposits = _a[1];
101
102
  slowFilledDeposits.forEach(function (deposit) {
102
103
  var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock((0, utils_1.toAddressType)(outputToken, destinationChainId), destinationChainId, mainnetBundleEndBlock);
104
+ (0, assert_1.default)((0, utils_1.isDefined)(l1TokenCounterpart), "getRefundInformationFromFill: l1TokenCounterpart is undefined");
103
105
  var lpFee = deposit.lpFeePct.mul(deposit.inputAmount).div(utils_1.fixedPointAdjustment);
104
106
  (0, PoolRebalanceUtils_1.updateRunningBalance)(runningBalances, destinationChainId, l1TokenCounterpart.toEvmAddress(), lpFee.sub(deposit.inputAmount));
105
107
  });
@@ -123,11 +125,11 @@ function _buildPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bund
123
125
  Object.entries(depositsForChain).forEach(function (_a) {
124
126
  var inputToken = _a[0], deposits = _a[1];
125
127
  deposits.forEach(function (deposit) {
126
- if (!clients.hubPoolClient.l2TokenHasPoolRebalanceRoute(deposit.inputToken, deposit.originChainId, mainnetBundleEndBlock)) {
128
+ var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock((0, utils_1.toAddressType)(inputToken, originChainId), originChainId, mainnetBundleEndBlock);
129
+ if (!l1TokenCounterpart) {
127
130
  chainWithRefundsOnly.add(deposit.originChainId);
128
131
  return;
129
132
  }
130
- var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock((0, utils_1.toAddressType)(inputToken, originChainId), originChainId, mainnetBundleEndBlock);
131
133
  (0, PoolRebalanceUtils_1.updateRunningBalance)(runningBalances, originChainId, l1TokenCounterpart.toEvmAddress(), deposit.inputAmount);
132
134
  });
133
135
  });