@augustdigital/sdk 4.0.9-alpha → 4.1.0-alpha

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 (352) hide show
  1. package/lib/abis/AddressResolver.d.ts +28 -0
  2. package/lib/abis/AddressResolver.js +23 -0
  3. package/lib/abis/AddressResolver.js.map +1 -0
  4. package/lib/abis/ChainlinkV3.d.ts +87 -0
  5. package/lib/abis/ChainlinkV3.js +117 -0
  6. package/lib/abis/ChainlinkV3.js.map +1 -0
  7. package/lib/abis/ERC20.d.ts +168 -0
  8. package/lib/abis/ERC20.js +226 -0
  9. package/lib/abis/ERC20.js.map +1 -0
  10. package/lib/abis/ERC20_Bytes32.d.ts +135 -0
  11. package/lib/abis/ERC20_Bytes32.js +192 -0
  12. package/lib/abis/ERC20_Bytes32.js.map +1 -0
  13. package/lib/abis/ERC4626.d.ts +363 -0
  14. package/lib/abis/ERC4626.js +506 -0
  15. package/lib/abis/ERC4626.js.map +1 -0
  16. package/lib/abis/ERC721.d.ts +230 -0
  17. package/lib/abis/ERC721.js +320 -0
  18. package/lib/abis/ERC721.js.map +1 -0
  19. package/lib/abis/FeeOracle.d.ts +120 -0
  20. package/lib/abis/FeeOracle.js +161 -0
  21. package/lib/abis/FeeOracle.js.map +1 -0
  22. package/lib/abis/LendingPool.d.ts +1393 -0
  23. package/lib/abis/LendingPool.js +1806 -0
  24. package/lib/abis/LendingPool.js.map +1 -0
  25. package/lib/abis/LendingPoolV2.d.ts +55 -0
  26. package/lib/abis/LendingPoolV2.js +1832 -0
  27. package/lib/abis/LendingPoolV2.js.map +1 -0
  28. package/lib/abis/LendingPoolV3.d.ts +35 -0
  29. package/lib/abis/LendingPoolV3.js +1160 -0
  30. package/lib/abis/LendingPoolV3.js.map +1 -0
  31. package/lib/abis/Loan.d.ts +837 -0
  32. package/lib/abis/Loan.js +1080 -0
  33. package/lib/abis/Loan.js.map +1 -0
  34. package/lib/abis/Multicall3.d.ts +30 -0
  35. package/lib/abis/Multicall3.js +94 -0
  36. package/lib/abis/Multicall3.js.map +1 -0
  37. package/lib/abis/PoolAdapter.d.ts +76 -0
  38. package/lib/abis/PoolAdapter.js +412 -0
  39. package/lib/abis/PoolAdapter.js.map +1 -0
  40. package/lib/abis/RewardDistributor.d.ts +46 -0
  41. package/lib/abis/RewardDistributor.js +352 -0
  42. package/lib/abis/RewardDistributor.js.map +1 -0
  43. package/lib/abis/SmartAccount.d.ts +16 -0
  44. package/lib/abis/SmartAccount.js +16 -0
  45. package/lib/abis/SmartAccount.js.map +1 -0
  46. package/lib/abis/TextResolver.d.ts +16 -0
  47. package/lib/abis/TextResolver.js +16 -0
  48. package/lib/abis/TextResolver.js.map +1 -0
  49. package/lib/abis/TokenizedVaultV2.d.ts +1354 -0
  50. package/lib/abis/TokenizedVaultV2.js +1028 -0
  51. package/lib/abis/TokenizedVaultV2.js.map +1 -0
  52. package/lib/abis/TokenizedVaultV2Receipt.d.ts +1568 -0
  53. package/lib/abis/TokenizedVaultV2Receipt.js +1061 -0
  54. package/lib/abis/TokenizedVaultV2Receipt.js.map +1 -0
  55. package/lib/abis/TokenizedVaultV2WhitelistedAssets.d.ts +274 -0
  56. package/lib/abis/TokenizedVaultV2WhitelistedAssets.js +167 -0
  57. package/lib/abis/TokenizedVaultV2WhitelistedAssets.js.map +1 -0
  58. package/lib/abis/UniversalResolverResolve.d.ts +69 -0
  59. package/lib/abis/UniversalResolverResolve.js +35 -0
  60. package/lib/abis/UniversalResolverResolve.js.map +1 -0
  61. package/lib/abis/UniversalSignatureValidator.d.ts +17 -0
  62. package/lib/abis/UniversalSignatureValidator.js +27 -0
  63. package/lib/abis/UniversalSignatureValidator.js.map +1 -0
  64. package/lib/abis/WrapperAdapter.d.ts +60 -0
  65. package/lib/abis/WrapperAdapter.js +150 -0
  66. package/lib/abis/WrapperAdapter.js.map +1 -0
  67. package/lib/abis/index.d.ts +19 -0
  68. package/lib/abis/index.js +36 -0
  69. package/lib/abis/index.js.map +1 -0
  70. package/lib/adapters/evm/core.actions.d.ts +9 -0
  71. package/lib/adapters/evm/core.actions.js +51 -0
  72. package/lib/adapters/evm/core.actions.js.map +1 -0
  73. package/lib/adapters/evm/getters.d.ts +4 -0
  74. package/lib/adapters/evm/getters.js +163 -0
  75. package/lib/adapters/evm/getters.js.map +1 -0
  76. package/lib/adapters/evm/index.d.ts +19 -0
  77. package/lib/adapters/evm/index.js +55 -0
  78. package/lib/adapters/evm/index.js.map +1 -0
  79. package/lib/adapters/evm/read.actions.d.ts +3 -0
  80. package/lib/adapters/evm/read.actions.js +39 -0
  81. package/lib/adapters/evm/read.actions.js.map +1 -0
  82. package/lib/adapters/evm/utils.d.ts +28 -0
  83. package/lib/adapters/evm/utils.js +336 -0
  84. package/lib/adapters/evm/utils.js.map +1 -0
  85. package/lib/adapters/evm/vaults.actions.d.ts +10 -0
  86. package/lib/adapters/evm/vaults.actions.js +97 -0
  87. package/lib/adapters/evm/vaults.actions.js.map +1 -0
  88. package/lib/adapters/solana/actions.d.ts +20 -0
  89. package/lib/adapters/solana/actions.js +225 -0
  90. package/lib/adapters/solana/actions.js.map +1 -0
  91. package/lib/adapters/solana/class.d.ts +45 -0
  92. package/lib/adapters/solana/class.js +135 -0
  93. package/lib/adapters/solana/class.js.map +1 -0
  94. package/lib/adapters/solana/constants.d.ts +25 -0
  95. package/lib/adapters/solana/constants.js +32 -0
  96. package/lib/adapters/solana/constants.js.map +1 -0
  97. package/lib/adapters/solana/getters.d.ts +3 -0
  98. package/lib/adapters/solana/getters.js +126 -0
  99. package/lib/adapters/solana/getters.js.map +1 -0
  100. package/lib/adapters/solana/idl/vault-idl.d.ts +338 -0
  101. package/lib/adapters/solana/idl/vault-idl.js +1075 -0
  102. package/lib/adapters/solana/idl/vault-idl.js.map +1 -0
  103. package/lib/adapters/solana/index.d.ts +136 -0
  104. package/lib/adapters/solana/index.js +174 -0
  105. package/lib/adapters/solana/index.js.map +1 -0
  106. package/lib/adapters/solana/types.d.ts +58 -0
  107. package/lib/adapters/solana/types.js +3 -0
  108. package/lib/adapters/solana/types.js.map +1 -0
  109. package/lib/adapters/solana/utils.d.ts +104 -0
  110. package/lib/adapters/solana/utils.js +380 -0
  111. package/lib/adapters/solana/utils.js.map +1 -0
  112. package/lib/adapters/solana/vault-idl.d.ts +338 -0
  113. package/lib/adapters/solana/vault-idl.js +1075 -0
  114. package/lib/adapters/solana/vault-idl.js.map +1 -0
  115. package/lib/adapters/solana/vault.actions.d.ts +18 -0
  116. package/lib/adapters/solana/vault.actions.js +235 -0
  117. package/lib/adapters/solana/vault.actions.js.map +1 -0
  118. package/lib/adapters/sui/index.d.ts +0 -0
  119. package/lib/adapters/sui/index.js +1 -0
  120. package/lib/adapters/sui/index.js.map +1 -0
  121. package/lib/core/auth/index.d.ts +1 -0
  122. package/lib/core/auth/index.js +18 -0
  123. package/lib/core/auth/index.js.map +1 -0
  124. package/lib/core/auth/verify.d.ts +2 -0
  125. package/lib/core/auth/verify.js +21 -0
  126. package/lib/core/auth/verify.js.map +1 -0
  127. package/lib/core/base-class.d.ts +34 -0
  128. package/lib/core/base-class.js +55 -0
  129. package/lib/core/base-class.js.map +1 -0
  130. package/lib/core/base.class.d.ts +34 -0
  131. package/lib/core/base.class.js +61 -0
  132. package/lib/core/base.class.js.map +1 -0
  133. package/lib/core/constants.d.ts +86 -0
  134. package/lib/core/constants.js +146 -0
  135. package/lib/core/constants.js.map +1 -0
  136. package/lib/core/core.helpers.d.ts +23 -0
  137. package/lib/core/core.helpers.js +210 -0
  138. package/lib/core/core.helpers.js.map +1 -0
  139. package/lib/core/fetcher.d.ts +22 -0
  140. package/lib/core/fetcher.js +259 -0
  141. package/lib/core/fetcher.js.map +1 -0
  142. package/lib/core/helpers.core.d.ts +23 -0
  143. package/lib/core/helpers.core.js +210 -0
  144. package/lib/core/helpers.core.js.map +1 -0
  145. package/lib/core/helpers.d.ts +23 -0
  146. package/lib/core/helpers.js +210 -0
  147. package/lib/core/helpers.js.map +1 -0
  148. package/lib/core/helpers.web3.d.ts +26 -0
  149. package/lib/core/helpers.web3.js +315 -0
  150. package/lib/core/helpers.web3.js.map +1 -0
  151. package/lib/core/index.d.ts +9 -0
  152. package/lib/core/index.js +26 -0
  153. package/lib/core/index.js.map +1 -0
  154. package/lib/core/logger/index.d.ts +12 -0
  155. package/lib/core/logger/index.js +51 -0
  156. package/lib/core/logger/index.js.map +1 -0
  157. package/lib/core/logger/slack.d.ts +12 -0
  158. package/lib/core/logger/slack.js +49 -0
  159. package/lib/core/logger/slack.js.map +1 -0
  160. package/lib/core/read.actions.d.ts +3 -0
  161. package/lib/core/read.actions.js +39 -0
  162. package/lib/core/read.actions.js.map +1 -0
  163. package/lib/core/web3.helpers.d.ts +28 -0
  164. package/lib/core/web3.helpers.js +336 -0
  165. package/lib/core/web3.helpers.js.map +1 -0
  166. package/lib/core/write.actions.d.ts +9 -0
  167. package/lib/core/write.actions.js +51 -0
  168. package/lib/core/write.actions.js.map +1 -0
  169. package/lib/modules/vaults/admin-actions.d.ts +0 -0
  170. package/lib/modules/vaults/admin-actions.js +1 -0
  171. package/lib/modules/vaults/admin-actions.js.map +1 -0
  172. package/lib/modules/vaults/constants.d.ts +63 -0
  173. package/lib/modules/vaults/constants.js +190 -0
  174. package/lib/modules/vaults/constants.js.map +1 -0
  175. package/lib/modules/vaults/getters.d.ts +38 -0
  176. package/lib/modules/vaults/getters.js +636 -0
  177. package/lib/modules/vaults/getters.js.map +1 -0
  178. package/lib/modules/vaults/index.d.ts +84 -0
  179. package/lib/modules/vaults/index.js +498 -0
  180. package/lib/modules/vaults/index.js.map +1 -0
  181. package/lib/modules/vaults/main.d.ts +118 -0
  182. package/lib/modules/vaults/main.js +590 -0
  183. package/lib/modules/vaults/main.js.map +1 -0
  184. package/lib/modules/vaults/user-actions.d.ts +19 -0
  185. package/lib/modules/vaults/user-actions.js +172 -0
  186. package/lib/modules/vaults/user-actions.js.map +1 -0
  187. package/lib/modules/vaults/user.actions.d.ts +10 -0
  188. package/lib/modules/vaults/user.actions.js +95 -0
  189. package/lib/modules/vaults/user.actions.js.map +1 -0
  190. package/lib/modules/vaults/utils.d.ts +116 -0
  191. package/lib/modules/vaults/utils.js +395 -0
  192. package/lib/modules/vaults/utils.js.map +1 -0
  193. package/lib/modules/vaults/vault.actions.d.ts +10 -0
  194. package/lib/modules/vaults/vault.actions.js +95 -0
  195. package/lib/modules/vaults/vault.actions.js.map +1 -0
  196. package/lib/services/auth/index.d.ts +1 -0
  197. package/lib/services/auth/index.js +18 -0
  198. package/lib/services/auth/index.js.map +1 -0
  199. package/lib/services/auth/verify.d.ts +2 -0
  200. package/lib/services/auth/verify.js +20 -0
  201. package/lib/services/auth/verify.js.map +1 -0
  202. package/lib/services/coingecko/fetcher.d.ts +1 -0
  203. package/lib/services/coingecko/fetcher.js +36 -0
  204. package/lib/services/coingecko/fetcher.js.map +1 -0
  205. package/lib/services/coingecko/index.d.ts +2 -0
  206. package/lib/services/coingecko/index.js +19 -0
  207. package/lib/services/coingecko/index.js.map +1 -0
  208. package/lib/services/coingecko/utils.d.ts +1 -0
  209. package/lib/services/coingecko/utils.js +24 -0
  210. package/lib/services/coingecko/utils.js.map +1 -0
  211. package/lib/services/debank/fetcher.d.ts +2 -0
  212. package/lib/services/debank/fetcher.js +16 -0
  213. package/lib/services/debank/fetcher.js.map +1 -0
  214. package/lib/services/debank/index.d.ts +2 -0
  215. package/lib/services/debank/index.js +19 -0
  216. package/lib/services/debank/index.js.map +1 -0
  217. package/lib/services/debank/utils.d.ts +32 -0
  218. package/lib/services/debank/utils.js +229 -0
  219. package/lib/services/debank/utils.js.map +1 -0
  220. package/lib/services/index.d.ts +4 -0
  221. package/lib/services/index.js +21 -0
  222. package/lib/services/index.js.map +1 -0
  223. package/lib/services/logger/index.d.ts +12 -0
  224. package/lib/services/logger/index.js +51 -0
  225. package/lib/services/logger/index.js.map +1 -0
  226. package/lib/services/logger/slack.d.ts +12 -0
  227. package/lib/services/logger/slack.js +48 -0
  228. package/lib/services/logger/slack.js.map +1 -0
  229. package/lib/services/solana/actions.d.ts +20 -0
  230. package/lib/services/solana/actions.js +225 -0
  231. package/lib/services/solana/actions.js.map +1 -0
  232. package/lib/services/solana/class.d.ts +45 -0
  233. package/lib/services/solana/class.js +135 -0
  234. package/lib/services/solana/class.js.map +1 -0
  235. package/lib/services/solana/constants.d.ts +25 -0
  236. package/lib/services/solana/constants.js +32 -0
  237. package/lib/services/solana/constants.js.map +1 -0
  238. package/lib/services/solana/index.d.ts +84 -0
  239. package/lib/services/solana/index.js +50 -0
  240. package/lib/services/solana/index.js.map +1 -0
  241. package/lib/services/solana/types.d.ts +58 -0
  242. package/lib/services/solana/types.js +3 -0
  243. package/lib/services/solana/types.js.map +1 -0
  244. package/lib/services/solana/utils.d.ts +96 -0
  245. package/lib/services/solana/utils.js +355 -0
  246. package/lib/services/solana/utils.js.map +1 -0
  247. package/lib/services/solana/vault-idl.d.ts +338 -0
  248. package/lib/services/solana/vault-idl.js +1075 -0
  249. package/lib/services/solana/vault-idl.js.map +1 -0
  250. package/lib/services/subgraph/fetcher.d.ts +2 -0
  251. package/lib/services/subgraph/fetcher.js +58 -0
  252. package/lib/services/subgraph/fetcher.js.map +1 -0
  253. package/lib/services/subgraph/index.d.ts +2 -0
  254. package/lib/services/subgraph/index.js +19 -0
  255. package/lib/services/subgraph/index.js.map +1 -0
  256. package/lib/services/subgraph/vaults.d.ts +10 -0
  257. package/lib/services/subgraph/vaults.js +473 -0
  258. package/lib/services/subgraph/vaults.js.map +1 -0
  259. package/lib/types/index.d.ts +8 -0
  260. package/lib/types/index.js +24 -0
  261. package/lib/types/index.js.map +1 -0
  262. package/lib/types/pools.d.ts +141 -0
  263. package/lib/types/pools.js +3 -0
  264. package/lib/types/pools.js.map +1 -0
  265. package/lib/types/staking.d.ts +28 -0
  266. package/lib/types/staking.js +3 -0
  267. package/lib/types/staking.js.map +1 -0
  268. package/lib/types/subgraph.d.ts +45 -0
  269. package/lib/types/subgraph.js +3 -0
  270. package/lib/types/subgraph.js.map +1 -0
  271. package/lib/types/user.d.ts +1 -0
  272. package/lib/types/user.js +3 -0
  273. package/lib/types/user.js.map +1 -0
  274. package/lib/types/vaults.d.ts +164 -0
  275. package/lib/types/vaults.js +3 -0
  276. package/lib/types/vaults.js.map +1 -0
  277. package/lib/types/web3.d.ts +24 -0
  278. package/lib/types/web3.js +3 -0
  279. package/lib/types/web3.js.map +1 -0
  280. package/lib/types/webserver.d.ts +475 -0
  281. package/lib/types/webserver.js +3 -0
  282. package/lib/types/webserver.js.map +1 -0
  283. package/lib/utils/base-class.d.ts +34 -0
  284. package/lib/utils/base-class.js +55 -0
  285. package/lib/utils/base-class.js.map +1 -0
  286. package/lib/utils/constants/august.d.ts +57 -0
  287. package/lib/utils/constants/august.js +61 -0
  288. package/lib/utils/constants/august.js.map +1 -0
  289. package/lib/utils/constants/fallbacks.d.ts +3 -0
  290. package/lib/utils/constants/fallbacks.js +26 -0
  291. package/lib/utils/constants/fallbacks.js.map +1 -0
  292. package/lib/utils/constants/index.d.ts +3 -0
  293. package/lib/utils/constants/index.js +20 -0
  294. package/lib/utils/constants/index.js.map +1 -0
  295. package/lib/utils/constants/web3.d.ts +32 -0
  296. package/lib/utils/constants/web3.js +101 -0
  297. package/lib/utils/constants/web3.js.map +1 -0
  298. package/lib/utils/fetcher.d.ts +25 -0
  299. package/lib/utils/fetcher.js +334 -0
  300. package/lib/utils/fetcher.js.map +1 -0
  301. package/lib/utils/helpers/array.d.ts +6 -0
  302. package/lib/utils/helpers/array.js +40 -0
  303. package/lib/utils/helpers/array.js.map +1 -0
  304. package/lib/utils/helpers/datetime.d.ts +5 -0
  305. package/lib/utils/helpers/datetime.js +32 -0
  306. package/lib/utils/helpers/datetime.js.map +1 -0
  307. package/lib/utils/helpers/formatters.d.ts +8 -0
  308. package/lib/utils/helpers/formatters.js +113 -0
  309. package/lib/utils/helpers/formatters.js.map +1 -0
  310. package/lib/utils/helpers/index.d.ts +6 -0
  311. package/lib/utils/helpers/index.js +23 -0
  312. package/lib/utils/helpers/index.js.map +1 -0
  313. package/lib/utils/helpers/responses.d.ts +32 -0
  314. package/lib/utils/helpers/responses.js +229 -0
  315. package/lib/utils/helpers/responses.js.map +1 -0
  316. package/lib/utils/helpers/verify-keys.d.ts +2 -0
  317. package/lib/utils/helpers/verify-keys.js +21 -0
  318. package/lib/utils/helpers/verify-keys.js.map +1 -0
  319. package/lib/utils/helpers/web3.d.ts +27 -0
  320. package/lib/utils/helpers/web3.js +339 -0
  321. package/lib/utils/helpers/web3.js.map +1 -0
  322. package/lib/utils/index.d.ts +5 -0
  323. package/lib/utils/index.js +22 -0
  324. package/lib/utils/index.js.map +1 -0
  325. package/lib/utils/vaults.d.ts +53 -0
  326. package/lib/utils/vaults.js +156 -0
  327. package/lib/utils/vaults.js.map +1 -0
  328. package/lib/vaults/admin-actions.d.ts +0 -0
  329. package/lib/vaults/admin-actions.js +1 -0
  330. package/lib/vaults/admin-actions.js.map +1 -0
  331. package/lib/vaults/getters.d.ts +38 -0
  332. package/lib/vaults/getters.js +760 -0
  333. package/lib/vaults/getters.js.map +1 -0
  334. package/lib/vaults/index.d.ts +4 -0
  335. package/lib/vaults/index.js +21 -0
  336. package/lib/vaults/index.js.map +1 -0
  337. package/lib/vaults/main.d.ts +118 -0
  338. package/lib/vaults/main.js +591 -0
  339. package/lib/vaults/main.js.map +1 -0
  340. package/lib/vaults/rpc-config.d.ts +4 -0
  341. package/lib/vaults/rpc-config.js +27 -0
  342. package/lib/vaults/rpc-config.js.map +1 -0
  343. package/lib/vaults/subgraph.d.ts +10 -0
  344. package/lib/vaults/subgraph.js +470 -0
  345. package/lib/vaults/subgraph.js.map +1 -0
  346. package/lib/vaults/user-actions.d.ts +19 -0
  347. package/lib/vaults/user-actions.js +172 -0
  348. package/lib/vaults/user-actions.js.map +1 -0
  349. package/lib/vaults/utils.d.ts +121 -0
  350. package/lib/vaults/utils.js +414 -0
  351. package/lib/vaults/utils.js.map +1 -0
  352. package/package.json +7 -7
@@ -0,0 +1,172 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.allowance = allowance;
4
+ exports.approve = approve;
5
+ exports.deposit = deposit;
6
+ exports.requestRedeem = requestRedeem;
7
+ exports.redeem = redeem;
8
+ const utils_1 = require("../utils");
9
+ const abis_1 = require("../abis");
10
+ const abis_2 = require("../abis");
11
+ async function allowance(signer, options) {
12
+ const { wallet, pool } = options;
13
+ const [goodWallet, goodPool] = [
14
+ (0, utils_1.checkAddress)(wallet, console, 'wallet'),
15
+ (0, utils_1.checkAddress)(pool, console),
16
+ ];
17
+ if (!goodWallet || !goodPool)
18
+ return;
19
+ try {
20
+ const poolContract = (0, utils_1.createContract)({
21
+ address: pool,
22
+ abi: abis_2.ABI_LENDING_POOLS,
23
+ provider: signer,
24
+ });
25
+ const [asset, decimals] = await Promise.all([
26
+ poolContract.asset(),
27
+ poolContract.decimals(),
28
+ ]);
29
+ const depositTokenContract = (0, utils_1.createContract)({
30
+ address: asset,
31
+ abi: abis_1.ABI_ERC20,
32
+ provider: signer,
33
+ });
34
+ const _allowance = (await depositTokenContract.allowance(wallet, pool));
35
+ const normalized = (0, utils_1.toNormalizedBn)(_allowance, decimals);
36
+ console.log('#allowance:', normalized);
37
+ return normalized;
38
+ }
39
+ catch (e) {
40
+ console.error('#allowance', e);
41
+ }
42
+ }
43
+ async function approve(signer, options) {
44
+ const { wallet, pool, wait, amount } = options;
45
+ const [goodWallet, goodPool] = [
46
+ (0, utils_1.checkAddress)(wallet, console, 'wallet'),
47
+ (0, utils_1.checkAddress)(pool, console),
48
+ ];
49
+ if (!goodWallet || !goodPool || !amount)
50
+ return;
51
+ const _allowance = await allowance(signer, { pool, wallet });
52
+ if (!_allowance || _allowance?.raw === '0') {
53
+ try {
54
+ const poolContract = (0, utils_1.createContract)({
55
+ address: pool,
56
+ provider: signer,
57
+ abi: abis_2.ABI_LENDING_POOLS,
58
+ });
59
+ const [asset, decimals] = await Promise.all([
60
+ poolContract.asset(),
61
+ poolContract.decimals(),
62
+ ]);
63
+ const normalizedAmt = (0, utils_1.toNormalizedBn)(amount, decimals);
64
+ const depositTokenContract = (0, utils_1.createContract)({
65
+ address: asset,
66
+ abi: abis_1.ABI_ERC20,
67
+ provider: signer,
68
+ });
69
+ const approvalTx = await depositTokenContract
70
+ .connect(signer)
71
+ .approve(pool, normalizedAmt.raw);
72
+ if (wait)
73
+ await approvalTx.wait();
74
+ console.log('#approve::tx_hash:', approvalTx?.hash);
75
+ return approvalTx?.hash;
76
+ }
77
+ catch (e) {
78
+ console.error('#approve:', e);
79
+ }
80
+ }
81
+ else {
82
+ console.log('#approve::allowance:', _allowance.normalized, '\n#approve::amount:', amount);
83
+ }
84
+ }
85
+ async function deposit(signer, options) {
86
+ const { wallet, pool, wait, amount } = options;
87
+ const [goodWallet, goodPool] = [
88
+ (0, utils_1.checkAddress)(wallet, console, 'wallet'),
89
+ (0, utils_1.checkAddress)(pool, console),
90
+ ];
91
+ if (!goodWallet || !goodPool)
92
+ return;
93
+ await approve(signer, { pool, wallet, amount, wait: true });
94
+ try {
95
+ const poolContract = (0, utils_1.createContract)({
96
+ address: pool,
97
+ provider: signer,
98
+ abi: abis_2.ABI_LENDING_POOLS,
99
+ });
100
+ const [decimals] = await Promise.all([
101
+ poolContract.decimals(),
102
+ ]);
103
+ const normalizedAmt = (0, utils_1.toNormalizedBn)(amount, decimals);
104
+ const depositTx = await poolContract
105
+ .connect(signer)
106
+ .deposit(normalizedAmt.raw, wallet);
107
+ if (wait)
108
+ await depositTx.wait();
109
+ console.log('#deposit::tx_hash:', depositTx?.hash);
110
+ return depositTx?.hash;
111
+ }
112
+ catch (e) {
113
+ console.error('#deposit:', e);
114
+ }
115
+ }
116
+ async function requestRedeem(signer, options) {
117
+ const { wallet, pool, wait, amount } = options;
118
+ const [goodWallet, goodPool] = [
119
+ (0, utils_1.checkAddress)(wallet, console, 'wallet'),
120
+ (0, utils_1.checkAddress)(pool, console),
121
+ ];
122
+ if (!goodWallet || !goodPool)
123
+ return;
124
+ try {
125
+ const poolContract = (0, utils_1.createContract)({
126
+ address: pool,
127
+ provider: signer,
128
+ abi: abis_2.ABI_LENDING_POOLS,
129
+ });
130
+ const [decimals] = await Promise.all([
131
+ poolContract.decimals(),
132
+ ]);
133
+ const normalizedAmt = (0, utils_1.toNormalizedBn)(amount, decimals);
134
+ const requestRedeemTx = await poolContract
135
+ .connect(signer)
136
+ .requestRedeem(normalizedAmt.raw, wallet, wallet);
137
+ if (wait)
138
+ await requestRedeemTx.wait();
139
+ console.log('#requestRedeem::tx_hash:', requestRedeemTx?.hash);
140
+ return requestRedeemTx?.hash;
141
+ }
142
+ catch (e) {
143
+ console.error('#requestRedeem:', e);
144
+ }
145
+ }
146
+ async function redeem(signer, options) {
147
+ const { wallet, pool, wait, year, day, month, receiverIndex } = options;
148
+ const [goodWallet, goodPool] = [
149
+ (0, utils_1.checkAddress)(wallet, console, 'wallet'),
150
+ (0, utils_1.checkAddress)(pool, console),
151
+ ];
152
+ if (!(goodWallet && goodPool && year && day && month && receiverIndex))
153
+ return;
154
+ try {
155
+ const poolContract = (0, utils_1.createContract)({
156
+ address: pool,
157
+ provider: signer,
158
+ abi: abis_2.ABI_LENDING_POOLS,
159
+ });
160
+ const redeemTx = await poolContract
161
+ .connect(signer)
162
+ .redeem(year, month, day, receiverIndex, wallet);
163
+ if (wait)
164
+ await redeemTx.wait();
165
+ console.log('#redeem::tx_hash:', redeemTx?.hash);
166
+ return redeemTx?.hash;
167
+ }
168
+ catch (e) {
169
+ console.error('#redeem:', e);
170
+ }
171
+ }
172
+ //# sourceMappingURL=user-actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-actions.js","sourceRoot":"","sources":["../../src.ts/vaults/user-actions.ts"],"names":[],"mappings":";;AAuBA,8BAuCC;AAQD,0BAoDC;AAQD,0BAoCC;AAQD,sCAiCC;AASD,wBAkCC;AA1PD,oCAIkB;AAClB,kCAAoC;AAEpC,kCAA4C;AAgBrC,KAAK,UAAU,SAAS,CAC7B,MAAkC,EAClC,OAA0B;IAE1B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IACjC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG;QAC7B,IAAA,oBAAY,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;QACvC,IAAA,oBAAY,EAAC,IAAI,EAAE,OAAO,CAAC;KAC5B,CAAC;IACF,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ;QAAE,OAAO;IAErC,IAAI,CAAC;QAEH,MAAM,YAAY,GAAG,IAAA,sBAAc,EAAC;YAClC,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,wBAAiB;YACtB,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC1C,YAAY,CAAC,KAAK,EAAqB;YACvC,YAAY,CAAC,QAAQ,EAAqB;SAC3C,CAAC,CAAC;QAEH,MAAM,oBAAoB,GAAG,IAAA,sBAAc,EAAC;YAC1C,OAAO,EAAE,KAAK;YACd,GAAG,EAAE,gBAAS;YACd,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,CAAC,MAAM,oBAAoB,CAAC,SAAS,CACtD,MAAM,EACN,IAAI,CACL,CAAW,CAAC;QACb,MAAM,UAAU,GAAG,IAAA,sBAAc,EAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACvC,OAAO,UAAU,CAAC;IACpB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC;AACH,CAAC;AAQM,KAAK,UAAU,OAAO,CAC3B,MAAuB,EACvB,OAA0B;IAE1B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC/C,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG;QAC7B,IAAA,oBAAY,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;QACvC,IAAA,oBAAY,EAAC,IAAI,EAAE,OAAO,CAAC;KAC5B,CAAC;IACF,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM;QAAE,OAAO;IAGhD,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAE7D,IAAI,CAAC,UAAU,IAAI,UAAU,EAAE,GAAG,KAAK,GAAG,EAAE,CAAC;QAC3C,IAAI,CAAC;YAEH,MAAM,YAAY,GAAG,IAAA,sBAAc,EAAC;gBAClC,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,MAAM;gBAChB,GAAG,EAAE,wBAAiB;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC1C,YAAY,CAAC,KAAK,EAAqB;gBACvC,YAAY,CAAC,QAAQ,EAAqB;aAC3C,CAAC,CAAC;YAEH,MAAM,aAAa,GAAG,IAAA,sBAAc,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAEvD,MAAM,oBAAoB,GAAG,IAAA,sBAAc,EAAC;gBAC1C,OAAO,EAAE,KAAK;gBACd,GAAG,EAAE,gBAAS;gBACd,QAAQ,EAAE,MAAM;aACjB,CAAwB,CAAC;YAC1B,MAAM,UAAU,GAAG,MAAM,oBAAoB;iBAC1C,OAAO,CAAC,MAAM,CAAC;iBACf,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;YAEpC,IAAI,IAAI;gBAAE,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;YACpD,OAAO,UAAU,EAAE,IAAc,CAAC;QACpC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CACT,sBAAsB,EACtB,UAAU,CAAC,UAAU,EACrB,qBAAqB,EACrB,MAAM,CACP,CAAC;IACJ,CAAC;AACH,CAAC;AAQM,KAAK,UAAU,OAAO,CAC3B,MAAuB,EACvB,OAA0B;IAE1B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC/C,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG;QAC7B,IAAA,oBAAY,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;QACvC,IAAA,oBAAY,EAAC,IAAI,EAAE,OAAO,CAAC;KAC5B,CAAC;IACF,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ;QAAE,OAAO;IAGrC,MAAM,OAAO,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAE5D,IAAI,CAAC;QAEH,MAAM,YAAY,GAAG,IAAA,sBAAc,EAAC;YAClC,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,MAAM;YAChB,GAAG,EAAE,wBAAiB;SACvB,CAAwB,CAAC;QAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACnC,YAAY,CAAC,QAAQ,EAAqB;SAC3C,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,IAAA,sBAAc,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEvD,MAAM,SAAS,GAAG,MAAM,YAAY;aACjC,OAAO,CAAC,MAAM,CAAC;aACf,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACtC,IAAI,IAAI;YAAE,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACnD,OAAO,SAAS,EAAE,IAAc,CAAC;IACnC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAQM,KAAK,UAAU,aAAa,CACjC,MAAuB,EACvB,OAA0B;IAE1B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC/C,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG;QAC7B,IAAA,oBAAY,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;QACvC,IAAA,oBAAY,EAAC,IAAI,EAAE,OAAO,CAAC;KAC5B,CAAC;IACF,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ;QAAE,OAAO;IAErC,IAAI,CAAC;QAEH,MAAM,YAAY,GAAG,IAAA,sBAAc,EAAC;YAClC,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,MAAM;YAChB,GAAG,EAAE,wBAAiB;SACvB,CAAwB,CAAC;QAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACnC,YAAY,CAAC,QAAQ,EAAqB;SAC3C,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,IAAA,sBAAc,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEvD,MAAM,eAAe,GAAG,MAAM,YAAY;aACvC,OAAO,CAAC,MAAM,CAAC;aACf,aAAa,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACpD,IAAI,IAAI;YAAE,MAAM,eAAe,CAAC,IAAI,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;QAC/D,OAAO,eAAe,EAAE,IAAc,CAAC;IACzC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AASM,KAAK,UAAU,MAAM,CAC1B,MAAuB,EACvB,OAKC;IAED,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IACxE,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG;QAC7B,IAAA,oBAAY,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;QACvC,IAAA,oBAAY,EAAC,IAAI,EAAE,OAAO,CAAC;KAC5B,CAAC;IACF,IAAI,CAAC,CAAC,UAAU,IAAI,QAAQ,IAAI,IAAI,IAAI,GAAG,IAAI,KAAK,IAAI,aAAa,CAAC;QACpE,OAAO;IAET,IAAI,CAAC;QAEH,MAAM,YAAY,GAAG,IAAA,sBAAc,EAAC;YAClC,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,MAAM;YAChB,GAAG,EAAE,wBAAiB;SACvB,CAAwB,CAAC;QAE1B,MAAM,QAAQ,GAAG,MAAM,YAAY;aAChC,OAAO,CAAC,MAAM,CAAC;aACf,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;QACnD,IAAI,IAAI;YAAE,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjD,OAAO,QAAQ,EAAE,IAAc,CAAC;IAClC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC"}
@@ -0,0 +1,121 @@
1
+ import { IAddress, IContractRunner, INormalizedNumber, IPoolFunctions, ITokenizedVault, IVault } from '../types';
2
+ export declare const VAULT_AgoraAUSD = "0x828BC5895b78b2fb591018Ca5bDC2064742D6D0f";
3
+ export declare const SUBACCOUNT_CALEB = "0xFff71B0b66f076C60Fa2f176a34a6EA709ccF21B";
4
+ export declare const MULTI_ASSET_VAULTS: string[];
5
+ export declare function promiseSettle<T>(promises: Promise<T>[], maxRetries?: number, baseDelay?: number): Promise<T[]>;
6
+ export declare const filterOutBySize: (usdAmount: number) => boolean;
7
+ export declare const determineBlockCutoff: (chain: number) => 120000 | 150000;
8
+ export declare const determineBlockSkipInternal: (chain: number) => 8000 | 50000;
9
+ export declare const POOL_FUNCTIONS: IPoolFunctions[];
10
+ export declare function getVaultRewards(tokenizedVault: ITokenizedVault): {
11
+ upshiftPoints: string;
12
+ latestUpshiftPointMultiplier: number;
13
+ upshiftPointsMultipliers: {
14
+ timestamp: number;
15
+ multiplier: number;
16
+ }[];
17
+ additionalPoints: string[];
18
+ };
19
+ export declare function getIdleAssets(provider: IContractRunner, vaultAddress: IAddress, underlying: IAddress, totalAssets: INormalizedNumber): Promise<bigint>;
20
+ export declare function buildFormattedVault(provider: IContractRunner, tokenizedVault: ITokenizedVault, contractCalls: Record<IPoolFunctions, string | number | INormalizedNumber | boolean>): Promise<IVault>;
21
+ export declare function fetchVaultWithFallback<T>(vaultAddress: string, fetchFn: () => Promise<T>, options?: {
22
+ maxRetries?: number;
23
+ baseDelay?: number;
24
+ fallbackStrategies?: Array<() => Promise<T>>;
25
+ timeout?: number;
26
+ }): Promise<{
27
+ success: boolean;
28
+ data?: T;
29
+ error?: Error;
30
+ strategy: string;
31
+ }>;
32
+ export declare function fetchVaultsBatch<T>(vaults: Array<{
33
+ address: string;
34
+ fetchFn: () => Promise<T>;
35
+ }>, options?: {
36
+ maxRetries?: number;
37
+ baseDelay?: number;
38
+ batchSize?: number;
39
+ parallelLimit?: number;
40
+ }): Promise<{
41
+ successful: Array<{
42
+ index: number;
43
+ data: T;
44
+ strategy: string;
45
+ }>;
46
+ failed: Array<{
47
+ index: number;
48
+ error: Error;
49
+ address: string;
50
+ }>;
51
+ totalAttempted: number;
52
+ successRate: number;
53
+ }>;
54
+ export declare function fetchVaultsComprehensive<T>(vaults: Array<{
55
+ address: string;
56
+ chain: number;
57
+ }>, fetchFn: (vault: {
58
+ address: string;
59
+ chain: number;
60
+ fallbackRpc?: string;
61
+ minimal?: boolean;
62
+ }) => Promise<T>, options?: {
63
+ maxRetries?: number;
64
+ baseDelay?: number;
65
+ batchSize?: number;
66
+ parallelLimit?: number;
67
+ includeClosed?: boolean;
68
+ includeInvisible?: boolean;
69
+ fallbackRpcUrls?: Record<number, string[]>;
70
+ timeout?: number;
71
+ }): Promise<{
72
+ successful: Array<{
73
+ index: number;
74
+ data: T;
75
+ strategy: string;
76
+ attempts: number;
77
+ }>;
78
+ failed: Array<{
79
+ index: number;
80
+ error: Error;
81
+ address: string;
82
+ chain: number;
83
+ attempts: number;
84
+ }>;
85
+ totalAttempted: number;
86
+ successRate: number;
87
+ coverageReport: {
88
+ totalVaults: number;
89
+ successfulVaults: number;
90
+ failedVaults: number;
91
+ closedVaults: number;
92
+ invisibleVaults: number;
93
+ rpcFailures: Record<number, number>;
94
+ };
95
+ }>;
96
+ export declare function filterVaultsIntelligently<T extends {
97
+ status?: string;
98
+ isVisible?: boolean;
99
+ is_visible?: boolean;
100
+ }>(vaults: (T | null)[], options?: {
101
+ includeClosed?: boolean;
102
+ includeInvisible?: boolean;
103
+ includeNull?: boolean;
104
+ minStatus?: string[];
105
+ }): {
106
+ active: T[];
107
+ closed: T[];
108
+ invisible: T[];
109
+ failed: Array<{
110
+ index: number;
111
+ reason: string;
112
+ }>;
113
+ summary: {
114
+ total: number;
115
+ active: number;
116
+ closed: number;
117
+ invisible: number;
118
+ failed: number;
119
+ successRate: number;
120
+ };
121
+ };