@lifi/sdk 2.3.1 → 3.0.0-alpha.10

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 (379) hide show
  1. package/dist/cjs/LiFi.js +222 -250
  2. package/dist/cjs/LiFi.js.map +1 -0
  3. package/dist/cjs/allowance/getAllowance.js +82 -0
  4. package/dist/cjs/allowance/getAllowance.js.map +1 -0
  5. package/dist/cjs/allowance/index.js +5 -16
  6. package/dist/cjs/allowance/index.js.map +1 -0
  7. package/dist/cjs/allowance/setAllowance.js +71 -0
  8. package/dist/cjs/allowance/setAllowance.js.map +1 -0
  9. package/dist/cjs/{types/internal.types.js → allowance/types.js} +1 -0
  10. package/dist/cjs/allowance/types.js.map +1 -0
  11. package/dist/cjs/balance/getBalance.js +97 -0
  12. package/dist/cjs/balance/getBalance.js.map +1 -0
  13. package/dist/cjs/balance/getTokenBalance.js +7 -10
  14. package/dist/cjs/balance/getTokenBalance.js.map +1 -0
  15. package/dist/cjs/balance/index.js +4 -24
  16. package/dist/cjs/balance/index.js.map +1 -0
  17. package/dist/cjs/connectors.js +28 -48
  18. package/dist/cjs/connectors.js.map +1 -0
  19. package/dist/cjs/constants.js +7 -0
  20. package/dist/cjs/constants.js.map +1 -0
  21. package/dist/cjs/execution/BaseStepExecutor.js +54 -0
  22. package/dist/cjs/execution/BaseStepExecutor.js.map +1 -0
  23. package/dist/cjs/execution/EVMStepExecutor.js +271 -0
  24. package/dist/cjs/execution/EVMStepExecutor.js.map +1 -0
  25. package/dist/cjs/execution/RouteExecutionManager.js +196 -197
  26. package/dist/cjs/execution/RouteExecutionManager.js.map +1 -0
  27. package/dist/cjs/execution/StatusManager.js +142 -136
  28. package/dist/cjs/execution/StatusManager.js.map +1 -0
  29. package/dist/cjs/execution/StepExecutionManager.js +220 -233
  30. package/dist/cjs/execution/StepExecutionManager.js.map +1 -0
  31. package/dist/cjs/execution/checkAllowance.js +76 -0
  32. package/dist/cjs/execution/checkAllowance.js.map +1 -0
  33. package/dist/cjs/execution/checkBalance.js +42 -0
  34. package/dist/cjs/execution/checkBalance.js.map +1 -0
  35. package/dist/cjs/execution/index.js +4 -15
  36. package/dist/cjs/execution/index.js.map +1 -0
  37. package/dist/cjs/execution/multisig.js +13 -17
  38. package/dist/cjs/execution/multisig.js.map +1 -0
  39. package/dist/cjs/execution/prepareRestart.js +23 -0
  40. package/dist/cjs/execution/prepareRestart.js.map +1 -0
  41. package/dist/cjs/execution/stepComparison.js +5 -17
  42. package/dist/cjs/execution/stepComparison.js.map +1 -0
  43. package/dist/cjs/execution/switchChain.js +10 -22
  44. package/dist/cjs/execution/switchChain.js.map +1 -0
  45. package/dist/cjs/execution/types.js +3 -0
  46. package/dist/cjs/execution/types.js.map +1 -0
  47. package/dist/cjs/execution/utils.js +12 -67
  48. package/dist/cjs/execution/utils.js.map +1 -0
  49. package/dist/cjs/execution/waitForReceivingTransaction.js +56 -0
  50. package/dist/cjs/execution/waitForReceivingTransaction.js.map +1 -0
  51. package/dist/cjs/helpers.js +12 -58
  52. package/dist/cjs/helpers.js.map +1 -0
  53. package/dist/cjs/index.js +16 -22
  54. package/dist/cjs/index.js.map +1 -0
  55. package/dist/cjs/package.json +1 -0
  56. package/dist/cjs/providers/EVM.js +35 -0
  57. package/dist/cjs/providers/EVM.js.map +1 -0
  58. package/dist/cjs/providers/Solana.js +38 -0
  59. package/dist/cjs/providers/Solana.js.map +1 -0
  60. package/dist/cjs/providers/index.js +5 -0
  61. package/dist/cjs/providers/index.js.map +1 -0
  62. package/dist/cjs/providers/types.js +9 -0
  63. package/dist/cjs/providers/types.js.map +1 -0
  64. package/dist/cjs/request.js +10 -13
  65. package/dist/cjs/request.js.map +1 -0
  66. package/dist/cjs/services/ApiService.js +70 -86
  67. package/dist/cjs/services/ApiService.js.map +1 -0
  68. package/dist/cjs/services/ChainsService.js +19 -9
  69. package/dist/cjs/services/ChainsService.js.map +1 -0
  70. package/dist/cjs/services/ConfigService.js +94 -67
  71. package/dist/cjs/services/ConfigService.js.map +1 -0
  72. package/dist/cjs/typeguards.js +1 -0
  73. package/dist/cjs/typeguards.js.map +1 -0
  74. package/dist/cjs/types/abi.js +46 -0
  75. package/dist/cjs/types/abi.js.map +1 -0
  76. package/dist/cjs/types/index.js +4 -20
  77. package/dist/cjs/types/index.js.map +1 -0
  78. package/dist/cjs/types/internal.js +3 -0
  79. package/dist/cjs/types/internal.js.map +1 -0
  80. package/dist/cjs/utils/errors.js +63 -40
  81. package/dist/cjs/utils/errors.js.map +1 -0
  82. package/dist/cjs/utils/getMaxPriorityFeePerGas.js +23 -0
  83. package/dist/cjs/utils/getMaxPriorityFeePerGas.js.map +1 -0
  84. package/dist/cjs/utils/index.js +9 -0
  85. package/dist/cjs/utils/index.js.map +1 -0
  86. package/dist/cjs/utils/median.js +16 -0
  87. package/dist/cjs/utils/median.js.map +1 -0
  88. package/dist/cjs/utils/parseError.js +55 -92
  89. package/dist/cjs/utils/parseError.js.map +1 -0
  90. package/dist/cjs/utils/utils.js +10 -85
  91. package/dist/cjs/utils/utils.js.map +1 -0
  92. package/dist/cjs/version.js +2 -1
  93. package/dist/cjs/version.js.map +1 -0
  94. package/dist/esm/LiFi.js +375 -0
  95. package/dist/esm/LiFi.js.map +1 -0
  96. package/dist/esm/allowance/getAllowance.js +79 -0
  97. package/dist/esm/allowance/getAllowance.js.map +1 -0
  98. package/dist/esm/allowance/index.js +4 -0
  99. package/dist/esm/allowance/index.js.map +1 -0
  100. package/dist/esm/allowance/setAllowance.js +67 -0
  101. package/dist/esm/allowance/setAllowance.js.map +1 -0
  102. package/dist/esm/allowance/types.js +2 -0
  103. package/dist/esm/allowance/types.js.map +1 -0
  104. package/dist/esm/balance/getBalance.js +93 -0
  105. package/dist/esm/balance/getBalance.js.map +1 -0
  106. package/dist/{balance → esm/balance}/getTokenBalance.js +5 -4
  107. package/dist/esm/balance/getTokenBalance.js.map +1 -0
  108. package/dist/esm/balance/index.js +3 -0
  109. package/dist/esm/balance/index.js.map +1 -0
  110. package/dist/esm/connectors.js +42 -0
  111. package/dist/esm/connectors.js.map +1 -0
  112. package/dist/esm/constants.js +7 -0
  113. package/dist/esm/constants.js.map +1 -0
  114. package/dist/esm/execution/BaseStepExecutor.js +51 -0
  115. package/dist/esm/execution/BaseStepExecutor.js.map +1 -0
  116. package/dist/esm/execution/EVMStepExecutor.js +299 -0
  117. package/dist/esm/execution/EVMStepExecutor.js.map +1 -0
  118. package/dist/esm/execution/RouteExecutionManager.js +268 -0
  119. package/dist/esm/execution/RouteExecutionManager.js.map +1 -0
  120. package/dist/esm/execution/StatusManager.js +216 -0
  121. package/dist/esm/execution/StatusManager.js.map +1 -0
  122. package/dist/esm/execution/StepExecutionManager.js +280 -0
  123. package/dist/esm/execution/StepExecutionManager.js.map +1 -0
  124. package/dist/esm/execution/checkAllowance.js +74 -0
  125. package/dist/esm/execution/checkAllowance.js.map +1 -0
  126. package/dist/esm/execution/checkBalance.js +39 -0
  127. package/dist/esm/execution/checkBalance.js.map +1 -0
  128. package/dist/esm/execution/index.js +3 -0
  129. package/dist/esm/execution/index.js.map +1 -0
  130. package/dist/esm/execution/multisig.js +26 -0
  131. package/dist/esm/execution/multisig.js.map +1 -0
  132. package/dist/esm/execution/prepareRestart.js +64 -0
  133. package/dist/esm/execution/prepareRestart.js.map +1 -0
  134. package/dist/{execution → esm/execution}/stepComparison.js +5 -4
  135. package/dist/esm/execution/stepComparison.js.map +1 -0
  136. package/dist/{execution → esm/execution}/switchChain.js +19 -12
  137. package/dist/esm/execution/switchChain.js.map +1 -0
  138. package/dist/esm/execution/types.js +2 -0
  139. package/dist/esm/execution/types.js.map +1 -0
  140. package/dist/esm/execution/utils.js +80 -0
  141. package/dist/esm/execution/utils.js.map +1 -0
  142. package/dist/esm/execution/waitForReceivingTransaction.js +52 -0
  143. package/dist/esm/execution/waitForReceivingTransaction.js.map +1 -0
  144. package/dist/{helpers.js → esm/helpers.js} +9 -37
  145. package/dist/esm/helpers.js.map +1 -0
  146. package/dist/esm/index.js +10 -0
  147. package/dist/esm/index.js.map +1 -0
  148. package/dist/esm/package.json +1 -0
  149. package/dist/esm/providers/EVM.js +30 -0
  150. package/dist/esm/providers/EVM.js.map +1 -0
  151. package/dist/esm/providers/Solana.js +34 -0
  152. package/dist/esm/providers/Solana.js.map +1 -0
  153. package/dist/esm/providers/index.js +2 -0
  154. package/dist/esm/providers/index.js.map +1 -0
  155. package/dist/esm/providers/types.js +6 -0
  156. package/dist/esm/providers/types.js.map +1 -0
  157. package/dist/{request.js → esm/request.js} +6 -5
  158. package/dist/esm/request.js.map +1 -0
  159. package/dist/{services → esm/services}/ApiService.js +29 -26
  160. package/dist/esm/services/ApiService.js.map +1 -0
  161. package/dist/{services → esm/services}/ChainsService.js +16 -4
  162. package/dist/esm/services/ChainsService.js.map +1 -0
  163. package/dist/esm/services/ConfigService.js +143 -0
  164. package/dist/esm/services/ConfigService.js.map +1 -0
  165. package/dist/{typeguards.js → esm/typeguards.js} +1 -0
  166. package/dist/esm/typeguards.js.map +1 -0
  167. package/dist/esm/types/abi.js +43 -0
  168. package/dist/esm/types/abi.js.map +1 -0
  169. package/dist/esm/types/index.js +3 -0
  170. package/dist/esm/types/index.js.map +1 -0
  171. package/dist/esm/types/internal.js +2 -0
  172. package/dist/esm/types/internal.js.map +1 -0
  173. package/dist/{utils → esm/utils}/errors.js +61 -35
  174. package/dist/esm/utils/errors.js.map +1 -0
  175. package/dist/esm/utils/getMaxPriorityFeePerGas.js +19 -0
  176. package/dist/esm/utils/getMaxPriorityFeePerGas.js.map +1 -0
  177. package/dist/esm/utils/index.js +6 -0
  178. package/dist/esm/utils/index.js.map +1 -0
  179. package/dist/esm/utils/median.js +12 -0
  180. package/dist/esm/utils/median.js.map +1 -0
  181. package/dist/{utils → esm/utils}/parseError.js +45 -41
  182. package/dist/esm/utils/parseError.js.map +1 -0
  183. package/dist/esm/utils/utils.js +38 -0
  184. package/dist/esm/utils/utils.js.map +1 -0
  185. package/dist/esm/version.js +3 -0
  186. package/dist/esm/version.js.map +1 -0
  187. package/dist/types/LiFi.d.ts +179 -0
  188. package/dist/types/LiFi.d.ts.map +1 -0
  189. package/dist/types/allowance/getAllowance.d.ts +7 -0
  190. package/dist/types/allowance/getAllowance.d.ts.map +1 -0
  191. package/dist/types/allowance/index.d.ts +4 -0
  192. package/dist/types/allowance/index.d.ts.map +1 -0
  193. package/dist/types/allowance/setAllowance.d.ts +7 -0
  194. package/dist/types/allowance/setAllowance.d.ts.map +1 -0
  195. package/dist/types/allowance/types.d.ts +28 -0
  196. package/dist/types/allowance/types.d.ts.map +1 -0
  197. package/dist/types/balance/getBalance.d.ts +3 -0
  198. package/dist/types/balance/getBalance.d.ts.map +1 -0
  199. package/dist/{balance → types/balance}/getTokenBalance.d.ts +3 -2
  200. package/dist/types/balance/getTokenBalance.d.ts.map +1 -0
  201. package/dist/types/balance/index.d.ts +3 -0
  202. package/dist/types/balance/index.d.ts.map +1 -0
  203. package/dist/types/connectors.d.ts +9 -0
  204. package/dist/types/connectors.d.ts.map +1 -0
  205. package/dist/types/constants.d.ts +7 -0
  206. package/dist/types/constants.d.ts.map +1 -0
  207. package/dist/types/execution/BaseStepExecutor.d.ts +13 -0
  208. package/dist/types/execution/BaseStepExecutor.d.ts.map +1 -0
  209. package/dist/types/execution/EVMStepExecutor.d.ts +14 -0
  210. package/dist/types/execution/EVMStepExecutor.d.ts.map +1 -0
  211. package/dist/types/execution/RouteExecutionManager.d.ts +61 -0
  212. package/dist/types/execution/RouteExecutionManager.d.ts.map +1 -0
  213. package/dist/types/execution/StatusManager.d.ts +69 -0
  214. package/dist/types/execution/StatusManager.d.ts.map +1 -0
  215. package/dist/types/execution/StepExecutionManager.d.ts +8 -0
  216. package/dist/types/execution/StepExecutionManager.d.ts.map +1 -0
  217. package/dist/types/execution/checkAllowance.d.ts +6 -0
  218. package/dist/types/execution/checkAllowance.d.ts.map +1 -0
  219. package/dist/types/execution/checkBalance.d.ts +3 -0
  220. package/dist/types/execution/checkBalance.d.ts.map +1 -0
  221. package/dist/types/execution/index.d.ts +3 -0
  222. package/dist/types/execution/index.d.ts.map +1 -0
  223. package/dist/types/execution/multisig.d.ts +5 -0
  224. package/dist/types/execution/multisig.d.ts.map +1 -0
  225. package/dist/types/execution/prepareRestart.d.ts +3 -0
  226. package/dist/types/execution/prepareRestart.d.ts.map +1 -0
  227. package/dist/{execution → types/execution}/stepComparison.d.ts +6 -4
  228. package/dist/types/execution/stepComparison.d.ts.map +1 -0
  229. package/dist/types/execution/switchChain.d.ts +23 -0
  230. package/dist/types/execution/switchChain.d.ts.map +1 -0
  231. package/dist/types/execution/types.d.ts +83 -0
  232. package/dist/types/execution/types.d.ts.map +1 -0
  233. package/dist/types/execution/utils.d.ts +13 -0
  234. package/dist/types/execution/utils.d.ts.map +1 -0
  235. package/dist/types/execution/waitForReceivingTransaction.d.ts +4 -0
  236. package/dist/types/execution/waitForReceivingTransaction.d.ts.map +1 -0
  237. package/dist/types/helpers.d.ts +19 -0
  238. package/dist/types/helpers.d.ts.map +1 -0
  239. package/dist/types/index.d.ts +9 -3
  240. package/dist/types/index.d.ts.map +1 -0
  241. package/dist/types/providers/EVM.d.ts +11 -0
  242. package/dist/types/providers/EVM.d.ts.map +1 -0
  243. package/dist/types/providers/Solana.d.ts +10 -0
  244. package/dist/types/providers/Solana.d.ts.map +1 -0
  245. package/dist/types/providers/index.d.ts +2 -0
  246. package/dist/types/providers/index.d.ts.map +1 -0
  247. package/dist/types/providers/types.d.ts +13 -0
  248. package/dist/types/providers/types.d.ts.map +1 -0
  249. package/dist/{request.d.ts → types/request.d.ts} +1 -0
  250. package/dist/types/request.d.ts.map +1 -0
  251. package/dist/{cjs → types}/services/ApiService.d.ts +5 -5
  252. package/dist/types/services/ApiService.d.ts.map +1 -0
  253. package/dist/{services → types/services}/ChainsService.d.ts +3 -2
  254. package/dist/types/services/ChainsService.d.ts.map +1 -0
  255. package/dist/{services → types/services}/ConfigService.d.ts +10 -6
  256. package/dist/types/services/ConfigService.d.ts.map +1 -0
  257. package/dist/{cjs → types}/typeguards.d.ts +3 -2
  258. package/dist/types/typeguards.d.ts.map +1 -0
  259. package/dist/types/types/abi.d.ts +6 -0
  260. package/dist/types/types/abi.d.ts.map +1 -0
  261. package/dist/types/types/index.d.ts +3 -0
  262. package/dist/types/types/index.d.ts.map +1 -0
  263. package/dist/types/types/internal.d.ts +61 -0
  264. package/dist/types/types/internal.d.ts.map +1 -0
  265. package/dist/{cjs → types}/utils/errors.d.ts +16 -14
  266. package/dist/types/utils/errors.d.ts.map +1 -0
  267. package/dist/types/utils/getMaxPriorityFeePerGas.d.ts +3 -0
  268. package/dist/types/utils/getMaxPriorityFeePerGas.d.ts.map +1 -0
  269. package/dist/types/utils/index.d.ts +6 -0
  270. package/dist/types/utils/index.d.ts.map +1 -0
  271. package/dist/types/utils/median.d.ts +2 -0
  272. package/dist/types/utils/median.d.ts.map +1 -0
  273. package/dist/{utils → types/utils}/parseError.d.ts +7 -6
  274. package/dist/types/utils/parseError.d.ts.map +1 -0
  275. package/dist/types/utils/utils.d.ts +11 -0
  276. package/dist/types/utils/utils.d.ts.map +1 -0
  277. package/dist/types/version.d.ts +3 -0
  278. package/dist/types/version.d.ts.map +1 -0
  279. package/package.json +37 -95
  280. package/dist/LiFi.d.ts +0 -164
  281. package/dist/LiFi.js +0 -235
  282. package/dist/allowance/checkAllowance.d.ts +0 -4
  283. package/dist/allowance/checkAllowance.js +0 -96
  284. package/dist/allowance/index.d.ts +0 -2
  285. package/dist/allowance/index.js +0 -2
  286. package/dist/allowance/tokenApproval.d.ts +0 -22
  287. package/dist/allowance/tokenApproval.js +0 -59
  288. package/dist/allowance/utils.d.ts +0 -14
  289. package/dist/allowance/utils.js +0 -72
  290. package/dist/balance/checkBalance.d.ts +0 -3
  291. package/dist/balance/checkBalance.js +0 -38
  292. package/dist/balance/index.d.ts +0 -13
  293. package/dist/balance/index.js +0 -10
  294. package/dist/balance/utils.d.ts +0 -6
  295. package/dist/balance/utils.js +0 -143
  296. package/dist/cjs/LiFi.d.ts +0 -164
  297. package/dist/cjs/allowance/checkAllowance.d.ts +0 -4
  298. package/dist/cjs/allowance/checkAllowance.js +0 -103
  299. package/dist/cjs/allowance/index.d.ts +0 -2
  300. package/dist/cjs/allowance/tokenApproval.d.ts +0 -22
  301. package/dist/cjs/allowance/tokenApproval.js +0 -69
  302. package/dist/cjs/allowance/utils.d.ts +0 -14
  303. package/dist/cjs/allowance/utils.js +0 -82
  304. package/dist/cjs/balance/checkBalance.d.ts +0 -3
  305. package/dist/cjs/balance/checkBalance.js +0 -45
  306. package/dist/cjs/balance/getTokenBalance.d.ts +0 -8
  307. package/dist/cjs/balance/index.d.ts +0 -13
  308. package/dist/cjs/balance/utils.d.ts +0 -6
  309. package/dist/cjs/balance/utils.js +0 -150
  310. package/dist/cjs/connectors.d.ts +0 -6
  311. package/dist/cjs/execution/RouteExecutionManager.d.ts +0 -65
  312. package/dist/cjs/execution/StatusManager.d.ts +0 -68
  313. package/dist/cjs/execution/StepExecutionManager.d.ts +0 -7
  314. package/dist/cjs/execution/StepExecutor.d.ts +0 -15
  315. package/dist/cjs/execution/StepExecutor.js +0 -62
  316. package/dist/cjs/execution/index.d.ts +0 -1
  317. package/dist/cjs/execution/multisig.d.ts +0 -3
  318. package/dist/cjs/execution/stepComparison.d.ts +0 -14
  319. package/dist/cjs/execution/switchChain.d.ts +0 -16
  320. package/dist/cjs/execution/utils.d.ts +0 -6
  321. package/dist/cjs/helpers.d.ts +0 -28
  322. package/dist/cjs/index.d.ts +0 -5
  323. package/dist/cjs/request.d.ts +0 -9
  324. package/dist/cjs/services/ChainsService.d.ts +0 -11
  325. package/dist/cjs/services/ConfigService.d.ts +0 -23
  326. package/dist/cjs/types/ERC20.d.ts +0 -22
  327. package/dist/cjs/types/ERC20.js +0 -53
  328. package/dist/cjs/types/index.d.ts +0 -4
  329. package/dist/cjs/types/internal.types.d.ts +0 -151
  330. package/dist/cjs/utils/getProvider.d.ts +0 -3
  331. package/dist/cjs/utils/getProvider.js +0 -11
  332. package/dist/cjs/utils/multicall.d.ts +0 -10
  333. package/dist/cjs/utils/multicall.js +0 -68
  334. package/dist/cjs/utils/multicallAbi.json +0 -313
  335. package/dist/cjs/utils/parseError.d.ts +0 -37
  336. package/dist/cjs/utils/preRestart.d.ts +0 -3
  337. package/dist/cjs/utils/preRestart.js +0 -56
  338. package/dist/cjs/utils/utils.d.ts +0 -25
  339. package/dist/cjs/version.d.ts +0 -2
  340. package/dist/connectors.d.ts +0 -6
  341. package/dist/connectors.js +0 -57
  342. package/dist/execution/RouteExecutionManager.d.ts +0 -65
  343. package/dist/execution/RouteExecutionManager.js +0 -213
  344. package/dist/execution/StatusManager.d.ts +0 -68
  345. package/dist/execution/StatusManager.js +0 -168
  346. package/dist/execution/StepExecutionManager.d.ts +0 -7
  347. package/dist/execution/StepExecutionManager.js +0 -267
  348. package/dist/execution/StepExecutor.d.ts +0 -15
  349. package/dist/execution/StepExecutor.js +0 -58
  350. package/dist/execution/index.d.ts +0 -1
  351. package/dist/execution/index.js +0 -1
  352. package/dist/execution/multisig.d.ts +0 -3
  353. package/dist/execution/multisig.js +0 -27
  354. package/dist/execution/switchChain.d.ts +0 -16
  355. package/dist/execution/utils.d.ts +0 -6
  356. package/dist/execution/utils.js +0 -122
  357. package/dist/helpers.d.ts +0 -28
  358. package/dist/index.d.ts +0 -5
  359. package/dist/index.js +0 -6
  360. package/dist/services/ApiService.d.ts +0 -17
  361. package/dist/services/ConfigService.js +0 -101
  362. package/dist/typeguards.d.ts +0 -4
  363. package/dist/types/ERC20.d.ts +0 -22
  364. package/dist/types/ERC20.js +0 -50
  365. package/dist/types/index.js +0 -4
  366. package/dist/types/internal.types.d.ts +0 -151
  367. package/dist/types/internal.types.js +0 -1
  368. package/dist/utils/errors.d.ts +0 -106
  369. package/dist/utils/getProvider.d.ts +0 -3
  370. package/dist/utils/getProvider.js +0 -7
  371. package/dist/utils/multicall.d.ts +0 -10
  372. package/dist/utils/multicall.js +0 -61
  373. package/dist/utils/multicallAbi.json +0 -313
  374. package/dist/utils/preRestart.d.ts +0 -3
  375. package/dist/utils/preRestart.js +0 -52
  376. package/dist/utils/utils.d.ts +0 -25
  377. package/dist/utils/utils.js +0 -99
  378. package/dist/version.d.ts +0 -2
  379. package/dist/version.js +0 -2
@@ -0,0 +1,143 @@
1
+ import { ChainId } from '@lifi/types';
2
+ const DefaultExecutionSettings = {
3
+ updateRouteHook: () => { },
4
+ switchChainHook: () => Promise.resolve(undefined),
5
+ acceptExchangeRateUpdateHook: () => Promise.resolve(undefined),
6
+ infiniteApproval: false,
7
+ executeInBackground: false,
8
+ };
9
+ export class ConfigService {
10
+ constructor() {
11
+ Object.defineProperty(this, "config", {
12
+ enumerable: true,
13
+ configurable: true,
14
+ writable: true,
15
+ value: void 0
16
+ });
17
+ Object.defineProperty(this, "setupPromise", {
18
+ enumerable: true,
19
+ configurable: true,
20
+ writable: true,
21
+ value: void 0
22
+ });
23
+ Object.defineProperty(this, "resolveSetupPromise", {
24
+ enumerable: true,
25
+ configurable: true,
26
+ writable: true,
27
+ value: undefined
28
+ });
29
+ /**
30
+ * This call immediately returns the current config. It does not make sure that all chain data is already loaded
31
+ * Use this if you need access to basic information like API urls or settings
32
+ * @returns SDKConfig
33
+ */
34
+ Object.defineProperty(this, "getConfig", {
35
+ enumerable: true,
36
+ configurable: true,
37
+ writable: true,
38
+ value: () => {
39
+ return this.config;
40
+ }
41
+ });
42
+ /**
43
+ * This call waits for all setup promises to be done.
44
+ * Use this if you need access to chain data (RPCs or multicalls)
45
+ * @returns SDKConfig
46
+ */
47
+ Object.defineProperty(this, "getConfigAsync", {
48
+ enumerable: true,
49
+ configurable: true,
50
+ writable: true,
51
+ value: async () => {
52
+ await this.setupPromise;
53
+ return this.config;
54
+ }
55
+ });
56
+ Object.defineProperty(this, "updateConfig", {
57
+ enumerable: true,
58
+ configurable: true,
59
+ writable: true,
60
+ value: (configUpdate) => {
61
+ // API
62
+ this.config.apiUrl = configUpdate.apiUrl || this.config.apiUrl;
63
+ // RPCS
64
+ this.config.rpcs = Object.assign(this.config.rpcs, configUpdate.rpcs);
65
+ // MULTICALL
66
+ this.config.multicallAddresses = Object.assign(this.config.multicallAddresses, configUpdate.multicallAddresses);
67
+ // SETTINGS
68
+ this.config.defaultExecutionSettings = Object.assign(this.config.defaultExecutionSettings, configUpdate.defaultExecutionSettings);
69
+ // OPTIONS
70
+ this.config.defaultRouteOptions = Object.assign(this.config.defaultRouteOptions, configUpdate.defaultRouteOptions);
71
+ this.config.apiKey = configUpdate.apiKey || this.config.apiKey;
72
+ this.config.userId = configUpdate.userId || this.config.userId;
73
+ this.config.integrator = configUpdate.integrator || this.config.integrator;
74
+ this.config.defaultRouteOptions.integrator =
75
+ configUpdate.integrator ||
76
+ configUpdate.defaultRouteOptions?.integrator ||
77
+ this.config.integrator;
78
+ this.config.widgetVersion =
79
+ configUpdate.widgetVersion || this.config.widgetVersion;
80
+ this.config.multisig = configUpdate.multisig || this.config.multisig;
81
+ return this.config;
82
+ }
83
+ });
84
+ Object.defineProperty(this, "updateChains", {
85
+ enumerable: true,
86
+ configurable: true,
87
+ writable: true,
88
+ value: (chains) => {
89
+ for (const chain of chains) {
90
+ const chainId = chain.id;
91
+ // set RPCs if they were not configured by the user before
92
+ if (!this.config.rpcs[chainId]?.length) {
93
+ this.config.rpcs[chainId] = chain.metamask.rpcUrls;
94
+ }
95
+ // set multicall addresses if they exist and were not configured by the user before
96
+ if (chain.multicallAddress && !this.config.multicallAddresses[chainId]) {
97
+ this.config.multicallAddresses[chainId] = chain.multicallAddress;
98
+ }
99
+ }
100
+ this.resolveSetupPromise?.();
101
+ return this.config;
102
+ }
103
+ });
104
+ this.config = ConfigService.getDefaultConfig();
105
+ this.setupPromise = new Promise((resolve) => {
106
+ this.resolveSetupPromise = resolve;
107
+ });
108
+ }
109
+ static chainIdToObject(val) {
110
+ const result = {};
111
+ const values = Object.values(ChainId);
112
+ values.forEach((chainId) => {
113
+ if (typeof chainId !== 'string') {
114
+ result[chainId] = val ? JSON.parse(JSON.stringify(val)) : val;
115
+ }
116
+ });
117
+ return result;
118
+ }
119
+ static getInstance() {
120
+ if (!this.instance) {
121
+ this.instance = new ConfigService();
122
+ }
123
+ return this.instance;
124
+ }
125
+ }
126
+ Object.defineProperty(ConfigService, "getDefaultConfig", {
127
+ enumerable: true,
128
+ configurable: true,
129
+ writable: true,
130
+ value: () => {
131
+ return {
132
+ apiUrl: 'https://li.quest/v1',
133
+ rpcs: ConfigService.chainIdToObject([]),
134
+ multicallAddresses: ConfigService.chainIdToObject(undefined),
135
+ defaultExecutionSettings: DefaultExecutionSettings,
136
+ defaultRouteOptions: {
137
+ integrator: 'lifi-sdk',
138
+ },
139
+ integrator: 'lifi-sdk',
140
+ };
141
+ }
142
+ });
143
+ //# sourceMappingURL=ConfigService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigService.js","sourceRoot":"","sources":["../../../src/services/ConfigService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAIrC,MAAM,wBAAwB,GAA8B;IAC1D,eAAe,EAAE,GAAG,EAAE,GAAE,CAAC;IACzB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;IACjD,4BAA4B,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;IAC9D,gBAAgB,EAAE,KAAK;IACvB,mBAAmB,EAAE,KAAK;CAC3B,CAAA;AAID,MAAM,OAAO,aAAa;IAMxB;QAJiB;;;;;WAAiB;QACjB;;;;;WAA8B;QACvC;;;;mBAAmD,SAAS;WAAA;QA4CpE;;;;WAIG;QACI;;;;mBAAY,GAAc,EAAE;gBACjC,OAAO,IAAI,CAAC,MAAM,CAAA;YACpB,CAAC;WAAA;QAED;;;;WAIG;QACI;;;;mBAAiB,KAAK,IAAwB,EAAE;gBACrD,MAAM,IAAI,CAAC,YAAY,CAAA;gBACvB,OAAO,IAAI,CAAC,MAAM,CAAA;YACpB,CAAC;WAAA;QAEM;;;;mBAAe,CAAC,YAAiC,EAAa,EAAE;gBACrE,MAAM;gBACN,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAA;gBAE9D,OAAO;gBACP,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAA;gBAErE,YAAY;gBACZ,IAAI,CAAC,MAAM,CAAC,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAC5C,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAC9B,YAAY,CAAC,kBAAkB,CAChC,CAAA;gBAED,WAAW;gBACX,IAAI,CAAC,MAAM,CAAC,wBAAwB,GAAG,MAAM,CAAC,MAAM,CAClD,IAAI,CAAC,MAAM,CAAC,wBAAwB,EACpC,YAAY,CAAC,wBAAwB,CACtC,CAAA;gBAED,UAAU;gBACV,IAAI,CAAC,MAAM,CAAC,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAC7C,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAC/B,YAAY,CAAC,mBAAmB,CACjC,CAAA;gBAED,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAA;gBAC9D,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAA;gBAC9D,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,YAAY,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAA;gBAC1E,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU;oBACxC,YAAY,CAAC,UAAU;wBACvB,YAAY,CAAC,mBAAmB,EAAE,UAAU;wBAC5C,IAAI,CAAC,MAAM,CAAC,UAAU,CAAA;gBACxB,IAAI,CAAC,MAAM,CAAC,aAAa;oBACvB,YAAY,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAA;gBACzD,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,YAAY,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAA;gBAEpE,OAAO,IAAI,CAAC,MAAM,CAAA;YACpB,CAAC;WAAA;QAEM;;;;mBAAe,CAAC,MAAe,EAAa,EAAE;gBACnD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;oBAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,EAAa,CAAA;oBAEnC,0DAA0D;oBAC1D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE;wBACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAA;qBACnD;oBAED,mFAAmF;oBACnF,IAAI,KAAK,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE;wBACtE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAA;qBACjE;iBACF;gBAED,IAAI,CAAC,mBAAmB,EAAE,EAAE,CAAA;gBAE5B,OAAO,IAAI,CAAC,MAAM,CAAA;YACpB,CAAC;WAAA;QArHC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,gBAAgB,EAAE,CAAA;QAE9C,IAAI,CAAC,YAAY,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC1C,IAAI,CAAC,mBAAmB,GAAG,OAA0B,CAAA;QACvD,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,MAAM,CAAC,eAAe,CAAI,GAAM;QACtC,MAAM,MAAM,GAAsB,EAAE,CAAA;QAEpC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACrC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACzB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;gBAC/B,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;aAC9D;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,MAAM,CAAA;IACf,CAAC;IAeM,MAAM,CAAC,WAAW;QACvB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAA;SACpC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;;AAnBc;;;;WAAmB,GAAc,EAAE;QAChD,OAAO;YACL,MAAM,EAAE,qBAAqB;YAC7B,IAAI,EAAE,aAAa,CAAC,eAAe,CAAC,EAAE,CAAC;YACvC,kBAAkB,EAAE,aAAa,CAAC,eAAe,CAAC,SAAS,CAAC;YAC5D,wBAAwB,EAAE,wBAAwB;YAClD,mBAAmB,EAAE;gBACnB,UAAU,EAAE,UAAU;aACvB;YACD,UAAU,EAAE,UAAU;SACvB,CAAA;IACH,CAAC;EAX8B,CAW9B"}
@@ -45,3 +45,4 @@ export const isToken = (token) => {
45
45
  typeof decimals === 'number' &&
46
46
  typeof chainId === 'number');
47
47
  };
48
+ //# sourceMappingURL=typeguards.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typeguards.js","sourceRoot":"","sources":["../../src/typeguards.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,aAA4B,EACI,EAAE;IAClC,MAAM,EACJ,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,OAAO,GACR,GAAG,aAAa,CAAA;IAEjB,OAAO,CACL,OAAO,WAAW,KAAK,QAAQ;QAC/B,OAAO,UAAU,KAAK,QAAQ;QAC9B,UAAU,KAAK,EAAE;QACjB,OAAO,gBAAgB,KAAK,QAAQ;QACpC,gBAAgB,KAAK,EAAE;QACvB,OAAO,SAAS,KAAK,QAAQ;QAC7B,OAAO,cAAc,KAAK,QAAQ;QAClC,cAAc,KAAK,EAAE;QACrB,CAAC,CAAC,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC,CACvC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CACtB,YAA0B,EACI,EAAE,CAChC,CAAC,YAAY,EAAE,QAAQ,IAAI,OAAO,YAAY,CAAC,QAAQ,KAAK,QAAQ,CAAA;AAEtE,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAc,EAAoB,EAAE;IACzD,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;IAEjD,OAAO,CACL,OAAO,EAAE,KAAK,QAAQ;QACtB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QACxC,OAAO,IAAI,KAAK,QAAQ;QACxB,QAAQ,CAAC,MAAM,CAAC;QAChB,UAAU,CAAC,QAAQ,CAAC,CACrB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAoB,EAAE;IACpD,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,GACxE,MAAM,CAAA;IAER,OAAO,CACL,OAAO,WAAW,KAAK,QAAQ;QAC/B,OAAO,UAAU,KAAK,QAAQ;QAC9B,UAAU,KAAK,EAAE;QACjB,OAAO,CAAC,SAAS,CAAC;QAClB,OAAO,SAAS,KAAK,QAAQ;QAC7B,OAAO,CAAC,OAAO,CAAC;QAChB,OAAO,QAAQ,KAAK,QAAQ,CAC7B,CAAA;AACH,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,CAAC,QAAkB,EAAwB,EAAE;IAC9D,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,QAAQ,CAAA;IAEvE,OAAO,CACL,OAAO,UAAU,KAAK,QAAQ;QAC9B,UAAU,KAAK,EAAE;QACjB,OAAO,QAAQ,KAAK,QAAQ;QAC5B,QAAQ,KAAK,EAAE;QACf,OAAO,WAAW,KAAK,QAAQ;QAC/B,WAAW,KAAK,EAAE;QAClB,OAAO,eAAe,KAAK,QAAQ,CACpC,CAAA;AACH,CAAC,CAAA;AAED,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"}
@@ -0,0 +1,43 @@
1
+ export const approveAbi = [
2
+ {
3
+ name: 'approve',
4
+ inputs: [
5
+ { internalType: 'address', name: 'spender', type: 'address' },
6
+ { internalType: 'uint256', name: 'amount', type: 'uint256' },
7
+ ],
8
+ outputs: [{ internalType: 'bool', name: 'approved', type: 'bool' }],
9
+ stateMutability: 'nonpayable',
10
+ type: 'function',
11
+ },
12
+ ];
13
+ export const allowanceAbi = [
14
+ {
15
+ name: 'allowance',
16
+ inputs: [
17
+ { internalType: 'address', name: 'owner', type: 'address' },
18
+ { internalType: 'address', name: 'spender', type: 'address' },
19
+ ],
20
+ outputs: [{ internalType: 'uint256', name: 'allowance', type: 'uint256' }],
21
+ stateMutability: 'view',
22
+ type: 'function',
23
+ },
24
+ ];
25
+ export const getEthBalanceAbi = [
26
+ {
27
+ inputs: [{ name: '_owner', type: 'address' }],
28
+ name: 'getEthBalance',
29
+ outputs: [{ name: 'balance', type: 'uint256' }],
30
+ type: 'function',
31
+ stateMutability: 'view',
32
+ },
33
+ ];
34
+ export const balanceOfAbi = [
35
+ {
36
+ inputs: [{ name: '_owner', type: 'address' }],
37
+ name: 'balanceOf',
38
+ outputs: [{ name: 'balance', type: 'uint256' }],
39
+ type: 'function',
40
+ stateMutability: 'view',
41
+ },
42
+ ];
43
+ //# sourceMappingURL=abi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abi.js","sourceRoot":"","sources":["../../../src/types/abi.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,UAAU,GAAQ;IAC7B;QACE,IAAI,EAAE,SAAS;QACf,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YAC7D,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SAC7D;QACD,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACnE,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;CACF,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAQ;IAC/B;QACE,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAC3D,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;SAC9D;QACD,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC1E,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACF,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAQ;IACnC;QACE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC7C,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;KACxB;CACF,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAQ;IAC/B;QACE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC7C,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;KACxB;CACF,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './abi.js';
2
+ export * from './internal.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=internal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/types/internal.ts"],"names":[],"mappings":""}
@@ -9,25 +9,26 @@ var ErrorType;
9
9
  ErrorType["UnknownError"] = "UnknownError";
10
10
  ErrorType["SlippageError"] = "SlippageError";
11
11
  })(ErrorType || (ErrorType = {}));
12
- export var LifiErrorCode;
13
- (function (LifiErrorCode) {
14
- LifiErrorCode[LifiErrorCode["InternalError"] = 1000] = "InternalError";
15
- LifiErrorCode[LifiErrorCode["ValidationError"] = 1001] = "ValidationError";
16
- LifiErrorCode[LifiErrorCode["TransactionUnderpriced"] = 1002] = "TransactionUnderpriced";
17
- LifiErrorCode[LifiErrorCode["TransactionFailed"] = 1003] = "TransactionFailed";
18
- LifiErrorCode[LifiErrorCode["Timeout"] = 1004] = "Timeout";
19
- LifiErrorCode[LifiErrorCode["ProviderUnavailable"] = 1005] = "ProviderUnavailable";
20
- LifiErrorCode[LifiErrorCode["NotFound"] = 1006] = "NotFound";
21
- LifiErrorCode[LifiErrorCode["ChainSwitchError"] = 1007] = "ChainSwitchError";
22
- LifiErrorCode[LifiErrorCode["TransactionUnprepared"] = 1008] = "TransactionUnprepared";
23
- LifiErrorCode[LifiErrorCode["GasLimitError"] = 1009] = "GasLimitError";
24
- LifiErrorCode[LifiErrorCode["TransactionCanceled"] = 1010] = "TransactionCanceled";
25
- LifiErrorCode[LifiErrorCode["SlippageError"] = 1011] = "SlippageError";
26
- LifiErrorCode[LifiErrorCode["TransactionRejected"] = 1012] = "TransactionRejected";
27
- LifiErrorCode[LifiErrorCode["BalanceError"] = 1013] = "BalanceError";
28
- LifiErrorCode[LifiErrorCode["AllowanceRequired"] = 1014] = "AllowanceRequired";
29
- LifiErrorCode[LifiErrorCode["InsufficientFunds"] = 1015] = "InsufficientFunds";
30
- })(LifiErrorCode || (LifiErrorCode = {}));
12
+ export var LiFiErrorCode;
13
+ (function (LiFiErrorCode) {
14
+ LiFiErrorCode[LiFiErrorCode["InternalError"] = 1000] = "InternalError";
15
+ LiFiErrorCode[LiFiErrorCode["ValidationError"] = 1001] = "ValidationError";
16
+ LiFiErrorCode[LiFiErrorCode["TransactionUnderpriced"] = 1002] = "TransactionUnderpriced";
17
+ LiFiErrorCode[LiFiErrorCode["TransactionFailed"] = 1003] = "TransactionFailed";
18
+ LiFiErrorCode[LiFiErrorCode["Timeout"] = 1004] = "Timeout";
19
+ LiFiErrorCode[LiFiErrorCode["ProviderUnavailable"] = 1005] = "ProviderUnavailable";
20
+ LiFiErrorCode[LiFiErrorCode["NotFound"] = 1006] = "NotFound";
21
+ LiFiErrorCode[LiFiErrorCode["ChainSwitchError"] = 1007] = "ChainSwitchError";
22
+ LiFiErrorCode[LiFiErrorCode["TransactionUnprepared"] = 1008] = "TransactionUnprepared";
23
+ LiFiErrorCode[LiFiErrorCode["GasLimitError"] = 1009] = "GasLimitError";
24
+ LiFiErrorCode[LiFiErrorCode["TransactionCanceled"] = 1010] = "TransactionCanceled";
25
+ LiFiErrorCode[LiFiErrorCode["SlippageError"] = 1011] = "SlippageError";
26
+ LiFiErrorCode[LiFiErrorCode["SignatureRejected"] = 1012] = "SignatureRejected";
27
+ LiFiErrorCode[LiFiErrorCode["BalanceError"] = 1013] = "BalanceError";
28
+ LiFiErrorCode[LiFiErrorCode["AllowanceRequired"] = 1014] = "AllowanceRequired";
29
+ LiFiErrorCode[LiFiErrorCode["InsufficientFunds"] = 1015] = "InsufficientFunds";
30
+ LiFiErrorCode[LiFiErrorCode["ExchangeRateUpdateCanceled"] = 1016] = "ExchangeRateUpdateCanceled";
31
+ })(LiFiErrorCode || (LiFiErrorCode = {}));
31
32
  export var EthersErrorType;
32
33
  (function (EthersErrorType) {
33
34
  EthersErrorType["ActionRejected"] = "ACTION_REJECTED";
@@ -72,11 +73,23 @@ export var MetaMaskProviderErrorCode;
72
73
  MetaMaskProviderErrorCode[MetaMaskProviderErrorCode["disconnected"] = 4900] = "disconnected";
73
74
  MetaMaskProviderErrorCode[MetaMaskProviderErrorCode["chainDisconnected"] = 4901] = "chainDisconnected";
74
75
  })(MetaMaskProviderErrorCode || (MetaMaskProviderErrorCode = {}));
75
- export class LifiError extends Error {
76
+ export class LiFiError extends Error {
76
77
  constructor(type, code, message, htmlMessage, stack) {
77
78
  super(message);
79
+ Object.defineProperty(this, "code", {
80
+ enumerable: true,
81
+ configurable: true,
82
+ writable: true,
83
+ value: void 0
84
+ });
85
+ Object.defineProperty(this, "htmlMessage", {
86
+ enumerable: true,
87
+ configurable: true,
88
+ writable: true,
89
+ value: void 0
90
+ });
78
91
  // Set the prototype explicitly: https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work
79
- Object.setPrototypeOf(this, LifiError.prototype);
92
+ Object.setPrototypeOf(this, LiFiError.prototype);
80
93
  this.code = code;
81
94
  // the name property is used by toString(). It is a string and we can't use our custom ErrorTypes, that's why we have to cast
82
95
  this.name = type.toString();
@@ -87,47 +100,47 @@ export class LifiError extends Error {
87
100
  }
88
101
  }
89
102
  }
90
- export class RPCError extends LifiError {
103
+ export class RPCError extends LiFiError {
91
104
  constructor(code, message, htmlMessage, stack) {
92
105
  super(ErrorType.RPCError, code, message, htmlMessage, stack);
93
106
  }
94
107
  }
95
- export class ProviderError extends LifiError {
108
+ export class ProviderError extends LiFiError {
96
109
  constructor(code, message, htmlMessage, stack) {
97
110
  super(ErrorType.ProviderError, code, message, htmlMessage, stack);
98
111
  }
99
112
  }
100
- export class ServerError extends LifiError {
113
+ export class ServerError extends LiFiError {
101
114
  constructor(message, htmlMessage, stack) {
102
- super(ErrorType.ServerError, LifiErrorCode.InternalError, message, htmlMessage, stack);
115
+ super(ErrorType.ServerError, LiFiErrorCode.InternalError, message, htmlMessage, stack);
103
116
  }
104
117
  }
105
- export class ValidationError extends LifiError {
118
+ export class ValidationError extends LiFiError {
106
119
  constructor(message, htmlMessage, stack) {
107
- super(ErrorType.ValidationError, LifiErrorCode.ValidationError, message, htmlMessage, stack);
120
+ super(ErrorType.ValidationError, LiFiErrorCode.ValidationError, message, htmlMessage, stack);
108
121
  }
109
122
  }
110
- export class TransactionError extends LifiError {
123
+ export class TransactionError extends LiFiError {
111
124
  constructor(code, message, htmlMessage, stack) {
112
125
  super(ErrorType.TransactionError, code, message, htmlMessage, stack);
113
126
  }
114
127
  }
115
- export class SlippageError extends LifiError {
128
+ export class SlippageError extends LiFiError {
116
129
  constructor(message, htmlMessage, stack) {
117
- super(ErrorType.SlippageError, LifiErrorCode.SlippageError, message, htmlMessage, stack);
130
+ super(ErrorType.SlippageError, LiFiErrorCode.SlippageError, message, htmlMessage, stack);
118
131
  }
119
132
  }
120
- export class BalanceError extends LifiError {
133
+ export class BalanceError extends LiFiError {
121
134
  constructor(message, htmlMessage, stack) {
122
- super(ErrorType.ValidationError, LifiErrorCode.BalanceError, message, htmlMessage, stack);
135
+ super(ErrorType.ValidationError, LiFiErrorCode.BalanceError, message, htmlMessage, stack);
123
136
  }
124
137
  }
125
- export class NotFoundError extends LifiError {
138
+ export class NotFoundError extends LiFiError {
126
139
  constructor(message, htmlMessage, stack) {
127
- super(ErrorType.NotFoundError, LifiErrorCode.NotFound, message, htmlMessage, stack);
140
+ super(ErrorType.NotFoundError, LiFiErrorCode.NotFound, message, htmlMessage, stack);
128
141
  }
129
142
  }
130
- export class UnknownError extends LifiError {
143
+ export class UnknownError extends LiFiError {
131
144
  constructor(code, message, htmlMessage, stack) {
132
145
  super(ErrorType.UnknownError, code, message, htmlMessage, stack);
133
146
  }
@@ -139,8 +152,21 @@ export class HTTPError extends Error {
139
152
  const status = `${code} ${title}`.trim();
140
153
  const reason = status ? `status code ${status}` : 'an unknown error';
141
154
  super(`Request failed with ${reason}`);
155
+ Object.defineProperty(this, "response", {
156
+ enumerable: true,
157
+ configurable: true,
158
+ writable: true,
159
+ value: void 0
160
+ });
161
+ Object.defineProperty(this, "status", {
162
+ enumerable: true,
163
+ configurable: true,
164
+ writable: true,
165
+ value: void 0
166
+ });
142
167
  this.name = 'HTTPError';
143
168
  this.response = response;
144
169
  this.status = response.status;
145
170
  }
146
171
  }
172
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/utils/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { median } from './median.js';
2
+ export const getMaxPriorityFeePerGas = async (client) => {
3
+ const block = await client.getBlock({
4
+ includeTransactions: true,
5
+ });
6
+ const maxPriorityFeePerGasList = block.transactions
7
+ .filter((tx) => tx.maxPriorityFeePerGas)
8
+ .map((tx) => tx.maxPriorityFeePerGas);
9
+ if (!maxPriorityFeePerGasList.length) {
10
+ return;
11
+ }
12
+ const maxPriorityFeePerGasSum = maxPriorityFeePerGasList.reduce((acc, value) => (acc += value), 0n);
13
+ const maxPriorityFeePerGasMedian = median(maxPriorityFeePerGasList) ?? 0n;
14
+ const maxPriorityFeePerGasAvg = maxPriorityFeePerGasSum / BigInt(maxPriorityFeePerGasList.length);
15
+ return maxPriorityFeePerGasMedian > maxPriorityFeePerGasAvg
16
+ ? maxPriorityFeePerGasAvg
17
+ : maxPriorityFeePerGasMedian;
18
+ };
19
+ //# sourceMappingURL=getMaxPriorityFeePerGas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMaxPriorityFeePerGas.js","sourceRoot":"","sources":["../../../src/utils/getMaxPriorityFeePerGas.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAC1C,MAAoB,EACS,EAAE;IAC/B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;QAClC,mBAAmB,EAAE,IAAI;KAC1B,CAAC,CAAA;IAEF,MAAM,wBAAwB,GAAI,KAAK,CAAC,YAA8B;SACnE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAC;SACvC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAa,CAAA;IAEnD,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE;QACpC,OAAM;KACP;IAED,MAAM,uBAAuB,GAAG,wBAAwB,CAAC,MAAM,CAC7D,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,EAC9B,EAAE,CACH,CAAA;IAED,MAAM,0BAA0B,GAAG,MAAM,CAAC,wBAAwB,CAAC,IAAI,EAAE,CAAA;IAEzE,MAAM,uBAAuB,GAC3B,uBAAuB,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAA;IAEnE,OAAO,0BAA0B,GAAG,uBAAuB;QACzD,CAAC,CAAC,uBAAuB;QACzB,CAAC,CAAC,0BAA0B,CAAA;AAChC,CAAC,CAAA"}
@@ -0,0 +1,6 @@
1
+ export * from './errors.js';
2
+ export * from './getMaxPriorityFeePerGas.js';
3
+ export * from './median.js';
4
+ export * from './parseError.js';
5
+ export * from './utils.js';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,8BAA8B,CAAA;AAC5C,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,YAAY,CAAA"}
@@ -0,0 +1,12 @@
1
+ export const median = (arr) => {
2
+ if (!arr.length) {
3
+ return;
4
+ }
5
+ const s = [...arr].sort((a, b) => (a > b ? 1 : a < b ? -1 : 0));
6
+ const mid = Math.floor(s.length / 2);
7
+ if (s.length % 2 === 0) {
8
+ return (s[mid - 1] + s[mid]) / 2n;
9
+ }
10
+ return s[mid];
11
+ };
12
+ //# sourceMappingURL=median.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"median.js","sourceRoot":"","sources":["../../../src/utils/median.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,GAAa,EAAsB,EAAE;IAC1D,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;QACf,OAAM;KACP;IACD,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACpC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;QACtB,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;KAClC;IACD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAA;AACf,CAAC,CAAA"}
@@ -1,8 +1,8 @@
1
1
  import { errorCodes as MetaMaskErrorCodes, getMessageFromCode, } from 'eth-rpc-errors';
2
- import { fetchTxErrorDetails } from '../helpers';
3
- import ChainsService from '../services/ChainsService';
4
- import { ErrorMessage, EthersErrorMessage, EthersErrorType, LifiError, LifiErrorCode, MetaMaskProviderErrorCode, NotFoundError, ProviderError, RPCError, ServerError, SlippageError, TransactionError, UnknownError, ValidationError, } from './errors';
5
- import { formatTokenAmountOnly } from './utils';
2
+ import { formatUnits } from 'viem';
3
+ import { fetchTxErrorDetails } from '../helpers.js';
4
+ import { ChainsService } from '../services/ChainsService.js';
5
+ import { ErrorMessage, EthersErrorMessage, EthersErrorType, LiFiError, LiFiErrorCode, MetaMaskProviderErrorCode, NotFoundError, ProviderError, RPCError, ServerError, SlippageError, TransactionError, UnknownError, ValidationError, } from './errors.js';
6
6
  /**
7
7
  * Available MetaMask error codes:
8
8
  *
@@ -40,7 +40,7 @@ export const getTransactionNotSentMessage = async (step, process) => {
40
40
  if (step) {
41
41
  const chainService = ChainsService.getInstance();
42
42
  const chain = await chainService.getChainById(step.action.fromChainId);
43
- transactionNotSend += ` (${formatTokenAmountOnly(step.action.fromToken, step.action.fromAmount)} ${step.action.fromToken.symbol} on ${chain.name})`;
43
+ transactionNotSend += ` (${formatUnits(BigInt(step.action.fromAmount), step.action.fromToken.decimals)} ${step.action.fromToken.symbol} on ${chain.name})`;
44
44
  }
45
45
  transactionNotSend +=
46
46
  ", please retry.<br/>If it still doesn't work, it is safe to delete this transfer and start a new one.";
@@ -62,62 +62,65 @@ export const getTransactionFailedMessage = async (step, txLink) => {
62
62
  : baseString;
63
63
  };
64
64
  export const parseError = async (e, step, process) => {
65
- if (e instanceof LifiError) {
65
+ if (e instanceof LiFiError) {
66
66
  return e;
67
67
  }
68
- if (e.code) {
69
- // MetaMask errors have a numeric error code
70
- if (typeof e.code === 'number') {
71
- if (Object.values(MetaMaskErrorCodes.rpc).includes(e.code)) {
72
- // rpc errors
73
- // underpriced errors are sent as internal errors, so we need to parse the message manually
74
- if (e.code === MetaMaskErrorCodes.rpc.internal &&
75
- (e.message?.includes(EthersErrorMessage.Underpriced) ||
76
- e.message?.includes(EthersErrorMessage.LowReplacementFee))) {
77
- return new RPCError(LifiErrorCode.TransactionUnderpriced, ErrorMessage.TransactionUnderpriced, await getTransactionNotSentMessage(step, process), e.stack);
78
- }
79
- if (e.message?.includes(EthersErrorMessage.LowGas) ||
80
- e.message?.includes(EthersErrorMessage.OutOfGas)) {
81
- return new TransactionError(LifiErrorCode.GasLimitError, ErrorMessage.GasLimitLow, await getTransactionNotSentMessage(step, process), e.stack);
82
- }
83
- return new RPCError(e.code, getMessageFromCode(e.code), await getTransactionNotSentMessage(step, process), e.stack);
84
- }
85
- // provider errors
86
- if (Object.values(MetaMaskErrorCodes.provider).includes(e.code)) {
87
- return new ProviderError(e.code, getMessageFromCode(e.code), await getTransactionNotSentMessage(step, process), e.stack);
88
- }
89
- }
90
- }
91
- switch (e.code) {
68
+ const errorCode = e.code || e.cause?.code;
69
+ switch (errorCode) {
92
70
  case EthersErrorType.CallExecption:
93
71
  const defaultErrorMessage = await getTransactionNotSentMessage(step, process);
94
72
  try {
95
73
  if (!step?.action.fromChainId) {
96
- throw new Error('Signer is not defined.');
74
+ throw new Error('fromChainId is not defined.');
97
75
  }
98
76
  const response = await fetchTxErrorDetails(e.transactionHash, step?.action.fromChainId);
99
77
  const errorMessage = response?.error_message ?? e.reason;
100
78
  const isAllowanceError = response?.error_message?.includes(EthersErrorMessage.ERC20Allowance) || e.reason?.includes(EthersErrorMessage.ERC20Allowance);
101
79
  if (isAllowanceError) {
102
- return new TransactionError(LifiErrorCode.AllowanceRequired, e.reason, errorMessage, e.stack);
80
+ return new TransactionError(LiFiErrorCode.AllowanceRequired, e.reason, errorMessage, e.stack);
103
81
  }
104
82
  // Error messages other than allowance error will be handled in catch block
105
83
  throw new Error(e);
106
84
  }
107
85
  catch (error) {
108
- return new ProviderError(LifiErrorCode.TransactionFailed, e.reason, defaultErrorMessage, e.stack);
86
+ return new ProviderError(LiFiErrorCode.TransactionFailed, e.reason, defaultErrorMessage, e.stack);
109
87
  }
110
88
  case EthersErrorType.InsufficientFunds:
111
- return new TransactionError(LifiErrorCode.InsufficientFunds, e.message, await getTransactionNotSentMessage(step, process), e.stack);
89
+ return new TransactionError(LiFiErrorCode.InsufficientFunds, e.message, await getTransactionNotSentMessage(step, process), e.stack);
112
90
  case EthersErrorType.ActionRejected:
113
91
  case MetaMaskProviderErrorCode.userRejectedRequest:
114
- return new TransactionError(LifiErrorCode.TransactionRejected, e.message, await getTransactionNotSentMessage(step, process), e.stack);
115
- case LifiErrorCode.TransactionUnprepared:
116
- return new TransactionError(LifiErrorCode.TransactionUnprepared, e.message, await getTransactionNotSentMessage(step, process), e.stack);
117
- case LifiErrorCode.ValidationError:
118
- return new TransactionError(LifiErrorCode.ValidationError, e.message, e.htmlMessage);
119
- default:
120
- return new UnknownError(LifiErrorCode.InternalError, e.message || ErrorMessage.UnknownError, undefined, e.stack);
92
+ return new TransactionError(LiFiErrorCode.SignatureRejected, e.message, await getTransactionNotSentMessage(step, process), e.stack);
93
+ case LiFiErrorCode.TransactionUnprepared:
94
+ return new TransactionError(LiFiErrorCode.TransactionUnprepared, e.message, await getTransactionNotSentMessage(step, process), e.stack);
95
+ case LiFiErrorCode.ValidationError:
96
+ return new TransactionError(LiFiErrorCode.ValidationError, e.message, e.htmlMessage);
97
+ case LiFiErrorCode.TransactionCanceled:
98
+ return new TransactionError(LiFiErrorCode.TransactionCanceled, e.message, e.htmlMessage);
99
+ case LiFiErrorCode.ExchangeRateUpdateCanceled:
100
+ return new TransactionError(LiFiErrorCode.ExchangeRateUpdateCanceled, e.message, e.htmlMessage);
101
+ default: {
102
+ if (errorCode && typeof errorCode === 'number') {
103
+ if (Object.values(MetaMaskErrorCodes.rpc).includes(errorCode)) {
104
+ // rpc errors
105
+ // underpriced errors are sent as internal errors, so we need to parse the message manually
106
+ if (errorCode === MetaMaskErrorCodes.rpc.internal &&
107
+ (e.message?.includes(EthersErrorMessage.Underpriced) ||
108
+ e.message?.includes(EthersErrorMessage.LowReplacementFee))) {
109
+ return new RPCError(LiFiErrorCode.TransactionUnderpriced, ErrorMessage.TransactionUnderpriced, await getTransactionNotSentMessage(step, process), e.stack);
110
+ }
111
+ if (e.message?.includes(EthersErrorMessage.LowGas) ||
112
+ e.message?.includes(EthersErrorMessage.OutOfGas)) {
113
+ return new TransactionError(LiFiErrorCode.GasLimitError, ErrorMessage.GasLimitLow, await getTransactionNotSentMessage(step, process), e.stack);
114
+ }
115
+ return new RPCError(errorCode, getMessageFromCode(errorCode), await getTransactionNotSentMessage(step, process), e.stack);
116
+ }
117
+ // provider errors
118
+ if (Object.values(MetaMaskErrorCodes.provider).includes(errorCode)) {
119
+ return new ProviderError(errorCode, getMessageFromCode(errorCode), await getTransactionNotSentMessage(step, process), e.stack);
120
+ }
121
+ }
122
+ return new UnknownError(LiFiErrorCode.InternalError, e.message || ErrorMessage.UnknownError, undefined, e.stack);
123
+ }
121
124
  }
122
125
  };
123
126
  export const parseBackendError = async (e) => {
@@ -142,3 +145,4 @@ export const parseBackendError = async (e) => {
142
145
  }
143
146
  return new ServerError(ErrorMessage.Default, undefined, e.stack);
144
147
  };
148
+ //# sourceMappingURL=parseError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseError.js","sourceRoot":"","sources":["../../../src/utils/parseError.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { AddressZero, AlternativeAddressZero } from '../constants.js';
2
+ export const wait = (ms) => {
3
+ return new Promise((resolve) => {
4
+ setTimeout(resolve, ms);
5
+ });
6
+ };
7
+ /**
8
+ * Repeatedly calls a given asynchronous function until it resolves with a value
9
+ * @param toRepeat The function that should be repeated
10
+ * @param timeout The timeout in milliseconds between retries, defaults to 5000
11
+ * @returns The result of the toRepeat function
12
+ */
13
+ export const repeatUntilDone = async (toRepeat, timeout = 5000) => {
14
+ let result;
15
+ while (!result) {
16
+ result = await toRepeat();
17
+ if (!result) {
18
+ await wait(timeout);
19
+ }
20
+ }
21
+ return result;
22
+ };
23
+ export const isZeroAddress = (address) => {
24
+ if (address === AddressZero || address === AlternativeAddressZero) {
25
+ return true;
26
+ }
27
+ return false;
28
+ };
29
+ export const isNativeTokenAddress = (address) => {
30
+ if (address === AddressZero ||
31
+ address === AlternativeAddressZero ||
32
+ // CELO native token
33
+ address === '0x471ece3750da237f93b8e339c536989b8978a438') {
34
+ return true;
35
+ }
36
+ return false;
37
+ };
38
+ //# sourceMappingURL=utils.js.map