@across-protocol/sdk 4.2.16-alpha.0 → 4.2.16-alpha.3

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 (211) hide show
  1. package/dist/cjs/arch/evm/SpokeUtils.d.ts +6 -2
  2. package/dist/cjs/arch/evm/SpokeUtils.js +21 -6
  3. package/dist/cjs/arch/evm/SpokeUtils.js.map +1 -1
  4. package/dist/cjs/arch/svm/SpokeUtils.d.ts +9 -5
  5. package/dist/cjs/arch/svm/SpokeUtils.js +70 -71
  6. package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -1
  7. package/dist/cjs/arch/svm/utils.d.ts +3 -5
  8. package/dist/cjs/arch/svm/utils.js +20 -28
  9. package/dist/cjs/arch/svm/utils.js.map +1 -1
  10. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +3 -3
  11. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +4 -2
  12. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  13. package/dist/cjs/clients/BundleDataClient/BundleDataClient.d.ts +4 -4
  14. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +60 -56
  15. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  16. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js +13 -13
  17. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  18. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.d.ts +2 -1
  19. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js +3 -2
  20. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
  21. package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.js +5 -1
  22. package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.js.map +1 -1
  23. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +3 -3
  24. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  25. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +63 -63
  26. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.js +11 -8
  27. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.js.map +1 -1
  28. package/dist/cjs/clients/HubPoolClient.d.ts +21 -21
  29. package/dist/cjs/clients/HubPoolClient.js +83 -58
  30. package/dist/cjs/clients/HubPoolClient.js.map +1 -1
  31. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js +1 -1
  32. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  33. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.d.ts +2 -2
  34. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js +64 -45
  35. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  36. package/dist/cjs/clients/mocks/MockHubPoolClient.d.ts +9 -9
  37. package/dist/cjs/clients/mocks/MockHubPoolClient.js +15 -9
  38. package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -1
  39. package/dist/cjs/clients/mocks/MockSpokePoolClient.d.ts +5 -3
  40. package/dist/cjs/clients/mocks/MockSpokePoolClient.js +40 -36
  41. package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
  42. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.d.ts +1 -1
  43. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js +3 -4
  44. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js.map +1 -1
  45. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.d.ts +3 -3
  46. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js +2 -2
  47. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js.map +1 -1
  48. package/dist/cjs/interfaces/HubPool.d.ts +19 -14
  49. package/dist/cjs/interfaces/SpokePool.d.ts +13 -13
  50. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +6 -6
  51. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +10 -10
  52. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  53. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.d.ts +5 -5
  54. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js +42 -49
  55. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
  56. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.d.ts +5 -5
  57. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js +7 -7
  58. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  59. package/dist/cjs/utils/AddressUtils.d.ts +12 -13
  60. package/dist/cjs/utils/AddressUtils.js +44 -46
  61. package/dist/cjs/utils/AddressUtils.js.map +1 -1
  62. package/dist/cjs/utils/EventUtils.js +1 -1
  63. package/dist/cjs/utils/EventUtils.js.map +1 -1
  64. package/dist/cjs/utils/SpokeUtils.d.ts +3 -3
  65. package/dist/cjs/utils/SpokeUtils.js +4 -22
  66. package/dist/cjs/utils/SpokeUtils.js.map +1 -1
  67. package/dist/cjs/utils/TokenUtils.d.ts +4 -4
  68. package/dist/cjs/utils/TokenUtils.js +4 -6
  69. package/dist/cjs/utils/TokenUtils.js.map +1 -1
  70. package/dist/esm/arch/evm/SpokeUtils.d.ts +6 -2
  71. package/dist/esm/arch/evm/SpokeUtils.js +22 -7
  72. package/dist/esm/arch/evm/SpokeUtils.js.map +1 -1
  73. package/dist/esm/arch/svm/SpokeUtils.d.ts +9 -5
  74. package/dist/esm/arch/svm/SpokeUtils.js +74 -75
  75. package/dist/esm/arch/svm/SpokeUtils.js.map +1 -1
  76. package/dist/esm/arch/svm/utils.d.ts +6 -8
  77. package/dist/esm/arch/svm/utils.js +21 -27
  78. package/dist/esm/arch/svm/utils.js.map +1 -1
  79. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +3 -3
  80. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +4 -2
  81. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  82. package/dist/esm/clients/BundleDataClient/BundleDataClient.d.ts +4 -4
  83. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +61 -57
  84. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  85. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js +14 -14
  86. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  87. package/dist/esm/clients/BundleDataClient/utils/FillUtils.d.ts +2 -1
  88. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js +5 -3
  89. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
  90. package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.js +5 -1
  91. package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.js.map +1 -1
  92. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +4 -4
  93. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  94. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +63 -63
  95. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.js +12 -9
  96. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.js.map +1 -1
  97. package/dist/esm/clients/HubPoolClient.d.ts +23 -22
  98. package/dist/esm/clients/HubPoolClient.js +97 -63
  99. package/dist/esm/clients/HubPoolClient.js.map +1 -1
  100. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js +2 -2
  101. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  102. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.d.ts +2 -2
  103. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js +67 -47
  104. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  105. package/dist/esm/clients/mocks/MockHubPoolClient.d.ts +9 -9
  106. package/dist/esm/clients/mocks/MockHubPoolClient.js +16 -10
  107. package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -1
  108. package/dist/esm/clients/mocks/MockSpokePoolClient.d.ts +5 -3
  109. package/dist/esm/clients/mocks/MockSpokePoolClient.js +42 -38
  110. package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
  111. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.d.ts +1 -1
  112. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js +4 -5
  113. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js.map +1 -1
  114. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.d.ts +3 -3
  115. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js +3 -3
  116. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js.map +1 -1
  117. package/dist/esm/interfaces/HubPool.d.ts +19 -14
  118. package/dist/esm/interfaces/SpokePool.d.ts +13 -13
  119. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +6 -6
  120. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +11 -11
  121. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  122. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.d.ts +6 -6
  123. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js +44 -51
  124. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
  125. package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +5 -5
  126. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +8 -8
  127. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  128. package/dist/esm/utils/AddressUtils.d.ts +13 -14
  129. package/dist/esm/utils/AddressUtils.js +50 -56
  130. package/dist/esm/utils/AddressUtils.js.map +1 -1
  131. package/dist/esm/utils/EventUtils.js +2 -2
  132. package/dist/esm/utils/EventUtils.js.map +1 -1
  133. package/dist/esm/utils/SpokeUtils.d.ts +3 -8
  134. package/dist/esm/utils/SpokeUtils.js +4 -26
  135. package/dist/esm/utils/SpokeUtils.js.map +1 -1
  136. package/dist/esm/utils/TokenUtils.d.ts +4 -16
  137. package/dist/esm/utils/TokenUtils.js +5 -7
  138. package/dist/esm/utils/TokenUtils.js.map +1 -1
  139. package/dist/types/arch/evm/SpokeUtils.d.ts +6 -2
  140. package/dist/types/arch/evm/SpokeUtils.d.ts.map +1 -1
  141. package/dist/types/arch/svm/SpokeUtils.d.ts +9 -5
  142. package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -1
  143. package/dist/types/arch/svm/utils.d.ts +6 -8
  144. package/dist/types/arch/svm/utils.d.ts.map +1 -1
  145. package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +3 -3
  146. package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts.map +1 -1
  147. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts +4 -4
  148. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  149. package/dist/types/clients/BundleDataClient/utils/DataworkerUtils.d.ts.map +1 -1
  150. package/dist/types/clients/BundleDataClient/utils/FillUtils.d.ts +2 -1
  151. package/dist/types/clients/BundleDataClient/utils/FillUtils.d.ts.map +1 -1
  152. package/dist/types/clients/BundleDataClient/utils/MerkleTreeUtils.d.ts.map +1 -1
  153. package/dist/types/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts.map +1 -1
  154. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +63 -63
  155. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts.map +1 -1
  156. package/dist/types/clients/HubPoolClient.d.ts +23 -22
  157. package/dist/types/clients/HubPoolClient.d.ts.map +1 -1
  158. package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts.map +1 -1
  159. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts +2 -2
  160. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts.map +1 -1
  161. package/dist/types/clients/mocks/MockHubPoolClient.d.ts +9 -9
  162. package/dist/types/clients/mocks/MockHubPoolClient.d.ts.map +1 -1
  163. package/dist/types/clients/mocks/MockSpokePoolClient.d.ts +5 -3
  164. package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -1
  165. package/dist/types/clients/mocks/MockSvmCpiEventsClient.d.ts +1 -1
  166. package/dist/types/clients/mocks/MockSvmCpiEventsClient.d.ts.map +1 -1
  167. package/dist/types/clients/mocks/MockSvmSpokePoolClient.d.ts +3 -3
  168. package/dist/types/clients/mocks/MockSvmSpokePoolClient.d.ts.map +1 -1
  169. package/dist/types/interfaces/HubPool.d.ts +19 -14
  170. package/dist/types/interfaces/HubPool.d.ts.map +1 -1
  171. package/dist/types/interfaces/SpokePool.d.ts +13 -13
  172. package/dist/types/interfaces/SpokePool.d.ts.map +1 -1
  173. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +6 -6
  174. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -1
  175. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts +6 -6
  176. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts.map +1 -1
  177. package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +5 -5
  178. package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -1
  179. package/dist/types/utils/AddressUtils.d.ts +13 -14
  180. package/dist/types/utils/AddressUtils.d.ts.map +1 -1
  181. package/dist/types/utils/SpokeUtils.d.ts +3 -8
  182. package/dist/types/utils/SpokeUtils.d.ts.map +1 -1
  183. package/dist/types/utils/TokenUtils.d.ts +4 -16
  184. package/dist/types/utils/TokenUtils.d.ts.map +1 -1
  185. package/package.json +2 -3
  186. package/src/arch/evm/SpokeUtils.ts +52 -12
  187. package/src/arch/svm/SpokeUtils.ts +108 -59
  188. package/src/arch/svm/utils.ts +11 -20
  189. package/src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts +7 -4
  190. package/src/clients/BundleDataClient/BundleDataClient.ts +57 -53
  191. package/src/clients/BundleDataClient/utils/DataworkerUtils.ts +28 -13
  192. package/src/clients/BundleDataClient/utils/FillUtils.ts +10 -4
  193. package/src/clients/BundleDataClient/utils/MerkleTreeUtils.ts +7 -1
  194. package/src/clients/BundleDataClient/utils/PoolRebalanceUtils.ts +4 -4
  195. package/src/clients/BundleDataClient/utils/SuperstructUtils.ts +13 -9
  196. package/src/clients/HubPoolClient.ts +126 -82
  197. package/src/clients/SpokePoolClient/EVMSpokePoolClient.ts +6 -0
  198. package/src/clients/SpokePoolClient/SpokePoolClient.ts +118 -35
  199. package/src/clients/mocks/MockHubPoolClient.ts +24 -19
  200. package/src/clients/mocks/MockSpokePoolClient.ts +39 -27
  201. package/src/clients/mocks/MockSvmCpiEventsClient.ts +3 -5
  202. package/src/clients/mocks/MockSvmSpokePoolClient.ts +12 -3
  203. package/src/interfaces/HubPool.ts +23 -14
  204. package/src/interfaces/SpokePool.ts +13 -13
  205. package/src/relayFeeCalculator/chain-queries/baseQuery.ts +14 -12
  206. package/src/relayFeeCalculator/chain-queries/svmQuery.ts +42 -46
  207. package/src/relayFeeCalculator/relayFeeCalculator.ts +20 -12
  208. package/src/utils/AddressUtils.ts +58 -60
  209. package/src/utils/EventUtils.ts +2 -2
  210. package/src/utils/SpokeUtils.ts +11 -33
  211. package/src/utils/TokenUtils.ts +10 -11
@@ -1,4 +1,4 @@
1
- import { BigNumber } from "../utils";
1
+ import { Address, BigNumber, EvmAddress } from "../utils";
2
2
  import { SortableEvent } from "./Common";
3
3
  export interface PoolRebalanceLeaf {
4
4
  chainId: number;
@@ -7,15 +7,15 @@ export interface PoolRebalanceLeaf {
7
7
  netSendAmounts: BigNumber[];
8
8
  runningBalances: BigNumber[];
9
9
  leafId: number;
10
- l1Tokens: string[];
10
+ l1Tokens: EvmAddress[];
11
11
  }
12
12
  export interface RelayerRefundLeaf {
13
13
  amountToReturn: BigNumber;
14
14
  chainId: number;
15
15
  refundAmounts: BigNumber[];
16
16
  leafId: number;
17
- l2TokenAddress: string;
18
- refundAddresses: string[];
17
+ l2TokenAddress: Address;
18
+ refundAddresses: Address[];
19
19
  }
20
20
  export interface ProposedRootBundle extends SortableEvent {
21
21
  challengePeriodEndTimestamp: number;
@@ -24,7 +24,7 @@ export interface ProposedRootBundle extends SortableEvent {
24
24
  poolRebalanceRoot: string;
25
25
  relayerRefundRoot: string;
26
26
  slowRelayRoot: string;
27
- proposer: string;
27
+ proposer: EvmAddress;
28
28
  }
29
29
  export type RealizedLpFee = {
30
30
  quoteBlock: number;
@@ -47,7 +47,7 @@ export interface ExecutedRootBundle extends SortableEvent {
47
47
  netSendAmounts: BigNumber[];
48
48
  runningBalances: BigNumber[];
49
49
  leafId: number;
50
- l1Tokens: string[];
50
+ l1Tokens: EvmAddress[];
51
51
  proof: string[];
52
52
  }
53
53
  export type ExecutedRootBundleStringified = Omit<ExecutedRootBundle, "bundleLpFees" | "netSendAmounts" | "runningBalances"> & {
@@ -61,8 +61,13 @@ export type TokenRunningBalance = {
61
61
  export interface RelayerRefundLeafWithGroup extends RelayerRefundLeaf {
62
62
  groupIndex: number;
63
63
  }
64
- export interface L1Token {
65
- address: string;
64
+ export interface L1TokenInfo {
65
+ address: EvmAddress;
66
+ symbol: string;
67
+ decimals: number;
68
+ }
69
+ export interface TokenInfo {
70
+ address: Address;
66
71
  symbol: string;
67
72
  decimals: number;
68
73
  }
@@ -72,22 +77,22 @@ export interface LpToken {
72
77
  }
73
78
  export interface CrossChainContractsSet extends SortableEvent {
74
79
  l2ChainId: number;
75
- spokePool: string;
80
+ spokePool: Address;
76
81
  }
77
82
  export interface DestinationTokenWithBlock extends SortableEvent {
78
- l2Token: string;
79
- l1Token: string;
83
+ l2Token: Address;
84
+ l1Token: EvmAddress;
80
85
  }
81
86
  export interface SetPoolRebalanceRoot extends SortableEvent {
82
87
  destinationChainId: number;
83
- l1Token: string;
84
- destinationToken: string;
88
+ l1Token: EvmAddress;
89
+ destinationToken: Address;
85
90
  }
86
91
  export interface PendingRootBundle {
87
92
  poolRebalanceRoot: string;
88
93
  relayerRefundRoot: string;
89
94
  slowRelayRoot: string;
90
- proposer: string;
95
+ proposer: EvmAddress;
91
96
  unclaimedPoolRebalanceLeafCount: number;
92
97
  challengePeriodEndTimestamp: number;
93
98
  bundleEvaluationBlockNumbers: number[];
@@ -1,19 +1,19 @@
1
1
  import { SortableEvent } from "./Common";
2
2
  import { SpokePoolClient } from "../clients";
3
- import { BigNumber } from "../utils";
3
+ import { BigNumber, Address, EvmAddress } from "../utils";
4
4
  import { RelayerRefundLeaf } from "./HubPool";
5
5
  export interface RelayData {
6
6
  originChainId: number;
7
- depositor: string;
8
- recipient: string;
7
+ depositor: Address;
8
+ recipient: Address;
9
9
  depositId: BigNumber;
10
- inputToken: string;
10
+ inputToken: Address;
11
11
  inputAmount: BigNumber;
12
- outputToken: string;
12
+ outputToken: Address;
13
13
  outputAmount: BigNumber;
14
14
  message: string;
15
15
  fillDeadline: number;
16
- exclusiveRelayer: string;
16
+ exclusiveRelayer: Address;
17
17
  exclusivityDeadline: number;
18
18
  }
19
19
  export interface Deposit extends RelayData {
@@ -21,7 +21,7 @@ export interface Deposit extends RelayData {
21
21
  destinationChainId: number;
22
22
  quoteTimestamp: number;
23
23
  speedUpSignature?: string;
24
- updatedRecipient?: string;
24
+ updatedRecipient?: Address;
25
25
  updatedOutputAmount?: BigNumber;
26
26
  updatedMessage?: string;
27
27
  fromLiteChain: boolean;
@@ -44,7 +44,7 @@ export declare enum FillType {
44
44
  SlowFill = 2
45
45
  }
46
46
  export interface RelayExecutionEventInfo {
47
- updatedRecipient: string;
47
+ updatedRecipient: Address;
48
48
  updatedOutputAmount: BigNumber;
49
49
  updatedMessage?: string;
50
50
  updatedMessageHash: string;
@@ -53,7 +53,7 @@ export interface RelayExecutionEventInfo {
53
53
  export interface Fill extends Omit<RelayData, "message"> {
54
54
  messageHash: string;
55
55
  destinationChainId: number;
56
- relayer: string;
56
+ relayer: Address;
57
57
  repaymentChainId: number;
58
58
  relayExecutionInfo: RelayExecutionEventInfo;
59
59
  }
@@ -63,18 +63,18 @@ export interface FillWithTime extends Fill, SortableEvent {
63
63
  fillTimestamp: number;
64
64
  }
65
65
  export interface EnabledDepositRoute {
66
- originToken: string;
66
+ originToken: Address;
67
67
  destinationChainId: number;
68
68
  enabled: boolean;
69
69
  }
70
70
  export interface EnabledDepositRouteWithBlock extends EnabledDepositRoute, SortableEvent {
71
71
  }
72
72
  export interface SpeedUp {
73
- depositor: string;
73
+ depositor: EvmAddress;
74
74
  depositorSignature: string;
75
75
  depositId: BigNumber;
76
76
  originChainId: number;
77
- updatedRecipient: string;
77
+ updatedRecipient: Address;
78
78
  updatedOutputAmount: BigNumber;
79
79
  updatedMessage: string;
80
80
  }
@@ -115,7 +115,7 @@ export interface TokensBridged extends SortableEvent {
115
115
  amountToReturn: BigNumber;
116
116
  chainId: number;
117
117
  leafId: number;
118
- l2TokenAddress: string;
118
+ l2TokenAddress: Address;
119
119
  }
120
120
  export interface ClaimedRelayerRefundWithBlock extends SortableEvent {
121
121
  l2TokenAddress: string;
@@ -2,7 +2,7 @@ import { L2Provider } from "@eth-optimism/sdk/dist/interfaces/l2-provider";
2
2
  import { PopulatedTransaction, providers } from "ethers";
3
3
  import { Deposit } from "../../interfaces";
4
4
  import { SpokePool } from "../../typechain";
5
- import { BigNumberish, TransactionCostEstimate, BigNumber } from "../../utils";
5
+ import { BigNumberish, TransactionCostEstimate, BigNumber, Address } from "../../utils";
6
6
  import { Logger, QueryInterface } from "../relayFeeCalculator";
7
7
  import { Transport } from "viem";
8
8
  import { EvmProvider } from "../../arch/evm/types";
@@ -46,7 +46,7 @@ export declare class QueryBase implements QueryInterface {
46
46
  * @param options.transport Optional transport object for custom gas price retrieval.
47
47
  * @returns The gas estimate for this function call (multiplied with the optional buffer).
48
48
  */
49
- getGasCosts(deposit: Omit<Deposit, "messageHash">, relayer?: string, options?: Partial<{
49
+ getGasCosts(deposit: Omit<Deposit, "messageHash">, relayer?: Address, options?: Partial<{
50
50
  gasPrice: BigNumberish;
51
51
  gasUnits: BigNumberish;
52
52
  baseFeeMultiplier: BigNumber;
@@ -60,14 +60,14 @@ export declare class QueryBase implements QueryInterface {
60
60
  * @param relayer Sender of PopulatedTransaction
61
61
  * @returns PopulatedTransaction
62
62
  */
63
- getUnsignedTxFromDeposit(deposit: Omit<Deposit, "messageHash">, relayer?: string): Promise<PopulatedTransaction>;
63
+ getUnsignedTxFromDeposit(deposit: Omit<Deposit, "messageHash">, relayer?: Address): Promise<PopulatedTransaction>;
64
64
  /**
65
65
  * @notice Return the gas cost of a simulated transaction
66
66
  * @param deposit
67
67
  * @param relayer Sender of PopulatedTransaction
68
68
  * @returns Estimated gas cost based on ethers.VoidSigner's gas estimation
69
69
  */
70
- getNativeGasCost(deposit: Omit<Deposit, "messageHash">, relayer?: string): Promise<BigNumber>;
70
+ getNativeGasCost(deposit: Omit<Deposit, "messageHash">, relayer?: Address): Promise<BigNumber>;
71
71
  /**
72
72
  * @notice Return L1 data fee for OP stack L2 transaction, which is based on L2 calldata.
73
73
  * @dev https://docs.optimism.io/stack/transactions/fees#l1-data-fee
@@ -76,7 +76,7 @@ export declare class QueryBase implements QueryInterface {
76
76
  * @param options Specify gas units to avoid additional gas estimation call and multiplier for L1 data fee
77
77
  * @returns BigNumber L1 data fee in gas units
78
78
  */
79
- getOpStackL1DataFee(unsignedTx: PopulatedTransaction, relayer: string | undefined, options: Partial<{
79
+ getOpStackL1DataFee(unsignedTx: PopulatedTransaction, relayer: Address | undefined, options: Partial<{
80
80
  opStackL2GasUnits: BigNumberish;
81
81
  opStackL1DataFeeMultiplier: BigNumber;
82
82
  }>): Promise<BigNumber>;
@@ -91,7 +91,7 @@ export declare class QueryBase implements QueryInterface {
91
91
  * @param options.transport A custom transport object for custom gas price retrieval.
92
92
  * @returns Estimated cost in units of gas and the underlying gas token (gasPrice * estimatedGasUnits).
93
93
  */
94
- estimateGas(unsignedTx: PopulatedTransaction, senderAddress: string, provider: providers.Provider | L2Provider<providers.Provider>, options?: Partial<{
94
+ estimateGas(unsignedTx: PopulatedTransaction, senderAddress: Address, provider: providers.Provider | L2Provider<providers.Provider>, options?: Partial<{
95
95
  gasPrice: BigNumberish;
96
96
  gasUnits: BigNumberish;
97
97
  baseFeeMultiplier: BigNumber;
@@ -5,7 +5,7 @@ import { Coingecko } from "../../coingecko";
5
5
  import { CHAIN_IDs } from "../../constants";
6
6
  import { SpokePool__factory } from "../../typechain";
7
7
  import { populateV3Relay } from "../../arch/evm";
8
- import { BigNumber, toBNWei, bnZero, chainIsOPStack, fixedPointAdjustment, } from "../../utils";
8
+ import { BigNumber, toBNWei, bnZero, chainIsOPStack, fixedPointAdjustment, toAddressType, } from "../../utils";
9
9
  import assert from "assert";
10
10
  import { getDefaultSimulatedRelayerAddress } from "../relayFeeCalculator";
11
11
  import { getGasPriceEstimate } from "../../gasPriceOracle";
@@ -48,7 +48,7 @@ var QueryBase = /** @class */ (function () {
48
48
  * @returns The gas estimate for this function call (multiplied with the optional buffer).
49
49
  */
50
50
  QueryBase.prototype.getGasCosts = function (deposit, relayer, options) {
51
- if (relayer === void 0) { relayer = getDefaultSimulatedRelayerAddress(deposit.destinationChainId); }
51
+ if (relayer === void 0) { relayer = toAddressType(getDefaultSimulatedRelayerAddress(deposit.destinationChainId), deposit.destinationChainId); }
52
52
  if (options === void 0) { options = {}; }
53
53
  return __awaiter(this, void 0, void 0, function () {
54
54
  var _a, gasPrice, gasUnits, baseFeeMultiplier, priorityFeeMultiplier, opStackL1GasCostMultiplier, transport, tx, _b, nativeGasCost, tokenGasCost, impliedGasPrice, opStackL1GasCost;
@@ -86,7 +86,7 @@ var QueryBase = /** @class */ (function () {
86
86
  * @returns PopulatedTransaction
87
87
  */
88
88
  QueryBase.prototype.getUnsignedTxFromDeposit = function (deposit, relayer) {
89
- if (relayer === void 0) { relayer = getDefaultSimulatedRelayerAddress(deposit.destinationChainId); }
89
+ if (relayer === void 0) { relayer = toAddressType(getDefaultSimulatedRelayerAddress(deposit.destinationChainId), deposit.destinationChainId); }
90
90
  return populateV3Relay(this.spokePool, deposit, relayer);
91
91
  };
92
92
  /**
@@ -96,7 +96,7 @@ var QueryBase = /** @class */ (function () {
96
96
  * @returns Estimated gas cost based on ethers.VoidSigner's gas estimation
97
97
  */
98
98
  QueryBase.prototype.getNativeGasCost = function (deposit, relayer) {
99
- if (relayer === void 0) { relayer = getDefaultSimulatedRelayerAddress(deposit.destinationChainId); }
99
+ if (relayer === void 0) { relayer = toAddressType(getDefaultSimulatedRelayerAddress(deposit.destinationChainId), deposit.destinationChainId); }
100
100
  return __awaiter(this, void 0, void 0, function () {
101
101
  var unsignedTx, voidSigner;
102
102
  return __generator(this, function (_a) {
@@ -104,7 +104,7 @@ var QueryBase = /** @class */ (function () {
104
104
  case 0: return [4 /*yield*/, this.getUnsignedTxFromDeposit(deposit, relayer)];
105
105
  case 1:
106
106
  unsignedTx = _a.sent();
107
- voidSigner = new VoidSigner(relayer, this.provider);
107
+ voidSigner = new VoidSigner(relayer.toEvmAddress(), this.provider);
108
108
  return [2 /*return*/, voidSigner.estimateGas(unsignedTx)];
109
109
  }
110
110
  });
@@ -119,7 +119,7 @@ var QueryBase = /** @class */ (function () {
119
119
  * @returns BigNumber L1 data fee in gas units
120
120
  */
121
121
  QueryBase.prototype.getOpStackL1DataFee = function (unsignedTx, relayer, options) {
122
- if (relayer === void 0) { relayer = getDefaultSimulatedRelayerAddress(unsignedTx.chainId); }
122
+ if (relayer === void 0) { relayer = toAddressType(getDefaultSimulatedRelayerAddress(unsignedTx.chainId), CHAIN_IDs.MAINNET); }
123
123
  return __awaiter(this, void 0, void 0, function () {
124
124
  var _a, opStackL2GasUnits, _b, opStackL1DataFeeMultiplier, chainId, voidSigner, populatedTransaction, l1DataFee;
125
125
  return __generator(this, function (_c) {
@@ -130,7 +130,7 @@ var QueryBase = /** @class */ (function () {
130
130
  case 1:
131
131
  chainId = (_c.sent()).chainId;
132
132
  assert(isOptimismL2Provider(this.provider), "Unexpected provider for chain ID ".concat(chainId, "."));
133
- voidSigner = new VoidSigner(relayer, this.provider);
133
+ voidSigner = new VoidSigner(relayer.toEvmAddress(), this.provider);
134
134
  return [4 /*yield*/, voidSigner.populateTransaction(__assign(__assign({}, unsignedTx), { gasLimit: opStackL2GasUnits }))];
135
135
  case 2:
136
136
  populatedTransaction = _c.sent();
@@ -156,7 +156,7 @@ var QueryBase = /** @class */ (function () {
156
156
  QueryBase.prototype.estimateGas = function (unsignedTx, senderAddress, provider, options) {
157
157
  if (options === void 0) { options = {}; }
158
158
  return __awaiter(this, void 0, void 0, function () {
159
- var _a, _gasPrice, gasUnits, _b, baseFeeMultiplier, _c, priorityFeeMultiplier, _d, opStackL1GasCostMultiplier, transport, chainId, voidSigner, queries, _e, nativeGasCost, _gasPriceEstimate, gasPrice, tokenGasCost, opStackL1GasCost, l2GasCost;
159
+ var _a, _gasPrice, gasUnits, _b, baseFeeMultiplier, _c, priorityFeeMultiplier, _d, opStackL1GasCostMultiplier, transport, chainId, voidSigner, queries, _e, nativeGasCost, gasPriceEstimate, gasPrice, tokenGasCost, opStackL1GasCost, l2GasCost;
160
160
  return __generator(this, function (_f) {
161
161
  switch (_f.label) {
162
162
  case 0:
@@ -164,7 +164,7 @@ var QueryBase = /** @class */ (function () {
164
164
  return [4 /*yield*/, provider.getNetwork()];
165
165
  case 1:
166
166
  chainId = (_f.sent()).chainId;
167
- voidSigner = new VoidSigner(senderAddress, provider);
167
+ voidSigner = new VoidSigner(senderAddress.toEvmAddress(), provider);
168
168
  queries = [
169
169
  gasUnits ? Promise.resolve(BigNumber.from(gasUnits)) : voidSigner.estimateGas(unsignedTx),
170
170
  _gasPrice
@@ -173,8 +173,8 @@ var QueryBase = /** @class */ (function () {
173
173
  ];
174
174
  return [4 /*yield*/, Promise.all(queries)];
175
175
  case 2:
176
- _e = _f.sent(), nativeGasCost = _e[0], _gasPriceEstimate = _e[1];
177
- gasPrice = _gasPriceEstimate.maxFeePerGas;
176
+ _e = _f.sent(), nativeGasCost = _e[0], gasPriceEstimate = _e[1];
177
+ gasPrice = gasPriceEstimate.maxFeePerGas;
178
178
  assert(nativeGasCost.gt(bnZero), "Gas cost should not be 0");
179
179
  if (!chainIsOPStack(chainId)) return [3 /*break*/, 4];
180
180
  return [4 /*yield*/, this.getOpStackL1DataFee(unsignedTx, senderAddress, {
@@ -1 +1 @@
1
- {"version":3,"file":"baseQuery.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/baseQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseQuery.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/baseQuery.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ import { SymbolMappingType } from "./";
10
10
  export declare class SvmQuery implements QueryInterface {
11
11
  readonly provider: SVMProvider;
12
12
  readonly symbolMapping: SymbolMappingType;
13
- readonly spokePoolAddress: SvmAddress;
13
+ readonly spokePool: SvmAddress;
14
14
  readonly simulatedRelayerAddress: SvmAddress;
15
15
  readonly logger: Logger;
16
16
  readonly coingeckoProApiKey?: string | undefined;
@@ -27,14 +27,14 @@ export declare class SvmQuery implements QueryInterface {
27
27
  * Instantiates a SvmQuery instance
28
28
  * @param provider A valid solana/kit rpc client.
29
29
  * @param symbolMapping A mapping to valid ERC20 tokens and their respective characteristics
30
- * @param spokePoolAddress The valid address of the Spoke Pool deployment
30
+ * @param spokePool The valid address of the Spoke Pool deployment
31
31
  * @param simulatedRelayerAddress The address that these queries will reference as the sender. Note: This address must be approved for USDC
32
32
  * @param logger A logging utility to report logs
33
33
  * @param coingeckoProApiKey An optional CoinGecko API key that links to a PRO account
34
34
  * @param fixedGasPrice Overrides the gas price with a fixed value. Note: primarily used for the Boba blockchain
35
35
  * @param coingeckoBaseCurrency The basis currency that CoinGecko will use to resolve pricing
36
36
  */
37
- constructor(provider: SVMProvider, symbolMapping: SymbolMappingType, spokePoolAddress: SvmAddress, simulatedRelayerAddress: SvmAddress, logger: Logger, coingeckoProApiKey?: string | undefined, fixedGasPrice?: BigNumberish | undefined, coingeckoBaseCurrency?: string);
37
+ constructor(provider: SVMProvider, symbolMapping: SymbolMappingType, spokePool: SvmAddress, simulatedRelayerAddress: SvmAddress, logger: Logger, coingeckoProApiKey?: string | undefined, fixedGasPrice?: BigNumberish | undefined, coingeckoBaseCurrency?: string);
38
38
  /**
39
39
  * Retrieves the current gas costs of performing a fillRelay contract at the referenced SpokePool.
40
40
  * @param deposit V3 deposit instance.
@@ -45,7 +45,7 @@ export declare class SvmQuery implements QueryInterface {
45
45
  * @param options.transport Optional transport object for custom gas price retrieval.
46
46
  * @returns The gas estimate for this function call (multiplied with the optional buffer).
47
47
  */
48
- getGasCosts(deposit: Omit<Deposit, "messageHash">, _relayer?: string, options?: Partial<{
48
+ getGasCosts(deposit: Omit<Deposit, "messageHash">, relayer?: import("../../utils").Address, options?: Partial<{
49
49
  gasPrice: BigNumberish;
50
50
  gasUnits: BigNumberish;
51
51
  baseFeeMultiplier: BigNumber;
@@ -57,14 +57,14 @@ export declare class SvmQuery implements QueryInterface {
57
57
  * @param relayer SVM address of the relayer
58
58
  * @returns Estimated gas cost in compute units
59
59
  */
60
- getNativeGasCost(deposit: Omit<Deposit, "messageHash">, _relayer?: string): Promise<BigNumber>;
60
+ getNativeGasCost(deposit: Omit<Deposit, "messageHash">, _relayer?: import("../../utils").Address): Promise<BigNumber>;
61
61
  /**
62
62
  * @notice Return the fillRelay transaction for a given deposit
63
63
  * @param deposit
64
64
  * @param relayer SVM address of the relayer
65
65
  * @returns FillRelay transaction
66
66
  */
67
- getFillRelayTx(deposit: Omit<Deposit, "messageHash">, _relayer?: string, repaymentChainId?: number, repaymentAddress?: string): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, import("@solana/kit").TransactionSigner<string>> & Omit<Readonly<{
67
+ getFillRelayTx(deposit: Omit<Deposit, "messageHash">, relayer?: import("../../utils").Address, repaymentChainId?: number, repaymentAddress?: import("../../utils").Address): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, import("@solana/kit").TransactionSigner<string>> & Omit<Readonly<{
68
68
  instructions: readonly import("@solana/kit").IInstruction<string, readonly (import("@solana/kit").IAccountLookupMeta<string, string> | import("@solana/kit").IAccountMeta<string>)[]>[];
69
69
  version: 0;
70
70
  }>, "feePayer">>;
@@ -3,7 +3,7 @@ import { intToU8Array32 } from "@across-protocol/contracts/dist/src/svm/web3-v1/
3
3
  import { SYSTEM_PROGRAM_ADDRESS } from "@solana-program/system";
4
4
  import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS, fetchMint } from "@solana-program/token";
5
5
  import { getComputeUnitEstimateForTransactionMessageFactory } from "@solana/kit";
6
- import { SolanaVoidSigner, bigToU8a32, createFillInstruction, getAssociatedTokenAddress, getEventAuthority, getFillRelayDelegatePda, getFillStatusPda, getStatePda, } from "../../arch/svm";
6
+ import { SolanaVoidSigner, createFillInstruction, getAssociatedTokenAddress, getEventAuthority, getFillRelayDelegatePda, getFillStatusPda, getStatePda, toAddress, } from "../../arch/svm";
7
7
  import { Coingecko } from "../../coingecko";
8
8
  import { CHAIN_IDs } from "../../constants";
9
9
  import { getGasPriceEstimate } from "../../gasPriceOracle";
@@ -18,18 +18,18 @@ var SvmQuery = /** @class */ (function () {
18
18
  * Instantiates a SvmQuery instance
19
19
  * @param provider A valid solana/kit rpc client.
20
20
  * @param symbolMapping A mapping to valid ERC20 tokens and their respective characteristics
21
- * @param spokePoolAddress The valid address of the Spoke Pool deployment
21
+ * @param spokePool The valid address of the Spoke Pool deployment
22
22
  * @param simulatedRelayerAddress The address that these queries will reference as the sender. Note: This address must be approved for USDC
23
23
  * @param logger A logging utility to report logs
24
24
  * @param coingeckoProApiKey An optional CoinGecko API key that links to a PRO account
25
25
  * @param fixedGasPrice Overrides the gas price with a fixed value. Note: primarily used for the Boba blockchain
26
26
  * @param coingeckoBaseCurrency The basis currency that CoinGecko will use to resolve pricing
27
27
  */
28
- function SvmQuery(provider, symbolMapping, spokePoolAddress, simulatedRelayerAddress, logger, coingeckoProApiKey, fixedGasPrice, coingeckoBaseCurrency) {
28
+ function SvmQuery(provider, symbolMapping, spokePool, simulatedRelayerAddress, logger, coingeckoProApiKey, fixedGasPrice, coingeckoBaseCurrency) {
29
29
  if (coingeckoBaseCurrency === void 0) { coingeckoBaseCurrency = "eth"; }
30
30
  this.provider = provider;
31
31
  this.symbolMapping = symbolMapping;
32
- this.spokePoolAddress = spokePoolAddress;
32
+ this.spokePool = spokePool;
33
33
  this.simulatedRelayerAddress = simulatedRelayerAddress;
34
34
  this.logger = logger;
35
35
  this.coingeckoProApiKey = coingeckoProApiKey;
@@ -49,16 +49,14 @@ var SvmQuery = /** @class */ (function () {
49
49
  * @param options.transport Optional transport object for custom gas price retrieval.
50
50
  * @returns The gas estimate for this function call (multiplied with the optional buffer).
51
51
  */
52
- SvmQuery.prototype.getGasCosts = function (deposit, _relayer, options) {
53
- if (_relayer === void 0) { _relayer = getDefaultSimulatedRelayerAddress(deposit.destinationChainId); }
52
+ SvmQuery.prototype.getGasCosts = function (deposit, relayer, options) {
53
+ if (relayer === void 0) { relayer = toAddressType(getDefaultSimulatedRelayerAddress(deposit.destinationChainId), deposit.destinationChainId); }
54
54
  if (options === void 0) { options = {}; }
55
55
  return __awaiter(this, void 0, void 0, function () {
56
- var relayer, fillRelayTx, _a, computeUnitsConsumed, _gasPriceEstimate, _b, _c, _d, gasPriceEstimate, gasPrice;
56
+ var fillRelayTx, _a, computeUnitsConsumed, gasPriceEstimate, _b, _c, _d, gasPrice;
57
57
  return __generator(this, function (_e) {
58
58
  switch (_e.label) {
59
- case 0:
60
- relayer = _relayer ? toAddressType(_relayer).forceSvmAddress() : this.simulatedRelayerAddress;
61
- return [4 /*yield*/, this.getFillRelayTx(deposit, relayer.toBase58())];
59
+ case 0: return [4 /*yield*/, this.getFillRelayTx(deposit, relayer)];
62
60
  case 1:
63
61
  fillRelayTx = _e.sent();
64
62
  _c = (_b = Promise).all;
@@ -73,8 +71,7 @@ var SvmQuery = /** @class */ (function () {
73
71
  })
74
72
  ]])];
75
73
  case 3:
76
- _a = _e.sent(), computeUnitsConsumed = _a[0], _gasPriceEstimate = _a[1];
77
- gasPriceEstimate = _gasPriceEstimate;
74
+ _a = _e.sent(), computeUnitsConsumed = _a[0], gasPriceEstimate = _a[1];
78
75
  gasPrice = gasPriceEstimate.baseFee.add(gasPriceEstimate.microLamportsPerComputeUnit.mul(computeUnitsConsumed).div(toBN(1000000)) // 1_000_000 microLamports/lamport.
79
76
  );
80
77
  return [2 /*return*/, {
@@ -93,7 +90,7 @@ var SvmQuery = /** @class */ (function () {
93
90
  * @returns Estimated gas cost in compute units
94
91
  */
95
92
  SvmQuery.prototype.getNativeGasCost = function (deposit, _relayer) {
96
- if (_relayer === void 0) { _relayer = getDefaultSimulatedRelayerAddress(deposit.destinationChainId); }
93
+ if (_relayer === void 0) { _relayer = toAddressType(getDefaultSimulatedRelayerAddress(deposit.destinationChainId), deposit.destinationChainId); }
97
94
  return __awaiter(this, void 0, void 0, function () {
98
95
  var fillRelayTx, _a;
99
96
  return __generator(this, function (_b) {
@@ -114,48 +111,44 @@ var SvmQuery = /** @class */ (function () {
114
111
  * @param relayer SVM address of the relayer
115
112
  * @returns FillRelay transaction
116
113
  */
117
- SvmQuery.prototype.getFillRelayTx = function (deposit, _relayer, repaymentChainId, repaymentAddress) {
118
- if (_relayer === void 0) { _relayer = getDefaultSimulatedRelayerAddress(deposit.destinationChainId); }
114
+ SvmQuery.prototype.getFillRelayTx = function (deposit, relayer, repaymentChainId, repaymentAddress) {
115
+ if (relayer === void 0) { relayer = toAddressType(getDefaultSimulatedRelayerAddress(deposit.destinationChainId), deposit.destinationChainId); }
119
116
  if (repaymentChainId === void 0) { repaymentChainId = deposit.destinationChainId; }
120
- if (repaymentAddress === void 0) { repaymentAddress = getDefaultSimulatedRelayerAddress(deposit.destinationChainId); }
117
+ if (repaymentAddress === void 0) { repaymentAddress = toAddressType(getDefaultSimulatedRelayerAddress(deposit.destinationChainId), deposit.destinationChainId); }
121
118
  return __awaiter(this, void 0, void 0, function () {
122
- var toSvmAddress, relayer, state, _relayDataHash, relayDataHash, delegate, mint, mintInfo, recipientAta, relayerAta, fillStatus, eventAuthority, relayData, simulatedSigner, fillInput;
123
- return __generator(this, function (_a) {
124
- switch (_a.label) {
119
+ var depositor, recipient, inputToken, outputToken, exclusiveRelayer, destinationChainId, program, _relayDataHash, relayDataHash, _a, state, delegate, mint, mintInfo, _b, recipientAta, relayerAta, fillStatus, eventAuthority, relayData, simulatedSigner, fillInput;
120
+ return __generator(this, function (_c) {
121
+ switch (_c.label) {
125
122
  case 0:
126
- toSvmAddress = function (address) { return toAddressType(address).forceSvmAddress().toV2Address(); };
127
- relayer = _relayer ? toAddressType(_relayer).forceSvmAddress() : this.simulatedRelayerAddress;
128
- return [4 /*yield*/, getStatePda(this.spokePoolAddress.toV2Address())];
129
- case 1:
130
- state = _a.sent();
131
- _relayDataHash = getRelayDataHash(deposit, deposit.destinationChainId);
123
+ depositor = deposit.depositor, recipient = deposit.recipient, inputToken = deposit.inputToken, outputToken = deposit.outputToken, exclusiveRelayer = deposit.exclusiveRelayer, destinationChainId = deposit.destinationChainId;
124
+ program = toAddress(this.spokePool);
125
+ _relayDataHash = getRelayDataHash(deposit, destinationChainId);
132
126
  relayDataHash = new Uint8Array(Buffer.from(_relayDataHash.slice(2), "hex"));
133
- return [4 /*yield*/, getFillRelayDelegatePda(relayDataHash, BigInt(repaymentChainId), toSvmAddress(repaymentAddress), this.spokePoolAddress.toV2Address())];
127
+ return [4 /*yield*/, Promise.all([
128
+ getStatePda(program),
129
+ getFillRelayDelegatePda(relayDataHash, BigInt(repaymentChainId), toAddress(repaymentAddress), program),
130
+ ])];
131
+ case 1:
132
+ _a = _c.sent(), state = _a[0], delegate = _a[1];
133
+ mint = toAddress(outputToken);
134
+ return [4 /*yield*/, fetchMint(this.provider, mint)];
134
135
  case 2:
135
- delegate = _a.sent();
136
- mint = toAddressType(deposit.outputToken).forceSvmAddress();
137
- return [4 /*yield*/, fetchMint(this.provider, mint.toV2Address())];
136
+ mintInfo = _c.sent();
137
+ return [4 /*yield*/, Promise.all([
138
+ getAssociatedTokenAddress(deposit.recipient, outputToken, mintInfo.programAddress),
139
+ getAssociatedTokenAddress(SvmAddress.from(relayer.toBase58()), outputToken, mintInfo.programAddress),
140
+ getFillStatusPda(program, deposit, destinationChainId),
141
+ getEventAuthority(program),
142
+ ])];
138
143
  case 3:
139
- mintInfo = _a.sent();
140
- return [4 /*yield*/, getAssociatedTokenAddress(toAddressType(deposit.recipient).forceSvmAddress(), mint, mintInfo.programAddress)];
141
- case 4:
142
- recipientAta = _a.sent();
143
- return [4 /*yield*/, getAssociatedTokenAddress(SvmAddress.from(relayer.toBase58()), mint, mintInfo.programAddress)];
144
- case 5:
145
- relayerAta = _a.sent();
146
- return [4 /*yield*/, getFillStatusPda(this.spokePoolAddress.toV2Address(), deposit, deposit.destinationChainId)];
147
- case 6:
148
- fillStatus = _a.sent();
149
- return [4 /*yield*/, getEventAuthority()];
150
- case 7:
151
- eventAuthority = _a.sent();
144
+ _b = _c.sent(), recipientAta = _b[0], relayerAta = _b[1], fillStatus = _b[2], eventAuthority = _b[3];
152
145
  relayData = {
153
- depositor: toSvmAddress(deposit.depositor),
154
- recipient: toSvmAddress(deposit.recipient),
155
- exclusiveRelayer: toSvmAddress(deposit.exclusiveRelayer),
156
- inputToken: toSvmAddress(deposit.inputToken),
157
- outputToken: mint.toV2Address(),
158
- inputAmount: bigToU8a32(deposit.inputAmount),
146
+ depositor: toAddress(depositor),
147
+ recipient: toAddress(recipient),
148
+ exclusiveRelayer: toAddress(exclusiveRelayer),
149
+ inputToken: toAddress(inputToken),
150
+ outputToken: mint,
151
+ inputAmount: deposit.inputAmount.toBigInt(),
159
152
  outputAmount: deposit.outputAmount.toBigInt(),
160
153
  originChainId: deposit.originChainId,
161
154
  depositId: new Uint8Array(intToU8Array32(deposit.depositId.toNumber())),
@@ -168,7 +161,7 @@ var SvmQuery = /** @class */ (function () {
168
161
  signer: simulatedSigner,
169
162
  state: state,
170
163
  delegate: delegate,
171
- mint: mint.toV2Address(),
164
+ mint: mint,
172
165
  relayerTokenAccount: relayerAta,
173
166
  recipientTokenAccount: recipientAta,
174
167
  fillStatus: fillStatus,
@@ -176,11 +169,11 @@ var SvmQuery = /** @class */ (function () {
176
169
  associatedTokenProgram: ASSOCIATED_TOKEN_PROGRAM_ADDRESS,
177
170
  systemProgram: SYSTEM_PROGRAM_ADDRESS,
178
171
  eventAuthority: eventAuthority,
179
- program: this.spokePoolAddress.toV2Address(),
172
+ program: program,
180
173
  relayHash: relayDataHash,
181
174
  relayData: relayData,
182
175
  repaymentChainId: BigInt(repaymentChainId),
183
- repaymentAddress: toSvmAddress(repaymentAddress),
176
+ repaymentAddress: toAddress(repaymentAddress),
184
177
  };
185
178
  // Pass createRecipientAtaIfNeeded =true to the createFillInstruction function to create the recipient token account
186
179
  // if it doesn't exist.
@@ -1 +1 @@
1
- {"version":3,"file":"svmQuery.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/svmQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"svmQuery.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/svmQuery.ts"],"names":[],"mappings":"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"}