@gearbox-protocol/sdk 11.9.0-next.1 → 11.9.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 +3 -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 +2 -0
- 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 +3 -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 +8 -1
- 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 +1 -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
|
@@ -27,8 +27,8 @@ var import_constants = require("../../constants/index.js");
|
|
|
27
27
|
var import_mappers = require("../../utils/mappers.js");
|
|
28
28
|
class AbstractAddressProviderContract extends import_base.BaseContract {
|
|
29
29
|
#addresses = {};
|
|
30
|
-
constructor(
|
|
31
|
-
super(
|
|
30
|
+
constructor(sdk, args, addresses = {}) {
|
|
31
|
+
super(sdk, args);
|
|
32
32
|
this.#addresses = addresses;
|
|
33
33
|
}
|
|
34
34
|
setInternalAddress(key, address, version) {
|
|
@@ -37,9 +37,9 @@ var import_viem2 = require("../../utils/viem/index.js");
|
|
|
37
37
|
var import_AbstractAddressProviderContract = __toESM(require("./AbstractAddressProviderContract.js"));
|
|
38
38
|
const abi = import_v300.iAddressProviderV300Abi;
|
|
39
39
|
class AddressProviderV300Contract extends import_AbstractAddressProviderContract.default {
|
|
40
|
-
constructor(
|
|
40
|
+
constructor(sdk, address, version, addresses = {}) {
|
|
41
41
|
super(
|
|
42
|
-
|
|
42
|
+
sdk,
|
|
43
43
|
{
|
|
44
44
|
addr: address,
|
|
45
45
|
name: "AddressProviderV300",
|
|
@@ -49,7 +49,7 @@ class AddressProviderV300Contract extends import_AbstractAddressProviderContract
|
|
|
49
49
|
addresses
|
|
50
50
|
);
|
|
51
51
|
}
|
|
52
|
-
|
|
52
|
+
parseFunctionParams(params) {
|
|
53
53
|
switch (params.functionName) {
|
|
54
54
|
case "setAddress": {
|
|
55
55
|
if (params.args.length !== 3) {
|
|
@@ -60,7 +60,7 @@ class AddressProviderV300Contract extends import_AbstractAddressProviderContract
|
|
|
60
60
|
return [(0, import_viem.bytesToString)((0, import_viem.toBytes)(key)), value, `${saveVersion}`];
|
|
61
61
|
}
|
|
62
62
|
default:
|
|
63
|
-
return
|
|
63
|
+
return void 0;
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
processLog(log) {
|
|
@@ -85,16 +85,11 @@ class AddressProviderV300Contract extends import_AbstractAddressProviderContract
|
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
87
|
async syncState(blockNumber) {
|
|
88
|
-
|
|
89
|
-
throw new Error(
|
|
90
|
-
`address provider v300 requires gearbox chain for ${this.chain.id} `
|
|
91
|
-
);
|
|
92
|
-
}
|
|
93
|
-
const fromBlock = this.chain.firstBlock;
|
|
88
|
+
const fromBlock = this.sdk.chain.firstBlock;
|
|
94
89
|
this.logger?.debug(
|
|
95
90
|
`loading events from block ${fromBlock} to ${blockNumber}`
|
|
96
91
|
);
|
|
97
|
-
const events = await (0, import_viem2.getLogsSafe)(this.client, {
|
|
92
|
+
const events = await (0, import_viem2.getLogsSafe)(this.sdk.client, {
|
|
98
93
|
address: this.address,
|
|
99
94
|
event: (0, import_viem.getAbiItem)({ abi: this.abi, name: "SetAddress" }),
|
|
100
95
|
fromBlock,
|
|
@@ -36,9 +36,9 @@ var import_generated = require("../../../abi/310/generated.js");
|
|
|
36
36
|
var import_AbstractAddressProviderContract = __toESM(require("./AbstractAddressProviderContract.js"));
|
|
37
37
|
const abi = import_generated.iAddressProviderV310Abi;
|
|
38
38
|
class AddressProviderV310Contract extends import_AbstractAddressProviderContract.default {
|
|
39
|
-
constructor(
|
|
39
|
+
constructor(sdk, address, version, addresses = {}) {
|
|
40
40
|
super(
|
|
41
|
-
|
|
41
|
+
sdk,
|
|
42
42
|
{
|
|
43
43
|
addr: address,
|
|
44
44
|
name: "AddressProviderV310",
|
|
@@ -48,7 +48,7 @@ class AddressProviderV310Contract extends import_AbstractAddressProviderContract
|
|
|
48
48
|
addresses
|
|
49
49
|
);
|
|
50
50
|
}
|
|
51
|
-
|
|
51
|
+
parseFunctionParams(params) {
|
|
52
52
|
switch (params.functionName) {
|
|
53
53
|
case "setAddress": {
|
|
54
54
|
if (params.args.length !== 3) {
|
|
@@ -59,7 +59,7 @@ class AddressProviderV310Contract extends import_AbstractAddressProviderContract
|
|
|
59
59
|
return [(0, import_viem.bytesToString)((0, import_viem.toBytes)(key)), value, `${saveVersion}`];
|
|
60
60
|
}
|
|
61
61
|
default:
|
|
62
|
-
return
|
|
62
|
+
return void 0;
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
processLog(log) {
|
|
@@ -28,8 +28,8 @@ var import_constants = require("../constants/index.js");
|
|
|
28
28
|
const abi = import_generated.iMarketConfiguratorV310Abi;
|
|
29
29
|
class MarketConfiguratorContract extends import_base.BaseContract {
|
|
30
30
|
#curatorName;
|
|
31
|
-
constructor(
|
|
32
|
-
super(
|
|
31
|
+
constructor(sdk, address) {
|
|
32
|
+
super(sdk, {
|
|
33
33
|
abi,
|
|
34
34
|
addr: address,
|
|
35
35
|
contractType: import_constants.AP_MARKET_CONFIGURATOR,
|
|
@@ -37,18 +37,18 @@ class MarketConfiguratorContract extends import_base.BaseContract {
|
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
39
|
async loadCuratorName() {
|
|
40
|
-
this.#curatorName = await this.client.readContract({
|
|
40
|
+
this.#curatorName = await this.sdk.client.readContract({
|
|
41
41
|
address: this.address,
|
|
42
42
|
abi: this.abi,
|
|
43
43
|
functionName: "curatorName"
|
|
44
44
|
});
|
|
45
|
-
this.
|
|
45
|
+
this.sdk.addressLabels.set(
|
|
46
46
|
this.address,
|
|
47
47
|
`Market configurator ${this.#curatorName}`
|
|
48
48
|
);
|
|
49
49
|
}
|
|
50
50
|
async getPeripheryContract(contract) {
|
|
51
|
-
const resp = await this.client.readContract({
|
|
51
|
+
const resp = await this.sdk.client.readContract({
|
|
52
52
|
address: this.address,
|
|
53
53
|
abi: this.abi,
|
|
54
54
|
functionName: "getPeripheryContracts",
|
|
@@ -29,6 +29,7 @@ var import_viem = require("../utils/viem/index.js");
|
|
|
29
29
|
var import_MarketConfiguratorContract = require("./MarketConfiguratorContract.js");
|
|
30
30
|
var import_MarketSuite = require("./MarketSuite.js");
|
|
31
31
|
class MarketRegister extends import_base.SDKConstruct {
|
|
32
|
+
#logger;
|
|
32
33
|
/**
|
|
33
34
|
* Mapping pool.address -> MarketSuite
|
|
34
35
|
*/
|
|
@@ -41,6 +42,7 @@ class MarketRegister extends import_base.SDKConstruct {
|
|
|
41
42
|
#ignoreMarkets;
|
|
42
43
|
constructor(sdk, ignoreMarkets = []) {
|
|
43
44
|
super(sdk);
|
|
45
|
+
this.#logger = (0, import_utils.childLogger)("MarketRegister", sdk.logger);
|
|
44
46
|
this.#ignoreMarkets = new Set(
|
|
45
47
|
ignoreMarkets.map((m) => m.toLowerCase())
|
|
46
48
|
);
|
|
@@ -52,7 +54,7 @@ class MarketRegister extends import_base.SDKConstruct {
|
|
|
52
54
|
for (const data of state) {
|
|
53
55
|
const pool = data.pool.baseParams.addr;
|
|
54
56
|
if (this.#ignoreMarkets.has(pool.toLowerCase())) {
|
|
55
|
-
this
|
|
57
|
+
this.#logger?.debug(
|
|
56
58
|
`ignoring market of pool ${pool} (${data.pool.name})`
|
|
57
59
|
);
|
|
58
60
|
continue;
|
|
@@ -65,7 +67,7 @@ class MarketRegister extends import_base.SDKConstruct {
|
|
|
65
67
|
}
|
|
66
68
|
async loadMarkets(marketConfigurators, ignoreUpdateablePrices) {
|
|
67
69
|
if (!marketConfigurators.length) {
|
|
68
|
-
this
|
|
70
|
+
this.#logger?.warn(
|
|
69
71
|
"no market configurators provided, skipping loadMarkets"
|
|
70
72
|
);
|
|
71
73
|
return;
|
|
@@ -96,7 +98,7 @@ class MarketRegister extends import_base.SDKConstruct {
|
|
|
96
98
|
async syncState(ignoreUpdateablePrices) {
|
|
97
99
|
const dirty = this.markets.some((m) => m.dirty) || this.marketConfigurators.some((c) => c.dirty);
|
|
98
100
|
if (dirty) {
|
|
99
|
-
this
|
|
101
|
+
this.#logger?.debug(
|
|
100
102
|
"some markets or market configurators are dirty, reloading everything"
|
|
101
103
|
);
|
|
102
104
|
await this.#loadMarkets(
|
|
@@ -123,7 +125,7 @@ class MarketRegister extends import_base.SDKConstruct {
|
|
|
123
125
|
const updates = await this.sdk.priceFeeds.generatePriceFeedsUpdateTxs(updatables);
|
|
124
126
|
txs = updates.txs;
|
|
125
127
|
}
|
|
126
|
-
this
|
|
128
|
+
this.#logger?.debug(
|
|
127
129
|
{ configurators, pools },
|
|
128
130
|
`calling getMarkets with ${txs.length} price updates in block ${this.sdk.currentBlock}`
|
|
129
131
|
);
|
|
@@ -157,14 +159,14 @@ class MarketRegister extends import_base.SDKConstruct {
|
|
|
157
159
|
for (const data of markets) {
|
|
158
160
|
const pool = data.pool.baseParams.addr;
|
|
159
161
|
if (this.#ignoreMarkets.has(pool.toLowerCase())) {
|
|
160
|
-
this
|
|
162
|
+
this.#logger?.debug(
|
|
161
163
|
`ignoring market of pool ${pool} (${data.pool.name})`
|
|
162
164
|
);
|
|
163
165
|
continue;
|
|
164
166
|
}
|
|
165
167
|
this.#markets.upsert(pool, new import_MarketSuite.MarketSuite(this.sdk, data));
|
|
166
168
|
}
|
|
167
|
-
this
|
|
169
|
+
this.#logger?.info(
|
|
168
170
|
`loaded ${this.#markets.size} markets in block ${this.sdk.currentBlock}`
|
|
169
171
|
);
|
|
170
172
|
}
|
|
@@ -183,7 +185,7 @@ class MarketRegister extends import_base.SDKConstruct {
|
|
|
183
185
|
if (!multicalls.length) {
|
|
184
186
|
return;
|
|
185
187
|
}
|
|
186
|
-
this
|
|
188
|
+
this.#logger?.debug(`syncing prices on ${multicalls.length} oracles`);
|
|
187
189
|
const { txs } = await this.sdk.priceFeeds.generatePriceFeedsUpdateTxs();
|
|
188
190
|
const oraclesStates = await (0, import_viem.simulateWithPriceUpdates)(this.client, {
|
|
189
191
|
priceUpdates: txs,
|
|
@@ -42,7 +42,7 @@ class MarketSuite extends import_base.SDKConstruct {
|
|
|
42
42
|
constructor(sdk, marketData) {
|
|
43
43
|
super(sdk);
|
|
44
44
|
this.state = marketData;
|
|
45
|
-
const mc = sdk.
|
|
45
|
+
const mc = sdk.contracts.mustGet(marketData.configurator);
|
|
46
46
|
if (!(mc instanceof import_MarketConfiguratorContract.MarketConfiguratorContract)) {
|
|
47
47
|
throw new Error(
|
|
48
48
|
`Market configurator ${marketData.configurator} is not a market configurator`
|
|
@@ -53,7 +53,7 @@ class MarketSuite extends import_base.SDKConstruct {
|
|
|
53
53
|
this.treasury = marketData.treasury;
|
|
54
54
|
for (const t of marketData.tokens) {
|
|
55
55
|
sdk.tokensMeta.upsert(t.addr, t);
|
|
56
|
-
sdk.
|
|
56
|
+
sdk.addressLabels.set(t.addr, t.symbol);
|
|
57
57
|
}
|
|
58
58
|
this.pool = new import_pool.PoolSuite(sdk, marketData);
|
|
59
59
|
for (let i = 0; i < marketData.creditManagers.length; i++) {
|
|
@@ -28,7 +28,7 @@ var import_constants = require("../../constants/index.js");
|
|
|
28
28
|
var import_utils = require("../../utils/index.js");
|
|
29
29
|
const abi = [...import_v300.iCreditConfiguratorV300Abi, ...import_iPausable.iPausableAbi];
|
|
30
30
|
class CreditConfiguratorV300Contract extends import_base.BaseContract {
|
|
31
|
-
|
|
31
|
+
adapters = [];
|
|
32
32
|
isPaused = false;
|
|
33
33
|
constructor(sdk, { creditConfigurator, creditManager }) {
|
|
34
34
|
super(sdk, {
|
|
@@ -36,7 +36,6 @@ class CreditConfiguratorV300Contract extends import_base.BaseContract {
|
|
|
36
36
|
name: `CreditConfigurator(${creditManager.name})`,
|
|
37
37
|
abi
|
|
38
38
|
});
|
|
39
|
-
this.sdk = sdk;
|
|
40
39
|
}
|
|
41
40
|
processLog(log) {
|
|
42
41
|
switch (log.eventName) {
|
|
@@ -83,7 +82,7 @@ class CreditConfiguratorV300Contract extends import_base.BaseContract {
|
|
|
83
82
|
});
|
|
84
83
|
return logs.map(({ args }) => args);
|
|
85
84
|
}
|
|
86
|
-
|
|
85
|
+
parseFunctionParams(params) {
|
|
87
86
|
switch (params.functionName) {
|
|
88
87
|
case "addCollateralToken":
|
|
89
88
|
case "setLiquidationThreshold": {
|
|
@@ -129,7 +128,7 @@ class CreditConfiguratorV300Contract extends import_base.BaseContract {
|
|
|
129
128
|
];
|
|
130
129
|
}
|
|
131
130
|
default:
|
|
132
|
-
return
|
|
131
|
+
return void 0;
|
|
133
132
|
}
|
|
134
133
|
}
|
|
135
134
|
}
|
|
@@ -27,7 +27,7 @@ var import_constants = require("../../constants/index.js");
|
|
|
27
27
|
var import_utils = require("../../utils/index.js");
|
|
28
28
|
const abi = import_generated.iCreditConfiguratorV310Abi;
|
|
29
29
|
class CreditConfiguratorV310Contract extends import_base.BaseContract {
|
|
30
|
-
|
|
30
|
+
adapters = [];
|
|
31
31
|
isPaused = false;
|
|
32
32
|
constructor(sdk, { creditConfigurator, creditManager }) {
|
|
33
33
|
super(sdk, {
|
|
@@ -35,7 +35,6 @@ class CreditConfiguratorV310Contract extends import_base.BaseContract {
|
|
|
35
35
|
name: `CreditConfigurator(${creditManager.name})`,
|
|
36
36
|
abi
|
|
37
37
|
});
|
|
38
|
-
this.sdk = sdk;
|
|
39
38
|
}
|
|
40
39
|
processLog(log) {
|
|
41
40
|
switch (log.eventName) {
|
|
@@ -70,7 +69,7 @@ class CreditConfiguratorV310Contract extends import_base.BaseContract {
|
|
|
70
69
|
});
|
|
71
70
|
return logs.map(({ args }) => args);
|
|
72
71
|
}
|
|
73
|
-
|
|
72
|
+
parseFunctionParams(params) {
|
|
74
73
|
switch (params.functionName) {
|
|
75
74
|
case "addCollateralToken":
|
|
76
75
|
case "setLiquidationThreshold": {
|
|
@@ -114,7 +113,7 @@ class CreditConfiguratorV310Contract extends import_base.BaseContract {
|
|
|
114
113
|
];
|
|
115
114
|
}
|
|
116
115
|
default:
|
|
117
|
-
return
|
|
116
|
+
return void 0;
|
|
118
117
|
}
|
|
119
118
|
}
|
|
120
119
|
}
|
|
@@ -33,9 +33,9 @@ const abi = [
|
|
|
33
33
|
];
|
|
34
34
|
class CreditFacadeV300Contract extends import_base.BaseContract {
|
|
35
35
|
underlying;
|
|
36
|
-
constructor(
|
|
36
|
+
constructor(sdk, { creditFacade, creditManager }) {
|
|
37
37
|
const { baseParams, ...rest } = creditFacade;
|
|
38
|
-
super(
|
|
38
|
+
super(sdk, {
|
|
39
39
|
...baseParams,
|
|
40
40
|
name: `CreditFacadeV3(${creditManager.name})`,
|
|
41
41
|
abi
|
|
@@ -44,7 +44,7 @@ class CreditFacadeV300Contract extends import_base.BaseContract {
|
|
|
44
44
|
this.underlying = creditManager.underlying;
|
|
45
45
|
}
|
|
46
46
|
stateHuman(raw) {
|
|
47
|
-
const decimals = this.tokensMeta.decimals(this.underlying);
|
|
47
|
+
const decimals = this.sdk.tokensMeta.decimals(this.underlying);
|
|
48
48
|
return {
|
|
49
49
|
...super.stateHuman(raw),
|
|
50
50
|
expirable: this.expirable,
|
|
@@ -108,13 +108,13 @@ class CreditFacadeV300Contract extends import_base.BaseContract {
|
|
|
108
108
|
args: [to, calls, referralCode]
|
|
109
109
|
});
|
|
110
110
|
}
|
|
111
|
-
|
|
111
|
+
parseFunctionParams(params) {
|
|
112
112
|
switch (params.functionName) {
|
|
113
113
|
case "openCreditAccount": {
|
|
114
114
|
const [onBehalfOf, calls, referralCode] = params.args;
|
|
115
115
|
return [
|
|
116
116
|
this.labelAddress(onBehalfOf),
|
|
117
|
-
this.
|
|
117
|
+
this.sdk.parseMultiCall([...calls]).join(","),
|
|
118
118
|
`${referralCode}`
|
|
119
119
|
];
|
|
120
120
|
}
|
|
@@ -122,7 +122,7 @@ class CreditFacadeV300Contract extends import_base.BaseContract {
|
|
|
122
122
|
const [creditAccount, calls] = params.args;
|
|
123
123
|
return [
|
|
124
124
|
this.labelAddress(creditAccount),
|
|
125
|
-
this.
|
|
125
|
+
this.sdk.parseMultiCall([...calls]).join(",")
|
|
126
126
|
];
|
|
127
127
|
}
|
|
128
128
|
case "liquidateCreditAccount": {
|
|
@@ -130,7 +130,7 @@ class CreditFacadeV300Contract extends import_base.BaseContract {
|
|
|
130
130
|
return [
|
|
131
131
|
this.labelAddress(creditAccount),
|
|
132
132
|
this.labelAddress(to),
|
|
133
|
-
this.
|
|
133
|
+
this.sdk.parseMultiCall([...calls]).join(",")
|
|
134
134
|
];
|
|
135
135
|
}
|
|
136
136
|
case "setBotPermissions": {
|
|
@@ -145,12 +145,12 @@ class CreditFacadeV300Contract extends import_base.BaseContract {
|
|
|
145
145
|
const [deltas] = params.args;
|
|
146
146
|
return [
|
|
147
147
|
deltas.map(({ token, amount }) => {
|
|
148
|
-
return this.labelAddress(token) + ": " + this.tokensMeta.formatBN(token, amount);
|
|
148
|
+
return this.labelAddress(token) + ": " + this.sdk.tokensMeta.formatBN(token, amount);
|
|
149
149
|
}).join(",")
|
|
150
150
|
];
|
|
151
151
|
}
|
|
152
152
|
default:
|
|
153
|
-
return
|
|
153
|
+
return void 0;
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
156
|
}
|
|
@@ -33,9 +33,9 @@ const abi = [
|
|
|
33
33
|
];
|
|
34
34
|
class CreditFacadeV310Contract extends import_base.BaseContract {
|
|
35
35
|
underlying;
|
|
36
|
-
constructor(
|
|
36
|
+
constructor(sdk, { creditFacade, creditManager }) {
|
|
37
37
|
const { baseParams, ...rest } = creditFacade;
|
|
38
|
-
super(
|
|
38
|
+
super(sdk, {
|
|
39
39
|
...baseParams,
|
|
40
40
|
name: `CreditFacadeV310(${creditManager.name})`,
|
|
41
41
|
abi
|
|
@@ -44,7 +44,7 @@ class CreditFacadeV310Contract extends import_base.BaseContract {
|
|
|
44
44
|
this.underlying = creditManager.underlying;
|
|
45
45
|
}
|
|
46
46
|
stateHuman(raw) {
|
|
47
|
-
const decimals = this.tokensMeta.decimals(this.underlying);
|
|
47
|
+
const decimals = this.sdk.tokensMeta.decimals(this.underlying);
|
|
48
48
|
return {
|
|
49
49
|
...super.stateHuman(raw),
|
|
50
50
|
expirable: this.expirable,
|
|
@@ -105,13 +105,13 @@ class CreditFacadeV310Contract extends import_base.BaseContract {
|
|
|
105
105
|
args: [to, calls, referralCode]
|
|
106
106
|
});
|
|
107
107
|
}
|
|
108
|
-
|
|
108
|
+
parseFunctionParams(params) {
|
|
109
109
|
switch (params.functionName) {
|
|
110
110
|
case "openCreditAccount": {
|
|
111
111
|
const [onBehalfOf, calls, referralCode] = params.args;
|
|
112
112
|
return [
|
|
113
113
|
this.labelAddress(onBehalfOf),
|
|
114
|
-
this.
|
|
114
|
+
this.sdk.parseMultiCall([...calls]).join(","),
|
|
115
115
|
`${referralCode}`
|
|
116
116
|
];
|
|
117
117
|
}
|
|
@@ -119,7 +119,7 @@ class CreditFacadeV310Contract extends import_base.BaseContract {
|
|
|
119
119
|
const [creditAccount, calls] = params.args;
|
|
120
120
|
return [
|
|
121
121
|
this.labelAddress(creditAccount),
|
|
122
|
-
this.
|
|
122
|
+
this.sdk.parseMultiCall([...calls]).join(",")
|
|
123
123
|
];
|
|
124
124
|
}
|
|
125
125
|
case "liquidateCreditAccount": {
|
|
@@ -127,11 +127,11 @@ class CreditFacadeV310Contract extends import_base.BaseContract {
|
|
|
127
127
|
return [
|
|
128
128
|
this.labelAddress(creditAccount),
|
|
129
129
|
this.labelAddress(to),
|
|
130
|
-
this.
|
|
130
|
+
this.sdk.parseMultiCall([...calls]).join(",")
|
|
131
131
|
];
|
|
132
132
|
}
|
|
133
133
|
default:
|
|
134
|
-
return
|
|
134
|
+
return void 0;
|
|
135
135
|
}
|
|
136
136
|
}
|
|
137
137
|
}
|
|
@@ -50,12 +50,9 @@ class CreditManagerV300Contract extends import_base.BaseContract {
|
|
|
50
50
|
this.adapters = new import_utils.AddressMap(void 0, "adapters");
|
|
51
51
|
for (const adapterData of adapters) {
|
|
52
52
|
try {
|
|
53
|
-
const adapter = (0, import_adapters.createAdapter)(sdk, adapterData);
|
|
53
|
+
const adapter = (0, import_adapters.createAdapter)(this.sdk, adapterData);
|
|
54
|
+
adapter.name = `${adapter.name}(${this.name})`;
|
|
54
55
|
this.adapters.upsert(adapter.targetContract, adapter);
|
|
55
|
-
this.register.setAddressLabel(
|
|
56
|
-
adapter.address,
|
|
57
|
-
`${adapter.name}(${this.name})`
|
|
58
|
-
);
|
|
59
56
|
} catch (e) {
|
|
60
57
|
throw new Error(`cannot attach adapter: ${e}`, { cause: e });
|
|
61
58
|
}
|
|
@@ -50,12 +50,9 @@ class CreditManagerV310Contract extends import_base.BaseContract {
|
|
|
50
50
|
this.adapters = new import_utils.AddressMap(void 0, "adapters");
|
|
51
51
|
for (const adapterData of adapters) {
|
|
52
52
|
try {
|
|
53
|
-
const adapter = (0, import_adapters.createAdapter)(sdk, adapterData);
|
|
53
|
+
const adapter = (0, import_adapters.createAdapter)(this.sdk, adapterData);
|
|
54
|
+
adapter.name = `${adapter.name}(${this.name})`;
|
|
54
55
|
this.adapters.upsert(adapter.targetContract, adapter);
|
|
55
|
-
this.register.setAddressLabel(
|
|
56
|
-
adapter.address,
|
|
57
|
-
`${adapter.name}(${this.name})`
|
|
58
|
-
);
|
|
59
56
|
} catch (e) {
|
|
60
57
|
throw new Error(`cannot attach adapter: ${e}`, { cause: e });
|
|
61
58
|
}
|
|
@@ -36,6 +36,7 @@ var import_createCreditConfigurator = __toESM(require("./createCreditConfigurato
|
|
|
36
36
|
var import_createCreditFacade = __toESM(require("./createCreditFacade.js"));
|
|
37
37
|
var import_createCreditManager = __toESM(require("./createCreditManager.js"));
|
|
38
38
|
class CreditSuite extends import_base.SDKConstruct {
|
|
39
|
+
name;
|
|
39
40
|
pool;
|
|
40
41
|
underlying;
|
|
41
42
|
creditManager;
|
|
@@ -43,12 +44,12 @@ class CreditSuite extends import_base.SDKConstruct {
|
|
|
43
44
|
creditConfigurator;
|
|
44
45
|
marketConfigurator;
|
|
45
46
|
state;
|
|
46
|
-
name;
|
|
47
47
|
constructor(sdk, marketData, index) {
|
|
48
48
|
super(sdk);
|
|
49
49
|
const { creditManagers, pool } = marketData;
|
|
50
|
-
this.name = creditManagers[index].creditManager.name;
|
|
51
50
|
this.state = creditManagers[index];
|
|
51
|
+
const { name } = this.state.creditManager;
|
|
52
|
+
this.name = name;
|
|
52
53
|
this.pool = pool.baseParams.addr;
|
|
53
54
|
this.underlying = pool.underlying;
|
|
54
55
|
this.creditManager = (0, import_createCreditManager.default)(sdk, this.state);
|
|
@@ -32,7 +32,6 @@ class AliasLossPolicyV310Contract extends import_base.BaseContract {
|
|
|
32
32
|
checksEnabled;
|
|
33
33
|
tokens;
|
|
34
34
|
priceFeedParams;
|
|
35
|
-
sdk;
|
|
36
35
|
constructor(sdk, params) {
|
|
37
36
|
super(sdk, {
|
|
38
37
|
abi,
|
|
@@ -40,7 +39,6 @@ class AliasLossPolicyV310Contract extends import_base.BaseContract {
|
|
|
40
39
|
contractType: params.contractType,
|
|
41
40
|
version: params.version
|
|
42
41
|
});
|
|
43
|
-
this.sdk = sdk;
|
|
44
42
|
[this.accessMode, this.checksEnabled, this.tokens, this.priceFeedParams] = (0, import_viem.decodeAbiParameters)(
|
|
45
43
|
[
|
|
46
44
|
{ name: "accessMode", type: "uint8" },
|
|
@@ -61,7 +59,7 @@ class AliasLossPolicyV310Contract extends import_base.BaseContract {
|
|
|
61
59
|
);
|
|
62
60
|
}
|
|
63
61
|
async getLiquidationData(creditAccount, blockNumber) {
|
|
64
|
-
const pfs = await this.client.readContract({
|
|
62
|
+
const pfs = await this.sdk.client.readContract({
|
|
65
63
|
address: this.address,
|
|
66
64
|
abi: this.abi,
|
|
67
65
|
functionName: "getRequiredAliasPriceFeeds",
|
|
@@ -25,8 +25,8 @@ var import_generated = require("../../../abi/310/generated.js");
|
|
|
25
25
|
var import_base = require("../../base/index.js");
|
|
26
26
|
const abi = import_generated.iLossPolicyV310Abi;
|
|
27
27
|
class LossPolicyContract extends import_base.BaseContract {
|
|
28
|
-
constructor(
|
|
29
|
-
super(
|
|
28
|
+
constructor(sdk, params) {
|
|
29
|
+
super(sdk, {
|
|
30
30
|
abi,
|
|
31
31
|
addr: params.addr,
|
|
32
32
|
contractType: params.contractType,
|
|
@@ -26,7 +26,7 @@ var import_AliasLossPolicyV310Contract = require("./AliasLossPolicyV310Contract.
|
|
|
26
26
|
var import_constants = require("./constants.js");
|
|
27
27
|
var import_LossPolicyContract = require("./LossPolicyContract.js");
|
|
28
28
|
function createLossPolicy(sdk, { baseParams }) {
|
|
29
|
-
const existing = sdk.
|
|
29
|
+
const existing = sdk.contracts.get(baseParams.addr);
|
|
30
30
|
if (existing) {
|
|
31
31
|
return existing;
|
|
32
32
|
}
|
|
@@ -41,7 +41,6 @@ var import_pricefeeds = require("../pricefeeds/index.js");
|
|
|
41
41
|
var import_PriceFeedAnswerMap = __toESM(require("./PriceFeedAnswerMap.js"));
|
|
42
42
|
const ZERO_PRICE_FEED = (0, import_viem.stringToHex)("PRICE_FEED::ZERO", { size: 32 });
|
|
43
43
|
class PriceOracleBaseContract extends import_base.BaseContract {
|
|
44
|
-
sdk;
|
|
45
44
|
/**
|
|
46
45
|
* Mapping Token => [PriceFeed Address, stalenessPeriod]
|
|
47
46
|
*/
|
|
@@ -73,7 +72,6 @@ class PriceOracleBaseContract extends import_base.BaseContract {
|
|
|
73
72
|
);
|
|
74
73
|
constructor(sdk, args, data) {
|
|
75
74
|
super(sdk, args);
|
|
76
|
-
this.sdk = sdk;
|
|
77
75
|
const { priceFeedMap, priceFeedTree } = data;
|
|
78
76
|
this.#loadState(priceFeedMap, priceFeedTree, true);
|
|
79
77
|
}
|
|
@@ -91,6 +89,19 @@ class PriceOracleBaseContract extends import_base.BaseContract {
|
|
|
91
89
|
reserve ? this.reservePriceFeeds.get(t)?.priceFeed : void 0
|
|
92
90
|
]).filter((f) => !!f);
|
|
93
91
|
}
|
|
92
|
+
/**
|
|
93
|
+
* Generates updates for all updateable price feeds in this oracle (including dependencies)
|
|
94
|
+
* @returns
|
|
95
|
+
*/
|
|
96
|
+
async updatePriceFeeds() {
|
|
97
|
+
const updatables = [];
|
|
98
|
+
for (const node of this.#priceFeedTree.values()) {
|
|
99
|
+
if (node.updatable) {
|
|
100
|
+
updatables.push(this.sdk.priceFeeds.mustGet(node.baseParams.addr));
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
return this.sdk.priceFeeds.generatePriceFeedsUpdateTxs(updatables);
|
|
104
|
+
}
|
|
94
105
|
/**
|
|
95
106
|
* Gets main price for given token
|
|
96
107
|
* Throws if token price feed is not found or answer is not successful
|
|
@@ -130,9 +141,9 @@ class PriceOracleBaseContract extends import_base.BaseContract {
|
|
|
130
141
|
return amount;
|
|
131
142
|
}
|
|
132
143
|
const fromPrice = reserve ? this.reservePrice(from) : this.mainPrice(from);
|
|
133
|
-
const fromScale = 10n ** BigInt(this.tokensMeta.decimals(from));
|
|
144
|
+
const fromScale = 10n ** BigInt(this.sdk.tokensMeta.decimals(from));
|
|
134
145
|
const toPrice = reserve ? this.reservePrice(to) : this.mainPrice(to);
|
|
135
|
-
const toScale = 10n ** BigInt(this.tokensMeta.decimals(to));
|
|
146
|
+
const toScale = 10n ** BigInt(this.sdk.tokensMeta.decimals(to));
|
|
136
147
|
return amount * fromPrice * toScale / (toPrice * fromScale);
|
|
137
148
|
}
|
|
138
149
|
/**
|
|
@@ -143,7 +154,7 @@ class PriceOracleBaseContract extends import_base.BaseContract {
|
|
|
143
154
|
*/
|
|
144
155
|
convertToUSD(from, amount, reserve = false) {
|
|
145
156
|
const price = reserve ? this.reservePrice(from) : this.mainPrice(from);
|
|
146
|
-
const scale = 10n ** BigInt(this.tokensMeta.decimals(from));
|
|
157
|
+
const scale = 10n ** BigInt(this.sdk.tokensMeta.decimals(from));
|
|
147
158
|
return amount * price / scale;
|
|
148
159
|
}
|
|
149
160
|
/**
|
|
@@ -154,9 +165,16 @@ class PriceOracleBaseContract extends import_base.BaseContract {
|
|
|
154
165
|
*/
|
|
155
166
|
convertFromUSD(to, amount, reserve = false) {
|
|
156
167
|
const price = reserve ? this.reservePrice(to) : this.mainPrice(to);
|
|
157
|
-
const scale = 10n ** BigInt(this.tokensMeta.decimals(to));
|
|
168
|
+
const scale = 10n ** BigInt(this.sdk.tokensMeta.decimals(to));
|
|
158
169
|
return amount * scale / price;
|
|
159
170
|
}
|
|
171
|
+
/**
|
|
172
|
+
* Loads new prices for this oracle from PriceFeedCompressor
|
|
173
|
+
* Will (re)create price feeds if needed
|
|
174
|
+
*/
|
|
175
|
+
async updatePrices() {
|
|
176
|
+
await this.sdk.marketRegister.updatePrices([this.address]);
|
|
177
|
+
}
|
|
160
178
|
/**
|
|
161
179
|
* All price feed tree nodes known to this oracle
|
|
162
180
|
*/
|
|
@@ -245,8 +263,8 @@ class PriceOracleBaseContract extends import_base.BaseContract {
|
|
|
245
263
|
this.dirty = false;
|
|
246
264
|
}
|
|
247
265
|
#labelPriceFeed(address, usage, token) {
|
|
248
|
-
this.sdk.
|
|
249
|
-
const symbol = this.tokensMeta.symbol(token);
|
|
266
|
+
this.sdk.addressLabels.set(address, (oldLabel) => {
|
|
267
|
+
const symbol = this.sdk.tokensMeta.symbol(token);
|
|
250
268
|
let pricefeedTag = `${symbol}.${usage}`;
|
|
251
269
|
if (oldLabel) {
|
|
252
270
|
const oldLabelParts = new Set(oldLabel.split(", "));
|
|
@@ -27,7 +27,7 @@ var import_PriceOracleV300Contract = require("./PriceOracleV300Contract.js");
|
|
|
27
27
|
var import_PriceOracleV310Contract = require("./PriceOracleV310Contract.js");
|
|
28
28
|
function getOrCreatePriceOracle(sdk, data) {
|
|
29
29
|
const { version, addr } = data.baseParams;
|
|
30
|
-
const existing = sdk.
|
|
30
|
+
const existing = sdk.contracts.get(addr);
|
|
31
31
|
let result;
|
|
32
32
|
if (existing) {
|
|
33
33
|
result = tryExtendExistingOracle(existing, data);
|
|
@@ -32,8 +32,8 @@ class GaugeContract extends import_base.BaseContract {
|
|
|
32
32
|
epochFrozen;
|
|
33
33
|
epochLastUpdate;
|
|
34
34
|
rates;
|
|
35
|
-
constructor(
|
|
36
|
-
super(
|
|
35
|
+
constructor(sdk, pool, gauge) {
|
|
36
|
+
super(sdk, {
|
|
37
37
|
...gauge.baseParams,
|
|
38
38
|
name: `Gauge(${pool.name})`,
|
|
39
39
|
abi: import_v300.iGaugeV300Abi
|
|
@@ -34,8 +34,8 @@ class LinearInterestRateModelContract extends import_base.BaseContract {
|
|
|
34
34
|
Rslope2;
|
|
35
35
|
Rslope3;
|
|
36
36
|
isBorrowingMoreU2Forbidden;
|
|
37
|
-
constructor(
|
|
38
|
-
super(
|
|
37
|
+
constructor(sdk, params) {
|
|
38
|
+
super(sdk, {
|
|
39
39
|
...params.baseParams,
|
|
40
40
|
name: "LinearInterestRateModel",
|
|
41
41
|
abi
|
|
@@ -28,8 +28,8 @@ const abi = import_v300.iPoolQuotaKeeperV300Abi;
|
|
|
28
28
|
class PoolQuotaKeeperV300Contract extends import_base.BaseContract {
|
|
29
29
|
decimals;
|
|
30
30
|
quotas;
|
|
31
|
-
constructor(
|
|
32
|
-
super(
|
|
31
|
+
constructor(sdk, pool, pqk) {
|
|
32
|
+
super(sdk, {
|
|
33
33
|
...pqk.baseParams,
|
|
34
34
|
name: `PoolQuotaKeeper(${pool.name})`,
|
|
35
35
|
abi
|
|
@@ -28,8 +28,8 @@ const abi = import_generated.iPoolQuotaKeeperV310Abi;
|
|
|
28
28
|
class PoolQuotaKeeperV310Contract extends import_base.BaseContract {
|
|
29
29
|
decimals;
|
|
30
30
|
quotas;
|
|
31
|
-
constructor(
|
|
32
|
-
super(
|
|
31
|
+
constructor(sdk, pool, pqk) {
|
|
32
|
+
super(sdk, {
|
|
33
33
|
...pqk.baseParams,
|
|
34
34
|
name: `PoolQuotaKeeper(${pool.name})`,
|
|
35
35
|
abi
|