@lifi/sdk 0.0.0-preview-f5cf9f8

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 (555) hide show
  1. package/CHANGELOG.md +1213 -0
  2. package/LICENSE +201 -0
  3. package/README.md +79 -0
  4. package/dist/cjs/actions/getChains.d.ts +17 -0
  5. package/dist/cjs/actions/getChains.js +28 -0
  6. package/dist/cjs/actions/getChains.js.map +1 -0
  7. package/dist/cjs/actions/getConnections.d.ts +15 -0
  8. package/dist/cjs/actions/getConnections.js +34 -0
  9. package/dist/cjs/actions/getConnections.js.map +1 -0
  10. package/dist/cjs/actions/getContractCallsQuote.d.ts +16 -0
  11. package/dist/cjs/actions/getContractCallsQuote.js +45 -0
  12. package/dist/cjs/actions/getContractCallsQuote.js.map +1 -0
  13. package/dist/cjs/actions/getGasRecommendation.d.ts +16 -0
  14. package/dist/cjs/actions/getGasRecommendation.js +24 -0
  15. package/dist/cjs/actions/getGasRecommendation.js.map +1 -0
  16. package/dist/cjs/actions/getNameServiceAddress.d.ts +15 -0
  17. package/dist/cjs/actions/getNameServiceAddress.js +29 -0
  18. package/dist/cjs/actions/getNameServiceAddress.js.map +1 -0
  19. package/dist/cjs/actions/getQuote.d.ts +18 -0
  20. package/dist/cjs/actions/getQuote.js +35 -0
  21. package/dist/cjs/actions/getQuote.js.map +1 -0
  22. package/dist/cjs/actions/getRelayedTransactionStatus.d.ts +16 -0
  23. package/dist/cjs/actions/getRelayedTransactionStatus.js +30 -0
  24. package/dist/cjs/actions/getRelayedTransactionStatus.js.map +1 -0
  25. package/dist/cjs/actions/getRelayerQuote.d.ts +17 -0
  26. package/dist/cjs/actions/getRelayerQuote.js +44 -0
  27. package/dist/cjs/actions/getRelayerQuote.js.map +1 -0
  28. package/dist/cjs/actions/getRoutes.d.ts +16 -0
  29. package/dist/cjs/actions/getRoutes.js +32 -0
  30. package/dist/cjs/actions/getRoutes.js.map +1 -0
  31. package/dist/cjs/actions/getStatus.d.ts +17 -0
  32. package/dist/cjs/actions/getStatus.js +22 -0
  33. package/dist/cjs/actions/getStatus.js.map +1 -0
  34. package/dist/cjs/actions/getStepTransaction.d.ts +16 -0
  35. package/dist/cjs/actions/getStepTransaction.js +36 -0
  36. package/dist/cjs/actions/getStepTransaction.js.map +1 -0
  37. package/dist/cjs/actions/getToken.d.ts +17 -0
  38. package/dist/cjs/actions/getToken.js +26 -0
  39. package/dist/cjs/actions/getToken.js.map +1 -0
  40. package/dist/cjs/actions/getTokenBalance.d.ts +17 -0
  41. package/dist/cjs/actions/getTokenBalance.js +20 -0
  42. package/dist/cjs/actions/getTokenBalance.js.map +1 -0
  43. package/dist/cjs/actions/getTokenBalances.d.ts +17 -0
  44. package/dist/cjs/actions/getTokenBalances.js +15 -0
  45. package/dist/cjs/actions/getTokenBalances.js.map +1 -0
  46. package/dist/cjs/actions/getTokenBalancesByChain.d.ts +21 -0
  47. package/dist/cjs/actions/getTokenBalancesByChain.js +25 -0
  48. package/dist/cjs/actions/getTokenBalancesByChain.js.map +1 -0
  49. package/dist/cjs/actions/getTokens.d.ts +20 -0
  50. package/dist/cjs/actions/getTokens.js +17 -0
  51. package/dist/cjs/actions/getTokens.js.map +1 -0
  52. package/dist/cjs/actions/getTools.d.ts +15 -0
  53. package/dist/cjs/actions/getTools.js +21 -0
  54. package/dist/cjs/actions/getTools.js.map +1 -0
  55. package/dist/cjs/actions/getTransactionHistory.d.ts +26 -0
  56. package/dist/cjs/actions/getTransactionHistory.js +31 -0
  57. package/dist/cjs/actions/getTransactionHistory.js.map +1 -0
  58. package/dist/cjs/actions/getWalletBalances.d.ts +16 -0
  59. package/dist/cjs/actions/getWalletBalances.js +20 -0
  60. package/dist/cjs/actions/getWalletBalances.js.map +1 -0
  61. package/dist/cjs/actions/index.d.ts +172 -0
  62. package/dist/cjs/actions/index.js +52 -0
  63. package/dist/cjs/actions/index.js.map +1 -0
  64. package/dist/cjs/actions/patchContractCalls.d.ts +15 -0
  65. package/dist/cjs/actions/patchContractCalls.js +15 -0
  66. package/dist/cjs/actions/patchContractCalls.js.map +1 -0
  67. package/dist/cjs/actions/relayTransaction.d.ts +16 -0
  68. package/dist/cjs/actions/relayTransaction.js +34 -0
  69. package/dist/cjs/actions/relayTransaction.js.map +1 -0
  70. package/dist/cjs/client/createClient.d.ts +7 -0
  71. package/dist/cjs/client/createClient.js +70 -0
  72. package/dist/cjs/client/createClient.js.map +1 -0
  73. package/dist/cjs/client/getClientStorage.d.ts +14 -0
  74. package/dist/cjs/client/getClientStorage.js +48 -0
  75. package/dist/cjs/client/getClientStorage.js.map +1 -0
  76. package/dist/cjs/core/BaseStepExecutionTask.d.ts +10 -0
  77. package/dist/cjs/core/BaseStepExecutionTask.js +11 -0
  78. package/dist/cjs/core/BaseStepExecutionTask.js.map +1 -0
  79. package/dist/cjs/core/BaseStepExecutor.d.ts +24 -0
  80. package/dist/cjs/core/BaseStepExecutor.js +71 -0
  81. package/dist/cjs/core/BaseStepExecutor.js.map +1 -0
  82. package/dist/cjs/core/StatusManager.d.ts +83 -0
  83. package/dist/cjs/core/StatusManager.js +160 -0
  84. package/dist/cjs/core/StatusManager.js.map +1 -0
  85. package/dist/cjs/core/TaskPipeline.d.ts +12 -0
  86. package/dist/cjs/core/TaskPipeline.js +21 -0
  87. package/dist/cjs/core/TaskPipeline.js.map +1 -0
  88. package/dist/cjs/core/actionMessages.d.ts +9 -0
  89. package/dist/cjs/core/actionMessages.js +81 -0
  90. package/dist/cjs/core/actionMessages.js.map +1 -0
  91. package/dist/cjs/core/execution.d.ts +48 -0
  92. package/dist/cjs/core/execution.js +147 -0
  93. package/dist/cjs/core/execution.js.map +1 -0
  94. package/dist/cjs/core/executionState.d.ts +21 -0
  95. package/dist/cjs/core/executionState.js +29 -0
  96. package/dist/cjs/core/executionState.js.map +1 -0
  97. package/dist/cjs/core/prepareRestart.d.ts +7 -0
  98. package/dist/cjs/core/prepareRestart.js +21 -0
  99. package/dist/cjs/core/prepareRestart.js.map +1 -0
  100. package/dist/cjs/core/storage.d.ts +21 -0
  101. package/dist/cjs/core/storage.js +35 -0
  102. package/dist/cjs/core/storage.js.map +1 -0
  103. package/dist/cjs/core/tasks/CheckBalanceTask.d.ts +19 -0
  104. package/dist/cjs/core/tasks/CheckBalanceTask.js +35 -0
  105. package/dist/cjs/core/tasks/CheckBalanceTask.js.map +1 -0
  106. package/dist/cjs/core/tasks/PrepareTransactionTask.d.ts +10 -0
  107. package/dist/cjs/core/tasks/PrepareTransactionTask.js +30 -0
  108. package/dist/cjs/core/tasks/PrepareTransactionTask.js.map +1 -0
  109. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.d.ts +13 -0
  110. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js +63 -0
  111. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
  112. package/dist/cjs/core/tasks/helpers/checkBalance.d.ts +30 -0
  113. package/dist/cjs/core/tasks/helpers/checkBalance.js +108 -0
  114. package/dist/cjs/core/tasks/helpers/checkBalance.js.map +1 -0
  115. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.d.ts +7 -0
  116. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js +25 -0
  117. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
  118. package/dist/cjs/core/tasks/helpers/stepComparison.d.ts +21 -0
  119. package/dist/cjs/core/tasks/helpers/stepComparison.js +32 -0
  120. package/dist/cjs/core/tasks/helpers/stepComparison.js.map +1 -0
  121. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.d.ts +9 -0
  122. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.js +48 -0
  123. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
  124. package/dist/cjs/core/utils.d.ts +17 -0
  125. package/dist/cjs/core/utils.js +42 -0
  126. package/dist/cjs/core/utils.js.map +1 -0
  127. package/dist/cjs/errors/SDKError.d.ts +17 -0
  128. package/dist/cjs/errors/SDKError.js +24 -0
  129. package/dist/cjs/errors/SDKError.js.map +1 -0
  130. package/dist/cjs/errors/baseError.d.ts +11 -0
  131. package/dist/cjs/errors/baseError.js +19 -0
  132. package/dist/cjs/errors/baseError.js.map +1 -0
  133. package/dist/cjs/errors/constants.d.ts +55 -0
  134. package/dist/cjs/errors/constants.js +61 -0
  135. package/dist/cjs/errors/constants.js.map +1 -0
  136. package/dist/cjs/errors/errors.d.ts +38 -0
  137. package/dist/cjs/errors/errors.js +62 -0
  138. package/dist/cjs/errors/errors.js.map +1 -0
  139. package/dist/cjs/errors/httpError.d.ts +24 -0
  140. package/dist/cjs/errors/httpError.js +70 -0
  141. package/dist/cjs/errors/httpError.js.map +1 -0
  142. package/dist/cjs/errors/utils/baseErrorRootCause.d.ts +8 -0
  143. package/dist/cjs/errors/utils/baseErrorRootCause.js +18 -0
  144. package/dist/cjs/errors/utils/baseErrorRootCause.js.map +1 -0
  145. package/dist/cjs/errors/utils/rootCause.d.ts +5 -0
  146. package/dist/cjs/errors/utils/rootCause.js +11 -0
  147. package/dist/cjs/errors/utils/rootCause.js.map +1 -0
  148. package/dist/cjs/index.d.ts +55 -0
  149. package/dist/cjs/index.js +130 -0
  150. package/dist/cjs/package.json +1 -0
  151. package/dist/cjs/types/actions.d.ts +14 -0
  152. package/dist/cjs/types/actions.js +0 -0
  153. package/dist/cjs/types/core.d.ts +184 -0
  154. package/dist/cjs/types/core.js +0 -0
  155. package/dist/cjs/types/execution.d.ts +28 -0
  156. package/dist/cjs/types/execution.js +0 -0
  157. package/dist/cjs/types/request.d.ts +7 -0
  158. package/dist/cjs/types/request.js +0 -0
  159. package/dist/cjs/utils/checkPackageUpdates.d.ts +5 -0
  160. package/dist/cjs/utils/checkPackageUpdates.js +15 -0
  161. package/dist/cjs/utils/checkPackageUpdates.js.map +1 -0
  162. package/dist/cjs/utils/convertQuoteToRoute.d.ts +22 -0
  163. package/dist/cjs/utils/convertQuoteToRoute.js +88 -0
  164. package/dist/cjs/utils/convertQuoteToRoute.js.map +1 -0
  165. package/dist/cjs/utils/decode.d.ts +5 -0
  166. package/dist/cjs/utils/decode.js +9 -0
  167. package/dist/cjs/utils/decode.js.map +1 -0
  168. package/dist/cjs/utils/fetchTxErrorDetails.d.ts +5 -0
  169. package/dist/cjs/utils/fetchTxErrorDetails.js +13 -0
  170. package/dist/cjs/utils/fetchTxErrorDetails.js.map +1 -0
  171. package/dist/cjs/utils/formatUnits.d.ts +8 -0
  172. package/dist/cjs/utils/formatUnits.js +18 -0
  173. package/dist/cjs/utils/formatUnits.js.map +1 -0
  174. package/dist/cjs/utils/getTransactionMessage.d.ts +8 -0
  175. package/dist/cjs/utils/getTransactionMessage.js +12 -0
  176. package/dist/cjs/utils/getTransactionMessage.js.map +1 -0
  177. package/dist/cjs/utils/isHex.d.ts +10 -0
  178. package/dist/cjs/utils/isHex.js +11 -0
  179. package/dist/cjs/utils/isHex.js.map +1 -0
  180. package/dist/cjs/utils/isRoutesRequest.d.ts +7 -0
  181. package/dist/cjs/utils/isRoutesRequest.js +11 -0
  182. package/dist/cjs/utils/isRoutesRequest.js.map +1 -0
  183. package/dist/cjs/utils/isStep.d.ts +7 -0
  184. package/dist/cjs/utils/isStep.js +23 -0
  185. package/dist/cjs/utils/isStep.js.map +1 -0
  186. package/dist/cjs/utils/isToken.d.ts +7 -0
  187. package/dist/cjs/utils/isToken.js +10 -0
  188. package/dist/cjs/utils/isToken.js.map +1 -0
  189. package/dist/cjs/utils/parseUnits.d.ts +8 -0
  190. package/dist/cjs/utils/parseUnits.js +35 -0
  191. package/dist/cjs/utils/parseUnits.js.map +1 -0
  192. package/dist/cjs/utils/request.d.ts +11 -0
  193. package/dist/cjs/utils/request.js +56 -0
  194. package/dist/cjs/utils/request.js.map +1 -0
  195. package/dist/cjs/utils/sleep.d.ts +5 -0
  196. package/dist/cjs/utils/sleep.js +11 -0
  197. package/dist/cjs/utils/sleep.js.map +1 -0
  198. package/dist/cjs/utils/waitForResult.d.ts +14 -0
  199. package/dist/cjs/utils/waitForResult.js +36 -0
  200. package/dist/cjs/utils/waitForResult.js.map +1 -0
  201. package/dist/cjs/utils/withDedupe.d.ts +23 -0
  202. package/dist/cjs/utils/withDedupe.js +34 -0
  203. package/dist/cjs/utils/withDedupe.js.map +1 -0
  204. package/dist/cjs/utils/withTimeout.d.ts +26 -0
  205. package/dist/cjs/utils/withTimeout.js +35 -0
  206. package/dist/cjs/utils/withTimeout.js.map +1 -0
  207. package/dist/cjs/version.d.ts +6 -0
  208. package/dist/cjs/version.js +9 -0
  209. package/dist/cjs/version.js.map +1 -0
  210. package/dist/esm/actions/getChains.d.ts +17 -0
  211. package/dist/esm/actions/getChains.d.ts.map +1 -0
  212. package/dist/esm/actions/getChains.js +26 -0
  213. package/dist/esm/actions/getChains.js.map +1 -0
  214. package/dist/esm/actions/getConnections.d.ts +15 -0
  215. package/dist/esm/actions/getConnections.d.ts.map +1 -0
  216. package/dist/esm/actions/getConnections.js +33 -0
  217. package/dist/esm/actions/getConnections.js.map +1 -0
  218. package/dist/esm/actions/getContractCallsQuote.d.ts +16 -0
  219. package/dist/esm/actions/getContractCallsQuote.d.ts.map +1 -0
  220. package/dist/esm/actions/getContractCallsQuote.js +44 -0
  221. package/dist/esm/actions/getContractCallsQuote.js.map +1 -0
  222. package/dist/esm/actions/getGasRecommendation.d.ts +16 -0
  223. package/dist/esm/actions/getGasRecommendation.d.ts.map +1 -0
  224. package/dist/esm/actions/getGasRecommendation.js +23 -0
  225. package/dist/esm/actions/getGasRecommendation.js.map +1 -0
  226. package/dist/esm/actions/getNameServiceAddress.d.ts +15 -0
  227. package/dist/esm/actions/getNameServiceAddress.d.ts.map +1 -0
  228. package/dist/esm/actions/getNameServiceAddress.js +28 -0
  229. package/dist/esm/actions/getNameServiceAddress.js.map +1 -0
  230. package/dist/esm/actions/getQuote.d.ts +18 -0
  231. package/dist/esm/actions/getQuote.d.ts.map +1 -0
  232. package/dist/esm/actions/getQuote.js +34 -0
  233. package/dist/esm/actions/getQuote.js.map +1 -0
  234. package/dist/esm/actions/getRelayedTransactionStatus.d.ts +16 -0
  235. package/dist/esm/actions/getRelayedTransactionStatus.d.ts.map +1 -0
  236. package/dist/esm/actions/getRelayedTransactionStatus.js +29 -0
  237. package/dist/esm/actions/getRelayedTransactionStatus.js.map +1 -0
  238. package/dist/esm/actions/getRelayerQuote.d.ts +17 -0
  239. package/dist/esm/actions/getRelayerQuote.d.ts.map +1 -0
  240. package/dist/esm/actions/getRelayerQuote.js +43 -0
  241. package/dist/esm/actions/getRelayerQuote.js.map +1 -0
  242. package/dist/esm/actions/getRoutes.d.ts +16 -0
  243. package/dist/esm/actions/getRoutes.d.ts.map +1 -0
  244. package/dist/esm/actions/getRoutes.js +31 -0
  245. package/dist/esm/actions/getRoutes.js.map +1 -0
  246. package/dist/esm/actions/getStatus.d.ts +17 -0
  247. package/dist/esm/actions/getStatus.d.ts.map +1 -0
  248. package/dist/esm/actions/getStatus.js +21 -0
  249. package/dist/esm/actions/getStatus.js.map +1 -0
  250. package/dist/esm/actions/getStepTransaction.d.ts +16 -0
  251. package/dist/esm/actions/getStepTransaction.d.ts.map +1 -0
  252. package/dist/esm/actions/getStepTransaction.js +35 -0
  253. package/dist/esm/actions/getStepTransaction.js.map +1 -0
  254. package/dist/esm/actions/getToken.d.ts +17 -0
  255. package/dist/esm/actions/getToken.d.ts.map +1 -0
  256. package/dist/esm/actions/getToken.js +25 -0
  257. package/dist/esm/actions/getToken.js.map +1 -0
  258. package/dist/esm/actions/getTokenBalance.d.ts +17 -0
  259. package/dist/esm/actions/getTokenBalance.d.ts.map +1 -0
  260. package/dist/esm/actions/getTokenBalance.js +19 -0
  261. package/dist/esm/actions/getTokenBalance.js.map +1 -0
  262. package/dist/esm/actions/getTokenBalances.d.ts +17 -0
  263. package/dist/esm/actions/getTokenBalances.d.ts.map +1 -0
  264. package/dist/esm/actions/getTokenBalances.js +14 -0
  265. package/dist/esm/actions/getTokenBalances.js.map +1 -0
  266. package/dist/esm/actions/getTokenBalancesByChain.d.ts +21 -0
  267. package/dist/esm/actions/getTokenBalancesByChain.d.ts.map +1 -0
  268. package/dist/esm/actions/getTokenBalancesByChain.js +24 -0
  269. package/dist/esm/actions/getTokenBalancesByChain.js.map +1 -0
  270. package/dist/esm/actions/getTokens.d.ts +20 -0
  271. package/dist/esm/actions/getTokens.d.ts.map +1 -0
  272. package/dist/esm/actions/getTokens.js +16 -0
  273. package/dist/esm/actions/getTokens.js.map +1 -0
  274. package/dist/esm/actions/getTools.d.ts +15 -0
  275. package/dist/esm/actions/getTools.d.ts.map +1 -0
  276. package/dist/esm/actions/getTools.js +20 -0
  277. package/dist/esm/actions/getTools.js.map +1 -0
  278. package/dist/esm/actions/getTransactionHistory.d.ts +26 -0
  279. package/dist/esm/actions/getTransactionHistory.d.ts.map +1 -0
  280. package/dist/esm/actions/getTransactionHistory.js +30 -0
  281. package/dist/esm/actions/getTransactionHistory.js.map +1 -0
  282. package/dist/esm/actions/getWalletBalances.d.ts +16 -0
  283. package/dist/esm/actions/getWalletBalances.d.ts.map +1 -0
  284. package/dist/esm/actions/getWalletBalances.js +19 -0
  285. package/dist/esm/actions/getWalletBalances.js.map +1 -0
  286. package/dist/esm/actions/index.d.ts +172 -0
  287. package/dist/esm/actions/index.d.ts.map +1 -0
  288. package/dist/esm/actions/index.js +51 -0
  289. package/dist/esm/actions/index.js.map +1 -0
  290. package/dist/esm/actions/patchContractCalls.d.ts +15 -0
  291. package/dist/esm/actions/patchContractCalls.d.ts.map +1 -0
  292. package/dist/esm/actions/patchContractCalls.js +14 -0
  293. package/dist/esm/actions/patchContractCalls.js.map +1 -0
  294. package/dist/esm/actions/relayTransaction.d.ts +16 -0
  295. package/dist/esm/actions/relayTransaction.d.ts.map +1 -0
  296. package/dist/esm/actions/relayTransaction.js +33 -0
  297. package/dist/esm/actions/relayTransaction.js.map +1 -0
  298. package/dist/esm/client/createClient.d.ts +7 -0
  299. package/dist/esm/client/createClient.d.ts.map +1 -0
  300. package/dist/esm/client/createClient.js +69 -0
  301. package/dist/esm/client/createClient.js.map +1 -0
  302. package/dist/esm/client/getClientStorage.d.ts +14 -0
  303. package/dist/esm/client/getClientStorage.d.ts.map +1 -0
  304. package/dist/esm/client/getClientStorage.js +47 -0
  305. package/dist/esm/client/getClientStorage.js.map +1 -0
  306. package/dist/esm/core/BaseStepExecutionTask.d.ts +10 -0
  307. package/dist/esm/core/BaseStepExecutionTask.d.ts.map +1 -0
  308. package/dist/esm/core/BaseStepExecutionTask.js +10 -0
  309. package/dist/esm/core/BaseStepExecutionTask.js.map +1 -0
  310. package/dist/esm/core/BaseStepExecutor.d.ts +24 -0
  311. package/dist/esm/core/BaseStepExecutor.d.ts.map +1 -0
  312. package/dist/esm/core/BaseStepExecutor.js +70 -0
  313. package/dist/esm/core/BaseStepExecutor.js.map +1 -0
  314. package/dist/esm/core/StatusManager.d.ts +83 -0
  315. package/dist/esm/core/StatusManager.d.ts.map +1 -0
  316. package/dist/esm/core/StatusManager.js +159 -0
  317. package/dist/esm/core/StatusManager.js.map +1 -0
  318. package/dist/esm/core/TaskPipeline.d.ts +12 -0
  319. package/dist/esm/core/TaskPipeline.d.ts.map +1 -0
  320. package/dist/esm/core/TaskPipeline.js +20 -0
  321. package/dist/esm/core/TaskPipeline.js.map +1 -0
  322. package/dist/esm/core/actionMessages.d.ts +9 -0
  323. package/dist/esm/core/actionMessages.d.ts.map +1 -0
  324. package/dist/esm/core/actionMessages.js +79 -0
  325. package/dist/esm/core/actionMessages.js.map +1 -0
  326. package/dist/esm/core/execution.d.ts +48 -0
  327. package/dist/esm/core/execution.d.ts.map +1 -0
  328. package/dist/esm/core/execution.js +141 -0
  329. package/dist/esm/core/execution.js.map +1 -0
  330. package/dist/esm/core/executionState.d.ts +21 -0
  331. package/dist/esm/core/executionState.d.ts.map +1 -0
  332. package/dist/esm/core/executionState.js +28 -0
  333. package/dist/esm/core/executionState.js.map +1 -0
  334. package/dist/esm/core/prepareRestart.d.ts +7 -0
  335. package/dist/esm/core/prepareRestart.d.ts.map +1 -0
  336. package/dist/esm/core/prepareRestart.js +20 -0
  337. package/dist/esm/core/prepareRestart.js.map +1 -0
  338. package/dist/esm/core/storage.d.ts +21 -0
  339. package/dist/esm/core/storage.d.ts.map +1 -0
  340. package/dist/esm/core/storage.js +32 -0
  341. package/dist/esm/core/storage.js.map +1 -0
  342. package/dist/esm/core/tasks/CheckBalanceTask.d.ts +19 -0
  343. package/dist/esm/core/tasks/CheckBalanceTask.d.ts.map +1 -0
  344. package/dist/esm/core/tasks/CheckBalanceTask.js +34 -0
  345. package/dist/esm/core/tasks/CheckBalanceTask.js.map +1 -0
  346. package/dist/esm/core/tasks/PrepareTransactionTask.d.ts +10 -0
  347. package/dist/esm/core/tasks/PrepareTransactionTask.d.ts.map +1 -0
  348. package/dist/esm/core/tasks/PrepareTransactionTask.js +29 -0
  349. package/dist/esm/core/tasks/PrepareTransactionTask.js.map +1 -0
  350. package/dist/esm/core/tasks/WaitForTransactionStatusTask.d.ts +13 -0
  351. package/dist/esm/core/tasks/WaitForTransactionStatusTask.d.ts.map +1 -0
  352. package/dist/esm/core/tasks/WaitForTransactionStatusTask.js +61 -0
  353. package/dist/esm/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
  354. package/dist/esm/core/tasks/helpers/checkBalance.d.ts +30 -0
  355. package/dist/esm/core/tasks/helpers/checkBalance.d.ts.map +1 -0
  356. package/dist/esm/core/tasks/helpers/checkBalance.js +107 -0
  357. package/dist/esm/core/tasks/helpers/checkBalance.js.map +1 -0
  358. package/dist/esm/core/tasks/helpers/getTransactionRequestData.d.ts +7 -0
  359. package/dist/esm/core/tasks/helpers/getTransactionRequestData.d.ts.map +1 -0
  360. package/dist/esm/core/tasks/helpers/getTransactionRequestData.js +24 -0
  361. package/dist/esm/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
  362. package/dist/esm/core/tasks/helpers/stepComparison.d.ts +21 -0
  363. package/dist/esm/core/tasks/helpers/stepComparison.d.ts.map +1 -0
  364. package/dist/esm/core/tasks/helpers/stepComparison.js +31 -0
  365. package/dist/esm/core/tasks/helpers/stepComparison.js.map +1 -0
  366. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.d.ts +9 -0
  367. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.d.ts.map +1 -0
  368. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.js +47 -0
  369. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
  370. package/dist/esm/core/utils.d.ts +17 -0
  371. package/dist/esm/core/utils.d.ts.map +1 -0
  372. package/dist/esm/core/utils.js +40 -0
  373. package/dist/esm/core/utils.js.map +1 -0
  374. package/dist/esm/errors/SDKError.d.ts +17 -0
  375. package/dist/esm/errors/SDKError.d.ts.map +1 -0
  376. package/dist/esm/errors/SDKError.js +23 -0
  377. package/dist/esm/errors/SDKError.js.map +1 -0
  378. package/dist/esm/errors/baseError.d.ts +11 -0
  379. package/dist/esm/errors/baseError.d.ts.map +1 -0
  380. package/dist/esm/errors/baseError.js +18 -0
  381. package/dist/esm/errors/baseError.js.map +1 -0
  382. package/dist/esm/errors/constants.d.ts +55 -0
  383. package/dist/esm/errors/constants.d.ts.map +1 -0
  384. package/dist/esm/errors/constants.js +58 -0
  385. package/dist/esm/errors/constants.js.map +1 -0
  386. package/dist/esm/errors/errors.d.ts +38 -0
  387. package/dist/esm/errors/errors.d.ts.map +1 -0
  388. package/dist/esm/errors/errors.js +54 -0
  389. package/dist/esm/errors/errors.js.map +1 -0
  390. package/dist/esm/errors/httpError.d.ts +24 -0
  391. package/dist/esm/errors/httpError.d.ts.map +1 -0
  392. package/dist/esm/errors/httpError.js +69 -0
  393. package/dist/esm/errors/httpError.js.map +1 -0
  394. package/dist/esm/errors/utils/baseErrorRootCause.d.ts +8 -0
  395. package/dist/esm/errors/utils/baseErrorRootCause.d.ts.map +1 -0
  396. package/dist/esm/errors/utils/baseErrorRootCause.js +16 -0
  397. package/dist/esm/errors/utils/baseErrorRootCause.js.map +1 -0
  398. package/dist/esm/errors/utils/rootCause.d.ts +5 -0
  399. package/dist/esm/errors/utils/rootCause.d.ts.map +1 -0
  400. package/dist/esm/errors/utils/rootCause.js +10 -0
  401. package/dist/esm/errors/utils/rootCause.js.map +1 -0
  402. package/dist/esm/index.d.ts +55 -0
  403. package/dist/esm/index.js +53 -0
  404. package/dist/esm/package.json +1 -0
  405. package/dist/esm/types/actions.d.ts +14 -0
  406. package/dist/esm/types/actions.d.ts.map +1 -0
  407. package/dist/esm/types/actions.js +1 -0
  408. package/dist/esm/types/core.d.ts +184 -0
  409. package/dist/esm/types/core.d.ts.map +1 -0
  410. package/dist/esm/types/core.js +1 -0
  411. package/dist/esm/types/execution.d.ts +28 -0
  412. package/dist/esm/types/execution.d.ts.map +1 -0
  413. package/dist/esm/types/execution.js +1 -0
  414. package/dist/esm/types/request.d.ts +7 -0
  415. package/dist/esm/types/request.d.ts.map +1 -0
  416. package/dist/esm/types/request.js +1 -0
  417. package/dist/esm/utils/checkPackageUpdates.d.ts +5 -0
  418. package/dist/esm/utils/checkPackageUpdates.d.ts.map +1 -0
  419. package/dist/esm/utils/checkPackageUpdates.js +14 -0
  420. package/dist/esm/utils/checkPackageUpdates.js.map +1 -0
  421. package/dist/esm/utils/convertQuoteToRoute.d.ts +22 -0
  422. package/dist/esm/utils/convertQuoteToRoute.d.ts.map +1 -0
  423. package/dist/esm/utils/convertQuoteToRoute.js +86 -0
  424. package/dist/esm/utils/convertQuoteToRoute.js.map +1 -0
  425. package/dist/esm/utils/decode.d.ts +5 -0
  426. package/dist/esm/utils/decode.d.ts.map +1 -0
  427. package/dist/esm/utils/decode.js +8 -0
  428. package/dist/esm/utils/decode.js.map +1 -0
  429. package/dist/esm/utils/fetchTxErrorDetails.d.ts +5 -0
  430. package/dist/esm/utils/fetchTxErrorDetails.d.ts.map +1 -0
  431. package/dist/esm/utils/fetchTxErrorDetails.js +12 -0
  432. package/dist/esm/utils/fetchTxErrorDetails.js.map +1 -0
  433. package/dist/esm/utils/formatUnits.d.ts +8 -0
  434. package/dist/esm/utils/formatUnits.d.ts.map +1 -0
  435. package/dist/esm/utils/formatUnits.js +17 -0
  436. package/dist/esm/utils/formatUnits.js.map +1 -0
  437. package/dist/esm/utils/getTransactionMessage.d.ts +8 -0
  438. package/dist/esm/utils/getTransactionMessage.d.ts.map +1 -0
  439. package/dist/esm/utils/getTransactionMessage.js +11 -0
  440. package/dist/esm/utils/getTransactionMessage.js.map +1 -0
  441. package/dist/esm/utils/isHex.d.ts +10 -0
  442. package/dist/esm/utils/isHex.d.ts.map +1 -0
  443. package/dist/esm/utils/isHex.js +10 -0
  444. package/dist/esm/utils/isHex.js.map +1 -0
  445. package/dist/esm/utils/isRoutesRequest.d.ts +7 -0
  446. package/dist/esm/utils/isRoutesRequest.d.ts.map +1 -0
  447. package/dist/esm/utils/isRoutesRequest.js +10 -0
  448. package/dist/esm/utils/isRoutesRequest.js.map +1 -0
  449. package/dist/esm/utils/isStep.d.ts +7 -0
  450. package/dist/esm/utils/isStep.d.ts.map +1 -0
  451. package/dist/esm/utils/isStep.js +22 -0
  452. package/dist/esm/utils/isStep.js.map +1 -0
  453. package/dist/esm/utils/isToken.d.ts +7 -0
  454. package/dist/esm/utils/isToken.d.ts.map +1 -0
  455. package/dist/esm/utils/isToken.js +9 -0
  456. package/dist/esm/utils/isToken.js.map +1 -0
  457. package/dist/esm/utils/parseUnits.d.ts +8 -0
  458. package/dist/esm/utils/parseUnits.d.ts.map +1 -0
  459. package/dist/esm/utils/parseUnits.js +34 -0
  460. package/dist/esm/utils/parseUnits.js.map +1 -0
  461. package/dist/esm/utils/request.d.ts +11 -0
  462. package/dist/esm/utils/request.d.ts.map +1 -0
  463. package/dist/esm/utils/request.js +54 -0
  464. package/dist/esm/utils/request.js.map +1 -0
  465. package/dist/esm/utils/sleep.d.ts +5 -0
  466. package/dist/esm/utils/sleep.d.ts.map +1 -0
  467. package/dist/esm/utils/sleep.js +10 -0
  468. package/dist/esm/utils/sleep.js.map +1 -0
  469. package/dist/esm/utils/waitForResult.d.ts +14 -0
  470. package/dist/esm/utils/waitForResult.d.ts.map +1 -0
  471. package/dist/esm/utils/waitForResult.js +35 -0
  472. package/dist/esm/utils/waitForResult.js.map +1 -0
  473. package/dist/esm/utils/withDedupe.d.ts +23 -0
  474. package/dist/esm/utils/withDedupe.d.ts.map +1 -0
  475. package/dist/esm/utils/withDedupe.js +32 -0
  476. package/dist/esm/utils/withDedupe.js.map +1 -0
  477. package/dist/esm/utils/withTimeout.d.ts +26 -0
  478. package/dist/esm/utils/withTimeout.d.ts.map +1 -0
  479. package/dist/esm/utils/withTimeout.js +34 -0
  480. package/dist/esm/utils/withTimeout.js.map +1 -0
  481. package/dist/esm/version.d.ts +6 -0
  482. package/dist/esm/version.d.ts.map +1 -0
  483. package/dist/esm/version.js +7 -0
  484. package/dist/esm/version.js.map +1 -0
  485. package/package.json +75 -0
  486. package/src/actions/getChains.ts +55 -0
  487. package/src/actions/getConnections.ts +55 -0
  488. package/src/actions/getContractCallsQuote.ts +81 -0
  489. package/src/actions/getGasRecommendation.ts +47 -0
  490. package/src/actions/getNameServiceAddress.ts +42 -0
  491. package/src/actions/getQuote.ts +105 -0
  492. package/src/actions/getRelayedTransactionStatus.ts +67 -0
  493. package/src/actions/getRelayerQuote.ts +86 -0
  494. package/src/actions/getRoutes.ts +43 -0
  495. package/src/actions/getStatus.ts +41 -0
  496. package/src/actions/getStepTransaction.ts +52 -0
  497. package/src/actions/getToken.ts +47 -0
  498. package/src/actions/getTokenBalance.ts +21 -0
  499. package/src/actions/getTokenBalances.ts +47 -0
  500. package/src/actions/getTokenBalancesByChain.ts +76 -0
  501. package/src/actions/getTokens.ts +57 -0
  502. package/src/actions/getTools.ts +34 -0
  503. package/src/actions/getTransactionHistory.ts +54 -0
  504. package/src/actions/getWalletBalances.ts +36 -0
  505. package/src/actions/index.ts +347 -0
  506. package/src/actions/patchContractCalls.ts +30 -0
  507. package/src/actions/relayTransaction.ts +74 -0
  508. package/src/client/createClient.ts +100 -0
  509. package/src/client/getClientStorage.ts +65 -0
  510. package/src/core/BaseStepExecutionTask.ts +9 -0
  511. package/src/core/BaseStepExecutor.ts +129 -0
  512. package/src/core/StatusManager.ts +245 -0
  513. package/src/core/TaskPipeline.ts +28 -0
  514. package/src/core/actionMessages.ts +103 -0
  515. package/src/core/execution.ts +243 -0
  516. package/src/core/executionState.ts +48 -0
  517. package/src/core/prepareRestart.ts +28 -0
  518. package/src/core/storage.ts +42 -0
  519. package/src/core/tasks/CheckBalanceTask.ts +46 -0
  520. package/src/core/tasks/PrepareTransactionTask.ts +62 -0
  521. package/src/core/tasks/WaitForTransactionStatusTask.ts +114 -0
  522. package/src/core/tasks/helpers/checkBalance.ts +218 -0
  523. package/src/core/tasks/helpers/getTransactionRequestData.ts +47 -0
  524. package/src/core/tasks/helpers/stepComparison.ts +50 -0
  525. package/src/core/tasks/helpers/waitForTransactionStatus.ts +76 -0
  526. package/src/core/utils.ts +59 -0
  527. package/src/errors/SDKError.ts +26 -0
  528. package/src/errors/baseError.ts +22 -0
  529. package/src/errors/constants.ts +54 -0
  530. package/src/errors/errors.ts +68 -0
  531. package/src/errors/httpError.ts +92 -0
  532. package/src/errors/utils/baseErrorRootCause.ts +18 -0
  533. package/src/errors/utils/rootCause.ts +7 -0
  534. package/src/index.ts +122 -0
  535. package/src/types/actions.ts +16 -0
  536. package/src/types/core.ts +264 -0
  537. package/src/types/execution.ts +32 -0
  538. package/src/types/request.ts +3 -0
  539. package/src/utils/checkPackageUpdates.ts +22 -0
  540. package/src/utils/convertQuoteToRoute.ts +154 -0
  541. package/src/utils/decode.ts +13 -0
  542. package/src/utils/fetchTxErrorDetails.ts +15 -0
  543. package/src/utils/formatUnits.ts +22 -0
  544. package/src/utils/getTransactionMessage.ts +17 -0
  545. package/src/utils/isHex.ts +14 -0
  546. package/src/utils/isRoutesRequest.ts +31 -0
  547. package/src/utils/isStep.ts +41 -0
  548. package/src/utils/isToken.ts +11 -0
  549. package/src/utils/parseUnits.ts +50 -0
  550. package/src/utils/request.ts +100 -0
  551. package/src/utils/sleep.ts +5 -0
  552. package/src/utils/waitForResult.ts +45 -0
  553. package/src/utils/withDedupe.ts +45 -0
  554. package/src/utils/withTimeout.ts +50 -0
  555. package/src/version.ts +2 -0
@@ -0,0 +1,35 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/utils/parseUnits.ts
3
+ /**
4
+ * Multiplies a string representation of a number by a given exponent of base 10 (10exponent).
5
+ */
6
+ function parseUnits(value, decimals) {
7
+ if (!/^(-?)([0-9]*)\.?([0-9]*)$/.test(value)) throw new Error(`Number \`${value}\` is not a valid decimal number.`);
8
+ let [integer, fraction = "0"] = value.split(".");
9
+ const negative = integer.startsWith("-");
10
+ if (negative) integer = integer.slice(1);
11
+ fraction = fraction.replace(/(0+)$/, "");
12
+ if (decimals === 0) {
13
+ if (Math.round(Number(`.${fraction}`)) === 1) integer = `${BigInt(integer) + 1n}`;
14
+ fraction = "";
15
+ } else if (fraction.length > decimals) {
16
+ const [left, unit, right] = [
17
+ fraction.slice(0, decimals - 1),
18
+ fraction.slice(decimals - 1, decimals),
19
+ fraction.slice(decimals)
20
+ ];
21
+ const rounded = Math.round(Number(`${unit}.${right}`));
22
+ if (rounded > 9) fraction = `${BigInt(left) + BigInt(1)}0`.padStart(left.length + 1, "0");
23
+ else fraction = `${left}${rounded}`;
24
+ if (fraction.length > decimals) {
25
+ fraction = fraction.slice(1);
26
+ integer = `${BigInt(integer) + 1n}`;
27
+ }
28
+ fraction = fraction.slice(0, decimals);
29
+ } else fraction = fraction.padEnd(decimals, "0");
30
+ return BigInt(`${negative ? "-" : ""}${integer}${fraction}`);
31
+ }
32
+ //#endregion
33
+ exports.parseUnits = parseUnits;
34
+
35
+ //# sourceMappingURL=parseUnits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseUnits.js","names":[],"sources":["../../../src/utils/parseUnits.ts"],"sourcesContent":["/**\n * Multiplies a string representation of a number by a given exponent of base 10 (10exponent).\n */\nexport function parseUnits(value: string, decimals: number): bigint {\n if (!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(value)) {\n throw new Error(`Number \\`${value}\\` is not a valid decimal number.`)\n }\n\n let [integer, fraction = '0'] = value.split('.')\n\n const negative = integer.startsWith('-')\n if (negative) {\n integer = integer.slice(1)\n }\n\n // trim trailing zeros.\n fraction = fraction.replace(/(0+)$/, '')\n\n // round off if the fraction is larger than the number of decimals.\n if (decimals === 0) {\n if (Math.round(Number(`.${fraction}`)) === 1) {\n integer = `${BigInt(integer) + 1n}`\n }\n fraction = ''\n } else if (fraction.length > decimals) {\n const [left, unit, right] = [\n fraction.slice(0, decimals - 1),\n fraction.slice(decimals - 1, decimals),\n fraction.slice(decimals),\n ]\n\n const rounded = Math.round(Number(`${unit}.${right}`))\n if (rounded > 9) {\n fraction = `${BigInt(left) + BigInt(1)}0`.padStart(left.length + 1, '0')\n } else {\n fraction = `${left}${rounded}`\n }\n\n if (fraction.length > decimals) {\n fraction = fraction.slice(1)\n integer = `${BigInt(integer) + 1n}`\n }\n\n fraction = fraction.slice(0, decimals)\n } else {\n fraction = fraction.padEnd(decimals, '0')\n }\n\n return BigInt(`${negative ? '-' : ''}${integer}${fraction}`)\n}\n"],"mappings":";;;;;AAGA,SAAgB,WAAW,OAAe,UAA0B;CAClE,IAAI,CAAC,4BAA4B,KAAK,KAAK,GACzC,MAAM,IAAI,MAAM,YAAY,MAAM,kCAAkC;CAGtE,IAAI,CAAC,SAAS,WAAW,OAAO,MAAM,MAAM,GAAG;CAE/C,MAAM,WAAW,QAAQ,WAAW,GAAG;CACvC,IAAI,UACF,UAAU,QAAQ,MAAM,CAAC;CAI3B,WAAW,SAAS,QAAQ,SAAS,EAAE;CAGvC,IAAI,aAAa,GAAG;EAClB,IAAI,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,MAAM,GACzC,UAAU,GAAG,OAAO,OAAO,IAAI;EAEjC,WAAW;CACb,OAAO,IAAI,SAAS,SAAS,UAAU;EACrC,MAAM,CAAC,MAAM,MAAM,SAAS;GAC1B,SAAS,MAAM,GAAG,WAAW,CAAC;GAC9B,SAAS,MAAM,WAAW,GAAG,QAAQ;GACrC,SAAS,MAAM,QAAQ;EACzB;EAEA,MAAM,UAAU,KAAK,MAAM,OAAO,GAAG,KAAK,GAAG,OAAO,CAAC;EACrD,IAAI,UAAU,GACZ,WAAW,GAAG,OAAO,IAAI,IAAI,OAAO,CAAC,EAAE,GAAG,SAAS,KAAK,SAAS,GAAG,GAAG;OAEvE,WAAW,GAAG,OAAO;EAGvB,IAAI,SAAS,SAAS,UAAU;GAC9B,WAAW,SAAS,MAAM,CAAC;GAC3B,UAAU,GAAG,OAAO,OAAO,IAAI;EACjC;EAEA,WAAW,SAAS,MAAM,GAAG,QAAQ;CACvC,OACE,WAAW,SAAS,OAAO,UAAU,GAAG;CAG1C,OAAO,OAAO,GAAG,WAAW,MAAM,KAAK,UAAU,UAAU;AAC7D"}
@@ -0,0 +1,11 @@
1
+ import { ExtendedRequestInit } from "../types/request.js";
2
+ import { SDKBaseConfig } from "../types/core.js";
3
+
4
+ //#region src/utils/request.d.ts
5
+ declare const requestSettings: {
6
+ retries: number;
7
+ };
8
+ declare const request: <T = Response>(config: SDKBaseConfig, url: RequestInfo | URL, options?: ExtendedRequestInit) => Promise<T>;
9
+ //#endregion
10
+ export { request, requestSettings };
11
+ //# sourceMappingURL=request.d.ts.map
@@ -0,0 +1,56 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_errors_errors = require("../errors/errors.js");
3
+ const require_errors_httpError = require("../errors/httpError.js");
4
+ const require_version = require("../version.js");
5
+ const require_errors_SDKError = require("../errors/SDKError.js");
6
+ const require_utils_sleep = require("./sleep.js");
7
+ //#region src/utils/request.ts
8
+ const requestSettings = { retries: 1 };
9
+ const stripExtendRequestInitProperties = ({ retries, ...rest }) => ({ ...rest });
10
+ const request = async (config, url, options = { retries: requestSettings.retries }) => {
11
+ const { userId, integrator, widgetVersion, apiKey, requestInterceptor } = config;
12
+ if (!integrator) throw new require_errors_SDKError.SDKError(new require_errors_errors.ValidationError("You need to provide the Integrator property. Please see documentation https://docs.li.fi/integrate-li.fi-js-sdk/set-up-the-sdk"));
13
+ options.retries = options.retries ?? requestSettings.retries;
14
+ try {
15
+ if (apiKey) options.headers = {
16
+ ...options.headers,
17
+ "x-lifi-api-key": apiKey
18
+ };
19
+ if (userId) options.headers = {
20
+ ...options.headers,
21
+ "x-lifi-userid": userId
22
+ };
23
+ if (widgetVersion) options.headers = {
24
+ ...options.headers,
25
+ "x-lifi-widget": widgetVersion
26
+ };
27
+ options.headers = {
28
+ ...options.headers,
29
+ "x-lifi-sdk": require_version.version
30
+ };
31
+ options.headers = {
32
+ ...options.headers,
33
+ "x-lifi-integrator": integrator
34
+ };
35
+ if (requestInterceptor) options = await requestInterceptor(options);
36
+ const response = await fetch(url, stripExtendRequestInitProperties(options));
37
+ if (!response.ok) throw new require_errors_httpError.HTTPError(response, url, options);
38
+ return await response.json();
39
+ } catch (error) {
40
+ const retries = options.retries ?? 0;
41
+ if (retries > 0 && error.status === 500) {
42
+ await require_utils_sleep.sleep(500);
43
+ return request(config, url, {
44
+ ...options,
45
+ retries: retries - 1
46
+ });
47
+ }
48
+ await error.buildAdditionalDetails?.();
49
+ throw new require_errors_SDKError.SDKError(error);
50
+ }
51
+ };
52
+ //#endregion
53
+ exports.request = request;
54
+ exports.requestSettings = requestSettings;
55
+
56
+ //# sourceMappingURL=request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.js","names":["SDKError","ValidationError","version","HTTPError","sleep"],"sources":["../../../src/utils/request.ts"],"sourcesContent":["import { ValidationError } from '../errors/errors.js'\nimport { HTTPError } from '../errors/httpError.js'\nimport { SDKError } from '../errors/SDKError.js'\nimport type { SDKBaseConfig } from '../types/core.js'\nimport type { ExtendedRequestInit } from '../types/request.js'\nimport { version } from '../version.js'\nimport { sleep } from './sleep.js'\n\nexport const requestSettings = {\n retries: 1,\n}\n\nconst stripExtendRequestInitProperties = ({\n retries,\n ...rest\n}: ExtendedRequestInit): RequestInit => ({\n ...rest,\n})\n\nexport const request = async <T = Response>(\n config: SDKBaseConfig,\n url: RequestInfo | URL,\n options: ExtendedRequestInit = {\n retries: requestSettings.retries,\n }\n): Promise<T> => {\n const { userId, integrator, widgetVersion, apiKey, requestInterceptor } =\n config\n\n if (!integrator) {\n throw new SDKError(\n new ValidationError(\n 'You need to provide the Integrator property. Please see documentation https://docs.li.fi/integrate-li.fi-js-sdk/set-up-the-sdk'\n )\n )\n }\n\n options.retries = options.retries ?? requestSettings.retries\n\n try {\n if (apiKey) {\n options.headers = {\n ...options.headers,\n 'x-lifi-api-key': apiKey,\n }\n }\n\n if (userId) {\n options.headers = {\n ...options.headers,\n 'x-lifi-userid': userId,\n }\n }\n\n if (widgetVersion) {\n options.headers = {\n ...options.headers,\n 'x-lifi-widget': widgetVersion,\n }\n }\n\n if (version) {\n options.headers = {\n ...options.headers,\n 'x-lifi-sdk': version,\n }\n }\n\n // integrator is mandatory during SDK initialization\n options.headers = {\n ...options.headers,\n 'x-lifi-integrator': integrator,\n }\n\n if (requestInterceptor) {\n options = await requestInterceptor(options)\n }\n\n const response: Response = await fetch(\n url,\n stripExtendRequestInitProperties(options)\n )\n\n if (!response.ok) {\n throw new HTTPError(response, url, options)\n }\n\n return await response.json()\n } catch (error) {\n const retries = options.retries ?? 0\n if (retries > 0 && (error as HTTPError).status === 500) {\n await sleep(500)\n return request<T>(config, url, { ...options, retries: retries - 1 })\n }\n\n await (error as HTTPError).buildAdditionalDetails?.()\n\n throw new SDKError(error as HTTPError)\n }\n}\n"],"mappings":";;;;;;;AAQA,MAAa,kBAAkB,EAC7B,SAAS,EACX;AAEA,MAAM,oCAAoC,EACxC,SACA,GAAG,YACoC,EACvC,GAAG,KACL;AAEA,MAAa,UAAU,OACrB,QACA,KACA,UAA+B,EAC7B,SAAS,gBAAgB,QAC3B,MACe;CACf,MAAM,EAAE,QAAQ,YAAY,eAAe,QAAQ,uBACjD;CAEF,IAAI,CAAC,YACH,MAAM,IAAIA,wBAAAA,SACR,IAAIC,sBAAAA,gBACF,gIACF,CACF;CAGF,QAAQ,UAAU,QAAQ,WAAW,gBAAgB;CAErD,IAAI;EACF,IAAI,QACF,QAAQ,UAAU;GAChB,GAAG,QAAQ;GACX,kBAAkB;EACpB;EAGF,IAAI,QACF,QAAQ,UAAU;GAChB,GAAG,QAAQ;GACX,iBAAiB;EACnB;EAGF,IAAI,eACF,QAAQ,UAAU;GAChB,GAAG,QAAQ;GACX,iBAAiB;EACnB;EAIA,QAAQ,UAAU;GAChB,GAAG,QAAQ;GACX,cAAcC,gBAAAA;EAChB;EAIF,QAAQ,UAAU;GAChB,GAAG,QAAQ;GACX,qBAAqB;EACvB;EAEA,IAAI,oBACF,UAAU,MAAM,mBAAmB,OAAO;EAG5C,MAAM,WAAqB,MAAM,MAC/B,KACA,iCAAiC,OAAO,CAC1C;EAEA,IAAI,CAAC,SAAS,IACZ,MAAM,IAAIC,yBAAAA,UAAU,UAAU,KAAK,OAAO;EAG5C,OAAO,MAAM,SAAS,KAAK;CAC7B,SAAS,OAAO;EACd,MAAM,UAAU,QAAQ,WAAW;EACnC,IAAI,UAAU,KAAM,MAAoB,WAAW,KAAK;GACtD,MAAMC,oBAAAA,MAAM,GAAG;GACf,OAAO,QAAW,QAAQ,KAAK;IAAE,GAAG;IAAS,SAAS,UAAU;GAAE,CAAC;EACrE;EAEA,MAAO,MAAoB,yBAAyB;EAEpD,MAAM,IAAIJ,wBAAAA,SAAS,KAAkB;CACvC;AACF"}
@@ -0,0 +1,5 @@
1
+ //#region src/utils/sleep.d.ts
2
+ declare function sleep(ms: number): Promise<null>;
3
+ //#endregion
4
+ export { sleep };
5
+ //# sourceMappingURL=sleep.d.ts.map
@@ -0,0 +1,11 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/utils/sleep.ts
3
+ function sleep(ms) {
4
+ return new Promise((resolve) => {
5
+ setTimeout(() => resolve(null), ms);
6
+ });
7
+ }
8
+ //#endregion
9
+ exports.sleep = sleep;
10
+
11
+ //# sourceMappingURL=sleep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sleep.js","names":[],"sources":["../../../src/utils/sleep.ts"],"sourcesContent":["export function sleep(ms: number): Promise<null> {\n return new Promise((resolve) => {\n setTimeout(() => resolve(null), ms)\n })\n}\n"],"mappings":";;AAAA,SAAgB,MAAM,IAA2B;CAC/C,OAAO,IAAI,SAAS,YAAY;EAC9B,iBAAiB,QAAQ,IAAI,GAAG,EAAE;CACpC,CAAC;AACH"}
@@ -0,0 +1,14 @@
1
+ //#region src/utils/waitForResult.d.ts
2
+ /**
3
+ * Repeatedly calls a given asynchronous function until it resolves with a value
4
+ * @param fn The function that should be repeated
5
+ * @param interval The timeout in milliseconds between retries, or a function that receives the current poll count and returns the interval. Defaults to 5000
6
+ * @param maxRetries Maximum number of retries before throwing an error, defaults to 3
7
+ * @param shouldRetry Optional predicate to determine if an error should trigger a retry
8
+ * @returns The result of the fn function
9
+ * @throws Error if maximum retries is reached, if function keeps returning undefined, or if shouldRetry returns false
10
+ */
11
+ declare const waitForResult: <T>(fn: () => Promise<T | undefined>, interval?: number | ((poll: number) => number), maxRetries?: number, shouldRetry?: (count: number, error: unknown) => boolean) => Promise<T>;
12
+ //#endregion
13
+ export { waitForResult };
14
+ //# sourceMappingURL=waitForResult.d.ts.map
@@ -0,0 +1,36 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_utils_sleep = require("./sleep.js");
3
+ //#region src/utils/waitForResult.ts
4
+ /**
5
+ * Repeatedly calls a given asynchronous function until it resolves with a value
6
+ * @param fn The function that should be repeated
7
+ * @param interval The timeout in milliseconds between retries, or a function that receives the current poll count and returns the interval. Defaults to 5000
8
+ * @param maxRetries Maximum number of retries before throwing an error, defaults to 3
9
+ * @param shouldRetry Optional predicate to determine if an error should trigger a retry
10
+ * @returns The result of the fn function
11
+ * @throws Error if maximum retries is reached, if function keeps returning undefined, or if shouldRetry returns false
12
+ */
13
+ const waitForResult = async (fn, interval = 5e3, maxRetries = 3, shouldRetry = () => true) => {
14
+ let result;
15
+ let attempts = 0;
16
+ let polls = 0;
17
+ const getInterval = typeof interval === "function" ? interval : () => interval;
18
+ while (!result) try {
19
+ result = await fn();
20
+ if (!result) {
21
+ await require_utils_sleep.sleep(getInterval(polls));
22
+ polls++;
23
+ }
24
+ } catch (error) {
25
+ if (!shouldRetry(attempts, error)) throw error;
26
+ attempts++;
27
+ if (attempts === maxRetries) throw error;
28
+ await require_utils_sleep.sleep(getInterval(polls));
29
+ polls++;
30
+ }
31
+ return result;
32
+ };
33
+ //#endregion
34
+ exports.waitForResult = waitForResult;
35
+
36
+ //# sourceMappingURL=waitForResult.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waitForResult.js","names":["sleep"],"sources":["../../../src/utils/waitForResult.ts"],"sourcesContent":["import { sleep } from './sleep.js'\n\n/**\n * Repeatedly calls a given asynchronous function until it resolves with a value\n * @param fn The function that should be repeated\n * @param interval The timeout in milliseconds between retries, or a function that receives the current poll count and returns the interval. Defaults to 5000\n * @param maxRetries Maximum number of retries before throwing an error, defaults to 3\n * @param shouldRetry Optional predicate to determine if an error should trigger a retry\n * @returns The result of the fn function\n * @throws Error if maximum retries is reached, if function keeps returning undefined, or if shouldRetry returns false\n */\nexport const waitForResult = async <T>(\n fn: () => Promise<T | undefined>,\n interval: number | ((poll: number) => number) = 5000,\n maxRetries = 3,\n shouldRetry: (count: number, error: unknown) => boolean = () => true\n): Promise<T> => {\n let result: T | undefined\n let attempts = 0\n let polls = 0\n\n const getInterval = typeof interval === 'function' ? interval : () => interval\n\n while (!result) {\n try {\n result = await fn()\n if (!result) {\n await sleep(getInterval(polls))\n polls++\n }\n } catch (error) {\n if (!shouldRetry(attempts, error)) {\n throw error\n }\n attempts++\n if (attempts === maxRetries) {\n throw error\n }\n await sleep(getInterval(polls))\n polls++\n }\n }\n\n return result\n}\n"],"mappings":";;;;;;;;;;;;AAWA,MAAa,gBAAgB,OAC3B,IACA,WAAgD,KAChD,aAAa,GACb,oBAAgE,SACjD;CACf,IAAI;CACJ,IAAI,WAAW;CACf,IAAI,QAAQ;CAEZ,MAAM,cAAc,OAAO,aAAa,aAAa,iBAAiB;CAEtE,OAAO,CAAC,QACN,IAAI;EACF,SAAS,MAAM,GAAG;EAClB,IAAI,CAAC,QAAQ;GACX,MAAMA,oBAAAA,MAAM,YAAY,KAAK,CAAC;GAC9B;EACF;CACF,SAAS,OAAO;EACd,IAAI,CAAC,YAAY,UAAU,KAAK,GAC9B,MAAM;EAER;EACA,IAAI,aAAa,YACf,MAAM;EAER,MAAMA,oBAAAA,MAAM,YAAY,KAAK,CAAC;EAC9B;CACF;CAGF,OAAO;AACT"}
@@ -0,0 +1,23 @@
1
+ //#region src/utils/withDedupe.d.ts
2
+ /**
3
+ * Map with a LRU (Least recently used) policy.
4
+ *
5
+ * https://en.wikipedia.org/wiki/Cache_replacement_policies#LRU
6
+ */
7
+ declare class LruMap<value = unknown> extends Map<string, value> {
8
+ maxSize: number;
9
+ constructor(size: number);
10
+ override set(key: string, value: value): this;
11
+ }
12
+ type WithDedupeOptions = {
13
+ enabled?: boolean | undefined;
14
+ id?: string | undefined;
15
+ };
16
+ /** Deduplicates in-flight promises. */
17
+ declare function withDedupe<T>(fn: () => Promise<T>, {
18
+ enabled,
19
+ id
20
+ }: WithDedupeOptions): Promise<T>;
21
+ //#endregion
22
+ export { LruMap, withDedupe };
23
+ //# sourceMappingURL=withDedupe.d.ts.map
@@ -0,0 +1,34 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/utils/withDedupe.ts
3
+ /**
4
+ * Map with a LRU (Least recently used) policy.
5
+ *
6
+ * https://en.wikipedia.org/wiki/Cache_replacement_policies#LRU
7
+ */
8
+ var LruMap = class extends Map {
9
+ maxSize;
10
+ constructor(size) {
11
+ super();
12
+ this.maxSize = size;
13
+ }
14
+ set(key, value) {
15
+ super.set(key, value);
16
+ if (this.maxSize && this.size > this.maxSize) this.delete(this.keys().next().value);
17
+ return this;
18
+ }
19
+ };
20
+ /** @internal */
21
+ const promiseCache = /* @__PURE__ */ new LruMap(8192);
22
+ /** Deduplicates in-flight promises. */
23
+ function withDedupe(fn, { enabled = true, id }) {
24
+ if (!enabled || !id) return fn();
25
+ if (promiseCache.get(id)) return promiseCache.get(id);
26
+ const promise = fn().finally(() => promiseCache.delete(id));
27
+ promiseCache.set(id, promise);
28
+ return promise;
29
+ }
30
+ //#endregion
31
+ exports.LruMap = LruMap;
32
+ exports.withDedupe = withDedupe;
33
+
34
+ //# sourceMappingURL=withDedupe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withDedupe.js","names":[],"sources":["../../../src/utils/withDedupe.ts"],"sourcesContent":["/**\n * Map with a LRU (Least recently used) policy.\n *\n * https://en.wikipedia.org/wiki/Cache_replacement_policies#LRU\n */\nexport class LruMap<value = unknown> extends Map<string, value> {\n maxSize: number\n\n constructor(size: number) {\n super()\n this.maxSize = size\n }\n\n override set(key: string, value: value): this {\n super.set(key, value)\n if (this.maxSize && this.size > this.maxSize) {\n this.delete(this.keys().next().value!)\n }\n return this\n }\n}\n\n/** @internal */\nconst promiseCache = /*#__PURE__*/ new LruMap<Promise<any>>(8192)\n\ntype WithDedupeOptions = {\n enabled?: boolean | undefined\n id?: string | undefined\n}\n\n/** Deduplicates in-flight promises. */\nexport function withDedupe<T>(\n fn: () => Promise<T>,\n { enabled = true, id }: WithDedupeOptions\n): Promise<T> {\n if (!enabled || !id) {\n return fn()\n }\n if (promiseCache.get(id)) {\n return promiseCache.get(id)!\n }\n const promise = fn().finally(() => promiseCache.delete(id))\n promiseCache.set(id, promise)\n return promise\n}\n"],"mappings":";;;;;;;AAKA,IAAa,SAAb,cAA6C,IAAmB;CAC9D;CAEA,YAAY,MAAc;EACxB,MAAM;EACN,KAAK,UAAU;CACjB;CAEA,IAAa,KAAa,OAAoB;EAC5C,MAAM,IAAI,KAAK,KAAK;EACpB,IAAI,KAAK,WAAW,KAAK,OAAO,KAAK,SACnC,KAAK,OAAO,KAAK,KAAK,EAAE,KAAK,EAAE,KAAM;EAEvC,OAAO;CACT;AACF;;AAGA,MAAM,+BAA6B,IAAI,OAAqB,IAAI;;AAQhE,SAAgB,WACd,IACA,EAAE,UAAU,MAAM,MACN;CACZ,IAAI,CAAC,WAAW,CAAC,IACf,OAAO,GAAG;CAEZ,IAAI,aAAa,IAAI,EAAE,GACrB,OAAO,aAAa,IAAI,EAAE;CAE5B,MAAM,UAAU,GAAG,EAAE,cAAc,aAAa,OAAO,EAAE,CAAC;CAC1D,aAAa,IAAI,IAAI,OAAO;CAC5B,OAAO;AACT"}
@@ -0,0 +1,26 @@
1
+ //#region src/utils/withTimeout.d.ts
2
+ /**
3
+ * Wraps a function in a timeout.
4
+ * Based on viem's withTimeout implementation.
5
+ * @param fn - The function to wrap.
6
+ * @param timeout - The timeout in milliseconds.
7
+ * @param errorInstance - The error instance to throw when the timeout is reached.
8
+ * @param signal - Whether or not the timeout should use an abort signal.
9
+ * @returns The result of the function.
10
+ */
11
+ declare function withTimeout<T>(fn: ({
12
+ signal
13
+ }: {
14
+ signal: AbortController["signal"] | null;
15
+ }) => Promise<T>, {
16
+ errorInstance,
17
+ timeout,
18
+ signal
19
+ }: {
20
+ errorInstance?: Error | undefined;
21
+ timeout: number;
22
+ signal?: boolean | undefined;
23
+ }): Promise<T>;
24
+ //#endregion
25
+ export { withTimeout };
26
+ //# sourceMappingURL=withTimeout.d.ts.map
@@ -0,0 +1,35 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/utils/withTimeout.ts
3
+ /**
4
+ * Wraps a function in a timeout.
5
+ * Based on viem's withTimeout implementation.
6
+ * @param fn - The function to wrap.
7
+ * @param timeout - The timeout in milliseconds.
8
+ * @param errorInstance - The error instance to throw when the timeout is reached.
9
+ * @param signal - Whether or not the timeout should use an abort signal.
10
+ * @returns The result of the function.
11
+ */
12
+ function withTimeout(fn, { errorInstance = /* @__PURE__ */ new Error("Timed out after waiting for too long."), timeout, signal }) {
13
+ return new Promise((resolve, reject) => {
14
+ (async () => {
15
+ let timeoutId;
16
+ try {
17
+ const controller = new AbortController();
18
+ if (timeout > 0) timeoutId = setTimeout(() => {
19
+ if (signal) controller.abort();
20
+ else reject(errorInstance);
21
+ }, timeout);
22
+ resolve(await fn({ signal: controller?.signal || null }));
23
+ } catch (err) {
24
+ if (err?.name === "AbortError") reject(errorInstance);
25
+ reject(err);
26
+ } finally {
27
+ clearTimeout(timeoutId);
28
+ }
29
+ })();
30
+ });
31
+ }
32
+ //#endregion
33
+ exports.withTimeout = withTimeout;
34
+
35
+ //# sourceMappingURL=withTimeout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withTimeout.js","names":[],"sources":["../../../src/utils/withTimeout.ts"],"sourcesContent":["/**\n * Wraps a function in a timeout.\n * Based on viem's withTimeout implementation.\n * @param fn - The function to wrap.\n * @param timeout - The timeout in milliseconds.\n * @param errorInstance - The error instance to throw when the timeout is reached.\n * @param signal - Whether or not the timeout should use an abort signal.\n * @returns The result of the function.\n */\nexport function withTimeout<T>(\n fn: ({ signal }: { signal: AbortController['signal'] | null }) => Promise<T>,\n {\n errorInstance = new Error('Timed out after waiting for too long.'),\n timeout,\n signal,\n }: {\n // The error instance to throw when the timeout is reached.\n errorInstance?: Error | undefined\n // The timeout (in ms).\n timeout: number\n // Whether or not the timeout should use an abort signal.\n signal?: boolean | undefined\n }\n): Promise<T> {\n return new Promise((resolve, reject) => {\n ;(async () => {\n let timeoutId!: NodeJS.Timeout\n try {\n const controller = new AbortController()\n if (timeout > 0) {\n timeoutId = setTimeout(() => {\n if (signal) {\n controller.abort()\n } else {\n reject(errorInstance)\n }\n }, timeout) as NodeJS.Timeout // need to cast because bun globals.d.ts overrides @types/node\n }\n resolve(await fn({ signal: controller?.signal || null }))\n } catch (err) {\n if ((err as Error)?.name === 'AbortError') {\n reject(errorInstance)\n }\n reject(err)\n } finally {\n clearTimeout(timeoutId)\n }\n })()\n })\n}\n"],"mappings":";;;;;;;;;;;AASA,SAAgB,YACd,IACA,EACE,gCAAgB,IAAI,MAAM,uCAAuC,GACjE,SACA,UASU;CACZ,OAAO,IAAI,SAAS,SAAS,WAAW;EACrC,CAAC,YAAY;GACZ,IAAI;GACJ,IAAI;IACF,MAAM,aAAa,IAAI,gBAAgB;IACvC,IAAI,UAAU,GACZ,YAAY,iBAAiB;KAC3B,IAAI,QACF,WAAW,MAAM;UAEjB,OAAO,aAAa;IAExB,GAAG,OAAO;IAEZ,QAAQ,MAAM,GAAG,EAAE,QAAQ,YAAY,UAAU,KAAK,CAAC,CAAC;GAC1D,SAAS,KAAK;IACZ,IAAK,KAAe,SAAS,cAC3B,OAAO,aAAa;IAEtB,OAAO,GAAG;GACZ,UAAU;IACR,aAAa,SAAS;GACxB;EACF,GAAG;CACL,CAAC;AACH"}
@@ -0,0 +1,6 @@
1
+ //#region src/version.d.ts
2
+ declare const name = "@lifi/sdk";
3
+ declare const version = "0.0.0-preview-f5cf9f8";
4
+ //#endregion
5
+ export { name, version };
6
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1,9 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/version.ts
3
+ const name = "@lifi/sdk";
4
+ const version = "0.0.0-preview-f5cf9f8";
5
+ //#endregion
6
+ exports.name = name;
7
+ exports.version = version;
8
+
9
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","names":[],"sources":["../../src/version.ts"],"sourcesContent":["export const name = '@lifi/sdk'\nexport const version = '0.0.0-preview-f5cf9f8'\n"],"mappings":";;AAAA,MAAa,OAAO;AACpB,MAAa,UAAU"}
@@ -0,0 +1,17 @@
1
+ import { SDKBaseConfig, SDKClient } from "../types/core.js";
2
+ import { ChainsRequest, ExtendedChain, RequestOptions } from "@lifi/types";
3
+
4
+ //#region src/actions/getChains.d.ts
5
+ /**
6
+ * Get all available chains
7
+ * @param client - The SDK client
8
+ * @param params - The configuration of the requested chains
9
+ * @param options - Request options
10
+ * @returns A list of all available chains
11
+ * @throws {LiFiError} Throws a LiFiError if request fails.
12
+ */
13
+ declare const getChains: (client: SDKClient, params?: ChainsRequest, options?: RequestOptions) => Promise<ExtendedChain[]>;
14
+ declare const _getChains: (config: SDKBaseConfig, params?: ChainsRequest, options?: RequestOptions) => Promise<ExtendedChain[]>;
15
+ //#endregion
16
+ export { _getChains, getChains };
17
+ //# sourceMappingURL=getChains.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getChains.d.ts","names":[],"sources":["../../../src/actions/getChains.ts"],"mappings":";;;;;;AAkBA;;;;;;cAAa,SAAA,GACX,MAAA,EAAQ,SAAA,EACR,MAAA,GAAS,aAAA,EACT,OAAA,GAAU,cAAA,KACT,OAAA,CAAQ,aAAA;AAAA,cAIE,UAAA,GACX,MAAA,EAAQ,aAAA,EACR,MAAA,GAAS,aAAA,EACT,OAAA,GAAU,cAAA,KACT,OAAA,CAAQ,aAAA"}
@@ -0,0 +1,26 @@
1
+ import { request } from "../utils/request.js";
2
+ import { withDedupe } from "../utils/withDedupe.js";
3
+ //#region src/actions/getChains.ts
4
+ /**
5
+ * Get all available chains
6
+ * @param client - The SDK client
7
+ * @param params - The configuration of the requested chains
8
+ * @param options - Request options
9
+ * @returns A list of all available chains
10
+ * @throws {LiFiError} Throws a LiFiError if request fails.
11
+ */
12
+ const getChains = async (client, params, options) => {
13
+ return await _getChains(client.config, params, options);
14
+ };
15
+ const _getChains = async (config, params, options) => {
16
+ if (params) for (const key of Object.keys(params)) {
17
+ const value = params[key];
18
+ if (value === void 0 || value === null) delete params[key];
19
+ }
20
+ const urlSearchParams = new URLSearchParams(params).toString();
21
+ return (await withDedupe(() => request(config, `${config.apiUrl}/chains?${urlSearchParams}`, { signal: options?.signal }), { id: `${getChains.name}.${urlSearchParams}` })).chains;
22
+ };
23
+ //#endregion
24
+ export { _getChains, getChains };
25
+
26
+ //# sourceMappingURL=getChains.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getChains.js","names":[],"sources":["../../../src/actions/getChains.ts"],"sourcesContent":["import type {\n ChainsRequest,\n ChainsResponse,\n ExtendedChain,\n RequestOptions,\n} from '@lifi/types'\nimport type { SDKBaseConfig, SDKClient } from '../types/core.js'\nimport { request } from '../utils/request.js'\nimport { withDedupe } from '../utils/withDedupe.js'\n\n/**\n * Get all available chains\n * @param client - The SDK client\n * @param params - The configuration of the requested chains\n * @param options - Request options\n * @returns A list of all available chains\n * @throws {LiFiError} Throws a LiFiError if request fails.\n */\nexport const getChains = async (\n client: SDKClient,\n params?: ChainsRequest,\n options?: RequestOptions\n): Promise<ExtendedChain[]> => {\n return await _getChains(client.config, params, options)\n}\n\nexport const _getChains = async (\n config: SDKBaseConfig,\n params?: ChainsRequest,\n options?: RequestOptions\n): Promise<ExtendedChain[]> => {\n if (params) {\n for (const key of Object.keys(params)) {\n const value = params[key as keyof ChainsRequest]\n if (value === undefined || value === null) {\n delete params[key as keyof ChainsRequest]\n }\n }\n }\n const urlSearchParams = new URLSearchParams(\n params as Record<string, string>\n ).toString()\n const response = await withDedupe(\n () =>\n request<ChainsResponse>(\n config,\n `${config.apiUrl}/chains?${urlSearchParams}`,\n {\n signal: options?.signal,\n }\n ),\n { id: `${getChains.name}.${urlSearchParams}` }\n )\n return response.chains\n}\n"],"mappings":";;;;;;;;;;;AAkBA,MAAa,YAAY,OACvB,QACA,QACA,YAC6B;CAC7B,OAAO,MAAM,WAAW,OAAO,QAAQ,QAAQ,OAAO;AACxD;AAEA,MAAa,aAAa,OACxB,QACA,QACA,YAC6B;CAC7B,IAAI,QACF,KAAK,MAAM,OAAO,OAAO,KAAK,MAAM,GAAG;EACrC,MAAM,QAAQ,OAAO;EACrB,IAAI,UAAU,KAAA,KAAa,UAAU,MACnC,OAAO,OAAO;CAElB;CAEF,MAAM,kBAAkB,IAAI,gBAC1B,MACF,EAAE,SAAS;CAYX,QAAO,MAXgB,iBAEnB,QACE,QACA,GAAG,OAAO,OAAO,UAAU,mBAC3B,EACE,QAAQ,SAAS,OACnB,CACF,GACF,EAAE,IAAI,GAAG,UAAU,KAAK,GAAG,kBAAkB,CAC/C,GACgB;AAClB"}
@@ -0,0 +1,15 @@
1
+ import { SDKClient } from "../types/core.js";
2
+ import { ConnectionsRequest, ConnectionsResponse, RequestOptions } from "@lifi/types";
3
+
4
+ //#region src/actions/getConnections.d.ts
5
+ /**
6
+ * Get all the available connections for swap/bridging tokens
7
+ * @param client - The SDK client
8
+ * @param connectionRequest ConnectionsRequest
9
+ * @param options - Request options
10
+ * @returns ConnectionsResponse
11
+ */
12
+ declare const getConnections: (client: SDKClient, connectionRequest: ConnectionsRequest, options?: RequestOptions) => Promise<ConnectionsResponse>;
13
+ //#endregion
14
+ export { getConnections };
15
+ //# sourceMappingURL=getConnections.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getConnections.d.ts","names":[],"sources":["../../../src/actions/getConnections.ts"],"mappings":";;;;;;AAeA;;;;;cAAa,cAAA,GACX,MAAA,EAAQ,SAAA,EACR,iBAAA,EAAmB,kBAAA,EACnB,OAAA,GAAU,cAAA,KACT,OAAA,CAAQ,mBAAA"}
@@ -0,0 +1,33 @@
1
+ import { request } from "../utils/request.js";
2
+ //#region src/actions/getConnections.ts
3
+ /**
4
+ * Get all the available connections for swap/bridging tokens
5
+ * @param client - The SDK client
6
+ * @param connectionRequest ConnectionsRequest
7
+ * @param options - Request options
8
+ * @returns ConnectionsResponse
9
+ */
10
+ const getConnections = async (client, connectionRequest, options) => {
11
+ const url = new URL(`${client.config.apiUrl}/connections`);
12
+ const { fromChain, fromToken, toChain, toToken } = connectionRequest;
13
+ if (fromChain) url.searchParams.append("fromChain", fromChain);
14
+ if (fromToken) url.searchParams.append("fromToken", fromToken);
15
+ if (toChain) url.searchParams.append("toChain", toChain);
16
+ if (toToken) url.searchParams.append("toToken", toToken);
17
+ for (const parameter of [
18
+ "allowBridges",
19
+ "denyBridges",
20
+ "preferBridges",
21
+ "allowExchanges",
22
+ "denyExchanges",
23
+ "preferExchanges"
24
+ ]) {
25
+ const connectionRequestArrayParam = connectionRequest[parameter];
26
+ if (connectionRequestArrayParam?.length) for (const value of connectionRequestArrayParam) url.searchParams.append(parameter, value);
27
+ }
28
+ return await request(client.config, url, options);
29
+ };
30
+ //#endregion
31
+ export { getConnections };
32
+
33
+ //# sourceMappingURL=getConnections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getConnections.js","names":[],"sources":["../../../src/actions/getConnections.ts"],"sourcesContent":["import type {\n ConnectionsRequest,\n ConnectionsResponse,\n RequestOptions,\n} from '@lifi/types'\nimport type { SDKClient } from '../types/core.js'\nimport { request } from '../utils/request.js'\n\n/**\n * Get all the available connections for swap/bridging tokens\n * @param client - The SDK client\n * @param connectionRequest ConnectionsRequest\n * @param options - Request options\n * @returns ConnectionsResponse\n */\nexport const getConnections = async (\n client: SDKClient,\n connectionRequest: ConnectionsRequest,\n options?: RequestOptions\n): Promise<ConnectionsResponse> => {\n const url = new URL(`${client.config.apiUrl}/connections`)\n\n const { fromChain, fromToken, toChain, toToken } = connectionRequest\n\n if (fromChain) {\n url.searchParams.append('fromChain', fromChain as unknown as string)\n }\n if (fromToken) {\n url.searchParams.append('fromToken', fromToken)\n }\n if (toChain) {\n url.searchParams.append('toChain', toChain as unknown as string)\n }\n if (toToken) {\n url.searchParams.append('toToken', toToken)\n }\n const connectionRequestArrayParams: Array<keyof ConnectionsRequest> = [\n 'allowBridges',\n 'denyBridges',\n 'preferBridges',\n 'allowExchanges',\n 'denyExchanges',\n 'preferExchanges',\n ]\n for (const parameter of connectionRequestArrayParams) {\n const connectionRequestArrayParam = connectionRequest[parameter] as string[]\n\n if (connectionRequestArrayParam?.length) {\n for (const value of connectionRequestArrayParam) {\n url.searchParams.append(parameter, value)\n }\n }\n }\n return await request<ConnectionsResponse>(client.config, url, options)\n}\n"],"mappings":";;;;;;;;;AAeA,MAAa,iBAAiB,OAC5B,QACA,mBACA,YACiC;CACjC,MAAM,MAAM,IAAI,IAAI,GAAG,OAAO,OAAO,OAAO,aAAa;CAEzD,MAAM,EAAE,WAAW,WAAW,SAAS,YAAY;CAEnD,IAAI,WACF,IAAI,aAAa,OAAO,aAAa,SAA8B;CAErE,IAAI,WACF,IAAI,aAAa,OAAO,aAAa,SAAS;CAEhD,IAAI,SACF,IAAI,aAAa,OAAO,WAAW,OAA4B;CAEjE,IAAI,SACF,IAAI,aAAa,OAAO,WAAW,OAAO;CAU5C,KAAK,MAAM,aAAa;EAPtB;EACA;EACA;EACA;EACA;EACA;CAEiD,GAAG;EACpD,MAAM,8BAA8B,kBAAkB;EAEtD,IAAI,6BAA6B,QAC/B,KAAK,MAAM,SAAS,6BAClB,IAAI,aAAa,OAAO,WAAW,KAAK;CAG9C;CACA,OAAO,MAAM,QAA6B,OAAO,QAAQ,KAAK,OAAO;AACvE"}
@@ -0,0 +1,16 @@
1
+ import { SDKClient } from "../types/core.js";
2
+ import { ContractCallsQuoteRequest, LiFiStep, RequestOptions } from "@lifi/types";
3
+
4
+ //#region src/actions/getContractCallsQuote.d.ts
5
+ /**
6
+ * Get a quote for a destination contract call
7
+ * @param client - The SDK client
8
+ * @param params - The configuration of the requested destination call
9
+ * @param options - Request options
10
+ * @throws {LiFiError} - Throws a LiFiError if request fails
11
+ * @returns - Returns step.
12
+ */
13
+ declare const getContractCallsQuote: (client: SDKClient, params: ContractCallsQuoteRequest, options?: RequestOptions) => Promise<LiFiStep>;
14
+ //#endregion
15
+ export { getContractCallsQuote };
16
+ //# sourceMappingURL=getContractCallsQuote.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getContractCallsQuote.d.ts","names":[],"sources":["../../../src/actions/getContractCallsQuote.ts"],"mappings":";;;;;;AAsBA;;;;;;cAAa,qBAAA,GACX,MAAA,EAAQ,SAAA,EACR,MAAA,EAAQ,yBAAA,EACR,OAAA,GAAU,cAAA,KACT,OAAA,CAAQ,QAAA"}
@@ -0,0 +1,44 @@
1
+ import { ValidationError } from "../errors/errors.js";
2
+ import { SDKError } from "../errors/SDKError.js";
3
+ import { request } from "../utils/request.js";
4
+ import { isContractCallsRequestWithFromAmount, isContractCallsRequestWithToAmount } from "@lifi/types";
5
+ //#region src/actions/getContractCallsQuote.ts
6
+ /**
7
+ * Get a quote for a destination contract call
8
+ * @param client - The SDK client
9
+ * @param params - The configuration of the requested destination call
10
+ * @param options - Request options
11
+ * @throws {LiFiError} - Throws a LiFiError if request fails
12
+ * @returns - Returns step.
13
+ */
14
+ const getContractCallsQuote = async (client, params, options) => {
15
+ for (const requiredParameter of [
16
+ "fromChain",
17
+ "fromToken",
18
+ "fromAddress",
19
+ "toChain",
20
+ "toToken",
21
+ "contractCalls"
22
+ ]) if (!params[requiredParameter]) throw new SDKError(new ValidationError(`Required parameter "${requiredParameter}" is missing.`));
23
+ if (!isContractCallsRequestWithFromAmount(params) && !isContractCallsRequestWithToAmount(params)) throw new SDKError(new ValidationError(`Required parameter "fromAmount" or "toAmount" is missing.`));
24
+ params.integrator ??= client.config.integrator;
25
+ params.slippage ??= client.config.routeOptions?.slippage;
26
+ params.referrer ??= client.config.routeOptions?.referrer;
27
+ params.fee ??= client.config.routeOptions?.fee;
28
+ params.allowBridges ??= client.config.routeOptions?.bridges?.allow;
29
+ params.denyBridges ??= client.config.routeOptions?.bridges?.deny;
30
+ params.preferBridges ??= client.config.routeOptions?.bridges?.prefer;
31
+ params.allowExchanges ??= client.config.routeOptions?.exchanges?.allow;
32
+ params.denyExchanges ??= client.config.routeOptions?.exchanges?.deny;
33
+ params.preferExchanges ??= client.config.routeOptions?.exchanges?.prefer;
34
+ return await request(client.config, `${client.config.apiUrl}/quote/contractCalls`, {
35
+ method: "POST",
36
+ headers: { "Content-Type": "application/json" },
37
+ body: JSON.stringify(params),
38
+ signal: options?.signal
39
+ });
40
+ };
41
+ //#endregion
42
+ export { getContractCallsQuote };
43
+
44
+ //# sourceMappingURL=getContractCallsQuote.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getContractCallsQuote.js","names":[],"sources":["../../../src/actions/getContractCallsQuote.ts"],"sourcesContent":["import type {\n ContractCallsQuoteRequest,\n LiFiStep,\n RequestOptions,\n} from '@lifi/types'\nimport {\n isContractCallsRequestWithFromAmount,\n isContractCallsRequestWithToAmount,\n} from '@lifi/types'\nimport { ValidationError } from '../errors/errors.js'\nimport { SDKError } from '../errors/SDKError.js'\nimport type { SDKClient } from '../types/core.js'\nimport { request } from '../utils/request.js'\n\n/**\n * Get a quote for a destination contract call\n * @param client - The SDK client\n * @param params - The configuration of the requested destination call\n * @param options - Request options\n * @throws {LiFiError} - Throws a LiFiError if request fails\n * @returns - Returns step.\n */\nexport const getContractCallsQuote = async (\n client: SDKClient,\n params: ContractCallsQuoteRequest,\n options?: RequestOptions\n): Promise<LiFiStep> => {\n // validation\n const requiredParameters: Array<keyof ContractCallsQuoteRequest> = [\n 'fromChain',\n 'fromToken',\n 'fromAddress',\n 'toChain',\n 'toToken',\n 'contractCalls',\n ]\n for (const requiredParameter of requiredParameters) {\n if (!params[requiredParameter]) {\n throw new SDKError(\n new ValidationError(\n `Required parameter \"${requiredParameter}\" is missing.`\n )\n )\n }\n }\n if (\n !isContractCallsRequestWithFromAmount(params) &&\n !isContractCallsRequestWithToAmount(params)\n ) {\n throw new SDKError(\n new ValidationError(\n `Required parameter \"fromAmount\" or \"toAmount\" is missing.`\n )\n )\n }\n // apply defaults\n // option.order is not used in this endpoint\n params.integrator ??= client.config.integrator\n params.slippage ??= client.config.routeOptions?.slippage\n params.referrer ??= client.config.routeOptions?.referrer\n params.fee ??= client.config.routeOptions?.fee\n params.allowBridges ??= client.config.routeOptions?.bridges?.allow\n params.denyBridges ??= client.config.routeOptions?.bridges?.deny\n params.preferBridges ??= client.config.routeOptions?.bridges?.prefer\n params.allowExchanges ??= client.config.routeOptions?.exchanges?.allow\n params.denyExchanges ??= client.config.routeOptions?.exchanges?.deny\n params.preferExchanges ??= client.config.routeOptions?.exchanges?.prefer\n // send request\n return await request<LiFiStep>(\n client.config,\n `${client.config.apiUrl}/quote/contractCalls`,\n {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(params),\n signal: options?.signal,\n }\n )\n}\n"],"mappings":";;;;;;;;;;;;;AAsBA,MAAa,wBAAwB,OACnC,QACA,QACA,YACsB;CAUtB,KAAK,MAAM,qBAAqB;EAP9B;EACA;EACA;EACA;EACA;EACA;CAE+C,GAC/C,IAAI,CAAC,OAAO,oBACV,MAAM,IAAI,SACR,IAAI,gBACF,uBAAuB,kBAAkB,cAC3C,CACF;CAGJ,IACE,CAAC,qCAAqC,MAAM,KAC5C,CAAC,mCAAmC,MAAM,GAE1C,MAAM,IAAI,SACR,IAAI,gBACF,2DACF,CACF;CAIF,OAAO,eAAe,OAAO,OAAO;CACpC,OAAO,aAAa,OAAO,OAAO,cAAc;CAChD,OAAO,aAAa,OAAO,OAAO,cAAc;CAChD,OAAO,QAAQ,OAAO,OAAO,cAAc;CAC3C,OAAO,iBAAiB,OAAO,OAAO,cAAc,SAAS;CAC7D,OAAO,gBAAgB,OAAO,OAAO,cAAc,SAAS;CAC5D,OAAO,kBAAkB,OAAO,OAAO,cAAc,SAAS;CAC9D,OAAO,mBAAmB,OAAO,OAAO,cAAc,WAAW;CACjE,OAAO,kBAAkB,OAAO,OAAO,cAAc,WAAW;CAChE,OAAO,oBAAoB,OAAO,OAAO,cAAc,WAAW;CAElE,OAAO,MAAM,QACX,OAAO,QACP,GAAG,OAAO,OAAO,OAAO,uBACxB;EACE,QAAQ;EACR,SAAS,EACP,gBAAgB,mBAClB;EACA,MAAM,KAAK,UAAU,MAAM;EAC3B,QAAQ,SAAS;CACnB,CACF;AACF"}
@@ -0,0 +1,16 @@
1
+ import { SDKClient } from "../types/core.js";
2
+ import { GasRecommendationRequest, GasRecommendationResponse, RequestOptions } from "@lifi/types";
3
+
4
+ //#region src/actions/getGasRecommendation.d.ts
5
+ /**
6
+ * Get gas recommendation for a certain chain
7
+ * @param client - The SDK client
8
+ * @param params - Configuration of the requested gas recommendation.
9
+ * @param options - Request options
10
+ * @throws {LiFiError} Throws a LiFiError if request fails.
11
+ * @returns Gas recommendation response.
12
+ */
13
+ declare const getGasRecommendation: (client: SDKClient, params: GasRecommendationRequest, options?: RequestOptions) => Promise<GasRecommendationResponse>;
14
+ //#endregion
15
+ export { getGasRecommendation };
16
+ //# sourceMappingURL=getGasRecommendation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getGasRecommendation.d.ts","names":[],"sources":["../../../src/actions/getGasRecommendation.ts"],"mappings":";;;;;;AAkBA;;;;;;cAAa,oBAAA,GACX,MAAA,EAAQ,SAAA,EACR,MAAA,EAAQ,wBAAA,EACR,OAAA,GAAU,cAAA,KACT,OAAA,CAAQ,yBAAA"}
@@ -0,0 +1,23 @@
1
+ import { ValidationError } from "../errors/errors.js";
2
+ import { SDKError } from "../errors/SDKError.js";
3
+ import { request } from "../utils/request.js";
4
+ //#region src/actions/getGasRecommendation.ts
5
+ /**
6
+ * Get gas recommendation for a certain chain
7
+ * @param client - The SDK client
8
+ * @param params - Configuration of the requested gas recommendation.
9
+ * @param options - Request options
10
+ * @throws {LiFiError} Throws a LiFiError if request fails.
11
+ * @returns Gas recommendation response.
12
+ */
13
+ const getGasRecommendation = async (client, params, options) => {
14
+ if (!params.chainId) throw new SDKError(new ValidationError("Required parameter \"chainId\" is missing."));
15
+ const url = new URL(`${client.config.apiUrl}/gas/suggestion/${params.chainId}`);
16
+ if (params.fromChain) url.searchParams.append("fromChain", params.fromChain);
17
+ if (params.fromToken) url.searchParams.append("fromToken", params.fromToken);
18
+ return await request(client.config, url.toString(), { signal: options?.signal });
19
+ };
20
+ //#endregion
21
+ export { getGasRecommendation };
22
+
23
+ //# sourceMappingURL=getGasRecommendation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getGasRecommendation.js","names":[],"sources":["../../../src/actions/getGasRecommendation.ts"],"sourcesContent":["import type {\n GasRecommendationRequest,\n GasRecommendationResponse,\n RequestOptions,\n} from '@lifi/types'\nimport { ValidationError } from '../errors/errors.js'\nimport { SDKError } from '../errors/SDKError.js'\nimport type { SDKClient } from '../types/core.js'\nimport { request } from '../utils/request.js'\n\n/**\n * Get gas recommendation for a certain chain\n * @param client - The SDK client\n * @param params - Configuration of the requested gas recommendation.\n * @param options - Request options\n * @throws {LiFiError} Throws a LiFiError if request fails.\n * @returns Gas recommendation response.\n */\nexport const getGasRecommendation = async (\n client: SDKClient,\n params: GasRecommendationRequest,\n options?: RequestOptions\n): Promise<GasRecommendationResponse> => {\n if (!params.chainId) {\n throw new SDKError(\n new ValidationError('Required parameter \"chainId\" is missing.')\n )\n }\n\n const url = new URL(\n `${client.config.apiUrl}/gas/suggestion/${params.chainId}`\n )\n if (params.fromChain) {\n url.searchParams.append('fromChain', params.fromChain as unknown as string)\n }\n if (params.fromToken) {\n url.searchParams.append('fromToken', params.fromToken)\n }\n\n return await request<GasRecommendationResponse>(\n client.config,\n url.toString(),\n {\n signal: options?.signal,\n }\n )\n}\n"],"mappings":";;;;;;;;;;;;AAkBA,MAAa,uBAAuB,OAClC,QACA,QACA,YACuC;CACvC,IAAI,CAAC,OAAO,SACV,MAAM,IAAI,SACR,IAAI,gBAAgB,4CAA0C,CAChE;CAGF,MAAM,MAAM,IAAI,IACd,GAAG,OAAO,OAAO,OAAO,kBAAkB,OAAO,SACnD;CACA,IAAI,OAAO,WACT,IAAI,aAAa,OAAO,aAAa,OAAO,SAA8B;CAE5E,IAAI,OAAO,WACT,IAAI,aAAa,OAAO,aAAa,OAAO,SAAS;CAGvD,OAAO,MAAM,QACX,OAAO,QACP,IAAI,SAAS,GACb,EACE,QAAQ,SAAS,OACnB,CACF;AACF"}
@@ -0,0 +1,15 @@
1
+ import { SDKClient } from "../types/core.js";
2
+ import { ChainType } from "@lifi/types";
3
+
4
+ //#region src/actions/getNameServiceAddress.d.ts
5
+ /**
6
+ * Get the address of a name service
7
+ * @param client - The SDK client
8
+ * @param name - The name to resolve
9
+ * @param chainType - The chain type to resolve the name on
10
+ * @returns The address of the name service
11
+ */
12
+ declare const getNameServiceAddress: (client: SDKClient, name: string, chainType?: ChainType) => Promise<string | undefined>;
13
+ //#endregion
14
+ export { getNameServiceAddress };
15
+ //# sourceMappingURL=getNameServiceAddress.d.ts.map