sushi 2.1.0 → 3.0.0

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 (481) hide show
  1. package/README.md +3 -0
  2. package/dist/abi/StargateFeeLibraryV03.d.ts +266 -0
  3. package/dist/abi/StargateFeeLibraryV03.d.ts.map +1 -0
  4. package/dist/abi/StargateFeeLibraryV03.js +176 -0
  5. package/dist/abi/StargateFeeLibraryV03.js.map +1 -0
  6. package/dist/abi/StargatePool.d.ts +1511 -0
  7. package/dist/abi/StargatePool.d.ts.map +1 -0
  8. package/dist/abi/StargatePool.js +1123 -0
  9. package/dist/abi/StargatePool.js.map +1 -0
  10. package/dist/abi/balanceOfAbi.d.ts +16 -0
  11. package/dist/abi/balanceOfAbi.d.ts.map +1 -0
  12. package/dist/abi/balanceOfAbi.js +25 -0
  13. package/dist/abi/balanceOfAbi.js.map +1 -0
  14. package/dist/abi/bentoBoxV1Abi.d.ts +899 -0
  15. package/dist/abi/bentoBoxV1Abi.d.ts.map +1 -0
  16. package/dist/abi/bentoBoxV1Abi.js +1158 -0
  17. package/dist/abi/bentoBoxV1Abi.js.map +1 -0
  18. package/dist/abi/bentoBoxV1TotalsAbi.d.ts +20 -0
  19. package/dist/abi/bentoBoxV1TotalsAbi.d.ts.map +1 -0
  20. package/dist/abi/bentoBoxV1TotalsAbi.js +30 -0
  21. package/dist/abi/bentoBoxV1TotalsAbi.js.map +1 -0
  22. package/dist/abi/cloneRewarderTime.d.ts +379 -0
  23. package/dist/abi/cloneRewarderTime.d.ts.map +1 -0
  24. package/dist/abi/cloneRewarderTime.js +298 -0
  25. package/dist/abi/cloneRewarderTime.js.map +1 -0
  26. package/dist/abi/complexRewarderTimeAbi.d.ts +417 -0
  27. package/dist/abi/complexRewarderTimeAbi.d.ts.map +1 -0
  28. package/dist/abi/complexRewarderTimeAbi.js +310 -0
  29. package/dist/abi/complexRewarderTimeAbi.js.map +1 -0
  30. package/dist/abi/erc20Abi.d.ts +185 -0
  31. package/dist/abi/erc20Abi.d.ts.map +1 -0
  32. package/dist/abi/erc20Abi.js +247 -0
  33. package/dist/abi/erc20Abi.js.map +1 -0
  34. package/dist/abi/furoStreamAbi.d.ts +796 -0
  35. package/dist/abi/furoStreamAbi.d.ts.map +1 -0
  36. package/dist/abi/furoStreamAbi.js +1027 -0
  37. package/dist/abi/furoStreamAbi.js.map +1 -0
  38. package/dist/abi/furoStreamRouterAbi.d.ts +134 -0
  39. package/dist/abi/furoStreamRouterAbi.d.ts.map +1 -0
  40. package/dist/abi/furoStreamRouterAbi.js +177 -0
  41. package/dist/abi/furoStreamRouterAbi.js.map +1 -0
  42. package/dist/abi/furoVestingAbi.d.ts +742 -0
  43. package/dist/abi/furoVestingAbi.d.ts.map +1 -0
  44. package/dist/abi/furoVestingAbi.js +955 -0
  45. package/dist/abi/furoVestingAbi.js.map +1 -0
  46. package/dist/abi/furoVestingRouterAbi.d.ts +159 -0
  47. package/dist/abi/furoVestingRouterAbi.d.ts.map +1 -0
  48. package/dist/abi/furoVestingRouterAbi.js +209 -0
  49. package/dist/abi/furoVestingRouterAbi.js.map +1 -0
  50. package/dist/abi/gasDataArbitrumAbi.d.ts +32 -0
  51. package/dist/abi/gasDataArbitrumAbi.d.ts.map +1 -0
  52. package/dist/abi/gasDataArbitrumAbi.js +44 -0
  53. package/dist/abi/gasDataArbitrumAbi.js.map +1 -0
  54. package/dist/abi/gasPriceOracleAbi.d.ts +229 -0
  55. package/dist/abi/gasPriceOracleAbi.d.ts.map +1 -0
  56. package/dist/abi/gasPriceOracleAbi.js +302 -0
  57. package/dist/abi/gasPriceOracleAbi.js.map +1 -0
  58. package/dist/abi/getPoolsAbi.d.ts +28 -0
  59. package/dist/abi/getPoolsAbi.d.ts.map +1 -0
  60. package/dist/abi/getPoolsAbi.js +40 -0
  61. package/dist/abi/getPoolsAbi.js.map +1 -0
  62. package/dist/abi/getReservesAbi.d.ts +20 -0
  63. package/dist/abi/getReservesAbi.d.ts.map +1 -0
  64. package/dist/abi/getReservesAbi.js +29 -0
  65. package/dist/abi/getReservesAbi.js.map +1 -0
  66. package/dist/abi/index.d.ts +47 -0
  67. package/dist/abi/index.d.ts.map +1 -0
  68. package/dist/abi/index.js +97 -0
  69. package/dist/abi/index.js.map +1 -0
  70. package/dist/abi/masterChefV1Abi.d.ts +421 -0
  71. package/dist/abi/masterChefV1Abi.d.ts.map +1 -0
  72. package/dist/abi/masterChefV1Abi.js +546 -0
  73. package/dist/abi/masterChefV1Abi.js.map +1 -0
  74. package/dist/abi/masterChefV2Abi.d.ts +667 -0
  75. package/dist/abi/masterChefV2Abi.d.ts.map +1 -0
  76. package/dist/abi/masterChefV2Abi.js +858 -0
  77. package/dist/abi/masterChefV2Abi.js.map +1 -0
  78. package/dist/abi/miniChefAbi.d.ts +638 -0
  79. package/dist/abi/miniChefAbi.d.ts.map +1 -0
  80. package/dist/abi/miniChefAbi.js +471 -0
  81. package/dist/abi/miniChefAbi.js.map +1 -0
  82. package/dist/abi/multicall2Abi.d.ts +237 -0
  83. package/dist/abi/multicall2Abi.d.ts.map +1 -0
  84. package/dist/abi/multicall2Abi.js +171 -0
  85. package/dist/abi/multicall2Abi.js.map +1 -0
  86. package/dist/abi/multicall3Abi.d.ts +333 -0
  87. package/dist/abi/multicall3Abi.d.ts.map +1 -0
  88. package/dist/abi/multicall3Abi.js +242 -0
  89. package/dist/abi/multicall3Abi.js.map +1 -0
  90. package/dist/abi/nonfungiblePositionManagerAbi.d.ts +948 -0
  91. package/dist/abi/nonfungiblePositionManagerAbi.d.ts.map +1 -0
  92. package/dist/abi/nonfungiblePositionManagerAbi.js +1225 -0
  93. package/dist/abi/nonfungiblePositionManagerAbi.js.map +1 -0
  94. package/dist/abi/permit2Abi.d.ts +701 -0
  95. package/dist/abi/permit2Abi.d.ts.map +1 -0
  96. package/dist/abi/permit2Abi.js +905 -0
  97. package/dist/abi/permit2Abi.js.map +1 -0
  98. package/dist/abi/poolsCountAbi.d.ts +20 -0
  99. package/dist/abi/poolsCountAbi.d.ts.map +1 -0
  100. package/dist/abi/poolsCountAbi.js +30 -0
  101. package/dist/abi/poolsCountAbi.js.map +1 -0
  102. package/dist/abi/routeProcessor2Abi.d.ts +228 -0
  103. package/dist/abi/routeProcessor2Abi.d.ts.map +1 -0
  104. package/dist/abi/routeProcessor2Abi.js +293 -0
  105. package/dist/abi/routeProcessor2Abi.js.map +1 -0
  106. package/dist/abi/routeProcessor3Abi.d.ts +228 -0
  107. package/dist/abi/routeProcessor3Abi.d.ts.map +1 -0
  108. package/dist/abi/routeProcessor3Abi.js +293 -0
  109. package/dist/abi/routeProcessor3Abi.js.map +1 -0
  110. package/dist/abi/routeProcessor3_1Abi.d.ts +228 -0
  111. package/dist/abi/routeProcessor3_1Abi.d.ts.map +1 -0
  112. package/dist/abi/routeProcessor3_1Abi.js +293 -0
  113. package/dist/abi/routeProcessor3_1Abi.js.map +1 -0
  114. package/dist/abi/routeProcessor4Abi.d.ts +228 -0
  115. package/dist/abi/routeProcessor4Abi.d.ts.map +1 -0
  116. package/dist/abi/routeProcessor4Abi.js +293 -0
  117. package/dist/abi/routeProcessor4Abi.js.map +1 -0
  118. package/dist/abi/routeProcessorAbi.d.ts +99 -0
  119. package/dist/abi/routeProcessorAbi.d.ts.map +1 -0
  120. package/dist/abi/routeProcessorAbi.js +132 -0
  121. package/dist/abi/routeProcessorAbi.js.map +1 -0
  122. package/dist/abi/slot0Abi.d.ts +36 -0
  123. package/dist/abi/slot0Abi.d.ts.map +1 -0
  124. package/dist/abi/slot0Abi.js +29 -0
  125. package/dist/abi/slot0Abi.js.map +1 -0
  126. package/dist/abi/sushiV3FactoryAbi.d.ts +184 -0
  127. package/dist/abi/sushiV3FactoryAbi.d.ts.map +1 -0
  128. package/dist/abi/sushiV3FactoryAbi.js +240 -0
  129. package/dist/abi/sushiV3FactoryAbi.js.map +1 -0
  130. package/dist/abi/sushiV3PoolAbi.d.ts +775 -0
  131. package/dist/abi/sushiV3PoolAbi.d.ts.map +1 -0
  132. package/dist/abi/sushiV3PoolAbi.js +992 -0
  133. package/dist/abi/sushiV3PoolAbi.js.map +1 -0
  134. package/dist/abi/sushiXSwapAbi.d.ts +208 -0
  135. package/dist/abi/sushiXSwapAbi.d.ts.map +1 -0
  136. package/dist/abi/sushiXSwapAbi.js +271 -0
  137. package/dist/abi/sushiXSwapAbi.js.map +1 -0
  138. package/dist/abi/swapFeeAbi.d.ts +12 -0
  139. package/dist/abi/swapFeeAbi.d.ts.map +1 -0
  140. package/dist/abi/swapFeeAbi.js +19 -0
  141. package/dist/abi/swapFeeAbi.js.map +1 -0
  142. package/dist/abi/tickLensAbi.d.ts +33 -0
  143. package/dist/abi/tickLensAbi.d.ts.map +1 -0
  144. package/dist/abi/tickLensAbi.js +27 -0
  145. package/dist/abi/tickLensAbi.js.map +1 -0
  146. package/dist/abi/totalsAbi.d.ts +20 -0
  147. package/dist/abi/totalsAbi.d.ts.map +1 -0
  148. package/dist/abi/totalsAbi.js +30 -0
  149. package/dist/abi/totalsAbi.js.map +1 -0
  150. package/dist/abi/tridentConstantPoolAbi.d.ts +658 -0
  151. package/dist/abi/tridentConstantPoolAbi.d.ts.map +1 -0
  152. package/dist/abi/tridentConstantPoolAbi.js +856 -0
  153. package/dist/abi/tridentConstantPoolAbi.js.map +1 -0
  154. package/dist/abi/tridentConstantPoolFactoryAbi.d.ts +176 -0
  155. package/dist/abi/tridentConstantPoolFactoryAbi.d.ts.map +1 -0
  156. package/dist/abi/tridentConstantPoolFactoryAbi.js +235 -0
  157. package/dist/abi/tridentConstantPoolFactoryAbi.js.map +1 -0
  158. package/dist/abi/tridentGetPoolsAbi.d.ts +28 -0
  159. package/dist/abi/tridentGetPoolsAbi.d.ts.map +1 -0
  160. package/dist/abi/tridentGetPoolsAbi.js +40 -0
  161. package/dist/abi/tridentGetPoolsAbi.js.map +1 -0
  162. package/dist/abi/tridentPoolsCountAbi.d.ts +20 -0
  163. package/dist/abi/tridentPoolsCountAbi.d.ts.map +1 -0
  164. package/dist/abi/tridentPoolsCountAbi.js +30 -0
  165. package/dist/abi/tridentPoolsCountAbi.js.map +1 -0
  166. package/dist/abi/tridentRouterAbi.d.ts +589 -0
  167. package/dist/abi/tridentRouterAbi.d.ts.map +1 -0
  168. package/dist/abi/tridentRouterAbi.js +767 -0
  169. package/dist/abi/tridentRouterAbi.js.map +1 -0
  170. package/dist/abi/tridentStablePoolAbi.d.ts +649 -0
  171. package/dist/abi/tridentStablePoolAbi.d.ts.map +1 -0
  172. package/dist/abi/tridentStablePoolAbi.js +845 -0
  173. package/dist/abi/tridentStablePoolAbi.js.map +1 -0
  174. package/dist/abi/tridentStablePoolFactoryAbi.d.ts +172 -0
  175. package/dist/abi/tridentStablePoolFactoryAbi.d.ts.map +1 -0
  176. package/dist/abi/tridentStablePoolFactoryAbi.js +230 -0
  177. package/dist/abi/tridentStablePoolFactoryAbi.js.map +1 -0
  178. package/dist/abi/tridentSwapFeeAbi.d.ts +12 -0
  179. package/dist/abi/tridentSwapFeeAbi.d.ts.map +1 -0
  180. package/dist/abi/tridentSwapFeeAbi.js +19 -0
  181. package/dist/abi/tridentSwapFeeAbi.js.map +1 -0
  182. package/dist/abi/uniswapV2PairAbi.d.ts +561 -0
  183. package/dist/abi/uniswapV2PairAbi.d.ts.map +1 -0
  184. package/dist/abi/uniswapV2PairAbi.js +711 -0
  185. package/dist/abi/uniswapV2PairAbi.js.map +1 -0
  186. package/dist/abi/uniswapV2RouterAbi.d.ts +753 -0
  187. package/dist/abi/uniswapV2RouterAbi.d.ts.map +1 -0
  188. package/dist/abi/uniswapV2RouterAbi.js +360 -0
  189. package/dist/abi/uniswapV2RouterAbi.js.map +1 -0
  190. package/dist/abi/v3baseAbi.d.ts +42 -0
  191. package/dist/abi/v3baseAbi.d.ts.map +1 -0
  192. package/dist/abi/v3baseAbi.js +34 -0
  193. package/dist/abi/v3baseAbi.js.map +1 -0
  194. package/dist/abi/weth9Abi.d.ts +214 -0
  195. package/dist/abi/weth9Abi.d.ts.map +1 -0
  196. package/dist/abi/weth9Abi.js +157 -0
  197. package/dist/abi/weth9Abi.js.map +1 -0
  198. package/dist/calculate/gasMargin.d.ts +2 -0
  199. package/dist/calculate/gasMargin.d.ts.map +1 -0
  200. package/dist/calculate/gasMargin.js +9 -0
  201. package/dist/calculate/gasMargin.js.map +1 -0
  202. package/dist/calculate/index.d.ts +2 -0
  203. package/dist/calculate/index.d.ts.map +1 -0
  204. package/dist/calculate/index.js +6 -0
  205. package/dist/calculate/index.js.map +1 -0
  206. package/dist/chain/constants.d.ts +94 -0
  207. package/dist/chain/constants.d.ts.map +1 -0
  208. package/dist/chain/constants.js +121 -0
  209. package/dist/chain/constants.js.map +1 -0
  210. package/dist/chain/generated.d.ts +687 -0
  211. package/dist/chain/generated.d.ts.map +1 -0
  212. package/dist/chain/generated.js +836 -0
  213. package/dist/chain/generated.js.map +1 -0
  214. package/dist/chain/index.d.ts +760 -0
  215. package/dist/chain/index.d.ts.map +1 -0
  216. package/dist/chain/index.js +146 -0
  217. package/dist/chain/index.js.map +1 -0
  218. package/dist/convert/index.d.ts +2 -0
  219. package/dist/convert/index.d.ts.map +1 -0
  220. package/dist/convert/index.js +6 -0
  221. package/dist/convert/index.js.map +1 -0
  222. package/dist/convert/toHex.d.ts +8 -0
  223. package/dist/convert/toHex.d.ts.map +1 -0
  224. package/dist/convert/toHex.js +18 -0
  225. package/dist/convert/toHex.js.map +1 -0
  226. package/dist/currency/AddressMapper.d.ts +8 -0
  227. package/dist/currency/AddressMapper.d.ts.map +1 -0
  228. package/dist/currency/AddressMapper.js +55 -0
  229. package/dist/currency/AddressMapper.js.map +1 -0
  230. package/dist/currency/AddressMapper.test.d.ts +2 -0
  231. package/dist/currency/AddressMapper.test.d.ts.map +1 -0
  232. package/dist/currency/AddressMapper.test.js +226 -0
  233. package/dist/currency/AddressMapper.test.js.map +1 -0
  234. package/dist/currency/Amount.d.ts +43 -0
  235. package/dist/currency/Amount.d.ts.map +1 -0
  236. package/dist/currency/Amount.js +112 -0
  237. package/dist/currency/Amount.js.map +1 -0
  238. package/dist/currency/Amount.test.d.ts +2 -0
  239. package/dist/currency/Amount.test.d.ts.map +1 -0
  240. package/dist/currency/Amount.test.js +141 -0
  241. package/dist/currency/Amount.test.js.map +1 -0
  242. package/dist/currency/Currency.d.ts +56 -0
  243. package/dist/currency/Currency.d.ts.map +1 -0
  244. package/dist/currency/Currency.js +48 -0
  245. package/dist/currency/Currency.js.map +1 -0
  246. package/dist/currency/Native.d.ts +24 -0
  247. package/dist/currency/Native.d.ts.map +1 -0
  248. package/dist/currency/Native.js +72 -0
  249. package/dist/currency/Native.js.map +1 -0
  250. package/dist/currency/Native.test.d.ts +2 -0
  251. package/dist/currency/Native.test.d.ts.map +1 -0
  252. package/dist/currency/Native.test.js +38 -0
  253. package/dist/currency/Native.test.js.map +1 -0
  254. package/dist/currency/Price.d.ts +40 -0
  255. package/dist/currency/Price.d.ts.map +1 -0
  256. package/dist/currency/Price.js +80 -0
  257. package/dist/currency/Price.js.map +1 -0
  258. package/dist/currency/Price.test.d.ts +2 -0
  259. package/dist/currency/Price.test.d.ts.map +1 -0
  260. package/dist/currency/Price.test.js +59 -0
  261. package/dist/currency/Price.test.js.map +1 -0
  262. package/dist/currency/Share.d.ts +28 -0
  263. package/dist/currency/Share.d.ts.map +1 -0
  264. package/dist/currency/Share.js +75 -0
  265. package/dist/currency/Share.js.map +1 -0
  266. package/dist/currency/Token.d.ts +44 -0
  267. package/dist/currency/Token.d.ts.map +1 -0
  268. package/dist/currency/Token.js +93 -0
  269. package/dist/currency/Token.js.map +1 -0
  270. package/dist/currency/Token.test.d.ts +2 -0
  271. package/dist/currency/Token.test.d.ts.map +1 -0
  272. package/dist/currency/Token.test.js +66 -0
  273. package/dist/currency/Token.test.js.map +1 -0
  274. package/dist/currency/Type.d.ts +4 -0
  275. package/dist/currency/Type.d.ts.map +1 -0
  276. package/dist/currency/Type.js +3 -0
  277. package/dist/currency/Type.js.map +1 -0
  278. package/dist/currency/constants/default-quote.d.ts +38 -0
  279. package/dist/currency/constants/default-quote.d.ts.map +1 -0
  280. package/dist/currency/constants/default-quote.js +68 -0
  281. package/dist/currency/constants/default-quote.js.map +1 -0
  282. package/dist/currency/constants/governance.d.ts +4 -0
  283. package/dist/currency/constants/governance.d.ts.map +1 -0
  284. package/dist/currency/constants/governance.js +9 -0
  285. package/dist/currency/constants/governance.js.map +1 -0
  286. package/dist/currency/constants/index.d.ts +10 -0
  287. package/dist/currency/constants/index.d.ts.map +1 -0
  288. package/dist/currency/constants/index.js +26 -0
  289. package/dist/currency/constants/index.js.map +1 -0
  290. package/dist/currency/constants/lsds.d.ts +4 -0
  291. package/dist/currency/constants/lsds.d.ts.map +1 -0
  292. package/dist/currency/constants/lsds.js +8 -0
  293. package/dist/currency/constants/lsds.js.map +1 -0
  294. package/dist/currency/constants/native-ids.d.ts +46 -0
  295. package/dist/currency/constants/native-ids.d.ts.map +1 -0
  296. package/dist/currency/constants/native-ids.js +55 -0
  297. package/dist/currency/constants/native-ids.js.map +1 -0
  298. package/dist/currency/constants/short-name-to-currency.d.ts +221 -0
  299. package/dist/currency/constants/short-name-to-currency.d.ts.map +1 -0
  300. package/dist/currency/constants/short-name-to-currency.js +267 -0
  301. package/dist/currency/constants/short-name-to-currency.js.map +1 -0
  302. package/dist/currency/constants/stables.d.ts +4 -0
  303. package/dist/currency/constants/stables.d.ts.map +1 -0
  304. package/dist/currency/constants/stables.js +14 -0
  305. package/dist/currency/constants/stables.js.map +1 -0
  306. package/dist/currency/constants/token-addresses.d.ts +476 -0
  307. package/dist/currency/constants/token-addresses.d.ts.map +1 -0
  308. package/dist/currency/constants/token-addresses.js +494 -0
  309. package/dist/currency/constants/token-addresses.js.map +1 -0
  310. package/dist/currency/constants/token-map.d.ts +5 -0
  311. package/dist/currency/constants/token-map.d.ts.map +1 -0
  312. package/dist/currency/constants/token-map.js +91 -0
  313. package/dist/currency/constants/token-map.js.map +1 -0
  314. package/dist/currency/constants/tokens.d.ts +99 -0
  315. package/dist/currency/constants/tokens.d.ts.map +1 -0
  316. package/dist/currency/constants/tokens.js +511 -0
  317. package/dist/currency/constants/tokens.js.map +1 -0
  318. package/dist/currency/functions/address-map-to-token-map.d.ts +9 -0
  319. package/dist/currency/functions/address-map-to-token-map.d.ts.map +1 -0
  320. package/dist/currency/functions/address-map-to-token-map.js +18 -0
  321. package/dist/currency/functions/address-map-to-token-map.js.map +1 -0
  322. package/dist/currency/functions/index.d.ts +4 -0
  323. package/dist/currency/functions/index.d.ts.map +1 -0
  324. package/dist/currency/functions/index.js +20 -0
  325. package/dist/currency/functions/index.js.map +1 -0
  326. package/dist/currency/functions/try-parse-amount.d.ts +4 -0
  327. package/dist/currency/functions/try-parse-amount.d.ts.map +1 -0
  328. package/dist/currency/functions/try-parse-amount.js +25 -0
  329. package/dist/currency/functions/try-parse-amount.js.map +1 -0
  330. package/dist/currency/functions/unwrap.d.ts +3 -0
  331. package/dist/currency/functions/unwrap.d.ts.map +1 -0
  332. package/dist/currency/functions/unwrap.js +12 -0
  333. package/dist/currency/functions/unwrap.js.map +1 -0
  334. package/dist/currency/index.d.ts +11 -0
  335. package/dist/currency/index.d.ts.map +1 -0
  336. package/dist/currency/index.js +29 -0
  337. package/dist/currency/index.js.map +1 -0
  338. package/dist/currency/zod.d.ts +121 -0
  339. package/dist/currency/zod.d.ts.map +1 -0
  340. package/dist/currency/zod.js +27 -0
  341. package/dist/currency/zod.js.map +1 -0
  342. package/dist/format/address.d.ts +2 -0
  343. package/dist/format/address.d.ts.map +1 -0
  344. package/dist/format/address.js +16 -0
  345. package/dist/format/address.js.map +1 -0
  346. package/dist/format/index.d.ts +5 -0
  347. package/dist/format/index.d.ts.map +1 -0
  348. package/dist/format/index.js +21 -0
  349. package/dist/format/index.js.map +1 -0
  350. package/dist/format/number.d.ts +2 -0
  351. package/dist/format/number.d.ts.map +1 -0
  352. package/dist/format/number.js +12 -0
  353. package/dist/format/number.js.map +1 -0
  354. package/dist/format/percent.d.ts +2 -0
  355. package/dist/format/percent.d.ts.map +1 -0
  356. package/dist/format/percent.js +12 -0
  357. package/dist/format/percent.js.map +1 -0
  358. package/dist/format/price.d.ts +2 -0
  359. package/dist/format/price.d.ts.map +1 -0
  360. package/dist/format/price.js +24 -0
  361. package/dist/format/price.js.map +1 -0
  362. package/dist/gas/calculateGasMargin.d.ts +2 -0
  363. package/dist/gas/calculateGasMargin.d.ts.map +1 -0
  364. package/dist/gas/calculateGasMargin.js +9 -0
  365. package/dist/gas/calculateGasMargin.js.map +1 -0
  366. package/dist/gas/index.d.ts +2 -0
  367. package/dist/gas/index.d.ts.map +1 -0
  368. package/dist/gas/index.js +6 -0
  369. package/dist/gas/index.js.map +1 -0
  370. package/dist/index.d.ts +7 -0
  371. package/dist/index.d.ts.map +1 -0
  372. package/dist/index.js +23 -0
  373. package/dist/index.js.map +1 -0
  374. package/dist/log/index.d.ts +2 -0
  375. package/dist/log/index.d.ts.map +1 -0
  376. package/dist/log/index.js +6 -0
  377. package/dist/log/index.js.map +1 -0
  378. package/dist/log/log.d.ts +2 -0
  379. package/dist/log/log.d.ts.map +1 -0
  380. package/dist/log/log.js +9 -0
  381. package/dist/log/log.js.map +1 -0
  382. package/dist/log/log.test.d.ts +2 -0
  383. package/dist/log/log.test.d.ts.map +1 -0
  384. package/dist/log/log.test.js +12 -0
  385. package/dist/log/log.test.js.map +1 -0
  386. package/dist/math/Big.d.ts +3 -0
  387. package/dist/math/Big.d.ts.map +1 -0
  388. package/dist/math/Big.js +10 -0
  389. package/dist/math/Big.js.map +1 -0
  390. package/dist/math/BigintIsh.d.ts +2 -0
  391. package/dist/math/BigintIsh.d.ts.map +1 -0
  392. package/dist/math/BigintIsh.js +3 -0
  393. package/dist/math/BigintIsh.js.map +1 -0
  394. package/dist/math/Decimal.d.ts +3 -0
  395. package/dist/math/Decimal.d.ts.map +1 -0
  396. package/dist/math/Decimal.js +9 -0
  397. package/dist/math/Decimal.js.map +1 -0
  398. package/dist/math/Fraction.d.ts +30 -0
  399. package/dist/math/Fraction.d.ts.map +1 -0
  400. package/dist/math/Fraction.js +123 -0
  401. package/dist/math/Fraction.js.map +1 -0
  402. package/dist/math/Fraction.test.d.ts +2 -0
  403. package/dist/math/Fraction.test.d.ts.map +1 -0
  404. package/dist/math/Fraction.test.js +88 -0
  405. package/dist/math/Fraction.test.js.map +1 -0
  406. package/dist/math/Percent.d.ts +18 -0
  407. package/dist/math/Percent.d.ts.map +1 -0
  408. package/dist/math/Percent.js +47 -0
  409. package/dist/math/Percent.js.map +1 -0
  410. package/dist/math/Percent.test.d.ts +2 -0
  411. package/dist/math/Percent.test.d.ts.map +1 -0
  412. package/dist/math/Percent.test.js +57 -0
  413. package/dist/math/Percent.test.js.map +1 -0
  414. package/dist/math/Rounding.d.ts +7 -0
  415. package/dist/math/Rounding.d.ts.map +1 -0
  416. package/dist/math/Rounding.js +10 -0
  417. package/dist/math/Rounding.js.map +1 -0
  418. package/dist/math/constants/index.d.ts +2 -0
  419. package/dist/math/constants/index.d.ts.map +1 -0
  420. package/dist/math/constants/index.js +18 -0
  421. package/dist/math/constants/index.js.map +1 -0
  422. package/dist/math/constants/numbers.d.ts +22 -0
  423. package/dist/math/constants/numbers.d.ts.map +1 -0
  424. package/dist/math/constants/numbers.js +29 -0
  425. package/dist/math/constants/numbers.js.map +1 -0
  426. package/dist/math/functions/abs.d.ts +2 -0
  427. package/dist/math/functions/abs.d.ts.map +1 -0
  428. package/dist/math/functions/abs.js +8 -0
  429. package/dist/math/functions/abs.js.map +1 -0
  430. package/dist/math/functions/difference.d.ts +2 -0
  431. package/dist/math/functions/difference.d.ts.map +1 -0
  432. package/dist/math/functions/difference.js +11 -0
  433. package/dist/math/functions/difference.js.map +1 -0
  434. package/dist/math/functions/index.d.ts +6 -0
  435. package/dist/math/functions/index.d.ts.map +1 -0
  436. package/dist/math/functions/index.js +14 -0
  437. package/dist/math/functions/index.js.map +1 -0
  438. package/dist/math/functions/maximum.d.ts +7 -0
  439. package/dist/math/functions/maximum.d.ts.map +1 -0
  440. package/dist/math/functions/maximum.js +20 -0
  441. package/dist/math/functions/maximum.js.map +1 -0
  442. package/dist/math/functions/minimum.d.ts +4 -0
  443. package/dist/math/functions/minimum.d.ts.map +1 -0
  444. package/dist/math/functions/minimum.js +20 -0
  445. package/dist/math/functions/minimum.js.map +1 -0
  446. package/dist/math/functions/sqrt.d.ts +6 -0
  447. package/dist/math/functions/sqrt.d.ts.map +1 -0
  448. package/dist/math/functions/sqrt.js +30 -0
  449. package/dist/math/functions/sqrt.js.map +1 -0
  450. package/dist/math/index.d.ts +9 -0
  451. package/dist/math/index.d.ts.map +1 -0
  452. package/dist/math/index.js +33 -0
  453. package/dist/math/index.js.map +1 -0
  454. package/dist/types/contract.d.ts +3 -0
  455. package/dist/types/contract.d.ts.map +1 -0
  456. package/dist/types/contract.js +3 -0
  457. package/dist/types/contract.js.map +1 -0
  458. package/dist/types/index.d.ts +2 -0
  459. package/dist/types/index.d.ts.map +1 -0
  460. package/dist/types/index.js +18 -0
  461. package/dist/types/index.js.map +1 -0
  462. package/dist/validate/index.d.ts +4 -0
  463. package/dist/validate/index.d.ts.map +1 -0
  464. package/dist/validate/index.js +20 -0
  465. package/dist/validate/index.js.map +1 -0
  466. package/dist/validate/isPromiseFulfilled.d.ts +2 -0
  467. package/dist/validate/isPromiseFulfilled.d.ts.map +1 -0
  468. package/dist/validate/isPromiseFulfilled.js +6 -0
  469. package/dist/validate/isPromiseFulfilled.js.map +1 -0
  470. package/dist/validate/isPromiseRejected.d.ts +2 -0
  471. package/dist/validate/isPromiseRejected.d.ts.map +1 -0
  472. package/dist/validate/isPromiseRejected.js +6 -0
  473. package/dist/validate/isPromiseRejected.js.map +1 -0
  474. package/dist/validate/isZero.d.ts +6 -0
  475. package/dist/validate/isZero.d.ts.map +1 -0
  476. package/dist/validate/isZero.js +12 -0
  477. package/dist/validate/isZero.js.map +1 -0
  478. package/package.json +99 -26
  479. package/License.md +0 -21
  480. package/Readme.md +0 -182
  481. package/index.js +0 -116
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/chain/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.chainName = exports.chainShortName = exports.chainShortNameToChainId = exports.chainIds = exports.chainsL2 = exports.chains = exports.natives = exports.Chain = exports.Type = exports.Standard = void 0;
21
+ const constants_1 = require("./constants");
22
+ const generated_1 = __importDefault(require("./generated"));
23
+ const additional = [];
24
+ const RAW = [...generated_1.default, ...additional];
25
+ const EIP3091_OVERRIDE = [
26
+ constants_1.ChainId.OPTIMISM,
27
+ constants_1.ChainId.BOBA,
28
+ constants_1.ChainId.BASE,
29
+ ];
30
+ exports.Standard = {
31
+ Eip3091: 'EIP3091',
32
+ None: 'none',
33
+ };
34
+ exports.Type = {
35
+ L2: 'L2',
36
+ Shard: 'shard',
37
+ };
38
+ class Chain {
39
+ static fromRaw(data) {
40
+ return new Chain(data);
41
+ }
42
+ static from(chainId) {
43
+ return exports.chains[chainId];
44
+ }
45
+ static fromShortName(shortName) {
46
+ const chainId = exports.chainShortNameToChainId[shortName];
47
+ if (!chainId)
48
+ throw new Error(`Unknown chain short name: ${shortName}`);
49
+ return Chain.from(chainId);
50
+ }
51
+ static fromChainId(chainId) {
52
+ return Chain.from(chainId);
53
+ }
54
+ static txUrl(chainId, txHash) {
55
+ return Chain.fromChainId(chainId)?.getTxUrl(txHash) ?? '';
56
+ }
57
+ static blockUrl(chainId, blockHashOrHeight) {
58
+ return Chain.fromChainId(chainId)?.getBlockUrl(blockHashOrHeight) ?? '';
59
+ }
60
+ static tokenUrl(chainId, tokenAddress) {
61
+ return Chain.fromChainId(chainId)?.getTokenUrl(tokenAddress) ?? '';
62
+ }
63
+ static accountUrl(chainId, accountAddress) {
64
+ return Chain.fromChainId(chainId)?.getAccountUrl(accountAddress) ?? '';
65
+ }
66
+ constructor(data) {
67
+ Object.assign(this, data);
68
+ // process name overrides
69
+ const targets = ['Mainnet', 'Opera', 'Mainnet Shard 0'];
70
+ for (const target of targets) {
71
+ if (data.name.includes(target)) {
72
+ this.name = data.name.replace(target, '').trim();
73
+ }
74
+ }
75
+ if (data.name === 'Boba Network') {
76
+ this.name = 'Boba Eth';
77
+ }
78
+ // process explorer overrides etc...
79
+ }
80
+ getTxUrl(txHash) {
81
+ if (!this.explorers)
82
+ return '';
83
+ for (const explorer of this.explorers) {
84
+ if (explorer.standard === exports.Standard.Eip3091 ||
85
+ EIP3091_OVERRIDE.includes(this.chainId)) {
86
+ return `${explorer.url}/tx/${txHash}`;
87
+ }
88
+ }
89
+ return '';
90
+ }
91
+ getBlockUrl(blockHashOrHeight) {
92
+ if (!this.explorers)
93
+ return '';
94
+ for (const explorer of this.explorers) {
95
+ if (explorer.standard === exports.Standard.Eip3091) {
96
+ return `${explorer.url}/block/${blockHashOrHeight}`;
97
+ }
98
+ }
99
+ return '';
100
+ }
101
+ getTokenUrl(tokenAddress) {
102
+ if (!this.explorers)
103
+ return '';
104
+ for (const explorer of this.explorers) {
105
+ if (explorer.standard === exports.Standard.Eip3091 ||
106
+ EIP3091_OVERRIDE.includes(this.chainId)) {
107
+ return `${explorer.url}/token/${tokenAddress}`;
108
+ }
109
+ }
110
+ return '';
111
+ }
112
+ getAccountUrl(accountAddress) {
113
+ if (!this.explorers)
114
+ return '';
115
+ for (const explorer of this.explorers) {
116
+ if (explorer.standard === exports.Standard.Eip3091 ||
117
+ EIP3091_OVERRIDE.includes(this.chainId)) {
118
+ return `${explorer.url}/address/${accountAddress}`;
119
+ }
120
+ }
121
+ return '';
122
+ }
123
+ }
124
+ exports.Chain = Chain;
125
+ exports.natives = Object.fromEntries(RAW.map((data) => [
126
+ data.chainId,
127
+ data.nativeCurrency,
128
+ ]));
129
+ // Chain Id => Chain mapping
130
+ exports.chains = Object.fromEntries(RAW.map((data) => [data.chainId, new Chain(data)]));
131
+ // Chain Id => Chain mapping
132
+ exports.chainsL2 = Object.fromEntries(RAW.filter((data) => 'parent' in data && data.parent.type === exports.Type.L2).map((data) => [data.chainId, new Chain(data)]));
133
+ // ChainId array
134
+ exports.chainIds = RAW.map((chain) => chain.chainId);
135
+ // Chain Short Name => Chain Id mapping
136
+ exports.chainShortNameToChainId = Object.fromEntries(RAW.map((data) => [data.shortName, data.chainId]));
137
+ // Chain Id => Short Name mapping
138
+ exports.chainShortName = Object.fromEntries(RAW.map((data) => [
139
+ data.chainId,
140
+ Chain.fromRaw(data).shortName,
141
+ ]));
142
+ // Chain Id => Chain Name mapping
143
+ exports.chainName = Object.fromEntries(RAW.map((data) => [data.chainId, Chain.fromRaw(data).name]));
144
+ __exportStar(require("./constants"), exports);
145
+ exports.default = exports.chains;
146
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/chain/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { toHex } from './toHex';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/convert/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toHex = void 0;
4
+ var toHex_1 = require("./toHex");
5
+ Object.defineProperty(exports, "toHex", { enumerable: true, get: function () { return toHex_1.toHex; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/convert/index.ts"],"names":[],"mappings":";;;AAAA,iCAA+B;AAAtB,8FAAA,KAAK,OAAA"}
@@ -0,0 +1,8 @@
1
+ import { BigintIsh } from '../math';
2
+ /**
3
+ * Converts a big int to a hex string
4
+ * @param bigintIsh
5
+ * @returns The hex encoded calldata
6
+ */
7
+ export declare function toHex(bigintIsh: BigintIsh): string;
8
+ //# sourceMappingURL=toHex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toHex.d.ts","sourceRoot":"","sources":["../../src/convert/toHex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,SAAS,EAAE,SAAS,UAOzC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toHex = void 0;
4
+ /**
5
+ * Converts a big int to a hex string
6
+ * @param bigintIsh
7
+ * @returns The hex encoded calldata
8
+ */
9
+ function toHex(bigintIsh) {
10
+ const bigInt = BigInt(bigintIsh.toString());
11
+ let hex = bigInt.toString(16);
12
+ if (hex.length % 2 !== 0) {
13
+ hex = `0${hex}`;
14
+ }
15
+ return `0x${hex}`;
16
+ }
17
+ exports.toHex = toHex;
18
+ //# sourceMappingURL=toHex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toHex.js","sourceRoot":"","sources":["../../src/convert/toHex.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AACH,SAAgB,KAAK,CAAC,SAAoB;IACxC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC3C,IAAI,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IAC7B,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;QACxB,GAAG,GAAG,IAAI,GAAG,EAAE,CAAA;KAChB;IACD,OAAO,KAAK,GAAG,EAAE,CAAA;AACnB,CAAC;AAPD,sBAOC"}
@@ -0,0 +1,8 @@
1
+ export declare class AddressMapper {
2
+ static generate(addressLists: (Record<number, string[]> | Record<number, string>)[]): Record<string, {
3
+ chainId: number;
4
+ tokenAddress: string;
5
+ }[]>;
6
+ static merge(...addressLists: Record<number, string>[]): Record<number, string[]>;
7
+ }
8
+ //# sourceMappingURL=AddressMapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AddressMapper.d.ts","sourceRoot":"","sources":["../../src/currency/AddressMapper.ts"],"names":[],"mappings":"AAAA,qBAAa,aAAa;IACxB,MAAM,CAAC,QAAQ,CACb,YAAY,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE;iBAE3B,MAAM;sBAAgB,MAAM;;IA+CtE,MAAM,CAAC,KAAK,CAAC,GAAG,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;CAevD"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AddressMapper = void 0;
4
+ class AddressMapper {
5
+ static generate(addressLists) {
6
+ const result = {};
7
+ for (const addressesByChain of addressLists) {
8
+ Object.entries(addressesByChain).forEach(([chainId, address]) => {
9
+ const sisterAddresses = Array.isArray(address)
10
+ ? address
11
+ : [address];
12
+ sisterAddresses.forEach((address) => {
13
+ const currentId = `${chainId}:${address.toLowerCase()}`;
14
+ Object.entries(addressesByChain).forEach(([chainId, addresses]) => {
15
+ const currentSisterAddresses = Array.isArray(addresses)
16
+ ? addresses
17
+ : [addresses];
18
+ currentSisterAddresses.forEach((address) => {
19
+ const id = `${chainId}:${address.toLowerCase()}`;
20
+ if (currentId !== id) {
21
+ if (!result[currentId]) {
22
+ result[currentId] = [];
23
+ }
24
+ if (!result[currentId]?.some((item) => item.chainId === Number(chainId) &&
25
+ item.tokenAddress === address.toLowerCase())) {
26
+ result[currentId]?.push({
27
+ chainId: Number(chainId),
28
+ tokenAddress: address.toLowerCase(),
29
+ });
30
+ }
31
+ }
32
+ });
33
+ });
34
+ });
35
+ });
36
+ }
37
+ return result;
38
+ }
39
+ static merge(...addressLists) {
40
+ const merged = {};
41
+ for (const addressList of addressLists) {
42
+ Object.entries(addressList).forEach(([chainId, address]) => {
43
+ if (!merged[Number(chainId)]) {
44
+ merged[Number(chainId)] = [address.toLowerCase()];
45
+ }
46
+ else {
47
+ merged[Number(chainId)]?.push(address.toLowerCase());
48
+ }
49
+ });
50
+ }
51
+ return merged;
52
+ }
53
+ }
54
+ exports.AddressMapper = AddressMapper;
55
+ //# sourceMappingURL=AddressMapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AddressMapper.js","sourceRoot":"","sources":["../../src/currency/AddressMapper.ts"],"names":[],"mappings":";;;AAAA,MAAa,aAAa;IACxB,MAAM,CAAC,QAAQ,CACb,YAAmE;QAEnE,MAAM,MAAM,GACV,EAAE,CAAA;QAEJ,KAAK,MAAM,gBAAgB,IAAI,YAAY,EAAE;YAC3C,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE;gBAC9D,MAAM,eAAe,GAAa,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;oBACtD,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;gBAEb,eAAe,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBAClC,MAAM,SAAS,GAAG,GAAG,OAAO,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAA;oBAEvD,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,EAAE;wBAChE,MAAM,sBAAsB,GAAa,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;4BAC/D,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;wBAEf,sBAAsB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;4BACzC,MAAM,EAAE,GAAG,GAAG,OAAO,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAA;4BAEhD,IAAI,SAAS,KAAK,EAAE,EAAE;gCACpB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;oCACtB,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,CAAA;iCACvB;gCAED,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,IAAI,CACtB,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC;oCAChC,IAAI,CAAC,YAAY,KAAK,OAAO,CAAC,WAAW,EAAE,CAC9C,EACD;oCACA,MAAM,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;wCACtB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;wCACxB,YAAY,EAAE,OAAO,CAAC,WAAW,EAAE;qCACpC,CAAC,CAAA;iCACH;6BACF;wBACH,CAAC,CAAC,CAAA;oBACJ,CAAC,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;SACH;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,GAAG,YAAsC;QACpD,MAAM,MAAM,GAA6B,EAAE,CAAA;QAE3C,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;YACtC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE;gBACzD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE;oBAC5B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;iBAClD;qBAAM;oBACL,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;iBACrD;YACH,CAAC,CAAC,CAAA;SACH;QAED,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAlED,sCAkEC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=AddressMapper.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AddressMapper.test.d.ts","sourceRoot":"","sources":["../../src/currency/AddressMapper.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,226 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const index_js_1 = require("../chain/index.js");
5
+ const AddressMapper_js_1 = require("./AddressMapper.js");
6
+ const index_js_2 = require("./constants/index.js");
7
+ const token_map_js_1 = require("./constants/token-map.js");
8
+ const USDC_ETHEREUM_BRIDGE_LIST = {
9
+ 1: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
10
+ 4: '0x1717a0d5c8705ee89a8ad6e808268d6a826c97a4',
11
+ 3: '0x0d9c8723b343a8368bebe0b5e89273ff8d712e3c',
12
+ };
13
+ const USDC_BSC_BRIDGE_LIST = {
14
+ 1: '0x0000000000000000000000000000000000000101',
15
+ };
16
+ (0, vitest_1.describe)('AddressMapper', () => {
17
+ const usdc_merged = AddressMapper_js_1.AddressMapper.merge(USDC_ETHEREUM_BRIDGE_LIST, USDC_BSC_BRIDGE_LIST);
18
+ (0, vitest_1.test)('merge', async () => {
19
+ const expected = {
20
+ 1: [
21
+ '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
22
+ '0x0000000000000000000000000000000000000101',
23
+ ],
24
+ 4: ['0x1717a0d5c8705ee89a8ad6e808268d6a826c97a4'],
25
+ 3: ['0x0d9c8723b343a8368bebe0b5e89273ff8d712e3c'],
26
+ };
27
+ (0, vitest_1.expect)(usdc_merged).toEqual(expected);
28
+ });
29
+ (0, vitest_1.test)('when kovan address is given, return all eth and ropsten addresses', async () => {
30
+ const usdc_merged = AddressMapper_js_1.AddressMapper.merge(USDC_ETHEREUM_BRIDGE_LIST, USDC_BSC_BRIDGE_LIST);
31
+ const actual = AddressMapper_js_1.AddressMapper.generate([usdc_merged]);
32
+ const expected = {
33
+ '1:0x0000000000000000000000000000000000000101': [
34
+ {
35
+ chainId: 1,
36
+ tokenAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
37
+ },
38
+ {
39
+ chainId: 3,
40
+ tokenAddress: '0x0d9c8723b343a8368bebe0b5e89273ff8d712e3c',
41
+ },
42
+ {
43
+ chainId: 4,
44
+ tokenAddress: '0x1717a0d5c8705ee89a8ad6e808268d6a826c97a4',
45
+ },
46
+ ],
47
+ '1:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48': [
48
+ {
49
+ chainId: 1,
50
+ tokenAddress: '0x0000000000000000000000000000000000000101',
51
+ },
52
+ {
53
+ chainId: 3,
54
+ tokenAddress: '0x0d9c8723b343a8368bebe0b5e89273ff8d712e3c',
55
+ },
56
+ {
57
+ chainId: 4,
58
+ tokenAddress: '0x1717a0d5c8705ee89a8ad6e808268d6a826c97a4',
59
+ },
60
+ ],
61
+ '3:0x0d9c8723b343a8368bebe0b5e89273ff8d712e3c': [
62
+ {
63
+ chainId: 1,
64
+ tokenAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
65
+ },
66
+ {
67
+ chainId: 1,
68
+ tokenAddress: '0x0000000000000000000000000000000000000101',
69
+ },
70
+ {
71
+ chainId: 4,
72
+ tokenAddress: '0x1717a0d5c8705ee89a8ad6e808268d6a826c97a4',
73
+ },
74
+ ],
75
+ '4:0x1717a0d5c8705ee89a8ad6e808268d6a826c97a4': [
76
+ {
77
+ chainId: 1,
78
+ tokenAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
79
+ },
80
+ {
81
+ chainId: 1,
82
+ tokenAddress: '0x0000000000000000000000000000000000000101',
83
+ },
84
+ {
85
+ chainId: 3,
86
+ tokenAddress: '0x0d9c8723b343a8368bebe0b5e89273ff8d712e3c',
87
+ },
88
+ ],
89
+ };
90
+ (0, vitest_1.expect)(actual).toEqual(expected);
91
+ (0, vitest_1.expect)(actual['1:0x0000000000000000000000000000000000000101']).toEqual([
92
+ {
93
+ chainId: 1,
94
+ tokenAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
95
+ },
96
+ {
97
+ chainId: 3,
98
+ tokenAddress: '0x0d9c8723b343a8368bebe0b5e89273ff8d712e3c',
99
+ },
100
+ {
101
+ chainId: 4,
102
+ tokenAddress: '0x1717a0d5c8705ee89a8ad6e808268d6a826c97a4',
103
+ },
104
+ ]);
105
+ });
106
+ vitest_1.test.each([
107
+ {
108
+ chainId: 1,
109
+ address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
110
+ filter: 3,
111
+ expected: [
112
+ {
113
+ chainId: 3,
114
+ tokenAddress: '0x0d9c8723b343a8368bebe0b5e89273ff8d712e3c',
115
+ },
116
+ ],
117
+ },
118
+ {
119
+ chainId: 3,
120
+ address: '0x0d9c8723b343a8368bebe0b5e89273ff8d712e3c',
121
+ filter: 1,
122
+ expected: [
123
+ {
124
+ chainId: 1,
125
+ tokenAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
126
+ },
127
+ {
128
+ chainId: 1,
129
+ tokenAddress: '0x0000000000000000000000000000000000000101',
130
+ },
131
+ ],
132
+ },
133
+ {
134
+ chainId: 3,
135
+ address: '0x0d9c8723b343a8368bebe0b5e89273ff8d712e3c',
136
+ filter: 100,
137
+ expected: [],
138
+ },
139
+ ])('filter by chain id', ({ chainId, address, filter, expected }) => {
140
+ const usdc_merged = AddressMapper_js_1.AddressMapper.merge(USDC_ETHEREUM_BRIDGE_LIST, USDC_BSC_BRIDGE_LIST);
141
+ const mappings = AddressMapper_js_1.AddressMapper.generate([usdc_merged]);
142
+ const actual = mappings[`${chainId}:${address}`]?.filter((t) => t.chainId === filter);
143
+ (0, vitest_1.expect)(actual).toEqual(expected);
144
+ });
145
+ (0, vitest_1.describe)('case sensitivity', () => {
146
+ const testList = {
147
+ 1: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',
148
+ 4: '0x1717A0D5C8705EE89A8aD6E808268D6A826C97A4',
149
+ };
150
+ const mappings = AddressMapper_js_1.AddressMapper.generate([testList]);
151
+ (0, vitest_1.test)('basic', async () => {
152
+ (0, vitest_1.expect)(mappings['1:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48']).toEqual([
153
+ {
154
+ chainId: 4,
155
+ tokenAddress: '0x1717a0d5c8705ee89a8ad6e808268d6a826c97a4',
156
+ },
157
+ ]);
158
+ });
159
+ (0, vitest_1.test)("returns undefined when key isn't lower case", async () => {
160
+ (0, vitest_1.expect)(mappings['1:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48']).toBeUndefined();
161
+ });
162
+ });
163
+ (0, vitest_1.describe)('Sushi addresses', () => {
164
+ const addressLists = [index_js_2.WNATIVE_ADDRESS, index_js_2.SUSHI_ADDRESS];
165
+ const MAPPING = AddressMapper_js_1.AddressMapper.generate([...addressLists]);
166
+ (0, vitest_1.test)('Get all weth addresses', async () => {
167
+ const expected = Object.keys(index_js_2.WNATIVE_ADDRESS).length - 1; // minus one, exclude itself
168
+ const actual = Object.values(
169
+ // @ts-ignore
170
+ MAPPING[`${index_js_1.ChainId.ETHEREUM}:${index_js_2.WNATIVE_ADDRESS[index_js_1.ChainId.ETHEREUM].toLowerCase()}`]).length;
171
+ (0, vitest_1.expect)(actual).toEqual(expected);
172
+ });
173
+ (0, vitest_1.test)('Get all sushi addresses for the top networks given thundercores sushi address', async () => {
174
+ const actual = MAPPING[`${index_js_1.ChainId.THUNDERCORE}:${index_js_2.SUSHI_ADDRESS[index_js_1.ChainId.THUNDERCORE].toLowerCase()}`];
175
+ const ethereumAddresses = actual?.filter((t) => t.chainId === index_js_1.ChainId.ETHEREUM);
176
+ (0, vitest_1.expect)(ethereumAddresses).toHaveLength(1);
177
+ (0, vitest_1.expect)(ethereumAddresses?.[0]?.tokenAddress).toEqual(index_js_2.SUSHI_ADDRESS[index_js_1.ChainId.ETHEREUM].toLowerCase());
178
+ const arbitrumAddresses = actual?.filter((t) => t.chainId === index_js_1.ChainId.ARBITRUM);
179
+ (0, vitest_1.expect)(arbitrumAddresses).toHaveLength(1);
180
+ (0, vitest_1.expect)(arbitrumAddresses?.[0]?.tokenAddress).toEqual(index_js_2.SUSHI_ADDRESS[index_js_1.ChainId.ARBITRUM].toLowerCase());
181
+ const polygonAddresses = actual?.filter((t) => t.chainId === index_js_1.ChainId.POLYGON);
182
+ (0, vitest_1.expect)(polygonAddresses).toHaveLength(1);
183
+ (0, vitest_1.expect)(polygonAddresses?.[0]?.tokenAddress).toEqual(index_js_2.SUSHI_ADDRESS[index_js_1.ChainId.POLYGON].toLowerCase());
184
+ const optimismAddresses = actual?.filter((t) => t.chainId === index_js_1.ChainId.OPTIMISM);
185
+ (0, vitest_1.expect)(optimismAddresses).toHaveLength(1);
186
+ (0, vitest_1.expect)(optimismAddresses?.[0]?.tokenAddress).toEqual(index_js_2.SUSHI_ADDRESS[index_js_1.ChainId.OPTIMISM].toLowerCase());
187
+ });
188
+ });
189
+ (0, vitest_1.describe)('Sushi addresses', () => {
190
+ const addressLists = [index_js_2.WNATIVE_ADDRESS, index_js_2.SUSHI_ADDRESS];
191
+ const MAPPING = AddressMapper_js_1.AddressMapper.generate([...addressLists]);
192
+ (0, vitest_1.test)('Get all weth addresses', async () => {
193
+ const expected = Object.keys(index_js_2.WNATIVE_ADDRESS).length - 1; // minus one, exclude itself
194
+ const actual = Object.values(
195
+ // @ts-ignore
196
+ MAPPING[`${index_js_1.ChainId.ETHEREUM}:${index_js_2.WNATIVE_ADDRESS[index_js_1.ChainId.ETHEREUM].toLowerCase()}`]).length;
197
+ (0, vitest_1.expect)(actual).toEqual(expected);
198
+ });
199
+ (0, vitest_1.test)('Get all sushi addresses for the top networks given thundercores sushi address', async () => {
200
+ const actual = MAPPING[`${index_js_1.ChainId.THUNDERCORE}:${index_js_2.SUSHI_ADDRESS[index_js_1.ChainId.THUNDERCORE].toLowerCase()}`];
201
+ const ethereumAddresses = actual?.filter((t) => t.chainId === index_js_1.ChainId.ETHEREUM);
202
+ (0, vitest_1.expect)(ethereumAddresses).toHaveLength(1);
203
+ (0, vitest_1.expect)(ethereumAddresses?.[0]?.tokenAddress).toEqual(index_js_2.SUSHI_ADDRESS[index_js_1.ChainId.ETHEREUM].toLowerCase());
204
+ const arbitrumAddresses = actual?.filter((t) => t.chainId === index_js_1.ChainId.ARBITRUM);
205
+ (0, vitest_1.expect)(arbitrumAddresses).toHaveLength(1);
206
+ (0, vitest_1.expect)(arbitrumAddresses?.[0]?.tokenAddress).toEqual(index_js_2.SUSHI_ADDRESS[index_js_1.ChainId.ARBITRUM].toLowerCase());
207
+ const polygonAddresses = actual?.filter((t) => t.chainId === index_js_1.ChainId.POLYGON);
208
+ (0, vitest_1.expect)(polygonAddresses).toHaveLength(1);
209
+ (0, vitest_1.expect)(polygonAddresses?.[0]?.tokenAddress).toEqual(index_js_2.SUSHI_ADDRESS[index_js_1.ChainId.POLYGON].toLowerCase());
210
+ const optimismAddresses = actual?.filter((t) => t.chainId === index_js_1.ChainId.OPTIMISM);
211
+ (0, vitest_1.expect)(optimismAddresses).toHaveLength(1);
212
+ (0, vitest_1.expect)(optimismAddresses?.[0]?.tokenAddress).toEqual(index_js_2.SUSHI_ADDRESS[index_js_1.ChainId.OPTIMISM].toLowerCase());
213
+ });
214
+ });
215
+ (0, vitest_1.test)('BTTC has 3 usdc addresses', async () => {
216
+ const mappings = token_map_js_1.TOKEN_MAP[`${index_js_1.ChainId.BTTC}:${index_js_2.USDC_ADDRESS[index_js_1.ChainId.BTTC].toLowerCase()}`];
217
+ const actual = mappings?.filter((mapping) => mapping.chainId === index_js_1.ChainId.BTTC).length;
218
+ const expected = 2; // 3 in total, including itself
219
+ (0, vitest_1.expect)(actual).toEqual(expected);
220
+ });
221
+ (0, vitest_1.test)('Wrapped BTT is not mapped to other wrapped natives', async () => {
222
+ const actual = token_map_js_1.TOKEN_MAP[`${index_js_1.ChainId.BTTC}:${index_js_2.WNATIVE_ADDRESS[index_js_1.ChainId.BTTC].toLowerCase()}`];
223
+ (0, vitest_1.expect)(actual).toEqual(undefined);
224
+ });
225
+ });
226
+ //# sourceMappingURL=AddressMapper.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AddressMapper.test.js","sourceRoot":"","sources":["../../src/currency/AddressMapper.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import { type BigintIsh, Fraction, Rounding } from '../math/index.js';
2
+ import { Share } from './Share.js';
3
+ import { Token } from './Token.js';
4
+ import { type Type } from './Type.js';
5
+ import { type SerializedAmount } from './zod.js';
6
+ export declare class Amount<T extends Type> extends Fraction {
7
+ readonly currency: T;
8
+ readonly scale: bigint;
9
+ /**
10
+ * Returns a new currency amount instance from the unitless amount of token, i.e. the raw amount
11
+ * @param currency the currency in the amount
12
+ * @param rawAmount the raw token or ether amount
13
+ */
14
+ static fromRawAmount<T extends Type>(currency: T, rawAmount: BigintIsh): Amount<T>;
15
+ static fromShare<T extends Type>(currency: T, shares: BigintIsh, rebase: {
16
+ base: bigint;
17
+ elastic: bigint;
18
+ }, roundUp?: boolean): Amount<T>;
19
+ toShare(rebase: {
20
+ base: bigint;
21
+ elastic: bigint;
22
+ }, roundUp?: boolean): Share<T>;
23
+ /**
24
+ * Construct a currency amount with a denominator that is not equal to 1
25
+ * @param currency the currency
26
+ * @param numerator the numerator of the fractional token amount
27
+ * @param denominator the denominator of the fractional token amount
28
+ */
29
+ static fromFractionalAmount<T extends Type>(currency: T, numerator: BigintIsh, denominator: BigintIsh): Amount<T>;
30
+ protected constructor(currency: T, numerator: BigintIsh, denominator?: BigintIsh);
31
+ add(other: Amount<T>): Amount<T>;
32
+ subtract(other: Amount<T>): Amount<T>;
33
+ multiply(other: Fraction | BigintIsh): Amount<T>;
34
+ divide(other: Fraction | BigintIsh): Amount<T>;
35
+ toSignificant(significantDigits?: number, format?: object, rounding?: Rounding): string;
36
+ toFixed(decimalPlaces?: number, format?: object, rounding?: Rounding): string;
37
+ toHex(): string;
38
+ toExact(format?: object): string;
39
+ get wrapped(): Amount<Token>;
40
+ serialize(): SerializedAmount;
41
+ static deserialize<T extends Type>(amount: SerializedAmount): Amount<T>;
42
+ }
43
+ //# sourceMappingURL=Amount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Amount.d.ts","sourceRoot":"","sources":["../../src/currency/Amount.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,SAAS,EACd,QAAQ,EAER,QAAQ,EAET,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,KAAK,gBAAgB,EAAgB,MAAM,UAAU,CAAA;AAE9D,qBAAa,MAAM,CAAC,CAAC,SAAS,IAAI,CAAE,SAAQ,QAAQ;IAClD,SAAgB,QAAQ,EAAE,CAAC,CAAA;IAC3B,SAAgB,KAAK,EAAE,MAAM,CAAA;IAC7B;;;;OAIG;WACW,aAAa,CAAC,CAAC,SAAS,IAAI,EACxC,QAAQ,EAAE,CAAC,EACX,SAAS,EAAE,SAAS,GACnB,MAAM,CAAC,CAAC,CAAC;WAIE,SAAS,CAAC,CAAC,SAAS,IAAI,EACpC,QAAQ,EAAE,CAAC,EACX,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EACzC,OAAO,UAAQ,GACd,MAAM,CAAC,CAAC,CAAC;IAeL,OAAO,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,OAAO,UAAQ;IAazE;;;;;OAKG;WACW,oBAAoB,CAAC,CAAC,SAAS,IAAI,EAC/C,QAAQ,EAAE,CAAC,EACX,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,SAAS,GACrB,MAAM,CAAC,CAAC,CAAC;IAIZ,SAAS,aACP,QAAQ,EAAE,CAAC,EACX,SAAS,EAAE,SAAS,EACpB,WAAW,CAAC,EAAE,SAAS;IAQT,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IAUhC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IAUrC,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC;IAShD,MAAM,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC;IAS9C,aAAa,CAC3B,iBAAiB,SAAI,EACrB,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,GAAE,QAA8B,GACvC,MAAM;IAMO,OAAO,CACrB,aAAa,GAAE,MAA+B,EAC9C,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,GAAE,QAA8B,GACvC,MAAM;IAKF,KAAK,IAAI,MAAM;IAIf,OAAO,CAAC,MAAM,GAAE,MAA+B,GAAG,MAAM;IAO/D,IAAW,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,CAOlC;IAEM,SAAS,IAAI,gBAAgB;WAOtB,WAAW,CAAC,CAAC,SAAS,IAAI,EACtC,MAAM,EAAE,gBAAgB,GACvB,MAAM,CAAC,CAAC,CAAC;CAWb"}