@across-protocol/sdk 3.1.27 → 3.1.28

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 (229) hide show
  1. package/dist/cjs/clients/BundleDataClient/BundleDataClient.d.ts +60 -0
  2. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +929 -0
  3. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -0
  4. package/dist/cjs/clients/BundleDataClient/index.d.ts +2 -0
  5. package/dist/cjs/clients/BundleDataClient/index.js +6 -0
  6. package/dist/cjs/clients/BundleDataClient/index.js.map +1 -0
  7. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.d.ts +15 -0
  8. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js +131 -0
  9. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -0
  10. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.d.ts +6 -0
  11. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js +19 -0
  12. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js.map +1 -0
  13. package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.d.ts +3 -0
  14. package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.js +23 -0
  15. package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.js.map +1 -0
  16. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts +24 -0
  17. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +129 -0
  18. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -0
  19. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +302 -0
  20. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.js +77 -0
  21. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.js.map +1 -0
  22. package/dist/cjs/clients/BundleDataClient/utils/index.d.ts +6 -0
  23. package/dist/cjs/clients/BundleDataClient/utils/index.js +10 -0
  24. package/dist/cjs/clients/BundleDataClient/utils/index.js.map +1 -0
  25. package/dist/cjs/clients/BundleDataClient/utils/shims.d.ts +8 -0
  26. package/dist/cjs/clients/BundleDataClient/utils/shims.js +3 -0
  27. package/dist/cjs/clients/BundleDataClient/utils/shims.js.map +1 -0
  28. package/dist/cjs/clients/index.d.ts +1 -0
  29. package/dist/cjs/clients/index.js +2 -1
  30. package/dist/cjs/clients/index.js.map +1 -1
  31. package/dist/cjs/interfaces/BundleData.d.ts +63 -0
  32. package/dist/cjs/interfaces/BundleData.js +3 -0
  33. package/dist/cjs/interfaces/BundleData.js.map +1 -0
  34. package/dist/cjs/interfaces/index.d.ts +1 -0
  35. package/dist/cjs/interfaces/index.js +1 -0
  36. package/dist/cjs/interfaces/index.js.map +1 -1
  37. package/dist/cjs/providers/alchemy.js +5 -5
  38. package/dist/cjs/providers/alchemy.js.map +1 -1
  39. package/dist/cjs/providers/drpc.d.ts +2 -0
  40. package/dist/cjs/providers/drpc.js +21 -0
  41. package/dist/cjs/providers/drpc.js.map +1 -0
  42. package/dist/cjs/providers/infura.js +5 -5
  43. package/dist/cjs/providers/infura.js.map +1 -1
  44. package/dist/cjs/providers/types.d.ts +1 -1
  45. package/dist/cjs/providers/utils.js +3 -1
  46. package/dist/cjs/providers/utils.js.map +1 -1
  47. package/dist/cjs/utils/AddressUtils.d.ts +1 -0
  48. package/dist/cjs/utils/AddressUtils.js +15 -1
  49. package/dist/cjs/utils/AddressUtils.js.map +1 -1
  50. package/dist/cjs/utils/ContractUtils.d.ts +1 -0
  51. package/dist/cjs/utils/ContractUtils.js +12 -0
  52. package/dist/cjs/utils/ContractUtils.js.map +1 -0
  53. package/dist/cjs/utils/Multicall.d.ts +3 -2
  54. package/dist/cjs/utils/Multicall.js +40 -41
  55. package/dist/cjs/utils/Multicall.js.map +1 -1
  56. package/dist/cjs/utils/ObjectUtils.d.ts +18 -0
  57. package/dist/cjs/utils/ObjectUtils.js +27 -1
  58. package/dist/cjs/utils/ObjectUtils.js.map +1 -1
  59. package/dist/cjs/utils/abi/contracts/index.d.ts +1 -0
  60. package/dist/cjs/utils/abi/contracts/index.js +9 -0
  61. package/dist/cjs/utils/abi/contracts/index.js.map +1 -0
  62. package/dist/cjs/utils/abi/typechain/Multicall3.d.ts +289 -0
  63. package/dist/cjs/utils/abi/typechain/Multicall3.js +3 -0
  64. package/dist/cjs/utils/abi/typechain/Multicall3.js.map +1 -0
  65. package/dist/cjs/utils/abi/typechain/common.d.ts +21 -0
  66. package/dist/cjs/utils/abi/typechain/common.js +3 -0
  67. package/dist/cjs/utils/abi/typechain/common.js.map +1 -0
  68. package/dist/cjs/utils/abi/typechain/factories/Multicall3__factory.d.ts +339 -0
  69. package/dist/cjs/utils/abi/typechain/factories/Multicall3__factory.js +458 -0
  70. package/dist/cjs/utils/abi/typechain/factories/Multicall3__factory.js.map +1 -0
  71. package/dist/cjs/utils/abi/typechain/factories/index.d.ts +1 -0
  72. package/dist/cjs/utils/abi/typechain/factories/index.js +6 -0
  73. package/dist/cjs/utils/abi/typechain/factories/index.js.map +1 -0
  74. package/dist/cjs/utils/abi/typechain/index.d.ts +3 -0
  75. package/dist/cjs/utils/abi/typechain/index.js +8 -0
  76. package/dist/cjs/utils/abi/typechain/index.js.map +1 -0
  77. package/dist/esm/clients/BundleDataClient/BundleDataClient.d.ts +60 -0
  78. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +1097 -0
  79. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -0
  80. package/dist/esm/clients/BundleDataClient/index.d.ts +2 -0
  81. package/dist/esm/clients/BundleDataClient/index.js +3 -0
  82. package/dist/esm/clients/BundleDataClient/index.js.map +1 -0
  83. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.d.ts +15 -0
  84. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js +182 -0
  85. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -0
  86. package/dist/esm/clients/BundleDataClient/utils/FillUtils.d.ts +6 -0
  87. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js +20 -0
  88. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js.map +1 -0
  89. package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.d.ts +3 -0
  90. package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.js +20 -0
  91. package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.js.map +1 -0
  92. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts +24 -0
  93. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +157 -0
  94. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -0
  95. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +302 -0
  96. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.js +79 -0
  97. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.js.map +1 -0
  98. package/dist/esm/clients/BundleDataClient/utils/index.d.ts +6 -0
  99. package/dist/esm/clients/BundleDataClient/utils/index.js +7 -0
  100. package/dist/esm/clients/BundleDataClient/utils/index.js.map +1 -0
  101. package/dist/esm/clients/BundleDataClient/utils/shims.d.ts +8 -0
  102. package/dist/esm/clients/BundleDataClient/utils/shims.js +2 -0
  103. package/dist/esm/clients/BundleDataClient/utils/shims.js.map +1 -0
  104. package/dist/esm/clients/index.d.ts +1 -0
  105. package/dist/esm/clients/index.js +2 -0
  106. package/dist/esm/clients/index.js.map +1 -1
  107. package/dist/esm/interfaces/BundleData.d.ts +63 -0
  108. package/dist/esm/interfaces/BundleData.js +2 -0
  109. package/dist/esm/interfaces/BundleData.js.map +1 -0
  110. package/dist/esm/interfaces/index.d.ts +1 -0
  111. package/dist/esm/interfaces/index.js +1 -0
  112. package/dist/esm/interfaces/index.js.map +1 -1
  113. package/dist/esm/providers/alchemy.js +6 -6
  114. package/dist/esm/providers/alchemy.js.map +1 -1
  115. package/dist/esm/providers/drpc.d.ts +2 -0
  116. package/dist/esm/providers/drpc.js +18 -0
  117. package/dist/esm/providers/drpc.js.map +1 -0
  118. package/dist/esm/providers/infura.js +6 -6
  119. package/dist/esm/providers/infura.js.map +1 -1
  120. package/dist/esm/providers/types.d.ts +1 -1
  121. package/dist/esm/providers/utils.js +3 -1
  122. package/dist/esm/providers/utils.js.map +1 -1
  123. package/dist/esm/utils/AddressUtils.d.ts +1 -0
  124. package/dist/esm/utils/AddressUtils.js +16 -1
  125. package/dist/esm/utils/AddressUtils.js.map +1 -1
  126. package/dist/esm/utils/ContractUtils.d.ts +1 -0
  127. package/dist/esm/utils/ContractUtils.js +8 -0
  128. package/dist/esm/utils/ContractUtils.js.map +1 -0
  129. package/dist/esm/utils/Multicall.d.ts +3 -2
  130. package/dist/esm/utils/Multicall.js +39 -42
  131. package/dist/esm/utils/Multicall.js.map +1 -1
  132. package/dist/esm/utils/ObjectUtils.d.ts +18 -0
  133. package/dist/esm/utils/ObjectUtils.js +24 -0
  134. package/dist/esm/utils/ObjectUtils.js.map +1 -1
  135. package/dist/esm/utils/abi/contracts/index.d.ts +1 -0
  136. package/dist/esm/utils/abi/contracts/index.js +2 -0
  137. package/dist/esm/utils/abi/contracts/index.js.map +1 -0
  138. package/dist/esm/utils/abi/typechain/Multicall3.d.ts +292 -0
  139. package/dist/esm/utils/abi/typechain/Multicall3.js +2 -0
  140. package/dist/esm/utils/abi/typechain/Multicall3.js.map +1 -0
  141. package/dist/esm/utils/abi/typechain/common.d.ts +21 -0
  142. package/dist/esm/utils/abi/typechain/common.js +2 -0
  143. package/dist/esm/utils/abi/typechain/common.js.map +1 -0
  144. package/dist/esm/utils/abi/typechain/factories/Multicall3__factory.d.ts +339 -0
  145. package/dist/esm/utils/abi/typechain/factories/Multicall3__factory.js +458 -0
  146. package/dist/esm/utils/abi/typechain/factories/Multicall3__factory.js.map +1 -0
  147. package/dist/esm/utils/abi/typechain/factories/index.d.ts +1 -0
  148. package/dist/esm/utils/abi/typechain/factories/index.js +5 -0
  149. package/dist/esm/utils/abi/typechain/factories/index.js.map +1 -0
  150. package/dist/esm/utils/abi/typechain/index.d.ts +3 -0
  151. package/dist/esm/utils/abi/typechain/index.js +4 -0
  152. package/dist/esm/utils/abi/typechain/index.js.map +1 -0
  153. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts +61 -0
  154. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -0
  155. package/dist/types/clients/BundleDataClient/index.d.ts +3 -0
  156. package/dist/types/clients/BundleDataClient/index.d.ts.map +1 -0
  157. package/dist/types/clients/BundleDataClient/utils/DataworkerUtils.d.ts +16 -0
  158. package/dist/types/clients/BundleDataClient/utils/DataworkerUtils.d.ts.map +1 -0
  159. package/dist/types/clients/BundleDataClient/utils/FillUtils.d.ts +7 -0
  160. package/dist/types/clients/BundleDataClient/utils/FillUtils.d.ts.map +1 -0
  161. package/dist/types/clients/BundleDataClient/utils/MerkleTreeUtils.d.ts +4 -0
  162. package/dist/types/clients/BundleDataClient/utils/MerkleTreeUtils.d.ts.map +1 -0
  163. package/dist/types/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts +25 -0
  164. package/dist/types/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts.map +1 -0
  165. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +303 -0
  166. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts.map +1 -0
  167. package/dist/types/clients/BundleDataClient/utils/index.d.ts +7 -0
  168. package/dist/types/clients/BundleDataClient/utils/index.d.ts.map +1 -0
  169. package/dist/types/clients/BundleDataClient/utils/shims.d.ts +9 -0
  170. package/dist/types/clients/BundleDataClient/utils/shims.d.ts.map +1 -0
  171. package/dist/types/clients/index.d.ts +1 -0
  172. package/dist/types/clients/index.d.ts.map +1 -1
  173. package/dist/types/interfaces/BundleData.d.ts +64 -0
  174. package/dist/types/interfaces/BundleData.d.ts.map +1 -0
  175. package/dist/types/interfaces/index.d.ts +1 -0
  176. package/dist/types/interfaces/index.d.ts.map +1 -1
  177. package/dist/types/providers/drpc.d.ts +3 -0
  178. package/dist/types/providers/drpc.d.ts.map +1 -0
  179. package/dist/types/providers/types.d.ts +1 -1
  180. package/dist/types/providers/types.d.ts.map +1 -1
  181. package/dist/types/providers/utils.d.ts.map +1 -1
  182. package/dist/types/utils/AddressUtils.d.ts +1 -0
  183. package/dist/types/utils/AddressUtils.d.ts.map +1 -1
  184. package/dist/types/utils/ContractUtils.d.ts +2 -0
  185. package/dist/types/utils/ContractUtils.d.ts.map +1 -0
  186. package/dist/types/utils/Multicall.d.ts +3 -2
  187. package/dist/types/utils/Multicall.d.ts.map +1 -1
  188. package/dist/types/utils/ObjectUtils.d.ts +18 -0
  189. package/dist/types/utils/ObjectUtils.d.ts.map +1 -1
  190. package/dist/types/utils/abi/contracts/index.d.ts +2 -0
  191. package/dist/types/utils/abi/contracts/index.d.ts.map +1 -0
  192. package/dist/types/utils/abi/typechain/Multicall3.d.ts +293 -0
  193. package/dist/types/utils/abi/typechain/Multicall3.d.ts.map +1 -0
  194. package/dist/types/utils/abi/typechain/common.d.ts +22 -0
  195. package/dist/types/utils/abi/typechain/common.d.ts.map +1 -0
  196. package/dist/types/utils/abi/typechain/factories/Multicall3__factory.d.ts +340 -0
  197. package/dist/types/utils/abi/typechain/factories/Multicall3__factory.d.ts.map +1 -0
  198. package/dist/types/utils/abi/typechain/factories/index.d.ts +2 -0
  199. package/dist/types/utils/abi/typechain/factories/index.d.ts.map +1 -0
  200. package/dist/types/utils/abi/typechain/index.d.ts +4 -0
  201. package/dist/types/utils/abi/typechain/index.d.ts.map +1 -0
  202. package/package.json +6 -8
  203. package/src/clients/BundleDataClient/BundleDataClient.ts +1311 -0
  204. package/src/clients/BundleDataClient/index.ts +2 -0
  205. package/src/clients/BundleDataClient/utils/DataworkerUtils.ts +268 -0
  206. package/src/clients/BundleDataClient/utils/FillUtils.ts +46 -0
  207. package/src/clients/BundleDataClient/utils/MerkleTreeUtils.ts +26 -0
  208. package/src/clients/BundleDataClient/utils/PoolRebalanceUtils.ts +238 -0
  209. package/src/clients/BundleDataClient/utils/SuperstructUtils.ts +132 -0
  210. package/src/clients/BundleDataClient/utils/index.ts +6 -0
  211. package/src/clients/BundleDataClient/utils/shims.ts +10 -0
  212. package/src/clients/index.ts +1 -0
  213. package/src/interfaces/BundleData.ts +68 -0
  214. package/src/interfaces/index.ts +1 -0
  215. package/src/providers/alchemy.ts +6 -6
  216. package/src/providers/drpc.ts +19 -0
  217. package/src/providers/infura.ts +6 -6
  218. package/src/providers/types.ts +1 -1
  219. package/src/providers/utils.ts +3 -1
  220. package/src/utils/AddressUtils.ts +15 -1
  221. package/src/utils/ContractUtils.ts +8 -0
  222. package/src/utils/Multicall.ts +38 -30
  223. package/src/utils/ObjectUtils.ts +23 -0
  224. package/src/utils/abi/contracts/index.ts +1 -0
  225. package/src/utils/abi/typechain/Multicall3.ts +433 -0
  226. package/src/utils/abi/typechain/common.ts +30 -0
  227. package/src/utils/abi/typechain/factories/Multicall3__factory.ts +458 -0
  228. package/src/utils/abi/typechain/factories/index.ts +4 -0
  229. package/src/utils/abi/typechain/index.ts +6 -0
@@ -5,6 +5,7 @@ import { isEqual } from "lodash";
5
5
  import { isDefined } from "../utils";
6
6
  import * as alchemy from "./alchemy";
7
7
  import * as infura from "./infura";
8
+ import * as drpc from "./drpc";
8
9
  /**
9
10
  * Infura DIN is identified separately to allow it to be configured explicitly.
10
11
  */
@@ -12,6 +13,7 @@ var PROVIDERS = {
12
13
  ALCHEMY: alchemy.getURL,
13
14
  INFURA: infura.getURL,
14
15
  INFURA_DIN: infura.getURL,
16
+ DRPC: drpc.getURL,
15
17
  };
16
18
  /**
17
19
  * Type predicate for RPCProvider type.
@@ -19,7 +21,7 @@ var PROVIDERS = {
19
21
  * @returns True if the provider string is a supported provider.
20
22
  */
21
23
  export function isSupportedProvider(provider) {
22
- return ["ALCHEMY", "INFURA", "INFURA_DIN"].includes(provider);
24
+ return ["ALCHEMY", "INFURA", "INFURA_DIN", "DRPC"].includes(provider);
23
25
  }
24
26
  /**
25
27
  * Produce an RPC for a given RPC provider, chainId API key and transport.
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/providers/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/providers/utils.ts"],"names":[],"mappings":"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"}
@@ -6,4 +6,5 @@ import { providers } from "ethers";
6
6
  * @returns A boolean indicating if a contract is deployed at the given address or not (true = contract, false = no contract)
7
7
  */
8
8
  export declare function isContractDeployedToAddress(address: string, provider: providers.Provider): Promise<boolean>;
9
+ export declare function compareAddresses(addressA: string, addressB: string): 1 | -1 | 0;
9
10
  export declare function compareAddressesSimple(addressA?: string, addressB?: string): boolean;
@@ -1,5 +1,5 @@
1
1
  import { __awaiter, __generator } from "tslib";
2
- import { utils } from "ethers";
2
+ import { BigNumber, utils } from "ethers";
3
3
  /**
4
4
  * Checks if a contract is deployed at the given address
5
5
  * @param address The ETH address to check
@@ -25,6 +25,21 @@ export function isContractDeployedToAddress(address, provider) {
25
25
  });
26
26
  });
27
27
  }
28
+ export function compareAddresses(addressA, addressB) {
29
+ // Convert address strings to BigNumbers and then sort numerical value of the BigNumber, which sorts the addresses
30
+ // effectively by their hex value.
31
+ var bnAddressA = BigNumber.from(addressA);
32
+ var bnAddressB = BigNumber.from(addressB);
33
+ if (bnAddressA.gt(bnAddressB)) {
34
+ return 1;
35
+ }
36
+ else if (bnAddressA.lt(bnAddressB)) {
37
+ return -1;
38
+ }
39
+ else {
40
+ return 0;
41
+ }
42
+ }
28
43
  export function compareAddressesSimple(addressA, addressB) {
29
44
  if (addressA === undefined || addressB === undefined) {
30
45
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"AddressUtils.js","sourceRoot":"","sources":["../../../src/utils/AddressUtils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAa,KAAK,EAAE,MAAM,QAAQ,CAAC;AAE1C;;;;;GAKG;AACH,MAAM,UAAgB,2BAA2B,CAAC,OAAe,EAAE,QAA4B;;;;;;oBAC7F,sDAAsD;oBACtD,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;wBACzC,sBAAO,KAAK,EAAC;qBACd;oBAEY,qBAAM,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAA;;oBAAtC,IAAI,GAAG,SAA+B;oBAC5C,qEAAqE;oBACrE,sBAAO,IAAI,KAAK,IAAI,EAAC;;;;CACtB;AAED,MAAM,UAAU,sBAAsB,CAAC,QAAiB,EAAE,QAAiB;IACzE,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE;QACpD,OAAO,KAAK,CAAC;KACd;IACD,OAAO,QAAQ,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC;AAC3D,CAAC"}
1
+ {"version":3,"file":"AddressUtils.js","sourceRoot":"","sources":["../../../src/utils/AddressUtils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAa,KAAK,EAAE,MAAM,QAAQ,CAAC;AAErD;;;;;GAKG;AACH,MAAM,UAAgB,2BAA2B,CAAC,OAAe,EAAE,QAA4B;;;;;;oBAC7F,sDAAsD;oBACtD,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;wBACzC,sBAAO,KAAK,EAAC;qBACd;oBAEY,qBAAM,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAA;;oBAAtC,IAAI,GAAG,SAA+B;oBAC5C,qEAAqE;oBACrE,sBAAO,IAAI,KAAK,IAAI,EAAC;;;;CACtB;AAED,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,QAAgB;IACjE,kHAAkH;IAClH,kCAAkC;IAClC,IAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5C,IAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5C,IAAI,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE;QAC7B,OAAO,CAAC,CAAC;KACV;SAAM,IAAI,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE;QACpC,OAAO,CAAC,CAAC,CAAC;KACX;SAAM;QACL,OAAO,CAAC,CAAC;KACV;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAAiB,EAAE,QAAiB;IACzE,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE;QACpD,OAAO,KAAK,CAAC;KACd;IACD,OAAO,QAAQ,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC;AAC3D,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function getParamType(contractName: string, functionName: string, paramName: string): string;
@@ -0,0 +1,8 @@
1
+ import * as typechain from "@across-protocol/contracts/dist/typechain"; // Import the typechain module
2
+ export function getParamType(contractName, functionName, paramName) {
3
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4
+ var artifact = typechain["".concat([contractName], "__factory")];
5
+ var fragment = artifact.abi.find(function (fragment) { return fragment.name === functionName; });
6
+ return (fragment === null || fragment === void 0 ? void 0 : fragment.inputs.find(function (input) { return input.name === paramName; })) || "";
7
+ }
8
+ //# sourceMappingURL=ContractUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContractUtils.js","sourceRoot":"","sources":["../../../src/utils/ContractUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,2CAA2C,CAAC,CAAC,8BAA8B;AAEtG,MAAM,UAAU,YAAY,CAAC,YAAoB,EAAE,YAAoB,EAAE,SAAiB;IACxF,8DAA8D;IAC9D,IAAM,QAAQ,GAAI,SAAiB,CAAC,UAAG,CAAC,YAAY,CAAC,cAAW,CAAC,CAAC;IAClE,IAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,UAAC,QAA0B,IAAK,OAAA,QAAQ,CAAC,IAAI,KAAK,YAAY,EAA9B,CAA8B,CAAC,CAAC;IACnG,OAAO,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,CAAC,IAAI,CAAC,UAAC,KAAuB,IAAK,OAAA,KAAK,CAAC,IAAI,KAAK,SAAS,EAAxB,CAAwB,CAAC,KAAI,EAAE,CAAC;AAC5F,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { Contract, providers, Signer, utils as ethersUtils } from "ethers";
2
+ import { Multicall3 } from "./abi/typechain";
2
3
  type Provider = providers.Provider;
3
4
  type BlockTag = providers.BlockTag;
4
5
  type Result = ethersUtils.Result;
@@ -7,7 +8,7 @@ export type Call3 = {
7
8
  method: string;
8
9
  args?: any[];
9
10
  };
10
- export declare const multicall3Addresses: Record<number, string>;
11
- export declare function getMulticall3(chainId: number, signerOrProvider?: Signer | Provider): Promise<Contract | undefined>;
11
+ export declare function getMulticallAddress(chainId: number): string | undefined;
12
+ export declare function getMulticall3(chainId: number, signerOrProvider: Signer | Provider): Multicall3 | undefined;
12
13
  export declare function aggregate(multicall3: Contract, calls: Call3[], blockTag?: BlockTag): Promise<Result[]>;
13
14
  export {};
@@ -1,47 +1,44 @@
1
+ var _a;
1
2
  import { __awaiter, __generator } from "tslib";
2
- import { Contract } from "ethers";
3
- import { getABI } from "./abi";
4
- // Multicall3 Constants:
5
- export var multicall3Addresses = {
6
- 1: "0xcA11bde05977b3631167028862bE2a173976CA11",
7
- 10: "0xcA11bde05977b3631167028862bE2a173976CA11",
8
- 137: "0xcA11bde05977b3631167028862bE2a173976CA11",
9
- 324: "0xF9cda624FBC7e059355ce98a31693d299FACd963",
10
- 8453: "0xcA11bde05977b3631167028862bE2a173976CA11",
11
- 34443: "0xcA11bde05977b3631167028862bE2a173976CA11",
12
- 42161: "0xcA11bde05977b3631167028862bE2a173976CA11",
13
- 59144: "0xcA11bde05977b3631167028862bE2a173976CA11",
14
- 534352: "0xcA11bde05977b3631167028862bE2a173976CA11",
15
- // Testnets
16
- 5: "0xcA11bde05977b3631167028862bE2a173976CA11",
17
- 300: "0xF9cda624FBC7e059355ce98a31693d299FACd963",
18
- 59140: "0xcA11bde05977b3631167028862bE2a173976CA11",
19
- 59141: "0xcA11bde05977b3631167028862bE2a173976CA11",
20
- 80002: "0xcA11bde05977b3631167028862bE2a173976CA11",
21
- 84531: "0xcA11bde05977b3631167028862bE2a173976CA11",
22
- 84532: "0xcA11bde05977b3631167028862bE2a173976CA11",
23
- 421613: "0xcA11bde05977b3631167028862bE2a173976CA11",
24
- 534351: "0xcA11bde05977b3631167028862bE2a173976CA11",
25
- 11155111: "0xcA11bde05977b3631167028862bE2a173976CA11",
26
- 11155420: "0xcA11bde05977b3631167028862bE2a173976CA11",
27
- };
3
+ import { CHAIN_IDs } from "@across-protocol/constants";
4
+ import { Multicall3__factory } from "./abi/typechain";
5
+ var DETERMINISTIC_MULTICALL_ADDRESS = "0xcA11bde05977b3631167028862bE2a173976CA11";
6
+ var NON_DETERMINISTIC_MULTICALL_ADDRESSES = (_a = {},
7
+ _a[CHAIN_IDs.ZK_SYNC] = "0xF9cda624FBC7e059355ce98a31693d299FACd963",
8
+ _a);
9
+ var DETERMINISTIC_MULTICALL_CHAINS = [
10
+ CHAIN_IDs.ARBITRUM,
11
+ CHAIN_IDs.BASE,
12
+ CHAIN_IDs.BLAST,
13
+ CHAIN_IDs.BOBA,
14
+ CHAIN_IDs.LINEA,
15
+ CHAIN_IDs.LISK,
16
+ CHAIN_IDs.MAINNET,
17
+ CHAIN_IDs.MODE,
18
+ CHAIN_IDs.OPTIMISM,
19
+ CHAIN_IDs.POLYGON,
20
+ CHAIN_IDs.REDSTONE,
21
+ CHAIN_IDs.SCROLL,
22
+ CHAIN_IDs.ZORA,
23
+ // Testnet:
24
+ CHAIN_IDs.BASE_SEPOLIA,
25
+ CHAIN_IDs.BLAST_SEPOLIA,
26
+ CHAIN_IDs.POLYGON_AMOY,
27
+ CHAIN_IDs.SCROLL_SEPOLIA,
28
+ CHAIN_IDs.SEPOLIA,
29
+ ];
30
+ export function getMulticallAddress(chainId) {
31
+ if (DETERMINISTIC_MULTICALL_CHAINS.includes(chainId)) {
32
+ return DETERMINISTIC_MULTICALL_ADDRESS;
33
+ }
34
+ return NON_DETERMINISTIC_MULTICALL_ADDRESSES[chainId];
35
+ }
28
36
  export function getMulticall3(chainId, signerOrProvider) {
29
- return __awaiter(this, void 0, void 0, function () {
30
- var address, _a, _b;
31
- return __generator(this, function (_c) {
32
- switch (_c.label) {
33
- case 0:
34
- address = multicall3Addresses[chainId];
35
- if (!address) {
36
- return [2 /*return*/, undefined];
37
- }
38
- _a = Contract.bind;
39
- _b = [void 0, address];
40
- return [4 /*yield*/, getABI("Multicall3")];
41
- case 1: return [2 /*return*/, new (_a.apply(Contract, _b.concat([_c.sent(), signerOrProvider])))()];
42
- }
43
- });
44
- });
37
+ var address = getMulticallAddress(chainId);
38
+ if (!address) {
39
+ return undefined;
40
+ }
41
+ return Multicall3__factory.connect(address, signerOrProvider);
45
42
  }
46
43
  export function aggregate(multicall3, calls, blockTag) {
47
44
  return __awaiter(this, void 0, void 0, function () {
@@ -1 +1 @@
1
- {"version":3,"file":"Multicall.js","sourceRoot":"","sources":["../../../src/utils/Multicall.ts"],"names":[],"mappings":";AAAA,OAAO,EAAa,QAAQ,EAA2C,MAAM,QAAQ,CAAC;AACtF,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAa/B,wBAAwB;AACxB,MAAM,CAAC,IAAM,mBAAmB,GAA2B;IACzD,CAAC,EAAE,4CAA4C;IAC/C,EAAE,EAAE,4CAA4C;IAChD,GAAG,EAAE,4CAA4C;IACjD,GAAG,EAAE,4CAA4C;IACjD,IAAI,EAAE,4CAA4C;IAClD,KAAK,EAAE,4CAA4C;IACnD,KAAK,EAAE,4CAA4C;IACnD,KAAK,EAAE,4CAA4C;IACnD,MAAM,EAAE,4CAA4C;IACpD,WAAW;IACX,CAAC,EAAE,4CAA4C;IAC/C,GAAG,EAAE,4CAA4C;IACjD,KAAK,EAAE,4CAA4C;IACnD,KAAK,EAAE,4CAA4C;IACnD,KAAK,EAAE,4CAA4C;IACnD,KAAK,EAAE,4CAA4C;IACnD,KAAK,EAAE,4CAA4C;IACnD,MAAM,EAAE,4CAA4C;IACpD,MAAM,EAAE,4CAA4C;IACpD,QAAQ,EAAE,4CAA4C;IACtD,QAAQ,EAAE,4CAA4C;CACvD,CAAC;AAEF,MAAM,UAAgB,aAAa,CACjC,OAAe,EACf,gBAAoC;;;;;;oBAE9B,OAAO,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;oBAC7C,IAAI,CAAC,OAAO,EAAE;wBACZ,sBAAO,SAAS,EAAC;qBAClB;yBAEU,QAAQ;kCAAC,OAAO;oBAAE,qBAAM,MAAM,CAAC,YAAY,CAAC,EAAA;wBAAvD,sBAAO,cAAI,QAAQ,aAAU,SAA0B,EAAE,gBAAgB,MAAC,EAAC;;;;CAC5E;AAED,MAAM,UAAgB,SAAS,CAAC,UAAoB,EAAE,KAAc,EAAE,QAAmB;;;;;;oBACjF,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,UAAC,EAA0B;4BAAxB,QAAQ,cAAA,EAAE,MAAM,YAAA,EAAE,IAAI,UAAA;wBAAO,OAAA,CAAC;4BACxD,MAAM,EAAE,QAAQ,CAAC,OAAO;4BACxB,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC;yBAC9D,CAAC;oBAHuD,CAGvD,CAAC,CAAC;oBAEgB,qBAAO,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,QAAQ,UAAA,EAAE,CAAoC,EAAA;;oBAA7G,KAAc,SAA+F,EAA1G,OAAO,QAAA;oBAEhB,sBAAO,OAAO,CAAC,GAAG,CAAC,UAAC,MAAM,EAAE,GAAG;4BACvB,IAAA,KAAuB,KAAK,CAAC,GAAG,CAAC,EAA/B,QAAQ,cAAA,EAAE,MAAM,YAAe,CAAC;4BACxC,OAAO,QAAQ,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;wBACjE,CAAC,CAAC,EAAC;;;;CACJ"}
1
+ {"version":3,"file":"Multicall.js","sourceRoot":"","sources":["../../../src/utils/Multicall.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAc,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAalE,IAAM,+BAA+B,GAAG,4CAA4C,CAAC;AAErF,IAAM,qCAAqC;IACzC,GAAC,SAAS,CAAC,OAAO,IAAG,4CAA4C;OAClE,CAAC;AAEF,IAAM,8BAA8B,GAAG;IACrC,SAAS,CAAC,QAAQ;IAClB,SAAS,CAAC,IAAI;IACd,SAAS,CAAC,KAAK;IACf,SAAS,CAAC,IAAI;IACd,SAAS,CAAC,KAAK;IACf,SAAS,CAAC,IAAI;IACd,SAAS,CAAC,OAAO;IACjB,SAAS,CAAC,IAAI;IACd,SAAS,CAAC,QAAQ;IAClB,SAAS,CAAC,OAAO;IACjB,SAAS,CAAC,QAAQ;IAClB,SAAS,CAAC,MAAM;IAChB,SAAS,CAAC,IAAI;IACd,WAAW;IACX,SAAS,CAAC,YAAY;IACtB,SAAS,CAAC,aAAa;IACvB,SAAS,CAAC,YAAY;IACtB,SAAS,CAAC,cAAc;IACxB,SAAS,CAAC,OAAO;CAClB,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,IAAI,8BAA8B,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;QACpD,OAAO,+BAA+B,CAAC;KACxC;IACD,OAAO,qCAAqC,CAAC,OAAO,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAAe,EAAE,gBAAmC;IAChF,IAAM,OAAO,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,SAAS,CAAC;KAClB;IAED,OAAO,mBAAmB,CAAC,OAAO,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAgB,SAAS,CAAC,UAAoB,EAAE,KAAc,EAAE,QAAmB;;;;;;oBACjF,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,UAAC,EAA0B;4BAAxB,QAAQ,cAAA,EAAE,MAAM,YAAA,EAAE,IAAI,UAAA;wBAAO,OAAA,CAAC;4BACxD,MAAM,EAAE,QAAQ,CAAC,OAAO;4BACxB,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC;yBAC9D,CAAC;oBAHuD,CAGvD,CAAC,CAAC;oBAEgB,qBAAO,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,QAAQ,UAAA,EAAE,CAAoC,EAAA;;oBAA7G,KAAc,SAA+F,EAA1G,OAAO,QAAA;oBAEhB,sBAAO,OAAO,CAAC,GAAG,CAAC,UAAC,MAAM,EAAE,GAAG;4BACvB,IAAA,KAAuB,KAAK,CAAC,GAAG,CAAC,EAA/B,QAAQ,cAAA,EAAE,MAAM,YAAe,CAAC;4BACxC,OAAO,QAAQ,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;wBACjE,CAAC,CAAC,EAAC;;;;CACJ"}
@@ -8,3 +8,21 @@ export declare function groupObjectCountsByProp(objects: any[], getProp: (obj: a
8
8
  * @returns A new object with falsy keys removed
9
9
  */
10
10
  export declare function filterFalsyKeys(obj: Record<string | number, unknown>): Record<string | number, unknown>;
11
+ export declare function count2DDictionaryValues(dictionary: {
12
+ [key: string]: {
13
+ [key2: string]: any[];
14
+ };
15
+ }): {
16
+ [key: string]: {
17
+ [key2: string]: number;
18
+ };
19
+ };
20
+ export declare function count3DDictionaryValues(dictionary: {
21
+ [key: string]: {
22
+ [key2: string]: any;
23
+ };
24
+ }, innerPropName: string): {
25
+ [key: string]: {
26
+ [key2: string]: number;
27
+ };
28
+ };
@@ -69,4 +69,28 @@ export function filterFalsyKeys(obj) {
69
69
  return v;
70
70
  }));
71
71
  }
72
+ export function count2DDictionaryValues(dictionary) {
73
+ return Object.entries(dictionary).reduce(function (output, _a) {
74
+ var _b;
75
+ var key = _a[0], innerDict = _a[1];
76
+ var innerDictOutput = Object.entries(innerDict).reduce(function (innerOutput, _a) {
77
+ var _b;
78
+ var key2 = _a[0], vals = _a[1];
79
+ return __assign(__assign({}, innerOutput), (_b = {}, _b[key2] = vals.length, _b));
80
+ }, {});
81
+ return __assign(__assign({}, output), (_b = {}, _b[key] = innerDictOutput, _b));
82
+ }, {});
83
+ }
84
+ export function count3DDictionaryValues(dictionary, innerPropName) {
85
+ return Object.entries(dictionary).reduce(function (output, _a) {
86
+ var _b;
87
+ var key = _a[0], innerDict = _a[1];
88
+ var innerDictOutput = Object.entries(innerDict).reduce(function (innerOutput, _a) {
89
+ var _b;
90
+ var key2 = _a[0], vals = _a[1];
91
+ return __assign(__assign({}, innerOutput), (_b = {}, _b[key2] = vals[innerPropName].length, _b));
92
+ }, {});
93
+ return __assign(__assign({}, output), (_b = {}, _b[key] = innerDictOutput, _b));
94
+ }, {});
95
+ }
72
96
  //# sourceMappingURL=ObjectUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectUtils.js","sourceRoot":"","sources":["../../../src/utils/ObjectUtils.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,uDAAuD;AACvD,yHAAyH;AACzH,sHAAsH;;AAEtH,oHAAoH;AACpH,MAAM,UAAU,MAAM,CAAC,GAAQ,EAAE,OAAc,EAAE,KAAU;IACzD,IAAM,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,EAAE,CAAC,EAAE;QACrC,IAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE;YACjB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;SACf;QACD,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;KAChB;IACD,uEAAuE;IACvE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,OAAO,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,QAAQ,EAAE;QAChF,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC;KACpC;IACD,qEAAqE;SAChE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QAC7B,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,mCAAO,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,SAAK,KAAK,OAAC,CAAC;KACxE;IACD,oHAAoH;SAC/G,IAAI,KAAK,KAAK,KAAK,EAAE;QACxB,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC;KACpC;IACD,uEAAuE;SAClE;QACH,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,yBAAQ,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAK,KAAK,CAAE,CAAC;KAC1E;AACH,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,6BAA6B,CAC3C,OAAc,EACd,WAAmB,EACnB,aAAqB,EACrB,YAAoB;IAEpB,OAAO,OAAO,CAAC,MAAM,CAAC,UAAC,MAAM,EAAE,GAAG;;QAChC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,MAAA,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,mCAAI,EAAE,CAAC;QAC1D,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,GAAG,MAAA,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,mCAAI,EAAE,CAAC;QAClG,IAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;QACtF,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC7D,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC;QACtD,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AACD,MAAM,UAAU,2BAA2B,CACzC,OAAc,EACd,WAAmB,EACnB,gBAAsC;IAEtC,OAAO,OAAO,CAAC,MAAM,CAAC,UAAC,MAAM,EAAE,GAAG;;QAChC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,MAAA,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,mCAAI,EAAE,CAAC;QAC1D,IAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;QACtE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC;QACtG,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAc,EAAE,OAA6B;IACnF,OAAO,OAAO,CAAC,MAAM,CAAC,UAAC,MAAM,EAAE,GAAG;QAChC,IAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,GAAqC;IACnE,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAC,EAAK;YAAF,CAAC,QAAA;QAAM,OAAA,CAAC;IAAD,CAAC,CAAC,CAAC,CAAC;AACtE,CAAC"}
1
+ {"version":3,"file":"ObjectUtils.js","sourceRoot":"","sources":["../../../src/utils/ObjectUtils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export { default as Multicall3Abi } from "./Multicall3.json";
@@ -0,0 +1,2 @@
1
+ export { default as Multicall3Abi } from "./Multicall3.json";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/utils/abi/contracts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,292 @@
1
+ import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, PayableOverrides, PopulatedTransaction, Signer, utils } from "ethers";
2
+ import type { FunctionFragment, Result } from "@ethersproject/abi";
3
+ import type { Listener, Provider } from "@ethersproject/providers";
4
+ import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common";
5
+ export declare namespace Multicall3 {
6
+ type CallStruct = {
7
+ target: string;
8
+ callData: BytesLike;
9
+ };
10
+ type CallStructOutput = [string, string] & {
11
+ target: string;
12
+ callData: string;
13
+ };
14
+ type Call3Struct = {
15
+ target: string;
16
+ allowFailure: boolean;
17
+ callData: BytesLike;
18
+ };
19
+ type Call3StructOutput = [string, boolean, string] & {
20
+ target: string;
21
+ allowFailure: boolean;
22
+ callData: string;
23
+ };
24
+ type ResultStruct = {
25
+ success: boolean;
26
+ returnData: BytesLike;
27
+ };
28
+ type ResultStructOutput = [boolean, string] & {
29
+ success: boolean;
30
+ returnData: string;
31
+ };
32
+ type Call3ValueStruct = {
33
+ target: string;
34
+ allowFailure: boolean;
35
+ value: BigNumberish;
36
+ callData: BytesLike;
37
+ };
38
+ type Call3ValueStructOutput = [string, boolean, BigNumber, string] & {
39
+ target: string;
40
+ allowFailure: boolean;
41
+ value: BigNumber;
42
+ callData: string;
43
+ };
44
+ }
45
+ export interface Multicall3Interface extends utils.Interface {
46
+ functions: {
47
+ "aggregate((address,bytes)[])": FunctionFragment;
48
+ "aggregate3((address,bool,bytes)[])": FunctionFragment;
49
+ "aggregate3Value((address,bool,uint256,bytes)[])": FunctionFragment;
50
+ "blockAndAggregate((address,bytes)[])": FunctionFragment;
51
+ "getBasefee()": FunctionFragment;
52
+ "getBlockHash(uint256)": FunctionFragment;
53
+ "getBlockNumber()": FunctionFragment;
54
+ "getChainId()": FunctionFragment;
55
+ "getCurrentBlockCoinbase()": FunctionFragment;
56
+ "getCurrentBlockDifficulty()": FunctionFragment;
57
+ "getCurrentBlockGasLimit()": FunctionFragment;
58
+ "getCurrentBlockTimestamp()": FunctionFragment;
59
+ "getEthBalance(address)": FunctionFragment;
60
+ "getLastBlockHash()": FunctionFragment;
61
+ "tryAggregate(bool,(address,bytes)[])": FunctionFragment;
62
+ "tryBlockAndAggregate(bool,(address,bytes)[])": FunctionFragment;
63
+ };
64
+ getFunction(nameOrSignatureOrTopic: "aggregate" | "aggregate3" | "aggregate3Value" | "blockAndAggregate" | "getBasefee" | "getBlockHash" | "getBlockNumber" | "getChainId" | "getCurrentBlockCoinbase" | "getCurrentBlockDifficulty" | "getCurrentBlockGasLimit" | "getCurrentBlockTimestamp" | "getEthBalance" | "getLastBlockHash" | "tryAggregate" | "tryBlockAndAggregate"): FunctionFragment;
65
+ encodeFunctionData(functionFragment: "aggregate", values: [Multicall3.CallStruct[]]): string;
66
+ encodeFunctionData(functionFragment: "aggregate3", values: [Multicall3.Call3Struct[]]): string;
67
+ encodeFunctionData(functionFragment: "aggregate3Value", values: [Multicall3.Call3ValueStruct[]]): string;
68
+ encodeFunctionData(functionFragment: "blockAndAggregate", values: [Multicall3.CallStruct[]]): string;
69
+ encodeFunctionData(functionFragment: "getBasefee", values?: undefined): string;
70
+ encodeFunctionData(functionFragment: "getBlockHash", values: [BigNumberish]): string;
71
+ encodeFunctionData(functionFragment: "getBlockNumber", values?: undefined): string;
72
+ encodeFunctionData(functionFragment: "getChainId", values?: undefined): string;
73
+ encodeFunctionData(functionFragment: "getCurrentBlockCoinbase", values?: undefined): string;
74
+ encodeFunctionData(functionFragment: "getCurrentBlockDifficulty", values?: undefined): string;
75
+ encodeFunctionData(functionFragment: "getCurrentBlockGasLimit", values?: undefined): string;
76
+ encodeFunctionData(functionFragment: "getCurrentBlockTimestamp", values?: undefined): string;
77
+ encodeFunctionData(functionFragment: "getEthBalance", values: [string]): string;
78
+ encodeFunctionData(functionFragment: "getLastBlockHash", values?: undefined): string;
79
+ encodeFunctionData(functionFragment: "tryAggregate", values: [boolean, Multicall3.CallStruct[]]): string;
80
+ encodeFunctionData(functionFragment: "tryBlockAndAggregate", values: [boolean, Multicall3.CallStruct[]]): string;
81
+ decodeFunctionResult(functionFragment: "aggregate", data: BytesLike): Result;
82
+ decodeFunctionResult(functionFragment: "aggregate3", data: BytesLike): Result;
83
+ decodeFunctionResult(functionFragment: "aggregate3Value", data: BytesLike): Result;
84
+ decodeFunctionResult(functionFragment: "blockAndAggregate", data: BytesLike): Result;
85
+ decodeFunctionResult(functionFragment: "getBasefee", data: BytesLike): Result;
86
+ decodeFunctionResult(functionFragment: "getBlockHash", data: BytesLike): Result;
87
+ decodeFunctionResult(functionFragment: "getBlockNumber", data: BytesLike): Result;
88
+ decodeFunctionResult(functionFragment: "getChainId", data: BytesLike): Result;
89
+ decodeFunctionResult(functionFragment: "getCurrentBlockCoinbase", data: BytesLike): Result;
90
+ decodeFunctionResult(functionFragment: "getCurrentBlockDifficulty", data: BytesLike): Result;
91
+ decodeFunctionResult(functionFragment: "getCurrentBlockGasLimit", data: BytesLike): Result;
92
+ decodeFunctionResult(functionFragment: "getCurrentBlockTimestamp", data: BytesLike): Result;
93
+ decodeFunctionResult(functionFragment: "getEthBalance", data: BytesLike): Result;
94
+ decodeFunctionResult(functionFragment: "getLastBlockHash", data: BytesLike): Result;
95
+ decodeFunctionResult(functionFragment: "tryAggregate", data: BytesLike): Result;
96
+ decodeFunctionResult(functionFragment: "tryBlockAndAggregate", data: BytesLike): Result;
97
+ events: {};
98
+ }
99
+ export interface Multicall3 extends BaseContract {
100
+ connect(signerOrProvider: Signer | Provider | string): this;
101
+ attach(addressOrName: string): this;
102
+ deployed(): Promise<this>;
103
+ interface: Multicall3Interface;
104
+ queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>;
105
+ listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>;
106
+ listeners(eventName?: string): Array<Listener>;
107
+ removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this;
108
+ removeAllListeners(eventName?: string): this;
109
+ off: OnEvent<this>;
110
+ on: OnEvent<this>;
111
+ once: OnEvent<this>;
112
+ removeListener: OnEvent<this>;
113
+ functions: {
114
+ aggregate(calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
115
+ from?: string;
116
+ }): Promise<ContractTransaction>;
117
+ aggregate3(calls: Multicall3.Call3Struct[], overrides?: PayableOverrides & {
118
+ from?: string;
119
+ }): Promise<ContractTransaction>;
120
+ aggregate3Value(calls: Multicall3.Call3ValueStruct[], overrides?: PayableOverrides & {
121
+ from?: string;
122
+ }): Promise<ContractTransaction>;
123
+ blockAndAggregate(calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
124
+ from?: string;
125
+ }): Promise<ContractTransaction>;
126
+ getBasefee(overrides?: CallOverrides): Promise<[BigNumber] & {
127
+ basefee: BigNumber;
128
+ }>;
129
+ getBlockHash(blockNumber: BigNumberish, overrides?: CallOverrides): Promise<[string] & {
130
+ blockHash: string;
131
+ }>;
132
+ getBlockNumber(overrides?: CallOverrides): Promise<[BigNumber] & {
133
+ blockNumber: BigNumber;
134
+ }>;
135
+ getChainId(overrides?: CallOverrides): Promise<[BigNumber] & {
136
+ chainid: BigNumber;
137
+ }>;
138
+ getCurrentBlockCoinbase(overrides?: CallOverrides): Promise<[string] & {
139
+ coinbase: string;
140
+ }>;
141
+ getCurrentBlockDifficulty(overrides?: CallOverrides): Promise<[BigNumber] & {
142
+ difficulty: BigNumber;
143
+ }>;
144
+ getCurrentBlockGasLimit(overrides?: CallOverrides): Promise<[BigNumber] & {
145
+ gaslimit: BigNumber;
146
+ }>;
147
+ getCurrentBlockTimestamp(overrides?: CallOverrides): Promise<[BigNumber] & {
148
+ timestamp: BigNumber;
149
+ }>;
150
+ getEthBalance(addr: string, overrides?: CallOverrides): Promise<[BigNumber] & {
151
+ balance: BigNumber;
152
+ }>;
153
+ getLastBlockHash(overrides?: CallOverrides): Promise<[string] & {
154
+ blockHash: string;
155
+ }>;
156
+ tryAggregate(requireSuccess: boolean, calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
157
+ from?: string;
158
+ }): Promise<ContractTransaction>;
159
+ tryBlockAndAggregate(requireSuccess: boolean, calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
160
+ from?: string;
161
+ }): Promise<ContractTransaction>;
162
+ };
163
+ aggregate(calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
164
+ from?: string;
165
+ }): Promise<ContractTransaction>;
166
+ aggregate3(calls: Multicall3.Call3Struct[], overrides?: PayableOverrides & {
167
+ from?: string;
168
+ }): Promise<ContractTransaction>;
169
+ aggregate3Value(calls: Multicall3.Call3ValueStruct[], overrides?: PayableOverrides & {
170
+ from?: string;
171
+ }): Promise<ContractTransaction>;
172
+ blockAndAggregate(calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
173
+ from?: string;
174
+ }): Promise<ContractTransaction>;
175
+ getBasefee(overrides?: CallOverrides): Promise<BigNumber>;
176
+ getBlockHash(blockNumber: BigNumberish, overrides?: CallOverrides): Promise<string>;
177
+ getBlockNumber(overrides?: CallOverrides): Promise<BigNumber>;
178
+ getChainId(overrides?: CallOverrides): Promise<BigNumber>;
179
+ getCurrentBlockCoinbase(overrides?: CallOverrides): Promise<string>;
180
+ getCurrentBlockDifficulty(overrides?: CallOverrides): Promise<BigNumber>;
181
+ getCurrentBlockGasLimit(overrides?: CallOverrides): Promise<BigNumber>;
182
+ getCurrentBlockTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
183
+ getEthBalance(addr: string, overrides?: CallOverrides): Promise<BigNumber>;
184
+ getLastBlockHash(overrides?: CallOverrides): Promise<string>;
185
+ tryAggregate(requireSuccess: boolean, calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
186
+ from?: string;
187
+ }): Promise<ContractTransaction>;
188
+ tryBlockAndAggregate(requireSuccess: boolean, calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
189
+ from?: string;
190
+ }): Promise<ContractTransaction>;
191
+ callStatic: {
192
+ aggregate(calls: Multicall3.CallStruct[], overrides?: CallOverrides): Promise<[
193
+ BigNumber,
194
+ string[]
195
+ ] & {
196
+ blockNumber: BigNumber;
197
+ returnData: string[];
198
+ }>;
199
+ aggregate3(calls: Multicall3.Call3Struct[], overrides?: CallOverrides): Promise<Multicall3.ResultStructOutput[]>;
200
+ aggregate3Value(calls: Multicall3.Call3ValueStruct[], overrides?: CallOverrides): Promise<Multicall3.ResultStructOutput[]>;
201
+ blockAndAggregate(calls: Multicall3.CallStruct[], overrides?: CallOverrides): Promise<[
202
+ BigNumber,
203
+ string,
204
+ Multicall3.ResultStructOutput[]
205
+ ] & {
206
+ blockNumber: BigNumber;
207
+ blockHash: string;
208
+ returnData: Multicall3.ResultStructOutput[];
209
+ }>;
210
+ getBasefee(overrides?: CallOverrides): Promise<BigNumber>;
211
+ getBlockHash(blockNumber: BigNumberish, overrides?: CallOverrides): Promise<string>;
212
+ getBlockNumber(overrides?: CallOverrides): Promise<BigNumber>;
213
+ getChainId(overrides?: CallOverrides): Promise<BigNumber>;
214
+ getCurrentBlockCoinbase(overrides?: CallOverrides): Promise<string>;
215
+ getCurrentBlockDifficulty(overrides?: CallOverrides): Promise<BigNumber>;
216
+ getCurrentBlockGasLimit(overrides?: CallOverrides): Promise<BigNumber>;
217
+ getCurrentBlockTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
218
+ getEthBalance(addr: string, overrides?: CallOverrides): Promise<BigNumber>;
219
+ getLastBlockHash(overrides?: CallOverrides): Promise<string>;
220
+ tryAggregate(requireSuccess: boolean, calls: Multicall3.CallStruct[], overrides?: CallOverrides): Promise<Multicall3.ResultStructOutput[]>;
221
+ tryBlockAndAggregate(requireSuccess: boolean, calls: Multicall3.CallStruct[], overrides?: CallOverrides): Promise<[
222
+ BigNumber,
223
+ string,
224
+ Multicall3.ResultStructOutput[]
225
+ ] & {
226
+ blockNumber: BigNumber;
227
+ blockHash: string;
228
+ returnData: Multicall3.ResultStructOutput[];
229
+ }>;
230
+ };
231
+ filters: {};
232
+ estimateGas: {
233
+ aggregate(calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
234
+ from?: string;
235
+ }): Promise<BigNumber>;
236
+ aggregate3(calls: Multicall3.Call3Struct[], overrides?: PayableOverrides & {
237
+ from?: string;
238
+ }): Promise<BigNumber>;
239
+ aggregate3Value(calls: Multicall3.Call3ValueStruct[], overrides?: PayableOverrides & {
240
+ from?: string;
241
+ }): Promise<BigNumber>;
242
+ blockAndAggregate(calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
243
+ from?: string;
244
+ }): Promise<BigNumber>;
245
+ getBasefee(overrides?: CallOverrides): Promise<BigNumber>;
246
+ getBlockHash(blockNumber: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
247
+ getBlockNumber(overrides?: CallOverrides): Promise<BigNumber>;
248
+ getChainId(overrides?: CallOverrides): Promise<BigNumber>;
249
+ getCurrentBlockCoinbase(overrides?: CallOverrides): Promise<BigNumber>;
250
+ getCurrentBlockDifficulty(overrides?: CallOverrides): Promise<BigNumber>;
251
+ getCurrentBlockGasLimit(overrides?: CallOverrides): Promise<BigNumber>;
252
+ getCurrentBlockTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
253
+ getEthBalance(addr: string, overrides?: CallOverrides): Promise<BigNumber>;
254
+ getLastBlockHash(overrides?: CallOverrides): Promise<BigNumber>;
255
+ tryAggregate(requireSuccess: boolean, calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
256
+ from?: string;
257
+ }): Promise<BigNumber>;
258
+ tryBlockAndAggregate(requireSuccess: boolean, calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
259
+ from?: string;
260
+ }): Promise<BigNumber>;
261
+ };
262
+ populateTransaction: {
263
+ aggregate(calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
264
+ from?: string;
265
+ }): Promise<PopulatedTransaction>;
266
+ aggregate3(calls: Multicall3.Call3Struct[], overrides?: PayableOverrides & {
267
+ from?: string;
268
+ }): Promise<PopulatedTransaction>;
269
+ aggregate3Value(calls: Multicall3.Call3ValueStruct[], overrides?: PayableOverrides & {
270
+ from?: string;
271
+ }): Promise<PopulatedTransaction>;
272
+ blockAndAggregate(calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
273
+ from?: string;
274
+ }): Promise<PopulatedTransaction>;
275
+ getBasefee(overrides?: CallOverrides): Promise<PopulatedTransaction>;
276
+ getBlockHash(blockNumber: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
277
+ getBlockNumber(overrides?: CallOverrides): Promise<PopulatedTransaction>;
278
+ getChainId(overrides?: CallOverrides): Promise<PopulatedTransaction>;
279
+ getCurrentBlockCoinbase(overrides?: CallOverrides): Promise<PopulatedTransaction>;
280
+ getCurrentBlockDifficulty(overrides?: CallOverrides): Promise<PopulatedTransaction>;
281
+ getCurrentBlockGasLimit(overrides?: CallOverrides): Promise<PopulatedTransaction>;
282
+ getCurrentBlockTimestamp(overrides?: CallOverrides): Promise<PopulatedTransaction>;
283
+ getEthBalance(addr: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
284
+ getLastBlockHash(overrides?: CallOverrides): Promise<PopulatedTransaction>;
285
+ tryAggregate(requireSuccess: boolean, calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
286
+ from?: string;
287
+ }): Promise<PopulatedTransaction>;
288
+ tryBlockAndAggregate(requireSuccess: boolean, calls: Multicall3.CallStruct[], overrides?: PayableOverrides & {
289
+ from?: string;
290
+ }): Promise<PopulatedTransaction>;
291
+ };
292
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Multicall3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Multicall3.js","sourceRoot":"","sources":["../../../../../src/utils/abi/typechain/Multicall3.ts"],"names":[],"mappings":""}
@@ -0,0 +1,21 @@
1
+ import type { Listener } from "@ethersproject/providers";
2
+ import type { Event, EventFilter } from "ethers";
3
+ export interface TypedEvent<TArgsArray extends Array<any> = any, TArgsObject = any> extends Event {
4
+ args: TArgsArray & TArgsObject;
5
+ }
6
+ export interface TypedEventFilter<_TEvent extends TypedEvent> extends EventFilter {
7
+ }
8
+ export interface TypedListener<TEvent extends TypedEvent> {
9
+ (...listenerArg: [...__TypechainArgsArray<TEvent>, TEvent]): void;
10
+ }
11
+ type __TypechainArgsArray<T> = T extends TypedEvent<infer U> ? U : never;
12
+ export interface OnEvent<TRes> {
13
+ <TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>, listener: TypedListener<TEvent>): TRes;
14
+ (eventName: string, listener: Listener): TRes;
15
+ }
16
+ export type MinEthersFactory<C, ARGS> = {
17
+ deploy(...a: ARGS[]): Promise<C>;
18
+ };
19
+ export type GetContractTypeFromFactory<F> = F extends MinEthersFactory<infer C, any> ? C : never;
20
+ export type GetARGsTypeFromFactory<F> = F extends MinEthersFactory<any, any> ? Parameters<F["deploy"]> : never;
21
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../../src/utils/abi/typechain/common.ts"],"names":[],"mappings":""}