@mento-protocol/mento-sdk 3.0.0-beta.2 → 3.0.0-beta.21

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 (327) hide show
  1. package/README.md +34 -0
  2. package/dist/cache/routes.d.ts +13 -0
  3. package/dist/cache/routes.d.ts.map +1 -0
  4. package/dist/cache/routes.js +130 -0
  5. package/dist/cache/routes.js.map +1 -0
  6. package/dist/cache/tokens.d.ts +67 -0
  7. package/dist/cache/tokens.d.ts.map +1 -0
  8. package/dist/cache/tokens.js +379 -0
  9. package/dist/cache/tokens.js.map +1 -0
  10. package/dist/core/abis/activePool.d.ts +2 -0
  11. package/dist/core/abis/activePool.d.ts.map +1 -0
  12. package/dist/core/abis/activePool.js +14 -0
  13. package/dist/core/abis/activePool.js.map +1 -0
  14. package/dist/core/abis/addressesRegistry.d.ts +2 -0
  15. package/dist/core/abis/addressesRegistry.d.ts.map +1 -0
  16. package/dist/core/abis/addressesRegistry.js +26 -0
  17. package/dist/core/abis/addressesRegistry.js.map +1 -0
  18. package/dist/core/abis/borrowerOperations.d.ts +9 -0
  19. package/dist/core/abis/borrowerOperations.d.ts.map +1 -0
  20. package/dist/core/abis/borrowerOperations.js +89 -0
  21. package/dist/core/abis/borrowerOperations.js.map +1 -0
  22. package/dist/core/abis/breakerbox.d.ts +13 -0
  23. package/dist/core/abis/breakerbox.d.ts.map +1 -0
  24. package/dist/core/abis/breakerbox.js +8 -0
  25. package/dist/core/abis/breakerbox.js.map +1 -0
  26. package/dist/core/abis/erc20.d.ts +7 -0
  27. package/dist/core/abis/erc20.d.ts.map +1 -1
  28. package/dist/core/abis/erc20.js +7 -0
  29. package/dist/core/abis/erc20.js.map +1 -1
  30. package/dist/core/abis/fpmm.d.ts +128 -0
  31. package/dist/core/abis/fpmm.d.ts.map +1 -1
  32. package/dist/core/abis/fpmm.js +10 -0
  33. package/dist/core/abis/fpmm.js.map +1 -1
  34. package/dist/core/abis/hintHelpers.d.ts +2 -0
  35. package/dist/core/abis/hintHelpers.d.ts.map +1 -0
  36. package/dist/core/abis/hintHelpers.js +14 -0
  37. package/dist/core/abis/hintHelpers.js.map +1 -0
  38. package/dist/core/abis/index.d.ts +12 -0
  39. package/dist/core/abis/index.d.ts.map +1 -1
  40. package/dist/core/abis/index.js +12 -0
  41. package/dist/core/abis/index.js.map +1 -1
  42. package/dist/core/abis/multiTroveGetter.d.ts +8 -0
  43. package/dist/core/abis/multiTroveGetter.d.ts.map +1 -0
  44. package/dist/core/abis/multiTroveGetter.js +15 -0
  45. package/dist/core/abis/multiTroveGetter.js.map +1 -0
  46. package/dist/core/abis/priceFeed.d.ts +7 -0
  47. package/dist/core/abis/priceFeed.d.ts.map +1 -0
  48. package/dist/core/abis/priceFeed.js +16 -0
  49. package/dist/core/abis/priceFeed.js.map +1 -0
  50. package/dist/core/abis/router.d.ts +436 -1
  51. package/dist/core/abis/router.d.ts.map +1 -1
  52. package/dist/core/abis/router.js +13 -0
  53. package/dist/core/abis/router.js.map +1 -1
  54. package/dist/core/abis/sortedTroves.d.ts +2 -0
  55. package/dist/core/abis/sortedTroves.d.ts.map +1 -0
  56. package/dist/core/abis/sortedTroves.js +15 -0
  57. package/dist/core/abis/sortedTroves.js.map +1 -0
  58. package/dist/core/abis/systemParams.d.ts +2 -0
  59. package/dist/core/abis/systemParams.d.ts.map +1 -0
  60. package/dist/core/abis/systemParams.js +14 -0
  61. package/dist/core/abis/systemParams.js.map +1 -0
  62. package/dist/core/abis/troveManager.d.ts +2 -0
  63. package/dist/core/abis/troveManager.d.ts.map +1 -0
  64. package/dist/core/abis/troveManager.js +27 -0
  65. package/dist/core/abis/troveManager.js.map +1 -0
  66. package/dist/core/abis/troveNFT.d.ts +2 -0
  67. package/dist/core/abis/troveNFT.d.ts.map +1 -0
  68. package/dist/core/abis/troveNFT.js +9 -0
  69. package/dist/core/abis/troveNFT.js.map +1 -0
  70. package/dist/core/abis/virtualPool.d.ts +40 -0
  71. package/dist/core/abis/virtualPool.d.ts.map +1 -1
  72. package/dist/core/abis/virtualPool.js +6 -1
  73. package/dist/core/abis/virtualPool.js.map +1 -1
  74. package/dist/core/abis/virtualPoolFactory.d.ts +8 -0
  75. package/dist/core/abis/virtualPoolFactory.d.ts.map +1 -1
  76. package/dist/core/abis/virtualPoolFactory.js +1 -0
  77. package/dist/core/abis/virtualPoolFactory.js.map +1 -1
  78. package/dist/core/constants/aaveConfig.js +2 -2
  79. package/dist/core/constants/addresses.d.ts.map +1 -1
  80. package/dist/core/constants/addresses.js +9 -4
  81. package/dist/core/constants/addresses.js.map +1 -1
  82. package/dist/core/constants/borrowConstants.d.ts +10 -0
  83. package/dist/core/constants/borrowConstants.d.ts.map +1 -0
  84. package/dist/core/constants/borrowConstants.js +16 -0
  85. package/dist/core/constants/borrowConstants.js.map +1 -0
  86. package/dist/core/constants/borrowRegistries.d.ts +7 -0
  87. package/dist/core/constants/borrowRegistries.d.ts.map +1 -0
  88. package/dist/core/constants/borrowRegistries.js +31 -0
  89. package/dist/core/constants/borrowRegistries.js.map +1 -0
  90. package/dist/core/constants/index.d.ts +2 -0
  91. package/dist/core/constants/index.d.ts.map +1 -1
  92. package/dist/core/constants/index.js +2 -0
  93. package/dist/core/constants/index.js.map +1 -1
  94. package/dist/core/errors/index.d.ts +1 -0
  95. package/dist/core/errors/index.d.ts.map +1 -1
  96. package/dist/core/errors/index.js +1 -0
  97. package/dist/core/errors/index.js.map +1 -1
  98. package/dist/core/errors/oracle.d.ts +9 -0
  99. package/dist/core/errors/oracle.d.ts.map +1 -0
  100. package/dist/core/errors/oracle.js +15 -0
  101. package/dist/core/errors/oracle.js.map +1 -0
  102. package/dist/core/errors/router.d.ts +6 -0
  103. package/dist/core/errors/router.d.ts.map +1 -1
  104. package/dist/core/errors/router.js +11 -1
  105. package/dist/core/errors/router.js.map +1 -1
  106. package/dist/core/types/borrow.d.ts +87 -0
  107. package/dist/core/types/borrow.d.ts.map +1 -0
  108. package/dist/core/types/borrow.js +3 -0
  109. package/dist/core/types/borrow.js.map +1 -0
  110. package/dist/core/types/contractAddresses.d.ts +2 -0
  111. package/dist/core/types/contractAddresses.d.ts.map +1 -1
  112. package/dist/core/types/index.d.ts +5 -1
  113. package/dist/core/types/index.d.ts.map +1 -1
  114. package/dist/core/types/index.js +5 -1
  115. package/dist/core/types/index.js.map +1 -1
  116. package/dist/core/types/liquidity.d.ts +117 -0
  117. package/dist/core/types/liquidity.d.ts.map +1 -0
  118. package/dist/core/types/liquidity.js +3 -0
  119. package/dist/core/types/liquidity.js.map +1 -0
  120. package/dist/core/types/pool.d.ts +110 -0
  121. package/dist/core/types/pool.d.ts.map +1 -1
  122. package/dist/core/types/provider.d.ts.map +1 -1
  123. package/dist/core/types/provider.js +0 -1
  124. package/dist/core/types/provider.js.map +1 -1
  125. package/dist/core/types/route.d.ts +3 -3
  126. package/dist/core/types/route.d.ts.map +1 -1
  127. package/dist/core/types/token.d.ts +13 -3
  128. package/dist/core/types/token.d.ts.map +1 -1
  129. package/dist/core/types/tradingLimits.d.ts +91 -0
  130. package/dist/core/types/tradingLimits.d.ts.map +1 -0
  131. package/dist/core/types/tradingLimits.js +3 -0
  132. package/dist/core/types/tradingLimits.js.map +1 -0
  133. package/dist/core/types/tradingMode.d.ts +24 -0
  134. package/dist/core/types/tradingMode.d.ts.map +1 -0
  135. package/dist/core/types/tradingMode.js +31 -0
  136. package/dist/core/types/tradingMode.js.map +1 -0
  137. package/dist/core/types/transaction.d.ts +45 -0
  138. package/dist/core/types/transaction.d.ts.map +1 -0
  139. package/dist/core/types/transaction.js +3 -0
  140. package/dist/core/types/transaction.js.map +1 -0
  141. package/dist/index.d.ts +34 -8
  142. package/dist/index.d.ts.map +1 -1
  143. package/dist/index.js +47 -10
  144. package/dist/index.js.map +1 -1
  145. package/dist/services/borrow/BorrowService.d.ts +54 -0
  146. package/dist/services/borrow/BorrowService.d.ts.map +1 -0
  147. package/dist/services/borrow/BorrowService.js +129 -0
  148. package/dist/services/borrow/BorrowService.js.map +1 -0
  149. package/dist/services/borrow/borrowHelpers.d.ts +4 -0
  150. package/dist/services/borrow/borrowHelpers.d.ts.map +1 -0
  151. package/dist/services/borrow/borrowHelpers.js +13 -0
  152. package/dist/services/borrow/borrowHelpers.js.map +1 -0
  153. package/dist/services/borrow/borrowMath.d.ts +13 -0
  154. package/dist/services/borrow/borrowMath.d.ts.map +1 -0
  155. package/dist/services/borrow/borrowMath.js +129 -0
  156. package/dist/services/borrow/borrowMath.js.map +1 -0
  157. package/dist/services/borrow/index.d.ts +2 -0
  158. package/dist/services/borrow/index.d.ts.map +1 -0
  159. package/dist/services/borrow/index.js +18 -0
  160. package/dist/services/borrow/index.js.map +1 -0
  161. package/dist/services/borrow/internal/borrowApprovalService.d.ts +14 -0
  162. package/dist/services/borrow/internal/borrowApprovalService.d.ts.map +1 -0
  163. package/dist/services/borrow/internal/borrowApprovalService.js +53 -0
  164. package/dist/services/borrow/internal/borrowApprovalService.js.map +1 -0
  165. package/dist/services/borrow/internal/borrowContextStore.d.ts +11 -0
  166. package/dist/services/borrow/internal/borrowContextStore.d.ts.map +1 -0
  167. package/dist/services/borrow/internal/borrowContextStore.js +40 -0
  168. package/dist/services/borrow/internal/borrowContextStore.js.map +1 -0
  169. package/dist/services/borrow/internal/borrowErc20.d.ts +5 -0
  170. package/dist/services/borrow/internal/borrowErc20.d.ts.map +1 -0
  171. package/dist/services/borrow/internal/borrowErc20.js +43 -0
  172. package/dist/services/borrow/internal/borrowErc20.js.map +1 -0
  173. package/dist/services/borrow/internal/borrowHints.d.ts +7 -0
  174. package/dist/services/borrow/internal/borrowHints.d.ts.map +1 -0
  175. package/dist/services/borrow/internal/borrowHints.js +31 -0
  176. package/dist/services/borrow/internal/borrowHints.js.map +1 -0
  177. package/dist/services/borrow/internal/borrowPositionParser.d.ts +4 -0
  178. package/dist/services/borrow/internal/borrowPositionParser.d.ts.map +1 -0
  179. package/dist/services/borrow/internal/borrowPositionParser.js +87 -0
  180. package/dist/services/borrow/internal/borrowPositionParser.js.map +1 -0
  181. package/dist/services/borrow/internal/borrowReadService.d.ts +28 -0
  182. package/dist/services/borrow/internal/borrowReadService.d.ts.map +1 -0
  183. package/dist/services/borrow/internal/borrowReadService.js +218 -0
  184. package/dist/services/borrow/internal/borrowReadService.js.map +1 -0
  185. package/dist/services/borrow/internal/borrowRegistryReader.d.ts +5 -0
  186. package/dist/services/borrow/internal/borrowRegistryReader.d.ts.map +1 -0
  187. package/dist/services/borrow/internal/borrowRegistryReader.js +96 -0
  188. package/dist/services/borrow/internal/borrowRegistryReader.js.map +1 -0
  189. package/dist/services/borrow/internal/borrowTransactionService.d.ts +23 -0
  190. package/dist/services/borrow/internal/borrowTransactionService.d.ts.map +1 -0
  191. package/dist/services/borrow/internal/borrowTransactionService.js +276 -0
  192. package/dist/services/borrow/internal/borrowTransactionService.js.map +1 -0
  193. package/dist/services/borrow/internal/borrowTypes.d.ts +15 -0
  194. package/dist/services/borrow/internal/borrowTypes.d.ts.map +1 -0
  195. package/dist/services/borrow/internal/borrowTypes.js +3 -0
  196. package/dist/services/borrow/internal/borrowTypes.js.map +1 -0
  197. package/dist/services/borrow/internal/borrowValidation.d.ts +13 -0
  198. package/dist/services/borrow/internal/borrowValidation.d.ts.map +1 -0
  199. package/dist/services/borrow/internal/borrowValidation.js +96 -0
  200. package/dist/services/borrow/internal/borrowValidation.js.map +1 -0
  201. package/dist/services/index.d.ts +2 -0
  202. package/dist/services/index.d.ts.map +1 -1
  203. package/dist/services/index.js +2 -0
  204. package/dist/services/index.js.map +1 -1
  205. package/dist/services/liquidity/LiquidityService.d.ts +154 -0
  206. package/dist/services/liquidity/LiquidityService.d.ts.map +1 -0
  207. package/dist/services/liquidity/LiquidityService.js +184 -0
  208. package/dist/services/liquidity/LiquidityService.js.map +1 -0
  209. package/dist/services/liquidity/basicLiquidity.d.ts +11 -0
  210. package/dist/services/liquidity/basicLiquidity.d.ts.map +1 -0
  211. package/dist/services/liquidity/basicLiquidity.js +172 -0
  212. package/dist/services/liquidity/basicLiquidity.js.map +1 -0
  213. package/dist/services/liquidity/index.d.ts +2 -0
  214. package/dist/services/liquidity/index.d.ts.map +1 -0
  215. package/dist/services/liquidity/index.js +18 -0
  216. package/dist/services/liquidity/index.js.map +1 -0
  217. package/dist/services/liquidity/liquidityHelpers.d.ts +13 -0
  218. package/dist/services/liquidity/liquidityHelpers.d.ts.map +1 -0
  219. package/dist/services/liquidity/liquidityHelpers.js +74 -0
  220. package/dist/services/liquidity/liquidityHelpers.js.map +1 -0
  221. package/dist/services/liquidity/zapHelpers.d.ts +66 -0
  222. package/dist/services/liquidity/zapHelpers.d.ts.map +1 -0
  223. package/dist/services/liquidity/zapHelpers.js +133 -0
  224. package/dist/services/liquidity/zapHelpers.js.map +1 -0
  225. package/dist/services/liquidity/zapIn.d.ts +17 -0
  226. package/dist/services/liquidity/zapIn.d.ts.map +1 -0
  227. package/dist/services/liquidity/zapIn.js +125 -0
  228. package/dist/services/liquidity/zapIn.js.map +1 -0
  229. package/dist/services/liquidity/zapOut.d.ts +17 -0
  230. package/dist/services/liquidity/zapOut.d.ts.map +1 -0
  231. package/dist/services/liquidity/zapOut.js +242 -0
  232. package/dist/services/liquidity/zapOut.js.map +1 -0
  233. package/dist/services/pools/PoolService.d.ts +35 -10
  234. package/dist/services/pools/PoolService.d.ts.map +1 -1
  235. package/dist/services/pools/PoolService.js +61 -109
  236. package/dist/services/pools/PoolService.js.map +1 -1
  237. package/dist/services/pools/poolDetails.d.ts +11 -0
  238. package/dist/services/pools/poolDetails.d.ts.map +1 -0
  239. package/dist/services/pools/poolDetails.js +145 -0
  240. package/dist/services/pools/poolDetails.js.map +1 -0
  241. package/dist/services/pools/poolDiscovery.d.ts +12 -0
  242. package/dist/services/pools/poolDiscovery.d.ts.map +1 -0
  243. package/dist/services/pools/poolDiscovery.js +114 -0
  244. package/dist/services/pools/poolDiscovery.js.map +1 -0
  245. package/dist/services/quotes/QuoteService.d.ts +21 -12
  246. package/dist/services/quotes/QuoteService.d.ts.map +1 -1
  247. package/dist/services/quotes/QuoteService.js +41 -17
  248. package/dist/services/quotes/QuoteService.js.map +1 -1
  249. package/dist/services/routes/RouteService.d.ts +3 -3
  250. package/dist/services/routes/RouteService.d.ts.map +1 -1
  251. package/dist/services/routes/RouteService.js +3 -5
  252. package/dist/services/routes/RouteService.js.map +1 -1
  253. package/dist/services/swap/SwapService.d.ts +23 -19
  254. package/dist/services/swap/SwapService.d.ts.map +1 -1
  255. package/dist/services/swap/SwapService.js +36 -15
  256. package/dist/services/swap/SwapService.js.map +1 -1
  257. package/dist/services/tokens/supplyAdjustmentService.d.ts +0 -4
  258. package/dist/services/tokens/supplyAdjustmentService.d.ts.map +1 -1
  259. package/dist/services/tokens/supplyAdjustmentService.js +3 -8
  260. package/dist/services/tokens/supplyAdjustmentService.js.map +1 -1
  261. package/dist/services/tokens/tokenService.d.ts.map +1 -1
  262. package/dist/services/tokens/tokenService.js +2 -2
  263. package/dist/services/tokens/tokenService.js.map +1 -1
  264. package/dist/services/trading/TradingLimitsService.d.ts +38 -0
  265. package/dist/services/trading/TradingLimitsService.d.ts.map +1 -0
  266. package/dist/services/trading/TradingLimitsService.js +157 -0
  267. package/dist/services/trading/TradingLimitsService.js.map +1 -0
  268. package/dist/services/trading/TradingService.d.ts +110 -0
  269. package/dist/services/trading/TradingService.d.ts.map +1 -0
  270. package/dist/services/trading/TradingService.js +162 -0
  271. package/dist/services/trading/TradingService.js.map +1 -0
  272. package/dist/services/trading/index.d.ts +3 -0
  273. package/dist/services/trading/index.d.ts.map +1 -0
  274. package/dist/services/trading/index.js +19 -0
  275. package/dist/services/trading/index.js.map +1 -0
  276. package/dist/utils/costUtils.js +4 -4
  277. package/dist/utils/costUtils.js.map +1 -1
  278. package/dist/utils/deadline.d.ts +21 -0
  279. package/dist/utils/deadline.d.ts.map +1 -0
  280. package/dist/utils/deadline.js +26 -0
  281. package/dist/utils/deadline.js.map +1 -0
  282. package/dist/utils/index.d.ts +3 -0
  283. package/dist/utils/index.d.ts.map +1 -1
  284. package/dist/utils/index.js +3 -0
  285. package/dist/utils/index.js.map +1 -1
  286. package/dist/utils/pathEncoder.d.ts +8 -2
  287. package/dist/utils/pathEncoder.d.ts.map +1 -1
  288. package/dist/utils/pathEncoder.js +19 -3
  289. package/dist/utils/pathEncoder.js.map +1 -1
  290. package/dist/utils/rateFeed.d.ts +18 -0
  291. package/dist/utils/rateFeed.d.ts.map +1 -0
  292. package/dist/utils/rateFeed.js +27 -0
  293. package/dist/utils/rateFeed.js.map +1 -0
  294. package/dist/utils/routeUtils.d.ts +53 -53
  295. package/dist/utils/routeUtils.d.ts.map +1 -1
  296. package/dist/utils/routeUtils.js +41 -41
  297. package/dist/utils/routeUtils.js.map +1 -1
  298. package/dist/utils/routes.d.ts +2 -8
  299. package/dist/utils/routes.d.ts.map +1 -1
  300. package/dist/utils/routes.js +5 -46
  301. package/dist/utils/routes.js.map +1 -1
  302. package/dist/utils/tokens.d.ts +1 -77
  303. package/dist/utils/tokens.d.ts.map +1 -1
  304. package/dist/utils/tokens.js +10 -178
  305. package/dist/utils/tokens.js.map +1 -1
  306. package/dist/utils/tradingLimits.d.ts +41 -0
  307. package/dist/utils/tradingLimits.d.ts.map +1 -0
  308. package/dist/utils/tradingLimits.js +171 -0
  309. package/dist/utils/tradingLimits.js.map +1 -0
  310. package/dist/utils/validation.d.ts +19 -0
  311. package/dist/utils/validation.d.ts.map +1 -0
  312. package/dist/utils/validation.js +34 -0
  313. package/dist/utils/validation.js.map +1 -0
  314. package/package.json +3 -1
  315. package/dist/cache/routes.11142220.js +0 -1
  316. package/dist/cache/routes.42220.d.ts +0 -3
  317. package/dist/cache/routes.42220.d.ts.map +0 -1
  318. package/dist/cache/routes.42220.js +0 -112
  319. package/dist/cache/routes.42220.js.map +0 -1
  320. package/dist/cache/tokens.11142220.d.ts +0 -3
  321. package/dist/cache/tokens.11142220.d.ts.map +0 -1
  322. package/dist/cache/tokens.11142220.js +0 -129
  323. package/dist/cache/tokens.11142220.js.map +0 -1
  324. package/dist/cache/tokens.42220.d.ts +0 -3
  325. package/dist/cache/tokens.42220.d.ts.map +0 -1
  326. package/dist/cache/tokens.42220.js +0 -129
  327. package/dist/cache/tokens.42220.js.map +0 -1
@@ -1,49 +1,8 @@
1
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.getCachedRoutes = getCachedRoutes;
27
- /**
28
- * Gets cached routes for a specific chain ID
29
- * @param chainId - The chain ID to get cached routes for
30
- * @returns Promise resolving to the cached routes or undefined if not available
31
- */
32
- async function getCachedRoutes(chainId) {
33
- try {
34
- switch (chainId) {
35
- case 42220:
36
- // @ts-ignore - Cache files are generated by scripts and may not exist yet
37
- return await Promise.resolve().then(() => __importStar(require('../cache/routes.42220'))).then((module) => module.routes42220);
38
- case 11142220:
39
- // @ts-ignore - Cache files are generated by scripts and may not exist yet
40
- return await Promise.resolve().then(() => __importStar(require('../cache/routes.11142220'))).then((module) => module.routes11142220);
41
- default:
42
- return undefined;
43
- }
44
- }
45
- catch {
46
- return undefined;
47
- }
48
- }
3
+ exports.cachedRoutes = exports.getCachedRoutes = void 0;
4
+ // Re-export from consolidated cache
5
+ var routes_1 = require("../cache/routes");
6
+ Object.defineProperty(exports, "getCachedRoutes", { enumerable: true, get: function () { return routes_1.getCachedRoutes; } });
7
+ Object.defineProperty(exports, "cachedRoutes", { enumerable: true, get: function () { return routes_1.cachedRoutes; } });
49
8
  //# sourceMappingURL=routes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/utils/routes.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAUA,0CAqBC;AA1BD;;;;GAIG;AACI,KAAK,UAAU,eAAe,CACnC,OAAe;IAEf,IAAI,CAAC;QACH,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,KAAK;gBACR,0EAA0E;gBAC1E,OAAO,MAAM,kDAAO,uBAAuB,IAAE,IAAI,CAC/C,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,CAC/B,CAAA;YACH,KAAK,QAAQ;gBACX,0EAA0E;gBAC1E,OAAO,MAAM,kDAAO,0BAA0B,IAAE,IAAI,CAClD,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,cAAc,CAClC,CAAA;YACH;gBACE,OAAO,SAAS,CAAA;QACpB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/utils/routes.ts"],"names":[],"mappings":";;;AAAA,oCAAoC;AACpC,0CAA+D;AAAtD,yGAAA,eAAe,OAAA;AAAE,sGAAA,YAAY,OAAA"}
@@ -1,78 +1,2 @@
1
- import type { Token } from '../core/types';
2
- /**
3
- * Enum of all token symbols across all supported chains
4
- */
5
- export declare enum TokenSymbol {
6
- AUDm = "AUDm",
7
- BRLm = "BRLm",
8
- CADm = "CADm",
9
- CELO = "CELO",
10
- CHFm = "CHFm",
11
- COPm = "COPm",
12
- EURm = "EURm",
13
- GBPm = "GBPm",
14
- GHSm = "GHSm",
15
- JPYm = "JPYm",
16
- KESm = "KESm",
17
- NGNm = "NGNm",
18
- PHPm = "PHPm",
19
- PUSO = "PUSO",
20
- USDC = "USDC",
21
- USDm = "USDm",
22
- USD_ = "USD\u20AE",
23
- XOFm = "XOFm",
24
- ZARm = "ZARm",
25
- axlEUROC = "axlEUROC",
26
- axlUSDC = "axlUSDC",
27
- cAUD = "cAUD",
28
- cCAD = "cCAD",
29
- cCHF = "cCHF",
30
- cCOP = "cCOP",
31
- cEUR = "cEUR",
32
- cGBP = "cGBP",
33
- cGHS = "cGHS",
34
- cJPY = "cJPY",
35
- cKES = "cKES",
36
- cNGN = "cNGN",
37
- cREAL = "cREAL",
38
- cUSD = "cUSD",
39
- cZAR = "cZAR",
40
- eXOF = "eXOF"
41
- }
42
- /**
43
- * Get cached tokens for a specific chain ID
44
- * @param chainId - The chain ID to get tokens for
45
- * @returns Promise resolving to the cached tokens array, or undefined if not available
46
- */
47
- export declare function getCachedTokens(chainId: number): Promise<readonly Token[] | undefined>;
48
- /**
49
- * Get cached tokens synchronously for a specific chain ID
50
- * @param chainId - The chain ID to get tokens for
51
- * @returns The cached tokens array
52
- * @throws Error if tokens are not available for the chain
53
- */
54
- export declare function getCachedTokensSync(chainId: number): readonly Token[];
55
- /**
56
- * Mapping of token addresses by chain ID and token symbol
57
- * Useful for quickly looking up a token address by its symbol on a specific chain
58
- */
59
- export declare const TOKEN_ADDRESSES_BY_CHAIN: {
60
- [chainId: number]: {
61
- [tokenSymbol in TokenSymbol]?: string;
62
- };
63
- };
64
- /**
65
- * Get token address by chain ID and symbol
66
- * @param chainId - The chain ID
67
- * @param symbol - The token symbol
68
- * @returns The token address or undefined if not found
69
- */
70
- export declare function getTokenAddress(chainId: number, symbol: TokenSymbol): string | undefined;
71
- /**
72
- * Find a token by its symbol on a specific chain
73
- * @param chainId - The chain ID
74
- * @param symbol - The token symbol
75
- * @returns The token object or undefined if not found
76
- */
77
- export declare function findTokenBySymbol(chainId: number, symbol: TokenSymbol): Token | undefined;
1
+ export { TokenSymbol, cachedTokens, getCachedTokens, getCachedTokensSync, getTokenAddress, findTokenBySymbol, TOKEN_ADDRESSES_BY_CHAIN, } from '../cache/tokens';
78
2
  //# sourceMappingURL=tokens.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/utils/tokens.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAE1C;;GAEG;AACH,oBAAY,WAAW;IACrB,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,cAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;CACd;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,SAAS,KAAK,EAAE,GAAG,SAAS,CAAC,CASvC;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,KAAK,EAAE,CAWrE;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE;IACrC,CAAC,OAAO,EAAE,MAAM,GAAG;SAAG,WAAW,IAAI,WAAW,CAAC,CAAC,EAAE,MAAM;KAAE,CAAA;CA8C7D,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,WAAW,GAClB,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,WAAW,GAClB,KAAK,GAAG,SAAS,CAOnB"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/utils/tokens.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EACX,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,iBAAiB,CAAA"}
@@ -1,181 +1,13 @@
1
1
  "use strict";
2
- // This file is auto-generated. Do not edit manually.
3
- // Generated on 2025-12-16T13:10:22.828Z
4
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
5
- if (k2 === undefined) k2 = k;
6
- var desc = Object.getOwnPropertyDescriptor(m, k);
7
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
8
- desc = { enumerable: true, get: function() { return m[k]; } };
9
- }
10
- Object.defineProperty(o, k2, desc);
11
- }) : (function(o, m, k, k2) {
12
- if (k2 === undefined) k2 = k;
13
- o[k2] = m[k];
14
- }));
15
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
16
- Object.defineProperty(o, "default", { enumerable: true, value: v });
17
- }) : function(o, v) {
18
- o["default"] = v;
19
- });
20
- var __importStar = (this && this.__importStar) || function (mod) {
21
- if (mod && mod.__esModule) return mod;
22
- var result = {};
23
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
24
- __setModuleDefault(result, mod);
25
- return result;
26
- };
27
2
  Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.TOKEN_ADDRESSES_BY_CHAIN = exports.TokenSymbol = void 0;
29
- exports.getCachedTokens = getCachedTokens;
30
- exports.getCachedTokensSync = getCachedTokensSync;
31
- exports.getTokenAddress = getTokenAddress;
32
- exports.findTokenBySymbol = findTokenBySymbol;
33
- /**
34
- * Enum of all token symbols across all supported chains
35
- */
36
- var TokenSymbol;
37
- (function (TokenSymbol) {
38
- TokenSymbol["AUDm"] = "AUDm";
39
- TokenSymbol["BRLm"] = "BRLm";
40
- TokenSymbol["CADm"] = "CADm";
41
- TokenSymbol["CELO"] = "CELO";
42
- TokenSymbol["CHFm"] = "CHFm";
43
- TokenSymbol["COPm"] = "COPm";
44
- TokenSymbol["EURm"] = "EURm";
45
- TokenSymbol["GBPm"] = "GBPm";
46
- TokenSymbol["GHSm"] = "GHSm";
47
- TokenSymbol["JPYm"] = "JPYm";
48
- TokenSymbol["KESm"] = "KESm";
49
- TokenSymbol["NGNm"] = "NGNm";
50
- TokenSymbol["PHPm"] = "PHPm";
51
- TokenSymbol["PUSO"] = "PUSO";
52
- TokenSymbol["USDC"] = "USDC";
53
- TokenSymbol["USDm"] = "USDm";
54
- TokenSymbol["USD_"] = "USD\u20AE";
55
- TokenSymbol["XOFm"] = "XOFm";
56
- TokenSymbol["ZARm"] = "ZARm";
57
- TokenSymbol["axlEUROC"] = "axlEUROC";
58
- TokenSymbol["axlUSDC"] = "axlUSDC";
59
- TokenSymbol["cAUD"] = "cAUD";
60
- TokenSymbol["cCAD"] = "cCAD";
61
- TokenSymbol["cCHF"] = "cCHF";
62
- TokenSymbol["cCOP"] = "cCOP";
63
- TokenSymbol["cEUR"] = "cEUR";
64
- TokenSymbol["cGBP"] = "cGBP";
65
- TokenSymbol["cGHS"] = "cGHS";
66
- TokenSymbol["cJPY"] = "cJPY";
67
- TokenSymbol["cKES"] = "cKES";
68
- TokenSymbol["cNGN"] = "cNGN";
69
- TokenSymbol["cREAL"] = "cREAL";
70
- TokenSymbol["cUSD"] = "cUSD";
71
- TokenSymbol["cZAR"] = "cZAR";
72
- TokenSymbol["eXOF"] = "eXOF";
73
- })(TokenSymbol || (exports.TokenSymbol = TokenSymbol = {}));
74
- /**
75
- * Get cached tokens for a specific chain ID
76
- * @param chainId - The chain ID to get tokens for
77
- * @returns Promise resolving to the cached tokens array, or undefined if not available
78
- */
79
- async function getCachedTokens(chainId) {
80
- switch (chainId) {
81
- case 42220:
82
- return await Promise.resolve().then(() => __importStar(require('../cache/tokens.42220'))).then((module) => module.tokens42220);
83
- case 11142220:
84
- return await Promise.resolve().then(() => __importStar(require('../cache/tokens.11142220'))).then((module) => module.tokens11142220);
85
- default:
86
- return undefined;
87
- }
88
- }
89
- /**
90
- * Get cached tokens synchronously for a specific chain ID
91
- * @param chainId - The chain ID to get tokens for
92
- * @returns The cached tokens array
93
- * @throws Error if tokens are not available for the chain
94
- */
95
- function getCachedTokensSync(chainId) {
96
- switch (chainId) {
97
- case 42220:
98
- // eslint-disable-next-line @typescript-eslint/no-var-requires
99
- return require('../cache/tokens.42220').tokens42220;
100
- case 11142220:
101
- // eslint-disable-next-line @typescript-eslint/no-var-requires
102
- return require('../cache/tokens.11142220').tokens11142220;
103
- default:
104
- throw new Error(`No cached tokens available for chain ${chainId}`);
105
- }
106
- }
107
- /**
108
- * Mapping of token addresses by chain ID and token symbol
109
- * Useful for quickly looking up a token address by its symbol on a specific chain
110
- */
111
- exports.TOKEN_ADDRESSES_BY_CHAIN = {
112
- 42220: {
113
- [TokenSymbol.cUSD]: '0x765DE816845861e75A25fCA122bb6898B8B1282a',
114
- [TokenSymbol.cEUR]: '0xD8763CBa276a3738E6DE85b4b3bF5FDed6D6cA73',
115
- [TokenSymbol.cREAL]: '0xe8537a3d056DA446677B9E9d6c5dB704EaAb4787',
116
- [TokenSymbol.eXOF]: '0x73F93dcc49cB8A239e2032663e9475dd5ef29A08',
117
- [TokenSymbol.cKES]: '0x456a3D042C0DbD3db53D5489e98dFb038553B0d0',
118
- [TokenSymbol.PUSO]: '0x105d4A9306D2E55a71d2Eb95B81553AE1dC20d7B',
119
- [TokenSymbol.cCOP]: '0x8A567e2aE79CA692Bd748aB832081C45de4041eA',
120
- [TokenSymbol.cGHS]: '0xfAeA5F3404bbA20D3cc2f8C4B0A888F55a3c7313',
121
- [TokenSymbol.cGBP]: '0xCCF663b1fF11028f0b19058d0f7B674004a40746',
122
- [TokenSymbol.cZAR]: '0x4c35853A3B4e647fD266f4de678dCc8fEC410BF6',
123
- [TokenSymbol.cCAD]: '0xff4Ab19391af240c311c54200a492233052B6325',
124
- [TokenSymbol.cAUD]: '0x7175504C455076F15c04A2F90a8e352281F492F9',
125
- [TokenSymbol.cCHF]: '0xb55a79F398E759E43C95b979163f30eC87Ee131D',
126
- [TokenSymbol.cNGN]: '0xE2702Bd97ee33c88c8f6f92DA3B733608aa76F71',
127
- [TokenSymbol.cJPY]: '0xc45eCF20f3CD864B32D9794d6f76814aE8892e20',
128
- [TokenSymbol.CELO]: '0x471EcE3750Da237f93B8E339c536989b8978a438',
129
- [TokenSymbol.axlEUROC]: '0x061cc5a2C863E0C1Cb404006D559dB18A34C762d',
130
- [TokenSymbol.USDC]: '0xcebA9300f2b948710d2653dD7B07f33A8B32118C',
131
- [TokenSymbol.axlUSDC]: '0xEB466342C4d449BC9f53A865D5Cb90586f405215',
132
- [TokenSymbol.USD_]: '0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e',
133
- },
134
- 11142220: {
135
- [TokenSymbol.USDm]: '0xdE9e4C3ce781b4bA68120d6261cbad65ce0aB00b',
136
- [TokenSymbol.EURm]: '0xA99dC247d6b7B2E3ab48a1fEE101b83cD6aCd82a',
137
- [TokenSymbol.BRLm]: '0x2294298942fdc79417DE9E0D740A4957E0e7783a',
138
- [TokenSymbol.XOFm]: '0x5505b70207aE3B826c1A7607F19F3Bf73444A082',
139
- [TokenSymbol.KESm]: '0xC7e4635651E3e3Af82b61d3E23c159438daE3BbF',
140
- [TokenSymbol.PHPm]: '0x0352976d940a2C3FBa0C3623198947Ee1d17869E',
141
- [TokenSymbol.COPm]: '0x5F8d55c3627d2dc0a2B4afa798f877242F382F67',
142
- [TokenSymbol.GHSm]: '0x5e94B8C872bD47BC4255E60ECBF44D5E66e7401C',
143
- [TokenSymbol.GBPm]: '0x85F5181Abdbf0e1814Fc4358582Ae07b8eBA3aF3',
144
- [TokenSymbol.ZARm]: '0x10CCfB235b0E1Ed394bACE4560C3ed016697687e',
145
- [TokenSymbol.CADm]: '0xF151c9a13b78C84f93f50B8b3bC689fedc134F60',
146
- [TokenSymbol.AUDm]: '0x5873Faeb42F3563dcD77F0fbbdA818E6d6DA3139',
147
- [TokenSymbol.CHFm]: '0x284E9b7B623eAE866914b7FA0eB720C2Bb3C2980',
148
- [TokenSymbol.JPYm]: '0x85Bee67D435A39f7467a8a9DE34a5B73D25Df426',
149
- [TokenSymbol.NGNm]: '0x3d5ae86F34E2a82771496D140daFAEf3789dF888',
150
- [TokenSymbol.axlUSDC]: '0x6285De9DA7C1d329C0451628638908915002d9d1',
151
- [TokenSymbol.CELO]: '0x471EcE3750Da237f93B8E339c536989b8978a438',
152
- [TokenSymbol.axlEUROC]: '0x9883d788d40F1C7595a780ed881Ea833C7743B4B',
153
- [TokenSymbol.USD_]: '0xd077A400968890Eacc75cdc901F0356c943e4fDb',
154
- [TokenSymbol.USDC]: '0x01C5C0122039549AD1493B8220cABEdD739BC44E',
155
- },
156
- };
157
- /**
158
- * Get token address by chain ID and symbol
159
- * @param chainId - The chain ID
160
- * @param symbol - The token symbol
161
- * @returns The token address or undefined if not found
162
- */
163
- function getTokenAddress(chainId, symbol) {
164
- return exports.TOKEN_ADDRESSES_BY_CHAIN[chainId]?.[symbol];
165
- }
166
- /**
167
- * Find a token by its symbol on a specific chain
168
- * @param chainId - The chain ID
169
- * @param symbol - The token symbol
170
- * @returns The token object or undefined if not found
171
- */
172
- function findTokenBySymbol(chainId, symbol) {
173
- try {
174
- const tokens = getCachedTokensSync(chainId);
175
- return tokens.find((t) => t.symbol === symbol);
176
- }
177
- catch {
178
- return undefined;
179
- }
180
- }
3
+ exports.TOKEN_ADDRESSES_BY_CHAIN = exports.findTokenBySymbol = exports.getTokenAddress = exports.getCachedTokensSync = exports.getCachedTokens = exports.cachedTokens = exports.TokenSymbol = void 0;
4
+ // Re-export from consolidated cache
5
+ var tokens_1 = require("../cache/tokens");
6
+ Object.defineProperty(exports, "TokenSymbol", { enumerable: true, get: function () { return tokens_1.TokenSymbol; } });
7
+ Object.defineProperty(exports, "cachedTokens", { enumerable: true, get: function () { return tokens_1.cachedTokens; } });
8
+ Object.defineProperty(exports, "getCachedTokens", { enumerable: true, get: function () { return tokens_1.getCachedTokens; } });
9
+ Object.defineProperty(exports, "getCachedTokensSync", { enumerable: true, get: function () { return tokens_1.getCachedTokensSync; } });
10
+ Object.defineProperty(exports, "getTokenAddress", { enumerable: true, get: function () { return tokens_1.getTokenAddress; } });
11
+ Object.defineProperty(exports, "findTokenBySymbol", { enumerable: true, get: function () { return tokens_1.findTokenBySymbol; } });
12
+ Object.defineProperty(exports, "TOKEN_ADDRESSES_BY_CHAIN", { enumerable: true, get: function () { return tokens_1.TOKEN_ADDRESSES_BY_CHAIN; } });
181
13
  //# sourceMappingURL=tokens.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/utils/tokens.ts"],"names":[],"mappings":";AAAA,qDAAqD;AACrD,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;AAkDxC,0CAWC;AAQD,kDAWC;AA6DD,0CAKC;AAQD,8CAUC;AAhKD;;GAEG;AACH,IAAY,WAoCX;AApCD,WAAY,WAAW;IACrB,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,iCAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,oCAAqB,CAAA;IACrB,kCAAmB,CAAA;IACnB,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,8BAAe,CAAA;IACf,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;AACf,CAAC,EApCW,WAAW,2BAAX,WAAW,QAoCtB;AAED;;;;GAIG;AACI,KAAK,UAAU,eAAe,CACnC,OAAe;IAEf,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,KAAK;YACR,OAAO,MAAM,kDAAO,uBAAuB,IAAE,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QACnF,KAAK,QAAQ;YACX,OAAO,MAAM,kDAAO,0BAA0B,IAAE,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAA;QACzF;YACE,OAAO,SAAS,CAAA;IACpB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,OAAe;IACjD,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,KAAK;YACR,8DAA8D;YAC9D,OAAO,OAAO,CAAC,uBAAuB,CAAC,CAAC,WAAW,CAAA;QACrD,KAAK,QAAQ;YACX,8DAA8D;YAC9D,OAAO,OAAO,CAAC,0BAA0B,CAAC,CAAC,cAAc,CAAA;QAC3D;YACE,MAAM,IAAI,KAAK,CAAC,wCAAwC,OAAO,EAAE,CAAC,CAAA;IACtE,CAAC;AACH,CAAC;AAED;;;GAGG;AACU,QAAA,wBAAwB,GAEjC;IACF,KAAK,EAAE;QACH,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,4CAA4C;QACjE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,4CAA4C;QACpE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,4CAA4C;QACnE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;KACjE;IACH,QAAQ,EAAE;QACN,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,4CAA4C;QACnE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,4CAA4C;QACpE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;QAChE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,4CAA4C;KACjE;CACJ,CAAA;AAED;;;;;GAKG;AACH,SAAgB,eAAe,CAC7B,OAAe,EACf,MAAmB;IAEnB,OAAO,gCAAwB,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;AACpD,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAC/B,OAAe,EACf,MAAmB;IAEnB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAA;QAC3C,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/utils/tokens.ts"],"names":[],"mappings":";;;AAAA,oCAAoC;AACpC,0CAQwB;AAPtB,qGAAA,WAAW,OAAA;AACX,sGAAA,YAAY,OAAA;AACZ,yGAAA,eAAe,OAAA;AACf,6GAAA,mBAAmB,OAAA;AACnB,yGAAA,eAAe,OAAA;AACf,2GAAA,iBAAiB,OAAA;AACjB,kHAAA,wBAAwB,OAAA"}
@@ -0,0 +1,41 @@
1
+ import type { TradingLimit, TradingLimitsConfigV1, TradingLimitsStateV1, TradingLimitsConfigV2, TradingLimitsStateV2 } from '../core/types';
2
+ /**
3
+ * Compute limit ID for Broker (V1) trading limits.
4
+ * limitId = exchangeId XOR bytes32(uint256(uint160(token)))
5
+ *
6
+ * @param exchangeId - The exchange ID (bytes32)
7
+ * @param token - The token address
8
+ * @returns The limit ID as hex string
9
+ */
10
+ export declare function computeLimitId(exchangeId: string, token: string): `0x${string}`;
11
+ /**
12
+ * Calculate trading limits from V1 config and state (Broker/Virtual pools).
13
+ * Returns human-friendly TradingLimit objects with maxIn/maxOut/until.
14
+ *
15
+ * @param config - V1 trading limits configuration
16
+ * @param state - V1 trading limits state
17
+ * @param asset - Token address
18
+ * @param tokenDecimals - Token decimals for consumer reference
19
+ * @returns Array of TradingLimit objects
20
+ */
21
+ export declare function calculateTradingLimitsV1(config: TradingLimitsConfigV1, state: TradingLimitsStateV1, asset: string, tokenDecimals: number): TradingLimit[];
22
+ /**
23
+ * Calculate trading limits from V2 config and state (FPMM pools).
24
+ * V2 uses fixed timeframes: 5 min for L0, 1 day for L1.
25
+ * Values are stored with 15 decimals precision.
26
+ *
27
+ * @param config - V2 trading limits configuration
28
+ * @param state - V2 trading limits state
29
+ * @param asset - Token address
30
+ * @returns Array of TradingLimit objects
31
+ */
32
+ export declare function calculateTradingLimitsV2(config: TradingLimitsConfigV2, state: TradingLimitsStateV2, asset: string): TradingLimit[];
33
+ /**
34
+ * Check if any trading limits are configured (flags > 0 for V1, or limit0/limit1 > 0 for V2)
35
+ */
36
+ export declare function hasConfiguredLimitsV1(config: TradingLimitsConfigV1): boolean;
37
+ /**
38
+ * Check if any trading limits are configured for V2
39
+ */
40
+ export declare function hasConfiguredLimitsV2(config: TradingLimitsConfigV2): boolean;
41
+ //# sourceMappingURL=tradingLimits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tradingLimits.d.ts","sourceRoot":"","sources":["../../src/utils/tradingLimits.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,eAAe,CAAA;AActB;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAa/E;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,qBAAqB,EAC7B,KAAK,EAAE,oBAAoB,EAC3B,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,GACpB,YAAY,EAAE,CAiEhB;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,qBAAqB,EAC7B,KAAK,EAAE,oBAAoB,EAC3B,KAAK,EAAE,MAAM,GACZ,YAAY,EAAE,CAmDhB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAE5E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAE5E"}
@@ -0,0 +1,171 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.computeLimitId = computeLimitId;
4
+ exports.calculateTradingLimitsV1 = calculateTradingLimitsV1;
5
+ exports.calculateTradingLimitsV2 = calculateTradingLimitsV2;
6
+ exports.hasConfiguredLimitsV1 = hasConfiguredLimitsV1;
7
+ exports.hasConfiguredLimitsV2 = hasConfiguredLimitsV2;
8
+ const viem_1 = require("viem");
9
+ /** V2 trading limits use 15 decimals internally */
10
+ const V2_INTERNAL_DECIMALS = 15;
11
+ /** V2 L0 window is fixed at 5 minutes */
12
+ const V2_L0_TIMESTEP = 5 * 60; // 300 seconds
13
+ /** V2 L1 window is fixed at 1 day */
14
+ const V2_L1_TIMESTEP = 24 * 60 * 60; // 86400 seconds
15
+ /** Far future timestamp for global limits (year 2030) */
16
+ const TIMESTAMP_FAR_FUTURE = 1893456000;
17
+ /**
18
+ * Compute limit ID for Broker (V1) trading limits.
19
+ * limitId = exchangeId XOR bytes32(uint256(uint160(token)))
20
+ *
21
+ * @param exchangeId - The exchange ID (bytes32)
22
+ * @param token - The token address
23
+ * @returns The limit ID as hex string
24
+ */
25
+ function computeLimitId(exchangeId, token) {
26
+ // Pad token address to 32 bytes (left-padded with zeros)
27
+ const tokenBytes32 = (0, viem_1.pad)(token, { size: 32 });
28
+ // Convert both to BigInt for XOR operation
29
+ const exchangeIdBigInt = (0, viem_1.hexToBigInt)(exchangeId);
30
+ const tokenBigInt = (0, viem_1.hexToBigInt)(tokenBytes32);
31
+ // XOR operation
32
+ const limitIdBigInt = exchangeIdBigInt ^ tokenBigInt;
33
+ // Convert back to hex with proper padding
34
+ return (0, viem_1.pad)((0, viem_1.numberToHex)(limitIdBigInt), { size: 32 });
35
+ }
36
+ /**
37
+ * Calculate trading limits from V1 config and state (Broker/Virtual pools).
38
+ * Returns human-friendly TradingLimit objects with maxIn/maxOut/until.
39
+ *
40
+ * @param config - V1 trading limits configuration
41
+ * @param state - V1 trading limits state
42
+ * @param asset - Token address
43
+ * @param tokenDecimals - Token decimals for consumer reference
44
+ * @returns Array of TradingLimit objects
45
+ */
46
+ function calculateTradingLimitsV1(config, state, asset, tokenDecimals) {
47
+ const nowEpoch = Math.floor(Date.now() / 1000);
48
+ const limits = [];
49
+ // Check if L0 is enabled (bit 0 of flags)
50
+ const isL0Enabled = (config.flags & 0x01) !== 0;
51
+ // Check if L1 is enabled (bit 1 of flags)
52
+ const isL1Enabled = (config.flags & 0x02) !== 0;
53
+ // Check if LG is enabled (bit 2 of flags)
54
+ const isLGEnabled = (config.flags & 0x04) !== 0;
55
+ // Reset netflows if time windows have passed
56
+ const isL0Outdated = isL0Enabled && nowEpoch > state.lastUpdated0 + config.timestep0;
57
+ const isL1Outdated = isL1Enabled && nowEpoch > state.lastUpdated1 + config.timestep1;
58
+ const effectiveNetflow0 = isL0Outdated ? 0n : state.netflow0;
59
+ const effectiveNetflow1 = isL1Outdated ? 0n : state.netflow1;
60
+ const effectiveLastUpdated0 = isL0Outdated ? nowEpoch : state.lastUpdated0;
61
+ const effectiveLastUpdated1 = isL1Outdated ? nowEpoch : state.lastUpdated1;
62
+ // Add L0 limit if configured
63
+ if (isL0Enabled && config.limit0 > 0n) {
64
+ limits.push({
65
+ asset,
66
+ maxIn: config.limit0 - effectiveNetflow0,
67
+ maxOut: config.limit0 + effectiveNetflow0,
68
+ until: effectiveLastUpdated0 + config.timestep0,
69
+ decimals: tokenDecimals,
70
+ });
71
+ }
72
+ // Add L1 limit if configured
73
+ if (isL1Enabled && config.limit1 > 0n) {
74
+ limits.push({
75
+ asset,
76
+ maxIn: config.limit1 - effectiveNetflow1,
77
+ maxOut: config.limit1 + effectiveNetflow1,
78
+ until: effectiveLastUpdated1 + config.timestep1,
79
+ decimals: tokenDecimals,
80
+ });
81
+ }
82
+ // Add LG (global) limit if configured
83
+ if (isLGEnabled && config.limitGlobal > 0n) {
84
+ limits.push({
85
+ asset,
86
+ maxIn: config.limitGlobal - state.netflowGlobal,
87
+ maxOut: config.limitGlobal + state.netflowGlobal,
88
+ until: TIMESTAMP_FAR_FUTURE,
89
+ decimals: tokenDecimals,
90
+ });
91
+ }
92
+ // Apply cascading restrictions: limits with larger timeframes restrict smaller ones
93
+ // e.g., if maxIn is 0 in LG, it should also be 0 in L1 and L0
94
+ for (let i = limits.length - 1; i > 0; i--) {
95
+ if (limits[i - 1].maxIn > limits[i].maxIn) {
96
+ limits[i - 1] = { ...limits[i - 1], maxIn: limits[i].maxIn };
97
+ }
98
+ if (limits[i - 1].maxOut > limits[i].maxOut) {
99
+ limits[i - 1] = { ...limits[i - 1], maxOut: limits[i].maxOut };
100
+ }
101
+ }
102
+ return limits;
103
+ }
104
+ /**
105
+ * Calculate trading limits from V2 config and state (FPMM pools).
106
+ * V2 uses fixed timeframes: 5 min for L0, 1 day for L1.
107
+ * Values are stored with 15 decimals precision.
108
+ *
109
+ * @param config - V2 trading limits configuration
110
+ * @param state - V2 trading limits state
111
+ * @param asset - Token address
112
+ * @returns Array of TradingLimit objects
113
+ */
114
+ function calculateTradingLimitsV2(config, state, asset) {
115
+ const nowEpoch = Math.floor(Date.now() / 1000);
116
+ const limits = [];
117
+ // Check if L0 is configured (limit0 > 0)
118
+ const isL0Enabled = config.limit0 > 0n;
119
+ // Check if L1 is configured (limit1 > 0)
120
+ const isL1Enabled = config.limit1 > 0n;
121
+ // Reset netflows if time windows have passed
122
+ const isL0Outdated = isL0Enabled && nowEpoch > state.lastUpdated0 + V2_L0_TIMESTEP;
123
+ const isL1Outdated = isL1Enabled && nowEpoch > state.lastUpdated1 + V2_L1_TIMESTEP;
124
+ const effectiveNetflow0 = isL0Outdated ? 0n : state.netflow0;
125
+ const effectiveNetflow1 = isL1Outdated ? 0n : state.netflow1;
126
+ const effectiveLastUpdated0 = isL0Outdated ? nowEpoch : state.lastUpdated0;
127
+ const effectiveLastUpdated1 = isL1Outdated ? nowEpoch : state.lastUpdated1;
128
+ // Add L0 limit if configured
129
+ if (isL0Enabled) {
130
+ limits.push({
131
+ asset,
132
+ maxIn: config.limit0 - effectiveNetflow0,
133
+ maxOut: config.limit0 + effectiveNetflow0,
134
+ until: effectiveLastUpdated0 + V2_L0_TIMESTEP,
135
+ decimals: V2_INTERNAL_DECIMALS, // V2 returns 15 decimal values
136
+ });
137
+ }
138
+ // Add L1 limit if configured
139
+ if (isL1Enabled) {
140
+ limits.push({
141
+ asset,
142
+ maxIn: config.limit1 - effectiveNetflow1,
143
+ maxOut: config.limit1 + effectiveNetflow1,
144
+ until: effectiveLastUpdated1 + V2_L1_TIMESTEP,
145
+ decimals: V2_INTERNAL_DECIMALS, // V2 returns 15 decimal values
146
+ });
147
+ }
148
+ // Apply cascading restrictions
149
+ for (let i = limits.length - 1; i > 0; i--) {
150
+ if (limits[i - 1].maxIn > limits[i].maxIn) {
151
+ limits[i - 1] = { ...limits[i - 1], maxIn: limits[i].maxIn };
152
+ }
153
+ if (limits[i - 1].maxOut > limits[i].maxOut) {
154
+ limits[i - 1] = { ...limits[i - 1], maxOut: limits[i].maxOut };
155
+ }
156
+ }
157
+ return limits;
158
+ }
159
+ /**
160
+ * Check if any trading limits are configured (flags > 0 for V1, or limit0/limit1 > 0 for V2)
161
+ */
162
+ function hasConfiguredLimitsV1(config) {
163
+ return config.flags > 0;
164
+ }
165
+ /**
166
+ * Check if any trading limits are configured for V2
167
+ */
168
+ function hasConfiguredLimitsV2(config) {
169
+ return config.limit0 > 0n || config.limit1 > 0n;
170
+ }
171
+ //# sourceMappingURL=tradingLimits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tradingLimits.js","sourceRoot":"","sources":["../../src/utils/tradingLimits.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Validates an Ethereum address format using viem's isAddress utility
3
+ *
4
+ * @param address - The address string to validate
5
+ * @param paramName - Optional parameter name for better error messages
6
+ * @returns True if valid (type guard for `0x${string}`)
7
+ * @throws Error if address is invalid
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * validateAddress('0x765DE816845861e75A25fCA122bb6898B8B1282a')
12
+ * // Returns true
13
+ *
14
+ * validateAddress('invalid', 'tokenIn')
15
+ * // Throws: "Invalid address for tokenIn: invalid"
16
+ * ```
17
+ */
18
+ export declare function validateAddress(address: string, paramName?: string): address is `0x${string}`;
19
+ //# sourceMappingURL=validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,IAAI,KAAK,MAAM,EAAE,CAe7F"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateAddress = validateAddress;
4
+ const viem_1 = require("viem");
5
+ /**
6
+ * Validates an Ethereum address format using viem's isAddress utility
7
+ *
8
+ * @param address - The address string to validate
9
+ * @param paramName - Optional parameter name for better error messages
10
+ * @returns True if valid (type guard for `0x${string}`)
11
+ * @throws Error if address is invalid
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * validateAddress('0x765DE816845861e75A25fCA122bb6898B8B1282a')
16
+ * // Returns true
17
+ *
18
+ * validateAddress('invalid', 'tokenIn')
19
+ * // Throws: "Invalid address for tokenIn: invalid"
20
+ * ```
21
+ */
22
+ function validateAddress(address, paramName) {
23
+ if (typeof address !== 'string') {
24
+ const param = paramName ? ` for ${paramName}` : '';
25
+ throw new Error(`Address${param} must be a string, got ${typeof address}`);
26
+ }
27
+ // Use viem's isAddress with strict: false to allow both checksummed and non-checksummed addresses
28
+ if (!(0, viem_1.isAddress)(address, { strict: false })) {
29
+ const param = paramName ? ` for ${paramName}` : '';
30
+ throw new Error(`Invalid address${param}: ${address}. Expected 0x followed by 40 hex characters`);
31
+ }
32
+ return true;
33
+ }
34
+ //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":";;AAmBA,0CAeC;AAlCD,+BAAgC;AAEhC;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,eAAe,CAAC,OAAe,EAAE,SAAkB;IACjE,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QAClD,MAAM,IAAI,KAAK,CAAC,UAAU,KAAK,0BAA0B,OAAO,OAAO,EAAE,CAAC,CAAA;IAC5E,CAAC;IAED,kGAAkG;IAClG,IAAI,CAAC,IAAA,gBAAS,EAAC,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QAClD,MAAM,IAAI,KAAK,CACb,kBAAkB,KAAK,KAAK,OAAO,6CAA6C,CACjF,CAAA;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC"}