@lifi/sdk 4.0.1-alpha.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (696) hide show
  1. package/CHANGELOG.md +1233 -0
  2. package/README.md +88 -5
  3. package/dist/cjs/actions/getChains.d.ts +17 -4
  4. package/dist/cjs/actions/getChains.js +22 -19
  5. package/dist/cjs/actions/getChains.js.map +1 -1
  6. package/dist/cjs/actions/getConnections.d.ts +15 -3
  7. package/dist/cjs/actions/getConnections.js +30 -35
  8. package/dist/cjs/actions/getConnections.js.map +1 -1
  9. package/dist/cjs/actions/getContractCallsQuote.d.ts +16 -3
  10. package/dist/cjs/actions/getContractCallsQuote.js +41 -42
  11. package/dist/cjs/actions/getContractCallsQuote.js.map +1 -1
  12. package/dist/cjs/actions/getGasRecommendation.d.ts +16 -3
  13. package/dist/cjs/actions/getGasRecommendation.js +20 -19
  14. package/dist/cjs/actions/getGasRecommendation.js.map +1 -1
  15. package/dist/cjs/actions/getNameServiceAddress.d.ts +15 -3
  16. package/dist/cjs/actions/getNameServiceAddress.js +25 -27
  17. package/dist/cjs/actions/getNameServiceAddress.js.map +1 -1
  18. package/dist/cjs/actions/getQuote.d.ts +18 -5
  19. package/dist/cjs/actions/getQuote.js +33 -45
  20. package/dist/cjs/actions/getQuote.js.map +1 -1
  21. package/dist/cjs/actions/getRelayedTransactionStatus.d.ts +16 -3
  22. package/dist/cjs/actions/getRelayedTransactionStatus.js +26 -26
  23. package/dist/cjs/actions/getRelayedTransactionStatus.js.map +1 -1
  24. package/dist/cjs/actions/getRelayerQuote.d.ts +17 -4
  25. package/dist/cjs/actions/getRelayerQuote.js +40 -44
  26. package/dist/cjs/actions/getRelayerQuote.js.map +1 -1
  27. package/dist/cjs/actions/getRoutes.d.ts +17 -3
  28. package/dist/cjs/actions/getRoutes.js +28 -23
  29. package/dist/cjs/actions/getRoutes.js.map +1 -1
  30. package/dist/cjs/actions/getStatus.d.ts +17 -4
  31. package/dist/cjs/actions/getStatus.js +18 -14
  32. package/dist/cjs/actions/getStatus.js.map +1 -1
  33. package/dist/cjs/actions/getStepTransaction.d.ts +17 -3
  34. package/dist/cjs/actions/getStepTransaction.js +32 -24
  35. package/dist/cjs/actions/getStepTransaction.js.map +1 -1
  36. package/dist/cjs/actions/getToken.d.ts +17 -3
  37. package/dist/cjs/actions/getToken.js +22 -18
  38. package/dist/cjs/actions/getToken.js.map +1 -1
  39. package/dist/cjs/actions/getTokenBalance.d.ts +17 -3
  40. package/dist/cjs/actions/getTokenBalance.js +16 -6
  41. package/dist/cjs/actions/getTokenBalance.js.map +1 -1
  42. package/dist/cjs/actions/getTokenBalances.d.ts +17 -3
  43. package/dist/cjs/actions/getTokenBalances.js +12 -13
  44. package/dist/cjs/actions/getTokenBalances.js.map +1 -1
  45. package/dist/cjs/actions/getTokenBalancesByChain.d.ts +19 -5
  46. package/dist/cjs/actions/getTokenBalancesByChain.js +22 -37
  47. package/dist/cjs/actions/getTokenBalancesByChain.js.map +1 -1
  48. package/dist/cjs/actions/getTokens.d.ts +18 -6
  49. package/dist/cjs/actions/getTokens.js +14 -18
  50. package/dist/cjs/actions/getTokens.js.map +1 -1
  51. package/dist/cjs/actions/getTools.d.ts +15 -3
  52. package/dist/cjs/actions/getTools.js +17 -14
  53. package/dist/cjs/actions/getTools.js.map +1 -1
  54. package/dist/cjs/actions/getTransactionHistory.d.ts +26 -3
  55. package/dist/cjs/actions/getTransactionHistory.js +27 -21
  56. package/dist/cjs/actions/getTransactionHistory.js.map +1 -1
  57. package/dist/cjs/actions/getWalletBalances.d.ts +16 -3
  58. package/dist/cjs/actions/getWalletBalances.js +16 -12
  59. package/dist/cjs/actions/getWalletBalances.js.map +1 -1
  60. package/dist/cjs/actions/index.d.ts +174 -39
  61. package/dist/cjs/actions/index.js +49 -47
  62. package/dist/cjs/actions/index.js.map +1 -1
  63. package/dist/cjs/actions/patchContractCalls.d.ts +14 -9
  64. package/dist/cjs/actions/patchContractCalls.js +11 -12
  65. package/dist/cjs/actions/patchContractCalls.js.map +1 -1
  66. package/dist/cjs/actions/relayTransaction.d.ts +16 -3
  67. package/dist/cjs/actions/relayTransaction.js +30 -34
  68. package/dist/cjs/actions/relayTransaction.js.map +1 -1
  69. package/dist/cjs/client/createClient.d.ts +7 -2
  70. package/dist/cjs/client/createClient.js +67 -75
  71. package/dist/cjs/client/createClient.js.map +1 -1
  72. package/dist/cjs/client/getClientStorage.d.ts +14 -8
  73. package/dist/cjs/client/getClientStorage.js +44 -47
  74. package/dist/cjs/client/getClientStorage.js.map +1 -1
  75. package/dist/cjs/core/BaseStepExecutionTask.d.ts +10 -0
  76. package/dist/cjs/core/BaseStepExecutionTask.js +11 -0
  77. package/dist/cjs/core/BaseStepExecutionTask.js.map +1 -0
  78. package/dist/cjs/core/BaseStepExecutor.d.ts +23 -11
  79. package/dist/cjs/core/BaseStepExecutor.js +67 -26
  80. package/dist/cjs/core/BaseStepExecutor.js.map +1 -1
  81. package/dist/cjs/core/StatusManager.d.ts +81 -20
  82. package/dist/cjs/core/StatusManager.js +158 -137
  83. package/dist/cjs/core/StatusManager.js.map +1 -1
  84. package/dist/cjs/core/TaskPipeline.d.ts +12 -0
  85. package/dist/cjs/core/TaskPipeline.js +21 -0
  86. package/dist/cjs/core/TaskPipeline.js.map +1 -0
  87. package/dist/cjs/core/actionMessages.d.ts +9 -4
  88. package/dist/cjs/core/actionMessages.js +72 -58
  89. package/dist/cjs/core/actionMessages.js.map +1 -1
  90. package/dist/cjs/core/execution.d.ts +48 -8
  91. package/dist/cjs/core/execution.js +131 -121
  92. package/dist/cjs/core/execution.js.map +1 -1
  93. package/dist/cjs/core/executionState.d.ts +17 -13
  94. package/dist/cjs/core/executionState.js +27 -27
  95. package/dist/cjs/core/executionState.js.map +1 -1
  96. package/dist/cjs/core/prepareRestart.d.ts +7 -2
  97. package/dist/cjs/core/prepareRestart.js +17 -19
  98. package/dist/cjs/core/prepareRestart.js.map +1 -1
  99. package/dist/cjs/core/storage.d.ts +21 -0
  100. package/dist/cjs/core/storage.js +35 -0
  101. package/dist/cjs/core/storage.js.map +1 -0
  102. package/dist/cjs/core/tasks/CheckBalanceTask.d.ts +19 -0
  103. package/dist/cjs/core/tasks/CheckBalanceTask.js +35 -0
  104. package/dist/cjs/core/tasks/CheckBalanceTask.js.map +1 -0
  105. package/dist/cjs/core/tasks/PrepareTransactionTask.d.ts +10 -0
  106. package/dist/cjs/core/tasks/PrepareTransactionTask.js +30 -0
  107. package/dist/cjs/core/tasks/PrepareTransactionTask.js.map +1 -0
  108. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.d.ts +13 -0
  109. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js +63 -0
  110. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
  111. package/dist/cjs/core/tasks/helpers/checkBalance.d.ts +30 -0
  112. package/dist/cjs/core/tasks/helpers/checkBalance.js +108 -0
  113. package/dist/cjs/core/tasks/helpers/checkBalance.js.map +1 -0
  114. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.d.ts +7 -0
  115. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js +25 -0
  116. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
  117. package/dist/cjs/core/tasks/helpers/stepComparison.d.ts +21 -0
  118. package/dist/cjs/core/tasks/helpers/stepComparison.js +32 -0
  119. package/dist/cjs/core/tasks/helpers/stepComparison.js.map +1 -0
  120. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.d.ts +9 -0
  121. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.js +48 -0
  122. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
  123. package/dist/cjs/core/utils.d.ts +17 -86
  124. package/dist/cjs/core/utils.js +37 -38
  125. package/dist/cjs/core/utils.js.map +1 -1
  126. package/dist/cjs/errors/SDKError.d.ts +16 -11
  127. package/dist/cjs/errors/SDKError.js +22 -21
  128. package/dist/cjs/errors/SDKError.js.map +1 -1
  129. package/dist/cjs/errors/baseError.d.ts +10 -5
  130. package/dist/cjs/errors/baseError.js +17 -18
  131. package/dist/cjs/errors/baseError.js.map +1 -1
  132. package/dist/cjs/errors/constants.d.ts +52 -47
  133. package/dist/cjs/errors/constants.js +60 -55
  134. package/dist/cjs/errors/constants.js.map +1 -1
  135. package/dist/cjs/errors/errors.d.ts +31 -16
  136. package/dist/cjs/errors/errors.js +57 -43
  137. package/dist/cjs/errors/errors.js.map +1 -1
  138. package/dist/cjs/errors/httpError.d.ts +21 -17
  139. package/dist/cjs/errors/httpError.js +63 -66
  140. package/dist/cjs/errors/httpError.js.map +1 -1
  141. package/dist/cjs/errors/utils/baseErrorRootCause.d.ts +8 -3
  142. package/dist/cjs/errors/utils/baseErrorRootCause.js +12 -15
  143. package/dist/cjs/errors/utils/baseErrorRootCause.js.map +1 -1
  144. package/dist/cjs/errors/utils/rootCause.d.ts +5 -1
  145. package/dist/cjs/errors/utils/rootCause.js +7 -8
  146. package/dist/cjs/errors/utils/rootCause.js.map +1 -1
  147. package/dist/cjs/index.d.ts +56 -46
  148. package/dist/cjs/index.js +130 -119
  149. package/dist/cjs/types/actions.d.ts +32 -7
  150. package/dist/cjs/types/actions.js +0 -3
  151. package/dist/cjs/types/core.d.ts +181 -164
  152. package/dist/cjs/types/core.js +0 -3
  153. package/dist/cjs/types/execution.d.ts +28 -0
  154. package/dist/cjs/types/execution.js +0 -0
  155. package/dist/cjs/types/request.d.ts +6 -2
  156. package/dist/cjs/types/request.js +0 -3
  157. package/dist/cjs/utils/checkPackageUpdates.d.ts +5 -1
  158. package/dist/cjs/utils/checkPackageUpdates.js +11 -16
  159. package/dist/cjs/utils/checkPackageUpdates.js.map +1 -1
  160. package/dist/cjs/utils/convertQuoteToRoute.d.ts +20 -5
  161. package/dist/cjs/utils/convertQuoteToRoute.js +72 -85
  162. package/dist/cjs/utils/convertQuoteToRoute.js.map +1 -1
  163. package/dist/cjs/utils/decode.d.ts +5 -1
  164. package/dist/cjs/utils/decode.js +5 -10
  165. package/dist/cjs/utils/decode.js.map +1 -1
  166. package/dist/cjs/utils/fetchTxErrorDetails.d.ts +5 -1
  167. package/dist/cjs/utils/fetchTxErrorDetails.js +9 -9
  168. package/dist/cjs/utils/fetchTxErrorDetails.js.map +1 -1
  169. package/dist/cjs/utils/formatUnits.d.ts +8 -1
  170. package/dist/cjs/utils/formatUnits.js +15 -15
  171. package/dist/cjs/utils/formatUnits.js.map +1 -1
  172. package/dist/cjs/utils/getTransactionMessage.d.ts +8 -3
  173. package/dist/cjs/utils/getTransactionMessage.js +8 -10
  174. package/dist/cjs/utils/getTransactionMessage.js.map +1 -1
  175. package/dist/cjs/utils/isHex.d.ts +9 -3
  176. package/dist/cjs/utils/isHex.js +8 -10
  177. package/dist/cjs/utils/isHex.js.map +1 -1
  178. package/dist/cjs/utils/isRoutesRequest.d.ts +7 -2
  179. package/dist/cjs/utils/isRoutesRequest.js +7 -14
  180. package/dist/cjs/utils/isRoutesRequest.js.map +1 -1
  181. package/dist/cjs/utils/isStep.d.ts +7 -2
  182. package/dist/cjs/utils/isStep.js +16 -25
  183. package/dist/cjs/utils/isStep.js.map +1 -1
  184. package/dist/cjs/utils/isToken.d.ts +7 -2
  185. package/dist/cjs/utils/isToken.js +6 -7
  186. package/dist/cjs/utils/isToken.js.map +1 -1
  187. package/dist/cjs/utils/parseUnits.d.ts +8 -1
  188. package/dist/cjs/utils/parseUnits.js +32 -41
  189. package/dist/cjs/utils/parseUnits.js.map +1 -1
  190. package/dist/cjs/utils/request.d.ts +10 -5
  191. package/dist/cjs/utils/request.js +53 -69
  192. package/dist/cjs/utils/request.js.map +1 -1
  193. package/dist/cjs/utils/sleep.d.ts +5 -1
  194. package/dist/cjs/utils/sleep.js +8 -6
  195. package/dist/cjs/utils/sleep.js.map +1 -1
  196. package/dist/cjs/utils/toQueryString.d.ts +5 -0
  197. package/dist/cjs/utils/toQueryString.js +17 -0
  198. package/dist/cjs/utils/toQueryString.js.map +1 -0
  199. package/dist/cjs/utils/waitForResult.d.ts +14 -1
  200. package/dist/cjs/utils/waitForResult.js +33 -26
  201. package/dist/cjs/utils/waitForResult.js.map +1 -1
  202. package/dist/cjs/utils/withDedupe.d.ts +21 -4
  203. package/dist/cjs/utils/withDedupe.js +31 -27
  204. package/dist/cjs/utils/withDedupe.js.map +1 -1
  205. package/dist/cjs/utils/withTimeout.d.ts +26 -0
  206. package/dist/cjs/utils/withTimeout.js +35 -0
  207. package/dist/cjs/utils/withTimeout.js.map +1 -0
  208. package/dist/cjs/version.d.ts +6 -2
  209. package/dist/cjs/version.js +8 -5
  210. package/dist/cjs/version.js.map +1 -1
  211. package/dist/esm/actions/getChains.d.ts +16 -11
  212. package/dist/esm/actions/getChains.d.ts.map +1 -0
  213. package/dist/esm/actions/getChains.js +22 -24
  214. package/dist/esm/actions/getChains.js.map +1 -1
  215. package/dist/esm/actions/getConnections.d.ts +14 -9
  216. package/dist/esm/actions/getConnections.d.ts.map +1 -0
  217. package/dist/esm/actions/getConnections.js +30 -39
  218. package/dist/esm/actions/getConnections.js.map +1 -1
  219. package/dist/esm/actions/getContractCallsQuote.d.ts +15 -10
  220. package/dist/esm/actions/getContractCallsQuote.d.ts.map +1 -0
  221. package/dist/esm/actions/getContractCallsQuote.js +41 -51
  222. package/dist/esm/actions/getContractCallsQuote.js.map +1 -1
  223. package/dist/esm/actions/getGasRecommendation.d.ts +15 -10
  224. package/dist/esm/actions/getGasRecommendation.d.ts.map +1 -0
  225. package/dist/esm/actions/getGasRecommendation.js +20 -24
  226. package/dist/esm/actions/getGasRecommendation.js.map +1 -1
  227. package/dist/esm/actions/getNameServiceAddress.d.ts +14 -9
  228. package/dist/esm/actions/getNameServiceAddress.d.ts.map +1 -0
  229. package/dist/esm/actions/getNameServiceAddress.js +25 -31
  230. package/dist/esm/actions/getNameServiceAddress.js.map +1 -1
  231. package/dist/esm/actions/getQuote.d.ts +17 -12
  232. package/dist/esm/actions/getQuote.d.ts.map +1 -0
  233. package/dist/esm/actions/getQuote.js +33 -44
  234. package/dist/esm/actions/getQuote.js.map +1 -1
  235. package/dist/esm/actions/getRelayedTransactionStatus.d.ts +15 -10
  236. package/dist/esm/actions/getRelayedTransactionStatus.d.ts.map +1 -0
  237. package/dist/esm/actions/getRelayedTransactionStatus.js +26 -32
  238. package/dist/esm/actions/getRelayedTransactionStatus.js.map +1 -1
  239. package/dist/esm/actions/getRelayerQuote.d.ts +16 -11
  240. package/dist/esm/actions/getRelayerQuote.d.ts.map +1 -0
  241. package/dist/esm/actions/getRelayerQuote.js +40 -50
  242. package/dist/esm/actions/getRelayerQuote.js.map +1 -1
  243. package/dist/esm/actions/getRoutes.d.ts +16 -10
  244. package/dist/esm/actions/getRoutes.d.ts.map +1 -0
  245. package/dist/esm/actions/getRoutes.js +28 -29
  246. package/dist/esm/actions/getRoutes.js.map +1 -1
  247. package/dist/esm/actions/getStatus.d.ts +16 -11
  248. package/dist/esm/actions/getStatus.d.ts.map +1 -0
  249. package/dist/esm/actions/getStatus.js +18 -19
  250. package/dist/esm/actions/getStatus.js.map +1 -1
  251. package/dist/esm/actions/getStepTransaction.d.ts +16 -10
  252. package/dist/esm/actions/getStepTransaction.d.ts.map +1 -0
  253. package/dist/esm/actions/getStepTransaction.js +32 -31
  254. package/dist/esm/actions/getStepTransaction.js.map +1 -1
  255. package/dist/esm/actions/getToken.d.ts +16 -11
  256. package/dist/esm/actions/getToken.d.ts.map +1 -0
  257. package/dist/esm/actions/getToken.js +22 -24
  258. package/dist/esm/actions/getToken.js.map +1 -1
  259. package/dist/esm/actions/getTokenBalance.d.ts +16 -11
  260. package/dist/esm/actions/getTokenBalance.d.ts.map +1 -0
  261. package/dist/esm/actions/getTokenBalance.js +16 -12
  262. package/dist/esm/actions/getTokenBalance.js.map +1 -1
  263. package/dist/esm/actions/getTokenBalances.d.ts +16 -11
  264. package/dist/esm/actions/getTokenBalances.d.ts.map +1 -0
  265. package/dist/esm/actions/getTokenBalances.js +12 -12
  266. package/dist/esm/actions/getTokenBalances.js.map +1 -1
  267. package/dist/esm/actions/getTokenBalancesByChain.d.ts +18 -13
  268. package/dist/esm/actions/getTokenBalancesByChain.d.ts.map +1 -0
  269. package/dist/esm/actions/getTokenBalancesByChain.js +22 -37
  270. package/dist/esm/actions/getTokenBalancesByChain.js.map +1 -1
  271. package/dist/esm/actions/getTokens.d.ts +17 -12
  272. package/dist/esm/actions/getTokens.d.ts.map +1 -0
  273. package/dist/esm/actions/getTokens.js +14 -16
  274. package/dist/esm/actions/getTokens.js.map +1 -1
  275. package/dist/esm/actions/getTools.d.ts +14 -9
  276. package/dist/esm/actions/getTools.d.ts.map +1 -0
  277. package/dist/esm/actions/getTools.js +17 -18
  278. package/dist/esm/actions/getTools.js.map +1 -1
  279. package/dist/esm/actions/getTransactionHistory.d.ts +25 -15
  280. package/dist/esm/actions/getTransactionHistory.d.ts.map +1 -0
  281. package/dist/esm/actions/getTransactionHistory.js +27 -31
  282. package/dist/esm/actions/getTransactionHistory.js.map +1 -1
  283. package/dist/esm/actions/getWalletBalances.d.ts +15 -10
  284. package/dist/esm/actions/getWalletBalances.d.ts.map +1 -0
  285. package/dist/esm/actions/getWalletBalances.js +16 -17
  286. package/dist/esm/actions/getWalletBalances.js.map +1 -1
  287. package/dist/esm/actions/index.d.ts +174 -166
  288. package/dist/esm/actions/index.d.ts.map +1 -0
  289. package/dist/esm/actions/index.js +49 -45
  290. package/dist/esm/actions/index.js.map +1 -1
  291. package/dist/esm/actions/patchContractCalls.d.ts +14 -9
  292. package/dist/esm/actions/patchContractCalls.d.ts.map +1 -0
  293. package/dist/esm/actions/patchContractCalls.js +12 -10
  294. package/dist/esm/actions/patchContractCalls.js.map +1 -1
  295. package/dist/esm/actions/relayTransaction.d.ts +15 -10
  296. package/dist/esm/actions/relayTransaction.d.ts.map +1 -0
  297. package/dist/esm/actions/relayTransaction.js +30 -41
  298. package/dist/esm/actions/relayTransaction.js.map +1 -1
  299. package/dist/esm/client/createClient.d.ts +7 -2
  300. package/dist/esm/client/createClient.d.ts.map +1 -0
  301. package/dist/esm/client/createClient.js +67 -74
  302. package/dist/esm/client/createClient.js.map +1 -1
  303. package/dist/esm/client/getClientStorage.d.ts +14 -8
  304. package/dist/esm/client/getClientStorage.d.ts.map +1 -0
  305. package/dist/esm/client/getClientStorage.js +45 -48
  306. package/dist/esm/client/getClientStorage.js.map +1 -1
  307. package/dist/esm/core/BaseStepExecutionTask.d.ts +10 -0
  308. package/dist/esm/core/BaseStepExecutionTask.d.ts.map +1 -0
  309. package/dist/esm/core/BaseStepExecutionTask.js +10 -0
  310. package/dist/esm/core/BaseStepExecutionTask.js.map +1 -0
  311. package/dist/esm/core/BaseStepExecutor.d.ts +23 -11
  312. package/dist/esm/core/BaseStepExecutor.d.ts.map +1 -0
  313. package/dist/esm/core/BaseStepExecutor.js +67 -24
  314. package/dist/esm/core/BaseStepExecutor.js.map +1 -1
  315. package/dist/esm/core/StatusManager.d.ts +80 -64
  316. package/dist/esm/core/StatusManager.d.ts.map +1 -0
  317. package/dist/esm/core/StatusManager.js +157 -181
  318. package/dist/esm/core/StatusManager.js.map +1 -1
  319. package/dist/esm/core/TaskPipeline.d.ts +12 -0
  320. package/dist/esm/core/TaskPipeline.d.ts.map +1 -0
  321. package/dist/esm/core/TaskPipeline.js +20 -0
  322. package/dist/esm/core/TaskPipeline.js.map +1 -0
  323. package/dist/esm/core/actionMessages.d.ts +9 -4
  324. package/dist/esm/core/actionMessages.d.ts.map +1 -0
  325. package/dist/esm/core/actionMessages.js +72 -56
  326. package/dist/esm/core/actionMessages.js.map +1 -1
  327. package/dist/esm/core/execution.d.ts +42 -37
  328. package/dist/esm/core/execution.d.ts.map +1 -0
  329. package/dist/esm/core/execution.js +126 -162
  330. package/dist/esm/core/execution.js.map +1 -1
  331. package/dist/esm/core/executionState.d.ts +17 -13
  332. package/dist/esm/core/executionState.d.ts.map +1 -0
  333. package/dist/esm/core/executionState.js +26 -24
  334. package/dist/esm/core/executionState.js.map +1 -1
  335. package/dist/esm/core/prepareRestart.d.ts +7 -2
  336. package/dist/esm/core/prepareRestart.d.ts.map +1 -0
  337. package/dist/esm/core/prepareRestart.js +18 -20
  338. package/dist/esm/core/prepareRestart.js.map +1 -1
  339. package/dist/esm/core/storage.d.ts +21 -0
  340. package/dist/esm/core/storage.d.ts.map +1 -0
  341. package/dist/esm/core/storage.js +32 -0
  342. package/dist/esm/core/storage.js.map +1 -0
  343. package/dist/esm/core/tasks/CheckBalanceTask.d.ts +19 -0
  344. package/dist/esm/core/tasks/CheckBalanceTask.d.ts.map +1 -0
  345. package/dist/esm/core/tasks/CheckBalanceTask.js +34 -0
  346. package/dist/esm/core/tasks/CheckBalanceTask.js.map +1 -0
  347. package/dist/esm/core/tasks/PrepareTransactionTask.d.ts +10 -0
  348. package/dist/esm/core/tasks/PrepareTransactionTask.d.ts.map +1 -0
  349. package/dist/esm/core/tasks/PrepareTransactionTask.js +29 -0
  350. package/dist/esm/core/tasks/PrepareTransactionTask.js.map +1 -0
  351. package/dist/esm/core/tasks/WaitForTransactionStatusTask.d.ts +13 -0
  352. package/dist/esm/core/tasks/WaitForTransactionStatusTask.d.ts.map +1 -0
  353. package/dist/esm/core/tasks/WaitForTransactionStatusTask.js +61 -0
  354. package/dist/esm/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
  355. package/dist/esm/core/tasks/helpers/checkBalance.d.ts +30 -0
  356. package/dist/esm/core/tasks/helpers/checkBalance.d.ts.map +1 -0
  357. package/dist/esm/core/tasks/helpers/checkBalance.js +107 -0
  358. package/dist/esm/core/tasks/helpers/checkBalance.js.map +1 -0
  359. package/dist/esm/core/tasks/helpers/getTransactionRequestData.d.ts +7 -0
  360. package/dist/esm/core/tasks/helpers/getTransactionRequestData.d.ts.map +1 -0
  361. package/dist/esm/core/tasks/helpers/getTransactionRequestData.js +24 -0
  362. package/dist/esm/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
  363. package/dist/esm/core/tasks/helpers/stepComparison.d.ts +21 -0
  364. package/dist/esm/core/tasks/helpers/stepComparison.d.ts.map +1 -0
  365. package/dist/esm/core/tasks/helpers/stepComparison.js +31 -0
  366. package/dist/esm/core/tasks/helpers/stepComparison.js.map +1 -0
  367. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.d.ts +9 -0
  368. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.d.ts.map +1 -0
  369. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.js +47 -0
  370. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
  371. package/dist/esm/core/utils.d.ts +16 -93
  372. package/dist/esm/core/utils.d.ts.map +1 -0
  373. package/dist/esm/core/utils.js +36 -45
  374. package/dist/esm/core/utils.js.map +1 -1
  375. package/dist/esm/errors/SDKError.d.ts +16 -11
  376. package/dist/esm/errors/SDKError.d.ts.map +1 -0
  377. package/dist/esm/errors/SDKError.js +22 -20
  378. package/dist/esm/errors/SDKError.js.map +1 -1
  379. package/dist/esm/errors/baseError.d.ts +10 -5
  380. package/dist/esm/errors/baseError.d.ts.map +1 -0
  381. package/dist/esm/errors/baseError.js +17 -17
  382. package/dist/esm/errors/baseError.js.map +1 -1
  383. package/dist/esm/errors/constants.d.ts +52 -47
  384. package/dist/esm/errors/constants.d.ts.map +1 -0
  385. package/dist/esm/errors/constants.js +57 -52
  386. package/dist/esm/errors/constants.js.map +1 -1
  387. package/dist/esm/errors/errors.d.ts +31 -16
  388. package/dist/esm/errors/errors.d.ts.map +1 -0
  389. package/dist/esm/errors/errors.js +53 -37
  390. package/dist/esm/errors/errors.js.map +1 -1
  391. package/dist/esm/errors/httpError.d.ts +21 -17
  392. package/dist/esm/errors/httpError.d.ts.map +1 -0
  393. package/dist/esm/errors/httpError.js +63 -63
  394. package/dist/esm/errors/httpError.js.map +1 -1
  395. package/dist/esm/errors/utils/baseErrorRootCause.d.ts +8 -3
  396. package/dist/esm/errors/utils/baseErrorRootCause.d.ts.map +1 -0
  397. package/dist/esm/errors/utils/baseErrorRootCause.js +13 -13
  398. package/dist/esm/errors/utils/baseErrorRootCause.js.map +1 -1
  399. package/dist/esm/errors/utils/rootCause.d.ts +5 -1
  400. package/dist/esm/errors/utils/rootCause.d.ts.map +1 -0
  401. package/dist/esm/errors/utils/rootCause.js +8 -6
  402. package/dist/esm/errors/utils/rootCause.js.map +1 -1
  403. package/dist/esm/index.d.ts +56 -46
  404. package/dist/esm/index.js +53 -47
  405. package/dist/esm/package.json +1 -1
  406. package/dist/esm/types/actions.d.ts +32 -7
  407. package/dist/esm/types/actions.d.ts.map +1 -0
  408. package/dist/esm/types/actions.js +0 -1
  409. package/dist/esm/types/core.d.ts +181 -167
  410. package/dist/esm/types/core.d.ts.map +1 -0
  411. package/dist/esm/types/core.js +0 -1
  412. package/dist/esm/types/execution.d.ts +28 -0
  413. package/dist/esm/types/execution.d.ts.map +1 -0
  414. package/dist/esm/types/execution.js +1 -0
  415. package/dist/esm/types/request.d.ts +6 -2
  416. package/dist/esm/types/request.d.ts.map +1 -0
  417. package/dist/esm/types/request.js +0 -1
  418. package/dist/esm/utils/checkPackageUpdates.d.ts +5 -1
  419. package/dist/esm/utils/checkPackageUpdates.d.ts.map +1 -0
  420. package/dist/esm/utils/checkPackageUpdates.js +12 -15
  421. package/dist/esm/utils/checkPackageUpdates.js.map +1 -1
  422. package/dist/esm/utils/convertQuoteToRoute.d.ts +19 -15
  423. package/dist/esm/utils/convertQuoteToRoute.d.ts.map +1 -0
  424. package/dist/esm/utils/convertQuoteToRoute.js +72 -92
  425. package/dist/esm/utils/convertQuoteToRoute.js.map +1 -1
  426. package/dist/esm/utils/decode.d.ts +5 -1
  427. package/dist/esm/utils/decode.d.ts.map +1 -0
  428. package/dist/esm/utils/decode.js +6 -8
  429. package/dist/esm/utils/decode.js.map +1 -1
  430. package/dist/esm/utils/fetchTxErrorDetails.d.ts +5 -1
  431. package/dist/esm/utils/fetchTxErrorDetails.d.ts.map +1 -0
  432. package/dist/esm/utils/fetchTxErrorDetails.js +10 -7
  433. package/dist/esm/utils/fetchTxErrorDetails.js.map +1 -1
  434. package/dist/esm/utils/formatUnits.d.ts +7 -3
  435. package/dist/esm/utils/formatUnits.d.ts.map +1 -0
  436. package/dist/esm/utils/formatUnits.js +14 -15
  437. package/dist/esm/utils/formatUnits.js.map +1 -1
  438. package/dist/esm/utils/getTransactionMessage.d.ts +8 -3
  439. package/dist/esm/utils/getTransactionMessage.d.ts.map +1 -0
  440. package/dist/esm/utils/getTransactionMessage.js +9 -8
  441. package/dist/esm/utils/getTransactionMessage.js.map +1 -1
  442. package/dist/esm/utils/isHex.d.ts +9 -3
  443. package/dist/esm/utils/isHex.d.ts.map +1 -0
  444. package/dist/esm/utils/isHex.js +8 -8
  445. package/dist/esm/utils/isHex.js.map +1 -1
  446. package/dist/esm/utils/isRoutesRequest.d.ts +7 -2
  447. package/dist/esm/utils/isRoutesRequest.d.ts.map +1 -0
  448. package/dist/esm/utils/isRoutesRequest.js +8 -12
  449. package/dist/esm/utils/isRoutesRequest.js.map +1 -1
  450. package/dist/esm/utils/isStep.d.ts +7 -2
  451. package/dist/esm/utils/isStep.d.ts.map +1 -0
  452. package/dist/esm/utils/isStep.js +17 -23
  453. package/dist/esm/utils/isStep.js.map +1 -1
  454. package/dist/esm/utils/isToken.d.ts +7 -2
  455. package/dist/esm/utils/isToken.d.ts.map +1 -0
  456. package/dist/esm/utils/isToken.js +7 -5
  457. package/dist/esm/utils/isToken.js.map +1 -1
  458. package/dist/esm/utils/parseUnits.d.ts +7 -3
  459. package/dist/esm/utils/parseUnits.d.ts.map +1 -0
  460. package/dist/esm/utils/parseUnits.js +31 -43
  461. package/dist/esm/utils/parseUnits.js.map +1 -1
  462. package/dist/esm/utils/request.d.ts +10 -5
  463. package/dist/esm/utils/request.d.ts.map +1 -0
  464. package/dist/esm/utils/request.js +52 -67
  465. package/dist/esm/utils/request.js.map +1 -1
  466. package/dist/esm/utils/sleep.d.ts +5 -1
  467. package/dist/esm/utils/sleep.d.ts.map +1 -0
  468. package/dist/esm/utils/sleep.js +8 -4
  469. package/dist/esm/utils/sleep.js.map +1 -1
  470. package/dist/esm/utils/toQueryString.d.ts +5 -0
  471. package/dist/esm/utils/toQueryString.d.ts.map +1 -0
  472. package/dist/esm/utils/toQueryString.js +16 -0
  473. package/dist/esm/utils/toQueryString.js.map +1 -0
  474. package/dist/esm/utils/waitForResult.d.ts +13 -9
  475. package/dist/esm/utils/waitForResult.d.ts.map +1 -0
  476. package/dist/esm/utils/waitForResult.js +32 -31
  477. package/dist/esm/utils/waitForResult.js.map +1 -1
  478. package/dist/esm/utils/withDedupe.d.ts +20 -4
  479. package/dist/esm/utils/withDedupe.d.ts.map +1 -0
  480. package/dist/esm/utils/withDedupe.js +26 -28
  481. package/dist/esm/utils/withDedupe.js.map +1 -1
  482. package/dist/esm/utils/withTimeout.d.ts +26 -0
  483. package/dist/esm/utils/withTimeout.d.ts.map +1 -0
  484. package/dist/esm/utils/withTimeout.js +34 -0
  485. package/dist/esm/utils/withTimeout.js.map +1 -0
  486. package/dist/esm/version.d.ts +6 -2
  487. package/dist/esm/version.d.ts.map +1 -0
  488. package/dist/esm/version.js +6 -2
  489. package/dist/esm/version.js.map +1 -1
  490. package/package.json +6 -5
  491. package/src/actions/getChains.ts +2 -1
  492. package/src/actions/getQuote.ts +7 -3
  493. package/src/actions/getRelayedTransactionStatus.ts +1 -1
  494. package/src/actions/getRelayerQuote.ts +4 -1
  495. package/src/actions/getRoutes.ts +2 -1
  496. package/src/actions/getStepTransaction.ts +16 -7
  497. package/src/actions/getTokens.ts +6 -3
  498. package/src/actions/getTools.ts +2 -1
  499. package/src/actions/index.ts +8 -5
  500. package/src/client/createClient.ts +9 -7
  501. package/src/client/getClientStorage.ts +9 -1
  502. package/src/core/BaseStepExecutionTask.ts +9 -0
  503. package/src/core/BaseStepExecutor.ts +90 -2
  504. package/src/core/StatusManager.ts +62 -61
  505. package/src/core/TaskPipeline.ts +28 -0
  506. package/src/core/actionMessages.ts +20 -3
  507. package/src/core/execution.ts +17 -3
  508. package/src/core/prepareRestart.ts +3 -4
  509. package/src/core/storage.ts +42 -0
  510. package/src/core/tasks/CheckBalanceTask.ts +46 -0
  511. package/src/core/tasks/PrepareTransactionTask.ts +62 -0
  512. package/src/core/tasks/WaitForTransactionStatusTask.ts +114 -0
  513. package/src/core/tasks/helpers/checkBalance.ts +218 -0
  514. package/src/core/tasks/helpers/getTransactionRequestData.ts +47 -0
  515. package/src/core/{stepComparison.ts → tasks/helpers/stepComparison.ts} +5 -5
  516. package/src/core/{waitForTransactionStatus.ts → tasks/helpers/waitForTransactionStatus.ts} +10 -7
  517. package/src/core/utils.ts +1 -1
  518. package/src/errors/constants.ts +1 -0
  519. package/src/errors/errors.ts +24 -0
  520. package/src/errors/httpError.ts +4 -6
  521. package/src/errors/utils/baseErrorRootCause.ts +2 -2
  522. package/src/errors/utils/rootCause.ts +1 -1
  523. package/src/index.ts +35 -4
  524. package/src/types/actions.ts +29 -0
  525. package/src/types/core.ts +23 -17
  526. package/src/types/execution.ts +32 -0
  527. package/src/utils/checkPackageUpdates.ts +1 -1
  528. package/src/utils/convertQuoteToRoute.ts +1 -1
  529. package/src/utils/decode.ts +1 -1
  530. package/src/utils/fetchTxErrorDetails.ts +7 -2
  531. package/src/utils/formatUnits.ts +1 -1
  532. package/src/utils/isStep.ts +4 -1
  533. package/src/utils/parseUnits.ts +1 -1
  534. package/src/utils/toQueryString.ts +35 -0
  535. package/src/utils/waitForResult.ts +9 -4
  536. package/src/utils/withDedupe.ts +2 -2
  537. package/src/utils/withTimeout.ts +50 -0
  538. package/src/version.ts +1 -1
  539. package/dist/cjs/core/checkBalance.d.ts +0 -3
  540. package/dist/cjs/core/checkBalance.js +0 -37
  541. package/dist/cjs/core/checkBalance.js.map +0 -1
  542. package/dist/cjs/core/stepComparison.d.ts +0 -4
  543. package/dist/cjs/core/stepComparison.js +0 -25
  544. package/dist/cjs/core/stepComparison.js.map +0 -1
  545. package/dist/cjs/core/waitForDestinationChainTransaction.d.ts +0 -4
  546. package/dist/cjs/core/waitForDestinationChainTransaction.js +0 -71
  547. package/dist/cjs/core/waitForDestinationChainTransaction.js.map +0 -1
  548. package/dist/cjs/core/waitForTransactionStatus.d.ts +0 -4
  549. package/dist/cjs/core/waitForTransactionStatus.js +0 -54
  550. package/dist/cjs/core/waitForTransactionStatus.js.map +0 -1
  551. package/dist/cjs/index.js.map +0 -1
  552. package/dist/cjs/types/actions.js.map +0 -1
  553. package/dist/cjs/types/core.js.map +0 -1
  554. package/dist/cjs/types/request.js.map +0 -1
  555. package/dist/esm/core/checkBalance.d.ts +0 -3
  556. package/dist/esm/core/checkBalance.js +0 -34
  557. package/dist/esm/core/checkBalance.js.map +0 -1
  558. package/dist/esm/core/stepComparison.d.ts +0 -16
  559. package/dist/esm/core/stepComparison.js +0 -35
  560. package/dist/esm/core/stepComparison.js.map +0 -1
  561. package/dist/esm/core/waitForDestinationChainTransaction.d.ts +0 -4
  562. package/dist/esm/core/waitForDestinationChainTransaction.js +0 -74
  563. package/dist/esm/core/waitForDestinationChainTransaction.js.map +0 -1
  564. package/dist/esm/core/waitForTransactionStatus.d.ts +0 -4
  565. package/dist/esm/core/waitForTransactionStatus.js +0 -51
  566. package/dist/esm/core/waitForTransactionStatus.js.map +0 -1
  567. package/dist/esm/index.js.map +0 -1
  568. package/dist/esm/types/actions.js.map +0 -1
  569. package/dist/esm/types/core.js.map +0 -1
  570. package/dist/esm/types/request.js.map +0 -1
  571. package/dist/types/actions/getChains.d.ts +0 -13
  572. package/dist/types/actions/getChains.d.ts.map +0 -1
  573. package/dist/types/actions/getConnections.d.ts +0 -11
  574. package/dist/types/actions/getConnections.d.ts.map +0 -1
  575. package/dist/types/actions/getContractCallsQuote.d.ts +0 -12
  576. package/dist/types/actions/getContractCallsQuote.d.ts.map +0 -1
  577. package/dist/types/actions/getGasRecommendation.d.ts +0 -12
  578. package/dist/types/actions/getGasRecommendation.d.ts.map +0 -1
  579. package/dist/types/actions/getNameServiceAddress.d.ts +0 -11
  580. package/dist/types/actions/getNameServiceAddress.d.ts.map +0 -1
  581. package/dist/types/actions/getQuote.d.ts +0 -14
  582. package/dist/types/actions/getQuote.d.ts.map +0 -1
  583. package/dist/types/actions/getRelayedTransactionStatus.d.ts +0 -12
  584. package/dist/types/actions/getRelayedTransactionStatus.d.ts.map +0 -1
  585. package/dist/types/actions/getRelayerQuote.d.ts +0 -13
  586. package/dist/types/actions/getRelayerQuote.d.ts.map +0 -1
  587. package/dist/types/actions/getRoutes.d.ts +0 -12
  588. package/dist/types/actions/getRoutes.d.ts.map +0 -1
  589. package/dist/types/actions/getStatus.d.ts +0 -13
  590. package/dist/types/actions/getStatus.d.ts.map +0 -1
  591. package/dist/types/actions/getStepTransaction.d.ts +0 -12
  592. package/dist/types/actions/getStepTransaction.d.ts.map +0 -1
  593. package/dist/types/actions/getToken.d.ts +0 -13
  594. package/dist/types/actions/getToken.d.ts.map +0 -1
  595. package/dist/types/actions/getTokenBalance.d.ts +0 -13
  596. package/dist/types/actions/getTokenBalance.d.ts.map +0 -1
  597. package/dist/types/actions/getTokenBalances.d.ts +0 -13
  598. package/dist/types/actions/getTokenBalances.d.ts.map +0 -1
  599. package/dist/types/actions/getTokenBalancesByChain.d.ts +0 -17
  600. package/dist/types/actions/getTokenBalancesByChain.d.ts.map +0 -1
  601. package/dist/types/actions/getTokens.d.ts +0 -16
  602. package/dist/types/actions/getTokens.d.ts.map +0 -1
  603. package/dist/types/actions/getTools.d.ts +0 -11
  604. package/dist/types/actions/getTools.d.ts.map +0 -1
  605. package/dist/types/actions/getTransactionHistory.d.ts +0 -17
  606. package/dist/types/actions/getTransactionHistory.d.ts.map +0 -1
  607. package/dist/types/actions/getWalletBalances.d.ts +0 -12
  608. package/dist/types/actions/getWalletBalances.d.ts.map +0 -1
  609. package/dist/types/actions/index.d.ts +0 -168
  610. package/dist/types/actions/index.d.ts.map +0 -1
  611. package/dist/types/actions/patchContractCalls.d.ts +0 -11
  612. package/dist/types/actions/patchContractCalls.d.ts.map +0 -1
  613. package/dist/types/actions/relayTransaction.d.ts +0 -12
  614. package/dist/types/actions/relayTransaction.d.ts.map +0 -1
  615. package/dist/types/client/createClient.d.ts +0 -3
  616. package/dist/types/client/createClient.d.ts.map +0 -1
  617. package/dist/types/client/getClientStorage.d.ts +0 -9
  618. package/dist/types/client/getClientStorage.d.ts.map +0 -1
  619. package/dist/types/core/BaseStepExecutor.d.ts +0 -13
  620. package/dist/types/core/BaseStepExecutor.d.ts.map +0 -1
  621. package/dist/types/core/StatusManager.d.ts +0 -68
  622. package/dist/types/core/StatusManager.d.ts.map +0 -1
  623. package/dist/types/core/actionMessages.d.ts +0 -5
  624. package/dist/types/core/actionMessages.d.ts.map +0 -1
  625. package/dist/types/core/checkBalance.d.ts +0 -4
  626. package/dist/types/core/checkBalance.d.ts.map +0 -1
  627. package/dist/types/core/execution.d.ts +0 -44
  628. package/dist/types/core/execution.d.ts.map +0 -1
  629. package/dist/types/core/executionState.d.ts +0 -18
  630. package/dist/types/core/executionState.d.ts.map +0 -1
  631. package/dist/types/core/prepareRestart.d.ts +0 -3
  632. package/dist/types/core/prepareRestart.d.ts.map +0 -1
  633. package/dist/types/core/stepComparison.d.ts +0 -17
  634. package/dist/types/core/stepComparison.d.ts.map +0 -1
  635. package/dist/types/core/utils.d.ts +0 -95
  636. package/dist/types/core/utils.d.ts.map +0 -1
  637. package/dist/types/core/waitForDestinationChainTransaction.d.ts +0 -5
  638. package/dist/types/core/waitForDestinationChainTransaction.d.ts.map +0 -1
  639. package/dist/types/core/waitForTransactionStatus.d.ts +0 -5
  640. package/dist/types/core/waitForTransactionStatus.d.ts.map +0 -1
  641. package/dist/types/errors/SDKError.d.ts +0 -13
  642. package/dist/types/errors/SDKError.d.ts.map +0 -1
  643. package/dist/types/errors/baseError.d.ts +0 -7
  644. package/dist/types/errors/baseError.d.ts.map +0 -1
  645. package/dist/types/errors/constants.d.ts +0 -51
  646. package/dist/types/errors/constants.d.ts.map +0 -1
  647. package/dist/types/errors/errors.d.ts +0 -24
  648. package/dist/types/errors/errors.d.ts.map +0 -1
  649. package/dist/types/errors/httpError.d.ts +0 -21
  650. package/dist/types/errors/httpError.d.ts.map +0 -1
  651. package/dist/types/errors/utils/baseErrorRootCause.d.ts +0 -4
  652. package/dist/types/errors/utils/baseErrorRootCause.d.ts.map +0 -1
  653. package/dist/types/errors/utils/rootCause.d.ts +0 -2
  654. package/dist/types/errors/utils/rootCause.d.ts.map +0 -1
  655. package/dist/types/index.d.ts +0 -47
  656. package/dist/types/index.d.ts.map +0 -1
  657. package/dist/types/types/actions.d.ts +0 -10
  658. package/dist/types/types/actions.d.ts.map +0 -1
  659. package/dist/types/types/core.d.ts +0 -171
  660. package/dist/types/types/core.d.ts.map +0 -1
  661. package/dist/types/types/request.d.ts +0 -4
  662. package/dist/types/types/request.d.ts.map +0 -1
  663. package/dist/types/utils/checkPackageUpdates.d.ts +0 -2
  664. package/dist/types/utils/checkPackageUpdates.d.ts.map +0 -1
  665. package/dist/types/utils/convertQuoteToRoute.d.ts +0 -19
  666. package/dist/types/utils/convertQuoteToRoute.d.ts.map +0 -1
  667. package/dist/types/utils/decode.d.ts +0 -2
  668. package/dist/types/utils/decode.d.ts.map +0 -1
  669. package/dist/types/utils/fetchTxErrorDetails.d.ts +0 -2
  670. package/dist/types/utils/fetchTxErrorDetails.d.ts.map +0 -1
  671. package/dist/types/utils/formatUnits.d.ts +0 -5
  672. package/dist/types/utils/formatUnits.d.ts.map +0 -1
  673. package/dist/types/utils/getTransactionMessage.d.ts +0 -4
  674. package/dist/types/utils/getTransactionMessage.d.ts.map +0 -1
  675. package/dist/types/utils/isHex.d.ts +0 -5
  676. package/dist/types/utils/isHex.d.ts.map +0 -1
  677. package/dist/types/utils/isRoutesRequest.d.ts +0 -3
  678. package/dist/types/utils/isRoutesRequest.d.ts.map +0 -1
  679. package/dist/types/utils/isStep.d.ts +0 -3
  680. package/dist/types/utils/isStep.d.ts.map +0 -1
  681. package/dist/types/utils/isToken.d.ts +0 -3
  682. package/dist/types/utils/isToken.d.ts.map +0 -1
  683. package/dist/types/utils/parseUnits.d.ts +0 -5
  684. package/dist/types/utils/parseUnits.d.ts.map +0 -1
  685. package/dist/types/utils/request.d.ts +0 -7
  686. package/dist/types/utils/request.d.ts.map +0 -1
  687. package/dist/types/utils/sleep.d.ts +0 -2
  688. package/dist/types/utils/sleep.d.ts.map +0 -1
  689. package/dist/types/utils/waitForResult.d.ts +0 -11
  690. package/dist/types/utils/waitForResult.d.ts.map +0 -1
  691. package/dist/types/utils/withDedupe.d.ts +0 -8
  692. package/dist/types/utils/withDedupe.d.ts.map +0 -1
  693. package/dist/types/version.d.ts +0 -3
  694. package/dist/types/version.d.ts.map +0 -1
  695. package/src/core/checkBalance.ts +0 -51
  696. package/src/core/waitForDestinationChainTransaction.ts +0 -112
@@ -1,7 +1,9 @@
1
- export const isToken = (token) => {
2
- const { address, decimals, chainId } = token;
3
- return (typeof address === 'string' &&
4
- typeof decimals === 'number' &&
5
- typeof chainId === 'number');
1
+ //#region src/utils/isToken.ts
2
+ const isToken = (token) => {
3
+ const { address, decimals, chainId } = token;
4
+ return typeof address === "string" && typeof decimals === "number" && typeof chainId === "number";
6
5
  };
6
+ //#endregion
7
+ export { isToken };
8
+
7
9
  //# sourceMappingURL=isToken.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isToken.js","sourceRoot":"","sources":["../../../src/utils/isToken.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAkB,EAAwB,EAAE;IAClE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,CAAA;IAE5C,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,QAAQ,KAAK,QAAQ;QAC5B,OAAO,OAAO,KAAK,QAAQ,CAC5B,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"isToken.js","names":[],"sources":["../../../src/utils/isToken.ts"],"sourcesContent":["import type { StaticToken } from '@lifi/types'\n\nexport const isToken = (token: StaticToken): token is StaticToken => {\n const { address, decimals, chainId } = token\n\n return (\n typeof address === 'string' &&\n typeof decimals === 'number' &&\n typeof chainId === 'number'\n )\n}\n"],"mappings":";AAEA,MAAa,WAAW,UAA6C;CACnE,MAAM,EAAE,SAAS,UAAU,YAAY;CAEvC,OACE,OAAO,YAAY,YACnB,OAAO,aAAa,YACpB,OAAO,YAAY;AAEvB"}
@@ -1,4 +1,8 @@
1
+ //#region src/utils/parseUnits.d.ts
1
2
  /**
2
- * Multiplies a string representation of a number by a given exponent of base 10 (10exponent).
3
- */
4
- export declare function parseUnits(value: string, decimals: number): bigint;
3
+ * Multiplies a string representation of a number by a given exponent of base 10 (10exponent).
4
+ */
5
+ declare function parseUnits(value: string, decimals: number): bigint;
6
+ //#endregion
7
+ export { parseUnits };
8
+ //# sourceMappingURL=parseUnits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseUnits.d.ts","names":[],"sources":["../../../src/utils/parseUnits.ts"],"mappings":";;AAGA;;iBAAgB,UAAA,CAAW,KAAA,UAAe,QAAA"}
@@ -1,46 +1,34 @@
1
+ //#region src/utils/parseUnits.ts
1
2
  /**
2
- * Multiplies a string representation of a number by a given exponent of base 10 (10exponent).
3
- */
4
- export function parseUnits(value, decimals) {
5
- if (!/^(-?)([0-9]*)\.?([0-9]*)$/.test(value)) {
6
- throw new Error(`Number \`${value}\` is not a valid decimal number.`);
7
- }
8
- let [integer, fraction = '0'] = value.split('.');
9
- const negative = integer.startsWith('-');
10
- if (negative) {
11
- integer = integer.slice(1);
12
- }
13
- // trim trailing zeros.
14
- fraction = fraction.replace(/(0+)$/, '');
15
- // round off if the fraction is larger than the number of decimals.
16
- if (decimals === 0) {
17
- if (Math.round(Number(`.${fraction}`)) === 1) {
18
- integer = `${BigInt(integer) + 1n}`;
19
- }
20
- fraction = '';
21
- }
22
- else if (fraction.length > decimals) {
23
- const [left, unit, right] = [
24
- fraction.slice(0, decimals - 1),
25
- fraction.slice(decimals - 1, decimals),
26
- fraction.slice(decimals),
27
- ];
28
- const rounded = Math.round(Number(`${unit}.${right}`));
29
- if (rounded > 9) {
30
- fraction = `${BigInt(left) + BigInt(1)}0`.padStart(left.length + 1, '0');
31
- }
32
- else {
33
- fraction = `${left}${rounded}`;
34
- }
35
- if (fraction.length > decimals) {
36
- fraction = fraction.slice(1);
37
- integer = `${BigInt(integer) + 1n}`;
38
- }
39
- fraction = fraction.slice(0, decimals);
40
- }
41
- else {
42
- fraction = fraction.padEnd(decimals, '0');
43
- }
44
- return BigInt(`${negative ? '-' : ''}${integer}${fraction}`);
3
+ * Multiplies a string representation of a number by a given exponent of base 10 (10exponent).
4
+ */
5
+ function parseUnits(value, decimals) {
6
+ if (!/^(-?)([0-9]*)\.?([0-9]*)$/.test(value)) throw new Error(`Number \`${value}\` is not a valid decimal number.`);
7
+ let [integer, fraction = "0"] = value.split(".");
8
+ const negative = integer.startsWith("-");
9
+ if (negative) integer = integer.slice(1);
10
+ fraction = fraction.replace(/(0+)$/, "");
11
+ if (decimals === 0) {
12
+ if (Math.round(Number(`.${fraction}`)) === 1) integer = `${BigInt(integer) + 1n}`;
13
+ fraction = "";
14
+ } else if (fraction.length > decimals) {
15
+ const [left, unit, right] = [
16
+ fraction.slice(0, decimals - 1),
17
+ fraction.slice(decimals - 1, decimals),
18
+ fraction.slice(decimals)
19
+ ];
20
+ const rounded = Math.round(Number(`${unit}.${right}`));
21
+ if (rounded > 9) fraction = `${BigInt(left) + BigInt(1)}0`.padStart(left.length + 1, "0");
22
+ else fraction = `${left}${rounded}`;
23
+ if (fraction.length > decimals) {
24
+ fraction = fraction.slice(1);
25
+ integer = `${BigInt(integer) + 1n}`;
26
+ }
27
+ fraction = fraction.slice(0, decimals);
28
+ } else fraction = fraction.padEnd(decimals, "0");
29
+ return BigInt(`${negative ? "-" : ""}${integer}${fraction}`);
45
30
  }
31
+ //#endregion
32
+ export { parseUnits };
33
+
46
34
  //# sourceMappingURL=parseUnits.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parseUnits.js","sourceRoot":"","sources":["../../../src/utils/parseUnits.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,KAAa,EAAE,QAAgB;IACxD,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,YAAY,KAAK,mCAAmC,CAAC,CAAA;IACvE,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,QAAQ,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAEhD,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IACxC,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC5B,CAAC;IAED,uBAAuB;IACvB,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IAExC,mEAAmE;IACnE,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7C,OAAO,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAA;QACrC,CAAC;QACD,QAAQ,GAAG,EAAE,CAAA;IACf,CAAC;SAAM,IAAI,QAAQ,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG;YAC1B,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC;YAC/B,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,QAAQ,CAAC;YACtC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;SACzB,CAAA;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAA;QACtD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,QAAQ,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;QAC1E,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,GAAG,IAAI,GAAG,OAAO,EAAE,CAAA;QAChC,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;YAC/B,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC5B,OAAO,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAA;QACrC,CAAC;QAED,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;IACxC,CAAC;SAAM,CAAC;QACN,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC3C,CAAC;IAED,OAAO,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,GAAG,QAAQ,EAAE,CAAC,CAAA;AAC9D,CAAC"}
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"}
@@ -1,6 +1,11 @@
1
- import type { SDKBaseConfig } from '../types/core.js';
2
- import type { ExtendedRequestInit } from '../types/request.js';
3
- export declare const requestSettings: {
4
- retries: number;
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;
5
7
  };
6
- export declare const request: <T = Response>(config: SDKBaseConfig, url: RequestInfo | URL, options?: ExtendedRequestInit) => Promise<T>;
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 @@
1
+ {"version":3,"file":"request.d.ts","names":[],"sources":["../../../src/utils/request.ts"],"mappings":";;;;cAQa,eAAA;EACX,OAAA;AAAA;AAAA,cAUW,OAAA,OAAqB,QAAA,EAChC,MAAA,EAAQ,aAAA,EACR,GAAA,EAAK,WAAA,GAAc,GAAA,EACnB,OAAA,GAAS,mBAAA,KAGR,OAAA,CAAQ,CAAA"}
@@ -1,69 +1,54 @@
1
- import { ValidationError } from '../errors/errors.js';
2
- import { HTTPError } from '../errors/httpError.js';
3
- import { SDKError } from '../errors/SDKError.js';
4
- import { version } from '../version.js';
5
- import { sleep } from './sleep.js';
6
- export const requestSettings = {
7
- retries: 1,
8
- };
9
- const stripExtendRequestInitProperties = ({ retries, ...rest }) => ({
10
- ...rest,
11
- });
12
- export const request = async (config, url, options = {
13
- retries: requestSettings.retries,
14
- }) => {
15
- const { userId, integrator, widgetVersion, apiKey, requestInterceptor } = config;
16
- if (!integrator) {
17
- throw new SDKError(new ValidationError('You need to provide the Integrator property. Please see documentation https://docs.li.fi/integrate-li.fi-js-sdk/set-up-the-sdk'));
18
- }
19
- options.retries = options.retries ?? requestSettings.retries;
20
- try {
21
- if (apiKey) {
22
- options.headers = {
23
- ...options.headers,
24
- 'x-lifi-api-key': apiKey,
25
- };
26
- }
27
- if (userId) {
28
- options.headers = {
29
- ...options.headers,
30
- 'x-lifi-userid': userId,
31
- };
32
- }
33
- if (widgetVersion) {
34
- options.headers = {
35
- ...options.headers,
36
- 'x-lifi-widget': widgetVersion,
37
- };
38
- }
39
- if (version) {
40
- options.headers = {
41
- ...options.headers,
42
- 'x-lifi-sdk': version,
43
- };
44
- }
45
- // integrator is mandatory during SDK initialization
46
- options.headers = {
47
- ...options.headers,
48
- 'x-lifi-integrator': integrator,
49
- };
50
- if (requestInterceptor) {
51
- options = await requestInterceptor(options);
52
- }
53
- const response = await fetch(url, stripExtendRequestInitProperties(options));
54
- if (!response.ok) {
55
- throw new HTTPError(response, url, options);
56
- }
57
- return await response.json();
58
- }
59
- catch (error) {
60
- const retries = options.retries ?? 0;
61
- if (retries > 0 && error.status === 500) {
62
- await sleep(500);
63
- return request(config, url, { ...options, retries: retries - 1 });
64
- }
65
- await error.buildAdditionalDetails?.();
66
- throw new SDKError(error);
67
- }
1
+ import { ValidationError } from "../errors/errors.js";
2
+ import { HTTPError } from "../errors/httpError.js";
3
+ import { version } from "../version.js";
4
+ import { SDKError } from "../errors/SDKError.js";
5
+ import { sleep } from "./sleep.js";
6
+ //#region src/utils/request.ts
7
+ const requestSettings = { retries: 1 };
8
+ const stripExtendRequestInitProperties = ({ retries, ...rest }) => ({ ...rest });
9
+ const request = async (config, url, options = { retries: requestSettings.retries }) => {
10
+ const { userId, integrator, widgetVersion, apiKey, requestInterceptor } = config;
11
+ if (!integrator) throw new SDKError(new ValidationError("You need to provide the Integrator property. Please see documentation https://docs.li.fi/integrate-li.fi-js-sdk/set-up-the-sdk"));
12
+ options.retries = options.retries ?? requestSettings.retries;
13
+ try {
14
+ if (apiKey) options.headers = {
15
+ ...options.headers,
16
+ "x-lifi-api-key": apiKey
17
+ };
18
+ if (userId) options.headers = {
19
+ ...options.headers,
20
+ "x-lifi-userid": userId
21
+ };
22
+ if (widgetVersion) options.headers = {
23
+ ...options.headers,
24
+ "x-lifi-widget": widgetVersion
25
+ };
26
+ options.headers = {
27
+ ...options.headers,
28
+ "x-lifi-sdk": version
29
+ };
30
+ options.headers = {
31
+ ...options.headers,
32
+ "x-lifi-integrator": integrator
33
+ };
34
+ if (requestInterceptor) options = await requestInterceptor(options);
35
+ const response = await fetch(url, stripExtendRequestInitProperties(options));
36
+ if (!response.ok) throw new HTTPError(response, url, options);
37
+ return await response.json();
38
+ } catch (error) {
39
+ const retries = options.retries ?? 0;
40
+ if (retries > 0 && error.status === 500) {
41
+ await sleep(500);
42
+ return request(config, url, {
43
+ ...options,
44
+ retries: retries - 1
45
+ });
46
+ }
47
+ await error.buildAdditionalDetails?.();
48
+ throw new SDKError(error);
49
+ }
68
50
  };
51
+ //#endregion
52
+ export { request, requestSettings };
53
+
69
54
  //# sourceMappingURL=request.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/utils/request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAGhD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,CAAC;CACX,CAAA;AAED,MAAM,gCAAgC,GAAG,CAAC,EACxC,OAAO,EACP,GAAG,IAAI,EACa,EAAe,EAAE,CAAC,CAAC;IACvC,GAAG,IAAI;CACR,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAC1B,MAAqB,EACrB,GAAsB,EACtB,UAA+B;IAC7B,OAAO,EAAE,eAAe,CAAC,OAAO;CACjC,EACW,EAAE;IACd,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,kBAAkB,EAAE,GACrE,MAAM,CAAA;IAER,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,QAAQ,CAChB,IAAI,eAAe,CACjB,gIAAgI,CACjI,CACF,CAAA;IACH,CAAC;IAED,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,eAAe,CAAC,OAAO,CAAA;IAE5D,IAAI,CAAC;QACH,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,OAAO,GAAG;gBAChB,GAAG,OAAO,CAAC,OAAO;gBAClB,gBAAgB,EAAE,MAAM;aACzB,CAAA;QACH,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,OAAO,GAAG;gBAChB,GAAG,OAAO,CAAC,OAAO;gBAClB,eAAe,EAAE,MAAM;aACxB,CAAA;QACH,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,CAAC,OAAO,GAAG;gBAChB,GAAG,OAAO,CAAC,OAAO;gBAClB,eAAe,EAAE,aAAa;aAC/B,CAAA;QACH,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,OAAO,GAAG;gBAChB,GAAG,OAAO,CAAC,OAAO;gBAClB,YAAY,EAAE,OAAO;aACtB,CAAA;QACH,CAAC;QAED,oDAAoD;QACpD,OAAO,CAAC,OAAO,GAAG;YAChB,GAAG,OAAO,CAAC,OAAO;YAClB,mBAAmB,EAAE,UAAU;SAChC,CAAA;QAED,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAA;QAC7C,CAAC;QAED,MAAM,QAAQ,GAAa,MAAM,KAAK,CACpC,GAAG,EACH,gCAAgC,CAAC,OAAO,CAAC,CAC1C,CAAA;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,SAAS,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,CAAA;QAC7C,CAAC;QAED,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,CAAC,CAAA;QACpC,IAAI,OAAO,GAAG,CAAC,IAAK,KAAmB,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvD,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;YAChB,OAAO,OAAO,CAAI,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,CAAC,EAAE,CAAC,CAAA;QACtE,CAAC;QAED,MAAO,KAAmB,CAAC,sBAAsB,EAAE,EAAE,CAAA;QAErD,MAAM,IAAI,QAAQ,CAAC,KAAkB,CAAC,CAAA;IACxC,CAAC;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"request.js","names":[],"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,IAAI,SACR,IAAI,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,cAAc;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,IAAI,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,MAAM,MAAM,GAAG;GACf,OAAO,QAAW,QAAQ,KAAK;IAAE,GAAG;IAAS,SAAS,UAAU;GAAE,CAAC;EACrE;EAEA,MAAO,MAAoB,yBAAyB;EAEpD,MAAM,IAAI,SAAS,KAAkB;CACvC;AACF"}
@@ -1 +1,5 @@
1
- export declare function sleep(ms: number): Promise<null>;
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 @@
1
+ {"version":3,"file":"sleep.d.ts","names":[],"sources":["../../../src/utils/sleep.ts"],"mappings":";iBAAgB,KAAA,CAAM,EAAA,WAAa,OAAA"}
@@ -1,6 +1,10 @@
1
- export function sleep(ms) {
2
- return new Promise((resolve) => {
3
- setTimeout(() => resolve(null), ms);
4
- });
1
+ //#region src/utils/sleep.ts
2
+ function sleep(ms) {
3
+ return new Promise((resolve) => {
4
+ setTimeout(() => resolve(null), ms);
5
+ });
5
6
  }
7
+ //#endregion
8
+ export { sleep };
9
+
6
10
  //# sourceMappingURL=sleep.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sleep.js","sourceRoot":"","sources":["../../../src/utils/sleep.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,KAAK,CAAC,EAAU;IAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;AACJ,CAAC"}
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,5 @@
1
+ //#region src/utils/toQueryString.d.ts
2
+ declare const toQueryString: (params: Record<string, unknown>) => string;
3
+ //#endregion
4
+ export { toQueryString };
5
+ //# sourceMappingURL=toQueryString.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toQueryString.d.ts","names":[],"sources":["../../../src/utils/toQueryString.ts"],"mappings":";cA+Ba,aAAA,GAAiB,MAAQ,EAAA,MAAA"}
@@ -0,0 +1,16 @@
1
+ //#region src/utils/toQueryString.ts
2
+ const isPrimitive = (value) => typeof value === "string" || typeof value === "number" || typeof value === "boolean" || typeof value === "bigint";
3
+ const serialize = (key, value) => {
4
+ if (value === void 0 || value === null) return [];
5
+ if (isPrimitive(value)) return [`${key}=${encodeURIComponent(String(value))}`];
6
+ if (Array.isArray(value)) {
7
+ if (value.every(isPrimitive)) return [`${key}=${encodeURIComponent(value.join(","))}`];
8
+ return value.flatMap((item, index) => serialize(`${key}[${index}]`, item));
9
+ }
10
+ return Object.entries(value).flatMap(([subKey, subValue]) => serialize(`${key}[${subKey}]`, subValue));
11
+ };
12
+ const toQueryString = (params) => Object.entries(params).flatMap(([key, value]) => serialize(key, value)).join("&");
13
+ //#endregion
14
+ export { toQueryString };
15
+
16
+ //# sourceMappingURL=toQueryString.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toQueryString.js","names":[],"sources":["../../../src/utils/toQueryString.ts"],"sourcesContent":["type QueryPrimitive = string | number | boolean | bigint\n\nconst isPrimitive = (value: unknown): value is QueryPrimitive =>\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean' ||\n typeof value === 'bigint'\n\n// Arrays of objects use qs indices notation (`key[0][subKey]=value`) to match\n// the backend's `qs.parse(str, { comma: true })`; only values are encoded.\nconst serialize = (key: string, value: unknown): string[] => {\n if (value === undefined || value === null) {\n return []\n }\n if (isPrimitive(value)) {\n return [`${key}=${encodeURIComponent(String(value))}`]\n }\n if (Array.isArray(value)) {\n // Scalar arrays stay comma-joined (backend splits on `comma: true`).\n if (value.every(isPrimitive)) {\n return [`${key}=${encodeURIComponent(value.join(','))}`]\n }\n return value.flatMap((item, index) => serialize(`${key}[${index}]`, item))\n }\n return Object.entries(value as Record<string, unknown>).flatMap(\n ([subKey, subValue]) => serialize(`${key}[${subKey}]`, subValue)\n )\n}\n\n// Encode params into a query string (no leading `?`). Drop-in for\n// `URLSearchParams` that handles nested array/object params; skips null/undefined.\nexport const toQueryString = (params: Record<string, unknown>): string =>\n Object.entries(params)\n .flatMap(([key, value]) => serialize(key, value))\n .join('&')\n"],"mappings":";AAEA,MAAM,eAAe,UACnB,OAAO,UAAU,YACjB,OAAO,UAAU,YACjB,OAAO,UAAU,aACjB,OAAO,UAAU;AAInB,MAAM,aAAa,KAAa,UAA6B;CAC3D,IAAI,UAAU,KAAA,KAAa,UAAU,MACnC,OAAO,CAAC;CAEV,IAAI,YAAY,KAAK,GACnB,OAAO,CAAC,GAAG,IAAI,GAAG,mBAAmB,OAAO,KAAK,CAAC,GAAG;CAEvD,IAAI,MAAM,QAAQ,KAAK,GAAG;EAExB,IAAI,MAAM,MAAM,WAAW,GACzB,OAAO,CAAC,GAAG,IAAI,GAAG,mBAAmB,MAAM,KAAK,GAAG,CAAC,GAAG;EAEzD,OAAO,MAAM,SAAS,MAAM,UAAU,UAAU,GAAG,IAAI,GAAG,MAAM,IAAI,IAAI,CAAC;CAC3E;CACA,OAAO,OAAO,QAAQ,KAAgC,CAAC,CAAC,SACrD,CAAC,QAAQ,cAAc,UAAU,GAAG,IAAI,GAAG,OAAO,IAAI,QAAQ,CACjE;AACF;AAIA,MAAa,iBAAiB,WAC5B,OAAO,QAAQ,MAAM,CAAC,CACnB,SAAS,CAAC,KAAK,WAAW,UAAU,KAAK,KAAK,CAAC,CAAC,CAChD,KAAK,GAAG"}
@@ -1,10 +1,14 @@
1
+ //#region src/utils/waitForResult.d.ts
1
2
  /**
2
- * Repeatedly calls a given asynchronous function until it resolves with a value
3
- * @param fn The function that should be repeated
4
- * @param interval The timeout in milliseconds between retries, defaults to 5000
5
- * @param maxRetries Maximum number of retries before throwing an error, defaults to 3
6
- * @param shouldRetry Optional predicate to determine if an error should trigger a retry
7
- * @returns The result of the fn function
8
- * @throws Error if maximum retries is reached, if function keeps returning undefined, or if shouldRetry returns false
9
- */
10
- export declare const waitForResult: <T>(fn: () => Promise<T | undefined>, interval?: number, maxRetries?: number, shouldRetry?: (count: number, error: unknown) => boolean) => Promise<T>;
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 @@
1
+ {"version":3,"file":"waitForResult.d.ts","names":[],"sources":["../../../src/utils/waitForResult.ts"],"mappings":";;AAWA;;;;;;;;cAAa,aAAA,MACX,EAAA,QAAU,OAAA,CAAQ,CAAA,eAClB,QAAA,cAAqB,IAAA,sBACrB,UAAA,WACA,WAAA,IAAc,KAAA,UAAe,KAAA,0BAC5B,OAAA,CAAQ,CAAA"}
@@ -1,34 +1,35 @@
1
- import { sleep } from './sleep.js';
1
+ import { sleep } from "./sleep.js";
2
+ //#region src/utils/waitForResult.ts
2
3
  /**
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, 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
- export const waitForResult = async (fn, interval = 5000, maxRetries = 3, shouldRetry = () => true) => {
12
- let result;
13
- let attempts = 0;
14
- while (!result) {
15
- try {
16
- result = await fn();
17
- if (!result) {
18
- await sleep(interval);
19
- }
20
- }
21
- catch (error) {
22
- if (!shouldRetry(attempts, error)) {
23
- throw error;
24
- }
25
- attempts++;
26
- if (attempts === maxRetries) {
27
- throw error;
28
- }
29
- await sleep(interval);
30
- }
31
- }
32
- return result;
4
+ * Repeatedly calls a given asynchronous function until it resolves with a value
5
+ * @param fn The function that should be repeated
6
+ * @param interval The timeout in milliseconds between retries, or a function that receives the current poll count and returns the interval. Defaults to 5000
7
+ * @param maxRetries Maximum number of retries before throwing an error, defaults to 3
8
+ * @param shouldRetry Optional predicate to determine if an error should trigger a retry
9
+ * @returns The result of the fn function
10
+ * @throws Error if maximum retries is reached, if function keeps returning undefined, or if shouldRetry returns false
11
+ */
12
+ const waitForResult = async (fn, interval = 5e3, maxRetries = 3, shouldRetry = () => true) => {
13
+ let result;
14
+ let attempts = 0;
15
+ let polls = 0;
16
+ const getInterval = typeof interval === "function" ? interval : () => interval;
17
+ while (!result) try {
18
+ result = await fn();
19
+ if (!result) {
20
+ await sleep(getInterval(polls));
21
+ polls++;
22
+ }
23
+ } catch (error) {
24
+ if (!shouldRetry(attempts, error)) throw error;
25
+ attempts++;
26
+ if (attempts === maxRetries) throw error;
27
+ await sleep(getInterval(polls));
28
+ polls++;
29
+ }
30
+ return result;
33
31
  };
32
+ //#endregion
33
+ export { waitForResult };
34
+
34
35
  //# sourceMappingURL=waitForResult.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"waitForResult.js","sourceRoot":"","sources":["../../../src/utils/waitForResult.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,EAAgC,EAChC,QAAQ,GAAG,IAAI,EACf,UAAU,GAAG,CAAC,EACd,cAA0D,GAAG,EAAE,CAAC,IAAI,EACxD,EAAE;IACd,IAAI,MAAqB,CAAA;IACzB,IAAI,QAAQ,GAAG,CAAC,CAAA;IAEhB,OAAO,CAAC,MAAM,EAAE,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,EAAE,EAAE,CAAA;YACnB,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAA;YACvB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;gBAClC,MAAM,KAAK,CAAA;YACb,CAAC;YACD,QAAQ,EAAE,CAAA;YACV,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;gBAC5B,MAAM,KAAK,CAAA;YACb,CAAC;YACD,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAA;QACvB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA"}
1
+ {"version":3,"file":"waitForResult.js","names":[],"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,MAAM,MAAM,YAAY,KAAK,CAAC;GAC9B;EACF;CACF,SAAS,OAAO;EACd,IAAI,CAAC,YAAY,UAAU,KAAK,GAC9B,MAAM;EAER;EACA,IAAI,aAAa,YACf,MAAM;EAER,MAAM,MAAM,YAAY,KAAK,CAAC;EAC9B;CACF;CAGF,OAAO;AACT"}
@@ -1,7 +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
+ }
1
12
  type WithDedupeOptions = {
2
- enabled?: boolean | undefined;
3
- id?: string | undefined;
13
+ enabled?: boolean | undefined;
14
+ id?: string | undefined;
4
15
  };
5
16
  /** Deduplicates in-flight promises. */
6
- export declare function withDedupe<T>(fn: () => Promise<T>, { enabled, id }: WithDedupeOptions): Promise<T>;
7
- export {};
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 @@
1
+ {"version":3,"file":"withDedupe.d.ts","names":[],"sources":["../../../src/utils/withDedupe.ts"],"mappings":";;AAKA;;;;cAAa,MAAA,0BAAgC,GAAA,SAAY,KAAA;EACvD,OAAA;EAEA,WAAA,CAAY,IAAA;EAAA,SAKH,GAAA,CAAI,GAAA,UAAa,KAAA,EAAO,KAAA;AAAA;AAAA,KAY9B,iBAAA;EACH,OAAA;EACA,EAAA;AAAA;;iBAIc,UAAA,IACd,EAAA,QAAU,OAAA,CAAQ,CAAA;EAChB,OAAA;EAAgB;AAAA,GAAM,iBAAA,GACvB,OAAA,CAAQ,CAAA"}
@@ -1,34 +1,32 @@
1
+ //#region src/utils/withDedupe.ts
1
2
  /**
2
- * Map with a LRU (Least recently used) policy.
3
- *
4
- * https://en.wikipedia.org/wiki/Cache_replacement_policies#LRU
5
- */
6
- class LruMap extends Map {
7
- maxSize;
8
- constructor(size) {
9
- super();
10
- this.maxSize = size;
11
- }
12
- set(key, value) {
13
- super.set(key, value);
14
- if (this.maxSize && this.size > this.maxSize) {
15
- this.delete(this.keys().next().value);
16
- }
17
- return this;
18
- }
19
- }
3
+ * Map with a LRU (Least recently used) policy.
4
+ *
5
+ * https://en.wikipedia.org/wiki/Cache_replacement_policies#LRU
6
+ */
7
+ var LruMap = class extends Map {
8
+ maxSize;
9
+ constructor(size) {
10
+ super();
11
+ this.maxSize = size;
12
+ }
13
+ set(key, value) {
14
+ super.set(key, value);
15
+ if (this.maxSize && this.size > this.maxSize) this.delete(this.keys().next().value);
16
+ return this;
17
+ }
18
+ };
20
19
  /** @internal */
21
20
  const promiseCache = /*#__PURE__*/ new LruMap(8192);
22
21
  /** Deduplicates in-flight promises. */
23
- export function withDedupe(fn, { enabled = true, id }) {
24
- if (!enabled || !id) {
25
- return fn();
26
- }
27
- if (promiseCache.get(id)) {
28
- return promiseCache.get(id);
29
- }
30
- const promise = fn().finally(() => promiseCache.delete(id));
31
- promiseCache.set(id, promise);
32
- return promise;
22
+ function withDedupe(fn, { enabled = true, id }) {
23
+ if (!enabled || !id) return fn();
24
+ if (promiseCache.get(id)) return promiseCache.get(id);
25
+ const promise = fn().finally(() => promiseCache.delete(id));
26
+ promiseCache.set(id, promise);
27
+ return promise;
33
28
  }
29
+ //#endregion
30
+ export { LruMap, withDedupe };
31
+
34
32
  //# sourceMappingURL=withDedupe.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"withDedupe.js","sourceRoot":"","sources":["../../../src/utils/withDedupe.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,MAAwB,SAAQ,GAAkB;IACtD,OAAO,CAAQ;IAEf,YAAY,IAAY;QACtB,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACrB,CAAC;IAEQ,GAAG,CAAC,GAAW,EAAE,KAAY;QACpC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACrB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAM,CAAC,CAAA;QACxC,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAED,gBAAgB;AAChB,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,MAAM,CAAe,IAAI,CAAC,CAAA;AAOjE,uCAAuC;AACvC,MAAM,UAAU,UAAU,CACxB,EAAoB,EACpB,EAAE,OAAO,GAAG,IAAI,EAAE,EAAE,EAAqB;IAEzC,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC;QACpB,OAAO,EAAE,EAAE,CAAA;IACb,CAAC;IACD,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;QACzB,OAAO,YAAY,CAAC,GAAG,CAAC,EAAE,CAAE,CAAA;IAC9B,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3D,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;IAC7B,OAAO,OAAO,CAAA;AAChB,CAAC"}
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,CAAC,CAAC,KAAK,CAAC,CAAC,KAAM;EAEvC,OAAO;CACT;AACF;;AAGA,MAAM,6BAA6B,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,CAAC,CAAC,cAAc,aAAa,OAAO,EAAE,CAAC;CAC1D,aAAa,IAAI,IAAI,OAAO;CAC5B,OAAO;AACT"}