@gearbox-protocol/sdk 16.0.0-next.21 → 16.0.0-next.23

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 (607) hide show
  1. package/dist/cjs/onchain/accounts/index.js +5 -0
  2. package/dist/cjs/onchain/accounts/intents/maxWithdrawCollateral.js +2 -2
  3. package/dist/cjs/onchain/accounts/intents/open-strategy.js +7 -4
  4. package/dist/cjs/onchain/accounts/intents/realize.js +10 -6
  5. package/dist/cjs/onchain/accounts/intents/tail.js +3 -2
  6. package/dist/cjs/onchain/accounts/intents/testing/market.js +1 -1
  7. package/dist/cjs/onchain/accounts/intents/testing/sdk-mock.js +18 -1
  8. package/dist/cjs/onchain/accounts/intents/tests/add-collateral.fixtures.js +4 -4
  9. package/dist/cjs/onchain/accounts/intents/tests/adjust-leverage.fixtures.js +15 -15
  10. package/dist/cjs/onchain/accounts/intents/tests/deposit.fixtures.js +13 -13
  11. package/dist/cjs/onchain/accounts/intents/tests/finish-decrease-leverage.fixtures.js +2 -2
  12. package/dist/cjs/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +2 -2
  13. package/dist/cjs/onchain/accounts/intents/tests/withdraw-asset.fixtures.js +4 -4
  14. package/dist/cjs/onchain/accounts/intents/tests/withdraw.fixtures.js +7 -7
  15. package/dist/cjs/onchain/accounts/intents/utils/adjust-state-to-snapshot.js +8 -5
  16. package/dist/cjs/onchain/accounts/intents/utils/common.js +2 -2
  17. package/dist/cjs/onchain/accounts/intents/utils/credit-account-slice.js +4 -4
  18. package/dist/cjs/onchain/accounts/intents/utils/quotas-for-update.js +2 -2
  19. package/dist/cjs/onchain/accounts/intents/view.js +2 -2
  20. package/dist/cjs/{common-utils/utils/creditAccount → onchain/accounts}/quota-utils.js +3 -3
  21. package/dist/cjs/onchain/index.js +12 -0
  22. package/dist/cjs/onchain/market/MarketSuite.js +15 -0
  23. package/dist/cjs/onchain/market/adapters/contracts/AbstractAdapter.js +2 -2
  24. package/dist/cjs/onchain/market/math.js +6 -2
  25. package/dist/cjs/onchain/pools/PoolService.js +25 -29
  26. package/dist/cjs/onchain/utils/index.js +7 -0
  27. package/dist/cjs/{common-utils → onchain}/utils/trace.js +1 -1
  28. package/dist/cjs/preview/index.js +3 -1
  29. package/dist/cjs/preview/preview/buildDelayedPreview.js +4 -5
  30. package/dist/cjs/preview/preview/previewAdjustCreditAccount.js +3 -3
  31. package/dist/cjs/preview/preview/previewCloseOrRepayCreditAccount.js +1 -1
  32. package/dist/cjs/preview/preview/previewOpenCreditAccount.js +7 -7
  33. package/dist/cjs/preview/trace/extractAdapterCallTraces.js +2 -2
  34. package/dist/cjs/preview/trace/findFacadeCalls.js +2 -2
  35. package/dist/cjs/preview/validate/checkOperation.js +47 -37
  36. package/dist/cjs/preview/validate/checkSimulation.js +3 -16
  37. package/dist/cjs/preview/validate/index.js +3 -1
  38. package/dist/cjs/rewards/rewards/api.js +0 -1
  39. package/dist/cjs/rewards/rewards/extra-apy.js +0 -1
  40. package/dist/cjs/sdk/execute/ExecuteApi.js +9 -6
  41. package/dist/cjs/sdk/prepare/PrepareApi.js +4 -1
  42. package/dist/esm/dev/AccountOpener.js +1 -1
  43. package/dist/esm/dev/withdrawalUtils.js +1 -1
  44. package/dist/esm/onchain/accounts/CreditAccountsServiceV310.js +2 -2
  45. package/dist/esm/onchain/accounts/index.js +2 -1
  46. package/dist/esm/onchain/accounts/intents/maxWithdrawCollateral.js +2 -2
  47. package/dist/esm/onchain/accounts/intents/open-strategy.js +7 -4
  48. package/dist/esm/onchain/accounts/intents/realize.js +10 -6
  49. package/dist/esm/onchain/accounts/intents/tail.js +3 -2
  50. package/dist/esm/onchain/accounts/intents/testing/market.js +1 -1
  51. package/dist/esm/onchain/accounts/intents/testing/sdk-mock.js +18 -1
  52. package/dist/esm/onchain/accounts/intents/tests/add-collateral.fixtures.js +4 -4
  53. package/dist/esm/onchain/accounts/intents/tests/adjust-leverage.fixtures.js +15 -15
  54. package/dist/esm/onchain/accounts/intents/tests/deposit.fixtures.js +13 -13
  55. package/dist/esm/onchain/accounts/intents/tests/finish-decrease-leverage.fixtures.js +2 -2
  56. package/dist/esm/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +2 -2
  57. package/dist/esm/onchain/accounts/intents/tests/withdraw-asset.fixtures.js +4 -4
  58. package/dist/esm/onchain/accounts/intents/tests/withdraw.fixtures.js +7 -7
  59. package/dist/esm/onchain/accounts/intents/utils/adjust-state-to-snapshot.js +8 -5
  60. package/dist/esm/onchain/accounts/intents/utils/common.js +2 -2
  61. package/dist/esm/onchain/accounts/intents/utils/credit-account-slice.js +4 -4
  62. package/dist/esm/onchain/accounts/intents/utils/quotas-for-update.js +1 -1
  63. package/dist/esm/onchain/accounts/intents/view.js +2 -2
  64. package/dist/esm/onchain/accounts/liquidations/LiquidationsService.js +1 -1
  65. package/dist/esm/{common-utils/utils/creditAccount → onchain/accounts}/quota-utils.js +3 -3
  66. package/dist/esm/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +1 -1
  67. package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +1 -1
  68. package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +1 -1
  69. package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +1 -1
  70. package/dist/esm/onchain/base/TokensMeta.js +3 -3
  71. package/dist/esm/onchain/chain/detectNetwork.js +1 -1
  72. package/dist/esm/onchain/core/createAddressProvider.js +1 -1
  73. package/dist/esm/onchain/index.js +3 -1
  74. package/dist/esm/onchain/market/MarketSuite.js +15 -0
  75. package/dist/esm/onchain/market/adapters/contracts/AbstractAdapter.js +1 -1
  76. package/dist/esm/onchain/market/adapters/contracts/AccountMigratorAdapterContract.js +1 -1
  77. package/dist/esm/onchain/market/adapters/contracts/ERC4626AdapterContract.js +1 -1
  78. package/dist/esm/onchain/market/credit/CreditFacadeV310BaseContract.js +1 -1
  79. package/dist/esm/onchain/market/math.js +6 -2
  80. package/dist/esm/onchain/market/pool/PoolV310Contract.js +1 -1
  81. package/dist/esm/onchain/market/zapper/IETHZapperContract.js +1 -1
  82. package/dist/esm/onchain/market/zapper/ZapperContract.js +1 -1
  83. package/dist/esm/onchain/pools/PoolService.js +26 -30
  84. package/dist/esm/onchain/utils/index.js +2 -1
  85. package/dist/esm/{common-utils → onchain}/utils/trace.js +1 -1
  86. package/dist/esm/onchain/utils/viem/simulateWithPriceUpdates.js +1 -1
  87. package/dist/esm/preview/index.js +2 -2
  88. package/dist/esm/preview/preview/buildDelayedPreview.js +4 -5
  89. package/dist/esm/preview/preview/previewAdjustCreditAccount.js +3 -3
  90. package/dist/esm/preview/preview/previewCloseOrRepayCreditAccount.js +1 -1
  91. package/dist/esm/preview/preview/previewOpenCreditAccount.js +7 -7
  92. package/dist/esm/preview/simulate/simulatePoolOperation.js +1 -1
  93. package/dist/esm/preview/trace/extractAdapterCallTraces.js +1 -1
  94. package/dist/esm/preview/trace/extractTransfers.js +1 -1
  95. package/dist/esm/preview/trace/findFacadeCalls.js +1 -1
  96. package/dist/esm/preview/validate/checkOperation.js +45 -37
  97. package/dist/esm/preview/validate/checkSimulation.js +5 -18
  98. package/dist/esm/preview/validate/index.js +2 -2
  99. package/dist/esm/rewards/rewards/api.js +0 -1
  100. package/dist/esm/rewards/rewards/extra-apy.js +0 -1
  101. package/dist/esm/sdk/execute/ExecuteApi.js +9 -6
  102. package/dist/esm/sdk/prepare/PrepareApi.js +4 -1
  103. package/dist/types/history/classifyMulticallOperations.d.ts +1 -1
  104. package/dist/types/model/index.d.ts +2 -2
  105. package/dist/types/model/previews.d.ts +59 -109
  106. package/dist/types/onchain/accounts/index.d.ts +2 -1
  107. package/dist/types/onchain/accounts/intents/open-strategy.d.ts +15 -29
  108. package/dist/types/onchain/accounts/intents/operations.d.ts +1 -1
  109. package/dist/types/onchain/accounts/intents/testing/expect.d.ts +6 -2
  110. package/dist/types/onchain/accounts/intents/testing/market.d.ts +1 -1
  111. package/dist/types/onchain/accounts/intents/testing/sdk-mock.d.ts +1 -1
  112. package/dist/types/onchain/accounts/intents/tests/add-collateral.fixtures.d.ts +1 -1
  113. package/dist/types/onchain/accounts/intents/tests/adjust-leverage.fixtures.d.ts +2 -2
  114. package/dist/types/onchain/accounts/intents/tests/deposit.fixtures.d.ts +2 -2
  115. package/dist/types/onchain/accounts/intents/tests/withdraw-asset.fixtures.d.ts +1 -1
  116. package/dist/types/onchain/accounts/intents/tests/withdraw.fixtures.d.ts +2 -2
  117. package/dist/types/onchain/accounts/intents/types.d.ts +8 -59
  118. package/dist/types/onchain/accounts/intents/utils/adjust-state-to-snapshot.d.ts +2 -2
  119. package/dist/types/onchain/accounts/intents/utils/credit-account-slice.d.ts +3 -3
  120. package/dist/types/{common-utils/utils/creditAccount → onchain/accounts}/quota-utils.d.ts +3 -4
  121. package/dist/types/onchain/base/index.d.ts +2 -2
  122. package/dist/types/onchain/base/types.d.ts +5 -1
  123. package/dist/types/onchain/index.d.ts +5 -3
  124. package/dist/types/onchain/market/MarketSuite.d.ts +13 -1
  125. package/dist/types/onchain/market/adapters/contracts/AbstractAdapter.d.ts +1 -1
  126. package/dist/types/onchain/market/adapters/contracts/AccountMigratorAdapterContract.d.ts +1 -1
  127. package/dist/types/onchain/market/credit/index.d.ts +2 -2
  128. package/dist/types/onchain/market/credit/types.d.ts +10 -1
  129. package/dist/types/onchain/market/index.d.ts +2 -2
  130. package/dist/types/onchain/market/math.d.ts +5 -1
  131. package/dist/types/onchain/pools/types.d.ts +6 -4
  132. package/dist/types/onchain/utils/index.d.ts +2 -1
  133. package/dist/types/{common-utils → onchain}/utils/trace.d.ts +1 -1
  134. package/dist/types/preview/index.d.ts +2 -2
  135. package/dist/types/preview/preview/buildDelayedPreview.d.ts +1 -1
  136. package/dist/types/preview/trace/extractAdapterCallTraces.d.ts +1 -1
  137. package/dist/types/preview/trace/findFacadeCalls.d.ts +1 -1
  138. package/dist/types/preview/trace/types.d.ts +1 -1
  139. package/dist/types/preview/validate/checkOperation.d.ts +24 -7
  140. package/dist/types/preview/validate/index.d.ts +2 -2
  141. package/dist/types/rewards/rewards/extra-apy.d.ts +1 -1
  142. package/package.json +1 -6
  143. package/dist/cjs/common-utils/axios-cache/AxiosCache.js +0 -98
  144. package/dist/cjs/common-utils/axios-cache/index.js +0 -3
  145. package/dist/cjs/common-utils/charts/credit-manager-payload.js +0 -1
  146. package/dist/cjs/common-utils/charts/credit-manager.js +0 -100
  147. package/dist/cjs/common-utils/charts/credit-session.js +0 -211
  148. package/dist/cjs/common-utils/charts/credit-sessions-payload.js +0 -1
  149. package/dist/cjs/common-utils/charts/graph-payload.js +0 -1
  150. package/dist/cjs/common-utils/charts/index.js +0 -18
  151. package/dist/cjs/common-utils/charts/pool-payload.js +0 -1
  152. package/dist/cjs/common-utils/charts/pool.js +0 -177
  153. package/dist/cjs/common-utils/charts/token-data.js +0 -68
  154. package/dist/cjs/common-utils/index.js +0 -191
  155. package/dist/cjs/common-utils/package.json +0 -1
  156. package/dist/cjs/common-utils/static/index.js +0 -5
  157. package/dist/cjs/common-utils/static/migration-config.js +0 -1
  158. package/dist/cjs/common-utils/static/pool-config.js +0 -1
  159. package/dist/cjs/common-utils/static/strategy.js +0 -1
  160. package/dist/cjs/common-utils/static/trading-pair.js +0 -1
  161. package/dist/cjs/common-utils/test-utils/index.js +0 -105
  162. package/dist/cjs/common-utils/utils/apy/bonus-apy-from-points.js +0 -5
  163. package/dist/cjs/common-utils/utils/apy/calculate-borrow-rate-from-utilization.js +0 -22
  164. package/dist/cjs/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.js +0 -34
  165. package/dist/cjs/common-utils/utils/apy/calculate-earnings.js +0 -23
  166. package/dist/cjs/common-utils/utils/apy/calculate-earnings.spec.js +0 -68
  167. package/dist/cjs/common-utils/utils/apy/calculate-effective-borrow-rate.js +0 -8
  168. package/dist/cjs/common-utils/utils/apy/calculate-safe-borrow-rate.js +0 -20
  169. package/dist/cjs/common-utils/utils/apy/calculate-safe-borrow-rate.spec.js +0 -39
  170. package/dist/cjs/common-utils/utils/apy/get-complex-apy-list.js +0 -18
  171. package/dist/cjs/common-utils/utils/apy/get-rate-with-fee.js +0 -16
  172. package/dist/cjs/common-utils/utils/apy/get-safe-base-borrow-rate.js +0 -14
  173. package/dist/cjs/common-utils/utils/apy/get-single-quota-borrow-rate.js +0 -16
  174. package/dist/cjs/common-utils/utils/apy/index.js +0 -21
  175. package/dist/cjs/common-utils/utils/apy/max-apy-formula.js +0 -14
  176. package/dist/cjs/common-utils/utils/assets-math.js +0 -185
  177. package/dist/cjs/common-utils/utils/constants.js +0 -9
  178. package/dist/cjs/common-utils/utils/creditAccount/calc-health-factor.js +0 -41
  179. package/dist/cjs/common-utils/utils/creditAccount/calc-overall-apy.js +0 -46
  180. package/dist/cjs/common-utils/utils/creditAccount/calc-quota-borrow-rate.js +0 -22
  181. package/dist/cjs/common-utils/utils/creditAccount/calc-relative-base-borrow-rate.js +0 -16
  182. package/dist/cjs/common-utils/utils/creditAccount/debt.js +0 -46
  183. package/dist/cjs/common-utils/utils/creditAccount/get-time-to-liquidation.js +0 -24
  184. package/dist/cjs/common-utils/utils/creditAccount/index.js +0 -27
  185. package/dist/cjs/common-utils/utils/creditAccount/liquidation-price.js +0 -39
  186. package/dist/cjs/common-utils/utils/creditAccount/sort.js +0 -95
  187. package/dist/cjs/common-utils/utils/creditAccount/types.js +0 -1
  188. package/dist/cjs/common-utils/utils/index.js +0 -175
  189. package/dist/cjs/common-utils/utils/price-math.js +0 -51
  190. package/dist/cjs/common-utils/utils/strategies/assets/assets.js +0 -7
  191. package/dist/cjs/common-utils/utils/strategies/assets/index.js +0 -3
  192. package/dist/cjs/common-utils/utils/strategies/availability/check-boolean.js +0 -10
  193. package/dist/cjs/common-utils/utils/strategies/availability/check-degen-nft.js +0 -13
  194. package/dist/cjs/common-utils/utils/strategies/availability/index.js +0 -5
  195. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.js +0 -23
  196. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.js +0 -109
  197. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js +0 -31
  198. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.js +0 -15
  199. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.js +0 -23
  200. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.js +0 -29
  201. package/dist/cjs/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.js +0 -95
  202. package/dist/cjs/common-utils/utils/strategies/credit-managers/index.js +0 -13
  203. package/dist/cjs/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.js +0 -9
  204. package/dist/cjs/common-utils/utils/strategies/eligibility/index.js +0 -5
  205. package/dist/cjs/common-utils/utils/strategies/eligibility/is-strategy-eligible.js +0 -20
  206. package/dist/cjs/common-utils/utils/strategies/eligibility/is-strategy-released.js +0 -8
  207. package/dist/cjs/common-utils/utils/strategies/index.js +0 -121
  208. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-loss-coefficient.js +0 -10
  209. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.js +0 -16
  210. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.js +0 -21
  211. package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.js +0 -304
  212. package/dist/cjs/common-utils/utils/strategies/leverage/get-collateral-by-debt.js +0 -10
  213. package/dist/cjs/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.js +0 -30
  214. package/dist/cjs/common-utils/utils/strategies/leverage/get-factor-from-leverage.js +0 -9
  215. package/dist/cjs/common-utils/utils/strategies/leverage/get-leverage-from-factor.js +0 -9
  216. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-debt.js +0 -47
  217. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-debt.spec.js +0 -222
  218. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.js +0 -7
  219. package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.js +0 -19
  220. package/dist/cjs/common-utils/utils/strategies/leverage/index.js +0 -21
  221. package/dist/cjs/common-utils/utils/strategies/leverage/max-leverage-threshold.js +0 -17
  222. package/dist/cjs/common-utils/utils/strategies/leverage/max-leverage.js +0 -17
  223. package/dist/cjs/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.js +0 -16
  224. package/dist/cjs/common-utils/utils/strategies/lists/get-available-strategies.js +0 -32
  225. package/dist/cjs/common-utils/utils/strategies/lists/get-disabled-strategies.js +0 -33
  226. package/dist/cjs/common-utils/utils/strategies/lists/get-released-strategies-list-core.js +0 -24
  227. package/dist/cjs/common-utils/utils/strategies/lists/get-released-strategies-list.js +0 -16
  228. package/dist/cjs/common-utils/utils/strategies/lists/index.js +0 -7
  229. package/dist/cjs/common-utils/utils/strategies/points/get-complex-points-list.js +0 -15
  230. package/dist/cjs/common-utils/utils/strategies/points/get-points-info.js +0 -12
  231. package/dist/cjs/common-utils/utils/strategies/points/get-points-rates.js +0 -8
  232. package/dist/cjs/common-utils/utils/strategies/points/get-strategy-points.js +0 -41
  233. package/dist/cjs/common-utils/utils/strategies/points/index.js +0 -9
  234. package/dist/cjs/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.js +0 -3
  235. package/dist/cjs/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.js +0 -18
  236. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-apy.js +0 -63
  237. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.js +0 -184
  238. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-points.js +0 -38
  239. package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.js +0 -126
  240. package/dist/cjs/common-utils/utils/strategies/strategy-info/cm-availability-condition.js +0 -43
  241. package/dist/cjs/common-utils/utils/strategies/strategy-info/credit-manager-issues.js +0 -135
  242. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.js +0 -297
  243. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-info-core.js +0 -70
  244. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-info.js +0 -33
  245. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.js +0 -66
  246. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.js +0 -58
  247. package/dist/cjs/common-utils/utils/strategies/strategy-info/index.js +0 -23
  248. package/dist/cjs/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.js +0 -9
  249. package/dist/cjs/common-utils/utils/strategies/strategy-info/types.js +0 -1
  250. package/dist/cjs/common-utils/utils/strategies/strategy-state/index.js +0 -3
  251. package/dist/cjs/common-utils/utils/strategies/strategy-state/is-strategy-disabled.js +0 -14
  252. package/dist/cjs/common-utils/utils/strategies/tokens/add-amount-in-target.js +0 -18
  253. package/dist/cjs/common-utils/utils/strategies/tokens/add-amount-in-target.spec.js +0 -29
  254. package/dist/cjs/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.js +0 -10
  255. package/dist/cjs/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.js +0 -12
  256. package/dist/cjs/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.js +0 -37
  257. package/dist/cjs/common-utils/utils/strategies/tokens/get-native-token-address.js +0 -8
  258. package/dist/cjs/common-utils/utils/strategies/tokens/index.js +0 -26
  259. package/dist/cjs/common-utils/utils/strategies/tokens/is-activated-token.js +0 -9
  260. package/dist/cjs/common-utils/utils/strategies/tokens/is-apy-with-points-exception.js +0 -10
  261. package/dist/cjs/common-utils/utils/strategies/tokens/is-collateral-token.js +0 -28
  262. package/dist/cjs/common-utils/utils/strategies/tokens/is-collateral-token.spec.js +0 -143
  263. package/dist/cjs/common-utils/utils/strategies/tokens/is-forbidden-token.js +0 -7
  264. package/dist/cjs/common-utils/utils/strategies/tokens/is-obtainable-token.js +0 -13
  265. package/dist/cjs/common-utils/utils/strategies/tokens/is-obtainable-token.spec.js +0 -148
  266. package/dist/cjs/common-utils/utils/strategies/tokens/is-usable-token.js +0 -15
  267. package/dist/cjs/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.js +0 -22
  268. package/dist/cjs/common-utils/utils/strategies/tokens/wrap-token-address.js +0 -8
  269. package/dist/cjs/common-utils/utils/strategies/tokens/wrap-token-address.spec.js +0 -15
  270. package/dist/cjs/common-utils/utils/strategies/types/chains.js +0 -1
  271. package/dist/cjs/common-utils/utils/strategies/types/credit-manager-data-legacy.js +0 -1
  272. package/dist/cjs/common-utils/utils/strategies/types/curator-filter.js +0 -1
  273. package/dist/cjs/common-utils/utils/strategies/types/index.js +0 -14
  274. package/dist/cjs/common-utils/utils/strategies/types/legacy-strategy-data-source.js +0 -30
  275. package/dist/cjs/common-utils/utils/strategies/types/points-slices.js +0 -1
  276. package/dist/cjs/common-utils/utils/strategies/types/sdk-state.js +0 -1
  277. package/dist/cjs/common-utils/utils/strategies/types/strategies-cm-list.js +0 -1
  278. package/dist/cjs/common-utils/utils/strategies/types/strategy-data-source.js +0 -1
  279. package/dist/cjs/common-utils/utils/strategies/types/strategy-data.js +0 -1
  280. package/dist/cjs/common-utils/utils/strategies/types/strategy-earnings.js +0 -1
  281. package/dist/cjs/common-utils/utils/strategies/types/strategy.js +0 -1
  282. package/dist/cjs/common-utils/utils/strategies/types/targetable.js +0 -1
  283. package/dist/cjs/common-utils/utils/strategies/types.js +0 -4
  284. package/dist/cjs/plugins/apy/ApyPlugin.js +0 -248
  285. package/dist/cjs/plugins/apy/apy-parser.js +0 -129
  286. package/dist/cjs/plugins/apy/constants.js +0 -7
  287. package/dist/cjs/plugins/apy/index.js +0 -18
  288. package/dist/cjs/plugins/apy/package.json +0 -1
  289. package/dist/cjs/plugins/apy/pool-apy-types.js +0 -1
  290. package/dist/cjs/plugins/apy/pool-apy-utils.js +0 -121
  291. package/dist/cjs/plugins/apy/strategy-data-source.js +0 -163
  292. package/dist/cjs/plugins/apy/types.js +0 -1
  293. package/dist/cjs/plugins/remote-configs/CustomConfigSource.js +0 -18
  294. package/dist/cjs/plugins/remote-configs/RemoteConfigSource.js +0 -26
  295. package/dist/cjs/plugins/remote-configs/RemoteConfigsPlugin.js +0 -127
  296. package/dist/cjs/plugins/remote-configs/index.js +0 -8
  297. package/dist/cjs/plugins/remote-configs/package.json +0 -1
  298. package/dist/cjs/plugins/remote-configs/types.js +0 -1
  299. package/dist/esm/common-utils/axios-cache/AxiosCache.js +0 -95
  300. package/dist/esm/common-utils/axios-cache/index.js +0 -2
  301. package/dist/esm/common-utils/charts/credit-manager-payload.js +0 -1
  302. package/dist/esm/common-utils/charts/credit-manager.js +0 -99
  303. package/dist/esm/common-utils/charts/credit-session.js +0 -206
  304. package/dist/esm/common-utils/charts/credit-sessions-payload.js +0 -1
  305. package/dist/esm/common-utils/charts/graph-payload.js +0 -1
  306. package/dist/esm/common-utils/charts/index.js +0 -9
  307. package/dist/esm/common-utils/charts/pool-payload.js +0 -1
  308. package/dist/esm/common-utils/charts/pool.js +0 -175
  309. package/dist/esm/common-utils/charts/token-data.js +0 -67
  310. package/dist/esm/common-utils/index.js +0 -87
  311. package/dist/esm/common-utils/package.json +0 -1
  312. package/dist/esm/common-utils/static/index.js +0 -5
  313. package/dist/esm/common-utils/static/migration-config.js +0 -1
  314. package/dist/esm/common-utils/static/pool-config.js +0 -1
  315. package/dist/esm/common-utils/static/strategy.js +0 -1
  316. package/dist/esm/common-utils/static/trading-pair.js +0 -1
  317. package/dist/esm/common-utils/test-utils/index.js +0 -93
  318. package/dist/esm/common-utils/utils/apy/bonus-apy-from-points.js +0 -4
  319. package/dist/esm/common-utils/utils/apy/calculate-borrow-rate-from-utilization.js +0 -21
  320. package/dist/esm/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.js +0 -34
  321. package/dist/esm/common-utils/utils/apy/calculate-earnings.js +0 -22
  322. package/dist/esm/common-utils/utils/apy/calculate-earnings.spec.js +0 -68
  323. package/dist/esm/common-utils/utils/apy/calculate-effective-borrow-rate.js +0 -7
  324. package/dist/esm/common-utils/utils/apy/calculate-safe-borrow-rate.js +0 -19
  325. package/dist/esm/common-utils/utils/apy/calculate-safe-borrow-rate.spec.js +0 -39
  326. package/dist/esm/common-utils/utils/apy/get-complex-apy-list.js +0 -17
  327. package/dist/esm/common-utils/utils/apy/get-rate-with-fee.js +0 -15
  328. package/dist/esm/common-utils/utils/apy/get-safe-base-borrow-rate.js +0 -13
  329. package/dist/esm/common-utils/utils/apy/get-single-quota-borrow-rate.js +0 -15
  330. package/dist/esm/common-utils/utils/apy/index.js +0 -11
  331. package/dist/esm/common-utils/utils/apy/max-apy-formula.js +0 -13
  332. package/dist/esm/common-utils/utils/assets-math.js +0 -184
  333. package/dist/esm/common-utils/utils/constants.js +0 -6
  334. package/dist/esm/common-utils/utils/creditAccount/calc-health-factor.js +0 -40
  335. package/dist/esm/common-utils/utils/creditAccount/calc-overall-apy.js +0 -45
  336. package/dist/esm/common-utils/utils/creditAccount/calc-quota-borrow-rate.js +0 -21
  337. package/dist/esm/common-utils/utils/creditAccount/calc-relative-base-borrow-rate.js +0 -15
  338. package/dist/esm/common-utils/utils/creditAccount/debt.js +0 -44
  339. package/dist/esm/common-utils/utils/creditAccount/get-time-to-liquidation.js +0 -23
  340. package/dist/esm/common-utils/utils/creditAccount/index.js +0 -10
  341. package/dist/esm/common-utils/utils/creditAccount/liquidation-price.js +0 -38
  342. package/dist/esm/common-utils/utils/creditAccount/sort.js +0 -90
  343. package/dist/esm/common-utils/utils/creditAccount/types.js +0 -1
  344. package/dist/esm/common-utils/utils/index.js +0 -81
  345. package/dist/esm/common-utils/utils/price-math.js +0 -50
  346. package/dist/esm/common-utils/utils/strategies/assets/assets.js +0 -6
  347. package/dist/esm/common-utils/utils/strategies/assets/index.js +0 -2
  348. package/dist/esm/common-utils/utils/strategies/availability/check-boolean.js +0 -9
  349. package/dist/esm/common-utils/utils/strategies/availability/check-degen-nft.js +0 -12
  350. package/dist/esm/common-utils/utils/strategies/availability/index.js +0 -3
  351. package/dist/esm/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.js +0 -22
  352. package/dist/esm/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.js +0 -109
  353. package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js +0 -30
  354. package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.js +0 -14
  355. package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.js +0 -22
  356. package/dist/esm/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.js +0 -28
  357. package/dist/esm/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.js +0 -95
  358. package/dist/esm/common-utils/utils/strategies/credit-managers/index.js +0 -7
  359. package/dist/esm/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.js +0 -8
  360. package/dist/esm/common-utils/utils/strategies/eligibility/index.js +0 -3
  361. package/dist/esm/common-utils/utils/strategies/eligibility/is-strategy-eligible.js +0 -19
  362. package/dist/esm/common-utils/utils/strategies/eligibility/is-strategy-released.js +0 -7
  363. package/dist/esm/common-utils/utils/strategies/index.js +0 -66
  364. package/dist/esm/common-utils/utils/strategies/leverage/calculate-loss-coefficient.js +0 -9
  365. package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.js +0 -15
  366. package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.js +0 -20
  367. package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.js +0 -304
  368. package/dist/esm/common-utils/utils/strategies/leverage/get-collateral-by-debt.js +0 -9
  369. package/dist/esm/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.js +0 -30
  370. package/dist/esm/common-utils/utils/strategies/leverage/get-factor-from-leverage.js +0 -8
  371. package/dist/esm/common-utils/utils/strategies/leverage/get-leverage-from-factor.js +0 -8
  372. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-debt.js +0 -46
  373. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-debt.spec.js +0 -222
  374. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.js +0 -6
  375. package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.js +0 -19
  376. package/dist/esm/common-utils/utils/strategies/leverage/index.js +0 -11
  377. package/dist/esm/common-utils/utils/strategies/leverage/max-leverage-threshold.js +0 -16
  378. package/dist/esm/common-utils/utils/strategies/leverage/max-leverage.js +0 -16
  379. package/dist/esm/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.js +0 -15
  380. package/dist/esm/common-utils/utils/strategies/lists/get-available-strategies.js +0 -31
  381. package/dist/esm/common-utils/utils/strategies/lists/get-disabled-strategies.js +0 -32
  382. package/dist/esm/common-utils/utils/strategies/lists/get-released-strategies-list-core.js +0 -23
  383. package/dist/esm/common-utils/utils/strategies/lists/get-released-strategies-list.js +0 -15
  384. package/dist/esm/common-utils/utils/strategies/lists/index.js +0 -4
  385. package/dist/esm/common-utils/utils/strategies/points/get-complex-points-list.js +0 -14
  386. package/dist/esm/common-utils/utils/strategies/points/get-points-info.js +0 -11
  387. package/dist/esm/common-utils/utils/strategies/points/get-points-rates.js +0 -7
  388. package/dist/esm/common-utils/utils/strategies/points/get-strategy-points.js +0 -40
  389. package/dist/esm/common-utils/utils/strategies/points/index.js +0 -5
  390. package/dist/esm/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.js +0 -2
  391. package/dist/esm/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.js +0 -17
  392. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-apy.js +0 -62
  393. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.js +0 -184
  394. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-points.js +0 -37
  395. package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.js +0 -124
  396. package/dist/esm/common-utils/utils/strategies/strategy-info/cm-availability-condition.js +0 -42
  397. package/dist/esm/common-utils/utils/strategies/strategy-info/credit-manager-issues.js +0 -133
  398. package/dist/esm/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.js +0 -296
  399. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-info-core.js +0 -69
  400. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-info.js +0 -32
  401. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.js +0 -65
  402. package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.js +0 -57
  403. package/dist/esm/common-utils/utils/strategies/strategy-info/index.js +0 -12
  404. package/dist/esm/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.js +0 -8
  405. package/dist/esm/common-utils/utils/strategies/strategy-info/types.js +0 -1
  406. package/dist/esm/common-utils/utils/strategies/strategy-state/index.js +0 -2
  407. package/dist/esm/common-utils/utils/strategies/strategy-state/is-strategy-disabled.js +0 -13
  408. package/dist/esm/common-utils/utils/strategies/tokens/add-amount-in-target.js +0 -17
  409. package/dist/esm/common-utils/utils/strategies/tokens/add-amount-in-target.spec.js +0 -29
  410. package/dist/esm/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.js +0 -9
  411. package/dist/esm/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.js +0 -11
  412. package/dist/esm/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.js +0 -37
  413. package/dist/esm/common-utils/utils/strategies/tokens/get-native-token-address.js +0 -7
  414. package/dist/esm/common-utils/utils/strategies/tokens/index.js +0 -13
  415. package/dist/esm/common-utils/utils/strategies/tokens/is-activated-token.js +0 -8
  416. package/dist/esm/common-utils/utils/strategies/tokens/is-apy-with-points-exception.js +0 -8
  417. package/dist/esm/common-utils/utils/strategies/tokens/is-collateral-token.js +0 -27
  418. package/dist/esm/common-utils/utils/strategies/tokens/is-collateral-token.spec.js +0 -143
  419. package/dist/esm/common-utils/utils/strategies/tokens/is-forbidden-token.js +0 -6
  420. package/dist/esm/common-utils/utils/strategies/tokens/is-obtainable-token.js +0 -12
  421. package/dist/esm/common-utils/utils/strategies/tokens/is-obtainable-token.spec.js +0 -148
  422. package/dist/esm/common-utils/utils/strategies/tokens/is-usable-token.js +0 -14
  423. package/dist/esm/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.js +0 -21
  424. package/dist/esm/common-utils/utils/strategies/tokens/wrap-token-address.js +0 -7
  425. package/dist/esm/common-utils/utils/strategies/tokens/wrap-token-address.spec.js +0 -15
  426. package/dist/esm/common-utils/utils/strategies/types/chains.js +0 -1
  427. package/dist/esm/common-utils/utils/strategies/types/credit-manager-data-legacy.js +0 -1
  428. package/dist/esm/common-utils/utils/strategies/types/curator-filter.js +0 -1
  429. package/dist/esm/common-utils/utils/strategies/types/index.js +0 -13
  430. package/dist/esm/common-utils/utils/strategies/types/legacy-strategy-data-source.js +0 -29
  431. package/dist/esm/common-utils/utils/strategies/types/points-slices.js +0 -1
  432. package/dist/esm/common-utils/utils/strategies/types/sdk-state.js +0 -1
  433. package/dist/esm/common-utils/utils/strategies/types/strategies-cm-list.js +0 -1
  434. package/dist/esm/common-utils/utils/strategies/types/strategy-data-source.js +0 -1
  435. package/dist/esm/common-utils/utils/strategies/types/strategy-data.js +0 -1
  436. package/dist/esm/common-utils/utils/strategies/types/strategy-earnings.js +0 -1
  437. package/dist/esm/common-utils/utils/strategies/types/strategy.js +0 -1
  438. package/dist/esm/common-utils/utils/strategies/types/targetable.js +0 -1
  439. package/dist/esm/common-utils/utils/strategies/types.js +0 -3
  440. package/dist/esm/plugins/apy/ApyPlugin.js +0 -247
  441. package/dist/esm/plugins/apy/apy-parser.js +0 -126
  442. package/dist/esm/plugins/apy/constants.js +0 -5
  443. package/dist/esm/plugins/apy/index.js +0 -7
  444. package/dist/esm/plugins/apy/package.json +0 -1
  445. package/dist/esm/plugins/apy/pool-apy-types.js +0 -1
  446. package/dist/esm/plugins/apy/pool-apy-utils.js +0 -116
  447. package/dist/esm/plugins/apy/strategy-data-source.js +0 -162
  448. package/dist/esm/plugins/apy/types.js +0 -1
  449. package/dist/esm/plugins/remote-configs/CustomConfigSource.js +0 -17
  450. package/dist/esm/plugins/remote-configs/RemoteConfigSource.js +0 -25
  451. package/dist/esm/plugins/remote-configs/RemoteConfigsPlugin.js +0 -126
  452. package/dist/esm/plugins/remote-configs/index.js +0 -5
  453. package/dist/esm/plugins/remote-configs/package.json +0 -1
  454. package/dist/esm/plugins/remote-configs/types.js +0 -1
  455. package/dist/types/common-utils/axios-cache/AxiosCache.d.ts +0 -31
  456. package/dist/types/common-utils/axios-cache/index.d.ts +0 -2
  457. package/dist/types/common-utils/charts/credit-manager-payload.d.ts +0 -53
  458. package/dist/types/common-utils/charts/credit-manager.d.ts +0 -51
  459. package/dist/types/common-utils/charts/credit-session.d.ts +0 -113
  460. package/dist/types/common-utils/charts/credit-sessions-payload.d.ts +0 -113
  461. package/dist/types/common-utils/charts/graph-payload.d.ts +0 -12
  462. package/dist/types/common-utils/charts/index.d.ts +0 -9
  463. package/dist/types/common-utils/charts/pool-payload.d.ts +0 -114
  464. package/dist/types/common-utils/charts/pool.d.ts +0 -94
  465. package/dist/types/common-utils/charts/token-data.d.ts +0 -47
  466. package/dist/types/common-utils/index.d.ts +0 -107
  467. package/dist/types/common-utils/static/index.d.ts +0 -5
  468. package/dist/types/common-utils/static/migration-config.d.ts +0 -13
  469. package/dist/types/common-utils/static/pool-config.d.ts +0 -14
  470. package/dist/types/common-utils/static/strategy.d.ts +0 -86
  471. package/dist/types/common-utils/static/trading-pair.d.ts +0 -18
  472. package/dist/types/common-utils/test-utils/index.d.ts +0 -19
  473. package/dist/types/common-utils/utils/apy/bonus-apy-from-points.d.ts +0 -7
  474. package/dist/types/common-utils/utils/apy/calculate-borrow-rate-from-utilization.d.ts +0 -5
  475. package/dist/types/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.d.ts +0 -1
  476. package/dist/types/common-utils/utils/apy/calculate-earnings.d.ts +0 -19
  477. package/dist/types/common-utils/utils/apy/calculate-earnings.spec.d.ts +0 -1
  478. package/dist/types/common-utils/utils/apy/calculate-effective-borrow-rate.d.ts +0 -9
  479. package/dist/types/common-utils/utils/apy/calculate-safe-borrow-rate.d.ts +0 -14
  480. package/dist/types/common-utils/utils/apy/calculate-safe-borrow-rate.spec.d.ts +0 -1
  481. package/dist/types/common-utils/utils/apy/get-complex-apy-list.d.ts +0 -8
  482. package/dist/types/common-utils/utils/apy/get-rate-with-fee.d.ts +0 -10
  483. package/dist/types/common-utils/utils/apy/get-safe-base-borrow-rate.d.ts +0 -7
  484. package/dist/types/common-utils/utils/apy/get-single-quota-borrow-rate.d.ts +0 -14
  485. package/dist/types/common-utils/utils/apy/index.d.ts +0 -11
  486. package/dist/types/common-utils/utils/apy/max-apy-formula.d.ts +0 -9
  487. package/dist/types/common-utils/utils/assets-math.d.ts +0 -117
  488. package/dist/types/common-utils/utils/constants.d.ts +0 -7
  489. package/dist/types/common-utils/utils/creditAccount/calc-health-factor.d.ts +0 -32
  490. package/dist/types/common-utils/utils/creditAccount/calc-overall-apy.d.ts +0 -41
  491. package/dist/types/common-utils/utils/creditAccount/calc-quota-borrow-rate.d.ts +0 -24
  492. package/dist/types/common-utils/utils/creditAccount/calc-relative-base-borrow-rate.d.ts +0 -18
  493. package/dist/types/common-utils/utils/creditAccount/debt.d.ts +0 -39
  494. package/dist/types/common-utils/utils/creditAccount/get-time-to-liquidation.d.ts +0 -24
  495. package/dist/types/common-utils/utils/creditAccount/index.d.ts +0 -10
  496. package/dist/types/common-utils/utils/creditAccount/liquidation-price.d.ts +0 -31
  497. package/dist/types/common-utils/utils/creditAccount/sort.d.ts +0 -59
  498. package/dist/types/common-utils/utils/creditAccount/types.d.ts +0 -22
  499. package/dist/types/common-utils/utils/index.d.ts +0 -93
  500. package/dist/types/common-utils/utils/price-math.d.ts +0 -49
  501. package/dist/types/common-utils/utils/strategies/assets/assets.d.ts +0 -7
  502. package/dist/types/common-utils/utils/strategies/assets/index.d.ts +0 -2
  503. package/dist/types/common-utils/utils/strategies/availability/check-boolean.d.ts +0 -4
  504. package/dist/types/common-utils/utils/strategies/availability/check-degen-nft.d.ts +0 -8
  505. package/dist/types/common-utils/utils/strategies/availability/index.d.ts +0 -3
  506. package/dist/types/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.d.ts +0 -21
  507. package/dist/types/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.d.ts +0 -1
  508. package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.d.ts +0 -14
  509. package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.d.ts +0 -10
  510. package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.d.ts +0 -12
  511. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +0 -17
  512. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.d.ts +0 -1
  513. package/dist/types/common-utils/utils/strategies/credit-managers/index.d.ts +0 -7
  514. package/dist/types/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.d.ts +0 -6
  515. package/dist/types/common-utils/utils/strategies/eligibility/index.d.ts +0 -3
  516. package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-eligible.d.ts +0 -16
  517. package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-released.d.ts +0 -4
  518. package/dist/types/common-utils/utils/strategies/index.d.ts +0 -78
  519. package/dist/types/common-utils/utils/strategies/leverage/calculate-loss-coefficient.d.ts +0 -4
  520. package/dist/types/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.d.ts +0 -15
  521. package/dist/types/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.d.ts +0 -14
  522. package/dist/types/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.d.ts +0 -1
  523. package/dist/types/common-utils/utils/strategies/leverage/get-collateral-by-debt.d.ts +0 -5
  524. package/dist/types/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.d.ts +0 -1
  525. package/dist/types/common-utils/utils/strategies/leverage/get-factor-from-leverage.d.ts +0 -7
  526. package/dist/types/common-utils/utils/strategies/leverage/get-leverage-from-factor.d.ts +0 -5
  527. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-debt.d.ts +0 -24
  528. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-debt.spec.d.ts +0 -1
  529. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.d.ts +0 -7
  530. package/dist/types/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.d.ts +0 -1
  531. package/dist/types/common-utils/utils/strategies/leverage/index.d.ts +0 -11
  532. package/dist/types/common-utils/utils/strategies/leverage/max-leverage-threshold.d.ts +0 -8
  533. package/dist/types/common-utils/utils/strategies/leverage/max-leverage.d.ts +0 -12
  534. package/dist/types/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.d.ts +0 -14
  535. package/dist/types/common-utils/utils/strategies/lists/get-available-strategies.d.ts +0 -11
  536. package/dist/types/common-utils/utils/strategies/lists/get-disabled-strategies.d.ts +0 -12
  537. package/dist/types/common-utils/utils/strategies/lists/get-released-strategies-list-core.d.ts +0 -16
  538. package/dist/types/common-utils/utils/strategies/lists/get-released-strategies-list.d.ts +0 -10
  539. package/dist/types/common-utils/utils/strategies/lists/index.d.ts +0 -4
  540. package/dist/types/common-utils/utils/strategies/points/get-complex-points-list.d.ts +0 -7
  541. package/dist/types/common-utils/utils/strategies/points/get-points-info.d.ts +0 -12
  542. package/dist/types/common-utils/utils/strategies/points/get-points-rates.d.ts +0 -6
  543. package/dist/types/common-utils/utils/strategies/points/get-strategy-points.d.ts +0 -27
  544. package/dist/types/common-utils/utils/strategies/points/index.d.ts +0 -5
  545. package/dist/types/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.d.ts +0 -2
  546. package/dist/types/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.d.ts +0 -31
  547. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +0 -31
  548. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.d.ts +0 -1
  549. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +0 -26
  550. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.d.ts +0 -1
  551. package/dist/types/common-utils/utils/strategies/strategy-info/cm-availability-condition.d.ts +0 -6
  552. package/dist/types/common-utils/utils/strategies/strategy-info/credit-manager-issues.d.ts +0 -34
  553. package/dist/types/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.d.ts +0 -22
  554. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-info-core.d.ts +0 -21
  555. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-info.d.ts +0 -5
  556. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.d.ts +0 -17
  557. package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.d.ts +0 -31
  558. package/dist/types/common-utils/utils/strategies/strategy-info/index.d.ts +0 -12
  559. package/dist/types/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.d.ts +0 -5
  560. package/dist/types/common-utils/utils/strategies/strategy-info/types.d.ts +0 -113
  561. package/dist/types/common-utils/utils/strategies/strategy-state/index.d.ts +0 -2
  562. package/dist/types/common-utils/utils/strategies/strategy-state/is-strategy-disabled.d.ts +0 -7
  563. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +0 -10
  564. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.spec.d.ts +0 -1
  565. package/dist/types/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.d.ts +0 -8
  566. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +0 -16
  567. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.d.ts +0 -1
  568. package/dist/types/common-utils/utils/strategies/tokens/get-native-token-address.d.ts +0 -4
  569. package/dist/types/common-utils/utils/strategies/tokens/index.d.ts +0 -13
  570. package/dist/types/common-utils/utils/strategies/tokens/is-activated-token.d.ts +0 -10
  571. package/dist/types/common-utils/utils/strategies/tokens/is-apy-with-points-exception.d.ts +0 -6
  572. package/dist/types/common-utils/utils/strategies/tokens/is-collateral-token.d.ts +0 -17
  573. package/dist/types/common-utils/utils/strategies/tokens/is-collateral-token.spec.d.ts +0 -1
  574. package/dist/types/common-utils/utils/strategies/tokens/is-forbidden-token.d.ts +0 -9
  575. package/dist/types/common-utils/utils/strategies/tokens/is-obtainable-token.d.ts +0 -11
  576. package/dist/types/common-utils/utils/strategies/tokens/is-obtainable-token.spec.d.ts +0 -1
  577. package/dist/types/common-utils/utils/strategies/tokens/is-usable-token.d.ts +0 -6
  578. package/dist/types/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.d.ts +0 -20
  579. package/dist/types/common-utils/utils/strategies/tokens/wrap-token-address.d.ts +0 -5
  580. package/dist/types/common-utils/utils/strategies/tokens/wrap-token-address.spec.d.ts +0 -1
  581. package/dist/types/common-utils/utils/strategies/types/chains.d.ts +0 -6
  582. package/dist/types/common-utils/utils/strategies/types/credit-manager-data-legacy.d.ts +0 -34
  583. package/dist/types/common-utils/utils/strategies/types/curator-filter.d.ts +0 -5
  584. package/dist/types/common-utils/utils/strategies/types/index.d.ts +0 -13
  585. package/dist/types/common-utils/utils/strategies/types/legacy-strategy-data-source.d.ts +0 -7
  586. package/dist/types/common-utils/utils/strategies/types/points-slices.d.ts +0 -24
  587. package/dist/types/common-utils/utils/strategies/types/sdk-state.d.ts +0 -17
  588. package/dist/types/common-utils/utils/strategies/types/strategies-cm-list.d.ts +0 -9
  589. package/dist/types/common-utils/utils/strategies/types/strategy-data-source.d.ts +0 -22
  590. package/dist/types/common-utils/utils/strategies/types/strategy-data.d.ts +0 -19
  591. package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +0 -47
  592. package/dist/types/common-utils/utils/strategies/types/strategy.d.ts +0 -20
  593. package/dist/types/common-utils/utils/strategies/types/targetable.d.ts +0 -9
  594. package/dist/types/common-utils/utils/strategies/types.d.ts +0 -14
  595. package/dist/types/plugins/apy/ApyPlugin.d.ts +0 -59
  596. package/dist/types/plugins/apy/apy-parser.d.ts +0 -10
  597. package/dist/types/plugins/apy/constants.d.ts +0 -5
  598. package/dist/types/plugins/apy/index.d.ts +0 -7
  599. package/dist/types/plugins/apy/pool-apy-types.d.ts +0 -45
  600. package/dist/types/plugins/apy/pool-apy-utils.d.ts +0 -77
  601. package/dist/types/plugins/apy/strategy-data-source.d.ts +0 -21
  602. package/dist/types/plugins/apy/types.d.ts +0 -64
  603. package/dist/types/plugins/remote-configs/CustomConfigSource.d.ts +0 -16
  604. package/dist/types/plugins/remote-configs/RemoteConfigSource.d.ts +0 -35
  605. package/dist/types/plugins/remote-configs/RemoteConfigsPlugin.d.ts +0 -29
  606. package/dist/types/plugins/remote-configs/index.d.ts +0 -8
  607. package/dist/types/plugins/remote-configs/types.d.ts +0 -26
@@ -1,42 +0,0 @@
1
- import { checkBoolean } from "../availability/check-boolean.js";
2
- import { checkDegenNFT } from "../availability/check-degen-nft.js";
3
- import "../availability/index.js";
4
- import { checkOpenAccountCeilings } from "./credit-manager-issues.js";
5
- //#region src/common-utils/utils/strategies/strategy-info/cm-availability-condition.ts
6
- function cmAvailabilityCondition(targetToken, cmA, cmB, pools) {
7
- const aHasMinError = checkOpenAccountCeilings({
8
- pool: pools?.[cmA.pool],
9
- debt: cmA.minDebt,
10
- creditManager: cmA,
11
- targetToken
12
- });
13
- const bHasMinError = checkOpenAccountCeilings({
14
- pool: pools?.[cmB.pool],
15
- debt: cmB.minDebt,
16
- creditManager: cmB,
17
- targetToken
18
- });
19
- const minSort = checkBoolean(!aHasMinError, !bHasMinError);
20
- if (minSort !== 0) return minSort;
21
- const { freeOfNFT: aFreeOfNFT } = checkDegenNFT(cmA);
22
- const { freeOfNFT: bFreeOfNFT } = checkDegenNFT(cmB);
23
- const nftSort = checkBoolean(aFreeOfNFT, bFreeOfNFT);
24
- if (nftSort !== 0) return nftSort;
25
- const aHasMaxError = checkOpenAccountCeilings({
26
- pool: pools?.[cmA.pool],
27
- debt: cmA.maxDebt,
28
- creditManager: cmA,
29
- targetToken
30
- });
31
- const bHasMaxError = checkOpenAccountCeilings({
32
- pool: pools?.[cmB.pool],
33
- debt: cmB.maxDebt,
34
- creditManager: cmB,
35
- targetToken
36
- });
37
- const maxSort = checkBoolean(!aHasMaxError, !bHasMaxError);
38
- if (maxSort !== 0) return maxSort;
39
- return 0;
40
- }
41
- //#endregion
42
- export { cmAvailabilityCondition };
@@ -1,133 +0,0 @@
1
- import { BigIntMath } from "../../../../onchain/utils/bigint-math.js";
2
- import { checkBorrowLimit, checkCollateralised, checkCreditManagerPaused, checkDebtInBand, checkForbiddenToken, checkFunding, checkQuotaCount, checkQuotaLimit } from "../../../../onchain/validation/checks.js";
3
- import "../../../../onchain/index.js";
4
- //#region src/common-utils/utils/strategies/strategy-info/credit-manager-issues.ts
5
- /**
6
- * The ladders below are the order the strategy lists report in, which is theirs
7
- * to decide — the engine weighs the same ceilings differently and says so.
8
- */
9
- /**
10
- * The lists hold no token registry, so only the address is real here — these
11
- * issues are read as a reason, not rendered as an amount.
12
- */
13
- function tokenOf(chainId, address) {
14
- return {
15
- chainId,
16
- address,
17
- symbol: address,
18
- name: "",
19
- decimals: 0
20
- };
21
- }
22
- /**
23
- * The debt ceilings an account opening runs into, in the order a form reports
24
- * them. The minimum debt is what is weighed — asking for less does not make it
25
- * fit.
26
- */
27
- function checkOpenAccountCeilings(args) {
28
- const { creditManager, pool, debt, targetToken } = args;
29
- const underlying = tokenOf(creditManager.chainId, creditManager.underlyingToken);
30
- const effectiveDebt = BigIntMath.max(creditManager.minDebt, debt);
31
- const debtLimitLeft = BigIntMath.max(creditManager.totalDebtLimit - creditManager.totalDebt, 0n);
32
- const { totalDebtLimit = 0n, totalBorrowed = 0n } = pool || {};
33
- const poolDebtLimitLeft = totalDebtLimit - totalBorrowed;
34
- const canOpenMinDebt = creditManager.minDebt <= debtLimitLeft && creditManager.minDebt <= poolDebtLimitLeft && creditManager.minDebt <= creditManager.availableToBorrow;
35
- const minPositionSize = BigIntMath.min(BigIntMath.min(debtLimitLeft, poolDebtLimitLeft), creditManager.availableToBorrow);
36
- const ceilings = [
37
- ...creditManager.totalDebtLimit >= 0n ? [{
38
- available: debtLimitLeft,
39
- binding: "managerDebtAvailable"
40
- }] : [],
41
- ...totalDebtLimit > 0n ? [{
42
- available: poolDebtLimitLeft,
43
- binding: "poolDebtLimit"
44
- }] : [],
45
- {
46
- available: creditManager.availableToBorrow,
47
- binding: "poolAvailableLiquidity"
48
- }
49
- ];
50
- for (const { available, binding } of ceilings) {
51
- const issue = checkBorrowLimit({
52
- requested: effectiveDebt,
53
- available,
54
- binding,
55
- underlying,
56
- solutionAmount: canOpenMinDebt ? minPositionSize : void 0
57
- });
58
- if (issue) return issue;
59
- }
60
- if (targetToken !== null) return quotaIssue(creditManager, targetToken, effectiveDebt, underlying);
61
- return null;
62
- }
63
- /** The room the keeper has left for a token, read off a slice. */
64
- function quotaIssue(creditManager, token, requested, underlying) {
65
- const quota = creditManager.quotas[token];
66
- if (!quota) return null;
67
- const realLimit = quota.isActive ? quota.limit : 0n;
68
- return checkQuotaLimit({
69
- token: tokenOf(creditManager.chainId, token),
70
- requested,
71
- available: realLimit - quota.totalQuoted,
72
- underlying
73
- });
74
- }
75
- /** Everything the lists weigh before calling a manager usable, in their order. */
76
- function checkCreditManagerUsable(args) {
77
- const { creditManager, pool, debt, targetToken } = args;
78
- const { chainId } = creditManager;
79
- const underlying = tokenOf(chainId, creditManager.underlyingToken);
80
- return checkCreditManagerPaused({
81
- isPaused: creditManager.isPaused,
82
- creditManager: creditManager.address
83
- }) || checkOpenAccountCeilings({
84
- creditManager,
85
- pool,
86
- debt,
87
- targetToken
88
- }) || (args.tokenToObtain === null ? null : checkForbiddenToken({
89
- token: tokenOf(chainId, args.tokenToObtain),
90
- isForbidden: creditManager.isForbidden(args.tokenToObtain)
91
- })) || fundingIssue(chainId, args.collateral, args.balances) || checkDebtInBand({
92
- debt,
93
- minDebt: creditManager.minDebt,
94
- maxDebt: creditManager.maxDebt,
95
- underlying,
96
- allowZero: false
97
- }) || checkQuotaCount({
98
- count: Object.values(args.desiredQuota).filter((a) => a.balance > 0n).length,
99
- max: creditManager.maxEnabledTokensLength
100
- }) || quotaUpdateIssue(creditManager, args.quotaUpdate, underlying) || checkCollateralised({
101
- healthFactor: args.healthFactor,
102
- required: 10101,
103
- safePrices: false
104
- });
105
- }
106
- /**
107
- * The first asset the wallet cannot fund.
108
- *
109
- * The lookup lowercases because the balance map is keyed that way while a
110
- * market names its tokens as it spells them.
111
- */
112
- function fundingIssue(chainId, collateral, balances) {
113
- for (const { token, balance } of collateral) {
114
- const held = balances[token.toLowerCase()] || 0n;
115
- const issue = checkFunding({
116
- token: tokenOf(chainId, token),
117
- required: balance,
118
- held
119
- });
120
- if (issue) return issue;
121
- }
122
- return null;
123
- }
124
- function quotaUpdateIssue(creditManager, quotaUpdate, underlying) {
125
- for (const { token, balance: updateBy } of quotaUpdate) {
126
- if (updateBy <= 0n) continue;
127
- const issue = quotaIssue(creditManager, token, updateBy, underlying);
128
- if (issue) return issue;
129
- }
130
- return null;
131
- }
132
- //#endregion
133
- export { checkCreditManagerUsable, checkOpenAccountCeilings };
@@ -1,296 +0,0 @@
1
- import { BigIntMath } from "../../../../onchain/utils/bigint-math.js";
2
- import { LEVERAGE_DECIMALS, isZeroBalance } from "../../../../onchain/constants/math.js";
3
- import { formatBN, toBN, toBigInt } from "../../../../onchain/utils/formatter.js";
4
- import { calcQuotaUpdate } from "../../creditAccount/quota-utils.js";
5
- import "../../../../onchain/index.js";
6
- import { PriceUtils } from "../../price-math.js";
7
- import { calculateEarnings } from "../../apy/calculate-earnings.js";
8
- import { calculateEffectiveBorrowRate } from "../../apy/calculate-effective-borrow-rate.js";
9
- import { getComplexAPYList } from "../../apy/get-complex-apy-list.js";
10
- import { getSafeBaseBorrowRate } from "../../apy/get-safe-base-borrow-rate.js";
11
- import { getCollateralByDebt } from "../leverage/get-collateral-by-debt.js";
12
- import { getLeverageFromFactor } from "../leverage/get-leverage-from-factor.js";
13
- import { getRecommendedDebt } from "../leverage/get-recommended-debt.js";
14
- import { AssetUtils } from "../../assets-math.js";
15
- import { EMPTY_OBJECT } from "../../constants.js";
16
- import { calcHealthFactor } from "../../creditAccount/calc-health-factor.js";
17
- import { getCMAllowedCollaterals } from "../credit-managers/get-cm-allowed-collaterals.js";
18
- import { getListWithAmountInTarget } from "../tokens/get-list-with-amount-in-target.js";
19
- import { getWalletBalancesAllowedOnCM } from "../credit-managers/get-wallet-balances-allowed-on-cm.js";
20
- import { getComplexPointsList } from "../points/get-complex-points-list.js";
21
- import { getPointsInfo } from "../points/get-points-info.js";
22
- import { checkCreditManagerUsable } from "./credit-manager-issues.js";
23
- import { calculateTotalAPY } from "./calculate-total-apy.js";
24
- import { calculateTotalPoints } from "./calculate-total-points.js";
25
- //#region src/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.ts
26
- function getCMYouCanEarn({ allPrices, creditManager, tokensList, delayedPhantoms, nativeTokenAddress, wrappedNativeTokenAddress, walletBalances, strategy, slippage, quotaReserve, apyList, pools }) {
27
- const baseInfo = {
28
- strategy: strategy.name,
29
- strategyChainId: strategy.chainId,
30
- strategyNetwork: strategy.network,
31
- strategyType: strategy.strategyType,
32
- creditManager: creditManager.address,
33
- cmName: creditManager.name,
34
- underlyingToken: tokensList[creditManager.underlyingToken]?.title || creditManager.underlyingToken,
35
- targetToken: tokensList[strategy.tokenOutAddress]?.title || strategy.tokenOutAddress
36
- };
37
- if (!walletBalances) return {
38
- status: "error",
39
- description: "No wallet balances",
40
- otherInfo: baseInfo,
41
- data: void 0
42
- };
43
- const targetTokenAddress = strategy.tokenOutAddress;
44
- const targetDecimals = tokensList[targetTokenAddress]?.decimals || 18;
45
- const prices = allPrices?.[creditManager?.pool || ""];
46
- if (!prices) return {
47
- status: "error",
48
- description: "No prices for cm pool",
49
- otherInfo: baseInfo,
50
- data: void 0
51
- };
52
- const collateralRecord = getCMAllowedCollaterals({
53
- creditManager,
54
- tokensList,
55
- zeroDebt: false,
56
- delayedPhantoms,
57
- nativeTokenAddress,
58
- wrappedNativeTokenAddress,
59
- extraCollaterals: {
60
- list: strategy.additionalCollaterals,
61
- prices
62
- }
63
- });
64
- const walletBalancesSorted = getWalletBalancesAllowedOnCM({
65
- walletBalances,
66
- collateralRecord,
67
- nativeTokenAddress,
68
- wrappedNativeTokenAddress,
69
- tokensList,
70
- prices,
71
- isPaused: creditManager?.isPaused
72
- });
73
- const filtered = walletBalancesSorted.filter((a) => !isZeroBalance(a.balance));
74
- const collateral_initial = filtered[0];
75
- if (!collateral_initial || collateral_initial.balance === 0n) return {
76
- status: "error",
77
- description: `Initial collateral is zero`,
78
- otherInfo: {
79
- ...baseInfo,
80
- walletBalancesSorted,
81
- filtered
82
- },
83
- data: void 0
84
- };
85
- const collateralPrice = prices[collateral_initial.token] || 0n;
86
- const collateralDecimals = tokensList[collateral_initial.token]?.decimals || 18;
87
- const underlyingPrice = prices[creditManager.underlyingToken] || 0n;
88
- const underlyingDecimals = tokensList[creditManager.underlyingToken]?.decimals || 18;
89
- const assetValueFrom_initial = PriceUtils.convertByPrice(PriceUtils.calcTotalPrice(collateralPrice, collateral_initial.balance, collateralDecimals), {
90
- price: underlyingPrice,
91
- decimals: underlyingDecimals
92
- });
93
- if (!assetValueFrom_initial || assetValueFrom_initial === 0n) return {
94
- status: "error",
95
- description: "Initial asset value from is zero",
96
- otherInfo: baseInfo,
97
- data: void 0
98
- };
99
- const recommendedDebt_initial = getRecommendedDebt({
100
- targetToken: targetTokenAddress,
101
- amount: assetValueFrom_initial,
102
- creditManager,
103
- slippage,
104
- swapCollateral: true,
105
- leverageLimit: strategy.maxLeverage
106
- });
107
- const lt = creditManager.liquidationThresholds[targetTokenAddress] || 0n;
108
- const recommendedAssetValueFrom = getCollateralByDebt(recommendedDebt_initial.maxDebt, lt, toBN("1.013", 4));
109
- const assetValueFrom = BigIntMath.min(assetValueFrom_initial, recommendedAssetValueFrom);
110
- if (!assetValueFrom || assetValueFrom === 0n) return {
111
- status: "error",
112
- description: "Asset value from is zero",
113
- otherInfo: baseInfo,
114
- data: void 0
115
- };
116
- const assetValueFromTarget = PriceUtils.convertByPrice(PriceUtils.calcTotalPrice(underlyingPrice, assetValueFrom, underlyingDecimals), {
117
- price: collateralPrice,
118
- decimals: collateralDecimals
119
- });
120
- const collateral = [{
121
- token: collateral_initial.token,
122
- balance: assetValueFromTarget
123
- }];
124
- const debt = getRecommendedDebt({
125
- targetToken: targetTokenAddress,
126
- amount: assetValueFrom,
127
- creditManager,
128
- slippage,
129
- swapCollateral: true,
130
- leverageLimit: strategy.maxLeverage
131
- }).maxDebt;
132
- const totalAmount = assetValueFrom + debt;
133
- const targetPrice = prices[targetTokenAddress] || 0n;
134
- const assets = [{
135
- token: targetTokenAddress,
136
- balance: PriceUtils.convertByPrice(PriceUtils.calcTotalPrice(underlyingPrice, totalAmount, underlyingDecimals), {
137
- price: targetPrice,
138
- decimals: targetDecimals
139
- })
140
- }];
141
- const assetsWithAmountInTarget = getListWithAmountInTarget({
142
- assets,
143
- targetToken: creditManager.underlyingToken,
144
- prices,
145
- tokensList
146
- });
147
- const assetsWithAmountInTargetRecord = AssetUtils.constructAssetRecord(assetsWithAmountInTarget);
148
- const quotasAfter = calcQuotaUpdate({
149
- quotas: creditManager.quotas,
150
- initialQuotas: EMPTY_OBJECT,
151
- assetsAfterUpdate: assetsWithAmountInTargetRecord,
152
- allowedToObtain: assetsWithAmountInTargetRecord,
153
- allowedToSpend: EMPTY_OBJECT,
154
- quotaReserve: toBigInt(quotaReserve),
155
- maxDebt: creditManager.maxDebt,
156
- calcModification: void 0,
157
- liquidationThresholds: creditManager.liquidationThresholds
158
- });
159
- const desiredQuota = quotasAfter.desiredQuota;
160
- const quotaDecrease = quotasAfter.quotaDecrease;
161
- const quotaIncrease = quotasAfter.quotaIncrease;
162
- const quotaUpdate = [...quotaDecrease, ...quotaIncrease];
163
- const hf = calcHealthFactor({
164
- assets: assetsWithAmountInTarget,
165
- quotas: desiredQuota,
166
- prices,
167
- liquidationThresholds: creditManager.liquidationThresholds,
168
- underlyingToken: creditManager.underlyingToken,
169
- debt,
170
- quotasInfo: creditManager.quotas,
171
- tokensList
172
- });
173
- const pool = pools?.[creditManager.pool];
174
- const error = collateral.some((a) => isZeroBalance(a.balance)) ? { reason: "insufficientSourceBalance" } : checkCreditManagerUsable({
175
- creditManager,
176
- pool,
177
- debt,
178
- healthFactor: hf,
179
- targetToken: targetTokenAddress,
180
- tokenToObtain: strategy.tokenOutAddress,
181
- collateral,
182
- balances: walletBalances,
183
- desiredQuota,
184
- quotaUpdate
185
- });
186
- if (error) return {
187
- status: "error",
188
- description: `Resulting CA did not pass validation: ${error.reason}`,
189
- otherInfo: {
190
- ...baseInfo,
191
- hf
192
- },
193
- data: void 0
194
- };
195
- const apyRecord = getComplexAPYList(apyList?.apyList, apyList?.extraCollateralAPYList, creditManager.pool);
196
- if (!apyRecord) return {
197
- status: "error",
198
- description: "No complex apy record",
199
- otherInfo: baseInfo,
200
- data: void 0
201
- };
202
- const pointsList = getComplexPointsList(apyList?.pointsList, apyList?.extraCollateralPointsList, pool?.address);
203
- if (!pointsList) return {
204
- status: "error",
205
- description: "No complex points record",
206
- otherInfo: baseInfo,
207
- data: void 0
208
- };
209
- const pointsInfo = getPointsInfo({
210
- chainId: strategy.chainId,
211
- pointsList,
212
- token: strategy.tokenOutAddress,
213
- creditManagers: { [creditManager.address]: creditManager }
214
- });
215
- const baseBorrowRateTo = pool ? getSafeBaseBorrowRate({
216
- creditManager,
217
- pool,
218
- availableLiquidityChange: debt * -1n
219
- }) : creditManager.baseBorrowRate;
220
- const effectiveBorrowRate = calculateEffectiveBorrowRate({
221
- underlyingTokenAddress: creditManager.underlyingToken,
222
- baseRateWithFee: baseBorrowRateTo,
223
- apyList: apyRecord
224
- });
225
- const totalAPY = calculateTotalAPY({
226
- caAssets: assetsWithAmountInTarget,
227
- lpAPY: apyRecord,
228
- prices,
229
- quotaRates: creditManager.quotas,
230
- quotas: desiredQuota,
231
- feeInterest: creditManager.feeInterest,
232
- totalValue: totalAmount,
233
- debt,
234
- underlyingToken: creditManager.underlyingToken,
235
- tokensList,
236
- pointsInfo,
237
- effectiveBorrowRate,
238
- showAPY: true
239
- });
240
- const earn = calculateEarnings({
241
- overallAPYBigInt: totalAPY.overallAPYBigInt,
242
- targetAmount: assetValueFrom,
243
- targetToken: creditManager.underlyingToken,
244
- tokensList,
245
- prices
246
- });
247
- const points = calculateTotalPoints({
248
- pointsAsset: pointsInfo ? assetsWithAmountInTarget[0] : void 0,
249
- cmAddress: creditManager.address,
250
- info: pointsInfo,
251
- totalValue: totalAmount,
252
- assetValue: assetValueFrom,
253
- prices,
254
- tokensList,
255
- underlyingToken: creditManager.underlyingToken
256
- });
257
- const leverage = getLeverageFromFactor(debt * LEVERAGE_DECIMALS / assetValueFrom);
258
- return {
259
- status: "ok",
260
- description: "ok",
261
- data: {
262
- info: {
263
- strategy,
264
- creditManager,
265
- collateral,
266
- assetsWithAmountInTarget,
267
- assetValue: assetValueFrom,
268
- debt,
269
- totalAmount,
270
- assetValueInUSD: PriceUtils.calcTotalPrice(underlyingPrice, assetValueFrom, underlyingDecimals),
271
- maxAPY: totalAPY,
272
- bonusAPY: void 0,
273
- extraAPY: [],
274
- maxLeverage: leverage
275
- },
276
- earnings: earn,
277
- points,
278
- otherInfo: {
279
- ...baseInfo,
280
- collateral: collateral.map((c) => ({
281
- token: tokensList[c.token]?.title || c.token,
282
- balance: formatBN(c.balance, 18, 4)
283
- })),
284
- apy: formatBN(totalAPY.overallAPYBigInt || 0, 4, 4),
285
- earningsUSD: formatBN(earn.earningsUSD || 0n, 18, 4),
286
- assetValue: formatBN(assetValueFrom, targetDecimals, 4),
287
- debt: formatBN(debt, targetDecimals, 4),
288
- totalAmount: formatBN(totalAmount, underlyingDecimals, 4),
289
- assetValueFrom_initial: formatBN(assetValueFrom_initial, targetDecimals, 4),
290
- debt_initial: formatBN(recommendedDebt_initial.maxDebt, targetDecimals, 4)
291
- }
292
- }
293
- };
294
- }
295
- //#endregion
296
- export { getCMYouCanEarn };
@@ -1,69 +0,0 @@
1
- import { PriceUtils } from "../../price-math.js";
2
- import { getSingleQuotaBorrowRate } from "../../apy/get-single-quota-borrow-rate.js";
3
- import { getFactorFromLeverage } from "../leverage/get-factor-from-leverage.js";
4
- import "../leverage/index.js";
5
- import { isStrategyCMDisabled } from "./is-strategy-cm-disabled.js";
6
- import { getStrategyPoints } from "../points/get-strategy-points.js";
7
- import { getStrategyMaxAPY } from "./get-strategy-max-apy.js";
8
- import { sortStrategyCMsByAvailability } from "../sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.js";
9
- import "../sort-strategy-cms-by-availability/index.js";
10
- //#region src/common-utils/utils/strategies/strategy-info/get-strategy-info-core.ts
11
- const EMPTY_ADDRESS = "";
12
- const lc = (address) => address.toLowerCase();
13
- function getStrategyInfoCore({ strategy, creditManagers, source, apyListByNetwork, quotaReserve, slippage }) {
14
- const strategyCMsList = Object.values(creditManagers || {});
15
- if (strategyCMsList.length === 0) return void 0;
16
- const targetTokenAddress = lc(strategy.tokenOutAddress);
17
- const openableCMsList = strategyCMsList.filter((cm) => !isStrategyCMDisabled(cm, cm.quotas[targetTokenAddress]));
18
- const pools = strategyCMsList.reduce((acc, cm) => {
19
- const pool = source.getPool(cm.chainId, cm.pool);
20
- if (pool) acc[cm.pool] = pool;
21
- return acc;
22
- }, {});
23
- const minCreditManager = sortStrategyCMsByAvailability({
24
- targetToken: targetTokenAddress,
25
- allCreditManagers: openableCMsList.length > 0 ? openableCMsList : strategyCMsList,
26
- apyListByNetwork,
27
- slippage,
28
- quotaReserve,
29
- pools,
30
- leverageLimit: strategy.maxLeverage,
31
- isStrategy: true
32
- })?.[0] || strategyCMsList[0];
33
- const { underlyingToken = EMPTY_ADDRESS, availableToBorrow = 0n } = minCreditManager || {};
34
- const { bonusAPY, totalMaxApy = 0, maxLeverage = 0n, effectiveBaseRate = 0, effectiveQuotaRate = 0n } = getStrategyMaxAPY(targetTokenAddress, minCreditManager, apyListByNetwork, slippage, quotaReserve, strategy.maxLeverage) || {};
35
- const underlyingPrice = source.getMarketPrices(minCreditManager?.chainId ?? strategy.chainId, minCreditManager?.pool || EMPTY_ADDRESS)?.[underlyingToken] || 0n;
36
- const underlyingDecimals = source.getToken(strategy.chainId, underlyingToken)?.decimals || 18;
37
- const availableToBorrowMoney = PriceUtils.calcTotalPrice(underlyingPrice, availableToBorrow, underlyingDecimals);
38
- const r = BigInt(effectiveBaseRate) * getFactorFromLeverage(maxLeverage) / maxLeverage;
39
- return {
40
- maxLeverage,
41
- maxAPY: totalMaxApy,
42
- bonusAPY,
43
- totalBorrowRate: Number(r + effectiveQuotaRate),
44
- baseQuotaRateWithFee: getSingleQuotaBorrowRate({
45
- quotaRates: minCreditManager?.quotas || {},
46
- feeInterest: minCreditManager?.feeInterest || 0,
47
- quotas: { [targetTokenAddress]: {
48
- token: targetTokenAddress,
49
- balance: 1n
50
- } }
51
- }),
52
- availableToBorrowMoney,
53
- minCreditManager,
54
- points: getStrategyPoints({
55
- strategy: {
56
- chainId: strategy.chainId,
57
- tokenOutAddress: targetTokenAddress
58
- },
59
- info: {
60
- maxLeverage,
61
- minCreditManager
62
- },
63
- strategyCreditManagers: creditManagers ?? {},
64
- apyListByNetwork
65
- })
66
- };
67
- }
68
- //#endregion
69
- export { getStrategyInfoCore };
@@ -1,32 +0,0 @@
1
- import { getStrategyInfoCore } from "./get-strategy-info-core.js";
2
- //#region src/common-utils/utils/strategies/strategy-info/get-strategy-info.ts
3
- function getByAddress(record, address) {
4
- return record?.[address] ?? record?.[address.toLowerCase()];
5
- }
6
- function getStrategyInfo({ strategy, creditManagers, sdkStateByChain, apyListByNetwork, quotaReserve, slippage, allPricesByChain }) {
7
- return getStrategyInfoCore({
8
- strategy,
9
- creditManagers: creditManagers?.[strategy.chainId]?.[strategy.id],
10
- source: {
11
- hasToken(chainId, token) {
12
- return !!getByAddress(sdkStateByChain?.[chainId]?.tokens?.tokenDataList, token);
13
- },
14
- getToken(chainId, token) {
15
- return getByAddress(sdkStateByChain?.[chainId]?.tokens?.tokenDataList, token);
16
- },
17
- getPool(chainId, pool) {
18
- return getByAddress(sdkStateByChain?.[chainId]?.pools, pool);
19
- },
20
- getCreditManager() {},
21
- getMarketPrices(chainId, pool) {
22
- return getByAddress(allPricesByChain?.[chainId]?.prices, pool) || {};
23
- },
24
- getLastSyncTimestamp() {}
25
- },
26
- apyListByNetwork,
27
- quotaReserve,
28
- slippage
29
- });
30
- }
31
- //#endregion
32
- export { getStrategyInfo };
@@ -1,65 +0,0 @@
1
- import { LEVERAGE_DECIMALS, PERCENTAGE_FACTOR } from "../../../../onchain/constants/math.js";
2
- import { toBigInt } from "../../../../onchain/utils/formatter.js";
3
- import "../../../../onchain/index.js";
4
- import { BONUS_APY_FROM_POINTS } from "../../apy/bonus-apy-from-points.js";
5
- import { calculateEffectiveBorrowRate } from "../../apy/calculate-effective-borrow-rate.js";
6
- import { getComplexAPYList } from "../../apy/get-complex-apy-list.js";
7
- import { getSingleQuotaBorrowRate } from "../../apy/get-single-quota-borrow-rate.js";
8
- import { calculateMaxLeverageFactor } from "../leverage/calculate-max-leverage-factor.js";
9
- import { getLeverageFromFactor } from "../leverage/get-leverage-from-factor.js";
10
- import "../leverage/index.js";
11
- import { maxAPYFormula } from "../../apy/max-apy-formula.js";
12
- //#region src/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.ts
13
- function getStrategyMaxAPY(targetToken, cm, apyListByNetwork, slippage, quotaReserve, leverageLimit) {
14
- if (!cm) return void 0;
15
- const apyRecord = getComplexAPYList(apyListByNetwork?.[cm.chainId]?.apyList, apyListByNetwork?.[cm.chainId]?.extraCollateralAPYList, cm.pool);
16
- const effectiveBaseRate = calculateEffectiveBorrowRate({
17
- underlyingTokenAddress: cm.underlyingToken,
18
- baseRateWithFee: cm.baseBorrowRate,
19
- apyList: apyRecord
20
- });
21
- const lt = cm.liquidationThresholds[targetToken] || 0n;
22
- const feeInterest = cm.feeInterest;
23
- const tokenQuota = cm.quotas[targetToken];
24
- const qRate_reserve = (tokenQuota?.rate || 0n) * lt / PERCENTAGE_FACTOR * (PERCENTAGE_FACTOR + toBigInt(quotaReserve)) / PERCENTAGE_FACTOR;
25
- const effectiveQuotaRate = getSingleQuotaBorrowRate({
26
- quotaRates: { [targetToken]: {
27
- ...tokenQuota,
28
- isActive: tokenQuota?.isActive ?? true,
29
- rate: qRate_reserve
30
- } },
31
- feeInterest,
32
- quotas: { [targetToken]: {
33
- token: targetToken,
34
- balance: 1n
35
- } }
36
- });
37
- const leverage = getLeverageFromFactor(calculateMaxLeverageFactor({
38
- targetToken,
39
- creditManagers: [cm],
40
- slippage,
41
- leverageLimit
42
- }));
43
- const apy = apyRecord?.[targetToken] || 0;
44
- const maxAPY = apyRecord ? maxAPYFormula({
45
- apy,
46
- leverage,
47
- baseRateWithFee: effectiveBaseRate,
48
- quotaRateWithFee: Number(effectiveQuotaRate)
49
- }) : void 0;
50
- const bonusAPY = BONUS_APY_FROM_POINTS[targetToken];
51
- const bonusAPYTotal = BigInt(bonusAPY?.value || 0) * leverage / LEVERAGE_DECIMALS;
52
- const totalMaxApy = (maxAPY || 0) + Number(bonusAPYTotal);
53
- const totalBorrowRate = effectiveBaseRate + Number(effectiveQuotaRate);
54
- return {
55
- totalMaxApy,
56
- bonusAPY,
57
- maxAPY: maxAPY || 0,
58
- maxLeverage: leverage,
59
- effectiveBaseRate,
60
- effectiveQuotaRate,
61
- totalBorrowRate
62
- };
63
- }
64
- //#endregion
65
- export { getStrategyMaxAPY };