@gearbox-protocol/sdk 11.9.0-next.2 → 11.10.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/dev/create2.js +1 -1
- package/dist/cjs/dev/mint/AbstractMinter.js +4 -2
- package/dist/cjs/dev/mint/DealMinter.js +3 -0
- package/dist/cjs/dev/mint/DirectMinter.js +3 -0
- package/dist/cjs/dev/mint/FallbackMinter.js +1 -1
- package/dist/cjs/dev/mint/TransferMinter.js +3 -0
- package/dist/cjs/permissionless/bindings/address-provider.js +6 -4
- package/dist/cjs/permissionless/bindings/base-contract.js +173 -0
- package/dist/cjs/permissionless/bindings/bytecode-repository.js +25 -23
- package/dist/cjs/permissionless/bindings/compressors/token-compressor.js +4 -4
- package/dist/cjs/permissionless/bindings/compressors/withdrawal-compressor.js +17 -11
- package/dist/cjs/permissionless/bindings/cross-chain-multisig.js +22 -23
- package/dist/cjs/permissionless/bindings/factory/abstract-factory.js +4 -7
- package/dist/cjs/permissionless/bindings/governance/batches-chain.js +4 -4
- package/dist/cjs/permissionless/bindings/governance/governor.js +49 -30
- package/dist/cjs/permissionless/bindings/governance/timelock.js +4 -4
- package/dist/cjs/permissionless/bindings/index.js +2 -0
- package/dist/cjs/permissionless/bindings/instance-manager.js +77 -58
- package/dist/cjs/permissionless/bindings/market-configurator-factory.js +4 -4
- package/dist/cjs/permissionless/bindings/market-configurator.js +143 -71
- package/dist/cjs/permissionless/bindings/price-feed-store.js +17 -8
- package/dist/cjs/permissionless/bindings/router/routing-manager.js +15 -9
- package/dist/cjs/permissionless/bindings/treasury-splitter.js +23 -14
- package/dist/cjs/permissionless/core/raw-tx.js +2 -2
- package/dist/cjs/permissionless/utils/abi-decoder.js +72 -0
- package/dist/cjs/permissionless/utils/format.js +2 -2
- package/dist/cjs/permissionless/utils/governance/timelock-txs.js +2 -2
- package/dist/cjs/permissionless/utils/index.js +2 -0
- package/dist/cjs/permissionless/utils/price-update/get-price-feeds.js +2 -1
- package/dist/cjs/permissionless/utils/price-update/get-price-update-tx.js +2 -1
- package/dist/cjs/permissionless/utils/price-update/get-prices.js +2 -1
- package/dist/cjs/permissionless/utils/price-update/get-updatable-feeds.js +3 -2
- package/dist/cjs/plugins/adapters/abi/conctructorAbi.js +2 -1
- package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
- package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
- package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
- package/dist/cjs/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
- package/dist/cjs/plugins/bots/BotsPlugin.js +8 -21
- package/dist/cjs/plugins/bots/PartialLiquidationBotBaseContract.js +22 -17
- package/dist/cjs/plugins/bots/PartialLiquidationBotV300Contract.js +20 -4
- package/dist/cjs/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +78 -3
- package/dist/cjs/plugins/zappers/ZappersPlugin.js +1 -1
- package/dist/cjs/sdk/GearboxSDK.js +110 -8
- package/dist/cjs/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +4 -1
- package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +12 -8
- package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +10 -8
- package/dist/cjs/sdk/base/AddressLabeller.js +49 -0
- package/dist/cjs/sdk/base/BaseContract.js +80 -195
- package/dist/cjs/sdk/base/IAddressLabeller.js +16 -0
- package/dist/cjs/sdk/base/SDKConstruct.js +29 -3
- package/dist/cjs/sdk/base/TokensMeta.js +4 -4
- package/dist/cjs/sdk/base/index.js +2 -4
- package/dist/cjs/sdk/core/BotListV3Contract.js +2 -2
- package/dist/cjs/sdk/core/GearStakingV3Contract.js +2 -2
- package/dist/cjs/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
- package/dist/cjs/sdk/core/address-provider/AddressProviderV300Contract.js +6 -11
- package/dist/cjs/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
- package/dist/cjs/sdk/market/MarketConfiguratorContract.js +5 -5
- package/dist/cjs/sdk/market/MarketRegister.js +9 -7
- package/dist/cjs/sdk/market/MarketSuite.js +2 -2
- package/dist/cjs/sdk/market/credit/CreditConfiguratorV300Contract.js +3 -4
- package/dist/cjs/sdk/market/credit/CreditConfiguratorV310Contract.js +3 -4
- package/dist/cjs/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
- package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
- package/dist/cjs/sdk/market/credit/CreditManagerV300Contract.js +2 -5
- package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +2 -5
- package/dist/cjs/sdk/market/credit/CreditSuite.js +6 -2
- package/dist/cjs/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +1 -3
- package/dist/cjs/sdk/market/loss-policy/LossPolicyContract.js +2 -2
- package/dist/cjs/sdk/market/loss-policy/createLossPolicy.js +1 -1
- package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +26 -8
- package/dist/cjs/sdk/market/oracle/createPriceOracle.js +1 -1
- package/dist/cjs/sdk/market/pool/GaugeContract.js +2 -2
- package/dist/cjs/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
- package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
- package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
- package/dist/cjs/sdk/market/pool/PoolSuite.js +1 -1
- package/dist/cjs/sdk/market/pool/PoolV300Contract.js +5 -5
- package/dist/cjs/sdk/market/pool/PoolV310Contract.js +5 -5
- package/dist/cjs/sdk/market/pool/TumblerContract.js +2 -2
- package/dist/cjs/sdk/market/pool/createInterestRateModel.js +15 -11
- package/dist/cjs/sdk/market/pricefeeds/AbstractLPPriceFeed.js +22 -2
- package/dist/cjs/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
- package/dist/cjs/sdk/market/pricefeeds/BalancerStablePriceFeed.js +9 -2
- package/dist/cjs/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +9 -2
- package/dist/cjs/sdk/market/pricefeeds/BoundedPriceFeed.js +2 -6
- package/dist/cjs/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
- package/dist/cjs/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
- package/dist/cjs/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +9 -2
- package/dist/cjs/sdk/market/pricefeeds/CurveStablePriceFeed.js +9 -2
- package/dist/cjs/sdk/market/pricefeeds/CurveUSDPriceFeed.js +9 -2
- package/dist/cjs/sdk/market/pricefeeds/Erc4626PriceFeed.js +18 -2
- package/dist/cjs/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
- package/dist/cjs/sdk/market/pricefeeds/MellowLRTPriceFeed.js +10 -2
- package/dist/cjs/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
- package/dist/cjs/sdk/market/pricefeeds/PriceFeedRef.js +4 -6
- package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +3 -2
- package/dist/cjs/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
- package/dist/cjs/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
- package/dist/cjs/sdk/market/pricefeeds/WstETHPriceFeed.js +9 -2
- package/dist/cjs/sdk/market/pricefeeds/YearnPriceFeed.js +9 -2
- package/dist/cjs/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
- package/dist/cjs/sdk/market/pricefeeds/updates/PythUpdater.js +8 -6
- package/dist/cjs/sdk/market/pricefeeds/updates/RedstoneUpdater.js +11 -9
- package/dist/cjs/sdk/router/AbstractRouterContract.js +114 -12
- package/dist/cjs/sdk/router/RouterV300Contract.js +9 -10
- package/dist/cjs/sdk/router/RouterV310Contract.js +10 -10
- package/dist/cjs/sdk/router/createRouter.js +0 -4
- package/dist/cjs/sdk/utils/index.js +0 -2
- package/dist/esm/dev/create2.js +2 -2
- package/dist/esm/dev/mint/AbstractMinter.js +7 -3
- package/dist/esm/dev/mint/DealMinter.js +3 -0
- package/dist/esm/dev/mint/DirectMinter.js +3 -0
- package/dist/esm/dev/mint/FallbackMinter.js +1 -1
- package/dist/esm/dev/mint/TransferMinter.js +3 -0
- package/dist/esm/permissionless/bindings/address-provider.js +7 -7
- package/dist/esm/permissionless/bindings/base-contract.js +151 -0
- package/dist/esm/permissionless/bindings/bytecode-repository.js +24 -22
- package/dist/esm/permissionless/bindings/compressors/token-compressor.js +3 -3
- package/dist/esm/permissionless/bindings/compressors/withdrawal-compressor.js +16 -10
- package/dist/esm/permissionless/bindings/cross-chain-multisig.js +16 -20
- package/dist/esm/permissionless/bindings/factory/abstract-factory.js +4 -9
- package/dist/esm/permissionless/bindings/governance/batches-chain.js +3 -3
- package/dist/esm/permissionless/bindings/governance/governor.js +47 -28
- package/dist/esm/permissionless/bindings/governance/timelock.js +3 -3
- package/dist/esm/permissionless/bindings/index.js +1 -0
- package/dist/esm/permissionless/bindings/instance-manager.js +69 -53
- package/dist/esm/permissionless/bindings/market-configurator-factory.js +3 -3
- package/dist/esm/permissionless/bindings/market-configurator.js +137 -65
- package/dist/esm/permissionless/bindings/price-feed-store.js +14 -8
- package/dist/esm/permissionless/bindings/router/routing-manager.js +14 -8
- package/dist/esm/permissionless/bindings/treasury-splitter.js +22 -15
- package/dist/esm/permissionless/core/raw-tx.js +1 -1
- package/dist/esm/permissionless/utils/abi-decoder.js +50 -0
- package/dist/esm/permissionless/utils/format.js +1 -1
- package/dist/esm/permissionless/utils/governance/timelock-txs.js +1 -1
- package/dist/esm/permissionless/utils/index.js +1 -0
- package/dist/esm/permissionless/utils/price-update/get-price-feeds.js +2 -4
- package/dist/esm/permissionless/utils/price-update/get-price-update-tx.js +1 -1
- package/dist/esm/permissionless/utils/price-update/get-prices.js +2 -1
- package/dist/esm/permissionless/utils/price-update/get-updatable-feeds.js +1 -1
- package/dist/esm/plugins/adapters/abi/conctructorAbi.js +2 -1
- package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +2 -2
- package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
- package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
- package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
- package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
- package/dist/esm/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
- package/dist/esm/plugins/bots/BotsPlugin.js +8 -11
- package/dist/esm/plugins/bots/PartialLiquidationBotBaseContract.js +22 -7
- package/dist/esm/plugins/bots/PartialLiquidationBotV300Contract.js +20 -4
- package/dist/esm/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +78 -3
- package/dist/esm/plugins/zappers/ZappersPlugin.js +1 -1
- package/dist/esm/sdk/GearboxSDK.js +112 -10
- package/dist/esm/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +4 -1
- package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +13 -9
- package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +10 -8
- package/dist/esm/sdk/base/AddressLabeller.js +25 -0
- package/dist/esm/sdk/base/BaseContract.js +81 -202
- package/dist/esm/sdk/base/IAddressLabeller.js +0 -0
- package/dist/esm/sdk/base/SDKConstruct.js +29 -3
- package/dist/esm/sdk/base/TokensMeta.js +4 -4
- package/dist/esm/sdk/base/index.js +1 -2
- package/dist/esm/sdk/core/BotListV3Contract.js +2 -2
- package/dist/esm/sdk/core/GearStakingV3Contract.js +2 -2
- package/dist/esm/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
- package/dist/esm/sdk/core/address-provider/AddressProviderV300Contract.js +6 -11
- package/dist/esm/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
- package/dist/esm/sdk/market/MarketConfiguratorContract.js +5 -5
- package/dist/esm/sdk/market/MarketRegister.js +10 -8
- package/dist/esm/sdk/market/MarketSuite.js +2 -2
- package/dist/esm/sdk/market/credit/CreditConfiguratorV300Contract.js +3 -4
- package/dist/esm/sdk/market/credit/CreditConfiguratorV310Contract.js +3 -4
- package/dist/esm/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
- package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
- package/dist/esm/sdk/market/credit/CreditManagerV300Contract.js +2 -5
- package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +2 -5
- package/dist/esm/sdk/market/credit/CreditSuite.js +6 -2
- package/dist/esm/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +1 -3
- package/dist/esm/sdk/market/loss-policy/LossPolicyContract.js +3 -5
- package/dist/esm/sdk/market/loss-policy/createLossPolicy.js +1 -1
- package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +26 -8
- package/dist/esm/sdk/market/oracle/createPriceOracle.js +1 -1
- package/dist/esm/sdk/market/pool/GaugeContract.js +2 -2
- package/dist/esm/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
- package/dist/esm/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
- package/dist/esm/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
- package/dist/esm/sdk/market/pool/PoolSuite.js +1 -1
- package/dist/esm/sdk/market/pool/PoolV300Contract.js +5 -5
- package/dist/esm/sdk/market/pool/PoolV310Contract.js +5 -5
- package/dist/esm/sdk/market/pool/TumblerContract.js +2 -2
- package/dist/esm/sdk/market/pool/createInterestRateModel.js +15 -11
- package/dist/esm/sdk/market/pricefeeds/AbstractLPPriceFeed.js +22 -2
- package/dist/esm/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
- package/dist/esm/sdk/market/pricefeeds/BalancerStablePriceFeed.js +13 -3
- package/dist/esm/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +13 -3
- package/dist/esm/sdk/market/pricefeeds/BoundedPriceFeed.js +2 -6
- package/dist/esm/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +10 -3
- package/dist/esm/sdk/market/pricefeeds/CurveStablePriceFeed.js +10 -3
- package/dist/esm/sdk/market/pricefeeds/CurveUSDPriceFeed.js +10 -3
- package/dist/esm/sdk/market/pricefeeds/Erc4626PriceFeed.js +18 -2
- package/dist/esm/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/MellowLRTPriceFeed.js +11 -3
- package/dist/esm/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/PriceFeedRef.js +5 -7
- package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +9 -3
- package/dist/esm/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
- package/dist/esm/sdk/market/pricefeeds/WstETHPriceFeed.js +10 -3
- package/dist/esm/sdk/market/pricefeeds/YearnPriceFeed.js +10 -3
- package/dist/esm/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/updates/PythUpdater.js +9 -7
- package/dist/esm/sdk/market/pricefeeds/updates/RedstoneUpdater.js +12 -10
- package/dist/esm/sdk/router/AbstractRouterContract.js +115 -13
- package/dist/esm/sdk/router/RouterV300Contract.js +9 -10
- package/dist/esm/sdk/router/RouterV310Contract.js +10 -10
- package/dist/esm/sdk/router/createRouter.js +0 -4
- package/dist/esm/sdk/utils/index.js +0 -1
- package/dist/types/dev/create2.d.ts +2 -2
- package/dist/types/dev/mint/AbstractMinter.d.ts +4 -3
- package/dist/types/dev/mint/DealMinter.d.ts +3 -0
- package/dist/types/dev/mint/DirectMinter.d.ts +3 -0
- package/dist/types/dev/mint/TransferMinter.d.ts +3 -0
- package/dist/types/permissionless/bindings/address-provider.d.ts +255 -4
- package/dist/types/permissionless/bindings/base-contract.d.ts +23 -0
- package/dist/types/permissionless/bindings/bytecode-repository.d.ts +6 -5
- package/dist/types/permissionless/bindings/compressors/token-compressor.d.ts +3 -3
- package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +5 -4
- package/dist/types/permissionless/bindings/cross-chain-multisig.d.ts +7 -7
- package/dist/types/permissionless/bindings/factory/abstract-factory.d.ts +1 -1
- package/dist/types/permissionless/bindings/governance/batches-chain.d.ts +4 -3
- package/dist/types/permissionless/bindings/governance/governor.d.ts +7 -6
- package/dist/types/permissionless/bindings/governance/timelock.d.ts +3 -3
- package/dist/types/permissionless/bindings/governance/types.d.ts +1 -1
- package/dist/types/permissionless/bindings/index.d.ts +1 -0
- package/dist/types/permissionless/bindings/instance-manager.d.ts +7 -6
- package/dist/types/permissionless/bindings/market-configurator-factory.d.ts +4 -4
- package/dist/types/permissionless/bindings/market-configurator.d.ts +6 -6
- package/dist/types/permissionless/bindings/price-feed-store.d.ts +7 -6
- package/dist/types/permissionless/bindings/router/routing-manager.d.ts +5 -4
- package/dist/types/permissionless/bindings/treasury-splitter.d.ts +6 -5
- package/dist/types/permissionless/core/proposal.d.ts +7 -1
- package/dist/types/permissionless/utils/abi-decoder.d.ts +13 -0
- package/dist/types/permissionless/utils/create2.d.ts +1 -1
- package/dist/types/permissionless/utils/governance/batch.d.ts +1 -1
- package/dist/types/permissionless/utils/index.d.ts +1 -0
- package/dist/types/permissionless/utils/price-update/get-price-feeds.d.ts +3 -3
- package/dist/types/permissionless/utils/price-update/get-price-update-tx.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/BalancerV2VaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/EqualizerRouterAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/InfraredVaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowVaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +3 -3
- package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +2 -2
- package/dist/types/plugins/adapters/contracts/YearnV2AdapterContract.d.ts +2 -2
- package/dist/types/plugins/bots/PartialLiquidationBotV300Contract.d.ts +8 -2
- package/dist/types/plugins/delayed-withdrawal/types.d.ts +1 -0
- package/dist/types/sdk/GearboxSDK.d.ts +76 -5
- package/dist/types/sdk/accountMigration/types.d.ts +2 -1
- package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +2 -2
- package/dist/types/sdk/accounts/types.d.ts +23 -7
- package/dist/types/sdk/base/AddressLabeller.d.ts +11 -0
- package/dist/types/sdk/base/BaseContract.d.ts +28 -72
- package/dist/types/sdk/base/IAddressLabeller.d.ts +9 -0
- package/dist/types/sdk/base/PlaceholderContract.d.ts +2 -2
- package/dist/types/sdk/base/SDKConstruct.d.ts +16 -2
- package/dist/types/sdk/base/TokensMeta.d.ts +3 -2
- package/dist/types/sdk/base/index.d.ts +1 -2
- package/dist/types/sdk/base/types.d.ts +0 -50
- package/dist/types/sdk/core/BotListV3Contract.d.ts +1 -1
- package/dist/types/sdk/core/GearStakingV3Contract.d.ts +1 -1
- package/dist/types/sdk/core/address-provider/AbstractAddressProviderContract.d.ts +4 -3
- package/dist/types/sdk/core/address-provider/AddressProviderV300Contract.d.ts +3 -3
- package/dist/types/sdk/core/address-provider/AddressProviderV310Contract.d.ts +3 -3
- package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +2 -2
- package/dist/types/sdk/market/credit/CreditConfiguratorV300Contract.d.ts +3 -3
- package/dist/types/sdk/market/credit/CreditConfiguratorV310Contract.d.ts +3 -3
- package/dist/types/sdk/market/credit/CreditFacadeV300Contract.d.ts +4 -3
- package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +4 -3
- package/dist/types/sdk/market/credit/CreditManagerV300Contract.d.ts +1 -1
- package/dist/types/sdk/market/credit/CreditManagerV310Contract.d.ts +1 -1
- package/dist/types/sdk/market/credit/CreditSuite.d.ts +2 -1
- package/dist/types/sdk/market/credit/types.d.ts +2 -1
- package/dist/types/sdk/market/loss-policy/AliasLossPolicyV310Contract.d.ts +0 -1
- package/dist/types/sdk/market/loss-policy/LossPolicyContract.d.ts +3 -2
- package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +12 -3
- package/dist/types/sdk/market/oracle/types.d.ts +10 -0
- package/dist/types/sdk/market/pool/GaugeContract.d.ts +3 -2
- package/dist/types/sdk/market/pool/LinearInterestRateModelContract.d.ts +3 -2
- package/dist/types/sdk/market/pool/PoolQuotaKeeperV300Contract.d.ts +3 -2
- package/dist/types/sdk/market/pool/PoolQuotaKeeperV310Contract.d.ts +3 -2
- package/dist/types/sdk/market/pool/PoolV300Contract.d.ts +5 -4
- package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +5 -4
- package/dist/types/sdk/market/pool/TumblerContract.d.ts +3 -2
- package/dist/types/sdk/market/pricefeeds/AbstractLPPriceFeed.d.ts +8 -3
- package/dist/types/sdk/market/pricefeeds/AbstractPriceFeed.d.ts +3 -2
- package/dist/types/sdk/market/pricefeeds/BalancerStablePriceFeed.d.ts +3 -2
- package/dist/types/sdk/market/pricefeeds/BalancerWeightedPriceFeed.d.ts +3 -2
- package/dist/types/sdk/market/pricefeeds/BoundedPriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/CompositePriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/ConstantPriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/CurveCryptoPriceFeed.d.ts +3 -2
- package/dist/types/sdk/market/pricefeeds/CurveStablePriceFeed.d.ts +3 -2
- package/dist/types/sdk/market/pricefeeds/CurveUSDPriceFeed.d.ts +3 -2
- package/dist/types/sdk/market/pricefeeds/Erc4626PriceFeed.d.ts +3 -2
- package/dist/types/sdk/market/pricefeeds/ExternalPriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/MellowLRTPriceFeed.d.ts +3 -2
- package/dist/types/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/PriceFeedRef.d.ts +4 -3
- package/dist/types/sdk/market/pricefeeds/PriceFeedsRegister.d.ts +2 -1
- package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/RedstonePriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/WstETHPriceFeed.d.ts +3 -2
- package/dist/types/sdk/market/pricefeeds/YearnPriceFeed.d.ts +3 -2
- package/dist/types/sdk/market/pricefeeds/ZeroPriceFeed.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/types.d.ts +5 -0
- package/dist/types/sdk/router/AbstractRouterContract.d.ts +15 -8
- package/dist/types/sdk/router/RouterV300Contract.d.ts +3 -4
- package/dist/types/sdk/router/RouterV310Contract.d.ts +2 -3
- package/dist/types/sdk/router/types.d.ts +14 -5
- package/dist/types/sdk/sdk-legacy/core/creditAccount.d.ts +2 -2
- package/dist/types/sdk/utils/index.d.ts +0 -1
- package/package.json +1 -1
- package/dist/cjs/plugins/bots/deserializePartialLiquidationBotParams.js +0 -49
- package/dist/cjs/sdk/base/ChainContractsRegister.js +0 -135
- package/dist/cjs/sdk/base/Construct.js +0 -87
- package/dist/cjs/sdk/utils/abi-decode.js +0 -58
- package/dist/esm/plugins/bots/deserializePartialLiquidationBotParams.js +0 -29
- package/dist/esm/sdk/base/ChainContractsRegister.js +0 -111
- package/dist/esm/sdk/base/Construct.js +0 -63
- package/dist/esm/sdk/utils/abi-decode.js +0 -37
- package/dist/types/plugins/bots/deserializePartialLiquidationBotParams.d.ts +0 -3
- package/dist/types/sdk/base/ChainContractsRegister.d.ts +0 -57
- package/dist/types/sdk/base/Construct.d.ts +0 -38
- package/dist/types/sdk/utils/abi-decode.d.ts +0 -10
|
@@ -3,9 +3,9 @@ import { iAddressProviderV310Abi } from "../../../abi/310/generated.js";
|
|
|
3
3
|
import AbstractAddressProviderContract from "./AbstractAddressProviderContract.js";
|
|
4
4
|
const abi = iAddressProviderV310Abi;
|
|
5
5
|
class AddressProviderV310Contract extends AbstractAddressProviderContract {
|
|
6
|
-
constructor(
|
|
6
|
+
constructor(sdk, address, version, addresses = {}) {
|
|
7
7
|
super(
|
|
8
|
-
|
|
8
|
+
sdk,
|
|
9
9
|
{
|
|
10
10
|
addr: address,
|
|
11
11
|
name: "AddressProviderV310",
|
|
@@ -15,7 +15,7 @@ class AddressProviderV310Contract extends AbstractAddressProviderContract {
|
|
|
15
15
|
addresses
|
|
16
16
|
);
|
|
17
17
|
}
|
|
18
|
-
|
|
18
|
+
parseFunctionParams(params) {
|
|
19
19
|
switch (params.functionName) {
|
|
20
20
|
case "setAddress": {
|
|
21
21
|
if (params.args.length !== 3) {
|
|
@@ -26,7 +26,7 @@ class AddressProviderV310Contract extends AbstractAddressProviderContract {
|
|
|
26
26
|
return [bytesToString(toBytes(key)), value, `${saveVersion}`];
|
|
27
27
|
}
|
|
28
28
|
default:
|
|
29
|
-
return
|
|
29
|
+
return void 0;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
processLog(log) {
|
|
@@ -7,8 +7,8 @@ import { AP_MARKET_CONFIGURATOR } from "../constants/index.js";
|
|
|
7
7
|
const abi = iMarketConfiguratorV310Abi;
|
|
8
8
|
class MarketConfiguratorContract extends BaseContract {
|
|
9
9
|
#curatorName;
|
|
10
|
-
constructor(
|
|
11
|
-
super(
|
|
10
|
+
constructor(sdk, address) {
|
|
11
|
+
super(sdk, {
|
|
12
12
|
abi,
|
|
13
13
|
addr: address,
|
|
14
14
|
contractType: AP_MARKET_CONFIGURATOR,
|
|
@@ -16,18 +16,18 @@ class MarketConfiguratorContract extends BaseContract {
|
|
|
16
16
|
});
|
|
17
17
|
}
|
|
18
18
|
async loadCuratorName() {
|
|
19
|
-
this.#curatorName = await this.client.readContract({
|
|
19
|
+
this.#curatorName = await this.sdk.client.readContract({
|
|
20
20
|
address: this.address,
|
|
21
21
|
abi: this.abi,
|
|
22
22
|
functionName: "curatorName"
|
|
23
23
|
});
|
|
24
|
-
this.
|
|
24
|
+
this.sdk.addressLabels.set(
|
|
25
25
|
this.address,
|
|
26
26
|
`Market configurator ${this.#curatorName}`
|
|
27
27
|
);
|
|
28
28
|
}
|
|
29
29
|
async getPeripheryContract(contract) {
|
|
30
|
-
const resp = await this.client.readContract({
|
|
30
|
+
const resp = await this.sdk.client.readContract({
|
|
31
31
|
address: this.address,
|
|
32
32
|
abi: this.abi,
|
|
33
33
|
functionName: "getPeripheryContracts",
|
|
@@ -5,11 +5,12 @@ import {
|
|
|
5
5
|
AP_MARKET_COMPRESSOR,
|
|
6
6
|
VERSION_RANGE_310
|
|
7
7
|
} from "../constants/index.js";
|
|
8
|
-
import { AddressMap } from "../utils/index.js";
|
|
8
|
+
import { AddressMap, childLogger } from "../utils/index.js";
|
|
9
9
|
import { simulateWithPriceUpdates } from "../utils/viem/index.js";
|
|
10
10
|
import { MarketConfiguratorContract } from "./MarketConfiguratorContract.js";
|
|
11
11
|
import { MarketSuite } from "./MarketSuite.js";
|
|
12
12
|
class MarketRegister extends SDKConstruct {
|
|
13
|
+
#logger;
|
|
13
14
|
/**
|
|
14
15
|
* Mapping pool.address -> MarketSuite
|
|
15
16
|
*/
|
|
@@ -22,6 +23,7 @@ class MarketRegister extends SDKConstruct {
|
|
|
22
23
|
#ignoreMarkets;
|
|
23
24
|
constructor(sdk, ignoreMarkets = []) {
|
|
24
25
|
super(sdk);
|
|
26
|
+
this.#logger = childLogger("MarketRegister", sdk.logger);
|
|
25
27
|
this.#ignoreMarkets = new Set(
|
|
26
28
|
ignoreMarkets.map((m) => m.toLowerCase())
|
|
27
29
|
);
|
|
@@ -33,7 +35,7 @@ class MarketRegister extends SDKConstruct {
|
|
|
33
35
|
for (const data of state) {
|
|
34
36
|
const pool = data.pool.baseParams.addr;
|
|
35
37
|
if (this.#ignoreMarkets.has(pool.toLowerCase())) {
|
|
36
|
-
this
|
|
38
|
+
this.#logger?.debug(
|
|
37
39
|
`ignoring market of pool ${pool} (${data.pool.name})`
|
|
38
40
|
);
|
|
39
41
|
continue;
|
|
@@ -46,7 +48,7 @@ class MarketRegister extends SDKConstruct {
|
|
|
46
48
|
}
|
|
47
49
|
async loadMarkets(marketConfigurators, ignoreUpdateablePrices) {
|
|
48
50
|
if (!marketConfigurators.length) {
|
|
49
|
-
this
|
|
51
|
+
this.#logger?.warn(
|
|
50
52
|
"no market configurators provided, skipping loadMarkets"
|
|
51
53
|
);
|
|
52
54
|
return;
|
|
@@ -77,7 +79,7 @@ class MarketRegister extends SDKConstruct {
|
|
|
77
79
|
async syncState(ignoreUpdateablePrices) {
|
|
78
80
|
const dirty = this.markets.some((m) => m.dirty) || this.marketConfigurators.some((c) => c.dirty);
|
|
79
81
|
if (dirty) {
|
|
80
|
-
this
|
|
82
|
+
this.#logger?.debug(
|
|
81
83
|
"some markets or market configurators are dirty, reloading everything"
|
|
82
84
|
);
|
|
83
85
|
await this.#loadMarkets(
|
|
@@ -104,7 +106,7 @@ class MarketRegister extends SDKConstruct {
|
|
|
104
106
|
const updates = await this.sdk.priceFeeds.generatePriceFeedsUpdateTxs(updatables);
|
|
105
107
|
txs = updates.txs;
|
|
106
108
|
}
|
|
107
|
-
this
|
|
109
|
+
this.#logger?.debug(
|
|
108
110
|
{ configurators, pools },
|
|
109
111
|
`calling getMarkets with ${txs.length} price updates in block ${this.sdk.currentBlock}`
|
|
110
112
|
);
|
|
@@ -138,14 +140,14 @@ class MarketRegister extends SDKConstruct {
|
|
|
138
140
|
for (const data of markets) {
|
|
139
141
|
const pool = data.pool.baseParams.addr;
|
|
140
142
|
if (this.#ignoreMarkets.has(pool.toLowerCase())) {
|
|
141
|
-
this
|
|
143
|
+
this.#logger?.debug(
|
|
142
144
|
`ignoring market of pool ${pool} (${data.pool.name})`
|
|
143
145
|
);
|
|
144
146
|
continue;
|
|
145
147
|
}
|
|
146
148
|
this.#markets.upsert(pool, new MarketSuite(this.sdk, data));
|
|
147
149
|
}
|
|
148
|
-
this
|
|
150
|
+
this.#logger?.info(
|
|
149
151
|
`loaded ${this.#markets.size} markets in block ${this.sdk.currentBlock}`
|
|
150
152
|
);
|
|
151
153
|
}
|
|
@@ -164,7 +166,7 @@ class MarketRegister extends SDKConstruct {
|
|
|
164
166
|
if (!multicalls.length) {
|
|
165
167
|
return;
|
|
166
168
|
}
|
|
167
|
-
this
|
|
169
|
+
this.#logger?.debug(`syncing prices on ${multicalls.length} oracles`);
|
|
168
170
|
const { txs } = await this.sdk.priceFeeds.generatePriceFeedsUpdateTxs();
|
|
169
171
|
const oraclesStates = await simulateWithPriceUpdates(this.client, {
|
|
170
172
|
priceUpdates: txs,
|
|
@@ -21,7 +21,7 @@ class MarketSuite extends SDKConstruct {
|
|
|
21
21
|
constructor(sdk, marketData) {
|
|
22
22
|
super(sdk);
|
|
23
23
|
this.state = marketData;
|
|
24
|
-
const mc = sdk.
|
|
24
|
+
const mc = sdk.contracts.mustGet(marketData.configurator);
|
|
25
25
|
if (!(mc instanceof MarketConfiguratorContract)) {
|
|
26
26
|
throw new Error(
|
|
27
27
|
`Market configurator ${marketData.configurator} is not a market configurator`
|
|
@@ -32,7 +32,7 @@ class MarketSuite extends SDKConstruct {
|
|
|
32
32
|
this.treasury = marketData.treasury;
|
|
33
33
|
for (const t of marketData.tokens) {
|
|
34
34
|
sdk.tokensMeta.upsert(t.addr, t);
|
|
35
|
-
sdk.
|
|
35
|
+
sdk.addressLabels.set(t.addr, t.symbol);
|
|
36
36
|
}
|
|
37
37
|
this.pool = new PoolSuite(sdk, marketData);
|
|
38
38
|
for (let i = 0; i < marketData.creditManagers.length; i++) {
|
|
@@ -5,7 +5,7 @@ import { RAMP_DURATION_BY_NETWORK } from "../../constants/index.js";
|
|
|
5
5
|
import { formatDuration, percentFmt } from "../../utils/index.js";
|
|
6
6
|
const abi = [...iCreditConfiguratorV300Abi, ...iPausableAbi];
|
|
7
7
|
class CreditConfiguratorV300Contract extends BaseContract {
|
|
8
|
-
|
|
8
|
+
adapters = [];
|
|
9
9
|
isPaused = false;
|
|
10
10
|
constructor(sdk, { creditConfigurator, creditManager }) {
|
|
11
11
|
super(sdk, {
|
|
@@ -13,7 +13,6 @@ class CreditConfiguratorV300Contract extends BaseContract {
|
|
|
13
13
|
name: `CreditConfigurator(${creditManager.name})`,
|
|
14
14
|
abi
|
|
15
15
|
});
|
|
16
|
-
this.sdk = sdk;
|
|
17
16
|
}
|
|
18
17
|
processLog(log) {
|
|
19
18
|
switch (log.eventName) {
|
|
@@ -60,7 +59,7 @@ class CreditConfiguratorV300Contract extends BaseContract {
|
|
|
60
59
|
});
|
|
61
60
|
return logs.map(({ args }) => args);
|
|
62
61
|
}
|
|
63
|
-
|
|
62
|
+
parseFunctionParams(params) {
|
|
64
63
|
switch (params.functionName) {
|
|
65
64
|
case "addCollateralToken":
|
|
66
65
|
case "setLiquidationThreshold": {
|
|
@@ -106,7 +105,7 @@ class CreditConfiguratorV300Contract extends BaseContract {
|
|
|
106
105
|
];
|
|
107
106
|
}
|
|
108
107
|
default:
|
|
109
|
-
return
|
|
108
|
+
return void 0;
|
|
110
109
|
}
|
|
111
110
|
}
|
|
112
111
|
}
|
|
@@ -4,7 +4,7 @@ import { RAMP_DURATION_BY_NETWORK } from "../../constants/index.js";
|
|
|
4
4
|
import { formatDuration, percentFmt } from "../../utils/index.js";
|
|
5
5
|
const abi = iCreditConfiguratorV310Abi;
|
|
6
6
|
class CreditConfiguratorV310Contract extends BaseContract {
|
|
7
|
-
|
|
7
|
+
adapters = [];
|
|
8
8
|
isPaused = false;
|
|
9
9
|
constructor(sdk, { creditConfigurator, creditManager }) {
|
|
10
10
|
super(sdk, {
|
|
@@ -12,7 +12,6 @@ class CreditConfiguratorV310Contract extends BaseContract {
|
|
|
12
12
|
name: `CreditConfigurator(${creditManager.name})`,
|
|
13
13
|
abi
|
|
14
14
|
});
|
|
15
|
-
this.sdk = sdk;
|
|
16
15
|
}
|
|
17
16
|
processLog(log) {
|
|
18
17
|
switch (log.eventName) {
|
|
@@ -47,7 +46,7 @@ class CreditConfiguratorV310Contract extends BaseContract {
|
|
|
47
46
|
});
|
|
48
47
|
return logs.map(({ args }) => args);
|
|
49
48
|
}
|
|
50
|
-
|
|
49
|
+
parseFunctionParams(params) {
|
|
51
50
|
switch (params.functionName) {
|
|
52
51
|
case "addCollateralToken":
|
|
53
52
|
case "setLiquidationThreshold": {
|
|
@@ -91,7 +90,7 @@ class CreditConfiguratorV310Contract extends BaseContract {
|
|
|
91
90
|
];
|
|
92
91
|
}
|
|
93
92
|
default:
|
|
94
|
-
return
|
|
93
|
+
return void 0;
|
|
95
94
|
}
|
|
96
95
|
}
|
|
97
96
|
}
|
|
@@ -13,9 +13,9 @@ const abi = [
|
|
|
13
13
|
];
|
|
14
14
|
class CreditFacadeV300Contract extends BaseContract {
|
|
15
15
|
underlying;
|
|
16
|
-
constructor(
|
|
16
|
+
constructor(sdk, { creditFacade, creditManager }) {
|
|
17
17
|
const { baseParams, ...rest } = creditFacade;
|
|
18
|
-
super(
|
|
18
|
+
super(sdk, {
|
|
19
19
|
...baseParams,
|
|
20
20
|
name: `CreditFacadeV3(${creditManager.name})`,
|
|
21
21
|
abi
|
|
@@ -24,7 +24,7 @@ class CreditFacadeV300Contract extends BaseContract {
|
|
|
24
24
|
this.underlying = creditManager.underlying;
|
|
25
25
|
}
|
|
26
26
|
stateHuman(raw) {
|
|
27
|
-
const decimals = this.tokensMeta.decimals(this.underlying);
|
|
27
|
+
const decimals = this.sdk.tokensMeta.decimals(this.underlying);
|
|
28
28
|
return {
|
|
29
29
|
...super.stateHuman(raw),
|
|
30
30
|
expirable: this.expirable,
|
|
@@ -88,13 +88,13 @@ class CreditFacadeV300Contract extends BaseContract {
|
|
|
88
88
|
args: [to, calls, referralCode]
|
|
89
89
|
});
|
|
90
90
|
}
|
|
91
|
-
|
|
91
|
+
parseFunctionParams(params) {
|
|
92
92
|
switch (params.functionName) {
|
|
93
93
|
case "openCreditAccount": {
|
|
94
94
|
const [onBehalfOf, calls, referralCode] = params.args;
|
|
95
95
|
return [
|
|
96
96
|
this.labelAddress(onBehalfOf),
|
|
97
|
-
this.
|
|
97
|
+
this.sdk.parseMultiCall([...calls]).join(","),
|
|
98
98
|
`${referralCode}`
|
|
99
99
|
];
|
|
100
100
|
}
|
|
@@ -102,7 +102,7 @@ class CreditFacadeV300Contract extends BaseContract {
|
|
|
102
102
|
const [creditAccount, calls] = params.args;
|
|
103
103
|
return [
|
|
104
104
|
this.labelAddress(creditAccount),
|
|
105
|
-
this.
|
|
105
|
+
this.sdk.parseMultiCall([...calls]).join(",")
|
|
106
106
|
];
|
|
107
107
|
}
|
|
108
108
|
case "liquidateCreditAccount": {
|
|
@@ -110,7 +110,7 @@ class CreditFacadeV300Contract extends BaseContract {
|
|
|
110
110
|
return [
|
|
111
111
|
this.labelAddress(creditAccount),
|
|
112
112
|
this.labelAddress(to),
|
|
113
|
-
this.
|
|
113
|
+
this.sdk.parseMultiCall([...calls]).join(",")
|
|
114
114
|
];
|
|
115
115
|
}
|
|
116
116
|
case "setBotPermissions": {
|
|
@@ -125,12 +125,12 @@ class CreditFacadeV300Contract extends BaseContract {
|
|
|
125
125
|
const [deltas] = params.args;
|
|
126
126
|
return [
|
|
127
127
|
deltas.map(({ token, amount }) => {
|
|
128
|
-
return this.labelAddress(token) + ": " + this.tokensMeta.formatBN(token, amount);
|
|
128
|
+
return this.labelAddress(token) + ": " + this.sdk.tokensMeta.formatBN(token, amount);
|
|
129
129
|
}).join(",")
|
|
130
130
|
];
|
|
131
131
|
}
|
|
132
132
|
default:
|
|
133
|
-
return
|
|
133
|
+
return void 0;
|
|
134
134
|
}
|
|
135
135
|
}
|
|
136
136
|
}
|
|
@@ -13,9 +13,9 @@ const abi = [
|
|
|
13
13
|
];
|
|
14
14
|
class CreditFacadeV310Contract extends BaseContract {
|
|
15
15
|
underlying;
|
|
16
|
-
constructor(
|
|
16
|
+
constructor(sdk, { creditFacade, creditManager }) {
|
|
17
17
|
const { baseParams, ...rest } = creditFacade;
|
|
18
|
-
super(
|
|
18
|
+
super(sdk, {
|
|
19
19
|
...baseParams,
|
|
20
20
|
name: `CreditFacadeV310(${creditManager.name})`,
|
|
21
21
|
abi
|
|
@@ -24,7 +24,7 @@ class CreditFacadeV310Contract extends BaseContract {
|
|
|
24
24
|
this.underlying = creditManager.underlying;
|
|
25
25
|
}
|
|
26
26
|
stateHuman(raw) {
|
|
27
|
-
const decimals = this.tokensMeta.decimals(this.underlying);
|
|
27
|
+
const decimals = this.sdk.tokensMeta.decimals(this.underlying);
|
|
28
28
|
return {
|
|
29
29
|
...super.stateHuman(raw),
|
|
30
30
|
expirable: this.expirable,
|
|
@@ -85,13 +85,13 @@ class CreditFacadeV310Contract extends BaseContract {
|
|
|
85
85
|
args: [to, calls, referralCode]
|
|
86
86
|
});
|
|
87
87
|
}
|
|
88
|
-
|
|
88
|
+
parseFunctionParams(params) {
|
|
89
89
|
switch (params.functionName) {
|
|
90
90
|
case "openCreditAccount": {
|
|
91
91
|
const [onBehalfOf, calls, referralCode] = params.args;
|
|
92
92
|
return [
|
|
93
93
|
this.labelAddress(onBehalfOf),
|
|
94
|
-
this.
|
|
94
|
+
this.sdk.parseMultiCall([...calls]).join(","),
|
|
95
95
|
`${referralCode}`
|
|
96
96
|
];
|
|
97
97
|
}
|
|
@@ -99,7 +99,7 @@ class CreditFacadeV310Contract extends BaseContract {
|
|
|
99
99
|
const [creditAccount, calls] = params.args;
|
|
100
100
|
return [
|
|
101
101
|
this.labelAddress(creditAccount),
|
|
102
|
-
this.
|
|
102
|
+
this.sdk.parseMultiCall([...calls]).join(",")
|
|
103
103
|
];
|
|
104
104
|
}
|
|
105
105
|
case "liquidateCreditAccount": {
|
|
@@ -107,11 +107,11 @@ class CreditFacadeV310Contract extends BaseContract {
|
|
|
107
107
|
return [
|
|
108
108
|
this.labelAddress(creditAccount),
|
|
109
109
|
this.labelAddress(to),
|
|
110
|
-
this.
|
|
110
|
+
this.sdk.parseMultiCall([...calls]).join(",")
|
|
111
111
|
];
|
|
112
112
|
}
|
|
113
113
|
default:
|
|
114
|
-
return
|
|
114
|
+
return void 0;
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
117
|
}
|
|
@@ -27,12 +27,9 @@ class CreditManagerV300Contract extends BaseContract {
|
|
|
27
27
|
this.adapters = new AddressMap(void 0, "adapters");
|
|
28
28
|
for (const adapterData of adapters) {
|
|
29
29
|
try {
|
|
30
|
-
const adapter = createAdapter(sdk, adapterData);
|
|
30
|
+
const adapter = createAdapter(this.sdk, adapterData);
|
|
31
|
+
adapter.name = `${adapter.name}(${this.name})`;
|
|
31
32
|
this.adapters.upsert(adapter.targetContract, adapter);
|
|
32
|
-
this.register.setAddressLabel(
|
|
33
|
-
adapter.address,
|
|
34
|
-
`${adapter.name}(${this.name})`
|
|
35
|
-
);
|
|
36
33
|
} catch (e) {
|
|
37
34
|
throw new Error(`cannot attach adapter: ${e}`, { cause: e });
|
|
38
35
|
}
|
|
@@ -27,12 +27,9 @@ class CreditManagerV310Contract extends BaseContract {
|
|
|
27
27
|
this.adapters = new AddressMap(void 0, "adapters");
|
|
28
28
|
for (const adapterData of adapters) {
|
|
29
29
|
try {
|
|
30
|
-
const adapter = createAdapter(sdk, adapterData);
|
|
30
|
+
const adapter = createAdapter(this.sdk, adapterData);
|
|
31
|
+
adapter.name = `${adapter.name}(${this.name})`;
|
|
31
32
|
this.adapters.upsert(adapter.targetContract, adapter);
|
|
32
|
-
this.register.setAddressLabel(
|
|
33
|
-
adapter.address,
|
|
34
|
-
`${adapter.name}(${this.name})`
|
|
35
|
-
);
|
|
36
33
|
} catch (e) {
|
|
37
34
|
throw new Error(`cannot attach adapter: ${e}`, { cause: e });
|
|
38
35
|
}
|
|
@@ -3,6 +3,7 @@ import createCreditConfigurator from "./createCreditConfigurator.js";
|
|
|
3
3
|
import createCreditFacade from "./createCreditFacade.js";
|
|
4
4
|
import createCreditManager from "./createCreditManager.js";
|
|
5
5
|
class CreditSuite extends SDKConstruct {
|
|
6
|
+
name;
|
|
6
7
|
pool;
|
|
7
8
|
underlying;
|
|
8
9
|
creditManager;
|
|
@@ -10,12 +11,12 @@ class CreditSuite extends SDKConstruct {
|
|
|
10
11
|
creditConfigurator;
|
|
11
12
|
marketConfigurator;
|
|
12
13
|
state;
|
|
13
|
-
name;
|
|
14
14
|
constructor(sdk, marketData, index) {
|
|
15
15
|
super(sdk);
|
|
16
16
|
const { creditManagers, pool } = marketData;
|
|
17
|
-
this.name = creditManagers[index].creditManager.name;
|
|
18
17
|
this.state = creditManagers[index];
|
|
18
|
+
const { name } = this.state.creditManager;
|
|
19
|
+
this.name = name;
|
|
19
20
|
this.pool = pool.baseParams.addr;
|
|
20
21
|
this.underlying = pool.underlying;
|
|
21
22
|
this.creditManager = createCreditManager(sdk, this.state);
|
|
@@ -26,6 +27,9 @@ class CreditSuite extends SDKConstruct {
|
|
|
26
27
|
get router() {
|
|
27
28
|
return this.sdk.routerFor(this);
|
|
28
29
|
}
|
|
30
|
+
get isExpired() {
|
|
31
|
+
return this.creditFacade.expirable && this.creditFacade.expirationDate > 0 && this.creditFacade.expirationDate < this.sdk.timestamp;
|
|
32
|
+
}
|
|
29
33
|
get dirty() {
|
|
30
34
|
return this.creditFacade.dirty || this.creditManager.dirty || this.creditConfigurator.dirty;
|
|
31
35
|
}
|
|
@@ -12,7 +12,6 @@ class AliasLossPolicyV310Contract extends BaseContract {
|
|
|
12
12
|
checksEnabled;
|
|
13
13
|
tokens;
|
|
14
14
|
priceFeedParams;
|
|
15
|
-
sdk;
|
|
16
15
|
constructor(sdk, params) {
|
|
17
16
|
super(sdk, {
|
|
18
17
|
abi,
|
|
@@ -20,7 +19,6 @@ class AliasLossPolicyV310Contract extends BaseContract {
|
|
|
20
19
|
contractType: params.contractType,
|
|
21
20
|
version: params.version
|
|
22
21
|
});
|
|
23
|
-
this.sdk = sdk;
|
|
24
22
|
[this.accessMode, this.checksEnabled, this.tokens, this.priceFeedParams] = decodeAbiParameters(
|
|
25
23
|
[
|
|
26
24
|
{ name: "accessMode", type: "uint8" },
|
|
@@ -41,7 +39,7 @@ class AliasLossPolicyV310Contract extends BaseContract {
|
|
|
41
39
|
);
|
|
42
40
|
}
|
|
43
41
|
async getLiquidationData(creditAccount, blockNumber) {
|
|
44
|
-
const pfs = await this.client.readContract({
|
|
42
|
+
const pfs = await this.sdk.client.readContract({
|
|
45
43
|
address: this.address,
|
|
46
44
|
abi: this.abi,
|
|
47
45
|
functionName: "getRequiredAliasPriceFeeds",
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import { iLossPolicyV310Abi } from "../../../abi/310/generated.js";
|
|
2
|
-
import {
|
|
3
|
-
BaseContract
|
|
4
|
-
} from "../../base/index.js";
|
|
2
|
+
import { BaseContract } from "../../base/index.js";
|
|
5
3
|
const abi = iLossPolicyV310Abi;
|
|
6
4
|
class LossPolicyContract extends BaseContract {
|
|
7
|
-
constructor(
|
|
8
|
-
super(
|
|
5
|
+
constructor(sdk, params) {
|
|
6
|
+
super(sdk, {
|
|
9
7
|
abi,
|
|
10
8
|
addr: params.addr,
|
|
11
9
|
contractType: params.contractType,
|
|
@@ -3,7 +3,7 @@ import { AliasLossPolicyV310Contract } from "./AliasLossPolicyV310Contract.js";
|
|
|
3
3
|
import { LOSS_POLICY_ALIASED, LOSS_POLICY_DEFAULT } from "./constants.js";
|
|
4
4
|
import { LossPolicyContract } from "./LossPolicyContract.js";
|
|
5
5
|
function createLossPolicy(sdk, { baseParams }) {
|
|
6
|
-
const existing = sdk.
|
|
6
|
+
const existing = sdk.contracts.get(baseParams.addr);
|
|
7
7
|
if (existing) {
|
|
8
8
|
return existing;
|
|
9
9
|
}
|
|
@@ -12,7 +12,6 @@ import { PriceFeedRef } from "../pricefeeds/index.js";
|
|
|
12
12
|
import PriceFeedAnswerMap from "./PriceFeedAnswerMap.js";
|
|
13
13
|
const ZERO_PRICE_FEED = stringToHex("PRICE_FEED::ZERO", { size: 32 });
|
|
14
14
|
class PriceOracleBaseContract extends BaseContract {
|
|
15
|
-
sdk;
|
|
16
15
|
/**
|
|
17
16
|
* Mapping Token => [PriceFeed Address, stalenessPeriod]
|
|
18
17
|
*/
|
|
@@ -44,7 +43,6 @@ class PriceOracleBaseContract extends BaseContract {
|
|
|
44
43
|
);
|
|
45
44
|
constructor(sdk, args, data) {
|
|
46
45
|
super(sdk, args);
|
|
47
|
-
this.sdk = sdk;
|
|
48
46
|
const { priceFeedMap, priceFeedTree } = data;
|
|
49
47
|
this.#loadState(priceFeedMap, priceFeedTree, true);
|
|
50
48
|
}
|
|
@@ -62,6 +60,19 @@ class PriceOracleBaseContract extends BaseContract {
|
|
|
62
60
|
reserve ? this.reservePriceFeeds.get(t)?.priceFeed : void 0
|
|
63
61
|
]).filter((f) => !!f);
|
|
64
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Generates updates for all updateable price feeds in this oracle (including dependencies)
|
|
65
|
+
* @returns
|
|
66
|
+
*/
|
|
67
|
+
async updatePriceFeeds() {
|
|
68
|
+
const updatables = [];
|
|
69
|
+
for (const node of this.#priceFeedTree.values()) {
|
|
70
|
+
if (node.updatable) {
|
|
71
|
+
updatables.push(this.sdk.priceFeeds.mustGet(node.baseParams.addr));
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return this.sdk.priceFeeds.generatePriceFeedsUpdateTxs(updatables);
|
|
75
|
+
}
|
|
65
76
|
/**
|
|
66
77
|
* Gets main price for given token
|
|
67
78
|
* Throws if token price feed is not found or answer is not successful
|
|
@@ -101,9 +112,9 @@ class PriceOracleBaseContract extends BaseContract {
|
|
|
101
112
|
return amount;
|
|
102
113
|
}
|
|
103
114
|
const fromPrice = reserve ? this.reservePrice(from) : this.mainPrice(from);
|
|
104
|
-
const fromScale = 10n ** BigInt(this.tokensMeta.decimals(from));
|
|
115
|
+
const fromScale = 10n ** BigInt(this.sdk.tokensMeta.decimals(from));
|
|
105
116
|
const toPrice = reserve ? this.reservePrice(to) : this.mainPrice(to);
|
|
106
|
-
const toScale = 10n ** BigInt(this.tokensMeta.decimals(to));
|
|
117
|
+
const toScale = 10n ** BigInt(this.sdk.tokensMeta.decimals(to));
|
|
107
118
|
return amount * fromPrice * toScale / (toPrice * fromScale);
|
|
108
119
|
}
|
|
109
120
|
/**
|
|
@@ -114,7 +125,7 @@ class PriceOracleBaseContract extends BaseContract {
|
|
|
114
125
|
*/
|
|
115
126
|
convertToUSD(from, amount, reserve = false) {
|
|
116
127
|
const price = reserve ? this.reservePrice(from) : this.mainPrice(from);
|
|
117
|
-
const scale = 10n ** BigInt(this.tokensMeta.decimals(from));
|
|
128
|
+
const scale = 10n ** BigInt(this.sdk.tokensMeta.decimals(from));
|
|
118
129
|
return amount * price / scale;
|
|
119
130
|
}
|
|
120
131
|
/**
|
|
@@ -125,9 +136,16 @@ class PriceOracleBaseContract extends BaseContract {
|
|
|
125
136
|
*/
|
|
126
137
|
convertFromUSD(to, amount, reserve = false) {
|
|
127
138
|
const price = reserve ? this.reservePrice(to) : this.mainPrice(to);
|
|
128
|
-
const scale = 10n ** BigInt(this.tokensMeta.decimals(to));
|
|
139
|
+
const scale = 10n ** BigInt(this.sdk.tokensMeta.decimals(to));
|
|
129
140
|
return amount * scale / price;
|
|
130
141
|
}
|
|
142
|
+
/**
|
|
143
|
+
* Loads new prices for this oracle from PriceFeedCompressor
|
|
144
|
+
* Will (re)create price feeds if needed
|
|
145
|
+
*/
|
|
146
|
+
async updatePrices() {
|
|
147
|
+
await this.sdk.marketRegister.updatePrices([this.address]);
|
|
148
|
+
}
|
|
131
149
|
/**
|
|
132
150
|
* All price feed tree nodes known to this oracle
|
|
133
151
|
*/
|
|
@@ -216,8 +234,8 @@ class PriceOracleBaseContract extends BaseContract {
|
|
|
216
234
|
this.dirty = false;
|
|
217
235
|
}
|
|
218
236
|
#labelPriceFeed(address, usage, token) {
|
|
219
|
-
this.sdk.
|
|
220
|
-
const symbol = this.tokensMeta.symbol(token);
|
|
237
|
+
this.sdk.addressLabels.set(address, (oldLabel) => {
|
|
238
|
+
const symbol = this.sdk.tokensMeta.symbol(token);
|
|
221
239
|
let pricefeedTag = `${symbol}.${usage}`;
|
|
222
240
|
if (oldLabel) {
|
|
223
241
|
const oldLabelParts = new Set(oldLabel.split(", "));
|
|
@@ -4,7 +4,7 @@ import { PriceOracleV300Contract } from "./PriceOracleV300Contract.js";
|
|
|
4
4
|
import { PriceOracleV310Contract } from "./PriceOracleV310Contract.js";
|
|
5
5
|
function getOrCreatePriceOracle(sdk, data) {
|
|
6
6
|
const { version, addr } = data.baseParams;
|
|
7
|
-
const existing = sdk.
|
|
7
|
+
const existing = sdk.contracts.get(addr);
|
|
8
8
|
let result;
|
|
9
9
|
if (existing) {
|
|
10
10
|
result = tryExtendExistingOracle(existing, data);
|
|
@@ -9,8 +9,8 @@ class GaugeContract extends BaseContract {
|
|
|
9
9
|
epochFrozen;
|
|
10
10
|
epochLastUpdate;
|
|
11
11
|
rates;
|
|
12
|
-
constructor(
|
|
13
|
-
super(
|
|
12
|
+
constructor(sdk, pool, gauge) {
|
|
13
|
+
super(sdk, {
|
|
14
14
|
...gauge.baseParams,
|
|
15
15
|
name: `Gauge(${pool.name})`,
|
|
16
16
|
abi: iGaugeV300Abi
|
|
@@ -11,8 +11,8 @@ class LinearInterestRateModelContract extends BaseContract {
|
|
|
11
11
|
Rslope2;
|
|
12
12
|
Rslope3;
|
|
13
13
|
isBorrowingMoreU2Forbidden;
|
|
14
|
-
constructor(
|
|
15
|
-
super(
|
|
14
|
+
constructor(sdk, params) {
|
|
15
|
+
super(sdk, {
|
|
16
16
|
...params.baseParams,
|
|
17
17
|
name: "LinearInterestRateModel",
|
|
18
18
|
abi
|
|
@@ -5,8 +5,8 @@ const abi = iPoolQuotaKeeperV300Abi;
|
|
|
5
5
|
class PoolQuotaKeeperV300Contract extends BaseContract {
|
|
6
6
|
decimals;
|
|
7
7
|
quotas;
|
|
8
|
-
constructor(
|
|
9
|
-
super(
|
|
8
|
+
constructor(sdk, pool, pqk) {
|
|
9
|
+
super(sdk, {
|
|
10
10
|
...pqk.baseParams,
|
|
11
11
|
name: `PoolQuotaKeeper(${pool.name})`,
|
|
12
12
|
abi
|
|
@@ -5,8 +5,8 @@ const abi = iPoolQuotaKeeperV310Abi;
|
|
|
5
5
|
class PoolQuotaKeeperV310Contract extends BaseContract {
|
|
6
6
|
decimals;
|
|
7
7
|
quotas;
|
|
8
|
-
constructor(
|
|
9
|
-
super(
|
|
8
|
+
constructor(sdk, pool, pqk) {
|
|
9
|
+
super(sdk, {
|
|
10
10
|
...pqk.baseParams,
|
|
11
11
|
name: `PoolQuotaKeeper(${pool.name})`,
|
|
12
12
|
abi
|
|
@@ -10,9 +10,9 @@ import {
|
|
|
10
10
|
const abi = [...iPoolV300Abi, ...iPausableAbi];
|
|
11
11
|
class PoolV300Contract extends BaseContract {
|
|
12
12
|
creditManagerDebtParams;
|
|
13
|
-
constructor(
|
|
13
|
+
constructor(sdk, data) {
|
|
14
14
|
const { baseParams, creditManagerDebtParams, ...rest } = data;
|
|
15
|
-
super(
|
|
15
|
+
super(sdk, {
|
|
16
16
|
...data.baseParams,
|
|
17
17
|
name: `PoolV3(${data.name})`,
|
|
18
18
|
abi
|
|
@@ -21,7 +21,7 @@ class PoolV300Contract extends BaseContract {
|
|
|
21
21
|
this.creditManagerDebtParams = new AddressMap(
|
|
22
22
|
creditManagerDebtParams.map((p) => [p.creditManager, p])
|
|
23
23
|
);
|
|
24
|
-
|
|
24
|
+
sdk.tokensMeta.upsert(data.baseParams.addr, {
|
|
25
25
|
addr: data.baseParams.addr,
|
|
26
26
|
decimals: data.decimals,
|
|
27
27
|
name: data.name,
|
|
@@ -100,14 +100,14 @@ class PoolV300Contract extends BaseContract {
|
|
|
100
100
|
break;
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
|
-
|
|
103
|
+
parseFunctionParams(params) {
|
|
104
104
|
switch (params.functionName) {
|
|
105
105
|
case "deposit": {
|
|
106
106
|
const [amount, onBehalfOf] = params.args;
|
|
107
107
|
return [formatBN(amount, this.decimals), this.labelAddress(onBehalfOf)];
|
|
108
108
|
}
|
|
109
109
|
default:
|
|
110
|
-
return
|
|
110
|
+
return void 0;
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
113
|
}
|