@lifi/sdk 3.0.0-alpha.6 → 3.0.0-alpha.60

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 (482) hide show
  1. package/package.json +40 -88
  2. package/src/_cjs/config.js +90 -0
  3. package/src/_cjs/config.js.map +1 -0
  4. package/{dist/cjs → src/_cjs}/constants.js +3 -5
  5. package/src/_cjs/constants.js.map +1 -0
  6. package/src/_cjs/core/BaseStepExecutor.js +55 -0
  7. package/src/_cjs/core/BaseStepExecutor.js.map +1 -0
  8. package/src/_cjs/core/EVM/EVM.js +43 -0
  9. package/src/_cjs/core/EVM/EVM.js.map +1 -0
  10. package/src/_cjs/core/EVM/EVMStepExecutor.js +304 -0
  11. package/src/_cjs/core/EVM/EVMStepExecutor.js.map +1 -0
  12. package/{dist/cjs/types → src/_cjs/core/EVM}/abi.js +1 -0
  13. package/src/_cjs/core/EVM/abi.js.map +1 -0
  14. package/{dist/cjs/execution → src/_cjs/core/EVM}/checkAllowance.js +19 -12
  15. package/src/_cjs/core/EVM/checkAllowance.js.map +1 -0
  16. package/{dist/cjs/allowance → src/_cjs/core/EVM}/getAllowance.js +13 -17
  17. package/src/_cjs/core/EVM/getAllowance.js.map +1 -0
  18. package/src/_cjs/core/EVM/getENSAddress.js +20 -0
  19. package/src/_cjs/core/EVM/getENSAddress.js.map +1 -0
  20. package/{dist/cjs/balance/getBalance.js → src/_cjs/core/EVM/getEVMBalance.js} +20 -22
  21. package/src/_cjs/core/EVM/getEVMBalance.js.map +1 -0
  22. package/{dist/cjs/execution → src/_cjs/core/EVM}/multisig.js +7 -11
  23. package/src/_cjs/core/EVM/multisig.js.map +1 -0
  24. package/src/_cjs/core/EVM/publicClient.js +43 -0
  25. package/src/_cjs/core/EVM/publicClient.js.map +1 -0
  26. package/{dist/cjs/allowance → src/_cjs/core/EVM}/setAllowance.js +11 -12
  27. package/src/_cjs/core/EVM/setAllowance.js.map +1 -0
  28. package/src/_cjs/core/EVM/switchChain.js +38 -0
  29. package/src/_cjs/core/EVM/switchChain.js.map +1 -0
  30. package/src/_cjs/core/EVM/types.js +9 -0
  31. package/src/_cjs/core/EVM/types.js.map +1 -0
  32. package/{dist/cjs/utils/getMaxPriorityFeePerGas.js → src/_cjs/core/EVM/utils.js} +13 -3
  33. package/src/_cjs/core/EVM/utils.js.map +1 -0
  34. package/src/_cjs/core/Solana/Solana.js +38 -0
  35. package/src/_cjs/core/Solana/Solana.js.map +1 -0
  36. package/src/_cjs/core/Solana/SolanaStepExecutor.js +174 -0
  37. package/src/_cjs/core/Solana/SolanaStepExecutor.js.map +1 -0
  38. package/src/_cjs/core/Solana/connection.js +19 -0
  39. package/src/_cjs/core/Solana/connection.js.map +1 -0
  40. package/src/_cjs/core/Solana/getSNSAddress.js +26 -0
  41. package/src/_cjs/core/Solana/getSNSAddress.js.map +1 -0
  42. package/src/_cjs/core/Solana/getSolanaBalance.js +60 -0
  43. package/src/_cjs/core/Solana/getSolanaBalance.js.map +1 -0
  44. package/src/_cjs/core/Solana/isAddress.js +15 -0
  45. package/src/_cjs/core/Solana/isAddress.js.map +1 -0
  46. package/src/_cjs/core/Solana/types.js +10 -0
  47. package/src/_cjs/core/Solana/types.js.map +1 -0
  48. package/src/_cjs/core/StatusManager.js +167 -0
  49. package/src/_cjs/core/StatusManager.js.map +1 -0
  50. package/{dist/cjs/execution → src/_cjs/core}/checkBalance.js +6 -6
  51. package/src/_cjs/core/checkBalance.js.map +1 -0
  52. package/src/_cjs/core/execution.js +134 -0
  53. package/src/_cjs/core/execution.js.map +1 -0
  54. package/src/_cjs/core/executionState.js +29 -0
  55. package/src/_cjs/core/executionState.js.map +1 -0
  56. package/src/_cjs/core/index.js +7 -0
  57. package/src/_cjs/core/index.js.map +1 -0
  58. package/src/_cjs/core/prepareRestart.js +23 -0
  59. package/src/_cjs/core/prepareRestart.js.map +1 -0
  60. package/src/_cjs/core/provider.js +15 -0
  61. package/src/_cjs/core/provider.js.map +1 -0
  62. package/src/_cjs/core/rpc.js +18 -0
  63. package/src/_cjs/core/rpc.js.map +1 -0
  64. package/src/_cjs/core/stepComparison.js +25 -0
  65. package/src/_cjs/core/stepComparison.js.map +1 -0
  66. package/{dist/cjs/allowance → src/_cjs/core}/types.js +1 -0
  67. package/src/_cjs/core/types.js.map +1 -0
  68. package/{dist/cjs/execution → src/_cjs/core}/utils.js +2 -11
  69. package/src/_cjs/core/utils.js.map +1 -0
  70. package/{dist/cjs/execution → src/_cjs/core}/waitForReceivingTransaction.js +13 -14
  71. package/src/_cjs/core/waitForReceivingTransaction.js.map +1 -0
  72. package/src/_cjs/createConfig.js +32 -0
  73. package/src/_cjs/createConfig.js.map +1 -0
  74. package/src/_cjs/helpers.js +57 -0
  75. package/src/_cjs/helpers.js.map +1 -0
  76. package/src/_cjs/index.js +23 -0
  77. package/src/_cjs/index.js.map +1 -0
  78. package/src/_cjs/package.json +1 -0
  79. package/src/_cjs/request.js +66 -0
  80. package/src/_cjs/request.js.map +1 -0
  81. package/src/_cjs/services/api.js +309 -0
  82. package/src/_cjs/services/api.js.map +1 -0
  83. package/src/_cjs/services/balance.js +49 -0
  84. package/src/_cjs/services/balance.js.map +1 -0
  85. package/src/_cjs/services/getNameServiceAddress.js +29 -0
  86. package/src/_cjs/services/getNameServiceAddress.js.map +1 -0
  87. package/{dist/cjs → src/_cjs}/typeguards.js +1 -0
  88. package/src/_cjs/typeguards.js.map +1 -0
  89. package/src/_cjs/types/index.js +5 -0
  90. package/src/_cjs/types/index.js.map +1 -0
  91. package/{dist/cjs/types/internal.types.js → src/_cjs/types/internal.js} +1 -0
  92. package/src/_cjs/types/internal.js.map +1 -0
  93. package/{dist/cjs → src/_cjs}/utils/errors.js +26 -3
  94. package/src/_cjs/utils/errors.js.map +1 -0
  95. package/src/_cjs/utils/getTransactionMessage.js +31 -0
  96. package/src/_cjs/utils/getTransactionMessage.js.map +1 -0
  97. package/src/_cjs/utils/index.js +9 -0
  98. package/src/_cjs/utils/index.js.map +1 -0
  99. package/{dist/cjs → src/_cjs}/utils/median.js +1 -0
  100. package/src/_cjs/utils/median.js.map +1 -0
  101. package/src/_cjs/utils/parseBackendError.js +27 -0
  102. package/src/_cjs/utils/parseBackendError.js.map +1 -0
  103. package/src/_cjs/utils/parseError.js +69 -0
  104. package/src/_cjs/utils/parseError.js.map +1 -0
  105. package/{dist/cjs → src/_cjs}/utils/utils.js +5 -11
  106. package/src/_cjs/utils/utils.js.map +1 -0
  107. package/{dist/cjs → src/_cjs}/version.js +2 -1
  108. package/src/_cjs/version.js.map +1 -0
  109. package/src/_esm/config.js +87 -0
  110. package/src/_esm/config.js.map +1 -0
  111. package/{dist → src/_esm}/constants.js +2 -4
  112. package/src/_esm/constants.js.map +1 -0
  113. package/src/_esm/core/BaseStepExecutor.js +52 -0
  114. package/src/_esm/core/BaseStepExecutor.js.map +1 -0
  115. package/src/_esm/core/EVM/EVM.js +39 -0
  116. package/src/_esm/core/EVM/EVM.js.map +1 -0
  117. package/src/_esm/core/EVM/EVMStepExecutor.js +329 -0
  118. package/src/_esm/core/EVM/EVMStepExecutor.js.map +1 -0
  119. package/{dist/types → src/_esm/core/EVM}/abi.js +1 -0
  120. package/src/_esm/core/EVM/abi.js.map +1 -0
  121. package/{dist/execution → src/_esm/core/EVM}/checkAllowance.js +14 -5
  122. package/src/_esm/core/EVM/checkAllowance.js.map +1 -0
  123. package/{dist/allowance → src/_esm/core/EVM}/getAllowance.js +19 -6
  124. package/src/_esm/core/EVM/getAllowance.js.map +1 -0
  125. package/src/_esm/core/EVM/getENSAddress.js +17 -0
  126. package/src/_esm/core/EVM/getENSAddress.js.map +1 -0
  127. package/{dist/balance/getBalance.js → src/_esm/core/EVM/getEVMBalance.js} +10 -12
  128. package/src/_esm/core/EVM/getEVMBalance.js.map +1 -0
  129. package/{dist/execution → src/_esm/core/EVM}/multisig.js +5 -6
  130. package/src/_esm/core/EVM/multisig.js.map +1 -0
  131. package/src/_esm/core/EVM/publicClient.js +46 -0
  132. package/src/_esm/core/EVM/publicClient.js.map +1 -0
  133. package/{dist/allowance → src/_esm/core/EVM}/setAllowance.js +23 -4
  134. package/src/_esm/core/EVM/setAllowance.js.map +1 -0
  135. package/{dist/execution → src/_esm/core/EVM}/switchChain.js +7 -4
  136. package/src/_esm/core/EVM/switchChain.js.map +1 -0
  137. package/src/_esm/core/EVM/types.js +6 -0
  138. package/src/_esm/core/EVM/types.js.map +1 -0
  139. package/{dist/utils/getMaxPriorityFeePerGas.js → src/_esm/core/EVM/utils.js} +12 -1
  140. package/src/_esm/core/EVM/utils.js.map +1 -0
  141. package/src/_esm/core/Solana/Solana.js +34 -0
  142. package/src/_esm/core/Solana/Solana.js.map +1 -0
  143. package/src/_esm/core/Solana/SolanaStepExecutor.js +176 -0
  144. package/src/_esm/core/Solana/SolanaStepExecutor.js.map +1 -0
  145. package/src/_esm/core/Solana/connection.js +20 -0
  146. package/src/_esm/core/Solana/connection.js.map +1 -0
  147. package/src/_esm/core/Solana/getSNSAddress.js +26 -0
  148. package/src/_esm/core/Solana/getSNSAddress.js.map +1 -0
  149. package/src/_esm/core/Solana/getSolanaBalance.js +56 -0
  150. package/src/_esm/core/Solana/getSolanaBalance.js.map +1 -0
  151. package/src/_esm/core/Solana/isAddress.js +11 -0
  152. package/src/_esm/core/Solana/isAddress.js.map +1 -0
  153. package/src/_esm/core/Solana/types.js +7 -0
  154. package/src/_esm/core/Solana/types.js.map +1 -0
  155. package/src/_esm/core/StatusManager.js +203 -0
  156. package/src/_esm/core/StatusManager.js.map +1 -0
  157. package/{dist/execution → src/_esm/core}/checkBalance.js +4 -3
  158. package/src/_esm/core/checkBalance.js.map +1 -0
  159. package/src/_esm/core/execution.js +172 -0
  160. package/src/_esm/core/execution.js.map +1 -0
  161. package/src/_esm/core/executionState.js +26 -0
  162. package/src/_esm/core/executionState.js.map +1 -0
  163. package/src/_esm/core/index.js +4 -0
  164. package/src/_esm/core/index.js.map +1 -0
  165. package/src/_esm/core/prepareRestart.js +64 -0
  166. package/src/_esm/core/prepareRestart.js.map +1 -0
  167. package/src/_esm/core/provider.js +11 -0
  168. package/src/_esm/core/provider.js.map +1 -0
  169. package/src/_esm/core/rpc.js +14 -0
  170. package/src/_esm/core/rpc.js.map +1 -0
  171. package/{dist/execution → src/_esm/core}/stepComparison.js +7 -5
  172. package/src/_esm/core/stepComparison.js.map +1 -0
  173. package/src/_esm/core/types.js +2 -0
  174. package/src/_esm/core/types.js.map +1 -0
  175. package/{dist/execution → src/_esm/core}/utils.js +4 -3
  176. package/src/_esm/core/utils.js.map +1 -0
  177. package/{dist/execution → src/_esm/core}/waitForReceivingTransaction.js +11 -9
  178. package/src/_esm/core/waitForReceivingTransaction.js.map +1 -0
  179. package/src/_esm/createConfig.js +28 -0
  180. package/src/_esm/createConfig.js.map +1 -0
  181. package/{dist → src/_esm}/helpers.js +5 -17
  182. package/src/_esm/helpers.js.map +1 -0
  183. package/src/_esm/index.js +14 -0
  184. package/src/_esm/index.js.map +1 -0
  185. package/src/_esm/package.json +1 -0
  186. package/{dist → src/_esm}/request.js +23 -13
  187. package/src/_esm/request.js.map +1 -0
  188. package/src/_esm/services/api.js +378 -0
  189. package/src/_esm/services/api.js.map +1 -0
  190. package/src/_esm/services/balance.js +65 -0
  191. package/src/_esm/services/balance.js.map +1 -0
  192. package/src/_esm/services/getNameServiceAddress.js +25 -0
  193. package/src/_esm/services/getNameServiceAddress.js.map +1 -0
  194. package/{dist → src/_esm}/typeguards.js +1 -0
  195. package/src/_esm/typeguards.js.map +1 -0
  196. package/src/_esm/types/index.js +2 -0
  197. package/src/_esm/types/index.js.map +1 -0
  198. package/src/_esm/types/internal.js +2 -0
  199. package/src/_esm/types/internal.js.map +1 -0
  200. package/{dist → src/_esm}/utils/errors.js +26 -0
  201. package/src/_esm/utils/errors.js.map +1 -0
  202. package/src/_esm/utils/getTransactionMessage.js +28 -0
  203. package/src/_esm/utils/getTransactionMessage.js.map +1 -0
  204. package/src/_esm/utils/index.js +6 -0
  205. package/src/_esm/utils/index.js.map +1 -0
  206. package/{dist → src/_esm}/utils/median.js +1 -0
  207. package/src/_esm/utils/median.js.map +1 -0
  208. package/src/_esm/utils/parseBackendError.js +24 -0
  209. package/src/_esm/utils/parseBackendError.js.map +1 -0
  210. package/{dist → src/_esm}/utils/parseError.js +6 -53
  211. package/src/_esm/utils/parseError.js.map +1 -0
  212. package/{dist → src/_esm}/utils/utils.js +2 -1
  213. package/src/_esm/utils/utils.js.map +1 -0
  214. package/src/_esm/version.js +3 -0
  215. package/src/_esm/version.js.map +1 -0
  216. package/src/_types/config.d.ts +15 -0
  217. package/src/_types/config.d.ts.map +1 -0
  218. package/{dist/cjs → src/_types}/constants.d.ts +2 -4
  219. package/src/_types/constants.d.ts.map +1 -0
  220. package/src/_types/core/BaseStepExecutor.d.ts +13 -0
  221. package/src/_types/core/BaseStepExecutor.d.ts.map +1 -0
  222. package/src/_types/core/EVM/EVM.d.ts +3 -0
  223. package/src/_types/core/EVM/EVM.d.ts.map +1 -0
  224. package/src/_types/core/EVM/EVMStepExecutor.d.ts +17 -0
  225. package/src/_types/core/EVM/EVMStepExecutor.d.ts.map +1 -0
  226. package/{dist/cjs/types → src/_types/core/EVM}/abi.d.ts +1 -0
  227. package/src/_types/core/EVM/abi.d.ts.map +1 -0
  228. package/src/_types/core/EVM/checkAllowance.d.ts +6 -0
  229. package/src/_types/core/EVM/checkAllowance.d.ts.map +1 -0
  230. package/{dist/cjs/allowance → src/_types/core/EVM}/getAllowance.d.ts +15 -1
  231. package/src/_types/core/EVM/getAllowance.d.ts.map +1 -0
  232. package/src/_types/core/EVM/getENSAddress.d.ts +2 -0
  233. package/src/_types/core/EVM/getENSAddress.d.ts.map +1 -0
  234. package/src/_types/core/EVM/getEVMBalance.d.ts +3 -0
  235. package/src/_types/core/EVM/getEVMBalance.d.ts.map +1 -0
  236. package/src/_types/core/EVM/multisig.d.ts +6 -0
  237. package/src/_types/core/EVM/multisig.d.ts.map +1 -0
  238. package/src/_types/core/EVM/publicClient.d.ts +8 -0
  239. package/src/_types/core/EVM/publicClient.d.ts.map +1 -0
  240. package/src/_types/core/EVM/setAllowance.d.ts +25 -0
  241. package/src/_types/core/EVM/setAllowance.d.ts.map +1 -0
  242. package/{dist/cjs/execution → src/_types/core/EVM}/switchChain.d.ts +5 -4
  243. package/src/_types/core/EVM/switchChain.d.ts.map +1 -0
  244. package/src/_types/core/EVM/types.d.ts +55 -0
  245. package/src/_types/core/EVM/types.d.ts.map +1 -0
  246. package/src/_types/core/EVM/utils.d.ts +10 -0
  247. package/src/_types/core/EVM/utils.d.ts.map +1 -0
  248. package/src/_types/core/Solana/Solana.d.ts +3 -0
  249. package/src/_types/core/Solana/Solana.d.ts.map +1 -0
  250. package/src/_types/core/Solana/SolanaStepExecutor.d.ts +13 -0
  251. package/src/_types/core/Solana/SolanaStepExecutor.d.ts.map +1 -0
  252. package/src/_types/core/Solana/connection.d.ts +8 -0
  253. package/src/_types/core/Solana/connection.d.ts.map +1 -0
  254. package/src/_types/core/Solana/getSNSAddress.d.ts +2 -0
  255. package/src/_types/core/Solana/getSNSAddress.d.ts.map +1 -0
  256. package/src/_types/core/Solana/getSolanaBalance.d.ts +3 -0
  257. package/src/_types/core/Solana/getSolanaBalance.d.ts.map +1 -0
  258. package/src/_types/core/Solana/isAddress.d.ts +2 -0
  259. package/src/_types/core/Solana/isAddress.d.ts.map +1 -0
  260. package/src/_types/core/Solana/types.d.ts +13 -0
  261. package/src/_types/core/Solana/types.d.ts.map +1 -0
  262. package/{dist/cjs/execution → src/_types/core}/StatusManager.d.ts +15 -28
  263. package/src/_types/core/StatusManager.d.ts.map +1 -0
  264. package/src/_types/core/checkBalance.d.ts +3 -0
  265. package/src/_types/core/checkBalance.d.ts.map +1 -0
  266. package/src/_types/core/execution.d.ts +42 -0
  267. package/src/_types/core/execution.d.ts.map +1 -0
  268. package/src/_types/core/executionState.d.ts +17 -0
  269. package/src/_types/core/executionState.d.ts.map +1 -0
  270. package/src/_types/core/index.d.ts +4 -0
  271. package/src/_types/core/index.d.ts.map +1 -0
  272. package/src/_types/core/prepareRestart.d.ts +3 -0
  273. package/src/_types/core/prepareRestart.d.ts.map +1 -0
  274. package/src/_types/core/provider.d.ts +3 -0
  275. package/src/_types/core/provider.d.ts.map +1 -0
  276. package/src/_types/core/rpc.d.ts +4 -0
  277. package/src/_types/core/rpc.d.ts.map +1 -0
  278. package/{dist/execution → src/_types/core}/stepComparison.d.ts +7 -4
  279. package/src/_types/core/stepComparison.d.ts.map +1 -0
  280. package/src/_types/core/types.d.ts +81 -0
  281. package/src/_types/core/types.d.ts.map +1 -0
  282. package/{dist/execution → src/_types/core}/utils.d.ts +3 -2
  283. package/src/_types/core/utils.d.ts.map +1 -0
  284. package/src/_types/core/waitForReceivingTransaction.d.ts +4 -0
  285. package/src/_types/core/waitForReceivingTransaction.d.ts.map +1 -0
  286. package/src/_types/createConfig.d.ts +4 -0
  287. package/src/_types/createConfig.d.ts.map +1 -0
  288. package/{dist → src/_types}/helpers.d.ts +4 -3
  289. package/src/_types/helpers.d.ts.map +1 -0
  290. package/src/_types/index.d.ts +15 -0
  291. package/src/_types/index.d.ts.map +1 -0
  292. package/{dist → src/_types}/request.d.ts +1 -0
  293. package/src/_types/request.d.ts.map +1 -0
  294. package/src/_types/services/api.d.ts +89 -0
  295. package/src/_types/services/api.d.ts.map +1 -0
  296. package/src/_types/services/balance.d.ts +30 -0
  297. package/src/_types/services/balance.d.ts.map +1 -0
  298. package/src/_types/services/getNameServiceAddress.d.ts +3 -0
  299. package/src/_types/services/getNameServiceAddress.d.ts.map +1 -0
  300. package/{dist/cjs → src/_types}/typeguards.d.ts +3 -2
  301. package/src/_types/typeguards.d.ts.map +1 -0
  302. package/src/_types/types/index.d.ts +2 -0
  303. package/src/_types/types/index.d.ts.map +1 -0
  304. package/src/_types/types/internal.d.ts +59 -0
  305. package/src/_types/types/internal.d.ts.map +1 -0
  306. package/{dist → src/_types}/utils/errors.d.ts +3 -1
  307. package/src/_types/utils/errors.d.ts.map +1 -0
  308. package/src/_types/utils/getTransactionMessage.d.ts +4 -0
  309. package/src/_types/utils/getTransactionMessage.d.ts.map +1 -0
  310. package/src/_types/utils/index.d.ts +6 -0
  311. package/src/_types/utils/index.d.ts.map +1 -0
  312. package/{dist/cjs → src/_types}/utils/median.d.ts +1 -0
  313. package/src/_types/utils/median.d.ts.map +1 -0
  314. package/src/_types/utils/parseBackendError.d.ts +3 -0
  315. package/src/_types/utils/parseBackendError.d.ts.map +1 -0
  316. package/{dist → src/_types}/utils/parseError.d.ts +4 -6
  317. package/src/_types/utils/parseError.d.ts.map +1 -0
  318. package/{dist → src/_types}/utils/utils.d.ts +1 -0
  319. package/src/_types/utils/utils.d.ts.map +1 -0
  320. package/src/_types/version.d.ts +3 -0
  321. package/src/_types/version.d.ts.map +1 -0
  322. package/src/config.ts +91 -0
  323. package/src/constants.ts +4 -0
  324. package/src/core/BaseStepExecutor.ts +40 -0
  325. package/src/core/EVM/EVM.ts +47 -0
  326. package/src/core/EVM/EVMStepExecutor.ts +503 -0
  327. package/src/core/EVM/abi.ts +47 -0
  328. package/src/core/EVM/checkAllowance.ts +168 -0
  329. package/src/core/EVM/getAllowance.ts +144 -0
  330. package/src/core/EVM/getENSAddress.ts +18 -0
  331. package/src/core/EVM/getEVMBalance.ts +118 -0
  332. package/src/core/EVM/multisig.ts +53 -0
  333. package/src/core/EVM/publicClient.ts +54 -0
  334. package/src/core/EVM/setAllowance.ts +144 -0
  335. package/src/core/EVM/switchChain.ts +77 -0
  336. package/src/core/EVM/types.ts +73 -0
  337. package/src/core/EVM/utils.ts +48 -0
  338. package/src/core/Solana/Solana.ts +41 -0
  339. package/src/core/Solana/SolanaStepExecutor.ts +272 -0
  340. package/src/core/Solana/connection.ts +20 -0
  341. package/src/core/Solana/getSNSAddress.ts +33 -0
  342. package/src/core/Solana/getSolanaBalance.ts +72 -0
  343. package/src/core/Solana/isAddress.ts +10 -0
  344. package/src/core/Solana/types.ts +18 -0
  345. package/src/core/StatusManager.ts +231 -0
  346. package/src/core/checkBalance.ts +48 -0
  347. package/src/core/execution.ts +210 -0
  348. package/src/core/executionState.ts +44 -0
  349. package/src/core/index.ts +3 -0
  350. package/src/core/prepareRestart.ts +82 -0
  351. package/src/core/provider.ts +12 -0
  352. package/src/core/rpc.ts +15 -0
  353. package/src/core/stepComparison.ts +51 -0
  354. package/src/core/types.ts +118 -0
  355. package/src/core/utils.ts +105 -0
  356. package/src/core/waitForReceivingTransaction.ts +74 -0
  357. package/src/createConfig.ts +33 -0
  358. package/src/helpers.ts +83 -0
  359. package/src/index.ts +18 -0
  360. package/src/request.ts +79 -0
  361. package/src/services/api.ts +509 -0
  362. package/src/services/balance.ts +93 -0
  363. package/src/services/getNameServiceAddress.ts +30 -0
  364. package/src/typeguards.ts +89 -0
  365. package/src/types/index.ts +1 -0
  366. package/src/types/internal.ts +62 -0
  367. package/src/utils/errors.ts +232 -0
  368. package/src/utils/getTransactionMessage.ts +46 -0
  369. package/src/utils/index.ts +5 -0
  370. package/src/utils/median.ts +11 -0
  371. package/src/utils/parseBackendError.ts +50 -0
  372. package/src/utils/parseError.ts +210 -0
  373. package/src/utils/utils.ts +48 -0
  374. package/src/version.ts +2 -0
  375. package/dist/LiFi.d.ts +0 -175
  376. package/dist/LiFi.js +0 -250
  377. package/dist/allowance/getAllowance.d.ts +0 -6
  378. package/dist/allowance/index.d.ts +0 -3
  379. package/dist/allowance/index.js +0 -3
  380. package/dist/allowance/setAllowance.d.ts +0 -6
  381. package/dist/allowance/types.d.ts +0 -27
  382. package/dist/allowance/types.js +0 -1
  383. package/dist/balance/getBalance.d.ts +0 -2
  384. package/dist/balance/getTokenBalance.d.ts +0 -8
  385. package/dist/balance/getTokenBalance.js +0 -27
  386. package/dist/balance/index.d.ts +0 -2
  387. package/dist/balance/index.js +0 -2
  388. package/dist/cjs/LiFi.d.ts +0 -175
  389. package/dist/cjs/LiFi.js +0 -280
  390. package/dist/cjs/allowance/index.d.ts +0 -3
  391. package/dist/cjs/allowance/index.js +0 -19
  392. package/dist/cjs/allowance/setAllowance.d.ts +0 -6
  393. package/dist/cjs/allowance/types.d.ts +0 -27
  394. package/dist/cjs/balance/getBalance.d.ts +0 -2
  395. package/dist/cjs/balance/getTokenBalance.d.ts +0 -8
  396. package/dist/cjs/balance/getTokenBalance.js +0 -33
  397. package/dist/cjs/balance/index.d.ts +0 -2
  398. package/dist/cjs/balance/index.js +0 -18
  399. package/dist/cjs/connectors.d.ts +0 -8
  400. package/dist/cjs/connectors.js +0 -75
  401. package/dist/cjs/execution/RouteExecutionManager.d.ts +0 -59
  402. package/dist/cjs/execution/RouteExecutionManager.js +0 -202
  403. package/dist/cjs/execution/StatusManager.js +0 -171
  404. package/dist/cjs/execution/StepExecutionManager.d.ts +0 -7
  405. package/dist/cjs/execution/StepExecutionManager.js +0 -272
  406. package/dist/cjs/execution/StepExecutor.d.ts +0 -15
  407. package/dist/cjs/execution/StepExecutor.js +0 -62
  408. package/dist/cjs/execution/checkAllowance.d.ts +0 -4
  409. package/dist/cjs/execution/checkBalance.d.ts +0 -2
  410. package/dist/cjs/execution/index.d.ts +0 -1
  411. package/dist/cjs/execution/index.js +0 -17
  412. package/dist/cjs/execution/multisig.d.ts +0 -4
  413. package/dist/cjs/execution/prepareRestart.d.ts +0 -3
  414. package/dist/cjs/execution/prepareRestart.js +0 -65
  415. package/dist/cjs/execution/stepComparison.d.ts +0 -14
  416. package/dist/cjs/execution/stepComparison.js +0 -37
  417. package/dist/cjs/execution/switchChain.js +0 -54
  418. package/dist/cjs/execution/utils.d.ts +0 -12
  419. package/dist/cjs/execution/waitForReceivingTransaction.d.ts +0 -3
  420. package/dist/cjs/helpers.d.ts +0 -18
  421. package/dist/cjs/helpers.js +0 -84
  422. package/dist/cjs/index.d.ts +0 -5
  423. package/dist/cjs/index.js +0 -24
  424. package/dist/cjs/request.d.ts +0 -9
  425. package/dist/cjs/request.js +0 -60
  426. package/dist/cjs/services/ApiService.d.ts +0 -17
  427. package/dist/cjs/services/ApiService.js +0 -326
  428. package/dist/cjs/services/ChainsService.d.ts +0 -11
  429. package/dist/cjs/services/ChainsService.js +0 -39
  430. package/dist/cjs/services/ConfigService.d.ts +0 -23
  431. package/dist/cjs/services/ConfigService.js +0 -101
  432. package/dist/cjs/types/index.d.ts +0 -4
  433. package/dist/cjs/types/index.js +0 -22
  434. package/dist/cjs/types/internal.types.d.ts +0 -145
  435. package/dist/cjs/utils/errors.d.ts +0 -107
  436. package/dist/cjs/utils/getMaxPriorityFeePerGas.d.ts +0 -2
  437. package/dist/cjs/utils/index.d.ts +0 -5
  438. package/dist/cjs/utils/index.js +0 -21
  439. package/dist/cjs/utils/parseError.d.ts +0 -37
  440. package/dist/cjs/utils/parseError.js +0 -157
  441. package/dist/cjs/utils/utils.d.ts +0 -10
  442. package/dist/cjs/version.d.ts +0 -2
  443. package/dist/connectors.d.ts +0 -8
  444. package/dist/connectors.js +0 -41
  445. package/dist/constants.d.ts +0 -6
  446. package/dist/execution/RouteExecutionManager.d.ts +0 -59
  447. package/dist/execution/RouteExecutionManager.js +0 -195
  448. package/dist/execution/StatusManager.d.ts +0 -67
  449. package/dist/execution/StatusManager.js +0 -167
  450. package/dist/execution/StepExecutionManager.d.ts +0 -7
  451. package/dist/execution/StepExecutionManager.js +0 -265
  452. package/dist/execution/StepExecutor.d.ts +0 -15
  453. package/dist/execution/StepExecutor.js +0 -58
  454. package/dist/execution/checkAllowance.d.ts +0 -4
  455. package/dist/execution/checkBalance.d.ts +0 -2
  456. package/dist/execution/index.d.ts +0 -1
  457. package/dist/execution/index.js +0 -1
  458. package/dist/execution/multisig.d.ts +0 -4
  459. package/dist/execution/prepareRestart.d.ts +0 -3
  460. package/dist/execution/prepareRestart.js +0 -61
  461. package/dist/execution/switchChain.d.ts +0 -21
  462. package/dist/execution/waitForReceivingTransaction.d.ts +0 -3
  463. package/dist/index.d.ts +0 -5
  464. package/dist/index.js +0 -6
  465. package/dist/services/ApiService.d.ts +0 -17
  466. package/dist/services/ApiService.js +0 -321
  467. package/dist/services/ChainsService.d.ts +0 -11
  468. package/dist/services/ChainsService.js +0 -33
  469. package/dist/services/ConfigService.d.ts +0 -23
  470. package/dist/services/ConfigService.js +0 -99
  471. package/dist/typeguards.d.ts +0 -4
  472. package/dist/types/abi.d.ts +0 -5
  473. package/dist/types/index.d.ts +0 -4
  474. package/dist/types/index.js +0 -4
  475. package/dist/types/internal.types.d.ts +0 -145
  476. package/dist/types/internal.types.js +0 -1
  477. package/dist/utils/getMaxPriorityFeePerGas.d.ts +0 -2
  478. package/dist/utils/index.d.ts +0 -5
  479. package/dist/utils/index.js +0 -5
  480. package/dist/utils/median.d.ts +0 -1
  481. package/dist/version.d.ts +0 -2
  482. package/dist/version.js +0 -2
@@ -1,175 +0,0 @@
1
- import type { ChainId, ChainKey, ConnectionsRequest, ConnectionsResponse, ContractCallQuoteRequest, ExtendedChain, GasRecommendationRequest, GasRecommendationResponse, GetStatusRequest, LifiStep, PossibilitiesRequest, PossibilitiesResponse, QuoteRequest, RequestOptions, RoutesRequest, RoutesResponse, StatusResponse, Token, TokenAmount, TokensRequest, TokensResponse, ToolsRequest, ToolsResponse } from '@lifi/types';
2
- import type { Hash, PublicClient } from 'viem';
3
- import type { ApproveTokenRequest, RevokeApprovalRequest, TokenAllowance, TokenSpender } from './allowance';
4
- import { RouteExecutionManager } from './execution/RouteExecutionManager';
5
- import type { Config, ConfigUpdate } from './types';
6
- export declare class LiFi extends RouteExecutionManager {
7
- private chainsService;
8
- constructor(configUpdate: ConfigUpdate);
9
- /**
10
- * Get the current configuration of the SDK
11
- * @returns - The config object
12
- */
13
- getConfig: () => Config;
14
- /**
15
- * Get the SDK configuration after all setup calls are finished
16
- * @returns - The config object
17
- */
18
- getConfigAsync: () => Promise<Config>;
19
- /**
20
- * Get an instance of a provider for a specific chain
21
- * @param chainId - Id of the chain the provider is for
22
- * @returns The public client for the given chain
23
- */
24
- getPublicClient: (chainId: number) => Promise<PublicClient>;
25
- /**
26
- * Set a new confuration for the SDK
27
- * @param configUpdate - An object containing the configuration fields that should be updated.
28
- * @returns The renewed config object
29
- */
30
- setConfig: (configUpdate: Partial<ConfigUpdate>) => Config;
31
- /**
32
- * Get a set of current possibilities based on a request that specifies which chains, exchanges and bridges are preferred or unwanted.
33
- * @param request - Object defining preferences regarding chain, exchanges and bridges
34
- * @param options
35
- * @returns Object listing current possibilities for any-to-any cross-chain-swaps based on the provided preferences.
36
- * @throws {LiFiError} Throws a LiFiError if request fails.
37
- * @deprecated We don't want to support this endpoint anymore in the future. /chains, /tools, /connections, and /tokens should be used instead
38
- */
39
- getPossibilities: (request?: PossibilitiesRequest, options?: RequestOptions) => Promise<PossibilitiesResponse>;
40
- /**
41
- * Fetch information about a Token
42
- * @param chain - Id or key of the chain that contains the token
43
- * @param token - Address or symbol of the token on the requested chain
44
- * @param options
45
- * @throws {LiFiError} - Throws a LiFiError if request fails
46
- */
47
- getToken: (chain: ChainKey | ChainId, token: string, options?: RequestOptions) => Promise<Token>;
48
- /**
49
- * Get a quote for a token transfer
50
- * @param request - The configuration of the requested quote
51
- * @param options
52
- * @throws {LiFiError} - Throws a LiFiError if request fails
53
- */
54
- getQuote: (request: QuoteRequest, options?: RequestOptions) => Promise<LifiStep>;
55
- /**
56
- * Get a quote for a destination contract call
57
- * @param request - The configuration of the requested destination call
58
- * @param options
59
- * @throws {LiFiError} - Throws a LiFiError if request fails
60
- * @returns - Returns step.
61
- */
62
- getContractCallQuote: (request: ContractCallQuoteRequest, options?: RequestOptions) => Promise<LifiStep>;
63
- /**
64
- * Check the status of a transfer. For cross chain transfers, the "bridge" parameter is required.
65
- * @param request - Configuration of the requested status
66
- * @param options - Rrquest options.
67
- * @throws {LiFiError} - Throws a LiFiError if request fails
68
- * @returns Returns status response.
69
- */
70
- getStatus: (request: GetStatusRequest, options?: RequestOptions) => Promise<StatusResponse>;
71
- /**
72
- * Get the available tools to bridge and swap tokens.
73
- * @param request - The configuration of the requested tools
74
- * @param options
75
- * @returns The tools that are available on the requested chains
76
- */
77
- getTools: (request?: ToolsRequest, options?: RequestOptions) => Promise<ToolsResponse>;
78
- /**
79
- * Get all known tokens.
80
- * @param request - The configuration of the requested tokens
81
- * @param options
82
- * @returns The tokens that are available on the requested chains
83
- */
84
- getTokens: (request?: TokensRequest, options?: RequestOptions) => Promise<TokensResponse>;
85
- /**
86
- * Get all available chains
87
- * @returns A list of all available chains
88
- * @throws {LiFiError} Throws a LiFiError if request fails.
89
- */
90
- getChains: () => Promise<ExtendedChain[]>;
91
- /**
92
- * Get a set of routes for a request that describes a transfer of tokens.
93
- * @param request - A description of the transfer.
94
- * @param options
95
- * @returns The resulting routes that can be used to realize the described transfer of tokens.
96
- * @throws {LiFiError} Throws a LiFiError if request fails.
97
- */
98
- getRoutes: (request: RoutesRequest, options?: RequestOptions) => Promise<RoutesResponse>;
99
- /**
100
- * Get the transaction data for a single step of a route
101
- * @param step - The step object.
102
- * @param options
103
- * @returns The step populated with the transaction data.
104
- * @throws {LiFiError} Throws a LiFiError if request fails.
105
- */
106
- getStepTransaction: (step: LifiStep, options?: RequestOptions) => Promise<LifiStep>;
107
- /**
108
- * Get gas recommendation for a certain chain
109
- * @param request - Configuration of the requested recommendation.
110
- * @param options
111
- * @throws {LiFiError} Throws a LiFiError if request fails.
112
- */
113
- getGasRecommendation: (request: GasRecommendationRequest, options?: RequestOptions) => Promise<GasRecommendationResponse>;
114
- /**
115
- * Returns the balances of a specific token a wallet holds across all aggregated chains.
116
- * @param walletAddress - A wallet address.
117
- * @param token - A Token object.
118
- * @returns An object containing the token and the amounts on different chains.
119
- * @throws {ValidationError} Throws a ValidationError if parameters are invalid.
120
- */
121
- getTokenBalance: (walletAddress: string, token: Token) => Promise<TokenAmount | null>;
122
- /**
123
- * Returns the balances for a list tokens a wallet holds across all aggregated chains.
124
- * @param walletAddress - A wallet address.
125
- * @param tokens - A list of Token objects.
126
- * @returns A list of objects containing the tokens and the amounts on different chains.
127
- * @throws {ValidationError} Throws a ValidationError if parameters are invalid.
128
- */
129
- getTokenBalances: (walletAddress: string, tokens: Token[]) => Promise<TokenAmount[]>;
130
- /**
131
- * This method queries the balances of tokens for a specific list of chains for a given wallet.
132
- * @param walletAddress - A walletaddress.
133
- * @param tokensByChain - A list of Token objects organized by chain ids.
134
- * @returns A list of objects containing the tokens and the amounts on different chains organized by the chosen chains.
135
- * @throws {ValidationError} Throws a ValidationError if parameters are invalid.
136
- */
137
- getTokenBalancesByChain: (walletAddress: string, tokensByChain: {
138
- [chainId: number]: Token[];
139
- }) => Promise<{
140
- [chainId: number]: TokenAmount[];
141
- }>;
142
- /**
143
- * Get the current allowance for a certain token.
144
- * @param token - The token that should be checked
145
- * @param ownerAddress - The owner of the token
146
- * @param spenderAddress - The spender address that has to be approved
147
- * @returns Returns allowance
148
- */
149
- getTokenAllowance: (token: Token, ownerAddress: string, spenderAddress: string) => Promise<bigint | undefined>;
150
- /**
151
- * Get the current allowance for a list of token/spender address pairs.
152
- * @param ownerAddress - The owner of the tokens
153
- * @param tokens - A list of token and spender address pairs
154
- * @returns Returns array of tokens and their allowance
155
- */
156
- getTokenAllowanceMulticall: (ownerAddress: string, tokens: TokenSpender[]) => Promise<TokenAllowance[]>;
157
- /**
158
- * Set approval for a certain token and amount.
159
- * @param request - The approval request
160
- * @returns Returns Hash or nothing
161
- */
162
- setTokenApproval: (request: ApproveTokenRequest) => Promise<Hash | undefined>;
163
- /**
164
- * Revoke approval for a certain token.
165
- * @param request - The revoke request
166
- * @returns Returns Hash or nothing
167
- */
168
- revokeTokenApproval: (request: RevokeApprovalRequest) => Promise<Hash | undefined>;
169
- /**
170
- * Get all the available connections for swap/bridging tokens
171
- * @param connectionRequest ConnectionsRequest
172
- * @returns ConnectionsResponse
173
- */
174
- getConnections: (connectionRequest: ConnectionsRequest) => Promise<ConnectionsResponse>;
175
- }
package/dist/cjs/LiFi.js DELETED
@@ -1,280 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.LiFi = void 0;
30
- const allowance_1 = require("./allowance");
31
- const balance = __importStar(require("./balance"));
32
- const connectors_1 = require("./connectors");
33
- const RouteExecutionManager_1 = require("./execution/RouteExecutionManager");
34
- const helpers_1 = require("./helpers");
35
- const ApiService_1 = __importDefault(require("./services/ApiService"));
36
- const ChainsService_1 = __importDefault(require("./services/ChainsService"));
37
- const typeguards_1 = require("./typeguards");
38
- const errors_1 = require("./utils/errors");
39
- const version_1 = require("./version");
40
- class LiFi extends RouteExecutionManager_1.RouteExecutionManager {
41
- constructor(configUpdate) {
42
- super(configUpdate);
43
- /**
44
- * Get the current configuration of the SDK
45
- * @returns - The config object
46
- */
47
- this.getConfig = () => {
48
- return this.configService.getConfig();
49
- };
50
- /**
51
- * Get the SDK configuration after all setup calls are finished
52
- * @returns - The config object
53
- */
54
- this.getConfigAsync = () => {
55
- return this.configService.getConfigAsync();
56
- };
57
- /**
58
- * Get an instance of a provider for a specific chain
59
- * @param chainId - Id of the chain the provider is for
60
- * @returns The public client for the given chain
61
- */
62
- this.getPublicClient = (chainId) => {
63
- return (0, connectors_1.getPublicClient)(chainId);
64
- };
65
- /**
66
- * Set a new confuration for the SDK
67
- * @param configUpdate - An object containing the configuration fields that should be updated.
68
- * @returns The renewed config object
69
- */
70
- this.setConfig = (configUpdate) => {
71
- return this.configService.updateConfig(configUpdate);
72
- };
73
- /**
74
- * Get a set of current possibilities based on a request that specifies which chains, exchanges and bridges are preferred or unwanted.
75
- * @param request - Object defining preferences regarding chain, exchanges and bridges
76
- * @param options
77
- * @returns Object listing current possibilities for any-to-any cross-chain-swaps based on the provided preferences.
78
- * @throws {LiFiError} Throws a LiFiError if request fails.
79
- * @deprecated We don't want to support this endpoint anymore in the future. /chains, /tools, /connections, and /tokens should be used instead
80
- */
81
- this.getPossibilities = async (request, options) => {
82
- return ApiService_1.default.getPossibilities(request, options);
83
- };
84
- /**
85
- * Fetch information about a Token
86
- * @param chain - Id or key of the chain that contains the token
87
- * @param token - Address or symbol of the token on the requested chain
88
- * @param options
89
- * @throws {LiFiError} - Throws a LiFiError if request fails
90
- */
91
- this.getToken = async (chain, token, options) => {
92
- return ApiService_1.default.getToken(chain, token, options);
93
- };
94
- /**
95
- * Get a quote for a token transfer
96
- * @param request - The configuration of the requested quote
97
- * @param options
98
- * @throws {LiFiError} - Throws a LiFiError if request fails
99
- */
100
- this.getQuote = async (request, options) => {
101
- return ApiService_1.default.getQuote(request, options);
102
- };
103
- /**
104
- * Get a quote for a destination contract call
105
- * @param request - The configuration of the requested destination call
106
- * @param options
107
- * @throws {LiFiError} - Throws a LiFiError if request fails
108
- * @returns - Returns step.
109
- */
110
- this.getContractCallQuote = async (request, options) => {
111
- return ApiService_1.default.getContractCallQuote(request, options);
112
- };
113
- /**
114
- * Check the status of a transfer. For cross chain transfers, the "bridge" parameter is required.
115
- * @param request - Configuration of the requested status
116
- * @param options - Rrquest options.
117
- * @throws {LiFiError} - Throws a LiFiError if request fails
118
- * @returns Returns status response.
119
- */
120
- this.getStatus = async (request, options) => {
121
- return ApiService_1.default.getStatus(request, options);
122
- };
123
- /**
124
- * Get the available tools to bridge and swap tokens.
125
- * @param request - The configuration of the requested tools
126
- * @param options
127
- * @returns The tools that are available on the requested chains
128
- */
129
- this.getTools = async (request, options) => {
130
- return ApiService_1.default.getTools(request || {}, options);
131
- };
132
- /**
133
- * Get all known tokens.
134
- * @param request - The configuration of the requested tokens
135
- * @param options
136
- * @returns The tokens that are available on the requested chains
137
- */
138
- this.getTokens = async (request, options) => {
139
- return ApiService_1.default.getTokens(request || {}, options);
140
- };
141
- /**
142
- * Get all available chains
143
- * @returns A list of all available chains
144
- * @throws {LiFiError} Throws a LiFiError if request fails.
145
- */
146
- this.getChains = async () => {
147
- return this.chainsService.getChains();
148
- };
149
- /**
150
- * Get a set of routes for a request that describes a transfer of tokens.
151
- * @param request - A description of the transfer.
152
- * @param options
153
- * @returns The resulting routes that can be used to realize the described transfer of tokens.
154
- * @throws {LiFiError} Throws a LiFiError if request fails.
155
- */
156
- this.getRoutes = async (request, options) => {
157
- return ApiService_1.default.getRoutes(request, options);
158
- };
159
- /**
160
- * Get the transaction data for a single step of a route
161
- * @param step - The step object.
162
- * @param options
163
- * @returns The step populated with the transaction data.
164
- * @throws {LiFiError} Throws a LiFiError if request fails.
165
- */
166
- this.getStepTransaction = async (step, options) => {
167
- return ApiService_1.default.getStepTransaction(step, options);
168
- };
169
- /**
170
- * Get gas recommendation for a certain chain
171
- * @param request - Configuration of the requested recommendation.
172
- * @param options
173
- * @throws {LiFiError} Throws a LiFiError if request fails.
174
- */
175
- this.getGasRecommendation = async (request, options) => {
176
- return ApiService_1.default.getGasRecommendation(request, options);
177
- };
178
- /**
179
- * Returns the balances of a specific token a wallet holds across all aggregated chains.
180
- * @param walletAddress - A wallet address.
181
- * @param token - A Token object.
182
- * @returns An object containing the token and the amounts on different chains.
183
- * @throws {ValidationError} Throws a ValidationError if parameters are invalid.
184
- */
185
- this.getTokenBalance = async (walletAddress, token) => {
186
- if (!walletAddress) {
187
- throw new errors_1.ValidationError('Missing walletAddress.');
188
- }
189
- if (!(0, typeguards_1.isToken)(token)) {
190
- throw new errors_1.ValidationError(`Invalid token passed: address "${token.address}" on chainId "${token.chainId}"`);
191
- }
192
- return balance.getTokenBalance(walletAddress, token);
193
- };
194
- /**
195
- * Returns the balances for a list tokens a wallet holds across all aggregated chains.
196
- * @param walletAddress - A wallet address.
197
- * @param tokens - A list of Token objects.
198
- * @returns A list of objects containing the tokens and the amounts on different chains.
199
- * @throws {ValidationError} Throws a ValidationError if parameters are invalid.
200
- */
201
- this.getTokenBalances = async (walletAddress, tokens) => {
202
- if (!walletAddress) {
203
- throw new errors_1.ValidationError('Missing walletAddress.');
204
- }
205
- const invalidTokens = tokens.filter((token) => !(0, typeguards_1.isToken)(token));
206
- if (invalidTokens.length) {
207
- throw new errors_1.ValidationError(`Invalid token passed: address "${invalidTokens[0].address}" on chainId "${invalidTokens[0].chainId}"`);
208
- }
209
- return balance.getTokenBalances(walletAddress, tokens);
210
- };
211
- /**
212
- * This method queries the balances of tokens for a specific list of chains for a given wallet.
213
- * @param walletAddress - A walletaddress.
214
- * @param tokensByChain - A list of Token objects organized by chain ids.
215
- * @returns A list of objects containing the tokens and the amounts on different chains organized by the chosen chains.
216
- * @throws {ValidationError} Throws a ValidationError if parameters are invalid.
217
- */
218
- this.getTokenBalancesByChain = async (walletAddress, tokensByChain) => {
219
- if (!walletAddress) {
220
- throw new errors_1.ValidationError('Missing walletAddress.');
221
- }
222
- const tokenList = Object.values(tokensByChain).flat();
223
- const invalidTokens = tokenList.filter((token) => !(0, typeguards_1.isToken)(token));
224
- if (invalidTokens.length) {
225
- throw new errors_1.ValidationError(`Invalid token passed: address "${invalidTokens[0].address}" on chainId "${invalidTokens[0].chainId}"`);
226
- }
227
- return balance.getTokenBalancesByChain(walletAddress, tokensByChain);
228
- };
229
- /**
230
- * Get the current allowance for a certain token.
231
- * @param token - The token that should be checked
232
- * @param ownerAddress - The owner of the token
233
- * @param spenderAddress - The spender address that has to be approved
234
- * @returns Returns allowance
235
- */
236
- this.getTokenAllowance = async (token, ownerAddress, spenderAddress) => {
237
- return (0, allowance_1.getTokenAllowance)(token, ownerAddress, spenderAddress);
238
- };
239
- /**
240
- * Get the current allowance for a list of token/spender address pairs.
241
- * @param ownerAddress - The owner of the tokens
242
- * @param tokens - A list of token and spender address pairs
243
- * @returns Returns array of tokens and their allowance
244
- */
245
- this.getTokenAllowanceMulticall = async (ownerAddress, tokens) => {
246
- return (0, allowance_1.getTokenAllowanceMulticall)(ownerAddress, tokens);
247
- };
248
- /**
249
- * Set approval for a certain token and amount.
250
- * @param request - The approval request
251
- * @returns Returns Hash or nothing
252
- */
253
- this.setTokenApproval = (request) => {
254
- return (0, allowance_1.setTokenAllowance)(request);
255
- };
256
- /**
257
- * Revoke approval for a certain token.
258
- * @param request - The revoke request
259
- * @returns Returns Hash or nothing
260
- */
261
- this.revokeTokenApproval = (request) => {
262
- return (0, allowance_1.revokeTokenApproval)(request);
263
- };
264
- /**
265
- * Get all the available connections for swap/bridging tokens
266
- * @param connectionRequest ConnectionsRequest
267
- * @returns ConnectionsResponse
268
- */
269
- this.getConnections = async (connectionRequest) => {
270
- const connections = await ApiService_1.default.getAvailableConnections(connectionRequest);
271
- return connections;
272
- };
273
- this.chainsService = ChainsService_1.default.getInstance();
274
- this.chainsService.getChains().then((chains) => {
275
- this.configService.updateChains(chains);
276
- });
277
- (0, helpers_1.checkPackageUpdates)(version_1.name, version_1.version, configUpdate.disableVersionCheck);
278
- }
279
- }
280
- exports.LiFi = LiFi;
@@ -1,3 +0,0 @@
1
- export * from './getAllowance';
2
- export * from './setAllowance';
3
- export * from './types';
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./getAllowance"), exports);
18
- __exportStar(require("./setAllowance"), exports);
19
- __exportStar(require("./types"), exports);
@@ -1,6 +0,0 @@
1
- import type { Hash, WalletClient } from 'viem';
2
- import type { InternalExecutionSettings } from '../types';
3
- import type { ApproveTokenRequest, RevokeApprovalRequest } from './types';
4
- export declare const setAllowance: (walletClient: WalletClient, tokenAddress: string, contractAddress: string, amount: bigint, settings?: InternalExecutionSettings, returnPopulatedTransaction?: boolean) => Promise<Hash>;
5
- export declare const setTokenAllowance: ({ walletClient, token, spenderAddress, amount, infiniteApproval, }: ApproveTokenRequest) => Promise<Hash | undefined>;
6
- export declare const revokeTokenApproval: ({ walletClient, token, spenderAddress, }: RevokeApprovalRequest) => Promise<Hash | undefined>;
@@ -1,27 +0,0 @@
1
- import type { Token } from '@lifi/types';
2
- import type { WalletClient } from 'viem';
3
- export type TokenSpender = {
4
- token: Token;
5
- spenderAddress: string;
6
- };
7
- export type TokenAllowance = {
8
- token: Token;
9
- allowance?: bigint;
10
- };
11
- export type TokenSpenderAllowance = {
12
- token: Token;
13
- spenderAddress: string;
14
- allowance?: bigint;
15
- };
16
- export interface ApproveTokenRequest {
17
- walletClient: WalletClient;
18
- token: Token;
19
- spenderAddress: string;
20
- amount: bigint;
21
- infiniteApproval?: boolean;
22
- }
23
- export interface RevokeApprovalRequest {
24
- walletClient: WalletClient;
25
- token: Token;
26
- spenderAddress: string;
27
- }
@@ -1,2 +0,0 @@
1
- import type { Token, TokenAmount } from '@lifi/types';
2
- export declare const getBalance: (walletAddress: string, tokens: Token[]) => Promise<TokenAmount[]>;
@@ -1,8 +0,0 @@
1
- import type { Token, TokenAmount } from '@lifi/types';
2
- export declare const getTokenBalance: (walletAddress: string, token: Token) => Promise<TokenAmount | null>;
3
- export declare const getTokenBalances: (walletAddress: string, tokens: Token[]) => Promise<TokenAmount[]>;
4
- export declare const getTokenBalancesByChain: (walletAddress: string, tokensByChain: {
5
- [chainId: number]: Token[];
6
- }) => Promise<{
7
- [chainId: number]: TokenAmount[];
8
- }>;
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getTokenBalancesByChain = exports.getTokenBalances = exports.getTokenBalance = void 0;
4
- const getBalance_1 = require("./getBalance");
5
- const getTokenBalance = async (walletAddress, token) => {
6
- const tokenAmounts = await (0, exports.getTokenBalances)(walletAddress, [token]);
7
- return tokenAmounts.length ? tokenAmounts[0] : null;
8
- };
9
- exports.getTokenBalance = getTokenBalance;
10
- const getTokenBalances = async (walletAddress, tokens) => {
11
- // split by chain
12
- const tokensByChain = {};
13
- tokens.forEach((token) => {
14
- if (!tokensByChain[token.chainId]) {
15
- tokensByChain[token.chainId] = [];
16
- }
17
- tokensByChain[token.chainId].push(token);
18
- });
19
- const tokenAmountsByChain = await (0, exports.getTokenBalancesByChain)(walletAddress, tokensByChain);
20
- return Object.values(tokenAmountsByChain).flat();
21
- };
22
- exports.getTokenBalances = getTokenBalances;
23
- const getTokenBalancesByChain = async (walletAddress, tokensByChain) => {
24
- const tokenAmountsByChain = {};
25
- const promises = Object.keys(tokensByChain).map(async (chainIdStr) => {
26
- const chainId = parseInt(chainIdStr);
27
- const tokenAmounts = await (0, getBalance_1.getBalance)(walletAddress, tokensByChain[chainId]);
28
- tokenAmountsByChain[chainId] = tokenAmounts;
29
- });
30
- await Promise.allSettled(promises);
31
- return tokenAmountsByChain;
32
- };
33
- exports.getTokenBalancesByChain = getTokenBalancesByChain;
@@ -1,2 +0,0 @@
1
- export * from './getBalance';
2
- export * from './getTokenBalance';
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./getBalance"), exports);
18
- __exportStar(require("./getTokenBalance"), exports);
@@ -1,8 +0,0 @@
1
- import type { PublicClient } from 'viem';
2
- import type { Chain } from 'viem/chains';
3
- import type { ChainId } from './types';
4
- export declare const getChainById: (chainId: ChainId) => Chain | undefined;
5
- export declare const getRpcUrl: (chainId: ChainId) => Promise<string>;
6
- export declare const getRpcUrls: (chainId: ChainId) => Promise<string[]>;
7
- export declare const getPublicClient: (chainId: number) => Promise<PublicClient>;
8
- export declare const getMulticallAddress: (chainId: ChainId) => Promise<string | undefined>;