@gearbox-protocol/sdk 12.9.8-beta.1 → 13.0.0-beta.2
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/310/iLinearInterestRateModelV310.js +92 -0
- package/dist/cjs/abi/errors.js +0 -145
- package/dist/cjs/dev/AccountOpener.js +3 -3
- package/dist/cjs/dev/ltUtils.js +4 -91
- package/dist/cjs/dev/migrateFaucet.js +25 -53
- package/dist/cjs/permissionless/bindings/instance-manager.js +1 -1
- package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +23 -2
- package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +29 -4
- package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +6 -0
- package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +9 -0
- package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +9 -0
- package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +11 -0
- package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +11 -0
- package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +11 -0
- package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +11 -0
- package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +12 -0
- package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +7 -0
- package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +7 -0
- package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +7 -0
- package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +7 -0
- package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +11 -0
- package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +8 -0
- package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +6 -0
- package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +9 -0
- package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +8 -0
- package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +8 -0
- package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +7 -0
- package/dist/cjs/plugins/adapters/contracts/{deprecated/MellowDepositQueueAdapterContract.js → MellowDepositQueueAdapterContract.js} +10 -2
- package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +9 -1
- package/dist/cjs/plugins/adapters/contracts/{deprecated/MellowRedeemQueueAdapterContract.js → MellowRedeemQueueAdapterContract.js} +9 -2
- package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +6 -0
- package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +8 -0
- package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +11 -0
- package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +29 -2
- package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +10 -1
- package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +20 -0
- package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +9 -0
- package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +10 -0
- package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +12 -0
- package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +8 -0
- package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +11 -0
- package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +6 -0
- package/dist/cjs/plugins/adapters/contracts/index.js +10 -4
- package/dist/cjs/plugins/adapters/createAdapter.js +3 -18
- package/dist/cjs/plugins/bots/PartialLiquidationBotV310Contract.js +4 -4
- package/dist/cjs/plugins/bots/abi/index.js +0 -2
- package/dist/cjs/plugins/pools-history/Pools7DAgoPlugin.js +1 -1
- package/dist/cjs/sdk/GearboxSDK.js +6 -12
- package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +19 -86
- package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +9 -9
- package/dist/cjs/sdk/accounts/createCreditAccountService.js +0 -4
- package/dist/cjs/sdk/accounts/index.js +0 -2
- package/dist/cjs/sdk/base/BaseContract.js +2 -2
- package/dist/cjs/sdk/base/Construct.js +2 -2
- package/dist/cjs/sdk/chain/chains.js +9 -27
- package/dist/cjs/sdk/constants/addresses.js +2 -88
- package/dist/cjs/sdk/constants/networks.js +0 -32
- package/dist/cjs/sdk/constants/versions.js +0 -5
- package/dist/cjs/sdk/core/{address-provider/AbstractAddressProviderContract.js → AbstractAddressProviderContract.js} +3 -3
- package/dist/cjs/sdk/core/{address-provider/AddressProviderV310Contract.js → AddressProviderV310Contract.js} +1 -1
- package/dist/cjs/sdk/core/{address-provider/createAddressProvider.js → createAddressProvider.js} +4 -7
- package/dist/cjs/sdk/core/index.js +6 -6
- package/dist/cjs/sdk/index.js +0 -10
- package/dist/cjs/sdk/market/MarketRegister.js +0 -1
- package/dist/cjs/sdk/market/MarketSuite.js +1 -1
- package/dist/cjs/sdk/market/adapters/PlaceholderAdapterContracts.js +0 -1
- package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +1 -4
- package/dist/cjs/sdk/market/credit/createCreditConfigurator.js +1 -4
- package/dist/cjs/sdk/market/credit/createCreditFacade.js +1 -4
- package/dist/cjs/sdk/market/credit/createCreditManager.js +1 -4
- package/dist/cjs/sdk/market/credit/index.js +0 -6
- package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +9 -57
- package/dist/cjs/sdk/market/oracle/createPriceOracle.js +7 -38
- package/dist/cjs/sdk/market/oracle/index.js +0 -2
- package/dist/cjs/sdk/market/pool/GaugeContract.js +3 -3
- package/dist/cjs/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
- package/dist/cjs/sdk/market/pool/PoolV310Contract.js +1 -1
- package/dist/cjs/sdk/market/pool/createPool.js +0 -4
- package/dist/cjs/sdk/market/pool/createPoolQuotaKeeper.js +0 -4
- package/dist/cjs/sdk/market/pool/index.js +0 -4
- package/dist/cjs/sdk/market/pricefeeds/AbstractLPPriceFeed.js +14 -53
- package/dist/cjs/sdk/market/pricefeeds/RedstonePriceFeed.js +19 -46
- package/dist/cjs/sdk/plugins/index.js +1 -3
- package/dist/cjs/sdk/pools/AbstractPoolService.js +3 -3
- package/dist/cjs/sdk/pools/createPoolService.js +0 -4
- package/dist/cjs/sdk/router/AbstractRouterContract.js +0 -4
- package/dist/cjs/sdk/router/RouterV310Contract.js +3 -32
- package/dist/cjs/sdk/router/createRouter.js +0 -4
- package/dist/cjs/sdk/router/helpers.js +0 -5
- package/dist/cjs/sdk/router/index.js +0 -2
- package/dist/cjs/sdk/{sdk-legacy/core/assets.js → utils/assetsMath.js} +13 -14
- package/dist/cjs/sdk/{sdk-legacy/utils/math.js → utils/bigintMath.js} +3 -3
- package/dist/cjs/sdk/{sdk-legacy/core → utils}/creditAccount.js +60 -163
- package/dist/cjs/sdk/utils/formatter.js +55 -2
- package/dist/cjs/sdk/utils/index.js +8 -0
- package/dist/cjs/sdk/{sdk-legacy/utils/price.js → utils/priceMath.js} +6 -6
- package/dist/esm/abi/310/iLinearInterestRateModelV310.js +68 -0
- package/dist/esm/abi/errors.js +0 -143
- package/dist/esm/dev/AccountOpener.js +3 -3
- package/dist/esm/dev/ltUtils.js +7 -100
- package/dist/esm/dev/migrateFaucet.js +24 -51
- package/dist/esm/permissionless/bindings/instance-manager.js +1 -1
- package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +24 -2
- package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +28 -4
- package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +6 -0
- package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +9 -0
- package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +9 -0
- package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +11 -0
- package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +11 -0
- package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +11 -0
- package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +11 -0
- package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +12 -0
- package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +7 -0
- package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +7 -0
- package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +7 -0
- package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +7 -0
- package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +11 -0
- package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +8 -0
- package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +6 -0
- package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +9 -0
- package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +8 -0
- package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +8 -0
- package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +7 -0
- package/dist/esm/plugins/adapters/contracts/{deprecated/MellowDepositQueueAdapterContract.js → MellowDepositQueueAdapterContract.js} +10 -2
- package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +9 -1
- package/dist/esm/plugins/adapters/contracts/{deprecated/MellowRedeemQueueAdapterContract.js → MellowRedeemQueueAdapterContract.js} +9 -2
- package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +6 -0
- package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +8 -0
- package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +11 -0
- package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +26 -1
- package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +10 -1
- package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +19 -0
- package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +9 -0
- package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +10 -0
- package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +12 -0
- package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +8 -0
- package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +11 -0
- package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +6 -0
- package/dist/esm/plugins/adapters/contracts/index.js +5 -2
- package/dist/esm/plugins/adapters/createAdapter.js +4 -22
- package/dist/esm/plugins/bots/PartialLiquidationBotV310Contract.js +5 -8
- package/dist/esm/plugins/bots/abi/index.js +0 -1
- package/dist/esm/plugins/pools-history/Pools7DAgoPlugin.js +1 -2
- package/dist/esm/sdk/GearboxSDK.js +7 -21
- package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +23 -91
- package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +9 -9
- package/dist/esm/sdk/accounts/createCreditAccountService.js +1 -5
- package/dist/esm/sdk/accounts/index.js +0 -1
- package/dist/esm/sdk/base/BaseContract.js +2 -2
- package/dist/esm/sdk/base/Construct.js +2 -2
- package/dist/esm/sdk/chain/chains.js +10 -27
- package/dist/esm/sdk/constants/addresses.js +1 -83
- package/dist/esm/sdk/constants/networks.js +0 -31
- package/dist/esm/sdk/constants/versions.js +0 -4
- package/dist/esm/sdk/core/{address-provider/AbstractAddressProviderContract.js → AbstractAddressProviderContract.js} +3 -3
- package/dist/esm/sdk/core/{address-provider/AddressProviderV310Contract.js → AddressProviderV310Contract.js} +1 -1
- package/dist/esm/sdk/core/{address-provider/createAddressProvider.js → createAddressProvider.js} +4 -8
- package/dist/esm/sdk/core/index.js +3 -3
- package/dist/esm/sdk/index.js +0 -5
- package/dist/esm/sdk/market/MarketRegister.js +0 -1
- package/dist/esm/sdk/market/MarketSuite.js +2 -2
- package/dist/esm/sdk/market/adapters/PlaceholderAdapterContracts.js +0 -1
- package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +1 -4
- package/dist/esm/sdk/market/credit/createCreditConfigurator.js +2 -5
- package/dist/esm/sdk/market/credit/createCreditFacade.js +2 -5
- package/dist/esm/sdk/market/credit/createCreditManager.js +2 -5
- package/dist/esm/sdk/market/credit/index.js +0 -3
- package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +10 -59
- package/dist/esm/sdk/market/oracle/createPriceOracle.js +7 -38
- package/dist/esm/sdk/market/oracle/index.js +0 -1
- package/dist/esm/sdk/market/pool/GaugeContract.js +3 -3
- package/dist/esm/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
- package/dist/esm/sdk/market/pool/PoolV310Contract.js +1 -1
- package/dist/esm/sdk/market/pool/createPool.js +1 -5
- package/dist/esm/sdk/market/pool/createPoolQuotaKeeper.js +1 -5
- package/dist/esm/sdk/market/pool/index.js +0 -2
- package/dist/esm/sdk/market/pricefeeds/AbstractLPPriceFeed.js +14 -53
- package/dist/esm/sdk/market/pricefeeds/RedstonePriceFeed.js +20 -47
- package/dist/esm/sdk/plugins/index.js +0 -1
- package/dist/esm/sdk/pools/AbstractPoolService.js +3 -3
- package/dist/esm/sdk/pools/createPoolService.js +1 -5
- package/dist/esm/sdk/router/AbstractRouterContract.js +0 -4
- package/dist/esm/sdk/router/RouterV310Contract.js +3 -32
- package/dist/esm/sdk/router/createRouter.js +1 -5
- package/dist/esm/sdk/router/helpers.js +0 -4
- package/dist/esm/sdk/router/index.js +0 -1
- package/dist/esm/sdk/{sdk-legacy/core/assets.js → utils/assetsMath.js} +3 -4
- package/dist/esm/sdk/{sdk-legacy/core → utils}/creditAccount.js +22 -123
- package/dist/esm/sdk/utils/formatter.js +37 -1
- package/dist/esm/sdk/utils/index.js +4 -0
- package/dist/esm/sdk/{sdk-legacy/utils/price.js → utils/priceMath.js} +1 -1
- package/dist/types/abi/310/iLinearInterestRateModelV310.d.ts +111 -0
- package/dist/types/abi/errors.d.ts +186 -996
- package/dist/types/dev/migrateFaucet.d.ts +4 -5
- package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +23 -5
- package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +8 -0
- package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +16 -4
- package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +11 -0
- package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +20 -6
- package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +13 -0
- package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +13 -0
- package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +13 -0
- package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +14 -0
- package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +9 -0
- package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +9 -0
- package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +9 -0
- package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +9 -0
- package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +11 -0
- package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +8 -0
- package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +8 -0
- package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +11 -0
- package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +10 -0
- package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +8 -0
- package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +9 -0
- package/dist/types/plugins/adapters/contracts/{deprecated/MellowDepositQueueAdapterContract.d.ts → MellowDepositQueueAdapterContract.d.ts} +14 -4
- package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +10 -0
- package/dist/types/plugins/adapters/contracts/{deprecated/MellowRedeemQueueAdapterContract.d.ts → MellowRedeemQueueAdapterContract.d.ts} +13 -4
- package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +8 -0
- package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +10 -0
- package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +13 -0
- package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +31 -13
- package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +11 -0
- package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +26 -7
- package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +11 -0
- package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +12 -0
- package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +14 -0
- package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +10 -0
- package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +13 -0
- package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +8 -0
- package/dist/types/plugins/adapters/contracts/index.d.ts +5 -2
- package/dist/types/plugins/adapters/createAdapter.d.ts +0 -2
- package/dist/types/plugins/adapters/types.d.ts +5 -1
- package/dist/types/plugins/bots/abi/index.d.ts +0 -1
- package/dist/types/sdk/GearboxSDK.d.ts +0 -3
- package/dist/types/sdk/accounts/AbstractCreditAccountsService.d.ts +3 -13
- package/dist/types/sdk/accounts/createCreditAccountService.d.ts +1 -1
- package/dist/types/sdk/accounts/index.d.ts +0 -1
- package/dist/types/sdk/accounts/types.d.ts +2 -22
- package/dist/types/sdk/base/BaseContract.d.ts +2 -2
- package/dist/types/sdk/base/Construct.d.ts +1 -1
- package/dist/types/sdk/base/types.d.ts +5 -0
- package/dist/types/sdk/constants/addresses.d.ts +0 -19
- package/dist/types/sdk/constants/networks.d.ts +0 -5
- package/dist/types/sdk/constants/versions.d.ts +0 -1
- package/dist/types/sdk/core/{address-provider/AbstractAddressProviderContract.d.ts → AbstractAddressProviderContract.d.ts} +4 -4
- package/dist/types/sdk/core/{address-provider/AddressProviderV310Contract.d.ts → AddressProviderV310Contract.d.ts} +1 -1
- package/dist/types/sdk/core/{address-provider/createAddressProvider.d.ts → createAddressProvider.d.ts} +1 -1
- package/dist/types/sdk/core/index.d.ts +3 -3
- package/dist/types/sdk/core/{address-provider/types.d.ts → types.d.ts} +3 -3
- package/dist/types/sdk/index.d.ts +0 -5
- package/dist/types/sdk/market/MarketRegister.d.ts +0 -1
- package/dist/types/sdk/market/adapters/PlaceholderAdapterContracts.d.ts +0 -1
- package/dist/types/sdk/market/credit/CreditConfiguratorV310Contract.d.ts +6 -2
- package/dist/types/sdk/market/credit/index.d.ts +0 -3
- package/dist/types/sdk/market/credit/types.d.ts +2 -3
- package/dist/types/sdk/market/loss-policy/createLossPolicy.d.ts +0 -12
- package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +2 -21
- package/dist/types/sdk/market/oracle/createPriceOracle.d.ts +1 -15
- package/dist/types/sdk/market/oracle/index.d.ts +0 -1
- package/dist/types/sdk/market/oracle/types.d.ts +3 -13
- package/dist/types/sdk/market/pool/GaugeContract.d.ts +116 -76
- package/dist/types/sdk/market/pool/LinearInterestRateModelContract.d.ts +20 -0
- package/dist/types/sdk/market/pool/index.d.ts +0 -2
- package/dist/types/sdk/market/pool/types.d.ts +2 -4
- package/dist/types/sdk/market/pricefeeds/AbstractLPPriceFeed.d.ts +0 -3
- package/dist/types/sdk/market/pricefeeds/types.d.ts +0 -9
- package/dist/types/sdk/plugins/index.d.ts +0 -1
- package/dist/types/sdk/pools/createPoolService.d.ts +0 -5
- package/dist/types/sdk/pools/types.d.ts +10 -6
- package/dist/types/sdk/router/AbstractRouterContract.d.ts +2 -7
- package/dist/types/sdk/router/RouterV310Contract.d.ts +1 -16
- package/dist/types/sdk/router/helpers.d.ts +2 -2
- package/dist/types/sdk/router/index.d.ts +0 -1
- package/dist/types/sdk/router/types.d.ts +2 -55
- package/dist/types/sdk/types/state-human.d.ts +1 -4
- package/dist/types/sdk/{sdk-legacy/core/assets.d.ts → utils/assetsMath.d.ts} +7 -4
- package/dist/types/sdk/{sdk-legacy/core → utils}/creditAccount.d.ts +33 -58
- package/dist/types/sdk/utils/formatter.d.ts +9 -0
- package/dist/types/sdk/utils/index.d.ts +4 -0
- package/package.json +1 -1
- package/dist/cjs/abi/iDegenDistributorV300.js +0 -100
- package/dist/cjs/abi/routerV300.js +0 -406
- package/dist/cjs/abi/v300.js +0 -4189
- package/dist/cjs/plugins/adapters/contracts/deprecated/BalancerV2VaultAdapterContract.js +0 -585
- package/dist/cjs/plugins/adapters/contracts/deprecated/EqualizerRouterAdapterContract.js +0 -262
- package/dist/cjs/plugins/adapters/contracts/deprecated/InfraredVaultAdapterContract.js +0 -296
- package/dist/cjs/plugins/adapters/contracts/deprecated/KodiakIslandGatewayAdapterContract.js +0 -415
- package/dist/cjs/plugins/adapters/contracts/deprecated/MellowVaultAdapterContract.js +0 -233
- package/dist/cjs/plugins/adapters/contracts/deprecated/YearnV2AdapterContract.js +0 -359
- package/dist/cjs/plugins/adapters/contracts/deprecated/index.js +0 -36
- package/dist/cjs/plugins/adapters/contracts/types.js +0 -68
- package/dist/cjs/plugins/bots/abi/iPartialLiquidationBotV300.js +0 -164
- package/dist/cjs/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +0 -192
- package/dist/cjs/sdk/accountMigration/MigrateCreditAccountsServiceV300.js +0 -30
- package/dist/cjs/sdk/accountMigration/MigrateCreditAccountsServiceV310.js +0 -30
- package/dist/cjs/sdk/accountMigration/createMigrateCreditAccountsService.js +0 -41
- package/dist/cjs/sdk/accountMigration/index.js +0 -26
- package/dist/cjs/sdk/accounts/CreditAccountsServiceV300.js +0 -454
- package/dist/cjs/sdk/core/BotListV3Contract.js +0 -101
- package/dist/cjs/sdk/core/GearStakingV3Contract.js +0 -83
- package/dist/cjs/sdk/core/address-provider/AddressProviderV300Contract.js +0 -116
- package/dist/cjs/sdk/core/address-provider/index.js +0 -28
- package/dist/cjs/sdk/core/address-provider/types.js +0 -16
- package/dist/cjs/sdk/gauges/GaugeStakingService.js +0 -118
- package/dist/cjs/sdk/gauges/index.js +0 -24
- package/dist/cjs/sdk/gauges/utils.js +0 -16
- package/dist/cjs/sdk/market/credit/CreditConfiguratorV300Contract.js +0 -139
- package/dist/cjs/sdk/market/credit/CreditFacadeV300Contract.js +0 -160
- package/dist/cjs/sdk/market/credit/CreditManagerV300Contract.js +0 -114
- package/dist/cjs/sdk/market/oracle/PriceOracleV300Contract.js +0 -129
- package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV300Contract.js +0 -85
- package/dist/cjs/sdk/market/pool/PoolV300Contract.js +0 -135
- package/dist/cjs/sdk/plugins/V300StalenessPeriodPlugin.js +0 -131
- package/dist/cjs/sdk/poolMigration/index.js +0 -84
- package/dist/cjs/sdk/pools/PoolServiceV300.js +0 -30
- package/dist/cjs/sdk/router/PathOptionFactory.js +0 -105
- package/dist/cjs/sdk/router/RouterV300Contract.js +0 -390
- package/dist/cjs/sdk/sdk-gov-legacy/contracts/adapters.js +0 -67
- package/dist/cjs/sdk/sdk-gov-legacy/contracts/contracts.js +0 -2576
- package/dist/cjs/sdk/sdk-gov-legacy/contracts/index.js +0 -24
- package/dist/cjs/sdk/sdk-gov-legacy/contracts/protocols.js +0 -58
- package/dist/cjs/sdk/sdk-gov-legacy/index.js +0 -26
- package/dist/cjs/sdk/sdk-gov-legacy/oracles/PriceFeedType.js +0 -52
- package/dist/cjs/sdk/sdk-gov-legacy/oracles/index.js +0 -22
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/aave.js +0 -16
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/aura.js +0 -239
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/balancer.js +0 -339
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/compound.js +0 -16
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/convex.js +0 -450
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/curveLP.js +0 -394
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/erc4626.js +0 -16
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/gear.js +0 -16
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/index.js +0 -52
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/normal.js +0 -562
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/stakingRewards.js +0 -45
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/token.js +0 -1002
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/tokenData.js +0 -80
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/tokenType.js +0 -50
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/wrapped.js +0 -16
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/yearn.js +0 -95
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/zircuit.js +0 -16
- package/dist/cjs/sdk/sdk-legacy/core/creditAccount.spec.js +0 -1802
- package/dist/cjs/sdk/sdk-legacy/core/creditManager.js +0 -263
- package/dist/cjs/sdk/sdk-legacy/core/creditSession.js +0 -256
- package/dist/cjs/sdk/sdk-legacy/core/endpoint.js +0 -137
- package/dist/cjs/sdk/sdk-legacy/core/eventOrTx.js +0 -87
- package/dist/cjs/sdk/sdk-legacy/core/pool.js +0 -334
- package/dist/cjs/sdk/sdk-legacy/core/transactions.js +0 -783
- package/dist/cjs/sdk/sdk-legacy/gearboxRewards/api.js +0 -368
- package/dist/cjs/sdk/sdk-legacy/gearboxRewards/apy.js +0 -176
- package/dist/cjs/sdk/sdk-legacy/gearboxRewards/extraAPY.js +0 -137
- package/dist/cjs/sdk/sdk-legacy/gearboxRewards/index.js +0 -26
- package/dist/cjs/sdk/sdk-legacy/gearboxRewards/merklAPI.js +0 -52
- package/dist/cjs/sdk/sdk-legacy/index.js +0 -52
- package/dist/cjs/sdk/sdk-legacy/payload/creditAccount.js +0 -16
- package/dist/cjs/sdk/sdk-legacy/payload/creditManager.js +0 -16
- package/dist/cjs/sdk/sdk-legacy/payload/creditSession.js +0 -16
- package/dist/cjs/sdk/sdk-legacy/payload/graphPayload.js +0 -16
- package/dist/cjs/sdk/sdk-legacy/payload/pool.js +0 -16
- package/dist/cjs/sdk/sdk-legacy/tokens/tokenData.js +0 -92
- package/dist/cjs/sdk/sdk-legacy/utils/formatter.js +0 -79
- package/dist/cjs/sdk/sdk-legacy/utils/index.js +0 -26
- package/dist/esm/abi/iDegenDistributorV300.js +0 -76
- package/dist/esm/abi/routerV300.js +0 -381
- package/dist/esm/abi/v300.js +0 -4154
- package/dist/esm/plugins/adapters/contracts/deprecated/BalancerV2VaultAdapterContract.js +0 -559
- package/dist/esm/plugins/adapters/contracts/deprecated/EqualizerRouterAdapterContract.js +0 -236
- package/dist/esm/plugins/adapters/contracts/deprecated/InfraredVaultAdapterContract.js +0 -272
- package/dist/esm/plugins/adapters/contracts/deprecated/KodiakIslandGatewayAdapterContract.js +0 -390
- package/dist/esm/plugins/adapters/contracts/deprecated/MellowVaultAdapterContract.js +0 -209
- package/dist/esm/plugins/adapters/contracts/deprecated/YearnV2AdapterContract.js +0 -336
- package/dist/esm/plugins/adapters/contracts/deprecated/index.js +0 -8
- package/dist/esm/plugins/adapters/contracts/types.js +0 -40
- package/dist/esm/plugins/bots/abi/iPartialLiquidationBotV300.js +0 -140
- package/dist/esm/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +0 -171
- package/dist/esm/sdk/accountMigration/MigrateCreditAccountsServiceV300.js +0 -6
- package/dist/esm/sdk/accountMigration/MigrateCreditAccountsServiceV310.js +0 -6
- package/dist/esm/sdk/accountMigration/createMigrateCreditAccountsService.js +0 -17
- package/dist/esm/sdk/accountMigration/index.js +0 -3
- package/dist/esm/sdk/accounts/CreditAccountsServiceV300.js +0 -442
- package/dist/esm/sdk/core/BotListV3Contract.js +0 -77
- package/dist/esm/sdk/core/GearStakingV3Contract.js +0 -59
- package/dist/esm/sdk/core/address-provider/AddressProviderV300Contract.js +0 -82
- package/dist/esm/sdk/core/address-provider/index.js +0 -4
- package/dist/esm/sdk/core/address-provider/types.js +0 -0
- package/dist/esm/sdk/gauges/GaugeStakingService.js +0 -94
- package/dist/esm/sdk/gauges/index.js +0 -2
- package/dist/esm/sdk/gauges/utils.js +0 -0
- package/dist/esm/sdk/market/credit/CreditConfiguratorV300Contract.js +0 -115
- package/dist/esm/sdk/market/credit/CreditFacadeV300Contract.js +0 -143
- package/dist/esm/sdk/market/credit/CreditManagerV300Contract.js +0 -90
- package/dist/esm/sdk/market/oracle/PriceOracleV300Contract.js +0 -111
- package/dist/esm/sdk/market/pool/PoolQuotaKeeperV300Contract.js +0 -61
- package/dist/esm/sdk/market/pool/PoolV300Contract.js +0 -116
- package/dist/esm/sdk/plugins/V300StalenessPeriodPlugin.js +0 -107
- package/dist/esm/sdk/poolMigration/index.js +0 -60
- package/dist/esm/sdk/pools/PoolServiceV300.js +0 -6
- package/dist/esm/sdk/router/PathOptionFactory.js +0 -92
- package/dist/esm/sdk/router/RouterV300Contract.js +0 -374
- package/dist/esm/sdk/sdk-gov-legacy/contracts/adapters.js +0 -43
- package/dist/esm/sdk/sdk-gov-legacy/contracts/contracts.js +0 -2538
- package/dist/esm/sdk/sdk-gov-legacy/contracts/index.js +0 -2
- package/dist/esm/sdk/sdk-gov-legacy/contracts/protocols.js +0 -34
- package/dist/esm/sdk/sdk-gov-legacy/index.js +0 -3
- package/dist/esm/sdk/sdk-gov-legacy/oracles/PriceFeedType.js +0 -28
- package/dist/esm/sdk/sdk-gov-legacy/oracles/index.js +0 -1
- package/dist/esm/sdk/sdk-gov-legacy/tokens/aave.js +0 -0
- package/dist/esm/sdk/sdk-gov-legacy/tokens/aura.js +0 -213
- package/dist/esm/sdk/sdk-gov-legacy/tokens/balancer.js +0 -314
- package/dist/esm/sdk/sdk-gov-legacy/tokens/compound.js +0 -0
- package/dist/esm/sdk/sdk-gov-legacy/tokens/convex.js +0 -424
- package/dist/esm/sdk/sdk-gov-legacy/tokens/curveLP.js +0 -369
- package/dist/esm/sdk/sdk-gov-legacy/tokens/erc4626.js +0 -0
- package/dist/esm/sdk/sdk-gov-legacy/tokens/gear.js +0 -0
- package/dist/esm/sdk/sdk-gov-legacy/tokens/index.js +0 -16
- package/dist/esm/sdk/sdk-gov-legacy/tokens/normal.js +0 -538
- package/dist/esm/sdk/sdk-gov-legacy/tokens/stakingRewards.js +0 -20
- package/dist/esm/sdk/sdk-gov-legacy/tokens/token.js +0 -975
- package/dist/esm/sdk/sdk-gov-legacy/tokens/tokenData.js +0 -55
- package/dist/esm/sdk/sdk-gov-legacy/tokens/tokenType.js +0 -26
- package/dist/esm/sdk/sdk-gov-legacy/tokens/wrapped.js +0 -0
- package/dist/esm/sdk/sdk-gov-legacy/tokens/yearn.js +0 -71
- package/dist/esm/sdk/sdk-gov-legacy/tokens/zircuit.js +0 -0
- package/dist/esm/sdk/sdk-legacy/core/creditAccount.spec.js +0 -1805
- package/dist/esm/sdk/sdk-legacy/core/creditManager.js +0 -242
- package/dist/esm/sdk/sdk-legacy/core/creditSession.js +0 -228
- package/dist/esm/sdk/sdk-legacy/core/endpoint.js +0 -107
- package/dist/esm/sdk/sdk-legacy/core/eventOrTx.js +0 -63
- package/dist/esm/sdk/sdk-legacy/core/pool.js +0 -311
- package/dist/esm/sdk/sdk-legacy/core/transactions.js +0 -732
- package/dist/esm/sdk/sdk-legacy/gearboxRewards/api.js +0 -334
- package/dist/esm/sdk/sdk-legacy/gearboxRewards/apy.js +0 -158
- package/dist/esm/sdk/sdk-legacy/gearboxRewards/extraAPY.js +0 -102
- package/dist/esm/sdk/sdk-legacy/gearboxRewards/index.js +0 -3
- package/dist/esm/sdk/sdk-legacy/gearboxRewards/merklAPI.js +0 -18
- package/dist/esm/sdk/sdk-legacy/index.js +0 -16
- package/dist/esm/sdk/sdk-legacy/payload/creditAccount.js +0 -0
- package/dist/esm/sdk/sdk-legacy/payload/creditManager.js +0 -0
- package/dist/esm/sdk/sdk-legacy/payload/creditSession.js +0 -0
- package/dist/esm/sdk/sdk-legacy/payload/graphPayload.js +0 -0
- package/dist/esm/sdk/sdk-legacy/payload/pool.js +0 -0
- package/dist/esm/sdk/sdk-legacy/tokens/tokenData.js +0 -68
- package/dist/esm/sdk/sdk-legacy/utils/formatter.js +0 -39
- package/dist/esm/sdk/sdk-legacy/utils/index.js +0 -3
- package/dist/types/abi/iDegenDistributorV300.d.ts +0 -87
- package/dist/types/abi/routerV300.d.ts +0 -585
- package/dist/types/abi/v300.d.ts +0 -5484
- package/dist/types/plugins/adapters/contracts/deprecated/BalancerV2VaultAdapterContract.d.ts +0 -1664
- package/dist/types/plugins/adapters/contracts/deprecated/EqualizerRouterAdapterContract.d.ts +0 -611
- package/dist/types/plugins/adapters/contracts/deprecated/InfraredVaultAdapterContract.d.ts +0 -686
- package/dist/types/plugins/adapters/contracts/deprecated/KodiakIslandGatewayAdapterContract.d.ts +0 -1270
- package/dist/types/plugins/adapters/contracts/deprecated/MellowVaultAdapterContract.d.ts +0 -531
- package/dist/types/plugins/adapters/contracts/deprecated/YearnV2AdapterContract.d.ts +0 -662
- package/dist/types/plugins/adapters/contracts/deprecated/index.d.ts +0 -8
- package/dist/types/plugins/adapters/contracts/types.d.ts +0 -28
- package/dist/types/plugins/bots/abi/iPartialLiquidationBotV300.d.ts +0 -210
- package/dist/types/sdk/accountMigration/AbstractMigrateCreditAccountsService.d.ts +0 -32
- package/dist/types/sdk/accountMigration/MigrateCreditAccountsServiceV300.d.ts +0 -4
- package/dist/types/sdk/accountMigration/MigrateCreditAccountsServiceV310.d.ts +0 -4
- package/dist/types/sdk/accountMigration/createMigrateCreditAccountsService.d.ts +0 -8
- package/dist/types/sdk/accountMigration/index.d.ts +0 -3
- package/dist/types/sdk/accountMigration/types.d.ts +0 -62
- package/dist/types/sdk/accounts/CreditAccountsServiceV300.d.ts +0 -32
- package/dist/types/sdk/core/BotListV3Contract.d.ts +0 -323
- package/dist/types/sdk/core/GearStakingV3Contract.d.ts +0 -520
- package/dist/types/sdk/core/address-provider/AddressProviderV300Contract.d.ts +0 -97
- package/dist/types/sdk/core/address-provider/index.d.ts +0 -4
- package/dist/types/sdk/gauges/GaugeStakingService.d.ts +0 -14
- package/dist/types/sdk/gauges/index.d.ts +0 -2
- package/dist/types/sdk/gauges/utils.d.ts +0 -22
- package/dist/types/sdk/market/credit/CreditConfiguratorV300Contract.d.ts +0 -648
- package/dist/types/sdk/market/credit/CreditFacadeV300Contract.d.ts +0 -788
- package/dist/types/sdk/market/credit/CreditManagerV300Contract.d.ts +0 -1043
- package/dist/types/sdk/market/oracle/PriceOracleV300Contract.d.ts +0 -369
- package/dist/types/sdk/market/pool/PoolQuotaKeeperV300Contract.d.ts +0 -448
- package/dist/types/sdk/market/pool/PoolV300Contract.d.ts +0 -1107
- package/dist/types/sdk/plugins/V300StalenessPeriodPlugin.d.ts +0 -29
- package/dist/types/sdk/poolMigration/index.d.ts +0 -11
- package/dist/types/sdk/pools/PoolServiceV300.d.ts +0 -4
- package/dist/types/sdk/router/PathOptionFactory.d.ts +0 -9
- package/dist/types/sdk/router/RouterV300Contract.d.ts +0 -39
- package/dist/types/sdk/sdk-gov-legacy/contracts/adapters.d.ts +0 -39
- package/dist/types/sdk/sdk-gov-legacy/contracts/contracts.d.ts +0 -194
- package/dist/types/sdk/sdk-gov-legacy/contracts/index.d.ts +0 -2
- package/dist/types/sdk/sdk-gov-legacy/contracts/protocols.d.ts +0 -30
- package/dist/types/sdk/sdk-gov-legacy/index.d.ts +0 -3
- package/dist/types/sdk/sdk-gov-legacy/oracles/PriceFeedType.d.ts +0 -24
- package/dist/types/sdk/sdk-gov-legacy/oracles/index.d.ts +0 -1
- package/dist/types/sdk/sdk-gov-legacy/tokens/aave.d.ts +0 -2
- package/dist/types/sdk/sdk-gov-legacy/tokens/aura.d.ts +0 -26
- package/dist/types/sdk/sdk-gov-legacy/tokens/balancer.d.ts +0 -15
- package/dist/types/sdk/sdk-gov-legacy/tokens/compound.d.ts +0 -1
- package/dist/types/sdk/sdk-gov-legacy/tokens/convex.d.ts +0 -31
- package/dist/types/sdk/sdk-gov-legacy/tokens/curveLP.d.ts +0 -25
- package/dist/types/sdk/sdk-gov-legacy/tokens/erc4626.d.ts +0 -1
- package/dist/types/sdk/sdk-gov-legacy/tokens/gear.d.ts +0 -5
- package/dist/types/sdk/sdk-gov-legacy/tokens/index.d.ts +0 -16
- package/dist/types/sdk/sdk-gov-legacy/tokens/normal.d.ts +0 -9
- package/dist/types/sdk/sdk-gov-legacy/tokens/stakingRewards.d.ts +0 -13
- package/dist/types/sdk/sdk-gov-legacy/tokens/token.d.ts +0 -34
- package/dist/types/sdk/sdk-gov-legacy/tokens/tokenData.d.ts +0 -5
- package/dist/types/sdk/sdk-gov-legacy/tokens/tokenType.d.ts +0 -24
- package/dist/types/sdk/sdk-gov-legacy/tokens/wrapped.d.ts +0 -7
- package/dist/types/sdk/sdk-gov-legacy/tokens/yearn.d.ts +0 -26
- package/dist/types/sdk/sdk-gov-legacy/tokens/zircuit.d.ts +0 -1
- package/dist/types/sdk/sdk-legacy/core/creditAccount.spec.d.ts +0 -1
- package/dist/types/sdk/sdk-legacy/core/creditManager.d.ts +0 -92
- package/dist/types/sdk/sdk-legacy/core/creditSession.d.ts +0 -110
- package/dist/types/sdk/sdk-legacy/core/endpoint.d.ts +0 -24
- package/dist/types/sdk/sdk-legacy/core/eventOrTx.d.ts +0 -35
- package/dist/types/sdk/sdk-legacy/core/pool.d.ts +0 -144
- package/dist/types/sdk/sdk-legacy/core/transactions.d.ts +0 -348
- package/dist/types/sdk/sdk-legacy/gearboxRewards/api.d.ts +0 -88
- package/dist/types/sdk/sdk-legacy/gearboxRewards/apy.d.ts +0 -46
- package/dist/types/sdk/sdk-legacy/gearboxRewards/extraAPY.d.ts +0 -41
- package/dist/types/sdk/sdk-legacy/gearboxRewards/index.d.ts +0 -3
- package/dist/types/sdk/sdk-legacy/gearboxRewards/merklAPI.d.ts +0 -46
- package/dist/types/sdk/sdk-legacy/index.d.ts +0 -16
- package/dist/types/sdk/sdk-legacy/payload/creditAccount.d.ts +0 -47
- package/dist/types/sdk/sdk-legacy/payload/creditManager.d.ts +0 -109
- package/dist/types/sdk/sdk-legacy/payload/creditSession.d.ts +0 -111
- package/dist/types/sdk/sdk-legacy/payload/graphPayload.d.ts +0 -10
- package/dist/types/sdk/sdk-legacy/payload/pool.d.ts +0 -180
- package/dist/types/sdk/sdk-legacy/tokens/tokenData.d.ts +0 -21
- package/dist/types/sdk/sdk-legacy/utils/formatter.d.ts +0 -8
- package/dist/types/sdk/sdk-legacy/utils/index.d.ts +0 -3
- /package/dist/cjs/sdk/{accountMigration → core}/types.js +0 -0
- /package/dist/esm/sdk/{accountMigration → core}/types.js +0 -0
- /package/dist/esm/sdk/{sdk-legacy/utils/math.js → utils/bigintMath.js} +0 -0
- /package/dist/types/sdk/{sdk-legacy/utils/math.d.ts → utils/bigintMath.d.ts} +0 -0
- /package/dist/types/sdk/{sdk-legacy/utils/price.d.ts → utils/priceMath.d.ts} +0 -0
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { decodeAbiParameters, hexToBytes } from "viem";
|
|
2
|
-
import { isV310 } from "../../constants/versions.js";
|
|
3
2
|
import {
|
|
4
3
|
AbstractPriceFeedContract
|
|
5
4
|
} from "./AbstractPriceFeed.js";
|
|
@@ -8,56 +7,22 @@ class AbstractLPPriceFeedContract extends AbstractPriceFeedContract {
|
|
|
8
7
|
lpToken;
|
|
9
8
|
lowerBound;
|
|
10
9
|
upperBound;
|
|
11
|
-
// v3.0 optionals
|
|
12
|
-
exchangeRate;
|
|
13
|
-
aggregatePrice;
|
|
14
|
-
scale;
|
|
15
10
|
constructor(options, args) {
|
|
16
11
|
super(options, { ...args, decimals: 8 });
|
|
17
12
|
this.hasLowerBoundCap = true;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
this.upperBound = decoder[3];
|
|
32
|
-
} else {
|
|
33
|
-
const decoder = decodeAbiParameters(
|
|
34
|
-
[
|
|
35
|
-
{ type: "address", name: "lpToken" },
|
|
36
|
-
{ type: "address", name: "lpContract" },
|
|
37
|
-
{ type: "uint256", name: "lowerBound" },
|
|
38
|
-
{ type: "uint256", name: "upperBound" },
|
|
39
|
-
{
|
|
40
|
-
type: "tuple",
|
|
41
|
-
name: "price",
|
|
42
|
-
components: [
|
|
43
|
-
{ type: "uint256", name: "exchangeRate" },
|
|
44
|
-
{ type: "int256", name: "aggregatePrice" },
|
|
45
|
-
{ type: "uint256", name: "scale" },
|
|
46
|
-
{ type: "bool", name: "exchangeRateSuccess" },
|
|
47
|
-
{ type: "bool", name: "aggregatePriceSuccess" }
|
|
48
|
-
]
|
|
49
|
-
}
|
|
50
|
-
],
|
|
51
|
-
hexToBytes(args.baseParams.serializedParams)
|
|
52
|
-
);
|
|
53
|
-
this.lpToken = decoder[0];
|
|
54
|
-
this.lpContract = decoder[1];
|
|
55
|
-
this.lowerBound = decoder[2];
|
|
56
|
-
this.upperBound = decoder[3];
|
|
57
|
-
this.exchangeRate = decoder[4].exchangeRate;
|
|
58
|
-
this.aggregatePrice = decoder[4].aggregatePrice;
|
|
59
|
-
this.scale = decoder[4].scale;
|
|
60
|
-
}
|
|
13
|
+
const decoder = decodeAbiParameters(
|
|
14
|
+
[
|
|
15
|
+
{ type: "address", name: "lpToken" },
|
|
16
|
+
{ type: "address", name: "lpContract" },
|
|
17
|
+
{ type: "uint256", name: "lowerBound" },
|
|
18
|
+
{ type: "uint256", name: "upperBound" }
|
|
19
|
+
],
|
|
20
|
+
hexToBytes(args.baseParams.serializedParams)
|
|
21
|
+
);
|
|
22
|
+
this.lpToken = decoder[0];
|
|
23
|
+
this.lpContract = decoder[1];
|
|
24
|
+
this.lowerBound = decoder[2];
|
|
25
|
+
this.upperBound = decoder[3];
|
|
61
26
|
}
|
|
62
27
|
stateHuman(raw) {
|
|
63
28
|
return {
|
|
@@ -65,11 +30,7 @@ class AbstractLPPriceFeedContract extends AbstractPriceFeedContract {
|
|
|
65
30
|
lpContract: this.lpContract,
|
|
66
31
|
lpToken: this.lpToken,
|
|
67
32
|
lowerBound: this.lowerBound,
|
|
68
|
-
upperBound: this.upperBound
|
|
69
|
-
// v3.0 optionals
|
|
70
|
-
exchangeRate: this.exchangeRate?.toString(),
|
|
71
|
-
aggregatePrice: this.aggregatePrice?.toString(),
|
|
72
|
-
scale: this.scale?.toString()
|
|
33
|
+
upperBound: this.upperBound
|
|
73
34
|
};
|
|
74
35
|
}
|
|
75
36
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { bytesToString, decodeAbiParameters, toBytes } from "viem";
|
|
2
2
|
import { redstonePriceFeedAbi } from "../../abi/index.js";
|
|
3
|
-
import { ADDRESS_0X0
|
|
3
|
+
import { ADDRESS_0X0 } from "../../constants/index.js";
|
|
4
4
|
import { AbstractPriceFeedContract } from "./AbstractPriceFeed.js";
|
|
5
5
|
class RedstonePriceFeedContract extends AbstractPriceFeedContract {
|
|
6
6
|
token;
|
|
@@ -16,52 +16,25 @@ class RedstonePriceFeedContract extends AbstractPriceFeedContract {
|
|
|
16
16
|
name: "RedstonePriceFeed",
|
|
17
17
|
abi: redstonePriceFeedAbi
|
|
18
18
|
});
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
this.lastPayloadTimestamp = Number(decoder[6]);
|
|
39
|
-
} else {
|
|
40
|
-
const decoder = decodeAbiParameters(
|
|
41
|
-
[
|
|
42
|
-
{ type: "address" },
|
|
43
|
-
// pf.token(),
|
|
44
|
-
{ type: "bytes32" },
|
|
45
|
-
// pf.dataFeedId(),
|
|
46
|
-
{ type: "address[10]" },
|
|
47
|
-
// signers,
|
|
48
|
-
{ type: "uint8" },
|
|
49
|
-
// pf.getUniqueSignersThreshold(),
|
|
50
|
-
{ type: "uint128" },
|
|
51
|
-
// pf.lastPrice(),
|
|
52
|
-
{ type: "uint40" }
|
|
53
|
-
// pf.lastPayloadTimestamp()
|
|
54
|
-
],
|
|
55
|
-
args.baseParams.serializedParams
|
|
56
|
-
);
|
|
57
|
-
this.token = decoder[0];
|
|
58
|
-
this.dataId = bytesToString(toBytes(decoder[1])).replaceAll("\0", "");
|
|
59
|
-
this.signers = [...decoder[2]];
|
|
60
|
-
this.signersThreshold = Number(decoder[3]);
|
|
61
|
-
this.dataServiceId = ["GMX", "BAL"].includes(this.dataId) ? "redstone-arbitrum-prod" : "redstone-primary-prod";
|
|
62
|
-
this.lastPrice = decoder[4];
|
|
63
|
-
this.lastPayloadTimestamp = Number(decoder[5]);
|
|
64
|
-
}
|
|
19
|
+
const decoder = decodeAbiParameters(
|
|
20
|
+
[
|
|
21
|
+
{ type: "address", name: "token" },
|
|
22
|
+
{ type: "bytes32", name: "dataFeedId" },
|
|
23
|
+
{ type: "string", name: "dataServiceId" },
|
|
24
|
+
{ type: "address[10]", name: "signers" },
|
|
25
|
+
{ type: "uint8", name: "signersThreshold" },
|
|
26
|
+
{ type: "uint128", name: "lastPrice" },
|
|
27
|
+
{ type: "uint40", name: "lastPayloadTimestamp" }
|
|
28
|
+
],
|
|
29
|
+
args.baseParams.serializedParams
|
|
30
|
+
);
|
|
31
|
+
this.token = decoder[0];
|
|
32
|
+
this.dataId = bytesToString(toBytes(decoder[1])).replaceAll("\0", "");
|
|
33
|
+
this.dataServiceId = decoder[2];
|
|
34
|
+
this.signers = [...decoder[3]];
|
|
35
|
+
this.signersThreshold = Number(decoder[4]);
|
|
36
|
+
this.lastPrice = decoder[5];
|
|
37
|
+
this.lastPayloadTimestamp = Number(decoder[6]);
|
|
65
38
|
}
|
|
66
39
|
stateHuman(raw = true) {
|
|
67
40
|
return {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { iPoolV310Abi } from "../../abi/310/generated.js";
|
|
1
2
|
import { ierc20ZapperDepositsAbi } from "../../abi/iERC20ZapperDeposits.js";
|
|
2
3
|
import { iethZapperDepositsAbi } from "../../abi/iETHZapperDeposits.js";
|
|
3
4
|
import { iZapperAbi } from "../../abi/iZapper.js";
|
|
4
|
-
import { iPoolV300Abi } from "../../abi/v300.js";
|
|
5
5
|
import { SDKConstruct } from "../base/index.js";
|
|
6
6
|
class AbstractPoolService extends SDKConstruct {
|
|
7
7
|
#version;
|
|
@@ -59,7 +59,7 @@ class AbstractPoolService extends SDKConstruct {
|
|
|
59
59
|
return [
|
|
60
60
|
{
|
|
61
61
|
target: pool,
|
|
62
|
-
abi:
|
|
62
|
+
abi: iPoolV310Abi,
|
|
63
63
|
functionName: "depositWithReferral",
|
|
64
64
|
args: [collateral.balance, account, referralCode]
|
|
65
65
|
}
|
|
@@ -100,7 +100,7 @@ class AbstractPoolService extends SDKConstruct {
|
|
|
100
100
|
return [
|
|
101
101
|
{
|
|
102
102
|
target: pool,
|
|
103
|
-
abi:
|
|
103
|
+
abi: iPoolV310Abi,
|
|
104
104
|
functionName: "redeem",
|
|
105
105
|
args: [amount, account, account]
|
|
106
106
|
}
|
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { PoolServiceV300 } from "./PoolServiceV300.js";
|
|
1
|
+
import { isV310 } from "../constants/index.js";
|
|
3
2
|
import { PoolServiceV310 } from "./PoolServiceV310.js";
|
|
4
3
|
function createPoolService(sdk, version) {
|
|
5
|
-
if (isV300(version)) {
|
|
6
|
-
return new PoolServiceV300(sdk, version);
|
|
7
|
-
}
|
|
8
4
|
if (isV310(version)) {
|
|
9
5
|
return new PoolServiceV310(sdk, version);
|
|
10
6
|
}
|
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
import { BaseContract } from "../base/index.js";
|
|
2
2
|
import { PERCENTAGE_FACTOR } from "../constants/math.js";
|
|
3
3
|
import { AddressMap, AddressSet, formatBN, isDust } from "../utils/index.js";
|
|
4
|
-
import { Hooks } from "../utils/internal/index.js";
|
|
5
4
|
import { limitLeftover } from "./helpers.js";
|
|
6
5
|
class AbstractRouterContract extends BaseContract {
|
|
7
|
-
hooks = new Hooks();
|
|
8
|
-
addHook = this.hooks.addHook.bind(this.hooks);
|
|
9
|
-
removeHook = this.hooks.removeHook.bind(this.hooks);
|
|
10
6
|
sdk;
|
|
11
7
|
constructor(sdk, args) {
|
|
12
8
|
super(sdk, args);
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { getAddress } from "viem";
|
|
2
2
|
import { gearboxRouterAbi } from "../../abi/router/gearboxRouter.js";
|
|
3
|
-
import { BigIntMath } from "../sdk-legacy/index.js";
|
|
4
3
|
import { AddressMap } from "../utils/AddressMap.js";
|
|
5
4
|
import { formatBN } from "../utils/formatter.js";
|
|
6
5
|
import { isDust } from "../utils/index.js";
|
|
7
6
|
import { AbstractRouterContract } from "./AbstractRouterContract.js";
|
|
8
7
|
import { assetsMap, balancesMap, limitLeftover } from "./helpers.js";
|
|
9
8
|
const abi = gearboxRouterAbi;
|
|
10
|
-
const ERR_NOT_IMPLEMENTED = new Error("Not implemented in router v3.1");
|
|
11
9
|
class RouterV310Contract extends AbstractRouterContract {
|
|
12
10
|
#numSplits = new AddressMap();
|
|
13
11
|
#defaultNumSplits = 4n;
|
|
@@ -141,11 +139,6 @@ class RouterV310Contract extends AbstractRouterContract {
|
|
|
141
139
|
props.creditAccount.creditAccount,
|
|
142
140
|
tData
|
|
143
141
|
]);
|
|
144
|
-
if (props.calls.length > 0 && result.length === 0 && !!props.forceCalls) {
|
|
145
|
-
return {
|
|
146
|
-
calls: [...props.calls]
|
|
147
|
-
};
|
|
148
|
-
}
|
|
149
142
|
return {
|
|
150
143
|
calls: [...result]
|
|
151
144
|
};
|
|
@@ -289,27 +282,6 @@ class RouterV310Contract extends AbstractRouterContract {
|
|
|
289
282
|
claimRewards: t.claimRewards
|
|
290
283
|
}));
|
|
291
284
|
}
|
|
292
|
-
/**
|
|
293
|
-
* Implements {@link IRouterContract.findAllSwaps}
|
|
294
|
-
* @deprecated v3.0 legacy method
|
|
295
|
-
*/
|
|
296
|
-
findAllSwaps(_) {
|
|
297
|
-
throw ERR_NOT_IMPLEMENTED;
|
|
298
|
-
}
|
|
299
|
-
/**
|
|
300
|
-
* Implements {@link IRouterContract.getAvailableConnectors}
|
|
301
|
-
* @deprecated v3.0 legacy method
|
|
302
|
-
*/
|
|
303
|
-
getAvailableConnectors(_) {
|
|
304
|
-
throw ERR_NOT_IMPLEMENTED;
|
|
305
|
-
}
|
|
306
|
-
/**
|
|
307
|
-
* Implements {@link IRouterContract.getFindClosePathInput}
|
|
308
|
-
* @deprecated v3.0 legacy method
|
|
309
|
-
*/
|
|
310
|
-
getFindClosePathInput(_, __, ___) {
|
|
311
|
-
throw ERR_NOT_IMPLEMENTED;
|
|
312
|
-
}
|
|
313
285
|
}
|
|
314
286
|
function balancesAfterOpen(target, targetAmount, expected, leftover) {
|
|
315
287
|
const result = {};
|
|
@@ -323,10 +295,9 @@ function balancesAfterOpen(target, targetAmount, expected, leftover) {
|
|
|
323
295
|
if (t === targetAddr) {
|
|
324
296
|
result[t] = (expected.get(t) ?? 0n) + targetAmount;
|
|
325
297
|
} else {
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
);
|
|
298
|
+
const exp = expected.get(t) ?? 0n;
|
|
299
|
+
const left = limitLeftover(leftover.get(t), t) ?? 0n;
|
|
300
|
+
result[t] = exp < left ? exp : left;
|
|
330
301
|
}
|
|
331
302
|
}
|
|
332
303
|
return result;
|
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { RouterV300Contract } from "./RouterV300Contract.js";
|
|
1
|
+
import { isV310 } from "../constants/index.js";
|
|
3
2
|
import { RouterV310Contract } from "./RouterV310Contract.js";
|
|
4
3
|
function createRouter(sdk, address, version) {
|
|
5
4
|
const contract = sdk.getContract(address);
|
|
6
5
|
if (contract) {
|
|
7
6
|
return contract;
|
|
8
7
|
}
|
|
9
|
-
if (isV300(version)) {
|
|
10
|
-
return new RouterV300Contract(sdk, address, version);
|
|
11
|
-
}
|
|
12
8
|
if (isV310(version)) {
|
|
13
9
|
return new RouterV310Contract(sdk, address, version);
|
|
14
10
|
}
|
|
@@ -2,9 +2,6 @@ import { AddressMap } from "../utils/index.js";
|
|
|
2
2
|
function balancesMap(assets) {
|
|
3
3
|
return new AddressMap(assets.map(({ token, balance }) => [token, balance]));
|
|
4
4
|
}
|
|
5
|
-
function compareRouterResults(a, b) {
|
|
6
|
-
return a.amount > b.amount ? a : b;
|
|
7
|
-
}
|
|
8
5
|
function assetsMap(assets) {
|
|
9
6
|
return new AddressMap(assets.map((a) => [a.token, a]));
|
|
10
7
|
}
|
|
@@ -20,6 +17,5 @@ function limitLeftover(balance, token) {
|
|
|
20
17
|
export {
|
|
21
18
|
assetsMap,
|
|
22
19
|
balancesMap,
|
|
23
|
-
compareRouterResults,
|
|
24
20
|
limitLeftover
|
|
25
21
|
};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { BigIntMath } from "../
|
|
2
|
-
import {
|
|
3
|
-
import { CreditAccountData_Legacy } from "./creditAccount.js";
|
|
1
|
+
import { BigIntMath, PriceUtils } from "../index.js";
|
|
2
|
+
import { CreditAccountDataUtils } from "./creditAccount.js";
|
|
4
3
|
class AssetUtils {
|
|
5
4
|
static nextAsset({
|
|
6
5
|
allowedTokens,
|
|
@@ -20,7 +19,7 @@ class AssetUtils {
|
|
|
20
19
|
const alreadySelected = selectedRecord[allowedToken.toLowerCase()];
|
|
21
20
|
return !alreadySelected;
|
|
22
21
|
});
|
|
23
|
-
const sorted =
|
|
22
|
+
const sorted = CreditAccountDataUtils.sortBalances(
|
|
24
23
|
AssetUtils.getBalances(notSelected, balances),
|
|
25
24
|
prices,
|
|
26
25
|
tokensList
|
|
@@ -1,104 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
|
+
BigIntMath,
|
|
2
3
|
MIN_INT96,
|
|
3
4
|
PERCENTAGE_DECIMALS,
|
|
4
5
|
PERCENTAGE_FACTOR,
|
|
5
6
|
PRICE_DECIMALS,
|
|
6
7
|
PRICE_DECIMALS_POW,
|
|
8
|
+
PriceUtils,
|
|
7
9
|
SECONDS_PER_YEAR,
|
|
8
10
|
WAD,
|
|
9
11
|
WAD_DECIMALS_POW
|
|
10
|
-
} from "
|
|
11
|
-
import { rayToNumber } from "../utils/formatter.js";
|
|
12
|
-
import { BigIntMath } from "../utils/math.js";
|
|
13
|
-
import { PriceUtils } from "../utils/price.js";
|
|
12
|
+
} from "../index.js";
|
|
14
13
|
const MAX_UINT16 = 65535;
|
|
15
|
-
class
|
|
16
|
-
isSuccessful;
|
|
17
|
-
chainId;
|
|
18
|
-
network;
|
|
19
|
-
creditAccount;
|
|
20
|
-
borrower;
|
|
21
|
-
creditManager;
|
|
22
|
-
creditFacade;
|
|
23
|
-
marketConfigurator;
|
|
24
|
-
underlying;
|
|
25
|
-
expirationDate;
|
|
26
|
-
version;
|
|
27
|
-
enabledTokensMask;
|
|
28
|
-
healthFactor;
|
|
29
|
-
baseBorrowRateWithoutFee;
|
|
30
|
-
borrowedAmount;
|
|
31
|
-
accruedInterest;
|
|
32
|
-
accruedFees;
|
|
33
|
-
totalDebtUSD;
|
|
34
|
-
borrowedAmountPlusInterestAndFees;
|
|
35
|
-
debt;
|
|
36
|
-
totalValue;
|
|
37
|
-
totalValueUSD;
|
|
38
|
-
twvUSD;
|
|
39
|
-
balances = {};
|
|
40
|
-
collateralTokens = [];
|
|
41
|
-
tokens = {};
|
|
42
|
-
forbiddenTokens = {};
|
|
43
|
-
quotedTokens = {};
|
|
44
|
-
constructor(payload) {
|
|
45
|
-
this.isSuccessful = payload.isSuccessful;
|
|
46
|
-
this.chainId = payload.chainId;
|
|
47
|
-
this.network = payload.network;
|
|
48
|
-
this.creditAccount = payload.addr.toLowerCase();
|
|
49
|
-
this.borrower = payload.borrower.toLowerCase();
|
|
50
|
-
this.creditManager = payload.creditManager.toLowerCase();
|
|
51
|
-
this.creditFacade = payload.creditFacade.toLowerCase();
|
|
52
|
-
this.marketConfigurator = payload.marketConfigurator.toLowerCase();
|
|
53
|
-
this.underlying = payload.underlying.toLowerCase();
|
|
54
|
-
this.expirationDate = Number(payload.expirationDate);
|
|
55
|
-
this.version = Number(payload.cfVersion);
|
|
56
|
-
this.healthFactor = Number(
|
|
57
|
-
(payload.healthFactor || 0n) * PERCENTAGE_FACTOR / WAD
|
|
58
|
-
);
|
|
59
|
-
this.enabledTokensMask = payload.enabledTokensMask;
|
|
60
|
-
this.borrowedAmount = payload.debt;
|
|
61
|
-
this.accruedInterest = payload.accruedInterest || 0n;
|
|
62
|
-
this.accruedFees = payload.accruedFees || 0n;
|
|
63
|
-
this.debt = this.borrowedAmount;
|
|
64
|
-
this.borrowedAmountPlusInterestAndFees = this.borrowedAmount + this.accruedInterest + this.accruedFees;
|
|
65
|
-
this.totalDebtUSD = payload.totalDebtUSD;
|
|
66
|
-
this.totalValue = payload.totalValue || 0n;
|
|
67
|
-
this.totalValueUSD = payload.totalValueUSD;
|
|
68
|
-
this.twvUSD = payload.twvUSD;
|
|
69
|
-
this.baseBorrowRateWithoutFee = rayToNumber(
|
|
70
|
-
payload.baseBorrowRate * PERCENTAGE_DECIMALS * PERCENTAGE_FACTOR
|
|
71
|
-
);
|
|
72
|
-
payload.balances.forEach((b) => {
|
|
73
|
-
const token = b.token.toLowerCase();
|
|
74
|
-
const balance = {
|
|
75
|
-
success: b.success,
|
|
76
|
-
token,
|
|
77
|
-
balance: b.balance,
|
|
78
|
-
isForbidden: b.isForbidden,
|
|
79
|
-
isEnabled: b.isEnabled,
|
|
80
|
-
isQuoted: b.isQuoted,
|
|
81
|
-
quota: b.quota,
|
|
82
|
-
quotaRate: BigInt(b.quotaRate) * PERCENTAGE_DECIMALS,
|
|
83
|
-
mask: b.mask
|
|
84
|
-
};
|
|
85
|
-
if (!b.isForbidden) {
|
|
86
|
-
this.balances[token] = balance.balance;
|
|
87
|
-
this.collateralTokens.push(token);
|
|
88
|
-
}
|
|
89
|
-
if (b.isForbidden) {
|
|
90
|
-
this.forbiddenTokens[token] = true;
|
|
91
|
-
}
|
|
92
|
-
if (b.isQuoted) {
|
|
93
|
-
this.quotedTokens[token] = true;
|
|
94
|
-
}
|
|
95
|
-
this.tokens[token] = balance;
|
|
96
|
-
});
|
|
97
|
-
}
|
|
14
|
+
class CreditAccountDataUtils {
|
|
98
15
|
static sortBalances(balances, prices, tokens) {
|
|
99
16
|
return Object.entries(balances).sort(
|
|
100
17
|
([addr1, amount1], [addr2, amount2]) => {
|
|
101
|
-
return
|
|
18
|
+
return CreditAccountDataUtils.assetComparator(
|
|
102
19
|
{
|
|
103
20
|
token: addr1,
|
|
104
21
|
balance: amount1
|
|
@@ -117,7 +34,7 @@ class CreditAccountData_Legacy {
|
|
|
117
34
|
}
|
|
118
35
|
static sortAssets(balances, prices, tokens) {
|
|
119
36
|
return [...balances].sort(
|
|
120
|
-
(t1, t2) =>
|
|
37
|
+
(t1, t2) => CreditAccountDataUtils.assetComparator(
|
|
121
38
|
t1,
|
|
122
39
|
t2,
|
|
123
40
|
prices,
|
|
@@ -145,12 +62,9 @@ class CreditAccountData_Legacy {
|
|
|
145
62
|
token2?.decimals
|
|
146
63
|
);
|
|
147
64
|
if (totalPrice1 === totalPrice2) {
|
|
148
|
-
return t1.balance === t2.balance ?
|
|
65
|
+
return t1.balance === t2.balance ? CreditAccountDataUtils.tokensAbcComparator(token1, token2) : CreditAccountDataUtils.amountAbcComparator(t1.balance, t2.balance);
|
|
149
66
|
}
|
|
150
|
-
return
|
|
151
|
-
totalPrice1,
|
|
152
|
-
totalPrice2
|
|
153
|
-
);
|
|
67
|
+
return CreditAccountDataUtils.amountAbcComparator(totalPrice1, totalPrice2);
|
|
154
68
|
}
|
|
155
69
|
static tokensAbcComparator(t1, t2) {
|
|
156
70
|
const { symbol: symbol1 = "" } = t1 || {};
|
|
@@ -163,15 +77,6 @@ class CreditAccountData_Legacy {
|
|
|
163
77
|
static amountAbcComparator(t1, t2) {
|
|
164
78
|
return t1 > t2 ? -1 : 1;
|
|
165
79
|
}
|
|
166
|
-
isForbidden(token) {
|
|
167
|
-
return !!this.forbiddenTokens[token];
|
|
168
|
-
}
|
|
169
|
-
isQuoted(token) {
|
|
170
|
-
return !!this.quotedTokens[token];
|
|
171
|
-
}
|
|
172
|
-
isTokenEnabled(token) {
|
|
173
|
-
return this.tokens[token].isEnabled;
|
|
174
|
-
}
|
|
175
80
|
static calcMaxDebtIncrease(healthFactor, debt, underlyingLT, minHf = Number(PERCENTAGE_FACTOR)) {
|
|
176
81
|
const result = debt * BigInt(healthFactor - minHf) / BigInt(minHf - underlyingLT);
|
|
177
82
|
return BigIntMath.max(0n, result);
|
|
@@ -260,12 +165,6 @@ class CreditAccountData_Legacy {
|
|
|
260
165
|
const apyInPercent = (assetAPYMoney - debtAPYMoney) / yourAssetsMoney;
|
|
261
166
|
return apyInPercent;
|
|
262
167
|
}
|
|
263
|
-
hash() {
|
|
264
|
-
return CreditAccountData_Legacy.hash(this.creditManager, this.borrower);
|
|
265
|
-
}
|
|
266
|
-
static hash(creditManager, borrower) {
|
|
267
|
-
return `${creditManager.toLowerCase()}:${borrower.toLowerCase()}`;
|
|
268
|
-
}
|
|
269
168
|
static calcHealthFactor({
|
|
270
169
|
assets,
|
|
271
170
|
quotas,
|
|
@@ -325,17 +224,17 @@ class CreditAccountData_Legacy {
|
|
|
325
224
|
amount * lt / PERCENTAGE_FACTOR
|
|
326
225
|
);
|
|
327
226
|
const recommendedQuota = recommendedBaseQuota * (PERCENTAGE_FACTOR + quotaReserve) / PERCENTAGE_FACTOR;
|
|
328
|
-
return
|
|
227
|
+
return CreditAccountDataUtils.roundUpQuota(recommendedQuota);
|
|
329
228
|
}
|
|
330
229
|
static calcDefaultQuota({ amount, lt, quotaReserve }) {
|
|
331
230
|
const recommendedBaseQuota = amount * lt / PERCENTAGE_FACTOR;
|
|
332
231
|
const recommendedQuota = recommendedBaseQuota * (PERCENTAGE_FACTOR + quotaReserve) / PERCENTAGE_FACTOR;
|
|
333
|
-
return
|
|
232
|
+
return CreditAccountDataUtils.roundUpQuota(recommendedQuota);
|
|
334
233
|
}
|
|
335
234
|
static calcQuotaUpdate(props) {
|
|
336
235
|
const { quotas, initialQuotas, maxDebt, allowedToSpend, allowedToObtain } = props;
|
|
337
236
|
const quotaDecrease = Object.keys(allowedToSpend).reduce((acc, token) => {
|
|
338
|
-
const ch =
|
|
237
|
+
const ch = CreditAccountDataUtils.getSingleQuotaChange(
|
|
339
238
|
token,
|
|
340
239
|
0n,
|
|
341
240
|
props
|
|
@@ -343,25 +242,25 @@ class CreditAccountData_Legacy {
|
|
|
343
242
|
if (ch && ch.balance < 0) acc[ch.token] = ch;
|
|
344
243
|
return acc;
|
|
345
244
|
}, {});
|
|
346
|
-
const quotaCap =
|
|
245
|
+
const quotaCap = CreditAccountDataUtils.roundUpQuota(maxDebt * 2n);
|
|
347
246
|
const quotaBought = Object.values(initialQuotas).reduce(
|
|
348
|
-
(sum, q) => sum +
|
|
247
|
+
(sum, q) => sum + CreditAccountDataUtils.roundUpQuota(q?.quota || 0n),
|
|
349
248
|
0n
|
|
350
249
|
);
|
|
351
250
|
const quotaReduced = Object.values(quotaDecrease).reduce((sum, q) => {
|
|
352
251
|
const quotaBalance = q.balance || 0n;
|
|
353
252
|
const safeBalance = quotaBalance === MIN_INT96 ? BigIntMath.neg(
|
|
354
|
-
|
|
253
|
+
CreditAccountDataUtils.roundUpQuota(
|
|
355
254
|
initialQuotas[q.token]?.quota || 0n
|
|
356
255
|
)
|
|
357
256
|
) : quotaBalance;
|
|
358
257
|
return sum + safeBalance;
|
|
359
258
|
}, 0n);
|
|
360
|
-
const maxQuotaIncrease =
|
|
259
|
+
const maxQuotaIncrease = CreditAccountDataUtils.roundUpQuota(
|
|
361
260
|
BigIntMath.max(quotaCap - (quotaBought + quotaReduced), 0n)
|
|
362
261
|
);
|
|
363
262
|
const quotaIncrease = Object.keys(allowedToObtain).reduce((acc, token) => {
|
|
364
|
-
const ch =
|
|
263
|
+
const ch = CreditAccountDataUtils.getSingleQuotaChange(
|
|
365
264
|
token,
|
|
366
265
|
maxQuotaIncrease,
|
|
367
266
|
props
|
|
@@ -409,21 +308,21 @@ class CreditAccountData_Legacy {
|
|
|
409
308
|
const assetAfter = props.assetsAfterUpdate[token];
|
|
410
309
|
const { amountInTarget = 0n } = assetAfter || {};
|
|
411
310
|
const lt = props.liquidationThresholds[token] || 0n;
|
|
412
|
-
const maxQuotaIncrease =
|
|
311
|
+
const maxQuotaIncrease = CreditAccountDataUtils.roundUpQuota(
|
|
413
312
|
unsafeMaxQuotaIncrease
|
|
414
313
|
);
|
|
415
|
-
const initialQuota =
|
|
416
|
-
const defaultQuota = props.calcModification?.type === "recommendedQuota" && props.calcModification.debt > 0 ?
|
|
314
|
+
const initialQuota = CreditAccountDataUtils.roundUpQuota(unsafeInitialQuota);
|
|
315
|
+
const defaultQuota = props.calcModification?.type === "recommendedQuota" && props.calcModification.debt > 0 ? CreditAccountDataUtils.calcRecommendedQuota({
|
|
417
316
|
lt,
|
|
418
317
|
quotaReserve: props.quotaReserve,
|
|
419
318
|
amount: amountInTarget,
|
|
420
319
|
debt: props.calcModification.debt
|
|
421
|
-
}) :
|
|
320
|
+
}) : CreditAccountDataUtils.calcDefaultQuota({
|
|
422
321
|
lt,
|
|
423
322
|
quotaReserve: props.quotaReserve,
|
|
424
323
|
amount: amountInTarget
|
|
425
324
|
});
|
|
426
|
-
const unsafeQuotaChange =
|
|
325
|
+
const unsafeQuotaChange = CreditAccountDataUtils.roundUpQuota(
|
|
427
326
|
defaultQuota - initialQuota
|
|
428
327
|
);
|
|
429
328
|
const quotaChange = unsafeQuotaChange > 0 ? BigIntMath.min(maxQuotaIncrease, unsafeQuotaChange) : unsafeQuotaChange < 0 && BigIntMath.abs(unsafeQuotaChange) >= initialQuota ? MIN_INT96 : unsafeQuotaChange;
|
|
@@ -491,5 +390,5 @@ class CreditAccountData_Legacy {
|
|
|
491
390
|
}
|
|
492
391
|
}
|
|
493
392
|
export {
|
|
494
|
-
|
|
393
|
+
CreditAccountDataUtils
|
|
495
394
|
};
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { formatDuration as fmtDuration, intervalToDuration } from "date-fns";
|
|
2
|
+
import Decimal from "decimal.js-light";
|
|
3
|
+
import { LEVERAGE_DECIMALS, PERCENTAGE_FACTOR } from "../index.js";
|
|
2
4
|
const toBigInt = (v) => {
|
|
3
5
|
const value = typeof v === "object" && v.type === "BigNumber" ? v.hex : v.toString();
|
|
4
6
|
return BigInt(value);
|
|
@@ -98,14 +100,48 @@ function formatTimestamp(timestamp, raw = true) {
|
|
|
98
100
|
});
|
|
99
101
|
return raw ? `${result} [${timestamp}]` : result;
|
|
100
102
|
}
|
|
103
|
+
function rayToNumber(num) {
|
|
104
|
+
return Number(toBigInt(num) / 10n ** 21n) / 1e6;
|
|
105
|
+
}
|
|
106
|
+
function toSignificant(num, decimals, precision = 6) {
|
|
107
|
+
if (num === 1n) return "0";
|
|
108
|
+
const divider = new Decimal(10).toPower(decimals);
|
|
109
|
+
const number = new Decimal(num.toString()).div(divider);
|
|
110
|
+
return number.toSignificantDigits(precision, 4).toString();
|
|
111
|
+
}
|
|
112
|
+
function toBN(num, decimals) {
|
|
113
|
+
if (num === "") return 0n;
|
|
114
|
+
const multiplier = new Decimal(10).toPower(decimals);
|
|
115
|
+
const number = new Decimal(num).mul(multiplier);
|
|
116
|
+
return BigInt(number.toFixed(0));
|
|
117
|
+
}
|
|
118
|
+
function shortAddress(address) {
|
|
119
|
+
return address === void 0 ? "" : `${address.slice(0, 6)}...${address.slice(address.length - 4)}`;
|
|
120
|
+
}
|
|
121
|
+
function shortHash(address) {
|
|
122
|
+
return address === void 0 ? "" : `${address.slice(0, 5)}...`;
|
|
123
|
+
}
|
|
124
|
+
function formatPercentage(healthFactor, decimals = 2) {
|
|
125
|
+
return (healthFactor / Number(PERCENTAGE_FACTOR)).toFixed(decimals);
|
|
126
|
+
}
|
|
127
|
+
function formatLeverage(leverage, decimals = 2) {
|
|
128
|
+
return (leverage / Number(LEVERAGE_DECIMALS)).toFixed(decimals);
|
|
129
|
+
}
|
|
101
130
|
export {
|
|
102
131
|
fmtBinaryMask,
|
|
103
132
|
formatBN,
|
|
104
133
|
formatBNvalue,
|
|
105
134
|
formatDuration,
|
|
135
|
+
formatLeverage,
|
|
106
136
|
formatNumberToString_,
|
|
137
|
+
formatPercentage,
|
|
107
138
|
formatTimestamp,
|
|
108
139
|
numberWithCommas,
|
|
109
140
|
percentFmt,
|
|
110
|
-
|
|
141
|
+
rayToNumber,
|
|
142
|
+
shortAddress,
|
|
143
|
+
shortHash,
|
|
144
|
+
toBN,
|
|
145
|
+
toBigInt,
|
|
146
|
+
toSignificant
|
|
111
147
|
};
|