@gearbox-protocol/sdk 16.0.0-next.8 → 16.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +20 -0
- package/dist/cjs/dev/mode-parity/compareOpportunities.js +4 -5
- package/dist/cjs/dev/mode-parity/comparePositions.js +9 -9
- package/dist/cjs/dev/mode-parity/compareRules.js +12 -1
- package/dist/cjs/dev/mode-parity/fieldDiff.js +4 -6
- package/dist/cjs/dev/mode-parity/scriptUtils.js +146 -6
- package/dist/cjs/model/analytics.schema.js +117 -0
- package/dist/cjs/model/charts.js +5 -1
- package/dist/cjs/model/charts.schema.js +1 -1
- package/dist/cjs/model/compare.schema.js +8 -0
- package/dist/cjs/model/delayed-intent.schema.js +35 -0
- package/dist/cjs/model/index.js +34 -14
- package/dist/cjs/model/liquidations.schema.js +7 -2
- package/dist/cjs/model/opportunities.schema.js +12 -3
- package/dist/cjs/model/positions.js +6 -0
- package/dist/cjs/model/positions.schema.js +14 -8
- package/dist/cjs/model/previews.js +21 -37
- package/dist/cjs/model/result.js +37 -0
- package/dist/cjs/model/withdrawals.schema.js +44 -0
- package/dist/cjs/offchain/GearboxAPI.js +5 -0
- package/dist/cjs/offchain/analytics/OffchainAnalytics.js +12 -0
- package/dist/cjs/offchain/analytics/OffchainAnalyticsPositions.js +24 -0
- package/dist/cjs/offchain/analytics/index.js +6 -0
- package/dist/cjs/offchain/index.js +5 -0
- package/dist/cjs/offchain/opportunities/OffchainOpportunities.js +13 -5
- package/dist/cjs/offchain/opportunities/index.js +1 -0
- package/dist/cjs/offchain/positions/OffchainPositions.js +20 -2
- package/dist/cjs/offchain/positions/index.js +1 -0
- package/dist/cjs/onchain/accounts/CreditAccountsServiceV310.js +0 -10
- package/dist/cjs/onchain/accounts/credit-account-compressor/CreditAccountCompressor.js +1 -1
- package/dist/cjs/onchain/accounts/index.js +9 -4
- package/dist/cjs/onchain/accounts/intents/guards.js +85 -23
- package/dist/cjs/onchain/accounts/intents/index.js +94 -43
- package/dist/cjs/onchain/accounts/intents/leverage-band.js +70 -0
- package/dist/cjs/onchain/accounts/intents/math.js +16 -6
- package/dist/cjs/onchain/accounts/intents/maxWithdrawCollateral.js +10 -21
- package/dist/cjs/onchain/accounts/intents/open-strategy.js +29 -29
- package/dist/cjs/onchain/accounts/intents/plan.js +29 -21
- package/dist/cjs/onchain/accounts/intents/realize.js +104 -51
- package/dist/cjs/onchain/accounts/intents/tail.js +118 -10
- package/dist/cjs/onchain/accounts/intents/testing/market.js +9 -6
- package/dist/cjs/onchain/accounts/intents/testing/sdk-mock.js +84 -58
- package/dist/cjs/onchain/accounts/intents/tests/add-collateral.fixtures.js +4 -4
- package/dist/cjs/onchain/accounts/intents/tests/adjust-leverage.fixtures.js +15 -15
- package/dist/cjs/onchain/accounts/intents/tests/deposit.fixtures.js +18 -15
- package/dist/cjs/onchain/accounts/intents/tests/finish-decrease-leverage.fixtures.js +2 -2
- package/dist/cjs/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +2 -2
- package/dist/cjs/onchain/accounts/intents/tests/withdraw-asset.fixtures.js +4 -4
- package/dist/cjs/onchain/accounts/intents/tests/withdraw.fixtures.js +7 -7
- package/dist/cjs/onchain/accounts/intents/types.js +0 -16
- package/dist/cjs/onchain/accounts/intents/utils/adjust-state-to-snapshot.js +8 -5
- package/dist/cjs/onchain/accounts/intents/utils/common.js +2 -2
- package/dist/cjs/onchain/accounts/intents/utils/credit-account-slice.js +5 -5
- package/dist/cjs/onchain/accounts/intents/utils/index.js +4 -2
- package/dist/cjs/onchain/accounts/intents/utils/pick-token.js +2 -2
- package/dist/cjs/onchain/accounts/intents/utils/price-impact.js +99 -0
- package/dist/cjs/onchain/accounts/intents/utils/quotas-for-update.js +3 -3
- package/dist/cjs/onchain/accounts/intents/utils/router-path.js +100 -42
- package/dist/cjs/onchain/accounts/intents/view.js +7 -6
- package/dist/cjs/onchain/accounts/liquidations/LiquidationsService.js +8 -8
- package/dist/cjs/onchain/accounts/liquidations/skipLiquidatableAccount.js +12 -0
- package/dist/cjs/{common-utils/utils/creditAccount → onchain/accounts}/quota-utils.js +3 -3
- package/dist/cjs/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +13 -7
- package/dist/cjs/onchain/accounts/withdrawal-compressor/errors.js +0 -19
- package/dist/cjs/onchain/accounts/withdrawal-compressor/index.js +1 -2
- package/dist/cjs/onchain/chain/chains.js +9 -3
- package/dist/cjs/onchain/constants/index.js +1 -0
- package/dist/cjs/onchain/constants/math.js +11 -0
- package/dist/cjs/onchain/index.js +50 -8
- package/dist/cjs/onchain/market/MarketSuite.js +24 -1
- package/dist/cjs/onchain/market/adapters/contracts/AbstractAdapter.js +19 -5
- package/dist/cjs/onchain/market/adapters/contracts/AbstractCurveAdapter.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/BalancerV3RouterAdapterContract.js +35 -3
- package/dist/cjs/onchain/market/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/CamelotV3AdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/ERC4626AdapterContract.js +56 -2
- package/dist/cjs/onchain/market/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/FluidDexAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/LidoV1AdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/MellowDVVAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/MidasGatewayAdapterContract.js +15 -2
- package/dist/cjs/onchain/market/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/PendleRouterAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/SecuritizeOnRampAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/UniswapV2AdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/UniswapV3AdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/UniswapV4AdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/WstETHV1AdapterContract.js +2 -2
- package/dist/cjs/onchain/market/credit/CreditManagerV310Contract.js +2 -2
- package/dist/cjs/onchain/market/credit/CreditSuite.js +71 -7
- package/dist/cjs/onchain/market/credit/collateralUtils.js +2 -2
- package/dist/cjs/onchain/market/index.js +4 -2
- package/dist/cjs/onchain/market/math.js +29 -13
- package/dist/cjs/onchain/market/oracle/PriceOracleBaseContract.js +67 -14
- package/dist/cjs/onchain/market/oracle/TestPriceOracle.mock.js +215 -0
- package/dist/cjs/onchain/market/oracle/collateralPriceInUnderlying.js +27 -0
- package/dist/cjs/onchain/market/oracle/errors.js +14 -0
- package/dist/cjs/onchain/market/oracle/index.js +4 -0
- package/dist/cjs/onchain/market/pool/PoolV310Contract.js +25 -0
- package/dist/cjs/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +3 -2
- package/dist/cjs/onchain/market/zapper/ZapperContract.js +15 -8
- package/dist/cjs/onchain/market/zapper/errors.js +0 -17
- package/dist/cjs/onchain/market/zapper/index.js +1 -2
- package/dist/cjs/onchain/opportunities/index.js +1 -0
- package/dist/cjs/onchain/pools/PoolService.js +27 -66
- package/dist/cjs/onchain/pools/index.js +0 -2
- package/dist/cjs/onchain/positions/MultichainPositionsService.js +15 -0
- package/dist/cjs/onchain/positions/PositionsService.js +182 -28
- package/dist/cjs/onchain/positions/calcHealthFactor.js +4 -3
- package/dist/cjs/onchain/positions/calcLiquidationPrice.js +14 -4
- package/dist/cjs/onchain/positions/index.js +1 -0
- package/dist/cjs/onchain/router/AbstractRouterContract.js +2 -24
- package/dist/cjs/onchain/router/RouterV310Contract.js +1 -12
- package/dist/cjs/onchain/utils/index.js +7 -0
- package/dist/cjs/{common-utils → onchain}/utils/trace.js +1 -1
- package/dist/cjs/onchain/validation/checks.js +258 -0
- package/dist/cjs/onchain/validation/index.js +28 -0
- package/dist/cjs/onchain/validation/refusal.js +39 -0
- package/dist/cjs/onchain/validation/token.js +29 -0
- package/dist/cjs/permissionless/bindings/instance-manager.js +16 -0
- package/dist/cjs/preview/index.js +27 -12
- package/dist/cjs/preview/parse/errors.js +0 -32
- package/dist/cjs/preview/parse/index.js +1 -5
- package/dist/cjs/preview/parse/parseOperationCalldata.js +28 -17
- package/dist/cjs/preview/parse/parsePoolOperationCalldata.js +17 -11
- package/dist/cjs/preview/prerequisites/checkPrerequisites.js +5 -2
- package/dist/cjs/preview/preview/{buildDelayedPreview.js → buildDelayedStrategyPositionOperationPreview.js} +47 -72
- package/dist/cjs/preview/preview/detectDelayedClaim.js +9 -7
- package/dist/cjs/preview/preview/detectDelayedOperation.js +11 -4
- package/dist/cjs/preview/preview/errors.js +81 -13
- package/dist/cjs/preview/preview/estimateClaimableAt.js +21 -0
- package/dist/cjs/preview/preview/index.js +14 -7
- package/dist/cjs/preview/preview/previewAdjustStrategyPosition.js +49 -0
- package/dist/cjs/preview/preview/{previewCloseOrRepayCreditAccount.js → previewExitOrRepayStrategyPosition.js} +28 -15
- package/dist/cjs/preview/preview/previewOpenStrategyPosition.js +50 -0
- package/dist/cjs/preview/preview/previewOperation.js +46 -24
- package/dist/cjs/preview/preview/previewPoolPositionOperation.js +49 -0
- package/dist/cjs/preview/preview/replayInnerOperations.js +23 -60
- package/dist/cjs/preview/preview/replayMulticall.js +2 -2
- package/dist/cjs/preview/preview/unwrapNativeCollateral.js +4 -9
- package/dist/cjs/preview/simulate/errors.js +15 -24
- package/dist/cjs/preview/simulate/index.js +2 -2
- package/dist/cjs/preview/simulate/simulateOperation.js +7 -5
- package/dist/cjs/preview/simulate/simulatePoolOperation.js +8 -3
- package/dist/cjs/preview/trace/extractAdapterCallTraces.js +2 -2
- package/dist/cjs/preview/trace/findFacadeCalls.js +2 -2
- package/dist/cjs/preview/validate/checkOperation.js +187 -0
- package/dist/cjs/preview/validate/checkSimulation.js +39 -0
- package/dist/cjs/preview/validate/index.js +8 -0
- package/dist/cjs/rewards/errors.js +27 -0
- package/dist/cjs/rewards/index.js +6 -7
- package/dist/cjs/rewards/merkl-api.js +45 -0
- package/dist/cjs/rewards/multichain.js +40 -0
- package/dist/cjs/rewards/toMerklRewards.js +85 -0
- package/dist/cjs/sdk/GearboxSDK.js +5 -0
- package/dist/cjs/sdk/analytics/AnalyticsNamespace.js +11 -0
- package/dist/cjs/sdk/analytics/index.js +4 -0
- package/dist/cjs/sdk/execute/ExecuteApi.js +20 -17
- package/dist/cjs/sdk/execute/index.js +1 -0
- package/dist/cjs/sdk/index.js +12 -0
- package/dist/cjs/sdk/liquidations/LiquidationsNamespace.js +5 -5
- package/dist/cjs/sdk/opportunities/OpportunitiesNamespace.js +14 -8
- package/dist/cjs/sdk/positions/PositionsNamespace.js +22 -4
- package/dist/cjs/sdk/positions/mergePositionList.js +45 -1
- package/dist/cjs/sdk/prepare/PrepareApi.js +438 -188
- package/dist/cjs/sdk/prepare/errors.js +93 -0
- package/dist/cjs/sdk/prepare/index.js +9 -0
- package/dist/cjs/sdk/prepare/types.js +4 -0
- package/dist/cjs/sdk/prepare/withdrawable-collaterals.js +23 -0
- package/dist/cjs/sdk/preview/PreviewNamespace.js +2 -2
- package/dist/esm/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.js +20 -0
- package/dist/esm/dev/AccountOpener.js +1 -1
- package/dist/esm/dev/mode-parity/compareOpportunities.js +4 -5
- package/dist/esm/dev/mode-parity/comparePositions.js +9 -9
- package/dist/esm/dev/mode-parity/compareRules.js +12 -1
- package/dist/esm/dev/mode-parity/fieldDiff.js +4 -6
- package/dist/esm/dev/mode-parity/scriptUtils.js +143 -7
- package/dist/esm/dev/withdrawalUtils.js +1 -1
- package/dist/esm/model/analytics.schema.js +108 -0
- package/dist/esm/model/charts.js +5 -1
- package/dist/esm/model/charts.schema.js +1 -1
- package/dist/esm/model/compare.schema.js +8 -1
- package/dist/esm/model/delayed-intent.schema.js +34 -0
- package/dist/esm/model/index.js +17 -11
- package/dist/esm/model/liquidations.schema.js +7 -2
- package/dist/esm/model/opportunities.schema.js +12 -4
- package/dist/esm/model/positions.js +6 -1
- package/dist/esm/model/positions.schema.js +14 -8
- package/dist/esm/model/previews.js +21 -31
- package/dist/esm/model/result.js +33 -0
- package/dist/esm/model/withdrawals.schema.js +40 -0
- package/dist/esm/offchain/GearboxAPI.js +5 -0
- package/dist/esm/offchain/analytics/OffchainAnalytics.js +11 -0
- package/dist/esm/offchain/analytics/OffchainAnalyticsPositions.js +23 -0
- package/dist/esm/offchain/analytics/index.js +4 -0
- package/dist/esm/offchain/index.js +4 -1
- package/dist/esm/offchain/opportunities/OffchainOpportunities.js +14 -6
- package/dist/esm/offchain/opportunities/index.js +1 -0
- package/dist/esm/offchain/positions/OffchainPositions.js +21 -3
- package/dist/esm/offchain/positions/index.js +1 -0
- package/dist/esm/onchain/accounts/CreditAccountsServiceV310.js +2 -12
- package/dist/esm/onchain/accounts/credit-account-compressor/CreditAccountCompressor.js +1 -1
- package/dist/esm/onchain/accounts/index.js +4 -3
- package/dist/esm/onchain/accounts/intents/guards.js +85 -23
- package/dist/esm/onchain/accounts/intents/index.js +95 -45
- package/dist/esm/onchain/accounts/intents/leverage-band.js +69 -0
- package/dist/esm/onchain/accounts/intents/math.js +16 -6
- package/dist/esm/onchain/accounts/intents/maxWithdrawCollateral.js +10 -21
- package/dist/esm/onchain/accounts/intents/open-strategy.js +30 -30
- package/dist/esm/onchain/accounts/intents/plan.js +29 -21
- package/dist/esm/onchain/accounts/intents/realize.js +104 -51
- package/dist/esm/onchain/accounts/intents/tail.js +118 -10
- package/dist/esm/onchain/accounts/intents/testing/market.js +9 -6
- package/dist/esm/onchain/accounts/intents/testing/sdk-mock.js +84 -60
- package/dist/esm/onchain/accounts/intents/tests/add-collateral.fixtures.js +4 -4
- package/dist/esm/onchain/accounts/intents/tests/adjust-leverage.fixtures.js +15 -15
- package/dist/esm/onchain/accounts/intents/tests/deposit.fixtures.js +18 -15
- package/dist/esm/onchain/accounts/intents/tests/finish-decrease-leverage.fixtures.js +2 -2
- package/dist/esm/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +2 -2
- package/dist/esm/onchain/accounts/intents/tests/withdraw-asset.fixtures.js +4 -4
- package/dist/esm/onchain/accounts/intents/tests/withdraw.fixtures.js +7 -7
- package/dist/esm/onchain/accounts/intents/types.js +1 -16
- package/dist/esm/onchain/accounts/intents/utils/adjust-state-to-snapshot.js +8 -5
- package/dist/esm/onchain/accounts/intents/utils/common.js +2 -2
- package/dist/esm/onchain/accounts/intents/utils/credit-account-slice.js +5 -5
- package/dist/esm/onchain/accounts/intents/utils/index.js +2 -2
- package/dist/esm/onchain/accounts/intents/utils/pick-token.js +2 -2
- package/dist/esm/onchain/accounts/intents/utils/price-impact.js +96 -0
- package/dist/esm/onchain/accounts/intents/utils/quotas-for-update.js +2 -2
- package/dist/esm/onchain/accounts/intents/utils/router-path.js +100 -42
- package/dist/esm/onchain/accounts/intents/view.js +7 -6
- package/dist/esm/onchain/accounts/liquidations/LiquidationsService.js +9 -9
- package/dist/esm/onchain/accounts/liquidations/skipLiquidatableAccount.js +11 -0
- package/dist/esm/{common-utils/utils/creditAccount → onchain/accounts}/quota-utils.js +3 -3
- package/dist/esm/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +14 -8
- package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +1 -1
- package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +1 -1
- package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +1 -1
- package/dist/esm/onchain/accounts/withdrawal-compressor/errors.js +1 -19
- package/dist/esm/onchain/accounts/withdrawal-compressor/index.js +2 -2
- package/dist/esm/onchain/base/TokensMeta.js +3 -3
- package/dist/esm/onchain/chain/chains.js +9 -3
- package/dist/esm/onchain/constants/index.js +2 -2
- package/dist/esm/onchain/constants/math.js +11 -1
- package/dist/esm/onchain/core/createAddressProvider.js +1 -1
- package/dist/esm/onchain/index.js +14 -7
- package/dist/esm/onchain/market/MarketSuite.js +24 -1
- package/dist/esm/onchain/market/adapters/contracts/AbstractAdapter.js +18 -4
- package/dist/esm/onchain/market/adapters/contracts/AbstractCurveAdapter.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/AccountMigratorAdapterContract.js +1 -1
- package/dist/esm/onchain/market/adapters/contracts/BalancerV3RouterAdapterContract.js +35 -3
- package/dist/esm/onchain/market/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/CamelotV3AdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/ERC4626AdapterContract.js +58 -4
- package/dist/esm/onchain/market/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/FluidDexAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/LidoV1AdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/MellowDVVAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/MidasGatewayAdapterContract.js +16 -3
- package/dist/esm/onchain/market/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/PendleRouterAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/SecuritizeOnRampAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/UniswapV2AdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/UniswapV3AdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/UniswapV4AdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/WstETHV1AdapterContract.js +2 -2
- package/dist/esm/onchain/market/credit/CreditFacadeV310BaseContract.js +1 -1
- package/dist/esm/onchain/market/credit/CreditManagerV310Contract.js +2 -2
- package/dist/esm/onchain/market/credit/CreditSuite.js +73 -9
- package/dist/esm/onchain/market/credit/collateralUtils.js +2 -2
- package/dist/esm/onchain/market/index.js +3 -2
- package/dist/esm/onchain/market/math.js +29 -13
- package/dist/esm/onchain/market/oracle/PriceOracleBaseContract.js +67 -14
- package/dist/esm/onchain/market/oracle/TestPriceOracle.mock.js +213 -0
- package/dist/esm/onchain/market/oracle/collateralPriceInUnderlying.js +26 -0
- package/dist/esm/onchain/market/oracle/errors.js +13 -0
- package/dist/esm/onchain/market/oracle/index.js +3 -1
- package/dist/esm/onchain/market/pool/PoolV310Contract.js +26 -1
- package/dist/esm/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +3 -2
- package/dist/esm/onchain/market/zapper/IETHZapperContract.js +1 -1
- package/dist/esm/onchain/market/zapper/ZapperContract.js +16 -9
- package/dist/esm/onchain/market/zapper/errors.js +1 -17
- package/dist/esm/onchain/market/zapper/index.js +2 -2
- package/dist/esm/onchain/opportunities/index.js +1 -0
- package/dist/esm/onchain/pools/PoolService.js +29 -66
- package/dist/esm/onchain/pools/index.js +2 -2
- package/dist/esm/onchain/positions/MultichainPositionsService.js +15 -0
- package/dist/esm/onchain/positions/PositionsService.js +184 -30
- package/dist/esm/onchain/positions/calcHealthFactor.js +4 -3
- package/dist/esm/onchain/positions/calcLiquidationPrice.js +14 -5
- package/dist/esm/onchain/positions/index.js +2 -2
- package/dist/esm/onchain/router/AbstractRouterContract.js +2 -24
- package/dist/esm/onchain/router/RouterV310Contract.js +1 -12
- package/dist/esm/onchain/utils/index.js +2 -1
- package/dist/esm/{common-utils → onchain}/utils/trace.js +1 -1
- package/dist/esm/onchain/utils/viem/simulateWithPriceUpdates.js +1 -1
- package/dist/esm/onchain/validation/checks.js +238 -0
- package/dist/esm/onchain/validation/index.js +4 -0
- package/dist/esm/onchain/validation/refusal.js +36 -0
- package/dist/esm/onchain/validation/token.js +27 -0
- package/dist/esm/permissionless/bindings/instance-manager.js +16 -0
- package/dist/esm/preview/index.js +11 -7
- package/dist/esm/preview/parse/errors.js +1 -30
- package/dist/esm/preview/parse/index.js +2 -3
- package/dist/esm/preview/parse/parseOperationCalldata.js +28 -17
- package/dist/esm/preview/parse/parsePoolOperationCalldata.js +17 -11
- package/dist/esm/preview/prerequisites/checkPrerequisites.js +5 -2
- package/dist/esm/preview/preview/{buildDelayedPreview.js → buildDelayedStrategyPositionOperationPreview.js} +48 -73
- package/dist/esm/preview/preview/detectDelayedClaim.js +9 -7
- package/dist/esm/preview/preview/detectDelayedOperation.js +11 -4
- package/dist/esm/preview/preview/errors.js +76 -13
- package/dist/esm/preview/preview/estimateClaimableAt.js +20 -0
- package/dist/esm/preview/preview/index.js +6 -5
- package/dist/esm/preview/preview/previewAdjustStrategyPosition.js +48 -0
- package/dist/esm/preview/preview/{previewCloseOrRepayCreditAccount.js → previewExitOrRepayStrategyPosition.js} +28 -15
- package/dist/esm/preview/preview/previewOpenStrategyPosition.js +49 -0
- package/dist/esm/preview/preview/previewOperation.js +46 -24
- package/dist/esm/preview/preview/previewPoolPositionOperation.js +48 -0
- package/dist/esm/preview/preview/replayInnerOperations.js +23 -60
- package/dist/esm/preview/preview/replayMulticall.js +2 -2
- package/dist/esm/preview/preview/unwrapNativeCollateral.js +4 -9
- package/dist/esm/preview/simulate/errors.js +16 -24
- package/dist/esm/preview/simulate/index.js +3 -3
- package/dist/esm/preview/simulate/simulateOperation.js +7 -5
- package/dist/esm/preview/simulate/simulatePoolOperation.js +8 -5
- package/dist/esm/preview/trace/extractAdapterCallTraces.js +1 -1
- package/dist/esm/preview/trace/extractTransfers.js +1 -1
- package/dist/esm/preview/trace/findFacadeCalls.js +1 -1
- package/dist/esm/preview/validate/checkOperation.js +183 -0
- package/dist/esm/preview/validate/checkSimulation.js +38 -0
- package/dist/esm/preview/validate/index.js +3 -0
- package/dist/esm/rewards/errors.js +26 -0
- package/dist/esm/rewards/index.js +4 -5
- package/dist/esm/rewards/merkl-api.js +42 -0
- package/dist/esm/rewards/multichain.js +39 -0
- package/dist/esm/rewards/toMerklRewards.js +84 -0
- package/dist/esm/sdk/GearboxSDK.js +5 -0
- package/dist/esm/sdk/analytics/AnalyticsNamespace.js +10 -0
- package/dist/esm/sdk/analytics/index.js +3 -0
- package/dist/esm/sdk/execute/ExecuteApi.js +20 -17
- package/dist/esm/sdk/execute/index.js +1 -0
- package/dist/esm/sdk/index.js +5 -1
- package/dist/esm/sdk/liquidations/LiquidationsNamespace.js +5 -5
- package/dist/esm/sdk/opportunities/OpportunitiesNamespace.js +14 -8
- package/dist/esm/sdk/positions/PositionsNamespace.js +22 -4
- package/dist/esm/sdk/positions/mergePositionList.js +45 -1
- package/dist/esm/sdk/prepare/PrepareApi.js +439 -189
- package/dist/esm/sdk/prepare/errors.js +89 -0
- package/dist/esm/sdk/prepare/index.js +3 -1
- package/dist/esm/sdk/prepare/types.js +2 -1
- package/dist/esm/sdk/prepare/withdrawable-collaterals.js +22 -0
- package/dist/esm/sdk/preview/PreviewNamespace.js +2 -2
- package/dist/types/abi/compressors/subcompressors/withdrawal/mellowWithdrawalSubcompressor.d.ts +16 -0
- package/dist/types/dev/mode-parity/compareOpportunities.d.ts +3 -7
- package/dist/types/dev/mode-parity/comparePositions.d.ts +9 -11
- package/dist/types/dev/mode-parity/fieldDiff.d.ts +12 -9
- package/dist/types/dev/mode-parity/scriptUtils.d.ts +26 -1
- package/dist/types/history/classifyMulticallOperations.d.ts +1 -1
- package/dist/types/model/analytics.d.ts +62 -0
- package/dist/types/model/analytics.schema.d.ts +149 -0
- package/dist/types/model/charts.d.ts +4 -2
- package/dist/types/model/charts.schema.d.ts +8 -0
- package/dist/types/model/compare.schema.d.ts +9 -2
- package/dist/types/model/delayed-intent.schema.d.ts +28 -0
- package/dist/types/model/errors.d.ts +46 -0
- package/dist/types/model/index.d.ts +16 -10
- package/dist/types/model/liquidations.d.ts +14 -8
- package/dist/types/model/liquidations.schema.d.ts +64 -2
- package/dist/types/model/opportunities.d.ts +20 -2
- package/dist/types/model/opportunities.schema.d.ts +9 -1
- package/dist/types/model/positions.d.ts +62 -7
- package/dist/types/model/positions.schema.d.ts +29 -49
- package/dist/types/model/previews.d.ts +383 -204
- package/dist/types/model/result.d.ts +63 -0
- package/dist/types/model/withdrawals.d.ts +106 -0
- package/dist/types/model/withdrawals.schema.d.ts +263 -0
- package/dist/types/offchain/AbstractOffchainNamespace.d.ts +1 -1
- package/dist/types/offchain/GearboxAPI.d.ts +4 -0
- package/dist/types/offchain/analytics/OffchainAnalytics.d.ts +11 -0
- package/dist/types/offchain/analytics/OffchainAnalyticsPositions.d.ts +14 -0
- package/dist/types/offchain/analytics/index.d.ts +4 -0
- package/dist/types/offchain/analytics/types.d.ts +17 -0
- package/dist/types/offchain/index.d.ts +7 -1
- package/dist/types/offchain/opportunities/OffchainOpportunities.d.ts +12 -12
- package/dist/types/offchain/opportunities/index.d.ts +2 -1
- package/dist/types/offchain/opportunities/types.d.ts +36 -0
- package/dist/types/offchain/positions/OffchainPositions.d.ts +15 -9
- package/dist/types/offchain/positions/index.d.ts +2 -1
- package/dist/types/offchain/positions/types.d.ts +36 -0
- package/dist/types/onchain/accounts/CreditAccountsServiceV310.d.ts +1 -5
- package/dist/types/onchain/accounts/index.d.ts +9 -5
- package/dist/types/onchain/accounts/intents/guards.d.ts +30 -8
- package/dist/types/onchain/accounts/intents/index.d.ts +58 -23
- package/dist/types/onchain/accounts/intents/leverage-band.d.ts +58 -0
- package/dist/types/onchain/accounts/intents/math.d.ts +3 -1
- package/dist/types/onchain/accounts/intents/maxWithdrawCollateral.d.ts +5 -3
- package/dist/types/onchain/accounts/intents/open-strategy.d.ts +15 -35
- package/dist/types/onchain/accounts/intents/operations.d.ts +1 -1
- package/dist/types/onchain/accounts/intents/plan.d.ts +4 -1
- package/dist/types/onchain/accounts/intents/realize.d.ts +1 -1
- package/dist/types/onchain/accounts/intents/tail.d.ts +13 -3
- package/dist/types/onchain/accounts/intents/testing/expect.d.ts +7 -3
- package/dist/types/onchain/accounts/intents/testing/market.d.ts +9 -2
- package/dist/types/onchain/accounts/intents/testing/sdk-mock.d.ts +33 -3
- package/dist/types/onchain/accounts/intents/tests/add-collateral.fixtures.d.ts +1 -1
- package/dist/types/onchain/accounts/intents/tests/adjust-leverage.fixtures.d.ts +2 -2
- package/dist/types/onchain/accounts/intents/tests/deposit.fixtures.d.ts +3 -3
- package/dist/types/onchain/accounts/intents/tests/withdraw-asset.fixtures.d.ts +1 -1
- package/dist/types/onchain/accounts/intents/tests/withdraw.fixtures.d.ts +2 -2
- package/dist/types/onchain/accounts/intents/types.d.ts +122 -123
- package/dist/types/onchain/accounts/intents/utils/adjust-state-to-snapshot.d.ts +2 -2
- package/dist/types/onchain/accounts/intents/utils/credit-account-slice.d.ts +4 -4
- package/dist/types/onchain/accounts/intents/utils/index.d.ts +4 -4
- package/dist/types/onchain/accounts/intents/utils/ledger.d.ts +2 -2
- package/dist/types/onchain/accounts/intents/utils/price-impact.d.ts +49 -0
- package/dist/types/onchain/accounts/intents/utils/quotas-for-update.d.ts +1 -1
- package/dist/types/onchain/accounts/intents/utils/router-path.d.ts +9 -0
- package/dist/types/onchain/accounts/intents/view.d.ts +2 -2
- package/dist/types/onchain/accounts/liquidations/LiquidationsService.d.ts +0 -1
- package/dist/types/onchain/accounts/liquidations/skipLiquidatableAccount.d.ts +11 -0
- package/dist/types/{common-utils/utils/creditAccount → onchain/accounts}/quota-utils.d.ts +3 -4
- package/dist/types/onchain/accounts/types.d.ts +2 -27
- package/dist/types/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.d.ts +6 -4
- package/dist/types/onchain/accounts/withdrawal-compressor/errors.d.ts +9 -5
- package/dist/types/onchain/accounts/withdrawal-compressor/index.d.ts +1 -1
- package/dist/types/onchain/accounts/withdrawal-compressor/types.d.ts +6 -4
- package/dist/types/onchain/base/index.d.ts +2 -2
- package/dist/types/onchain/base/types.d.ts +5 -1
- package/dist/types/onchain/constants/index.d.ts +2 -2
- package/dist/types/onchain/constants/math.d.ts +9 -1
- package/dist/types/onchain/index.d.ts +26 -14
- package/dist/types/onchain/market/MarketSuite.d.ts +19 -1
- package/dist/types/onchain/market/adapters/contracts/AbstractAdapter.d.ts +15 -3
- package/dist/types/onchain/market/adapters/contracts/AbstractCurveAdapter.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/AccountMigratorAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/CamelotV3AdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/DaiUsdsAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/ERC4626AdapterContract.d.ts +9 -2
- package/dist/types/onchain/market/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/FluidDexAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/LidoV1AdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/MellowClaimerAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/MellowDVVAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/MellowWrapperAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/MidasGatewayAdapterContract.d.ts +8 -1
- package/dist/types/onchain/market/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/PendleRouterAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/StakingRewardsAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/UniswapV2AdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/UniswapV3AdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/UniswapV4AdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/UpshiftVaultAdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/VelodromeV2AdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/adapters/contracts/WstETHV1AdapterContract.d.ts +1 -1
- package/dist/types/onchain/market/credit/CreditManagerV310Contract.d.ts +1 -1
- package/dist/types/onchain/market/credit/CreditSuite.d.ts +49 -3
- package/dist/types/onchain/market/credit/index.d.ts +2 -2
- package/dist/types/onchain/market/credit/types.d.ts +14 -4
- package/dist/types/onchain/market/index.d.ts +7 -5
- package/dist/types/onchain/market/math.d.ts +25 -10
- package/dist/types/onchain/market/oracle/PriceOracleBaseContract.d.ts +15 -5
- package/dist/types/onchain/market/oracle/collateralPriceInUnderlying.d.ts +19 -0
- package/dist/types/onchain/market/oracle/errors.d.ts +19 -0
- package/dist/types/onchain/market/oracle/index.d.ts +4 -2
- package/dist/types/onchain/market/oracle/types.d.ts +44 -26
- package/dist/types/onchain/market/pool/PoolV310Contract.d.ts +12 -0
- package/dist/types/onchain/market/pool/types.d.ts +18 -0
- package/dist/types/onchain/market/rwa/index.d.ts +2 -2
- package/dist/types/onchain/market/rwa/securitize/SecuritizeRWAFactory.d.ts +2 -2
- package/dist/types/onchain/market/rwa/types.d.ts +17 -5
- package/dist/types/onchain/market/zapper/ZapperContract.d.ts +7 -3
- package/dist/types/onchain/market/zapper/errors.d.ts +11 -6
- package/dist/types/onchain/market/zapper/index.d.ts +1 -1
- package/dist/types/onchain/market/zapper/types.d.ts +4 -1
- package/dist/types/onchain/opportunities/MultichainOpportunitiesService.d.ts +2 -1
- package/dist/types/onchain/opportunities/index.d.ts +2 -1
- package/dist/types/onchain/opportunities/types.d.ts +27 -0
- package/dist/types/onchain/pools/PoolService.d.ts +1 -19
- package/dist/types/onchain/pools/index.d.ts +2 -2
- package/dist/types/onchain/pools/types.d.ts +6 -4
- package/dist/types/onchain/positions/MultichainPositionsService.d.ts +8 -2
- package/dist/types/onchain/positions/PositionsService.d.ts +44 -1
- package/dist/types/onchain/positions/calcHealthFactor.d.ts +7 -3
- package/dist/types/onchain/positions/calcLiquidationPrice.d.ts +10 -1
- package/dist/types/onchain/positions/index.d.ts +3 -3
- package/dist/types/onchain/positions/types.d.ts +47 -3
- package/dist/types/onchain/router/AbstractRouterContract.d.ts +0 -4
- package/dist/types/onchain/utils/index.d.ts +2 -1
- package/dist/types/{common-utils → onchain}/utils/trace.d.ts +1 -1
- package/dist/types/onchain/validation/checks.d.ts +164 -0
- package/dist/types/onchain/validation/index.d.ts +4 -0
- package/dist/types/onchain/validation/refusal.d.ts +242 -0
- package/dist/types/onchain/validation/token.d.ts +17 -0
- package/dist/types/preview/index.d.ts +13 -6
- package/dist/types/preview/parse/errors.d.ts +19 -12
- package/dist/types/preview/parse/index.d.ts +1 -1
- package/dist/types/preview/parse/parseOperationCalldata.d.ts +5 -1
- package/dist/types/preview/parse/parsePoolOperationCalldata.d.ts +5 -2
- package/dist/types/preview/prerequisites/checkPrerequisites.d.ts +6 -1
- package/dist/types/preview/preview/{buildDelayedPreview.d.ts → buildDelayedStrategyPositionOperationPreview.d.ts} +8 -12
- package/dist/types/preview/preview/detectDelayedClaim.d.ts +7 -6
- package/dist/types/preview/preview/detectDelayedOperation.d.ts +3 -1
- package/dist/types/preview/preview/errors.d.ts +38 -6
- package/dist/types/preview/preview/estimateClaimableAt.d.ts +19 -0
- package/dist/types/preview/preview/index.d.ts +7 -6
- package/dist/types/preview/preview/{previewAdjustCreditAccount.d.ts → previewAdjustStrategyPosition.d.ts} +4 -4
- package/dist/types/preview/preview/{previewCloseOrRepayCreditAccount.d.ts → previewExitOrRepayStrategyPosition.d.ts} +4 -4
- package/dist/types/preview/preview/previewOpenStrategyPosition.d.ts +12 -0
- package/dist/types/preview/preview/previewOperation.d.ts +21 -2
- package/dist/types/preview/preview/previewPoolPositionOperation.d.ts +13 -0
- package/dist/types/preview/preview/replayInnerOperations.d.ts +3 -3
- package/dist/types/preview/preview/replayMulticall.d.ts +2 -2
- package/dist/types/preview/preview/unwrapNativeCollateral.d.ts +4 -5
- package/dist/types/preview/simulate/errors.d.ts +12 -8
- package/dist/types/preview/simulate/index.d.ts +2 -2
- package/dist/types/preview/simulate/simulateOperation.d.ts +4 -1
- package/dist/types/preview/simulate/simulatePoolOperation.d.ts +22 -2
- package/dist/types/preview/simulate/types.d.ts +12 -4
- package/dist/types/preview/trace/extractAdapterCallTraces.d.ts +1 -1
- package/dist/types/preview/trace/findFacadeCalls.d.ts +1 -1
- package/dist/types/preview/trace/types.d.ts +1 -1
- package/dist/types/preview/validate/checkOperation.d.ts +71 -0
- package/dist/types/preview/validate/checkSimulation.d.ts +32 -0
- package/dist/types/preview/validate/index.d.ts +3 -0
- package/dist/types/rewards/errors.d.ts +18 -0
- package/dist/types/rewards/index.d.ts +4 -7
- package/dist/types/rewards/merkl-api.d.ts +64 -0
- package/dist/types/rewards/multichain.d.ts +33 -0
- package/dist/types/rewards/toMerklRewards.d.ts +42 -0
- package/dist/types/sdk/AbstractNamespace.d.ts +1 -1
- package/dist/types/sdk/GearboxSDK.d.ts +15 -11
- package/dist/types/sdk/analytics/AnalyticsNamespace.d.ts +11 -0
- package/dist/types/sdk/analytics/index.d.ts +3 -0
- package/dist/types/sdk/analytics/types.d.ts +15 -0
- package/dist/types/sdk/execute/ExecuteApi.d.ts +5 -94
- package/dist/types/sdk/execute/index.d.ts +3 -2
- package/dist/types/sdk/execute/types.d.ts +91 -0
- package/dist/types/sdk/index.d.ts +19 -11
- package/dist/types/sdk/liquidations/LiquidationsNamespace.d.ts +7 -7
- package/dist/types/sdk/liquidations/index.d.ts +2 -2
- package/dist/types/sdk/liquidations/types.d.ts +5 -7
- package/dist/types/sdk/opportunities/OpportunitiesNamespace.d.ts +24 -20
- package/dist/types/sdk/opportunities/index.d.ts +2 -2
- package/dist/types/sdk/opportunities/types.d.ts +42 -42
- package/dist/types/sdk/positions/PositionsNamespace.d.ts +24 -10
- package/dist/types/sdk/positions/index.d.ts +2 -2
- package/dist/types/sdk/positions/mergePositionList.d.ts +5 -0
- package/dist/types/sdk/positions/types.d.ts +51 -35
- package/dist/types/sdk/prepare/PrepareApi.d.ts +60 -40
- package/dist/types/sdk/prepare/errors.d.ts +319 -0
- package/dist/types/sdk/prepare/index.d.ts +6 -2
- package/dist/types/sdk/prepare/types.d.ts +237 -119
- package/dist/types/sdk/prepare/withdrawable-collaterals.d.ts +11 -0
- package/dist/types/sdk/preview/PreviewNamespace.d.ts +8 -5
- package/dist/types/sdk/preview/index.d.ts +2 -2
- package/dist/types/sdk/preview/types.d.ts +12 -10
- package/dist/types/sdk/types.d.ts +66 -6
- package/package.json +2 -8
- package/dist/cjs/_virtual/_rolldown/runtime.js +0 -23
- package/dist/cjs/common-utils/axios-cache/AxiosCache.js +0 -98
- package/dist/cjs/common-utils/axios-cache/index.js +0 -3
- package/dist/cjs/common-utils/charts/credit-manager.js +0 -100
- package/dist/cjs/common-utils/charts/credit-session.js +0 -211
- package/dist/cjs/common-utils/charts/index.js +0 -18
- package/dist/cjs/common-utils/charts/pool.js +0 -177
- package/dist/cjs/common-utils/charts/token-data.js +0 -68
- package/dist/cjs/common-utils/index.js +0 -209
- package/dist/cjs/common-utils/package.json +0 -1
- package/dist/cjs/common-utils/static/index.js +0 -5
- package/dist/cjs/common-utils/static/pool-config.js +0 -1
- package/dist/cjs/common-utils/static/strategy.js +0 -1
- package/dist/cjs/common-utils/static/trading-pair.js +0 -1
- package/dist/cjs/common-utils/test-utils/index.js +0 -104
- package/dist/cjs/common-utils/utils/apy/bonus-apy-from-points.js +0 -5
- package/dist/cjs/common-utils/utils/apy/calculate-borrow-rate-from-utilization.js +0 -22
- package/dist/cjs/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.js +0 -34
- package/dist/cjs/common-utils/utils/apy/calculate-earnings.js +0 -23
- package/dist/cjs/common-utils/utils/apy/calculate-earnings.spec.js +0 -68
- package/dist/cjs/common-utils/utils/apy/calculate-effective-borrow-rate.js +0 -8
- package/dist/cjs/common-utils/utils/apy/calculate-safe-borrow-rate.js +0 -20
- package/dist/cjs/common-utils/utils/apy/calculate-safe-borrow-rate.spec.js +0 -39
- package/dist/cjs/common-utils/utils/apy/get-complex-apy-list.js +0 -18
- package/dist/cjs/common-utils/utils/apy/get-rate-with-fee.js +0 -16
- package/dist/cjs/common-utils/utils/apy/get-safe-base-borrow-rate.js +0 -14
- package/dist/cjs/common-utils/utils/apy/get-single-quota-borrow-rate.js +0 -16
- package/dist/cjs/common-utils/utils/apy/index.js +0 -21
- package/dist/cjs/common-utils/utils/apy/max-apy-formula.js +0 -14
- package/dist/cjs/common-utils/utils/assets-math.js +0 -185
- package/dist/cjs/common-utils/utils/constants.js +0 -9
- package/dist/cjs/common-utils/utils/creditAccount/calc-health-factor.js +0 -41
- package/dist/cjs/common-utils/utils/creditAccount/calc-overall-apy.js +0 -46
- package/dist/cjs/common-utils/utils/creditAccount/calc-quota-borrow-rate.js +0 -22
- package/dist/cjs/common-utils/utils/creditAccount/calc-relative-base-borrow-rate.js +0 -16
- package/dist/cjs/common-utils/utils/creditAccount/debt.js +0 -46
- package/dist/cjs/common-utils/utils/creditAccount/get-time-to-liquidation.js +0 -24
- package/dist/cjs/common-utils/utils/creditAccount/index.js +0 -27
- package/dist/cjs/common-utils/utils/creditAccount/liquidation-price.js +0 -39
- package/dist/cjs/common-utils/utils/creditAccount/sort.js +0 -95
- package/dist/cjs/common-utils/utils/index.js +0 -194
- package/dist/cjs/common-utils/utils/price-math.js +0 -51
- package/dist/cjs/common-utils/utils/strategies/assets/assets.js +0 -7
- package/dist/cjs/common-utils/utils/strategies/assets/index.js +0 -3
- package/dist/cjs/common-utils/utils/strategies/availability/check-boolean.js +0 -10
- package/dist/cjs/common-utils/utils/strategies/availability/check-degen-nft.js +0 -13
- package/dist/cjs/common-utils/utils/strategies/availability/index.js +0 -5
- package/dist/cjs/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.js +0 -23
- package/dist/cjs/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.js +0 -109
- package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js +0 -31
- package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.js +0 -15
- package/dist/cjs/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.js +0 -23
- package/dist/cjs/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.js +0 -29
- package/dist/cjs/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.js +0 -95
- package/dist/cjs/common-utils/utils/strategies/credit-managers/index.js +0 -13
- package/dist/cjs/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.js +0 -9
- package/dist/cjs/common-utils/utils/strategies/eligibility/index.js +0 -5
- package/dist/cjs/common-utils/utils/strategies/eligibility/is-strategy-eligible.js +0 -20
- package/dist/cjs/common-utils/utils/strategies/eligibility/is-strategy-released.js +0 -8
- package/dist/cjs/common-utils/utils/strategies/index.js +0 -118
- package/dist/cjs/common-utils/utils/strategies/leverage/calculate-loss-coefficient.js +0 -10
- package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.js +0 -16
- package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.js +0 -21
- package/dist/cjs/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.js +0 -304
- package/dist/cjs/common-utils/utils/strategies/leverage/get-collateral-by-debt.js +0 -10
- package/dist/cjs/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.js +0 -30
- package/dist/cjs/common-utils/utils/strategies/leverage/get-factor-from-leverage.js +0 -9
- package/dist/cjs/common-utils/utils/strategies/leverage/get-leverage-from-factor.js +0 -9
- package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-debt.js +0 -47
- package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-debt.spec.js +0 -222
- package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.js +0 -7
- package/dist/cjs/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.js +0 -19
- package/dist/cjs/common-utils/utils/strategies/leverage/index.js +0 -21
- package/dist/cjs/common-utils/utils/strategies/leverage/max-leverage-threshold.js +0 -17
- package/dist/cjs/common-utils/utils/strategies/leverage/max-leverage.js +0 -17
- package/dist/cjs/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.js +0 -16
- package/dist/cjs/common-utils/utils/strategies/lists/get-available-strategies.js +0 -32
- package/dist/cjs/common-utils/utils/strategies/lists/get-disabled-strategies.js +0 -33
- package/dist/cjs/common-utils/utils/strategies/lists/get-released-strategies-list-core.js +0 -24
- package/dist/cjs/common-utils/utils/strategies/lists/get-released-strategies-list.js +0 -16
- package/dist/cjs/common-utils/utils/strategies/lists/index.js +0 -7
- package/dist/cjs/common-utils/utils/strategies/points/get-complex-points-list.js +0 -15
- package/dist/cjs/common-utils/utils/strategies/points/get-points-info.js +0 -12
- package/dist/cjs/common-utils/utils/strategies/points/get-points-rates.js +0 -8
- package/dist/cjs/common-utils/utils/strategies/points/get-strategy-points.js +0 -41
- package/dist/cjs/common-utils/utils/strategies/points/index.js +0 -9
- package/dist/cjs/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.js +0 -3
- package/dist/cjs/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.js +0 -18
- package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-apy.js +0 -63
- package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.js +0 -184
- package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-points.js +0 -38
- package/dist/cjs/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.js +0 -126
- package/dist/cjs/common-utils/utils/strategies/strategy-info/cm-availability-condition.js +0 -43
- package/dist/cjs/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.js +0 -308
- package/dist/cjs/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.spec.js +0 -267
- package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-info-core.js +0 -70
- package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-info.js +0 -33
- package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.js +0 -66
- package/dist/cjs/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.js +0 -58
- package/dist/cjs/common-utils/utils/strategies/strategy-info/index.js +0 -20
- package/dist/cjs/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.js +0 -9
- package/dist/cjs/common-utils/utils/strategies/strategy-state/index.js +0 -3
- package/dist/cjs/common-utils/utils/strategies/strategy-state/is-strategy-disabled.js +0 -14
- package/dist/cjs/common-utils/utils/strategies/tokens/add-amount-in-target.js +0 -18
- package/dist/cjs/common-utils/utils/strategies/tokens/add-amount-in-target.spec.js +0 -29
- package/dist/cjs/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.js +0 -10
- package/dist/cjs/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.js +0 -12
- package/dist/cjs/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.js +0 -37
- package/dist/cjs/common-utils/utils/strategies/tokens/get-native-token-address.js +0 -8
- package/dist/cjs/common-utils/utils/strategies/tokens/index.js +0 -26
- package/dist/cjs/common-utils/utils/strategies/tokens/is-activated-token.js +0 -9
- package/dist/cjs/common-utils/utils/strategies/tokens/is-apy-with-points-exception.js +0 -10
- package/dist/cjs/common-utils/utils/strategies/tokens/is-collateral-token.js +0 -28
- package/dist/cjs/common-utils/utils/strategies/tokens/is-collateral-token.spec.js +0 -143
- package/dist/cjs/common-utils/utils/strategies/tokens/is-forbidden-token.js +0 -7
- package/dist/cjs/common-utils/utils/strategies/tokens/is-obtainable-token.js +0 -13
- package/dist/cjs/common-utils/utils/strategies/tokens/is-obtainable-token.spec.js +0 -148
- package/dist/cjs/common-utils/utils/strategies/tokens/is-usable-token.js +0 -15
- package/dist/cjs/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.js +0 -22
- package/dist/cjs/common-utils/utils/strategies/tokens/wrap-token-address.js +0 -8
- package/dist/cjs/common-utils/utils/strategies/tokens/wrap-token-address.spec.js +0 -15
- package/dist/cjs/common-utils/utils/strategies/types/chains.js +0 -1
- package/dist/cjs/common-utils/utils/strategies/types/credit-manager-data-legacy.js +0 -1
- package/dist/cjs/common-utils/utils/strategies/types/curator-filter.js +0 -1
- package/dist/cjs/common-utils/utils/strategies/types/index.js +0 -14
- package/dist/cjs/common-utils/utils/strategies/types/legacy-strategy-data-source.js +0 -30
- package/dist/cjs/common-utils/utils/strategies/types/points-slices.js +0 -1
- package/dist/cjs/common-utils/utils/strategies/types/sdk-state.js +0 -1
- package/dist/cjs/common-utils/utils/strategies/types/strategies-cm-list.js +0 -1
- package/dist/cjs/common-utils/utils/strategies/types/strategy-data-source.js +0 -1
- package/dist/cjs/common-utils/utils/strategies/types/strategy-data.js +0 -1
- package/dist/cjs/common-utils/utils/strategies/types/strategy-earnings.js +0 -1
- package/dist/cjs/common-utils/utils/strategies/types/strategy.js +0 -1
- package/dist/cjs/common-utils/utils/strategies/types/targetable.js +0 -1
- package/dist/cjs/common-utils/utils/strategies/types.js +0 -4
- package/dist/cjs/common-utils/utils/validation/index.js +0 -23
- package/dist/cjs/common-utils/utils/validation/is-zero-balance.js +0 -7
- package/dist/cjs/common-utils/utils/validation/validate-balance.js +0 -22
- package/dist/cjs/common-utils/utils/validation/validate-balance.spec.js +0 -54
- package/dist/cjs/common-utils/utils/validation/validate-balances.js +0 -17
- package/dist/cjs/common-utils/utils/validation/validate-balances.spec.js +0 -45
- package/dist/cjs/common-utils/utils/validation/validate-credit-manager.js +0 -8
- package/dist/cjs/common-utils/utils/validation/validate-credit-manager.spec.js +0 -36
- package/dist/cjs/common-utils/utils/validation/validate-hf.js +0 -10
- package/dist/cjs/common-utils/utils/validation/validate-hf.spec.js +0 -26
- package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-quota-status.js +0 -14
- package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-quota-status.spec.js +0 -29
- package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-status.js +0 -37
- package/dist/cjs/common-utils/utils/validation/validate-open-account-pool-status.spec.js +0 -98
- package/dist/cjs/common-utils/utils/validation/validate-open-account.js +0 -18
- package/dist/cjs/common-utils/utils/validation/validate-open-account.spec.js +0 -56
- package/dist/cjs/common-utils/utils/validation/validate-quota.js +0 -23
- package/dist/cjs/common-utils/utils/validation/validate-quota.spec.js +0 -88
- package/dist/cjs/common-utils/utils/validation/validate-token-to-obtain.js +0 -18
- package/dist/cjs/common-utils/utils/validation/validate-token-to-obtain.spec.js +0 -36
- package/dist/cjs/common-utils/utils/validation/validation-types.js +0 -1
- package/dist/cjs/onchain/accounts/intents/utils/convert-amount.js +0 -37
- package/dist/cjs/plugins/apy/ApyPlugin.js +0 -248
- package/dist/cjs/plugins/apy/apy-parser.js +0 -129
- package/dist/cjs/plugins/apy/constants.js +0 -7
- package/dist/cjs/plugins/apy/index.js +0 -18
- package/dist/cjs/plugins/apy/package.json +0 -1
- package/dist/cjs/plugins/apy/pool-apy-types.js +0 -1
- package/dist/cjs/plugins/apy/pool-apy-utils.js +0 -121
- package/dist/cjs/plugins/apy/strategy-data-source.js +0 -163
- package/dist/cjs/plugins/remote-configs/CustomConfigSource.js +0 -18
- package/dist/cjs/plugins/remote-configs/RemoteConfigSource.js +0 -26
- package/dist/cjs/plugins/remote-configs/RemoteConfigsPlugin.js +0 -127
- package/dist/cjs/plugins/remote-configs/index.js +0 -8
- package/dist/cjs/plugins/remote-configs/package.json +0 -1
- package/dist/cjs/preview/preview/applyRWAWrapUnwrap.js +0 -67
- package/dist/cjs/preview/preview/previewAdjustCreditAccount.js +0 -71
- package/dist/cjs/preview/preview/previewOpenCreditAccount.js +0 -75
- package/dist/cjs/preview/preview/previewPoolOperation.js +0 -25
- package/dist/cjs/rewards/apy/index.js +0 -3
- package/dist/cjs/rewards/apy/output-details.js +0 -1
- package/dist/cjs/rewards/apy/output.js +0 -1
- package/dist/cjs/rewards/rewards/api.js +0 -70
- package/dist/cjs/rewards/rewards/common.js +0 -1
- package/dist/cjs/rewards/rewards/extra-apy.js +0 -72
- package/dist/cjs/rewards/rewards/index.js +0 -6
- package/dist/cjs/rewards/rewards/merkl-api.js +0 -22
- package/dist/esm/common-utils/axios-cache/AxiosCache.js +0 -95
- package/dist/esm/common-utils/axios-cache/index.js +0 -2
- package/dist/esm/common-utils/charts/credit-manager.js +0 -99
- package/dist/esm/common-utils/charts/credit-session.js +0 -206
- package/dist/esm/common-utils/charts/index.js +0 -9
- package/dist/esm/common-utils/charts/pool.js +0 -175
- package/dist/esm/common-utils/charts/token-data.js +0 -67
- package/dist/esm/common-utils/index.js +0 -96
- package/dist/esm/common-utils/package.json +0 -1
- package/dist/esm/common-utils/static/index.js +0 -5
- package/dist/esm/common-utils/static/pool-config.js +0 -1
- package/dist/esm/common-utils/static/strategy.js +0 -1
- package/dist/esm/common-utils/static/trading-pair.js +0 -1
- package/dist/esm/common-utils/test-utils/index.js +0 -92
- package/dist/esm/common-utils/utils/apy/bonus-apy-from-points.js +0 -4
- package/dist/esm/common-utils/utils/apy/calculate-borrow-rate-from-utilization.js +0 -21
- package/dist/esm/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.js +0 -34
- package/dist/esm/common-utils/utils/apy/calculate-earnings.js +0 -22
- package/dist/esm/common-utils/utils/apy/calculate-earnings.spec.js +0 -68
- package/dist/esm/common-utils/utils/apy/calculate-effective-borrow-rate.js +0 -7
- package/dist/esm/common-utils/utils/apy/calculate-safe-borrow-rate.js +0 -19
- package/dist/esm/common-utils/utils/apy/calculate-safe-borrow-rate.spec.js +0 -39
- package/dist/esm/common-utils/utils/apy/get-complex-apy-list.js +0 -17
- package/dist/esm/common-utils/utils/apy/get-rate-with-fee.js +0 -15
- package/dist/esm/common-utils/utils/apy/get-safe-base-borrow-rate.js +0 -13
- package/dist/esm/common-utils/utils/apy/get-single-quota-borrow-rate.js +0 -15
- package/dist/esm/common-utils/utils/apy/index.js +0 -11
- package/dist/esm/common-utils/utils/apy/max-apy-formula.js +0 -13
- package/dist/esm/common-utils/utils/assets-math.js +0 -184
- package/dist/esm/common-utils/utils/constants.js +0 -6
- package/dist/esm/common-utils/utils/creditAccount/calc-health-factor.js +0 -40
- package/dist/esm/common-utils/utils/creditAccount/calc-overall-apy.js +0 -45
- package/dist/esm/common-utils/utils/creditAccount/calc-quota-borrow-rate.js +0 -21
- package/dist/esm/common-utils/utils/creditAccount/calc-relative-base-borrow-rate.js +0 -15
- package/dist/esm/common-utils/utils/creditAccount/debt.js +0 -44
- package/dist/esm/common-utils/utils/creditAccount/get-time-to-liquidation.js +0 -23
- package/dist/esm/common-utils/utils/creditAccount/index.js +0 -10
- package/dist/esm/common-utils/utils/creditAccount/liquidation-price.js +0 -38
- package/dist/esm/common-utils/utils/creditAccount/sort.js +0 -90
- package/dist/esm/common-utils/utils/index.js +0 -91
- package/dist/esm/common-utils/utils/price-math.js +0 -50
- package/dist/esm/common-utils/utils/strategies/assets/assets.js +0 -6
- package/dist/esm/common-utils/utils/strategies/assets/index.js +0 -2
- package/dist/esm/common-utils/utils/strategies/availability/check-boolean.js +0 -9
- package/dist/esm/common-utils/utils/strategies/availability/check-degen-nft.js +0 -12
- package/dist/esm/common-utils/utils/strategies/availability/index.js +0 -3
- package/dist/esm/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.js +0 -22
- package/dist/esm/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.js +0 -109
- package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.js +0 -30
- package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.js +0 -14
- package/dist/esm/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.js +0 -22
- package/dist/esm/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.js +0 -28
- package/dist/esm/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.js +0 -95
- package/dist/esm/common-utils/utils/strategies/credit-managers/index.js +0 -7
- package/dist/esm/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.js +0 -8
- package/dist/esm/common-utils/utils/strategies/eligibility/index.js +0 -3
- package/dist/esm/common-utils/utils/strategies/eligibility/is-strategy-eligible.js +0 -19
- package/dist/esm/common-utils/utils/strategies/eligibility/is-strategy-released.js +0 -7
- package/dist/esm/common-utils/utils/strategies/index.js +0 -65
- package/dist/esm/common-utils/utils/strategies/leverage/calculate-loss-coefficient.js +0 -9
- package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.js +0 -15
- package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.js +0 -20
- package/dist/esm/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.js +0 -304
- package/dist/esm/common-utils/utils/strategies/leverage/get-collateral-by-debt.js +0 -9
- package/dist/esm/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.js +0 -30
- package/dist/esm/common-utils/utils/strategies/leverage/get-factor-from-leverage.js +0 -8
- package/dist/esm/common-utils/utils/strategies/leverage/get-leverage-from-factor.js +0 -8
- package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-debt.js +0 -46
- package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-debt.spec.js +0 -222
- package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.js +0 -6
- package/dist/esm/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.js +0 -19
- package/dist/esm/common-utils/utils/strategies/leverage/index.js +0 -11
- package/dist/esm/common-utils/utils/strategies/leverage/max-leverage-threshold.js +0 -16
- package/dist/esm/common-utils/utils/strategies/leverage/max-leverage.js +0 -16
- package/dist/esm/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.js +0 -15
- package/dist/esm/common-utils/utils/strategies/lists/get-available-strategies.js +0 -31
- package/dist/esm/common-utils/utils/strategies/lists/get-disabled-strategies.js +0 -32
- package/dist/esm/common-utils/utils/strategies/lists/get-released-strategies-list-core.js +0 -23
- package/dist/esm/common-utils/utils/strategies/lists/get-released-strategies-list.js +0 -15
- package/dist/esm/common-utils/utils/strategies/lists/index.js +0 -4
- package/dist/esm/common-utils/utils/strategies/points/get-complex-points-list.js +0 -14
- package/dist/esm/common-utils/utils/strategies/points/get-points-info.js +0 -11
- package/dist/esm/common-utils/utils/strategies/points/get-points-rates.js +0 -7
- package/dist/esm/common-utils/utils/strategies/points/get-strategy-points.js +0 -40
- package/dist/esm/common-utils/utils/strategies/points/index.js +0 -5
- package/dist/esm/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.js +0 -2
- package/dist/esm/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.js +0 -17
- package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-apy.js +0 -62
- package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.js +0 -184
- package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-points.js +0 -37
- package/dist/esm/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.js +0 -124
- package/dist/esm/common-utils/utils/strategies/strategy-info/cm-availability-condition.js +0 -42
- package/dist/esm/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.js +0 -307
- package/dist/esm/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.spec.js +0 -264
- package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-info-core.js +0 -69
- package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-info.js +0 -32
- package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.js +0 -65
- package/dist/esm/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.js +0 -57
- package/dist/esm/common-utils/utils/strategies/strategy-info/index.js +0 -11
- package/dist/esm/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.js +0 -8
- package/dist/esm/common-utils/utils/strategies/strategy-state/index.js +0 -2
- package/dist/esm/common-utils/utils/strategies/strategy-state/is-strategy-disabled.js +0 -13
- package/dist/esm/common-utils/utils/strategies/tokens/add-amount-in-target.js +0 -17
- package/dist/esm/common-utils/utils/strategies/tokens/add-amount-in-target.spec.js +0 -29
- package/dist/esm/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.js +0 -9
- package/dist/esm/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.js +0 -11
- package/dist/esm/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.js +0 -37
- package/dist/esm/common-utils/utils/strategies/tokens/get-native-token-address.js +0 -7
- package/dist/esm/common-utils/utils/strategies/tokens/index.js +0 -13
- package/dist/esm/common-utils/utils/strategies/tokens/is-activated-token.js +0 -8
- package/dist/esm/common-utils/utils/strategies/tokens/is-apy-with-points-exception.js +0 -8
- package/dist/esm/common-utils/utils/strategies/tokens/is-collateral-token.js +0 -27
- package/dist/esm/common-utils/utils/strategies/tokens/is-collateral-token.spec.js +0 -143
- package/dist/esm/common-utils/utils/strategies/tokens/is-forbidden-token.js +0 -6
- package/dist/esm/common-utils/utils/strategies/tokens/is-obtainable-token.js +0 -12
- package/dist/esm/common-utils/utils/strategies/tokens/is-obtainable-token.spec.js +0 -148
- package/dist/esm/common-utils/utils/strategies/tokens/is-usable-token.js +0 -14
- package/dist/esm/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.js +0 -21
- package/dist/esm/common-utils/utils/strategies/tokens/wrap-token-address.js +0 -7
- package/dist/esm/common-utils/utils/strategies/tokens/wrap-token-address.spec.js +0 -15
- package/dist/esm/common-utils/utils/strategies/types/chains.js +0 -1
- package/dist/esm/common-utils/utils/strategies/types/credit-manager-data-legacy.js +0 -1
- package/dist/esm/common-utils/utils/strategies/types/curator-filter.js +0 -1
- package/dist/esm/common-utils/utils/strategies/types/index.js +0 -13
- package/dist/esm/common-utils/utils/strategies/types/legacy-strategy-data-source.js +0 -29
- package/dist/esm/common-utils/utils/strategies/types/points-slices.js +0 -1
- package/dist/esm/common-utils/utils/strategies/types/sdk-state.js +0 -1
- package/dist/esm/common-utils/utils/strategies/types/strategies-cm-list.js +0 -1
- package/dist/esm/common-utils/utils/strategies/types/strategy-data-source.js +0 -1
- package/dist/esm/common-utils/utils/strategies/types/strategy-data.js +0 -1
- package/dist/esm/common-utils/utils/strategies/types/strategy-earnings.js +0 -1
- package/dist/esm/common-utils/utils/strategies/types/strategy.js +0 -1
- package/dist/esm/common-utils/utils/strategies/types/targetable.js +0 -1
- package/dist/esm/common-utils/utils/strategies/types.js +0 -3
- package/dist/esm/common-utils/utils/validation/index.js +0 -12
- package/dist/esm/common-utils/utils/validation/is-zero-balance.js +0 -6
- package/dist/esm/common-utils/utils/validation/validate-balance.js +0 -21
- package/dist/esm/common-utils/utils/validation/validate-balance.spec.js +0 -54
- package/dist/esm/common-utils/utils/validation/validate-balances.js +0 -16
- package/dist/esm/common-utils/utils/validation/validate-balances.spec.js +0 -45
- package/dist/esm/common-utils/utils/validation/validate-credit-manager.js +0 -7
- package/dist/esm/common-utils/utils/validation/validate-credit-manager.spec.js +0 -36
- package/dist/esm/common-utils/utils/validation/validate-hf.js +0 -8
- package/dist/esm/common-utils/utils/validation/validate-hf.spec.js +0 -26
- package/dist/esm/common-utils/utils/validation/validate-open-account-pool-quota-status.js +0 -13
- package/dist/esm/common-utils/utils/validation/validate-open-account-pool-quota-status.spec.js +0 -29
- package/dist/esm/common-utils/utils/validation/validate-open-account-pool-status.js +0 -36
- package/dist/esm/common-utils/utils/validation/validate-open-account-pool-status.spec.js +0 -98
- package/dist/esm/common-utils/utils/validation/validate-open-account.js +0 -17
- package/dist/esm/common-utils/utils/validation/validate-open-account.spec.js +0 -56
- package/dist/esm/common-utils/utils/validation/validate-quota.js +0 -22
- package/dist/esm/common-utils/utils/validation/validate-quota.spec.js +0 -88
- package/dist/esm/common-utils/utils/validation/validate-token-to-obtain.js +0 -17
- package/dist/esm/common-utils/utils/validation/validate-token-to-obtain.spec.js +0 -36
- package/dist/esm/common-utils/utils/validation/validation-types.js +0 -1
- package/dist/esm/onchain/accounts/intents/utils/convert-amount.js +0 -36
- package/dist/esm/plugins/apy/ApyPlugin.js +0 -247
- package/dist/esm/plugins/apy/apy-parser.js +0 -126
- package/dist/esm/plugins/apy/constants.js +0 -5
- package/dist/esm/plugins/apy/index.js +0 -7
- package/dist/esm/plugins/apy/package.json +0 -1
- package/dist/esm/plugins/apy/pool-apy-types.js +0 -1
- package/dist/esm/plugins/apy/pool-apy-utils.js +0 -116
- package/dist/esm/plugins/apy/strategy-data-source.js +0 -162
- package/dist/esm/plugins/remote-configs/CustomConfigSource.js +0 -17
- package/dist/esm/plugins/remote-configs/RemoteConfigSource.js +0 -25
- package/dist/esm/plugins/remote-configs/RemoteConfigsPlugin.js +0 -126
- package/dist/esm/plugins/remote-configs/index.js +0 -5
- package/dist/esm/plugins/remote-configs/package.json +0 -1
- package/dist/esm/preview/preview/applyRWAWrapUnwrap.js +0 -66
- package/dist/esm/preview/preview/previewAdjustCreditAccount.js +0 -70
- package/dist/esm/preview/preview/previewOpenCreditAccount.js +0 -74
- package/dist/esm/preview/preview/previewPoolOperation.js +0 -24
- package/dist/esm/rewards/apy/index.js +0 -3
- package/dist/esm/rewards/apy/output-details.js +0 -1
- package/dist/esm/rewards/apy/output.js +0 -1
- package/dist/esm/rewards/rewards/api.js +0 -69
- package/dist/esm/rewards/rewards/common.js +0 -1
- package/dist/esm/rewards/rewards/extra-apy.js +0 -68
- package/dist/esm/rewards/rewards/index.js +0 -3
- package/dist/esm/rewards/rewards/merkl-api.js +0 -19
- package/dist/types/common-utils/axios-cache/AxiosCache.d.ts +0 -31
- package/dist/types/common-utils/axios-cache/index.d.ts +0 -2
- package/dist/types/common-utils/charts/credit-manager-payload.d.ts +0 -53
- package/dist/types/common-utils/charts/credit-manager.d.ts +0 -51
- package/dist/types/common-utils/charts/credit-session.d.ts +0 -113
- package/dist/types/common-utils/charts/credit-sessions-payload.d.ts +0 -113
- package/dist/types/common-utils/charts/graph-payload.d.ts +0 -12
- package/dist/types/common-utils/charts/index.d.ts +0 -9
- package/dist/types/common-utils/charts/pool-payload.d.ts +0 -114
- package/dist/types/common-utils/charts/pool.d.ts +0 -94
- package/dist/types/common-utils/charts/token-data.d.ts +0 -47
- package/dist/types/common-utils/index.d.ts +0 -117
- package/dist/types/common-utils/static/index.d.ts +0 -5
- package/dist/types/common-utils/static/migration-config.d.ts +0 -13
- package/dist/types/common-utils/static/pool-config.d.ts +0 -14
- package/dist/types/common-utils/static/strategy.d.ts +0 -86
- package/dist/types/common-utils/static/trading-pair.d.ts +0 -18
- package/dist/types/common-utils/test-utils/index.d.ts +0 -19
- package/dist/types/common-utils/utils/apy/bonus-apy-from-points.d.ts +0 -7
- package/dist/types/common-utils/utils/apy/calculate-borrow-rate-from-utilization.d.ts +0 -5
- package/dist/types/common-utils/utils/apy/calculate-borrow-rate-from-utilization.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/apy/calculate-earnings.d.ts +0 -19
- package/dist/types/common-utils/utils/apy/calculate-earnings.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/apy/calculate-effective-borrow-rate.d.ts +0 -9
- package/dist/types/common-utils/utils/apy/calculate-safe-borrow-rate.d.ts +0 -14
- package/dist/types/common-utils/utils/apy/calculate-safe-borrow-rate.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/apy/get-complex-apy-list.d.ts +0 -8
- package/dist/types/common-utils/utils/apy/get-rate-with-fee.d.ts +0 -10
- package/dist/types/common-utils/utils/apy/get-safe-base-borrow-rate.d.ts +0 -7
- package/dist/types/common-utils/utils/apy/get-single-quota-borrow-rate.d.ts +0 -14
- package/dist/types/common-utils/utils/apy/index.d.ts +0 -11
- package/dist/types/common-utils/utils/apy/max-apy-formula.d.ts +0 -9
- package/dist/types/common-utils/utils/assets-math.d.ts +0 -117
- package/dist/types/common-utils/utils/constants.d.ts +0 -7
- package/dist/types/common-utils/utils/creditAccount/calc-health-factor.d.ts +0 -32
- package/dist/types/common-utils/utils/creditAccount/calc-overall-apy.d.ts +0 -41
- package/dist/types/common-utils/utils/creditAccount/calc-quota-borrow-rate.d.ts +0 -24
- package/dist/types/common-utils/utils/creditAccount/calc-relative-base-borrow-rate.d.ts +0 -18
- package/dist/types/common-utils/utils/creditAccount/debt.d.ts +0 -39
- package/dist/types/common-utils/utils/creditAccount/get-time-to-liquidation.d.ts +0 -24
- package/dist/types/common-utils/utils/creditAccount/index.d.ts +0 -10
- package/dist/types/common-utils/utils/creditAccount/liquidation-price.d.ts +0 -31
- package/dist/types/common-utils/utils/creditAccount/sort.d.ts +0 -59
- package/dist/types/common-utils/utils/creditAccount/types.d.ts +0 -22
- package/dist/types/common-utils/utils/index.d.ts +0 -104
- package/dist/types/common-utils/utils/price-math.d.ts +0 -49
- package/dist/types/common-utils/utils/strategies/assets/assets.d.ts +0 -7
- package/dist/types/common-utils/utils/strategies/assets/index.d.ts +0 -2
- package/dist/types/common-utils/utils/strategies/availability/check-boolean.d.ts +0 -4
- package/dist/types/common-utils/utils/strategies/availability/check-degen-nft.d.ts +0 -8
- package/dist/types/common-utils/utils/strategies/availability/index.d.ts +0 -3
- package/dist/types/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.d.ts +0 -21
- package/dist/types/common-utils/utils/strategies/credit-managers/get-cm-allowed-collaterals.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list-core.d.ts +0 -14
- package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers-list.d.ts +0 -10
- package/dist/types/common-utils/utils/strategies/credit-managers/get-strategy-credit-managers.d.ts +0 -12
- package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +0 -17
- package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/credit-managers/index.d.ts +0 -7
- package/dist/types/common-utils/utils/strategies/credit-managers/is-credit-manager-usable.d.ts +0 -6
- package/dist/types/common-utils/utils/strategies/eligibility/index.d.ts +0 -3
- package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-eligible.d.ts +0 -16
- package/dist/types/common-utils/utils/strategies/eligibility/is-strategy-released.d.ts +0 -4
- package/dist/types/common-utils/utils/strategies/index.d.ts +0 -77
- package/dist/types/common-utils/utils/strategies/leverage/calculate-loss-coefficient.d.ts +0 -4
- package/dist/types/common-utils/utils/strategies/leverage/calculate-max-leverage-factor.d.ts +0 -15
- package/dist/types/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.d.ts +0 -14
- package/dist/types/common-utils/utils/strategies/leverage/calculate-max-strategy-debt.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/leverage/get-collateral-by-debt.d.ts +0 -5
- package/dist/types/common-utils/utils/strategies/leverage/get-collateral-by-debt.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/leverage/get-factor-from-leverage.d.ts +0 -7
- package/dist/types/common-utils/utils/strategies/leverage/get-leverage-from-factor.d.ts +0 -5
- package/dist/types/common-utils/utils/strategies/leverage/get-recommended-debt.d.ts +0 -24
- package/dist/types/common-utils/utils/strategies/leverage/get-recommended-debt.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.d.ts +0 -7
- package/dist/types/common-utils/utils/strategies/leverage/get-recommended-leverage-factor.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/leverage/index.d.ts +0 -11
- package/dist/types/common-utils/utils/strategies/leverage/max-leverage-threshold.d.ts +0 -8
- package/dist/types/common-utils/utils/strategies/leverage/max-leverage.d.ts +0 -12
- package/dist/types/common-utils/utils/strategies/lists/get-available-and-disabled-strategies.d.ts +0 -14
- package/dist/types/common-utils/utils/strategies/lists/get-available-strategies.d.ts +0 -11
- package/dist/types/common-utils/utils/strategies/lists/get-disabled-strategies.d.ts +0 -12
- package/dist/types/common-utils/utils/strategies/lists/get-released-strategies-list-core.d.ts +0 -16
- package/dist/types/common-utils/utils/strategies/lists/get-released-strategies-list.d.ts +0 -10
- package/dist/types/common-utils/utils/strategies/lists/index.d.ts +0 -4
- package/dist/types/common-utils/utils/strategies/points/get-complex-points-list.d.ts +0 -7
- package/dist/types/common-utils/utils/strategies/points/get-points-info.d.ts +0 -12
- package/dist/types/common-utils/utils/strategies/points/get-points-rates.d.ts +0 -6
- package/dist/types/common-utils/utils/strategies/points/get-strategy-points.d.ts +0 -27
- package/dist/types/common-utils/utils/strategies/points/index.d.ts +0 -5
- package/dist/types/common-utils/utils/strategies/sort-strategy-cms-by-availability/index.d.ts +0 -2
- package/dist/types/common-utils/utils/strategies/sort-strategy-cms-by-availability/sort-strategy-cms-by-availability.d.ts +0 -31
- package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +0 -31
- package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +0 -26
- package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/strategy-info/cm-availability-condition.d.ts +0 -6
- package/dist/types/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.d.ts +0 -22
- package/dist/types/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-info-core.d.ts +0 -21
- package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-info.d.ts +0 -5
- package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-max-apy.d.ts +0 -17
- package/dist/types/common-utils/utils/strategies/strategy-info/get-strategy-you-can-earn.d.ts +0 -31
- package/dist/types/common-utils/utils/strategies/strategy-info/index.d.ts +0 -11
- package/dist/types/common-utils/utils/strategies/strategy-info/is-strategy-cm-disabled.d.ts +0 -5
- package/dist/types/common-utils/utils/strategies/strategy-info/types.d.ts +0 -113
- package/dist/types/common-utils/utils/strategies/strategy-state/index.d.ts +0 -2
- package/dist/types/common-utils/utils/strategies/strategy-state/is-strategy-disabled.d.ts +0 -7
- package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +0 -10
- package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/tokens/get-chain-phantom-tokens.d.ts +0 -8
- package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +0 -16
- package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/tokens/get-native-token-address.d.ts +0 -4
- package/dist/types/common-utils/utils/strategies/tokens/index.d.ts +0 -13
- package/dist/types/common-utils/utils/strategies/tokens/is-activated-token.d.ts +0 -10
- package/dist/types/common-utils/utils/strategies/tokens/is-apy-with-points-exception.d.ts +0 -6
- package/dist/types/common-utils/utils/strategies/tokens/is-collateral-token.d.ts +0 -17
- package/dist/types/common-utils/utils/strategies/tokens/is-collateral-token.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/tokens/is-forbidden-token.d.ts +0 -9
- package/dist/types/common-utils/utils/strategies/tokens/is-obtainable-token.d.ts +0 -11
- package/dist/types/common-utils/utils/strategies/tokens/is-obtainable-token.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/tokens/is-usable-token.d.ts +0 -6
- package/dist/types/common-utils/utils/strategies/tokens/is-valid-extra-collateral-token.d.ts +0 -20
- package/dist/types/common-utils/utils/strategies/tokens/wrap-token-address.d.ts +0 -5
- package/dist/types/common-utils/utils/strategies/tokens/wrap-token-address.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/strategies/types/chains.d.ts +0 -6
- package/dist/types/common-utils/utils/strategies/types/credit-manager-data-legacy.d.ts +0 -34
- package/dist/types/common-utils/utils/strategies/types/curator-filter.d.ts +0 -5
- package/dist/types/common-utils/utils/strategies/types/index.d.ts +0 -13
- package/dist/types/common-utils/utils/strategies/types/legacy-strategy-data-source.d.ts +0 -7
- package/dist/types/common-utils/utils/strategies/types/points-slices.d.ts +0 -24
- package/dist/types/common-utils/utils/strategies/types/sdk-state.d.ts +0 -17
- package/dist/types/common-utils/utils/strategies/types/strategies-cm-list.d.ts +0 -9
- package/dist/types/common-utils/utils/strategies/types/strategy-data-source.d.ts +0 -22
- package/dist/types/common-utils/utils/strategies/types/strategy-data.d.ts +0 -19
- package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +0 -47
- package/dist/types/common-utils/utils/strategies/types/strategy.d.ts +0 -20
- package/dist/types/common-utils/utils/strategies/types/targetable.d.ts +0 -9
- package/dist/types/common-utils/utils/strategies/types.d.ts +0 -14
- package/dist/types/common-utils/utils/validation/index.d.ts +0 -12
- package/dist/types/common-utils/utils/validation/is-zero-balance.d.ts +0 -4
- package/dist/types/common-utils/utils/validation/validate-balance.d.ts +0 -25
- package/dist/types/common-utils/utils/validation/validate-balance.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/validation/validate-balances.d.ts +0 -13
- package/dist/types/common-utils/utils/validation/validate-balances.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/validation/validate-credit-manager.d.ts +0 -13
- package/dist/types/common-utils/utils/validation/validate-credit-manager.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/validation/validate-hf.d.ts +0 -12
- package/dist/types/common-utils/utils/validation/validate-hf.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/validation/validate-open-account-pool-quota-status.d.ts +0 -10
- package/dist/types/common-utils/utils/validation/validate-open-account-pool-quota-status.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/validation/validate-open-account-pool-status.d.ts +0 -26
- package/dist/types/common-utils/utils/validation/validate-open-account-pool-status.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/validation/validate-open-account.d.ts +0 -25
- package/dist/types/common-utils/utils/validation/validate-open-account.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/validation/validate-quota.d.ts +0 -24
- package/dist/types/common-utils/utils/validation/validate-quota.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/validation/validate-token-to-obtain.d.ts +0 -17
- package/dist/types/common-utils/utils/validation/validate-token-to-obtain.spec.d.ts +0 -1
- package/dist/types/common-utils/utils/validation/validation-types.d.ts +0 -10
- package/dist/types/onchain/accounts/intents/utils/convert-amount.d.ts +0 -13
- package/dist/types/plugins/apy/ApyPlugin.d.ts +0 -59
- package/dist/types/plugins/apy/apy-parser.d.ts +0 -10
- package/dist/types/plugins/apy/constants.d.ts +0 -5
- package/dist/types/plugins/apy/index.d.ts +0 -7
- package/dist/types/plugins/apy/pool-apy-types.d.ts +0 -45
- package/dist/types/plugins/apy/pool-apy-utils.d.ts +0 -77
- package/dist/types/plugins/apy/strategy-data-source.d.ts +0 -21
- package/dist/types/plugins/apy/types.d.ts +0 -64
- package/dist/types/plugins/remote-configs/CustomConfigSource.d.ts +0 -16
- package/dist/types/plugins/remote-configs/RemoteConfigSource.d.ts +0 -35
- package/dist/types/plugins/remote-configs/RemoteConfigsPlugin.d.ts +0 -29
- package/dist/types/plugins/remote-configs/index.d.ts +0 -8
- package/dist/types/plugins/remote-configs/types.d.ts +0 -26
- package/dist/types/preview/preview/applyRWAWrapUnwrap.d.ts +0 -17
- package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +0 -12
- package/dist/types/preview/preview/previewPoolOperation.d.ts +0 -11
- package/dist/types/rewards/apy/index.d.ts +0 -3
- package/dist/types/rewards/apy/output-details.d.ts +0 -99
- package/dist/types/rewards/apy/output.d.ts +0 -25
- package/dist/types/rewards/rewards/api.d.ts +0 -39
- package/dist/types/rewards/rewards/common.d.ts +0 -9
- package/dist/types/rewards/rewards/extra-apy.d.ts +0 -37
- package/dist/types/rewards/rewards/index.d.ts +0 -3
- package/dist/types/rewards/rewards/merkl-api.d.ts +0 -48
- /package/dist/cjs/{common-utils/charts/credit-manager-payload.js → model/analytics.js} +0 -0
- /package/dist/cjs/{common-utils/charts/credit-sessions-payload.js → model/errors.js} +0 -0
- /package/dist/cjs/{common-utils/charts/graph-payload.js → model/withdrawals.js} +0 -0
- /package/dist/cjs/{common-utils/utils/creditAccount → offchain/analytics}/types.js +0 -0
- /package/dist/cjs/{common-utils/utils/strategies/strategy-info → offchain/opportunities}/types.js +0 -0
- /package/dist/cjs/{plugins/apy → offchain/positions}/types.js +0 -0
- /package/dist/cjs/{plugins/remote-configs → onchain/opportunities}/types.js +0 -0
- /package/dist/cjs/{common-utils/charts/pool-payload.js → sdk/analytics/types.js} +0 -0
- /package/dist/cjs/{common-utils/static/migration-config.js → sdk/execute/types.js} +0 -0
- /package/dist/esm/{common-utils/charts/credit-manager-payload.js → model/analytics.js} +0 -0
- /package/dist/esm/{common-utils/charts/credit-sessions-payload.js → model/errors.js} +0 -0
- /package/dist/esm/{common-utils/charts/graph-payload.js → model/withdrawals.js} +0 -0
- /package/dist/esm/{common-utils/utils/creditAccount → offchain/analytics}/types.js +0 -0
- /package/dist/esm/{common-utils/utils/strategies/strategy-info → offchain/opportunities}/types.js +0 -0
- /package/dist/esm/{plugins/apy → offchain/positions}/types.js +0 -0
- /package/dist/esm/{plugins/remote-configs → onchain/opportunities}/types.js +0 -0
- /package/dist/esm/{common-utils/charts/pool-payload.js → sdk/analytics/types.js} +0 -0
- /package/dist/esm/{common-utils/static/migration-config.js → sdk/execute/types.js} +0 -0
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { iBaseRewardPoolAbi } from "../../abi/iBaseRewardPool.js";
|
|
2
|
-
import { ierc4626AdapterAbi } from "../../abi/ierc4626Adapter.js";
|
|
3
1
|
import { AP_REWARDS_COMPRESSOR } from "../constants/address-provider.js";
|
|
4
2
|
import { ADDRESS_0X0 } from "../constants/addresses.js";
|
|
5
3
|
import { MAX_UINT256 } from "../constants/math.js";
|
|
@@ -10,6 +8,8 @@ import "../base/index.js";
|
|
|
10
8
|
import { AccountBotsService } from "./bots/AccountBotsService.js";
|
|
11
9
|
import "./bots/index.js";
|
|
12
10
|
import { rewardsCompressorAbi } from "../../abi/compressors/rewardsCompressor.js";
|
|
11
|
+
import { iBaseRewardPoolAbi } from "../../abi/iBaseRewardPool.js";
|
|
12
|
+
import { ierc4626AdapterAbi } from "../../abi/ierc4626Adapter.js";
|
|
13
13
|
import { expectedBalanceDeltas } from "../market/credit/expectedBalanceDeltas.js";
|
|
14
14
|
import "../market/index.js";
|
|
15
15
|
import { CreditAccountCompressor } from "./credit-account-compressor/CreditAccountCompressor.js";
|
|
@@ -157,16 +157,6 @@ var CreditAccountsServiceV310 = class extends SDKConstruct {
|
|
|
157
157
|
});
|
|
158
158
|
}
|
|
159
159
|
/**
|
|
160
|
-
* {@inheritDoc ICreditAccountsService.getPendingWithdrawals}
|
|
161
|
-
**/
|
|
162
|
-
async getPendingWithdrawals({ creditAccount }) {
|
|
163
|
-
const { claimable, pending } = await this.#withdrawalCompressor.getCurrentWithdrawals(creditAccount);
|
|
164
|
-
return {
|
|
165
|
-
claimableNow: claimable,
|
|
166
|
-
pending
|
|
167
|
-
};
|
|
168
|
-
}
|
|
169
|
-
/**
|
|
170
160
|
* {@inheritDoc ICreditAccountsService.assembleStartDelayedWithdrawalCalls}
|
|
171
161
|
**/
|
|
172
162
|
assembleStartDelayedWithdrawalCalls({ creditFacade, preview }) {
|
|
@@ -43,7 +43,7 @@ var CreditAccountCompressor = class extends SDKConstruct {
|
|
|
43
43
|
let investor;
|
|
44
44
|
if (raw.success) {
|
|
45
45
|
ca = raw;
|
|
46
|
-
investor = await factory?.getInvestor(raw.creditAccount,
|
|
46
|
+
investor = await factory?.getInvestor(raw.creditAccount, { blockNumber });
|
|
47
47
|
} else {
|
|
48
48
|
const { txs: priceUpdateTxs } = await marketSuite.priceOracle.priceUpdateTxsForAccount(raw);
|
|
49
49
|
[ca, investor] = await simulateWithPriceUpdates(this.client, {
|
|
@@ -5,8 +5,10 @@ import { CreditAccountCompressorV310Contract } from "./credit-account-compressor
|
|
|
5
5
|
import { CreditAccountCompressor } from "./credit-account-compressor/CreditAccountCompressor.js";
|
|
6
6
|
import "./credit-account-compressor/index.js";
|
|
7
7
|
import { CreditAccountsServiceV310 } from "./CreditAccountsServiceV310.js";
|
|
8
|
-
import {
|
|
8
|
+
import { isPhantomToken } from "./intents/utils/pick-token.js";
|
|
9
|
+
import { borrowable } from "./intents/guards.js";
|
|
9
10
|
import { fetchCreditAccountSlice, toCreditAccountSlice } from "./intents/utils/credit-account-slice.js";
|
|
11
|
+
import { calcDefaultQuota, calcQuotaUpdate, calcRecommendedQuota, roundUpQuota } from "./quota-utils.js";
|
|
10
12
|
import { CreditAccountOperationsService } from "./intents/index.js";
|
|
11
13
|
import { LIQUIDATION_APPROVAL_BUFFER, LIQUIDATION_COMPRESSOR_V313_ADDRESS } from "./liquidations/constants.js";
|
|
12
14
|
import { LiquidationsService } from "./liquidations/LiquidationsService.js";
|
|
@@ -16,7 +18,6 @@ import "./types.js";
|
|
|
16
18
|
import { DELAYED_INTENT_TYPES, DELAYED_INTENT_VERSION, decodeDelayedIntent, encodeDelayedIntent } from "./withdrawal-compressor/intent-codec.js";
|
|
17
19
|
import { AbstractWithdrawalCompressorContract, iCreditAccountAbi, toClaimableWithdrawal, toPendingWithdrawal, toRequestableWithdrawal } from "./withdrawal-compressor/AbstractWithdrawalCompressorContract.js";
|
|
18
20
|
import { getWithdrawalCompressorAddress } from "./withdrawal-compressor/addresses.js";
|
|
19
|
-
import { InvalidDelayedIntentError } from "./withdrawal-compressor/errors.js";
|
|
20
21
|
import { RedemptionLoggerV310Contract } from "./withdrawal-compressor/RedemptionLoggerV310Contract.js";
|
|
21
22
|
import { createRedemptionLogger } from "./withdrawal-compressor/createRedemptionLogger.js";
|
|
22
23
|
import { WithdrawalCompressorV310Contract } from "./withdrawal-compressor/WithdrawalCompressorV310Contract.js";
|
|
@@ -25,4 +26,4 @@ import { toWithdrawalStatus } from "./withdrawal-compressor/types.js";
|
|
|
25
26
|
import { WithdrawalCompressorV313Contract } from "./withdrawal-compressor/WithdrawalCompressorV313Contract.js";
|
|
26
27
|
import { createWithdrawalCompressor } from "./withdrawal-compressor/createWithdrawalCompressor.js";
|
|
27
28
|
import "./withdrawal-compressor/index.js";
|
|
28
|
-
export { AbstractWithdrawalCompressorContract, AccountBotsService, CreditAccountCompressor, CreditAccountCompressorV310Contract, CreditAccountOperationsService, CreditAccountsServiceV310, DELAYED_INTENT_TYPES, DELAYED_INTENT_VERSION,
|
|
29
|
+
export { AbstractWithdrawalCompressorContract, AccountBotsService, CreditAccountCompressor, CreditAccountCompressorV310Contract, CreditAccountOperationsService, CreditAccountsServiceV310, DELAYED_INTENT_TYPES, DELAYED_INTENT_VERSION, LIQUIDATION_APPROVAL_BUFFER, LIQUIDATION_COMPRESSOR_V313_ADDRESS, LiquidationsService, MultichainLiquidationsService, PeripheryCompressorV310Contract, RedemptionLoggerV310Contract, WithdrawalCompressorV310Contract, WithdrawalCompressorV311Contract, WithdrawalCompressorV313Contract, borrowable, calcDefaultQuota, calcQuotaUpdate, calcRecommendedQuota, createRedemptionLogger, createWithdrawalCompressor, decodeDelayedIntent, encodeDelayedIntent, fetchCreditAccountSlice, getWithdrawalCompressorAddress, iCreditAccountAbi, isPhantomToken, roundUpQuota, toClaimableWithdrawal, toCreditAccountSlice, toPendingWithdrawal, toRequestableWithdrawal, toWithdrawalStatus };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import "../../
|
|
2
|
-
import "../../
|
|
3
|
-
import {
|
|
1
|
+
import { MIN_HEALTH_FACTOR_FACADE, checkBorrowLimit, checkCollateralised, checkCreditManagerPaused, checkForbiddenToken, checkMarketExpired, checkQuotaLimit } from "../../validation/checks.js";
|
|
2
|
+
import { raise } from "../../validation/refusal.js";
|
|
3
|
+
import { toToken } from "../../validation/token.js";
|
|
4
4
|
import { eq } from "./utils/common.js";
|
|
5
5
|
import { isPhantomToken } from "./utils/pick-token.js";
|
|
6
6
|
//#region src/onchain/accounts/intents/guards.ts
|
|
@@ -12,14 +12,27 @@ import { isPhantomToken } from "./utils/pick-token.js";
|
|
|
12
12
|
* pool has run out of what it lends. On-chain those come back as a reverted
|
|
13
13
|
* multicall with a selector no form can explain, so they are read from the
|
|
14
14
|
* loaded market and reported as refusals instead.
|
|
15
|
+
*
|
|
16
|
+
* Every guard here refuses something the market decides rather than something
|
|
17
|
+
* the arithmetic cannot do, which is why all six of their reasons are
|
|
18
|
+
* `blocking`: the walk that hit one still reached an end state, and a caller
|
|
19
|
+
* gets that state alongside the refusal.
|
|
15
20
|
*/
|
|
16
21
|
/**
|
|
17
22
|
* The facade takes no multicall while it is paused or past its expiration, so
|
|
18
23
|
* every intent the engine previews would revert on arrival.
|
|
19
24
|
*/
|
|
20
25
|
function assertMarketOperable(suite) {
|
|
21
|
-
|
|
22
|
-
|
|
26
|
+
const creditManager = suite.creditManager.address;
|
|
27
|
+
raise(checkCreditManagerPaused({
|
|
28
|
+
isPaused: suite.isPaused,
|
|
29
|
+
creditManager
|
|
30
|
+
}), `${creditManager} is paused`);
|
|
31
|
+
raise(checkMarketExpired({
|
|
32
|
+
isExpired: suite.isExpired,
|
|
33
|
+
creditManager,
|
|
34
|
+
expirationDate: suite.creditFacade.expirationDate
|
|
35
|
+
}), `${creditManager} expired at ${suite.creditFacade.expirationDate}`);
|
|
23
36
|
}
|
|
24
37
|
/**
|
|
25
38
|
* What the pool will hand this manager in one transaction: the tightest of its
|
|
@@ -30,18 +43,35 @@ function assertMarketOperable(suite) {
|
|
|
30
43
|
function borrowable(suite) {
|
|
31
44
|
const { pool } = suite.market.pool;
|
|
32
45
|
const { maxDebtPerBlockMultiplier, maxDebt } = suite.creditFacade;
|
|
33
|
-
if (maxDebtPerBlockMultiplier === 0) return
|
|
46
|
+
if (maxDebtPerBlockMultiplier === 0) return {
|
|
47
|
+
limit: 0n,
|
|
48
|
+
binding: "facadePerBlockCap"
|
|
49
|
+
};
|
|
34
50
|
const available = pool.creditManagerDebtParams.get(suite.creditManager.address)?.available;
|
|
35
51
|
return [
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
52
|
+
{
|
|
53
|
+
limit: pool.availableLiquidity,
|
|
54
|
+
binding: "poolAvailableLiquidity"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
limit: maxDebt * BigInt(maxDebtPerBlockMultiplier),
|
|
58
|
+
binding: "facadePerBlockCap"
|
|
59
|
+
},
|
|
60
|
+
...available === void 0 ? [] : [{
|
|
61
|
+
limit: available,
|
|
62
|
+
binding: "managerDebtAvailable"
|
|
63
|
+
}]
|
|
64
|
+
].reduce((a, b) => b.limit < a.limit ? b : a);
|
|
40
65
|
}
|
|
41
66
|
/** The pool has to be able to lend what the plan means to draw. */
|
|
42
|
-
function assertCanBorrow(suite, amount) {
|
|
43
|
-
const limit = borrowable(suite);
|
|
44
|
-
|
|
67
|
+
function assertCanBorrow(sdk, suite, amount) {
|
|
68
|
+
const { limit, binding } = borrowable(suite);
|
|
69
|
+
raise(checkBorrowLimit({
|
|
70
|
+
requested: amount,
|
|
71
|
+
available: limit,
|
|
72
|
+
binding,
|
|
73
|
+
underlying: toToken(sdk, suite.market.pool.underlying)
|
|
74
|
+
}), `borrow: ${amount} exceeds what the pool can lend now (${limit})`);
|
|
45
75
|
}
|
|
46
76
|
/**
|
|
47
77
|
* What the account is allowed to end up holding more of than it started with.
|
|
@@ -61,9 +91,17 @@ function assertGrowthAllowed(args) {
|
|
|
61
91
|
const underlying = market.pool.underlying;
|
|
62
92
|
for (const { token, balance } of after) {
|
|
63
93
|
if (balance <= (before.find((a) => eq(a.token, token))?.balance ?? 0n)) continue;
|
|
64
|
-
|
|
94
|
+
raise(checkForbiddenToken({
|
|
95
|
+
token: toToken(sdk, token),
|
|
96
|
+
isForbidden: forbidden.some((f) => eq(f, token))
|
|
97
|
+
}), `${token} is forbidden in this market and the plan buys more of it`);
|
|
65
98
|
if (eq(token, underlying) || isPhantomToken(sdk, token)) continue;
|
|
66
|
-
if (!market.pool.pqk.hasActiveQuota(token))
|
|
99
|
+
if (!market.pool.pqk.hasActiveQuota(token)) raise(checkQuotaLimit({
|
|
100
|
+
token: toToken(sdk, token),
|
|
101
|
+
requested: void 0,
|
|
102
|
+
available: 0n,
|
|
103
|
+
underlying: toToken(sdk, underlying)
|
|
104
|
+
}), `${token} takes no quota in this market, so it counts as no collateral`);
|
|
67
105
|
}
|
|
68
106
|
}
|
|
69
107
|
/**
|
|
@@ -71,10 +109,23 @@ function assertGrowthAllowed(args) {
|
|
|
71
109
|
* and reverts if the collateral does not cover it, so a plan that lands the
|
|
72
110
|
* account below water is refused here.
|
|
73
111
|
*
|
|
74
|
-
* The bar is the
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
*
|
|
112
|
+
* The bar is the facade's own `1.0`, because this guard answers one question:
|
|
113
|
+
* would the transaction revert. It is deliberately not `MIN_HF_LIMITED`, and
|
|
114
|
+
* the three bars in this codebase are three different jobs:
|
|
115
|
+
*
|
|
116
|
+
* - here, `1.0` — what the facade enforces, so what a plan must clear to land;
|
|
117
|
+
* - `maxWithdrawCollateral` sizes at `MIN_HF_LIMITED + 2` — a *sizing* helper
|
|
118
|
+
* leaving headroom, which is not the same as a validity check;
|
|
119
|
+
* - a form refuses at or below `MIN_HF_LIMITED` (`MIN_HEALTH_FACTOR_FORM`).
|
|
120
|
+
*
|
|
121
|
+
* Raising this one to `MIN_HF_LIMITED` was tried and reverted: it made
|
|
122
|
+
* `maxWithdraw` hand back a ceiling this guard then refused, and it blocked
|
|
123
|
+
* small top-ups of an account sitting in `[1.0, 1.01)` — the very operations
|
|
124
|
+
* that rescue it. A form wanting the stricter bar has `validateHF`.
|
|
125
|
+
*
|
|
126
|
+
* Note that a position already underwater cannot be nursed back one step at a
|
|
127
|
+
* time — the check is on where the transaction ends, not on whether it
|
|
128
|
+
* improved things.
|
|
78
129
|
*
|
|
79
130
|
* @remarks
|
|
80
131
|
* The caller decides the pricing the factor was computed at: main prices, or
|
|
@@ -82,20 +133,31 @@ function assertGrowthAllowed(args) {
|
|
|
82
133
|
* whose reserve feed the SDK cannot read keeps its main price, so a plan can
|
|
83
134
|
* still be refused on-chain after passing here.
|
|
84
135
|
*/
|
|
85
|
-
function assertCollateralised(healthFactorBps) {
|
|
86
|
-
|
|
136
|
+
function assertCollateralised(healthFactorBps, safePrices) {
|
|
137
|
+
const required = MIN_HEALTH_FACTOR_FACADE;
|
|
138
|
+
raise(checkCollateralised({
|
|
139
|
+
healthFactor: healthFactorBps,
|
|
140
|
+
required,
|
|
141
|
+
safePrices
|
|
142
|
+
}), `the account would end at a health factor of ${healthFactorBps}, below ${required}`);
|
|
87
143
|
}
|
|
88
144
|
/**
|
|
89
145
|
* A quota can only be raised as far as the market still has room for: past the
|
|
90
146
|
* token's limit the keeper takes nothing more, whoever is asking.
|
|
91
147
|
*/
|
|
92
|
-
function assertQuotaHeadroom(market, increases) {
|
|
148
|
+
function assertQuotaHeadroom(sdk, market, increases) {
|
|
149
|
+
const underlying = market.pool.underlying;
|
|
93
150
|
for (const { token, balance } of increases) {
|
|
94
151
|
if (balance <= 0n) continue;
|
|
95
152
|
const quota = market.pool.pqk.quotas.get(token);
|
|
96
153
|
if (!quota) continue;
|
|
97
154
|
const left = quota.limit - quota.totalQuoted;
|
|
98
|
-
|
|
155
|
+
raise(checkQuotaLimit({
|
|
156
|
+
token: toToken(sdk, token),
|
|
157
|
+
requested: balance,
|
|
158
|
+
available: left,
|
|
159
|
+
underlying: toToken(sdk, underlying)
|
|
160
|
+
}), `${token} has ${left} of quota left, the plan needs ${balance}`);
|
|
99
161
|
}
|
|
100
162
|
}
|
|
101
163
|
//#endregion
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { SDKConstruct } from "../../base/SDKConstruct.js";
|
|
2
|
-
import { MIN_HF_LIMITED } from "
|
|
3
|
-
import { IntentPreviewError } from "
|
|
4
|
-
import {
|
|
2
|
+
import { MIN_HF_LIMITED } from "../../validation/checks.js";
|
|
3
|
+
import { IntentPreviewError, refuse } from "../../validation/refusal.js";
|
|
4
|
+
import { isPhantomToken } from "./utils/pick-token.js";
|
|
5
|
+
import { assertMarketOperable, borrowable } from "./guards.js";
|
|
6
|
+
import { calcLeverageBand } from "./leverage-band.js";
|
|
5
7
|
import { maxProportionalWithdrawal } from "./math.js";
|
|
6
8
|
import { maxWithdrawCollateral } from "./maxWithdrawCollateral.js";
|
|
7
9
|
import { fetchCreditAccountSlice, toCreditAccountSlice } from "./utils/credit-account-slice.js";
|
|
8
|
-
import {
|
|
10
|
+
import { buildOpenStrategyState } from "./open-strategy.js";
|
|
9
11
|
import { planAddCollateral, planAdjustLeverage, planAdjustLeverageDelayed, planDeposit, planRepay, planWithdraw, planWithdrawAsset, planWithdrawDelayed } from "./plan.js";
|
|
10
12
|
import { realize } from "./realize.js";
|
|
11
13
|
import { accountView } from "./view.js";
|
|
@@ -43,17 +45,27 @@ var CreditAccountOperationsService = class extends SDKConstruct {
|
|
|
43
45
|
}));
|
|
44
46
|
}
|
|
45
47
|
/**
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
48
|
+
* Both ends of what a `WITHDRAW` can take out, in underlying: the largest
|
|
49
|
+
* partial withdrawal that keeps leverage and stays inside the facade's debt
|
|
50
|
+
* band, and the net value an exit hands over. They are reported together
|
|
51
|
+
* because a withdraw form needs both — the range it may offer, and the one
|
|
52
|
+
* amount past it that is allowed — and because the distance between them is
|
|
53
|
+
* the account's own, not a constant a caller could assume.
|
|
54
|
+
*
|
|
55
|
+
* Takes no target health factor, unlike {@link maxWithdrawCollateral}: a
|
|
56
|
+
* proportional withdrawal leaves the factor where it found it, and the
|
|
57
|
+
* facade's `minDebt` is what bounds it.
|
|
50
58
|
*
|
|
51
59
|
* @param props - Account slice and the SDK holding its market
|
|
52
|
-
* @returns
|
|
60
|
+
* @returns The two ceilings, see {@link WithdrawCeilings} for the gap between
|
|
61
|
+
* them
|
|
53
62
|
*/
|
|
54
63
|
maxWithdraw(props) {
|
|
55
64
|
const view = accountView(props.creditAccount, props.sdk);
|
|
56
|
-
return
|
|
65
|
+
return {
|
|
66
|
+
partial: maxProportionalWithdrawal(view, view.band),
|
|
67
|
+
exit: view.collateral > 0n ? view.collateral : 0n
|
|
68
|
+
};
|
|
57
69
|
}
|
|
58
70
|
/**
|
|
59
71
|
* Debt a `REPAY` would have to cover to settle the account, in underlying
|
|
@@ -72,20 +84,44 @@ var CreditAccountOperationsService = class extends SDKConstruct {
|
|
|
72
84
|
return accountView(props.creditAccount, props.sdk).debt;
|
|
73
85
|
}
|
|
74
86
|
/**
|
|
87
|
+
* The leverages a position of a given size can be opened at, or moved to.
|
|
88
|
+
*
|
|
89
|
+
* A credit manager's `maxLeverage` follows from the liquidation threshold
|
|
90
|
+
* alone, so it is the same for a hundred dollars and for a million. What a
|
|
91
|
+
* given deposit reaches is decided by the debt it implies and by the band
|
|
92
|
+
* the market puts that debt in — the range a leverage slider should offer.
|
|
93
|
+
*
|
|
94
|
+
* Unlike the other ceilings here this one reads no account: opening has none
|
|
95
|
+
* yet, and adjusting measures against the net value the caller already
|
|
96
|
+
* holds. Nothing is fetched, so a form can ask on every keystroke.
|
|
97
|
+
*
|
|
98
|
+
* @param props - The manager, the SDK holding its market, what stands
|
|
99
|
+
* behind the position, and optionally the health factor the ceiling should
|
|
100
|
+
* leave
|
|
101
|
+
* @returns The band, or nothing when the market has none to offer
|
|
102
|
+
*/
|
|
103
|
+
leverageBand(props) {
|
|
104
|
+
return calcLeverageBand(props);
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
75
107
|
* Largest `WITHDRAW_ASSET` amount of one token the account can take out
|
|
76
|
-
* while its health factor stays at
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
*
|
|
108
|
+
* while its health factor stays at `targetHF` — the ceiling a
|
|
109
|
+
* withdraw-collateral form should offer. Thresholds, prices and quota
|
|
110
|
+
* activity come from the account's market, valued the way the facade values
|
|
111
|
+
* a call that pays out; zero debt frees the whole balance.
|
|
112
|
+
*
|
|
113
|
+
* The default is {@link MIN_HF_LIMITED}, the bar a form holds an
|
|
114
|
+
* account to.
|
|
80
115
|
*
|
|
81
|
-
* @param props - Account slice, the SDK holding its market,
|
|
82
|
-
*
|
|
116
|
+
* @param props - Account slice, the SDK holding its market, the collateral
|
|
117
|
+
* to withdraw, and optionally the health factor to leave behind
|
|
83
118
|
* @returns Amount in the token's units; `0n` when nothing can leave
|
|
84
119
|
*/
|
|
85
120
|
maxWithdrawCollateral(props) {
|
|
121
|
+
const { targetHF = MIN_HF_LIMITED, ...rest } = props;
|
|
86
122
|
return maxWithdrawCollateral({
|
|
87
|
-
...
|
|
88
|
-
targetHF:
|
|
123
|
+
...rest,
|
|
124
|
+
targetHF: targetHF + 2n
|
|
89
125
|
});
|
|
90
126
|
}
|
|
91
127
|
/**
|
|
@@ -139,7 +175,7 @@ var CreditAccountOperationsService = class extends SDKConstruct {
|
|
|
139
175
|
});
|
|
140
176
|
return {
|
|
141
177
|
...result,
|
|
142
|
-
|
|
178
|
+
state: tail.state,
|
|
143
179
|
delayed
|
|
144
180
|
};
|
|
145
181
|
} catch (e) {
|
|
@@ -169,9 +205,11 @@ var CreditAccountOperationsService = class extends SDKConstruct {
|
|
|
169
205
|
const [instant, delayed] = await Promise.allSettled([this.startIntent(props), this.startDelayedIntent(props)]);
|
|
170
206
|
const instantRoute = instant.status === "fulfilled" && instant.value.ok ? instant.value : void 0;
|
|
171
207
|
const delayedRoute = delayed.status === "fulfilled" && delayed.value.ok ? delayed.value : void 0;
|
|
208
|
+
const instantRefusal = instant.status === "fulfilled" && !instant.value.ok ? instant.value : void 0;
|
|
209
|
+
const delayedRefusal = delayed.status === "fulfilled" && !delayed.value.ok ? delayed.value : void 0;
|
|
172
210
|
const refused = {
|
|
173
|
-
instant:
|
|
174
|
-
delayed:
|
|
211
|
+
instant: instantRefusal?.reason,
|
|
212
|
+
delayed: delayedRefusal?.reason
|
|
175
213
|
};
|
|
176
214
|
if (instantRoute || delayedRoute) return {
|
|
177
215
|
ok: true,
|
|
@@ -181,11 +219,10 @@ var CreditAccountOperationsService = class extends SDKConstruct {
|
|
|
181
219
|
};
|
|
182
220
|
const failed = [instant, delayed].find((s) => s.status === "rejected");
|
|
183
221
|
if (failed?.status === "rejected") throw failed.reason;
|
|
184
|
-
const
|
|
185
|
-
if (
|
|
222
|
+
const chosen = instantRefusal ?? delayedRefusal;
|
|
223
|
+
if (chosen === void 0) throw new Error("intentRoutes: a route neither answered nor refused");
|
|
186
224
|
return {
|
|
187
|
-
|
|
188
|
-
reason,
|
|
225
|
+
...chosen,
|
|
189
226
|
refused
|
|
190
227
|
};
|
|
191
228
|
}
|
|
@@ -198,17 +235,36 @@ var CreditAccountOperationsService = class extends SDKConstruct {
|
|
|
198
235
|
* whole tail: the tokens land on the account and only their quota has to
|
|
199
236
|
* catch up.
|
|
200
237
|
*
|
|
238
|
+
* A claim that brought only part of what the request queued — a legacy Mellow
|
|
239
|
+
* multivault, which pays out what it holds liquid and re-queues the rest — is
|
|
240
|
+
* served in proportion, and what it did not settle comes back as `remainder`:
|
|
241
|
+
* the withdrawal still in flight and the intent to finish it with.
|
|
242
|
+
*
|
|
201
243
|
* @param props - The recorded intent, the account slice as it stands now, and
|
|
202
244
|
* the matured claimable
|
|
203
|
-
* @returns Shaped exactly like {@link startIntent}'s result
|
|
204
|
-
* an operation are consumed the same way
|
|
245
|
+
* @returns Shaped exactly like {@link startIntent}'s result with the remainder
|
|
246
|
+
* beside it, so both halves of an operation are consumed the same way
|
|
205
247
|
*/
|
|
206
248
|
async finishIntent(props) {
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
249
|
+
let remainder;
|
|
250
|
+
const result = await this.#preview(props, () => {
|
|
251
|
+
const tail = planTail({
|
|
252
|
+
intent: props.intent,
|
|
253
|
+
claimable: props.claimable,
|
|
254
|
+
view: accountView(props.creditAccount, props.sdk)
|
|
255
|
+
});
|
|
256
|
+
remainder = tail.remainder;
|
|
257
|
+
return tail.steps;
|
|
258
|
+
});
|
|
259
|
+
if (!result.ok) return result;
|
|
260
|
+
const { operations, state, calls } = result;
|
|
261
|
+
return {
|
|
262
|
+
ok: true,
|
|
263
|
+
operations,
|
|
264
|
+
state,
|
|
265
|
+
calls,
|
|
266
|
+
remainder
|
|
267
|
+
};
|
|
212
268
|
}
|
|
213
269
|
/**
|
|
214
270
|
* Previews opening a brand-new leveraged position.
|
|
@@ -226,7 +282,7 @@ var CreditAccountOperationsService = class extends SDKConstruct {
|
|
|
226
282
|
try {
|
|
227
283
|
return {
|
|
228
284
|
ok: true,
|
|
229
|
-
|
|
285
|
+
state: await buildOpenStrategyState(props)
|
|
230
286
|
};
|
|
231
287
|
} catch (e) {
|
|
232
288
|
return asFailure(e);
|
|
@@ -245,7 +301,7 @@ var CreditAccountOperationsService = class extends SDKConstruct {
|
|
|
245
301
|
return {
|
|
246
302
|
ok: true,
|
|
247
303
|
operations,
|
|
248
|
-
|
|
304
|
+
state,
|
|
249
305
|
calls,
|
|
250
306
|
delayed
|
|
251
307
|
};
|
|
@@ -257,24 +313,18 @@ var CreditAccountOperationsService = class extends SDKConstruct {
|
|
|
257
313
|
/** Drops the delayed half for the flows that cannot produce one. */
|
|
258
314
|
function plain(result) {
|
|
259
315
|
if (!result.ok) return result;
|
|
260
|
-
const { operations,
|
|
316
|
+
const { operations, state, calls } = result;
|
|
261
317
|
return {
|
|
262
318
|
ok: true,
|
|
263
319
|
operations,
|
|
264
|
-
|
|
320
|
+
state,
|
|
265
321
|
calls
|
|
266
322
|
};
|
|
267
323
|
}
|
|
268
324
|
/** Unviable requests are values; anything else is a genuine failure. */
|
|
269
325
|
function asFailure(e) {
|
|
270
|
-
if (e instanceof IntentPreviewError) return
|
|
271
|
-
|
|
272
|
-
reason: e.reason
|
|
273
|
-
};
|
|
274
|
-
if (isUnroutable(e)) return {
|
|
275
|
-
ok: false,
|
|
276
|
-
reason: "unsupportedTokenPair"
|
|
277
|
-
};
|
|
326
|
+
if (e instanceof IntentPreviewError) return refuse(e.reason, e.detail);
|
|
327
|
+
if (isUnroutable(e)) return refuse("unsupportedTokenPair", void 0);
|
|
278
328
|
throw e;
|
|
279
329
|
}
|
|
280
330
|
/**
|
|
@@ -290,4 +340,4 @@ function isUnroutable(e) {
|
|
|
290
340
|
return false;
|
|
291
341
|
}
|
|
292
342
|
//#endregion
|
|
293
|
-
export { CreditAccountOperationsService,
|
|
343
|
+
export { CreditAccountOperationsService, borrowable, fetchCreditAccountSlice, isPhantomToken, toCreditAccountSlice };
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { BigIntMath } from "../../utils/bigint-math.js";
|
|
2
|
+
import { LEVERAGE_DECIMALS } from "../../constants/math.js";
|
|
3
|
+
//#region src/onchain/accounts/intents/leverage-band.ts
|
|
4
|
+
/**
|
|
5
|
+
* The leverages this market will actually fund for a position of this size.
|
|
6
|
+
*
|
|
7
|
+
* A credit manager's `maxLeverage` follows from the liquidation threshold
|
|
8
|
+
* alone, so it is the same for a hundred dollars and for a million. What a
|
|
9
|
+
* given deposit reaches is decided by the debt it implies —
|
|
10
|
+
* `debt = netValue × (leverage − 1)` — and by the band the market puts that
|
|
11
|
+
* debt in. This inverts that relation.
|
|
12
|
+
*
|
|
13
|
+
* Rounding is asymmetric because the forward direction truncates: the floor
|
|
14
|
+
* rounds **up** so the leverage it names really does clear `minDebt`, and the
|
|
15
|
+
* ceiling rounds **down** so it really does stay under the borrow limit.
|
|
16
|
+
*
|
|
17
|
+
* Nothing here is fetched or simulated — every input is loaded market state,
|
|
18
|
+
* so a form can call this on each keystroke.
|
|
19
|
+
*
|
|
20
|
+
* @param props - {@link LeverageBandProps}
|
|
21
|
+
* @returns The band, or `undefined` when there is nothing to offer: an
|
|
22
|
+
* unknown manager, a market with no strategy, or a deposit too small to reach
|
|
23
|
+
* `minDebt` at any leverage the threshold allows.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```ts
|
|
27
|
+
* // minDebt 1k, borrow limit 100k, threshold ceiling 9x, deposit worth 10k
|
|
28
|
+
* calcLeverageBand({ sdk, creditManager, collateral }) // { min: 1.1, max: 9 }
|
|
29
|
+
* ```
|
|
30
|
+
**/
|
|
31
|
+
function calcLeverageBand({ sdk, creditManager, collateral, targetHF }) {
|
|
32
|
+
const found = resolve(sdk, creditManager);
|
|
33
|
+
if (!found) return;
|
|
34
|
+
const { suite, market } = found;
|
|
35
|
+
const target = suite.strategyTargetCollateral;
|
|
36
|
+
if (!target) return;
|
|
37
|
+
const ceiling = suite.creditManager.maxLeverage(target, targetHF);
|
|
38
|
+
const underlying = market.pool.underlying;
|
|
39
|
+
const convert = (from, to, amount) => market.priceOracle.safeConvert(from, to, amount).value;
|
|
40
|
+
const netValue = collateral.reduce((acc, a) => acc + convert(a.token, underlying, a.balance), 0n);
|
|
41
|
+
if (netValue <= 0n) return {
|
|
42
|
+
min: 1,
|
|
43
|
+
max: ceiling
|
|
44
|
+
};
|
|
45
|
+
const { minDebt, maxDebt } = suite.creditFacade;
|
|
46
|
+
const available = market.pool.pool.creditManagerDebtParams.get(suite.creditManager.address)?.available;
|
|
47
|
+
const borrowLimit = available === void 0 ? maxDebt : BigIntMath.min(maxDebt, available);
|
|
48
|
+
const floor = BigIntMath.ceilDiv(LEVERAGE_DECIMALS * minDebt, netValue);
|
|
49
|
+
const roof = LEVERAGE_DECIMALS * borrowLimit / netValue;
|
|
50
|
+
const min = 1 + Number(floor) / Number(LEVERAGE_DECIMALS);
|
|
51
|
+
const max = Math.min(ceiling, 1 + Number(roof) / Number(LEVERAGE_DECIMALS));
|
|
52
|
+
return min > max ? void 0 : {
|
|
53
|
+
min,
|
|
54
|
+
max
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
/** The manager's suite and market, or nothing while they cannot be resolved. */
|
|
58
|
+
function resolve(sdk, creditManager) {
|
|
59
|
+
try {
|
|
60
|
+
return {
|
|
61
|
+
suite: sdk.marketRegister.findCreditManager(creditManager),
|
|
62
|
+
market: sdk.marketRegister.findByCreditManager(creditManager)
|
|
63
|
+
};
|
|
64
|
+
} catch {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
//#endregion
|
|
69
|
+
export { calcLeverageBand };
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { BigIntMath } from "../../utils/bigint-math.js";
|
|
2
2
|
import { LEVERAGE_DECIMALS } from "../../constants/math.js";
|
|
3
|
-
import {
|
|
3
|
+
import { checkDebtInBand, checkLeverageAtLeastOne } from "../../validation/checks.js";
|
|
4
|
+
import { IntentPreviewError, raise } from "../../validation/refusal.js";
|
|
5
|
+
import { toToken } from "../../validation/token.js";
|
|
4
6
|
//#region src/onchain/accounts/intents/math.ts
|
|
5
7
|
/** Debt that realises `leverage` on `collateral`: `D = C · (L − 1)`. */
|
|
6
8
|
function debtForLeverage(collateral, leverage) {
|
|
@@ -14,7 +16,7 @@ function debtForLeverage(collateral, leverage) {
|
|
|
14
16
|
* it, so no rounding is introduced on the way.
|
|
15
17
|
*/
|
|
16
18
|
function proportionalDebt(position, collateralDelta) {
|
|
17
|
-
if (position.collateral <= 0n) throw new IntentPreviewError("insufficientSourceBalance", "cannot preserve leverage on an account with no collateral");
|
|
19
|
+
if (position.collateral <= 0n) throw new IntentPreviewError("insufficientSourceBalance", void 0, "cannot preserve leverage on an account with no collateral");
|
|
18
20
|
return position.debt * collateralDelta / position.collateral;
|
|
19
21
|
}
|
|
20
22
|
/**
|
|
@@ -37,15 +39,23 @@ function maxProportionalWithdrawal(position, band) {
|
|
|
37
39
|
}
|
|
38
40
|
/** Total leverage cannot drop below 1x — that would be negative debt. */
|
|
39
41
|
function assertLeverageAtLeastOne(leverage) {
|
|
40
|
-
|
|
42
|
+
raise(checkLeverageAtLeastOne({
|
|
43
|
+
leverage,
|
|
44
|
+
min: LEVERAGE_DECIMALS
|
|
45
|
+
}), `target leverage ${leverage} is below 1x`);
|
|
41
46
|
}
|
|
42
47
|
/**
|
|
43
48
|
* Rejects a debt the facade would revert on: zero is always fine (no loan at
|
|
44
49
|
* all), anything else has to sit inside `[minDebt, maxDebt]`.
|
|
45
50
|
*/
|
|
46
|
-
function assertDebtInBand(debt, band) {
|
|
47
|
-
|
|
48
|
-
|
|
51
|
+
function assertDebtInBand(sdk, debt, band, underlying) {
|
|
52
|
+
raise(checkDebtInBand({
|
|
53
|
+
debt,
|
|
54
|
+
minDebt: band.minDebt,
|
|
55
|
+
maxDebt: band.maxDebt,
|
|
56
|
+
underlying: toToken(sdk, underlying),
|
|
57
|
+
allowZero: true
|
|
58
|
+
}), debt > band.maxDebt ? `debt ${debt} exceeds maxDebt ${band.maxDebt}` : `debt ${debt} is below minDebt ${band.minDebt}`);
|
|
49
59
|
}
|
|
50
60
|
//#endregion
|
|
51
61
|
export { assertDebtInBand, assertLeverageAtLeastOne, debtForLeverage, maxProportionalWithdrawal, proportionalDebt };
|