@1delta/bridge-configs 0.1.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 (210) hide show
  1. package/LICENSE +674 -0
  2. package/dist/configs/across/config.d.ts +4 -0
  3. package/dist/configs/across/config.d.ts.map +1 -0
  4. package/dist/configs/across/config.js +317 -0
  5. package/dist/configs/axelar/abis/AxelarGasService.d.ts +103 -0
  6. package/dist/configs/axelar/abis/AxelarGasService.d.ts.map +1 -0
  7. package/dist/configs/axelar/abis/AxelarGasService.js +1073 -0
  8. package/dist/configs/axelar/abis/AxelarGateway.d.ts +51 -0
  9. package/dist/configs/axelar/abis/AxelarGateway.d.ts.map +1 -0
  10. package/dist/configs/axelar/abis/AxelarGateway.js +753 -0
  11. package/dist/configs/axelar/abis/SquidMulticall.d.ts +47 -0
  12. package/dist/configs/axelar/abis/SquidMulticall.d.ts.map +1 -0
  13. package/dist/configs/axelar/abis/SquidMulticall.js +104 -0
  14. package/dist/configs/axelar/abis/SquidRouter.d.ts +82 -0
  15. package/dist/configs/axelar/abis/SquidRouter.d.ts.map +1 -0
  16. package/dist/configs/axelar/abis/SquidRouter.js +837 -0
  17. package/dist/configs/axelar/calldata/buildTx.d.ts +3 -0
  18. package/dist/configs/axelar/calldata/buildTx.d.ts.map +1 -0
  19. package/dist/configs/axelar/calldata/buildTx.js +29 -0
  20. package/dist/configs/axelar/calldata/index.d.ts +3 -0
  21. package/dist/configs/axelar/calldata/index.d.ts.map +1 -0
  22. package/dist/configs/axelar/calldata/index.js +2 -0
  23. package/dist/configs/axelar/calldata/squid/createSquidMulticallPayload.d.ts +16 -0
  24. package/dist/configs/axelar/calldata/squid/createSquidMulticallPayload.d.ts.map +1 -0
  25. package/dist/configs/axelar/calldata/squid/createSquidMulticallPayload.js +76 -0
  26. package/dist/configs/axelar/calldata/squid/types.d.ts +15 -0
  27. package/dist/configs/axelar/calldata/squid/types.d.ts.map +1 -0
  28. package/dist/configs/axelar/calldata/squid/types.js +7 -0
  29. package/dist/configs/axelar/calldata/types.d.ts +18 -0
  30. package/dist/configs/axelar/calldata/types.d.ts.map +1 -0
  31. package/dist/configs/axelar/calldata/types.js +1 -0
  32. package/dist/configs/axelar/config.d.ts +4 -0
  33. package/dist/configs/axelar/config.d.ts.map +1 -0
  34. package/dist/configs/axelar/config.js +99 -0
  35. package/dist/configs/axelar/data/axelarConfig/index.d.ts +3 -0
  36. package/dist/configs/axelar/data/axelarConfig/index.d.ts.map +1 -0
  37. package/dist/configs/axelar/data/axelarConfig/index.js +33 -0
  38. package/dist/configs/axelar/data/axelarConfig/types.d.ts +181 -0
  39. package/dist/configs/axelar/data/axelarConfig/types.d.ts.map +1 -0
  40. package/dist/configs/axelar/data/axelarConfig/types.js +1 -0
  41. package/dist/configs/axelar/data/squidChains/index.d.ts +6 -0
  42. package/dist/configs/axelar/data/squidChains/index.d.ts.map +1 -0
  43. package/dist/configs/axelar/data/squidChains/index.js +61 -0
  44. package/dist/configs/axelar/data/squidChains/types.d.ts +23 -0
  45. package/dist/configs/axelar/data/squidChains/types.d.ts.map +1 -0
  46. package/dist/configs/axelar/data/squidChains/types.js +1 -0
  47. package/dist/configs/axelar/errors.d.ts +15 -0
  48. package/dist/configs/axelar/errors.d.ts.map +1 -0
  49. package/dist/configs/axelar/errors.js +8 -0
  50. package/dist/configs/axelar/gasEstimation/index.d.ts +7 -0
  51. package/dist/configs/axelar/gasEstimation/index.d.ts.map +1 -0
  52. package/dist/configs/axelar/gasEstimation/index.js +38 -0
  53. package/dist/configs/axelar/gasEstimation/types.d.ts +23 -0
  54. package/dist/configs/axelar/gasEstimation/types.d.ts.map +1 -0
  55. package/dist/configs/axelar/gasEstimation/types.js +1 -0
  56. package/dist/configs/axelar/route/fetchAxelarRoute.d.ts +3 -0
  57. package/dist/configs/axelar/route/fetchAxelarRoute.d.ts.map +1 -0
  58. package/dist/configs/axelar/route/fetchAxelarRoute.js +50 -0
  59. package/dist/configs/axelar/route/index.d.ts +3 -0
  60. package/dist/configs/axelar/route/index.d.ts.map +1 -0
  61. package/dist/configs/axelar/route/index.js +2 -0
  62. package/dist/configs/axelar/route/tokenIdentifier.d.ts +5 -0
  63. package/dist/configs/axelar/route/tokenIdentifier.d.ts.map +1 -0
  64. package/dist/configs/axelar/route/tokenIdentifier.js +32 -0
  65. package/dist/configs/axelar/route/types.d.ts +5 -0
  66. package/dist/configs/axelar/route/types.d.ts.map +1 -0
  67. package/dist/configs/axelar/route/types.js +1 -0
  68. package/dist/configs/butter/config.d.ts +9 -0
  69. package/dist/configs/butter/config.d.ts.map +1 -0
  70. package/dist/configs/butter/config.js +207 -0
  71. package/dist/configs/cowswap/config.d.ts +4 -0
  72. package/dist/configs/cowswap/config.d.ts.map +1 -0
  73. package/dist/configs/cowswap/config.js +106 -0
  74. package/dist/configs/cowswap/errors.d.ts +19 -0
  75. package/dist/configs/cowswap/errors.d.ts.map +1 -0
  76. package/dist/configs/cowswap/errors.js +12 -0
  77. package/dist/configs/cowswap/swap/quote.d.ts +5 -0
  78. package/dist/configs/cowswap/swap/quote.d.ts.map +1 -0
  79. package/dist/configs/cowswap/swap/quote.js +28 -0
  80. package/dist/configs/cowswap/swap/route.d.ts +5 -0
  81. package/dist/configs/cowswap/swap/route.d.ts.map +1 -0
  82. package/dist/configs/cowswap/swap/route.js +61 -0
  83. package/dist/configs/cowswap/track/index.d.ts +6 -0
  84. package/dist/configs/cowswap/track/index.d.ts.map +1 -0
  85. package/dist/configs/cowswap/track/index.js +27 -0
  86. package/dist/configs/cowswap/utils/getCowSwapSlippage.d.ts +4 -0
  87. package/dist/configs/cowswap/utils/getCowSwapSlippage.d.ts.map +1 -0
  88. package/dist/configs/cowswap/utils/getCowSwapSlippage.js +16 -0
  89. package/dist/configs/cowswap/utils/toSupportedChainId.d.ts +3 -0
  90. package/dist/configs/cowswap/utils/toSupportedChainId.d.ts.map +1 -0
  91. package/dist/configs/cowswap/utils/toSupportedChainId.js +11 -0
  92. package/dist/configs/crosscurve/config.d.ts +4 -0
  93. package/dist/configs/crosscurve/config.d.ts.map +1 -0
  94. package/dist/configs/crosscurve/config.js +185 -0
  95. package/dist/configs/gas-zip/chains/fetch.d.ts +10 -0
  96. package/dist/configs/gas-zip/chains/fetch.d.ts.map +1 -0
  97. package/dist/configs/gas-zip/chains/fetch.js +29 -0
  98. package/dist/configs/gas-zip/chains/types.d.ts +25 -0
  99. package/dist/configs/gas-zip/chains/types.d.ts.map +1 -0
  100. package/dist/configs/gas-zip/chains/types.js +1 -0
  101. package/dist/configs/gas-zip/config.d.ts +4 -0
  102. package/dist/configs/gas-zip/config.d.ts.map +1 -0
  103. package/dist/configs/gas-zip/config.js +121 -0
  104. package/dist/configs/index.d.ts +2 -0
  105. package/dist/configs/index.d.ts.map +1 -0
  106. package/dist/configs/index.js +41 -0
  107. package/dist/configs/layerswap/LayerswapNetworks.json +3656 -0
  108. package/dist/configs/layerswap/config.d.ts +4 -0
  109. package/dist/configs/layerswap/config.d.ts.map +1 -0
  110. package/dist/configs/layerswap/config.js +285 -0
  111. package/dist/configs/lifi/config.d.ts +4 -0
  112. package/dist/configs/lifi/config.d.ts.map +1 -0
  113. package/dist/configs/lifi/config.js +104 -0
  114. package/dist/configs/mayan/calldata/index.d.ts +14 -0
  115. package/dist/configs/mayan/calldata/index.d.ts.map +1 -0
  116. package/dist/configs/mayan/calldata/index.js +41 -0
  117. package/dist/configs/mayan/config.d.ts +4 -0
  118. package/dist/configs/mayan/config.d.ts.map +1 -0
  119. package/dist/configs/mayan/config.js +222 -0
  120. package/dist/configs/odos/config.d.ts +8 -0
  121. package/dist/configs/odos/config.d.ts.map +1 -0
  122. package/dist/configs/odos/config.js +127 -0
  123. package/dist/configs/orbiter/abis/ERC20.d.ts +172 -0
  124. package/dist/configs/orbiter/abis/ERC20.d.ts.map +1 -0
  125. package/dist/configs/orbiter/abis/ERC20.js +224 -0
  126. package/dist/configs/orbiter/abis/OrbiterRouterEVMV3.d.ts +85 -0
  127. package/dist/configs/orbiter/abis/OrbiterRouterEVMV3.d.ts.map +1 -0
  128. package/dist/configs/orbiter/abis/OrbiterRouterEVMV3.js +83 -0
  129. package/dist/configs/orbiter/calldata/index.d.ts +32 -0
  130. package/dist/configs/orbiter/calldata/index.d.ts.map +1 -0
  131. package/dist/configs/orbiter/calldata/index.js +59 -0
  132. package/dist/configs/orbiter/config.d.ts +4 -0
  133. package/dist/configs/orbiter/config.d.ts.map +1 -0
  134. package/dist/configs/orbiter/config.js +178 -0
  135. package/dist/configs/router/config.d.ts +4 -0
  136. package/dist/configs/router/config.d.ts.map +1 -0
  137. package/dist/configs/router/config.js +125 -0
  138. package/dist/configs/squid-v1/config.d.ts +4 -0
  139. package/dist/configs/squid-v1/config.d.ts.map +1 -0
  140. package/dist/configs/squid-v1/config.js +133 -0
  141. package/dist/configs/squid-v2/config.d.ts +4 -0
  142. package/dist/configs/squid-v2/config.d.ts.map +1 -0
  143. package/dist/configs/squid-v2/config.js +146 -0
  144. package/dist/configs/squid-v2/constants.d.ts +2 -0
  145. package/dist/configs/squid-v2/constants.d.ts.map +1 -0
  146. package/dist/configs/squid-v2/constants.js +1 -0
  147. package/dist/configs/stargate/abis/StargatePool.d.ts +41 -0
  148. package/dist/configs/stargate/abis/StargatePool.d.ts.map +1 -0
  149. package/dist/configs/stargate/abis/StargatePool.js +318 -0
  150. package/dist/configs/stargate/abis/TokenMessaging.d.ts +16 -0
  151. package/dist/configs/stargate/abis/TokenMessaging.d.ts.map +1 -0
  152. package/dist/configs/stargate/abis/TokenMessaging.js +21 -0
  153. package/dist/configs/stargate/calldata/constants.d.ts +249 -0
  154. package/dist/configs/stargate/calldata/constants.d.ts.map +1 -0
  155. package/dist/configs/stargate/calldata/constants.js +273 -0
  156. package/dist/configs/stargate/calldata/index.d.ts +6 -0
  157. package/dist/configs/stargate/calldata/index.d.ts.map +1 -0
  158. package/dist/configs/stargate/calldata/index.js +127 -0
  159. package/dist/configs/stargate/calldata/types.d.ts +51 -0
  160. package/dist/configs/stargate/calldata/types.d.ts.map +1 -0
  161. package/dist/configs/stargate/calldata/types.js +10 -0
  162. package/dist/configs/stargate/common/config.d.ts +88 -0
  163. package/dist/configs/stargate/common/config.d.ts.map +1 -0
  164. package/dist/configs/stargate/common/config.js +93 -0
  165. package/dist/configs/stargate/common/constants.d.ts +5 -0
  166. package/dist/configs/stargate/common/constants.d.ts.map +1 -0
  167. package/dist/configs/stargate/common/constants.js +7 -0
  168. package/dist/configs/stargate/common/index.d.ts +3 -0
  169. package/dist/configs/stargate/common/index.d.ts.map +1 -0
  170. package/dist/configs/stargate/common/index.js +2 -0
  171. package/dist/configs/stargate/configs/bus/config.d.ts +4 -0
  172. package/dist/configs/stargate/configs/bus/config.d.ts.map +1 -0
  173. package/dist/configs/stargate/configs/bus/config.js +41 -0
  174. package/dist/configs/stargate/configs/taxi/config.d.ts +4 -0
  175. package/dist/configs/stargate/configs/taxi/config.d.ts.map +1 -0
  176. package/dist/configs/stargate/configs/taxi/config.js +58 -0
  177. package/dist/configs/stargate/types/index.d.ts +12 -0
  178. package/dist/configs/stargate/types/index.d.ts.map +1 -0
  179. package/dist/configs/stargate/types/index.js +15 -0
  180. package/dist/configs/symbiosis/config.d.ts +4 -0
  181. package/dist/configs/symbiosis/config.d.ts.map +1 -0
  182. package/dist/configs/symbiosis/config.js +119 -0
  183. package/dist/configs/utils/index.d.ts +2 -0
  184. package/dist/configs/utils/index.d.ts.map +1 -0
  185. package/dist/configs/utils/index.js +3 -0
  186. package/dist/configs/xy/config.d.ts +4 -0
  187. package/dist/configs/xy/config.d.ts.map +1 -0
  188. package/dist/configs/xy/config.js +176 -0
  189. package/dist/configs/zenlink/calldata/aggregationRouterV2ABI.d.ts +49 -0
  190. package/dist/configs/zenlink/calldata/aggregationRouterV2ABI.d.ts.map +1 -0
  191. package/dist/configs/zenlink/calldata/aggregationRouterV2ABI.js +63 -0
  192. package/dist/configs/zenlink/calldata/index.d.ts +18 -0
  193. package/dist/configs/zenlink/calldata/index.d.ts.map +1 -0
  194. package/dist/configs/zenlink/calldata/index.js +35 -0
  195. package/dist/configs/zenlink/config.d.ts +4 -0
  196. package/dist/configs/zenlink/config.d.ts.map +1 -0
  197. package/dist/configs/zenlink/config.js +109 -0
  198. package/dist/configs/zenlink/errors.d.ts +15 -0
  199. package/dist/configs/zenlink/errors.d.ts.map +1 -0
  200. package/dist/configs/zenlink/errors.js +8 -0
  201. package/dist/index.d.ts +8 -0
  202. package/dist/index.d.ts.map +1 -0
  203. package/dist/index.js +7 -0
  204. package/dist/types/index.d.ts +31 -0
  205. package/dist/types/index.d.ts.map +1 -0
  206. package/dist/types/index.js +52 -0
  207. package/dist/walletClient.d.ts +4433 -0
  208. package/dist/walletClient.d.ts.map +1 -0
  209. package/dist/walletClient.js +7 -0
  210. package/package.json +27 -0
@@ -0,0 +1,273 @@
1
+ import { SupportedChainId } from '@1delta/lib-utils';
2
+ import { NATIVE_PLACEHOLDER } from '../common/constants';
3
+ /** Auto generated in registry */
4
+ export const STARGATE_ASSET_TO_POOL = {
5
+ '1': {
6
+ '0x0000000000000000000000000000000000000000': '0x77b2043768d28e9c9ab44e1abfc95944bce57931',
7
+ '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48': '0xc026395860db2d07ee33e05fe50ed7bd583189c7',
8
+ '0xdac17f958d2ee523a2206206994597c13d831ec7': '0x933597a323eb81cae705c5bc29985172fd5a3973',
9
+ '0xd5f7838f5c461feff7fe49ea5ebaf7728bb0adfa': '0x268ca24daeff1fac2ed883c598200ccbb79e931d',
10
+ },
11
+ '10': {
12
+ '0x0000000000000000000000000000000000000000': '0xe8cdf27acd73a434d661c84887215f7598e7d0d3',
13
+ '0x0b2c639c533813f4aa9d7837caf62653d097ff85': '0xce8cca271ebc0533920c83d39f417ed6a0abb7d0',
14
+ '0x94b008aa00579c1307b0ef2c499ad98a8ce58e58': '0x19cfce47ed54a88614648dc3f19a5980097007dd',
15
+ },
16
+ '14': {
17
+ '0x1502fa4be69d526124d453619276faccab275d3d': '0x8e8539e4ccd69123c623a106773f2b0cbbc58746',
18
+ '0xfbda5f676cb37624f28265a144a48b0d6e87d3b6': '0x77c71633c34c3784ede189d74223122422492a0f',
19
+ '0x0b38e83b86d491735feaa0a791f65c2b99535396': '0x1c10cc06dc6d35970d1d53b2a23c76ef370d4135',
20
+ },
21
+ '30': {
22
+ '0x2f6f07cdcf3588944bf4c42ac74ff24bf56e7590': '0x45f1a95a4d3f3836523f5c83673c797f4d4d263b',
23
+ '0x74c9f2b00581f1b11aa7ff05aa9f608b7389de67': '0xaf54be5b6eec24d6bfacf1cce4eaf680a8239398',
24
+ '0xaf368c91793cb22739386dfcbbb2f1a9e4bcbebf': '0xaf5191b0de278c7286d6c7cc6ab6bb8a73ba2cd6',
25
+ },
26
+ '40': {
27
+ '0xbab93b7ad7fe8692a878b95a8e689423437cc500': '0xa272ffe20cffe769cdfc4b63088dcd2c82a2d8f9',
28
+ '0xf1815bd50389c46847f0bda824ec8da914045d14': '0x2086f755a6d9254045c257ea3d382ef854849b0f',
29
+ '0x674843c06ff83502ddb4d37c2e09c01cda38cbc8': '0x3a1293bdb83bbbdd5ebf4fac96605ad2021bbc0f',
30
+ },
31
+ '56': {
32
+ '0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d': '0x962bd449e630b0d928f308ce63f1a21f02576057',
33
+ '0x55d398326f99059ff775485246999027b3197955': '0x138eb30f73bc423c6455c53df6d89cb01d9ebc63',
34
+ },
35
+ '100': {
36
+ '0x6a023ccd1ff6f2045c3309768ead9e68f978f6e1': '0xe9aba835f813ca05e50a6c0ce65d0d74390f7de7',
37
+ '0x2a22f9c3b484c3629090feed35f17ff8f88f76f0': '0xb1eead6959cb5bb9b20417d6689922523b2b86c3',
38
+ },
39
+ '122': {
40
+ '0x2f6f07cdcf3588944bf4c42ac74ff24bf56e7590': '0x45f1a95a4d3f3836523f5c83673c797f4d4d263b',
41
+ '0xc6bc407706b7140ee8eef2f86f9504651b63e7f9': '0xaf54be5b6eec24d6bfacf1cce4eaf680a8239398',
42
+ '0x3695dd1d1d43b794c0b13eb8be8419eb3ac22bf7': '0xaf5191b0de278c7286d6c7cc6ab6bb8a73ba2cd6',
43
+ },
44
+ '137': {
45
+ '0x3c499c542cef5e3811e1192ce70d8cc03d5c3359': '0x9aa02d4fae7f58b8e8f34c66e756cc734dac7fe4',
46
+ '0xc2132d05d31c914a87c6611c10748aeb04b58e8f': '0xd47b03ee6d86cf251ee7860fb2acf9f91b9fd4d7',
47
+ },
48
+ '146': {
49
+ '0x29219dd400f2bf60e5a23d13be72b486d4038894': '0xa272ffe20cffe769cdfc4b63088dcd2c82a2d8f9',
50
+ },
51
+ '747': {
52
+ '0x2f6f07cdcf3588944bf4c42ac74ff24bf56e7590': '0x45f1a95a4d3f3836523f5c83673c797f4d4d263b',
53
+ '0xf1815bd50389c46847f0bda824ec8da914045d14': '0xaf54be5b6eec24d6bfacf1cce4eaf680a8239398',
54
+ '0x674843c06ff83502ddb4d37c2e09c01cda38cbc8': '0xaf5191b0de278c7286d6c7cc6ab6bb8a73ba2cd6',
55
+ },
56
+ '1088': {
57
+ '0x420000000000000000000000000000000000000a': '0x36ed193dc7160d3858ec250e69d12b03ca087d08',
58
+ '0xbb06dca3ae6887fabf931640f67cab3e3a16f4dc': '0x4dcbfc0249e8d5032f89d6461218a9d2efff5125',
59
+ },
60
+ '1116': {
61
+ '0xa4151b2b3e269645181dccf2d426ce75fcbdeca9': '0x2f6f07cdcf3588944bf4c42ac74ff24bf56e7590',
62
+ '0x900101d06a7426441ae63e9ab3b9b0f63be145f1': '0x45f1a95a4d3f3836523f5c83673c797f4d4d263b',
63
+ },
64
+ '1514': {
65
+ '0xbab93b7ad7fe8692a878b95a8e689423437cc500': '0xa272ffe20cffe769cdfc4b63088dcd2c82a2d8f9',
66
+ '0xf1815bd50389c46847f0bda824ec8da914045d14': '0x2086f755a6d9254045c257ea3d382ef854849b0f',
67
+ '0x674843c06ff83502ddb4d37c2e09c01cda38cbc8': '0x3a1293bdb83bbbdd5ebf4fac96605ad2021bbc0f',
68
+ },
69
+ '1625': {
70
+ '0xf6f832466cd6c21967e0d954109403f36bc8ceaa': '0x17d65bf79e77b6ab21d8a0afed3bc8657d8ee0b2',
71
+ '0xfbda5f676cb37624f28265a144a48b0d6e87d3b6': '0xc1b8045a6ef2934cf0f78b0dbd489969fa9be7e4',
72
+ '0x816e810f9f787d669fb71932deabf6c83781cd48': '0x0b38e83b86d491735feaa0a791f65c2b99535396',
73
+ },
74
+ '1868': {
75
+ '0x0000000000000000000000000000000000000000': '0x2f6f07cdcf3588944bf4c42ac74ff24bf56e7590',
76
+ '0xba9986d2381edf1da03b0b9c1f8b00dc4aacc369': '0x45f1a95a4d3f3836523f5c83673c797f4d4d263b',
77
+ },
78
+ '1890': {
79
+ '0xbcf8c1b03bbdda88d579330bdf236b58f8bb2cfd': '0x8ee21165ecb7562ba716c9549c1de751282b9b33',
80
+ '0x808d7c71ad2ba3fa531b068a2417c63106bc0949': '0x06d538690af257da524f25d0cd52fd85b1c2173e',
81
+ '0x0000000000000000000000000000000000000000': '0x8731d54e9d02c286767d56ac03e8037c07e01e98',
82
+ },
83
+ '2222': {
84
+ '0x919c1c267bc06a7039e03fcc2ef738525769109c': '0x41a5b0470d96656fb3e8f68a218b39adbca3420b',
85
+ },
86
+ '2345': {
87
+ '0x3a1293bdb83bbbdd5ebf4fac96605ad2021bbc0f': '0x88853d410299bcbfe5fcc9eef93c03115e908279',
88
+ '0x3022b87ac063de95b1570f46f5e470f8b53112d8': '0xbba60da06c2c5424f03f7434542280fcad453d10',
89
+ '0xe1ad845d93853fff44990ae0dcecd8575293681e': '0x549943e04f40284185054145c6e4e9568c1d3241',
90
+ },
91
+ '2741': {
92
+ '0x84a71ccd554cc1b02749b35d22f684cc8ec987e1': '0x91a5fe991ccb876d22847967ced24dcd7a426e0e',
93
+ '0x0709f39376deee2a2dfc94a58edeb2eb9df012bd': '0x943c484278b8be05d119dfc73cfaa4c9d8f11a76',
94
+ '0x0000000000000000000000000000000000000000': '0x221f0e1280ec657503ca55c708105f1e1529527d',
95
+ },
96
+ '3338': {
97
+ '0x6694340fc020c5e6b96567843da2df01b2ce1eb6': '0xe7ec689f432f29383f217e36e680b5c855051f25',
98
+ '0xbba60da06c2c5424f03f7434542280fcad453d10': '0x5c1a97c144a97e9b370f833a06c70ca8f2f30de5',
99
+ '0xf4d9235269a96aadafc9adae454a0618ebe37949': '0x07cd5a2702394e512aaae54f7a250ea0576e5e8c',
100
+ },
101
+ '5000': {
102
+ '0xdeaddeaddeaddeaddeaddeaddeaddeaddead1111': '0x4c1d3fc3fc3c177c3b633427c2f769276c547463',
103
+ '0x09bc4e0d864854c6afb6eb9a9cdf58ac190d0df9': '0xac290ad4e0c891fdc295ca4f0a6214cf6dc6acdc',
104
+ '0x201eba5cc46d216ce6dc03f6a759e8e766e956ae': '0xb715b85682b731db9d5063187c450095c91c57fc',
105
+ '0xcda86a272531e8640cd7f1a92c01839911b90bb0': '0xf7628d84a2bbd9bb9c8e686ac95bb5d55169f3f1',
106
+ },
107
+ '8217': {
108
+ '0x55acee547df909cf844e32dd66ee55a6f81dc71b': '0xbb4957e44401a31ed81cab33539d9e8993fa13ce',
109
+ '0xe2053bcf56d2030d2470fb454574237cf9ee3d4b': '0x01a7c805cc47abdb254cd8aad29de5e447f59224',
110
+ '0x9025095263d1e548dc890a7589a4c78038ac40ab': '0x8619ba1b324e099cb2227060c4bc5bdee14456c6',
111
+ },
112
+ '8453': {
113
+ '0x0000000000000000000000000000000000000000': '0xdc181bd607330aeebef6ea62e03e5e1fb4b6f7c7',
114
+ '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913': '0x27a16dc786820b16e5c9028b75b99f6f604b5d26',
115
+ },
116
+ '8822': {
117
+ '0x160345fc359604fc6e70e3c5facbde5f7a9342d8': '0x9c2dc7377717603eb92b2655c5f2e7997a4945bd',
118
+ '0xfbda5f676cb37624f28265a144a48b0d6e87d3b6': '0x8e8539e4ccd69123c623a106773f2b0cbbc58746',
119
+ '0xc1b8045a6ef2934cf0f78b0dbd489969fa9be7e4': '0x77c71633c34c3784ede189d74223122422492a0f',
120
+ },
121
+ '33139': {
122
+ '0xf4d9235269a96aadafc9adae454a0618ebe37949': '0x28e0f0eed8d6a6a96033feee8b2d7f32eb5ccc48',
123
+ '0xf1815bd50389c46847f0bda824ec8da914045d14': '0x2086f755a6d9254045c257ea3d382ef854849b0f',
124
+ '0x674843c06ff83502ddb4d37c2e09c01cda38cbc8': '0xeb8d955d8ae221e5b502851ddd78e6c4498db4f6',
125
+ },
126
+ '42161': {
127
+ '0x0000000000000000000000000000000000000000': '0xa45b5130f36cdca45667738e2a258ab09f4a5f7f',
128
+ '0xaf88d065e77c8cc2239327c5edb3a432268e5831': '0xe8cdf27acd73a434d661c84887215f7598e7d0d3',
129
+ '0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9': '0xce8cca271ebc0533920c83d39f417ed6a0abb7d0',
130
+ },
131
+ '43111': {
132
+ '0xad11a8beb98bbf61dbb1aa0f6d6f2ecd87b35afa': '0x45f1a95a4d3f3836523f5c83673c797f4d4d263b',
133
+ '0xbb0d083fb1be0a9f6157ec484b6c79e0a4e31c2e': '0xaf54be5b6eec24d6bfacf1cce4eaf680a8239398',
134
+ '0x0000000000000000000000000000000000000000': '0x2f6f07cdcf3588944bf4c42ac74ff24bf56e7590',
135
+ },
136
+ '43114': {
137
+ '0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e': '0x5634c4a5fed09819e3c46d86a965dd9447d86e47',
138
+ '0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7': '0x12dc9256acc9895b076f6638d628382881e62cee',
139
+ },
140
+ '55244': {
141
+ '0x6c030c5cc283f791b26816f325b9c632d964f8a1': '0x8ee21165ecb7562ba716c9549c1de751282b9b33',
142
+ },
143
+ '57073': {
144
+ '0xf1815bd50389c46847f0bda824ec8da914045d14': '0x2f6f07cdcf3588944bf4c42ac74ff24bf56e7590',
145
+ },
146
+ '59144': {
147
+ '0x0000000000000000000000000000000000000000': '0x81f6138153d473e8c5ecebd3dc8cd4903506b075',
148
+ },
149
+ '80094': {
150
+ '0x2f6f07cdcf3588944bf4c42ac74ff24bf56e7590': '0x45f1a95a4d3f3836523f5c83673c797f4d4d263b',
151
+ },
152
+ '98865': {
153
+ '0x3938a812c54304feffd266c7e2e70b48f9475ad6': '0x8943cb63eef1b3dba5f455bfb704477436e31c1a',
154
+ '0xa849026cda282eeebc3c39afcbe87a69424f16b4': '0xe67f75484c69d4a597f6e50ea6f5bb929e3a3d0e',
155
+ },
156
+ '167000': {
157
+ '0x19e26b0638bf63aa9fa4d14c6baf8d52ebe86c5c': '0x77c71633c34c3784ede189d74223122422492a0f',
158
+ '0x9c2dc7377717603eb92b2655c5f2e7997a4945bd': '0x1c10cc06dc6d35970d1d53b2a23c76ef370d4135',
159
+ },
160
+ '534352': {
161
+ '0x0000000000000000000000000000000000000000': '0xc2b638cb5042c1b3c5d5c969361fb50569840583',
162
+ '0x06efdbff2a14a7c8e15944d1f4a48f9f95f663a4': '0x3fc69cc4a842838bcdc9499178740226062b14e4',
163
+ },
164
+ '1313161554': {
165
+ '0x368ebb46aca6b8d0787c96b2b20bd3cc3f2c45f7': '0x81f6138153d473e8c5ecebd3dc8cd4903506b075',
166
+ },
167
+ };
168
+ export const TOKEN_MESSAGING_CONTRACT = {
169
+ '1': '0x6d6620efa72948c5f68a3c8646d58c00d3f4a980',
170
+ '10': '0xf1fcb4cbd57b67d683972a59b6a7b1e2e8bf27e6',
171
+ '14': '0x45d417612e177672958dc0537c45a8f8d754ac2e',
172
+ '30': '0x45a01e4e04f14f7a4a6702c74187c5f6222033cd',
173
+ '40': '0x88853d410299bcbfe5fcc9eef93c03115e908279',
174
+ '56': '0x6e3d884c96d640526f273c61dfcf08915ebd7e2b',
175
+ '100': '0xaf368c91793cb22739386dfcbbb2f1a9e4bcbebf',
176
+ '122': '0x45a01e4e04f14f7a4a6702c74187c5f6222033cd',
177
+ '137': '0x6ce9bf8cdab780416ad1fd87b318a077d2f50eac',
178
+ '146': '0x2086f755a6d9254045c257ea3d382ef854849b0f',
179
+ '747': '0x45a01e4e04f14f7a4a6702c74187c5f6222033cd',
180
+ '1088': '0xcbe78230cca58b9ef4c3c5d1bc0d7e4b3206588a',
181
+ '1116': '0xaf54be5b6eec24d6bfacf1cce4eaf680a8239398',
182
+ '1514': '0x88853d410299bcbfe5fcc9eef93c03115e908279',
183
+ '1625': '0x9c2dc7377717603eb92b2655c5f2e7997a4945bd',
184
+ '1868': '0xaf54be5b6eec24d6bfacf1cce4eaf680a8239398',
185
+ '1890': '0x693604e757ac7e2c4a8263594a18d69c35562341',
186
+ '2222': '0x6b73d3cbbb278ce2e8698e983aeccdd94dc4594b',
187
+ '2345': '0xb0b2391a32e066fdf354ef7f4199300f920789f0',
188
+ '2741': '0x183d6b82680189bb4db826f739cdc9527d467b25',
189
+ '3338': '0x53bf833a5d6c4dda888f69c22c88c9f356a41614',
190
+ '5000': '0x41b491285a4f888f9f636cec8a363ab9770a0aef',
191
+ '8217': '0x16f3f98d82d965988e6853681fd578f4d719a1c0',
192
+ '8453': '0x5634c4a5fed09819e3c46d86a965dd9447d86e47',
193
+ '8822': '0x1c10cc06dc6d35970d1d53b2a23c76ef370d4135',
194
+ '33139': '0xbe574b6219c6d985d08712e90c21a88fd55f1ae8',
195
+ '42161': '0x19cfce47ed54a88614648dc3f19a5980097007dd',
196
+ '43111': '0xaf5191b0de278c7286d6c7cc6ab6bb8a73ba2cd6',
197
+ '43114': '0x17e450be3ba9557f2378e20d64ad417e59ef9a34',
198
+ '55244': '0x06eb48763f117c7be887296cdcdfad2e4092739c',
199
+ '57073': '0x45f1a95a4d3f3836523f5c83673c797f4d4d263b',
200
+ '59144': '0x5f688f563dc16590e570f97b542fa87931af2fed',
201
+ '80094': '0xaf5191b0de278c7286d6c7cc6ab6bb8a73ba2cd6',
202
+ '98865': '0x45f1a95a4d3f3836523f5c83673c797f4d4d263b',
203
+ '167000': '0x45d417612e177672958dc0537c45a8f8d754ac2e',
204
+ '534352': '0x4e422b0acb2bd7e3ac70b5c0e5eb806e86a94038',
205
+ '1313161554': '0x5f688f563dc16590e570f97b542fa87931af2fed',
206
+ };
207
+ export const STARGATE_ENDPOINT_ID = {
208
+ '1': 30101,
209
+ '10': 30111,
210
+ '14': 30295,
211
+ '30': 30333,
212
+ '40': 30199,
213
+ '56': 30102,
214
+ '100': 30145,
215
+ '122': 30138,
216
+ '137': 30109,
217
+ '146': 30332,
218
+ '747': 30336,
219
+ '1088': 30151,
220
+ '1116': 30153,
221
+ '1514': 30364,
222
+ '1625': 30294,
223
+ '1868': 30340,
224
+ '1890': 30309,
225
+ '2222': 30177,
226
+ '2345': 30361,
227
+ '2741': 30324,
228
+ '3338': 30302,
229
+ '5000': 30181,
230
+ '8217': 30150,
231
+ '8453': 30184,
232
+ '8822': 30284,
233
+ '33139': 30312,
234
+ '42161': 30110,
235
+ '43111': 30329,
236
+ '43114': 30106,
237
+ '55244': 30327,
238
+ '57073': 30339,
239
+ '59144': 30183,
240
+ '80094': 30362,
241
+ '98865': 30318,
242
+ '167000': 30290,
243
+ '534352': 30214,
244
+ '1313161554': 30211,
245
+ };
246
+ /** Auto generated end */
247
+ export const getStargateContract = (chainId, token) => {
248
+ let _token = token;
249
+ if (token === NATIVE_PLACEHOLDER)
250
+ _token = '0x0000000000000000000000000000000000000000';
251
+ return STARGATE_ASSET_TO_POOL?.[chainId]?.[_token];
252
+ };
253
+ export const STARGATE_CHAIN_NAME = {
254
+ [SupportedChainId.ETHEREUM_MAINNET]: 'ethereum',
255
+ [SupportedChainId.BNB_SMART_CHAIN_MAINNET]: 'bsc',
256
+ [SupportedChainId.AVALANCHE_C_CHAIN]: 'avalanche',
257
+ [SupportedChainId.POLYGON_MAINNET]: 'polygon',
258
+ [SupportedChainId.ARBITRUM_ONE]: 'arbitrum',
259
+ [SupportedChainId.OP_MAINNET]: 'optimism',
260
+ [SupportedChainId.METIS_ANDROMEDA_MAINNET]: 'metis',
261
+ [SupportedChainId.LINEA]: 'linea',
262
+ [SupportedChainId.MANTLE]: 'mantle',
263
+ [SupportedChainId.BASE]: 'base',
264
+ [SupportedChainId.KAVA]: 'kava',
265
+ [SupportedChainId.SCROLL]: 'scroll',
266
+ [SupportedChainId.AURORA_MAINNET]: 'aurora',
267
+ [SupportedChainId.CORE_BLOCKCHAIN_MAINNET]: 'core',
268
+ [SupportedChainId.SONIC_MAINNET]: 'sonic',
269
+ [SupportedChainId.GNOSIS]: 'gnosis',
270
+ [SupportedChainId.TAIKO_ALETHIA]: 'taiko',
271
+ [SupportedChainId.BERACHAIN]: 'bera',
272
+ [SupportedChainId.HEMI_NETWORK]: 'hemi',
273
+ };
@@ -0,0 +1,6 @@
1
+ import { EncodeBridgeCallsResult, EncodeBridgeTxParams } from './types';
2
+ export declare namespace StargateRouter {
3
+ function encodeBridgeTx({ fromChainId, toChainId, token, amount, receiver, fromTokenDecimals, toTokenDecimals, }: EncodeBridgeTxParams): Promise<EncodeBridgeCallsResult[]>;
4
+ function isValidPath(fromChainId: string, fromToken: string, toChainId: string, toToken: string): Promise<boolean>;
5
+ }
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/configs/stargate/calldata/index.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EAMrB,MAAM,SAAS,CAAA;AAEhB,yBAAiB,cAAc,CAAC;IAyE9B,SAAsB,cAAc,CAAC,EACnC,WAAW,EACX,SAAS,EACT,KAAK,EACL,MAAM,EACN,QAAQ,EACR,iBAAiB,EACjB,eAAe,GAChB,EAAE,oBAAoB,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,CA8C3D;IAED,SAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,CA6ClB;CAeF"}
@@ -0,0 +1,127 @@
1
+ import { multicallViem } from '@1delta/lib-utils';
2
+ import { encodeFunctionData, padHex, toHex } from 'viem';
3
+ import { STARGATE_POOL_ABI } from '../abis/StargatePool';
4
+ import { TOKEN_MESSAGING_ABI } from '../abis/TokenMessaging';
5
+ import { NATIVE_PLACEHOLDER } from '../common/constants';
6
+ import { TransportType } from '../types';
7
+ import { getStargateContract, STARGATE_ENDPOINT_ID, TOKEN_MESSAGING_CONTRACT, } from './constants';
8
+ import { StargateFunctions, TokenMessagingFunctions, } from './types';
9
+ export var StargateRouter;
10
+ (function (StargateRouter) {
11
+ const PAY_IN_LZ_TOKEN = false;
12
+ async function prepareBridgeCalls(chainId, stargateAddress, dstEid, amount, receiver, transportTypes, isNative) {
13
+ const sendParams = transportTypes.map((transportType) => ({
14
+ dstEid,
15
+ to: padHex(receiver, { size: 32 }),
16
+ amountLD: amount,
17
+ minAmountLD: amount,
18
+ extraOptions: '0x',
19
+ composeMsg: '0x',
20
+ oftCmd: transportType === TransportType.Bus ? toHex(1) : '0x',
21
+ }));
22
+ const quoteOFTCalls = sendParams.map((sendParam) => ({
23
+ address: stargateAddress,
24
+ name: StargateFunctions.QuoteOFT,
25
+ params: [sendParam],
26
+ }));
27
+ const quoteOFTResults = await multicallViem(chainId, STARGATE_POOL_ABI, quoteOFTCalls);
28
+ const receipts = quoteOFTResults.map((result) => result[2]);
29
+ const minAmounts = receipts.map((receipt) => receipt.amountReceivedLD);
30
+ const newSendParams = minAmounts.map((minAmount, index) => ({
31
+ ...sendParams[index],
32
+ minAmountLD: minAmount,
33
+ }));
34
+ const quoteSendCalls = newSendParams.map((sendParam) => ({
35
+ address: stargateAddress,
36
+ name: StargateFunctions.QuoteSend,
37
+ params: [sendParam, PAY_IN_LZ_TOKEN],
38
+ }));
39
+ const quoteSendResults = await multicallViem(chainId, STARGATE_POOL_ABI, quoteSendCalls);
40
+ const bridgeCalls = newSendParams.map((sendParam, i) => {
41
+ const transportType = transportTypes[i];
42
+ const messagingFee = quoteSendResults[i];
43
+ const valueToSend = isNative
44
+ ? messagingFee.nativeFee + sendParam.amountLD
45
+ : messagingFee.nativeFee;
46
+ return {
47
+ transportType,
48
+ sendParam,
49
+ messagingFee,
50
+ valueToSend,
51
+ };
52
+ });
53
+ return bridgeCalls;
54
+ }
55
+ async function encodeBridgeTx({ fromChainId, toChainId, token, amount, receiver, fromTokenDecimals, toTokenDecimals, }) {
56
+ const stargateAddress = getStargateContract(fromChainId, token);
57
+ const dstEid = STARGATE_ENDPOINT_ID[toChainId];
58
+ if (!stargateAddress)
59
+ throw new Error(`Stargate contract address unknown for chainId ${fromChainId} and token ${token}`);
60
+ if (!dstEid)
61
+ throw new Error(`Endpoint ID unknown for chainId ${toChainId}`);
62
+ const transportTypes = [TransportType.Taxi, TransportType.Bus];
63
+ const isNative = token === NATIVE_PLACEHOLDER;
64
+ const calls = await prepareBridgeCalls(fromChainId, stargateAddress, dstEid, amount, receiver, transportTypes, isNative);
65
+ const results = calls.map((call) => {
66
+ const to = stargateAddress;
67
+ const value = call.valueToSend.toString();
68
+ const data = encodeFunctionData({
69
+ abi: STARGATE_POOL_ABI,
70
+ functionName: StargateFunctions.SendToken,
71
+ args: [call.sendParam, call.messagingFee, receiver],
72
+ });
73
+ return {
74
+ transportType: call.transportType,
75
+ quote: adjustDecimals(call.sendParam.minAmountLD, fromTokenDecimals, toTokenDecimals),
76
+ destinationFee: call.messagingFee.nativeFee,
77
+ tx: { data, value, to },
78
+ dstEid,
79
+ };
80
+ });
81
+ return results;
82
+ }
83
+ StargateRouter.encodeBridgeTx = encodeBridgeTx;
84
+ async function isValidPath(fromChainId, fromToken, toChainId, toToken) {
85
+ const fromStargateAddress = getStargateContract(fromChainId, fromToken);
86
+ const toStargateAddress = getStargateContract(toChainId, toToken);
87
+ if (!fromStargateAddress)
88
+ throw new Error(`Stargate contract address unknown for ChainId ${fromChainId} and Token ${fromToken}`);
89
+ if (!toStargateAddress)
90
+ throw new Error(`Stargate contract address unknown for ChainId ${toChainId} and Token ${toToken}`);
91
+ const fromTokenMessagingAddress = TOKEN_MESSAGING_CONTRACT[fromChainId];
92
+ const toTokenMessagingAddress = TOKEN_MESSAGING_CONTRACT[toChainId];
93
+ if (!fromTokenMessagingAddress)
94
+ throw new Error(`Stargate Token Messaging contract address unknown for ChainId ${fromChainId}`);
95
+ if (!toTokenMessagingAddress)
96
+ throw new Error(`Stargate Token Messaging contract address unknown for ChainId ${toChainId}`);
97
+ const fromResult = await multicallViem(fromChainId, TOKEN_MESSAGING_ABI, [
98
+ {
99
+ address: fromTokenMessagingAddress,
100
+ name: TokenMessagingFunctions.AssetIds,
101
+ params: [fromStargateAddress],
102
+ },
103
+ ]);
104
+ const toResult = await multicallViem(toChainId, TOKEN_MESSAGING_ABI, [
105
+ {
106
+ address: toTokenMessagingAddress,
107
+ name: TokenMessagingFunctions.AssetIds,
108
+ params: [toStargateAddress],
109
+ },
110
+ ]);
111
+ const fromAssetId = Number(fromResult[0]);
112
+ const toAssetId = Number(toResult[0]);
113
+ return !isNaN(fromAssetId) && fromAssetId !== 0 && fromAssetId === toAssetId;
114
+ }
115
+ StargateRouter.isValidPath = isValidPath;
116
+ function adjustDecimals(amount, fromDecimals, toDecimals) {
117
+ if (fromDecimals > toDecimals) {
118
+ return amount / 10n ** BigInt(fromDecimals - toDecimals);
119
+ }
120
+ else if (fromDecimals < toDecimals) {
121
+ return amount * 10n ** BigInt(toDecimals - fromDecimals);
122
+ }
123
+ else {
124
+ return amount;
125
+ }
126
+ }
127
+ })(StargateRouter || (StargateRouter = {}));
@@ -0,0 +1,51 @@
1
+ import { TransactionData } from '@1delta/bridge-core';
2
+ import { TransportType } from '../types';
3
+ interface SendParam {
4
+ dstEid: number;
5
+ to: string;
6
+ amountLD: bigint;
7
+ minAmountLD: bigint;
8
+ extraOptions: string;
9
+ composeMsg: string;
10
+ oftCmd: string;
11
+ }
12
+ export interface EncodeBridgeTxParams {
13
+ fromChainId: string;
14
+ toChainId: string;
15
+ token: string;
16
+ amount: bigint;
17
+ receiver: string;
18
+ fromTokenDecimals: number;
19
+ toTokenDecimals: number;
20
+ }
21
+ export interface MessagingFee {
22
+ nativeFee: bigint;
23
+ zroFee: bigint;
24
+ }
25
+ export interface OFTReceipt {
26
+ amountReceivedLD: bigint;
27
+ composeMsg: string;
28
+ }
29
+ export interface PrepareBridgeCallsResult {
30
+ transportType: TransportType;
31
+ valueToSend: bigint;
32
+ sendParam: SendParam;
33
+ messagingFee: MessagingFee;
34
+ }
35
+ export interface EncodeBridgeCallsResult {
36
+ transportType: TransportType;
37
+ quote: bigint;
38
+ destinationFee: bigint;
39
+ tx: TransactionData;
40
+ dstEid: number;
41
+ }
42
+ export declare enum StargateFunctions {
43
+ QuoteOFT = "quoteOFT",
44
+ QuoteSend = "quoteSend",
45
+ SendToken = "sendToken"
46
+ }
47
+ export declare enum TokenMessagingFunctions {
48
+ AssetIds = "assetIds"
49
+ }
50
+ export {};
51
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/configs/stargate/calldata/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,UAAU,SAAS;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,iBAAiB,EAAE,MAAM,CAAA;IACzB,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,UAAU;IACzB,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,aAAa,EAAE,aAAa,CAAA;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,SAAS,CAAA;IACpB,YAAY,EAAE,YAAY,CAAA;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,aAAa,CAAA;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,MAAM,CAAA;IACtB,EAAE,EAAE,eAAe,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,oBAAY,iBAAiB;IAC3B,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,SAAS,cAAc;CACxB;AAED,oBAAY,uBAAuB;IACjC,QAAQ,aAAa;CACtB"}
@@ -0,0 +1,10 @@
1
+ export var StargateFunctions;
2
+ (function (StargateFunctions) {
3
+ StargateFunctions["QuoteOFT"] = "quoteOFT";
4
+ StargateFunctions["QuoteSend"] = "quoteSend";
5
+ StargateFunctions["SendToken"] = "sendToken";
6
+ })(StargateFunctions || (StargateFunctions = {}));
7
+ export var TokenMessagingFunctions;
8
+ (function (TokenMessagingFunctions) {
9
+ TokenMessagingFunctions["AssetIds"] = "assetIds";
10
+ })(TokenMessagingFunctions || (TokenMessagingFunctions = {}));
@@ -0,0 +1,88 @@
1
+ import { Params as CrossChainParamsDataAndOther } from '@1delta/bridge-core';
2
+ import { TransportType } from '../types';
3
+ export declare const stargateConfig: {
4
+ icon: {
5
+ light: string;
6
+ dark: string;
7
+ };
8
+ apiInterface: {
9
+ route: {
10
+ execute: (crossChainParamsData: CrossChainParamsDataAndOther) => Promise<{
11
+ aggregator: string;
12
+ transportType?: TransportType | undefined;
13
+ quote?: bigint | undefined;
14
+ destinationFee?: bigint | undefined;
15
+ tx?: import("../../../../../bridge-core/src/types").BuildTransactionDataResponse | undefined;
16
+ dstEid?: number | undefined;
17
+ }>;
18
+ responseMapping: {
19
+ name: string;
20
+ depositContract: string;
21
+ toAmount: string;
22
+ fee: {
23
+ destinationGasFee: string;
24
+ };
25
+ estimatedDuration: {
26
+ format: (data: any) => any;
27
+ };
28
+ transactionData: {
29
+ data: string;
30
+ value: string;
31
+ to: string;
32
+ };
33
+ interfaceParamData: {
34
+ dstEid: string;
35
+ nativeFee: string;
36
+ slippage: {
37
+ format: () => number;
38
+ };
39
+ };
40
+ };
41
+ };
42
+ quote: {
43
+ execute: (crossChainParamsData: CrossChainParamsDataAndOther) => Promise<{
44
+ aggregator: string;
45
+ transportType?: TransportType | undefined;
46
+ quote?: bigint | undefined;
47
+ destinationFee?: bigint | undefined;
48
+ tx?: import("../../../../../bridge-core/src/types").BuildTransactionDataResponse | undefined;
49
+ dstEid?: number | undefined;
50
+ }>;
51
+ responseMapping: {
52
+ transactionData: {};
53
+ name: string;
54
+ depositContract: string;
55
+ toAmount: string;
56
+ fee: {
57
+ destinationGasFee: string;
58
+ };
59
+ estimatedDuration: {
60
+ format: (data: any) => any;
61
+ };
62
+ interfaceParamData: {
63
+ dstEid: string;
64
+ nativeFee: string;
65
+ slippage: {
66
+ format: () => number;
67
+ };
68
+ };
69
+ };
70
+ };
71
+ };
72
+ errorCodes: {
73
+ ERROR: {
74
+ code: string;
75
+ message: string;
76
+ };
77
+ NOT_SUPPORT: {
78
+ code: string;
79
+ message: string;
80
+ };
81
+ DEPOSIT_NOT_FOUND: {
82
+ code: string;
83
+ message: string;
84
+ };
85
+ };
86
+ };
87
+ export default stargateConfig;
88
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/configs/stargate/common/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,MAAM,IAAI,4BAA4B,EACvC,MAAM,qBAAqB,CAAA;AAK5B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAsFxC,eAAO,MAAM,cAAc;;;;;;;4CAOiB,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4CA4B5B,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BvE,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -0,0 +1,93 @@
1
+ import { CrossChainBusinessException, } from '@1delta/bridge-core';
2
+ import { Bridge } from '../../../types';
3
+ import { bridgeIcon } from '../../utils';
4
+ import { StargateRouter } from '../calldata';
5
+ import { TransportType } from '../types';
6
+ import { ESTIMATED_DURATION_BY_TRANSPORT } from './constants';
7
+ const NAME = 'Stargate';
8
+ const errorCodes = {
9
+ ERROR: { code: 'ERROR', message: 'unknown error' },
10
+ NOT_SUPPORT: { code: 'NOT_SUPPORT', message: 'NOT SUPPORT' },
11
+ DEPOSIT_NOT_FOUND: {
12
+ code: 'DEPOSIT_NOT_FOUND',
13
+ message: 'deposit not found',
14
+ },
15
+ };
16
+ const stargateResponseMapping = {
17
+ name: 'aggregator',
18
+ depositContract: 'tx.to',
19
+ toAmount: 'quote',
20
+ fee: {
21
+ destinationGasFee: 'destinationFee',
22
+ },
23
+ estimatedDuration: {
24
+ format: (data) => ESTIMATED_DURATION_BY_TRANSPORT[data.transportType],
25
+ },
26
+ transactionData: {
27
+ data: 'tx.data',
28
+ value: 'tx.value',
29
+ to: 'tx.to',
30
+ },
31
+ interfaceParamData: {
32
+ dstEid: 'dstEid',
33
+ nativeFee: 'destinationFee',
34
+ slippage: {
35
+ format: () => {
36
+ // 1e9 = 100% -> 1e5 = 0.01%
37
+ return 1e5;
38
+ },
39
+ },
40
+ },
41
+ };
42
+ async function stagatePathBuilder(fromTokenAddress, fromChainId, toTokenAddress, toChainId, fromAmount, toAddress, aggregator, fromTokenDecimals, toTokenDecimals) {
43
+ const isValidPair = await StargateRouter.isValidPath(fromChainId, fromTokenAddress, toChainId, toTokenAddress);
44
+ if (!isValidPair)
45
+ throw new CrossChainBusinessException(errorCodes.NOT_SUPPORT);
46
+ const paths = await StargateRouter.encodeBridgeTx({
47
+ fromChainId,
48
+ toChainId,
49
+ token: fromTokenAddress,
50
+ amount: BigInt(fromAmount),
51
+ receiver: toAddress,
52
+ fromTokenDecimals,
53
+ toTokenDecimals,
54
+ });
55
+ const isBus = aggregator === Bridge.STARGATE_BUS;
56
+ const path = paths.find((path) => {
57
+ const isBusPath = path.transportType === TransportType.Bus;
58
+ const isTaxiPath = path.transportType === TransportType.Taxi;
59
+ return (isBus && isBusPath) || (!isBus && isTaxiPath);
60
+ });
61
+ return {
62
+ ...path,
63
+ aggregator: aggregator ?? NAME,
64
+ };
65
+ }
66
+ export const stargateConfig = {
67
+ icon: {
68
+ light: bridgeIcon(NAME),
69
+ dark: bridgeIcon(NAME),
70
+ },
71
+ apiInterface: {
72
+ route: {
73
+ execute: async (crossChainParamsData) => {
74
+ const { fromTokenAddress, fromChainId, toTokenAddress, toChainId, fromAmount, toAddress, aggregator, fromTokenDecimals, toTokenDecimals, } = crossChainParamsData;
75
+ const res = await stagatePathBuilder(fromTokenAddress, fromChainId, toTokenAddress, toChainId, fromAmount, toAddress, aggregator, fromTokenDecimals, toTokenDecimals);
76
+ return res;
77
+ },
78
+ responseMapping: stargateResponseMapping,
79
+ },
80
+ quote: {
81
+ execute: async (crossChainParamsData) => {
82
+ const { fromTokenAddress, fromChainId, toTokenAddress, toChainId, fromAmount, aggregator, fromTokenDecimals, toTokenDecimals, } = crossChainParamsData;
83
+ return await stagatePathBuilder(fromTokenAddress, fromChainId, toTokenAddress, toChainId, fromAmount,
84
+ // default to trivial address
85
+ '0x0000000000000000000000000000000000000001', aggregator, fromTokenDecimals, toTokenDecimals);
86
+ },
87
+ // encforce that we do not build a txn here
88
+ responseMapping: { ...stargateResponseMapping, transactionData: {} },
89
+ },
90
+ },
91
+ errorCodes,
92
+ };
93
+ export default stargateConfig;