@shapeshiftoss/swapper 17.6.6 → 17.6.7

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 (928) hide show
  1. package/dist/cjs/.tsbuildinfo +1 -0
  2. package/dist/cjs/constants.d.ts +8 -0
  3. package/dist/cjs/constants.js +151 -0
  4. package/dist/cjs/cowswap-utils/constants.d.ts +14 -0
  5. package/dist/cjs/cowswap-utils/constants.js +34 -0
  6. package/dist/cjs/cowswap-utils/index.d.ts +24 -0
  7. package/dist/cjs/cowswap-utils/index.js +177 -0
  8. package/dist/cjs/index.d.ts +19 -0
  9. package/dist/cjs/index.js +48 -0
  10. package/dist/cjs/package.json +1 -0
  11. package/dist/cjs/safe-utils/constants.d.ts +2 -0
  12. package/dist/cjs/safe-utils/constants.js +14 -0
  13. package/dist/cjs/safe-utils/index.d.ts +3 -0
  14. package/dist/cjs/safe-utils/index.js +66 -0
  15. package/dist/cjs/safe-utils/types.d.ts +57 -0
  16. package/dist/cjs/safe-utils/types.js +2 -0
  17. package/dist/cjs/solana-utils/getSolanaTransactionFees.d.ts +2 -0
  18. package/dist/cjs/solana-utils/getSolanaTransactionFees.js +22 -0
  19. package/dist/cjs/solana-utils/getUnsignedSolanaTransaction.d.ts +3 -0
  20. package/dist/cjs/solana-utils/getUnsignedSolanaTransaction.js +39 -0
  21. package/dist/cjs/swapper.d.ts +3 -0
  22. package/dist/cjs/swapper.js +56 -0
  23. package/dist/cjs/swappers/ArbitrumBridgeSwapper/ArbitrumBridgeSwapper.d.ts +2 -0
  24. package/dist/cjs/swappers/ArbitrumBridgeSwapper/ArbitrumBridgeSwapper.js +7 -0
  25. package/dist/cjs/swappers/ArbitrumBridgeSwapper/endpoints.d.ts +13 -0
  26. package/dist/cjs/swappers/ArbitrumBridgeSwapper/endpoints.js +238 -0
  27. package/dist/cjs/swappers/ArbitrumBridgeSwapper/getTradeQuote/getTradeQuote.d.ts +6 -0
  28. package/dist/cjs/swappers/ArbitrumBridgeSwapper/getTradeQuote/getTradeQuote.js +86 -0
  29. package/dist/cjs/swappers/ArbitrumBridgeSwapper/getTradeQuote/getTradeQuote.test.d.ts +1 -0
  30. package/dist/cjs/swappers/ArbitrumBridgeSwapper/getTradeQuote/getTradeQuote.test.js +174 -0
  31. package/dist/cjs/swappers/ArbitrumBridgeSwapper/getTradeRate/getTradeRate.d.ts +4 -0
  32. package/dist/cjs/swappers/ArbitrumBridgeSwapper/getTradeRate/getTradeRate.js +75 -0
  33. package/dist/cjs/swappers/ArbitrumBridgeSwapper/index.d.ts +2 -0
  34. package/dist/cjs/swappers/ArbitrumBridgeSwapper/index.js +18 -0
  35. package/dist/cjs/swappers/ArbitrumBridgeSwapper/types.d.ts +13 -0
  36. package/dist/cjs/swappers/ArbitrumBridgeSwapper/types.js +10 -0
  37. package/dist/cjs/swappers/ArbitrumBridgeSwapper/utils/constants.d.ts +6 -0
  38. package/dist/cjs/swappers/ArbitrumBridgeSwapper/utils/constants.js +33 -0
  39. package/dist/cjs/swappers/ArbitrumBridgeSwapper/utils/fetchArbitrumBridgeSwap.d.ts +35 -0
  40. package/dist/cjs/swappers/ArbitrumBridgeSwapper/utils/fetchArbitrumBridgeSwap.js +148 -0
  41. package/dist/cjs/swappers/ArbitrumBridgeSwapper/utils/helpers.d.ts +16 -0
  42. package/dist/cjs/swappers/ArbitrumBridgeSwapper/utils/helpers.js +100 -0
  43. package/dist/cjs/swappers/ArbitrumBridgeSwapper/utils/types.d.ts +3 -0
  44. package/dist/cjs/swappers/ArbitrumBridgeSwapper/utils/types.js +8 -0
  45. package/dist/cjs/swappers/BebopSwapper/BebopSwapper.d.ts +2 -0
  46. package/dist/cjs/swappers/BebopSwapper/BebopSwapper.js +7 -0
  47. package/dist/cjs/swappers/BebopSwapper/endpoints.d.ts +2 -0
  48. package/dist/cjs/swappers/BebopSwapper/endpoints.js +61 -0
  49. package/dist/cjs/swappers/BebopSwapper/getBebopTradeQuote/getBebopTradeQuote.d.ts +6 -0
  50. package/dist/cjs/swappers/BebopSwapper/getBebopTradeQuote/getBebopTradeQuote.js +117 -0
  51. package/dist/cjs/swappers/BebopSwapper/getBebopTradeRate/getBebopTradeRate.d.ts +6 -0
  52. package/dist/cjs/swappers/BebopSwapper/getBebopTradeRate/getBebopTradeRate.js +92 -0
  53. package/dist/cjs/swappers/BebopSwapper/index.d.ts +2 -0
  54. package/dist/cjs/swappers/BebopSwapper/index.js +7 -0
  55. package/dist/cjs/swappers/BebopSwapper/types.d.ts +89 -0
  56. package/dist/cjs/swappers/BebopSwapper/types.js +27 -0
  57. package/dist/cjs/swappers/BebopSwapper/utils/bebopService.d.ts +9 -0
  58. package/dist/cjs/swappers/BebopSwapper/utils/bebopService.js +31 -0
  59. package/dist/cjs/swappers/BebopSwapper/utils/fetchFromBebop.d.ts +23 -0
  60. package/dist/cjs/swappers/BebopSwapper/utils/fetchFromBebop.js +93 -0
  61. package/dist/cjs/swappers/BebopSwapper/utils/helpers/helpers.d.ts +14 -0
  62. package/dist/cjs/swappers/BebopSwapper/utils/helpers/helpers.js +58 -0
  63. package/dist/cjs/swappers/ButterSwap/ButterSwap.d.ts +2 -0
  64. package/dist/cjs/swappers/ButterSwap/ButterSwap.js +11 -0
  65. package/dist/cjs/swappers/ButterSwap/endpoints.d.ts +2 -0
  66. package/dist/cjs/swappers/ButterSwap/endpoints.js +75 -0
  67. package/dist/cjs/swappers/ButterSwap/index.d.ts +1 -0
  68. package/dist/cjs/swappers/ButterSwap/index.js +17 -0
  69. package/dist/cjs/swappers/ButterSwap/swapperApi/checkTradeStatus.d.ts +2 -0
  70. package/dist/cjs/swappers/ButterSwap/swapperApi/checkTradeStatus.js +89 -0
  71. package/dist/cjs/swappers/ButterSwap/swapperApi/checkTradeStatus.test.d.ts +1 -0
  72. package/dist/cjs/swappers/ButterSwap/swapperApi/checkTradeStatus.test.js +205 -0
  73. package/dist/cjs/swappers/ButterSwap/swapperApi/getTradeQuote.d.ts +3 -0
  74. package/dist/cjs/swappers/ButterSwap/swapperApi/getTradeQuote.js +191 -0
  75. package/dist/cjs/swappers/ButterSwap/swapperApi/getTradeQuote.test.d.ts +1 -0
  76. package/dist/cjs/swappers/ButterSwap/swapperApi/getTradeQuote.test.js +62 -0
  77. package/dist/cjs/swappers/ButterSwap/swapperApi/getTradeRate.d.ts +3 -0
  78. package/dist/cjs/swappers/ButterSwap/swapperApi/getTradeRate.js +119 -0
  79. package/dist/cjs/swappers/ButterSwap/swapperApi/getTradeRate.test.d.ts +1 -0
  80. package/dist/cjs/swappers/ButterSwap/swapperApi/getTradeRate.test.js +99 -0
  81. package/dist/cjs/swappers/ButterSwap/test-data/eth-btc.json +461 -0
  82. package/dist/cjs/swappers/ButterSwap/test-data/routeQuote.d.ts +2 -0
  83. package/dist/cjs/swappers/ButterSwap/test-data/routeQuote.js +79 -0
  84. package/dist/cjs/swappers/ButterSwap/types.d.ts +236 -0
  85. package/dist/cjs/swappers/ButterSwap/types.js +2 -0
  86. package/dist/cjs/swappers/ButterSwap/utils/butterSwapHistoryService.d.ts +6 -0
  87. package/dist/cjs/swappers/ButterSwap/utils/butterSwapHistoryService.js +16 -0
  88. package/dist/cjs/swappers/ButterSwap/utils/butterSwapService.d.ts +6 -0
  89. package/dist/cjs/swappers/ButterSwap/utils/butterSwapService.js +16 -0
  90. package/dist/cjs/swappers/ButterSwap/utils/constants.d.ts +1 -0
  91. package/dist/cjs/swappers/ButterSwap/utils/constants.js +10 -0
  92. package/dist/cjs/swappers/ButterSwap/utils/helpers.d.ts +3 -0
  93. package/dist/cjs/swappers/ButterSwap/utils/helpers.js +27 -0
  94. package/dist/cjs/swappers/ButterSwap/xhr.d.ts +50 -0
  95. package/dist/cjs/swappers/ButterSwap/xhr.js +141 -0
  96. package/dist/cjs/swappers/CetusSwapper/CetusSwapper.d.ts +2 -0
  97. package/dist/cjs/swappers/CetusSwapper/CetusSwapper.js +7 -0
  98. package/dist/cjs/swappers/CetusSwapper/endpoints.d.ts +2 -0
  99. package/dist/cjs/swappers/CetusSwapper/endpoints.js +87 -0
  100. package/dist/cjs/swappers/CetusSwapper/index.d.ts +1 -0
  101. package/dist/cjs/swappers/CetusSwapper/index.js +17 -0
  102. package/dist/cjs/swappers/CetusSwapper/swapperApi/getTradeQuote.d.ts +3 -0
  103. package/dist/cjs/swappers/CetusSwapper/swapperApi/getTradeQuote.js +122 -0
  104. package/dist/cjs/swappers/CetusSwapper/swapperApi/getTradeRate.d.ts +3 -0
  105. package/dist/cjs/swappers/CetusSwapper/swapperApi/getTradeRate.js +110 -0
  106. package/dist/cjs/swappers/CetusSwapper/utils/constants.d.ts +3 -0
  107. package/dist/cjs/swappers/CetusSwapper/utils/constants.js +9 -0
  108. package/dist/cjs/swappers/CetusSwapper/utils/helpers.d.ts +13 -0
  109. package/dist/cjs/swappers/CetusSwapper/utils/helpers.js +118 -0
  110. package/dist/cjs/swappers/ChainflipSwapper/ChainflipSwapper.d.ts +2 -0
  111. package/dist/cjs/swappers/ChainflipSwapper/ChainflipSwapper.js +11 -0
  112. package/dist/cjs/swappers/ChainflipSwapper/constants.d.ts +26 -0
  113. package/dist/cjs/swappers/ChainflipSwapper/constants.js +55 -0
  114. package/dist/cjs/swappers/ChainflipSwapper/endpoints.d.ts +2 -0
  115. package/dist/cjs/swappers/ChainflipSwapper/endpoints.js +194 -0
  116. package/dist/cjs/swappers/ChainflipSwapper/index.d.ts +2 -0
  117. package/dist/cjs/swappers/ChainflipSwapper/index.js +18 -0
  118. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasQuoteBoostQuote.d.ts +130 -0
  119. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasQuoteBoostQuote.js +74 -0
  120. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasQuoteEstimatedDurationsSeconds.d.ts +43 -0
  121. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasQuoteEstimatedDurationsSeconds.js +51 -0
  122. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasQuoteQuote.d.ts +157 -0
  123. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasQuoteQuote.js +86 -0
  124. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasQuoteQuoteFee.d.ts +61 -0
  125. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasQuoteQuoteFee.js +63 -0
  126. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasStatusChunkInfo.d.ts +103 -0
  127. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasStatusChunkInfo.js +61 -0
  128. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasStatusDca.d.ts +50 -0
  129. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasStatusDca.js +56 -0
  130. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasStatusEgress.d.ts +98 -0
  131. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasStatusEgress.js +63 -0
  132. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasStatusSwap.d.ts +99 -0
  133. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasStatusSwap.js +75 -0
  134. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasSwapDepositAddress.d.ts +79 -0
  135. package/dist/cjs/swappers/ChainflipSwapper/models/ChainflipBaasSwapDepositAddress.js +59 -0
  136. package/dist/cjs/swappers/ChainflipSwapper/models/index.d.ts +3 -0
  137. package/dist/cjs/swappers/ChainflipSwapper/models/index.js +19 -0
  138. package/dist/cjs/swappers/ChainflipSwapper/swapperApi/getTradeQuote.d.ts +3 -0
  139. package/dist/cjs/swappers/ChainflipSwapper/swapperApi/getTradeQuote.js +143 -0
  140. package/dist/cjs/swappers/ChainflipSwapper/swapperApi/getTradeRate.d.ts +2 -0
  141. package/dist/cjs/swappers/ChainflipSwapper/swapperApi/getTradeRate.js +13 -0
  142. package/dist/cjs/swappers/ChainflipSwapper/types.d.ts +15 -0
  143. package/dist/cjs/swappers/ChainflipSwapper/types.js +10 -0
  144. package/dist/cjs/swappers/ChainflipSwapper/utils/chainflipService.d.ts +5 -0
  145. package/dist/cjs/swappers/ChainflipSwapper/utils/chainflipService.js +15 -0
  146. package/dist/cjs/swappers/ChainflipSwapper/utils/getEvmTxFees.d.ts +8 -0
  147. package/dist/cjs/swappers/ChainflipSwapper/utils/getEvmTxFees.js +15 -0
  148. package/dist/cjs/swappers/ChainflipSwapper/utils/getLatestChainflipStatusMessage.d.ts +2 -0
  149. package/dist/cjs/swappers/ChainflipSwapper/utils/getLatestChainflipStatusMessage.js +28 -0
  150. package/dist/cjs/swappers/ChainflipSwapper/utils/getQuoteOrRate.d.ts +3 -0
  151. package/dist/cjs/swappers/ChainflipSwapper/utils/getQuoteOrRate.js +297 -0
  152. package/dist/cjs/swappers/ChainflipSwapper/utils/getUtxoTxFees.d.ts +9 -0
  153. package/dist/cjs/swappers/ChainflipSwapper/utils/getUtxoTxFees.js +25 -0
  154. package/dist/cjs/swappers/ChainflipSwapper/utils/helpers.d.ts +36 -0
  155. package/dist/cjs/swappers/ChainflipSwapper/utils/helpers.js +84 -0
  156. package/dist/cjs/swappers/CowSwapper/CowSwapper.d.ts +2 -0
  157. package/dist/cjs/swappers/CowSwapper/CowSwapper.js +27 -0
  158. package/dist/cjs/swappers/CowSwapper/CowSwapper.test.d.ts +1 -0
  159. package/dist/cjs/swappers/CowSwapper/CowSwapper.test.js +180 -0
  160. package/dist/cjs/swappers/CowSwapper/constants.d.ts +6 -0
  161. package/dist/cjs/swappers/CowSwapper/constants.js +10 -0
  162. package/dist/cjs/swappers/CowSwapper/endpoints.d.ts +2 -0
  163. package/dist/cjs/swappers/CowSwapper/endpoints.js +148 -0
  164. package/dist/cjs/swappers/CowSwapper/getCowSwapTradeQuote/getCowSwapTradeQuote.d.ts +3 -0
  165. package/dist/cjs/swappers/CowSwapper/getCowSwapTradeQuote/getCowSwapTradeQuote.js +128 -0
  166. package/dist/cjs/swappers/CowSwapper/getCowSwapTradeQuote/getCowSwapTradeQuote.test.d.ts +1 -0
  167. package/dist/cjs/swappers/CowSwapper/getCowSwapTradeQuote/getCowSwapTradeQuote.test.js +522 -0
  168. package/dist/cjs/swappers/CowSwapper/getCowSwapTradeRate/getCowSwapTradeRate.d.ts +3 -0
  169. package/dist/cjs/swappers/CowSwapper/getCowSwapTradeRate/getCowSwapTradeRate.js +127 -0
  170. package/dist/cjs/swappers/CowSwapper/index.d.ts +1 -0
  171. package/dist/cjs/swappers/CowSwapper/index.js +17 -0
  172. package/dist/cjs/swappers/CowSwapper/types.d.ts +18 -0
  173. package/dist/cjs/swappers/CowSwapper/types.js +2 -0
  174. package/dist/cjs/swappers/CowSwapper/utils/blacklist.d.ts +1 -0
  175. package/dist/cjs/swappers/CowSwapper/utils/blacklist.js +15 -0
  176. package/dist/cjs/swappers/CowSwapper/utils/cowService.d.ts +6 -0
  177. package/dist/cjs/swappers/CowSwapper/utils/cowService.js +15 -0
  178. package/dist/cjs/swappers/CowSwapper/utils/helpers/helpers.d.ts +44 -0
  179. package/dist/cjs/swappers/CowSwapper/utils/helpers/helpers.js +86 -0
  180. package/dist/cjs/swappers/CowSwapper/utils/helpers/helpers.test.d.ts +1 -0
  181. package/dist/cjs/swappers/CowSwapper/utils/helpers/helpers.test.js +60 -0
  182. package/dist/cjs/swappers/JupiterSwapper/JupiterSwapper.d.ts +2 -0
  183. package/dist/cjs/swappers/JupiterSwapper/JupiterSwapper.js +27 -0
  184. package/dist/cjs/swappers/JupiterSwapper/endpoints.d.ts +2 -0
  185. package/dist/cjs/swappers/JupiterSwapper/endpoints.js +15 -0
  186. package/dist/cjs/swappers/JupiterSwapper/errorPatterns.d.ts +15 -0
  187. package/dist/cjs/swappers/JupiterSwapper/errorPatterns.js +29 -0
  188. package/dist/cjs/swappers/JupiterSwapper/idls/referral.d.ts +739 -0
  189. package/dist/cjs/swappers/JupiterSwapper/idls/referral.js +741 -0
  190. package/dist/cjs/swappers/JupiterSwapper/index.d.ts +2 -0
  191. package/dist/cjs/swappers/JupiterSwapper/index.js +18 -0
  192. package/dist/cjs/swappers/JupiterSwapper/swapperApi/getTradeQuote.d.ts +3 -0
  193. package/dist/cjs/swappers/JupiterSwapper/swapperApi/getTradeQuote.js +191 -0
  194. package/dist/cjs/swappers/JupiterSwapper/swapperApi/getTradeRate.d.ts +3 -0
  195. package/dist/cjs/swappers/JupiterSwapper/swapperApi/getTradeRate.js +172 -0
  196. package/dist/cjs/swappers/JupiterSwapper/utils/constants.d.ts +9 -0
  197. package/dist/cjs/swappers/JupiterSwapper/utils/constants.js +14 -0
  198. package/dist/cjs/swappers/JupiterSwapper/utils/helpers.d.ts +58 -0
  199. package/dist/cjs/swappers/JupiterSwapper/utils/helpers.js +178 -0
  200. package/dist/cjs/swappers/JupiterSwapper/utils/jupiterService.d.ts +5 -0
  201. package/dist/cjs/swappers/JupiterSwapper/utils/jupiterService.js +15 -0
  202. package/dist/cjs/swappers/MayachainSwapper/MayachainSwapper.d.ts +2 -0
  203. package/dist/cjs/swappers/MayachainSwapper/MayachainSwapper.js +13 -0
  204. package/dist/cjs/swappers/MayachainSwapper/constants.d.ts +6 -0
  205. package/dist/cjs/swappers/MayachainSwapper/constants.js +13 -0
  206. package/dist/cjs/swappers/MayachainSwapper/endpoints.d.ts +2 -0
  207. package/dist/cjs/swappers/MayachainSwapper/endpoints.js +68 -0
  208. package/dist/cjs/swappers/MayachainSwapper/generated/generatedTradableAssetMap.json +25 -0
  209. package/dist/cjs/swappers/MayachainSwapper/getTradeQuote.d.ts +4 -0
  210. package/dist/cjs/swappers/MayachainSwapper/getTradeQuote.js +24 -0
  211. package/dist/cjs/swappers/MayachainSwapper/getTradeRate.d.ts +4 -0
  212. package/dist/cjs/swappers/MayachainSwapper/getTradeRate.js +24 -0
  213. package/dist/cjs/swappers/MayachainSwapper/index.d.ts +4 -0
  214. package/dist/cjs/swappers/MayachainSwapper/index.js +22 -0
  215. package/dist/cjs/swappers/MayachainSwapper/utils/index.d.ts +7 -0
  216. package/dist/cjs/swappers/MayachainSwapper/utils/index.js +40 -0
  217. package/dist/cjs/swappers/MayachainSwapper/utils/poolAssetHelpers/poolAssetHelpers.d.ts +6 -0
  218. package/dist/cjs/swappers/MayachainSwapper/utils/poolAssetHelpers/poolAssetHelpers.js +14 -0
  219. package/dist/cjs/swappers/MayachainSwapper/utils/poolAssetHelpers/poolAssetHelpers.test.d.ts +1 -0
  220. package/dist/cjs/swappers/MayachainSwapper/utils/poolAssetHelpers/poolAssetHelpers.test.js +56 -0
  221. package/dist/cjs/swappers/NearIntentsSwapper/NearIntentsSwapper.d.ts +2 -0
  222. package/dist/cjs/swappers/NearIntentsSwapper/NearIntentsSwapper.js +13 -0
  223. package/dist/cjs/swappers/NearIntentsSwapper/constants.d.ts +3 -0
  224. package/dist/cjs/swappers/NearIntentsSwapper/constants.js +6 -0
  225. package/dist/cjs/swappers/NearIntentsSwapper/endpoints.d.ts +2 -0
  226. package/dist/cjs/swappers/NearIntentsSwapper/endpoints.js +208 -0
  227. package/dist/cjs/swappers/NearIntentsSwapper/index.d.ts +4 -0
  228. package/dist/cjs/swappers/NearIntentsSwapper/index.js +20 -0
  229. package/dist/cjs/swappers/NearIntentsSwapper/swapperApi/getTradeQuote.d.ts +3 -0
  230. package/dist/cjs/swappers/NearIntentsSwapper/swapperApi/getTradeQuote.js +249 -0
  231. package/dist/cjs/swappers/NearIntentsSwapper/swapperApi/getTradeRate.d.ts +3 -0
  232. package/dist/cjs/swappers/NearIntentsSwapper/swapperApi/getTradeRate.js +264 -0
  233. package/dist/cjs/swappers/NearIntentsSwapper/types.d.ts +6 -0
  234. package/dist/cjs/swappers/NearIntentsSwapper/types.js +36 -0
  235. package/dist/cjs/swappers/NearIntentsSwapper/utils/helpers/helpers.d.ts +12 -0
  236. package/dist/cjs/swappers/NearIntentsSwapper/utils/helpers/helpers.js +104 -0
  237. package/dist/cjs/swappers/NearIntentsSwapper/utils/oneClickService.d.ts +3 -0
  238. package/dist/cjs/swappers/NearIntentsSwapper/utils/oneClickService.js +16 -0
  239. package/dist/cjs/swappers/PortalsSwapper/PortalsSwapper.d.ts +2 -0
  240. package/dist/cjs/swappers/PortalsSwapper/PortalsSwapper.js +7 -0
  241. package/dist/cjs/swappers/PortalsSwapper/constants.d.ts +2 -0
  242. package/dist/cjs/swappers/PortalsSwapper/constants.js +14 -0
  243. package/dist/cjs/swappers/PortalsSwapper/endpoints.d.ts +2 -0
  244. package/dist/cjs/swappers/PortalsSwapper/endpoints.js +56 -0
  245. package/dist/cjs/swappers/PortalsSwapper/getPortalsTradeQuote/getPortalsTradeQuote.d.ts +5 -0
  246. package/dist/cjs/swappers/PortalsSwapper/getPortalsTradeQuote/getPortalsTradeQuote.js +208 -0
  247. package/dist/cjs/swappers/PortalsSwapper/getPortalsTradeRate/getPortalsTradeRate.d.ts +5 -0
  248. package/dist/cjs/swappers/PortalsSwapper/getPortalsTradeRate/getPortalsTradeRate.js +189 -0
  249. package/dist/cjs/swappers/PortalsSwapper/index.d.ts +2 -0
  250. package/dist/cjs/swappers/PortalsSwapper/index.js +18 -0
  251. package/dist/cjs/swappers/PortalsSwapper/types.d.ts +3 -0
  252. package/dist/cjs/swappers/PortalsSwapper/types.js +15 -0
  253. package/dist/cjs/swappers/PortalsSwapper/utils/fetchPortalsTradeOrder.d.ts +76 -0
  254. package/dist/cjs/swappers/PortalsSwapper/utils/fetchPortalsTradeOrder.js +68 -0
  255. package/dist/cjs/swappers/PortalsSwapper/utils/helpers.d.ts +4 -0
  256. package/dist/cjs/swappers/PortalsSwapper/utils/helpers.js +32 -0
  257. package/dist/cjs/swappers/RelaySwapper/RelaySwapper.d.ts +2 -0
  258. package/dist/cjs/swappers/RelaySwapper/RelaySwapper.js +12 -0
  259. package/dist/cjs/swappers/RelaySwapper/constant.d.ts +23 -0
  260. package/dist/cjs/swappers/RelaySwapper/constant.js +68 -0
  261. package/dist/cjs/swappers/RelaySwapper/endpoints.d.ts +2 -0
  262. package/dist/cjs/swappers/RelaySwapper/endpoints.js +198 -0
  263. package/dist/cjs/swappers/RelaySwapper/getTradeQuote/getTradeQuote.d.ts +4 -0
  264. package/dist/cjs/swappers/RelaySwapper/getTradeQuote/getTradeQuote.js +32 -0
  265. package/dist/cjs/swappers/RelaySwapper/getTradeRate/getTradeRate.d.ts +4 -0
  266. package/dist/cjs/swappers/RelaySwapper/getTradeRate/getTradeRate.js +20 -0
  267. package/dist/cjs/swappers/RelaySwapper/index.d.ts +1 -0
  268. package/dist/cjs/swappers/RelaySwapper/index.js +17 -0
  269. package/dist/cjs/swappers/RelaySwapper/utils/fetchRelayTrade.d.ts +5 -0
  270. package/dist/cjs/swappers/RelaySwapper/utils/fetchRelayTrade.js +8 -0
  271. package/dist/cjs/swappers/RelaySwapper/utils/getLatestRelayStatusMessage.d.ts +2 -0
  272. package/dist/cjs/swappers/RelaySwapper/utils/getLatestRelayStatusMessage.js +22 -0
  273. package/dist/cjs/swappers/RelaySwapper/utils/getRelayAssetAddress.d.ts +3 -0
  274. package/dist/cjs/swappers/RelaySwapper/utils/getRelayAssetAddress.js +21 -0
  275. package/dist/cjs/swappers/RelaySwapper/utils/getRelayDefaultUserAddress.d.ts +2 -0
  276. package/dist/cjs/swappers/RelaySwapper/utils/getRelayDefaultUserAddress.js +18 -0
  277. package/dist/cjs/swappers/RelaySwapper/utils/getRelayPsbtRelayer.d.ts +1 -0
  278. package/dist/cjs/swappers/RelaySwapper/utils/getRelayPsbtRelayer.js +47 -0
  279. package/dist/cjs/swappers/RelaySwapper/utils/getTrade.d.ts +14 -0
  280. package/dist/cjs/swappers/RelaySwapper/utils/getTrade.js +503 -0
  281. package/dist/cjs/swappers/RelaySwapper/utils/notifyTransactionIndexing.d.ts +11 -0
  282. package/dist/cjs/swappers/RelaySwapper/utils/notifyTransactionIndexing.js +8 -0
  283. package/dist/cjs/swappers/RelaySwapper/utils/relayService.d.ts +5 -0
  284. package/dist/cjs/swappers/RelaySwapper/utils/relayService.js +15 -0
  285. package/dist/cjs/swappers/RelaySwapper/utils/relayTokenToAsset.d.ts +6 -0
  286. package/dist/cjs/swappers/RelaySwapper/utils/relayTokenToAsset.js +16 -0
  287. package/dist/cjs/swappers/RelaySwapper/utils/relayTokenToAssetId.d.ts +3 -0
  288. package/dist/cjs/swappers/RelaySwapper/utils/relayTokenToAssetId.js +110 -0
  289. package/dist/cjs/swappers/RelaySwapper/utils/types.d.ts +158 -0
  290. package/dist/cjs/swappers/RelaySwapper/utils/types.js +42 -0
  291. package/dist/cjs/swappers/ThorchainSwapper/ThorchainSwapper.d.ts +2 -0
  292. package/dist/cjs/swappers/ThorchainSwapper/ThorchainSwapper.js +13 -0
  293. package/dist/cjs/swappers/ThorchainSwapper/constants.d.ts +7 -0
  294. package/dist/cjs/swappers/ThorchainSwapper/constants.js +14 -0
  295. package/dist/cjs/swappers/ThorchainSwapper/endpoints.d.ts +2 -0
  296. package/dist/cjs/swappers/ThorchainSwapper/endpoints.js +81 -0
  297. package/dist/cjs/swappers/ThorchainSwapper/generated/generatedThorLongtailTokens.json +4618 -0
  298. package/dist/cjs/swappers/ThorchainSwapper/generated/generatedTradableAssetMap.json +45 -0
  299. package/dist/cjs/swappers/ThorchainSwapper/getTradeQuote/getTradeQuote.d.ts +4 -0
  300. package/dist/cjs/swappers/ThorchainSwapper/getTradeQuote/getTradeQuote.js +65 -0
  301. package/dist/cjs/swappers/ThorchainSwapper/getTradeQuote/getTradeQuote.test.d.ts +1 -0
  302. package/dist/cjs/swappers/ThorchainSwapper/getTradeQuote/getTradeQuote.test.js +210 -0
  303. package/dist/cjs/swappers/ThorchainSwapper/getTradeRate/getTradeRate.d.ts +4 -0
  304. package/dist/cjs/swappers/ThorchainSwapper/getTradeRate/getTradeRate.js +65 -0
  305. package/dist/cjs/swappers/ThorchainSwapper/index.d.ts +7 -0
  306. package/dist/cjs/swappers/ThorchainSwapper/index.js +27 -0
  307. package/dist/cjs/swappers/ThorchainSwapper/utils/addL1ToLongtailPartsToMemo/addL1ToLongtailPartsToMemo.d.ts +14 -0
  308. package/dist/cjs/swappers/ThorchainSwapper/utils/addL1ToLongtailPartsToMemo/addL1ToLongtailPartsToMemo.js +72 -0
  309. package/dist/cjs/swappers/ThorchainSwapper/utils/addL1ToLongtailPartsToMemo/addL1ToLongtailPartsToMemo.test.d.ts +1 -0
  310. package/dist/cjs/swappers/ThorchainSwapper/utils/addL1ToLongtailPartsToMemo/addL1ToLongtailPartsToMemo.test.js +118 -0
  311. package/dist/cjs/swappers/ThorchainSwapper/utils/constants.d.ts +4 -0
  312. package/dist/cjs/swappers/ThorchainSwapper/utils/constants.js +8 -0
  313. package/dist/cjs/swappers/ThorchainSwapper/utils/getBestAggregator.d.ts +6 -0
  314. package/dist/cjs/swappers/ThorchainSwapper/utils/getBestAggregator.js +36 -0
  315. package/dist/cjs/swappers/ThorchainSwapper/utils/getL1ToLongtailQuote.d.ts +4 -0
  316. package/dist/cjs/swappers/ThorchainSwapper/utils/getL1ToLongtailQuote.js +146 -0
  317. package/dist/cjs/swappers/ThorchainSwapper/utils/getL1ToLongtailRate.d.ts +4 -0
  318. package/dist/cjs/swappers/ThorchainSwapper/utils/getL1ToLongtailRate.js +134 -0
  319. package/dist/cjs/swappers/ThorchainSwapper/utils/getLongtailQuote.d.ts +4 -0
  320. package/dist/cjs/swappers/ThorchainSwapper/utils/getLongtailQuote.js +73 -0
  321. package/dist/cjs/swappers/ThorchainSwapper/utils/getLongtailRate.d.ts +4 -0
  322. package/dist/cjs/swappers/ThorchainSwapper/utils/getLongtailRate.js +73 -0
  323. package/dist/cjs/swappers/ThorchainSwapper/utils/getShortenedFinalAssetLimit/getShortenedFinalAssetLimit.d.ts +5 -0
  324. package/dist/cjs/swappers/ThorchainSwapper/utils/getShortenedFinalAssetLimit/getShortenedFinalAssetLimit.js +55 -0
  325. package/dist/cjs/swappers/ThorchainSwapper/utils/getShortenedFinalAssetLimit/getShortenedFinalAssetLimit.test.d.ts +1 -0
  326. package/dist/cjs/swappers/ThorchainSwapper/utils/getShortenedFinalAssetLimit/getShortenedFinalAssetLimit.test.js +99 -0
  327. package/dist/cjs/swappers/ThorchainSwapper/utils/getUniqueAddressSubstring/getUniqueAddressSubstring.d.ts +2 -0
  328. package/dist/cjs/swappers/ThorchainSwapper/utils/getUniqueAddressSubstring/getUniqueAddressSubstring.js +27 -0
  329. package/dist/cjs/swappers/ThorchainSwapper/utils/getUniqueAddressSubstring/getUniqueAddressSubstring.test.d.ts +1 -0
  330. package/dist/cjs/swappers/ThorchainSwapper/utils/getUniqueAddressSubstring/getUniqueAddressSubstring.test.js +38 -0
  331. package/dist/cjs/swappers/ThorchainSwapper/utils/longTailHelpers.d.ts +48 -0
  332. package/dist/cjs/swappers/ThorchainSwapper/utils/longTailHelpers.js +146 -0
  333. package/dist/cjs/swappers/ThorchainSwapper/utils/poolAssetHelpers/poolAssetHelpers.d.ts +6 -0
  334. package/dist/cjs/swappers/ThorchainSwapper/utils/poolAssetHelpers/poolAssetHelpers.js +14 -0
  335. package/dist/cjs/swappers/ThorchainSwapper/utils/poolAssetHelpers/poolAssetHelpers.test.d.ts +1 -0
  336. package/dist/cjs/swappers/ThorchainSwapper/utils/poolAssetHelpers/poolAssetHelpers.test.js +56 -0
  337. package/dist/cjs/swappers/ThorchainSwapper/utils/test-data/responses.d.ts +7 -0
  338. package/dist/cjs/swappers/ThorchainSwapper/utils/test-data/responses.js +201 -0
  339. package/dist/cjs/swappers/ThorchainSwapper/utils/test-data/setupThorswapDeps.d.ts +2 -0
  340. package/dist/cjs/swappers/ThorchainSwapper/utils/test-data/setupThorswapDeps.js +37 -0
  341. package/dist/cjs/swappers/ZrxSwapper/ZrxSwapper.d.ts +2 -0
  342. package/dist/cjs/swappers/ZrxSwapper/ZrxSwapper.js +7 -0
  343. package/dist/cjs/swappers/ZrxSwapper/endpoints.d.ts +2 -0
  344. package/dist/cjs/swappers/ZrxSwapper/endpoints.js +78 -0
  345. package/dist/cjs/swappers/ZrxSwapper/getZrxTradeQuote/getZrxTradeQuote.d.ts +6 -0
  346. package/dist/cjs/swappers/ZrxSwapper/getZrxTradeQuote/getZrxTradeQuote.js +116 -0
  347. package/dist/cjs/swappers/ZrxSwapper/getZrxTradeQuote/getZrxTradeQuote.test.d.ts +1 -0
  348. package/dist/cjs/swappers/ZrxSwapper/getZrxTradeQuote/getZrxTradeQuote.test.js +159 -0
  349. package/dist/cjs/swappers/ZrxSwapper/getZrxTradeRate/getZrxTradeRate.d.ts +4 -0
  350. package/dist/cjs/swappers/ZrxSwapper/getZrxTradeRate/getZrxTradeRate.js +72 -0
  351. package/dist/cjs/swappers/ZrxSwapper/types.d.ts +76 -0
  352. package/dist/cjs/swappers/ZrxSwapper/types.js +13 -0
  353. package/dist/cjs/swappers/ZrxSwapper/utils/constants.d.ts +4 -0
  354. package/dist/cjs/swappers/ZrxSwapper/utils/constants.js +26 -0
  355. package/dist/cjs/swappers/ZrxSwapper/utils/fetchFromZrx.d.ts +25 -0
  356. package/dist/cjs/swappers/ZrxSwapper/utils/fetchFromZrx.js +54 -0
  357. package/dist/cjs/swappers/ZrxSwapper/utils/helpers/helpers.d.ts +34 -0
  358. package/dist/cjs/swappers/ZrxSwapper/utils/helpers/helpers.js +143 -0
  359. package/dist/cjs/swappers/ZrxSwapper/utils/zrxService.d.ts +9 -0
  360. package/dist/cjs/swappers/ZrxSwapper/utils/zrxService.js +19 -0
  361. package/dist/cjs/swappers/utils/filterBuyAssetsBySellAssetId/filterBuyAssetsBySellAssetId.d.ts +4 -0
  362. package/dist/cjs/swappers/utils/filterBuyAssetsBySellAssetId/filterBuyAssetsBySellAssetId.js +26 -0
  363. package/dist/cjs/swappers/utils/helpers/helpers.d.ts +3 -0
  364. package/dist/cjs/swappers/utils/helpers/helpers.js +52 -0
  365. package/dist/cjs/swappers/utils/helpers/helpers.test.d.ts +1 -0
  366. package/dist/cjs/swappers/utils/helpers/helpers.test.js +10 -0
  367. package/dist/cjs/swappers/utils/test-data/assets.d.ts +17 -0
  368. package/dist/cjs/swappers/utils/test-data/assets.js +221 -0
  369. package/dist/cjs/swappers/utils/test-data/cryptoMarketDataById.d.ts +5 -0
  370. package/dist/cjs/swappers/utils/test-data/cryptoMarketDataById.js +18 -0
  371. package/dist/cjs/swappers/utils/test-data/fees.d.ts +2 -0
  372. package/dist/cjs/swappers/utils/test-data/fees.js +20 -0
  373. package/dist/cjs/swappers/utils/test-data/index.d.ts +2 -0
  374. package/dist/cjs/swappers/utils/test-data/index.js +18 -0
  375. package/dist/cjs/swappers/utils/test-data/setupSwapQuote.d.ts +8 -0
  376. package/dist/cjs/swappers/utils/test-data/setupSwapQuote.js +52 -0
  377. package/dist/cjs/thorchain-utils/checkTradeStatus.d.ts +8 -0
  378. package/dist/cjs/thorchain-utils/checkTradeStatus.js +75 -0
  379. package/dist/cjs/thorchain-utils/cosmossdk/getCosmosSdkTransactionFees.d.ts +2 -0
  380. package/dist/cjs/thorchain-utils/cosmossdk/getCosmosSdkTransactionFees.js +15 -0
  381. package/dist/cjs/thorchain-utils/cosmossdk/index.d.ts +1 -0
  382. package/dist/cjs/thorchain-utils/cosmossdk/index.js +17 -0
  383. package/dist/cjs/thorchain-utils/evm/getEvmData.d.ts +13 -0
  384. package/dist/cjs/thorchain-utils/evm/getEvmData.js +94 -0
  385. package/dist/cjs/thorchain-utils/evm/getEvmTransactionFees.d.ts +2 -0
  386. package/dist/cjs/thorchain-utils/evm/getEvmTransactionFees.js +23 -0
  387. package/dist/cjs/thorchain-utils/evm/getThorTxData.d.ts +18 -0
  388. package/dist/cjs/thorchain-utils/evm/getThorTxData.js +33 -0
  389. package/dist/cjs/thorchain-utils/evm/getUnsignedEvmTransaction.d.ts +4 -0
  390. package/dist/cjs/thorchain-utils/evm/getUnsignedEvmTransaction.js +23 -0
  391. package/dist/cjs/thorchain-utils/evm/index.d.ts +3 -0
  392. package/dist/cjs/thorchain-utils/evm/index.js +19 -0
  393. package/dist/cjs/thorchain-utils/getCallDataFromQuote.d.ts +9 -0
  394. package/dist/cjs/thorchain-utils/getCallDataFromQuote.js +54 -0
  395. package/dist/cjs/thorchain-utils/getInboundAddressDataForChain.d.ts +5 -0
  396. package/dist/cjs/thorchain-utils/getInboundAddressDataForChain.js +35 -0
  397. package/dist/cjs/thorchain-utils/getL1RateOrQuote.d.ts +6 -0
  398. package/dist/cjs/thorchain-utils/getL1RateOrQuote.js +317 -0
  399. package/dist/cjs/thorchain-utils/getLatestThorTxStatusMessage.d.ts +2 -0
  400. package/dist/cjs/thorchain-utils/getLatestThorTxStatusMessage.js +83 -0
  401. package/dist/cjs/thorchain-utils/getLimitWithManualSlippage/getLimitWithManualSlippage.d.ts +5 -0
  402. package/dist/cjs/thorchain-utils/getLimitWithManualSlippage/getLimitWithManualSlippage.js +14 -0
  403. package/dist/cjs/thorchain-utils/getLimitWithManualSlippage/getLimitWithManualSlippage.test.d.ts +1 -0
  404. package/dist/cjs/thorchain-utils/getLimitWithManualSlippage/getLimitWithManualSlippage.test.js +16 -0
  405. package/dist/cjs/thorchain-utils/getPoolDetails.d.ts +20 -0
  406. package/dist/cjs/thorchain-utils/getPoolDetails.js +51 -0
  407. package/dist/cjs/thorchain-utils/getQuote.d.ts +21 -0
  408. package/dist/cjs/thorchain-utils/getQuote.js +70 -0
  409. package/dist/cjs/thorchain-utils/getThresholdedAffiliateBps/getThresholdedAffiliateBps.d.ts +11 -0
  410. package/dist/cjs/thorchain-utils/getThresholdedAffiliateBps/getThresholdedAffiliateBps.js +40 -0
  411. package/dist/cjs/thorchain-utils/getThresholdedAffiliateBps/getThresholdedAffiliateBps.test.d.ts +1 -0
  412. package/dist/cjs/thorchain-utils/getThresholdedAffiliateBps/getThresholdedAffiliateBps.test.js +94 -0
  413. package/dist/cjs/thorchain-utils/index.d.ts +30 -0
  414. package/dist/cjs/thorchain-utils/index.js +171 -0
  415. package/dist/cjs/thorchain-utils/memo/addAggregatorAddressToMemo.d.ts +12 -0
  416. package/dist/cjs/thorchain-utils/memo/addAggregatorAddressToMemo.js +43 -0
  417. package/dist/cjs/thorchain-utils/memo/addFinalAssetAddressToMemo.d.ts +15 -0
  418. package/dist/cjs/thorchain-utils/memo/addFinalAssetAddressToMemo.js +48 -0
  419. package/dist/cjs/thorchain-utils/memo/addFinalAssetLimitToMemo.d.ts +16 -0
  420. package/dist/cjs/thorchain-utils/memo/addFinalAssetLimitToMemo.js +51 -0
  421. package/dist/cjs/thorchain-utils/memo/addLimitToMemo.d.ts +18 -0
  422. package/dist/cjs/thorchain-utils/memo/addLimitToMemo.js +59 -0
  423. package/dist/cjs/thorchain-utils/memo/assertAndProcessMemo.d.ts +4 -0
  424. package/dist/cjs/thorchain-utils/memo/assertAndProcessMemo.js +197 -0
  425. package/dist/cjs/thorchain-utils/memo/constants.d.ts +1 -0
  426. package/dist/cjs/thorchain-utils/memo/constants.js +4 -0
  427. package/dist/cjs/thorchain-utils/memo/index.d.ts +6 -0
  428. package/dist/cjs/thorchain-utils/memo/index.js +22 -0
  429. package/dist/cjs/thorchain-utils/memo/index.test.d.ts +1 -0
  430. package/dist/cjs/thorchain-utils/memo/index.test.js +892 -0
  431. package/dist/cjs/thorchain-utils/parseBuyTxHash.d.ts +2 -0
  432. package/dist/cjs/thorchain-utils/parseBuyTxHash.js +14 -0
  433. package/dist/cjs/thorchain-utils/routerCallData/routerCallData.test.d.ts +1 -0
  434. package/dist/cjs/thorchain-utils/routerCallData/routerCallData.test.js +20 -0
  435. package/dist/cjs/thorchain-utils/routerCallData/routerCalldata.d.ts +8 -0
  436. package/dist/cjs/thorchain-utils/routerCallData/routerCalldata.js +14 -0
  437. package/dist/cjs/thorchain-utils/service.d.ts +5 -0
  438. package/dist/cjs/thorchain-utils/service.js +15 -0
  439. package/dist/cjs/thorchain-utils/types.d.ts +273 -0
  440. package/dist/cjs/thorchain-utils/types.js +26 -0
  441. package/dist/cjs/thorchain-utils/utxo/getThorTxData.d.ts +12 -0
  442. package/dist/cjs/thorchain-utils/utxo/getThorTxData.js +14 -0
  443. package/dist/cjs/thorchain-utils/utxo/getUnsignedUtxoTransaction.d.ts +4 -0
  444. package/dist/cjs/thorchain-utils/utxo/getUnsignedUtxoTransaction.js +34 -0
  445. package/dist/cjs/thorchain-utils/utxo/getUtxoTransactionFees.d.ts +2 -0
  446. package/dist/cjs/thorchain-utils/utxo/getUtxoTransactionFees.js +29 -0
  447. package/dist/cjs/thorchain-utils/utxo/index.d.ts +3 -0
  448. package/dist/cjs/thorchain-utils/utxo/index.js +19 -0
  449. package/dist/cjs/tron-utils/getTronTransactionFees.d.ts +2 -0
  450. package/dist/cjs/tron-utils/getTronTransactionFees.js +14 -0
  451. package/dist/cjs/tron-utils/getUnsignedTronTransaction.d.ts +2 -0
  452. package/dist/cjs/tron-utils/getUnsignedTronTransaction.js +28 -0
  453. package/dist/cjs/types.d.ts +578 -0
  454. package/dist/cjs/types.js +83 -0
  455. package/dist/cjs/utils/tenderly/index.d.ts +3 -0
  456. package/dist/cjs/utils/tenderly/index.js +19 -0
  457. package/dist/cjs/utils/tenderly/simulate.d.ts +20 -0
  458. package/dist/cjs/utils/tenderly/simulate.js +109 -0
  459. package/dist/cjs/utils/tenderly/storageSlots.d.ts +8 -0
  460. package/dist/cjs/utils/tenderly/storageSlots.js +94 -0
  461. package/dist/cjs/utils/tenderly/types.d.ts +56 -0
  462. package/dist/cjs/utils/tenderly/types.js +2 -0
  463. package/dist/cjs/utils.d.ts +70 -0
  464. package/dist/cjs/utils.js +238 -0
  465. package/dist/esm/.tsbuildinfo +1 -0
  466. package/dist/esm/constants.d.ts +8 -0
  467. package/dist/esm/constants.js +146 -0
  468. package/dist/esm/cowswap-utils/constants.d.ts +14 -0
  469. package/dist/esm/cowswap-utils/constants.js +31 -0
  470. package/dist/esm/cowswap-utils/index.d.ts +24 -0
  471. package/dist/esm/cowswap-utils/index.js +152 -0
  472. package/dist/esm/index.d.ts +19 -0
  473. package/dist/esm/index.js +19 -0
  474. package/dist/esm/safe-utils/constants.d.ts +2 -0
  475. package/dist/esm/safe-utils/constants.js +11 -0
  476. package/dist/esm/safe-utils/index.d.ts +3 -0
  477. package/dist/esm/safe-utils/index.js +45 -0
  478. package/dist/esm/safe-utils/types.d.ts +57 -0
  479. package/dist/esm/safe-utils/types.js +1 -0
  480. package/dist/esm/solana-utils/getSolanaTransactionFees.d.ts +2 -0
  481. package/dist/esm/solana-utils/getSolanaTransactionFees.js +18 -0
  482. package/dist/esm/solana-utils/getUnsignedSolanaTransaction.d.ts +3 -0
  483. package/dist/esm/solana-utils/getUnsignedSolanaTransaction.js +35 -0
  484. package/dist/esm/swapper.d.ts +3 -0
  485. package/dist/esm/swapper.js +51 -0
  486. package/dist/esm/swappers/ArbitrumBridgeSwapper/ArbitrumBridgeSwapper.d.ts +2 -0
  487. package/dist/esm/swappers/ArbitrumBridgeSwapper/ArbitrumBridgeSwapper.js +4 -0
  488. package/dist/esm/swappers/ArbitrumBridgeSwapper/endpoints.d.ts +13 -0
  489. package/dist/esm/swappers/ArbitrumBridgeSwapper/endpoints.js +234 -0
  490. package/dist/esm/swappers/ArbitrumBridgeSwapper/getTradeQuote/getTradeQuote.d.ts +6 -0
  491. package/dist/esm/swappers/ArbitrumBridgeSwapper/getTradeQuote/getTradeQuote.js +80 -0
  492. package/dist/esm/swappers/ArbitrumBridgeSwapper/getTradeQuote/getTradeQuote.test.d.ts +1 -0
  493. package/dist/esm/swappers/ArbitrumBridgeSwapper/getTradeQuote/getTradeQuote.test.js +172 -0
  494. package/dist/esm/swappers/ArbitrumBridgeSwapper/getTradeRate/getTradeRate.d.ts +4 -0
  495. package/dist/esm/swappers/ArbitrumBridgeSwapper/getTradeRate/getTradeRate.js +71 -0
  496. package/dist/esm/swappers/ArbitrumBridgeSwapper/index.d.ts +2 -0
  497. package/dist/esm/swappers/ArbitrumBridgeSwapper/index.js +2 -0
  498. package/dist/esm/swappers/ArbitrumBridgeSwapper/types.d.ts +13 -0
  499. package/dist/esm/swappers/ArbitrumBridgeSwapper/types.js +7 -0
  500. package/dist/esm/swappers/ArbitrumBridgeSwapper/utils/constants.d.ts +6 -0
  501. package/dist/esm/swappers/ArbitrumBridgeSwapper/utils/constants.js +30 -0
  502. package/dist/esm/swappers/ArbitrumBridgeSwapper/utils/fetchArbitrumBridgeSwap.d.ts +35 -0
  503. package/dist/esm/swappers/ArbitrumBridgeSwapper/utils/fetchArbitrumBridgeSwap.js +143 -0
  504. package/dist/esm/swappers/ArbitrumBridgeSwapper/utils/helpers.d.ts +16 -0
  505. package/dist/esm/swappers/ArbitrumBridgeSwapper/utils/helpers.js +95 -0
  506. package/dist/esm/swappers/ArbitrumBridgeSwapper/utils/types.d.ts +3 -0
  507. package/dist/esm/swappers/ArbitrumBridgeSwapper/utils/types.js +5 -0
  508. package/dist/esm/swappers/BebopSwapper/BebopSwapper.d.ts +2 -0
  509. package/dist/esm/swappers/BebopSwapper/BebopSwapper.js +4 -0
  510. package/dist/esm/swappers/BebopSwapper/endpoints.d.ts +2 -0
  511. package/dist/esm/swappers/BebopSwapper/endpoints.js +55 -0
  512. package/dist/esm/swappers/BebopSwapper/getBebopTradeQuote/getBebopTradeQuote.d.ts +6 -0
  513. package/dist/esm/swappers/BebopSwapper/getBebopTradeQuote/getBebopTradeQuote.js +113 -0
  514. package/dist/esm/swappers/BebopSwapper/getBebopTradeRate/getBebopTradeRate.d.ts +6 -0
  515. package/dist/esm/swappers/BebopSwapper/getBebopTradeRate/getBebopTradeRate.js +88 -0
  516. package/dist/esm/swappers/BebopSwapper/index.d.ts +2 -0
  517. package/dist/esm/swappers/BebopSwapper/index.js +2 -0
  518. package/dist/esm/swappers/BebopSwapper/types.d.ts +89 -0
  519. package/dist/esm/swappers/BebopSwapper/types.js +24 -0
  520. package/dist/esm/swappers/BebopSwapper/utils/bebopService.d.ts +9 -0
  521. package/dist/esm/swappers/BebopSwapper/utils/bebopService.js +24 -0
  522. package/dist/esm/swappers/BebopSwapper/utils/fetchFromBebop.d.ts +23 -0
  523. package/dist/esm/swappers/BebopSwapper/utils/fetchFromBebop.js +88 -0
  524. package/dist/esm/swappers/BebopSwapper/utils/helpers/helpers.d.ts +14 -0
  525. package/dist/esm/swappers/BebopSwapper/utils/helpers/helpers.js +51 -0
  526. package/dist/esm/swappers/ButterSwap/ButterSwap.d.ts +2 -0
  527. package/dist/esm/swappers/ButterSwap/ButterSwap.js +8 -0
  528. package/dist/esm/swappers/ButterSwap/endpoints.d.ts +2 -0
  529. package/dist/esm/swappers/ButterSwap/endpoints.js +69 -0
  530. package/dist/esm/swappers/ButterSwap/index.d.ts +1 -0
  531. package/dist/esm/swappers/ButterSwap/index.js +1 -0
  532. package/dist/esm/swappers/ButterSwap/swapperApi/checkTradeStatus.d.ts +2 -0
  533. package/dist/esm/swappers/ButterSwap/swapperApi/checkTradeStatus.js +85 -0
  534. package/dist/esm/swappers/ButterSwap/swapperApi/checkTradeStatus.test.d.ts +1 -0
  535. package/dist/esm/swappers/ButterSwap/swapperApi/checkTradeStatus.test.js +180 -0
  536. package/dist/esm/swappers/ButterSwap/swapperApi/getTradeQuote.d.ts +3 -0
  537. package/dist/esm/swappers/ButterSwap/swapperApi/getTradeQuote.js +187 -0
  538. package/dist/esm/swappers/ButterSwap/swapperApi/getTradeQuote.test.d.ts +1 -0
  539. package/dist/esm/swappers/ButterSwap/swapperApi/getTradeQuote.test.js +60 -0
  540. package/dist/esm/swappers/ButterSwap/swapperApi/getTradeRate.d.ts +3 -0
  541. package/dist/esm/swappers/ButterSwap/swapperApi/getTradeRate.js +115 -0
  542. package/dist/esm/swappers/ButterSwap/swapperApi/getTradeRate.test.d.ts +1 -0
  543. package/dist/esm/swappers/ButterSwap/swapperApi/getTradeRate.test.js +94 -0
  544. package/dist/esm/swappers/ButterSwap/test-data/eth-btc.json +461 -0
  545. package/dist/esm/swappers/ButterSwap/test-data/routeQuote.d.ts +2 -0
  546. package/dist/esm/swappers/ButterSwap/test-data/routeQuote.js +76 -0
  547. package/dist/esm/swappers/ButterSwap/types.d.ts +236 -0
  548. package/dist/esm/swappers/ButterSwap/types.js +1 -0
  549. package/dist/esm/swappers/ButterSwap/utils/butterSwapHistoryService.d.ts +6 -0
  550. package/dist/esm/swappers/ButterSwap/utils/butterSwapHistoryService.js +13 -0
  551. package/dist/esm/swappers/ButterSwap/utils/butterSwapService.d.ts +6 -0
  552. package/dist/esm/swappers/ButterSwap/utils/butterSwapService.js +13 -0
  553. package/dist/esm/swappers/ButterSwap/utils/constants.d.ts +1 -0
  554. package/dist/esm/swappers/ButterSwap/utils/constants.js +6 -0
  555. package/dist/esm/swappers/ButterSwap/utils/helpers.d.ts +3 -0
  556. package/dist/esm/swappers/ButterSwap/utils/helpers.js +22 -0
  557. package/dist/esm/swappers/ButterSwap/xhr.d.ts +50 -0
  558. package/dist/esm/swappers/ButterSwap/xhr.js +132 -0
  559. package/dist/esm/swappers/CetusSwapper/CetusSwapper.d.ts +2 -0
  560. package/dist/esm/swappers/CetusSwapper/CetusSwapper.js +4 -0
  561. package/dist/esm/swappers/CetusSwapper/endpoints.d.ts +2 -0
  562. package/dist/esm/swappers/CetusSwapper/endpoints.js +84 -0
  563. package/dist/esm/swappers/CetusSwapper/index.d.ts +1 -0
  564. package/dist/esm/swappers/CetusSwapper/index.js +1 -0
  565. package/dist/esm/swappers/CetusSwapper/swapperApi/getTradeQuote.d.ts +3 -0
  566. package/dist/esm/swappers/CetusSwapper/swapperApi/getTradeQuote.js +118 -0
  567. package/dist/esm/swappers/CetusSwapper/swapperApi/getTradeRate.d.ts +3 -0
  568. package/dist/esm/swappers/CetusSwapper/swapperApi/getTradeRate.js +106 -0
  569. package/dist/esm/swappers/CetusSwapper/utils/constants.d.ts +3 -0
  570. package/dist/esm/swappers/CetusSwapper/utils/constants.js +5 -0
  571. package/dist/esm/swappers/CetusSwapper/utils/helpers.d.ts +13 -0
  572. package/dist/esm/swappers/CetusSwapper/utils/helpers.js +86 -0
  573. package/dist/esm/swappers/ChainflipSwapper/ChainflipSwapper.d.ts +2 -0
  574. package/dist/esm/swappers/ChainflipSwapper/ChainflipSwapper.js +8 -0
  575. package/dist/esm/swappers/ChainflipSwapper/constants.d.ts +26 -0
  576. package/dist/esm/swappers/ChainflipSwapper/constants.js +52 -0
  577. package/dist/esm/swappers/ChainflipSwapper/endpoints.d.ts +2 -0
  578. package/dist/esm/swappers/ChainflipSwapper/endpoints.js +191 -0
  579. package/dist/esm/swappers/ChainflipSwapper/index.d.ts +2 -0
  580. package/dist/esm/swappers/ChainflipSwapper/index.js +2 -0
  581. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasQuoteBoostQuote.d.ts +130 -0
  582. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasQuoteBoostQuote.js +67 -0
  583. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasQuoteEstimatedDurationsSeconds.d.ts +43 -0
  584. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasQuoteEstimatedDurationsSeconds.js +44 -0
  585. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasQuoteQuote.d.ts +157 -0
  586. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasQuoteQuote.js +79 -0
  587. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasQuoteQuoteFee.d.ts +61 -0
  588. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasQuoteQuoteFee.js +56 -0
  589. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasStatusChunkInfo.d.ts +103 -0
  590. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasStatusChunkInfo.js +54 -0
  591. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasStatusDca.d.ts +50 -0
  592. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasStatusDca.js +49 -0
  593. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasStatusEgress.d.ts +98 -0
  594. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasStatusEgress.js +56 -0
  595. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasStatusSwap.d.ts +99 -0
  596. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasStatusSwap.js +68 -0
  597. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasSwapDepositAddress.d.ts +79 -0
  598. package/dist/esm/swappers/ChainflipSwapper/models/ChainflipBaasSwapDepositAddress.js +52 -0
  599. package/dist/esm/swappers/ChainflipSwapper/models/index.d.ts +3 -0
  600. package/dist/esm/swappers/ChainflipSwapper/models/index.js +3 -0
  601. package/dist/esm/swappers/ChainflipSwapper/swapperApi/getTradeQuote.d.ts +3 -0
  602. package/dist/esm/swappers/ChainflipSwapper/swapperApi/getTradeQuote.js +139 -0
  603. package/dist/esm/swappers/ChainflipSwapper/swapperApi/getTradeRate.d.ts +2 -0
  604. package/dist/esm/swappers/ChainflipSwapper/swapperApi/getTradeRate.js +9 -0
  605. package/dist/esm/swappers/ChainflipSwapper/types.d.ts +15 -0
  606. package/dist/esm/swappers/ChainflipSwapper/types.js +7 -0
  607. package/dist/esm/swappers/ChainflipSwapper/utils/chainflipService.d.ts +5 -0
  608. package/dist/esm/swappers/ChainflipSwapper/utils/chainflipService.js +12 -0
  609. package/dist/esm/swappers/ChainflipSwapper/utils/getEvmTxFees.d.ts +8 -0
  610. package/dist/esm/swappers/ChainflipSwapper/utils/getEvmTxFees.js +11 -0
  611. package/dist/esm/swappers/ChainflipSwapper/utils/getLatestChainflipStatusMessage.d.ts +2 -0
  612. package/dist/esm/swappers/ChainflipSwapper/utils/getLatestChainflipStatusMessage.js +24 -0
  613. package/dist/esm/swappers/ChainflipSwapper/utils/getQuoteOrRate.d.ts +3 -0
  614. package/dist/esm/swappers/ChainflipSwapper/utils/getQuoteOrRate.js +293 -0
  615. package/dist/esm/swappers/ChainflipSwapper/utils/getUtxoTxFees.d.ts +9 -0
  616. package/dist/esm/swappers/ChainflipSwapper/utils/getUtxoTxFees.js +21 -0
  617. package/dist/esm/swappers/ChainflipSwapper/utils/helpers.d.ts +36 -0
  618. package/dist/esm/swappers/ChainflipSwapper/utils/helpers.js +76 -0
  619. package/dist/esm/swappers/CowSwapper/CowSwapper.d.ts +2 -0
  620. package/dist/esm/swappers/CowSwapper/CowSwapper.js +24 -0
  621. package/dist/esm/swappers/CowSwapper/CowSwapper.test.d.ts +1 -0
  622. package/dist/esm/swappers/CowSwapper/CowSwapper.test.js +178 -0
  623. package/dist/esm/swappers/CowSwapper/constants.d.ts +6 -0
  624. package/dist/esm/swappers/CowSwapper/constants.js +7 -0
  625. package/dist/esm/swappers/CowSwapper/endpoints.d.ts +2 -0
  626. package/dist/esm/swappers/CowSwapper/endpoints.js +145 -0
  627. package/dist/esm/swappers/CowSwapper/getCowSwapTradeQuote/getCowSwapTradeQuote.d.ts +3 -0
  628. package/dist/esm/swappers/CowSwapper/getCowSwapTradeQuote/getCowSwapTradeQuote.js +124 -0
  629. package/dist/esm/swappers/CowSwapper/getCowSwapTradeQuote/getCowSwapTradeQuote.test.d.ts +1 -0
  630. package/dist/esm/swappers/CowSwapper/getCowSwapTradeQuote/getCowSwapTradeQuote.test.js +520 -0
  631. package/dist/esm/swappers/CowSwapper/getCowSwapTradeRate/getCowSwapTradeRate.d.ts +3 -0
  632. package/dist/esm/swappers/CowSwapper/getCowSwapTradeRate/getCowSwapTradeRate.js +123 -0
  633. package/dist/esm/swappers/CowSwapper/index.d.ts +1 -0
  634. package/dist/esm/swappers/CowSwapper/index.js +1 -0
  635. package/dist/esm/swappers/CowSwapper/types.d.ts +18 -0
  636. package/dist/esm/swappers/CowSwapper/types.js +1 -0
  637. package/dist/esm/swappers/CowSwapper/utils/blacklist.d.ts +1 -0
  638. package/dist/esm/swappers/CowSwapper/utils/blacklist.js +12 -0
  639. package/dist/esm/swappers/CowSwapper/utils/cowService.d.ts +6 -0
  640. package/dist/esm/swappers/CowSwapper/utils/cowService.js +12 -0
  641. package/dist/esm/swappers/CowSwapper/utils/helpers/helpers.d.ts +44 -0
  642. package/dist/esm/swappers/CowSwapper/utils/helpers/helpers.js +78 -0
  643. package/dist/esm/swappers/CowSwapper/utils/helpers/helpers.test.d.ts +1 -0
  644. package/dist/esm/swappers/CowSwapper/utils/helpers/helpers.test.js +58 -0
  645. package/dist/esm/swappers/JupiterSwapper/JupiterSwapper.d.ts +2 -0
  646. package/dist/esm/swappers/JupiterSwapper/JupiterSwapper.js +24 -0
  647. package/dist/esm/swappers/JupiterSwapper/endpoints.d.ts +2 -0
  648. package/dist/esm/swappers/JupiterSwapper/endpoints.js +12 -0
  649. package/dist/esm/swappers/JupiterSwapper/errorPatterns.d.ts +15 -0
  650. package/dist/esm/swappers/JupiterSwapper/errorPatterns.js +25 -0
  651. package/dist/esm/swappers/JupiterSwapper/idls/referral.d.ts +739 -0
  652. package/dist/esm/swappers/JupiterSwapper/idls/referral.js +738 -0
  653. package/dist/esm/swappers/JupiterSwapper/index.d.ts +2 -0
  654. package/dist/esm/swappers/JupiterSwapper/index.js +2 -0
  655. package/dist/esm/swappers/JupiterSwapper/swapperApi/getTradeQuote.d.ts +3 -0
  656. package/dist/esm/swappers/JupiterSwapper/swapperApi/getTradeQuote.js +187 -0
  657. package/dist/esm/swappers/JupiterSwapper/swapperApi/getTradeRate.d.ts +3 -0
  658. package/dist/esm/swappers/JupiterSwapper/swapperApi/getTradeRate.js +168 -0
  659. package/dist/esm/swappers/JupiterSwapper/utils/constants.d.ts +9 -0
  660. package/dist/esm/swappers/JupiterSwapper/utils/constants.js +11 -0
  661. package/dist/esm/swappers/JupiterSwapper/utils/helpers.d.ts +58 -0
  662. package/dist/esm/swappers/JupiterSwapper/utils/helpers.js +169 -0
  663. package/dist/esm/swappers/JupiterSwapper/utils/jupiterService.d.ts +5 -0
  664. package/dist/esm/swappers/JupiterSwapper/utils/jupiterService.js +12 -0
  665. package/dist/esm/swappers/MayachainSwapper/MayachainSwapper.d.ts +2 -0
  666. package/dist/esm/swappers/MayachainSwapper/MayachainSwapper.js +10 -0
  667. package/dist/esm/swappers/MayachainSwapper/constants.d.ts +6 -0
  668. package/dist/esm/swappers/MayachainSwapper/constants.js +10 -0
  669. package/dist/esm/swappers/MayachainSwapper/endpoints.d.ts +2 -0
  670. package/dist/esm/swappers/MayachainSwapper/endpoints.js +65 -0
  671. package/dist/esm/swappers/MayachainSwapper/generated/generatedTradableAssetMap.json +25 -0
  672. package/dist/esm/swappers/MayachainSwapper/getTradeQuote.d.ts +4 -0
  673. package/dist/esm/swappers/MayachainSwapper/getTradeQuote.js +20 -0
  674. package/dist/esm/swappers/MayachainSwapper/getTradeRate.d.ts +4 -0
  675. package/dist/esm/swappers/MayachainSwapper/getTradeRate.js +20 -0
  676. package/dist/esm/swappers/MayachainSwapper/index.d.ts +4 -0
  677. package/dist/esm/swappers/MayachainSwapper/index.js +4 -0
  678. package/dist/esm/swappers/MayachainSwapper/utils/index.d.ts +7 -0
  679. package/dist/esm/swappers/MayachainSwapper/utils/index.js +36 -0
  680. package/dist/esm/swappers/MayachainSwapper/utils/poolAssetHelpers/poolAssetHelpers.d.ts +6 -0
  681. package/dist/esm/swappers/MayachainSwapper/utils/poolAssetHelpers/poolAssetHelpers.js +6 -0
  682. package/dist/esm/swappers/MayachainSwapper/utils/poolAssetHelpers/poolAssetHelpers.test.d.ts +1 -0
  683. package/dist/esm/swappers/MayachainSwapper/utils/poolAssetHelpers/poolAssetHelpers.test.js +54 -0
  684. package/dist/esm/swappers/NearIntentsSwapper/NearIntentsSwapper.d.ts +2 -0
  685. package/dist/esm/swappers/NearIntentsSwapper/NearIntentsSwapper.js +10 -0
  686. package/dist/esm/swappers/NearIntentsSwapper/constants.d.ts +3 -0
  687. package/dist/esm/swappers/NearIntentsSwapper/constants.js +3 -0
  688. package/dist/esm/swappers/NearIntentsSwapper/endpoints.d.ts +2 -0
  689. package/dist/esm/swappers/NearIntentsSwapper/endpoints.js +205 -0
  690. package/dist/esm/swappers/NearIntentsSwapper/index.d.ts +4 -0
  691. package/dist/esm/swappers/NearIntentsSwapper/index.js +4 -0
  692. package/dist/esm/swappers/NearIntentsSwapper/swapperApi/getTradeQuote.d.ts +3 -0
  693. package/dist/esm/swappers/NearIntentsSwapper/swapperApi/getTradeQuote.js +245 -0
  694. package/dist/esm/swappers/NearIntentsSwapper/swapperApi/getTradeRate.d.ts +3 -0
  695. package/dist/esm/swappers/NearIntentsSwapper/swapperApi/getTradeRate.js +260 -0
  696. package/dist/esm/swappers/NearIntentsSwapper/types.d.ts +6 -0
  697. package/dist/esm/swappers/NearIntentsSwapper/types.js +32 -0
  698. package/dist/esm/swappers/NearIntentsSwapper/utils/helpers/helpers.d.ts +12 -0
  699. package/dist/esm/swappers/NearIntentsSwapper/utils/helpers/helpers.js +96 -0
  700. package/dist/esm/swappers/NearIntentsSwapper/utils/oneClickService.d.ts +3 -0
  701. package/dist/esm/swappers/NearIntentsSwapper/utils/oneClickService.js +12 -0
  702. package/dist/esm/swappers/PortalsSwapper/PortalsSwapper.d.ts +2 -0
  703. package/dist/esm/swappers/PortalsSwapper/PortalsSwapper.js +4 -0
  704. package/dist/esm/swappers/PortalsSwapper/constants.d.ts +2 -0
  705. package/dist/esm/swappers/PortalsSwapper/constants.js +11 -0
  706. package/dist/esm/swappers/PortalsSwapper/endpoints.d.ts +2 -0
  707. package/dist/esm/swappers/PortalsSwapper/endpoints.js +50 -0
  708. package/dist/esm/swappers/PortalsSwapper/getPortalsTradeQuote/getPortalsTradeQuote.d.ts +5 -0
  709. package/dist/esm/swappers/PortalsSwapper/getPortalsTradeQuote/getPortalsTradeQuote.js +204 -0
  710. package/dist/esm/swappers/PortalsSwapper/getPortalsTradeRate/getPortalsTradeRate.d.ts +5 -0
  711. package/dist/esm/swappers/PortalsSwapper/getPortalsTradeRate/getPortalsTradeRate.js +185 -0
  712. package/dist/esm/swappers/PortalsSwapper/index.d.ts +2 -0
  713. package/dist/esm/swappers/PortalsSwapper/index.js +2 -0
  714. package/dist/esm/swappers/PortalsSwapper/types.d.ts +3 -0
  715. package/dist/esm/swappers/PortalsSwapper/types.js +12 -0
  716. package/dist/esm/swappers/PortalsSwapper/utils/fetchPortalsTradeOrder.d.ts +76 -0
  717. package/dist/esm/swappers/PortalsSwapper/utils/fetchPortalsTradeOrder.js +59 -0
  718. package/dist/esm/swappers/PortalsSwapper/utils/helpers.d.ts +4 -0
  719. package/dist/esm/swappers/PortalsSwapper/utils/helpers.js +27 -0
  720. package/dist/esm/swappers/RelaySwapper/RelaySwapper.d.ts +2 -0
  721. package/dist/esm/swappers/RelaySwapper/RelaySwapper.js +9 -0
  722. package/dist/esm/swappers/RelaySwapper/constant.d.ts +23 -0
  723. package/dist/esm/swappers/RelaySwapper/constant.js +62 -0
  724. package/dist/esm/swappers/RelaySwapper/endpoints.d.ts +2 -0
  725. package/dist/esm/swappers/RelaySwapper/endpoints.js +192 -0
  726. package/dist/esm/swappers/RelaySwapper/getTradeQuote/getTradeQuote.d.ts +4 -0
  727. package/dist/esm/swappers/RelaySwapper/getTradeQuote/getTradeQuote.js +28 -0
  728. package/dist/esm/swappers/RelaySwapper/getTradeRate/getTradeRate.d.ts +4 -0
  729. package/dist/esm/swappers/RelaySwapper/getTradeRate/getTradeRate.js +16 -0
  730. package/dist/esm/swappers/RelaySwapper/index.d.ts +1 -0
  731. package/dist/esm/swappers/RelaySwapper/index.js +1 -0
  732. package/dist/esm/swappers/RelaySwapper/utils/fetchRelayTrade.d.ts +5 -0
  733. package/dist/esm/swappers/RelaySwapper/utils/fetchRelayTrade.js +4 -0
  734. package/dist/esm/swappers/RelaySwapper/utils/getLatestRelayStatusMessage.d.ts +2 -0
  735. package/dist/esm/swappers/RelaySwapper/utils/getLatestRelayStatusMessage.js +18 -0
  736. package/dist/esm/swappers/RelaySwapper/utils/getRelayAssetAddress.d.ts +3 -0
  737. package/dist/esm/swappers/RelaySwapper/utils/getRelayAssetAddress.js +17 -0
  738. package/dist/esm/swappers/RelaySwapper/utils/getRelayDefaultUserAddress.d.ts +2 -0
  739. package/dist/esm/swappers/RelaySwapper/utils/getRelayDefaultUserAddress.js +14 -0
  740. package/dist/esm/swappers/RelaySwapper/utils/getRelayPsbtRelayer.d.ts +1 -0
  741. package/dist/esm/swappers/RelaySwapper/utils/getRelayPsbtRelayer.js +20 -0
  742. package/dist/esm/swappers/RelaySwapper/utils/getTrade.d.ts +14 -0
  743. package/dist/esm/swappers/RelaySwapper/utils/getTrade.js +496 -0
  744. package/dist/esm/swappers/RelaySwapper/utils/notifyTransactionIndexing.d.ts +11 -0
  745. package/dist/esm/swappers/RelaySwapper/utils/notifyTransactionIndexing.js +4 -0
  746. package/dist/esm/swappers/RelaySwapper/utils/relayService.d.ts +5 -0
  747. package/dist/esm/swappers/RelaySwapper/utils/relayService.js +12 -0
  748. package/dist/esm/swappers/RelaySwapper/utils/relayTokenToAsset.d.ts +6 -0
  749. package/dist/esm/swappers/RelaySwapper/utils/relayTokenToAsset.js +12 -0
  750. package/dist/esm/swappers/RelaySwapper/utils/relayTokenToAssetId.d.ts +3 -0
  751. package/dist/esm/swappers/RelaySwapper/utils/relayTokenToAssetId.js +106 -0
  752. package/dist/esm/swappers/RelaySwapper/utils/types.d.ts +158 -0
  753. package/dist/esm/swappers/RelaySwapper/utils/types.js +35 -0
  754. package/dist/esm/swappers/ThorchainSwapper/ThorchainSwapper.d.ts +2 -0
  755. package/dist/esm/swappers/ThorchainSwapper/ThorchainSwapper.js +10 -0
  756. package/dist/esm/swappers/ThorchainSwapper/constants.d.ts +7 -0
  757. package/dist/esm/swappers/ThorchainSwapper/constants.js +11 -0
  758. package/dist/esm/swappers/ThorchainSwapper/endpoints.d.ts +2 -0
  759. package/dist/esm/swappers/ThorchainSwapper/endpoints.js +78 -0
  760. package/dist/esm/swappers/ThorchainSwapper/generated/generatedThorLongtailTokens.json +4618 -0
  761. package/dist/esm/swappers/ThorchainSwapper/generated/generatedTradableAssetMap.json +45 -0
  762. package/dist/esm/swappers/ThorchainSwapper/getTradeQuote/getTradeQuote.d.ts +4 -0
  763. package/dist/esm/swappers/ThorchainSwapper/getTradeQuote/getTradeQuote.js +61 -0
  764. package/dist/esm/swappers/ThorchainSwapper/getTradeQuote/getTradeQuote.test.d.ts +1 -0
  765. package/dist/esm/swappers/ThorchainSwapper/getTradeQuote/getTradeQuote.test.js +208 -0
  766. package/dist/esm/swappers/ThorchainSwapper/getTradeRate/getTradeRate.d.ts +4 -0
  767. package/dist/esm/swappers/ThorchainSwapper/getTradeRate/getTradeRate.js +61 -0
  768. package/dist/esm/swappers/ThorchainSwapper/index.d.ts +7 -0
  769. package/dist/esm/swappers/ThorchainSwapper/index.js +7 -0
  770. package/dist/esm/swappers/ThorchainSwapper/utils/addL1ToLongtailPartsToMemo/addL1ToLongtailPartsToMemo.d.ts +14 -0
  771. package/dist/esm/swappers/ThorchainSwapper/utils/addL1ToLongtailPartsToMemo/addL1ToLongtailPartsToMemo.js +64 -0
  772. package/dist/esm/swappers/ThorchainSwapper/utils/addL1ToLongtailPartsToMemo/addL1ToLongtailPartsToMemo.test.d.ts +1 -0
  773. package/dist/esm/swappers/ThorchainSwapper/utils/addL1ToLongtailPartsToMemo/addL1ToLongtailPartsToMemo.test.js +116 -0
  774. package/dist/esm/swappers/ThorchainSwapper/utils/constants.d.ts +4 -0
  775. package/dist/esm/swappers/ThorchainSwapper/utils/constants.js +5 -0
  776. package/dist/esm/swappers/ThorchainSwapper/utils/getBestAggregator.d.ts +6 -0
  777. package/dist/esm/swappers/ThorchainSwapper/utils/getBestAggregator.js +29 -0
  778. package/dist/esm/swappers/ThorchainSwapper/utils/getL1ToLongtailQuote.d.ts +4 -0
  779. package/dist/esm/swappers/ThorchainSwapper/utils/getL1ToLongtailQuote.js +119 -0
  780. package/dist/esm/swappers/ThorchainSwapper/utils/getL1ToLongtailRate.d.ts +4 -0
  781. package/dist/esm/swappers/ThorchainSwapper/utils/getL1ToLongtailRate.js +107 -0
  782. package/dist/esm/swappers/ThorchainSwapper/utils/getLongtailQuote.d.ts +4 -0
  783. package/dist/esm/swappers/ThorchainSwapper/utils/getLongtailQuote.js +66 -0
  784. package/dist/esm/swappers/ThorchainSwapper/utils/getLongtailRate.d.ts +4 -0
  785. package/dist/esm/swappers/ThorchainSwapper/utils/getLongtailRate.js +66 -0
  786. package/dist/esm/swappers/ThorchainSwapper/utils/getShortenedFinalAssetLimit/getShortenedFinalAssetLimit.d.ts +5 -0
  787. package/dist/esm/swappers/ThorchainSwapper/utils/getShortenedFinalAssetLimit/getShortenedFinalAssetLimit.js +48 -0
  788. package/dist/esm/swappers/ThorchainSwapper/utils/getShortenedFinalAssetLimit/getShortenedFinalAssetLimit.test.d.ts +1 -0
  789. package/dist/esm/swappers/ThorchainSwapper/utils/getShortenedFinalAssetLimit/getShortenedFinalAssetLimit.test.js +97 -0
  790. package/dist/esm/swappers/ThorchainSwapper/utils/getUniqueAddressSubstring/getUniqueAddressSubstring.d.ts +2 -0
  791. package/dist/esm/swappers/ThorchainSwapper/utils/getUniqueAddressSubstring/getUniqueAddressSubstring.js +23 -0
  792. package/dist/esm/swappers/ThorchainSwapper/utils/getUniqueAddressSubstring/getUniqueAddressSubstring.test.d.ts +1 -0
  793. package/dist/esm/swappers/ThorchainSwapper/utils/getUniqueAddressSubstring/getUniqueAddressSubstring.test.js +36 -0
  794. package/dist/esm/swappers/ThorchainSwapper/utils/longTailHelpers.d.ts +48 -0
  795. package/dist/esm/swappers/ThorchainSwapper/utils/longTailHelpers.js +136 -0
  796. package/dist/esm/swappers/ThorchainSwapper/utils/poolAssetHelpers/poolAssetHelpers.d.ts +6 -0
  797. package/dist/esm/swappers/ThorchainSwapper/utils/poolAssetHelpers/poolAssetHelpers.js +6 -0
  798. package/dist/esm/swappers/ThorchainSwapper/utils/poolAssetHelpers/poolAssetHelpers.test.d.ts +1 -0
  799. package/dist/esm/swappers/ThorchainSwapper/utils/poolAssetHelpers/poolAssetHelpers.test.js +54 -0
  800. package/dist/esm/swappers/ThorchainSwapper/utils/test-data/responses.d.ts +7 -0
  801. package/dist/esm/swappers/ThorchainSwapper/utils/test-data/responses.js +198 -0
  802. package/dist/esm/swappers/ThorchainSwapper/utils/test-data/setupThorswapDeps.d.ts +2 -0
  803. package/dist/esm/swappers/ThorchainSwapper/utils/test-data/setupThorswapDeps.js +34 -0
  804. package/dist/esm/swappers/ZrxSwapper/ZrxSwapper.d.ts +2 -0
  805. package/dist/esm/swappers/ZrxSwapper/ZrxSwapper.js +4 -0
  806. package/dist/esm/swappers/ZrxSwapper/endpoints.d.ts +2 -0
  807. package/dist/esm/swappers/ZrxSwapper/endpoints.js +72 -0
  808. package/dist/esm/swappers/ZrxSwapper/getZrxTradeQuote/getZrxTradeQuote.d.ts +6 -0
  809. package/dist/esm/swappers/ZrxSwapper/getZrxTradeQuote/getZrxTradeQuote.js +112 -0
  810. package/dist/esm/swappers/ZrxSwapper/getZrxTradeQuote/getZrxTradeQuote.test.d.ts +1 -0
  811. package/dist/esm/swappers/ZrxSwapper/getZrxTradeQuote/getZrxTradeQuote.test.js +134 -0
  812. package/dist/esm/swappers/ZrxSwapper/getZrxTradeRate/getZrxTradeRate.d.ts +4 -0
  813. package/dist/esm/swappers/ZrxSwapper/getZrxTradeRate/getZrxTradeRate.js +68 -0
  814. package/dist/esm/swappers/ZrxSwapper/types.d.ts +76 -0
  815. package/dist/esm/swappers/ZrxSwapper/types.js +10 -0
  816. package/dist/esm/swappers/ZrxSwapper/utils/constants.d.ts +4 -0
  817. package/dist/esm/swappers/ZrxSwapper/utils/constants.js +23 -0
  818. package/dist/esm/swappers/ZrxSwapper/utils/fetchFromZrx.d.ts +25 -0
  819. package/dist/esm/swappers/ZrxSwapper/utils/fetchFromZrx.js +49 -0
  820. package/dist/esm/swappers/ZrxSwapper/utils/helpers/helpers.d.ts +34 -0
  821. package/dist/esm/swappers/ZrxSwapper/utils/helpers/helpers.js +133 -0
  822. package/dist/esm/swappers/ZrxSwapper/utils/zrxService.d.ts +9 -0
  823. package/dist/esm/swappers/ZrxSwapper/utils/zrxService.js +12 -0
  824. package/dist/esm/swappers/utils/filterBuyAssetsBySellAssetId/filterBuyAssetsBySellAssetId.d.ts +4 -0
  825. package/dist/esm/swappers/utils/filterBuyAssetsBySellAssetId/filterBuyAssetsBySellAssetId.js +21 -0
  826. package/dist/esm/swappers/utils/helpers/helpers.d.ts +3 -0
  827. package/dist/esm/swappers/utils/helpers/helpers.js +47 -0
  828. package/dist/esm/swappers/utils/helpers/helpers.test.d.ts +1 -0
  829. package/dist/esm/swappers/utils/helpers/helpers.test.js +8 -0
  830. package/dist/esm/swappers/utils/test-data/assets.d.ts +17 -0
  831. package/dist/esm/swappers/utils/test-data/assets.js +218 -0
  832. package/dist/esm/swappers/utils/test-data/cryptoMarketDataById.d.ts +5 -0
  833. package/dist/esm/swappers/utils/test-data/cryptoMarketDataById.js +15 -0
  834. package/dist/esm/swappers/utils/test-data/fees.d.ts +2 -0
  835. package/dist/esm/swappers/utils/test-data/fees.js +17 -0
  836. package/dist/esm/swappers/utils/test-data/index.d.ts +2 -0
  837. package/dist/esm/swappers/utils/test-data/index.js +2 -0
  838. package/dist/esm/swappers/utils/test-data/setupSwapQuote.d.ts +8 -0
  839. package/dist/esm/swappers/utils/test-data/setupSwapQuote.js +48 -0
  840. package/dist/esm/thorchain-utils/checkTradeStatus.d.ts +8 -0
  841. package/dist/esm/thorchain-utils/checkTradeStatus.js +68 -0
  842. package/dist/esm/thorchain-utils/cosmossdk/getCosmosSdkTransactionFees.d.ts +2 -0
  843. package/dist/esm/thorchain-utils/cosmossdk/getCosmosSdkTransactionFees.js +11 -0
  844. package/dist/esm/thorchain-utils/cosmossdk/index.d.ts +1 -0
  845. package/dist/esm/thorchain-utils/cosmossdk/index.js +1 -0
  846. package/dist/esm/thorchain-utils/evm/getEvmData.d.ts +13 -0
  847. package/dist/esm/thorchain-utils/evm/getEvmData.js +87 -0
  848. package/dist/esm/thorchain-utils/evm/getEvmTransactionFees.d.ts +2 -0
  849. package/dist/esm/thorchain-utils/evm/getEvmTransactionFees.js +19 -0
  850. package/dist/esm/thorchain-utils/evm/getThorTxData.d.ts +18 -0
  851. package/dist/esm/thorchain-utils/evm/getThorTxData.js +29 -0
  852. package/dist/esm/thorchain-utils/evm/getUnsignedEvmTransaction.d.ts +4 -0
  853. package/dist/esm/thorchain-utils/evm/getUnsignedEvmTransaction.js +19 -0
  854. package/dist/esm/thorchain-utils/evm/index.d.ts +3 -0
  855. package/dist/esm/thorchain-utils/evm/index.js +3 -0
  856. package/dist/esm/thorchain-utils/getCallDataFromQuote.d.ts +9 -0
  857. package/dist/esm/thorchain-utils/getCallDataFromQuote.js +50 -0
  858. package/dist/esm/thorchain-utils/getInboundAddressDataForChain.d.ts +5 -0
  859. package/dist/esm/thorchain-utils/getInboundAddressDataForChain.js +31 -0
  860. package/dist/esm/thorchain-utils/getL1RateOrQuote.d.ts +6 -0
  861. package/dist/esm/thorchain-utils/getL1RateOrQuote.js +290 -0
  862. package/dist/esm/thorchain-utils/getLatestThorTxStatusMessage.d.ts +2 -0
  863. package/dist/esm/thorchain-utils/getLatestThorTxStatusMessage.js +76 -0
  864. package/dist/esm/thorchain-utils/getLimitWithManualSlippage/getLimitWithManualSlippage.d.ts +5 -0
  865. package/dist/esm/thorchain-utils/getLimitWithManualSlippage/getLimitWithManualSlippage.js +7 -0
  866. package/dist/esm/thorchain-utils/getLimitWithManualSlippage/getLimitWithManualSlippage.test.d.ts +1 -0
  867. package/dist/esm/thorchain-utils/getLimitWithManualSlippage/getLimitWithManualSlippage.test.js +14 -0
  868. package/dist/esm/thorchain-utils/getPoolDetails.d.ts +20 -0
  869. package/dist/esm/thorchain-utils/getPoolDetails.js +47 -0
  870. package/dist/esm/thorchain-utils/getQuote.d.ts +21 -0
  871. package/dist/esm/thorchain-utils/getQuote.js +63 -0
  872. package/dist/esm/thorchain-utils/getThresholdedAffiliateBps/getThresholdedAffiliateBps.d.ts +11 -0
  873. package/dist/esm/thorchain-utils/getThresholdedAffiliateBps/getThresholdedAffiliateBps.js +34 -0
  874. package/dist/esm/thorchain-utils/getThresholdedAffiliateBps/getThresholdedAffiliateBps.test.d.ts +1 -0
  875. package/dist/esm/thorchain-utils/getThresholdedAffiliateBps/getThresholdedAffiliateBps.test.js +92 -0
  876. package/dist/esm/thorchain-utils/index.d.ts +30 -0
  877. package/dist/esm/thorchain-utils/index.js +131 -0
  878. package/dist/esm/thorchain-utils/memo/addAggregatorAddressToMemo.d.ts +12 -0
  879. package/dist/esm/thorchain-utils/memo/addAggregatorAddressToMemo.js +39 -0
  880. package/dist/esm/thorchain-utils/memo/addFinalAssetAddressToMemo.d.ts +15 -0
  881. package/dist/esm/thorchain-utils/memo/addFinalAssetAddressToMemo.js +44 -0
  882. package/dist/esm/thorchain-utils/memo/addFinalAssetLimitToMemo.d.ts +16 -0
  883. package/dist/esm/thorchain-utils/memo/addFinalAssetLimitToMemo.js +47 -0
  884. package/dist/esm/thorchain-utils/memo/addLimitToMemo.d.ts +18 -0
  885. package/dist/esm/thorchain-utils/memo/addLimitToMemo.js +55 -0
  886. package/dist/esm/thorchain-utils/memo/assertAndProcessMemo.d.ts +4 -0
  887. package/dist/esm/thorchain-utils/memo/assertAndProcessMemo.js +193 -0
  888. package/dist/esm/thorchain-utils/memo/constants.d.ts +1 -0
  889. package/dist/esm/thorchain-utils/memo/constants.js +1 -0
  890. package/dist/esm/thorchain-utils/memo/index.d.ts +6 -0
  891. package/dist/esm/thorchain-utils/memo/index.js +6 -0
  892. package/dist/esm/thorchain-utils/memo/index.test.d.ts +1 -0
  893. package/dist/esm/thorchain-utils/memo/index.test.js +890 -0
  894. package/dist/esm/thorchain-utils/parseBuyTxHash.d.ts +2 -0
  895. package/dist/esm/thorchain-utils/parseBuyTxHash.js +10 -0
  896. package/dist/esm/thorchain-utils/routerCallData/routerCallData.test.d.ts +1 -0
  897. package/dist/esm/thorchain-utils/routerCallData/routerCallData.test.js +18 -0
  898. package/dist/esm/thorchain-utils/routerCallData/routerCalldata.d.ts +8 -0
  899. package/dist/esm/thorchain-utils/routerCallData/routerCalldata.js +10 -0
  900. package/dist/esm/thorchain-utils/service.d.ts +5 -0
  901. package/dist/esm/thorchain-utils/service.js +12 -0
  902. package/dist/esm/thorchain-utils/types.d.ts +273 -0
  903. package/dist/esm/thorchain-utils/types.js +23 -0
  904. package/dist/esm/thorchain-utils/utxo/getThorTxData.d.ts +12 -0
  905. package/dist/esm/thorchain-utils/utxo/getThorTxData.js +10 -0
  906. package/dist/esm/thorchain-utils/utxo/getUnsignedUtxoTransaction.d.ts +4 -0
  907. package/dist/esm/thorchain-utils/utxo/getUnsignedUtxoTransaction.js +30 -0
  908. package/dist/esm/thorchain-utils/utxo/getUtxoTransactionFees.d.ts +2 -0
  909. package/dist/esm/thorchain-utils/utxo/getUtxoTransactionFees.js +25 -0
  910. package/dist/esm/thorchain-utils/utxo/index.d.ts +3 -0
  911. package/dist/esm/thorchain-utils/utxo/index.js +3 -0
  912. package/dist/esm/tron-utils/getTronTransactionFees.d.ts +2 -0
  913. package/dist/esm/tron-utils/getTronTransactionFees.js +10 -0
  914. package/dist/esm/tron-utils/getUnsignedTronTransaction.d.ts +2 -0
  915. package/dist/esm/tron-utils/getUnsignedTronTransaction.js +24 -0
  916. package/dist/esm/types.d.ts +578 -0
  917. package/dist/esm/types.js +80 -0
  918. package/dist/esm/utils/tenderly/index.d.ts +3 -0
  919. package/dist/esm/utils/tenderly/index.js +3 -0
  920. package/dist/esm/utils/tenderly/simulate.d.ts +20 -0
  921. package/dist/esm/utils/tenderly/simulate.js +102 -0
  922. package/dist/esm/utils/tenderly/storageSlots.d.ts +8 -0
  923. package/dist/esm/utils/tenderly/storageSlots.js +86 -0
  924. package/dist/esm/utils/tenderly/types.d.ts +56 -0
  925. package/dist/esm/utils/tenderly/types.js +1 -0
  926. package/dist/esm/utils.d.ts +70 -0
  927. package/dist/esm/utils.js +213 -0
  928. package/package.json +8 -8
@@ -0,0 +1,496 @@
1
+ import { btcChainId, fromChainId, solanaChainId, tronChainId } from '@shapeshiftoss/caip';
2
+ import { evm, isEvmChainId } from '@shapeshiftoss/chain-adapters';
3
+ import { bnOrZero, convertBasisPointsToPercentage, convertDecimalPercentageToBasisPoints, convertPrecision, DAO_TREASURY_BASE, } from '@shapeshiftoss/utils';
4
+ import { Err, Ok } from '@sniptt/monads';
5
+ import { PublicKey } from '@solana/web3.js';
6
+ import axios from 'axios';
7
+ import { getAddress, zeroAddress } from 'viem';
8
+ import { MixPanelEvent, SwapperName, TradeQuoteError } from '../../../types.js';
9
+ import { getInputOutputRate, makeSwapErrorRight } from '../../../utils.js';
10
+ import { simulateWithStateOverrides } from '../../../utils/tenderly/index.js';
11
+ import { isNativeEvmAsset } from '../../utils/helpers/helpers.js';
12
+ import { MAXIMUM_SUPPORTED_RELAY_STEPS, relayErrorCodeToTradeQuoteError } from '../constant.js';
13
+ import { getRelayAssetAddress } from '../utils/getRelayAssetAddress.js';
14
+ import { relayTokenToAsset } from '../utils/relayTokenToAsset.js';
15
+ import { relayTokenToAssetId } from '../utils/relayTokenToAssetId.js';
16
+ import { isRelayError, isRelayQuoteEvmItemData, isRelayQuoteSolanaItemData, isRelayQuoteUtxoItemData, } from '../utils/types.js';
17
+ import { fetchRelayTrade } from './fetchRelayTrade.js';
18
+ import { getRelayDefaultUserAddress } from './getRelayDefaultUserAddress.js';
19
+ import { getRelayPsbtRelayer } from './getRelayPsbtRelayer.js';
20
+ export async function getTrade({ input, deps, relayChainMap, }) {
21
+ const { sellAsset, buyAsset, sellAmountIncludingProtocolFeesCryptoBaseUnit, receiveAddress, accountNumber, affiliateBps, xpub, } = input;
22
+ const slippageToleranceBps = input.slippageTolerancePercentageDecimal
23
+ ? convertDecimalPercentageToBasisPoints(input.slippageTolerancePercentageDecimal).toFixed()
24
+ : undefined;
25
+ const sellRelayChainId = relayChainMap[sellAsset.chainId];
26
+ const buyRelayChainId = relayChainMap[buyAsset.chainId];
27
+ if (!isEvmChainId(sellAsset.chainId) &&
28
+ sellAsset.chainId !== btcChainId &&
29
+ sellAsset.chainId !== solanaChainId &&
30
+ sellAsset.chainId !== tronChainId) {
31
+ return Err(makeSwapErrorRight({
32
+ message: `asset '${sellAsset.name}' on chainId '${sellAsset.chainId}' not supported`,
33
+ code: TradeQuoteError.UnsupportedTradePair,
34
+ }));
35
+ }
36
+ if (!isEvmChainId(buyAsset.chainId) &&
37
+ buyAsset.chainId !== btcChainId &&
38
+ buyAsset.chainId !== solanaChainId &&
39
+ buyAsset.chainId !== tronChainId) {
40
+ return Err(makeSwapErrorRight({
41
+ message: `asset '${buyAsset.name}' on chainId '${buyAsset.chainId}' not supported`,
42
+ code: TradeQuoteError.UnsupportedTradePair,
43
+ }));
44
+ }
45
+ if (sellRelayChainId === undefined) {
46
+ return Err(makeSwapErrorRight({
47
+ message: `asset '${sellAsset.name}' on chainId '${sellAsset.chainId}' not supported`,
48
+ code: TradeQuoteError.UnsupportedTradePair,
49
+ }));
50
+ }
51
+ if (buyRelayChainId === undefined) {
52
+ return Err(makeSwapErrorRight({
53
+ message: `asset '${buyAsset.name}' on chainId '${buyAsset.chainId}' not supported`,
54
+ code: TradeQuoteError.UnsupportedTradePair,
55
+ }));
56
+ }
57
+ const sendAddress = (() => {
58
+ // We absolutely need to use the default user address for BTC swaps
59
+ // or relay quote endpoint will fail at estimation time because we don't necessarily
60
+ // send an address with enough funds but use multiple UTXOs to fund the swap
61
+ if (sellAsset.chainId === btcChainId) {
62
+ return getRelayDefaultUserAddress(sellAsset.chainId);
63
+ }
64
+ if (input.quoteOrRate === 'rate') {
65
+ if (input.sendAddress)
66
+ return input.sendAddress;
67
+ return getRelayDefaultUserAddress(sellAsset.chainId);
68
+ }
69
+ return input.sendAddress;
70
+ })();
71
+ const recipient = (() => {
72
+ if (input.quoteOrRate === 'rate') {
73
+ if (input.receiveAddress)
74
+ return input.receiveAddress;
75
+ return getRelayDefaultUserAddress(buyAsset.chainId);
76
+ }
77
+ return input.receiveAddress;
78
+ })();
79
+ const refundTo = (() => {
80
+ if (input.quoteOrRate === 'rate') {
81
+ if (input.sendAddress)
82
+ return input.sendAddress;
83
+ return getRelayDefaultUserAddress(sellAsset.chainId);
84
+ }
85
+ if (!input.sendAddress)
86
+ throw new Error('Send address is required for refund');
87
+ return input.sendAddress;
88
+ })();
89
+ const maybeQuote = await fetchRelayTrade({
90
+ originChainId: sellRelayChainId,
91
+ originCurrency: getRelayAssetAddress(sellAsset),
92
+ destinationChainId: buyRelayChainId,
93
+ destinationCurrency: getRelayAssetAddress(buyAsset),
94
+ tradeType: 'EXACT_INPUT',
95
+ amount: sellAmountIncludingProtocolFeesCryptoBaseUnit,
96
+ recipient,
97
+ user: sendAddress,
98
+ refundTo,
99
+ slippageTolerance: slippageToleranceBps,
100
+ refundOnOrigin: true,
101
+ referrer: 'shapeshift',
102
+ appFees: [
103
+ {
104
+ // Relay expects a BASE EVM address for affiliate fees
105
+ recipient: DAO_TREASURY_BASE,
106
+ fee: affiliateBps,
107
+ },
108
+ ],
109
+ }, deps.config);
110
+ if (maybeQuote.isErr()) {
111
+ const error = maybeQuote.unwrapErr();
112
+ if (!axios.isAxiosError(error.cause)) {
113
+ return Err(makeSwapErrorRight({
114
+ message: 'Unknown error',
115
+ code: TradeQuoteError.UnknownError,
116
+ }));
117
+ }
118
+ const relayError = error.cause?.response?.data;
119
+ if (!isRelayError(relayError)) {
120
+ return Err(makeSwapErrorRight({
121
+ message: 'Unknown error',
122
+ code: TradeQuoteError.UnknownError,
123
+ }));
124
+ }
125
+ const tradeQuoteErrorCode = relayErrorCodeToTradeQuoteError[relayError.errorCode];
126
+ if (tradeQuoteErrorCode) {
127
+ return Err(makeSwapErrorRight({
128
+ message: relayError.message,
129
+ code: tradeQuoteErrorCode,
130
+ }));
131
+ }
132
+ // Fallback for unmapped error codes (shouldn't happen, but prevents crashes)
133
+ return Err(makeSwapErrorRight({
134
+ message: relayError.message || 'Unknown Relay error',
135
+ code: TradeQuoteError.UnknownError,
136
+ }));
137
+ }
138
+ const { data: quote } = maybeQuote.unwrap();
139
+ const { slippageTolerance, currencyOut, timeEstimate } = quote.details;
140
+ const buyAmountAfterFeesCryptoBaseUnit = currencyOut.amount;
141
+ const rate = getInputOutputRate({
142
+ sellAmountCryptoBaseUnit: sellAmountIncludingProtocolFeesCryptoBaseUnit,
143
+ buyAmountCryptoBaseUnit: buyAmountAfterFeesCryptoBaseUnit,
144
+ sellAsset,
145
+ buyAsset,
146
+ });
147
+ const { currency: relayToken } = currencyOut;
148
+ const swapSteps = quote.steps.filter(step => step.id !== 'approve');
149
+ if (swapSteps.length >= MAXIMUM_SUPPORTED_RELAY_STEPS) {
150
+ deps.mixPanel?.track(MixPanelEvent.RelayMultiHop);
151
+ return Err(makeSwapErrorRight({
152
+ message: `Relay quote with ${swapSteps.length} swap steps not supported (maximum ${MAXIMUM_SUPPORTED_RELAY_STEPS})`,
153
+ code: TradeQuoteError.UnsupportedTradePair,
154
+ }));
155
+ }
156
+ const swapStepsContainsMultipleItems = swapSteps.some(step => step.items?.length && step.items.length > 1);
157
+ // It's uncommon but can happen, log it to mixpanel to ensure we will investigate if it happens too much in the future
158
+ if (swapStepsContainsMultipleItems) {
159
+ deps.mixPanel?.track(MixPanelEvent.RelayStepMultipleItems);
160
+ return Err(makeSwapErrorRight({
161
+ message: `Relay quote with step containing multiple items not supported`,
162
+ code: TradeQuoteError.UnsupportedTradePair,
163
+ }));
164
+ }
165
+ const slippageTolerancePercentageDecimal = (() => {
166
+ if (input.slippageTolerancePercentageDecimal)
167
+ return input.slippageTolerancePercentageDecimal;
168
+ const destinationSlippageTolerancePercentageDecimal = bnOrZero(slippageTolerance.destination.percent);
169
+ if (destinationSlippageTolerancePercentageDecimal.gt(0)) {
170
+ return convertBasisPointsToPercentage(destinationSlippageTolerancePercentageDecimal).toFixed();
171
+ }
172
+ const originSlippageTolerancePercentageDecimal = bnOrZero(slippageTolerance.origin.percent);
173
+ return convertBasisPointsToPercentage(originSlippageTolerancePercentageDecimal).toFixed();
174
+ })();
175
+ const protocolAssetId = relayTokenToAssetId(relayToken);
176
+ const maybeProtocolAsset = relayTokenToAsset(relayToken, deps.assetsById);
177
+ if (maybeProtocolAsset.isErr()) {
178
+ return Err(maybeProtocolAsset.unwrapErr());
179
+ }
180
+ const protocolAsset = maybeProtocolAsset.unwrap();
181
+ const convertSolanaInstruction = (instruction) => ({
182
+ ...instruction,
183
+ keys: instruction.keys.map(account => ({
184
+ ...account,
185
+ pubkey: new PublicKey(account.pubkey),
186
+ })),
187
+ data: Buffer.from(instruction.data, 'hex'),
188
+ programId: new PublicKey(instruction.programId),
189
+ });
190
+ const isCrossChain = sellAsset.chainId !== buyAsset.chainId;
191
+ const maybeAppFeesAsset = (() => {
192
+ // @TODO: when implementing fees, find if solana to solana assets are always showing empty app fees even if
193
+ // affiliate bps are set, if we remove this the quote fetching will fail because relayTokenToAsset will throw
194
+ if (sellAsset.chainId === solanaChainId &&
195
+ buyAsset.chainId === solanaChainId &&
196
+ quote.fees.app.currency.address === zeroAddress) {
197
+ return Ok(undefined);
198
+ }
199
+ return relayTokenToAsset(quote.fees.app.currency, deps.assetsById);
200
+ })();
201
+ const isNativeCurrencyInput = (() => {
202
+ if (maybeAppFeesAsset.isErr())
203
+ return false;
204
+ const appFeesAsset = maybeAppFeesAsset.unwrap();
205
+ if (!appFeesAsset)
206
+ return false;
207
+ if (isEvmChainId(sellAsset.chainId)) {
208
+ return isNativeEvmAsset(sellAsset.assetId) && sellAsset.chainId === appFeesAsset.chainId;
209
+ }
210
+ if (sellAsset.chainId === btcChainId) {
211
+ return sellAsset.assetId === appFeesAsset.assetId;
212
+ }
213
+ if (sellAsset.chainId === solanaChainId) {
214
+ return sellAsset.assetId === appFeesAsset.assetId;
215
+ }
216
+ if (sellAsset.chainId === tronChainId) {
217
+ return sellAsset.assetId === appFeesAsset.assetId;
218
+ }
219
+ return false;
220
+ })();
221
+ const appFeesBaseUnit = (() => {
222
+ if (maybeAppFeesAsset.isErr())
223
+ return '0';
224
+ const appFeesAsset = maybeAppFeesAsset.unwrap();
225
+ if (!appFeesAsset)
226
+ return '0';
227
+ // For cross-chain: always add back app fees
228
+ // For same-chain: only add back if input is native currency
229
+ if (isCrossChain || isNativeCurrencyInput) {
230
+ if (buyAsset.assetId === appFeesAsset.assetId) {
231
+ return quote.fees.app.amount;
232
+ }
233
+ // if fee is in sell asset, convert to buy asset
234
+ if (appFeesAsset.assetId === sellAsset.assetId) {
235
+ return convertPrecision({
236
+ value: quote.fees.app.amount,
237
+ inputExponent: appFeesAsset.precision,
238
+ outputExponent: buyAsset.precision,
239
+ })
240
+ .times(rate)
241
+ .toFixed(0);
242
+ }
243
+ // If fee is in a different asset, convert to buy asset
244
+ const feeAmountUsd = quote.fees.app.amountUsd;
245
+ const buyAssetUsd = currencyOut.amountUsd;
246
+ if (feeAmountUsd && buyAssetUsd && buyAmountAfterFeesCryptoBaseUnit) {
247
+ // Calculate the rate: (buyAssetAmount / buyAssetUsd) gives us "buy asset per USD"
248
+ // Then multiply by feeAmountUsd to get the equivalent buy asset amount
249
+ const buyAssetCryptoBaseUnitPerUsd = bnOrZero(buyAmountAfterFeesCryptoBaseUnit).div(buyAssetUsd);
250
+ const appFeesCryptoBaseUnit = bnOrZero(feeAmountUsd).times(buyAssetCryptoBaseUnitPerUsd);
251
+ return appFeesCryptoBaseUnit.toFixed(0);
252
+ }
253
+ return '0';
254
+ }
255
+ // cross-chain or same-chain with native currency as input are not applicable
256
+ return '0';
257
+ })();
258
+ // If same chain and not sellAsset as native currency, convert to protocol fee as native value is sent as well as erc20 tokens
259
+ // This is a edge case we never encountered before and it's more convenient to consider it as protocol fee as quickwin
260
+ const appFeesAsProtocolFee = (() => {
261
+ if (sellAsset.chainId !== buyAsset.chainId)
262
+ return {};
263
+ if (maybeAppFeesAsset.isErr())
264
+ return {};
265
+ const appFeesAsset = maybeAppFeesAsset.unwrap();
266
+ if (!appFeesAsset || isNativeCurrencyInput)
267
+ return {};
268
+ return {
269
+ [appFeesAsset.assetId]: {
270
+ amountCryptoBaseUnit: quote.fees.app.amount,
271
+ asset: appFeesAsset,
272
+ requiresBalance: false,
273
+ },
274
+ };
275
+ })();
276
+ const relayerFeeRelayToken = quote.fees.relayer.currency;
277
+ const maybeRelayerFeesAsset = relayTokenToAsset(relayerFeeRelayToken, deps.assetsById);
278
+ if (maybeRelayerFeesAsset.isErr()) {
279
+ return Err(maybeRelayerFeesAsset.unwrapErr());
280
+ }
281
+ const relayerFeesAsset = maybeRelayerFeesAsset.unwrap();
282
+ const relayerFeesBuyAssetCryptoBaseUnit = (() => {
283
+ const relayerFeeAmount = quote.fees.relayer.amount;
284
+ // If fee is already in buy asset, return as is
285
+ if (relayerFeesAsset.assetId === buyAsset.assetId) {
286
+ return relayerFeeAmount;
287
+ }
288
+ // if fee is in sell asset, convert to buy asset
289
+ if (relayerFeesAsset.assetId === sellAsset.assetId) {
290
+ return convertPrecision({
291
+ value: relayerFeeAmount,
292
+ inputExponent: relayerFeesAsset.precision,
293
+ outputExponent: buyAsset.precision,
294
+ })
295
+ .times(rate)
296
+ .toFixed(0);
297
+ }
298
+ // If fee is in a different asset, convert to buy asset
299
+ const feeAmountUsd = quote.fees.relayer.amountUsd;
300
+ const buyAssetUsd = currencyOut.amountUsd;
301
+ const buyAssetAmountBaseUnit = currencyOut.amount;
302
+ if (feeAmountUsd && buyAssetUsd && buyAssetAmountBaseUnit) {
303
+ // Calculate the rate: (buyAssetAmount / buyAssetUsd) gives us "buy asset per USD"
304
+ // Then multiply by feeAmountUsd to get the equivalent buy asset amount
305
+ const buyAssetCryptoBaseUnitPerUsd = bnOrZero(buyAssetAmountBaseUnit).div(buyAssetUsd);
306
+ const buyAssetFeesCryptoBaseUnit = bnOrZero(feeAmountUsd).times(buyAssetCryptoBaseUnitPerUsd);
307
+ return buyAssetFeesCryptoBaseUnit.toFixed(0);
308
+ }
309
+ return '0';
310
+ })();
311
+ const networkFeeCryptoBaseUnit = await (async () => {
312
+ if (sellAsset.chainId === btcChainId) {
313
+ const firstStep = swapSteps[0];
314
+ if (!firstStep)
315
+ throw new Error('Relay quote step contains no items');
316
+ const selectedItem = firstStep.items?.[0];
317
+ if (!selectedItem)
318
+ throw new Error('Relay quote step contains no items');
319
+ if (!selectedItem.data)
320
+ throw new Error('Relay quote step contains no data');
321
+ if (!isRelayQuoteUtxoItemData(selectedItem.data))
322
+ throw new Error('Relay BTC quote step contains no psbt');
323
+ if (!selectedItem.data.psbt)
324
+ throw new Error('Relay BTC quote step contains no psbt');
325
+ const relayer = getRelayPsbtRelayer(selectedItem.data.psbt, sellAmountIncludingProtocolFeesCryptoBaseUnit);
326
+ if (!relayer)
327
+ throw new Error('Relay BTC quote step contains no relayer');
328
+ const getFeeDataInput = {
329
+ to: relayer,
330
+ value: sellAmountIncludingProtocolFeesCryptoBaseUnit,
331
+ chainSpecific: {
332
+ pubkey: xpub ?? getRelayDefaultUserAddress(sellAsset.chainId),
333
+ opReturnData: firstStep.requestId,
334
+ },
335
+ sendMax: false,
336
+ };
337
+ const adapter = deps.assertGetUtxoChainAdapter(sellAsset.chainId);
338
+ const feeData = await adapter.getFeeData(getFeeDataInput);
339
+ return feeData.fast.txFee;
340
+ }
341
+ // Use Tenderly simulation with state overrides for EVM chains
342
+ if (isEvmChainId(sellAsset.chainId)) {
343
+ const firstStep = swapSteps[0];
344
+ const selectedItem = firstStep?.items?.[0];
345
+ if (selectedItem?.data && isRelayQuoteEvmItemData(selectedItem.data)) {
346
+ try {
347
+ const tenderlySimulation = await simulateWithStateOverrides({
348
+ chainId: sellAsset.chainId,
349
+ // NOTE: zeroAddress is here purely for the purpose of satisfying the type sistem
350
+ // That should never happen
351
+ from: getAddress(sendAddress ?? zeroAddress),
352
+ to: getAddress(selectedItem.data.to ?? zeroAddress),
353
+ data: (selectedItem.data.data ?? '0x'),
354
+ value: selectedItem.data.value ?? '0',
355
+ sellAsset,
356
+ }, {
357
+ apiKey: deps.config.VITE_TENDERLY_API_KEY,
358
+ accountSlug: deps.config.VITE_TENDERLY_ACCOUNT_SLUG,
359
+ projectSlug: deps.config.VITE_TENDERLY_PROJECT_SLUG,
360
+ });
361
+ if (tenderlySimulation.success) {
362
+ // Use Tenderly's gas estimate instead of Relay's
363
+ const adapter = deps.assertGetEvmChainAdapter(sellAsset.chainId);
364
+ const { average } = await adapter.getGasFeeData();
365
+ const supportsEIP1559 = 'maxFeePerGas' in average;
366
+ const tenderlyNetworkFee = evm.calcNetworkFeeCryptoBaseUnit({
367
+ ...average,
368
+ supportsEIP1559,
369
+ gasLimit: tenderlySimulation.gasLimit.toString(),
370
+ });
371
+ return tenderlyNetworkFee;
372
+ }
373
+ }
374
+ catch (error) {
375
+ // Silently fall through to use Relay's gas estimate
376
+ }
377
+ }
378
+ }
379
+ // Fallback to Relay's gas amount
380
+ return quote.fees.gas.amount;
381
+ })();
382
+ const steps = swapSteps.map((quoteStep) => {
383
+ const selectedItem = quoteStep.items?.[0];
384
+ if (!selectedItem)
385
+ throw new Error('Relay quote step contains no items');
386
+ // Add back relayer service and gas fees (relayer is including both) since they are downsides
387
+ // And add appFees
388
+ const buyAmountBeforeFeesCryptoBaseUnit = bnOrZero(currencyOut.amount)
389
+ .plus(relayerFeesBuyAssetCryptoBaseUnit)
390
+ .plus(appFeesBaseUnit)
391
+ .toFixed();
392
+ const { allowanceContract, relayTransactionMetadata, solanaTransactionMetadata } = (() => {
393
+ if (!selectedItem.data)
394
+ throw new Error('Relay quote step contains no data');
395
+ if (isRelayQuoteUtxoItemData(selectedItem.data)) {
396
+ if (!selectedItem.data.psbt)
397
+ throw new Error('Relay BTC quote step contains no psbt');
398
+ const relayer = getRelayPsbtRelayer(selectedItem.data.psbt, sellAmountIncludingProtocolFeesCryptoBaseUnit);
399
+ return {
400
+ allowanceContract: '',
401
+ relayTransactionMetadata: {
402
+ from: sendAddress,
403
+ psbt: selectedItem.data.psbt,
404
+ opReturnData: quoteStep.requestId,
405
+ to: relayer,
406
+ relayId: quote.steps[0].requestId,
407
+ },
408
+ solanaTransactionMetadata: undefined,
409
+ };
410
+ }
411
+ if (isRelayQuoteEvmItemData(selectedItem.data)) {
412
+ return {
413
+ allowanceContract: selectedItem.data?.to ?? '',
414
+ relayTransactionMetadata: {
415
+ from: sendAddress,
416
+ to: selectedItem.data?.to,
417
+ value: selectedItem.data?.value,
418
+ data: selectedItem.data?.data,
419
+ // gas is not documented in the relay docs but refers to gasLimit
420
+ gasLimit: selectedItem.data?.gas,
421
+ chainId: Number(fromChainId(sellAsset.chainId).chainReference),
422
+ relayId: quote.steps[0].requestId,
423
+ },
424
+ solanaTransactionMetadata: undefined,
425
+ };
426
+ }
427
+ if (isRelayQuoteSolanaItemData(selectedItem.data)) {
428
+ return {
429
+ allowanceContract: '',
430
+ solanaTransactionMetadata: {
431
+ addressLookupTableAddresses: selectedItem.data?.addressLookupTableAddresses,
432
+ instructions: selectedItem.data?.instructions?.map(convertSolanaInstruction),
433
+ },
434
+ relayTransactionMetadata: {
435
+ relayId: quote.steps[0].requestId,
436
+ },
437
+ };
438
+ }
439
+ throw new Error('Relay quote step contains no data');
440
+ })();
441
+ return {
442
+ allowanceContract,
443
+ rate,
444
+ buyAmountBeforeFeesCryptoBaseUnit,
445
+ buyAmountAfterFeesCryptoBaseUnit,
446
+ sellAmountIncludingProtocolFeesCryptoBaseUnit,
447
+ buyAsset,
448
+ sellAsset,
449
+ accountNumber,
450
+ feeData: {
451
+ networkFeeCryptoBaseUnit,
452
+ protocolFees: {
453
+ [protocolAssetId]: {
454
+ amountCryptoBaseUnit: quote.fees.relayer.amount,
455
+ asset: protocolAsset,
456
+ requiresBalance: false,
457
+ },
458
+ ...appFeesAsProtocolFee,
459
+ },
460
+ },
461
+ source: SwapperName.Relay,
462
+ estimatedExecutionTimeMs: timeEstimate * 1000,
463
+ solanaTransactionMetadata,
464
+ relayTransactionMetadata,
465
+ };
466
+ });
467
+ const baseQuoteOrRate = {
468
+ id: quote.steps[0].requestId,
469
+ rate,
470
+ swapperName: SwapperName.Relay,
471
+ affiliateBps,
472
+ slippageTolerancePercentageDecimal,
473
+ };
474
+ if (input.quoteOrRate === 'quote') {
475
+ // ts is drunk, this is defined as we are under the quote umbrella but extra safety doesn't hurt
476
+ if (!receiveAddress) {
477
+ return Err(makeSwapErrorRight({
478
+ message: 'Receive address is required for quote',
479
+ }));
480
+ }
481
+ const tradeQuote = {
482
+ ...baseQuoteOrRate,
483
+ steps: steps,
484
+ receiveAddress,
485
+ quoteOrRate: 'quote',
486
+ };
487
+ return Ok([tradeQuote]);
488
+ }
489
+ const tradeRate = {
490
+ ...baseQuoteOrRate,
491
+ steps: steps,
492
+ receiveAddress,
493
+ quoteOrRate: 'rate',
494
+ };
495
+ return Ok([tradeRate]);
496
+ }
@@ -0,0 +1,11 @@
1
+ import type { Result } from '@sniptt/monads';
2
+ import type { AxiosResponse } from 'axios';
3
+ import type { SwapErrorRight, SwapperConfig } from '../../../types.js';
4
+ import type { RelayQuote } from './types.js';
5
+ type NotifyTransactionIndexingParams = {
6
+ requestId: string;
7
+ chainId: string;
8
+ tx: string;
9
+ };
10
+ export declare const notifyTransactionIndexing: (params: NotifyTransactionIndexingParams, config: SwapperConfig) => Promise<Result<AxiosResponse<RelayQuote, any>, SwapErrorRight>>;
11
+ export {};
@@ -0,0 +1,4 @@
1
+ import { relayService } from './relayService.js';
2
+ export const notifyTransactionIndexing = async (params, config) => {
3
+ return await relayService.post(`${config.VITE_RELAY_API_URL}/transactions/single`, params);
4
+ };
@@ -0,0 +1,5 @@
1
+ export declare const relayService: {
2
+ get: <T = any>(url: string, config?: import("axios").AxiosRequestConfig<any> | undefined) => Promise<import("@sniptt/monads").Result<import("axios").AxiosResponse<T, any, {}>, import("../../../index.js").SwapErrorRight>>;
3
+ post: <T_1 = any>(url: string, data: any, config?: import("axios").AxiosRequestConfig<any> | undefined) => Promise<import("@sniptt/monads").Result<import("axios").AxiosResponse<T_1, any, {}>, import("../../../index.js").SwapErrorRight>>;
4
+ delete: <T_2 = any>(url: string, data: any, config?: import("axios").AxiosRequestConfig<any> | undefined) => Promise<import("@sniptt/monads").Result<import("axios").AxiosResponse<T_2, any, {}>, import("../../../index.js").SwapErrorRight>>;
5
+ };
@@ -0,0 +1,12 @@
1
+ import { createCache, makeSwapperAxiosServiceMonadic } from '../../../utils.js';
2
+ const maxAgeMillis = 15 * 1000;
3
+ const cachedUrls = [];
4
+ const axiosConfig = {
5
+ timeout: 10000,
6
+ headers: {
7
+ Accept: 'application/json',
8
+ 'Content-Type': 'application/json',
9
+ },
10
+ };
11
+ const relayServiceBase = createCache(maxAgeMillis, cachedUrls, axiosConfig);
12
+ export const relayService = makeSwapperAxiosServiceMonadic(relayServiceBase);
@@ -0,0 +1,6 @@
1
+ import type { AssetId } from '@shapeshiftoss/caip';
2
+ import type { Asset } from '@shapeshiftoss/types';
3
+ import type { Result } from '@sniptt/monads';
4
+ import type { SwapErrorRight } from '../../../types.js';
5
+ import type { RelayToken } from './types.js';
6
+ export declare const relayTokenToAsset: (relayToken: RelayToken, assets: Partial<Record<AssetId, Asset>>) => Result<Asset, SwapErrorRight>;
@@ -0,0 +1,12 @@
1
+ import { Err, Ok } from '@sniptt/monads';
2
+ import { makeSwapErrorRight } from '../../../utils.js';
3
+ import { relayTokenToAssetId } from './relayTokenToAssetId.js';
4
+ export const relayTokenToAsset = (relayToken, assets) => {
5
+ const assetId = relayTokenToAssetId(relayToken);
6
+ const maybeAsset = assets[assetId];
7
+ if (maybeAsset)
8
+ return Ok(maybeAsset);
9
+ return Err(makeSwapErrorRight({
10
+ message: 'Unknown relay token',
11
+ }));
12
+ };
@@ -0,0 +1,3 @@
1
+ import type { AssetId } from '@shapeshiftoss/caip';
2
+ import type { RelayToken } from './types.js';
3
+ export declare const relayTokenToAssetId: (relayToken: RelayToken) => AssetId;
@@ -0,0 +1,106 @@
1
+ import { ASSET_NAMESPACE, ASSET_REFERENCE, btcChainId, CHAIN_REFERENCE, fromChainId, solanaChainId, toAssetId, tronChainId, } from '@shapeshiftoss/caip';
2
+ import { isEvmChainId } from '@shapeshiftoss/chain-adapters';
3
+ import { DEFAULT_RELAY_EVM_TOKEN_ADDRESS, RELAY_BTC_TOKEN_ADDRESS, RELAY_SOLANA_TOKEN_ADDRESS, RELAY_TRON_TOKEN_ADDRESS, relayChainIdToChainId, } from '../constant.js';
4
+ export const relayTokenToAssetId = (relayToken) => {
5
+ const chainId = relayChainIdToChainId[relayToken.chainId];
6
+ const { chainReference } = fromChainId(chainId);
7
+ const isNativeAsset = (() => {
8
+ if (isEvmChainId(chainId)) {
9
+ return relayToken.address === DEFAULT_RELAY_EVM_TOKEN_ADDRESS;
10
+ }
11
+ if (chainId === btcChainId) {
12
+ return relayToken.address === RELAY_BTC_TOKEN_ADDRESS;
13
+ }
14
+ if (chainId === solanaChainId) {
15
+ return relayToken.address === RELAY_SOLANA_TOKEN_ADDRESS;
16
+ }
17
+ if (chainId === tronChainId) {
18
+ return relayToken.address === RELAY_TRON_TOKEN_ADDRESS;
19
+ }
20
+ return false;
21
+ })();
22
+ const { assetReference, assetNamespace } = (() => {
23
+ if (!isNativeAsset) {
24
+ const assetNamespace = (() => {
25
+ switch (true) {
26
+ case isEvmChainId(chainId):
27
+ return ASSET_NAMESPACE.erc20;
28
+ case CHAIN_REFERENCE.SolanaMainnet === chainReference:
29
+ return ASSET_NAMESPACE.splToken;
30
+ case CHAIN_REFERENCE.TronMainnet === chainReference:
31
+ return ASSET_NAMESPACE.trc20;
32
+ default:
33
+ throw Error(`chainReference '${chainReference}' not supported`);
34
+ }
35
+ })();
36
+ return {
37
+ assetReference: relayToken.address,
38
+ assetNamespace,
39
+ };
40
+ }
41
+ switch (chainReference) {
42
+ case CHAIN_REFERENCE.EthereumMainnet:
43
+ return {
44
+ assetReference: ASSET_REFERENCE.Ethereum,
45
+ assetNamespace: ASSET_NAMESPACE.slip44,
46
+ };
47
+ case CHAIN_REFERENCE.AvalancheCChain:
48
+ return {
49
+ assetReference: ASSET_REFERENCE.AvalancheC,
50
+ assetNamespace: ASSET_NAMESPACE.slip44,
51
+ };
52
+ case CHAIN_REFERENCE.OptimismMainnet:
53
+ return {
54
+ assetReference: ASSET_REFERENCE.Optimism,
55
+ assetNamespace: ASSET_NAMESPACE.slip44,
56
+ };
57
+ case CHAIN_REFERENCE.PolygonMainnet:
58
+ return {
59
+ assetReference: ASSET_REFERENCE.Polygon,
60
+ assetNamespace: ASSET_NAMESPACE.slip44,
61
+ };
62
+ case CHAIN_REFERENCE.GnosisMainnet:
63
+ return {
64
+ assetReference: ASSET_REFERENCE.Gnosis,
65
+ assetNamespace: ASSET_NAMESPACE.slip44,
66
+ };
67
+ case CHAIN_REFERENCE.ArbitrumMainnet:
68
+ return {
69
+ assetReference: ASSET_REFERENCE.Arbitrum,
70
+ assetNamespace: ASSET_NAMESPACE.slip44,
71
+ };
72
+ case CHAIN_REFERENCE.BaseMainnet:
73
+ return {
74
+ assetReference: ASSET_REFERENCE.Base,
75
+ assetNamespace: ASSET_NAMESPACE.slip44,
76
+ };
77
+ case CHAIN_REFERENCE.BitcoinMainnet:
78
+ return {
79
+ assetReference: ASSET_REFERENCE.Bitcoin,
80
+ assetNamespace: ASSET_NAMESPACE.slip44,
81
+ };
82
+ case CHAIN_REFERENCE.SolanaMainnet:
83
+ return {
84
+ assetReference: ASSET_REFERENCE.Solana,
85
+ assetNamespace: ASSET_NAMESPACE.slip44,
86
+ };
87
+ case CHAIN_REFERENCE.TronMainnet:
88
+ return {
89
+ assetReference: ASSET_REFERENCE.Tron,
90
+ assetNamespace: ASSET_NAMESPACE.slip44,
91
+ };
92
+ case CHAIN_REFERENCE.MonadMainnet:
93
+ return {
94
+ assetReference: ASSET_REFERENCE.Monad,
95
+ assetNamespace: ASSET_NAMESPACE.slip44,
96
+ };
97
+ default:
98
+ throw Error(`chainId '${relayToken.chainId}' not supported`);
99
+ }
100
+ })();
101
+ return toAssetId({
102
+ chainId,
103
+ assetNamespace,
104
+ assetReference,
105
+ });
106
+ };